Skip to main content

Build unbiased anatomical templates from individual images

Project description

License CI codecov Ruff Code style: black pre-commit

brainglobe-template-builder

Build unbiased anatomical templates from individual images

Overview

brainglobe-template-builder provides a streamlined process to create unbiased anatomical reference images, or templates, from multiple high-resolution brain images. While primarily designed for brain imaging, its versatility extends to any organ with available 3D digital images, especially those produced by 3D volumetric microscopy like serial two-photon tomography (STPT) and light-sheet microscopy (LSM).

brainglobe-template-builder aims to:

Warning 🏗️

  • Early development phase. Stay tuned
  • Interface may undergo changes.

Installation

We recommend installing brainglobe-template-builder within a conda or mamba environment. Instructions assume conda usage, but mamba/micromamba are interchangeable.

conda create -n template-builder -c aramislab -c conda-forge python=3.10 ants parallel
conda activate template-builder

To get the latest development version of brainglobe-template-builder, clone this repository and pip install the package, including all the extra "dev" dependencies:

git clone https://github.com/brainglobe/brainglobe-template-builder
cd brainglobe-template-builder
pip install . -e .[dev]

For zsh users (default shell on macOS):

pip install . -e '.[dev]'

Background

On templates and atlases

In brain imaging, a template serves as a standard reference for brain anatomy, often used interchangeably with the term reference image. By aligning multiple brain images to a common template, researchers can standardize their data, facilitating easier data-sharing, cross-study comparisons, and meta-analyses.

An atlas elevates this concept by annotating a template with regions of interest, often called labels or parcellations. With an atlas, researchers can pinpoint specific brain regions and extract quantitative data from them.

The entire process, from registration to data extraction, hinges on the quality of the template image. A high-quality template can significantly improve registration accuracy and the precision of atlas label annotations.

The aim of brainglobe-template-builder is to assist researchers in constructing such high-quality templates.

Single-subject vs population templates

Templates can be derived in two primary ways. A single-subject template is based on the brain of one individual. While this approach is simpler and may be suitable for some applications, it risks being unrepresentative, as the chosen individual might have unique anatomical features. On the other hand, population templates are constructed by aligning and averaging brain images from multiple subjects. This method captures the anatomical variability present in a population and reduces biases inherent in relying on a single subject. Population templates have become the standard in human MRI studies and are increasingly being adopted for animal brain studies.

Template construction with ANTs

brainglobe-template-builder leverages the power of ANTs (Advanced Normalisation Tools), a widely used software suite for image registration and segmentation.

ANTs includes a template construction piepline - implemented in the antsMultivariateTemplateConstruction2.sh script - that iteratively aligns and averages multiple images to produce an unbiased population template (see this issue for details).

An optimsed implementation of the above pipeline, developed by the CoBra lab, lies at the core of the brainglobe-template-builder's functionality.

License

⚖️ BSD 3-Clause

Package blueprint

This package layout and configuration (including pre-commit hooks and GitHub actions) have been copied from the python-cookiecutter template.

Project details


Download files

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

Source Distribution

brainglobe-template-builder-0.0.1.tar.gz (7.3 kB view details)

Uploaded Source

Built Distribution

File details

Details for the file brainglobe-template-builder-0.0.1.tar.gz.

File metadata

File hashes

Hashes for brainglobe-template-builder-0.0.1.tar.gz
Algorithm Hash digest
SHA256 f59270617c097df959ef10cdfa4d99e6d71c8d391babe6fd04578ff313657f7e
MD5 9e9e1bd695022f6016356ff5370b5d3f
BLAKE2b-256 5e0444185df937c5621d6ba094b9323db8a3ebfbbbb8931e3f30c4d61f400e5a

See more details on using hashes here.

File details

Details for the file brainglobe_template_builder-0.0.1-py3-none-any.whl.

File metadata

File hashes

Hashes for brainglobe_template_builder-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 922b13de78e846ddf963b62090e54d4bfdaa2082e3ece5c4d8400da947db066f
MD5 203c7611f0701bdf95c002ba7044f0ee
BLAKE2b-256 a1cbc1699cd44336d16f93204118fa9c3c3c84b38d43da8ef3f0e7b6aec6bf95

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