SainsburyWellcomeCentre / Amap Python
Programming Languages
Projects that are alternatives of or similar to Amap Python
amap-python
Automated mouse atlas propagation
N.B. amap will not be developed further, in favour of brainreg, which is based on bg-atlasapi to support multiple species, atlases and resolutions.
About
amap is python software for registration of brain templates to sample whole-brain microscopy datasets, and subsequent atlas-based segmentation by Adam Tyson, Charly Rousseau & Christian Niedworok from the Margrie Lab at the Sainsbury Wellcome Centre.
This is a Python port of aMAP (originally written in Java), which has been validated against human segmentation.
The actual registration is carried out by NiftyReg.
Documentation can be found here.
Details
The aim of amap is to register the template brain (e.g. from the Allen Reference Atlas) to the sample image. Once this is complete, any other image in the template space can be aligned with the sample (such as region annotations, for segmentation of the sample image). The template to sample transformation can also be inverted, allowing sample images to be aligned in a common coordinate space.
To do this, the template and sample images are filtered, and then registered in a three step process (reorientation, affine registration, and freeform registration.) The resulting transform from template to standard space is then applied to the atlas.
Full details of the process are in the original paper. Overview of the registration process
Installation
pip install amap
Usage
amap was designed with generality in mind, but is currently used for a single application. If anyone has different uses (e.g. requires a different atlas, or the data is in a different format), please get in touch by email or by raising an issue.
Basic usage
amap /path/to/raw/data /path/to/output/directory -x 2 -y 2 -z 5
Arguments
Mandatory
- Path to the directory of the images. Can also be a text file pointing to the files.
- Output directory for all intermediate and final results
Either
-
-x
or--x-pixel-um
Pixel spacing of the data in the first dimension, specified in um. -
-y
or--y-pixel-um
Pixel spacing of the data in the second dimension, specified in um. -
-z
or--z-pixel-um
Pixel spacing of the data in the third dimension, specified in um.
Or
-
--metadata
Metadata file containing pixel sizes (any format supported by micrometa can be used). If both pixel sizes and metadata are provided, the command line arguments will take priority.
Additional options
-
-d
or--downsample
Paths to N additional channels to downsample to the same coordinate space.
Full command-line arguments are available with amap -h
, but please
get in touch if you have any questions.
Citing amap.
If you find amap useful, and use it in your research, please cite the original Nature Communications paper along with this repository:
Adam L. Tyson, Charly V. Rousseau, Christian J. Niedworok and Troy W. Margrie (2019). amap: automatic atlas propagation. doi:10.5281/zenodo.3582162
If you use this, or any other tools in the cellfinder suite, please let us know, and we'd be happy to promote your paper/talk etc.
Visualisation
amap can use the cellfinder visualisation function (built using napari).
Usage
cellfinder_view