Daily Archives: 18th October

Seam Carving for Content-Aware Image Resizing

Resizing an image can be problematic. If you want to make an image larger then you run the risk of creating grainy images with visible pixels. If you want to make an image smaller then you are condemned to lose detail and make features too small to be seen.

Take this image of a bubble. Making it smaller would make the detail invisible; making it larger makes individual pixels too large.

But what if there was a way to remove only the “boring” pixels? Just the ones that do not contribute to the overall image? That’s what Seam Carving for Content-Aware Image Resizing does; it picks out the pixels with the lowest “energy”, those with the least difference between them and their surroundings.

These are the pixels from the image above that the LiquidRescale seam carving plugin for GIMP thinks are the least interesting:

Removing them leaves behind the most interesting pixels:

Which can then be combined into the final, resized image. In this case the image has been shrunk to two-thirds of its original, horizontal size.

Results can be very impressive: