实验二扇形束投影数据采集与滤波反投影重建实验 下载本文

内容发布更新时间 : 2024/11/15 18:25:28星期一 下面是文章的全部内容请认真阅读。

南昌大学实验报告

学生姓名: 胡文松 学 号: 6103413007 专业班级: 生医131班 实验类型:□验证□综合■设计□创新 实验日期: 20160516 实验成绩:

实验二、扇形束投影数据采集与滤波反投影重建实验

一、实验目的及要求:

1、 用MATLAB中的fanbeam函数获取Shepp-Logan头模型的扇形束投影数据; 2、 显示扇形束投影数据并和平行束投影数据进行比较; 3、 用MATLAB中的ifanbeam函数实现图像重建; 4、 改变投影参数,观察对重建图像的影响。 二、实验基本原理:

fanbeam 函数,计算扇形束投影。 句法

F = fanbeam(I,D)

F = fanbeam(...,param1,val1,param1,val2,...)

[F,sensor_positions,fan_rotation_angles] = fanbeam(...)

F = fanbeam(I,D) 计算图像I的扇形束投影 (正弦图) , D 是扇形束顶点到旋转中心的距离。F的每一列表示一个角度下的扇形采样数据。探测器圆弧状排布,探测器间相隔一度,旋转360度 [0:359] 。

F = fanbeam(...,param1,val1,param1,val2,...) 指定参数控制扇形投影

'FanRotationIncrement' 指定旋转角度增量,单位为度,默认值为1度。 'FanSensorGeometry' 指定探测器的排布方式

'arc'—探测器圆弧状排布(默认值) 'line' --探测器等距离线性排布

'FanSensorSpacing' 指定探测器间的间隔,探测器圆弧状排布的情况,单位为度,默认值为1。探测器等距离线性排布,单位为像素。

[F,sensor_positions,fan_rotation_angles] = fanbeam(...) 返回探测器位置和旋转角度信息

ifanbeam 函数,由扇形束投影数据重建图像 句法

I = ifanbeam(F,D)

I = ifambeam(...,param1,val1,param2,val2,...) [I,H] = ifanbeam(...)

I = ifanbeam(F,D) 由投影数据F重建图像I。 D是扇形束顶点到旋转中心的距离

I = ifanbeam(...,param1,val1,param2,val2,...) 指定参数控制图像重建。 'FanCoverage' 指定旋转角度范围

'cycle'}—旋转360度 [0,360).

'minimal' – 重建图像所需的最小旋转角度。

'FanRotationIncrement' 同fanbeam 'FanSensorGeometry' 同fanbeam 'FanSensorSpacing' 同fanbeam

'OutputSize' 指定重建图像矩阵的大小,假如不指定,ifanbeam自动决定矩阵大小

(扇形投影重建图像和原始图像矩阵大小可能不同)。

三、主要仪器设备及实验耗材:

具有XP或2000系统,并装有MATLAB系统的PC机。 四、实验内容或步骤以及显示结果:

1.用MATLAB图像处理工具箱的phantom生成Shep-Logan头模型; P=phantom(256); imshow(P)

2.用MATLAB中的fanbeam函数获得头模型的扇形束和平行束投影数据; D = 200;

F = fanbeam(P,D,'FanRotationIncrement',0.5,'FanSensorSpacing',0.5); theta=0:1:179;[R4,xp]=radon(P,theta);%平行束投影数据采集 显示投影数据:

figure.imshow(F,[]); title('扇形束投影数据')

figure,imagesc(theta,xp,R4);xlabel('\\theta');ylabel('x\\prime'); title('平行束180个角度投影数据');

3.用MATLAB中的ifanbeam函数对获得的投影数据进行滤波反投影重建,获得Shepp-Logan模型的重建图像。

I = ifanbeam(F,D, 'FanSensorSpacing',0.5,'FanRotationIncrement',0.5); I4=iradon(R4,1); %平行束投影数据重建 显示重建图像:

figure .imshow(I); title('扇形束投影数据重建')

figure .imshow(I4); title ('平行束180个角度滤波重建图像');

五、实验小结

通过实验结果可知,平行束通过180度扫描产生一个峰值,扇形束扫描360度出现两个峰值