NIP2 Beginners Guide

From VipsWiki
Jump to: navigation, search


Joseph Padfield , John Cupitt, Rachel Billinge, 2005


This section of the wiki is based on the PDF of the Beta version of the nip2 Beginners' Guide|Beginners' Guide

An attempt was made to cover most of the information required, but it is difficult to ensure that we have covered everything you will want, so feel free make adjustments or ask for further clarification.

“It's quite simple really, and at the same time, rather complicated.”

— A. Haddock, Sea captain (rtd.)


So what is it?

VIPS/nip2 is a free image processing system, aiming to be about half way between Excel and Photoshop. It's obviously much smaller than these two, but it's not a toy either (about 200k lines of code). It has been designed for scientific image processing, allowing the controlled, reproducible manipulation of digital images. Relative to some of the more common image processing systems it's particularly good with large images (ie. images larger than the amount of RAM in your machine) and for working with colour. Although it is not designed as a piece of painting software it also comes with a simple paint box, which is sufficient for most basic requirements.

VIPS (for VASARI (or maybe Virtual) Image Processing Software) is the image-processing library that does all the heavy lifting. nip2 is a graphical user interface for VIPS. Both work on unix, linux, windows (2k and XP) and macintosh (OS 10.2 and later).

VIPS has been used in the EU projects CRISATEL, VASARI, MARC, VISEUM, ACOHIR, ARTISTE and MUSA. It's also used in a number of museums and galleries around the world, mostly for infra-red reflectogram mosaic assembly.

The VIPS library is licensed under the LGPL and and the user-interfaces are licened under the GPL. See

Document Summery

It is not intended that this document be an exhaustive description of all of the functions within VIPS and nip2, but to act as an introduction to nip2, explaining most of the basic functions along with a selection of some of the more complex processes that are used in museums and galleries. For further information please refer to the other documents posted on the VIPS web site or send your question to the VIPS mailing list. The purpose of this document is to provide a step by step, beginners guide, including;

  1. Basic brake down of what is in the finished document.
  2. An introduction to some of the hardware and software that can be used.
  3. Further dicussion about computers and the use of command lines.
  4. The installation of the VIPS/nip2 software.
  5. Discuss some of the basic issues involved with capturing images.
  6. And finally how to use some of the standard procedures, carried out with nip2 within a museum/gallery environment.

It should be made clear at this point that although this document will describe all of the steps required to perform the processes discussed, both the operating systems and the nip2 software itself are quite complex. Further reading may be needed, either to solve small problems specific to a particular computer or simply to expand your knowledge and maximise the potential of your system. Some appropriate references will be given to software manuals and other sources of further information, where appropriate.

Given the large number of different versions of Linux, Windows or Mac OS it would be difficult to ensure that this set of instructions was completely accurate for all. The actual process of using the nip2 software, once it is installed, will be very similar in all compatible versions of Linux and Windows, however as many Mac computers only have single button mice some of the processes will be slightly different. The information given within this document will be as general as possible, but it will be mainly based on the use of the SuSE 9.2 version of Linux and Windows XP.

At this time it is only possible to capture images directly into nip2 when using Linux or Unix, for windows and Mac users images will need to be captured using the software that came with your camera to capture your images before they can be processed using nip2.

General Notes on Conventions

At this stage it should be noted, that while using the mouse, the buttons are used in three ways; a single click, a double click, or they can be held down for a while and then released. Within this document a four-letter abbreviation will be used to indicate how the mouse should be used. The first letter will indicate whether you should click (C), double click (D) or hold (H) the mouse button; the second letter will indicate which button to use left (L), middle (M) or right (R) and the final two letters 'MB' stand for mouse button. For example CLMB means to click the left mouse button once.

There are generally three methods of entering commands or running programs on a computer.

  1. The most common approach is to use the mouse to access various menus that are listed across the top of a dialogue window,[1] within the menu bar.[2] By clicking on the titles, listed in the menu bar, drop down menus will appear, commands, or further options, can then be chosen from the menu, by clicking on them. To simplify these instructions the commands performed from windows will be indicated as follows, [Name of Window][menu bar entry: menu entry: etc.]
  2. Secondly, commands can be directly typed into the computer, via a text-based command line[3]. This can be achieved through special command line windows, or as the default option if you are not running a graphical user interface [4] to your operating system. When required, this sort of command will be indicated as follows. Firstly some description will be given to indicate where the command is to be entered, such as a specific window, or just on the screen, if no graphical interface is being used. Then the exact command, i.e. what you need to type in, will be given, including any special arguments[5]. Finally you will be prompted to press return, for example;

[xterm window]

type command_name arguments 


Here command_name arguments would be typed into the xterm window[6] and then the return button would be pressed.

  1. The final option is simply to push buttons, either on the keyboard or click on them with the mouse, if they appear on the screen within a window. When required this form of input will be defined by enclosing the name of the button within square brackets and denoting whether it needs to be clicked or pressed. For example: CLMB [OK], or press [return].

The simplified instructions for entering commands here will be used throughout this document, however, many situations will be described in greater detail where required.

When entering commands directly into a command line window it is important to ensure that the command is entered exactly as described including all of the spaces and full stops. If you have problems with a command check that you have entered it correctly. In order to make these commands clear a separate font will be used which gives equal spacing to each character, including "spaces", for example:

enter a command


Hardware/Software for Digital Imaging

Basic Digital Imaging

Downloading, Installation and Startup of Nip2

Beginning to work with Nip2

Mosaicing Digital Images

Processing Digitised X-ray Images

Digital Image Registration and Comparison

Digitally framing paintings

Batch Processing with Nip2

Work in Progress: How to Find Gold with FLOSS

Random Generation of Mildly Irregular Shapes for Cognitive Experiments


  1. These windows represent the interface between the computer and the user, either as a control area for a specific program or as an open window or command tool through which commands can be given to the computer manually, by typing them in. Windows are normally square or rectangular boxes, which appear on the screen, with their name or title shown across the top. Windows of all sorts can normally be moved around the screen by HLMB over the uppermost section of the window, normally the title bar and then moving the mouse. Once you have moved the window to where you want it let go of the mouse button. They can also be re-sized; HLMB at an edge or corner of a window, then drag the mouse until the window is the required size.
  2. Menu bar: The menu bar on a window is the upper section that contains commands, information and sometimes a scale.
  3. There are many different command line programs available particularly in Linux, but though they have differences they all work in a similar manner, i.e. providing and interface for a user to type in text based commands to a computer.
  4. Windows and Linux are normally used via a graphical interface, with little icons, windows and perhaps a nice picture in the background.
  5. Many commands can be run in different ways; they can display results in different ways, or act only on specific files. The information typed in after the actual command, to set these other options, are called arguments.
  6. An Xterm is one of he more common command line widows available in Linux and Unix.