Project 4A

Shoot the Pictures

Here are some photos used for the mosaic.
Camx camy camy
Camx camy camy
Camx camy camy

Recover Homographies

How do we recover homographies?

By definition, it is the matrix H, taken from lecture:

camy

If we fix the bottom right element to be 1, it turns out we can solve for the matrix's elements with the following equation:

camy

Image Rectification

Let's try rectifying an image. This is an example image of a sign from Moffitt.
Camx
Original
camy
Angled

We can define the point correspondences using the original, front-facing image. Then, we'll use the homography to warp the angled image to the rectangle.

camy

This sanity check lets us know that our transformation works as intended!

Let's just do one more to be extra sure.

Camx
Original
camy
Angled
camy
Recovered from the latter

The only reason why this is not perfectly rectangular is because of the way I selected the corner points in the slanted image. Even if I hardcode the corners in the target warp to be a perfect rectangle as such, it still fails to be a precise rectangle. Unfortunately it's very difficult for me to be that precise, so I'll just leave it at that.

Blend the images into a mosaic

camy

This is a panorama of my room.

camy

This is a panorama of the porch.

camy

This is a panorama of Moffitt at night, including the cafe building on the right that is covered up.

Now I have to admit that the image quality gets progressively worse on the right. This is because I progressively added the photos on the left, and with forward warping the frequency on the right pixels gradually became lower.