62
Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Automatic Image Stitching using Invariant Features

Matthew Brown and David Lowe, University of British Columbia

Page 2: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Introduction

• Are you getting the whole picture?– Compact Camera FOV = 50 x 35°

Page 3: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Introduction

• Are you getting the whole picture?– Compact Camera FOV = 50 x 35°– Human FOV = 200 x 135°

Page 4: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Introduction

• Are you getting the whole picture?– Compact Camera FOV = 50 x 35°– Human FOV = 200 x 135°– Panoramic Mosaic = 360 x 180°

Page 5: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Recognising Panoramas

Page 6: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Recognising Panoramas

• 1D Rotations ()– Ordering matching images

Page 7: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Recognising Panoramas

• 1D Rotations ()– Ordering matching images

Page 8: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Recognising Panoramas

• 1D Rotations ()– Ordering matching images

Page 9: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Recognising Panoramas

• 2D Rotations (, )– Ordering matching images

• 1D Rotations ()– Ordering matching images

Page 10: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Recognising Panoramas

• 1D Rotations ()– Ordering matching images

• 2D Rotations (, )– Ordering matching images

Page 11: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Recognising Panoramas

• 1D Rotations ()– Ordering matching images

• 2D Rotations (, )– Ordering matching images

Page 12: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Recognising Panoramas

Page 13: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 14: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 15: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching– SIFT Features– Nearest Neighbour Matching

• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 16: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching– SIFT Features– Nearest Neighbour Matching

• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 17: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Invariant Features

• Schmid & Mohr 1997, Lowe 1999, Baumberg 2000, Tuytelaars & Van Gool 2000, Mikolajczyk & Schmid 2001, Brown & Lowe 2002, Matas et. al. 2002, Schaffalitzky & Zisserman 2002

Page 18: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

SIFT Features

• Invariant Features– Establish invariant frame

• Maxima/minima of scale-space DOG x, y, s• Maximum of distribution of local gradients

– Form descriptor vector• Histogram of smoothed local gradients• 128 dimensions

• SIFT features are…– Geometrically invariant to similarity transforms,

• some robustness to affine change

– Photometrically invariant to affine changes in intensity

Page 19: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching– SIFT Features– Nearest Neighbour Matching

• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 20: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Nearest Neighbour Matching

• Nearest neighbour matching

• Use k-d tree– k-d tree recursively bi-partitions data at mean in the

dimension of maximum variance– Approximate nearest neighbours found in O(n log n)

• Find k-NN for each feature– k number of overlapping images (we use k = 4)

[ Beis Lowe 1997, Nene Nayar 1997, Gray Moore 2000, Shakhnarovich 2003 ]

Page 21: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

K-d tree

Page 22: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

K-d tree

Page 23: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching– SIFT Features– Nearest Neighbour Matching

• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 24: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 25: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 26: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching

– RANSAC for Homography

• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 27: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching

– RANSAC for Homography

• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 28: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

RANSAC for Homography

Page 29: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

RANSAC for Homography

Page 30: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

RANSAC for Homography

Page 31: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

RANSAC: 1D Line Fitting

least squares line

Page 32: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

RANSAC: 1D Line Fitting

Page 33: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

RANSAC: 1D Line FittingRANSACline

Page 34: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

The RANSAC Algorithm

function H = RANSAC(points, nIterations){

bestInliers = 0; bestH = zeros(3, 3);

for (i = 0; i < nIterations; i++){

samplePoints = RandomSample(points);H = ComputeTransform(samplePoints);nInliers = Consistent(H);

if (nInliers > bestInliers){

bestInliers = nInliers;bestH = H;

} // end if

} // end for

} // end RANSAC

Page 35: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

2D Transforms

• Linear (affine)

• Homography

Page 36: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Finding the panoramas

Page 37: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Finding the panoramas

Page 38: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Finding the panoramas

Page 39: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Finding the panoramas

Page 40: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Connected Components

Page 41: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 42: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Bundle Adjustment

• Adjust rotation, focal length of each image to minimise error in matched features

Page 43: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Bundle Adjustment

• Adjust rotation, focal length of each image to minimise error in matched features

Page 44: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 45: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 46: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Multi-band Blending

• Burt & Adelson 1983– Blend frequency bands over range

Page 47: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Low frequency ( > 2 pixels)

High frequency ( < 2 pixels)

2-band Blending

Page 48: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Linear Blending

Page 49: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

2-band Blending

Page 50: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia
Page 51: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia
Page 52: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Multi-band Blending

• No blending

Page 53: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Multi-band Blending

• Linear blending

– Each pixel is a weighted sum

Page 54: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Multi-band Blending

• Multi-band blending

– Each pixel is a weighted sum (for each band)

Page 55: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Multi-band Blending

• Linear blending • Multi-band blending

Page 56: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 57: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 58: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Results

Page 59: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Results

Page 60: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 61: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment• Multi-band Blending• Results• Conclusions

Page 62: Automatic Image Stitching using Invariant Features Matthew Brown and David Lowe, University of British Columbia

Conclusions

• Fully automatic panoramas– A recognition problem…

• Invariant feature based method– SIFT features, RANSAC, Bundle Adjustment, Multi-

band Blending– O(nlogn)

• Future Work– Advanced camera modelling

• radial distortion, camera motion, scene motion, vignetting, exposure, high dynamic range, flash …

– Full 3D case – recognising 3D objects/scenes in unordered datasets. “PhotoTourism”.

http://www.autostitch.net