Step 1: Taking Images I took two sets of 18 images with the Canon SX100 IS on the KiWi tripod. Thumbnails of the first set are:
Step 2: Create a panorama The mosaicStitch program does the following steps:
The program is run through an executable jar file mosaicStitch.jar, and the arguments are the images to be input. For example:
%mosaicStitch.jar 1.JPG 2.JPG 3.JPG
It will need to be run on a machine with capabilities of converting .jpgs to .pgms (possibly through an image editor) and running the Sift program.
The user will be required to perform these tasks independently when prompted (currently, though, the pgm files and key files reside in the /img folders because running those through is a hassle. if the user wishes to just copy-paste the key file names they may use:
img2/warped1.key img2/warped2.key img2/warped3.key img2/warped4.key img2/warped5.key img2/warped6.key img2/warped7.key img2/warped8.key img2/warped9.key img2/warped10.key img2/warped11.key img2/warped12.key img2/warped13.key img2/warped14.key img2/warped15.key img2/warped16.key img2/warped17.key img2/warped18.key
The program was only tested on a Linux machine, but I can't think of a reason it wouldn't be platform-independent. It will probably crash as I didn't have time to finish debugging it. When it does, the panorama it has completed prior to the crash will be saved in 'panotemp.jpg' of the file the source images are found in.
The program makes use of the Jama Java Matrix Package and ports the supplied SIFT match.c program to Java and made use of the lecture notes and Brown and Lowe's Recognising Panoramas paper for the algorithm.
As previously stated, the program doesn't completely work. But until it breaks, it does what it is supposed to do. The mapping of the image to the panorama is sort of speckly, resulting from doing a forward warp from the image to the panorama as opposed to a reverse warp that would ensure no pixels were skipped. The images are cut off at the top of the panorama image, as well. But the basics are working, so that's something.
Panorama image created by my program: Project Break-up
Betsy Wayner-100% of what actually got done
And a good chunk of things that were done but didn't work so couldn't be used
Sadly, though, not quite everything.