Content Aware Image Scaling

We all resize images quite frequently, but more times than not the result is not what we want. Either the image doesn’t scale correctly, or we are forced to crop off content that we would otherwise want to have. A solution for this problem might be just around the corner.

Content aware image resizing will more than likely be a common occurrence in the future. It uses a seam carving technique to eliminate the less important portions of an image, thereby leaving only what people want to see. The two images above are a good example of how this works. The one on the left is the original, and it shows two red lines indicating the next two "seams" that have been marked to be stretched or removed. The image on the right is the result: wider than the original, but only half the height. It was most of the water that was removed, which is exactly what most people would want to happen.

The creators of the system, Ariel Shamir and Shai Avidan, have thought a lot of things through, and they left me drooling. If there is a portion of the image that is marked to be removed, you can reverse that action and tell the software to preserve that area (useful for preserving faces). If there is a portion that you want removed first, you can do that as well which makes removing people out of images easier than ever!

Go ahead and watch this video to see what I’m talking about. The end is one of the most exciting parts, and I’m sure you’ll be wanting to get your hands on this after you see it:

As of right now this is a research project that will hopefully get released. There’s no download available, and it’s hard to say how good this really is without having tried it myself. After all, different images are going to give you different results. It would be interesting, however, to see browsers implement this sort of thing when scaling images to fit on the screen.

Sources: Hackszine, Digg, OhGizmo!, and Ghacks