%% Compressed sensing MRI reconstruction based SIDWT clear all close all clc currentFolder = pwd; addpath(genpath(currentFolder)); %% data load im1 figure,imshow(abs(im1)); title('fully-sampled image') % fully sampled image. [row,column]=size(im1); %% masks load mask1 paramSIDWT.Fu=Fu_downsample(mask1,row,column); paramSIDWT.U=mask_downsample(mask1,row,column); y1 = paramSIDWT.Fu * im1; zerofilling = ifft2c(paramSIDWT.U'*y1); figure,imshow(abs(ifft2c(paramSIDWT.U'*y1))); title('undersampled k-space data') %% SIDWT paramters analysis filterType = 'Daubechies'; filterSize = 4; wavScale = 4; complex_Yes = 1; paramSIDWT.psi = SIDWT(filterType,filterSize,wavScale,complex_Yes); % define the shift-invariant wavelets operator paramSIDWT.lamda=5*1e3; tic; im1_Rec=solver_ADMC(y1,mask1,paramSIDWT); time_SIDWT_CS1=toc % solve the L1 norm minimization problem with ADMC Evaluation_ana = Evaluation_CS_MRI(im1,im1_Rec) %%  synthesis for lamda=10:20:1e3 paramSIDWT.lamda=lamda; alpha=solver_ADMC_syn(y1,mask1,paramSIDWT); Rim = paramSIDWT.psi' *alpha; Evaluation_syn = Evaluation_CS_MRI(im1,Rim) end Evaluation_zerofilling = Evaluation_CS_MRI(im1,zerofilling) figure,imshow(abs(im1_Rec)); title('Reconstructed image')Copy the code