Skip to main content

Automated 3D cell detection and registration of whole-brain images

Project description

Python Version PyPI Downloads Wheel Development Status Tests Coverage Status Code style: black Contributions Website Twitter

Cellfinder

Whole-brain cell detection, registration and analysis.

N.B. If you want to just use the cell detection part of cellfinder, please see the standalone cellfinder-core package, or the cellfinder plugin for napari.


cellfinder is a collection of tools developed by Adam Tyson, Charly Rousseau and Christian Niedworok in the Margrie Lab, generously supported by the Sainsbury Wellcome Centre.

cellfinder is a designed for the analysis of whole-brain imaging data such as serial-section imaging and lightsheet imaging in cleared tissue. The aim is to provide a single solution for:

  • Cell detection (initial cell candidate detection and refinement using deep learning) (using cellfinder-core)
  • Atlas registration (using brainreg)
  • Analysis of cell positions in a common space

Installation is with pip install cellfinder.


Basic usage:

cellfinder -s signal_images -b background_images -o output_dir --metadata metadata

Full documentation can be found here. In particular, please see the data requirements.

This software is at a very early stage, and was written with our data in mind. Over time we hope to support other data types/formats. If you have any issues, please get in touch on the forum or by raising an issue.

If you have any other questions, please send an email.


Illustration

Introduction

cellfinder takes a stitched, but otherwise raw whole-brain dataset with at least two channels:

  • Background channel (i.e. autofluorescence)
  • Signal channel, the one with the cells to be detected:

raw Raw coronal serial two-photon mouse brain image showing labelled cells

Cell candidate detection

Classical image analysis (e.g. filters, thresholding) is used to find cell-like objects (with false positives):

raw Candidate cells (including many artefacts)

Cell candidate classification

A deep-learning network (ResNet) is used to classify cell candidates as true cells or artefacts:

raw Cassified cell candidates. Yellow - cells, Blue - artefacts

Registration and segmentation (brainreg)

Using brainreg, cellfinder aligns a template brain and atlas annotations (e.g. the Allen Reference Atlas, ARA) to the sample allowing detected cells to be assigned a brain region.

This transformation can be inverted, allowing detected cells to be transformed to a standard anatomical space.

raw ARA overlaid on sample image

Analysis of cell positions in a common anatomical space

Registration to a template allows for powerful group-level analysis of cellular disributions. (Example to come)

Examples

(more to come)

Tracing of inputs to retrosplenial cortex (RSP)

Input cell somas detected by cellfinder, aligned to the Allen Reference Atlas, and visualised in brainrender along with RSP.

brainrender

Data courtesy of Sepiedeh Keshavarzi and Chryssanthi Tsitoura. Details here

Visualisation

cellfinder comes with a plugin (brainglobe-napari-io) for napari to view your data

Usage

  • Open napari (however you normally do it, but typically just type napari into your terminal, or click on your desktop icon)

Load cellfinder XML file

  • Load your raw data (drag and drop the data directories into napari, one at a time)
  • Drag and drop your cellfinder XML file (e.g. cell_classification.xml) into napari.

Load cellfinder directory

  • Load your raw data (drag and drop the data directories into napari, one at a time)
  • Drag and drop your cellfinder output directory into napari.

The plugin will then load your detected cells (in yellow) and the rejected cell candidates (in blue). If you carried out registration, then these results will be overlaid (similarly to the loading brainreg data, but transformed to the coordinate space of your raw data).

load_data Loading raw data

load_data Loading cellfinder results

Citing cellfinder

If you find cellfinder useful, and use it in your research, please cite the preprint outlining the cell detection algorithm:

Tyson, A. L., Rousseau, C. V., Niedworok, C. J., Keshavarzi, S., Tsitoura, C., Cossell, L., Strom, M. and Margrie, T. W. (2021) “A deep learning algorithm for 3D cell detection in whole mouse brain image datasets’ PLOS Computational Biology, 17(5), e1009074 https://doi.org/10.1371/journal.pcbi.1009074

If you use any of the image registration functions in cellfinder, please also cite brainreg.

If you use this, or any other tools in the brainglobe suite, please let us know, and we'd be happy to promote your paper/talk etc.


The BrainGlobe project is generously supported by the Sainsbury Wellcome Centre and the Institute of Neuroscience, Technical University of Munich, with funding from Wellcome, the Gatsby Charitable Foundation and the Munich Cluster for Systems Neurology - Synergy.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cellfinder-0.4.20rc0.tar.gz (35.4 kB view details)

Uploaded Source

Built Distribution

cellfinder-0.4.20rc0-py3-none-any.whl (33.6 kB view details)

Uploaded Python 3

File details

Details for the file cellfinder-0.4.20rc0.tar.gz.

File metadata

  • Download URL: cellfinder-0.4.20rc0.tar.gz
  • Upload date:
  • Size: 35.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1

File hashes

Hashes for cellfinder-0.4.20rc0.tar.gz
Algorithm Hash digest
SHA256 e1ba1a48fd36f9f31961d0a5d5cabd549bc889e76a95ecaca15572ee715f5aae
MD5 34a937cb06299d26625596be0dac0daa
BLAKE2b-256 f1e8540a9153367444606937e1362217559808ad63472cb8c9ee81a9f7b2b20d

See more details on using hashes here.

File details

Details for the file cellfinder-0.4.20rc0-py3-none-any.whl.

File metadata

  • Download URL: cellfinder-0.4.20rc0-py3-none-any.whl
  • Upload date:
  • Size: 33.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.7.1 importlib_metadata/4.10.1 pkginfo/1.8.2 requests/2.27.1 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.10.1

File hashes

Hashes for cellfinder-0.4.20rc0-py3-none-any.whl
Algorithm Hash digest
SHA256 8e06720f8f7760d1bf61502dbc172e23617915dbabe06de2b4da4229d1734e6b
MD5 5ea7815ecce5b688763ffc2a969bd572
BLAKE2b-256 0406c7963ed5e97be11e6ccbf29ae3bf3ea57b9451ac10f0f42452b3f511fe4f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page