Corners and Interest Points

Slides:



Advertisements
Similar presentations
Feature extraction: Corners
Advertisements

CSE 473/573 Computer Vision and Image Processing (CVIP)
Interest points CSE P 576 Ali Farhadi Many slides from Steve Seitz, Larry Zitnick.
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)
Edge and Corner Detection Reading: Chapter 8 (skip 8.1) Goal: Identify sudden changes (discontinuities) in an image This is where most shape information.
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Algorithms and Applications in Computer Vision
Feature extraction: Corners 9300 Harris Corners Pkwy, Charlotte, NC.
Lecture 6: Feature matching CS4670: Computer Vision Noah Snavely.
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.
Blob detection.
Lecture 2: Image filtering
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.
CS4670: Computer Vision Kavita Bala Lecture 7: Harris Corner Detection.
CS4670: Computer Vision Kavita Bala Lecture 8: Scale invariance.
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
CS 558 C OMPUTER V ISION Lecture VII: Corner and Blob Detection Slides adapted from S. Lazebnik.
Lecture 06 06/12/2011 Shai Avidan הבהרה: החומר המחייב הוא החומר הנלמד בכיתה ולא זה המופיע / לא מופיע במצגת.
Feature extraction: Corners 9300 Harris Corners Pkwy, Charlotte, NC.
776 Computer Vision Jan-Michael Frahm, Enrique Dunn Spring 2013.
Lecture 7: Features Part 2 CS4670/5670: Computer Vision Noah Snavely.
Notes on the Harris Detector
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Kylie Gorman WEEK 1-2 REVIEW. CONVERTING AN IMAGE FROM RGB TO HSV AND DISPLAY CHANNELS.
Feature extraction: Corners and blobs. Why extract features? Motivation: panorama stitching We have two images – how do we combine them?
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
Se-Hoon Park 26 th August 2014 Backgrounds for feature extraction.
Lecture 8: Edges and Feature Detection
Lecture 10: Harris Corner Detector CS4670/5670: Computer Vision Kavita Bala.
Keypoint extraction: Corners 9300 Harris Corners Pkwy, Charlotte, NC.
Blob detection.
Winter in Kraków photographed by Marcin Ryczek
MAN-522: Computer Vision Edge detection Feature and blob detection
Interest Points EE/CSE 576 Linda Shapiro.
Distinctive Image Features from Scale-Invariant Keypoints
CS 4501: Introduction to Computer Vision Sparse Feature Detectors: Harris Corner, Difference of Gaussian Connelly Barnes Slides from Jason Lawrence, Fei.
Local features: main components
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.
Last lecture: Edges primer
Lecture 4: Harris corner detection
Scale and interest point descriptors
Local features: detection and description May 11th, 2017
Edge Detection CS 678 Spring 2018.
Jeremy Bolton, PhD Assistant Teaching Professor
Edge detection Goal: Identify sudden changes (discontinuities) in an image Intuitively, most semantic and shape information from the image can be encoded.
Photo by Carl Warner.
Interest Points and Harris Corner Detector
Lecture 2: Edge detection
Local features and image matching
SIFT keypoint detection
Edge detection f(x,y) viewed as a smooth function
Lecture VI: Corner and Blob Detection
Lecture 5: Feature invariance
Lecture 2: Edge detection
Lecture 5: Feature invariance
Winter in Kraków photographed by Marcin Ryczek
Presentation transcript:

Corners and Interest Points Various slides from previous courses by: D.A. Forsyth (Berkeley / UIUC), I. Kokkinos (Ecole Centrale / UCL). S. Lazebnik (UNC / UIUC), S. Seitz (MSR / Facebook), J. Hays (Brown / Georgia Tech), A. Berg (Stony Brook / UNC), D. Samaras (Stony Brook) . J. M. Frahm (UNC), V. Ordonez (UVA).

Last Class Frequency Domain Filtering in Frequency Edge Detection - Canny

Today’s Class Corner Detection - Harris Interest Points Local Feature Descriptors

Edge Detection

Edge Detection Sobel + Thresholding 𝑔 𝑥,𝑦 = 1, 𝑓(𝑥,𝑦)≥𝜏 &0, 𝑓 𝑥,𝑦 <𝜏 Sobel + Thresholding

fg_pix = find(im < 65); Digression Thresholding is often the most under-rated but effective Computer Vision technique. Sometimes this is all you need! Example: intensity-based detection. Warning when door is opened or closed. Looking for dark pixels fg_pix = find(im < 65); Example by Kristen Grauman, UT-Austin

Canny Edge Detector Obtains thin edges (1px wide) Tries to preserve edge connectivity. Source: Juan C. Niebles and Ranjay Krishna.

Canny edge detector Filter image with x, y derivatives of Gaussian Find magnitude and orientation of gradient Non-maximum suppression: Thin multi-pixel wide “ridges” down to single pixel width Thresholding and linking (hysteresis): Define two thresholds: low and high Use the high threshold to start edge curves and the low threshold to continue them Source: Juan C. Niebles and Ranjay Krishna.

Canny Edge Detector Classic algorithm in Computer Vision / Image Analysis Commonly implemented in most libraries e.g. in Python you can find it in the skimage package. OpenCV also has an implementation with python bindings. Canny, J., A Computational Approach To Edge Detection, IEEE Trans. Pattern Analysis and Machine Intelligence, 8(6):679–698, 1986.

Corners (and Interest Points) How to find corners? What is a corner?

Corners: Why “Interest” Points? If we can find them, then maybe we can “match” images belonging to the same object! Example from Silvio Savarese Then maybe we can also “triangulate” the 3D coordinates of the image.

Corner Detection: Basic Idea 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 “flat” region: no change in all directions “edge”: no change along the edge direction “corner”: significant change in all directions Source: A. Efros

Harris Corner Detection Compute the following matrix of squared gradients for every pixel. 𝐼 𝑥 𝐼 𝑦 and are gradients computed using Sobel or some other approximation. 𝑀= 𝑝𝑎𝑡𝑐ℎ 𝐼 𝑥 2 𝐼 𝑥 𝐼 𝑦 𝐼 𝑦 𝐼 𝑥 𝐼 𝑦 2 𝑀= 0 0 0 0 𝑀= 0 0 0 𝑏 𝑀= 𝑎 0 0 0 𝑀= 𝑎 0 0 𝑏

Harris Corner Detection 𝑀= 0 0 0 0 𝑀= 0 0 0 𝑏 𝑀= 𝑎 0 0 0 𝑀= 𝑎 0 0 𝑏 If both a, and b are large then this is a corner, otherwise it is not. Set a threshold and this should detect corners. Problem: Doesn’t work for these corners:

Harris Corner Detection 𝑀= 𝑝𝑎𝑡𝑐ℎ 𝐼 𝑥 2 𝐼 𝑥 𝐼 𝑦 𝐼 𝑦 𝐼 𝑥 𝐼 𝑦 2 = 𝑎 𝑐 𝑐 𝑏 𝑀= 𝑅 𝑚 −1 𝜆 1 0 0 𝜆 2 𝑅 𝑚 Under a rotation M can be diagonalized 𝜆 1 and 𝜆 2 are the eigenvalues of M det 𝑀−𝜆𝐼 =0 From your linear algebra class finding them requires solving

However no need to solve det(M-lambda I)=0

Corner response function α: constant (0.04 to 0.06) “Edge” R < 0 “Corner” R > 0 |R| small “Flat” region “Edge” R < 0

Harris Detector Summary [Harris88] Second moment matrix 1. Image derivatives Ix Iy (optionally, blur first) Ix2 Iy2 IxIy 2. Square of derivatives 3. Gaussian filter g(sI) g(Ix2) g(Iy2) g(IxIy) 4. Cornerness function – both eigenvalues are strong 5. Non-maxima suppression har

Alternative Corner response function “edge”: “corner”: “flat” region 1 >> 2 1 and 2 are large, 1 ~ 2; 1 and 2 are small; 2 >> 1 Szeliski Harmonic mean

Harris Detector: Steps

Harris Detector: Steps Compute corner response R

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

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

Harris Detector: Steps

Invariance and covariance We want corner locations to be invariant to photometric transformations and covariant to geometric transformations Invariance: image is transformed and corner locations do not change Covariance: if we have two transformed versions of the same image, features should be detected in corresponding locations Slide by James Hays

Keypoint detection with scale selection We want to extract keypoints with characteristic scale that is covariant with the image transformation Slide by Svetlana Lazebnik

Basic idea Convolve the image with a “blob filter” at multiple scales and look for extrema of filter response in the resulting scale space T. Lindeberg. Feature detection with automatic scale selection. IJCV 30(2), pp 77-116, 1998. Slide by Svetlana Lazebnik

Blob detection minima * = maxima Find maxima and minima of blob filter response in space and scale Source: N. Snavely

Blob filter Laplacian of Gaussian: Circularly symmetric operator for blob detection in 2D

Recall: Edge detection f Derivative of Gaussian Edge = maximum of derivative Source: S. Seitz

Edge detection, Take 2 f Edge Second derivative of Gaussian (Laplacian) Edge = zero crossing of second derivative An edge filtered with the Laplacian of Gaussian is the difference between the blurry edge and the original edge. Source: S. Seitz

Scale-space blob detector Convolve image with scale-normalized Laplacian at several scales

Scale-space blob detector: Example Slide by Svetlana Lazebnik

Scale-space blob detector: Example Slide by Svetlana Lazebnik

Scale-space blob detector Convolve image with scale-normalized Laplacian at several scales Find maxima of squared Laplacian response in scale-space Slide by Svetlana Lazebnik

Scale-space blob detector: Example Slide by Svetlana Lazebnik

Eliminating edge responses Laplacian has strong response along edge Slide by Svetlana Lazebnik

Efficient implementation Approximating the Laplacian with a difference of Gaussians: (Laplacian) (Difference of Gaussians) Slide by Svetlana Lazebnik

Efficient implementation David G. Lowe. "Distinctive image features from scale-invariant keypoints.” IJCV 60 (2), pp. 91-110, 2004.

SIFT keypoint detection D. Lowe, Distinctive image features from scale-invariant keypoints, IJCV 60 (2), pp. 91-110, 2004.

Questions?