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

一种位姿确定方法及装置、电子设备和存储介质与流程

2023-03-20 18:11:12 来源:中国专利 TAG:


1.本公开涉及计算机技术领域,尤其涉及一种位姿确定方法及装置、电子设备和存储介质。


背景技术:

2.同时定位和地图创建(simultaneous localization and mapping,slam)是移动机器人在解决未知环境中的探索、侦查、导航等各项问题的基础和关键。机器人根据自身携带的传感器获取观测信息创建环境地图,同时根据部分已创建地图估计机器人的位姿。
3.目前,在基于视觉的slam中,会利用相邻的两帧图像来确定设备采集当前帧时的位姿,然而,其估计的位姿的准确度较低。


技术实现要素:

4.本公开提出了一种位姿确定技术方案。
5.根据本公开的一方面,提供了一种位姿确定方法,包括:获取移动设备采集的第一图像和第二图像;所述第一图像在时序上早于所述第二图像;分别对所述第一图像和第二图像进行全景分割,得到所述第一图像对应的第一全景分割结果和所述第二图像对应的第二全景分割结果;基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和所述第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系;基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿。
6.在一种可能的实现方式中,所述基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和所述第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系,包括:基于所述第一全景分割结果和所述第二全景分割结果中图像特征点的语义信息,确定所述第一图像和所述第二图像中静态对象的第一特征点;对所述第一图像和所述第二图像中的第一特征点进行匹配,得到所述第一图像和所述第二图像中的第一特征点之间的匹配关系。
7.在一种可能的实现方式中,所述对所述第一图像和所述第二图像中的第一特征点进行匹配,得到所述第一图像和所述第二图像中的第一特征点之间的匹配关系,包括:确定所述第一图像和所述第二图像中第一特征点之间的相似度值,在两个第一特征点之间的相似度值小于相似度阈值的情况下,建立两个第一特征点之间的初步匹配关系;在具备初步匹配关系的两个第一特征点的语义信息和/或实例信息相同的情况下,确定具备初步匹配关系的两个第一特征点之间具备匹配关系。
8.在一种可能的实现方式中,所述基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿,包括:基于所述第一全景分割结果和所述第二全景分割结果,确定所述第一图像和所述第二图像中实例轮廓的参考点;确定所述第一图像和所述第二图像之间具备匹配关系的参考点;基于所述第一图像和所述第二图像之间具备匹配关系的参考点和具备匹配关系的特征点,确定所述第一图像和所述第二图像之间的旋转平移参数;基于所述旋
转平移参数,确定移动设备采集所述第二图像时的位姿。
9.在一种可能的实现方式中,所述基于所述第一图像和所述第二图像之间具备匹配关系的参考点和具备匹配关系的特征点,确定所述第一图像和所述第二图像之间的旋转平移参数,包括:确定使得重投影误差函数的值最小的旋转平移参数;其中,旋转平移参数用于对所述第一图像和所述第二图像中的任一图像进行旋转平移操作,所述重投影误差函数用于确定旋转平移操作后所述第一图像和所述第二图像的重合度,所述重投影误差函数的值与旋转平移操作后具备匹配关系的参考点之间的距离负相关,与旋转平移操作后具备匹配关系的特征点之间的距离负相关,与所述重合度负相关。
10.在一种可能的实现方式中,所述基于所述第一全景分割结果和所述第二全景分割结果,确定所述第一图像和所述第二图像中实例轮廓的参考点,包括:基于所述第一全景分割结果中的第一实例信息,和所述第二全景分割结果中的第二实例信息,得到所述第一图像和所述第二图像中的实例轮廓;确定所述实例轮廓的最小外接图形;将所述最小外接图形的中心点作为实例轮廓的参考点。
11.在一种可能的实现方式中,在确定移动设备在采集所述第二图像时的位姿后,所述方法还包括:根据所述位姿以及采集的环境信息,构建地图。
12.根据本公开的一方面,提供了一种位姿确定装置,包括:获取单元,用于获取移动设备采集的第一图像和第二图像;所述第一图像在时序上早于所述第二图像;分割单元,用于分别对所述第一图像和第二图像进行全景分割,得到所述第一图像对应的第一全景分割结果和所述第二图像对应的第二全景分割结果;匹配单元,用于基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和所述第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系;位姿确定单元,用于基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿。
13.在一种可能的实现方式中,所述匹配单元,用于:基于所述第一全景分割结果和所述第二全景分割结果中图像特征点的语义信息,确定所述第一图像和所述第二图像中静态对象的第一特征点;对所述第一图像和所述第二图像中的第一特征点进行匹配,得到所述第一图像和所述第二图像中的第一特征点之间的匹配关系。
14.在一种可能的实现方式中,所述匹配单元,用于:确定所述第一图像和所述第二图像中第一特征点之间的相似度值,在两个第一特征点之间的相似度值小于相似度阈值的情况下,建立两个第一特征点之间的初步匹配关系;在具备初步匹配关系的两个第一特征点的语义信息和/或实例信息相同的情况下,确定具备初步匹配关系的两个第一特征点之间具备匹配关系。
15.在一种可能的实现方式中,所述位姿确定单元,用于:基于所述第一全景分割结果和所述第二全景分割结果,确定所述第一图像和所述第二图像中实例轮廓的参考点;确定所述第一图像和所述第二图像之间具备匹配关系的参考点;基于所述第一图像和所述第二图像之间具备匹配关系的参考点和具备匹配关系的特征点,确定所述第一图像和所述第二图像之间的旋转平移参数;基于所述旋转平移参数,确定移动设备采集所述第二图像时的位姿。
16.在一种可能的实现方式中,所述位姿确定单元,用于:确定使得重投影误差函数的值最小的旋转平移参数;其中,旋转平移参数用于对所述第一图像和所述第二图像中的任
一图像进行旋转平移操作,所述重投影误差函数用于确定旋转平移操作后所述第一图像和所述第二图像的重合度,所述重投影误差函数的值与旋转平移操作后具备匹配关系的参考点之间的距离负相关,与旋转平移操作后具备匹配关系的特征点之间的距离负相关,与所述重合度负相关。
17.在一种可能的实现方式中,所述位姿确定单元,用于:基于所述第一全景分割结果中的第一实例信息,和所述第二全景分割结果中的第二实例信息,得到所述第一图像和所述第二图像中的实例轮廓;确定所述实例轮廓的最小外接图形;将所述最小外接图形的中心点作为实例轮廓的参考点。
18.在一种可能的实现方式中,所述装置还包括:构图单元,用于根据所述位姿以及采集的环境信息,构建地图。
19.根据本公开的一方面,提供了一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
20.根据本公开的一方面,提供了一种计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
21.在本公开实施例中,通过获取移动设备采集的第一图像和第二图像;所述第一图像在时序上早于所述第二图像;分别对所述第一图像和第二图像进行全景分割,得到所述第一图像对应的第一全景分割结果和所述第二图像对应的第二全景分割结果;基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系;基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿。由于全景分割结果中会包含图像中物体的语义和实例信息,而具备匹配关系的物体的特征点的语义和实例信息应当是相同的,因此,基于第一全景分割结果和第二全景分割结果,对所述第一图像和第二图像进行匹配,提高了得到的匹配关系的准确性,进而提高了基于匹配关系确定的位姿的准确性。
22.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。
附图说明
23.此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
24.图1示出根据本公开实施例的位姿确定方法的流程图。
25.图2示出根据本公开实施例的改进后的跟踪线程的流程图。
26.图3示出根据本公开实施例的一种位姿确定装置的框图。
27.图4示出根据本公开实施例的一种电子设备的框图。
具体实施方式
28.以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除
非特别指出,不必按比例绘制附图。
29.在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
30.本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括a、b、c中的至少一种,可以表示包括从a、b和c构成的集合中选择的任意一个或多个元素。
31.另外,为了更好地说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。
32.随着slam技术的发展,也衍生出了多种slam系统,示例性的,orb-slam3是一种基于orb描述子的特征点法视觉slam系统,是一个支持视觉、视觉加惯导、混合地图的slam系统,可以在单目、双目和rgb-d相机上利用针孔或鱼眼相机模型运行。其中,rgb-d相机能拍摄两幅图像,rgb表示具有红绿蓝三通道的图像,d表示深度图像(depth image),orb-slam3由多地图系统、跟踪线程、局部建图线程、闭环检测和地图融合线程等流程组成。
33.其中,跟踪线程处理来自摄像头和惯导设备的传感器信息,通过最小化相邻帧之间匹配特征点重投影误差的方式,实时计算设备在当前帧的位姿。
34.然而,在基于相邻帧的特征点进行位姿确定时,相邻帧的特征点可能会存在误匹配的情况,或者,相邻帧中可能会存在动态物体(移动的物体),这会导致相邻帧匹配不准确的问题,因此,基于相邻帧的特征点匹配进行位姿确定的方式,其准确性有待提高。
35.在本公开实施例中,通过获取移动设备采集的第一图像和第二图像;所述第一图像在时序上早于所述第二图像;分别对所述第一图像和第二图像进行全景分割,得到所述第一图像对应的第一全景分割结果和所述第二图像对应的第二全景分割结果;基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系;基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿。由于全景分割结果中会包含图像中物体的语义和实例信息,而具备匹配关系的物体的特征点的语义和实例信息应当是相同的,因此,基于第一全景分割结果和第二全景分割结果,对所述第一图像和第二图像进行匹配,提高了得到的匹配关系的准确性,进而提高了基于匹配关系确定的位姿的准确性。
36.在一种可能的实现方式中,所述位姿确定方法可以由移动设备执行,或者由终端设备或服务器等电子设备执行,终端设备可以为用户设备(user equipment,ue)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(personal digital assistant,pda)、手持设备、计算设备、车载设备、可穿戴设备等,所述方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
37.图1示出根据本公开实施例的位姿确定方法的流程图,如图1所示,所述位姿确定方法包括以下步骤。
38.在步骤s11中,获取移动设备采集的第一图像和第二图像。
39.这里的移动设备可以是地理位置可变更的设备,地理位置的变更可以是移动设备自主变更,也可以是由外力导致的变更。移动设备例如可以是车辆、船舶、飞行器等设备,或
者也可以是机器人,例如扫地机器人、搬运机器人等等。
40.移动设备可通过图像采集设备连续地采集周边事物的图像,这里第一图像和第二图像,是图像采集设备按照时间先后顺序采集的两帧图像,这两帧图像可以是相邻的前后两帧图像,也可以是间隔几帧的前后两帧图像,本公开对此不做限定。
41.在步骤s12中,分别对所述第一图像和第二图像进行全景分割,得到所述第一图像对应的第一全景分割结果和所述第二图像对应的第二全景分割结果。
42.全景分割可以得到图像中对象的语义信息,具体来说,通过全景分割可以得到图像中不同对象的图像区域以及图像区域对应的类别信息,该类别信息例如可以是车辆、行人、道路设施、树木、草地等等,通过全景分割,可以获取到所述第一图像和所述第二图像中各个像素所属的语义信息(类别信息)。
43.一个示例中,可以将图像输入至全景分割网络中,经全景分割网络输出全景分割结果。全景分割网络可以是通过图像样本集训练得到的,具体可参见本公开提供的可能的实现方式,此处暂不做赘述。
44.在步骤s13中,基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系。
45.在得到所述第一图像和所述第二图像各自的全景分割结果后,如果所述第一图像和第二图像中存在同一类的对象,即语义信息相同的对象,那么二者的语义信息应该是相同的。因此,可以基于全景分割结果来进行匹配,保证得到的第一图像和第二图像中具备匹配关系的特征点的语义信息是相同的,防止将语义信息不同的点误匹配,以提高图像匹配的准确度。或者,还可以根据语义信息,确定属于动态对象的特征点,剔除动态对象的特征点后,用静态对象的特征点来进行匹配,以提高图像匹配的准确度。具体细节可参见本公开提供的可能的实现方式,此处暂不做赘述。
46.在一个示例中,这里的特征点可以是定向快速旋转(orb,oriented fast and rotated brief)特征点。
47.在步骤s14中,基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿。
48.位姿可以包括位置和姿态,位置可以是移动设备在地图中的坐标,姿态可以是移动设备在地图中的方向。
49.在确定匹配关系后,即可根据第二图像与第一图像确定旋转平移参数,旋转平移参数可包括旋转矩阵和平移向量,那么,即可在第一图像的位姿的基础上,经旋转平移参数对移动设备进行旋转和平移,然后确定第二图像对应的位姿。
50.在本公开实施例中,通过获取移动设备采集的第一图像和第二图像;所述第一图像在时序上早于所述第二图像;分别对所述第一图像和第二图像进行全景分割,得到所述第一图像对应的第一全景分割结果和所述第二图像对应的第二全景分割结果;基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系;基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿。由于全景分割结果中会包含图像中物体的语义和实例信息,而具备匹配关系的物体的特征点的语义应当是相同的,实例信息也应当是相同的,因此,基于第一全景分割结果和第二全景分割结果,对所述第一图像和第二图像进行匹配,提高了得到的匹配关系的准确性,进而提高了基于匹配关系确定的位姿的准确性。
51.在一种可能的实现方式中,全景分割网络经训练得到,全景分割网络的获取过程如下。
52.选用上下文公共对象(coco ,microsoft common objects in context)数据集、城市场景数据集cityscapes和场景语义理解数据集ade20k作为公开数据集,再根据任务需要补充实际任务场景的数据集构成最终数据集,将数据集按6:2:2的比例划分成训练集、验证集和测试集。
53.全景分割网络分别采用具有编解码器结构的u-net网络和mask-rcnn网络作为基础框架,并根据需要进行改进;全景分割需要对像素进行像素级别的分割,分别通过语义分割和实例分割两个子网络,并通过一定的融合策略对语义分割和实例分割两个子任务的结果进行融合获得全景分割的结果。
54.将训练集中的图片送入全景分割网络进行训练,利用验证集验证效果后,再在测试集上进行泛化能力测试,得到满足精度等指标要求的全景分割网络模型m1。
55.基于上述全景分割网络的框架,减少网络模型的卷积层、池化层层数,构造新模型m1’,按照知识蒸馏的方式,通过构造硬损失和软损失以大模型m1指导小模型m1’的方式对小模型m1’进行训练,对训练完的模型m1’进行剪枝操作,得到最终用于终端部署的轻量化全景分割模型m2。
56.知识蒸馏主要分成两步,首先是训练教师模型,上述步骤3中的m1就是教师模型,获得教师模型后,在温度t下对教师模型进行“蒸馏”,得到学生模型,上述中的模型m1’就是学生模型。
57.高温蒸馏过程的目标函数由蒸馏损失(distill loss)和学生模型损失(student loss)加权得到,其中蒸馏损失对应软目标(soft target),学生模型损失对应硬目标(hard target)。
58.深度学习网络模型从卷积层到全连接层存在着大量冗余的参数,大量神经元激活值趋近于0,仅仅只有少部分(5-10%)权值参与着主要的计算。将这些神经元去除后可以表现出同样的模型表达能力,这种情况被称为过参数化,而对应的技术则被称为模型剪枝。模型剪枝的一般分为如下几个步骤:1.评估神经元的重要性;2.去掉最不重要的神经元;3.对模型进行精细化调整;4.根据精度要求判断是否进行剪枝;5.如继续剪枝,则重复1-5,否则执行步骤6;6.停止剪枝,得到剪枝后的模型m2。
59.剪枝后的模型m2删除了大量的冗余的参数,能够提高模型的执行效率,即可作为步骤s12中进行全景分割操作的全景分割网络。
60.在一种可能的实现方式中,所述基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和所述第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系,包括:基于所述第一全景分割结果和所述第二全景分割结果中图像特征点的语义信息,确定所述第一图像和所述第二图像中静态对象的第一特征点;对所述第一图像和所述第二图像中的第一特征点进行匹配,得到所述第一图像和所述第二图像中的第一特征点之间的匹配关系。
61.在该实现方式中,可以预先设置语义信息与静态对象和/或动态对象的映射关系,由于语义信息即为对象的类别,例如可以将车辆、行人等语义信息设置为动态对象,将建筑物、草地、树木和道路设施等语义信息设置为静态对象。
62.由于动态对象可能会移动,因此在采集第一图像和第二图像时,动态对象可能发生了移动,这导致第二图像中物体的位置变动不仅仅与移动设备自身移动相关,还与动态对象自身的移动相关。因此,通过动态对象无法很好的反应移动设备在采集第一图像和第二图像时的移动,也就无法很好的计算移动设备的位姿。
63.那么在本公开实施例中,在对第一图像和第二图像分别进行全景分割,得到第一全景分割结果和所述第二全景分割结果后,可以根据第一全景分割结果和所述第二全景分割结果,剔除动态对象对应的特征点,而使用静态对象的特征点进行第一图像和第二图像中特征点的匹配,为便于描述,这里将静态对象的特征点称为第一特征点。可以理解的是,本公开实施例中的“第一”和“第二”用于区分所描述的对象,而不应当理解为对描述对象的次序、指示或暗示相对重要性等其它限定。
64.在本公开实施例中,通过基于所述第一全景分割结果和所述第二全景分割结果中图像特征点的语义信息,确定所述图像中静态对象的第一特征点;对所述第一图像和所述第二图像中的第一特征点进行匹配,得到所述第一图像和所述第二图像中的第一特征点之间的匹配关系。由此,能够减少动态对象的移动对位姿计算的影响,提高了确定的位姿的准确度。
65.在一种可能的实现方式中,所述对所述第一图像和所述第二图像中的第一特征点进行匹配,得到所述第一图像和所述第二图像中的第一特征点之间的匹配关系,包括:确定所述第一图像和所述第二图像中第一特征点之间的相似度值,在两个第一特征点之间的相似度值小于相似度阈值的情况下,建立两个第一特征点之间的初步匹配关系;在具备初步匹配关系的两个第一特征点的语义信息和/或实例信息相同的情况下,确定具备初步匹配关系的两个第一特征点之间具备匹配关系。
66.这里的第一特征点可以是orb特征点,可以提取orb特征点的描述子来作为第一特征点的特征值。
67.这里的相似度值,可以是两个特征点的特征值之间的汉明距离、欧氏距离或者余弦相似度,本公开对此不作具体限定。示例性的,在orb特征点的特征值为描述子的情况下,可以确定orb特征点的描述子的汉明距离,作为第一特征点之间的相似度值。
68.这里的实例信息是对同一类对象的不同个体实例之间的区分,例如,对于对象人,可以具体区分为人1、人2、人3。这里的实例信息可以基于全景分割结果得到,对于具体获取过程本公开不做赘述。
69.在确定第一特征点之间的相似度值以后,可以先依据该相似度值进行粗匹配。具体可以是,在两个第一特征点之间的相似度值小于相似度阈值的情况下,建立两个第一特征点之间的初步匹配关系,即视为粗匹配成功,相似度阈值可以是根据经验得到的数值,本领域人员可根据实际场景要求选择,本公开对此不做限定。
70.对于粗匹配成功的第一特征点,可以利用特征点的语义信息和/或实例信息进行精匹配。具体可以是,在具备初步匹配关系的两个第一特征点的语义信息和/或实例信息相同的情况下,确定具备初步匹配关系的两个第一特征点之间具备匹配关系,即视为精匹配成功。在具备初步匹配关系的两个第一特征点的语义信息和/或实例信息不相同的情况下,即视为精匹配失败。
71.在第一图像和第二图像中存在重复纹理的情况下,例如图像中有多个人,他们的
纹理可能是重复的,图像中有多辆汽车,他们的纹理也可能是重复的。也即重复纹理场景下,不同对象的纹理可能是相同或相近的,那么,在初步匹配后,通过进一步根据两个第一特征点的语义信息和/或实例信息,能够降低纹理相同的不同对象之间的误匹配率。
72.在本公开实施例中,通过确定所述第一图像和所述第二图像中第一特征点之间的相似度值,在两个第一特征点之间的相似度值小于相似度阈值的情况下,建立两个第一特征点之间的初步匹配关系;在具备初步匹配关系的两个第一特征点的语义信息和/或实例信息相同的情况下,确定具备初步匹配关系的两个第一特征点之间具备匹配关系。由于所述第一图像和所述第二图像中,具备匹配关系的两个特征点应该是同一个对象的特征点,那么它们的语义信息和/或实例信息应该是相同的,因此,通过将语义信息和/或实例信息相同的点进行匹配,可以区分不同对象,减少对不同对象的特征点的误匹配,以提高最终得到的移动设备位姿的准确性,尤其适用于重复纹理场景下的位姿确定。
73.在一种可能的实现方式中,所述基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿,包括:基于所述第一全景分割结果和所述第二全景分割结果,确定所述第一图像和所述第二图像中实例轮廓的参考点;确定所述第一图像和所述第二图像之间具备匹配关系的参考点;基于所述第一图像和所述第二图像之间具备匹配关系的参考点和具备匹配关系的特征点,确定所述第一图像和所述第二图像之间的旋转平移参数;基于所述旋转平移参数,确定移动设备采集所述第二图像时的位姿。
74.在对所述第一图像和所述第二图像进行全景分割得到全景分割结果后,能够得到所述第一图像和所述第二图像中对象的实例轮廓,即对象在图像中的区域,这个轮廓是具备边界的,是具备一定位置的,那么,这里将表征实例轮廓所在位置的点,称为实例轮廓的参考点。
75.作为一个示例,实例轮廓的参考点可以是实例轮廓中的最小外接图形的中心点,这里的最小外接图形可以是最小外接矩形,也可以是最小外接圆,等等。
76.在一种可能的实现方式中,所述基于所述第一全景分割结果和所述第二全景分割结果,确定所述第一图像和所述第二图像中实例轮廓的参考点,包括:基于所述第一全景分割结果中的第一实例信息,和所述第二全景分割结果中的第二实例信息,得到所述第一图像和所述第二图像中的实例轮廓;确定所述实例轮廓的最小外接图形;将所述最小外接图形的中心点作为实例轮廓的参考点。
77.第一实例信息和第二实例信息即为通过全景分割得到的实例轮廓,这里的中心点,可以是最小外接图形的形心、中心或重心等。例如,可以是最小外接矩形的形心。在该实现方式中,通过最小外接图形的中心点作为实例轮廓的参考点,能够更加准确地表征示例轮廓的位置,以提高得到的移动设备位姿的准确性。
78.确定参考点之间的匹配关系的实现方式,与确定第一特征点之间匹配关系的实现方式相同,可以是先通过参考点之间的相似度进行初步匹配,然后再依据参考点的语义信息和/实例信息进行精确匹配,得到参考点之间的匹配关系。
79.在本公开实施例中,可以基于所述第一图像和所述第二图像之间具备匹配关系的参考点和具备匹配关系的特征点,确定所述第一图像和所述第二图像之间的旋转平移参数;然后基于所述旋转平移参数,确定移动设备采集所述第二图像时的位姿。由于具备匹配关系的参考点(例如,实例中心点)能够反映周围对象所在的核心点,并且特征点之间的匹
配关系准确性较高,因此,能够提高确定的旋转平移参数的准确性,进而提高确定的移动设备位姿的准确性。
80.需要说明的是,在确定旋转平移参数时,除基于所述第一图像和所述第二图像之间具备匹配关系的参考点和具备匹配关系的特征点之外,还可以基于其它参数,例如惯性测量单元( imu,inertial measurement unit)采集的数据等,本公开对此不做限定。
81.在一种可能的实现方式中,所述基于所述第一图像和所述第二图像之间具备匹配关系的参考点和具备匹配关系的特征点,确定所述第一图像和所述第二图像之间的旋转平移参数,包括:确定使得重投影误差函数的值最小的旋转平移参数;其中,旋转平移参数用于对所述第一图像和所述第二图像中的任一图像进行旋转平移操作,所述重投影误差函数用于确定旋转平移操作后所述第一图像和所述第二图像的重合度,所述重投影误差函数的值与旋转平移操作后具备匹配关系的参考点之间的距离负相关,与旋转平移操作后具备匹配关系的特征点之间的距离负相关,与所述重合度负相关。
82.在该实现方式中,会构建重投影误差函数,重投影误差函数用于确定旋转平移后第一图像和第二图像的重合度,第一图像和第二图像的重合度,可以用具备匹配关系的参考点之间的距离、具备匹配关系的特征点之间的距离来计算,具备匹配关系的参考点之间的距离越小,则第一图像和第二图像的重合度越高,此时重投影误差函数的值越小;具备匹配关系的特征点之间的距离越小,则第一图像和第二图像的重合度越高,此时重投影误差函数的值越小。
83.可以理解的是,在对第一图像进行旋转平移操作后,即可计算具备匹配关系的参考点之间的距离,以及具备匹配关系的特征点之间的距离,当距离最小时,可以使得重投影误差函数的值最小,此时所述第一图像和所述第二图像的重合度最高。
84.那么,可以根据具备匹配关系的参考点之间的距离和具备匹配关系的特征点之间的距离,求使得重投影误差函数的值最小的旋转平移参数,来作为使得第一图像和第二图像重合度最高时的旋转平移参数,然后,利用该旋转平移参数,对第一图像对应的位姿进行旋转平移,即可得到第二图像对应的位姿。
85.需要说明的是,在实际应用中,参考点之间的距离和特征点之间的距离,可以仅为重投影误差函数的部分参数,重投影误差函数的参数还可以包括其它参数,本公开对此不作限定。
86.在本公开实施例中,通过将具备匹配关系的参考点之间的距离、具备匹配关系的特征点之间的距离来作为重投影误差函数的参数,对旋转平移参数进行求解,得到的旋转平移参数更加准确,提高了得到的移动设备位姿的准确性。
87.在一种可能的实现方式中,在确定移动设备在采集第二图像时的位姿后,所述方法还包括:根据所述位姿以及采集的环境信息,构建环境地图。
88.在slam系统中,可以同步采集移动设备周围的环境信息,基于采集的环境信息来创建环境地图,例如,可以通过激光雷达采集周围环境的点云信息,作为环境信息。
89.移动设备在采集图像时,会同步采集此时的环境信息,那么,在确定移动设备的位姿后,即可在环境地图中的当前位置和朝向下,叠加采集所述第二图像时采集的环境信息,得到构建的环境地图。
90.在本公开实施例中,通过根据所述位姿以及采集的环境信息,构建环境地图,由于
本公开实施例能够提高确定的位姿的准确度,因此,也提高了基于该位姿构建的环境地图的准确度。
91.下面对本公开在一个具体应用场景中的实施方式进行示例性说明。
92.构建全景分割网络。具体构建过程可参见本公开提供的可能的实现方式,此处不做赘述。
93.提取移动设备采集的相邻两帧图像的特征点,并计算特征点对应的描述子。
94.通过全景分割网络对相邻两帧图像进行语义分割,得到语义分割结果。
95.根据语义分割结果,剔除动态对象的特征点,得到静态特征点。
96.根据语义分割结果,为静态特征点赋予语义信息和实例信息,。
97.计算两帧图像的特征点的描述子之间的汉明距离,当特征点之间的汉明距离小于预设距离时,建立特征点之间的初步匹配关系。
98.在具备初步匹配关系的两个特征点的语义信息和/实例信息相同时,确认特征点之间具备匹配关系。
99.确定各实例轮廓的最小外接矩形的形心。
100.确定相邻两帧图像之间具备匹配关系的形心。确定形心的匹配关系的实现方式,与确定静态特征点(第一特征点)之间的匹配关系的实现方式相同,此处不做赘述。
101.利用相邻两帧图像中具备匹配关系的特征点及具备匹配关系的形心,通过最小化重投影误差,来求解旋转矩阵和平移向量,进行相机的位姿估计和场景地图的构建。
102.本公开实施例可以应用于orb-slam3算法,对orb-slam3算法的改进在于跟踪线程(视觉里程计)部分,跟踪线程以外的其它流程可以为orb-slam3算法标准流程,本公开对此不作赘述。图2提供了一种根据本公开实施例的改进后的跟踪线程的流程图,图像数据会经过全景分割模型提取静态实例物体的实例形心,并进行形心匹配;然后提取图像数据中的orb特征点,并确定带有语义和实例信息的静态特征点,然后进行特征点匹配;再根据形心匹配结果和特征点匹配结果,进行相机位置估计,其具体过程可参加本公开提供的可能的实现方式,此处不做赘述。需要说明的是,在跟踪线程中,还会采集imu数据,进行imu积分,并利用imu积分进行后续的其它步骤,例如,确定移动设备的位姿和建图。
103.在本公开实施例中,通过全景分割,识别场景中的动态物体,将动态物体上的特征点进行剔除,利用静态特征点进行相机的位姿估计和建图,得到的位姿和地图更加准确,这使得orb-slam3算法在动态场景下更加适用。
104.此外,通过语义信息和实例信息的辅助,使得特征点的匹配除了依据描述子之间距离的计算,还需要依据语义信息和实例信息是否匹配,这降低了重复纹理场景下的特征点误匹配率。此外,通过实例信息的辅助,在进行重投影差计算时除了计算匹配的特征点之外,还会对实例点中心点的重投影误差进行计算,这进一步提高了相机位姿估计的精度。
105.可以理解,本公开提及的上述各个方法实施例,在不违背原理逻辑的情况下,均可以彼此相互结合形成结合后的实施例,限于篇幅,本公开不再赘述。本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
106.此外,本公开还提供了位姿确定装置、电子设备、计算机可读存储介质、程序,上述均可用来实现本公开提供的任一种位姿确定方法,相应技术方案和描述和参见方法部分的
相应记载,不再赘述。
107.图3示出根据本公开实施例的位姿确定装置的框图,如图3所示,所述装置20包括:获取单元21,用于获取移动设备采集的第一图像和第二图像;所述第一图像在时序上早于所述第二图像;分割单元22,用于分别对所述第一图像和第二图像进行全景分割,得到所述第一图像对应的第一全景分割结果和所述第二图像对应的第二全景分割结果;匹配单元23,用于基于所述第一全景分割结果和所述第二全景分割结果,对所述第一图像和所述第二图像进行匹配,得到所述第一图像和所述第二图像之间特征点的匹配关系;位姿确定单元24,用于基于所述匹配关系,确定移动设备在采集所述第二图像时的位姿。
108.在一种可能的实现方式中,所述匹配单元,用于:基于所述第一全景分割结果和所述第二全景分割结果中图像特征点的语义信息,确定所述第一图像和所述第二图像中静态对象的第一特征点;对所述第一图像和所述第二图像中的第一特征点进行匹配,得到所述第一图像和所述第二图像中的第一特征点之间的匹配关系。
109.在一种可能的实现方式中,所述匹配单元,用于:确定所述第一图像和所述第二图像中第一特征点之间的相似度值,在两个第一特征点之间的相似度值小于相似度阈值的情况下,建立两个第一特征点之间的初步匹配关系;在具备初步匹配关系的两个第一特征点的语义信息和/或实例信息相同的情况下,确定具备初步匹配关系的两个第一特征点之间具备匹配关系。
110.在一种可能的实现方式中,所述位姿确定单元,用于:基于所述第一全景分割结果和所述第二全景分割结果,确定所述第一图像和所述第二图像中实例轮廓的参考点;确定所述第一图像和所述第二图像之间具备匹配关系的参考点;基于所述第一图像和所述第二图像之间具备匹配关系的参考点和具备匹配关系的特征点,确定所述第一图像和所述第二图像之间的旋转平移参数;基于所述旋转平移参数,确定移动设备采集所述第二图像时的位姿。
111.在一种可能的实现方式中,所述位姿确定单元,用于:确定使得重投影误差函数的值最小的旋转平移参数;其中,旋转平移参数用于对所述第一图像和所述第二图像中的任一图像进行旋转平移操作,所述重投影误差函数用于确定旋转平移操作后所述第一图像和所述第二图像的重合度,所述重投影误差函数的值与旋转平移操作后具备匹配关系的参考点之间的距离负相关,与旋转平移操作后具备匹配关系的特征点之间的距离负相关,与所述重合度负相关。
112.在一种可能的实现方式中,所述位姿确定单元,用于:基于所述第一全景分割结果中的第一实例信息,和所述第二全景分割结果中的第二实例信息,得到所述第一图像和所述第二图像中的实例轮廓;确定所述实例轮廓的最小外接图形;将所述最小外接图形的中心点作为实例轮廓的参考点。
113.在一种可能的实现方式中,所述装置还包括:构图单元,用于根据所述位姿以及采集的环境信息,构建地图。
114.在一些实施例中,本公开实施例提供的装置具有的功能或包含的模块可以用于执行上文方法实施例描述的方法,其具体实现可以参照上文方法实施例的描述,为了简洁,这里不再赘述。
115.本公开实施例还提出一种计算机可读存储介质,其上存储有计算机程序指令,所
述计算机程序指令被处理器执行时实现上述方法。计算机可读存储介质可以是易失性或非易失性计算机可读存储介质。
116.本公开实施例还提出一种电子设备,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为调用所述存储器存储的指令,以执行上述方法。
117.本公开实施例还提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
118.电子设备可以被提供为终端、服务器或其它形态的设备。
119.图4示出根据本公开实施例的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器或终端设备。参照图4,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
120.电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如微软服务器操作系统(windows server
tm
),苹果公司推出的基于图形用户界面操作系统(mac os x
tm
),多用户多进程的计算机操作系统(unix
tm
), 自由和开放原代码的类unix操作系统(linux
tm
),开放原代码的类unix操作系统(freebsd
tm
)或类似。
121.在示例性实施例中,还提供了一种非易失性计算机可读存储介质,例如包括计算机程序指令的存储器1932,上述计算机程序指令可由电子设备1900的处理组件1922执行以完成上述方法。
122.本公开可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本公开的各个方面的计算机可读程序指令。
123.计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是(但不限于)电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式压缩盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
124.这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计
算机可读存储介质中。
125.用于执行本公开操作的计算机程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c 等,以及常规的过程式编程语言—诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla),该电子电路可以执行计算机可读程序指令,从而实现本公开的各个方面。
126.这里参照根据本公开实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
127.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
128.也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
129.附图中的流程图和框图显示了根据本公开的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
130.该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(software development kit,sdk)等等。
131.上文对各个实施例的描述倾向于强调各个实施例之间的不同之处,其相同或相似
之处可以互相参考,为了简洁,本文不再赘述。
132.本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
133.若本技术技术方案涉及个人信息,应用本技术技术方案的产品在处理个人信息前,已明确告知个人信息处理规则,并取得个人自主同意。若本技术技术方案涉及敏感个人信息,应用本技术技术方案的产品在处理敏感个人信息前,已取得个人单独同意,并且同时满足“明示同意”的要求。例如,在摄像头等个人信息采集装置处,设置明确显著的标识告知已进入个人信息采集范围,将会对个人信息进行采集,若个人自愿进入采集范围即视为同意对其个人信息进行采集;或者在个人信息处理的装置上,利用明显的标识/信息告知个人信息处理规则的情况下,通过弹窗信息或请个人自行上传其个人信息等方式获得个人授权;其中,个人信息处理规则可包括个人信息处理者、个人信息处理目的、处理方式以及处理的个人信息种类等信息。
134.以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献