Week 8 - Image stitching Flashcards

1
Q

What is Panorama stitching

A

An application of SIFT
taking different images with different rotations and stitch them together

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the issue with just directly stitching two images

A

There will be illumination changes eg dark corners that will show up

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the first step of image stitching

A

Finding corresponding points

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is image alignment

A

Fitting a model M to a transformation between pairs of features (matches) in two images
Find transformation T that minimises
Σresidual (T(xi),x’i)

residual = residual errors
xi is the set of points

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

2D transformation models: Euclidean

A

translation + rotation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

2D transformation models: Affine

A

translation + rotation + scaling + shear

(shear = stretching
eg rectangle to rhombus)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

2D transformation models: Similarity

A

translation + rotation + scaling

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

2D transformation models: projective

A

homography
includes out of plane rotations

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

what is x,y in a grayscale function

A

the domain

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

what is the pixel intensity I in the grayscale function

A

the range

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What does filtering/convolution do in terms of pixels

A

changes the pixel values (range)
G(x) = h{F(x)}

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What does warping do in terms of pixels

A

changes the pixel locations (domain)
G(x) = F(h{x})

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

What are examples of global warping/transformation

A

translation
rotation
scaling and aspect
affine
perspective
barrel

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What is transformation T

A

A coordinate changing machine
p’ = T(p)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What does it mean when T is global

A

is the same for any point p (applied to all)
can be described by just a few numbers (parameters)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is uniform scaling

A

same scaling for each components
S = 2x2 = [sx 0 0 sy]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

What is Rotation matrix around θ

A

2x2 = [cosθ -sinθ sinθ cosθ]

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

How do we represent translation in matrix form

A

Not possible
translation is not a linear operation on 2D coordinates

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

What are all 2D linear transformations a combination of (4 types)

A

scale
rotation
shear
mirror

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

what are the properties of linear transformations

A

■ Origin maps to origin
■ Lines map to lines
■ Parallel lines remain parallel
■ Ratios are preserved
■ Closed under composition

21
Q

What is Closed under composition

A

apply multiple linear transformations successively by multiplying the transformation matrices then applying

22
Q

What are homogeneous coordinates

A

represent 2d point with a 3d vector up to a defined scale
move from 2d to 3d
(x,y,w)

23
Q

how to convert back from homogeneous coordinates

A

(x, y,w) -> (x/w, y/w)

24
Q

What are basic affine transformations

A

scale
shear
translation
2d in-plane rotation

25
Q

What is always the matrix form for basic affine transformations

A

any 3x3 matrix with bottom row:
0 0 1

26
Q

what is the only difference between properties of affine and linear transformations

A

affine transformations do not necessarily map to origin

27
Q

What are all Affine transformations a combination of

A

linear transformations and
translations

28
Q

If we stay in same place and rotate camera is it an affine transformations

A

No

29
Q

What happens if the bottom row of 3x3 transformation matrix is not 001

A

Plane projective transformations or
Homographies

Projects one plane onto a different plane via a particular point of projection

30
Q

What are black areas in homographies

A

Where there is no pixel available from original image to map new perspective projection

31
Q

What are homographies a combination of

A

affine transformations and projective warps

32
Q

what is the difference between linear transformations and homographies

A

origin does not necessarily map to origin
parallel lines do not necessarily remain parallel
ratios are not preserved

(still: Lines map to lines, Closed under composition)

33
Q

How do we solve homographies

A

Defines a constrained least squares problem

34
Q

What do we assume about the length of vector when solving homographies

A

lenght of vector (h00…h22) is 1 (we normalise it)
so we only have 8 unknowns
Need 4 pairs of (x,y) to solve

35
Q

What do we generally assume about feature extraction

A

That we have extracted a set of correct correspondences between the two images (ground truths)

generally, this is not the case

36
Q

Image alignment: outliers

A

(incorrect match)
image alignment does not work well with outliers
least squares does not find a good line of best fit with outliers

37
Q

What are inliers

A

correct matches

38
Q

How do we deal with outliers

A
  • Given a hypothesized line
  • Count the number of points that “agree” with the line - they are on the line
    ■ “Agree” = within a small distance of the line
    ■ I.e., the inliers to that line
  • For all possible lines, select the one with the largest number of inliers
39
Q

What is RANSAC

A

(RANdom SAmple Consensus)

40
Q

How does RANSAC work

A

RANSAC loop:
1. Randomly select a s sample matches
s == minimum sample size that lets you fit a transformation model
2. Compute transformation (find a model that fits) from sample group
3. Find inliers to this transformation
4. If the number of inliers is sufficiently large (model is good fit), re-compute least squares estimate of transformation on all of the inliers
This refine the inliers to improve accuracy
5. Repeat N times
6. Keep the transformation with the largest n

(needs amount inliers to be larger that outliers to work)

41
Q

How many times do we runs RANSAC

A

related to how many outliers we expect
and probability of success we would like

42
Q

What is forward warping

A

we have source and target image and T homography matrix

send each pixel x,y to its corresponding x’,y’ = T(x,y)

43
Q

What is the issue of forward warping

A

if a pixel lands between two pixels
solve by adding a contribution
normalise later (splitting)
But we can still get holes

44
Q

What is Inverse warping

A

Take each pixel from target image and find inverse transform
move from x’y’ to x’y’
using x,y = T-1(x’,y’)

45
Q

What is the issue with inverse warping

A

if the pixel again comes between two pixels
we can resample colour values from interpolated source image (we have all the information)

46
Q

What are the steps of creating panoramas

A

detect features SIFT
match features
compute a homography using RANSAC
combine images together (image blending)

47
Q

What is alpha blending

A

Simplest method of blending
close to the seam
interpolate using an α parameter
Iblend = αIleft + (1-α)Iright

48
Q

What is the effect of window size on image blending

A

if window is too big: ghosting effect, can see the other image underneath
if window is too small: aggressively joined together with no smoothing

49
Q

what is the optimal window for image blending

A

To avoid seams:
■ window = size of largest prominent feature

To avoid ghosting:
■ window <= 2*size of smallest prominent feature