The CU-CellSeg macro implements a "classic" cell segmentation method with a marker-based cell expansion: In short, pixel probability maps for nucleus channels (mandatory) and cell matrix channels (optional) are thresholded and segmented by ImageJ's watershed algorithm (nuclei) and by the "Find maxima..." function (cell matrix) to create individual cellular compartments. Typical nucleus channels would be markers for DAPI, dsDNA, or histone. Cell matrix channels could be cytoplasm markers (beta-tubulin, keratin, vimentin, ...) or membrane markers (V-ATPase, HLA class 1, CD8, ...), or both. If no cell matrix channel is specified (default), cell outlines are generated from the expansion of the nuclei outlines by a fixed radius. Both cell matrix options generate non-overlapping cell outlines.
Figure 1: Segmentation example. Segmentation of the composite image (top). The dsDNA channel was used to segment nuclei (gold). The beta-tubulin channel allowed for the cell expansion (white) with a minimum cellExpansion
of 1.5 µm and a maximum cellExpansionLimit
of 100 µm.
The documentation of our macros is in the corresponding source code: You can view the source code on GitHub by following the links to the macros.
CU-CellSeg requires a recent version of the Fiji image processing package:
- ImageJ2 executable (>= 1.52u)
- Trainable Weka Segmentation plugin (>= 3.2.24)
Any multi-channel image that can be imported with the Bio-Formats plugin can be processed by CU-CellSeg. However, you might have to adjust the suffixes
variable to select the file extensions for your specific instrument. In addition, if the metadata extraction and therefore the slice labeling fails, you will have to refer to individual channels explicitly by slice number, e.g. "1", "14"
instead of using the convenient pattern matching available for labeled channels, e.g. "beta-tubulin", "dsdna"
.
CU-CellSeg requires a recent version of CU-MacroLibrary to be installed.
The example folder contains a single MIBIscope™ image (800x800 px) and two corresponding pixel-classifier models - trained with dsDNA (nu.model) and beta-tubulin (ce.model), respectively.
Running CU-CellSeg with the default userThresholds
and with the cellMatrixChannels
variable set to newArray("beta-tubulin")
, should yield results similar (within numerical precision limits) to the data in the results subfolder. However, the measurements table (>500 MiB) has been compressed with 7-zip before uploading.
CU-CellSeg produces distinct result files for every multi-channel image in the batch:
*.csv
- measurements table*.tif
- overview image*.txt
- log file*.zip
- rois
The MIBIscope™ image was kindly provided by Ionpath for demonstration purposes.