STARLING is a probabilistic model for clustering cells measured with spatial expression assays (e.g. IMC, MIBI, etc...) while accounting for segmentation errors.
It outputs:
- Clusters that account for segmentation errors in the data (i.e. should no longer show implausible marker co-expression)
- Assignments for every cell in the dataset to those clusters
- A segmentation error probability for each cell
A preprint describing the method and introducing a novel benchmarking workflow is available: Lee et al. (2024) Segmentation error aware clustering for highly multiplexed imaging
A tutorial outlining basic usage is available here.
starling can be cloned and installed locally (typically <10 minutes) using access to the Github repository,
git clone https://github.com/camlab-bioml/starling.git && cd starling
After cloning the repository, the next step is to install the required dependencies. There are two recommended methods:
We use virtualenvwrapper (4.8.4) to create and activated a standalone virtual environment for starling:
pip install virtualenvwrapper==4.8.4
mkvirtualenv starling
For convenience, one can install packages in the tested environment:
pip install -r requirements.txt
The virtual environment can be activated and deactivated subsequently:
workon starling
deactivate
Poetry is a packaging and dependency management tool can simplify code development and deployment. If you do not have Poetry installed, you can find instructions here.
Once poetry is installed, navigate to the starling
directory and run poetry install
. This will download the required packages into a virtual environment and install Starling in development mode. The location and state of the virtual environment may depend on your system. For more details, see the documentation.
A list of minimal required packages needed for starling can be found in setup.py if creating a new virtual environment is not an option.
Launch the interactive tutorial: jupyter notebook
This software is authored by: Jett (Yuju) Lee, Conor Klamann, Kieran R Campbell
Lunenfeld-Tanenbaum Research Institute & University of Toronto