2 Installing and Maintaining ImageJ
The downloaded package may not contain the latest bug fixes so it is recommended to upgrade ImageJ right after a first installation. Updating IJ
[?] consists only of running
, which will install the latest
ij.jar in the ImageJ folder (on Linux and Windows) or inside the ImageJ.app (on Mac OS X).
can be used to upgrade (or downgrade) the
ij.jar file to
release updates or
daily builds. Release updates are announced frequently on the
IJ news website and are labelled alphabetically (e.g., v. 1.43m). Typically, these releases contain several new features and bug fixes, described in detail on the
ImageJ News page.
Daily builds, on the other hand, are labelled with numeric sub-indexes (e.g., v. 1.43n4) and are often released without documentation. Nevertheless, if available, release notes for daily builds can be found at
../../source/release-notes.html. When a release cycle ends (v. 1.42 ended with 1.42q, v. 1.43 with 1.43u, etc.) an
installation package is created, downloadable from
../../download.html. Typically, this package is bundled with a small list of add-ons (
Macros↓,
Scripts↓ and
Plugins↓).
2.1 ImageJDistributions
ImageJ alone is not that powerful: it’s real strength is the vast repertoire of
Plugins↓ that extend ImageJ’s functionality beyond its basic core. The many hundreds, probably thousands, freely available plugins from contributors around the world play a pivotal role in ImageJ’s success
[102]. Running
, however, will not update any of the plugins you may have installed.
Below is a list of the most relevant projects that address the seeming difficult task of organizing and maintaining ImageJ beyond its basics. If you are a life scientist and have doubts about which distribution to choose you should opt for
Fiji↓. It is heavily maintained, offers an automatic updater, improved scripting capabilities and ships with powerful plugins. More specialized adaptations of ImageJ are discussed in
Software Packages Built on Top of ImageJ↓.
Fiji
Fiji (
Fiji Is Just ImageJ—Batteries included) is a distribution of ImageJ together with Java, Java 3D and several plugins organized into a coherent menu structure. Citing its developers, “Fiji compares to ImageJ as Ubuntu compares to Linux”. The main focus of Fiji is to assist research in life sciences, targeting image registration, stitching, segmentation, feature extraction and 3D visualization, among others. It also supports many scripting languages (BeanScript, Clojure, Jython, Python, Ruby,
see Scripting in Other Languages↓). Importantly, Fiji ships with a
convenient updater that knows whether your files are up-to-date, obsolete or locally modified.
Comprehensive documentation is available for most of its plugins. The Fiji project was presented publicly for the first time at the
ImageJ User and Developer Conference in November 2008.
MBF ImageJ
The
MBF ImageJ bundle or
ImageJ for Microscopy (formerly
WCIF-ImageJ) features a collection of plugins and macros, collated and organized by Tony Collins at the MacBiophotonics facility, McMaster University. It is accompanied by a
comprehensive manual describing how to use the bundle with light microscopy image data. It is a great resource for microscopists but is not maintained actively, lagging behind the development of core ImageJ.
Note that you can add plugins from MBF ImageJ to Fiji, combining the best of both programs. Actually, you can use multiple ImageJ distributions simultaneously, assemble your own ImageJ bundle by gathering the plugins that best serve your needs (probably, someone else at your institution already started one?) or create symbolic links to share plugins between different installations.
Description of all ImageJ related projects at
ImageDev
2.2 Related Software
2.2.1 Software Packages Built on Top of ImageJ
Bio7 Bio7 is an integrated development environment for ecological modeling with a main focus on individual based modeling and spatially explicit models. Bio7 features: Statistical analysis (using R); Spatial statistics; Fast communication between R and Java; BeanShell and Groovy support; Sensitivity analysis with an embedded flowchart editor and creation of 3D OpenGL (Jogl) models (
see also RImageJ in
ImageJ Interoperability↓).
BoneJ BoneJ is a collection of tools for trabecular geometry and whole bone shape analysis.
μManager Micro-Manager is a software package for control of automated microscopes. It lets you execute common microscope image acquisition strategies such as time-lapses, multi-channel imaging, z-stacks, and combinations thereof.
μManager works with microscopes from all four major manufacturers, most scientific-grade cameras and many peripherals used in microscope imaging.
MRI--CIA MRI Cell Image Analyzer, developed by the Montpellier RIO Imaging facility (CNRS), is a rapid image analysis application development framework, adding visual scripting interface to ImageJ’s capabilities. It can create batch applications as well as interactive applications. The applications include the topics “DNA combing”, “quantification of stained proteins in cells”, “comparison of intensity ratios between nuclei and cytoplasm” and “counting nuclei stained in different channels”.
ObjectJ ObjectJ, the successor of
object-image, supports graphical vector objects that non-destructively mark images on a transparent layer. Vector objects can be placed manually or by macro commands. Composite objects can encapsulate different color-coded marker structures in order to bundle features that belong together. ObjectJ provides back-and-forth navigation between results and images. The results table supports statistics, sorting, color coding, qualifying and macro access.
SalsaJ SalsaJ is a student-friendly software developed specifically for the
EU-HOU project. It is dedicated to image handling and analysis of astronomical images in the classroom. SalsaJ has been translated into several languages.
TrakEM2 TrakEM2 is a program for morphological data mining, three-dimensional modeling and image stitching, registration, editing and annotation
[6]. TrakEM2 is
distributed with Fiji and
capable of:
-
3D modeling Objects in 3D, defined by sequences of contours, or profiles, from which a skin, or mesh, can be constructed, and visualized in 3D.
Relational modeling The extraction of the map that describes links between objects. For example, which neuron contacts which other neurons through how many and which synapses.
2.2.2 ImageJ Interoperability
Several packages exist that allow ImageJ to interact with other applications/environments:
Bitplane Imaris ImarisXT can load and execute ImageJ plugins.
bpImarisAdapter (Windows only and requiring valid licenses for Imaris and ImarisXT) allows the exchange of images between Imaris and ImageJ.
Cell Profiler CellProfiler [9] features
RunImageJ, a module that allows ImageJ plugins to be run in a CellProfiler pipeline.
Icy Icy, an open source community software for bio-imaging, executes ImageJ plugins with almost 100% plugin compatibility.
Knime Knime (
[?]Konstanz Information Miner) contains several image processing nodes (
[?]KNIP) that are capable of executing ImageJ plugins and macros.
MIJ — Matlab—ImageJ bi-directional communication A Java package for bi-directional data exchange between Matlab and ImageJ, allowing to exchange images between the two imaging software. MIJ also allows MATLAB to access all built-in functions of ImageJ as well as third-party ImageJ plugins. The developers provide more information on the
MIJ and
Matlab File Exchange websites.
Fiji↑ features
Miji.m, which makes even more convenient to use the libraries and functions provided by Fiji’s components from within Matlab.
2.3 ImageJ2
ImageJDev is a
federally funded,
multi-institution project dedicated to the development of the next-generation version of ImageJ: “ImageJ2”. ImageJ2 is a complete rewrite of ImageJ, that includes the current, stable version ImageJ (“ImageJ1”) with a compatibility layer so that old-style plugins and macros can run the same as they currently do in ImageJ1. Below is a
summary of the
ImageJDev project aims:
- To create the next generation version of ImageJ and improve its core architecture based on the needs of the community.
- To ensure ImageJ remains useful and relevant to the broadest possible community, maintaining backwards compatibility with ImageJ1 as close to 100% as possible.
- Expand functionality by interfacing ImageJ with existing open-source programs.
- To lead ImageJ development with a clear vision, avoiding duplication of efforts
- To provide a central online resource for ImageJ: program downloads, a plugin repository, developer resources and more.