Automatic Image Alignment (feature-based)

Similar documents
Automatic Image Alignment

Automatic Image Alignment

Feature Matching and RANSAC

Feature Based Registration - Image Alignment

Wikipedia - Mysid

Motion Estimation and Optical Flow Tracking

CS5670: Computer Vision

Local features: detection and description. Local invariant features

Local invariant features

Lecture: RANSAC and feature detectors

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

Computer Vision for HCI. Topics of This Lecture

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

Prof. Feng Liu. Spring /26/2017

Image matching. Announcements. Harder case. Even harder case. Project 1 Out today Help session at the end of class. by Diva Sian.

Edge and corner detection

Harder case. Image matching. Even harder case. Harder still? by Diva Sian. by swashford

Image Features. Work on project 1. All is Vanity, by C. Allan Gilbert,

Harder case. Image matching. Even harder case. Harder still? by Diva Sian. by swashford

The SIFT (Scale Invariant Feature

Local features: detection and description May 12 th, 2015

Local features and image matching. Prof. Xin Yang HUST

Homographies and RANSAC

Local Feature Detectors

Midterm Wed. Local features: detection and description. Today. Last time. Local features: main components. Goal: interest operator repeatability

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

Image Stitching. Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi

Lecture 6: Finding Features (part 1/2)

Object Recognition with Invariant Features

Instance-level recognition

Problems with template matching

Image correspondences and structure from motion

Stitching and Blending

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

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

Outline 7/2/201011/6/

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

Feature Detectors and Descriptors: Corners, Lines, etc.

Local Image Features

Local Features: Detection, Description & Matching

Instance-level recognition

CS4670: Computer Vision

Automatic Image Alignment (direct) with a lot of slides stolen from Steve Seitz and Rick Szeliski

Motion illusion, rotating snakes

Local Image Features

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

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

Image Features: Local Descriptors. Sanja Fidler CSC420: Intro to Image Understanding 1/ 58

Today s lecture. Image Alignment and Stitching. Readings. Motion models

School of Computing University of Utah

Local Image preprocessing (cont d)

Image warping and stitching

Keypoint detection. (image registration, panorama stitching, motion estimation + tracking, recognition )

Feature Detection and Matching

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

Mosaics. Today s Readings

Image warping and stitching

CSE 252B: Computer Vision II

Local features and image matching May 8 th, 2018

Multi-Image Matching using Multi-Scale Oriented Patches

Feature Matching and Robust Fitting

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

Digital Image Processing (CS/ECE 545) Lecture 5: Edge Detection (Part 2) & Corner Detection

Computer Vision I - Appearance-based Matching and Projective Geometry

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

Visual Tracking (1) Tracking of Feature Points and Planar Rigid Objects

Low-level Vision Processing Algorithms Speaker: Ito, Dang Supporter: Ishii, Toyama and Y. Murakami

Scale Invariant Feature Transform

Prof. Noah Snavely CS Administrivia. A4 due on Friday (please sign up for demo slots)

CAP 5415 Computer Vision Fall 2012

Computer Vision I - Appearance-based Matching and Projective Geometry

Image warping and stitching

Lecture 10 Detectors and descriptors

Scale Invariant Feature Transform

SUMMARY: DISTINCTIVE IMAGE FEATURES FROM SCALE- INVARIANT KEYPOINTS

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

Computer Vision I - Basics of Image Processing Part 2

CS 558: Computer Vision 4 th Set of Notes

Feature Tracking and Optical Flow

CS664 Lecture #16: Image registration, robust statistics, motion

EE795: Computer Vision and Intelligent Systems

SE 263 R. Venkatesh Babu. Object Tracking. R. Venkatesh Babu

CSE 527: Introduction to Computer Vision

Multi-modal Registration of Visual Data. Massimiliano Corsini Visual Computing Lab, ISTI - CNR - Italy

Instance-level recognition part 2

Corner Detection. GV12/3072 Image Processing.

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

Patch Descriptors. EE/CSE 576 Linda Shapiro

Hough Transform and RANSAC

Model Fitting. Introduction to Computer Vision CSE 152 Lecture 11

10/03/11. Model Fitting. Computer Vision CS 143, Brown. James Hays. Slides from Silvio Savarese, Svetlana Lazebnik, and Derek Hoiem

Photo by Carl Warner

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

Instance-level recognition II.

AK Computer Vision Feature Point Detectors and Descriptors

Image Processing. Image Features

Computer Vision I - Filtering and Feature detection

Evaluation and comparison of interest points/regions

EE795: Computer Vision and Intelligent Systems

Combining Appearance and Topology for Wide

Transcription:

Automatic Image Alignment (feature-based) Mike Nese with a lot of slides stolen from Steve Seitz and Rick Szeliski 15-463: Computational Photography Alexei Efros, CMU, Fall 2006

Today s lecture Feature detectors scale invariant Harris corners Feature descriptors patches, oriented patches Reading for Project #4: Multi-image Matching using Multi-scale image patches, CVPR 2005

Invariant Local Features Image content is transformed into local feature coordinates that are invariant to translation, rotation, scale, and other imaging parameters Features Descriptors

Advantages of local features Locality: features are local, so robust to occlusion and clutter (no prior segmentation) Distinctiveness: individual features can be matched to a large database of objects Quantity: many features can be generated for even small objects Efficiency: close to real-time performance Extensibility: can easily be extended to wide range of differing feature types, with each adding robustness

More motivation Feature points are used for: Image alignment (homography, fundamental matrix) 3D reconstruction Motion tracking Object recognition Indexing and database retrieval Robot navigation other

Harris corner detector C.Harris, M.Stephens. A Combined Corner and Edge Detector. 1988

The 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

Harris Detector: Basic Idea flat region: no change in all directions edge : no change along the edge direction corner : significant change in all directions

Harris Detector: Mathematics Change of intensity for the shift [u,v]: xy, [ ] 2 Euv (, ) = wxy (, ) I( x+ u, y + v) I( x, y) Window function Shifted intensity Intensity Window function w(x,y) = or 1 in window, 0 outside Gaussian

Harris Detector: Mathematics For small shifts [u,v] we have a bilinear approximation: u Euv (, ) [ uv, ] M v where M is a 2 2 matrix computed from image derivatives: M 2 I x II x y = w( x, y) 2 xy, I xiy Iy

Harris Detector: Mathematics Classification of image points using eigenvalues of M: λ 2 Edge λ 2 >> λ 1 Corner λ 1 and λ 2 are large, λ 1 ~ λ 2 ; E increases in all directions λ 1 and λ 2 are small; E is almost constant in all directions Flat region Edge λ 1 >> λ 2 λ 1

Harris Detector: Mathematics Measure of corner response: R = det M Trace M det M trace M = λ λ 1 2 = λ + λ 1 2

Harris Detector The Algorithm: Find points with large corner response function R (R > threshold) Take the points of local maxima of R

Harris Detector: Workflow

Harris Detector: Workflow Compute corner response R

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

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

Harris Detector: Workflow

Harris Detector: Some Properties Rotation invariance Ellipse rotates but its shape (i.e. eigenvalues) remains the same Corner response R is invariant to image rotation

Harris Detector: Some Properties Partial invariance to affine intensity change Only derivatives are used => invariance to intensity shift I I + b Intensity scale: I a I R threshold R x (image coordinate) x (image coordinate)

Harris Detector: Some Properties But: non-invariant to image scale! All points will be classified as edges Corner!

Scale Invariant Detection Consider regions (e.g. circles) of different sizes around a point Regions of corresponding sizes will look the same in both images

Scale Invariant Detection The problem: how do we choose corresponding circles independently in each image? Choose the scale of the best corner

Feature selection Distribute points evenly over the image

Adaptive Non-maximal Suppression Desired: Fixed # of features per image Want evenly distributed spatially Sort ponts by non-maximal suppression radius [Brown, Szeliski, Winder, CVPR 05]

Feature descriptors We know how to detect points Next question: How to match them?? Point descriptor should be: 1. Invariant 2. Distinctive

Descriptors Invariant to Rotation Find local orientation Dominant direction of gradient Extract image patches relative to this orientation

Multi-Scale Oriented Patches Interest points Multi-scale Harris corners Orientation from blurred gradient Geometrically invariant to rotation Descriptor vector Bias/gain normalized sampling of local patch (8x8) Photometrically invariant to affine changes in intensity [Brown, Szeliski, Winder, CVPR 2005]

Multi-Scale Oriented Patches Interest points Multi-scale Harris corners Orientation from blurred gradient Geometrically invariant to rotation Descriptor vector Bias/gain normalized sampling of local patch (8x8) Photometrically invariant to affine changes in intensity [Brown, Szeliski, Winder, CVPR 2005]

Descriptor Vector Orientation = blurred gradient Rotation Invariant Frame Scale-space position (x, y, s) + orientation (θ)

Detections at multiple scales

MOPS descriptor vector 8x8 oriented patch Sampled at 5 x scale Bias/gain normalisation: I = (I μ)/σ 40 pixels 8 pixels

Feature matching?

Feature matching Exhaustive search for each feature in one image, look at all the other features in the other image(s) Hashing compute a short descriptor from each feature vector, or hash longer descriptors (randomly) Nearest neighbor techniques k-trees and their variants

What about outliers??

Feature-space outlier rejection Let s not match all features, but only these that have similar enough matches? How can we do it? SSD(patch1,patch2) < threshold How to set threshold?

Feature-space outlier rejection A better way [Lowe, 1999]: 1-NN: SSD of the closest match 2-NN: SSD of the second-closest match Look at how much better 1-NN is than 2-NN, e.g. 1-NN/2-NN That is, is our best match so much better than the rest?

Feature-space outliner rejection Can we now compute H from the blue points? No! Still too many outliers What can we do?

Matching features What do we do about the bad matches?

RAndom SAmple Consensus Select one match, count inliers

RAndom SAmple Consensus Select one match, count inliers

Least squares fit Find average translation vector

RANSAC for estimating homography RANSAC loop: 1. Select four feature pairs (at random) 2. Compute homography H (exact) 3. Compute inliers where SSD(p i, H p i) < ε 4. Keep largest set of inliers 5. Re-compute least-squares H estimate on all of the inliers

RANSAC