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 分割 三维重建

相关推荐
程序猿小D12 分钟前
第二百六十七节 JPA教程 - JPA查询AND条件示例
java·开发语言·前端·数据库·windows·python·jpa
杰哥在此2 小时前
Python知识点:如何使用Multiprocessing进行并行任务管理
linux·开发语言·python·面试·编程
zaim14 小时前
计算机的错误计算(一百一十四)
java·c++·python·rust·go·c·多项式
PythonFun8 小时前
Python批量下载PPT模块并实现自动解压
开发语言·python·powerpoint
炼丹师小米8 小时前
Ubuntu24.04.1系统下VideoMamba环境配置
python·环境配置·videomamba
GFCGUO8 小时前
ubuntu18.04运行OpenPCDet出现的问题
linux·python·学习·ubuntu·conda·pip
985小水博一枚呀10 小时前
【深度学习基础模型】神经图灵机(Neural Turing Machines, NTM)详细理解并附实现代码。
人工智能·python·rnn·深度学习·lstm·ntm
萧鼎11 小时前
Python调试技巧:高效定位与修复问题
服务器·开发语言·python
IFTICing11 小时前
【文献阅读】Attention Bottlenecks for Multimodal Fusion
人工智能·pytorch·python·神经网络·学习·模态融合
大神薯条老师11 小时前
Python从入门到高手4.3节-掌握跳转控制语句
后端·爬虫·python·深度学习·机器学习·数据分析