Skip to main content

Synthesize cells in a given spatial context.

Project description

Region Grower

Synthesize neuronal morphologies in a given spatial context provided by an atlas. The documentation can be found here: https://region-grower.readthedocs.io/en/latest/

Introduction

This package provides a general tools to synthesize cells in a given spatial context (a brain Atlas) with embarrassingly parallel computation (with distributed computing via dask-mpi). This package is difficult to use on its own, as it requires several specific inputs from atlas and synthesis. It is advised to use it via synthesis-workflow, which is a workflow generating most of the inputs of region-grower.

Installation

This package should be installed using pip:

pip install region-grower

Usage

This package provides one main command which provides several tools. Two tools to generate input parameters and input distributions and another to synthesize the cells.

Generate distributions

Generate the TMD distribution file:

region-grower generate-distributions --help

Input data

The command region-grower generate-distributions needs the following inputs:

  • a folder containing the cells which are used to generate the parameters (see the input_folder and --ext parameters).
  • a dat file (see the dat_file parameter) with 3 columns:
    • morphology names,
    • any integer value (this column is not used by region-grower)
    • mtypes.
  • optionally a JSON file containing the specific parameters used for diametrization (see the --diametrizer-config parameter).

Output data

The command region-grower generate-distributions will create the following outputs:

  • a JSON file containing the formatted distributions (see the --parameter-filename parameter).

Generate parameters

Generate the TMD parameter file:

region-grower generate-parameters --help

Input data

The command region-grower generate-parameters needs the following inputs:

  • a folder containing the cells which are used to generate the parameters (see the input_folder and --ext parameters).
  • a dat file (see the dat_file parameter) with 3 columns:
    • morphology names,
    • any integer value (this column is not used by region-grower)
    • mtypes.
  • optionally a JSON file containing the specific parameters used for diametrization (see the --diametrizer-config parameter).

Output data

The command region-grower generate-parameters will create the following outputs:

  • a JSON file containing the formatted parameters (see the --parameter-filename parameter).

Synthesize cells

Synthesize morphologies into an given atlas according to the given TMD parameters and distributions:

region-grower synthesize-morphologies --help

Input data

The command region-grower synthesize-morphologies needs the following inputs:

  • a sonata file containing the positions of the cells that must be synthesized.
  • a JSON file containing the parameters used to synthesize the cells (see the --tmd-parameters parameter). This file should follow the schema given in :ref:Parameters.
  • a JSON file containing the distributions used to synthesize the cells (see the --tmd-distributions parameter). This file should follow the schema given in :ref:Parameters.
  • a TSV file giving which morphology should be used for axon grafting and the optional scaling factor (see the --morph-axon parameter). The morphologies referenced in this file should exist in the directory given with the --base-morph-dir parameter.
  • a directory containing an Atlas.

Output data

The command region-grower synthesize-morphologies will create the following outputs:

  • a sonata file containing all the positions and orientations of the synthesized cells (see --out-cells parameter).
  • a directory containing all the synthesized morphologies (see --out-morph-dir and --out-morph-ext parameters).
  • a YAML file containing the apical point positions (see --out-apical parameter).
  • a YAML file containing the Neuron IDs of the sections containing the apical points (see --out-apical-nrn-sections parameter).

Funding & Acknowledgment

The development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government's ETH Board of the Swiss Federal Institutes of Technology.

Copyright (c) 2022-2024 Blue Brain Project/EPFL

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

region_grower-1.6.0.tar.gz (2.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

region_grower-1.6.0-py3-none-any.whl (39.5 kB view details)

Uploaded Python 3

File details

Details for the file region_grower-1.6.0.tar.gz.

File metadata

  • Download URL: region_grower-1.6.0.tar.gz
  • Upload date:
  • Size: 2.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for region_grower-1.6.0.tar.gz
Algorithm Hash digest
SHA256 535bdbca23bed32d191bbf0a1bd63bf639c28865ceda1e3124b9ed6562a50ac0
MD5 6caaddea7f7ceb49f9453706cd781df2
BLAKE2b-256 972f236b27c3a82a3ea5fe242849cda7483fa9bfbeeb49fb0f88a393b45c7105

See more details on using hashes here.

File details

Details for the file region_grower-1.6.0-py3-none-any.whl.

File metadata

  • Download URL: region_grower-1.6.0-py3-none-any.whl
  • Upload date:
  • Size: 39.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.12.8

File hashes

Hashes for region_grower-1.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2ed4be6f9f51769a5880ee3af7def63fdf2196e06e0e2809b5a380588343cd86
MD5 51c5514d82ccd7127f2253984f18f92e
BLAKE2b-256 8f5d509a780c26c7718c0ccb2b333aa96e1883b36d3f4cfe7ca95cd8726d71b3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page