APP下载

一种基于增强现实的高精度自动配准和追踪技术

2021-01-24王学渊

制造业自动化 2021年1期
关键词:虚拟空间圆柱体坐标系

张 品,王学渊

(1.西南科技大学 信息工程学院,绵阳 621010;2.特殊环境机器人技术四川省重点实验室,绵阳 621000)

0 引言

增强现实是一种利用计算机对图像进行处理的技术,该技术可以让用户所看到的真实世界影像与计算机产生的虚拟信息融合在一起,从而加强使用者对真实世界的感知能力。近年来增强现实技术在医疗领域的应用愈加广泛,尤其在手术导航中,增强现实技术能给医生提供更加直观的导航,但手术导航的虚实配准与追踪是一个难点,只有实现虚实完全重叠,才能给医生更好的手术指导[1~3]。在现有技术中,一般增强现实头显设备眼镜有空间映射功能,可以做到位置匹配,但是其有一定局限性:手动配准的效率和精度较低,很难达到医学上高精准、高效率的需求[4,5]。由于其自身带的空间映射需要手动调整对齐,调整耗时较长,手动调整过程中由于视角差的原因不能准确对齐,不符合医学手术要求。二维图片的识别配准,会出现佩戴者视角超过90度易跟踪丢失,在目标和相机之间的高入射角下降低了跟踪精度[6,7]。医学中又出现了电磁追踪方式和光学追踪方式,电磁跟踪系统在电磁场的干扰下会影响精度,限制电磁追踪系统在医学领域中的使用[8~11]。光学追踪方式上存在配准精度低的缺点,不能在医学上得到广泛应用。

随后,葛敏[12]提出一种新的外置的脱离人体的注册方法,在CT下扫描成像,利用算法自动分割识别4个球的球心,在光学导航仪的追踪下利用尺寸关系得到4个球心的三维坐标,并结合四元数的方法与图像空间进行匹配。这种方法的优点是可以避免医生多次对患者粘贴或佩戴标志物,然而这种方法需要准确有效地识别球心位置,并且用此种方法注册时远离模具的位置会导致误差增大。El-Hariri提出[13]利用光学ultrasound(超声波)跟踪,从超声波图像和CT图像中分割骨表面,并进行多模态体积配准,将术前数据与术中数据进行对齐。利用hololens进行显示操作。此方法可以使医生更自然的沉浸化,减少疲劳,简化手眼协调。由于此方法的仪器价格昂贵,并且精度还有待提高。Taylor Frantz提出[14]利用hololens与专有的图像处理软件开发工具包Vuforia结合,为神经导航使用提供更稳定的空间全息图。它可以在hololens中实现真实空间与虚拟空间的关联,跟踪精度高,但是手动配准精度较低。本文结合以上方法提出一种增强现实在医学上自动精确配准与追踪的技术,通过双目摄影测量获取真实空间坐标点来帮助自动配准,利用Vuforia进行关联虚拟现实之间的坐标系,帮助提高虚实配准的精度[15]。

1 真实空间模型、虚拟空间模型的建立

1.1 真实空间模型的建立

在真实空间中,制作一个Vuforia中同比例大小的圆柱体标识物。真实中的RGB圆柱体横截面的半径以及圆柱体的高需要和Vuforia中导入的圆柱体半径与高度的比例大小严格相同,否则会影响识别跟踪的精度。制作Vuforia中的RGB圆柱体,首先选取识别性能良好的Vuforia图像Chips,用A4纸彩色打印,采用高为172.5mm,宽为207.97mm的A4识别图纸。然后将其包裹在直径为66.20mm的圆柱体上,并用薄双面胶带固定,使其不可见,RGB圆柱体的摆放位置十分重要,在配准时,把RGB圆柱体用非永久粘合剂使其固定在病床的柱子上,让RGB圆柱体和病人人体共同出现在Hololens视野中,方便识别与追踪。

在真实人体上和RGB圆柱体上粘贴带有一定厚度的小圆点标记贴。各粘贴4个(或4个以上)标记点,要求3点不共线,4点不共面,方便用于对真实空间进行识别和定位。使用一定厚度的小圆点标记贴,用于在CT扫描中获得标记点在虚拟空间中的坐标,也便于相机摄影测量获得真实空间中标记点的精确坐标[16]。为完成虚拟空间和真实空间坐标系的配准做准备。

1.2 虚拟空间模型的建立

通过对粘贴标记点的真实人体CT扫描,获取虚拟空间的三维数据,在Mimics中对所建三维模型进行阈值分析和编辑处理,以及三维模型网格的重新划分并做优化,从而提高三维模型的可靠性和精确性,在Vuforia中建立一个与真实空间同比例大小的RGB圆柱体(Cylinder Target),将构建好的人体三维模型和RGB圆柱体三维模型导入Unity中进行规划,以便在Hololens中显示与操作。

2 虚拟空间与真实空间坐标系之间的位置转换

2.1 利用相机摄影测量来实时跟踪获取真实空间标记点坐标信息

真实空间中的标记点坐标无法直接准确获得,需要借助相机的摄影测量进行获得其标记点坐标的精确位置。为了能够在配准过程中快速高精度的获取标记点的坐标信息,采用圆形标记点的识别和定位的方法,通过双目相机拍摄提取不同位置的两幅图片,然后将图像做灰度化处理和形态学变换,设定其阈值对左右图像做轮廓提取,最后通过霍夫圆检测算法识别圆形标记点的轮廓,并得到圆心坐标的像素值,对图像的处理、几何约束以及椭圆拟合等操作,实现圆形标记点的提取并精确求出其圆心点在图像像素坐标系内的坐标值,选取其中几个比较容易识别的标记点,推导出圆形标记点在摄像机坐标系下的空间坐标信息。

2.2 空间映射转换

虚、实坐标系进行配准时,需要在两个不同坐标系下测出同一组公共点的坐标,通过这组公共坐标将这两个坐标系的位姿进行关联。首先在真实空间中选取4个标记点,取任意一个标记点A0为参考坐标系的原点,同时以A0与其他3个坐标点A1、A2、A3的连线建立X轴、Y轴以及Z轴,并设定向量、、为各自坐标轴上的单位向量,因此A0、A1、A2、A34点坐标分别为(0,0,0)、(1,0,0)、(0,1,0)、(0,0,1)。从而建立真实空间坐标系,即手术空间非正交坐标系,这样手术空间中任意一点的位置AP(xp,yp,zp)都可以唯一确定,并满足以下公式:

A0、A1、A2、A34点在虚拟空间中的坐标分别为(x0,y0,z0)、(xa1,ya1,za1)、(xa2,ya2,za2)、(xa3,ya3,za3)。

4个标记点在两个空间坐标系中的坐标比较如表1所示。

表1 4个标志点在真实空间和虚拟空间的坐标比较

由于虚拟空间中三维模型是通过患者的CT扫描数据重建所得,因此可认为虚拟空间与真实手术空间的空间映射转换为刚体变换(包括平移和旋转)[17],一个变换矩阵可完成两坐标系中位置的空间映射转换,从真实空间向虚拟空间的映射矩阵T如下式:

R是3×3的旋转矩阵,t是3×1的平移矩阵;

2.3 真实空间人体包围盒中心点的获取

根据空间映射方法对PRB、PRT、PVB、PVT四个坐标系之间进行转换,确定虚拟场景坐标系与现实场景坐标系之间的位置转换关系。其中PRB是人体上标记点在真实空间中建立的坐标系,PRT是RGB圆柱体上标记点在真实空间中建立的坐标系,PVB是人体上的标记点在导入Unity初始状态下建立的坐标系,PVT是RGB圆柱体上的标记点在虚拟空间中建立的坐标系。

利用PVB上的4个标记点和与其对应PRB上的4个标记点坐标,采用空间映射方法求得PVB与PRB坐标系之间的转换矩阵T1,PVB_center在Unity中可以使用模型包围盒直接获得,由PVB上的人体包围盒中心点坐标PRB_center,利用公式如下求取PRB_center:

2.4 P'VB_center相应的位置的求取

由双目相机摄影测量获得真实空间中PVB和PRB之间的位置关系,为使虚拟空间中PVB和PVT之间的位置关系与真实空间中保持一致,求取与PRB_center位置对应的P'VB_center:已知真实人体PRB_center在PRT坐标系下的位置坐标,利用PRT上的4个标记点坐标和与其对应PVT上的4个标记点坐标,采用空间映射方法求得PRT与PVT坐标系之间的转换矩阵T2,由真实人体PRB_center在PRT坐标系下的位置坐标,利用如下公式求取P'VB_center相应的位置:

2.5 确定虚拟人体相对真实人体之间的旋转角度

由3.4可知,真实人体与虚拟人体的包围盒中心点位置是一一对应的,但是模型之间相差一个旋转角度,以PRB上的4个标记点和P'VB上的4个标记点坐标,利用空间映射求取旋转矩阵R,由旋转矩阵与欧拉角之间的转换,获得虚拟人体在Unity中应旋转的角度,在Unity中为左手系旋转,且欧拉旋转的旋转顺序是ZXY,并在Unity中做相应的角度调整。其中P'VB是步骤3.3中虚拟人体中心点在P'VB_center下建立的坐标系;

其中,在左手系中绕X轴旋转角度为p,对应的矩阵为Rx:

在左手系中绕Y轴旋转角度为h,对应的矩阵为Ry:

在左手系中绕Z轴旋转角度为b,对应的矩阵为Rz:

3 实现自动配准与追踪

首先获取真实空间模型的真实空间模型数据,并建立与真实空间模型对应的真实空间坐标系,根据真实空间模型数据,建立与真实空间模型对应的虚拟空间模型,并建立与虚拟空间模型对应的虚拟空间坐标系。利用Vuforia的精确识别跟踪功能实现真实空间与虚拟空间坐标系之间的关联,在Visual Studio平台上用代码进行坐标之间转换操作,进行虚拟空间与真实空间坐标系位置之间转换,完成真实人体与虚拟人体模型之间的包围盒中心点的重合,再运用旋转矩阵与欧拉角之间的转换获得模型之间的角度转换,并在Unity的Vuforia中进行虚实配准跟踪操作,把项目导入Hololens中,通过Hololens与Unity联合操作结合双目相机摄影测量进行三维追踪识别,医生可佩戴Hololens眼镜,在手术导航中提供更好的手术指导[18]。

图1 增强现实自动精确配准与追踪的方法流程图

4 实验验证

实验采用双目相机获取真实空间中标记点的位置坐标,在Windows10操作系统上运行Microsoft Visual Studio平台上完成坐标配准,采用vuforia进行识别跟踪,并在unity平台上展示虚实配准效果。配准前真实空间点集M坐标与配准前虚拟空间点集W坐标如表3所示。

表2 配准前真实空间点集M(mm)

表3 配准前虚拟空间点集W(mm)

为了验证实验的精确度,将一张带有毫米刻度的A4纸(其细线间距为1毫米)粘贴在一个光滑平板上,将3D打印的胸骨和RGB圆柱体粘贴在平板上。将其一并放在实验台上,利用双目相机获取真实空间坐标点信息,在unity中获取虚拟空间坐标点信息。通过坐标系之间的转换,在unity中对模型进行调整相应的角度和位置。最后利用Hololens进行同构多个角度观察配准效果。

表4 配准后虚拟空间点集N(mm)

图2 虚拟空间模型与真实空间模型配准前效果

图3 虚拟空间模型与真实空间模型配准后效果

经过以上对各坐标系转换,获得配准前后坐标值,并用MATLAB显示模型配准前后点,经计算误差为1.004mm,在允许范围内。

图4 空间坐标点配准前后精度对比

5 结语

为了达到增强现实在医学导航上的高精度配准与追踪技术,提出了一种自动精确配准与追踪的方法。它是通过双目相机摄影测量获取真实空间坐标点来帮助自动配准,利用Vuforia来进行关联虚拟与现实之间的坐标系,帮助提高虚实配准精度。Vuforia中的Cylinder Target识别在虚实配准与追踪过程中不易受到遮挡的影响,配准精度较高,对比配准前后坐标误差精度为1.004mm,达到实时追踪的效果,并且可以做到360°视角跟踪目标,允许医生在测试区域内走动,符合实用要求。此方法具有先进性和实用参考价值,并且经济实惠。

猜你喜欢

虚拟空间圆柱体坐标系
虚拟空间设计中的关键技术分析
附加整流装置的圆柱体涡激振动数值研究
基于虚拟化的相向行驶车辆间通信机制的研究
解密坐标系中的平移变换
坐标系背后的故事
基于重心坐标系的平面几何证明的探讨
找出圆柱体
圆柱体上的最短路径
网络经济对企业的影响分析
极坐标系下移动机器人的点镇定