ImageJ is an image analysis program extensively used in the biological sciences and beyond. Due to its ease of use, recordable macro language, and extensible plug-in architecture, ImageJ enjoys contributions from non-programmers, amateur programmers, and professional developers alike---a feat that arguably no other image analysis package, commercial or open source, has yet achieved. Enabling such a diversity of contributors has resulted in a unique community that spans the biological and physical sciences, making ImageJ an invaluable resource across countless disciplines. However, a rapidly growing user base, diverging plugin suites, and technical limitations have revealed a clear need for a concerted software engineering effort to support emerging imaging paradigms, to ensure the software's ability to handle the requirements of modern science. Due to these new and emerging challenges in scientific imaging, ImageJ at a critical development crossroads. #R##N#We present ImageJ2, a total redesign of ImageJ offering a host of new functionality. It separates concerns, fully decoupling the data model from the user interface. It emphasizes integration with external applications to maximize interoperability. Its robust new plugin framework allows everything from image formats, to scripting languages, to visualization to be extended by the community. The redesigned data model supports arbitrarily large, N-dimensional datasets, which are increasingly common in modern image acquisition. Despite the scope of these changes, backwards compatibility is maintained such that this new functionality can be seamlessly integrated with the classic ImageJ interface, allowing users and developers to migrate to these new methods at their own pace. ImageJ2 provides a framework adaptable to future needs, enabling continued success and innovation.
['Curtis T. Rueden', 'Johannes Schindelin', 'Mark Hiner', 'Barry DeZonia', 'Alison E. Walter', 'Kevin W. Eliceiri']
ImageJ2: ImageJ for the next generation of scientific image data