Update README.md
Browse files
README.md
CHANGED
|
@@ -9,23 +9,20 @@ tags:
|
|
| 9 |
- spine
|
| 10 |
- vertebrae
|
| 11 |
- nnunet
|
| 12 |
-
- multi-class
|
| 13 |
-
- 3d
|
| 14 |
-
- pytorch
|
| 15 |
---
|
| 16 |
|
| 17 |
# Model Card for VertebralBodiesCT-Neighbors
|
| 18 |
|
| 19 |
-
VertebralBodiesCT-Neighbors is a 3D semantic segmentation model designed to identify the center vertebra and its two neighbors (above and below) within cropped CT volumes that include a small anatomical context. It consumes two channels: the CT crop and a binary "center vertebra marker" channel indicating the index vertebra location. The
|
| 20 |
|
| 21 |
This card documents how the training data is generated and the intended usage. The training labels and images are not published; instead, we provide the exact notebook used to create the dataset so results are reproducible.
|
| 22 |
|
| 23 |
-
- Dataset creation notebook: [suppl/DatasetGeneration.ipynb]
|
| 24 |
- Dataset definition file: [dataset.json](nnUNetTrainer__nnUNetResEncUNetMPlans__3d_fullres/dataset.json)
|
| 25 |
|
| 26 |
## Model Details
|
| 27 |
- Task: 3D multi-class semantic segmentation of vertebral context crops
|
| 28 |
-
- Framework: nnU-Net v2 (standard, unmodified) with ignore label support
|
| 29 |
- Input channels (2):
|
| 30 |
- channel 0: CT crop (`*_0000.nii.gz`)
|
| 31 |
- channel 1: center vertebra marker (small sphere at centroid, `*_0001.nii.gz`)
|
|
@@ -40,7 +37,7 @@ This card documents how the training data is generated and the intended usage. T
|
|
| 40 |
Training data is derived from thoracic/lumbar vertebral body labels sourced from the refined public datasets released in [fhofmann/VertebralBodiesCT-Labels](https://huggingface.co/datasets/fhofmann/VertebralBodiesCT-Labels). Crops are created around an index (center) vertebra and include its adjacent neighbors.
|
| 41 |
|
| 42 |
Key aspects implemented in the notebook [suppl/DatasetGeneration.ipynb]:
|
| 43 |
-
- Fixed symmetric padding (in mm) around the index vertebra bounding box, data-driven from neighbor-distance analysis:
|
| 44 |
- X (left-right): 8 mm
|
| 45 |
- Y (anterior-posterior): 20 mm
|
| 46 |
- Z (cranial-caudal): 70 mm
|
|
@@ -57,8 +54,8 @@ Important: The images and labels produced by the notebook are NOT published here
|
|
| 57 |
- Predict the identity of the center vertebra and its two direct neighbors within context crops. This can support downstream pipelines that rely on vertebral anatomies (e.g., body composition measurements standardized to L3).
|
| 58 |
- The model is designed for thoracic and lumbar vertebral bodies; cervical spine is out of scope. Vertebral arches and spinous processes are excluded by design in the underlying labels.
|
| 59 |
|
| 60 |
-
## How to Reproduce the Dataset
|
| 61 |
-
1. Open [suppl/DatasetGeneration.ipynb].
|
| 62 |
2. Set the input/output directories at the top (e.g., `dir_root`, `imagesTr`, `labelsTr` locations). The defaults point to local storage; adjust to your environment.
|
| 63 |
3. Run all cells. The notebook will:
|
| 64 |
- enumerate CT volumes,
|
|
@@ -66,10 +63,10 @@ Important: The images and labels produced by the notebook are NOT published here
|
|
| 66 |
- write two-channel images and multi-class labels into `VertebralBodiesCT-Neighbors-Labels/images{Tr,Ts}` and `VertebralBodiesCT-Neighbors-Labels/labels{Tr,Ts}`.
|
| 67 |
4. Ensure [dataset.json](nnUNetTrainer__nnUNetResEncUNetMPlans__3d_fullres/dataset.json) accompanies the dataset for nnU-Net v2.
|
| 68 |
|
| 69 |
-
Note on ignore label: class 5 is used to mask regions above T1 or out-of-scope, following nnU-Net’s ignore label mechanism. For details, see the nnU-Net documentation on ignore labels.
|
| 70 |
|
| 71 |
## Training and Inference Notes (nnU-Net v2)
|
| 72 |
-
- Architecture/Plans: standard nnU-Net v2 configuration (
|
| 73 |
- Channels: the data uses two input channels. Ensure your nnU-Net dataset follows the `*_0000.nii.gz` and `*_0001.nii.gz` convention.
|
| 74 |
- Splits: the notebook provides training/testing separation by mirroring the source dataset layout; adapt to your cross-validation strategy.
|
| 75 |
- Inference requires the two-channel crops as input, thus creating the center marker and crop around each index vertebra using the same rules before feeding data to the trained model.
|
|
@@ -85,27 +82,37 @@ The training data for VertebralBodiesCT-Neighbors is derived from vertebral body
|
|
| 85 |
- TotalSegmentator (Wasserthal et al., 2023)
|
| 86 |
- VerSe (Sekuboyina et al., 2021)
|
| 87 |
|
| 88 |
-
Curated and refined labels are described in
|
| 89 |
|
| 90 |
## Citation
|
| 91 |
If you use this work, please cite the following:
|
| 92 |
|
| 93 |
-
|
| 94 |
-
|
| 95 |
-
|
| 96 |
-
|
| 97 |
-
|
| 98 |
-
|
| 99 |
-
|
| 100 |
-
|
| 101 |
-
|
| 102 |
-
|
| 103 |
-
-
|
| 104 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 105 |
|
| 106 |
## License
|
| 107 |
- CC BY-SA 4.0 for this repository’s documentation and configuration files.
|
| 108 |
- Respect licenses and terms of the underlying data sources when reproducing the dataset locally.
|
| 109 |
|
| 110 |
## Contact
|
| 111 |
-
Questions, feedback, or suggestions are welcome. Please open an issue or discussion in the repository, or reach out via the model’s discussion page
|
|
|
|
| 9 |
- spine
|
| 10 |
- vertebrae
|
| 11 |
- nnunet
|
|
|
|
|
|
|
|
|
|
| 12 |
---
|
| 13 |
|
| 14 |
# Model Card for VertebralBodiesCT-Neighbors
|
| 15 |
|
| 16 |
+
VertebralBodiesCT-Neighbors is a 3D semantic segmentation model designed to identify the center vertebra and its two neighbors (above and below) within cropped CT volumes that include a small anatomical context. It consumes two channels: the CT crop and a binary "center vertebra marker" channel indicating the index vertebra location. The output classes are mutually exclusive multi-class targets: center vertebral body, above vertebral body, below vertebral body, plus any other vertebral body.
|
| 17 |
|
| 18 |
This card documents how the training data is generated and the intended usage. The training labels and images are not published; instead, we provide the exact notebook used to create the dataset so results are reproducible.
|
| 19 |
|
| 20 |
+
- Dataset creation notebook: [suppl/DatasetGeneration.ipynb](suppl/DatasetGeneration.ipynb)
|
| 21 |
- Dataset definition file: [dataset.json](nnUNetTrainer__nnUNetResEncUNetMPlans__3d_fullres/dataset.json)
|
| 22 |
|
| 23 |
## Model Details
|
| 24 |
- Task: 3D multi-class semantic segmentation of vertebral context crops
|
| 25 |
+
- Framework: nnU-Net v2 (standard, unmodified) with ignore label support and [region-based training](https://github.com/MIC-DKFZ/nnUNet/blob/master/documentation/region_based_training.md)
|
| 26 |
- Input channels (2):
|
| 27 |
- channel 0: CT crop (`*_0000.nii.gz`)
|
| 28 |
- channel 1: center vertebra marker (small sphere at centroid, `*_0001.nii.gz`)
|
|
|
|
| 37 |
Training data is derived from thoracic/lumbar vertebral body labels sourced from the refined public datasets released in [fhofmann/VertebralBodiesCT-Labels](https://huggingface.co/datasets/fhofmann/VertebralBodiesCT-Labels). Crops are created around an index (center) vertebra and include its adjacent neighbors.
|
| 38 |
|
| 39 |
Key aspects implemented in the notebook [suppl/DatasetGeneration.ipynb]:
|
| 40 |
+
- Fixed symmetric padding (in mm) around the index vertebra bounding box, data-driven from neighbor-distance analysis to include adjacent vertebrae in 95% of cases:
|
| 41 |
- X (left-right): 8 mm
|
| 42 |
- Y (anterior-posterior): 20 mm
|
| 43 |
- Z (cranial-caudal): 70 mm
|
|
|
|
| 54 |
- Predict the identity of the center vertebra and its two direct neighbors within context crops. This can support downstream pipelines that rely on vertebral anatomies (e.g., body composition measurements standardized to L3).
|
| 55 |
- The model is designed for thoracic and lumbar vertebral bodies; cervical spine is out of scope. Vertebral arches and spinous processes are excluded by design in the underlying labels.
|
| 56 |
|
| 57 |
+
## How to Reproduce the Training and Testing Dataset
|
| 58 |
+
1. Open [suppl/DatasetGeneration.ipynb](suppl/DatasetGeneration.ipynb).
|
| 59 |
2. Set the input/output directories at the top (e.g., `dir_root`, `imagesTr`, `labelsTr` locations). The defaults point to local storage; adjust to your environment.
|
| 60 |
3. Run all cells. The notebook will:
|
| 61 |
- enumerate CT volumes,
|
|
|
|
| 63 |
- write two-channel images and multi-class labels into `VertebralBodiesCT-Neighbors-Labels/images{Tr,Ts}` and `VertebralBodiesCT-Neighbors-Labels/labels{Tr,Ts}`.
|
| 64 |
4. Ensure [dataset.json](nnUNetTrainer__nnUNetResEncUNetMPlans__3d_fullres/dataset.json) accompanies the dataset for nnU-Net v2.
|
| 65 |
|
| 66 |
+
Note on ignore label: class 5 is used to mask regions above T1 or out-of-scope, following nnU-Net’s ignore label mechanism. For details, see the [nnU-Net documentation on ignore labels](https://github.com/MIC-DKFZ/nnUNet/blob/master/documentation/ignore_label.md).
|
| 67 |
|
| 68 |
## Training and Inference Notes (nnU-Net v2)
|
| 69 |
+
- Architecture/Plans: standard nnU-Net v2 configuration (3d_fullres) using region-based training with ResEnc presets.
|
| 70 |
- Channels: the data uses two input channels. Ensure your nnU-Net dataset follows the `*_0000.nii.gz` and `*_0001.nii.gz` convention.
|
| 71 |
- Splits: the notebook provides training/testing separation by mirroring the source dataset layout; adapt to your cross-validation strategy.
|
| 72 |
- Inference requires the two-channel crops as input, thus creating the center marker and crop around each index vertebra using the same rules before feeding data to the trained model.
|
|
|
|
| 82 |
- TotalSegmentator (Wasserthal et al., 2023)
|
| 83 |
- VerSe (Sekuboyina et al., 2021)
|
| 84 |
|
| 85 |
+
Curated and refined labels are described in [fhofmann/VertebralBodiesCT-Labels](https://huggingface.co/datasets/fhofmann/VertebralBodiesCT-Labels)
|
| 86 |
|
| 87 |
## Citation
|
| 88 |
If you use this work, please cite the following:
|
| 89 |
|
| 90 |
+
```
|
| 91 |
+
Wasserthal, J., Breit, H.-C., Meyer, M.T., Pradella, M., Hinck, D., Sauter, A.W., Heye, T., Boll, D., Cyriac, J., Yang, S., Bach, M., Segeroth, M. (2023). TotalSegmentator: Robust Segmentation of 104 Anatomic Structures in CT Images. Radiology: Artificial Intelligence. https://doi.org/10.1148/ryai.230024
|
| 92 |
+
```
|
| 93 |
+
```
|
| 94 |
+
Sekuboyina, A., Husseini, M.E., Bayat, A., Löffler, M., Liebl, H., Li, H., Tetteh, G., Kukačka, J., Payer, C., Štern, D., Urschler, M., Chen, M., Cheng, D., Lessmann, N., Hu, Y., Wang, T., Yang, D., Xu, D., Ambellan, F., Amiranashvili, T., Ehlke, M., Lamecker, H., Lehnert, S., Lirio, M., Pérez de Olaguer, N., Ramm, H., Sahu, M., Tack, A., Zachow, S., Jiang, T., Ma, X., Angerman, C., Wang, X., Brown, K., Kirszenberg, A., Puybareau, É., Chen, D., Bai, Y., Rapazzo, B.H., Yeah, T., Zhang, A., Xu, S., Hou, F., He, Z., Zeng, C., Xiangshang, Z., Liming, X., Netherton, T.J., Mumme, R.P., Court, L.E., Huang, Z., He, C., Wang, L.-W., Ling, S.H., Huỳnh, L.D., Boutry, N., Jakubicek, R., Chmelik, J., Mulay, S., Sivaprakasam, M., Paetzold, J.C., Shit, S., Ezhov, I., Wiestler, B., Glocker, B., Valentinitsch, A., Rempfler, M., Menze, B.H., Kirschke, J.S. (2021). VerSe: A Vertebrae labelling and segmentation benchmark for multi-detector CT images. Medical Image Analysis. https://doi.org/10.1016/j.media.2021.102166
|
| 95 |
+
```
|
| 96 |
+
```
|
| 97 |
+
Haubold, J., Baldini, G., Parmar, V., Schaarschmidt, B.M., Koitka, S., Kroll, L., van Landeghem, N., Umutlu, L., Forsting, M., Nensa, F., Hosch, R. (2023). BOA: A CT-Based Body and Organ Analysis for Radiologists at the Point of Care. Investigative Radiology. https://doi.org/10.1097/RLI.0000000000001040
|
| 98 |
+
```
|
| 99 |
+
|
| 100 |
+
Since the model is based on the [nnU-Net framework](https://github.com/MIC-DKFZ/nnUNet) and the [residual encoder UNet presets](https://github.com/MIC-DKFZ/nnUNet/blob/master/documentation/resenc_presets.md), please cite the following papers:
|
| 101 |
+
```
|
| 102 |
+
Isensee, F., Jaeger, P.F., Kohl, S. A., Petersen, J., Maier-Hein, K.H. (2021). nnU-Net: a self-configuring method for deep learning-based biomedical image segmentation. Nature methods, 18(2), 203-211. https://doi.org/10.1038/s41592-020-01008-z
|
| 103 |
+
```
|
| 104 |
+
```
|
| 105 |
+
Isensee, F., Wald, T., Ulrich, C., Baumgartner, M. , Roy, S., Maier-Hein, K., Jaeger, P. (2024). nnU-Net Revisited: A Call for Rigorous Validation in 3D Medical Image Segmentation. arXiv preprint arXiv:2404.09556.
|
| 106 |
+
```
|
| 107 |
+
|
| 108 |
+
Please cite our dataset:
|
| 109 |
+
```
|
| 110 |
+
Hofmann F.O. et al. Thoracic & lumbar vertebral body labels corresponding to 1460 public CT scans. https://huggingface.co/datasets/fhofmann/VertebralBodiesCT-Labels/
|
| 111 |
+
```
|
| 112 |
|
| 113 |
## License
|
| 114 |
- CC BY-SA 4.0 for this repository’s documentation and configuration files.
|
| 115 |
- Respect licenses and terms of the underlying data sources when reproducing the dataset locally.
|
| 116 |
|
| 117 |
## Contact
|
| 118 |
+
Questions, feedback, or suggestions are welcome. Please open an issue or discussion in the repository, or reach out via the model’s discussion page.
|