PINNing Cerebral Blood Flow: Analysis of Perfusion MRI in Infants using Physics-Informed Neural Networks
This repository contains the source code, data, and supplementary materials for the research paper titled "PINNing Cerebral Blood Flow: Analysis of Perfusion MRI in Infants using Physics-Informed Neural Networks" by Christoforos Galazis, Ching-En Chiu, Tomoki Arichi, Anil A. Bharath and Marta Varela.
This project introduces SUPINN, a novel spatial uncertainty-based physics-informed neural network (PINN) (see Fig.2), designed to estimate cerebral blood flow (CBF) and other parameters from noisy arterial spin labeling (ASL) MRI data in infants (see Fig.1). By incorporating spatial uncertainties, SUPINN outperforms traditional methods in estimating CBF, bolus arrival time, and blood relaxation time, providing physiologically plausible and spatially smooth results. This framework has the potential to improve our understanding of infant cardio-brain networks, aiding in the detection and management of neurological issues in this vulnerable population.
.
├── data_mat/ # The expected location of the dataset (research data is not currently available)
├── src/ # Source code for the models and experiments
│ ├── data/ # Code related to data loading and processing
│ ├── model/ # Code related to PINN model
│ └── run_training.py # The main execution file
├── figures/ # Figures used in the paper
├── README.md # This README file
└── environment.yml # Required packages and dependencies
Ensure you have Anaconda or Miniconda installed.
-
Clone the repository:
git clone https://github.com/cgalaz01/supinn.git cd supinn
-
Create a new conda environment and isntall packages:
conda env create -f environment.yml
Please note that the YAML file includes instructions specifically for installing the CPU version of TensorFlow. See https://www.tensorflow.org/install/pip on how to install the GPU version on your system.
-
Activate new environment:
conda activate supinn
Run the PINN training script using the following command:
python run_training.py [options]
To see available options run:
python run_training.py --help
The default arguments are used to setup the proposed SUPINN model.
This project is licensed under the MIT License - see the LICENSE file for details.
Feel free to open an issue or submit a pull request if you find any issues or have suggestions for improvements.