designing descriptors overview of today s lecture
play

Designing descriptors Overview of todays lecture Why do we need - PowerPoint PPT Presentation

Designing descriptors Overview of todays lecture Why do we need feature descriptors? Designing feature descriptors. MOPS descriptor. GIST descriptor. Histogram of Textons descriptor. HOG descriptor. SURF descriptor.


  1. Designing descriptors

  2. Overview of today’s lecture • Why do we need feature descriptors? • Designing feature descriptors. • MOPS descriptor. • GIST descriptor. • Histogram of Textons descriptor. • HOG descriptor. • SURF descriptor. • SIFT.

  3. Why do we need feature descriptors?

  4. If we know where the good features are, how do we match them?

  5. Designing feature descriptors

  6. Geometric transformations objects will appear at different scales, translation and rotation

  7. What is the best descriptor for an image feature?

  8. Image patch Just use the pixel values of the patch 1 2 3 ( ) 1 2 3 4 5 6 7 8 9 4 5 6 vector of intensity values 7 8 9 Perfectly fine if geometry and appearance is unchanged (a.k.a. template matching) What are the problems?

  9. Image patch Just use the pixel values of the patch 1 2 3 ( ) 1 2 3 4 5 6 7 8 9 4 5 6 vector of intensity values 7 8 9 Perfectly fine if geometry and appearance is unchanged (a.k.a. template matching) What are the problems? How can you be less sensitive to absolute intensity values?

  10. Image gradients Use pixel differences 1 2 3 ( ) - + + - - + 4 5 6 vector of x derivatives 7 8 9 ‘binary descriptor’ Feature is invariant to absolute intensity values What are the problems?

  11. Image gradients Use pixel differences 1 2 3 ( ) - + + - - + 4 5 6 vector of x derivatives 7 8 9 Feature is invariant to absolute intensity values What are the problems? How can you be less sensitive to deformations?

  12. Color histogram Count the colors in the image using a histogram colors Invariant to changes in scale and rotation What are the problems?

  13. Color histogram Count the colors in the image using a histogram colors Invariant to changes in scale and rotation What are the problems?

  14. Color histogram Count the colors in the image using a histogram colors Invariant to changes in scale and rotation What are the problems? How can you be more sensitive to spatial layout?

  15. Spatial histograms Compute histograms over spatial ‘cells’ Retains rough spatial layout Some invariance to deformations What are the problems?

  16. Spatial histograms Compute histograms over spatial ‘cells’ Retains rough spatial layout Some invariance to deformations What are the problems? How can you be completely invariant to rotation?

  17. Orientation normalization Use the dominant image gradient direction to normalize the orientation of the patch save the orientation angle along with What are the problems?

  18. MOPS descriptor

  19. 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

  20. 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 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? )

  21. 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 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? )

  22. 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 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? )

  23. 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 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)

  24. Haar Wavelets (actually, Haar-like features) Use responses of a bank of filters as a descriptor

  25. Haar wavelet responses can be computed with filtering image patch Haar wavelets filters -1 -1 +1 +1

  26. Haar wavelet responses can be computed with filtering image patch = -

  27. Haar wavelet responses can be computed with filtering -45 16 image patch Haar wavelets filters -1 -1 +1 +1

  28. Haar wavelet responses can be computed with filtering -45 16 image patch Haar wavelets filters -1 -1 +1 +1 Haar wavelet responses can be computed efficiently (in constant time) with integral images

  29. Discriptor = 12 dim vector -45 -3 15 -21 image patch 9 -1 6 -14 -9 22 -31 -13

  30. Discriptor = 12 dim vector image patch [ ] -45 -3 15 -21 9 -1 6 -14 -9 22 -31 -13

  31. 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 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)

  32. GIST descriptor

  33. GIST Filter bank 1. Compute filter responses (filter bank of Gabor filters) 2. Divide image patch into 4 x 4 cells 4 x 4 cell 3. Compute filter response averages for each cell 4. Size of descriptor is 4 x 4 x N, where N is the size of the filter bank averaged filter responses

  34. Gabor Filters (1D examples)

  35. 2D Gabor Filters High frequency along axis Lower frequency (diagonal) Even lower frequency

  36. Odd Gabor filter … looks a lot like… Gaussian Derivative

  37. Even Gabor filter … looks a lot like… Laplacian

  38. For small scales, the Gabor filters become derivative operators σ = 2 f = 1/6

  39. Directional edge detectors

  40. GIST Filter bank 1. Compute filter responses (filter bank of Gabor filters) 2. Divide image patch into 4 x 4 cells 3. Compute filter response averages for each cell 4. Size of descriptor is 4 x 4 x N, where N is the size of the filter bank 4 x 4 cell What is the GIST descriptor encoding? Rough spatial distribution of image gradients averaged filter responses

  41. SURF descriptor

  42. SURF (‘Speeded’ Up Robust Features) Compute Haar wavelet response at each pixel in patch

  43. SURF (‘Speeded’ Up Robust Features) 4 x 4 cell grid Each cell is represented by 4 values: Haar wavelets filters 5 x 5 (Gaussian weighted from center) sample points How big is the SURF descriptor?

  44. SURF (‘Speeded’ Up Robust Features) 4 x 4 cell grid Each cell is represented by 4 values: Haar wavelets filters 5 x 5 (Gaussian weighted from center) sample points How big is the SURF descriptor? 64 dimensions

  45. Integral Image 1 5 2 1 6 8 original integral 2 4 1 3 12 15 image image 2 1 1 5 15 19

  46. Integral Image 1 5 2 1 6 8 original integral 2 4 1 3 12 15 image image 2 1 1 5 15 19 Can find the sum of any block using 3 operations

  47. What is the sum of the bottom right 2x2 square? 1 5 2 6 1 8 2 4 1 3 12 15 2 1 1 15 5 19 image integral image

  48. SIFT

  49. SIFT (Scale Invariant Feature Transform) SIFT describes both a detector and descriptor 1. Multi-scale extrema detection 2. Keypoint localization 3. Orientation assignment 4. Keypoint descriptor

  50. 4. Keypoint descriptor Image Gradients SIFT descriptor (4 x 4 pixel per cell, 4 x 4 cells) (16 cells x 8 directions = 128 dims) Gaussian weighting (sigma = half width)

  51. References Basic reading: Szeliski textbook, Sections 4.1.2, 14.1.2. •

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend