ImageJ2 是针对多维图像数据的 ImageJ 的重写,重点是科学理论。其中心目标是扩展 ImageJ 的范式,超越 original ImageJ application 的限制,以支持下一代多维科学理论。
为了确保完整性,ImageJ2 被设计为完全集成到现有的 ImageJ 用户界面中。这允许用户继续以熟悉的方式使用 ImageJ,同时提供根据需要迁移到更强大的新功能的能力。
Fiji 在 ImageJ2 上面构建已经有一段时间了,因此您可能已经熟悉 ImageJ2 的一些功能 - 其中项目的一些功能,例如 Updater 和 Launcher,最初是作为 Fiji 的部分开发的。
ImageJ2 的特点
ImageJ2 提供了许多新特性和功能:
- ImageJ Updater可以轻松保持最新状态,并通过允许额外的Update Sites添加新的插件。
- 通过 SCIFIO 库 (see below) 支持新的和增强的文件格式。
- 更强大的Script Editor,支持多种脚本语言。
- 新命令:
- Plugins › Debug › Dump Stack for debugging when things hang.
- Plugins › Debug › System Information for reporting on versions of installed plugins and libraries.
- 使用 ImageJ2 的基于 ImgLib2 的 N 维数据结构(仍处于测试阶段)。
- 编写参数化命令和脚本:
- Typed inputs and outputs with no dependence on AWT user interface.
- Mix and match ImageJ and ImageJ2 data structures.
- Plugins appear in the menu automatically without plugins.config files.
- Reusable in many contexts: KNIME, CellProfiler, OMERO, headless… ###集成搜索栏

搜索栏可以查找命令,如果您选中相应的组成部分,则可以搜索 ImageJ wiki 以及 Image.sc Forum。
对于高级用户和开发人员,搜索栏支持通过以 ! 开始查询来执行“代码片段”(用于执行任务的单行代码)。任何在 Script Interpreter 中工作的代码都应该可以用作代码片段。
开发人员可以通过编写Searcher插件来扩展搜索栏的功能。
使用 SCIFIO 库图像改进 I/O
对于大多数图像输入任务,ImageJ2 默认使用 SCIFIO 库(科学图像格式输入和输出)。您可以随时通过运行 Edit › Options › ImageJ2 并“打开文件时使用 SCIFIO”选项来更改此行为。
有关更多详细信息,请参阅第§§0§§§页。
ImageJ2 不仅仅是一个应用程序
ImageJ2同样建立在SciJava之上的可重用软件库的集合,使用强大的插件框架来促进快速开发和轻松的用户定制。
以下软件组件库构成了ImageJ2的核心:
- ImageJ Common - 核心图像数据模型,使用ImgLib2。
- ImageJ Ops - 可重用图像处理算法的可扩展框架。
- ImageJ Updater - 更新 ImageJ2 中的各个插件和库的机制。
- ImageJ Legacy - 提供与原始 ImageJ 的完全兼容。
- SciJava Common - 插件、模块和应用程序本身的核心框架。
有关更多详细信息,请参阅第§§0§§§页。
基本原理
最近,ImageJ 开发者社区的一部分多次询问 ImageJ 的未来。该计划已经足够代码成功,将会极大受益于当前的开源软件最佳实践:可公开访问的源存储库、一套带有持续构建集成系统的单元测试、扩展的中央存储库、关于开发如何人员在必要时为这些扩展和核心程序做出明确的指南,以及解决社区功能请求和任务的开发路线图。
听 ImageJ 社区的说法,很明显:
- 开发人员对具有更清晰、更高级 API 的 ImageJ 的下一代版本有大量需求,使得 ImageJ 不仅可以集成独立的分析程序,而且可以在各种环境中集成强大的、可扩展的库。
- ImageJ 用户社区投入了大量的时间和精力在 ImageJ 中开发复杂的工作流程,他们反对任何会破坏它们的更改。因此,改进软件的努力都必须与保持现有代码的兼容性。
- 另外,任何后续版本的 ImageJ 都必须保持社区团结,并且不计分项目。该项目的所有核心组件都将作为 ImageJ 的升级来开发。
- ImageJ社区作为一个整体将大部分受益于组织**并提供程序代码(核心应用程序及其插件)、跟踪错误和功能请求以及更好地利用外部开发人员贡献的集中努力。
有关详细信息,请参阅presentation from the 2010 ImageJ Conference。
资金
ImageJ2 的资金来源不同。有关详细信息,请参阅Funding页面。
图书
##演讲
- 2017年2月16日“ImageJ2有哪些新功能?” [ slides ]
- 2015年9月3日“ImageJ2平台和ImageJ的斐济发行版” [ video, slides ]
- 2012年10月24日“ImageJ2:现状和未来方向”[ slides ]
- 2010年10月27日“ImageJDev:下一代ImageJ”[ slides ]