分享一个做的很好的医学三维可视化库,能够对三维体数据进行快速三维重建,简单讲解其功能和使用方法。
非常合适只关注可视化结果,而不需要输出或计算过程的用户。
by HPC_ZY
准备
在附加功能项中查找并下载Viewer3D
代码
这里我们使用MATLAB自带的医学体数据 mri.mat。
由于该数据第三维度为空,所以使用前利用squeeze()去除无效维度。
注:viewer3d()输入可以是一个或多个,类型使用double
clear; close all; clc
% 注意注意注意:
% MATLAB有个自带的影像数据,名为 mri.mat。
% 里面存有一个变量,名为 D 。 是一个四维数据(含时间轴,但实际上只有一帧)
load mri;
model = squeeze(D); % 所以这里使用squeeze,把时间轴去掉,变为三维矩阵。 就可以使用啦
% 预处理
V = mat2gray(model);
% 提取高亮度(骨骼+血管)
M = V>0.8;
M = double(M);
% 显示
viewer3d(V,M)
界面
-
主界面
-
体数据选取
从自己传入的一个或多个体数据中选取想要可视化的。若体数据尺寸一致,还可以同窗叠加显示。
-
绘制方式选择
可通过以下文章了解各种医学影像重建算法:
https://www.meipian.cn/by2s2ed?from=timeline -
绘制设置
在这里可以选择绘制结果的分辨率,模型的缩放比例,中间过程的显示大小,以及插值方式等。
-
测量功能
在切面绘制模式下还能使用测量功能,计算距离、选择区域等。
示例
其他
作为过来人最后说一句,当显示结果与预期不符时,极大可能是自己的体数据存在问题。如:
1 存在负数或NaN(由插值或其他预处理算法引起)
2 数据不为double类型