by Tabita Catalán, Matías Courdurier, Axel Osses, Anastasia Fotaki, René Botnar, Francisco Sahli-Costabal, Claudia Prieto
@article{catalanUnsupervisedReconstructionAccelerated2025,
title = {Unsupervised reconstruction of accelerated cardiac cine {MRI} using neural fields},
volume = {185},
issn = {00104825},
url = {https://linkinghub.elsevier.com/retrieve/pii/S001048252401552X},
doi = {10.1016/j.compbiomed.2024.109467},
language = {en},
journal = {Computers in Biology and Medicine},
author = {Catalán, Tabita and Courdurier, Matías and Osses, Axel and Fotaki, Anastasia and Botnar, René and Sahli-Costabal, Francisco and Prieto, Claudia},
month = feb,
year = {2025},
pages = {109467},
}This repository contains the code for our paper:
"Unsupervised reconstruction of accelerated cardiac cine MRI using neural fields", published at Computers in Biology and Medicine. We propose an unsupervised approach for highly undersampled cardiac cine reconstruction based on implicit neural field representations for cardiac cine MRI. We evaluate our method in in-vivo retrospectively undersampled golden-angle radial multi-coil acquisitions for undersampling factors of 13x, 17x and 26x.
Key features:
- We propose STiFF, a spatio-temporal Fourier Features based encoding for periodic signals
- We use a simple Radon-Transform approach for radial data that avoids NUFFT.
Because some things use BART from the terminal and others the Python interface (cfl package), nfcmri.bart needs boths. All the experiments were done with BART 0.7.00 with the code from the GitHub repository (at commit e84f4ba7).
The easiest way of having everything running is installing the code as a pip package. The code uses Jax and Flax, and was tested in the versions given by the requirements.txt.
$ git clone git@github.com:fsahli/NF-cMRI.git
$ cd NF-cMRI
$ python -m venv venv
$ source venv/bin/activate
(venv)$ pip install -r requirements.txt
nfcmri.bart needs to access the cloned repository from BART. Please change the os.environ["TOOLBOX_PATH"] variable in the nfcmri.bart file.
import os, sys
os.environ["TOOLBOX_PATH"] = "/home/tabita/ACIP-MRI/bart" # <-------- reemplace this with the directory where you cloned the BART Toolbox
path = os.environ["TOOLBOX_PATH"] + "/python" #
sys.path.append(path)
import cflWe used the Replication Data for: Multi-Domain Convolutional Neural Network (MD-CNN) For Radial Reconstruction of Dynamic Cardiac MRI. The radial raw data can be downloaded with the code from nfcmri.data_harvard, but you need to set up the variables
HARVARD_FOLDER = '/home/tabita/ACIP-MRI/NF-cMRI/harvardDB' # <---------- replace with path to store the data
BART_DIRECTORY = '/home/tabita/ACIP-MRI/NF-cMRI/data_bart' # <---------- replace with path to store bart outputsCheck that there is a setup.py file in the directory and run to install in editable mode. This allows using the code in any place in the repo and modifying it
pip install -e .You should be able to use the code in Python
import nfcmri demos/nfcmri.pyhas a Demo using the code and comparing against TD-DIP and GRASP.
We defined a custom interface to the BART library nfcmri.bart. The main class for working with radial data is nfcmri.bart.BARTAcquisition, which contains the trayectory and data of the acquisitions, and links results obtained from that acquisition such as coil sensitivity maps and reconstructions with different paramters. To avoid repeating calculations, the results are stored as cfl files.
This work was supported by the following grants:
- Millennium Nucleus for Applied Control and Inverse Problems ACIP NCN19_161
- Millennium Institute for Intelligent Healthcare Engineering iHEALTH ICN2021_004.
- ANID Basal FB210005
- ANID Fondecyt 1210637
- ANID Basal FB210017
- ANID FONDECYT Iniciación 11220816
If you have questions, please contact:
- Tabita Catalán – tcatalanm8@estudiante.uc.cl
- Francisco Sahli - fsc@ing.puc.cl
Or open an issue in this repo.