776 Computer Vision Jan-Michael Frahm Fall 2015. SIFT-detector Problem: want to detect features at...

Post on 03-Jan-2016

216 views 2 download

Transcript of 776 Computer Vision Jan-Michael Frahm Fall 2015. SIFT-detector Problem: want to detect features at...

776 Computer VisionJan-Michael Frahm

Fall 2015

SIFT-detector

Problem: want to detect features at different scales (sizes) and with different orientations!

SIFT-detector Scale and image-plane-rotation invariant feature descriptor [Lowe 2004]

- Image content is transformed into local feature coordinates that are invariant to translation, rotation, scale, and other imaging parameters

SIFT-detector

Scale = 2.5Rotation = 450

Empirically found to perform very good [Mikolajczyk 2003]

Difference of Gaussian for Scale invariance

Difference-of-Gaussian with constant ratio of scales is a close approximation to Lindeberg’s scale-normalized Laplacian [Lindeberg 1998]

Gaussian

Difference of Gaussian

Difference of Gaussian for Scale

invariance

Difference-of-Gaussian with constant ratio of scales is a close approximation to Lindeberg’s scale-normalized Laplacian [Lindeberg 1998]

Key point localization• Detect maxima and minima

of difference-of-Gaussian in scale space

• Fit a quadratic to surrounding values for sub-pixel and sub-scale interpolation (Brown & Lowe, 2002)

• Taylor expansion around point:

• Offset of extremum (use finite differences for derivatives):

B l u r

R e s a m p l e

S u b t r a c t

Orientation normalization

• Histogram of local gradient directions computed at selected scale

• Assign principal orientation at peak of smoothed histogram

• Each key specifies stable 2D coordinates (x, y, scale, orientation)

0 2

Example of keypoint detection

Threshold on value at DOG peak and on ratio of principle curvatures (Harris approach)

(a) 233x189 image(b) 832 DOG extrema(c) 729 left after peak value threshold(d) 536 left after testing ratio of principle curvatures

courtesy Lowe

X X

SIFT vector formation

• Thresholded image gradients are sampled over 16x16 array of locations in scale space

• Create array of orientation histograms• 8 orientations x 4x4 histogram array = 128 dimensions

© Lowe

example 2x2 histogram array

Sift feature detector

Goal

12

Image Patch

[0, 0, 1, 0, 1, 1, 0, 1, …]Binary Descriptor

slide: J. Heinly

BRIEFBinary Robust Independent

Elementary Features

Calonder et al.ECCV 2010

slide: J. Heinly

Feature Description

14slide: J. Heinly

BRIEF: Method

15

>

Descriptor:0

>1

>

1

>

0

>

1>

0…

slide: J. Heinly

BRIEF: Sampling

16

Endpoints from2D Gaussian

slide: J. Heinly

BRIEF: Descriptor

17slide: J. Heinly

BRIEF: Descriptor

• 128, 256, or 512 bitso 16, 32, or 64 bytes

• Hamming distance matching

18slide: J. Heinly

BRIEF: Summary• Pros

o Highly efficient

• Conso No scale invarianceo No rotation invarianceo Sensitive to noise

19slide: J. Heinly

ORBAn Efficient Alternative

to SIFT or SURF

Rublee et at.ICCV 2011

slide: J. Heinly

Fast Corner Detector

• Continuous arc of pixels all mucho brighter than center pixel p (brighter than p+threshold)oro darker than center pixel p (darker than p-threshold)

• ≥ 12 pixel brighter or darker• rapid rejection by testing pixel 1,9,5, and 13• non-maxima suppression

adapted from Ed Rosten

ORB: Method

22

Feature Direction

>

Descriptor:011010…

>>>

>>

slide: J. Heinly

ORB: Rotation Invariance

Intensity

Centroid

Feature Directio

n

adopted from : J. Heinly

moment of patch:

• choose orientation corrected gradients for descriptor generation

ORB: Descriptor

24

Low Endpoint Correlation High

Candidate Arrangement Learned Arrangement

slide: J. Heinly

ORB: Summary• Pros

o Efficiento Rotation invariance

• Conso No scale invarianceo Sensitive to noise

25slide: J. Heinly

BRISKBinary Robust Invariant

Scalable Keypoints

Leutenegger et al.ICCV 2011

slide: J. Heinly

BRISK: Method

27

>Descriptor:011010…

>> >>>

slide: J. Heinly

BRISK: Rotation Invariance

28

Long-distance

comparisons

Gradient direction

slide: J. Heinly

BRISK: Scale Invariance

29

Find maximum response

slide: J. Heinly

BRISK: Descriptor

30

Centers: BLUE Gaussian: RED

2D Gaussian around each

feature

Robust to noise

slide: J. Heinly

BRISK: Descriptor

31

Centers: BLUE Gaussian: RED

512 Comparisons64 bytes

Avoid short-distance

comparisons

slide: J. Heinly

Rotation normalization through patch gradient

BRISK: Summary• Pros

o Efficiento Rotation invarianceo Scale invarianceo Robust to noise

32slide: J. Heinly

Summary

33

BRIEF BRISKORB

• Efficient • Efficient• Rotation

• Efficient• Rotation• Scale• Noise

slide: J. Heinly

Results: BRIEF

34Increased Difficulty

No RotationDimensiona

lity Reduction

Reco

gn

itio

n R

ate

%

slide: J. Heinly

Results: BRIEF

35Increased Difficulty

Reco

gn

itio

n R

ate

%

slide: J. Heinly

Results: ORB

36

Perc

en

tag

e o

f In

liers

Angle of Rotation

ORB

slide: J. Heinly

Results: BRISK

37slide: J. Heinly

Results: BRISK

38slide: J. Heinly

Results

• Many more tests…

39

Key Observation: Results are comparable to traditional feature descriptors.

slide: J. Heinly

Efficiency

40

SURF SIFT BRIEF ORB BRIS

K1.0 19.0 0.027 0.070 0.087

37.2 14.2 11.5

NormalizedTime

Speedup

slide: J. Heinly

Summary

41

BRIEF BRISKORB

Efficient Binary Descriptors

slide: J. Heinly

BRIEF BRISKORB

slide: J. Heinly