This repository contains morphometric measures in the PAM50 anatomical dimensions computed from adults (healthy controls and patients) and children across multiple datasets.
👉 If you find this work and/or code useful for your research, please cite our paper:
Valošek, Bédard et al., (2024). A database of the healthy human spinal cord morphometry in the PAM50 template space. Imaging Neuroscience, 2 1–15, https://doi.org/10.1162/imag_a_00075
👉 For interactive figures, please visit the NeuroLibre preprint:
Valošek, Bédard et al., (2023). A database of the healthy human spinal cord morphometry in the PAM50 template space. NeuroLibre Reproducible Preprints, 17, https://doi.org/10.55458/neurolibre.00017
The repository is downloaded automatically during the SCT installation.
CSV files from this repository are used by the following SCT functions:
sct_process_segmentation -normalize-PAM50 1, example:
sct_process_segmentation -i sub-001_T2w_label-SC_seg.nii.gz -vertfile sub-001_T2w_label-SC_seg_labeled.nii.gz -perslice 1 -normalize-PAM50 1 -o sub-001_T2w_metrics_PAM50.csvsct_compute_compression -normalize-hc 1, example:
sct_compute_compression -i sub-001_T2w_label-SC_seg.nii.gz -vertfile sub-001_T2w_label-SC_seg_labeled.nii.gz -l sub-001_T2w_label-compression.nii.gz -normalize-hc 1 -o sub-001_T2w_compression_metrics.csvIf you want to use the morphometric measures outside of SCT in your own research, you can simply download this repository and use the CSV files directly:
git clone https://github.com/spinalcordtoolbox/PAM50-normalized-metrics.gitThe table below summarizes all datasets included in this repository. It is also available as datasets.tsv and can be regenerated by running python code/generate_datasets_summary.py.
| metric | name | num_subjects | num_sessions | num_sites | population | sex (M/F/unknown) | age (mean±SD [min–max]) | coverage | contrast | resolution | link |
|---|---|---|---|---|---|---|---|---|---|---|---|
| spinal_canal | spine-generic multi-subject | 203 | 203 | 43 | healthy adults | 105/98/0 | 28.7±5.6 [19–52] | cervical spine | T2w | 0.8mm iso | spine-generic/data-multi-subject |
| spinal_cord | spine-generic multi-subject | 203 | 203 | 43 | healthy adults | 105/98/0 | 28.7±5.6 [19–52] | cervical spine | T2w | 0.8mm iso | spine-generic/data-multi-subject |
| spinal_cord | whole-spine | 58 | 58 | 2 | healthy adults | 30/18/10 | 27.2±6.7 [21–56] | whole spine | T2w | 1.0mm iso | openneuro/ds005616 |
| spinal_cord | MASiVar | 96 | 144 | n/a | healthy adults and children | 55/41/0 | 9.6±8.7 [5–47] | cervical spine | T1w | 1.0mm iso | openneuro/ds003416 |
PAM50-normalized-metrics/
├── datasets.tsv # master dataset overview (auto-generated)
├── spinal_canal/ # spinal canal morphometric measures
│ └── spine-generic_multi-subject/
│ ├── dataset_description.json # dataset metadata (coverage, contrast, resolution, ...)
│ ├── participants.tsv # subject metadata
│ ├── sub-amu01_T2w_PAM50.csv
│ └── ...
└── spinal_cord/ # spinal cord morphometric measures
├── spine-generic_multi-subject/
│ ├── dataset_description.json
│ ├── participants.tsv
│ ├── sub-amu01_T2w_PAM50.csv
│ └── ...
└── whole-spine/
├── dataset_description.json
├── participants.tsv
├── sub-amuAL_T2w_PAM50.csv
└── ...
Each CSV file contains per-slice morphometric measures for one subject, normalized to the PAM50 template space.
-
Create a new dataset folder — under the appropriate metric directory (e.g.,
spinal_cord/<new-dataset>/), add the per-subject CSV files, aparticipants.tsvwith subject metadata, and adataset_description.jsonwith the dataset metadata:spinal_cord/ └── <new-dataset>/ ├── dataset_description.json # dataset metadata ├── participants.tsv # subject metadata (participant_id, sex, age, institution, ...) ├── sub-001_T2w_PAM50.csv └── ...The
dataset_description.jsonshould contain:{ "name": "<human-readable dataset name>", "coverage": "<anatomical coverage>", "contrast": "<MRI contrast>", "resolution": "<voxel size>", "population": "<subject population>", "link": "<URL to raw dataset>", "link_text": "<display text for the link>" } -
Regenerate
datasets.tsvand update README — run the script from the repository root; it will auto-compute subject counts, sex, and age statistics fromparticipants.tsv, fetch the dataset metadata fromdataset_description.json, and automatically update the summary table in the Datasets Overview section above:python code/generate_datasets_summary.py