本技术属于计算机视觉,特别涉及一种动态场景形变重建slam方法、装置、设备以及存储介质。
背景技术:
1、腔镜手术由于其微创性和术后恢复快的特点在临床上得到广泛应用,然而,由于腔镜手术的视野较狭窄,会导致手术出错的风险增加。为了克服由手术视野狭窄导致的缺陷,一种解决方案是使用增强现实手术导航技术,通过将从3d医学影像重建的术前3d全解剖结构投射到术中医生的手术视野中,以对医生进行引导。该技术需要通过术中腔镜影像进行术中表面重建,为术前3d全解剖结构的投射提供配准对象。对于动态变化的术中场景,术中表面重建任务作为手术导航系统的重要环节,一直是一项重要的研究课题。
2、slam(simultaneous localization and mapping,即时定位与地图构建)技术可以从相机序列影像中同时重建场景和估计相机位姿,该技术由于其实时性和较广泛的适用性得到广泛研究。然而目前大多数的slam方法都依赖环境刚性假设约束,这对于人体这种动态非刚性环境并不适用。虽然已经有部分slam方法通过将场景特征点划分为刚性和非刚性的方式来实现对形变场景的重建,然而这类方法只能适用于具有较小和较慢形变的动态场景。此外,额外的3d几何先验信息(rgb-d或双目影像)也被采用以对重建的场景进行形变补偿,但这种需要额外设备的方式并不适用于腔镜手术。近年来,一种只通过单目相机影像就可以实时重建形变场景的单目形变slam方法被提出,该种方法下相机每帧影像被划分为普通关键帧或锚关键帧,且包括两个并行的线程:地图重建线程和形变跟踪线程。其中地图重建线程在锚关键帧上对场景进行重建,得到地图模板,形变跟踪线程则在普通关键帧上跟踪其相应锚关键帧上地图模板的形变和估计相机姿态。在单目形变slam方法中,通常使用规则拓扑结构来构建地图模板,使得地图模板对具有突出几何特征的场景表达能力有限,在场景中具有突变几何特征的区域,然而目前的单目形变slam方法对该区域形变估计的精确程度并不足够完整表达场景的结构信息,这也会影响手术导航系统中后续的配准精度。
技术实现思路
1、本技术提供了一种动态场景形变重建slam方法、装置、设备以及存储介质,旨在至少在一定程度上解决现有技术中的上述技术问题之一。
2、为了解决上述问题,本技术提供了如下技术方案:
3、一种动态场景形变重建slam方法,包括:
4、获取动态场景中的相机序列影像,将所述相机序列影像划分为锚关键帧和普通关键帧;
5、提取所述锚关键帧的边缘特征,并将所述边缘特征融合到规则三角网格中,生成几何自适应的2d三角网格;
6、基于所述2d三角网格,采用三次b样条曲面方法对当前锚关键帧进行动态场景重建,得到所述锚关键帧的几何自适应地图模板;
7、采用sft算法在所述普通关键帧上对所述几何自适应地图模板进行形变跟踪和相机位姿估计,得到动态场景形变重建slam结果。
8、本技术实施例采取的技术方案还包括:所述提取所述锚关键帧的边缘特征,具体为:
9、根据深度特征不连续性和法向量特征不连续性提取所述锚关键帧上的深度边缘特征和法向量边缘特征,并对所述深度边缘特征和法向量边缘特征进行融合,得到突出场景几何结构信息的边缘特征。
10、本技术实施例采取的技术方案还包括:所述提取所述锚关键帧的边缘特征之后,还包括:
11、对所述边缘特征进行去燥处理,保留长度高于设定阈值的显著边缘特征;
12、对所述显著边缘特征进行采样,得到构建地图模板所需的采样边缘特征。
13、本技术实施例采取的技术方案还包括:所述将所述边缘特征融合到规则三角网格中,生成几何自适应的2d三角网格,具体为:
14、基于2d delaunny网格化方法在2d平面生成由n行m列点组成的规则三角网格,以插值方式将所述采样边缘特征融合到规则三角网格中,并采用网格优化算法对插值后的规则三角网格进行优化,生成几何自适应的2d三角网格。
15、本技术实施例采取的技术方案还包括:所述采用三次b样条曲面方法对当前锚关键帧进行动态场景重建,得到所述锚关键帧的几何自适应地图模板,具体为:
16、以所述2d三角网格节点为控制点,通过三次b样条曲面方法从所述锚关键帧的表面点云中估计各控制点在3d空间中的深度,并将2d空间中各控制点的拓扑结构映射到3d空间中的控制点上,对所述锚关键帧进行动态场景重建,得到当前锚关键帧的几何自适应地图模板。
17、本技术实施例采取的技术方案还包括:所述对所述锚关键帧进行动态场景重建,得到当前锚关键帧的几何自适应地图模板,具体为:
18、根据特征匹配关系在锚关键帧池中检索所有与当前锚关键帧具有共视区域的历史锚关键帧;其中,所述锚关键帧池用于存储所有历史锚关键帧;
19、在等距和无穷小平面性假设下,通过nrsfm算法从所述历史锚关键帧中估计得到一个尺度一致的表面将表面与地图对齐,得到经过尺度校正的表面sk,所述表面sk由带有法向量的点组成;
20、将所述表面sk中的地图点xi视为嵌入在地图模板面片中的点,将地图点xi定义为对应面片fj的重心坐标,构建所述当前锚关键帧的几何自适应地图模板xi:
21、
22、其中分别表示面片fj上的三个顶点,[bj,1,bj,2,bj,3]分别为地图点xi对应三个顶点的重心权重。
23、本技术实施例采取的技术方案还包括:所述采用sft算法在所述普通关键帧上对所述几何自适应地图模板进行形变跟踪和相机位姿估计,得到动态场景形变重建slam结果,具体为:
24、利用orb特征算子计算所述普通关键帧的关键点及其特征向量,建立所述普通关键帧与几何自适应地图模板的匹配关系;
25、从所述锚关键帧池中选取与所述锚关键帧共视区域最多的历史锚关键帧作为参考锚关键帧,并采用sft算法最小化所述参考锚关键帧it上的重映射误差和形变能量
26、根据所述重映射误差和形变能量估计所述普通关键帧对应几何自适应地图模板的形变和相机位姿ttw:
27、
28、本技术实施例采取的另一技术方案为:一种动态场景形变重建slam装置,包括:
29、影像获取模块:用于获取动态场景中的相机序列影像,将所述相机序列影像划分为锚关键帧和普通关键帧;
30、特征提取模块:用于提取所述锚关键帧的边缘特征,并将所述边缘特征融合到规则三角网格中,生成几何自适应的2d三角网格;
31、地图模板构建模块:用于基于所述2d三角网格,采用三次b样条曲面方法对当前锚关键帧进行动态场景重建,得到所述锚关键帧的几何自适应地图模板;
32、形变重建模块:用于采用sft算法在所述普通关键帧上对所述几何自适应地图模板进行形变跟踪和相机位姿估计,得到动态场景形变重建slam结果。
33、本技术实施例采取的又一技术方案为:一种设备,所述设备包括处理器、与所述处理器耦接的存储器,其中,
34、所述存储器存储有用于实现所述动态场景形变重建slam方法的程序指令;
35、所述处理器用于执行所述存储器存储的所述程序指令以控制动态场景形变重建slam方法。
36、本技术实施例采取的又一技术方案为:一种存储介质,存储有处理器可运行的程序指令,所述程序指令用于执行所述动态场景形变重建slam方法。
37、相对于现有技术,本技术实施例产生的有益效果在于:本技术实施例的动态场景形变重建slam方法、装置、设备以及存储介质针对动态场景中的几何结构信息,通过提取动态场景中的显著边缘特征构建几何自适应地图模板,同时进行场景形变跟踪和相机位姿估计,为具有突出几何结构信息的区域提供了更细节的重建效果,极大地提高了地图模板对场景形变和几何结构信息的表达能力和表示精度,并提高了形变场景重建和相机位姿估计的精度和效率。