Skip to content

a cutting-edge cell segmentation model specifically designed for single-molecule resolved spatial omics datasets. It addresses the challenge of accurately segmenting individual cells in complex imaging datasets, leveraging a unique approach based on graph neural networks (GNNs).

License

Notifications You must be signed in to change notification settings

EliHei2/segger_dev

Repository files navigation

🍳 Welcome to segger!

pre-commit.ci status

Important note (Dec 2024): As segger is currently undergoing constant development we highly recommending installing segger 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.

How segger Works

Segger Model


Quick Links


Why 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

Challenges in Segmentation

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.


Installation

Important note (Dec 2024): As segger is currently undergoing constant development we highly recommending installing segger directly via github.

Important: PyTorch Geometric Dependencies

Segger relies heavily on PyTorch Geometric for its graph-based operations. One must install its dependencies (such as torch-sparse and torch-scatter) based on their system’s specifications, especially the CUDA and PyTorch versions.

Please follow the official PyTorch Geometric Installation Guide to install the correct versions of torch-sparse, torch-scatter, and other relevant libraries.

Below is a quick guide for installing PyTorch Geometric dependencies for torch 2.4.0:

For CUDA 11.x:

pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-2.4.0+cu121.html

For CUDA 12.x:

pip install pyg_lib torch_scatter torch_sparse torch_cluster torch_spline_conv -f https://data.pyg.org/whl/torch-2.4.0+cu118.html

Afterwards choose the installation method that best suits your needs.

GitHub Installation

For a straightforward local installation from GitHub, clone the repository and install the package using pip:

Pip Installation (RAPIDS and CUDA 11)

For installations requiring RAPIDS and CUDA 11 support, run:

pip install -e ".[rapids11]"

Pip Installation (RAPIDS and CUDA 12)

For installations requiring RAPIDS and CUDA 12 support, run:

pip install -e ".[rapids12]"

Docker Installation

Segger provides an easy-to-use Docker container for those who prefer a containerized environment. To pull the latest Docker image:

docker pull danielunyi42/segger_dev:latest

The Docker image comes with all dependencies packaged, including RAPIDS. It currently supports only CUDA 12.2, and we will soon release a version that supports CUDA 11.8.

Singularity Installation

For users who prefer Singularity, you can pull the Docker image as follows:

singularity pull docker://danielunyi42/segger_dev:latest

Powered by

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

Contributions

segger is open-source and welcomes contributions. Join us in advancing spatial omics segmentation!

About

a cutting-edge cell segmentation model specifically designed for single-molecule resolved spatial omics datasets. It addresses the challenge of accurately segmenting individual cells in complex imaging datasets, leveraging a unique approach based on graph neural networks (GNNs).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages