To never miss an article subscribe to my newsletter
No ads. One click unsubscribe.

Perfect way of scaling images without loosing any content

2 min read

tena koe tangata maere,

When learning about this week’s paper, I was wondering why I did not think of something like that before: Resize images, but do not remove important parts. Most of the time when I do automatic image resizing, I cut from the center-center of the image and hope that the important content is somewhere in there. With content aware image resizing, it is possible to do this in a smarter way by analyzing the image and trying to cut areas that contain less information, and you do not miss that much. There is also a go library which does that for you, which you can find in the link section.


If you enjoy reading the Weekly CS Paper, I would be really thankful if you would support it with a few bucks: gum.co/weeklycspaper. The newsletter will stay free forever!


Abstract:

Effective resizing of images should not only use geometric constraints, but consider the image content as well. We present a simple image operator called seam carving that supports content-aware image resizing for both reduction and expansion. A seam is an optimal 8-connected path of pixels on a single image from top to bot-tom, or left to right, where optimality is defined by an image energy function. By repeatedly carving out or inserting seams in one direction, we can change the aspect ratio of an image. By applying these operators in both directions, we can retarget the image to a new size. The selection and order of seams protect the content of the image, as defined by the energy function. Seam carving can also be used for image content enhancement and object removal. We support various visual saliency measures for defining the energy of an image, and can also include user input to guide the process. By storing the order of seams in an image we create multi-size images, that are able to continuously change in real time to fit a given size

Download Link:

https://inst.eecs.berkeley.edu/~cs194-26/fa16/hw/proj4-seamcarving/imret.pdf


Additional Links:

  • Caire: Go library using the method from the paper for resizing

It would be awesome if you could help growing our little paper community even more by sharing it with your circles (you can also @eu_frey me on Twitter for retweets :D):

simon-frey.com/weeklycspaper

If you have any paper recommendation for me, please do not hesitate to approach me via [email protected] (Please keep the Backend & DevOps topic focus in mind)


With much love,

Simon Frey