基于SOFA的颈静脉穿刺虚拟手术系统的初步构建

2018-03-13 01:41王磊张耀楠何颖唐亮赵金龙
中国医疗设备 2018年2期
关键词:穿刺针头部颈部

王磊,张耀楠,,何颖,唐亮,赵金龙

1.东北大学 中荷生物医学与信息工程学院,辽宁 沈阳 110169;2.西安思源学院 电子信息工程学院,陕西 西安 710038

引言

颈静脉穿刺在临床应用广泛,如急救时的加压输液、输血或采血标本等。由于穿刺部位血管分布密集,并靠近其他重要人体器官,对手术人员的技能有着很高的要求[1-2]。传统的训练方法是利用动物活体进行,不但训练资源短缺,而且不能够重复进行试验。虚拟现实手术辅助系统通过采集并处理各类医学图像信息,结合虚拟现实技术在计算机中创建一个虚拟的手术仿真环境。医生借助该系统中的三维立体场景进行手术路径规划、训练,以及在实际手术过程中引导手术的进行。运用虚拟现实手术辅助系统能够使操作人员沉浸于虚拟的手术场景中,通过视觉、听觉和触觉认知并学习各种手术动作,熟悉并掌握如何处理临床的各类突发状况。虚拟现实手术辅助系统不仅能够解决传统手术训练的资源有限、训练成本高、手术规划困难等问题,还可以避免用动物活体实验所引起的道德问题,同时极大地提高外科手术的学习效率,使用户更好地在培训期间掌握更高水准的手术技能,最大程度上避免了手术可能引起的并发症[3-14]。

近年来,国内也逐步开展了虚拟手术系统的研究,取得了不少进展,但对虚拟手术中的基本模块如碰撞检测,软组织形变,模型的有限元剖分算法等领域的研究仍和国外有一定的差距。重庆大学和第三军医大学联合开发的肝脏外科手术计划系统具有较强的交互功能,运行速度快,可用于术前制定手术方案,有利于降低手术风险,保证手术的安全性,并在临床上得到了初步的应用[15]。

东南大学主要致力于研究触觉再现,吴涓等[16]提出了一种用于柔性体的受力形变及实施触觉响应的同心圆分割算法,该算法基于质点—弹簧/阻尼器模型。离散的质点由沿着法线方向和径向分布的弹簧相连接,弹簧内部受到的合力等于物体表面的接触力,该算法具有速度快,实时性强等优点。香港理工大学虚拟现实研究中心对软组织的蠕变、形变间的非线性特性及迟滞与载荷进行了理论分析,开发出基于质点弹簧模型的“力传播”算法,并开发出一种低成本白内障晶体状超声乳化手术训练系统[17]。

虚拟手术系统是复杂的系统,从头开始用底层软件构建虚拟手术系统需要较长的时间和强大的团队。而在一个合适的虚拟现实平台基础上构建虚拟手术系统会大大加快实现时间、减少错误、减少费用、有助于相关理论的研究。在前期工作中,我们对可能的虚拟现实平台进行调研,并且选择用OpenGL、Unity3D、Spring System、GiPSi System和SOFA(Simulation Open Framework Architecture)平台进行了体验,最后选择了SOFA作为我们的平台。本文在虚拟平台中采用有限元建模的方法构建人体头颈部和手术器械的体模型,为了得到两个三维物体的体模型,在创建物体三维面模型的基础上,采用SOFA对手术场景实现绘制,利用AABB算法构建场景中的碰撞检测,最后利用隐式欧拉法和共轭梯度算法对碰撞后皮肤的变形进行有限元求解,以证明利用SOFA构建颈静脉穿刺虚拟手术系统的可行性。

1 SOFA平台简介

SOFA是一个基于物理仿真的开源框架,可应用于各类仿真应用,但其主要针对医学实时仿真。其理念最早是由美国波士顿的医疗和创新技术综合中心在2000年提出,其主要研发团队有法国国家信息与自动化研究所、苏黎世联邦理工学院和澳大利亚联邦科学与工业研究组织等,它具有以下几个优点:

(1)多模型表示方法。对于手术仿真中的同一个三维模型,可以在场景中具有多种表达方式,如表面可视化模型,行为模型,碰撞模型等。SOFA通过映射机制将同一个物体的多种表达方式连接起来形成一个完整的物理模型。在不必考虑其他模型受到影响的前提下,我们可以对同一物体的不同模型进行独立设计,这种多模型的映射机制使得模型的建立和仿真场景的实现变得更加高效灵活。

(2)高度模块化。因为每个物体具有的组件在场景中是相互独立的,所以这个设计是高度模块化的。在场景中,一个物理模型可以简单地通过改变一个组件被另一个取代。以同样的方式,一个显式的欧拉方程也可以通过修改场景文件中的XML一行被换成一个隐式的集成方案。这样高度模块化的框架由下面访问者机制实现。

(3)场景图层次结构。在SOFA里,模拟的过程被描述成一种具有内在的广义层次结构的场景。这个场景是由节点组成,这些节点被组织成一个树或一个有向无循环图。模拟场景中的不同对象用彼此互相独立的节点进行组织,可以在一个物体的子节点中构建出该物体的不同表达方式。场景从一个被叫做根节点的父结点开始,其它节点都从这个主节点继承,其他这些节点被称作子节点。在不同的仿真步骤(初始化、系统组装、解决可视化),信息需要从所有图节点中恢复过来。基于访问者的一个隐式的机制使数据实现恢复。你可以在Sofa Simulation包中找到抽象访问者类(Visitor)。访问者自顶向下和自底向上遍历场景,并在每个遍历到的图节点调用相应的虚函数。因此,通过调用相关的虚函数(如动画仿真、积累力量),Visitors用于触发行动。模拟的物体上的算法操作是通过得到Visitor类并且重载它的虚函数top Down( )和bottom Up( )被执行的。

SOFA具有良好的软件操作界面,能够提供大多数的三维图形格式文件的导入,并且在框架内部集成了大量的求解器和有限元分析方法,能够快速地与力反馈设备实现连接,使开发者只需要关心手术场景中软组织的形变计算,不需要从基础的三维模型导入着手。在框架内部提供了弹簧—质点和有限元的行为模型,可以通过设置参数,实现三角形,四面体和六面体形式的弹簧—质点模型,有利于快速构建出软组织变形仿真场景。

2 利用SOFA平台构建颈部皮肤穿刺系统

2.1 面模型的构建

常见的三维表面网格模型(面模型)的建模软件有ZBrush、MAYA、3D Max、Blender、Silo等,其中Blender不仅具有开源跨平台的优点,而且能够提供从建模、材质、动画、渲染、到音频与视频剪辑处理等一系列专业的三维建模和动画短片制作解决方案。本文采用Blender 2.7.4.0对人体头部和穿刺针进行几何模型的构建。

本文在SOFA中已有的人体头部模型的基础上,在Blender中对其网格结构进行调整,删除多余的顶点和重复的面,并对其网格进行三角面片化,得到人体头部的表面模型在3d max中打开的模型效果,见图1。

图1 人体头部的几何模型

2.2 体模型的构建

在通过图形界面的三维建模软件构建出人体头部和手术器械的三维体模型的基础上,需要将面模型的网格分割成具有内部结构信息的体模型,常见的体模型的基本构成单元包括四面体,六面体,由于SOFA内部采用四面体网格作为物体的行为模型,所以本文将利用四面体剖分算法,对人体头部和穿刺针的三维面模型网格进行四面体剖分。推动波前法(Advancing Frontal Technique,AFT)能够很好地满足SOFA对四面体网格剖分的需求。生成的手术器械的四面体网格模型,见图2。

图2 穿刺针的四面体网格模型

2.3 穿刺场景的设计

SOFA可以通过3种方法实现手术场景的构建:C++、XML、图形化用户界面Modeler。本文采用第二种方法对手术场景进行构建,XML是一种可扩展的标记性语言(Extensible Markup Language),可用于数据的跨平台交互。XML构造虚拟场景的部分代码,见图3。

图3 构造场景的部分XML文件示意图

按照惯例,场景文件扩展名“.scn”。一个场景文件都包含一个各节点,封装了整个场景图,在根节点内部定义了一些方正的总体属性(如重力,背景颜色,灯光效果等)。节点能够用XML形成嵌套式的属性节都,根节点内部的每一个节点都可以在场景中被分成不同的部分。在没有添加SOFA内部的组件时,节点本身是无用的。所谓的叶节点,意味着他们不可再分,叶子节点必须包含在根节点或其他场景中的节点之内。XML属性被称为数据,一个节点可以激活或不激活通过设置布尔数据字段激活“true”或“false”的方式允许使用者访问和更改组件的不同属性,构建仿真场景和实现各个模型的不同组件是非常复杂的,SOFA通过引入场景图层次结构和访问者机制使得遍历场景图变得十分简单,其高度模块化的特性也利于用户随时改变仿真的整体结构。SOFA具有的映射机制能够在同一物体的多模型之间建立连接关系,使被仿真的物体建立完整的物理属性,如可视化模型实现三维物体的绘制并实时更新物体的位置和形变等信息,行为模型完成软组织的有限元网格上的受力情况分析,碰撞模型则实时监测物体之间的相对位置关系。

2.4 仿真场景的建立

SOFA对常见的三维数据格式如VTK,STL,MSH和OBJ等提供了多种加载器,要使用这些特定的加载器,必须在XML场景文件手动连接数据依赖关系。本文首先利用记事本编辑scn文件实现场景的层次节点结构,仿真场景有根节点(Root)、人体头部节点(Head)和穿刺针节点(Needle)组成,其中头部节点和穿刺针节点均是根节点的子节点。在根节点中定义场景的重力场,灯光的位置,背景颜色和碰撞检测的阈值与方式等基本仿真模块。人体头部和手术器械节点均由可视化模型,行为模型(有限元模型)和碰撞模型组成,其中可视化模型中定义了人体头部和穿刺针的几何数据拓扑关系,并通过两者的质心分别映射到各自的行为模型。利用SOFA中的三维模型加载器MeshObjLoader将2.1节中利用Blender构建的穿刺针和人体头部的OBJ文件导入仿真场景中,并利用MeshGmshLoader完成两个体模型msh文件的导入。

在SOFA框架中实现了人体头部的行为模型,生成的四面体有限元分析网格,见图4。在这里实现了对虚拟手术系统物理模块的建立。

图4 一个头部的行为模型

SOFA中的碰撞模型用于实现虚拟手术系统中碰撞检测模块,在SOFA框架中实现了人体头部和虚拟手术穿刺针之间的点线碰撞模型,并在虚拟手术器械做定向移动的过程中构建出轴向层次包围树(AABB tree),完成了对虚拟手术系统碰撞模块的建立,见图5。

图5 一个头部的碰撞模型

由于穿刺针的质量相对于人体头部较小,在穿刺过程中人体头部的整体位移可以忽略不计,所以将其四面体网格的外围顶点和颈部以上部分的自由度设置为零。场景中的穿刺针能够沿着z轴方向匀速刺入人体颈部。至此,完成了颈静脉穿刺仿真场景的建立。下面将讨论对变形的求解过程。通过对场景中可视化模型、行为模型和碰撞检测模型的定义,我们构建出颈静脉穿刺仿真手术的场景图,见图6。

图6 颈部穿刺虚拟手术仿真场景定义

整体的仿真界面,见图7。

图7 基于SOFA的颈部穿刺虚拟手术界面

3 基于SOFA的穿刺变形求解

通过对场景中人体头部的行为模型设置约束点,使人体头部颈部以上的网格顶点在受针穿刺力的作用时,不产生位置上的改变,而未经过约束处理的颈部皮肤,在针尖刺入皮肤的过程中,会随着刺入深度的增加而产生明显的形变。虚拟手术场景中的人体头部与穿刺针的相关参数,见表1。

表1 仿真模型参数

SOFA提供了多种用于仿真求解的运算器,本文使用行为模型中定义的隐式欧拉求解器和共轭梯度求解器实现软组织的有限元变形。虚拟场景中穿刺针以恒定速度v=2 mm/s沿z轴运动,颈部皮肤变形,见图8。

图8 穿刺变形前(a)穿刺变形后(b)

在SOFA中通过对虚拟手术场景中的相关物理变量赋予真实人体皮肤参数后,可以得到颈部皮肤变形效果。通过调整各个参数的值,设计不同的实验来获得穿刺过程中的仿真数据,能够在虚拟场景中观察到不同参数设置对皮肤变形效果的影响。

(1)不同软组织杨氏模量对实验的影响。根据杨氏模量所具有的物理意义可知,其取值的大小决定着软组织的变形能力的强弱。通过设置不同的杨氏模量可以观察到软组织在穿刺针行进相同位移时,产生不同幅度的形变量,见图9。这里我们选取具有典型意义的4个杨氏模量的值,体现出皮肤在受到穿刺力时,形变量的大小随着杨氏模量取值的增加而呈现出减小的趋势。

图9 皮肤形变量在受到穿刺力时随着杨氏模量取值增加而呈现出减小的趋势

皮肤的杨氏模量决定了它在受到相同大小的作用力时,所产生形变量的大小,图9中选取了不同的皮肤杨氏模量,穿刺针选用的是刚性穿刺针,在穿刺时保持泊松比、行进时间和刚度系数等其他物理量的大小相同,系统中能够实现不同的形变量大小的显示与更新,可以完成不同杨氏模量对形变量的影响,将现实中的人体皮肤的杨氏模量赋予虚拟人体头部,使实际手术场景中的物理变量和现实保持一致,有利于让用户体验到真实的手术场景。

(2)泊松比对实验的影响。泊松比是研究物体在受力方向上产生变形的同时,与载荷垂直的方向上的形变情况的物理量。当穿刺针沿着z轴方向运动时,受到沿着z轴的反向切割力的作用,在垂直于z轴的方向x和y方向上会产生形变,由于穿刺部位在颈部且关于z轴在x轴方向上对称,受到来自于x轴正负两个方向上的力相差不大,所以穿刺针在x轴方向上的形变量较小,可忽略不计,由于在y轴方向上,穿刺部位以上的四面体单元明显多于穿刺点以下的四面体数量,在重力以及切割力的共同作用下会产生较为明显的形变。如果选取的泊松比不够恰当的话,会使穿刺针在与软组织发生碰撞以后,形成病态的穿刺效果,见图10。

4 结论

本文初步实现的颈部穿刺虚拟手术系统是现代医学与虚拟现实技术相结合产生的重要研究领域,本文使用多模型物理实时仿真的开源框架SOFA,构建了用于颈静脉穿刺手术的虚拟现实手术辅助系统。本文充分了解SOFA框架的内部机制,利用三维可视化建模软件构建人体头部和手术器械的几何面模型,使用推动波前法在中实现了人体头部和穿刺针的几何面模型的四面体网格剖分,并实现了XML语言对虚拟场景的构建,本文实现的基于有限元物理模型的皮肤变形效果可以推广到各类柔性物体受力变形的仿真中。 在SOFA虚拟手术场景中,添加力的约束并对模型的各个模块设置相应的参数,并利用真实人体皮肤参数实现了逼真的有限元变形效果。

图10 不同穿刺针泊松比对颈部形变的影响

本文所涉及的课题仍可以进一步加以完善,主要体现在以下几点:

(1)医学模型的构建。本文中的模型可进一步优化或通过医学影像数据重建具有颈部内部结构的三维面模型,提高视觉上的展示效果。

(2)仿真参数的选取。虽然离体的肝脏组织和颈部皮肤都属于人体的软组织,但是两者的物理属性在一定程度上存在着差异性。为了使本文中创建的虚拟手术场景更加适用于真实颈部穿刺手术,在进一步的研究中可以由具有丰富经验的医生对颈部的皮肤物理参数加以标定,并对手术穿刺位置的选取和穿刺过程中的行进方向做出科学的统一规划,为虚拟手术辅助系统制定更加符合真实手术场景的学习方案。从而,能够为操作者提供一个具有高精度、高准确度的学习平台。

[1]Kawai N,Minamiguchi H,Sato M,et al.Evaluation of vascular puncture needles with specific modifications for enhanced ultrasound visibility: In vitro study[J].World J Radiol,2012,4(6):273-277.

[2]Inoue T,Okumura F,Mizushima T,et al.Assessment of factors affecting the usefulness and diagnostic yield of core biopsy needles with a side hole in endoscopic ultrasound-guided fineneedle aspiration[J].Gut Liv,2016,10(1):51-57.

[3]Shenai MB,Tubbs RS,Guthrie BL,et al.Virtual interactive presence for real-time, long-distance surgical collaboration during complex microsurgical procedures[J].J Neurosurg,2014,121:277-284.

[4]Piromchai P,Avery A,Laopaiboon M,et al.Virtual reality training for improving the skills needed for performing surgery of the ear, nose or throat[J].Cochrane Database Syst Rev,2015,(9):CD010198.

[5]Generoso JR Jr,Latoures RE,Acar Y,et al.Simulation training in early emergency response (STEER)[J].J Contin Educ Nurs,2016,47(6):255-263.

[6]Moglia A,Ferrari V,Morelli L,et al.A systematic review of virtual reality simulators for robot-assisted surgery[J].Eur Urol,2016,69:1065-1080.

[7]Badash I,Burtt K,Solorzano CA,et al.Innovations in surgery simulation: a review of past, current and future techniques[J].Ann Transl Med,2016,4(23):453.

[8]Endo K,Sata N,Ishiguro Y,et al.A patient-specific surgical simulator using preoperative imaging data: an interactive simulator using a three-dimensional tactile mouse[J].J Comput Surg,2014,1:1-8.

[9]Alaker M,Wynn GR,Arulampalam T.Virtual reality training in laparoscopic surgery: A systematic review & meta-analysis[J].Int J Surg,2016,29:85-94.

[10]Chen GC,Lin CH,Li CM,et al.Virtual-reality simulator system for double interventional cardiac catheterization using fractional-order vascular access tracker and haptic force producer[J].Sci World J,2015.

[11]Liu M,Curet M.A review of training research and virtual reality simulators for the da Vinci surgical system[J].Teach Learn Med,2015,27:12-26.

[12]Fortmeier D,Mastmeyer A,Schröder J,et al.A Virtual reality system for PTCD simulation using direct visuo-haptic rendering of partially segmented image data[J].IEEE J Bio Heal Infor,2016,20(1):355-366.

[13]Valentine R,Padhye V,Wormald PJ.Simulation training for vascular emergencies in endoscopic sinus and skull base surgery[J].Otolaryngol Clin North Am,2016,49:877-887.

[14]Zevin B,Aggarwal R,Grantcharov TP.Surgical simulation in 2013: why is it still not the standard in surgical training[J].J Am Coll Surg,2014,218:294-301.

[15]陈刚,王翊,张桂华,等.肝脏外科手术虚拟系统的建立与初步应[J].中华肝胆外科杂志,2010,16(8):612-615.

[16]吴涓,宋爱国,李建清.用于虚拟力觉再现的弹簧—质点力/变形模型研究[J].系统仿真学报,2006,18(11):3152-3156.

[17]Choi KS.Toward realistic virtual surgical simulation: using heuristically parameterized anisotropic mass-spring model to simulate tissue mechanical responses[A].International Conference on Education Technology and Computer[C].2010:446-450.

猜你喜欢
穿刺针头部颈部
一种新型套管针用穿刺针的设计
居家运动——颈部练习(初级篇)
居家运动——颈部练习(中级篇)
改良颈部重要外敷方法
自动驾驶走向L4 企业头部效应显现
火箭的头部为什么是圆钝形?
槽型鞘脑穿刺针的设计及动物实验初步结果
EBUS-TBNA中不同型号穿刺针对纵隔淋巴结肿大诊断结果的影响
颈部淋巴结超声学分区
手术穿刺针清洗质量控制方法的改进研究