Skip to content

Pipeline Catalog: Image Analysis

Uploading Imaging Data

Datasets primarily containing image files can be uploaded as either a general or specific dataset type, depending on the way in which the images were produced and the type of analysis which should be run on them.

Dataset Types:

  • Images: General purpose (Analysis: QuPath)
  • CODEX Images: Specific for mIHC on the CODEX platform (Analysis: MCMICRO or QuPath)


Data Type

QuPath is a flexible open-source analysis tool for imaging data. While the software suite can be used for interactive exploration as a desktop application, it can also be executed as a headless command line application.

The process of converting a set of QuPath commands into a script is outlined in the extensive QuPath documentation.

To run a QuPath analysis in Cirro:

  1. Upload the image collection to Cirro as a dataset of the type "Images"
  2. Add the analysis script (see note below) as a reference
  3. Run the QuPath pipeline on the image dataset, selecting the uploaded script

QuPath Script Requirements

When working with images interactively in QuPath, it is very easy to prompt the user to select the input files of interest using a graphical interface. However, the QuPath user interface is not available when running in Cirro. Instead the analysis script should be set up to access input data from a known location.

All of the files from the input dataset will be staged in the working directory as inputs/.

An example snippet of code which will automatically generate a list of files from that directory with the .tif(f) extension is:

File folder = new File("inputs")
files = folder.listFiles().findAll {
    return it.isFile() && 
        !it.getName().endsWith('.ome.tif') &&
        (it.getName().endsWith('.tiff') || it.getName().endsWith('.tif'))

QuPath Optional Arguments

If a QuPath script requires any user input, it can be provided by the user as one or more "Optional Arguments".

The string provided by the user will be passed into the script using the command-line syntax: QuPath script --args {} (where {} will be replaced with the exact string provided by the user).


  • Bankhead, P. et al. QuPath: Open source software for digital pathology image analysis. Scientific Reports (2017).

Cell Segmentation: StarDist

Data Type

StarDist is a deep-learning-based method for the identification of cells from high-resolution microscopy images, developed by Martin Weigert and Uwe Schmidt.

StarDist2D Parameters:

  • threshold: Probability (detection) threshold
  • pixelSize: Resolution for detection
  • channels: Detection Channel
  • cellExpansion: Approximate cells based upon nucleus expansion
  • cellConstrainScale: Constrain cell expansion using nucleus size


  • measurements.csv: Spreadsheet with summary metrics for each of the detected cells
  • cells.geo.json: Location of each detected cell in GeoJson format


  • Uwe Schmidt, Martin Weigert, Coleman Broaddus, and Gene Myers. Cell Detection with Star-convex Polygons. International Conference on Medical Image Computing and Computer-Assisted Intervention (MICCAI), Granada, Spain, September 2018.
  • Bankhead, P. et al. QuPath: Open source software for digital pathology image analysis. Scientific Reports (2017).

MCMICRO: Multiple-choice microscopy

Data Type

MCMICRO is an end-to-end processing pipeline that transforms multi-channel whole-slide images into single-cell data.

mcmicro inputs and outputs



The directory structure of the output files will follow the steps outlined in the figure above:

├── markers.csv
├── raw/
├── illumination/
├── registration/
├── dearray/
├── probability-maps/
├── segmentation/
├── quantification/
└── qc/