CS 194-26 Project 6: [Auto]Stitching Photo Mosaics

Raymond Chu - cs194-26-aak


Part 1: Project 6a

Image Warping and Mosaicing


Image Rectification

California Flag

Saison Menu

Image Mosaicing

SF 1



SF 2



SF 3



What I Learned

I learned how much linear algebra actually goes into panoramas! A lot of seemingly simple processes are often taken for granted, because all the math is abstracted away from users. After the process of manually picking points, calculating a homography, and warping images, I've really come to appreciate how these "basic" photographic tools operate.

Part 2: Project 6b

Feature Matching and Autostitching

Harris Point Detection



ANMS - Adaptive Non-Maximal Suppression

SF 1

SF 2

SF 3

Auto-Stitching Mosaic

SF 1



SF 2



SF 3



What I Learned

I also learned a lot in this part of the project. I initially thought this part of the project was going to be much more difficult than the previous part, but the foundational knowledge from project 6a was very helpful for implementing project 6b. This part boiled down to automation and fine tuning the automated parts using linear algebra to obtain the desired results: Harris points to obtain many points, ANMS to narrow down points, feature descriptor and matching to align points for images, and the RANSAC homography to morph the images properly. Lots of little tweaks were necessary, but once completed, the implementation should hold up for many other future photos. It makes me wonder how much the panorama software on phone cameras have been tweaked and how often they are revisited/revised.