%NPRE435 %% generate the Modified Shepp-Logan phantom, with projection angles defined %% in phi P=phantom('Modified Shepp-Logan', 200); phi=[0:8:179]; [RP,xp]=radon(P,phi); % Radon transform to get the projection data %% Add Gaussian white noise (mean=1, standard-deviation=std) to the projection data std=0.125; % standard deviation of the gaussian noise RP_noisy=imnoise(RP/max(max(RP)), 'gaussian', std)*max(max(RP)); %% Display the noise free projection data figure(1); imshow(phi, xp, RP, [], 'notruesize'); colorbar; %% Display the noisy projection data figure(2); imshow(phi, xp, RP_noisy, [], 'notruesize'); colorbar; %% inverse radon transform to reconstruct the image from noise free data I=iradon(RP, phi); figure(3); imshow(I); colorbar; %% inverse radon transform to reconstruct the image from noisy data I=iradon(RP_noisy, phi); figure(4); imshow(I); colorbar; %% The Assignment: %% Please modify this code to generate projection data using the %% shepp-logan phantom: %% (1) 0~90 degrees only with 1 degree steps %% (2) 0~179 degrees with 8 degree steps %% (2) 0~179 degrees with 16 degree steps %% note that all projection data has added noise using the imnoise() function shown above. %% Reconstruct the image using iradon() and please print %% (1) noisy projection data %% (2) reconstructed images %% (3) the code for generating the projection data and doing the reconstruction %% Please repeat the above steps and chaging the noise standard deviation %% to 0.25 (setting std=0.25) and print the results.