Brain-Observatory-Toolbox

A MATLAB toolbox for interacting with the Allen Brain Observatory
203 Downloads
Updated 27 Apr 2024

Open in MATLAB Online View Brain-Observatory-Toolbox on File Exchange

Brain Observatory Toolbox

A MATLAB toolbox for accessing and using the neural recording public datasets from the Allen Brain Observatory1.

Getting Started

Quickstart examples for each Allen Brain Observatory dataset

Data releases from the Allen Brain Observatory include four datasets of neural activity recordings during presentations of visual stimuli to awake mice. Quickstart examples for each can be viewed, and readily run in MATLAB Online:

Dataset Recordings Experiment Details Quickstart Example
Visual Coding 2P 2 🔬 "ophys"a Passivec details 👀 (view) ▶️ (run)
Visual Coding Neuropixels 3 ⚡ "ephys"b Passivec details 👀 (view) ▶️ (run)
Visual Behavior 2P 4 🔬 "ophys"a Actived details 👀 (view) ▶️ (run)
Visual Behavior Neuropixels 5 ⚡ "ephys"b Actived details (coming soon)

a two-photon (2P) calcium imaging b large-scale neural probe recordings c presentation of various visual stimuli w/ untrained subjects d visual change detection task w/ trained subjects

Technical white papers (see Details) provide information about the experimental protocols and computational pipelines for each dataset.

Three lines of code

These three lines of code illustrate the core workflow of the Brain Observatory Toolbox to access neural data, which is common across all datasets:

ophysSessionTable = bot.listSessions('VisualCoding', 'Ophys')
exampleSession = bot.getSessions( ophysSessionTable(1, :) )
dff = exampleSession.fluorescence_traces_dff

In the first line, listSessions lists available items (of type Session) from the Visual Coding 2P dataset. In the second line, getSessions creates an object to interact with the first listed item. The third line reterieves from the object fully preprocessed fluorescence traces representing the neural recording data. For further explanation, see Key Concepts and/or explore tutorials.

Going Further

Demonstrations illustrating neural data analysis

Demonstration examples illustrate neural data analysis concepts and practice while using the Brain Observatory Toolbox:

Dataset Demonstration Example About
Visual Coding 2P 👀 (view) ▶️ (run) TODO
Visual Coding Neuropixels 👀 (view) (*) TODO

(*) These data-intensive examples are currently recommended for use on local machines or user-configured cloud instances only, not for MATLAB Online

Tutorials explaining access of dataset contents

Tutorial examples provide step-by-step guidance for using the Brain Observatory Toolbox to access and understand the metadata, processed data, and (where applicable) raw data available in the Allen Brain Observatory datasets:

Dataset Demonstration Example About
Visual Coding 2P 👀 (view) ▶️ (run) TODO
Visual Coding Neuropixels 👀 (view) (*) TODO

(*) These data-intensive examples are currently recommended for use on local machines or user-configured cloud instances only, not for MATLAB Online

Key concepts

Allen Brain Observatory dataset items

Allen Brain Observatory datasets each consist of various items of types depending on the specific dataset: Schematic of BOT data items & workflow

Brain Observatory Toolbox operations

The Brain Observatory Toolbox provides a set of two functions for each dataset item type:

  • listXXX functions return a table of available items in the dataset
  • getXXX functions return an object of selected item(s) by id(s) or table row(s)

This workflow is uniform across datasets and item types, and illustrated here: Schematic of BOT data items & workflow

The dataset item's contents are exposed through the object's properties and (where applicable) methods. For further guidance and explanation, see the Tutorials.

Installation

To install the Brain Observatory Toolbox persistently on a local machine or cloud instance, the Add-on Explorer is recommended:

  1. Launch the Add-on Explorer image
  2. Search for "Brain Observatory Toolbox"
  3. Press the "Add" button. image

Required products

  • MATLAB (R2023b or later)
  • Image Processing Toolbox (if running the Visual Coding 2P demonstration OphysDemo.mlx)

About the Brain Observatory Toolbox

🚧 The Brain Observatory Toolbox is at an early stage; the interface is not guaranteed stable across the v0.9.x releases.

💬 Questions? Suggestions? Roadblocks? Code contributors are regularly monitoring user-posted GitHub issues & the File Exchange discussion.

Acknowledgements

Initial engineering work, done by Ethan Meyers and Xinzhu Fang, was supported by the Foundation of Psychocultural Research and Sherman Fairchild Award at Hampshire College and hosted by the Center for Brains, Minds, and Machines at the Massachusetts Institute of Technology.

Footnotes

  1. Copyright 2016 Allen Institute for Brain Science. Allen Brain Observatory. Available from: portal.brain-map.org/explore/circuits.

  2. Dataset: Allen Institute MindScope Program (2016). Allen Brain Observatory -- 2-photon Visual Coding [dataset]. Available from brain-map.org/explore/circuits. Primary publication: de Vries, S. E. J., Lecoq, J. A., Buice, M. A., et al. (2020). A large-scale standardized physiological survey reveals functional organization of the mouse visual cortex. Nature Neuroscience, 23, 138-151. https://doi.org/10.1038/s41593-019-0550-9

  3. Dataset: Allen Institute MindScope Program (2019). Allen Brain Observatory -- Neuropixels Visual Coding [dataset]. Available from brain-map.org/explore/circuits. Primary publication: Siegle, J. H., Jia, X., Durand, S., et al. (2021). Survey of spiking in the mouse visual system reveals functional hierarchy. Nature, 592(7612), 86-92. https://doi.org/10.1038/s41586-020-03171-x

  4. Dataset: Allen Institute MindScope Program (2021). Allen Brain Observatory -- 2-photon Visual Behavior [dataset]. Available from brain-map.org/explore/circuits/visual-behavior-2p.

  5. Dataset: Allen Institute MindScope Program (2022). Allen Brain Observatory -- Neuropixels Visual Behavior [dataset].

Cite As

Ethan Meyers (2024). Brain-Observatory-Toolbox (https://github.com/MATLAB-Community-Toolboxes-at-INCF/Brain-Observatory-Toolbox/releases/tag/v0.9.4.1), GitHub. Retrieved .

MATLAB Release Compatibility
Created with R2021a
Compatible with R2022b
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

+bot

+bot/+behavior/+item

+bot/+behavior/+item/+internal/+abstract

+bot/+external/+fex/+filedownload

+bot/+external/+matnwb/+io

+bot/+internal

+bot/+internal/+abstract

+bot/+internal/+behavior

+bot/+internal/+behavior/+cache

+bot/+internal/+behavior/+mixin

+bot/+internal/+fileresource

+bot/+internal/+fileresource/+abstract

+bot/+internal/+fileresource/+mixin

+bot/+internal/+fileresource/+visualbehavior

+bot/+internal/+fileresource/+visualcoding

+bot/+internal/+metadata

+bot/+internal/+metadata/+utility

+bot/+internal/+nwb

+bot/+internal/+nwb/+file/+vb

+bot/+internal/+nwb/+reader

+bot/+internal/+nwb/+reader/+vb

+bot/+internal/+util

+bot/+item

+bot/+item/+concrete

+bot/+item/+internal

+bot/+item/+internal/+abstract

+bot/+item/+internal/+enum

+bot/+item/+internal/+mixin

+bot/+util

Version Published Release Notes
0.9.4.1

See release notes for this release on GitHub: https://github.com/MATLAB-Community-Toolboxes-at-INCF/Brain-Observatory-Toolbox/releases/tag/v0.9.4.1

0.9.4

See release notes for this release on GitHub: https://github.com/MATLAB-Community-Toolboxes-at-INCF/Brain-Observatory-Toolbox/releases/tag/v0.9.4

0.9.3.5

See release notes for this release on GitHub: https://github.com/emeyers/Brain-Observatory-Toolbox/releases/tag/v0.9.3.5

0.9.3.4

See release notes for this release on GitHub: https://github.com/emeyers/Brain-Observatory-Toolbox/releases/tag/v0.9.3.4

0.9.3.3

See release notes for this release on GitHub: https://github.com/emeyers/Brain-Observatory-Toolbox/releases/tag/v0.9.3.3

0.9.3.2

See release notes for this release on GitHub: https://github.com/emeyers/Brain-Observatory-Toolbox/releases/tag/v0.9.3.2

0.9.3.1

See release notes for this release on GitHub: https://github.com/emeyers/Brain-Observatory-Toolbox/releases/tag/v0.9.3.1

0.9.3.0

See release notes for this release on GitHub: https://github.com/emeyers/Brain-Observatory-Toolbox/releases/tag/v0.9.3

0.9.2

See release notes for this release on GitHub: https://github.com/emeyers/Brain-Observatory-Toolbox/releases/tag/v0.9.2

0.9.1

See release notes for this release on GitHub: https://github.com/emeyers/Brain-Observatory-Toolbox/releases/tag/v0.9.1

0.9

To view or report issues in this GitHub add-on, visit the GitHub Repository.
To view or report issues in this GitHub add-on, visit the GitHub Repository.