Table 1.
Common open source software for 3D segmentation
Software | Standalone application | Interface | Scriptable | Programming language | Plugin | Method | Type of segmentation | Requires training dataset | Requires GPU | Most suitable for |
---|---|---|---|---|---|---|---|---|---|---|
CellPose (27) | yes | GUI, command line | yes | Python3 | yes | DL | instance | not necessarily | not necessarily | LM and HM – |
cells and nuclei | ||||||||||
CellProfiler (28) | yes | GUI, command line | creates and saves CellProfiler pipelines | – | – | image thresholding | – | no | no | LM and HM – |
cells, nuclei, and organelles | ||||||||||
EmbedSeg (29) | – | – | yes | Python3 | no | DL | instance | yes | yes | LM and HM – |
organisms, cells, nuclei, and organelles | ||||||||||
Ilastik (30) | yes | GUI | creates protocols | – | no | ML, DL | semantic | yesa | no | LM, EM, HM – |
(only for DL) | cells, nuclei, and organelles | |||||||||
Labkit (31) | no | GUI | no | – | yes | ML | semantic | yesa | no | LM, HM – |
cells, nuclei, and organelles | ||||||||||
LimeSeg (32) | no | GUI | no | – | yes | oriented particle-based surfel | – | yesa | yes | LM – |
membranes | ||||||||||
PlantSeg (33) | yes | GUI, command line | yes | Python3 | no | DL | instance | no | yes | LM – |
membranes | ||||||||||
StarDist-3D (25) | – | – | yes | Python3 | yes | DL | instance | yes | yes | LM, HM – |
star-convex-shaped objects (e.g., nuclei) | ||||||||||
Zelda (34) | no | GUI | creates protocols | – | yes | image thresholding | – | no | no | LM, HM – |
cells, nuclei, and organelles | ||||||||||
CLIJ2, CLIJ2-assistantb (35) | no | GUI | yes | ImageJ Macro, Python3 (py-clesperanto), JavaScript (clicy), MATLAB (clatlab) | yes | image thresholding, ML | – | – | yes | LM, EM, HM – |
cells, nuclei, and organelles |
GUI, graphical user interface; EM, electron microscopy; HM, histochemical methods; LM, light microscopy; ML, machine learning; DL, deep learning.
The data set is generated during the workflow using the labeling tools incorporated in the software.
CLIJ2 is a library for image processing that can be installed in FIJI, Icy, and MATLAB. The implementation for Python is named pyclesperanto.