Creating a panorama can be seen as the combination of many different computational photography techniques. Depending on the technique used warping, blending, and corner detection may all be used.
There are many tools that create very nice panoramas but looking at the process 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 crop.
First the corners of all the input images need to be found. Then matches between the two images need to be located. For this step, the OpenCV Brute Force Matcher can be used.
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.
After this step the images can be stitched and blended through a variety of ways, in this case Pyramid Blending was used.
This project followed an approach loosely described in:
- Computer Vision: Algorithms and Applications by Richard Szeliski