Skip to content

zherenz/ImT-MRD

Repository files navigation

Advancing accessible low-field MRI with a universal denoising Imaging Transformer (ImT-MRD): Towards fast and high-quality imaging

Deep learning enabled MRI general denoising at 0.55T (ISMRM 2024, Oral, Magna Cum Laude Award) [ISMRM Proceedings]

Advancing accessible low-field MRI with a universal Imaging Transformer denoising network: Towards fast and high-quality imaging [Arxiv]

Imaging transformer [Arxiv]

Pipeline overview:


Network architecture:

Notes

Only inference code is included in this repo.
Two models were provided: Model-complex and Model-magnitude-preview(under development).
Matrix size < 400 * 400 is preferable.

Command

cd mri

command =
"python3 run_inference_batch_local.py --input_dir " + \
    input_dir + " --output_dir " + \
    output_dir + " --power_norm 1600.0 --scaling_factor 1.0 --im_scaling 1.0 --gmap_scaling 1.0 --saved_model_path " + model_path

if separate_complex:
    command += " --separate_complex"

if save gif or nii:
    command += " --save_gif " + str(save_gif)
    command += " --save_nii " + str(save_nii)

Example

Model-complex:
python3 run_inference_batch_local.py --input_dir ../examples/ --output_dir ../examples/ --saved_model_path ../pretrained_model_weights/0804-noGmap-l1c1_1e-3_vgg0.1-PN16-03perturb3-NL1to10-noWL-mri-HRNET-conv-parallel-batch2d-sophia-C-32-H-32-MIXER-conv-1-T1L1G1T1L1G1_T1L1G1T1L1G1T1L1G1_T1L1G1T1L1G1T1L1G1_T1L1G1T1L1G1T1L1G1-20231017_031036_complex_residual_20-10-49-20231016_best.pts --separate_complex --save_gif 5 --save_nii 5 --save_input_imgs

Model-magnitude:
python3 run_inference_batch_local.py --input_dir ../examples_mag/ --output_dir ../examples_mag/ --saved_model_path ../pretrained_model_weights/0804_image_l1c1_1e-3_vgg0.1-PN16-03perturb3-NL1to10-noWL-mri-HRNET-conv-parallel-batch2d-sophia-C-32-H-32-MIXER-conv-1-T1L1G1T1L1G1_T1L1G1T1L1G1T1L1G1_T1L1G1T1L1G1T1L1G1_T1L1G1T1L1G1T1L1G1-20240416_231332_residual_16-13-46-20240416_best.pts --save_gif 5 --save_input_imgs

I/O

Input directory

folder1(scan1)
 -im_real.npy: shape=(x,y,slc), dtype=float
 -im_imag.npy: shape=(x,y,slc), dtype=float
folder2(scan2)
...
Notes: if using Model-magnitude, magnitude images will be generated from abs(im_real + 1j*im_imag) throughout pre-processing. Otherwise you can provide magnitude images using im_real = im_magnitude and im_imag = np.zeros_like(im_real).

Output directory

folder1(scan1)
 -output_real.npy: shape=(x,y,slc), dtype=float, (if separate_complex)
 -output_imag.npy: shape=(x,y,slc), dtype=float, (if separate_complex)
 -output.npy: shape=(x,y,slc), dtype=complex
folder2(scan2)
...

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages