ITK integration with ImageJ
Although ITK is a C++ application, many ITK functions are available in ImageJ through the SimpleITK Java compatibility layer.
Enabling this functionality in ImageJ is simply a matter of turning on the ImageJ-ITK update site . Note that this will trigger a large download, as it requires the SimpleITK native library (up to a few hundred MB).
What’s on the update site?
SimpleITK 0.90 is distributed with this update. After update all SimpleITK classes can be called from the script editor.
@itkImage parameters in scripts, ImageJ
Dataset objects will be automatically converted to SimpleITK
There are several templates in the Script Editor demonstrating ITK use. The following example shows how to perform Otsu multilevel threshold using SimpleITK.
# @itkImage image # @OUTPUT Dataset output from org.itk.simple import OtsuMultipleThresholdsImageFilter otsu = OtsuMultipleThresholdsImageFilter() # call otsu using simple itk wrapper output = otsu.execute(image, 2, 0, 255, True)
- GitHub (we welcome pull requests)
- An ImageJ2 Op that uses SimpleITK
- An ImageJ2 command (plugin that adds a menu item) for the Op.
To cite ITK, please use the following publication:
Yoo, T.S.; Ackerman, M. J. & Lorensen, W. E. et al. (2002), “Engineering and algorithm design for an image processing API: a technical report on ITK-the insight toolkit”, Studies in health technology and informatics: 586-592, PMID 15458157 (on Google Scholar).