[Image-SIG] Yet another image processing library

David Goldsmith d_l_goldsmith at yahoo.com
Wed Oct 8 02:48:58 CEST 2008


How "PIL-like" is your Python API?

DG
--- On Tue, 10/7/08, jcupitt at gmail.com <jcupitt at gmail.com> wrote:

> From: jcupitt at gmail.com <jcupitt at gmail.com>
> Subject: Re: [Image-SIG] Yet another image processing library
> To: image-sig at python.org
> Date: Tuesday, October 7, 2008, 3:00 AM
> 2007/7/30  <jcupitt at gmail.com>:
> > I help maintain an image processing library called
> VIPS. We've just
> > released a new stable version and one of the new
> features is a Python
> > binding.
> >
> >  http://www.vips.ecs.soton.ac.uk
> 
> I hope no one minds this announcement. We've just
> released a new
> stable version of vips, 7.16.2, that improves the Python
> binding quite
> a bit.
> 
> Good things about vips:
> 
> * fast, since it's written in C and has good SMP
> support
> * low memory use, especially for large images and complex
> processing,
> since it is demand-driven and keeps source images on disc
> where
> possible
> * many pixel formats, from 8 to 128-bit pixels, and any
> number of image bands
> * >300 image processing operations available in Python
> * LGPL license
> 
> Bad things about vips:
> 
> * no Python binding for Windows (though it ought to be easy
> to build)
> * this new version is not yet available in all linuxes so
> you might
> need to compile from source
> * the Python binding is generated automatically from a C++
> binding and
> isn't very Pythonesque
> 
> More detail and benchmarks here:
> 
> http://www.vips.ecs.soton.ac.uk/index.php?title=Python
> 
> New stuff in this version:
> 
> * The varargs parts of the C++ API are now wrapped in
> Python, so you
> can do things like building masks from lists:
> 
> mask = VMask.VIMask (3, 3, 2, 0,
> 		  [-1, -1, -1,
> 		   -1,  16, -1,
> 		   -1, -1, -1])
> 
> To make a 3x3 integer convolution mask, with scale == 2.
> 
> * The VImage class now has .tobuffer(), .frombuffer() and
> .tostring()
> and .fromstring(), so you can efficiently move images
> between PIL and
> VIPS. There are also a couple of utility functions to
> convert VIPS
> headers to PIL headers and back. There's some sample
> code in SVN:
> 
> http://vips.svn.sourceforge.net/viewvc/vips/vips7/branches/vips-7.16/python/test/pilvips.py?view=markup
> 
> Although it won't copy over image metadata, like EXIF
> and ICC profiles, sadly.
> 
> John
> _______________________________________________
> Image-SIG maillist  -  Image-SIG at python.org
> http://mail.python.org/mailman/listinfo/image-sig


      


More information about the Image-SIG mailing list