Computational Photography -- Project 2 -- Kelleker Guerin

Overview:
This project deals with resizing an image, while keeping the most important information in the image. The method uses seam carving. First a cost map of the image is created using either gradients or other filters, this provies knowledge in the image as to where the most important parts (read: highest frequency) of the image are. The program then uses dynamic programming to find the path of 8 connected pixels (one per row or column) which follows the lowest cost. This seam of pixels is removed and the image is resized accordingly.
Contents:
Images that were seperately resized in the X and Y direction.
Images that were diagonally resized using an optimized combination of the X and Y seam cutting.
Images that performed poorly when resized.
All images were found on Google Image search or Flickr

Images that were seperately resized in the X and Y direction.

Coral Arch Original X Resized
Y Resized
Beach Original X Resized
Y Resized
Lake Original X Resized
Y Resized
Lake 2 Original X Resized
Y Resized
Lightning Original X Resized
Y Resized
Lightning Large Original
Large Y Resized
Mountain Original X Resized
Y Resized
People at Dead Sea Original X Resized
Y Resized
Skyline 1 Original X Resized
Y Resized
Skyline 2 Original
X Resized
Y Resized
Beach Sunset Original X Resized
Y Resized
Surf Original
X Resized
Y Resized

Images that were diagonally resized using an optimized combination of the X and Y seam cutting.
Original
XY Resized
Coral Arch Original XY Resized
Mountain Original XY Resized
People on Dead Sea Original XY Resized
People on Dead Sea Original XY Resized

Images that performed poorly when resized. The images which performed poorly were generaly images with alot of high frequency components, brick and windows etc. You can see significant tearing in both X and Y resizings of the sidewalk as well as building. The resizing of the people was using a different filter kernal which worked poorly, cutting the people up.
Original X Resized
Y Resized
Original X Resized
Y Resized
Original X Resized
Y Resized