Feature Descriptors 16-385 Computer Vision (Kris Kitani) Carnegie - - PowerPoint PPT Presentation

feature descriptors
SMART_READER_LITE
LIVE PREVIEW

Feature Descriptors 16-385 Computer Vision (Kris Kitani) Carnegie - - PowerPoint PPT Presentation

Feature Descriptors 16-385 Computer Vision (Kris Kitani) Carnegie Mellon University Tiny Images Just downsample it Simple Fast Robust to small affine transformation What are the problems? Multi-Scale Oriented Patches (MOPS) Multi-Image


slide-1
SLIDE 1

Feature Descriptors

16-385 Computer Vision (Kris Kitani)

Carnegie Mellon University

slide-2
SLIDE 2

Tiny Images

slide-3
SLIDE 3

Just downsample it

slide-4
SLIDE 4

Simple Fast Robust to small affine transformation What are the problems?

slide-5
SLIDE 5

Multi-Scale Oriented Patches (MOPS)

Multi-Image Matching using Multi-Scale Oriented Patches. M. Brown, R. Szeliski and S. Winder. 
 International Conference on Computer Vision and Pattern Recognition (CVPR2005). pages 510-517

slide-6
SLIDE 6

Multi-Scale Oriented Patches (MOPS)

Multi-Image Matching using Multi-Scale Oriented Patches. M. Brown, R. Szeliski and S. Winder. 
 International Conference on Computer Vision and Pattern Recognition (CVPR2005). pages 510-517

(x, y, s, θ) Given a feature Get 40 x 40 image patch, subsample every 5th pixel

(what’s the purpose of this step?)

Subtract the mean, divide by standard deviation

(what’s the purpose of this step?)

Haar Wavelet Transform

(what’s the purpose of this step?)

slide-7
SLIDE 7

Multi-Scale Oriented Patches (MOPS)

Multi-Image Matching using Multi-Scale Oriented Patches. M. Brown, R. Szeliski and S. Winder. 
 International Conference on Computer Vision and Pattern Recognition (CVPR2005). pages 510-517

(x, y, s, θ) Given a feature Get 40 x 40 image patch, subsample every 5th pixel

(low frequency filtering, absorbs localization errors)

Subtract the mean, divide by standard deviation

(what’s the purpose of this step?)

Haar Wavelet Transform

(what’s the purpose of this step?)

slide-8
SLIDE 8

Multi-Scale Oriented Patches (MOPS)

Multi-Image Matching using Multi-Scale Oriented Patches. M. Brown, R. Szeliski and S. Winder. 
 International Conference on Computer Vision and Pattern Recognition (CVPR2005). pages 510-517

(x, y, s, θ) Given a feature Get 40 x 40 image patch, subsample every 5th pixel

(low frequency filtering, absorbs localization errors)

Subtract the mean, divide by standard deviation

(removes bias and gain)

Haar Wavelet Transform

(what’s the purpose of this step?)

slide-9
SLIDE 9

Multi-Scale Oriented Patches (MOPS)

Multi-Image Matching using Multi-Scale Oriented Patches. M. Brown, R. Szeliski and S. Winder. 
 International Conference on Computer Vision and Pattern Recognition (CVPR2005). pages 510-517

(x, y, s, θ) Given a feature Get 40 x 40 image patch, subsample every 5th pixel

(low frequency filtering, absorbs localization errors)

Subtract the mean, divide by standard deviation

(removes bias and gain)

Haar Wavelet Transform

(low frequency projection)

slide-10
SLIDE 10

Haar Wavelets

(actually, Haar-like features)

Use responses of a bank of filters as a descriptor

slide-11
SLIDE 11

Haar wavelets filters

Haar wavelet responses can be computed with filtering

image patch

dx dy

  • 1
  • 1

+1 +1

Haar wavelet responses can be computed efficiently (in constant time) with integral images

slide-12
SLIDE 12

Integral Image

1 5 2 2 4 1 2 1 1 1 6 8 3 12 15 5 15 19

  • riginal

image integral image

A(x, y) I(x, y) A(x, y) = X

x0x,y0y

I(x0, y0)

slide-13
SLIDE 13

Integral Image

1 5 2 2 4 1 2 1 1 1 6 8 3 12 15 5 15 19

  • riginal

image integral image

A(x, y) I(x, y) Can find the sum of any block using 3 operations A(x1, y1, x2, y2) = A(x2, y2) − A(x1, y2) − A(x2, y1) + A(x1, y1) A(x, y) = X

x0x,y0y

I(x0, y0)

slide-14
SLIDE 14

1 5 2 2 4 1 2 1 1 1 6 8 3 12 15 5 15 19

image integral image A(x, y) I(x, y) A(x1, y1, x2, y2) = A(x2, y2) − A(x1, y2) − A(x2, y1) + A(x1, y1) A(1, 1, 3, 3) = A(3, 3) − A(1, 3) − A(3, 1) + A(1, 1) = 19 − 8 − 5 + 1 = 7

What is the sum of the bottom right 2x2 square?

slide-15
SLIDE 15

Given an image patch, compute filter responses

Responses are usually computed at specified location as a face patch descriptor

vector of filter responses filter bank (20 Haar wavelet filters)

slide-16
SLIDE 16

AdaBoost

Σ

accept reject average filter response

AdaBoost

Σ

accept reject average filter response

AdaBoost

Σ

FACE!

reject average filter response

slide-17
SLIDE 17
slide-18
SLIDE 18

Given an image patch, compute filter responses When will this feature descriptor fail?

Responses are usually computed at specified location as a face patch descriptor

vector of filter responses filter bank (20 Haar wavelet filters)

slide-19
SLIDE 19
slide-20
SLIDE 20