一种虚拟血管介入手术训练的模拟方法与流程

文档序号:21280052发布日期:2020-06-26 23:32阅读:300来源:国知局
一种虚拟血管介入手术训练的模拟方法与流程

本发明涉及软组织力触觉模拟方法,具体涉及一种虚拟血管介入手术训练的模拟方法。



背景技术:

心脑血管疾病是一种具有较高致残率和死亡率的疾病,主要通过血管介入手术进行诊断和治疗。传统血管介入手术训练是基于真实物体的解剖学,但该训练方法存在着些许不足与问题。随着计算机技术、仿真技术和虚拟现实技术的发展,虚拟血管介入手术训练逐渐成为一种新型的治疗心脑血管疾病的方法,为外科医生提供了良好的血管介入手术训练平台,他们可以根据具体需求进行反复练习,从而提高其手术水平,但搭建虚拟血管介入手术训练系统的一个重要技术难点就是对虚拟血管的高精度模拟。

在现有的虚拟软组织模拟方法中,有限元模型将问题求解域划分为若干个互不重叠的单元,通过单元形函数和节点插值函数建立刚度矩阵进而构建描述软组织材料力学特性的近似函数模型,由函数模型获得各单元内节点位移就可用来表现软组织的形变,因此其形变仿真精度最高,但在形变过程中网格拓扑结构会不断重组甚至扭曲,从而导致计算复杂度太高和计算量太大;质点弹簧模型将软组织离散化为一系列由弹簧相连的质点,质点同时受到弹簧的弹力作用和阻尼器的阻尼力约束,然后,根据牛顿第二定律对每个节点建立拉格朗日运动方程,最后通过求解此力学方程得到各节点的形变位移量,该模型结构简单易于实现,但模型稳定性差和仿真精度低。

综上,现有的有限元模型和质点弹簧模型等网格模型存在着当出现大形变时网格扭曲、拓扑结构重构时计算复杂、速度慢,且计算精度降低等问题。



技术实现要素:

发明目的:本发明的目的在于提供一种能够避免采用网格法在产生大形变时的网格扭曲或畸形,提高软组织形变模型的计算精度、稳定性和实时性的虚拟血管介入手术训练的模拟方法。

技术方案:本发明的虚拟血管介入手术训练的模拟方法,包括以下步骤:

(1)使用基于点的方法对血管内部构建形变模型;

(2)使用基于位置动力学法对血管内部节点施加距离约束、体积守恒约束和弹性势能守恒约束三种约束条件;

(3)使用无网格移动最小二乘法构建从血管内部到血管表面的映射模型。

步骤(1)中,所述使用基于点的方法对血管内部构建形变模型,是指根据血管的医学影像数据,使用基于点的方法将血管内部离散化为一系列基于四面体的点云,并将血管的体积均匀分配给节点,通过获得节点的应力和应变来计算节点的形变位移向量。

所述通过获得节点的应力和应变来计算节点的形变位移向量,包括以下步骤:

(a)使用多项式核函数ωij来衡量中心节点i对其邻节点j的影响能力,具体计算公式为:

式中,h表示节点i的支撑半径,r表示节点i与其邻节点j之间的距离;

(b)计算节点i位移向量ui的空间导数具体计算公式为:

式中,分别表示节点i的位移场u=(m,n,p)t中横坐标所对应的值m的空间导数、纵坐标所对应的值n的空间导数以及竖坐标所对应的值p的空间导数;

(c)通过求得的可得到节点i处的应变εi和应力σi,具体计算公式为:

σi=cεi

式中,ji表示节点i的雅可比矩阵,i表示单位矩阵,c表示弹性矩阵,其值取决于弹性材料的杨氏模量和泊松比;

(d)根据连续介质力学理论,估计出节点i周围所存储的应变能ui具体计算公式为:

式中,ω表示节点i的支撑域,νi表示节点i的体积;

(e)通过对邻节点位移向量求导计算出每个邻节点的所受力fj,从而得到中心节点i的所受内力fi,其值为所有邻节点所受力fj的负总和,具体计算公式为:

(f)通过对下式进行数值积分计算求解血管内部节点i的形变位移向量:

式中,mi、ui、vi、ai分别表示节点i的质量、位移、速度和加速度,t表示迭代时间,fext、fi分别表示节点i所受的外力和内力。

步骤(b)中,所述节点i的位移场u=(m,n,p)t中横坐标所对应的值m的空间导数的计算公式为:

式中,xij=xi-xj,表示矩量矩阵ai的逆,mi,mj分别表示节点i和j的位移场u=(m,n,p)t横坐标所对应的值,ωij表示节点i和j间的权重,由多项式核函数计算,xij表示节点i的位置xi与节点j的位置xj之间的距离位移向量,||xij||表示节点i与节点j之间的距离。

步骤(b)中,节点i的位移场u=(m,n,p)t中纵坐标所对应的值n的空间导数和节点i的位移场u=(m,n,p)t中竖坐标所对应的值p的空间导数的计算方法与节点i的位移场u=(m,n,p)t中横坐标所对应的值m的空间导数的计算方法相同。

步骤(2)中,所述距离约束cdistance(x1,x2)的函数公式为:

cdistance(x1,x2)=|x1-x2|-d0

式中,d0表示节点x1,x2间的初始距离,根据距离约束的约束条件得到的节点修正因子δxi(i=1,2)计算公式为:

式中,表示节点xi(i=1,2)质量的倒数。

步骤(2)中,所述体积守恒约束cvolume(x1,x2,x3,x4)的函数公式为:

式中,v0表示虚拟四面体单元(x1,x2,x3,x4)的初始体积,根据体积守恒约束的约束条件得到的节点修正因子δxi(i=1,2,3,4)计算公式为:

式中,表示节点xi(i=1,2,3,4)质量的倒数。

步骤(2)中,所述弹性势能守恒约束cenergy(x1,x2,x3,x4)的函数公式为:

式中,x0表示四面体单元(x1,x2,x3,x4)的重心位置,ki表示连接节点xi,x0的虚拟弹簧的弹性系数,di0表示节点xi,x0间的初始距离,根据弹性势能守恒约束的约束条件得到的节点修正因子δxi(i=1,2,3,4)计算公式为:

式中,表示节点xi(i=1,2,3,4)质量的倒数。

步骤(2)中,所述无网格移动最小二乘法中定义的映射函数为:

式中,uh(x)为质点x的场函数u(x)的近似函数,φ(x)为质点x支持域内的形函数,us为一个n维向量,用以描述支持域内所有节点的形变位移。

采用基函数p(x)和权函数w(x)来构造形函数,基函数p(x)、权函数w(x)的函数公式分别为:

pt(x)=[1,x,y,z]

式中,为无量纲权函数影响半径,ri为节点i的影响域半径。

有益效果:本发明与现有技术相比,其有益效果在于:(1)使用基于点的方法构建虚拟血管内部形变模型,通过计算应力和应变来获得节点的形变位移向量,在不损害计算效率的同时保证了计算精度和实时性;(2)使用基于位置动力学法对虚拟血管内部节点实施距离约束、体积守恒约束和弹性势能守恒约束三种约束条件,模拟了血管的弹性特性和体积守恒特性;(3)使用无网格移动最小二乘法构建从血管内部到血管表面的映射模型来渲染软组织形变,无需网格拓扑结构的初始划分和重构,甚至避免了采用网格法在产生大形变时的网格扭曲或畸形问题,提高了形变模型的稳定性。

附图说明

图1是本发明的流程图;

图2是本发明中虚拟血管模型结构图;

图3是本发明中距离约束投影示意图;

图4是本发明中弹性势能守恒约束投影示意图;

图5是本发明中从血管内部到血管表面的映射示意图。

具体实施方式

下面结合具体实施方式和说明书附图对本发明做进一步详细介绍。

如图1所示,本发明包括三个部分:使用基于点的方法对虚拟血管内部构建形变模型以此控制软组织的运动、使用基于位置动力学法对血管内部节点施加约束以及使用无网格移动最小二乘法构建从血管内部到血管表面的映射模型以此渲染软组织的形变;具体实施步骤如下:

(1)根据医学影像数据,使用基于点的方法对血管内部构建形变模型,将血管内部区域离散化为点云模型,并将血管的体积均匀分配给这些节点,通过获得节点的应力和应变计算其形变位移向量。使用opengl将ct扫描采集的血管医学图像数据进行三维几何重现,处理图像数据将血管表面离散化为一系列基于三角形网格的质点,将血管内部离散化一系列基于四面体的节点,如图2所示,然后,使用基于点的方法对血管内部建模;

其中,通过获得节点的应力和应变来计算节点的形变位移向量,包括以下步骤:

(a)使用多项式核函数ωij来衡量中心节点i对其邻节点j的影响能力,具体计算公式为:

式中,h表示节点i的支撑半径,r表示节点i与其邻节点j之间的距离;

(b)计算节点i位移向量ui的空间导数具体计算过程为:

xij=xi-xj

式中,xij=xi-xj,表示节点i的位移场u=(m,n,p)t中横坐标所对应的值m的空间导数,表示矩量矩阵ai的逆,mi,mj分别表示节点i和j的位移场u=(m,n,p)t横坐标所对应的值,ωij表示节点i和j间的权重,由多项式核函数计算,xij表示节点i的位置xi与节点j的位置xj之间的距离位移向量,||xij||表示节点i与节点j之间的距离;

矩量矩阵ai可由下式得到:

同样地,也由上述方法计算求出,因此即可得到

式中,分别表示节点i的位移场u=(m,n,p)t中纵坐标所对应的值n的空间导数以及竖坐标所对应的值p的空间导数;

(c)通过求得的可得到节点i处的应变εi和应力σi,具体计算公式为:

σi=cεi

式中,ji表示节点i的雅可比矩阵,i表示单位矩阵,c表示弹性矩阵,其值取决于弹性材料的杨氏模量和泊松比;

(d)根据连续介质力学理论,估计出节点i周围所存储的应变能ui,具体计算公式为:

式中,ω表示节点i的支撑域,νi表示节点i的体积;

(e)应变能本质上是一个关于中心节点i和其所有邻节点j位移向量的函数,因此通过对邻节点位移向量求导就可计算出每个邻节点的所受力fj,从而得到中心节点i的所受内力fi,其值为所有邻节点所受力fj的负总和:

(f)通过对下式进行数值积分计算求解血管内部节点i的形变位移向量:

式中,mi、ui、vi、ai分别表示节点i的质量、位移、速度和加速度,t表示迭代时间,fext、fi分别表示节点i所受的外力和内力。

(2)使用基于位置动力学法对血管内部节点施加约束条件,对于由步骤(1)求出的血管内部节点的形变位置,将其投影到一个有效位置使其满足所定义的距离约束、体积守恒约束和弹性势能守恒约束三种约束条件,即找到某个修正因子δx修正节点的形变位置以满足下式:

式中,c表示所定义的约束函数,节点的修正因子δxi可由下式表示:

其中,表示节点xi质量的倒数。

如图3所示,首先,定义任意两个节点之间的距离约束函数cdistance(x1,x2):

cdistance(x1,x2)=|x1-x2|-d0

式中,d0表示节点x1与x2间的初始距离;由距离约束得到节点位置的变化梯度

通过变化梯度求得各个节点的修正因子δxi(i=1,2):

然后,定义基于虚拟四面体单元的体积约束函数cvolume(x1,x2,x3,x4)以保证形变过后的软组织体积保持不变:

式中,v0表示虚拟四面体单元(x1,x2,x3,x4)的初始体积;由体积约束得到节点位置的变化梯度

通过变化梯度求得各个节点的修正因子δxi(i=1,2,3,4):

如图4所示,最后,定义同样基于虚拟四面体单元的弹性势能守恒约束函数cenergy(x1,x2,x3,x4),并假设四面体单元中任意两个节点间由虚拟弹簧连接,以此模拟血管的弹性特性:

式中,x0表示四面体单元(x1,x2,x3,x4)的重心位置,ki表示连接节点xi,x0的虚拟弹簧的弹性系数,di0表示节点xi,x0间的初始距离;由弹性势能守恒约束得到节点位置的变化梯度

通过变化梯度求得各个节点的修正因子δxi(i=1,2,3,4):

(3)使用无网格移动最小二乘法构建从血管内部到血管表面的映射模型来计算表面质点的形变位置,假设任意血管表面质点都可由其支持域内的一组内部节点来表示,如图5所示,假设某一表面质点为x,其支持域s内包含n个内部节点,定义从血管内部到血管表面的映射函数:

u(x)≈uh(x)=φ(x)us

us=[u1,u2,…,un]t

式中,u(x)表示质点x处的场函数,uh(x)表示u(x)的移动最小二乘近似函数,φ(x)表示质点x支持域内的形函数,us为一个n维向量,用以描述支持域内所有节点的形变位移。

然后,利用无网格移动最小二乘法构造质点x形变位移的近似函数uh(x),故uh(x)可近似表示为:

式中,pj(x)为基函数,m为基函数的个数,aj(x)为相应系数,其值为质点x所处空间坐标的函数,且

pt(x)=[p1(x),p2(x),…,pm(x)]

a(x)=[a1(x),a2(x),…,am(x)]t

根据加权最小二乘法确定系数a(x),使得u(x)的近似误差最小,定义q:

式中,n为质点x支持域内的节点数,w(x-xi)为权函数,xi为支持域内的节点,ui为节点xi的形变位移;

上式可用矩阵形式表示为:

q=(pa-us)tw(x)(pa-us)

式中:

为得到a(x),对q取极值,即得:

式中:a(x)=ptw(x)p,b(x)=ptw(x)。

因此,系数a(x)可表示为:

a(x)=a-1(x)b(x)us

故基于移动最小二乘法的近似函数uh(x)为:

式中,形函数φ(x)为:

φ(x)=[φ1(x),φ2(x),…,φn(x)]=pt(x)a-1(x)b(x)

本发明采用如下基函数p(x)和权函数w(x)来构造形函数:

pt(x)=[1,x,y,z]

其中为无量纲权函数影响半径,ri为节点i的影响域半径。

本发明算法可以在不损害计算效率的同时保证了模拟血管形变的计算精度以及提高了形变模型的稳定性和实时性,让操作者在人机交互的过程中可以感受到软组织的弹性特性和体积守恒特性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1