实验一平行束投影数据采集与滤波反投影重建实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
南昌大学实验报告
学生姓名:胡文松学号: 6103413007 专业班级:生医131班
实验类型:□验证□综合■设计□创新实验日期: 20160509 实验成绩:
实验一、平行束投影数据采集与滤波反投影重建实验
一、实验目的及要求:
用程序模拟X射线的投影,获得Shepp-Logan模型的投影数据。对获得的投影数据进行滤波反投影重建,获得Shepp-Logan模型的重建图像。
二、实验基本原理:
X射线穿过人体时,人体的各种组织对X射线有不同程度的衰减,即不同的组织有不同的线性衰减系数μ。假设强度为I0的X射线穿过均匀分布衰减系数为μ的物体,行进了x的距离,强度变为I,按Beer定理有
或①
若物体时分段均匀的,系数分别是μ1、μ2、μ3、...,相应的长度为x1,x2,x3,...,则下式成
立:
②
更一般的可用下面的积分式表示:
③
由于只是模拟X射线的投影过程,我们简化了问题。假设断面的结构如图 1.1(Shepp-Logan)所示(各图元均为椭圆),各个椭圆表示了人体的不同的组织(内部是均匀的),分别有不同的线性衰减系数μ。那么,就可利用公式②来求某条X射线投影值。各个椭圆(组织)的线性衰减系数μ(Shepp-Logan图的各椭圆的位置、大小和线性衰减系数参见表1.1)是已知的,问题就是球X射线穿过椭圆时的行进距离。设椭圆的长短轴为a,b;X射线与b的夹角为Φ;椭圆中心到X射线的距离为d。如图1.2所示。这样可由④⑤求得X射线穿过椭圆时的行进距离。再乘上各个椭圆的线性衰减系数μ后累加起来就可得到X 射线的投影值。
④
⑤
图1.1 图1.2
表1.1Shepp-Logan头部模型
参数编号cx(中心x座标) yx(中心y座标) a(水平轴) b(垂直轴) r(椭圆倾角) μ(线性衰减系数)
1 0.5538 -0.3858 0.033 0.206 -18 0.03
2 0.06 -0.605 0.02
3 0.023 0 0.01
3 0 -0.605 0.023 0.023 0 0.01
4 -0.08 -0.60
5 0.04
6 0.023 0 0.01
5 0 -0.1 0.04
6 0.046 0 0.01
6 0 0.1 0.046 0.046 0 0.01
7 0 0.35 0.21 0.25 0 0.01
8 -0.22 0 0.16 0.41 18 -0.02
9 0.22 0 0.11 0.31 -18 -0.02
10 0 -0.0184 0.6624 0.874 0 -0.98
11 0 0 0.69 0.92 0 1
表1.1 r的单位是角度,μ为负值时表示削弱原有椭圆的衰减系数
利用滤波反投影重建算法,实现对Shep-Logan头模型的重建。要用到的原理有:傅立叶切片定理、快速傅立叶变换FF T以及滤波函数的设计。
三、主要仪器设备及实验耗材:
具有XP或2000系统,并装有MATLAB系统的PC机。
四、实验内容及结果:
1.用MATLAB图像处理工具箱的phantom生成Shep-Logan头模型;
P=phantom(256);
imshow(P)
2.用MATLAB中的radon函数获得Shepp-Logan模型的投影数据;
计算Shep-Logen头模型18个角度、36个角度、90个角度和180个角度的投影数据。theta1=0:10:170;[R1,xp]=radon(P,theta1);
theta2=0:5:175;[R2,xp]=radon(P,theta2);
theta3=0:2:178;[R3,xp]=radon(P,theta3);
theta4=0:1:179;[R3,xp]=radon(P,theta4);
显示投影数据:
figure,imagesc(theta1,xp,R1);xlabel(’\theta’);ylabel(’x\prime’);
figure,imagesc(theta2,xp,R2);xlabel(’\theta’);ylabel(’x\prime’);
figure,imagesc(theta3,xp,R3);xlabel(’\theta’);ylabel(’x\prime’);
figure,imagesc(theta4,xp,R4);xlabel(’\theta’);ylabel(’x\prime’);
3.用MATLAB中的i radon函数对获得的投影数据进行滤波反投影重建,获得Shepp-Logan 模型的重建图像。
I1=iradon(R1,10);
I2=iradon(R2,5);
I3=iradon(R3,2);
I4=iradon(R4,1);
显示重建图像:
imshow(I1);
imshow(I2);
imshow(I3);
imshow(I4);
4.用MATLAB中的i radon函数对获得的投影数据进行直接反投影重建,同3中的重建图像进行比较。
I11=iradon(R1,10,‘None’);
I22=iradon(R2,5,‘None’);
I33=iradon(R3,2,‘None’);
I44=iradon(R4,1,‘None’);
五、实验小结
本次实验内容较少,通过本次实验我了解了反投影重建算法的方法.了解了利用 radon 和 iradon 函数实现平行束投影和反投影重建算法。了解了利用 fanbeam 和 ifanbeam 函数实现扇形束投影和反投影重建算法。对Shepp‐Logan 模型的投影不同角度的图行有了直观的了解。