曹璐,李毅红,王婷,张皓,李贤富
1.川北医学院附属医院 肿瘤科,四川 南充 637000;2.西南科技大学 国防科技学院,四川 绵阳 621002
近距离放疗是肿瘤放疗的主要方式之一,包括腔内放疗、组织间插植放疗、表面敷贴放疗三种治疗模式,主要用于妇科宫颈肿瘤、肺部肿瘤、胰腺肿瘤、前列腺肿瘤、皮肤软组织肿瘤以及各种复发转移瘤等局部实体肿瘤[1]。其中,组织间插植放疗由于需要手术植入施源器(插植针),疗效依赖于手术时施源器植入精度与空间分布是否合理,其对施源器植入位置、方向以及深度有严格要求[2]。由此,施源器植入时的精准立体引导是决定疗效与安全的关键[3],因对手术者要求较高而未能常规推广。近年来,快速发展的3D打印技术可以创建常规加工无法制造的复杂组件[4-5],可生产带有坐标系并能实现立体定向引导的个性化3D打印插植引导模板[6],利用此技术能实现在术前有效规划插植路径、固定施源器入针位置、方向、深度等参数,术中实施精确引导插植,术后实现精准剂量覆盖的目的。然而,现今插植导板设计所采用的软件皆是如MIMICS、AUTOCAD等计算机辅助设计软件[7-9],此类软件无法实现放疗计划系统(Treatment Planning System,TPS)数据的有效提取及施源器(插植针)与人体表面轮廓的空间转换映射,只能手动设置施源器坐标信息,存在过多人工干预,具有一定的误差和不确定性。因此,本研究以点云为三维信息转化接口,设计一种从ONCENTRA TPS系统提取模型信息、实现结构坐标转换映射的插植引导模板辅助设计软件(Brachytherapy 3D,BT3D),同时简化相关设计流程,以期保证TPS计划数据向3D打印机进行模型转化的精确性和便捷性。
BT3D软件基于Microsoft Visual C++ 2017&Qt5开发环境,利用Open CASCADE开源库进行三维结构设计,使用开放图形库(Open Graphics Library,OpenGL)以及开放场景图(Open Scene Graph,OSG)三维渲染引擎进行三维场景结构管理与显示。
BT3D软件采用模块化开发设计,按照程序功能进行模块划分以实现高内聚、低耦合。模块设计框架设置了开始模块、DICOM数据提取模块、点云处理模块、实体表面重建模块、模型结构生成模块、模型导出模块、三维显示模块等相关模块,后期可根据需要更新或增加功能模块,可以有效降低开发难度及后续维护成本。相关模块构成如图1所示。
图1 模块设计框架
其中,DICOM数据提取模块用于从TPS计划数据中提取出各组织的点云数据以及插值针的信息;数据预处理模块通过基于自适应最优邻域的滤波算法[10-11],对原始数据进行预处理,降低其中的噪声数据,以提高表面重建的质量;表面重建模块通过Nurbs算法[12]实现由点云数据重建组织轮廓的三维曲面;结构生成模块将感兴趣区的三维曲面加厚为三维实体,并在此基础上根据插值针信息生成插值针通道及辅助定位装置。模型导出模块将生成的三维实体模型导出为可用于3D打印的stl文件。操作过程的可视化在显示模块的OSG中完成。相应的模块功能实现流程如图2所示。
图2 模块实现流程图
1.2.1 DICOM数据提取模块设计
本研究设计的BT3D通过点云转换方式来实现靶区轮廓和施源器(插植针)三维信息的提取、转化以及相应坐标映射。点云是在同一空间参考系下表达目标空间分布和目标表面特性的海量点集合,是实现TPS计划系统原始模型结构信息向设计模型进行三维信息转换的有效手段。重建结构的点云数据可以从TPS输出的DICOM文件中提取[13]。TPS输出的DICOM文件分为RT Image、RT Structure Set、RT Dose、RT Plan和RT Record等五个模块。对于每个模块内容,DICOM标准给出了相关的信息对象定义,并形成标准服务功能以实现对放疗信息的有效传输和完整表达[14-15]。根据DICOM国际标准3.5版本的第五部分:数据结构和编码[16],本研究对DICOM文件结构进行解析得到图3中的树形数据结构并从RT Structure Set中提取感兴趣结构的点云信息,从RT Plan中提取施源器的点云信息如图4所示。
图3 DICOM数据结构中的数据元信息(a)以及模拟构建的解析树(b)
图4 感兴趣区结构
1.2.2 点云处理模块设计
生成基于表面轮廓的导板几何模型时,需要对点坐标信息进行重建与处理(图5)。由于组织间插植进针位置一般只限定在小范围区域进行,不需要重建整个皮肤表面,只需要对插针区域进行重建,因此只需保留插针区域的点云数据即可。由于原始数据源于CT扫描数据,不可避免地会存在噪声,而这些噪声会影响表面重建的准确性[17]。本文通过基于自适应最优邻域的滤波算法对原始数据进行处理,并在保留结构特征的情况下进行下采样以减少数据数量,可以有效地加速表面重建过程。
图5 BT3D软件中轮廓点云重建
一种典型的基于最优邻域的滤波方法,计算方法如公式(1)所示。
其中,nj为邻域点法向矢量,hj为权值函数,也是最优邻域的选择函数,T为角度阈值。当降噪点与邻域点法向矢量相似度小于给定的阈值时选择函数选择具有相同几何特性的点作为邻域点,从而可以获得保持尖锐特征的光顺表面。
1.2.3 实体表面重建模块设计
CT图像属于切片扫描图像,整个图像结构由多层切片构成,所分析提取的点云三维信息也具有分层特性。如果将小部分点云结构拟合成表面实体,常用的有贪婪投影、移动立方体、泊松方程以及非均匀有理样条曲线(Non Uniform Rational B-spline,NURBS)等算法。本文从重建精度、重建时间以及所占内存等多方面特性的比较分析来看,NURBS算法为本研究软件设计的最佳选择[18],可以将每层的数据拟合为一条NURBS,然后按照层级顺序排列输入NURBS曲面重建算法中,即可得到一个较为平滑但也保留原始特征的三维曲面,后续所有操作均是以此曲面作为基础[19]。NURBS曲线定义如公式(2)所示。
其中,P(u)为曲线上的位置向量,wi为权因子,pi为控制点,u为节点矢量,Ni,k(u)为k次样条基函数,递推公式为式(3)。
其中,pi,j为控制点,wi,j为权因子,Ni,k1(u),Ni,k2(v)分别是沿u的k1次和沿v向的k2次样条基函数。
1.2.4 结构生成模块设计
结构生成模块基于Open CASCADE开源库进行设计[19-20]。通过曲面加厚获得基板三维模体,并映射插植针点云信息到基板上生成相应的插植引导孔,插植引导孔与先前生成的基板通过并集操作进行相加即可得到带有导向结构的插植引导模板。此过程没有对原始数据进行空间坐标变换,并且生成基板的过程和生成插植针通道的过程在同一空间中完成,因此,插植针通道与基板的角度可以和TPS系统中预设保持一致,保证了成型模板与预计划插植针的匹配精度。BT3D软件中曲面重建界面,见图5。
1.2.5 模型导出模块设计
模型导出采用STL格式——一种用于立体光刻计算机辅助设计软件的通用文件格式,包含所有三角形法线及顶点坐标的完整列表[21]。模型导出模块利用Open CASCADE中的储存模块完成,先将制作完成的模型进行三角网格化处理,再转化储存为STL格式。
该软件六大模块相互独立实现各自功能,能完成TPS系统数据向3D打印机输出的所有步骤,达到最终进针结果与预计划极好匹配的目的,可满足如肺癌插植模板、宫颈癌插植模板以及转移肿瘤插植模板等各种实体肿瘤插植立体定向引导模板的辅助设计需求(图6~7)。相较商用第三方辅助设计软件,本软件设计模板的实际插植路径与预计划插植路径吻合率由91.4%提高至95%;同时,本软件简化了模板设计流程,同一病例模板设计平均时间由120 min减少至30 min;插植针平均CT引导次数也由每针7次下降至3次。
图6 BT3D软件中曲面重建界面
图7 BT3D软件制作的肺癌插植引导模板
图8 BT3D软件制作的盆腔转移瘤插植引导模板
随着放疗技术的不断发展,肿瘤放疗进入以“精准定位、精确计划、精确治疗”为标准的精准放疗新时代。近距离组织间插植放疗是精准放疗中的微创放疗手段,可以“锚定”肿瘤组织,实现临床肿瘤靶区高剂量的准确覆盖,能提供超越“外科手术”的“精准打击”,对提高局控率、降低并发症反应有显著作用[22],但该技术实施技巧高、操作难度大,稍有不慎便会造成肿瘤邻近血管或者神经损伤。利用3D打印模板辅助,能极大程度减少图像引导下徒手插植发生的误差,实现精准放疗[23-24]。由于放疗TPS常为封闭式系统,在设计插植引导模板时,不能直接引入计算机辅助设计功能。而第三方计算机辅助设计软件如MIMICS、AUTOCAD又无法将TPS中预计划信息直接进行转化设计,整个设计流程需要经过5项流程:① TPS系统中插植路径设计;② 通过第三方软件工具实现计划数据提取;③ 手动重建组织轮廓表面并生成基板;④ 手动设计插植通道及辅助装置;⑤ 模型导出用于3D打印[25-28]。过程②~③中存在数据以及空间坐标的转换,并且整个过程人工参与较多,会造成模型建模失真从而导致模板最终成型精度受到影响。为了降低这种不确定性,本研究以点云为三维信息转换接口,将过程②~⑤集成为一个平台,简化流程,省去空间坐标转换,减少人工参与,实现插植针坐标与各结构坐标系准确映射,最终达到TPS预计划信息向3D打印机高精度输出的目的。利用此软件可以轻松实现各种实体肿瘤插植引导模板的辅助设计,保证了近距离组织间插植放疗的精准性和便捷性而利于临床推广。未来随着BT3D软件研发工作的进展,将加入更多的CAD模块以进一步实现近距离施源器设计等应用模块功能,为近距离放疗施源器辅助设计提供有利基础。