Project 2 - Stitching images into a panorama
Anna Cavender
CSE 576 Seitz - 4/28/05

For this project, I used the SIFT feature detector. To match the images, I find features whose best match varies significantly from their second best match. To align the images, I use a RANSAC algorithm that, from a list of randomly chosen matches, choses the one whose model of transformation correlates most accurately to the other matches. Finally the edges of the images are blended together using a blendWidth parameter. Where the images overlap, pixels are weighted by their distance from the edge to the blendWidth. I use a blendWidth of 80 pixels.

I used the same methods for all of the panoramas below. I don't know why the test images turned out so crummy and the images I took with the tripod turned out so good.

All of the images below were cropped using an image editor. But, images in the viewers were not cropped.

(1) Test images (click on image to see high res version):


Panoramic viewer of test images.

 

(2) Images taken with tripod (click on image to see high res version):
These photos were taken with the Canon Powershot A10, tag CS30012718 and so the focal length for a 480 x 640 image was 676.48417 pixels and the k1 and k2 values were -0.20845 and 0.25624.

 


Panoramic viewer of test images with a desciption of the photos.

 

(3) Images taken hand held: (click on image to see high res version):
These images were taken with my personal digital camera. I didn't know the focal length or the k values of my camera, so I just fiddled around with the number until things looked right. The camera is a FujiFilm FinePix 2650.

I forgot to take these as portraits (with the camera vertical), but I think they turned our pretty good, especially for not knowing the focal length and k values (I used the same as above because I thought it would be as good a guess as any). Also, I touched them up a bit first in Photoshop so that the colors weren't so different from image to image (as in the test images).

Panoramic viewer of test images with a desciption of the photos.

(4) Last but not least, check out these bloopers (images resulting from mistakes in my code). See if you can guess what the mistakes were ;). I think they are neat.