如何获得矩阵沿特定直线的投影?
How to obtain projections for a matrix along a specific line?
给定线 L(t,θ)
上点的参数化是
x(s):= t cos θ − s sin θ
y(s):= t sin θ + s cos θ
,其中 t
是从原点到与 x-axis
成 θ
角的直线的距离,s
是直线上的某个点。
如何以特定步长 s
在此行 L(t,θ)
处投影图像 Img
。使用它我必须进一步实施氡变换。
我的问题是如何定义步长 s
和 t
的值?
另外,我需要旋转 Img
还是不旋转可以吗?
请帮忙。
我建议你看看周围的多个开源软件。
在层析成像中,旋转图像与旋转机器相同,因此您可以更改每个角度的 source/detector 位置,然后计算连接它们的线。然后,步长由您决定。研究表明(我已经对此进行了测试)如果您使用的是标准像素,则好的值是 s=pixel_size/2
或 0.5
。
如果你正在做二维平行光束那么你可以忘记所有需要执行的几何变换并使用imrotate
生成投影。如果您使用的是扇形光束或锥形光束,那么代码会变得有点复杂。
给定线 L(t,θ)
上点的参数化是
x(s):= t cos θ − s sin θ
y(s):= t sin θ + s cos θ
,其中 t
是从原点到与 x-axis
成 θ
角的直线的距离,s
是直线上的某个点。
如何以特定步长 s
在此行 L(t,θ)
处投影图像 Img
。使用它我必须进一步实施氡变换。
我的问题是如何定义步长 s
和 t
的值?
另外,我需要旋转 Img
还是不旋转可以吗?
请帮忙。
我建议你看看周围的多个开源软件。
在层析成像中,旋转图像与旋转机器相同,因此您可以更改每个角度的 source/detector 位置,然后计算连接它们的线。然后,步长由您决定。研究表明(我已经对此进行了测试)如果您使用的是标准像素,则好的值是 s=pixel_size/2
或 0.5
。
如果你正在做二维平行光束那么你可以忘记所有需要执行的几何变换并使用imrotate
生成投影。如果您使用的是扇形光束或锥形光束,那么代码会变得有点复杂。