如何计算断层扫描应用的权重矩阵?

计算科学 算法 网格
2021-12-02 12:22:26

我正在尝试计算一组通过重建区域的直线路径的权重矩阵。

理想情况下,我希望能够对矩形网格区域和大地网格区域执行此操作,其中每个网格单元都是矩形棱柱,其中网格单元边界以纬度、经度和高度指定。

我查看了 ASTRA 库,但无法在我的系统上编译它。

我已经尝试自己实现该算法,但它相当不健壮,有问题,我觉得应该在某个地方有一个明确的算法来做到这一点。

1个回答

执行此操作的规范方法是使用Sidons 算法

你从那里去哪里取决于你的应用程序。如果您的光线路径的宽度有限,您可能需要在重建中考虑这一点

对于测地线,事情变得更加复杂。我相当有信心存在分析解决方案,但我根本不知道。我建议通过蛮力解决这个问题。只需以小步骤在几何图形中跟踪您的线,检查每个步骤所在的区域,并将此步骤与前一个步骤之间的距离添加到相应的矩阵索引中。这本质上是通过梯形方法进行积分。

我在相反的情况下做了类似的事情(弯曲的光线路径,矩形网格),它在实践中运行得非常好。

如果您的数据或重建区域变得大于非常适中的大小(例如,256x256x64),您可能需要考虑从不明确形成矩阵,而直接实现矩阵向量乘积,以用于迭代重建。