首页| 行业资讯| 企业名录| 周边产品| 数字城市| 增强现实| 工业仿真| 解决方案| 虚拟医疗| 行业仿真| 图形处理| 军事战场
用户登录/注册 ×
资讯首页
行业资讯 >> 专业文献
虚拟手术中血管与布料切割训练模块的设计与实现
时间:2019-10-30    评论:0
    来源:Med-X 研究院
    作者:虞文豪
    指导老师:顾力栩

    摘要;本文讨论了两种手术切割技能训练模块的实现方法:血管切割训练与布料切割训练。血管切割训练模块需要模拟出血管被碰撞以及挤压时的形态与变化,而布料切割训练模块需要表现布料被碰撞与拉扯时的情况。此外,它们还需要能准确及实时交互地对模拟对这些模型的切割。我们使用了弹簧-质点模型进行物理模拟,通过对血管以及布料设置合适的拓扑结构的弹簧-质点来模拟它们的物理性质。为了模拟模型与手术器械的交互,如挤压、切割、拉扯等,我们需要进行模型与器械之间的碰撞检测,本文中我们使用 K-DOPS 树进行碰撞检测。此外,我们提出了一种通过移动网格上的点来拟合切割路径的算法来模拟布料的切割。通过我们的方法实现的训练模块能够较好地模拟血管以及布料的形态,性质以及对它们进行的实时切割。

    1 引言

    虚拟手术是利用各种医学影像数据,采用虚拟现实技术,在计算机中建立一个模拟环境,医生借助虚拟环境中的信息进行手术计划制定,手术演练,手术教学,手术技能训练,术中引导手术,术后康复等工作。手术技能训练系统提供了一个可以模拟一些手术中的基本操作训练的平台,使用计算机以及模拟设备让使用者能够体验以及练习一些手术操作。

    一个完整的虚拟手术训练系统通常包含物理模拟、碰撞检测,碰撞响应以及力反馈这样几个部分。本文中对前三者的实现进行了讨论,而力反馈的部分暂时没有进行考虑。

    虚拟手术系统中用到的物理模拟一般是对器官或皮肤进行模拟,因此属于可形变物体模拟的范畴。Terzopoulost D.等人在早期对这一领域进行了探索[1][2],他们的工作对之后的研究,如布料模拟[3],虚拟手术[4]以及模型破裂现象模拟[5]等都有相当的影响。可形变物体模拟主要有两个类型,一个是基于拉格朗日网格的方法,另一个为无网格模拟方法。基于拉格朗日网格的方法中又分为有限元法,边界元法,弹簧质点法等方法。无网格方法则可以分为松耦合粒子法,平滑粒子流体等。考虑到模拟效率以及模拟效果,本文中使用的是弹簧-质点法来对血管以及布料模型进行模拟。弹簧-质点方法最早被提出用于表情模拟[6],它将模型分为离散的质点,并给它们分配不同的质量,然后在质点之间用弹簧进行连接,通过计算弹簧对质点施加的力,计算出质点受力及加速度情况来对整体模型进行模拟。

    在碰撞检测方法中,能够使用于可形变物体的方法主要有层次包围盒法,随机碰撞方法等。层次包围盒法通过使用几何上比较简单的几何体如长方体,球体等来包裹形状复杂的模型,通过对包围盒的检测来增加碰撞检测的速度。典型的层次包围盒方法有 OBB 树[7], AABB 树[8]以及 DOPS 树[9]等。由于人并不能区分完全准确的模拟以及看起来真实的模拟,因此有学者提出使用随机碰撞方法来进行碰撞检测[10][11],随机碰撞方法通过随机地设置检测对来对模型进行碰撞,它可以极大地减少碰撞检测所需要的时间。

    本文讨论了实时模拟血管与布料的切割模块实现方法,我们使用弹簧-质点方法对血管以及布料进行物理模拟,使用层次包围盒方法中的 DOPs 树方法进行碰撞检测,此外,我们还提出了一个血管切割算法以及一个布料切割算法。在血管切割模块中用户需要用施夹钳在夹住血管以后,再用剪刀剪切血管,这一模块能让使用者熟悉血管切割的步骤与过程以及观察模拟出的切割血管过程中的大致情况。布料切割模块中用户可以用夹子夹住布后用剪刀进行切割操作,这一训练模块用以训练使用者对于手术剪刀的使用,要求使用者在布料上按照纹理上的环剪切出一块圆布。我们的方法可以很好地模拟血管以及布料的物理性质,准确地判断手术器械与模型的碰撞位置,并真实地模拟出血管和布料被切割的情景(图 10-11)。

    本文内容如下:第 2 部分介绍使用的弹簧-质点模型,第 3 部分介绍 K-DOPS 碰撞检测树,第 4、5 部分介绍血管与布料的切割,第 6 部分为实验与总结。

    2 弹簧-质点模型

    2.1 弹簧-质点模型介绍

    弹簧-质点模型将可形变物体离散化为由弹簧链接的质点组成的系统,利用物体质点弹簧系统的运动规律来描述运动物体的弹性变形过程。质点运动的规律由质点连接的弹簧决定,质点受到的力通过使用胡克定律计算弹簧形变产生的力而得到。

    2.1.1 质点力计算

    1) 形变力

    弹簧质点系统中任意质点P0,设S1,S2...Sm为与之相连的弹簧,则P0,所受变形力为:


    其中 K 为弹簧劲度系数,△l 为弹簧长度变化量,n_si 为 P0 指向其他质点的单位方向向量。

    2) 阻尼力

    质点收到阻尼力为:

    其中 v 为相邻质点的运动速度, 为阻尼系数

    3) 外力

    质点受到重力以及外部器械所施加的力,外力计算方式为:


    m 为质点质量,g 为重力加速度, 为外部器械施加的力。在血管切割模块中,为了更准确地模拟血管,模型的表面质点以及中心线上的质点还会受到一个扭转力,此处力以及血管模型将在 2.2 节中详述。

    2.2 血管模型

    2.2.1 模型结构

    血管建模使用表面模型加上中心骨架搭建,表面模型由四边形元素构成,每个四边形元素的对角线上也施加了弹簧以防止四边形的崩坏,中心线上的点连接表面上的点来起到支撑血管结构的作用,并能够在上下表面的质点之间进行力的传递,帮助更好地模拟血管的物理性质。每一个中心点连接一个圆周的表面质点,因此血管模型可以看成许多个圆环相连而成,模型如图(2)所示。

图 2. 血管模型结构

    2.2.2 血管中心线扭转力

    目前的模型结构可以较正确传递血管表面以及垂直与截面方向的力,但是对于垂直于半径的扭转力表达得效果不佳,导致血管容易在垂直于血管截面的方向上上崩塌。为了保证血管的截面与血管中心线有保持尽量垂直的趋势,本文在计算质点受力时增加了两个额外的扭转力。首先是质点以及质点所在圆的中心点分别受到一个力。如图(3)所示,

图3. 血管中心线 M1,M2,M3 为 中心点,P1 为表面点

    P1 将受到一个扭转力 (3) (4)。


    其中, δ 为系数,本文中使用 0.1,Vm 为角 M1,M2,M3 的角平分线的单位向量这个力的目的是使得 P1-M2 尽量保持在角 M1,M2,M3 的角平分线上。仅有这个力并不一定能保证 P1-M2 与两条中线垂直,因此还需要对 M1,M3 增加额外的力以使得 M1,M2,M3 有保持一直线的趋势,这个力的大小与夹角成正比。

    在这样两个力的共同作用下,使得血管能够更好地保持原有的形状。扭转力的效果如图(4) 图(5)所示,可以明显看到,不添加扭转力时血管被碰撞后血管截面没有保持与中心线垂直的趋势,导致容易崩塌,添加了扭转力后,血管强度明显增加。

图 4. 未添加扭转力

图 5. 添加扭转力 

    2.3 布料模型

    布料模型采用了 Provot[12]提出的布料模型结构,如图(4)所示。

图 4.布料模型结构,蓝色点代表质点,连线代表弹簧。

    在这一模型中弹簧被分为三种:

    结构弹簧(structrual springs):

    连接质点[i,j]与[i+1,j]以及[i,j]与[i,j+1]的弹簧扭转弹簧(shear springs):

    连接质点[i,j]与[i+1,j+1]以及[i+1,j]与[i,j+1]的弹簧弯曲弹簧(flexion springs):

    连接质点[i,j]与[i+2,j]以及[i,j]与[i,j+2]的弹簧根据实验以及经验表明这样的模型结构可以较好地表现布料的性质,不过由于扭转弹簧的存在,如果使用三角面片作为基本面片会需要比较多的三角面片,因此本文使用了四边形面片作为基本面片单元,在四边形的基础上进行面片调整、面片分裂等操作。
    
    3 碰撞检测

    本文中的两个模块都使用了层次包围盒方法中的 K-DOPs 方法进行模型与器件之间的碰撞检测,它通过使用凸多面体作为包围盒来进行碰撞检测的简化。

    3.1 K-DOPs 树的定义

    K-DOPs(Discrete Orientation Polytopes)包围盒是一种凸多面体,它的面是由一组半空间 Hi 所确定的,这些半空间表示为:

    其中: 为半空间的外法向量。并且构成了集合。在设计 K-DOPs 包围盒时,法向量的元素都选自集合{-1,0,1}中的整数坐标值,这样在计算时可以省去乘法运算。为了将多面体重叠检测变成简单的区间检测,通常选择使集合 N 中的元素为k/2 个共线但方向相反的向量对以减少计算的复杂程度。

    本文中使用了 14-DOPs 树,因此对于本文的碰撞检测树。

    3.2 K-DOPs 树的层次结构与构造

    在构建层次树时,需要在树的高度和度数之间取折衷。度数越大,内部节点的子节点个数越多,则高度越小,搜索路径较短但节点上花费时间较多。度数越小,高度越大,但节点上花费时间较少。本文 K-DOPs 树参考了以往文献的经验,采用了二叉树作为包围盒树。

    本文中的 K-DOPs 层次包围盒树的生成采用自顶向下的生成方法。使用一个三角面片的数组(在布料切割模块中由于布料模型用四边形作为基本单元,因此将四边形根据对角线分为两个三角形然后再生成相应的碰撞检测树)作为输入,先将当前面片集合S 中的每个三角面片的三个质点与集合 N 中的向量进行点乘获得一个值,即为该质点在相对应方向上的距离。找出每个方向距离最大的值,即找出了能够包围住集合 S 中所有面片的 14-DOPs 包围盒,然后将当前面片集合 S 尽量均匀地分到当前树节点的两个子节点上。分配 S 到两个子节点时,找出 S 的包围盒中距离最长的一个方向,以此方向将 S 分成两部分,分别加入到两个子节点上,然后对两个子节点分别做相同的操作与计算,直到 S 中只剩单个三角面片。

    3.3 碰撞检测与层次包围盒树的更新

    在进行碰撞检测时,从根节点开始测试当前节点的包围盒是否与器件相交,若相交,则计算两个子节点是否相交,若不相交则与此节点的计算终止。若节点相交且节点是叶节点,则计算叶节点上的三角面片的三个质点是否与器件相交,若相交则将质点挤出器件。

    碰撞检测树的更新使用自底向上的方法,先判断叶节点是否有改变,若有改变则计算新的包围盒,使用子节点更新后的包围盒更新父节点的包围盒直到根节点,若两个子节点都没有改变,则不用更新父节点,这样做减少了计算时间,在局部节点有碰撞时,不需要每个节点都进行重新计算新的包围盒。

    4 血管切割

    血管的切割使用最近点分割的方法,在本文实现的血管切割方法中,血管只能以垂直中心线的方向进行分割,因此在进行分割的时候,我们先对血管进行碰撞检测,获取手术器械形成的切割平面,然后在血管模型中找出最符合这一平面的一个由质点组成的圆,将这些质点以及圆的中心质点分别分裂成两个,从而将血管分开。为了模拟血管与器械的挤压现象,我们设置了一个阈值,并判断模型的形变程度,若形变程度超过了阈值,则对模型进行分割。判断模型形变程度时,我们先找出当前模型中最接近于切割面的圆,计算所有点到中心质点的距离的方差。

    5 布料切割

    布料的切割分为三个部分:检测出入点、调整面片、分裂面片。首先通过器件划出的平面与四边形面片进行检测计算出器件通过四边形面片的进入点与离开点,然后根据进入点与离开点改变四边形面片的形状,使得切割路径都处在四边形面片的边上,最后分裂这些边。这样的做法可以保持总的四边形数量保持一致,避免了增删面片带来的额外计算,实际效果上,能够基本达到预期的效果。

    5.1 检测出入点

    检测出入点时,根据器件划过的平面(图(5)中的水平线)可以将与之碰撞的四边形状态分为如图(5)所示的 7 种情况以确定器件在四边形上的进入点与离开点。

图 5. 出入点检测的 7 种情况

    在找到候选的进入与离开点后,再对这些点进行判断,查看是否处在器件划到的范围中,并根据器件移动的方向确定候选点是进入点还是离开点并保存。检测点与面片相对位置的方法为:根据已知的器件平面上的三点 F1,F2,F3,计算出一个法向量

    nF=(F1-F2 )×(F3-F2 ) (6) ,

    用这个法向量去点乘四边形四个点指向平面上任意一点的向量,根据得出值的正负情况,判断这个四边形四个点对于平面的相对位置,再判断四边形属于图(5)中 7 种情况的哪种。

    5.2 调整面片

    根据 5.1 中的方法进行了出入点检测后,将会出现如图(6)所示的 5 种进入点-离开点对情况,根据这 5 种情况分别对四边形面片进行变形操作以使得切割路径处在四边形边上。

图 6. 调整面片的 5 种情况。
红色标记表示碰撞的位置,虚线表示切割的轨迹,
绿色的点表 示要移动的点,箭头表示移动的目标。

    在情况(1)中,出入点分别位于相邻边上,这种情况下计算相邻边共享的点与两个碰撞点之间的距离,将共享点移动到较近的碰撞点。情况(2)不需要改动。在情况(3)中,两个碰撞点处在相对的边上,计算两个碰撞点连线与四边形中点的位置关系,若在中点左边,则将左边的两个节点移动到两个碰撞点上,若在右边,则将右边的两个点移动到两个碰撞点点上。在情况(4)中有一个碰撞点与原有节点重合,则将另一碰撞点所在边上与重合节点相邻的节点移动到另一个碰撞点所在的位置。在情况(5)中,由于切割轨迹处在对角线,因此可以将两个不在切割轨迹上的节点移动到切割轨迹上。5.1 与5.2 两步执行后的效果如图(7),图(8)所示,可以看到在切割的路径上已经产生了一条待分裂的路径,面片的形状被改变而数量保持不变。

    在面片调整时需要对边进行调整,因此弹簧的原长也必须进行相应的改变,由于难以精确确定弹簧调整后在没有进行形变时的长度,因此这里使用的方法是以修改后的长度比上修改之前的长度再乘以这根弹簧的原长,这样做可以相对较准确地找出弹簧的原长。

    即更新后弹簧的原长,计算方法为:

     

    5.3 分裂面片

    在经过 5.1 与 5.2 的处理后,布料的网格模型经过了调整,因此之后要进行的就是分裂在切割路径上的点。在分裂点时,要考虑几种对其余面片影响的情况。

    如图(7)所示,假定切割路径为 P12->P11,首先裂开质点 P12,然后要考虑以下几种情况以决定离开的两个点分别属于哪个面片,以及是否有些特殊的情况需要再裂开其他的点等:若 P9-P12,P12-P5,P12-P7 都不是处在边缘上或已被切割过的边,则还需要裂开 P12与 P7 之间的边,再判断 P7-P8 与 P7-P6 是否是边缘上的或已被切割过的边,若有一个是,则需要裂开质点 P7,以免产生只有一个质点连接着两个面片的情况,这样的情况以本文的算法将无法直接处理。

    若 P9-P12 是边缘或已被切割过的边,P12-P7 与 P12-P5 都不是,则裂开的 P12 点一个分给面片 10-11-12-9,另一个分给其余三个四边形若P12-P7是边缘或已被切割过的边,则裂开的两个点分别分给四面体10-11-12-9,9-12-8-7 与四面体 11-4-5-12,12-5-6-7若P2-P11,P4-P11,P10-P11中存在边缘的边或已被切割过的边,则需要再裂开点P11,一面产生一个质点连接两个面片的情况。

    其他还有一些与上述情况对称的情况,处理的方式也是类似。

图 9. 面片分裂

    6 实验与总结

    6.1 血管切割

    血管切割时首先使用施夹钳将血管的两头夹住,然后在中间使用剪刀将血管剪开。图片(10)展示了血管与剪刀的碰撞以及切割时的图像。可以看到,血管能够与剪刀模型进行正确的碰撞,并且有相应的形变,并且使用剪刀可以成功地将血管切开。

图 7.未进行调整前的网格

    由于切割部分比较简单,在施夹钳夹住的部分,由于是强制移动了质点,因此靠近施夹钳的部分扭转力的效果会下降,导致再用器械挤压那块区域会导致血管在那块地方崩塌,因此在施夹钳的部分可以进行一些进一步的修正。

图 8.进行调整后的网格

图 10. 血管切割效果

    6.2 布料切割

    布料切割时提供了一个夹子与一把剪刀,先用夹子夹住然后用剪刀对布料进行剪切。在实验中使用了一张带有圆环的纹理图片,目标为按照圆环剪一圈。图(11)展示了布料与器械的碰撞与形变以及切割,布料被一个夹子夹住并拉扯,产生相应的形变,如图(11)-A 中所示,形变的效果比较真实。图(11)-B 中显示了切割的效果,布料可以被正确地按照黄色圆环进行切割,在切割的同时碰撞也在进行。不过在测试中也发现了一些不真实的情况,由于面片形状的调整使得在一些位置剪下去以后在剪切路径的两端位置有偏离路径的裂口出现,因此也有着可以进一步优化的空间。

图 11.布料形变及切割效果

    6.3 总结

    本文讨论了两个虚拟手术技能训练模块的实现方法,质点-弹簧方法被用于搭建血管与布料的模型,我们设计了血管的质点-弹簧分布并参考现有文章设计了布料的质点-弹簧分布,在血管模型中我们增加了额外的扭转力以增加血管强健度,根据实验结果可以看到,我们的物理模拟方法能比较好地模拟出这两种可形变物体的特性。

    在碰撞检测中,我们使用了 14-DOPs 层次包围盒方法,讨论了碰撞检测树的生成、更新与碰撞检测过程,这一实现方法可以准确以及快速地找出所有与器械碰撞的模型上的三角面片以供之后的碰撞相应部分进行进一步处理。

    最后,我们提出了一个血管以及布料的切割算法,血管的切割算法复杂度比较低,实现方便,且能够成功地模拟血管被割开的情景,因此它比较适用于复杂的切割场景中,因为在这样的场景中,血管相对占的空间较小,因此更加注重切割的效率而非精度。我们的布料切割算法能比较准确地根据器械划过的轨迹对布料进行分割,在分割过程中我们不产生新的节点而是移动现有的节点,这使得模拟的速度得到保证的同时也不丢失精度。

    从实验中可以看到,通过我们方法实现的手术训练模块能成功地完成对相应手术流程的模拟,从而起到对用户进行手术训练的目的。

    参考文献(略)
标签:手术血管布料
上一篇:空域计算全息三维成像技术下一篇:全面解析微软AR眼镜HoloLens2
网友评论:虚拟手术中血管与布料切割训练模块的设计与实现
留名: 验证码:
最新评论
查看全部评论0
暂无评论
您可能还需要关注一下内容:
·裸眼3D胸腔镜与2D胸腔镜在微创食管癌根治术中的临床对比研究
·缝针刺入角膜的力学建模与虚拟仿真
·利用虚拟仿真技术改进医疗设备设计
·使用Unity3D和HTC VIVE实现下颌骨虚拟手术
·3D打印联合力反馈,改革面部重建手术
·虚拟现实离临床应用有多远?算法成熟是关键
·中山医院骨科手术HoloLens混合现实辅助定位
·VR技术在前颅底脑膜瘤术前计划中的应用探讨
·虚拟现实技术在蝶骨嵴脑膜瘤术前计划中的应用
·虚拟膝关节镜手术仿真系统的关键技术研究
☏ 推荐产品

小宅 Z5 2018青春版
商家:小宅

杰瑞特运动平台
商家:杰瑞特智能

Dikalis眼动追踪
商家:赢富仪器

魔神 Hawk
商家:魔神运动分析

5DT Binoculars
商家:四维宇宙

Christie DS+750
商家:四维宇宙

Zalman M220W
商家:四维宇宙

全息360°
商家:四维宇宙

PD F10 AS3D
商家:四维宇宙

PHANTOM系列
商家:四维宇宙
☞ 外设导航
☏ 企业名录
【宁波】宁波维真显示科技股份有限公司
【潍坊】歌尔股份有限公司
【上海】霍尼韦尔(中国)有限公司
【北京】科视Christie-中国
【北京】北京华如科技股份有限公司
【北京】北京乐卡仕技术有限公司
【广州】广州弥德科技有限公司
【上海】刃之砺信息科技(上海)有限公司
【北京】北京度量科技有限公司
【北京】北京小鸟看看科技有限公司
关于本站联系我们融资计划免责声明网站建设广告服务咨询策划行业推广
北京第三维度科技有限公司 版权所有 京ICP备15051154号-3
2008-2020 Beijing The third dimension Inc. All Rights Reserved.
Email:d3dweb@163.com  QQ:496466882
Mob:13371637112(24小时)
关注虚拟现实
关注第三维度