Computer Graphics Project 1
Timothy Sherman
tmsherma
Algorithm:
My MATLAB code first splits the image into 3 channels, examines the size of the image, and runs different algorithms if it’s a large or small image.
Small images are aligned using an exhaustive SSD matching process, over a window of -25 to 25. The images are shifted, then have 10% margins cropped before calculating SSD. This gets rid of border and shifting noise. The best alignment is used to recombine the original images.
Large images require the use of a coarse-to-fine Gaussian pyramid. The pyramid is built until the top level has a width less than 256, and then an exhaustive SSD matching search with a -25 to 25 window is done at this level. The images are cropped before calculation as described in the small images section. At each other level, SSD matching is used with a window of -3 to 3, starting at the scaled coordinates found at the previous level. This is a recursive algorithm.
Results:
Small Images:
Large Images