Open Access with IIPImage at Ghent University Library

Case Study, IIPMooViewer, JPEG2000, Server No Comments



The Book Tower, Ghent University Library

Guest Post by Nicolas Franck, Ghent University Library

Ghent University Library (Belgium) – better known as the “Book Tower” – started digitizing its collections back in 2004. It has a wide variety of material, ranging from books, manuscripts, papyri, posters, coins to drawings and old maps. From the beginning, the main purpose was to provide its audience – mainly researchers and students – open access to its digital content online.

A website was created with a search interface, and a commercial viewer (EREZ viewer) to view the digital images online at http://adore.ugent.be

But in 2010 we decided to create a new website with more possibilities, and to use an open source software to view our images online. We needed software that was fast, reliable, open source and that used the new possibilities of HTML5.

That is where IIPImage came in. The IIPMooviewer client was slightly adapted to our needs with, for example, the addition of a zoom level indicator.

Some of the resources consists of more than one image, such as scans belonging to a book. So we created a carousel, that wraps IIPMooviewer within an iframe. See this example showing Liber Floridus a rare 12th century medieval encyclopaedia of Flanders: http://adore.ugent.be/OpenURL/app?id=archive.ugent.be:018970A2-B1E8-11DF-A2E0-A70579F64438&type=carousel&scrollto=60:

Liber Floridus – book page carousel wrapping iipmooviewer

The raw images are first converted to 8 bit sRGB using PerlMagick before conversion to JPEG2000 format with Kakadu using the following parameters:

kdu_compress -i input.tif -o output.jp2 -quiet -rate 24 Clayers=8 Clevels=8
    Cprecincts="{256,256},{256,256},{128,128}" Corder=RPCL ORGgen_plt=yes
    ORGtparts=R Cblk="{64,64}" Cuse_sop=yes -no_palette -num_threads 4

Trajan’s Column

This results in a maximum of 8 resolution levels and 8 quality layers with a precinct size of 256×256 pixels. They are stored with lossy compression to reduce the file size, but with a high encoding rate of 24 bits per pixel.

The largest image is this 1774 etching of Trajan’s column by the Italian artist Giovanni Battista Piranesi (1720-1778). The scan is 832 megapixels in size (15261×54519 pixels). The compressed JPEG2000 file itself is about 400MB in size, while the uncompressed image was 2GB in size.

Interactive viewer: http://adore.ugent.be/OpenURL/resolve?rft_id=archive.ugent.be:EBFE8CFC-AC6F-11E1-81A7-AD7FAAF23FF7:1&svc_id=zoomer&url_ver=Z39.88-2004

JPEG2000 file download: http://adore.ugent.be/OpenURL/resolve?rft_id=archive.ugent.be:EBFE8CFC-AC6F-11E1-81A7-AD7FAAF23FF7:1&svc_id=original&url_ver=Z39.88-2004

We use Red Hat Enterprise Linux Server release 6.2 with Nginx as the web server. The iipsrv process is started via an init-script using spawn-fcgi:

export VERBOSITY="1"
export MAX_IMAGE_CACHE_SIZE="100"
export FILENAME_PATTERN="_pyr_"
export JPEG_QUALITY="100"
export MAX_CVT="300"
spawn-fcgi -f /path/to/iipsrv.fcgi -U iipsrv -u iipsrv
                          -s /var/run/iipsrv.socket -n

As you can see, a Unix socket is created and Nginx uses its fastcgi-module to proxy all requests to /iip to this socket. Although the IIPImage server has it own methods of caching its results, we decided to let Nginx cache the results itself, to lower the number of requests to the backend server.The IIPImage-server can be reached through this proxy at http://adore.ugent.be/iip.

by Nicolas Franck, Ghent University Library

IIPImage now an Official Ubuntu Package

New Release, Server No Comments

IIPImage is now an official Ubuntu and Debian package! Version 0.9.9 of the IIPImage server is now distributed as part of the Ubuntu 12.10 Quantal Quetzal release.  It is also included in Debian’s Sid unstable branch, and testing branch from where it should migrate to become part of the forth-coming Debian 7 Wheezy release.

The Debian source package is available here: http://packages.debian.org/source/sid/iipimage and the Ubuntu lauchpad package here: https://launchpad.net/ubuntu/+source/iipimage

The package is split into two with a main server package: iipimage-server and a separate IIPImage documentation package: iipimage-doc

So, installing IIPImage is now extremely easy. To do so on Ubuntu 12.10, simply install iipimage-server via the graphical package manager or via the command line:

apt-get install iipimage-server

and optionally for the documentation:

apt-get install iipimage-doc

Now restart Apache and you should have the IIPImage server running on http://your.server/iipsrv/iipsrv.fcgi

Only the server is included in this package, so you will need to install a client, such as IIPMooViewer or IIPZoom yourself. Note that the server URL is /iipsrv/iipsrv.fcgi and not the usual /fcgi-bin/iipsrv.fcgi, so don’t forget to set this correctly in the viewer configuration of IIPMooViewer, IIPZoom or whichever viewer you choose to use.

The package is configured to work with both Apache and Lighttpd. If you are using Apache, the configuration file is at /etc/apache2/mods-available/iipsrv.conf. For Lighttpd, /etc/lighttpd/conf-available/20-iipsrv.conf. See the server documentation page for details of the available parameters. The log file is at /var/log/iipsrv.log.

The package has Memcached support built in and will automatically use Memcached for caching if this is running on the host machine. If not, simply start it to allow IIPImage to use it.

To install on the current Debian, you will need to be on the testing (or unstable branch). If you are on testing, add an additional unstable source to /etc/apt/sources.list. See the testing documentation for further details. Make sure you first update your package index, then simply install as above.

If you want JPEG2000 support or don’t want to use the Debian testing or unstable branch, continue to use our stable but “unofficial” 0.9.9 Ubuntu packages that are compatible with Ubuntu 11.10 and 12.04.

Special thanks to Mathieu Malaterre for building and maintaining the official Debian package!


iipsrv now on Github

JPEG2000, New Release, Server No Comments

The latest development code for iipsrv, the IIPImage server is now hosted on Github. This should make things far easier for developers to share code and to submit patches. You can check out the repository here https://github.com/ruven/iipsrv

The latest code has a host of new features including:

  • Exact export resizing for both TIFF and JPEG2000
  • Improved interpolation algorithms for CVT export
  • Extended support for 1, 8, 16 and 32 bit images
  • Gamma support
  • Improved metadata handling
  • Performance improvements
  • Improved Windows compatibility
  • Bug fixes!

So, check it out and get forking!

Virtual Nanoscopy: Ultra-high resolution electron microscopy with IIPImage

Case Study, Client, IIPMooViewer, Server No Comments
Guest Post by Frank Faas & Raimond Ravelli, Department of Molecular Cell Biology, Leiden University Medical Center

The Leiden University Medical Centre in The Netherlands conducts a wide range of scientific research ranging from pure fundamental medical research to applied clinical research. Recently, our group in the Department of Molecular Cell Biology, published a paper entitled Virtual nanoscopy: Generation of ultra-large high resolution electron microscopy maps in the Journal of Cell Biology about a pipeline to acquire, combine and visualize electron microscopy images as panoramas of virtually unlimited size. The technique, named Virtual Nanoscopy, can reveal large macromolecules, organelles, cells, tissue, up to entire animal cross-sections.

Virtual slide of a sagittal section of a Zebrafish, imaged at 1.6 nm/pixel resolution over an area of 1.5 x 0.6 mm2

As a proof of principle we have put online a 281 gigapixel ultrastructural map of a 5 days old zebrafish embryo, which is a commonly used vertebrate model organism. The virtual slide was recorded at 120 kV with a magnification at the detector plane of 9460. A total of 26,434 unbinned 4k × 4k images was collected with a FEI Eagle CCD camera (>8 s readout time full frame) in 4.5 d. The sample was maintained at −1 µm defocus throughout the whole data collection. The resulting slide of 1,461 × 604 µm2 in size consists of 921,600 × 380,928 pixels of 1.6 nm square each.

The image shows the cartilage in slate blue, the eye in sienna, the brain in forest green, the muscles in salmon pink, the liver in indian red, the intestine in dark khaki, the pancreas in plum, the pronephric duct in yellow, the olfactory pit in lime green and the yolk in turquoise. Other examples can be found in the data section of our website.

Virtual nanoscopy has changed the way electron microscopy is carried out in our laboratory. Instead of collecting just a snapshot of part of a cell, we now routinely collect entire cross-sections which provides a much better context of the observed phenomena. Afterwards the data can be browsed as if behind a microscope at nanometer scale, hence the name virtual nanoscopy.

To visualise these images on the web we use the IIPImage server in combination with IIPMooviewer, both of which we adapted slightly to our needs. The images are stored as TIFF tiled image pyramids using the BigTIFF extensions available in libtiff 4.0 with a tile size of 256×256 pixels.

We can only recommend IIPImage and greatly appreciate the quick feedback from the developers. Many thanks to the developers of IIPImage for sharing their creation with the world!

by Frank Faas & Raimond Ravelli, Department of Molecular Cell Biology, Leiden University Medical Center

Responsive Images using IIPImage

Protocol, Server No Comments

The proliferation of mobile devices has made responsive web design one of the hottest topics in web design. Modern web sites need to be usable on a large range of screen resolutions and sizes, from low resolution mobile devices to high resolution monitors. For page layout, various techniques based on fluid layouts, media-queries or combinations of these with HTML5 have been developed, which adapt layout to suit the available screen size.

Responsive Images

However, images themselves also need to adapt to the context, not just for maintaining layout, but also to reduce unnecessary bandwidth. The solve this, the concept of responsive images (or adaptive images) enables the browser to request an image at a size appropriate for the screen resolution. A number of possible solutions have been put forward via the W3C’s Responsive Images Community Group and elsewhere.

Read the rest…

« Previous Entries Next Entries »

Flattr this




Donations appreciated Bookmark and Share
Get IIPImage at SourceForge.net. Fast, secure and Free Open Source software downloads