About
The Java Image Processing Pipeline (JIPipe) is a visual programming language based on ImageJ that aims to simplify the creation of macros with familiar ImageJ functionality.
Its features include …
- Over 1000 functions from ImageJ and popular plugins encapsulated into nodes
- Manually curated
- Core ImageJ1 data types (Images, ROIs, tables) and filters/operations
- MorphoLibJ
- FeatureJ
- OMERO (basic functionality)
- Multi-Template Matching
- Automated integration
- Additional functionality
- Deep learning via Cellpose (prediction + training) (see documentation)
- Interactive forms (interactivity during manual analyses)
- Macro and Jython nodes (see documentation)
- Plots via JFreeChart (see documentation)
- Python and R via an environment system (dedicated processes; see documentation)
- Manually curated
- Symbiotic relationship with ImageJ: ImageJ can execute JIPipe nodes via macros/GUI (data transfer between JIPipe <-> ImageJ is extensible via plugins)
- Graph compartmentalization to structure pipelines and make them easier to read
- Standardized data format for automated saving and loading results (currently file-based; API for alternative storage backends is available)
- Table-based data management (constrained tables to simplify the automated data processing)
- Mathematical expression language utilized in various nodes for customization
- Supports both memory-efficient full pipeline runs and data caching for semi-interactive workflow
- Project format that tracks all dependencies (ImageJ update sites, JIPipe plugins), including authors
- Documentation features to aid with the readability of pipelines and simplify the usage in teaching environments
- Freely customizable node names and HTML descriptions
- Comment nodes to highlight specific areas
- Bookmarks
- Node templates (store a set of nodes for re-use inside the project or globally)
- Graph permissions (e.g., prevent the deletion of nodes)
- “Project overview” screen with a custom HTML description, list of bookmarks and configurable list of parameter references, author metadata and citations
- Java API for custom plugins (via SciJava plugin interface) (see documentation)
- GUI editor for custom nodes (convert any pipeline into a node, creating plugin in JSON format; see documentation)
Installation
Activate the JIPipe
update site and restart ImageJ. Navigate to Plugins > JIPipe > JIPipe GUI to start JIPipe.
On the first start, you will likely get prompted to install missing dependencies. Click Resolve and follow the instructions.
We also provide additional downloads, including pre-made packages for Windows and Linux, as well as the *.jar files including dependencies on our website
Documentation
Please visit https://www.jipipe.org/ for (video-)tutorials and documentation.
We published multiple example projects that analyze real bioimage data sets on our website, including …
- The automated quantification of phagocytic measurements from confrontation assays of alveolar macrophages and fungi (Classical image analysis)
- Detection of bacterial growth inside picoliter microfluidic droplets (Classical + deep learning via Cellpose)
- Quantification of glomeruli in 3D light-sheet fluorescence microscopy data of murine kidneys (example data was reduced to 20 slices from 700)
- Measuring the delivery of nanoparticles into liver cells
- Training of a Cellpose-based deep learning model to automatically segment tissue in multispectral optoacoustic tomography (MSOT) data
- Quantification of toxicity to nematodes via overlap tracking