VIPS

From VipsWiki
Jump to: navigation, search

What is it?

nip2-7.36

VIPS is a free image processing system. It is good with large images (images larger than the amount of RAM you have available), with many CPUs (see Benchmarks for examples of SMP scaling, VIPS is also part of the PARSEC suite), for working with colour, for scientific analysis and for general research & development. As well as JPEG, TIFF and PNG images, it also supports scientific formats like FITS, Matlab, Analyze, PFM, Radiance and OpenSlide.

Compared to most image processing libraries, VIPS needs little memory and runs quickly, especially on machines with more than one CPU. See the Speed and Memory Use page for a simple benchmark against other similar systems. We have a How it works page with a brief technical explanation of how VIPS calculates pixels.

It comes in two main parts: libvips is the image-processing library and nip2 is the graphical user-interface. The libvips and nip2 pages have bullet-point overviews of their features. libvips can be used from C, C++, the command-line, Python, Ruby, JavaScript and others. The GUI aims to be about half-way between Photoshop and Excel. It is very bad at retouching photographs, but very handy for the many other imaging tasks that programs like Photoshop are used for. Both work on Linux/Unix (with convenient packages for most popular distributions, see links), Windows XP and later and MacOS 10.2 and later.

The VIPS library has recently been adopted by Wikipedia for image resizing --- see the NEWS on VipsScaler. Booking.com use vips for processing hotel images. It's also used on a number of other large sites. This Wiki gets around 6500 unique visitors per month.

License

libvips is licensed under the LGPL and nip2 is licensed under the GPL, see http://www.gnu.org. This means you can use libvips in commercial or closed-source software, but you must offer a download of the libvips sources on your website somewhere, you need to tell your users that they are using something based on free software (perhaps a note in your help system), and if you directly modify the libvips sources in any way, you must release the source to your changes.

Cite

Martinez, K. and Cupitt, J. (2005) VIPS ― a highly tuned image processing software architecture. In Proceedings of IEEE International Conference on Image Processing 2, pp. 574-577, Genova.

Cupitt, J. and Martinez, K. (1996) VIPS: An image processing system for large images, Proc. SPIE, vol. 2663, pp. 19--28.

Download

Supported 
Download and install the current supported version for Windows, OS X or as source code. Most Unix systems have vips available through their package manager. Fink, Macports and Homebrew all have versions. See What's New in 7.38 for an introduction to this version.
Development 
Read about and download the sources for the current development version.

VIPS aims for a six-month development cycle. See the Development pages for notes on how to work on the code yourself.

Documentation

Here are some quick guides to introduce nip2, the VIPS GUI. These guides are part of the nip2 manual: click Help / Contents (or press F1) to view the guide while using the program.

Quick interface tour 
Runs quickly though some easy stuff to show how the interface works.
Infrared reflectogram mosaic tour 
Explains how to use nip2 to build reflectogram mosaics.
Nerd tour 
Goes into some detail about the insides of nip2 and how to program your own widgets.

The vips library, libvips, has separate documentation:

libvips API docs 
The vips7 API documentation. We are about 90% of the way through a complete rewrite of libvips to make vips8. The API for vips8 is not quite final yet though, so be warned. The vips7 API will be supported for the forseeable future.
The vips blog 
Has news about vips and posts about using the system.
https://github.com/jcupitt/libvips and https://github.com/jcupitt/nip2 
All of the sourcecode and the build systems.

The Documentation page has all the docs for nip2 and for libvips. The Contact page has links to the bug trackers (a good place to ask questions too), the news site, the announcement mailing list and the names and addresses of the maintainers.

The Examples page summarises the example workspaces that come with nip2. Several of the HOWTO guides are worked examples.

Site highlights

http://libvips.blogspot.com 
News about VIPS on the official blog.
Screenshots 
Various screenshots.
Documentation 
Documentation for the current supported version.
FAQ 
Frequently asked questions.
Contact 
Maintainers and the mailing list.
Links 
Related sites, pages about VIPS, people who use VIPS.

Other stuff

What's New in 7.38 
We've just released 7.38, a fancy new version. This page explains what's new in headline form.
Hello World 
Minimal programs using VIPS, handy for testing.
HOWTO 
Various HOWTO guides, including building on windows.
History 
How VIPS came to be.
Extras 
Add-ons for VIPS.
libvips 
Quick introduction to the library.
nip2 
Quick overview of the graphical user interface.
Benchmarks 
Results from the vips im_benchmark command.
Python 
About the Python interface.