Mosaics con’t CSE 455, Winter 2010 February 10, 2010.

Slides:



Advertisements
Similar presentations
More Mosaic Madness : Computational Photography Alexei Efros, CMU, Fall 2011 © Jeffrey Martin (jeffrey-martin.com) with a lot of slides stolen from.
Advertisements

RANSAC and mosaic wrap-up cs195g: Computational Photography James Hays, Brown, Spring 2010 © Jeffrey Martin (jeffrey-martin.com) most slides from Steve.
CSCE 641 Computer Graphics: Image Mosaicing Jinxiang Chai.
Image alignment Image from
Computational Photography: Image Mosaicing Jinxiang Chai.
Announcements Project 2 Out today Sign up for a panorama kit ASAP! –best slots (weekend) go quickly...
Announcements Project 1 artifact voting ( announce later today) Project 2 out today (help session at end of class) IMPORTANT: choose Proj 2 partner.
Direct Methods for Visual Scene Reconstruction Paper by Richard Szeliski & Sing Bing Kang Presented by Kristin Branson November 7, 2002.
Homographies and Mosaics : Computational Photography Alexei Efros, CMU, Fall 2005 © Jeffrey Martin (jeffrey-martin.com) with a lot of slides stolen.
Lecture 7: Image Alignment and Panoramas CS6670: Computer Vision Noah Snavely What’s inside your fridge?
Lecture 11: Structure from motion CS6670: Computer Vision Noah Snavely.
Lecture 10: Cameras CS4670: Computer Vision Noah Snavely Source: S. Lazebnik.
Announcements Project 2 out today panorama signup help session at end of class Today mosaic recap blending.
Announcements Project 1 artifact voting Project 2 out today panorama signup help session at end of class Guest lectures next week: Li Zhang, Jiwon Kim.
1Jana Kosecka, CS 223b Cylindrical panoramas Cylindrical panoramas with some slides from R. Szeliski, S. Seitz, D. Lowe, A. Efros,
CSCE 641 Computer Graphics: Image Mosaicing Jinxiang Chai.
Lecture 8: Image Alignment and RANSAC
More Mosaic Madness : Computational Photography Alexei Efros, CMU, Fall 2005 © Jeffrey Martin (jeffrey-martin.com) with a lot of slides stolen from.
Image Warping and Mosacing : Rendering and Image Processing Alexei Efros …with a lot of slides stolen from Steve Seitz and Rick Szeliski.
Announcements Project 1 Grading session this afternoon Artifacts due Friday (voting TBA) Project 2 out (online) Signup for panorama kits ASAP (weekend.
More Mosaic Madness : Computational Photography Alexei Efros, CMU, Fall 2006 © Jeffrey Martin (jeffrey-martin.com) with a lot of slides stolen from.
Lecture 10: Robust fitting CS4670: Computer Vision Noah Snavely.
Announcements Project 1 artifact voting Project 2 out today (help session at end of class)
Image Stitching Ali Farhadi CSEP 576 Several slides from Rick Szeliski, Steve Seitz, Derek Hoiem, and Ira Kemelmacher.
Feature Matching and RANSAC : Computational Photography Alexei Efros, CMU, Fall 2005 with a lot of slides stolen from Steve Seitz and Rick Szeliski.
Announcements Midterm due Friday, beginning of lecture Guest lecture on Friday: Antonio Criminisi, Microsoft Research.
Mosaics CSE 455, Winter 2010 February 8, 2010 Neel Joshi, CSE 455, Winter Announcements  The Midterm went out Friday  See to the class.
Automatic Camera Calibration
Image Stitching Ali Farhadi CSE 455
CSE 185 Introduction to Computer Vision
CSC 589 Lecture 22 Image Alignment and least square methods Bei Xiao American University April 13.
By Yevgeny Yusepovsky & Diana Tsamalashvili the supervisor: Arie Nakhmani 08/07/2010 1Control and Robotics Labaratory.
Mosaics Today’s Readings Szeliski, Ch 5.1, 8.1 StreetView.
Image stitching Digital Visual Effects Yung-Yu Chuang with slides by Richard Szeliski, Steve Seitz, Matthew Brown and Vaclav Hlavac.
Example: line fitting. n=2 Model fitting Measure distances.
Image Stitching Ali Farhadi CSE 576 Several slides from Rick Szeliski, Steve Seitz, Derek Hoiem, and Ira Kemelmacher.
CS4670 / 5670: Computer Vision KavitaBala Lecture 17: Panoramas.
Mosaics part 3 CSE 455, Winter 2010 February 12, 2010.
776 Computer Vision Jan-Michael Frahm Spring 2012.
Image Stitching II Linda Shapiro CSE 455. RANSAC for Homography Initial Matched Points.
Robust Estimation Course web page: vision.cis.udel.edu/~cv April 23, 2003  Lecture 25.
Mosaics Today’s Readings Szeliski and Shum paper (sections 1 and 2, skim the rest) –
COS 429 PS3: Stitching a Panorama Due November 10 th.
Image Stitching Computer Vision CS 691E Some slides from Richard Szeliski.
EE 7730 Parametric Motion Estimation. Bahadir K. Gunturk2 Parametric (Global) Motion Affine Flow.
Homographies and Mosaics : Computational Photography Alexei Efros, CMU, Fall 2006 © Jeffrey Martin (jeffrey-martin.com) with a lot of slides stolen.
776 Computer Vision Jan-Michael Frahm Spring 2012.
Image Stitching II Linda Shapiro EE/CSE 576.
CS4670 / 5670: Computer Vision Kavita Bala Lecture 20: Panoramas.
COSC579: Image Align, Mosaic, Stitch
Lecture 7: Image alignment
RANSAC and mosaic wrap-up
Image Stitching Slides from Rick Szeliski, Steve Seitz, Derek Hoiem, Ira Kemelmacher, Ali Farhadi.
Idea: projecting images onto a common plane
Announcements Project 2 out today (help session at end of class)
More Mosaic Madness : Computational Photography
Image Stitching II Linda Shapiro EE/CSE 576.
Image Stitching II Linda Shapiro CSE 455.
Image Stitching Computer Vision CS 678
Announcements Project 1 Project 2 Vote for your favorite artifacts!
Announcements Project 1 artifact voting Project 2 out today
Image Stitching II Linda Shapiro EE/CSE 576.
Computational Photography
Calibration and homographies
CS5760: Computer Vision Lecture 9: RANSAC Noah Snavely
CS5760: Computer Vision Lecture 9: RANSAC Noah Snavely
Image Stitching Linda Shapiro ECE/CSE 576.
Image Stitching II Linda Shapiro ECE P 596.
Image Stitching Linda Shapiro ECE P 596.
Presentation transcript:

Mosaics con’t CSE 455, Winter 2010 February 10, 2010

Neel Joshi, CSE 455, Winter Announcements  The Midterm:  Due this Friday, Feb 12, at the beginning of class  Late exams will not be accepted  Additional Office Hour today:  2:30 to 3:30 in CSE 212 (the normal place)

Neel Joshi, CSE 455, Winter Review From Last Time

Neel Joshi, CSE 455, Winter How to do it?  Similar to Structure from Motion, but easier  Basic Procedure  Take a sequence of images from the same position  Rotate the camera about its optical center  Compute transformation between second image and first  Transform the second image to overlap with the first  Blend the two together to create a mosaic  If there are more images, repeat

Neel Joshi, CSE 455, Winter Panoramic Stitching Input Goal

Neel Joshi, CSE 455, Winter Aligning images  How to account for warping?  Translations are not enough to align the images  Homographies!!!

Neel Joshi, CSE 455, Winter p 1,1 p 1,2 p 1,3 Image 1 Image 2 Image 3 x1x1 x4x4 x3x3 x2x2 x5x5 x6x6 x7x7 R1,t1R1,t1 R2,t2R2,t2 R3,t3R3,t3 Structure from Motion: Image reprojection

Neel Joshi, CSE 455, Winter p 1,2 Image 1 Image 2 Image 3 x1x1 x4x4 x3x3 x2x2 x5x5 x6x6 x7x7 R1R1 R2R2 R3R3 Panoramas: Image reprojection

Neel Joshi, CSE 455, Winter mosaic plane Image reprojection  The mosaic has a natural interpretation in 3D  The images are reprojected onto a common plane  The mosaic is formed on this plane

Neel Joshi, CSE 455, Winter Image warping with homographies image plane in frontimage plane below black area where no pixel maps to

Neel Joshi, CSE 455, Winter Basic Procedure  Take a sequence of images from the same position  Rotate the camera about its optical center  Compute correspondence between second image and first  Compute transformation between second image and first  Transform the second image to overlap with the first  Blend the two together to create a mosaic  If there are more images, repeat

Neel Joshi, CSE 455, Winter Basic Procedure  Take a sequence of images from the same position  Rotate the camera about its optical center  Compute correspondence between second image and first  Compute transformation between second image and first  Transform the second image to overlap with the first  Blend the two together to create a mosaic  If there are more images, repeat

Neel Joshi, CSE 455, Winter Correspondence and Transformation  Compute correspondence between second image and first  Compute transformation between second image and first  What kind of transformation  Homography!!!  Do we know the correspondence?

Neel Joshi, CSE 455, Winter Let’s come up with an algorithm

Neel Joshi, CSE 455, Winter Let’s come up with an algorithm  Guess some matches  Compute a transformation using those matches  Check if the transformation is good

Neel Joshi, CSE 455, Winter RANSAC  Randomly choose a set of K potential correspondences  Typically K is the minimum size that lets you fit a model  How many for a  Translation  rotation?  Affine?  Homography?  Fit a model (e.g., translation, homography) to those correspondences  Count the number of inliers that “approximately” fit the model  Need a threshold on the error  Repeat as many times as you can  Choose the model that has the largest set of inliers  Refine the model by doing a least squares fit using ALL of the inliers

Neel Joshi, CSE 455, Winter Simple Case: Translation

Neel Joshi, CSE 455, Winter Computing image translations What do we do about the “bad” matches?

Neel Joshi, CSE 455, Winter RAndom SAmple Consensus Select one match, count inliers (in this case, only one)

Neel Joshi, CSE 455, Winter RAndom SAmple Consensus Select one match, count inliers (4 inliers)

Neel Joshi, CSE 455, Winter Least squares fit Find “average” translation vector for largest set of inliers

Neel Joshi, CSE 455, Winter RANSAC  Same basic approach works for any transformation  Translation, rotation, homographies, etc.  Very useful tool  General version  Randomly choose a set of K correspondences  Typically K is the minimum size that lets you fit a model  Fit a model (e.g., homography) to those correspondences  Count the number of inliers that “approximately” fit the model  Need a threshold on the error  Repeat as many times as you can  Choose the model that has the largest set of inliers  Refine the model by doing a least squares fit using ALL of the inliers

Neel Joshi, CSE 455, Winter Homographies  Perspective projection of a plane  Lots of names for this:  homography, texture-map, colineation, planar projective map  Modeled as a 2D warp using homogeneous coordinates Hpp’ To apply a homography H Compute p’ = Hp (regular matrix multiply) Convert p’ from homogeneous to image coordinates –divide by w (third) coordinate

Neel Joshi, CSE 455, Winter Basic Procedure  Take a sequence of images from the same position  Rotate the camera about its optical center  Compute correspondence between second image and first  Compute transformation between second image and first  Transform the second image to overlap with the first  Blend the two together to create a mosaic  If there are more images, repeat

Neel Joshi, CSE 455, Winter Basic Procedure  Take a sequence of images from the same position  Rotate the camera about its optical center  Compute correspondence between second image and first  Compute transformation between second image and first  Transform the second image to overlap with the first  Blend the two together to create a mosaic  If there are more images, repeat

Neel Joshi, CSE 455, Winter Assembling the panorama  Stitch pairs together, blend, then crop

Neel Joshi, CSE 455, Winter Problem: Drift  Error accumulation  small errors accumulate over time

Neel Joshi, CSE 455, Winter Image Blending

Neel Joshi, CSE 455, Winter 2010 Feathering =

Neel Joshi, CSE 455, Winter 2010 Effect of window size 0 1 left right 0 1

Neel Joshi, CSE 455, Winter 2010 Effect of window size

Neel Joshi, CSE 455, Winter 2010 Good window size 0 1 “Optimal” window: smooth but not ghosted Doesn’t always work...