Note: 10x Genomics does not provide support for community-developed tools and makes no guarantees regarding their function or performance. Please contact tool developers with any questions. If you have feedback about Analysis Guides, please email analysis-guides@10xgenomics.com.
Accurate cell segmentation is important for Xenium data analysis. Historically, typical cell segmentation uses a single step “One-Model-Segments-All” approach, meaning one trained deep learning model automatically generates all segmented cells based on the input image. It requires clear stain versus no-stain demarcations in the image to define every single cell in all tissue types. This is rare in biological data. A single step approach cannot transparently deal with cells with partial or no staining information. In addition, a single step approach limits the number of channels in the input image, which is not flexible for multiplex data. These limitations to a single step “One-Model-Segments-All” approach motivated us to develop our multimodal cell segmentation algorithm (see multimodal cell segmentation Technical Note here). Xenium multimodal cell segmentation is transparent. It uses a more principled and interpretable way to infer boundaries when stain appears in cell interiors with no clear membrane boundary. Xenium multimodal cell segmentation is also flexible. It enables convenient utilization of different stains.
The algorithm uses three sequential steps to segment cells: 1) Boundary segmentation (ATP1A1/CD45/E-Cadherin); 2) Interior segmentation (18S rRNA); and 3) Nuclear expansion (DAPI). Please find the details of these steps on our support website here. Final integrated segmentation results can be visualized in Xenium Explorer and users can identify the segmentation approach for each cell in Xenium Explorer.
Seven complementary markers in four channels to identify important cell types in most tissues:
Marker | Purpose |
---|---|
DAPI | Nuclear staining |
ATP1A1, E-Cadherin, and CD45 | Boundary protein staining |
18S rRNA | Interior RNA staining |
alphaSMA and Vimentin | Interior protein staining |
Although one of the challenges of cell segmentation is the lack of independent ground truth, there are still some ways to evaluate the quality:
- We expect the majority of cells are covered by one of the stains for the validated tissues. Check the analysis summary to make sure that the percentage of "Cells segmented by nucleus expansion" is low.
- In Xenium Explorer, visually check how well the inferred cell definition matches with the stain image (one example in the Webinar Video 33:45-36:22).
- Ensure clustering or cell type annotation matches with the expected biology (one example in the Webinar Video 36:42-37:57).
The current algorithm does not work very well for large cells (high tens to hundreds of microns), such as muscle cells. Third-party tools could be helpful in segmentation of those large cells (an example article - Segment Large Stained Cells with Cellpose3). Another limitation is that when cells are extremely dense in the tissue, such as spleen, the high density of nuclei could cause nucleus segmentation failure. We are actively working on improvements for these limitations.
Cell segmentation remains a challenging problem and an open area of research. No one solution can solve all cell segmentation problems. Below are some community-developed tools that might be useful. Xenium Ranger can be used to import third-party segmentations for recreating a Xenium output bundle that can be visualized in Xenium Explorer and loaded by popular single cell and spatial analysis software.
- Image-based segmentation:
a. Cellpose (https://github.com/MouseLand/cellpose, our analysis article)
b. Stardist (https://github.com/stardist/stardist)
c. Mesmer (https://github.com/vanvalenlab/deepcell-tf)
d. QuPath (https://qupath.github.io/) - Transcript-based segmentation:
a. Baysor (https://github.com/kharchenkolab/Baysor, our analysis article)
b. Proseg (https://github.com/dcjones/proseg)
c. BIDCell (https://github.com/SydneyBioX/BIDCell) - Segmentation-free analysis:
a. Ficture (https://github.com/seqscope/ficture)
You can watch the recorded webinar below: