Feature Descriptors. CS 510 Lecture #21 April 29 th, 2013

Similar documents
SURF. Lecture6: SURF and HOG. Integral Image. Feature Evaluation with Integral Image

Local Descriptors. CS 510 Lecture #21 April 6 rd 2015

Feature descriptors. Alain Pagani Prof. Didier Stricker. Computer Vision: Object and People Tracking

2D Image Processing Feature Descriptors

SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014

CS 4495 Computer Vision A. Bobick. CS 4495 Computer Vision. Features 2 SIFT descriptor. Aaron Bobick School of Interactive Computing

Texture. Frequency Descriptors. Frequency Descriptors. Frequency Descriptors. Frequency Descriptors. Frequency Descriptors

The SIFT (Scale Invariant Feature

Local Features Tutorial: Nov. 8, 04

Local Features: Detection, Description & Matching

SIFT - scale-invariant feature transform Konrad Schindler

Robotics Programming Laboratory

SUMMARY: DISTINCTIVE IMAGE FEATURES FROM SCALE- INVARIANT KEYPOINTS

Computer Vision for HCI. Topics of This Lecture

Introduction. Introduction. Related Research. SIFT method. SIFT method. Distinctive Image Features from Scale-Invariant. Scale.

CAP 5415 Computer Vision Fall 2012

Comparison of Feature Detection and Matching Approaches: SIFT and SURF

Scott Smith Advanced Image Processing March 15, Speeded-Up Robust Features SURF

Scale Invariant Feature Transform

Image processing and features

EE795: Computer Vision and Intelligent Systems

Feature Detection. Raul Queiroz Feitosa. 3/30/2017 Feature Detection 1

Scale Invariant Feature Transform

Computer vision: models, learning and inference. Chapter 13 Image preprocessing and feature extraction

EECS150 - Digital Design Lecture 14 FIFO 2 and SIFT. Recap and Outline

Announcements. Edges. Last Lecture. Gradients: Numerical Derivatives f(x) Edge Detection, Lines. Intro Computer Vision. CSE 152 Lecture 10

SCALE INVARIANT FEATURE TRANSFORM (SIFT)

Computer Vision I. Announcement. Corners. Edges. Numerical Derivatives f(x) Edge and Corner Detection. CSE252A Lecture 11

Category vs. instance recognition

Classification and Detection in Images. D.A. Forsyth

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

Implementation and Comparison of Feature Detection Methods in Image Mosaicing

BSB663 Image Processing Pinar Duygulu. Slides are adapted from Selim Aksoy

EE368 Project Report CD Cover Recognition Using Modified SIFT Algorithm

AK Computer Vision Feature Point Detectors and Descriptors

Anno accademico 2006/2007. Davide Migliore

Key properties of local features

Feature Detectors and Descriptors: Corners, Lines, etc.

Lecture 4.1 Feature descriptors. Trym Vegard Haavardsholm

Implementing the Scale Invariant Feature Transform(SIFT) Method

Local Feature Detectors

Click to edit title style

Lecture 10 Detectors and descriptors

EN1610 Image Understanding Lab # 3: Edges

Computer Vision. Recap: Smoothing with a Gaussian. Recap: Effect of σ on derivatives. Computer Science Tripos Part II. Dr Christopher Town

Computer Vision I. Announcements. Fourier Tansform. Efficient Implementation. Edge and Corner Detection. CSE252A Lecture 13.

Lecture 6: Edge Detection

Edge Detection. Announcements. Edge detection. Origin of Edges. Mailing list: you should have received messages

Building a Panorama. Matching features. Matching with Features. How do we build a panorama? Computational Photography, 6.882

School of Computing University of Utah

Classifying Images with Visual/Textual Cues. By Steven Kappes and Yan Cao

Object Detection by Point Feature Matching using Matlab

COMPUTER VISION > OPTICAL FLOW UTRECHT UNIVERSITY RONALD POPPE

Motion Estimation and Optical Flow Tracking

Local Image Features

Object Category Detection: Sliding Windows

Motion illusion, rotating snakes

CS664 Lecture #21: SIFT, object recognition, dynamic programming

Edge Detection. Computer Vision Shiv Ram Dubey, IIIT Sri City

PA2 Introduction to Tracking. Connected Components. Moving Object Detection. Pixel Grouping. After Pixel Grouping 2/19/17. Any questions?

Face Recognition under varying illumination with Local binary pattern

Digital Image Processing

CS4670: Computer Vision

Learning and Inferring Depth from Monocular Images. Jiyan Pan April 1, 2009

Edge Detection. CSE 576 Ali Farhadi. Many slides from Steve Seitz and Larry Zitnick

Lecture 7: Most Common Edge Detectors

Bias-Variance Trade-off (cont d) + Image Representations

Augmented Reality VU. Computer Vision 3D Registration (2) Prof. Vincent Lepetit

Image Features: Detection, Description, and Matching and their Applications

Feature Detection and Matching

Feature descriptors and matching

A Survey on Face-Sketch Matching Techniques

Sparse coding for image classification

Local Image Features

Local Image Features

TA Section 7 Problem Set 3. SIFT (Lowe 2004) Shape Context (Belongie et al. 2002) Voxel Coloring (Seitz and Dyer 1999)

GPU Accelerating Speeded-Up Robust Features Timothy B. Terriberry, Lindley M. French, and John Helmsen

CS231A Section 6: Problem Set 3

Outline 7/2/201011/6/

Coarse-to-fine image registration

Feature Based Registration - Image Alignment

Chapter 3 Image Registration. Chapter 3 Image Registration

Scale Invariant Feature Transform (SIFT) CS 763 Ajit Rajwade

Object Detection Design challenges

Histogram of Oriented Gradients for Human Detection

HISTOGRAMS OF ORIENTATIO N GRADIENTS

Edge and Texture. CS 554 Computer Vision Pinar Duygulu Bilkent University

Edge and local feature detection - 2. Importance of edge detection in computer vision

3D from Photographs: Automatic Matching of Images. Dr Francesco Banterle

Edge detection. Convert a 2D image into a set of curves. Extracts salient features of the scene More compact than pixels

Patch Descriptors. EE/CSE 576 Linda Shapiro

Car Detecting Method using high Resolution images

A Comparison of SIFT, PCA-SIFT and SURF

Features Points. Andrea Torsello DAIS Università Ca Foscari via Torino 155, Mestre (VE)

Object Category Detection. Slides mostly from Derek Hoiem

Object Recognition with Invariant Features

Recognition of Degraded Handwritten Characters Using Local Features. Markus Diem and Robert Sablatnig

Stitching and Blending

Computer and Machine Vision

Patch Descriptors. CSE 455 Linda Shapiro

Transcription:

Feature Descriptors CS 510 Lecture #21 April 29 th, 2013

Programming Assignment #4 Due two weeks from today Any questions? How is it going?

Where are we? We have two umbrella schemes for object recognition Bag of Features, Constellations We bootstrap these with feature detections Interest points, regions, etc. To implement these, we looked at Clustering (K-Means, EM) Classification (SVM, Backprop, Bayes nets, Decision trees, Nearest neighbors) These algorithms view samples as points in highdimensional feature spaces. Where do the features come from?

High-dimensional Feature Descriptors Goal: describe the properties of image features similar features should be near each other in feature descriptor space dissimilar features should not be Insensitive to changes in Viewpoint Scale Illumination

Terminology Confusion Feature : a distinctive local property of an image Interest point Region Line, curve, etc. Descriptor : a high dimensional vector describing a feature Vectorized image patch SIFT descriptor, LBP, Haar, When we say feature space, we typically mean feature descriptor space

SIFT Interest Point Descriptor SIFT Interest Points are extrema of the DoG responses to an image pyramid SIFT descriptors are 128-dimensional vectors describing the image patch around a SIFT interest Point SURF descriptors are very similar (but avoid the patent issues) In OpenCV, you can compute the SURF descriptor for any (x,y,s) image point Even if its not a SIFT/SURF interest point

Review: Interest Points Properties Location (x,y) Scale Measured in octaves SIFT: 1/3 octaves http://computervisionblog.wordpress.com/tag/sift-feature-point/

SIFT Descriptor Step 1: Scale If scale 1, image is down-scaled around the interest point Every octave is a power of 2 Non-integer octaves require bilinear image interpolation (see beginning of course) SIFT descriptors are based on the 16x16 scaled image patch around the interest point

Step 2: Rotation Goal: compensate for in-plane rotation Calculate the intensity derivatives in (x,y) of the 16x16 scaled image patch Convolution with Sobel masks Produces (di/dx, di/dy) for every pixel Produce the structure tensor: ( * * * * * ) " I % $ ' # x & I x 2 I y I x I y " I % $ ' # y & 2 + - - - - -,

Step 2: Rotation (cont.) The first eigenvector of the structure tensor is the dominant edge direction Rotate the scaled image patch so that the x axis is aligned with the dominant edge direction

Step 3: Localized Edge Orientation Histograms The 1 st 2 steps produce a scaled and rotated 16x16 image patch Divide this patch with a 4x4 grid. Each cell contains 4x4 pixels.

Step 3: Localized Edge Orientation Histograms (cont.) For each grid cell, histogram the rotated (dx, dy) edges Histogram buckets are edge orientations 8 orientation buckets (45 each) Weights voted by edge magnitude (dx) 2 +(dy) 2 Smoothed by a 1/2σ Gaussian Feature vector is the concatenation of 16 8-bucket histograms (128 dimensions)

SIFT descriptors: why? Two points are similar if: They have similar nearby edges (orientation & strength) In similar positions, relative to the points Descriptors are insensitive to: Scale (points are rescaled) In-plane rotation (points are rotated to dominant edge direction) Average illumination (based on edges; assuming no clipping or floor effects)

SIFT descriptors: why? (cont.) Sensitivity is minimized with regard to: Small translations (± 1pixel) Histograms insensitive to movements within 4x4 grid cell Edge weight smoothing minimizes boundary effects Small affine distortions Small viewpoint changes can be roughly approximated by small changes in in-plane rotation and translation

Feature Vector Length Intuition 128 dimensions is in feature vector sweet spot Too few dimensions è not enough ways for samples to differ Too many dimensions è distributions become uniform Many of the best feature descriptors are in the range [50, 500] in length

HoG: Histogram of Gradients HoG is a variation on SIFT descriptors Operates on image patches (not necessarily around interest points) No compensation for scale or rotation Computes magnitude-weighted edge orientation histograms (like SIFT) Allows for different number of cells, cell shapes, and orientation bin counts Biggest difference: descriptor blocks

HoG Descriptor Blocks HoG descriptors are applied to larger image patches, which may have internal changes in illumination HoG descriptors use more cells (to cover large patches) Cells grouped in descriptor blocks Descriptor blocks overlap; cells are in more than one block

Descriptor block normalization A normalization constant is calculated for every descriptor block Based on edge magnitudes within the block Most often based on sum of Euclidean lengths Other normalization function get played with Edge magnitudes are normalizes prior to histogram voting

Texture: Localized Binary Patterns (LBP) A feature vector to describe the texture within an image (patch) Like SIFT & HoG, begin by dividing the image patch into localized cells Compute a histogram for each cell Concatenate the histograms of the cells into a longer vector

LBP (theory) The difference is that in LBP, a texture measure is histogrammed (not edges) For every pixel, do the following: Evenly sample 8 points on a circle of radius r, centered at the pixel Interpolate pixel values (bilinearly) as needed For each sample, return 1 if sample is brighter than center pixel, 0 otherwise Interpret string of 8 bits as a binary integer 0 to 255 Create a histogram of the 256 texture values

LBP Illustrated (Scholarpedia)

LBP (practice) Problem: 256 bins is too many Concatenation creates vectors outside of sweet spot (length > 500) Most values in histogram are zero Solution: transitions in 8-bit vector are rare Count how many 1 s are followed by 0 s (and vice-versa) 90+% of pixels in practice have fewer than 2 transitions So just histogram these! Pattern transition counts Two patterns have 0 transitions (all 1 s, all 0 s) 16 patterns have 1 transition 32 patterns have 2 transitions 48-dimension LBP Histogram all 1 & 2 transition patterns 51-dimension LBP Add 0 transition patterns, and one bin for other

LBP Applied http://www.mathworks.com/matlabcentral/fileexchange/36484-local-binary-patterns

Iconic Representation A lower-dimensional representation of a point (or small image patch) Result of multi-scale convolution with loworder wavelets Steerable response at orientation θ i predicts the response at θ j. Responses are independent of each other

Iconic Representation Masks Each row is a scale 10 masks per scale Masks are steerable http://www.sciencedirect.com/science/article/pii/s0042698902000408