File size: 25,573 Bytes
873e8c1
 
 
e0466ed
b54fd81
e0466ed
b54fd81
e0466ed
 
 
 
 
873e8c1
 
 
 
e0466ed
 
 
 
 
 
 
 
 
873e8c1
b1251ee
873e8c1
 
 
 
 
e0466ed
 
 
873e8c1
 
 
e0466ed
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
873e8c1
 
 
 
 
e0466ed
873e8c1
 
 
 
 
 
 
 
 
 
 
 
e0466ed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
---
license: mit
language:
  - en
datasets:
  - mathpluscode/ACDC
tags:
  - medical
  - cardiac
  - MRI
  - foundation model
  - MAE
---

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

**CineMA** is a foundation model for **Cine** cardiac magnetic resonance (CMR) imaging based on
**M**asked-**A**utoencoder. CineMA has been pre-trained on UK Biobank data and fine-tuned on multiple clinically
relevant tasks such as ventricle and myocaridum segmentation, ejection fraction (EF) regression, cardiovascular disease
(CVD) detection and classification, and mid-valve plane and apical landmark localization. The model has been evaluated
on multiple datasets, including [ACDC](https://www.creatis.insa-lyon.fr/Challenge/acdc/),
[M&Ms](https://www.ub.edu/mnms/), [M&Ms2](https://www.ub.edu/mnms-2/),
[Kaggle](https://www.kaggle.com/c/second-annual-data-science-bowl/data),
[Rescan](https://www.ahajournals.org/doi/full/10.1161/CIRCIMAGING.119.009214), and
[Landmark](https://pubs.rsna.org/doi/10.1148/ryai.2021200197), etc.

➡️ **Manuscript:** https://arxiv.org/abs/2506.00679.

➡️ **Code:** [mathpluscode/CineMA](https://github.com/mathpluscode/CineMA)

## Fine-tuned CineMA Models

The filenames of fine-tuned model weights follow the convention of
`finetuned/<task>/<data>_<view>/<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/acdc_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/acdc_sax/acdc_sax_0.safetensors)<br>[finetuned/segmentation/acdc_sax/acdc_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/acdc_sax/acdc_sax_1.safetensors)<br>[finetuned/segmentation/acdc_sax/acdc_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/acdc_sax/acdc_sax_2.safetensors)<br>[finetuned/segmentation/acdc_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/acdc_sax/config.yaml)                                                                                                                                 | [segmentation_sax.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/segmentation_sax.py)           |
| Ventricle and myocardium segmentation           | M&Ms          | SAX        | 1                | [finetuned/segmentation/mnms_sax/mnms_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms_sax/mnms_sax_0.safetensors)<br>[finetuned/segmentation/mnms_sax/mnms_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms_sax/mnms_sax_1.safetensors)<br>[finetuned/segmentation/mnms_sax/mnms_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms_sax/mnms_sax_2.safetensors)<br>[finetuned/segmentation/mnms_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms_sax/config.yaml)                                                                                                                                 | [segmentation_sax.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/segmentation_sax.py)           |
| Ventricle and myocardium segmentation           | M&Ms2         | SAX        | 1                | [finetuned/segmentation/mnms2_sax/mnms2_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms2_sax/mnms2_sax_0.safetensors)<br>[finetuned/segmentation/mnms2_sax/mnms2_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms2_sax/mnms2_sax_1.safetensors)<br>[finetuned/segmentation/mnms2_sax/mnms2_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms2_sax/mnms2_sax_2.safetensors)<br>[finetuned/segmentation/mnms2_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms2_sax/config.yaml)                                                                                                                   | [segmentation_sax.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/segmentation_sax.py)           |
| Ventricle and myocardium segmentation           | M&Ms2         | LAX 4C     | 1                | [finetuned/segmentation/mnms2_lax_4c/mnms2_lax_4c_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms2_lax_4c/mnms2_lax_4c_0.safetensors)<br>[finetuned/segmentation/mnms2_lax_4c/mnms2_lax_4c_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms2_lax_4c/mnms2_lax_4c_1.safetensors)<br>[finetuned/segmentation/mnms2_lax_4c/mnms2_lax_4c_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms2_lax_4c/mnms2_lax_4c_2.safetensors)<br>[finetuned/segmentation/mnms2_lax_4c/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/segmentation/mnms2_lax_4c/config.yaml)                                                                         | [segmentation_lax_4c.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/segmentation_lax_4c.py)     |
| CVD classification                              | ACDC          | SAX        | 2 (ED and ES)    | [finetuned/classification_cvd/acdc_sax/acdc_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/acdc_sax/acdc_sax_0.safetensors)<br>[finetuned/classification_cvd/acdc_sax/acdc_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/acdc_sax/acdc_sax_1.safetensors)<br>[finetuned/classification_cvd/acdc_sax/acdc_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/acdc_sax/acdc_sax_2.safetensors)<br>[finetuned/classification_cvd/acdc_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/acdc_sax/config.yaml)                                                                                 | [classification_cvd.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/classification_cvd.py)       |
| CVD classification                              | M&Ms          | SAX        | 2 (ED and ES)    | [finetuned/classification_cvd/mnms_sax/mnms_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms_sax/mnms_sax_0.safetensors)<br>[finetuned/classification_cvd/mnms_sax/mnms_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms_sax/mnms_sax_1.safetensors)<br>[finetuned/classification_cvd/mnms_sax/mnms_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms_sax/mnms_sax_2.safetensors)<br>[finetuned/classification_cvd/mnms_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms_sax/config.yaml)                                                                                 | [classification_cvd.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/classification_cvd.py)       |
| CVD classification                              | M&Ms2         | SAX        | 2 (ED and ES)    | [finetuned/classification_cvd/mnms2_sax/mnms2_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms2_sax/mnms2_sax_0.safetensors)<br>[finetuned/classification_cvd/mnms2_sax/mnms2_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms2_sax/mnms2_sax_1.safetensors)<br>[finetuned/classification_cvd/mnms2_sax/mnms2_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms2_sax/mnms2_sax_2.safetensors)<br>[finetuned/classification_cvd/mnms2_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms2_sax/config.yaml)                                                                   | [classification_cvd.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/classification_cvd.py)       |
| CVD classification                              | M&Ms2         | LAX 4C     | 2 (ED and ES)    | [finetuned/classification_cvd/mnms2_lax_4c/mnms2_lax_4c_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms2_lax_4c/mnms2_lax_4c_0.safetensors)<br>[finetuned/classification_cvd/mnms2_lax_4c/mnms2_lax_4c_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms2_lax_4c/mnms2_lax_4c_1.safetensors)<br>[finetuned/classification_cvd/mnms2_lax_4c/mnms2_lax_4c_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms2_lax_4c/mnms2_lax_4c_2.safetensors)<br>[finetuned/classification_cvd/mnms2_lax_4c/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_cvd/mnms2_lax_4c/config.yaml)                         | [classification_cvd.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/classification_cvd.py)       |
| Patient sex classification                      | M&Ms          | SAX        | 2 (ED and ES)    | [finetuned/classification_sex/mnms_sax/mnms_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_sex/mnms_sax/mnms_sax_0.safetensors)<br>[finetuned/classification_sex/mnms_sax/mnms_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_sex/mnms_sax/mnms_sax_1.safetensors)<br>[finetuned/classification_sex/mnms_sax/mnms_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_sex/mnms_sax/mnms_sax_2.safetensors)<br>[finetuned/classification_sex/mnms_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_sex/mnms_sax/config.yaml)                                                                                 | [classification_sex.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/classification_sex.py)       |
| CMR machine vendor classification               | M&Ms2         | SAX        | 2 (ED and ES)    | [finetuned/classification_vendor/mnms2_sax/mnms2_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_vendor/mnms2_sax/mnms2_sax_0.safetensors)<br>[finetuned/classification_vendor/mnms2_sax/mnms2_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_vendor/mnms2_sax/mnms2_sax_1.safetensors)<br>[finetuned/classification_vendor/mnms2_sax/mnms2_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_vendor/mnms2_sax/mnms2_sax_2.safetensors)<br>[finetuned/classification_vendor/mnms2_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_vendor/mnms2_sax/config.yaml)                                           | [classification_vendor.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/classification_vendor.py) |
| CMR machine vendor classification               | M&Ms2         | LAX 4C     | 2 (ED and ES)    | [finetuned/classification_vendor/mnms2_lax_4c/mnms2_lax_4c_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_vendor/mnms2_lax_4c/mnms2_lax_4c_0.safetensors)<br>[finetuned/classification_vendor/mnms2_lax_4c/mnms2_lax_4c_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_vendor/mnms2_lax_4c/mnms2_lax_4c_1.safetensors)<br>[finetuned/classification_vendor/mnms2_lax_4c/mnms2_lax_4c_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_vendor/mnms2_lax_4c/mnms2_lax_4c_2.safetensors)<br>[finetuned/classification_vendor/mnms2_lax_4c/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/classification_vendor/mnms2_lax_4c/config.yaml) | [classification_vendor.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/classification_vendor.py) |
| Direct EF regression                            | ACDC          | SAX        | 2 (ED and ES)    | [finetuned/regression_ef/acdc_sax/acdc_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/acdc_sax/acdc_sax_0.safetensors)<br>[finetuned/regression_ef/acdc_sax/acdc_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/acdc_sax/acdc_sax_1.safetensors)<br>[finetuned/regression_ef/acdc_sax/acdc_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/acdc_sax/acdc_sax_2.safetensors)<br>[finetuned/regression_ef/acdc_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/acdc_sax/config.yaml)                                                                                                                         | [regression_ef.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/regression_ef.py)                 |
| Direct EF regression                            | M&Ms          | SAX        | 2 (ED and ES)    | [finetuned/regression_ef/mnms_sax/mnms_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms_sax/mnms_sax_0.safetensors)<br>[finetuned/regression_ef/mnms_sax/mnms_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms_sax/mnms_sax_1.safetensors)<br>[finetuned/regression_ef/mnms_sax/mnms_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms_sax/mnms_sax_2.safetensors)<br>[finetuned/regression_ef/mnms_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms_sax/config.yaml)                                                                                                                         | [regression_ef.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/regression_ef.py)                 |
| Direct EF regression                            | M&Ms2         | SAX        | 2 (ED and ES)    | [finetuned/regression_ef/mnms2_sax/mnms2_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms2_sax/mnms2_sax_0.safetensors)<br>[finetuned/regression_ef/mnms2_sax/mnms2_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms2_sax/mnms2_sax_1.safetensors)<br>[finetuned/regression_ef/mnms2_sax/mnms2_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms2_sax/mnms2_sax_2.safetensors)<br>[finetuned/regression_ef/mnms2_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms2_sax/config.yaml)                                                                                                           | [regression_ef.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/regression_ef.py)                 |
| Direct EF regression                            | M&Ms2         | LAX 4C     | 2 (ED and ES)    | [finetuned/regression_ef/mnms2_lax_4c/mnms2_lax_4c_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms2_lax_4c/mnms2_lax_4c_0.safetensors)<br>[finetuned/regression_ef/mnms2_lax_4c/mnms2_lax_4c_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms2_lax_4c/mnms2_lax_4c_1.safetensors)<br>[finetuned/regression_ef/mnms2_lax_4c/mnms2_lax_4c_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms2_lax_4c/mnms2_lax_4c_2.safetensors)<br>[finetuned/regression_ef/mnms2_lax_4c/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_ef/mnms2_lax_4c/config.yaml)                                                                 | [regression_ef.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/regression_ef.py)                 |
| Patient BMI regression                          | ACDC          | SAX        | 2 (ED and ES)    | [finetuned/regression_bmi/acdc_sax/acdc_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_bmi/acdc_sax/acdc_sax_0.safetensors)<br>[finetuned/regression_bmi/acdc_sax/acdc_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_bmi/acdc_sax/acdc_sax_1.safetensors)<br>[finetuned/regression_bmi/acdc_sax/acdc_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_bmi/acdc_sax/acdc_sax_2.safetensors)<br>[finetuned/regression_bmi/acdc_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_bmi/acdc_sax/config.yaml)                                                                                                                 | [regression_bmi.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/regression_bmi.py)               |
| Patient age regression                          | M&Ms          | SAX        | 2 (ED and ES)    | [finetuned/regression_age/mnms_sax/mnms_sax_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_age/mnms_sax/mnms_sax_0.safetensors)<br>[finetuned/regression_age/mnms_sax/mnms_sax_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_age/mnms_sax/mnms_sax_1.safetensors)<br>[finetuned/regression_age/mnms_sax/mnms_sax_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_age/mnms_sax/mnms_sax_2.safetensors)<br>[finetuned/regression_age/mnms_sax/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/regression_age/mnms_sax/config.yaml)                                                                                                                 | [regression_age.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/regression_age.py)               |
| Landmark localization by heatmap regression     | Landmark      | LAX 2C     | 1                | [finetuned/landmark_heatmap/lax_2c/lax_2c_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_heatmap/lax_2c/lax_2c_0.safetensors)<br>[finetuned/landmark_heatmap/lax_2c/lax_2c_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_heatmap/lax_2c/lax_2c_1.safetensors)<br>[finetuned/landmark_heatmap/lax_2c/lax_2c_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_heatmap/lax_2c/lax_2c_2.safetensors)<br>[finetuned/landmark_heatmap/lax_2c/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_heatmap/lax_2c/config.yaml)                                                                                                                             | [landmark_heatmap.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/landmark_heatmap.py)           |
| Landmark localization by heatmap regression     | Landmark      | LAX 4C     | 1                | [finetuned/landmark_heatmap/lax_4c/lax_4c_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_heatmap/lax_4c/lax_4c_0.safetensors)<br>[finetuned/landmark_heatmap/lax_4c/lax_4c_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_heatmap/lax_4c/lax_4c_1.safetensors)<br>[finetuned/landmark_heatmap/lax_4c/lax_4c_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_heatmap/lax_4c/lax_4c_2.safetensors)<br>[finetuned/landmark_heatmap/lax_4c/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_heatmap/lax_4c/config.yaml)                                                                                                                             | [landmark_heatmap.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/landmark_heatmap.py)           |
| Landmark localization by coordinates regression | Landmark      | LAX 2C     | 1                | [finetuned/landmark_coordinate/lax_2c/lax_2c_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_coordinate/lax_2c/lax_2c_0.safetensors)<br>[finetuned/landmark_coordinate/lax_2c/lax_2c_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_coordinate/lax_2c/lax_2c_1.safetensors)<br>[finetuned/landmark_coordinate/lax_2c/lax_2c_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_coordinate/lax_2c/lax_2c_2.safetensors)<br>[finetuned/landmark_coordinate/lax_2c/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_coordinate/lax_2c/config.yaml)                                                                                                     | [landmark_coordinate.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/landmark_coordinate.py)     |
| Landmark localization by coordinates regression | Landmark      | LAX 4C     | 1                | [finetuned/landmark_coordinate/lax_4c/lax_4c_0.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_coordinate/lax_4c/lax_4c_0.safetensors)<br>[finetuned/landmark_coordinate/lax_4c/lax_4c_1.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_coordinate/lax_4c/lax_4c_1.safetensors)<br>[finetuned/landmark_coordinate/lax_4c/lax_4c_2.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_coordinate/lax_4c/lax_4c_2.safetensors)<br>[finetuned/landmark_coordinate/lax_4c/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/finetuned/landmark_coordinate/lax_4c/config.yaml)                                                                                                     | [landmark_coordinate.py](https://github.com/mathpluscode/CineMA/blob/main/examples/inference/landmark_coordinate.py)     |

## Pre-trained CineMA Model

The pre-trained CineMA model backbone is available at
[pretrained/cinema.safetensors](https://huggingface.co/mathpluscode/CineMA/blob/main/pretrained/cinema.safetensors) with
configuration [pretrained/config.yaml](https://huggingface.co/mathpluscode/CineMA/blob/main/pretrained/config.yaml).

Following scripts demonstrated how to fine-tune this backbone using
[a preprocessed version of ACDC dataset](https://huggingface.co/datasets/mathpluscode/ACDC):

- [Ventricle and myocardium segmentation](https://github.com/mathpluscode/CineMA/blob/main/examples/train/segmentation.py)
- [Cardiovascular disease classification](https://github.com/mathpluscode/CineMA/blob/main/examples/train/classification.py)
- [Ejection fraction regression](https://github.com/mathpluscode/CineMA/blob/main/examples/train/regression.py)

## Citation

## Contact

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