继续前文:在框架需求上,因为要链接影像类设备, 传输可能会用NTSC/PAL这类video传输 (->可能涉及ffmpeg) 暂时不会放在这次搭建的平台里面 (可能留接口二次开发);这次主要考虑使用DICOM传输协议和文件格式进行传输;而VTK在DICOM文件的传输和处理上可以说是无用武之地,所以后续我又加入了DCMTK;
我们可能使用过DCMTK binary的可执行文件,它可以根据AE 和 IP 包装传输的头文件,和SCP/SCU进行通讯,进行C-Store C-Move C-Get的操作。相关的配置可以参考(实测VS2017和DCMTK3.6.6编译测试没有问题):(1条消息) VS2019+DCMTK3.6.6环境配置_boss-dog的博客-CSDN博客s
这一个月里面研究了VTK和DCMTK的example,了解了他们的能力和功能,和QT的集成方法,下面是大体的框架,我会及时更新结果和源代码:
需求定义:
1 | 软件可以和规定的影像类设备进行通讯 获取DICOM格式的图像和序列 | |
2 | 用户可以使用软件对图像进行浏览,和简单的编辑 | |
3 | 简单的编辑包括缩放,导出,亮度调整,灰度调整 | |
4 | 用户可以生成三维图像 (此功能还在开发,主要因为vtk通过polydata和stripper生成的模型渲染速度太慢而且达不到想要的效果,可能后续考虑用点云是否会更快) | 正在开发 |
5 | 用户可以通过clipper对三维和二维图像进行裁剪 (正在开发) | 正在开发 |
6 | 用户可以导入机器人obj文件 | |
7 | 机器人会根据用户或者机器人反馈参数,进行关节运动动画显示 (正在开发) | 正在开发 |
8 | 用户可以对机器人和图像进行坐标转换配准 (正在开发) | 正在开发 |
9 | 用户可以插入路径动画,作为规划路径 (正在开发) | 正在开发 |
- 图像传输和获取和序列的选择
- 在正位,侧位和轴位进行图像的浏览;未来为开发切割功能
- obj机器人数模的导入,未来可能使用VTK assembly对关节进行控制
后面将介绍具体实现方法和功能的开发。我这边其实主要的还是对各个功能进行开发和集成;后续对于分割和配准的接口我留下来了,后续有对应的算法可以进行集成。