15-463 Project 6: Image Warping and Mosaicing Part A

Jason Israel (jaisrael)

For this project, the purpose was to create a panorama mosaic out of individual images.

My approach did not deviate far from what was recommended in the project description. To warp the individual images, I manually selected control points and found a homography based on those points. To make the mosaic, I matched two corresponding control points to find the displacement, and used linear blending.

I had some issues dealing with the correct orientation of the images; sometimes my results would come out transposed because I reversed the coordinates. I also had trouble getting good control points. I used cpselect but I think some of my points were off because my images were so large. For some of the pictures, it was rough to maintain the same prospective point for the pictures.

Image Rectification

A Poster

poster poster_rectify

In this example, I took a picture of a poster in my room from the side, and straightened it out.

Where the Magic Happens

whiteboard whiteboard_rectify

Straightened out my whiteboard from an angle, notice how the text is straightened out as well

Image Mosaics

gates1 gates2 gates3

Gates at night. The bridge changing color makes an interesting effect, but it was cold and rainy so my hands were shaking, so the images aren't too amazing. Also notice how the people walking on the bridge got blended away.

home1 home2 home

My beautiful pink house where I live with my friends Michael Kamm and Dylan Koenig.

Bells And Whistles

The Family Portrait

portrait poster newposter

Remember that poster? Well now it's my face!

Graffiti

graffiti home4 sidewalk

I put some graffiti from a google search on a panel of the sidewalk.

Day and Night

home4 homedark lightdark

It took me a really long time to get my images for this mosaic. This photo turned out to be really awkward because I wasn't able to get my camera in the same spot for both images.

Part B Results

For this part of the project, we had to automate the creation of the homography between two images. This was done by first identifying features using harris corner detection (with refining through adaptive non-maximal suppression), then creating descriptors to match corresponding points in the images, and finally using ransac to randomly generate an accurate homography based on these points.

Harris Detection and Adaptive Non-Maximal Suppression

home1red home2red

As you can see, the features are shown as red points. This worked very well on this image, but worked less well on images with less contrast.

Feature Matching

home1blue home2blue

The matched points are shown in blue. Most of the matches look correct, but there are a few outliers.

Side by Side Mosaic

homep homerp

It looks like the manual mosaic turned out better than the automated mosaic. This could be because for the manual mosaic I had several times the amount of control points than were generated for the automatic mosaic. I also only ran ransac for a few hundred iterations as opposed to a few thousand.

Other results

My feature detector had trouble with dark images. If you want to see what happened, feel free to view two more mosaics by clicking on the links

gates mosiac

light/dark mosaic