2

我想知道是否有人遇到过这个问题。

我可以从类似于原始图像的 matlab 重建图像,但是,实际值总是不同的。

例如,原始图像在矩阵中的值范围为 0 到 1,而我的重建图像的范围为 -0.2 到 0.4。

重建的图像看起来与原始图像相似,只是图像中的数据具有不同的比例。

这是我的意思的示例代码。

p=phantom(64);
theta=0:1:179;
r=radon(p,theta);
ir=iradon(r,theta);

figure
subplot(1,2,1);imagesc(p)
subplot(1,2,2);imagesc(ir)
4

1 回答 1

0

这些结果与我发现的不太一样。

>> min(min(ir))

-0.0583

>> max(max(ir))

0.9658

请记住,逆 Radon 变换只能近似于原始图像的重建。只有 180 次观看,肯定会有一些差异。

Radon 变换固有地导致一些信息丢失,因为必须将像素投影到新的坐标系上并重新分箱 - 在投影和反投影期间。这导致重建的图像略有退化。氡变换与傅里叶变换不同。

为了获得更好的效果,请尝试使用更大的图像尺寸和更多的视角。

p=phantom(256);
theta=0:0.01:179;

还可以尝试使用不同的滤波器(FBP 中的 F),例如 Shepp-Logan,它可以降低高频并减少过冲。

ir=iradon(r,theta,'linear','Shepp-Logan');
于 2015-06-08T23:57:31.627 回答