TJHSST Computer Systems Lab Senior
Reasearch Project
Dynamic Image Resizing
Quarter 3 Paper
Patrick Elliott
April 4, 2008
1 Abstract
The goal of this project is to be able to resize an image without distorting
any important aspects of the image. Commons methods of resizing, including
cropping and scaling, remove or distort some of the image and are thus
undesirable. By finding the least important pixels and removing them, this
dynamic resizing can be possible. These can be found by finding the change
of intensity of each pixel to the next and taking away the ones with a very
low change. Using this method, humans should be unable to tell if an image
has been altered.
2 Introduction
Currently on the web, there is such a thing as dynamic text formatting. For
instance, when you resize a web browser window, the text in it will adjust
itself to fit inside the window while still being readable. There is nothing
like this for images however. My goal in this project is to be able to change
the dimensions of an image without losing important content, such as the
dimensions of the focus of these pictures.
1
3 Background
Edge detection is being researched heavily in modern times. Many teams of
researchers are trying to allow computers to see and identify objects. But
there is also much research being conducted concerning editing modifying
images. There is one project called PhotoSynth that is trying to take a
large amount of images from the web, and from them, create a 3D model of
whatever the images are of. There is also another project that is very similar
to what I am attempting to do, although I have some ideas for my project
that they have not yet implemented.
4 Development
I will be using C for all of my programming. My approach to content-aware
resizing is to remove pixels in a judicious manner. Therefor, the question
is how to chose the pixels to be removed? Intuitively, my goal is to remove
unnoticeable pixels that blend with their surroundings. This leads to the
following simple energy function: Each pixel’s value