1.拉东变换
生成一个shepp-logan头部模型
选择投影角度为0-179,步进1°
clc
ph = phantom(256); %phantom函数用于生成一个Shepp-Logan头模型256x256
figure(1), imshow(ph, []); % 显示灰度图像
% 投影角度
theta = 0:1:179; %角度0-179,步进1°
% 生成正弦图
sino = radon(ph, theta); % 执行Radon变换获得正弦图
figure(2), imshow(sino, []); % 显示正弦图
imagesc(sino),colormap(gray),colorbar%二
%imagesc:自动缩放读入的图像;
%colormap:定义图像显示的颜色;
%colorbar:用于显示色彩条;
对figure1(shepp-logan)拉东变换后,其正弦图Figure2如下所示。
至此,拉东变换从图形到正弦图就完成了。下面是在此基础上进行逆拉东变换
2.逆拉东变换
设置3个步进角度,生成3个正弦图,生成3个逆拉东变换图,并将其放在一个图中
解释
subplot(231),imagesc(sino1);意为设置一个2行3列的结构,sino1为第1幅图
subplot(232),imagesc(sino2);意为设置一个2行3列的结构,sino2为第2幅图
subplot(233),imagesc(sino3);意为设置一个2行3列的结构,sino3为第3幅图
clc
ph = phantom(256); %phantom函数用于生成一个Shepp-Logan头模型256x256
figure(1), imshow(ph, []); % 显示灰度图像
% 投影角度
theta1 = 0:1:179; %角度0-179,步进1°
theta2 = 0:5:179; %角度0-179,步进5°
theta3 = 0:10:179; %角度0-179,步进10°
% 生成正弦图
sino1 = radon(ph, theta1); % 执行Radon变换获得正弦图
sino2 = radon(ph, theta2);
sino3 = radon(ph, theta3);
%Radon反变换
J1 = iradon(sino1,theta1);%Radon反变换
J2 = iradon(sino2,theta2);
J3 = iradon(sino3,theta3);
% 显示正弦图
figure(2)
subplot(231),imagesc(sino1);%imagesc:自动缩放读入的图像;
subplot(232),imagesc(sino2);
subplot(233),imagesc(sino3);
%设置图颜色,色彩条
colormap(gray),colorbar%colormap:定义图像显示的颜色;colorbar:用于显示色彩条;
%显示图像进行Radon反变换
subplot(234),imshow(J1);
subplot(235),imshow(J2);
subplot(236),imshow(J3);