OpenHeart segmentation model (HCM)
nnU-Net v2 weights that segment short-axis cine cardiac MRI into
1 = LV blood pool, 2 = LV myocardium, 3 = RV blood pool. This is the model used by
the Segment step of OpenHeart.
| Framework | nnU-Net v2, nnUNetTrainer, 2d configuration |
| Folds | fold 1 of a five-fold split (hcm/fold_1/checkpoint_final.pth): trained on 1,039 volumes, validated on 260 |
| Input | one short-axis cine volume (NIfTI), one channel |
| Training data | 1,299 labelled short-axis cine volumes (end-diastole and end-systole) from patients with hypertrophic cardiomyopathy at 5 centres |
Use with OpenHeart
from huggingface_hub import snapshot_download
import openheart as oh
model = snapshot_download("ImperialCollegeLondon/OpenHeart") + "/hcm"
case = oh.Segment(model, folds=[1])(oh.Case.load("cases/subject1", layout="legacy"))
MODEL=$(python -c 'from huggingface_hub import snapshot_download as d; print(d("ImperialCollegeLondon/OpenHeart"))')/hcm
openheart run cases/ -o out/ --model "$MODEL" --folds 1
hcm/ is a standard nnU-Net results folder, so it also loads directly with
nnUNetPredictor.initialize_from_trained_model_folder(model, use_folds=(1,)).
Limitations
Trained on hypertrophic cardiomyopathy cohorts; accuracy on other populations has not been evaluated here. For research use only, not for clinical decisions.
Credits
Computational Cardiac Imaging Group, MRC Laboratory of Medical Sciences and Imperial College London. Built with nnU-Net; please cite Isensee et al., nnU-Net: a self-configuring method for deep learning-based biomedical image segmentation, Nature Methods 18, 203β211 (2021).