Via Digg > OhGizmo!, the video & article is here: Smart Image Resizing Cuts The Useless Out Of Your Pics
I'll check out the 20mb (pdf) whitepaper sooner or later, but here's what's going on as far as I can tell...
Technique:
This engine is resizing images by removing paths of pixels vertically or horizontally instead of columns of pixels. The path they add/remove is determined by interestingness. They refer to this technique as “retargeting“ (as opposed to resizing or resampling).
Identifying Image Interestingness:
They are determining the interestingness (or in their terms: gradient magnitude) by starting with a grayscale version of the source image, then creating a new image using The Sobel Operator on the source image. The resulting image represents large gradient activity (interestingness.) with light, and boringness... with dark.
Original grayscale, and the Sobel gradient image of the same picture:

Discovering the least-interesting path:
The engine then uses an 'importance or energy function' to discover the least-interesting path, composed of 1px from each column or row. This function seems to represent the most consistently shaded 1-pixel path from one end of the image to the other...
“Retargeting” the image:
Once the least-interesting path is discovered, it is then either removed or copied, depending on if you are “retargeting” your image to make it larger or smaller.
Maybe ImageManipulator needs some Retarget methods... now if only optionsscalper could help me work through this math ;)
Here's the video:
Print | posted on Thursday, August 23, 2007 8:10 AM