SURF Features. Jacky Baltes Dept. of Computer Science University of Manitoba WWW:

Similar documents
Overview. Introduction to local features. Harris interest points + SSD, ZNCC, SIFT. Evaluation and comparison of different detectors

Lecture 8: Interest Point Detection. Saad J Bedros

Blobs & Scale Invariance

Edges and Scale. Image Features. Detecting edges. Origin of Edges. Solution: smooth first. Effects of noise

CS5670: Computer Vision

Recap: edge detection. Source: D. Lowe, L. Fei-Fei

Overview. Harris interest points. Comparing interest points (SSD, ZNCC, SIFT) Scale & affine invariant interest points

Feature extraction: Corners and blobs

Corners, Blobs & Descriptors. With slides from S. Lazebnik & S. Seitz, D. Lowe, A. Efros

SIFT: SCALE INVARIANT FEATURE TRANSFORM BY DAVID LOWE

Lecture 8: Interest Point Detection. Saad J Bedros

Scale-space image processing

Properties of detectors Edge detectors Harris DoG Properties of descriptors SIFT HOG Shape context

Machine vision. Summary # 4. The mask for Laplacian is given

Feature detection.

Vlad Estivill-Castro (2016) Robots for People --- A project for intelligent integrated systems

CSE 473/573 Computer Vision and Image Processing (CVIP)

Detectors part II Descriptors

Machine vision, spring 2018 Summary 4

CS4670: Computer Vision Kavita Bala. Lecture 7: Harris Corner Detec=on

Image Analysis. Feature extraction: corners and blobs

Advances in Computer Vision. Prof. Bill Freeman. Image and shape descriptors. Readings: Mikolajczyk and Schmid; Belongie et al.

Orientation Map Based Palmprint Recognition

Feature detectors and descriptors. Fei-Fei Li

Edge Detection. CS 650: Computer Vision

Invariant local features. Invariant Local Features. Classes of transformations. (Good) invariant local features. Case study: panorama stitching

INTEREST POINTS AT DIFFERENT SCALES

Feature detectors and descriptors. Fei-Fei Li

Overview. Introduction to local features. Harris interest points + SSD, ZNCC, SIFT. Evaluation and comparison of different detectors

Blob Detection CSC 767

Achieving scale covariance

Lecture 12. Local Feature Detection. Matching with Invariant Features. Why extract features? Why extract features? Why extract features?

LoG Blob Finding and Scale. Scale Selection. Blobs (and scale selection) Achieving scale covariance. Blob detection in 2D. Blob detection in 2D

Affine Adaptation of Local Image Features Using the Hessian Matrix

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

SIFT: Scale Invariant Feature Transform

Lecture 6: Finding Features (part 1/2)

Image matching. by Diva Sian. by swashford

arxiv: v1 [cs.cv] 10 Feb 2016

Lecture 7: Finding Features (part 2/2)

Instance-level recognition: Local invariant features. Cordelia Schmid INRIA, Grenoble

Harris Corner Detector

Maximally Stable Local Description for Scale Selection

Extract useful building blocks: blobs. the same image like for the corners

Advanced Features. Advanced Features: Topics. Jana Kosecka. Slides from: S. Thurn, D. Lowe, Forsyth and Ponce. Advanced features and feature matching

Scale & Affine Invariant Interest Point Detectors

SIFT, GLOH, SURF descriptors. Dipartimento di Sistemi e Informatica

Roadmap. Introduction to image analysis (computer vision) Theory of edge detection. Applications

Keypoint extraction: Corners Harris Corners Pkwy, Charlotte, NC

Lecture 7: Finding Features (part 2/2)

Feature Tracking. 2/27/12 ECEn 631

Feature Extraction and Image Processing

Instance-level l recognition. Cordelia Schmid INRIA

TRACKING and DETECTION in COMPUTER VISION Filtering and edge detection

Gaussian derivatives

Filtering and Edge Detection

CEE598 - Visual Sensing for Civil Infrastructure Eng. & Mgmt.

Local Features (contd.)

Instance-level recognition: Local invariant features. Cordelia Schmid INRIA, Grenoble

Lecture 7: Edge Detection

Image Processing 1 (IP1) Bildverarbeitung 1

Feature Vector Similarity Based on Local Structure

Scale & Affine Invariant Interest Point Detectors

Corner detection: the basic idea

Lesson 04. KAZE, Non-linear diffusion filtering, ORB, MSER. Ing. Marek Hrúz, Ph.D.

Instance-level recognition: Local invariant features. Cordelia Schmid INRIA, Grenoble

SURVEY OF APPEARANCE-BASED METHODS FOR OBJECT RECOGNITION

Lecture 6: Edge Detection. CAP 5415: Computer Vision Fall 2008

Instance-level l recognition. Cordelia Schmid & Josef Sivic INRIA

Laplacian Filters. Sobel Filters. Laplacian Filters. Laplacian Filters. Laplacian Filters. Laplacian Filters

Edge Detection. Introduction to Computer Vision. Useful Mathematics Funcs. The bad news

Lecture 04 Image Filtering

ECE 468: Digital Image Processing. Lecture 8

Wavelet-based Salient Points with Scale Information for Classification

CS 3710: Visual Recognition Describing Images with Features. Adriana Kovashka Department of Computer Science January 8, 2015

6.869 Advances in Computer Vision. Prof. Bill Freeman March 1, 2005

Estimators for Orientation and Anisotropy in Digitized Images

Object Recognition Using Local Characterisation and Zernike Moments

Lecture 05 Point Feature Detection and Matching

Affine Differential Invariants for Invariant Feature Point Detection

Low-level Image Processing

Edge Detection. Image Processing - Computer Vision

EE 6882 Visual Search Engine

Equi-Affine Differential Invariants for Invariant Feature Point Detection

Rotational Invariants for Wide-baseline Stereo

Review Smoothing Spatial Filters Sharpening Spatial Filters. Spatial Filtering. Dr. Praveen Sankaran. Department of ECE NIT Calicut.

ITK Filters. Thresholding Edge Detection Gradients Second Order Derivatives Neighborhood Filters Smoothing Filters Distance Map Image Transforms

Coding Images with Local Features

EECS150 - Digital Design Lecture 15 SIFT2 + FSM. Recap and Outline

International Journal of Computer Engineering and Applications, Volume XII, Special Issue, August 18, ISSN

On the Completeness of Coding with Image Features

Interest Operators. All lectures are from posted research papers. Harris Corner Detector: the first and most basic interest operator

Region Covariance: A Fast Descriptor for Detection and Classification

The state of the art and beyond

KAZE Features. 1 Introduction. Pablo Fernández Alcantarilla 1, Adrien Bartoli 1, and Andrew J. Davison 2

Image Filtering. Slides, adapted from. Steve Seitz and Rick Szeliski, U.Washington

Reading. 3. Image processing. Pixel movement. Image processing Y R I G Q

Edge Detection PSY 5018H: Math Models Hum Behavior, Prof. Paul Schrater, Spring 2005

Advanced Edge Detection 1

Transcription:

SURF Features Jacky Baltes Dept. of Computer Science University of Manitoba Email: jacky@cs.umanitoba.ca WWW: http://www.cs.umanitoba.ca/~jacky

Salient Spatial Features Trying to find interest points Points that can be found independent of perspective transformations Distinctive (Unique in local region) Surrounding of pixel is rich in structure Repeatable (Different views) Stable under geometric, photometric transformations Stable to noise Well defined position in the image

Applications Tracking Object recognition Human action recognition Panorama stitching Robot localization Texture recognition

Covariant to Scale Change Changes in scale do not alter the structure of the image

Salient Features Scale Invariant Feature Transform (SIFT) David Lowe, 1999 Harris Affine Corner Detector Hessian Affine Corner Detector Edge Based Regions Intensity Based Regions Maximally Stable Extremal Regions (MSER) Entropy Based Salient Regions

Scale Invariant Feature Transform (SIFT) Scale-space Theorem: A local 3D Maximum of NLOG in (x,y,σ) Can be identified at different scales (scale invariant keypoint) Laplacian Kernel NLoG x, y, σ =σ 2 2 G

The Laplacian of Gaussian (LoG) Convolution of an image by the following kernel g x, y,t = 1 2 t 2 e x 2 y 2 / 2t L x, y ; t =g x, y, t I x, y Diameter t, L is called scale-space representation 2 norm L x, y ;t =t L xx L yy Based on Laplacian operator, which is sum of partial derivatives in Euclidean space A popular blob detector is based on LoG

Everything Clear? Maybe if you are a mathematician Another derivation Sobel, Prewitt edge detectors are gradient based Maximum of 1 st derivative Or zero-crossing of 2 nd derivative How to calculate 2 nd derivative?

Laplacian Need to calculate 2 nd derivative Change in 1 st derivative a b c d e f g h i 4 connectedness (f e) (e d) + (h-e) (e-b) = +f +d +h+b-4e 8 Connectedness (f e) (e d) + (h-e) (e-b) + (i-e) (e a) + (c-e) (e g) = +f + d + h + b + i + a + c + g - 8e 0 1 0 1-4 1 0 1 0 1 1 1 1-8 1 1 1 1

Laplacian Detect the zero crossing of the Laplacian to detect edges Because of the use of the 2 nd derivative, very sensitive to noise Remove noise by blurring the image first with a Gaussian kernel of size σ L og x, y = 1 [1 x2 y 2 x 2 y 2 2 ]e 2 4 2 2

Gradient based procedure Sobel Sobel

Laplacian 1 1 1 1-8 1 1 1 1

Sobel -1 0 1-2 0 2-1 0 1-1 -2-1 0 0 0 1 2 1

Laplacian 1 1 1 1-8 1 1 1 1

Zero-crossing based procedure LoG

Laplacian of Gaussian

Plot in Scilab Gaussian

Edge-based Segmentation: examples Prewitt: needs edge linking Canny: needs cleaning

Difference of Gaussian Calculate the difference of Gaussian Radius 1 = 1.0, Radius 2 = 2.0

Difference of Gaussian Approximation of Laplacian NLoG D og x, y, =G x, y, k G x, y, Invariant to scale and rotation

SIFT Features

Scale Space Representation L is the scale-space representation Obtained by convoluting with a Gaussian kernel of size t g x, y,t = 1 2 t 2 e x 2 y 2 / 2t L x, y ; t =g x, y, t I x, y And partial derivatives of L L x = L x, L y= L y

Structure Tensor Also called 2 nd moment matrix Derived from the gradient Measures the pre-dominant gradient in a neighborhood and its coherence [ I 2 S w p = x p I x p I y p ] I x p I y p I 2 y p

Harris Affine Corner Detector Gradient distribution matrix (M) [ M = 2 D g 1 I 2 x p, D I x p, D I y p, D ] I x p, D I y p, D I 2 y p, D Calculate Eigenvalues of M

Eigenvectors and Eigenvalues Are vectors and scalars such for a matrix M such that M x= x Only exists if (M-λI) has no inverse. Characteristic/secular equation det(m-λi)=0

Eigenvectors and Eigenvalues Given a 2*2 matrix M M =[ a 11 a 12 a 21 a 22 ] det M I =0 1,2 = a 11 a 22 ± a 11 a 22 2 4 a 11 a 22 a 12 a 21 2

Harris Affine Corner Detector Eigenvalues show the direction of change Curvature C=det M k trace 2 M C= 1 2 k 1 2 2 Corners are stable under different lighting conditions

Hessian Affine Corner Detector The Hessian of a function with two arguments is defined as [ 2 I x p 2 I 2 x y p ] H p = 2 I y x p 2 I y p 2 If function is continuous, then 2 I x y p = 2 I y x p

Hessian Approximation Hessian approximation using Gaussians L xx p, = 2 I g I p 2 x Convolution of image by Gaussian H p, =[ L xx p, L xy p, ] L xy p, L yy p, Blob detector using maximums of the determinant

SURF Algorithm Uses the integral image to compute averages over areas efficiently (4 lookups and 3 arithmetic operations)

Integral Image + Bottum Right Sum of all the pixels to the left and top of the pixel Sum of any rectangular region can be extracted in constant time using four lookups and arithmetic - Top Right - Bottum Left + Top Left

SURF and Hessian Matrix SURF is based on calculating the Hessian matrix Authors claim more robust than Harris detector Hessian is an approximation of 2 nd order derivative large values for maxima and minima

Approximation of Gaussian 2 nd order partial derivatives Cropped and discretized L_yy L_xy

Box Filters Coarse approximation allows computation of value by integral image L_yy L_xy

Scale Space Transform Useful for finding interest points Can scale filter without increased computational cost

Scale Space What filter sizes do we need to use? 9x9 box filters are approximations of Gaussian with σ = 1.2 det H =D xx D yy wd xy 2 W is a weight that corrects for the approximation of the Gaussian. Analysis shows that w=0.9 is a good enough approximation

Scale Space The approximation of the Hessian determinant is equivalent to finding blobs Used to detect local maximas in the scale space using different sized filters Stored in the so-called blob response map

Scale Space Doubling of σ represents one octave of the scale space Each octave has a constant number of scale levels Filter sized needs to be increased by 6 pixels Lobes are set of 1/3 of filter Needs to be increased by 2 To keep a central pixel

Scale Space

Scale Space 9,15,21,27 are first octave Corresponds to a change of σ of 1.2 to 3.2 Min and max scale leves per octave are used to suppress maximas that are not maximas in scale space Filter size increase doubles per octave 15,27,39,51 Large change in σ in first two octaves can be avoided by scaling image first

Scale Space

Haar Wavelets

Orientation S is the scale at which an interest point was detected Calculate response of Haar wavelets in the x and y direction around the interest point Radius is 6*s Sampling is s So take 6 samples along one direction Size of the Haar wavelets is 4*s

Orientation Responses weighted by Gaussian with σ=2s X direction is Haar wavelet response in x Y direction is Haar wavelet response in y Sum all points in 60 deg. window Import parameter Orientation is window with the longest vector

Feature Descriptors Similar to SIFT (David Lowe) Generate square window Size is 20s Orientation along the orientation calculated Split window into 4x4 square subregions Calculate Haar wavelet response in x and y Rotate along the orientation Weight with a Gaussian of σ=3.3s

Feature Descriptor

Feature Descriptor Calculate sum of changes as well as absolute sum of changes 4 entries per field, 16 sub-regions = 64 entries

Robustness to Noise

Evaluation The set of features of the feature descriptors was arrived at by experimentation Evaluations Camera calibration Object detection Faster and more robust than other detectors

References Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van Gool, "SURF: Speeded Up Robust Features", Computer Vision and Image Understanding (CVIU), Vol. 110, No. 3, pp. 346--359, 2008 SURF, David Tam (Ryerson), Computer Robotics Vision (CRV) Tutorials 2010, www.computerroboticsvision.org Salient Feature Detectors and Descriptors: Affine-Hessian, Harris, MSER, SIFT, SURF, Amir-Hossein Shabani, Computer Robotics Vision (CRV) Tutorials 2009, www.computerroboticsvision.org Chris Evans. Notes on the OpenSURF Library. January 18, 2009, http://opensurf1.googlecode.com/files/opensurf.pdf http://en.wikipedia.org/wiki/hessian_matrix