https://github.com/bluebrain/diameter-synthesis
Synthesize diameters of neuronal morphologies
https://github.com/bluebrain/diameter-synthesis
morphology neuroscience
Last synced: about 1 year ago
JSON representation
Synthesize diameters of neuronal morphologies
- Host: GitHub
- URL: https://github.com/bluebrain/diameter-synthesis
- Owner: BlueBrain
- License: apache-2.0
- Created: 2021-06-21T09:27:22.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2024-11-06T13:27:08.000Z (over 1 year ago)
- Last Synced: 2024-11-13T01:02:58.695Z (over 1 year ago)
- Topics: morphology, neuroscience
- Language: Python
- Homepage:
- Size: 5.51 MB
- Stars: 3
- Watchers: 8
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.txt
- Citation: CITATION.cff
- Authors: AUTHORS.md
Awesome Lists containing this project
README
> [!WARNING]
> The Blue Brain Project concluded in December 2024, so development has ceased under the BlueBrain GitHub organization.
> Future development will take place at: https://github.com/openbraininstitute/diameter-synthesis
[](https://github.com/BlueBrain/diameter-synthesis/releases)
[](https://github.com/BlueBrain/diameter-synthesis/actions)
[](https://codecov.io/github/BlueBrain/diameter-synthesis?branch=main)
[](https://github.com/BlueBrain/diameter-synthesis/blob/main/LICENSE.txt)
[](https://diameter-synthesis.readthedocs.io/)
[](https://doi.org/10.1016/j.celrep.2022.110586)
# Diameter synthesis
This code aims at generating synthetic diameters for neurons, with parameters learned from a set of biological neurons.
## Installation
Use pip:
```bash
pip install diameter-synthesis
```
## Main usage
### Step 1: Building models
In folder `example`, you first have to modify `create_jsons.py` to suit your needs.
You have the following important parameters for the dict `extract_models_params`:
- `morph_path`: path to morphology files
- `mtypes_sort`: how to learn distributions: `all` to use all together, `mtypes` to use by mtypes , `super_mtypes` to use home made cells types (see `diameter_types` below)
- `models`: to create several models (for now they are all the same, just different realisation of random numbers)
- `neurite_types`: types of neurite to learn parameters for
- `extra_params`: dict of additional model parameters
### Step 2: Building diameters
Then simply run `./run_models.sh` to create the models (saved in a json file).
In `create_jsons.py`, the dict `generate_diameters_params` needs to be updated, too, with entries matching the previous dict.
The path in `new_morph_path` will be where the new morphologies will be saved.
Then run `./run_diamters.sh` to generate diameters.
## Additional scripts
Several additional scripts in folder `scripts`:
- `diameter-checks`: run the diameter-check code (bluepymm) on the biological and sampled cells
- `diameter_types`: cluster mtypes using distributions of surface areas (uses two privates repositories a the moment)
- `extract_morphometrics`: from bio and sample cells, extracts and plot distribution of surface area and diameter as a function of branch order and path lengths
- `extract_morphologies`: from a cell release, find the ones that can be run through diameter-check
- `plot_morphologies`: plot all morphologies in mtype folders
## Examples
The `examples` folder contains a simple example that will fetch morphologies from [neuromorpho.org](http://neuromorpho.org), learn a diameter model, rediametrize these morphologies, and perform some analysis of the results to compare original and diametrized morphologies.
This example can simply be run using the following command:
```bash
./run.sh
```
## 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.
For license and authors, see `LICENSE.txt` and `AUTHORS.md` respectively.
Copyright © 2021-2022 Blue Brain Project/EPFL