一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种空间定位方法及系统、设备和计算机可读存储介质与流程

2022-02-19 03:58:42 来源:中国专利 TAG:


1.本发明涉及计算机视觉领域,尤其涉及一种基于视觉的空间定位方法及系统、设备和计算机可读存储介质。


背景技术:

2.基于视觉的空间定位技术是增强现实、机器人、无人驾驶等领域的关键技术之一,是利用图像自动辨识周围环境、视觉定位等技术的核心,例如google推出的vps,华为推出的cyberverse,视 推出的spatialmap。随着各种传感器的普及、处理能力的增强以及各种应用需求的推动,每天都在采集越来越多的图像数据,同时生成并更新三维地图,以供利用空间定位技术获取设备的空间位置和姿态(即位姿)。
3.目前无人驾驶、增强现实领域对空间定位的精度和稳定性要求越来越高,目前大部分基于视觉的空间定位技术比较依赖场景纹理,在弱纹理,相似纹理,对称性物体,相同规格的楼层等场景下会出现错误定位,定位误差较大,或者定位失败的情况。这对实际体验有很大的不良影响,例如在ar导览时,虚拟物体会不端抖动,跳跃等,严重影响主观体验,甚至在依赖高精度定位的ar导航,自动避障等应用上无法达到商业应用标准。因此如何提高视觉的空间定位技术的定位精度和定位稳定性一直就是业界亟待突破的问题。


技术实现要素:

4.有鉴于此,本发明的目的在于提供一种基于视觉的空间定位方法及系统、设备和计算机可读存储介质,将本地视觉里程计通过转换关系实时转换到地图坐标系就可以获取在地图中的定位位姿,具有定位精度高,定位稳定性高和帧率高的优势。
5.一方面,本发明提出一种基于视觉的空间定位方法,其中,所述基于视觉的空间定位方法包括:
6.利用本地视觉里程计获取设备图像的第一位姿,通过所述设备图像在已知地图中定位获取所述设备图像在所述已知地图中的第二位姿,其中,所述设备图像、所述第一位姿、所述第二位姿组成一组定位数据;
7.保存固定数量的多组所述定位数据;
8.读取多组所述定位数据,并使用预设求解算法得到从所述第一位姿到所述第二位姿的转换关系;
9.将所述本地视觉里程计获取的所述第一位姿,通过所述转换关系转换到地图坐标系后得到第三位姿。
10.优选的,所述使用预设求解算法得到从所述第一位姿到所述第二位姿的转换关系的步骤包括:
11.使用预设求解算法将所述第一位姿对齐到所述第二位姿的坐标系上;
12.使用至少3对位姿对进行相似变换,以求解出两个坐标系之间的旋转矩阵、平移向量和尺度。
13.优选的,所述基于视觉的空间定位方法还包括:
14.判断所述第三位姿的角度与所述第二位姿的角度差是否小于预设阈值;
15.如果小于所述预设阈值,则判定本次转换关系为正确,并更新所述相似变换,否则判定本次转换关系为错误。
16.优选的,所述基于视觉的空间定位方法还包括:
17.通过更新后的相似变换,将所述第一位姿转换到地图坐标系后得到第四位姿;
18.输出所述第四位姿。
19.另一方面,本发明还提出一种基于视觉的空间定位系统,所述基于视觉的空间定位系统包括:
20.数据收集模块,用于利用本地视觉里程计获取设备图像的第一位姿,通过所述设备图像在已知地图中定位获取所述设备图像在所述已知地图中的第二位姿,其中,所述设备图像、所述第一位姿、所述第二位姿组成一组定位数据;
21.滑动窗缓存模块,用于保存固定数量的多组所述定位数据;
22.转换关系求解模块,用于读取多组所述定位数据,并使用预设求解算法得到从所述第一位姿到所述第二位姿的转换关系;
23.校验模块,用于将所述本地视觉里程计获取的所述第一位姿,通过所述转换关系转换到地图坐标系后得到第三位姿。
24.优选的,所述转换关系求解模块还用于:
25.使用预设求解算法将所述第一位姿对齐到所述第二位姿的坐标系上;
26.使用至少3对位姿对进行相似变换,以求解出两个坐标系之间的旋转矩阵、平移向量和尺度。
27.优选的,所述校验模块还用于:
28.判断所述第三位姿的角度与所述第二位姿的角度差是否小于预设阈值;
29.如果小于所述预设阈值,则判定本次转换关系为正确,并更新所述相似变换,否则判定本次转换关系为错误。
30.优选的,所述基于视觉的空间定位系统还包括坐标系转换模块和输出模块,其中,
31.所述坐标系转换模块,用于通过更新后的相似变换,将所述第一位姿转换到地图坐标系后得到第四位姿;
32.所述输出模块,用于输出所述第四位姿。
33.另一方面,本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的基于视觉的空间定位方法的步骤。
34.另一方面,本发明还提供一种设备,其中,所述设备包括存储器和处理器,所述存储器存储计算机处理指令,所述处理器通过调用所述计算机处理指令来执行上述任一项所述的基于视觉的空间定位方法。
35.本发明提供的技术方案具有以下优点:将本地视觉里程计通过转换关系实时转换到地图坐标系就可以获取在地图中的定位位姿,具有定位精度高,定位稳定性高和帧率高的优势。
附图说明
36.图1为本发明一实施方式中基于视觉的空间定位方法的流程示意图;
37.图2为本发明另一实施方式中基于视觉的空间定位方法的流程示意图;
38.图3为本发明一实施方式中基于视觉的空间定位系统的结构示意图;
39.图4为本发明另一实施方式中基于视觉的空间定位系统的结构示意图。
具体实施方式
40.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
41.以下将对本发明所提供的一种基于视觉的空间定位方法进行详细说明。
42.请参阅图1,为本发明一实施方式中基于视觉的空间定位方法的流程示意图。
43.在步骤s11中,利用本地视觉里程计获取设备图像的第一位姿,通过设备图像在已知地图中定位获取设备图像在已知地图中的第二位姿,其中,设备图像、第一位姿、第二位姿组成一组定位数据。
44.在本实施方式中,随着摄像头技术的不断发展,摄像头感知世界的能力越来越强,融合了3d高精地图能力,空间计算能力、强环境理解能力和虚实融合能力的技术越来越多。在增强现实、虚拟现实、导航、移动机器人、无人机、无人驾驶等领域,获得摄像头在空间的位置和角度是非常重要的需求。现有技术的常规做法是对空间或建筑做三维建模,制作3d地图,3d地图保存了真实三维空间中物体的形状,位置,角度,特征和语义信息。但是,本发明的技术方案则另辟蹊径,创新性的提出了一种视觉定位的方法,该视觉定位是通过图像中稳定特征与地图中的特征做匹配来获得图像的位置和朝向。
45.在本实施方式中,位姿表示位置和姿态,利用本地视觉里程计获取设备图像的第一位姿t1,然后通过设备图像在已知地图(通常为已知的高精地图)中定位获取设备图像在已知地图中的第二位姿t2,设备图像、设备图像的时间戳、本地视觉里程计中设备图像的第一位姿t1、已知地图中的第二位姿t2组成一组定位数据datalocation。定位数据datalocation的帧率取决于定位平台的承载的能力,一般低于设备图像的原始帧率,例如手机ar发起定位的频次大概是1帧/秒,而设备视频帧是30帧/秒。
46.在步骤s12中,保存固定数量的多组所述定位数据。
47.在本实施方式中,保存固定数量m(m>3)个定位数据datalocation,每个定位数据datalocation包括单帧图像、图像的时间戳、本地视觉里程计中设备图像的第一位姿t1、已知地图中的第二位姿t2。
48.在步骤s13中,读取多组所述定位数据,并使用预设求解算法得到从所述第一位姿到所述第二位姿的转换关系。
49.在本实施方式中,所述使用预设求解算法得到从所述第一位姿到所述第二位姿的转换关系的步骤包括:
50.使用预设求解算法将所述第一位姿对齐到所述第二位姿的坐标系上;
51.使用至少3对位姿对进行相似变换,以求解出两个坐标系之间的旋转矩阵、平移向量和尺度。
52.在本实施方式中,预设求解算法为ransac的sim3求解算法,每个定位数据datalocation的本地视觉里程计中设备图像的第一位姿t1、已知地图中的第二位姿t2组成一个位姿对。m个定位数据提供了m个位姿对。在本实施方式中,通过sim3可以将本地视觉里程计中设备图像的第一位姿t1对齐到第二位姿t2的坐标系上,sim3变换就是使用至少3对匹配点来进行相似变换(similarity transformation)的求解,进而解出两个坐标系之间的旋转矩阵、平移向量和尺度。
53.具体地,m个定位数据包含m个视觉里程计位姿,对应的第一位姿t1包括旋转矩阵和平移矩阵([r10|t10],[r11|t11],[r12|t12],......),其中r1n为第n个视觉里程计位姿的3*3旋转矩阵,t1n为第n个视觉里程计位姿的3*1平移矩阵。
[0054]
具体地,m个定位数据包含m个定位位姿,成功的图像包含多个图像(f0,f1,f2,......),对应的第二位姿t2包括旋转矩阵和平移矩阵([r20|t20],[r21|t21],[r22|t22],......),其中r2n为第n个定位位姿的3*3旋转矩阵,t2n为第n个定位位姿的3*1平移矩阵。本地视觉里程计中设备图像的第一位姿t1的相机位置为p1(t10,t11,t12,......),已知地图中的第二位姿t2的相机位置为p2(t20,t21,t22,......),同一张图在连续图像帧和定位成功的图像里的位置分别记作p1和p2,m个定位数据组成了m个三维点对。
[0055]
具体地,求解sim3变换的过程,可以理解为,求解两个坐标系的相似变换。其中,p2=sr(p1) t,通过ransac算法剔除外点后,只需要超过三张图存在三维点对即可求解出坐标系的相似变换的尺度参数s,3*3转换矩阵r,3*1平移矩阵t。
[0056]
在步骤s14中,将所述本地视觉里程计获取的所述第一位姿,通过所述转换关系转换到地图坐标系后得到第三位姿。
[0057]
在本实施方式中,得到视觉里程计的第一位姿t1到地图位姿坐标系的相似变换sr|t作为转换关系,视觉里程计的第一位姿t1通过sr|t对齐到第二位姿t2坐标系得到第三位姿t3。
[0058]
具体的求解过程包括:对于求解的图像帧的第三位姿t3包含滑动窗缓存里每一帧图像对应的位姿([r30|t30],[r31|t31],[r32|t32],......),其中r3n为第n帧3*3旋转矩阵,t3n为第n帧3*1平移矩阵。其中相机位置p3(t10,t11,t12,......),通过视觉里程计的第一位姿t1,以及坐标系的相似变换sr|t可以计算得到图像位置p3,其中p3=sr(p1) t,通过图像帧视觉里程计位姿的相机角度q1(r10,r11,r12,......)和r可以得到图像帧的第三位姿t3的相机角度q3(r30,r31,r32,......),其中,q3=r(q1),由此求解得到的旋转矩阵q3和平移矩阵p3就是转换后的第三位姿t3。
[0059]
在本实施方式中,通过连续多帧本地视觉里程计的第一位姿t1,以及在已知地图中的第二位姿t2,使用ransac的sim3求解算法得到本地视觉里程计的的第一位姿t1到第二位姿t2的转换关系t,然后将本地视觉里程计的第一位姿t1通过转换关系t转换到地图坐标系得到第三位姿t3,但是t3就是高精度的地图定位位姿,具有定位精度高,定位稳定性高和帧率高的优势。
[0060]
本发明为了进一步提高视觉的空间定位技术的定位精度和定位稳定性,在图1的基础上还设计了另外一种空间定位技术,如图2所示。
[0061]
请参阅图2,为本发明另一实施方式中基于视觉的空间定位方法的流程示意图。
[0062]
在本实施方式中,图2所示的步骤s21

s24分别与图1所示的步骤s11

s14相同,在
此不做重复描述,具体参阅前述的相关部分内容。
[0063]
在步骤s24之后,本发明另一实施方式中基于视觉的空间定位方法还包括步骤s25

s29。
[0064]
在步骤s25中,判断第三位姿的角度与第二位姿的角度差是否小于预设阈值。
[0065]
如果小于所述预设阈值,则在步骤s26中,判定本次转换关系为正确,并更新所述相似变换,否则,在步骤s27中,判定本次转换关系为错误。
[0066]
在步骤s28中,通过更新后的相似变换,将第一位姿转换到地图坐标系后得到第四位姿t4。
[0067]
在步骤s29中,输出第四位姿。在本实施方式中,同时输出图像、图像时间戳以及图像在地图中的第四位姿t4。
[0068]
在本实施方式中,依靠设备端运行的实时高帧率视觉里程计/视觉惯性里程计,以及在地图的定位位姿,通过ransac的sim3算法估计,剔除定位误差大的位姿,获取视觉惯性里程计到地图的转换关系t,将视觉惯性里程计通过转换关系t实时转换到地图坐标系就可以获取在地图中的定位位姿。更进一步的,通过滑动窗不断更新转换关系t,就可以通过转换关系t持续获得定位位姿,该定位位姿比直接定位获取的位姿具有精度高,稳定性高和帧率高的优势。
[0069]
请参阅图3,为本发明一实施方式中基于视觉的空间定位系统的结构示意图。
[0070]
在本实施方式中,基于视觉的空间定位系统10包括:数据收集模块11、滑动窗缓存模块12、转换关系求解模块13、校验模块14。
[0071]
数据收集模块11,用于利用本地视觉里程计获取设备图像的第一位姿,通过所述设备图像在已知地图中定位获取所述设备图像在所述已知地图中的第二位姿,其中,所述设备图像、所述第一位姿、所述第二位姿组成一组定位数据。
[0072]
滑动窗缓存模块12,用于保存固定数量的多组所述定位数据。
[0073]
转换关系求解模块13,用于读取多组所述定位数据,并使用预设求解算法得到从所述第一位姿到所述第二位姿的转换关系。
[0074]
校验模块14,用于将所述本地视觉里程计获取的所述第一位姿,通过所述转换关系转换到地图坐标系后得到第三位姿。
[0075]
在本实施方式中,装置项中各个模块的详细内容与图1中各个步骤中的详细内容大致相同,在此不做重复描述,具体可以参阅前述方法项中对应的详细内容。
[0076]
在本实施方式中,通过连续多帧本地视觉里程计的第一位姿t1,以及在已知地图中的第二位姿t2,使用ransac的sim3求解算法得到本地视觉里程计的的第一位姿t1到第二位姿t2的转换关系t,然后将本地视觉里程计的第一位姿t1通过转换关系t转换到地图坐标系得到第三位姿t3,但是t3就是高精度的地图定位位姿,具有定位精度高,定位稳定性高和帧率高的优势。
[0077]
本发明为了进一步提高视觉的空间定位技术的定位精度和定位稳定性,在图3的基础上还设计了另外一种空间定位系统,如图4所示。
[0078]
请参阅图4,为本发明另一实施方式中基于视觉的空间定位系统的结构示意图。
[0079]
在本实施方式中,图4所示的模块21

24分别与图3所示的模块11

14相同,在此不做重复描述,具体参阅前述的相关部分内容。
[0080]
在本实施方式中,转换关系求解模块23还用于:
[0081]
使用预设求解算法将所述第一位姿对齐到所述第二位姿的坐标系上;
[0082]
使用至少3对位姿对进行相似变换,以求解出两个坐标系之间的旋转矩阵、平移向量和尺度。
[0083]
在本实施方式中,所述校验模块24还用于:
[0084]
判断所述第三位姿的角度与所述第二位姿的角度差是否小于预设阈值;
[0085]
如果小于所述预设阈值,则判定本次转换关系为正确,并更新所述相似变换,否则判定本次转换关系为错误。
[0086]
图4中的基于视觉的空间定位系统20还包括坐标系转换模块25和输出模块26。
[0087]
在本实施方式中,所述坐标系转换模块25,用于通过更新后的相似变换,将所述第一位姿转换到地图坐标系后得到第四位姿;
[0088]
在本实施方式中,所述输出模块26,用于输出所述第四位姿。
[0089]
在本实施方式中,图4中装置项的各个模块的详细内容与图2中各个步骤中的详细内容大致相同,在此不做重复描述,具体可以参阅前述方法项中对应的详细内容。
[0090]
在本实施方式中,依靠设备端运行的实时高帧率视觉里程计/视觉惯性里程计,以及在地图的定位位姿,通过ransac的sim3算法估计,剔除定位误差大的位姿,获取视觉惯性里程计到地图的转换关系t,将视觉惯性里程计通过转换关系t实时转换到地图坐标系就可以获取在地图中的定位位姿。更进一步的,通过滑动窗不断更新转换关系t,就可以通过转换关系t持续获得定位位姿,该定位位姿比直接定位获取的位姿具有精度高,稳定性高和帧率高的优势。
[0091]
另一方面,本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如前所述的基于视觉的空间定位方法的步骤。
[0092]
另一方面,本发明还提供一种设备,其中,所述设备包括存储器和处理器,所述存储器存储计算机处理指令,所述处理器通过调用所述计算机处理指令来执行上述的基于视觉的空间定位方法。
[0093]
本发明提供的技术方案具有以下优点:依靠设备端运行的实时高帧率视觉里程计/视觉惯性里程计,以及在地图的定位位姿,通过ransac的sim3算法估计,剔除定位误差大的位姿,获取视觉惯性里程计到地图的转换关系t,将视觉惯性里程计通过转换关系t实时转换到地图坐标系就可以获取在地图中的定位位姿。更进一步的,通过滑动窗不断更新转换关系t,就可以通过转换关系t持续获得定位位姿,该定位位姿比直接定位获取的位姿具有精度高,稳定性高和帧率高的优势。本发明提供的技术方案通过滑动窗将本次是视觉里程计的位姿与地图定位位姿对齐,获取到了连续且平滑的高帧率地图位姿。由于的位姿与地图定位位姿对齐是使用ransac剔除外点后的sim3算法估计,可以抵抗误差大的定位位姿,以及是视觉里程计与定位地图尺度不统一的问题。
[0094]
值得注意的是,上述实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
[0095]
另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤
是可以通过程序来指令相关的硬件来完成,相应的程序可以存储于一计算机可读取存储介质中,的存储介质,如rom/ram、磁盘或光盘等。
[0096]
以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献