1. Image IO Plugin Bundle


Image I/O plugins add to ImageJ support for additional image file formats and their variants. Most important additions include:

Extended TIFF support
  • Reading of compressed and tiled TIFF files

  • Reading of TIFF images with 1 bit, 8 bit, 16 bit, 32 bit, and float pixel formats from compressed and tiled files. Images are converted to closest corresponding ImageProcessor representation (). Note that related set of JIMI plugins converts all images to 8 bit images (ByteProcessor) regardless of their actual pixel formats and does not support tiled images.

  • Saving as compressed TIFF; supports Packbit, JPEG, and ZIP compression. Saving with LZW compression is not supported for the usual reason of the patent on the algorithm.

  • Saving of binary images in 1 bit compressed TIFF format. Compared to saving as uncompressed 8bit images can get 1:100 or higher compression ratios.

Correct reading of 16bit PNG images (without conversion to 8 bit)
Saving in PNG format, includes support for compression.
Saving in PNM format.

Image I/O plugins can read/write image calibration information from TIFF files. Standard TIFF image calibration tags are supported (X_RESOLUTION, Y_RESOLUTION, RESOLUTION_UNIT).

Additionally Image I/O can read images in BMP, FlashPiX, GIF, JPEG, PNG, and PNM formats; and save images in BMP, and JPEG formats.

Image I/O makes use of Java Advance Imaging (JAI) codecs released by SUN as uncommitted source code for JAI 1.1.1 codecs . The plugin bundle is completely self contained. All used codec classes are included in the bundle and there is no need to install JAI itself to use the bundle.

1.1. Plugins and Locations

Image IO plugins are inserted into ImageJ menu in the following locations.

1.1.1. File / Save As

PNG ...: Shortcut for saving images in PNG format using default compression level.
PNM ...: Shortcut for saving images in PNM format.
Compressed TIFF ...: Shortcut for saving images in TIFF format. Option dialog allows selection of compression type. Binary images are auto detected and saved in 1 bit format significantly increasing compression ratio.

1.1.2. Plugins / Image IO

Open: shows standard ImageJ open dialog and reads selected file in any of the file formats supported by IMAGE I/O (BMP, FlashPiX, GIF, JPEG, PNG, PNM, TIFF).
Open with preview: shows a custom open dialog with an image preview. File filter can be used to limit files to a particular format. Image files are filtered by checking a magic number in file header; file name extension is ignored.
Save as: shows custom save dialog. Selected file filter determines format used to save an image. Depending on the selected file format, the user can select additional save options, for instance, image compression type.
Remove obsolete JAI Image IO plugins: Uninstalls obsolete JAI Image IO plugins v.1.1 and earlier that can prevent Image I/O v.1.2 and later from functioning correctly.

1.1.3. Help / About Plugins

Image IO ...: Information about Image IO plugin bundle similar to this page.

1.2. Screenshot: Open with preview ...

1.3. System Requirements

Image I/O plugin bundle requires ImageJ 1.31s and Java 1.4 or later. It may work with 1.3. It was tested with ImageJ 1.31u and Java 1.4 and 1.5, on Linux and Windows.

1.4. Installation

  1. Download latest binary release of Image IO. Following the download link and look for ij-ImageIO_.jar with highest release number.

  2. Copy ij-ImageIO_.jar to ImageJ plugins directory. You can find location of ImageJ plugins directory by selecting "Plugins"/"Utilities"/"ImageJ Properties", look for value of tag "plugins dir" near the bottom of the displayed Properties' window.

  3. Restart ImageJ to load newly installed plugins.

  4. If you have installed Image IO plugin bundle version 1.1 or earlier, it should be removed before Image IO v.1.2 and later can work properly. This due to the new support for plugins packaged in JARs introduces in ImageJ 1.31s: it is incompatible with JAR support of JAI Image I/O 1.1 and earlier.

    The obsolete JAI plugins can be removed using the "Remove obsolete JAI Image IO plugins" plugin included with Image I/O distribution v.1.2 and later.

1.5. Known Issues

There may be a problem running the "Help/About Plugins/Image IO" plugin. At the time of release the newest version of ImageJ (1.31u, 2004-01-16) had problems loading resources from plugin JAR files (like test of the HTML content of ij-ImageIO help file). This may be resolved in newer versions of ImageJ. A work around is to add ij-ImageIO_.jar to ImageJ class path explicitely. You can do that by modifying system CLASSPATH variable or using -classpath command line option while starting ImageJ.

1.6. Links

Image IO plugins home page (http://ij-plugins.sourceforge.net/plugins/imageio)
Download of Image I/O plugin bundle (http://sourceforge.net/project/showfiles.php?group_id=44711&package_id=37687)
List of additional input/output plugins for ImageJ (http://rsb.info.nih.gov/ij/plugins)
Uncommitted source code for JAI 1.1.1 codecs (http://developer.java.sun.com/developer/sampsource/jai)
Java Advance Imaging (http://java.sun.com/products/java-media/jai)