recognising panoramas m. brown and d. lowe, university of british columbia

63
Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Upload: alexander-skinner

Post on 28-Mar-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Recognising Panoramas

M. Brown and D. Lowe, University of British Columbia

Page 2: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Introduction

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

Page 3: Recognising Panoramas M. Brown and D. 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: Recognising Panoramas M. Brown and D. 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: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Why “Recognising Panoramas”?

Page 6: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Why “Recognising Panoramas”?

• 1D Rotations ()– Ordering matching images

Page 7: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Why “Recognising Panoramas”?

• 1D Rotations ()– Ordering matching images

Page 8: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Why “Recognising Panoramas”?

• 1D Rotations ()– Ordering matching images

Page 9: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Why “Recognising Panoramas”?

• 2D Rotations (, )– Ordering matching images

• 1D Rotations ()– Ordering matching images

Page 10: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Why “Recognising Panoramas”?

• 1D Rotations ()– Ordering matching images

• 2D Rotations (, )– Ordering matching images

Page 11: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Why “Recognising Panoramas”?

• 1D Rotations ()– Ordering matching images

• 2D Rotations (, )– Ordering matching images

Page 12: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Why “Recognising Panoramas”?

Page 13: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 14: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 15: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching– SIFT Features– Nearest Neighbour Matching

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

Page 16: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching– SIFT Features– Nearest Neighbour Matching

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

Page 17: Recognising Panoramas M. Brown and D. 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: Recognising Panoramas M. Brown and D. 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: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching– SIFT Features– Nearest Neighbour Matching

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

Page 20: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Nearest Neighbour Matching

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

• 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(nlogn)

Page 21: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching– SIFT Features– Nearest Neighbour Matching

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

Page 22: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 23: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 24: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching

– RANSAC for Homography– Probabilistic model for verification

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

Page 25: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching

– RANSAC for Homography– Probabilistic model for verification

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

Page 26: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

RANSAC for Homography

Page 27: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

RANSAC for Homography

Page 28: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

RANSAC for Homography

Page 29: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching

– RANSAC for Homography– Probabilistic model for verification

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

Page 30: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Probabilistic model for verification

Page 31: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Probabilistic model for verification

• Compare probability that this set of RANSAC inliers/outliers was generated by a correct/false image match

– ni = #inliers, nf = #features

– p1 = p(inlier | match), p0 = p(inlier | ~match)

– pmin = acceptance probability

• Choosing values for p1, p0 and pmin

Page 32: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Finding the panoramas

Page 33: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Finding the panoramas

Page 34: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Finding the panoramas

Page 35: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Finding the panoramas

Page 36: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching

– RANSAC for Homography– Probabilistic model for verification

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

Page 37: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 38: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 39: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment

– Error function

• Multi-band Blending• Results• Conclusions

Page 40: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment

– Error function

• Multi-band Blending• Results• Conclusions

Page 41: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Error function

• Sum of squared projection errors

– n = #images– I(i) = set of image matches to image i– F(i, j) = set of feature matches between images i,j

– rijk = residual of kth feature match between images i,j

• Robust error function

Page 42: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

• Parameterise each camera by rotation and focal length

• This gives pairwise homographies

Homography for Rotation

Page 43: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Bundle Adjustment

• New images initialised with rotation, focal length of best matching image

Page 44: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Bundle Adjustment

• New images initialised with rotation, focal length of best matching image

Page 45: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

• Feature Matching• Image Matching• Bundle Adjustment

– Error function

• Multi-band Blending• Results• Conclusions

Page 46: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 47: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 48: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Multi-band Blending

• Burt & Adelson 1983– Blend frequency bands over range

Page 49: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Low frequency ( > 2 pixels)

High frequency ( < 2 pixels)

2-band Blending

Page 50: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Linear Blending

Page 51: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

2-band Blending

Page 52: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia
Page 53: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia
Page 54: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 55: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 56: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Results

Page 57: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Results

Page 58: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 59: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Overview

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

Page 60: Recognising Panoramas M. Brown and D. 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

http://www.cs.ubc.ca/~mbrown/panorama/panorama.htmlhttp://www.cs.ubc.ca/~mbrown/panorama/panorama.html

Page 61: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Questions?

http://www.cs.ubc.ca/~mbrown/panorama/panorama.htmlhttp://www.cs.ubc.ca/~mbrown/panorama/panorama.html

Page 62: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Analytical computation of derivatives

Page 63: Recognising Panoramas M. Brown and D. Lowe, University of British Columbia

Levenberg-Marquardt

• Iteration step of form