Ryan Oksenhorn (roksenho)  •  15-463: Computational Photography

Content-aware scaling (or seam carving) is a method for resizing an image while preserving original features of the image. It computes the least significant pixels to remove, typically yielding natural results.

First, my implementation computes an energy function for each pixel, weighing higher gradients as more expensive. To reduce the width by 1, the least expensive vertical path is dynamically computed then removed from the image. To reduce the height, the same algorithm is run on a transpose of the input image.

Below are a set of my photographs with pre-computed scaling. Drag the slider-bars to see actual (pre-rendered) outputs. Shrinking by 50% shouldn't produce obvious distortion, however some images begin to degrade as all excess area has already been exhausted.


Vertical scaling & algorithm failures