Skip to content

MRI: Iterative image reconstruction with data with various SNRs

Fa-Hsuan Lin edited this page Aug 20, 2023 · 3 revisions

Here are routines to reconstruct MR images using an iterative solver. The purpose is to reconstruct images based on data encoded by either spatially linear or nonlinear gradient fields, including PatLoc or O-space imaging.

Data:

Definitions

Note: Please refer to the page for the range for k-space coordinates and the strength of spatial encoding magnetic fields (gradients).

MRI reconstruction: fully sampled data in a Cartesian trajectory with a volume coil; SNR changes

This example reconstructs an image using a one-channel coil with a homogeneous sensitivity map. It samples data in a rectilinear Cartesian k-space with full sampling. Synthetic noise in the k-space is added to the encoded data.

We added the complex-valued noise following a normal distribution with unit variance to the encoded MRI data. The SNR in this example was arbitrarily set to 10.

            %simulate noises based on a given SNR
            noise=randn(size(ACC_enc))+sqrt(-1).*randn(size(ACC_enc));
            noise_power=sum(abs(noise(:)).^2);
            signal_power=sum(abs(ACC_enc(:)).^2);
            noise=noise./sqrt(noise_power).*sqrt(signal_power)./SNR(snr_idx);

The image to be simulated (ground truth) is an axial slice of the brain. The reconstructed image shows a noisy image. These were shown in the following figure left and right.

figure;
imagesc(x); axis off image;
figure;
imagesc(Recon_opt); axis off image;

The history of the iterative reconstruction was shown below. The first reconstruction is already the final reconstruction: no much difference in the four iterative calculations.

Clone this wiki locally