Python scripts to use Allen Brain Map data for analysis and rendering
Project description
Brainrender
brainrender
is a python package for the visualization of three dimensional neuro-anatomical data. It can be used to render data from publicly available data set (e.g. Allen Brain atlas) as well as user generated experimental data. The goal of brainrender is to facilitate the exploration and dissemination of neuro-anatomical data by providing a user-friendly platform to create high-quality 3D renderings.
This page is meant as a brief overview of brainrender
's functionality. For more detailed information about how to install and use brainrender
please visit check the brainrender docs.
Installation
You can install brainrender
with:
pip install brainrender
To quickly check that everything worked for your installation, try creating a brainrender scene directly from the terminal.
brainrender TH STR -c
Graphic User Interface
While brainrender doesn't come with a GUI, one is being developed by BrainGlobe. If you follow the link you will find instructions on how to install and use brainglobe's brainrender GUI for creating a scene and adding elements to it.
Usage
brainrender
relies on brainglobe's brainatlas-api to fetch structural and morphological data for various brain atlases, including two mice atlases, one zebrafish atlas and one atlas of the human brain. Much of what brainrender can do works across all of these atlases.
Basic functionality supported by brainrender
inclused the display of anatomical brain regions, the position of labelled cells (e.g. as obtained with tools like cellfinder) and whole-cell neuronal morphological reconstructions. Click on the images below to see aexamples of how to use brainrender:
Brain structures | Labelled cells | Neuron reconstructions |
---|---|---|
brain_regions.py |
labelled_cells2.py |
colored_neurons.py |
Mouse brain-specific
Some of brainrenders functionality is specific to the atlases based on the Allen mouse brain atlas. This includes functionality to render publicly available as well as user-generated data.
Publicly available datasets
Brainrender can be used to download a visualize a neuroanatomical data from several publicly available datasets based on the Allen Atlas of the mouse brain. Anatomical and projection data is downloaded from the Allen Brain Atlas reference atlas and connectivity atlas using the Allen API (© 2015 Allen Institute for Brain Science. Allen Brain Atlas API. Available from: https://brain-map.org/api/index.html) ([1], [2]). Brainrender can also be used to download and visualise gene expression data from the Allen database and neurons morphological data from Janelia's mouse light project (see the neurons browser). [3]
Streamlines | Tractography |
---|---|
streamlines.py |
tractography.py |
gene expression | MouseLight |
---|---|
gene_expression.py |
mouselight.py |
User generated
brainrender
can be used to visualise the location of implanted neuropixel probes with data from SHARP TRACK.
Neuropixel |
---|
sharptrack.py |
Exporting
To facilitate the creation of scientific illustrations, brainrender let's you take screenshots of your scenes, create animated videos and embed interactive visualisations scenes in your website.
To learn how to do it, check these examples:
Other
brainrender
relies on the powerful vedo
(https://vedo.embl.es) (github) rendering engine, thus providing you with the flexibility to render just about anything you might need for your visualisation. As an example, here you can see how to visualise the location of an implanted optic fiber or any other 3d object from an .stl
or .obj
file.
Optic fibre | .stl file visualisation | .obj file visualisation |
---|---|---|
add_optic_cannula.py |
add_object_to_scene.py |
add_object_to_scene.py |
Other atlases
In addition to the atlases supported by brainatlas-api
, you can easily create new Atlas
classes to support the visualisation of your own datasets in brainrender
(see here for more details). As a way of example we provide two such classes. One to visualise insect brains from insectbraindb.org and one for C. Elegans connectome data from Daniel Witvliet's recent preprint.
Insect brains | C. Elegans connectome |
---|---|
insects_brains.py |
celegans_connectome.py |
Getting in touch
If you're unsure how to use brainrender
, please start by having a look at the docs and examples. If you still have unanswered questions, please do not hesitate to get in touch (the easiest way is to open an issue on github).
For any bug report or feature request, please open an issue with a brief description of the matter. Although brainrender can already to much, we are always happy to add more functionality that could be useful for users. If you spot some feature that is missing, we'd love to hear about is so please get in touch!
Referencing brainrender
If you found BrainRender useful and decided to include a rendering in your talks, posters or article, please acknowledge BrainRender's contribution by citing the brainrender preprint as:
Brainrender. A python based software for visualisation of neuroanatomical and morphological data.
Federico Claudi, Adam L. Tyson, Tiago Branco
bioRxiv 2020.02.23.961748; doi: https://doi.org/10.1101/2020.02.23.961748
Similar tools
In R
cocoframer
is an R library for interacting with the Allen's Mouse CCF github repository.
mouselightr
package generates 3D CCF mouse brain plots, along with MouseLight neuron reconstructions github repository
In Matlab
BrainMesh
is a Matlab GUI for rendering 3D mouse brain structure github repository.
References
- [1] Lein, E.S. et al. (2007) Genome-wide atlas of gene expression in the adult mouse brain, Nature 445: 168-176. doi:10.1038/nature05453
- [2] Oh, S.W. et al. (2014) A mesoscale connectome of the mouse brain, Nature 508: 207-214. doi:10.1038/nature13186
- [3] Winnubst, J. et al. (2019) Reconstruction of 1,000 Projection Neurons Reveals New Cell Types and Organization of Long-Range Connectivity in the Mouse Brain, Cell 179: 268-281
- [4] Knowx et al (2018). High-resolution data-driven model of the mouse connectome. -->
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
Built Distribution
Hashes for brainrender-1.0.0.1rc2-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ff2ba756418596be095ac8278c878a1b62e8be338642fab3b0928a94a601ab08 |
|
MD5 | 54122cc23ad22fc27c4eaa5b66622672 |
|
BLAKE2b-256 | 3418f9bef93127ec9d770f7acd5ec351f732ef5d0895719734e24d88dce57fab |