SynthStroke is a powerful toolbox for SPM (Statistical Parametric Mapping) that performs automated stroke lesion segmentation on brain MRI images using deep learning techniques.
Note: This tool is currently in a very early alpha state and is likely to have bugs or unexpected failure cases. We warmly welcome users to test the tool on their own data and report any issues on GitHub. Your feedback and bug reports will help us improve the tool's reliability and functionality.
- Automated stroke lesion segmentation
- Integration with SPM12
- Support for Test Time Augmentation (TTA)
- Binary hole filling for lesion masks
- Customizable output options
- Support for both MRI and CT data
- Download the SynthStroke toolbox.
- Place the SynthStroke folder in your SPM toolbox directory:
/path/to/spm12/toolbox/SynthStroke
- Restart SPM12 or refresh the SPM toolbox menu.
That's it! No additional compilation or external dependencies are required.
- Open SPM12
- Navigate to "Batch" → "SPM" → "Tools" → "SynthStroke"
- In the batch editor:
- Select your input image(s)
- Choose your desired options
- Set the output directory (optional)
- Run the batch
- Use TTA: Enable Test Time Augmentation for potentially improved results
- Fill holes: Apply binary hole filling to the lesion mask
- Lesion threshold: Set the threshold for lesion classification (0-1)
- Output prefix: Customize the prefix for output files
SynthStroke generates:
- Posterior probability maps for each class
- Binary lesion mask
- MATLAB (R2024b tested, R2024a expected to work; compatibility with older versions in development)
- SPM12
- Deep Learning Toolbox: More info here
- Image Processing Toolbox: More info here
Important Note: SynthStroke works out of the box with pure MATLAB. There is no need for Python, CUDA, or MEX compilation. This toolbox is designed to run seamlessly within the MATLAB environment, making it easy to use without additional setup or dependencies.
For issues, questions, or contributions, please open an issue on the GitHub repository.
If you use SynthStroke in your research, please cite:
Chalcroft, L., Pappas, I., Price, C. J., & Ashburner, J. (2024). Synthetic Data for Robust Stroke Segmentation. arXiv preprint arXiv:2404.01946. https://arxiv.org/abs/2404.01946
This project is licensed under the MIT License.
Copyright (c) [2024] [Liam Chalcroft]
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.