Week 5 and 6 - Local Features Flashcards

1
Q

What is the motivation of using local features

A

Global representations have limitations
Local features only describe and match local regions

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

What are local invariant descriptors

A

another term for local features

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

What is Image-based object recognition

A

objects are recognized based on their appearance in images rather than explicit geometric models

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

What is Model-based object recognition

A

objects are recognized by comparing them to predefined models or templates

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

What is a feature

A
  • Local, meaningful, detectable parts of the image
  • Location of a sudden change
  • ‘salient patches’
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is a salient patch

A

region or area within an image that stands out due to its significance

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

Why do we use features

A
  • Information Content High
  • Invariant to change of view point, illumination
  • Reduces computational burden
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is Visual SLAM

A

An application of features
“Simultaneous Localisation and Mapping”
Estimating the local geometry and fusing it into a 3D model
Used in augmented reality and autonomous vehicles
Eg holding up phone camera and it being able to map the geometry of the shape in screen

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

What is Image matching

A

An application of features
Reverse google searching to find a monument
uses local image features

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

How is NASA using features

A

Local features are currently being used on the NASA Mars Rover - trying to stitch together to find a panorama of Mars landscape

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

What are feature points used for

A
  • Image alignment (homography, fundamental matrix)
  • 3D reconstruction
  • Motion tracking
  • Indexing and database retrieval
  • Robot navigation
  • … other
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is Image stitching

A

Procedure:
- Detect feature points in both images
- Find corresponding pairs
- Use these pairs to align the images

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

General approach to feature-based image matching

A
  1. Find a set of distinctive keypoints
  2. Define a region around each keypoint
  3. Extract and normalise the region content
  4. Compute a local descriptor from the normalised region
    1. Has to be unique
  5. Match local descriptors
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What does it mean to normalise the region content

A

Make the descriptor invariant to certain transformations (e.g., scale, rotation, illumination)

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

What are the 2 main problems in feature matching

A

1) Detect the same point independently in both image
2) For each point, correctly recognise the corresponding one

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

What is a repeatable detector

A

Detector that guarantees that it will always find the interest point if present

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

What are the 4 requirements of region extraction

A
  • Repeatable
  • Invariant to translation, rotation and scale changes
  • Robust or covariant to out-of-plane transformations
  • Robust to lighting variations, noise, blur and quantisation
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

What are the 5 requirements of local features

A

-requirements of region extraction fulfilled
- Locality
- Quantity
- Distinctiveness
- Efficiency

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

What are the 3 main types of detector:

A

Harris
Laplacian
DoG (difference of gaussians)

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

What is the important first step in feature detection

A

Finding candidate locations

21
Q

Why are edges not ideal candidate locations

A

Edges only localise in one direction

22
Q

What are corners

A

Repeatable points, good candidate locations
Around a corner, image gradient has two or more dominant directions

23
Q

How does the Harris Corner Detector work

A

Iterates through an image with a window
Calculate the change in intensity for the shift [u,v]
Minus the intensity from the shifted (new) intensity
Approximate this shift using a matrix M
Calculate the “corner response”

24
Q

What are the two types of window function for harris detector

A

Option 1) Basic Harris Corner detector
binary: 1 in window, 0 outside
SVD
compute M and its eigenvalues

Option 2) Smooth with Gaussian Kernel
Bell curve over window
Use smoothed derivatives in M

25
Q

What is the matrix M in harris corner detection

A

M = Σw(x,y) [Ix² IxIy, IxIy Iy²]
Where IxIy is gradient w.r.t x times gradient w.r.t y

26
Q

What is the equation for approximating the shift in harris corner detection

A

E(u,v) ~= [u,v] M [u, v]
Second [u,v] is a column vector

27
Q

What do we assume about the datapoints in harris detection

A

They are coming from a Multivariate Gaussian model
So we can use the eqns for mean (miu^) and covariance (sigma^)

28
Q

Why do we want to find the covariance matrix in harris corner detection

A

The covariance matrix describes how the intensity changes are distributed across these different directions
This matrix gives us Eigenvectors (directions that remain unchanged except for a scaling factor by the corresponding eigenvalue)
We essentially are shifting our data along the long axis of the ellipse (eigenvector) in order to calculate variance

The full covariance situation is not ideal

29
Q

Why are eigenvectors important for changes in intensity calculations

A

eigenvectors = principal axes along which the intensity changes have the most significant variance

30
Q

What is Singular value decomposition

A

SVD
A method of decomposing any matrix into 3 simpler matrices

31
Q

What 3 matrices are used in SVD in harris corner detection and what do they represent

A

A = U . D . U^T
u1, u2 (columns of U) capture the axes of the ellipse - Eigenvectors
d1,d1 (columns of D) determine the scale and variance of the data - Eigenvalues

32
Q

What is the purpose of SVD in Harris detection

A

SVD = eigenvalue decomposition of matrix M
Tells us the direction and scales of the variation
gives us a new coordinate system u1,u2

33
Q

How do we use eigenvalues λ1,λ2 (d1,d2) to find a corner

A
  • If both eigenvalues are large, it suggests the presence of a corner (E increases in all directions)
  • If one eigenvalue is large and the other is small, it indicates an edge
  • If both eigenvalues are small, it represents a flat region
34
Q

What is the equation for R to measure the corner response

A

R = det(M) - k x (trace(M))²

R = λ1λ2 - α(λ1 + λ2)²

35
Q

What is detM

A

λ1λ2

36
Q

What is traceM

A

λ1 + λ2

37
Q

In the equation for R, what are the best values for constant k

A

k (also α) is a constant typically set to a value between 0.04 to 0.06

38
Q

How do we interpret the value of R

A

R is large → corner

R is negative → large magnitude for an edge

|R| is small → flat region

39
Q

What is the problem with taking using basic harris detector (no gaussian)

A

Not rotation invariant
uniform window (1 in window, 0 outside)

40
Q

How can we use Gaussian smoothing instead over window (option 2)

A

M = g(σ) * [Ix² IxIy, IxIy Iy²]
instead of Σw(x,y)

The result is rotation invariant

41
Q

How does gaussian harris detection (Fast approximation) work (option 2)

A

1) Image derivatives (blur first)
2) Compute Ix², IxIy, IxIy, Iy²
3) Gaussian filter g(Ix²), g(IxIy),…
4) M(σl, σd) = g(σl) * [Ix²(σd) IxIy(σd), IxIy(σd) Iy²(σd)]

Then use M(σl, σd) in R as before:
R = det(M(σl, σd)) - k x (trace(M(σl, σd)))²

42
Q

What are the properties of Harris operator

A

Rotation invariant

Not scale invariant → scaling up will cause corners to be classed as edges
The Harris operator does not tell us how much of the surrounding region is involved

precise localisation

high repeatability

43
Q

What is locality of features

A

Features are local, therefore robust to occlusion and clutter

44
Q

What is quantity of features

A

We need a sufficient number of regions to cover the object

45
Q

What is distinctiveness of features

A

The region should contain ‘interesting’ structure

46
Q

What is efficiency of features

A

close to real-time performance

47
Q

What are local features most robust to than global

A

-Occlusions
-Intra-category variations

48
Q

σI

A

scale of Gaussian smoothing applied to the image before computing gradients

49
Q

σD

A

scale of derivative operator