CT图像三维重建(附源码).pdf
程序流图:
MATLAB源码:
ClC;
clearall;
closeall;
%loadmri载入mri数据,是matlab自带库压
%ph=squeeze(D);缩载入的数据D,并赋值给ph
ph=pha
ntom3d(18);
prompt={Enterthe提示信息输入1到7的片的数字”
name=lnputnu弹出框名称
哨鼬a默认数字
R郁郁司t
putdlg(prompt,name,1,defaulta弹出框,并得到用户的输入信息
nswer)%
P=squeeze(ph(:,:,strnum(cellmat(numln将用户的输入信息转换成数字,并
put))));%从ph中得到相应的片信息P
imshow(P)展示图片P
D=50;将D赋值为50,是从扇束顶点到旋转
中心的像素距离.
dsensorl=;%正实数指定扇束传感器的间距
F1=fanbeam(P,D,FanSensorSpacing.dsensorl);%通过P,D等计算扇束的数据值
dsensor=1;%正实数指定扇束传感器的间距1
F=fanbeam(P,D,FanSensorSpacing.dsensor);%通过P,D等计算扇束的数据值
dsensor3=%正实数指定扇束传感器的间距0.5
[F3^sensor_pos3,fan_rotangles3]=fanbeam(PD,...
,
FanSensorSpacing,dsensor3);%通过P,D等计算扇束的数据值,并
得到扇束传感器的位置sensor_pos3和旋转角度fan_rot_angles3
figure,%创建窗口
imagesc(fan_rot_angles3,sensor_pos3,F3)%根据计算出的位置和角度展示=3的
图片colormap(hot);
colorbar;设置色图为hot
显示色栏
xlabelfFanRotationAngle(degrees))ylabel(FanSensor定义x坐标轴
Position(de