CS 194-26 Final Project: Fake Miniatures and Seam Carving!

Nanxi Wang


Project Overview

In part 1 of the final project, I create "Fake Miniature" photos by implementing a tilt-shift filter. This gives the effect of a very shallow depth of field, as if I created a miniature replica of a scene and took a photo up close. The tilt shift filter is created by progressively blurring more as you move away from a vertical or horizontal line. I also increase the saturation to make the image look more toy-like.

In part 2 of the project, I create a Seam Carving algorithm that allows for content-aware image resizing. The Seam Carver removes either vertical or horizontal seams of "least energy", which allows us to shrink the size of our image with minimal artifacts. The energy function is calculated from the strength of the vertical and horizontal gradients at a point; therefore, areas with little detail are more likely to be selected by the algorithm for removal. In many cases, this will leave you with a smaller image that doesn't look significantly different from the original. It does not always work well, however, especially on human faces (see failures section).



PART 1: Fake Miniatures

Stock Images




My Own Images

Might want to right click -> open in new tab to see some of these better.






PART 2: Seam Carving

Vertical Seams

seams removed: 100

seams removed: 80

seams removed: 70




Horizontal Seams

seams removed: 100

seams removed: 100




Failures

Below are a few seam carves that didn't turn out so great on images of two of my friends.

seams removed: 50 vertical

seams removed: 100 horizontal

seams removed: an additional 40 vertical