Skip to content

brain-image-library/py-brain-sdk

Repository files navigation

Issue forks Stars License

py-brain-sdk

py-brain-sdk is a Python library that simplifies interaction with the Brain Image Library (BIL), a national public resource for neuroscience research. BIL provides access to petabyte-scale brain microscopy datasets, including whole and partial brain images, neuron morphologies, connectivity data, and spatial transcriptomics. This SDK enables researchers, data scientists, and developers to programmatically query, download, and analyze BIL datasets, leveraging its APIs and integrated analysis ecosystem.

With py-brain-sdk, you can

  • Search and retrieve brain imaging datasets and metadata.
  • Query datasets by ID, directory path, contributor affiliation, or free-text search.
  • Look up DOI metadata and citation counts from DataCite, OpenCitations, Crossref, and Semantic Scholar.
  • Browse BIL collections and enumerate their constituent datasets.
  • Download specific image files or subsets of large datasets.

Installation

pip install brainimagelibrary

Quick Start

Retrieve dataset metadata

from brainimagelibrary import retrieve, query

# By BIL dataset ID
metadata = retrieve.by_id(bildid="act-bag")

# By directory path
metadata = retrieve.by_directory(directory="/bil/data/2019/02/13/H19.28.012.MITU.01.05")

# Full-text search
results = query.by_text("mouse cortex")

# By contributor affiliation
results = retrieve.by_affiliation("Carnegie Mellon University")

List all dataset IDs

import brainimagelibrary as bil

bildids = bil.get_all_bildids()
print(f"Total datasets: {len(bildids)}")

DOI and citation lookup (datecite)

from brainimagelibrary import datecite

# Check if a dataset has a registered DOI
datecite.dataset.exists(bildid="act-bag")

# Get DataCite metadata
metadata = datecite.dataset.get(bildid="act-bag")

# Get citation counts from DataCite, OpenCitations, Crossref, and Semantic Scholar
citations = datecite.dataset.get_number_of_citations(bildid="act-bag")
# {‘datacite’: 2, ‘opencitations’: 1, ‘crossref’: 0, ‘semanticscholar’: 3}

# Get full citation records from all sources
records = datecite.dataset.get_citations(bildid="act-bag")

Collection operations

from brainimagelibrary import datecite

# List all datasets in a collection
datasets = datecite.collection.get_datasets(bildid="g.19")
for entry in datasets:
    print(entry["bildid"], entry["url"])

Copyright © 2020-2026 Pittsburgh Supercomputing Center. All Rights Reserved.

The Biomedical Applications Group at the Pittsburgh Supercomputing Center in the Mellon College of Science at Carnegie Mellon University.

About

A Python package designed for seamless integration with the Brain Image Library APIs, facilitating efficient retrieval and manipulation of valuable neuroscience data.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages