CineMA / README.md
mathpluscode's picture
Upload model weights
873e8c1
|
raw
history blame
24.1 kB
metadata
license: mit
language:
  - en

CineMA - A Foundation Model for Cine Cardiac Magnetic Resonance Images 🎥🫀

This repository contains the weights for CineMA, a foundation model for Cine cardiac magnetic resonance (CMR) imaging based on Masked-Autoencoder. The model was pre-trained on over 74,000 pairs of short-axis and long-axis cine CMR images from the UK Biobank.

CineMA was evaluated across a diverse range of clinically relevant downstream tasks, including

  • Ventricle and myocardium segmentation
  • Cardiovascular disease (CVD) detection and classification
  • Patient sex classification
  • CMR machine vendor classification
  • Ejection fraction (EF) regression
  • Patient body mass index (BMI) regression
  • Patient age regression
  • Mid-ventricular and apical landmark localization

These tasks were studied across multiple datasets:

Compared to convolutional neural network baselines such as UNet and ResNet, CineMA demonstrated superior or comparable performance, especially in sample efficiency and generalization to out-of-distribution data not seen during pretraining or fine-tuning.

By releasing the model weights and code for pretraining, fine-tuning, and inference, CineMA aims to lower the barrier to entry for cardiac imaging research, foster reproducibility, and encourage broader adoption across institutions.

➡️ Manuscript: TBD

➡️ Code: mathpluscode/CineMA

Fine-tuned CineMA Models

The filenames of fine-tuned model weights follow the convention of finetuned/<task>/<data>_<view>_<seed>.safetensors where number 0, 1, and 2 correspond to the different training seeds.

Check the "Inference Example" column to see example inference scripts using these trained models.

Training Task Training Data Input View Input Timeframes Model Weights and Configurations Inference Example
Ventricle and myocardium segmentation ACDC SAX 1 finetuned/segmentation/acdc_sax_0.safetensors
finetuned/segmentation/acdc_sax_1.safetensors
finetuned/segmentation/acdc_sax_2.safetensors
finetuned/segmentation/sax.yaml
segmentation_sax.py
Ventricle and myocardium segmentation M&Ms SAX 1 finetuned/segmentation/mnms_sax_0.safetensors
finetuned/segmentation/mnms_sax_1.safetensors
finetuned/segmentation/mnms_sax_2.safetensors
finetuned/segmentation/sax.yaml
segmentation_sax.py
Ventricle and myocardium segmentation M&Ms2 SAX 1 finetuned/segmentation/mnms2_sax_0.safetensors
finetuned/segmentation/mnms2_sax_1.safetensors
finetuned/segmentation/mnms2_sax_2.safetensors
finetuned/segmentation/sax.yaml
segmentation_sax.py
Ventricle and myocardium segmentation M&Ms2 LAX 4C 1 finetuned/segmentation/mnms2_lax_4c_0.safetensors
finetuned/segmentation/mnms2_lax_4c_1.safetensors
finetuned/segmentation/mnms2_lax_4c_2.safetensors
finetuned/segmentation/lax_4c.yaml
segmentation_lax_4c.py
CVD classification ACDC SAX 2 (ED and ES) finetuned/classification_cvd/acdc_sax_0.safetensors
finetuned/classification_cvd/acdc_sax_1.safetensors
finetuned/classification_cvd/acdc_sax_2.safetensors
finetuned/classification_cvd/acdc_sax.yaml
classification_cvd.py
CVD classification M&Ms SAX 2 (ED and ES) finetuned/classification_cvd/mnms_sax_0.safetensors
finetuned/classification_cvd/mnms_sax_1.safetensors
finetuned/classification_cvd/mnms_sax_2.safetensors
finetuned/classification_cvd/mnms_sax.yaml
classification_cvd.py
CVD classification M&Ms2 SAX 2 (ED and ES) finetuned/classification_cvd/mnms2_sax_0.safetensors
finetuned/classification_cvd/mnms2_sax_1.safetensors
finetuned/classification_cvd/mnms2_sax_2.safetensors
finetuned/classification_cvd/mnms2_sax.yaml
classification_cvd.py
CVD classification M&Ms2 LAX 4C 2 (ED and ES) finetuned/classification_cvd/mnms2_lax_4c_0.safetensors
finetuned/classification_cvd/mnms2_lax_4c_1.safetensors
finetuned/classification_cvd/mnms2_lax_4c_2.safetensors
finetuned/classification_cvd/mnms2_lax_4c.yaml
classification_cvd.py
Patient sex classification M&Ms SAX 2 (ED and ES) finetuned/classification_sex/mnms_sax_0.safetensors
finetuned/classification_sex/mnms_sax_1.safetensors
finetuned/classification_sex/mnms_sax_2.safetensors
finetuned/classification_sex/mnms_sax.yaml
classification_sex.py
CMR machine vendor classification M&Ms2 SAX 2 (ED and ES) finetuned/classification_vendor/mnms2_sax_0.safetensors
finetuned/classification_vendor/mnms2_sax_1.safetensors
finetuned/classification_vendor/mnms2_sax_2.safetensors
finetuned/classification_vendor/mnms2_sax.yaml
classification_vendor.py
CMR machine vendor classification M&Ms2 LAX 4C 2 (ED and ES) finetuned/classification_vendor/mnms2_lax_4c_0.safetensors
finetuned/classification_vendor/mnms2_lax_4c_1.safetensors
finetuned/classification_vendor/mnms2_lax_4c_2.safetensors
finetuned/classification_vendor/mnms2_lax_4c.yaml
classification_vendor.py
EF regression ACDC SAX 2 (ED and ES) finetuned/regression_ef/acdc_sax_0.safetensors
finetuned/regression_ef/acdc_sax_1.safetensors
finetuned/regression_ef/acdc_sax_2.safetensors
finetuned/regression_ef/acdc_sax.yaml
regression_ef.py
EF regression M&Ms SAX 2 (ED and ES) finetuned/regression_ef/mnms_sax_0.safetensors
finetuned/regression_ef/mnms_sax_1.safetensors
finetuned/regression_ef/mnms_sax_2.safetensors
finetuned/regression_ef/mnms_sax.yaml
regression_ef.py
EF regression M&Ms2 SAX 2 (ED and ES) finetuned/regression_ef/mnms2_sax_0.safetensors
finetuned/regression_ef/mnms2_sax_1.safetensors
finetuned/regression_ef/mnms2_sax_2.safetensors
finetuned/regression_ef/mnms2_sax.yaml
regression_ef.py
EF regression M&Ms2 LAX 4C 2 (ED and ES) finetuned/regression_ef/mnms2_lax_4c_0.safetensors
finetuned/regression_ef/mnms2_lax_4c_1.safetensors
finetuned/regression_ef/mnms2_lax_4c_2.safetensors
finetuned/regression_ef/mnms2_lax_4c.yaml
regression_ef.py
Patient BMI regression ACDC SAX 2 (ED and ES) finetuned/regression_bmi/acdc_sax_0.safetensors
finetuned/regression_bmi/acdc_sax_1.safetensors
finetuned/regression_bmi/acdc_sax_2.safetensors
finetuned/regression_bmi/acdc_sax.yaml
regression_bmi.py
Patient age regression M&Ms SAX 2 (ED and ES) finetuned/regression_age/mnms_sax_0.safetensors
finetuned/regression_age/mnms_sax_1.safetensors
finetuned/regression_age/mnms_sax_2.safetensors
finetuned/regression_age/mnms_sax.yaml
regression_age.py
Landmark localization by heatmap regression Landmark LAX 2C 1 finetuned/landmark_heatmap/lax_2c_0.safetensors
finetuned/landmark_heatmap/lax_2c_1.safetensors
finetuned/landmark_heatmap/lax_2c_2.safetensors
finetuned/landmark_heatmap/lax_2c.yaml
landmark_heatmap.py
Landmark localization by heatmap regression Landmark LAX 4C 1 finetuned/landmark_heatmap/lax_4c_0.safetensors
finetuned/landmark_heatmap/lax_4c_1.safetensors
finetuned/landmark_heatmap/lax_4c_2.safetensors
finetuned/landmark_heatmap/lax_4c.yaml
landmark_heatmap.py
Landmark localization by coordinates regression Landmark LAX 2C 1 finetuned/landmark_coordinate/lax_2c_0.safetensors
finetuned/landmark_coordinate/lax_2c_1.safetensors
finetuned/landmark_coordinate/lax_2c_2.safetensors
finetuned/landmark_coordinate/lax_2c.yaml
landmark_coordinate.py
Landmark localization by coordinates regression Landmark LAX 4C 1 finetuned/landmark_coordinate/lax_4c_0.safetensors
finetuned/landmark_coordinate/lax_4c_1.safetensors
finetuned/landmark_coordinate/lax_4c_2.safetensors
finetuned/landmark_coordinate/lax_4c.yaml
landmark_coordinate.py

Pre-trained CineMA Model

The pre-trained CineMA model backbone is available at pretrained/cinema.safetensors with configuration pretrained/cinema.yaml.

Following scripts demonstrated how to fine-tune this backbone using a preprocessed version of ACDC dataset:

Citation

Contact

For questions or collaborations, please contact Yunguan Fu ([email protected]).