| --- |
| license: mit |
| library_name: pytorch |
| tags: |
| - medical |
| - segmentation |
| - stroke |
| - neurology |
| - mri |
| pipeline_tag: image-segmentation |
| --- |
| |
| # Synth |
|
|
| Synthseg-style model trained on synthetic data derived from OASIS3 tissue maps and ATLAS binary lesion masks. |
|
|
| ## Model Details |
|
|
| - **Name**: Synth |
| - **Classes**: 0 (Background), 1 (Gray Matter), 2 (White Matter), 3 (Gray/White Matter Partial Volume), 4 (Cerebro-Spinal Fluid), 5 (Stroke) |
| - **Patch Size**: 192³ |
| - **Voxel Spacing**: 1mm³ |
| - **Input Channels**: 1 |
|
|
| ## Usage |
|
|
| ### Loading from Hugging Face Hub |
|
|
| ```python |
| import torch |
| from synthstroke_model import SynthStrokeModel |
| |
| # Load the model from Hugging Face Hub |
| model = SynthStrokeModel.from_pretrained("liamchalcroft/synthstroke-synth") |
| |
| # Prepare your input (example shape: batch_size=1, channels=1, H, W, D) |
| input_tensor = torch.randn(1, 1, 192, 192, 192) |
| |
| # Get predictions (with optional TTA for improved accuracy) |
| predictions = model.predict_segmentation(input_tensor, use_tta=True) |
| |
| # Get tissue probability maps |
| background = predictions[:, 0] # Background |
| gray_matter = predictions[:, 1] # Gray Matter |
| white_matter = predictions[:, 2] # White Matter |
| partial_volume = predictions[:, 3] # Gray/White Matter PV |
| csf = predictions[:, 4] # Cerebro-Spinal Fluid |
| stroke = predictions[:, 5] # Stroke lesion |
| |
| # Alternative: Get logits without TTA |
| logits = model.predict_segmentation(input_tensor, apply_softmax=False) |
| ``` |
|
|
| ## Citation |
|
|
| [Machine Learning for Biomedical Imaging](https://www.melba-journal.org/papers/2025:014.html) |
|
|
| ```bibtex |
| @article{chalcroft2025synthetic, |
| title={Synthetic Data for Robust Stroke Segmentation}, |
| author={Chalcroft, Liam and Pappas, Ioannis and Price, Cathy J. and Ashburner, John}, |
| journal={Machine Learning for Biomedical Imaging}, |
| volume={3}, |
| pages={317--346}, |
| year={2025}, |
| publisher={Machine Learning for Biomedical Imaging}, |
| doi={10.59275/j.melba.2025-f3g6}, |
| url={https://www.melba-journal.org/papers/2025:014.html} |
| } |
| ``` |
|
|
| For the original arXiv preprint: |
|
|
| [arXiv](https://arxiv.org/abs/2404.01946) |
|
|
| ```bibtex |
| @article{Chalcroft_2025, |
| title={Synthetic Data for Robust Stroke Segmentation}, |
| volume={3}, |
| ISSN={2766-905X}, |
| url={http://dx.doi.org/10.59275/j.melba.2025-f3g6}, |
| DOI={10.59275/j.melba.2025-f3g6}, |
| number={August 2025}, |
| journal={Machine Learning for Biomedical Imaging}, |
| publisher={Machine Learning for Biomedical Imaging}, |
| author={Chalcroft, Liam and Pappas, Ioannis and Price, Cathy J. and Ashburner, John}, |
| year={2025}, |
| month=aug, pages={317–346} |
| } |
| ``` |
|
|
| ## License |
|
|
| MIT License - see the [LICENSE](https://github.com/liamchalcroft/synthstroke/blob/main/LICENSE) file for details. |
|
|