PyQt Python 使用 VTK ITK 进行分割 三维重建 医学图像可视化系统 流程

效果:

重建流程:

1. 输入 可以读取DICOM ,nii nrrd 等数据

设置读取器以加载 DICOM 图像系列。

使用 itk::GDCMImageIO 作为 DICOM 图像的输入输出接口。

使用 itk::GDCMSeriesFileNames 获取指定路径下的所有 DICOM 文件名。

使用 itk::ImageSeriesReader 读取 DICOM 图像序列,并将其作为3D图像存储。

2. 分割

创建 itk::ThresholdImageFilter 进行图像阈值分割。也可以使用 等高线分割,区域增加分割,AI 分割

3. 连通性分析

创建 itk::ConnectedComponentImageFilter 对分割后的图像进行连通性分析。

对每个连通区域分配唯一的标签。

获取标记(labeled)图像。

获得连通性分析后的图像像素,后面就可以对像素做处理

4. 选定区域处理

遍历用户选定的点。

对每个点,将屏幕坐标转换为图像坐标。

从标记图像中提取每个点的标签值。

将提取的标签值存储在列表中。

5. 转换为 VTK 图像

将 ITK 图像转换为 VTK 的 vtkImageData。

并部分不能颜色显示;
6. 创建并配置 VTK 体渲染器

创建 vtkPolyDataMapper vtkActor 并设置输入数据。

定义颜色 ,以及体属性。

7. 可视化

创建 VTK 渲染器和渲染窗口。

添加体对象到渲染器。

设置背景色并重置摄像机。

启动渲染窗口交互器以开始交互式查看。

8.输出 保存

三维模型,可以进行单独保存,或全部保存

这个过程涵盖了从读取 医学图像、图像处理(阈值分割和连通性分析)、用户交互(选定区域处理)到最终的3D可视化。

视频:

PyQt Python VTK ITK 分割 三维重建

相关推荐
mortimer2 小时前
安装NVIDIA Parakeet时,我遇到的两个Pip“小插曲”
python·github
@昵称不存在2 小时前
Flask input 和datalist结合
后端·python·flask
赵英英俊3 小时前
Python day25
python
东林牧之3 小时前
Django+celery异步:拿来即用,可移植性高
后端·python·django
何双新3 小时前
基于Tornado的WebSocket实时聊天系统:从零到一构建与解析
python·websocket·tornado
AntBlack4 小时前
从小不学好 ,影刀 + ddddocr 实现图片验证码认证自动化
后端·python·计算机视觉
凪卄12134 小时前
图像预处理 二
人工智能·python·深度学习·计算机视觉·pycharm
巫婆理发2224 小时前
强化学习(第三课第三周)
python·机器学习·深度神经网络
seasonsyy4 小时前
1.安装anaconda详细步骤(含安装截图)
python·深度学习·环境配置
半新半旧4 小时前
python 整合使用 Redis
redis·python·bootstrap