TUM.ai + Helmholtz
A napari plugin to segment and classify cells.
This plugin provides one-click color normalization, denoising, and Cellpose-based nuclear segmentation.
Key Features
Widget | Function | Input | Output |
---|---|---|---|
Normalize + Denoise | Color normalization and denoising | Bright-field image | Processed image |
Segment | Nuclear segmentation | DAPI/nuclear stain | Masks, centroids, bounding boxes |
Segment + Classify | End-to-end cell analysis | 4-channel images | Cell segmentation + classification |
Quick Start
Installation
pip install neurogenesis-napari
Or install through napari:
- Open napari
- Go to
Plugins
→Install/Uninstall Plugins
- Search for "TumAI Histology Toolkit"
- Click Install
Basic Usage
- Load your images into napari
- Select the appropriate widget from the
Plugins
menu - Choose your image layers from the dropdown menus
- Click the action button to process
The plugin will automatically download required AI models on first use.
Widget Documentation
Normalize + Denoise
Purpose: Standardizes color variations and reduces noise in bright-field images.
Usage
- Load a bright-field image into napari
- Open
Plugins
→Normalize and Denoise
- Select your bright-field image from the BF dropdown
- Click "Normalize + Denoise"
What it does
- Color Normalization: Adjusts colors against an internal reference to standardize appearance across different images/scanners
- Denoising: Removes noise while preserving important cellular structures
- Output: Creates a new layer named
{original_name}_denoised
Segment
Purpose: Detects and segments individual cell nuclei using Cellpose.
Usage
- Load a nuclear staining image (DAPI) into napari
- Open
Plugins
→Segment
- Select your nuclear image from the DAPI dropdown
- Optionally adjust:
- GPU: Enable for faster processing
- Model: Choose Cellpose model (
cyto3
default)
- Click "Segment Nuclei"
What it does
- Segmentation: Uses Cellpose to identify individual nuclei
- Creates 3 new layers:
{name}_masks
: Segmentation masks{name}_centroids
: Center points of each detected cell{name}_bboxes
: Bounding boxes around each cell
Segment + Classify
Purpose: Complete pipeline that segments nuclei AND classifies cell types in multi-channel images.
Usage
- Load a 4-channel image into napari as separate layers:
- DAPI: Nuclear staining
- Tuj1: β-III-tubulin
- RFP: Red fluorescent protein marker
- BF: Bright-field
- Open
Plugins
→Segment and Classify
- Select each channel from the respective dropdowns
- Choose Reuse cached:
- True: Reuse previous segmentation (faster) from the segment widget
- False: Perform fresh segmentation
- Click "Segment + Classify"
What it does
- Segmentation: Does segmentation same as the segment widget above
- Feature extraction: Uses a Variational Autoencoder (VAE) to extract features
- Classification: Nearest-centroid classifier assigns cell types
Output
Creates colored bounding box layers for each detected cell type:
- 🟣 Astrocytes (magenta boxes)
- ⚫ Dead Cells (gray boxes)
- 🔵 Neurons (cyan boxes)
- 🟢 OPCs (lime boxes)
Layer names show counts: {count}_{cell_type}s
(e.g., 23_Neurons
)
Supported Image Formats
.czi
(via napari-czifile2).png
,.jpg
Version:
- 0.1.0a1.post2
Last updated:
- 2025-07-29
First released:
- 2025-07-29
License:
- MIT
Operating system:
- Information not submitted
Requirements:
- cellpose==3.1.1.2
- huggingface-hub>=0.33.0
- magicgui
- napari-czifile2
- napari[pyqt5]
- numpy==1.26.4
- opencv-python==4.11.0.86
- pandas==2.3.0
- qtpy
- sam2==1.1.0
- scikit-image==0.25.2
- scikit-learn==1.2.2
- tifffile<=2023.4.12
- torch==2.7.1