一种显示操作轨迹的虚拟消毒训练系统的制作方法

文档序号:12461636阅读:172来源:国知局

本发明涉及一种显示操作轨迹的虚拟消毒训练系统,尤其涉及一种基于实体模型以及空间定位跟踪单元的一种显示操作轨迹的虚拟消毒训练系统。



背景技术:

穿刺是将穿刺针刺入体腔抽取分泌物做化验,向体腔注入气体或造影剂做造影检查,或向体腔内注入药物的一种诊疗技术,目的是抽血化验,输血、输液及置入导管做血管造影。消毒是穿刺技术如胸穿、腹穿、骨穿、腰穿等操作的关键步骤之一,如果消毒操作不规范,就有可能无法达到预期的消毒效果,导致穿刺过程中将细菌带入体内引起感染,因此对医护人员进行严格的消毒训练以规范其消毒操作。然而目前在医学教具中没有专门用于穿刺消毒的虚拟训练系统。



技术实现要素:

因此,本发明提供一种能够便于医护人员进行训练的一种显示操作轨迹的虚拟消毒训练系统。

为了实现上述目的,本发明的一种显示操作轨迹的虚拟消毒训练系统,包括实体模型、中央处理器、操作单元、显示单元;

所述操作单元,用于模拟消毒棉球在实体模型上进行擦拭,包括模拟所述消毒棉球的模拟部以及空间定位跟踪模块;所述空间定位跟踪模块与所述中央处理器相连,用于实时采集所述模拟部所在实体坐标系的空间点的坐标并将采集到的坐标数据发送至中央处理器;

所述中央处理器,用于将所述实体模型所在的实体坐标系与该实体模型的虚拟模型所在的虚拟坐标系相互关联;用于接收所述空间定位跟踪模块发送的所述模拟部所在真实坐标系的空间点的坐标数据,并在虚拟坐标系中建立虚拟点;用于判断所述虚拟点是否在所述虚拟模型的表面上;用于获取虚拟点在所述虚拟模型表面上的运行轨迹,并且将该运行轨迹在虚拟模型表面进行绘制;所述中央处理器对虚拟点在所述虚拟模型表面上的运行轨迹进行绘制时,同时对该运行轨迹进行渲染,包括以下步骤:将虚拟点转为大小可预设的正方形绘制用画刷,画刷纹理相当于一个灰度掩模;画刷在绘制过程中进行灰度叠加;画刷的渲染通道与虚拟模型表面的皮肤纹理进行混合;

所述显示单元,与所述中央处理器相连,用于对虚拟模型以及虚拟点在所述虚拟模型表面上的运行轨迹以及渲染结果予以显示。

所述操作单元包括镊子,所述镊子的首部为所述模拟部,所述空间定位跟踪模块位于所述镊子的尾部。

所述中央处理器判断所述虚拟点是否在所述虚拟模型的表面上包括以下步骤:

1)建立所述虚拟模型为表面三角形网格模型;

2)建立三角形网格中三角形集合的层次包围球,每一层的包围球内包围若干三角形组成的三角型集合,每一单个三角形包围球的球心为该三角形的外接圆的圆心,层次包围球的建立包括以下步骤:

判断三角形集合是否只包含单个三角形,如果是,则该三角形的包围球的球心为该三角形的外接圆的圆心,如果否,则求该三角形集合的长方体包围盒,其中该三角形集合中每个三角形的外接圆的圆心代表该三角形,并将该长方体包围盒沿长方体包围盒最长边分割成两个三角形集合,递归建立这两个三角形集合的层次包围球,分别作为左子树和右子树;

3)递归更新层次包围球的球心和半径,包括以下步骤:

判断包围球的左子树是否为空,如果否,则更新左子树;

判断包围球的右子树是否为空,如果否,则更新右子树;

判断包围球的左、右子树是否有一个为空,如果是,则包围球的球心和半径为不为空的子树的球心和半径;

判断包围球的左、右子树是否都不为空,如果是,则包围球的球心为左、右子树球心连线的中点,半径为(R+R+d)×0.5,其中R为左子树半径,R为右子树半径,d为左、右子树球心距离;

4)判断虚拟点是否在三角形集合上,如果是,则判定为虚拟点在所述虚拟模型的表面上;

判断虚拟点是否在三角形集合上,包括以下步骤:

判断虚拟点到该三角形集合所在包围球表面的距离是否大于指定误差控制值,如果是,则虚拟点不在此三角形集合上;如果否,

则判断该三角形集合是否只含单个三角形,如果是,则计算虚拟点到该单个三角形的最短距离并将该最短距离更新为全局最短距离,如果否,则递归遍历当前三角形集合的层次包围球的左、右子树;

判断全局最短距离值是否小于指定误差控制值,如果是,则虚拟点在该三角形集合上。

采用上述技术方案,本发明的一种显示操作轨迹的虚拟消毒训练系统,通过建立相互关联的实体坐标系和虚拟坐标系,同时随着操作人员对操作单元的操作,空间定位跟踪模块捕捉模拟部在实体坐标系的空间点的坐标从而能够在虚拟坐标系中建立对应的虚拟点;再通过中央处理器获取虚拟点在虚拟模型表面上的运行轨迹并进行绘制以及渲染。本发明的一种显示操作轨迹的虚拟消毒训练系统,填补了当前医学教具领域中并无针对穿刺消毒进行虚拟训练系统的空白,对完善医护人员的穿刺消毒操作起到良好积极的效果,有利于其在训练过程中形成规范的操作习惯。

具体实施方式

本发明提供的基于实体模型与空间定位跟踪单元的一种显示操作轨迹的虚拟消毒训练系统,其中实体模型基于医学CT扫描人体数据建立的虚拟模型通过数控加工而成,与虚拟模型完全对应,虚拟的消毒器械(如虚拟的消毒镊子)可通过3D扫描仪扫描实体消毒器械成像,也与实体消毒器械完全对应。虚拟模型和实体模型坐标系可通过传统的三点标定方法建立转换关系,使得实体模型在实体坐标系中的位置与虚拟模型在虚拟坐标系中的位置一致。

实体的消毒镊子可在其尾部固定三维空间定位传感器。设镊子整体位于传感器的X轴上,设传感器中心点C的位置坐标为V,传感器姿态四元数为Q,设C到镊子尖端(首部)B的距离为L,则镊子尖端的空间位置Q*(L,0,0),其中(L,0,0)为一空间坐标。镊子的姿态四元数为Q,由此我们得到了镊子尖端的位置和姿态。

当镊子的尖端夹持消毒棉球在实体模型上消毒时,可实时同步虚拟消毒镊子在虚拟模型上消毒,由此实现了虚实结合的消毒仿真训练系统,虚拟消毒效果和实际模拟效果可同步更新。

以下通过具体实施方式对本发明作进一步的详细说明。

本实施例提供一种显示操作轨迹的虚拟消毒训练系统,包括实体模型、中央处理器、操作单元、显示单元;

所述操作单元,用于模拟消毒棉球在实体模型上进行擦拭,包括模拟所述消毒棉球的模拟部以及空间定位跟踪模块;所述空间定位跟踪模块与所述中央处理器相连,用于实时采集所述模拟部所在实体坐标系的空间点的坐标并将采集到的坐标数据发送至中央处理器;

所述中央处理器,用于将所述实体模型所在的实体坐标系与该实体模型的虚拟模型所在的虚拟坐标系相互关联;用于接收所述空间定位跟踪模块发送的所述模拟部所在真实坐标系的空间点的坐标数据,并在虚拟坐标系中建立虚拟点;用于判断所述虚拟点是否在所述虚拟模型的表面上;用于获取虚拟点在所述虚拟模型表面上的运行轨迹,并且将该运行轨迹在虚拟模型表面进行绘制以及渲染;

所述显示单元,与所述中央处理器相连,用于对虚拟模型以及虚拟点在所述虚拟模型表面上的运行轨迹以及渲染结果予以显示。

所述操作单元包括镊子,所述镊子的首部为所述模拟部,所述空间定位跟踪模块位于所述镊子的尾部。

所述中央处理器判断所述虚拟点是否在所述虚拟模型的表面上包括以下步骤:

1)建立所述虚拟模型为表面三角形网格模型;由于模型表面可用三角形集合表示,故判断所述虚拟点是否在所述虚拟模型的表面上这一问题转换为判断虚拟点是否在三角形集合上的问题,由于三角形集合中三角形数量庞大,且判定操作频繁,每帧都需判定。文献《计算点到曲面的最短距离的网格法》(计算机集成制造系统2001年1月第17卷第1期)公开了一种点到曲面的最短距离的计算方法,再如中国专利文献CN101866162A也公开的一种点到曲面距离计算的邻近三角形方法。目前通用的三角片面法是将设计曲面按给定的精度离散成三角面片,然后求空间点到三角平面片之间的最短距离。虽然这种算法通用性好,但是计算量大,边界处理较复杂。故本发明通过后续步骤完成快速判定。

2)建立三角形网格中三角形集合的层次包围球,每一层的包围球内包围若干三角形组成的三角型集合,每一单个三角形包围球的球心为该三角形的外接圆的圆心,层次包围球的建立包括以下步骤:

判断三角形集合是否只包含单个三角形,如果是,则该三角形的包围球的球心为该三角形的外接圆的圆心,如果否,则求该三角形集合的长方体包围盒,其中该三角形集合中每个三角形的外接圆的圆心代表该三角形,并将该长方体包围盒沿长方体包围盒最长边分割成两个三角形集合,递归建立这两个三角形集合的层次包围球,分别作为左子树和右子树;

3)递归更新层次包围球的球心和半径,包括以下步骤:

判断包围球的左子树是否为空,如果否,则更新左子树;

判断包围球的右子树是否为空,如果否,则更新右子树;

判断包围球的左、右子树是否有一个为空,如果是,则包围球的球心和半径为不为空的子树的球心和半径;

判断包围球的左、右子树是否都不为空,如果是,则包围球的球心为左、右子树球心连线的中点,半径为(R+R+d)×0.5,其中R为左子树半径,R为右子树半径,d为左、右子树球心距离;

4)判断虚拟点是否在三角形集合上,如果是,则判定为虚拟点在所述虚拟模型的表面上;

判断虚拟点是否在三角形集合上,包括以下步骤:

判断虚拟点到该三角形集合所在包围球表面的距离是否大于指定误差控制值,如果是,则虚拟点不在此三角形集合上;如果否,

则判断该三角形集合是否只含单个三角形,如果是,则计算虚拟点到该单个三角形的最短距离并将该最短距离更新为全局最短距离,如果否,则递归遍历当前三角形集合的层次包围球的左、右子树;

判断全局最短距离值是否小于指定误差控制值,如果是,则虚拟点在该三角形集合上。

由前述虚拟点在虚拟模型表面上的判定算法,可判断镊子尖端是否在实体模型表面,当镊子的尖端与模型表面接触为一次消毒的开始,当镊子尖端离开模型表面为一次消毒的结束,对应地,在虚拟坐标系中,当虚拟点开始位于所述虚拟模型的表面上为一次消毒的开始,当虚拟点离开虚拟模型的表面为一次消毒的结束。

当镊子尖端在实体模型表面时,需要同步绘制出虚拟模型表面皮肤在消毒过程中的颜色变化情况。因此可以将在虚拟模型表面的绘制转为用画刷在虚拟模型纹理的二维图片上的绘制,分配独立的纹理通道作为绘制的渲染目标,然后再与虚拟模型的纹理进行合成。

具体而言,所述中央处理器对虚拟点在所述虚拟模型表面上的运行轨迹进行绘制时,对该运行轨迹进行渲染,包括以下步骤:

将虚拟点转为大小可预设的正方形绘制用画刷,画刷纹理相当于一个灰度掩模;通常对于灰度值,纯白色的灰度值为1,纯黑色的灰度值为0;

整个三维场景是按照一定的刷新频率在渲染,设在刷新间隔两个时间点,镊子尖端在模型表面的两个接触点的纹理坐标分别为P1(u1,v1)和P2(u2,v2),P1和P2之间的消毒路径为一直线,设画刷的绘制间距为d,则可求出P1、P2上的一系列等间距的点1,2,3……等作为画刷的绘制位置,当最后一个等间距的点与P2之间的距离不足d,可累加到下一次绘制的距离上;

画刷在绘制过程中进行灰度叠加;叠加算法如下:

C=A+D×(1-A)

其中A为画刷纹理的灰度,D为画刷的渲染目标的原有灰度,C为画刷的渲染目标更新后的灰度;

画刷的渲染通道与虚拟模型表面的皮肤纹理进行混合;混合算法为

C=[C-(A×0.1,A×0.2,0)] ×(1-A)+(0.5A,0.25A,0)

其中A为画刷的渲染通道中的灰度值,C为模型的皮肤纹理的原有颜色,为一三元组(红,绿,蓝)的三基色分量表示。C为混合后的新的皮肤纹理颜色。

上述算法可基于GPU的shade编程实现。

显然,上述实施例仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本发明创造的保护范围之中。

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