使用 matlab 中的内置函数进行 3D 重建(radon 和 iradon )

1 matlab image-processing 3d-reconstruction

我们可以使用 radon 和 iradon 进行 CT 扫描图像并生成 3D 切片吗?当然,radon、iradon 与模型配合得很好,它能与真实的 CT 投影配合使用吗?

我有从物体不同角度拍摄的 CT 图像

CT 图像 1/100

我可以在 MATLAB 中使用内置的 radon-iradon 变换吗?我的目标是从 CT 图像中重建物体。

And*_*uri 5

取决于几何形状。

如果您的几何形状是平行光束几何形状,那么答案是肯定的,因为在这种情况下,您只有一个接一个的大量二维扫描。如果将每个探测器投影行视为独立数据,则可以重建大量 2D 切片(如教程中所示),然后将它们粘在一起以创建 3D 图像。

然而,如果您处理的是锥束几何体,情况会有所不同。氡变换并不直接应用,图像重建需要更先进的东西(应该知道,我的博士学位就是关于这个的!)。如果是这种情况,我建议您使用CBCT 的 FEX 工具箱或众所周知的ASTRA 工具箱。第一个还可以,但有一些内在错误(这不会限制工具箱的功能,您可以从中获得一些不错的图像),第二个被广泛使用。

实际上,最完整的(几何形状方面)是 ASTRA,因为它具有所有可能的不同几何形状作为选项,因此您始终可以独立于几何形状使用 ASTRA。

此外,如果您有兴趣获得更好的图像(如果您的投影很少或有噪声数据,那么 radon 变换很糟糕),您可能有兴趣研究迭代算法,例如 SART、CGLS 或其他算法。如果您使用的是 3D 平行光束,您可以使用 Per Christian Hansen 的AIR 工具进行一些修改,或者再次使用 ASTRA 本身。

现在,小心我年轻的学徒!3D 断层扫描重建的计算成本非常高。非常非常喜欢。某些 3D 算法在 CPU 中可能需要数周时间。我希望您有一个强大的 NVIDIA GPU 来处理这个问题!(除 AIR 之外的所有链接工具箱都支持 GPU 计算)。

一般旁注:您将很难在 stackoverflow 中找到有关此内容的更多信息。我真的正在攻读 CBCT 图像重建的博士学位,这只是你不能在这里问的事情,它比这更复杂。