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.
-
💾 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