Image retargeting by k-seam removal

From AIRWiki
Revision as of 12:55, 27 May 2008 by PamelaGotti (Talk | contribs) ('''Conclusion''')

Jump to: navigation, search

Part 1: project profile

Project name

Image retargeting by k-seam removal.

Project short description

This project presents a methodology for content aware image resizing based on seam removal. In this work four different approaches were implemented in order to retarget an image:

  • removing a 8-connected path of pixels (1-seam) minimizing an energy function
  • removing a not connected path of pixels (k-seam) minimizing an energy function
  • removing a 8-connected path of pixels (1-seam) minimizing the energy variation in the image
  • removing a not connected path of pixels (k-seam) minimizing the energy variation in the image

where k is the maximum disconnect allowed.

The work ends with a comparison on several test pictures among these algorithms considering the one which gives the best results.

Dates

Start date: 2008/01/01

End date: 2008/06/24

People involved

Project head(s)
  • V. Caglioti - Vincenzo (dot) Caglioti (at) polimi (dot) it
Other Politecnico di Milano people
  • P. Taddei - pierluigi (dot) taddei (at) polimi (dot) it
Students currently working on the project
  • Luigi Cardamone - luigi (dot) cardamone (at) mail (dot) polimi (dot) it

Laboratory work and risk analysis

This project does not include laboratory activities.

Part 2: project description

State of the art

This project is based on the article Shai Avidan, Ariel Shamir, Seam Carving for Content-Aware Image Resizing, ACM SIGPLAN, 1994, in which the author describes content aware image resizing by removal of 8-connected path of pixels.

The problem

The normal way of resizing a picture doesn’t take in account it’s content and differs from the resizing of a web pages where each object is modified on the basis of its content. So, there is the need for an image resizing that is content aware.

The Idea

The idea behind content aware resizing is to treat in a different way the important region of the image respect to those regions with less information. To achieve this goal it’s possible to remove from the picture the seam with low energy. A seam is a path of pixel from top to bottom or from left to right, as it’s possible to see in the following picture:

Paesaggioconseam.JPG

The Algorithm

The implemented algorithm uses different kind of seam and minimize different measure:

  • removing a 8-connected path of pixels (1-seam) minimizing an energy function
  • removing a not connected path of pixels (k-seam) minimizing an energy function
  • removing a 8-connected path of pixels (1-seam) minimizing the total energy variation in the image
  • removing a not connected path of pixels (k-seam) minimizing the total energy variation in the image

Where k seam are those seam with a maximum disconnection of k pixel. This disconnection is important when in the picture there are many object and it’s important to don’t cut their edges.

All these algorithms were implemented in Matlab and tested on several pictures (source code is available here: Carving source code ). The project follows with a comparative analysis of strength and weakness of each method.

Conclusion

From results emerge that the best algorithm is that one working with 1-seam with minimum energy.

In the following pictures it is possible to see the result of a retargeting using the best algorithm and the difference respect to the normal resize method (stretching ).

Original image
Resized image with streching
Resized image with 1-seam with minumum energy