Important note (Dec 2024): As segger is currently undergoing constant development, we highly recommend installing it directly via GitHub.
segger is a cutting-edge tool for cell segmentation in single-molecule spatial omics datasets. By leveraging graph neural networks (GNNs) and heterogeneous graphs, segger offers unmatched accuracy and scalability.
Some illustrations (cells and data) are borrowed from Biorender and BIDCell's paper.
-
💾 Installation Guide
Get started with installing segger on your machine. -
📖 User Guide
Learn how to use segger for cell segmentation tasks. -
💻 Command-Line Interface (CLI)
Explore the CLI options for working with segger. -
📚 API Reference
Dive into the detailed API documentation for advanced usage. -
📝 Sample Workflow
Check out our tutorial showcasing a sample workflow with segger.
- Highly parallelizable – Optimized for multi-GPU environments
- Fast and efficient – Trains in a fraction of the time compared to alternatives
- Transfer learning – Easily adaptable to new datasets and technologies
Spatial omics segmentation faces issues like:
- Over/Under-segmentation
- Transcript contamination
- Scalability limitations
segger tackles these with a graph-based approach, achieving superior segmentation accuracy.
Important note (Dec 2024): As segger is currently undergoing constant development, we highly recommend installing it directly via GitHub.
For a straightforward local installation from GitHub, clone the repository and install the package using pip
:
git clone https://github.com/EliHei2/segger_dev.git
cd segger_dev
pip install -e ".[cuda12]"
segger requires CUDA 11 or CUDA 12 for GPU acceleration. You can find more detailed information in our Installation Guide. To avoid dependency conflicts, we recommend installing segger in a virtual environment or using a containerized environment.
We provide an easy-to-use Docker container for those who prefer a containerized environment. To pull and run the Docker image:
docker pull danielunyi42/segger_dev:cuda121
docker run --gpus all -it danielunyi42/segger_dev:cuda121
The official Docker image comes with all dependencies pre-installed, including the CUDA toolkit, PyTorch, and CuPy. The current images support CUDA 11.8 and CUDA 12.1, which can be specified in the image tag.
- PyTorch Lightning & PyTorch Geometric: Enables fast, efficient graph neural network (GNN) implementation for heterogeneous graphs.
- Dask: Scalable parallel processing and distributed task scheduling, ideal for handling large transcriptomic datasets.
- Shapely & Geopandas: Utilized for spatial operations such as polygon creation, scaling, and spatial relationship computations.
- RAPIDS: Provides GPU-accelerated computation for tasks like k-nearest neighbors (KNN) graph construction.
- AnnData & Scanpy: Efficient processing for single-cell datasets.
- SciPy: Facilitates spatial graph construction, including distance metrics and convex hull calculations for transcript clustering.
segger is open-source and welcomes contributions. Join us in advancing spatial omics segmentation!
-
Source Code
GitHub -
Bug Tracker
Report Issues -
Full Documentation
API Reference