CS 766 Project 2
Panoramic Mosaic Stitching
Prachi Bhadekar
· AIM: To implement a feature-based method to generate panoramic images.
· BASIC STEPS:
1. Taking images-Took
20 images of a 3-D scene for creating a 360 degrees panorama(at 18 degrees
interval) using a canon Power shot SX100 IS digital camera and a Quick Pan
rotator. All the images are 640*480.
2. Warping each image into
cylindrical coordinates after removing distortion -
Firstly,
the image distortion is removed using barrel distortion equations given in the
mosaic lecture slides. Then, inverse cylindrical projection is taken. The
programming is done in MATLAB for all the steps. Focal length estimate used for
this purpose is 678.05421.
(k1=-0.22982,
k2 =0.22952)
3. Computing
the alignment of the images in pairs -
I used the
MATLAB files given in the SIFT demo to detect features in my images (sift.m and
match.m). I modified the match.m file to calculate the translation between any
two images using RANSAC algorithm. The program outputs two adjacent images
appended to each other, and lines drawn between the matching key points. (Note:
Image alignment is done using feature matching and RANSAC algorithm which finds
the translational motion between the adjacent images)
4. Stitching
and cropping the resulting aligned images -
I found out
the translation (in x as well as y direction) for all the adjacent image
pairs(after converting to gray scale, removing distortion, taking inverse
cylindrical map, and matching features between the 2 images).Then, the size of
the warped panorama image is calculated, using these translation vectors.
Before
sampling these processed images into the panorama, each image is blended using
a feathering 1-D function. I have taken it as a triangular function which is
zero at the two ends and increases linearly toward the middle column, and is
highest (=1) there. All the pixels in each image are multiplied by this
weighting function before sampling into the panorama to blend all of them
properly.
5. Covert
the result image to JPEG and display it in the panorama viewer.
I did not
reach till this step in my project.
·
RESULTS:
Submitted
Matlab Files:
1.
inverse_map.m
2. sift.m
3. match.m
4.
blending.m
5.
program.m : The Main Program-Run this.
6.
appendimages.m
7.
showkeys.m
Image Files:
1. my_images folder
Application:
siftWin32- key point detector
Panorama image using Autostitch
http://picasaweb.google.com/prachi.bhadekar/DropBox?authkey=y94gAWn-G5Q#5257628127607653826
Or find the
pano.jpg image attached
·
REFERENCES:
[1] R. Szeliski and H.-Y. Shum.Creating
full view panoramic image mosaics and texture- mapped models, SIGGRAPH 1997, pp251-258.
[2] M. Brown, D. G. Lowe, Recognizing
Panoramas, ICCV
2003.
[3] Autostitch software