by HPC_ZY
算法原理
体绘制中比较特殊的一种,因为它的输出是各种切面。
就好比用刀切开一个物体,再用相机拍下切面的样子;
因此我们只需要定义一个平面网格,再把网格点所在位置的体像素值提取出来即可。
代码实现
- 数据准备
关于model怎么生成,请查看三维体数据的生成
% 不得不说的事:
% 这个model是从医院拿的DICOM数据,然后事先读取进来的。
% 也不一定非得医学图像,你可以用任意你自己准备好的三维数据。
% 再简单一点讲,model就是一个M*M*D的数组,里面很很多数值,就能用来重建。
model = im2double(model); % 模型
[mRows,mCols,mDims] = size(model); % 模型尺寸
- 参数设定
为了保证整个物体都能显示,所以切面尺寸设置为三维中最大的。也可以设置的很小,显示局部信息。
% 切面尺寸(推荐使用默认设置,当然你可以自行设置)
M = max([mRows,mCols,mDims]);
N = max([mRows,mCols,mDims]);
% 切面分辨率(推荐使用默认设置,当然你可以自行设置)
ms = 512;
ns = 512;
% 采样精度
precison = ([M,N]-1)./([ms,ns]-1);
% 切面中心(推荐使用默认设置,当然你可以自行设置)
mCenter = ([mRows,mCols,mDims]+1)/2;