fanbeam
扇形波束变换
语法
F = fanbeam (I D)
F = fanbeam(…,param1, val1, param1, val2,...)
[F, fan_sensor_positions, fan_rotation_angles] = fanbeam(…)
描述
F = fanbeam (I D)
计算扇形波束投影数据(正弦图)F
从图像我
.
D
是扇形波束顶点到旋转中心的距离,以像素为单位。旋转中心是图像的中心像素,定义为地板((大小(I) + 1) / 2)
.D
必须足够大,以确保扇形光束顶点在所有旋转角度的图像外。看到提示查阅有关指定D
.下图说明了D与一个扇梁几何形状的扇梁顶点的关系。看到FanSensorGeometry
参数获取更多信息。
每一列的F
包含一个旋转角度的风扇光束传感器样本。的列数F
是由风机转动增量决定的。默认情况下,风扇转速增量为1度左右F
有360列。
的行数F
由传感器的数量决定。fanbeam
通过计算在任何旋转角度下覆盖整个图像所需的光束数量来确定传感器的数量。
有关如何指定旋转增量和传感器间距的信息,请参阅FanRotationIncrement
而且FanSensorSpacing
下面的参数。
F = fanbeam(…,param1, val1, param1, val2,...)
指定控制扇形光束投影各个方面的参数,如下所示。参数名可以缩写,大小写无关紧要。
“FanRotationIncrement”,
指定扇形光束投影旋转角度增量的正实标量。以度。缺省值为1。
“FanSensorGeometry”,
传感器的定位,指定为值“弧”
或“行”
.在“弧”
几何上,传感器沿圆弧均匀分布,如下图所示。这是默认值。
在“行”
几何图形上,传感器沿一条直线均匀分布,如下图所示。
“FanSensorSpacing”,
指定扇形波束传感器间距的正实标量。值的解释取决于设置“FanSensorGeometry”
.如果“FanSensorGeometry”
被设置为“弧”
(默认值),该值以度为单位定义角间距。缺省值为1。如果“FanSensorGeometry”
是“行”
,该值指定线性间距。缺省值为1.
请注意
这个线性间距是在x '轴。的x '每一列的轴,上校
的,F
是面向fan_rotation_角度(col)
角度从x轴逆时针方向。两个轴的原点都是图像的中心像素。
[F, fan_sensor_positions, fan_rotation_angles] = fanbeam(…)
返回fan_sensor_positions中风扇波束传感器的位置,以及在fan_rotation_angles中计算风扇波束投影的旋转角度。
如果“FanSensorGeometry”
是“弧”
(默认值),fan_sensor_positions包含风扇-波束展开角。如果“FanSensorGeometry”
是“行”
, fan_sensor_positions包含风扇波束沿的传感器位置x '轴。看到“FanSensorSpacing”
为更多的信息。
类的支持万博1manbetx
我
可以逻辑
或数字。所有其他数字输入和输出都可以双
.输入不能是稀疏的。
例子
提示
作为指导方针,尝试制作D
大于图像对角线尺寸一半的几个像素,计算如下
√(我,1)^ 2 +大小(我,2)^ 2)
返回的值F
是扇形光束投影的数值近似。该算法依赖于拉东变换,插值到扇形波束几何。结果取决于所使用的参数。当图像变大时,你可以期待更精确的结果,D
较大,且对于更接近图像中间、远离边缘的点。
参考文献
Kak, a.c., & Slaney, M.,计算机层析成像原理,IEEE出版社,NY, 1988, 92-93页。