2

我使用这个脚本来重建 Shepp-Logan 幻象的图像。

基本上,它只是简单地用于radon获取sinogram并用于iradon将其转换回来。

但是,我发现在调整对比度时可以看到非常明显的莫尔条纹。如果我使用我的 CT 图像数据集,这一点会更加明显。

谁能帮我理解这一点?谢谢!

img = phantom(512)*1000;
views = 576;
angles = [0:180/576:180-180/576];
sino = radon(img,angles);
img_rec = iradon(sino,angles);
imshow(img_rec,[]);

调整对比度后的全图:

调整对比度后的全图

具有明显云纹图案的区域:

具有明显云纹图案的区域

4

1 回答 1

3

这可能是由于一些因素造成的:

  • 在 MATLAB文档中,默认iradon使用“Ram-Lak”(称为斜坡滤波器)滤波,并且不使用任何窗口来减弱高频中的噪声。您说“如果我使用我的 CT 图像数据集,这会更加明显”,那是因为图像中有真正的噪声。文档本身建议使用一些窗口:

“因为这个滤波器对投影中的噪声很敏感,所以下面列出的滤波器之一可能更可取。这些滤波器将 Ram-Lak 滤波器乘以一个不强调更高频率的窗口。”

  • 其他不方便与投影仪本身有关。MATLAB的内置函数不考虑探测器尺寸和穿过像素的 X 射线长度radoniradon这些函数只是像素驱动方法,即它们基本上以几何方式投影检测器中的像素并对其进行插值。

可能的解决方案:

今天有更复杂的投影仪[1][2]。正如我在这里所说,我为 2D 计算机断层扫描 (CT) 和 3D 数字乳房断层合成 (DBT) 实现了距离驱动投影仪,因此请随时将其用于您的实验。

例如,我使用距离驱动方法生成了 3600 个等距的体模投影,并使用以下行代码使用 iradon 函数对其进行了重建:

slice = iradon(sinogram',rad2deg(geo.theta));

这里

于 2019-05-20T04:57:59.637 回答