Seam Carving Demonstration

Seam Carving is method of content-aware image resizing. This web application can load images from your computer and do things like
  • Reduce the size of an image by removing parts of the background
  • Increase the size of an image by copying parts of the background
  • Remove part of an image that you don't like


The icons in the top toolbar, in order:
  • Open an image file. Supported types are PNG (8 and 24 bit) and JPG.
  • Print the onscreen image to your printer!
  • Saves the onscreen image in Java-friendly formats!
  • The next 4 icons expand/contract the image by 1 pixel in the 4 directions. Seam-carving is used for contracting, and seam-expanding is used for expanding.
  • The next icon is a full-rescaler. It sizes the image however you want. Seam-expanding has its limitations. You can't expand more than 40% and have it look good. Therefore, if you try to do that, the program asks if you want to use traditional scaling first, and then use seam-expanding.
  • Toggles between Energy and the Image. All features work under both modes.
  • The mask button toggles the mask. You can choose areas of the image to not remove. Whenever the mask button is toggled, the user can click on the image and add pixels to keep. The cursor becomes a circle. The user can toggle the checkmark button to turn it into the rejection button. All future carves will try to carve through this region. If your mouse button has a 3rd wheel, rolling it up and down changes the size of the masking pen.
  • A ProgressBar at the bottom right keeps track of progress on the bottom-right. It updates one step at a time, so you can see your image expand or contract in real-time. The text field at the bottom left will show you information about the pixel you happen to be hovering over.