📄 ct3dart.m
字号:
%--CT3DART,对三维温度场模型的ART重建算法
%--p1为投影值,p为对p1重排后得到的矩阵
%--F(:,n)为每层的二维重建矩阵,V为重建的三维矩阵
[p1,K,S]=CTSimpson3D(4,26);
[W,N,I,J]=ctw(4,26,26);
for n=1:N %对投影值重排
P=p1(:,:,n);
p(n,:)=P(1:I);
end
F=[]; %重建
for n=1:N
F(:,n)=ones(J,1).*0.4;
for k=0:10*I
i_k=mod(k,I)+1;
if sum(W(i_k,:))==0
F(:,n)=F(:,n);
else F(:,n)=F(:,n)+0.3*(p(n,i_k)-W(i_k,:)*F(:,n)).*W(i_k,:)'/sum(W(i_k,:).^2);
end
for j=1:J
if F(j,n)<0
F(j,n)=0;
end
end
end
end
V=reshape(F,N,N,N);%对重建矩阵重排
for n=1:N
v1=V(:,:,n);
V(:,:,n)=v1';
end
[X,Y,Z]=meshgrid(-0.5:0.04:0.5,-0.5:0.04:0.5,0.0:0.04:1);%画切片图
figure;
d3dslice=slice(X,Y,Z,V,0,0,[0,0.2,0.4,0.6,0.8,1]);
set(d3dslice,'FaceColor','interp','EdgeColor','none');
axis([-0.5 0.5 -0.5 0.5 0 1]);
hcont=contourslice(X,Y,Z,V,0,0,[0,0.2,0.4,0.6,0.8,1]);
set(hcont,'EdgeColor',[.6 .6 .6],'LineWidth',1);
colorbar('vert');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -