Protocol

Internet Imaging Protocol

The protocol for communication between the client and server is based on the Internet Imaging Protocol. This protocol was initially developed by the now defunct DIG (Digital Imaging Group) consortium to allow high resolution images to be easily streamed over the internet. The protocol is a simple request-reponse protocol allowing access to individual tiles, processed image views or image metadata and was designed around the tiled multi-resolution Flashpix format. Using this protocol allows the IIPImage server and clients to inter-operate with other IIP-based client-server systems. The IIPImage server supports the main subset of the full protocol (version 1.0.5) and, in addition, several extensions to handle complex image types such as 3D object sequences, multispectral images and surface elevations etc.

A typical request is of the form:

=> OBJ=IIP,1.0&FIF=/path/image.tif&JTL=1,0

where FIF is the path to the image on the server and TIL is the request for a single JPEG compressed tile, specifically tile 0 from resolution number 1.

Protocol Extensions

There are several extensions to the IIP protocol to allow tiles of different sizes to be used and to inform the client what vertical and horizontal sequences of an object exist.

  • Tile-size: The horizontal and vertical size of the image tiles. eg. “64 64″. The IIP specification limits the tiles to 64×64 pixels. However, the IIPImage server and client are able to handle tiles of any size.
  • Horizontal-views: A list of space-separated horizontal angles (degrees) available. eg. “0 90 180 270″. If there is only a single image, zero is returned.
  • Vertical-views:A list of space-separated vertical angles (degrees) available. The angles are defined from the vertical plane, so a view from directly below the image is zero, directly facing the object is 90 and from directly overhead 180. eg. “0 90 180″. If there is only a single image, 90 is returned.
  • SHD: (iipsrv version 0.9.7 and later) Simulated hill-shading for image normal data. The argument is the angle of incidence of the light source in the horizontal plane (from 12 o’clock) comma-separated with the vertical angle of incidence with 0 representing a horizontal direction and -1 vertically downwards.