Home

Awesome

IMC data analysis tools

This repository contains an overview of available tools to use for imaging mass cytometry™ (IMC™) data analysis.

Image processing

Common tasks for IMC data analysis first include image pre-processing, segmentation, feature extraction and data export. The initial IMCSegmentationPipeline was developed to allow manual image processing for IMC and other multiplexed imaging data.

Building up on the IMCSegmentationPipeline, the steinbock framework offers user-friendly processing of multi-channel images and supports different segmentation strategies.

IMC Segmentation Pipeline

The ImcSegmentationPipeline uses the imctools python package to handle IMC data. Custom CellProfiler plugins support multi-channel image analysis within CellProfiler. In addition, Ilastik is needed to perform pixel classification.

ImcSegmentationPipeline
ImcSegmentationPipeline Docs

imctools
imctools Docs

ImcPluginsCP
ImcPluginsCP Docs

CellProfiler
CellProfiler Docs

steinbock

The steinbock framework uses the readimc python package for IMC-specific pre-processing. Image processing can be performed via a command line interface.

steinbock
steinbock Docs

readimc
readimc Docs

Viewers for IMC data

The raw IMC data files in Fluidigm® MCD™ format can be read in and visualized using the MCD viewer (only supported on Windows).

A napari plugin is now available to read in raw IMC data files and visualize them in a shared coordinate system:

napari-imc

napari
napari Docs

After processing using the ImcSegmentationPipeline or steinbock, raw MCD files are converted into single-channel TIFF files which can be read in and visualized using histoCAT. histoCAT also allows single-cell and spatial data analysis.

histoCAT
histoCAT Docs
histoCAT: analysis of cell phenotypes and interactions in multiplex image cytometry data

A web-application of histoCAT is available at:

histoCAT-web
histoCAT-web Docs

Downstream analysis

After pre-processing and feature extraction, single-cell expression data can be read into R and analysed using standardized approaches. An overview on how to analyse single-cell data generated by multiplexed imaging can be seen here:

IMC data analysis

Reading in data

The imcRtools package allows reading in spatially annotated single-cell data extracted from IMC raw data using the ImcSegmentationPipeline or steinbock. In R, single-cell data are stored in either a SpatialExperiment or SingleCellExperiment object.

imcRtools
imcRtools Docs

SpatialExperiment
SpatialExperiment Docs

SingleCellExperiment
SingleCellExperiment Docs

Single-cell analysis

Within the Bioconductor project, a number of single-cell analysis tools have been developed. The Orchestrating Single-Cell Analysis with Bioconductor book offers an overview on common analysis strategies. Here, we name a number of individual packages for different tasks.

scran for graph-based clustering

scater for dimensionality reduction and data visualization

dittoSeq for data visualziation

CATALYST for clustering, data visualization and differential analysis

Spatial analysis

The imcRtools package offers a number of functions to perform spatial analysis of cells extracted from multi-channel images.

imcRtools
imcRtools Docs

Image visualization

In R, the cytomapper package allows pixel- and cell-level visualization of multiplexed imaging data.

cytomapper
cytomapper Docs
cytomapper: an R/Bioconductor package for visualization of highly multiplexed imaging data

Example datasets

To access example IMC datasets, we have build the imcdatasets Bioconductor package.

imcdatasets
imcdatasets Docs