主要内容

扇形波束投影

请注意

有关沿平行路径从线积分创建投影数据的信息,请参阅拉东变换.若要将扇形光束投影数据转换为平行光束投影数据,请使用fan2para函数。

fanbeam函数计算预测图像矩阵沿指定方向的。二维函数的投影f (x, y)是线积分的集合。的fanbeam函数计算沿单一源辐射路径的线积分,形成扇形。要表示图像,则fanbeam函数通过围绕图像中心旋转源来从不同角度对图像进行多次投影。下图显示了在指定旋转角度下的单个扇束投影。

旋转角度下的扇束投影

当您使用fanbeam函数时,可以指定图像以及扇形光束投影的顶点与旋转中心(图像中的中心像素)之间的距离作为参数。的fanbeam函数根据图像的大小和设置来确定光束的数量fanbeam参数。

FanSensorGeometry参数指定传感器对齐方式:“弧”“行”

风扇传感器几何 描述
“弧” fanbeam沿弧线定位传感器,以1度间隔间隔传感器。使用FanSensorSpacing参数,通过指定每个波束之间的角度来控制传感器之间的距离。这是默认的风扇传感器几何形状。
“行” fanbeam将传感器定位在直线上,而不是弧线上。使用FanSensorSpacing参数指定传感器之间的距离(像素)x´轴。

FanRotationIncrement参数指定旋转角度的增量。默认情况下,fanbeam以1度的间隔将源围绕中心像素旋转,以不同角度进行投影。

下图说明了这两种几何图形。第一个图展示了fanbeam函数的时候FanSensorGeometry被设置为“弧”(默认)。注意如何通过指定光束的角间距来指定传感器之间的距离。

扇形光束投影与圆弧几何

的几何图形fanbeam函数的时候FanSensorGeometry被设置为“行”.在该图中,注意如何通过指定传感器之间的距离(以像素为单位)来指定传感器的位置x´轴。

扇形光束投影与线几何

基于扇形波束投影数据的图像重建

要从扇形光束投影数据重建图像,使用ifanbeam函数。使用这个函数,您可以指定投影数据以及创建投影数据时扇形光束投影顶点与旋转中心之间的距离作为参数。例如,这段代码重新创建了映像从投影数据来看P和距离D

I = ifanbeam (P、D);

默认情况下,ifanbeam函数假设扇形光束投影数据是使用圆弧扇形传感器几何体创建的,光束以1度角度间隔,投影以1度增量在整个360度范围内进行。与fanbeam功能,可以使用ifanbeam参数来指定投影数据的这些特征的其他值。对这些参数使用创建投影数据时使用的相同值。有关这些参数的更多信息,请参见ifanbeam

ifanbeam函数将扇形光束投影数据转换为平行光束投影数据fan2para函数,然后调用iradon函数执行图像重建。由于这个原因,ifanfeam函数支持某些金宝appiradon参数,它传递给iradon函数。看到氡反变换有关的更多信息iradon函数。

使用反扇形光束投影重建图像

这个例子展示了如何使用fanbeamifanbeam从样本图像形成投影,然后根据投影重建图像。

生成测试图像并显示它。测试图像是谢普-洛根头部幻影,可以由幻影函数。这幅幻像说明了现实世界人类头部的层析成像的许多特性。

P =幻影(256);imshow (P)

图中包含一个轴对象。axis对象包含一个image类型的对象。

计算测试图像的扇束投影数据,使用FanSensorSpacing参数来改变传感器间距。该示例使用扇形光束弧几何,因此您可以通过指定光束的角间距来指定传感器之间的间距。第一呼叫间隔梁2度;第二个是1度;第三个是0.25度。在每次调用中,旋转中心和投影顶点之间的距离恒定为250像素。此外,fanbeam围绕中心像素以1度增量旋转投影。

D = 250;dsensor1 = 2;F1 = fanbeam (P D“FanSensorSpacing”, dsensor1);dsensor2 = 1;F2 = fanbeam (P D“FanSensorSpacing”, dsensor2);dsensor3 = 0.25;[F3, sensor_pos3, fan_rot_angles3] = fanbeam(P,D,...“FanSensorSpacing”, dsensor3);

绘制投影数据F3.因为fanbeam计算从0到360度旋转角度的投影数据,相同的模式发生在180度偏移。从两边采集相同的特征。

图,imagesc(fan_rot_angles3, sensor_pos3, F3) colormap(hot);colorbar包含(“风扇旋转角度(度)”) ylabel (“风扇传感器位置(度)”

图中包含一个轴对象。axis对象包含一个image类型的对象。

利用扇形光束投影数据重建图像ifanbeam.在每次重建中,将风扇传感器间距与之前创建投影数据时使用的间距进行匹配。示例使用OutputSize参数,以约束每次重建的输出大小与原始图像的大小相同P.在输出中,注意重建的质量如何随着投射光束数量的增加而提高。第一个图片,Ifan1,使用梁的2度间距创建;第二张图片,Ifan2,使用梁的1度间距创建;第三个图片,Ifan3,使用0.25间距的梁创建。

output_size = max(大小(P));Ifan1 = ifanbeam (F1, D,...“FanSensorSpacing”dsensor1,“OutputSize”, output_size);图中,imshow (Ifan1)标题(“Ifan1”

图中包含一个轴对象。标题为Ifan1的axis对象包含一个类型为image的对象。

Ifan2 = ifanbeam (F2 D...“FanSensorSpacing”dsensor2,“OutputSize”, output_size);图中,imshow (Ifan2)标题(“Ifan2”

图中包含一个轴对象。标题为Ifan2的axis对象包含一个类型为image的对象。

Ifan3 = ifanbeam (F3, D,...“FanSensorSpacing”dsensor3,“OutputSize”, output_size);图中,imshow (Ifan3)标题(“Ifan3”

图中包含一个轴对象。标题为Ifan3的axis对象包含一个类型为image的对象。