Interest Points EE/CSE 576 Linda Shapiro.

Slides:



Advertisements
Similar presentations
Feature extraction: Corners
Advertisements

Feature Detection. Description Localization More Points Robust to occlusion Works with less texture More Repeatable Robust detection Precise localization.
CSE 473/573 Computer Vision and Image Processing (CVIP)
Interest points CSE P 576 Ali Farhadi Many slides from Steve Seitz, Larry Zitnick.
The SIFT (Scale Invariant Feature Transform) Detector and Descriptor
TP14 - Local features: detection and description Computer Vision, FCUP, 2014 Miguel Coimbra Slides by Prof. Kristen Grauman.
CSE 473/573 Computer Vision and Image Processing (CVIP)
Algorithms and Applications in Computer Vision
Interest points CSE P 576 Larry Zitnick Many slides courtesy of Steve Seitz.
Feature extraction: Corners 9300 Harris Corners Pkwy, Charlotte, NC.
Lecture 6: Feature matching CS4670: Computer Vision Noah Snavely.
Lecture 4: Feature matching
Automatic Image Alignment (feature-based) : Computational Photography Alexei Efros, CMU, Fall 2005 with a lot of slides stolen from Steve Seitz and.
Feature extraction: Corners and blobs
Interest Points and Corners Computer Vision CS 143, Brown James Hays Slides from Rick Szeliski, Svetlana Lazebnik, Derek Hoiem and Grauman&Leibe 2008 AAAI.
Lecture 3a: Feature detection and matching CS6670: Computer Vision Noah Snavely.
Automatic Image Alignment (feature-based) : Computational Photography Alexei Efros, CMU, Fall 2006 with a lot of slides stolen from Steve Seitz and.
1 Image Features Hao Jiang Sept Image Matching 2.
The SIFT (Scale Invariant Feature Transform) Detector and Descriptor
CS4670: Computer Vision Kavita Bala Lecture 7: Harris Corner Detection.
CS4670: Computer Vision Kavita Bala Lecture 8: Scale invariance.
Lecture 6: Feature matching and alignment CS4670: Computer Vision Noah Snavely.
Scale-Invariant Feature Transform (SIFT) Jinxiang Chai.
CSE 185 Introduction to Computer Vision Local Invariant Features.
CSCE 643 Computer Vision: Extractions of Image Features Jinxiang Chai.
Feature extraction: Corners 9300 Harris Corners Pkwy, Charlotte, NC.
776 Computer Vision Jan-Michael Frahm, Enrique Dunn Spring 2013.
Local invariant features 1 Thursday October 3 rd 2013 Neelima Chavali Virginia Tech.
Lecture 7: Features Part 2 CS4670/5670: Computer Vision Noah Snavely.
Notes on the Harris Detector
Harris Corner Detector & Scale Invariant Feature Transform (SIFT)
Feature extraction: Corners and blobs. Why extract features? Motivation: panorama stitching We have two images – how do we combine them?
A Tutorial on using SIFT Presented by Jimmy Huff (Slightly modified by Josiah Yoder for Winter )
Project 3 questions? Interest Points and Instance Recognition Computer Vision CS 143, Brown James Hays 10/21/11 Many slides from Kristen Grauman and.
Local features and image matching October 1 st 2015 Devi Parikh Virginia Tech Disclaimer: Many slides have been borrowed from Kristen Grauman, who may.
Local features: detection and description
Features Jan-Michael Frahm.
CS654: Digital Image Analysis
CSE 185 Introduction to Computer Vision Local Invariant Features.
Lecture 10: Harris Corner Detector CS4670/5670: Computer Vision Kavita Bala.
Keypoint extraction: Corners 9300 Harris Corners Pkwy, Charlotte, NC.
Blob detection.
SIFT Scale-Invariant Feature Transform David Lowe
Lecture 13: Feature Descriptors and Matching
Distinctive Image Features from Scale-Invariant Keypoints
Local features: main components
Scale Invariant Feature Transform (SIFT)
3D Vision Interest Points.
Corners and interest points
TP12 - Local features: detection and description
Source: D. Lowe, L. Fei-Fei Recap: edge detection Source: D. Lowe, L. Fei-Fei.
Scale and interest point descriptors
Local features: detection and description May 11th, 2017
Feature description and matching
Corners and Interest Points
CAP 5415 Computer Vision Fall 2012 Dr. Mubarak Shah Lecture-5
From a presentation by Jimmy Huff Modified by Josiah Yoder
The SIFT (Scale Invariant Feature Transform) Detector and Descriptor
Interest Points & Descriptors 3 - SIFT
Local features and image matching
SIFT keypoint detection
Lecture VI: Corner and Blob Detection
Feature descriptors and matching
Lecture 5: Feature invariance
SIFT SIFT is an carefully designed procedure with empirically determined parameters for the invariant and distinctive features.
Presented by Xu Miao April 20, 2005
Lecture 5: Feature invariance
Presentation transcript:

Interest Points EE/CSE 576 Linda Shapiro

Preview: Harris detector Interest points extracted with Harris (~ 500 points)

How can we find corresponding points?

Not always easy NASA Mars Rover images

Answer below (look for tiny colored squares…) NASA Mars Rover images Figure by Noah Snavely 5

Human eye movements What catches your interest? Your eyes don’t see everything at once, but they jump around. You see only about 2 degrees with high resolution Yarbus eye tracking 6

Interest points original Suppose you have to click on some point, go away and come back after I deform the image, and click on the same points again. Which points would you choose? deformed

Intuition

Corners We should easily recognize the point by looking through a small window Shifting a window in any direction should give a large change in intensity no change in all directions no change along the edge direction significant change in all directions Source: A. Efros 9

Let’s look at the gradient distributions a. moving around causes no difference, b. moving up and down no difference, but left and right yes, c. moving in two directions causes difference

Principal Component Analysis Principal component is the direction of highest variance. How to compute PCA components: Subtract off the mean for each data point. Compute the covariance matrix. Compute eigenvectors and eigenvalues. The components are the eigenvectors ranked by the eigenvalues. Next, highest component is the direction with highest variance orthogonal to the previous components.

Corners have … Both eigenvalues are large!

Second Moment Matrix or Harris Matrix 2 x 2 matrix of image derivatives smoothed by Gaussian weights. Notation: First compute Ix, Iy, and IxIy as 3 images; then apply Gaussian to each. OR, first apply the Gaussian and the compute the derivatives. 13

The math Compute the Harris matrix over a window. To compute the eigenvalues: Compute the Harris matrix over a window. What does this equation mean in practice? Σsmoothed Ix2 Σsmoothed IxIy Σsmoothed IxIy Σsmoothed Iy2 2. Compute eigenvalues from that. Typically Gaussian weights

Corner Response Function Computing eigenvalues are expensive Harris corner detector used the following alternative Reminder:

Harris detector: Steps Compute derivatives Ix, Iy and IxIy at each pixel and smooth them with a Gaussian. (Or smooth first and then derivatives.) Compute the Harris matrix H in a window around each pixel Compute corner response function R Threshold R Find local maxima of response function (nonmaximum suppression) C.Harris and M.Stephens. Proceedings of the 4th Alvey Vision Conference: pages 147—151, 1988.  16

Harris Detector: Steps 17

Harris Detector: Steps Compute corner response R Shown as a heat map 18

Harris Detector: Steps Find points with large corner response: R > threshold 19

Harris Detector: Steps Take only the points of local maxima of R 20

Harris Detector: Results 21

Simpler Response Function Instead of We can use

Properties of the Harris corner detector Translation invariant? Rotation invariant? Scale invariant? Yes Yes What’s the problem? No Corner ! All points will be classified as edges

Scale Let’s look at scale first: What is the “best” scale?

Scale Invariance How can we independently select interest points in each image, such that the detections are repeatable across different scales? K. Grauman, B. Leibe

Differences between Inside and Outside Laplacian 1. We can use a Laplacian function

Scale But we use a Gaussian. Why Gaussian? It is invariant to scale change, i.e., and has several other nice properties. Lindeberg, 1994 In practice, the Laplacian is approximated using a Difference of Gaussian (DoG).

Difference-of-Gaussian (DoG) G1 - G2 = DoG = - K. Grauman, B. Leibe

DoG example Take Gaussians at multiple spreads and uses DoGs. σ = 1 σ = 66

Scale invariant interest points Interest points are local maxima in both position and scale. Look for extrema in difference of Gaussians. s5 s4 scale s3 s2 Apply Gaussians with different σ’s. (x, y, σ) s1 30

Scale In practice the image is downsampled for larger sigmas. Lowe, 2004.

Lowe’s Pyramid Scheme s+2 filters s+1=2(s+1)/s0 . i=2i/s0 2=22/s0 1=21/s0 0 s+2 differ- ence images s+3 images including original The parameter s determines the number of images per octave.

Key point localization s+2 difference images. top and bottom ignored. s planes searched. Detect maxima and minima of difference-of-Gaussian in scale space Each point is compared to its 8 neighbors in the current image and 9 neighbors each in the scales above and below For each max or min found, output is the location and the scale.

Sampling in scale for efficiency Scale-space extrema detection: experimental results over 32 images that were synthetically transformed and noise added. % detected % correctly matched average no. detected average no. matched Stability Expense Sampling in scale for efficiency How many scales should be used per octave? S=? More scales evaluated, more keypoints found S < 3, stable keypoints increased too S > 3, stable keypoints decreased S = 3, maximum stable keypoints found We could not evaluate the

Results: Difference-of-Gaussian K. Grauman, B. Leibe

How can we find correspondences? Similarity transform

Rotation invariance CSE 576: Computer Vision Rotate patch according to its dominant gradient orientation This puts the patches into a canonical orientation. Image from Matthew Brown 37

Orientation Normalization Compute orientation histogram Select dominant orientation Normalize: rotate to fixed orientation [Lowe, SIFT, 1999] p 2 T. Tuytelaars, B. Leibe

What’s next? Once we have found the keypoints and a dominant orientation for each, we need to describe the (rotated and scaled) neighborhood about each. 128-dimensional vector

But there are TWO parts to SIFT. an interest point detector Important Point People just say “SIFT”. But there are TWO parts to SIFT. an interest point detector a region descriptor They are independent. Many people use the region descriptor without looking for the points.