1 of 39

Introduction to the ImageJ Ecosystem

Edward L. Evans III, Ph.D

Eliceiri Lab / LOCI

elevans2@wisc.edu

2 of 39

Outline

  • What is ImageJ?
    • Understanding the ImageJ/Fiji family
  • What can ImageJ/Fiji do?
    • Plugins: Biovoxxel, StarDist etc
    • Scripting and automation with macros and scripts
  • Learning more about ImageJ/Fiji
    • Online resources
  • ImageJ on other platforms
    • PyImageJ
    • KNIME
    • JIPipe
  • Additional resources
  • Bonus: Demos!

3 of 39

What is ImageJ?

  • Primarily* a desktop application for scientific image analysis.
  • Reusable set of libraries and shared framework for image analysis
  • Open source with strong community support.
  • Written in Java, enabling ImageJ to run in diverse computing environments.
  • Multiple “flavors” of ImageJ:

* ImageJ2’s headless feature allows ImageJ2 to run on distributed computing networks

4 of 39

What is ImageJ?

  • Stable version of the original ImageJ (1.x) has been continuously developed since 1997.
    • Originally developed by Wayne Rasband in 1997 as a cross-platform version of “NIH Image”.
  • ImageJ2 includes the latest version of ImageJ (1.x) with a legacy layer for backwards compatibility.
    • The legacy layer enables transparent conversions between ImageJ and ImageJ2 data structures as needed.
  • Fiji is a “batteries included” distribution of ImageJ2.

Wayne Rasband

5 of 39

What is Fiji?

Fiji Is Just ImageJ

  • Fiji is a “batteries included” distribution of ImageJ2.
  • Advantages for end users:
    • Easy to install (Linux, MacOS, Windows)
    • Automatic updates
    • Bundles a lot of plugins (and more via update sites!)
    • Comprehensive documentation
    • Visit https://imagej.net/software/imagej2/ for more details
  • Advantages for developers:
    • Open source project (GitHub)
    • Expanded language support (Groovy, Python, JavaScript, . etc…) eases the development of scripts and plugins

6 of 39

What can Fiji do?

Stitching

Big Data

Segmentation

Tracking

7 of 39

Plugins

What is a plugin?

Plugins are special-purpose software components that extend the functionality of the ImageJ ecosystem.

There are four tiers of plugins:

  1. Core ImageJ plugins (1000+)
  2. Core Fiji plugins (1000+)
  3. Plugins installable from Update Sites.
  4. Additional manually-installed plugins available from various online sources.

8 of 39

Fiji Plugin: General image processing with Biovoxxel

BioVoxxel Toolbox

9 of 39

Fiji Plugin: MorphoLibJ

Features:

  • Morphological filtering for 2D/3D and binary or grey level images: erosion & dilation, closing & opening, morphological gradient & Laplacian, top-hat, etc…
  • Morphological reconstruction for 2D/3D and binary or grey level images, allowing fast detection of regional or extended extrema, border removal, hole filling, attribute filtering, etc…
  • Watershed segmentation + GUI, making it possible to segment 2D/3D images.
  • 2D/3D measurements: photometric (intensity) and morphometric measurements such as volume, surface area, inertia ellipse/ellipsoid, etc…
  • Binary / label images utilities for removing or keeping largest connected component, perform size opening, fill holes, remove borders, etc…

10 of 39

Fiji Plugin: TrackMate

Features:

  • Single particle tracking
  • Simple/intuitive interface
  • Segmentation, filtering, particle-linking process visualized in 2D or 3D.

11 of 39

Fiji Plugin: Trainable Weka Segmentation

Features:

  • A Weka machine learning based plugin that produces pixel-based segmentation results.
  • Can segment 2D and 3D data.

12 of 39

Fiji Plugin: StarDist

Features:

  • Detects cell/nuclei with star-convex shape priors (i.e. “circular” objects)
  • Can be used to apply pre-trained models to new 2D/2D+time images.
  • Full featured Python package for training new models and 3D data

13 of 39

Fiji Plugin: Coloc 2

Features:

  • Pixel intensity correlation over space methods of Pearson, Manders, Costes, Li and more
  • Scatterplots, analysis, automatic thresholding and statistical significance testing
  • Supports ROIs.

14 of 39

Registration...

15 of 39

Registration...

16 of 39

Registration...

17 of 39

Registration...

18 of 39

Scripting and automation

Why use scripts?

  • Reproducible science
  • Document your work
  • Automate your analysis
  • Share with the world

Supported Languages:

Groovy, ImageJ Macro, Python(Jython), JavaScript, Ruby(JRuby), Lisp(Clojure), R(Renjin), Java, Matlab, BeanShell, Scala

19 of 39

Scripting and automation

ImageJ Macro language:

  • Less powerful
  • Easy to learn and use

ImageJ Macro Recorder

https://imagej.net/scripting/macro#the-recorder

Built-in Macro Functions list

https://imagej.net/ij/developer/macro/functions.html

20 of 39

Where to learn more?

21 of 39

Search on imagej.net to learn more about your topic

22 of 39

The original ImageJ documentation at imagej.org

  • Original ImageJ user guide
  • Extensive documentation on commands and macros
  • Tutorials, examples, image processing guides

23 of 39

Learn and teach others on the image.sc forum

24 of 39

ImageJ and more on the forum!

  • There is more than just ImageJ help on the forum!
  • Have a basic image processing question? Ask the forum!

25 of 39

ImageJ on other platforms

26 of 39

PyImageJ: A library for integrating ImageJ and Python

PyImageJ:

  • A Python based package that integrates ImageJ into the Python ecosystem.
  • Use ImageJ (and plugins) with Python packages like: NumPy, SciPy, scikit-image, CellProfiler, OpenCV, ITK and more
  • Full support for existing macros and scripts in all supported languages.
  • Headless and interactive modes.

Rueden et al. Nature Methods 2022

27 of 39

ImageJ integration in Konstanz Information Miner (KNIME)

  • Java-based program
  • Robust image analysis operations
  • Supports macros, scripts and plugins
  • Java-based program
  • Intuitive visual workflow model for programing
  • Powerful data organization tools

28 of 39

Example workflow: Nuclear Ring Segmentation, Analysis and Tracking (NR-SAT)

  • Connect nodes to flow data between ImageJ functions
    • Intuitive user interface
  • Powerful data frame tools (similar to pandas)
    • Transpose
    • Join
    • Concatenate
  • Macro and script support
    • Use your existing macros and scripts
  • Live data interrogation
    • Examine your data at any point in the workflow
  • Discover and share workflows on the KNIME Hub
    • https://hub.knime.com/

Evans et al. Viruses 2022

29 of 39

Example workflow: Nuclear Ring Segmentation, Analysis and Tracking (NR-SAT)

Evans et al. Viruses 2022

30 of 39

Example workflow: Nuclear Ring Segmentation, Analysis and Tracking (NR-SAT)

Evans et al. Viruses 2022

31 of 39

Example workflow: Nuclear Ring Segmentation, Analysis and Tracking (NR-SAT)

Evans et al. Viruses 2022

32 of 39

Example workflow: Nuclear Ring Segmentation, Analysis and Tracking (NR-SAT)

Evans et al. Viruses 2022

33 of 39

Example workflow: Nuclear Ring Segmentation, Analysis and Tracking (NR-SAT)

Evans et al. Viruses 2022

34 of 39

JIPipe: visual batch processing for ImageJ

  • Create ImageJ macros without any programming
  • “Flowchart” data flow scheme
  • Extensive documentation
    • Example and tutorials
    • Developer documentation

https://www.jipipe.org/

Gerst et al. Nature Methods 2023

35 of 39

Center for Open Bioimage Analysis

36 of 39

COBA: Driving Biological Projects

  • Check out what we do!
  • Download and use macros, scripts and workflows
  • Collaborate with us!

37 of 39

BioImaging North America (BINA)

6 Working Groups: Communications, Corporate Partners, Diversity, Equity & Inclusion, Image Informatics, Quality Control & Data Management, Training & Education

www.BioImagingNorthAmerica.org/join

contact@bioimagingna.org

@BioimagingNA

Events and Newsletter each month!

Mission: Engaging bioimaging scientists across North America by creating an inclusive and supportive community to share, advance and succeed together.

38 of 39

Additional resources

  • Help from the community - The Scientific Community Image Forum:
    • https://forum.image.sc
  • ImageJ User Guides:
  • Additional workshops and presentations
  • Other great resources:

39 of 39

Acknowledgements

Eliceiri Lab

Curtis Rueden

Mark Hiner

Gabe Selzer

and more…

Curtis Rueden

Mark Hiner

Funding:

  • Morgridge postdoctoral fellowship
  • Center for Open Bioimage Analysis (COBA)

Gabe Selzer