Willy Nolan


Creating a panorama can be seen as the combination of many different computational photography techniques.

Depending on the situation warping, blending, and corner detection may all be used.

There are many tools that create very nice panoramas but looking at the process at each step can be quite illuminating.

This research resulted in a program that makes panoramas by finding a homography between the input images, warping them into alignment, performing a multi-frequency blend and then an automated cropping.

First the corners of all the input images need to be found. Then matches between the two images need to be located. In this project, the OpenCV Brute Force Matcher was used to find matches between the images.

Once there is a list of the matching features between the images a homography can be found that connects the images. At this point, the “canvases” of the input image can be warped so that they align.

The second featured image shows an outline of how the three images canvases (shown in purple, green and pink) were warped after finding matching points.

After warping the images can be stitched and blended through a variety of ways. This project used pyramid blending.

This project followed an approach described in:

Input image 1
Input image 2
Input image 3
Result panorama image

Input images (top) and resulting panorama image

Image alignment and warping

Image alignment and warping

Input images warped and blended

Input images warped and blended