IJ Plugins: Image I/O

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.

Plugins and Locations

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

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.

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.

Help / About Plugins

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

Screenshot:Open with preview ...

JAI Reader with Preview plugin

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. 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.