CS 194-26 Project 6: Image Warping and Mosaicing (Part 1)

This is the submission of Myron Liu (cs194-26-afp) for CS 194-26 Project 6: Part 1.

Shoot and Digitize Pictures Homography Recovery Image Rectification (Warping Images) Image Blends (Image Stitching) Summary

Background

In this project, we digitize pictures and use homography to projectively warp images, resampling them and finally compositing them into an image mosaic.


Shoot and Digitize Pictures

These images were taken with a DSLR. The first set were taken at a trip I took to Santa Cruz, the next set at Hearst Mining Circle, and the last set was taken of some random cars.

Thumbnail [100%x225]

Santa Cruz Apartment Home Part 1

Thumbnail [100%x225]

Santa Cruz Apartment Home Part 2

Thumbnail [100%x225]

Santa Cruz Apartment Home Part 3

Thumbnail [100%x225]

Hearst Mining Circle Part 1

Thumbnail [100%x225]

Hearst Mining Circle Part 2

Thumbnail [100%x225]

Hearst Mining Circle Part 3

Thumbnail [100%x225]

By Car Part 1

Thumbnail [100%x225]

By Car Part 2

Thumbnail [100%x225]

By Car Part 3

Homography Recovery

By defining point correspondences between two images, we can define a transformation from one image to the other. Specifically, we find 8 unknowns using at least 4 points correspondences to recover a 3x3 homography matrix - this can be done using least-squares with an overdetermined system with more than 4 point correspondences.

Image Rectification

We can use the homography calculated from defining points correspondences to produce shifts in perspective in images. Below are some images produced from shifting perspective by computing a particular homography on an image and applying the homography.

Thumbnail [100%x225]

Picasso Girl With Mirror (Side Perspective)

Thumbnail [100%x225]

Chosen Points on Original Image (Rectifying to Flat Quadrilateral Plane)

Thumbnail [100%x225]

Rectified Picasso Girl With Mirror

Thumbnail [100%x225]

Hallway (Frontal Perspective - Angled Over Rug)

Thumbnail [100%x225]

Chosen Points on Original Image (Rectifying to Flat Quadrilateral Plane)

Thumbnail [100%x225]

Rectified Rug With Birds-Eye-View Perspective

Image Blends

After performing the transformation on the image, we stitch together images using translation without blending, alpha blending and Gaussian blending below.

Thumbnail [100%x225]

Hearst Mining Circle Part 1 Point Correspondences

Thumbnail [100%x225]

Hearst Mining Circle Part 2 Point Correspondences

Thumbnail [100%x225]

Hearst Mining Circle Part 1 Homography Applied

Thumbnail [100%x225]

Hearst Mining Circle Part 1 + Part 2 Without Blending

Thumbnail [100%x225]

Hearst Mining Circle Part 1 + Part 2 Linear Alpha Blending

Thumbnail [100%x225]

By Car Part 1 + Part 2 Without Blending

Thumbnail [100%x225]

By Car Part 1 + Part 2 With Linear Alpha Blending

Thumbnail [100%x225]

Santa Cruz Apartment Home Part 1 + Part 2 Without Blending

Thumbnail [100%x225]

Santa Cruz Apartment Home Part 1 + Part 2 With Linear Alpha Blending

Summary

I learnt about using homographies to transform the perspective of images and that blending properly for images is very hard - especially when you are choosing point correspondences manually.