基于重心坐标的视觉SLAM方法、系统、终端及介质

文档序号:37645729发布日期:2024-04-18 18:12阅读:14来源:国知局
基于重心坐标的视觉SLAM方法、系统、终端及介质

本发明涉及计算机视觉,尤其涉及的是一种基于重心坐标的视觉slam方法、系统、终端及介质。


背景技术:

1、近年来,随着科技的快速发展,同步定位与地图构建(simultaneouslocalization and mapping,slam)方法在自动驾驶、室内导航、机器人导航、虚拟现实和海底勘探等领域的应用越来越广泛,也越来越引起重视。slam要求移动机器人能够在移动的同时构建环境地图并确定自身在这个环境中的位置,为了达成这一目标,机器人会依赖各种传感器,包括声纳系统、测距激光、摄像头和全球定位系统,来感知地标测量。

2、目前主流的slam分为激光slam与视觉slam两类。其中,视觉slam使用摄像头传感器,通过捕捉连续图像帧,提取特征点、边缘或地标,并将它们用于构建地图和估算机器人的运动。主要包括基于传统图像处理的视觉slam和基于深度学习的视觉slam。其中,基于传统图像处理的方法主要依赖于连续的图像帧来估算相机或机器人的运动,从而实现定位和构建环境地图。按是否需要提取图像特征,又分为特征点法前端和不提取特征的直接法前端。特征点法前端通过sift、orb、surf等方法检测并匹配图像中的特征点,虽然不易受环境变化的影响,稳定性较好,但是计算复杂度较高,效率较低,实现成本较高;而直接法前端通过在图像亮度上执行像素级的匹配来估算相机运动,虽然避免了特征提取和匹配的复杂性,但对图像亮度变化敏感,精确性较差。基于深度学习的视觉slam则是用深度学习方法来改进特征提取、特征匹配、深度估计和地图构建等关键步骤,虽然精度得到了提升,但是算法复杂度很高,效率较低,实现成本高。

3、可见,现有的视觉slam方法中在保障算法精确度的前提下,普遍存在算法复杂度较高、效率较低的缺陷。


技术实现思路

1、鉴于上述现有技术的不足,本发明的目的在于提供一种基于重心坐标的视觉slam方法、系统、终端及介质,旨在解决现有技术中存在的算法复杂度较高、效率较低的问题。

2、为了实现上述目的,本发明第一方面提供一种基于重心坐标的视觉slam方法,包括:

3、实时获取目标终端采集的视觉信息,基于所述视觉信息,获得若干个地标的方位向量,并基于所述地标的方位向量获得所述目标终端在相邻时刻移动的相对方位向量;

4、基于预设的构型,利用任意两个相邻时刻的所有所述地标的所述方位向量和所述目标终端的所述相对方位向量,构建若干个与所述构型相似的相似构型,并基于每个所述相似构型,获得一组相合坐标;

5、利用所述相合坐标,求解对应的所述相似构型的重心坐标,并基于相同时刻下的所有所述重心坐标,创建一个目标slam矩阵方程;

6、求解各个时刻下的所述目标slam矩阵方程,获得所述目标终端的位置坐标和所述地标的坐标,并利用所述目标终端的位置坐标和所述地标的坐标,构建所述目标终端的运动轨迹并完成建图。

7、可选的,构建所述构型的步骤,包括:

8、定义若干个坐标已知的节点,获得锚节点;

9、根据所述目标终端在任意两个相邻时刻的位置,及若干个所述锚节点和若干个坐标未知的自由节点,构建一个通信感知图;

10、基于所述通信感知图,利用所述目标终端在两个所述位置分别观察到的所述锚节点和所述自由节点的方位向量,构建所述构型。

11、可选的,所述基于每个所述相似构型,获得一组相合坐标,包括:

12、基于每个所述相似构型,利用所述目标终端在任意两个相邻时刻的位置,分别与相应时刻上观测到的每个锚节点或自由节点构建一个三角形;

13、利用所述两个相邻时刻的所有所述地标的所述方位向量,计算所述目标终端在两个相邻时刻移动的相对方位向量及每个所述三角形中的所述锚节点和所述自由节点在目标终端坐标系下的方位向量,获得所述相似构型中各个节点的方位向量;

14、基于所述相似构型中各个节点的方位向量,获得一组相合坐标。

15、可选的,所述利用所述两个相邻时刻的所有所述地标的所述方位向量,计算所述目标终端在两个相邻时刻移动的相对方位向量及每个所述三角形中的所述锚节点和所述自由节点在目标终端坐标系下的方位向量,获得所述相似构型中各个节点的方位向量,包括:

16、基于所述目标终端分别在所述两个相邻时刻的所述地标的所述方位向量,计算所述目标终端在所述两个相邻时刻之间的相对旋转矩阵和相对平移矩阵;

17、基于目标终端坐标系,利用所述相对平移矩阵,计算所述目标终端在所述两个相邻时刻移动的相对方位向量;并利用所述相对旋转矩阵,计算每个所述三角形中的所述锚节点和所述自由节点在目标终端坐标系下的方位向量,获得所述相似构型中各个节点的方位向量。

18、可选的,所述基于相同时刻下的所有所述重心坐标,创建一个目标slam矩阵方程,包括:

19、基于重心坐标的性质,利用每组所述重心坐标分别构建一个slam线性方程;

20、将相同时刻下的所有所述slam线性方程进行合并,创建一个目标slam矩阵方程。

21、可选的,所述将相同时刻下的所有所述slam线性方程进行合并,创建一个目标slam矩阵方程,包括:

22、将相同时刻下的所有表示同一节点坐标的slam线性方程进行叠加,并为每个所述重心坐标赋予权重,且每个所述重心坐标在各个所述slam线性方程下的权重之和为1,获得一个slam线性融合方程;

23、基于所述slam线性融合方程,构建一个初始slam矩阵方程;

24、合并所有地标与目标终端相邻两时刻位置的slam线性融合方程,基于所述初始slam矩阵方程中各类节点的数目,利用克罗内克积进行转换,创建一个目标slam矩阵方程。

25、可选的,所述求解各个时刻下的所述目标slam矩阵方程,获得所述目标终端的位置坐标和所述地标的坐标,包括:

26、将所述目标slam矩阵方程进行矩阵变换,获得非奇异矩阵方程;

27、采用共轭梯度算法对所述非奇异矩阵方程进行迭代求解,直至达到预设的迭代次数,或者,估计的所述目标终端在相应时刻的坐标或部分地标的坐标与各自真实位置之间的残差小于预设的残差阈值。

28、本发明第二方面提供一种基于重心坐标的视觉slam系统,所述系统包括:

29、信息获取模块,用于实时获取目标终端采集的视觉信息,基于所述视觉信息,获得若干个地标的方位向量,并基于所述地标的方位向量获得所述目标终端在相邻时刻移动的相对方位向量;

30、相合坐标求解模块,用于基于预设的构型,利用任意两个相邻时刻的所有所述地标的所述方位向量和所述目标终端的所述相对方位向量,构建若干个与所述构型相似的相似构型,并基于每个所述相似构型,获得一组相合坐标;

31、slam矩阵方程构建模块,用于利用所述相合坐标,求解对应的所述相似构型的重心坐标;并基于相同时刻下的所有所述重心坐标,创建一个目标slam矩阵方程;

32、运动轨迹生成模块,用于求解各个时刻下的所述目标slam矩阵方程,获得所述目标终端的位置坐标和所述地标的坐标,并利用所述目标终端的位置坐标和所述地标的坐标,构建所述目标终端的运动轨迹并完成建图。

33、本发明第三方面提供一种智能终端,所述智能终端包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的基于重心坐标的视觉slam程序,所述基于重心坐标的视觉slam程序被所述处理器执行时实现任意一项上述基于重心坐标的视觉slam方法的步骤。

34、本发明第四方面提供一种计算机可读存储介质,所述计算机可读存储介质上存储有基于重心坐标的视觉slam程序,所述基于重心坐标的视觉slam程序被处理器执行时实现任意一项上述基于重心坐标的视觉slam方法的步骤。

35、与现有技术相比,本方案的有益效果如下:

36、本发明基于实时获取的目标终端采集的视觉信息,获得目标终端所观测到的地标的方位向量进而得到自身移动的相对方位向量;基于预设的构型,利用任意两个相邻时刻的所有方位向量和方位向量构建相似构型;然后根据三维的相似构型获得相合坐标,利用相合坐标构建线性目标slam矩阵方程来求解目标终端在各个时刻的位置坐标,从而构建出运动轨迹。该方法仅依赖计算机视觉中的方位测量,创新性地将传统的视觉slam问题转化为三维空间网络的定位问题,将复杂的三维空间非线性求解问题转化成了线性矩阵方程的求解问题,能够极大降低算法复杂度,从而显著提高求解目标终端在各个时刻的位置坐标的精确度和效率。

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