Woolz

The woolz image processing software was developed by the MRC Clinical Population and Cytogenetics Unit, now the MRC Human Genetics Unit, for fast microscope slide scanning, chromosome image analysis, pattern recognition and a wide range of image processing and analysis problems. The primary authors of the software are Dr. Denis Rutovitz and Dr Jim Piper with many contributions from others. There are a number of papers available describing the underlying structures used in the system which is based on an interval coding scheme for binary image domains and the corresponding grey-values.

The woolz image processing system has been adopted as the standard for the Mouse Atlas Databases and is used for all the reconstructions and anatomical, gene-expression and spatial domains. This is because the interval coding provides significant computing advantages in a range of image processing functions specifically set operationa (union, intersect etc.), morphological operations (erosion, dilation etc.) and other binary image processing such as distance transforms, skeletonization, segmentation and labelling. The woolz structures are also compact and in terms of grey-level data minimise memory usage without compression (which in principle can also be applied).

Woolz and it's associated tools includes a number of libraries, a Java binding, a collection of small programs that can be used in pipeline mode and a number of applications built using Woolz (MA3DView, MAPaint, WlzWarp, WlzViewer and the Woolz IIP3D server).

Woolz is open source software. Some introductory documentation on building, installing and using Woolz are available via a README and FAQ in the Woolz source code. The source code is available from github and online Woolz reference documentation is available here.

Builds of the Woolz image processing system (including the Java binding) and several applications built using Woolz are available for download for various operating systems:


OpenSUSE 11.4 x86_64 (includes Woolz version 1.4.0, WlzIIPSrv version 1.1.0, MA3DView, MAPaint, WlzWarp and WlzViewer) os11.4_64-20130828.tgz
Apple OSX 10.8.4 (Mountain Lion) (includes Woolz version 1.4.0, WlzIIPSrv version 1.1.0, MA3DView, MAPaint) osx10.8.4-20130902.tgz
Apple OSX 10.9.X (Mavericks) Dynamic library and patch for Fiji/ImageJ (update imagej, apply patch to Fiji.app/Contents/Info.plist, create folder Fiji.app/Libraries and copy the dylib libJWlz.dylib to this folder) ImageJWoolzLib.osx10.9.xx.zip
Microsoft Windows (32 bit) (Woolz version 1.4.0 only) win_32-20130904.zip

A few Woolz test objects (many more are available from EMAP and EMAGE) WoolzTestData.20120224.tgz


Woolz References:

  1. Denis Rutovitz, Data structures for operations on digital images, Pictorial Pattern Recognition, Ed. Cheng G C, R S Ledley, D K Pollock and A Rosenfeld, (1968) pp106-133.
  2. Piper, J. and Rutovitz, D, Data structures for image processing in a C language and Unix environment, Pattern Recognition Letters 3 (1985) pp119-129.
  3. Jim Piper, Efficient implementation of skeletonisation using interval coding, Pattern Recognition Letters 3 (1985) pp.389-397
  4. Lloyd, D. and Piper, J. and Rutovitz, D. and Shippey, G, Multiprocessing interval processor for automated cytogenetics, Applied Optics 26 (1987) pp3356-3366.
  5. Jim Piper and Denis Rutovitz, An Investigation of Object-Oriented Programming as the Basis for an Image Processing and Analysis System, MRC HGU report (1988).
  6. Liang Ji, Jim Piper and Jing-Yan Tang, Erosion and Dilation of Binary Images by Arbitrary Structuring Elements Using Interval Coding, Pattern Recognition Letters 9 (1989) pp201-209.