CS194-26: Image Manipulation and Computational Photography, Fall 2017

Project 6: IMAGE WARPING and MOSAICING

Yanhe Chen

Part 1.1 : Image rectification + warp the images

Before you can warp your images into alignment, you need to recover the parameters of the transformation between each pair of images. In our case, the transformation is a homography: p’=Hp, where H is a 3x3 matrix with 8 degrees of freedom (lower right corner is a scaling factor and can be set to 1). One way to recover the homography is via a set of (p’,p) pairs of corresponding points taken from the two images.

where im1_pts and im2_pts are n-by-2 matrices holding the (x,y) locations of n point correspondences from the two images and H is the recovered 3x3 homography matrix. In order to compute the entries in the matrix H, you will need to set up a linear system of n equations (i.e. a matrix equation of the form Ah=b where h is a vector holding the 8 unknown entries of H).

Image Rectification

Part 1.2 : Blend the images into a mosaic

Warp the images so they're registered and create an image mosaic. Instead of having one picture overwrite the other, which would lead to strong edge artifacts, use weighted averaging.

first example

second example

third example

Part3 : Summary

I used the pictures I took to set the standard points and use the same standard poitns to create two or more H to warp other pictures. Then i blend all the images into one mosaic.

Part 2.1 : Harris detectors

I used the image as the input and then calculate Rmax and geting a grayscale output image.

Part 2.2 : feature descriptors

Warp the images so they're registered and create an image mosaic. Instead of having one picture overwrite the other, which would lead to strong edge artifacts, use weighted averaging.

Part 2.3 : feature matching

Using k-d trees to calculate the neighboring feature descriptors two to matched the first one with threshold 0.7.

Part 2.4 : RANSAC

Reapeating the process: 1. randomly selected four points and calculate the homography using svd. 2. calculates the ssd of inliers. 3. keep the maxinliers and H if the sdd is meet the threshold.

Bells and Whistles: Panorama Recognition

I stwiched the images one by one.

first example

second example

third example

Part3 : Summary

I learned to effeciently using vectorizaion during the process of dealing with images. The equation that (xi-1)*h+y is quite useful.

Thank you!