Project 6: Image Warping and Mosaicing

Jacob Holesinger, cs194-agj


The aim of this project was to learn about image warping in order to create mosaics and panoramas. An image such as a panorama is captured by taking multiple photos from the same center of projection. While a simple affine transformation would not suffice to capture the changing perspective, by adding another degree of freedom using a homography instead we can warp one to match the other. Below are some examples of a homographies used to rectify a images.

Source image
Source image

The homography gives a correspondence between the original image and its warped version. The only problem is that images in the computer are discrete samplings of the continuous world and the space between the samples might get streched by the transformation. We can solve this by interpolating between the pixels and for each pixel in our output image, sampling the interpolated input image for its value.

Panorama Results

All that is left with this in place is defining the corespondences on images, warping one to the other and finally doing a blend operation to hide the seam. I didn't figure out how to get my images aligned after warping in time but here are examples of one side warped to fit the other.

Inside vlsb
View from Indian Rock
Indian rock park


In this project, I learned about a cool warping trick that can be used to rectify images and match perspective. Im suprised by how natural the warped images seem despite being extrapolations of another image.