Processing images with PIL
Why use Python for image processing, if we could use WIMP (http://en.wikipedia.org/wiki/WIMP_(computing)) or WYSIWYG (http://en.wikipedia.org/wiki/WYSIWYG) to achieve the same goal? This is used because we want to create an automated system to process images in real time without human support, thus, optimizing the image pipeline.
Getting ready
Note that the PIL coordinate system assumes that the (0,0) coordinate is in the upper-left corner.
The Image
module has a useful class and instance methods to perform basic operations over a loaded image object (im
):
im = Image.open(filename)
: This opens a file and loads the image intoim
object.im.crop(box)
: This crops the image inside the coordinates defined bybox
.box
defines left, upper, right, lower pixels coordinates (for example:box = (0, 100, 100,100)
).im.filter(filter)
: This applies a filter on the image and returns a filtered image.im.histogram()
: This returns a histogram list for this image, where each item represents...