可移动设备的定位方法、装置和电子设备与流程

文档序号:33368256发布日期:2023-03-08 01:17阅读:18来源:国知局
可移动设备的定位方法、装置和电子设备与流程

1.本发明涉及数据处理技术领域,尤其涉及一种可移动设备的定位方法、装置和电子设备。


背景技术:

2.在一些涉及定位的场景中,以同步定位与地图构建(simultaneous localization and mapping,slam)场景为例,slam场景主要帮助车辆实时感知周围环境,更好的完成导航,避障、路径规划等任务,这些都依赖于定位的准确性。
3.目前,在对车辆进行定位时,通常是基于车辆上设置的单目摄像头采采集周围环境的单目图像,并基于采集的单目图像对车辆进行定位,但是,采用该种方法,尤其是针对一些光照不足,低纹理、纹理稠密的城市区域,会导致定位结果的准确度较低。


技术实现要素:

4.本发明提供一种可移动设备的定位方法、装置和电子设备,提高了定位结果的准确度。
5.本发明提供一种可移动设备的定位方法,该可移动设备的定位方法可以包括:
6.分别获取可移动设备采集的目标单目图像和惯性测量单元数据。
7.提取所述目标单目图像对应的多个点特征及多个线特征。
8.从所述多个点特征中剔除异常点,得到所述目标单目图像对应的多个目标点特征。
9.根据所述多个线特征中两两线特征的端点之间的距离,对所述多个线特征进行合并处理,得到多个第一线特征;并对所述多个第一线特征进行筛选处理,得到所述目标单目图像对应的多个目标线特征;
10.根据所述多个目标点特征、所述多个目标线特征以及所述惯性测量单元数据,执行所述可移动设备的定位操作。
11.根据本发明提供的一种可移动设备的定位方法,提取所述目标单目图像对应的多个线特征,包括:
12.对所述目标单目图像进行分块处理,得到所述目标单目图像对应的多个图像块。
13.分别提取各图像块中的线特征,得到所述目标单目图像对应的多个线特征。
14.根据本发明提供的一种可移动设备的定位方法,所述对所述多个第一线特征进行筛选处理,得到所述目标单目图像对应的多个目标线特征,包括:
15.根据所述目标单目图像的宽度、高度、所述多个第一线特征的数量以及长度因子,对所述多个第一线特征进行筛选处理,从所述多个第一特征中确定多个第二线特征。
16.根据所述目标单目图像与其紧邻的前一帧单目图像之间的距离小于预设阈值,对所述多个第二线特征进行筛选处理,从所述多个第二特征中确定多个第三线特征。
17.根据所述多个第三线特征对应的消失点,对所述多个第三线特征进行筛选处理,
得到所述多个目标线特征。
18.根据本发明提供的一种可移动设备的定位方法,所述根据所述多个第三线特征对应的消失点,对所述多个第三线特征进行筛选处理,得到所述多个目标线特征,包括:
19.根据所述多个第三线特征对应的消失点,对所述多个第三线特征进行筛选处理,得到多个第四线特征。
20.根据所述多个第四线特征中,各第四线特征分别与所述前一帧单目图像对应的线特征之间的汉明距离和角度,从所述多个第四线特征中剔除异常线特征,得到所述多个目标线特征。
21.根据本发明提供的一种可移动设备的定位方法,所述根据所述多个目标点特征、所述多个目标线特征以及所述惯性测量单元数据,执行所述可移动设备的定位操作,包括:
22.构造所述可移动设备对应的状态函数;其中,所述状态函数包括所述惯性测量单元数据在世界坐标系下的位置、速度以及方向,所述多个目标点特征各自的逆深度,以及所述多个目标线特征各自的正交表示。
23.根据惯性测量单元残差、点特征残差、线特征残差、消失点残差以及先验残差,对所述状态函数进行优化处理,得到优化后的目标状态函数。
24.基于所述目标状态函数,确定所述可移动设备对应的初始位置、初始速度以及初始方向;并根据所述初始位置、所述初始速度以及所述初始方向,确定所述可移动设备的初始位姿信息。
25.在确定所述目标单目图像与其紧邻的前一帧单目图像存在回环检测的情况下,通过所述前一帧单目图像对应的点特征以及位姿信息,对所述初始位置信息进行纠正,得到所述可移动设备的目标位姿信息;其中,所述目标位姿信息为所述可移动设备的定位结果。
26.根据本发明提供的一种可移动设备的定位方法,所述通过所述前一帧单目图像对应的点特征以及位姿信息,对所述初始位置信息进行纠正,包括:
27.将所述前一帧单目图像对应的点特征以及位姿信息作为所述目标状态函数的约束项,确定所述可移动设备对应的目标位置、目标速度以及目标方向;并根据所述目标位置、所述目标速度以及所述目标方向确定所述可移动设备的目标位姿信息。
28.根据所述目标位姿信息对所述初始位置信息进行纠正。
29.根据本发明提供的一种可移动设备的定位方法,所述方法还包括:
30.初始检测所述目标单目图像与其紧邻的前一帧单目图像之间是否存在回环,若初始检测存在回环,则确定多个候选帧单目图像。
31.将所述多个候选帧单目图像中,两两候选帧单目图像进行特征匹配,若存在两帧候选帧单目图像的内点的数量大于数量阈值,则确定所述目标单目图像与所述前一帧单目图像存在回环检测。
32.本发明还提供一种可移动设备的定位装置,该可移动设备的定位装置可以包括:
33.获取单元,用于分别获取可移动设备采集的目标单目图像和惯性测量单元数据。
34.提取单元,用于提取所述目标单目图像对应的多个点特征及多个线特征。
35.剔除单元,用于从所述多个点特征中剔除异常点,得到所述目标单目图像对应的多个目标点特征。
36.处理单元,用于根据所述多个线特征中两两线特征的端点之间的距离,对所述多
个线特征进行合并处理,得到多个第一线特征;并对所述多个第一线特征进行筛选处理,得到所述目标单目图像对应的多个目标线特征。
37.执行单元,用于根据所述多个目标点特征、所述多个目标线特征以及所述惯性测量单元数据,执行所述可移动设备的定位操作。
38.根据本发明提供的一种可移动设备的定位装置,所述提取单元,具体用于对所述目标单目图像进行分块处理,得到所述目标单目图像对应的多个图像块;并分别提取各图像块中的线特征,得到所述目标单目图像对应的多个线特征。
39.根据本发明提供的一种可移动设备的定位装置,所述提取单元,具体用于根据所述目标单目图像的宽度、高度、所述多个第一线特征的数量以及长度因子,对所述多个第一线特征进行筛选处理,从所述多个第一特征中确定多个第二线特征;根据所述目标单目图像与其紧邻的前一帧单目图像之间的距离小于预设阈值,对所述多个第二线特征进行筛选处理,从所述多个第二特征中确定多个第三线特征;根据所述多个第三线特征对应的消失点,对所述多个第三线特征进行筛选处理,得到所述多个目标线特征。
40.根据本发明提供的一种可移动设备的定位装置,所述提取单元,具体用于根据所述多个第三线特征对应的消失点,对所述多个第三线特征进行筛选处理,得到多个第四线特征;根据所述多个第四线特征中,各第四线特征分别与所述前一帧单目图像对应的线特征之间的汉明距离和角度,从所述多个第四线特征中剔除异常线特征,得到所述多个目标线特征。
41.根据本发明提供的一种可移动设备的定位装置,所述执行单元,具体用于构造所述可移动设备对应的状态函数;其中,所述状态函数包括所述惯性测量单元数据在世界坐标系下的位置、速度以及方向,所述多个目标点特征各自的逆深度,以及所述多个目标线特征各自的正交表示;根据惯性测量单元残差、点特征残差、线特征残差、消失点残差以及先验残差,对所述状态函数进行优化处理,得到优化后的目标状态函数;基于所述目标状态函数,确定所述可移动设备对应的初始位置、初始速度以及初始方向;并根据所述初始位置、所述初始速度以及所述初始方向,确定所述可移动设备的初始位姿信息;在确定所述目标单目图像与其紧邻的前一帧单目图像存在回环检测的情况下,通过所述前一帧单目图像对应的点特征以及位姿信息,对所述初始位置信息进行纠正,得到所述可移动设备的目标位姿信息;其中,所述目标位姿信息为所述可移动设备的定位结果。
42.根据本发明提供的一种可移动设备的定位装置,所述执行单元,具体用于将所述前一帧单目图像对应的点特征以及位姿信息作为所述目标状态函数的约束项,确定所述可移动设备对应的目标位置、目标速度以及目标方向;并根据所述目标位置、所述目标速度以及所述目标方向确定所述可移动设备的目标位姿信息;根据所述目标位姿信息对所述初始位置信息进行纠正。
43.根据本发明提供的一种可移动设备的定位装置,所述装置还包括检测单元;
44.所述检测单元,用于初始检测所述目标单目图像与其紧邻的前一帧单目图像之间是否存在回环,若初始检测存在回环,则确定多个候选帧单目图像;将所述多个候选帧单目图像中,两两候选帧单目图像进行特征匹配,若存在两帧候选帧单目图像的内点的数量大于数量阈值,则确定所述目标单目图像与所述前一帧单目图像存在回环检测。
45.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理
器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述的可移动设备的定位方法。
46.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述的可移动设备的定位方法。
47.本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述的可移动设备的定位方法。
48.本发明提供的可移动设备的定位方法、装置和电子设备,通过获取可移动设备采集的目标单目图像和惯性测量单元数据;并提取目标单目图像对应的多个点特征及多个线特征;从多个点特征中剔除异常点,得到目标单目图像对应的多个目标点特征;根据多个线特征中两两线特征的端点之间的距离,对多个线特征进行合并处理,得到多个第一线特征;并对多个第一线特征进行筛选处理,得到目标单目图像对应的多个目标线特征;再根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作。这样通过对点特征和线特征分别进行处理,并根据处理得到的多个目标点特征和多个目标线特征以及惯性测量单元数据,共同执行可移动设备的定位操作,可以有效地提高定位结果的准确度。
附图说明
49.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
50.图1为本发明实施例提供的一种可移动设备的定位方法的流程示意图;
51.图2为本发明实施例提供的一种追踪示意图;
52.图3为本发明实施例提供的另一种追踪示意图;
53.图4为现有技术提供的一种在光照不足场景中定位的轨迹热图;
54.图5为本发明实施例提供的一种在光照不足场景中定位的轨迹热图;
55.图6为现有技术提供的一种在低纹理场景中定位的轨迹热图;
56.图7为本发明实施例提供的一种在低纹理场景中定位的轨迹热图;
57.图8为本发明实施例提供的一种可移动设备的定位装置的结构示意图;
58.图9为本发明实施例提供的一种电子设备的实体结构示意图。
具体实施方式
59.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
60.在本发明的实施例中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,其中a,b可以是单数或者复数。在本发明
的文字描述中,字符“/”一般表示前后关联对象是一种“或”的关系。
61.本发明实施例提供的技术方案可以应用于定位场景。在很多情况下,需要执行定位操作。例如,控制一队移动机器人在仓库中移动并整理货架、或者,控制自动驾驶汽车停泊到空车位等,均需要执行定位操作。以同步定位与地图构建(simultaneous localization and mapping,slam)场景为例,slam场景主要帮助车辆借助摄像头、惯性测量单元、全球定位系统(global positioning system,gps),全球导航卫星系统(global navigation satellite system,gnss)等传感器实时感知周围环境,更好的完成导航,避障、路径规划等任务,这些都依赖于定位的准确性。
62.目前,在对车辆进行定位时,通常是基于车辆上设置的单目摄像头采采集周围环境的单目图像,并基于采集的单目图像对车辆进行定位,但是,采用该种方法,尤其是针对一些光照不足,低纹理、纹理稠密的城市区域,会导致定位结果的准确度较低。
63.为了提高定位结果的准确度,本发明实施例提供了一种可移动设备的定位方法,通过分别获取可移动设备采集的目标单目图像和惯性测量单元数据;并提取目标单目图像对应的多个点特征及多个线特征;从多个点特征中剔除异常点,得到目标单目图像对应的多个目标点特征;根据多个线特征中两两线特征的端点之间的距离,对多个线特征进行合并处理,得到多个第一线特征;并对多个第一线特征进行筛选处理,得到目标单目图像对应的多个目标线特征;再根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作。这样通过对点特征和线特征分别进行处理,并根据处理得到的多个目标点特征和多个目标线特征以及惯性测量单元数据,共同执行可移动设备的定位操作,可以有效地提高定位结果的准确度。
64.示例地,可移动设备可以为机器人、自动驾驶车辆等,具体可以根据实际需要进行设置。
65.可以理解的是,本发明实施例提供的可移动设备的定位方法,可以通过机器人操作系统(robot operating system,ros)和c++语言实现,并使用opencv库进行点特征和线特征之间的融合。此外,为了对本发明实施例提供的可移动设备的定位方法进行验证,后续还在euroc数据集上进行了与vins-mono和okvis算法的对比实验,实验表明,采用本发明实施例提供的可移动设备的定位方法,可以有效地提高定位结果的准确度。即使是在一些光照不足,低纹理、纹理稠密的环境,其定位结果也具有较高的准确度,且鲁棒性较强。
66.下面,将通过下述几个具体的实施例对本发明提供的可移动设备的定位方法进行详细地说明。可以理解的是,下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
67.图1为本发明实施例提供的一种可移动设备的定位方法的流程示意图,该可移动设备的定位方法可以由软件和/或硬件装置执行。示例的,请参见图1所示,该可移动设备的定位方法可以包括:
68.s101、分别获取可移动设备采集的目标单目图像和惯性测量单元数据。
69.其中,目标单目图像可以理解为一个滑动窗口内最新采集的一帧单目图像,为了与滑动窗口内的其它单目图像进行区分,在本发明实施例中,可将滑动窗口内,最新采集的一帧单目图像记为目标单目图像。
70.示例地,可移动设备采集目标单目图像时,可以通过设置在可移动设备中的单目
摄像头采集目标单目图像;采集惯性测量单元数据时,可以通过设置在可移动设备中的惯性测量单元(inertial measurement unit,imu)采集惯性测量单元数据,从而获取到目标单目图像和惯性测量单元数据。
71.s102、提取目标单目图像对应的多个点特征及多个线特征。
72.示例地,提取目标单目图像对应的多个点特征时,可以采用orb(oriented fastand rotated brief)技术进行点特征的提取,从而提取到多个点特征。示例地,在提取到多个点特征后,还可以进一步采用klt(kanade-lucas-tomasi)方法进行点特征的光流追踪。示例地,可参见图2和图3所示,图2为本发明实施例提供的一种追踪示意图,图3为本发明实施例提供的另一种追踪示意图,其中,图2为在光照不足场景下进行追踪的示意图,图3为在低纹理场景下进行追踪的示意图,跟踪效果较好。
73.示例地,提取目标单目图像对应的多个线特征时,为了使得提取出的线特征具有良好的旋转和尺度不变性,提取时间短且分布均匀,在本发明实施例中,可以先对对目标单目图像进行分块处理,得到目标单目图像对应的多个图像块;示例地,可以将目标单目图像分块12
×
12个图像块,并分别提取各图像块中的线特征,得到目标单目图像对应的多个线特征,这样可以有效地保证提取出的线特征具有良好的旋转和尺度不变性,提取时间短且分布均匀。
74.上述提取目标单目图像对应的多个点特征及多个线特征后,就可以分别对多个点特征和多个线特征进行处理,即执行下述s103和s104:
75.s103、从多个点特征中剔除异常点,得到目标单目图像对应的多个目标点特征。
76.示例地,从多个点特征中剔除异常点时,可以采用ransac的几何约束算法,从多个点特征中剔除外点,即异常点,从而得到剔除异常点后的多个点特征,为了便于区分,可将剔除异常点后的多个点特征即为多个目标点特征。
77.s104、根据多个线特征中两两线特征的端点之间的距离,对多个线特征进行合并处理,得到多个第一线特征;并对多个第一线特征进行筛选处理,得到目标单目图像对应的多个目标线特征。
78.示例地,在本发明实施例中,可以将目标单目图像对应的多个线特征加入集合中集合表示第i帧图像中共有n条线特征,表示第i帧图像中的第n条线特征。针对目标单目图像对应的多个线特征中的两两线特征,假设两个线特征为(li,lj),则可以根据线特征为li和线特征为lj的端点之间的距离,对线特征li和线特征lj进行合并处理,若线特征li仅有一个端点接近线特征lj的端点,则可以将线特征li和线特征lj合并为更长的线段;如果特征li的两个端点都接近线特征lj且两者之间的距离阈值小于距离阈值,例如10px,则可以将线特征li和线特征lj合并为新的线段,从而得到多个新的线特征,可记为多个第一线特征,这样通过合并处理,消除冗余的短线段以及距离较近的线段,不仅可以有效地提高线特征的匹配精度和匹配速度,而且可以降低短线段造成的误匹配现象从而导致初始化过程难等问题。
79.在通过合并处理得到多个第一线特征后,可以进一步对多个第一线特征进行筛选处理。示例地,在对多个第一线特征进行筛选处理时,可以先根据目标单目图像的宽度、高度、多个第一线特征的数量以及长度因子,对多个第一线特征进行筛选处理,从多个第一特
征中确定多个第二线特征;并根据目标单目图像与其紧邻的前一帧单目图像之间的距离小于预设阈值,对多个第二线特征进行筛选处理,从多个第二特征中确定多个第三线特征;再根据多个第三线特征对应的消失点,对多个第三线特征进行筛选处理,得到多个目标线特征。
80.示例地,在本发明实施例中,根据目标单目图像的宽度、高度、多个第一线特征的数量以及长度因子,对多个第一线特征进行筛选处理时,可参见下述公式1所示:
[0081][0082]
其中,w表示目标单目图像的宽度,h表示目标单目图像的高度,α表示长度因子,n表示多个第一线特征的数量。
[0083]
在根据上述公式1对多个第一线特征进行筛选,得到满足上述公式1的多个第二线特征后,可以再根据目标单目图像与其紧邻的前一帧单目图像之间的距离小于预设阈值,对多个第二线特征进行筛选处理,从多个第二特征中确定多个第三线特征。其中,预设阈值的取值可以根据实际需要进行设置,在此,对于预设阈值的取值,本发明实施例不做具体限制。
[0084]
示例地,根据多个第三线特征对应的消失点,对多个第三线特征进行筛选处理时,可以先计算多个第三线特征对应的消失点,例如可以采用j-linkage算法进行消失点检测,计算多个第三线特征对应的消失点;并根据计算得到的多个第三线特征对应的消失点,对多个第三线特征进行筛选处理,得到多个第四线特征;再根据多个第四线特征中,各第四线特征分别与前一帧单目图像对应的线特征之间的汉明距离和角度,从多个第四线特征中剔除异常线特征,得到多个目标线特征。例如,可以将汉明距离大于30px,和/或角度小于0.1rad对应得第四线特征确定为异常线特征,并剔除异常线特征。
[0085]
在通过上述s103和s104分别获取到目标单目图像对应的多个目标点特征和多个目标线特征后,就可以执行下述s105:
[0086]
s105、根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作。
[0087]
示例地,根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作时,可以先构造可移动设备对应的状态函数;其中,状态函数包括惯性测量单元数据在世界坐标系下的位置、速度以及方向,多个目标点特征各自的逆深度,以及多个目标线特征各自的正交表示;并根据惯性测量单元残差、点特征残差、线特征残差、消失点残差以及先验残差,对状态函数进行优化处理,得到优化后的目标状态函数。
[0088]
示例地,在本发明实施例中,构造的可移动设备对应的状态函数可参见下述公式2所示:
[0089][0090]
其中,χ表示可移动设备对应的状态,xi表示捕捉第i帧单目图像时对应的imu状
态,包括滑动窗口内第i帧惯性测量单元数据在世界坐标系下的位置、速度以及方向,加速度计偏置,陀螺仪偏置,λ表示滑动窗口内各帧单目图像包括的多个目标点特征各自的逆深度,其中包括了目标单目图像包括的多个目标点特征各自的逆深度,o表示滑动窗口内各帧单目图像包括的多个目标线特征各自的正交表示,其中包括了目标单目图像包括的多个目标线特征各自的正交表示。n
p
,nm,n
l
分别表示滑动窗口中关键帧的总和,所有关键帧观察到的点特征和线特征的总数。
[0091]
可以理解的是,在构造可移动设备对应的状态函数时,可以先进行初始化。例如,若旋转外参未知,则先估计旋转外参;确定各帧单目图像包括的多个目标点特征,以及各目标点特征在相机坐标系下的位姿,利用相机旋转的约束标定imu角速度偏置,利用相机旋转约束标定imu角速度偏置,以及利用imu的平移来求解初始化参数:重力,速度以及尺度因子,这些初始值用于指导后续基于vio的非线性优化。其次,初始化过程需要对频率不一致的视觉和imu进行对齐。
[0092]
示例地,根据惯性测量单元残差、点特征残差、线特征残差、消失点残差以及先验残差,对状态函数进行优化处理时,优化后的目标状态函数可参见下述公式3所示:
[0093][0094]
其中,r0表示先验残差,表示惯性测量单元残差,表示点特征残差,表示线特征残差,表示消失点残差,j
p
表示先验雅可比矩阵,它来自之前优化后获得的hessian矩阵,其中ρ
p
,ρ
l
以及ρv满足huber规则,p,l和v分别表示在相机坐标系中点特征,线特征和消失点的集合。和分别表示imu、点、线和消失点测量协方差矩阵。
[0095]
线特征残差的计算可参见下述公式4:
[0096][0097]
其中l,k'和k分别表示重投影的线特征、线特征的投影矩阵以及相机的内参。k'和k均是单位矩阵。(f
x
,fy)和(c
x
,cy)分别表示图像的焦距和主点。本发明实施例中,重投影的线段等于法向量。
[0098]
因此,线特征残差可参见下述公式5:
[0099][0100]
其中,r
l
表示线特征残差,d表示观测到的线段与重投影的线段的两个端点之间的距离,ps和pe是在单目图像中观测到的线段的端点。
[0101]
消失点残差的计算可参见下述公式6所示,消失点与点在三维线上无限远处的投影是等价的。
[0102][0103]
其中,v0表示三维线段中的一个点,p=k[i|0]表示相机的投影矩阵,在本发明实施例中,来源于线段中的消失点等同于线段的方向向量,vi与图像平面的交点是消失点的估计,因此,消失点残差表示如下:
[0104][0105]
其中,rv表示消失点残差,pv表示消失点的观测。
[0106]
结合上述描述,在通过优化获取到目标状态函数后,就可以求解目标状态函数,确定可移动设备对应的初始位置、初始速度以及初始方向;并进一步根据初始位置、初始速度以及初始方向,确定可移动设备的初始位姿信息。在确定出可移动设备的初始位姿信息后,还可以进一步检测目标单目图像与其紧邻的前一帧单目图像是否回环检测,并在确定目标单目图像与其紧邻的前一帧单目图像存在回环检测的情况下,通过前一帧单目图像对应的点特征以及位姿信息,对初始位置信息进行纠正,得到可移动设备的目标位姿信息;其中,目标位姿信息为可移动设备的定位结果。
[0107]
示例地,本发明实施例中,在确定目标单目图像与其紧邻的前一帧单目图像是否存在回环检测时,可以先初始检测目标单目图像与其紧邻的前一帧单目图像之间是否存在回环,若初始检测存在回环,则确定多个候选帧单目图像;再将多个候选帧单目图像中,两两候选帧单目图像进行特征匹配,若存在两帧候选帧单目图像的内点的数量大于数量阈值,则确定目标单目图像与前一帧单目图像存在回环检测,这样通过初始检测和内点数量检测双重检测,可以准确地进行回环检测,提高了回环检测结果的准确度。其中,数量阈值可以根据实际需要进行设置,在此,对于数量阈值的具体取值,本发明实施例不做进一步地限制。
[0108]
示例地,初始检测目标单目图像与其紧邻的前一帧单目图像之间是否存在回环时,可以采用目标单目图像对应的目标点特征,考虑到为了使得目标单目图像对应的点特征足够多,可以在其对应的目标点特征的基础上,额外再添加预设数量个点特征,共同用于初始回环检测,这样可以更好地实现更好的回环检测。此外,在本发明实施例中,还可以仅
保留所有用于特征检索的点特征的描述子,丢弃单目图像以减小内存的占用。
[0109]
示例地,将多个候选帧单目图像中,两两候选帧单目图像进行特征匹配时,在两个候选帧单目图像均为2d图像的情况下,即2d-2d,可以采用ransac的几何约束算法进行f矩阵测试,以实现特征匹配;在两个候选帧单目图像一个为3d图像,一个为2d图像的情况下,即3d-2d:可以采用ransac的几何约束算法进行pnp测试,以实现特征匹配,具体可以根据实际需要进行设置。
[0110]
在确定目标单目图像与其紧邻的前一帧单目图像存在回环检测的情况下,通过前一帧单目图像对应的点特征以及位姿信息,对初始位置信息进行纠正时,示例地,可以先将前一帧单目图像对应的点特征以及位姿信息作为目标状态函数的约束项,可参见下述公式8所示:
[0111][0112]
其中,是回环检测中的位姿,(p,m)表示在回环检测下第m帧单目图像中观察到的第p个点特征。
[0113]
结合上述描述,在将前一帧单目图像对应的点特征以及位姿信息作为目标状态函数的约束项后,可以基于上述公式8计算得到可移动设备对应的新的位置、新的速度以及新的方向,在本发明实施例,可将新的位置记为目标位置、将新的速度记为目标速度,将新的方向记为目标方向;并根据目标位置、目标速度以及目标方向确定可移动设备的目标位姿信息,再根据目标位姿信息对初始位置信息进行纠正,得到可移动设备的目标位姿信息;其中,目标位姿信息为可移动设备的定位结果。
[0114]
可以看出,本发明实施例中,通过获取可移动设备采集的目标单目图像和惯性测量单元数据;并提取目标单目图像对应的多个点特征及多个线特征;从多个点特征中剔除异常点,得到目标单目图像对应的多个目标点特征;根据多个线特征中两两线特征的端点之间的距离,对多个线特征进行合并处理,得到多个第一线特征;并对多个第一线特征进行筛选处理,得到目标单目图像对应的多个目标线特征;再根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作。这样通过对点特征和线特征分别进行处理,并根据处理得到的多个目标点特征和多个目标线特征以及惯性测量单元数据,共同执行可移动设备的定位操作,可以有效地提高定位结果的准确度。
[0115]
上述实施例对本发明实施例提供的可移动设备的定位方法进行了详细地描述。此外,还可以通过机器人操作系统对本发明实施例提供的可移动设备的定位方法进行验证,并分析证明定位结果的准确度和实时性。
[0116]
为了展示在低纹理场景和光照强度变化较大的场景中的性能,将移动机器人分别运动到光照较暗和低纹理场景中,并结合这两种场景对本发明实施例提供的定位结果进行
展示。在对定位结果进行展示时,主要是从两个方面进行展示,一个方面为定位精度,另一个方面为定位实时性。在展示定位精度时,以移动机器人运动到光照较暗,即光照不足的场景中为例,示例地,可结合图4和图5所示,图4为现有技术提供的一种在光照不足场景中定位的轨迹热图,图5为本发明实施例提供的一种在光照不足场景中定位的轨迹热图,其中,图4所示的轨迹热图为基于okvis得到的,图5所示的轨迹热图为基于本发明实施例提供的技术方案得到的,可以看出,在光照强度较暗的场景中,okvis得到的最大轨迹误差达到1.709m,而采用本发明实施例提供的技术方案得到的最大错误率仅为0.152m,定位精度相比okvis提高了1024.342%。
[0117]
以移动机器人运动到低纹理场景中为例,示例地,可结合图6和图7所示,图6为现有技术提供的一种在低纹理场景中定位的轨迹热图,图7为本发明实施例提供的一种在低纹理场景中定位的轨迹热图,其中,图6所示的轨迹热图为基于okvis得到的,图7所示的轨迹热图为基于本发明实施例提供的技术方案得到的,可以看出,在光照强度较暗的场景中,okvis得到的最大轨迹误差达到0.704m,而采用本发明实施例提供的技术方案得到的最大错误率仅为0.092m,定位精度相比okvis提高了665.217%。此外,不难看出,相机的快速旋转和移动对估计其方向有重大影响,光线变化对跟踪点线特征尤其具有挑战性。本发明实施例提供的定位方法可以满足复杂环境的需求以及良好的定位精度,可以为移动机器人提供良好的位姿估计。
[0118]
在展示定位实时性时,以在mh_05序列上每个模块的平均运行时间为例,可参见下述表1所示,其中vpl-vins表示本发明实施例提供的定位方法,vins-mono表示现有技术提供的定位方法。
[0119]
表1
[0120][0121]
结合表1可以看出,前端点线特征提取和匹配的操作时间较短,检测效率较高。与vins-mono相比,不仅线特征提取和追踪时间较短,而且基于orb的点特征提取和匹配均取得了较高的效率。相比于轻量化的前端,vpl-vins的后端较耗时。因此,本发明提出的定位方法在复杂环境下可以满足slam的实时性要求。
[0122]
下面对本发明提供的可移动设备的定位装置进行描述,下文描述的可移动设备的定位装置与上文描述的可移动设备的定位方法可相互对应参照。
[0123]
图8为本发明实施例提供的一种可移动设备的定位装置的结构示意图,示例的,请
参见图8所示,该可移动设备的定位装置80可以包括:
[0124]
获取单元801,用于分别获取可移动设备采集的目标单目图像和惯性测量单元数据。
[0125]
提取单元802,用于提取目标单目图像对应的多个点特征及多个线特征。
[0126]
剔除单元803,用于从多个点特征中剔除异常点,得到目标单目图像对应的多个目标点特征。
[0127]
处理单元804,用于根据多个线特征中两两线特征的端点之间的距离,对多个线特征进行合并处理,得到多个第一线特征;并对多个第一线特征进行筛选处理,得到目标单目图像对应的多个目标线特征。
[0128]
执行单元805,用于根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作。
[0129]
可选地,提取单元802,具体用于对目标单目图像进行分块处理,得到目标单目图像对应的多个图像块;并分别提取各图像块中的线特征,得到目标单目图像对应的多个线特征。
[0130]
可选地,提取单元802,具体用于根据目标单目图像的宽度、高度、多个第一线特征的数量以及长度因子,对多个第一线特征进行筛选处理,从多个第一特征中确定多个第二线特征;根据目标单目图像与其紧邻的前一帧单目图像之间的距离小于预设阈值,对多个第二线特征进行筛选处理,从多个第二特征中确定多个第三线特征;根据多个第三线特征对应的消失点,对多个第三线特征进行筛选处理,得到多个目标线特征。
[0131]
可选地,提取单元802,具体用于根据多个第三线特征对应的消失点,对多个第三线特征进行筛选处理,得到多个第四线特征;根据多个第四线特征中,各第四线特征分别与前一帧单目图像对应的线特征之间的汉明距离和角度,从多个第四线特征中剔除异常线特征,得到多个目标线特征。
[0132]
可选地,执行单元805,具体用于构造可移动设备对应的状态函数;其中,状态函数包括惯性测量单元数据在世界坐标系下的位置、速度以及方向,多个目标点特征各自的逆深度,以及多个目标线特征各自的正交表示;根据惯性测量单元残差、点特征残差、线特征残差、消失点残差以及先验残差,对状态函数进行优化处理,得到优化后的目标状态函数;基于目标状态函数,确定可移动设备对应的初始位置、初始速度以及初始方向;并根据初始位置、初始速度以及初始方向,确定可移动设备的初始位姿信息;在确定目标单目图像与其紧邻的前一帧单目图像存在回环检测的情况下,通过前一帧单目图像对应的点特征以及位姿信息,对初始位置信息进行纠正,得到可移动设备的目标位姿信息;其中,目标位姿信息为可移动设备的定位结果。
[0133]
可选地,执行单元805,具体用于将前一帧单目图像对应的点特征以及位姿信息作为目标状态函数的约束项,确定可移动设备对应的目标位置、目标速度以及目标方向;并根据目标位置、目标速度以及目标方向确定可移动设备的目标位姿信息;根据目标位姿信息对初始位置信息进行纠正。
[0134]
可选地,可移动设备的定位装置80还包括检测单元。
[0135]
检测单元,用于初始检测目标单目图像与其紧邻的前一帧单目图像之间是否存在回环,若初始检测存在回环,则确定多个候选帧单目图像;将多个候选帧单目图像中,两两
候选帧单目图像进行特征匹配,若存在两帧候选帧单目图像的内点的数量大于数量阈值,则确定目标单目图像与前一帧单目图像存在回环检测。
[0136]
本发明实施例提供的可移动设备的定位装置80,可以执行上述任一实施例中可移动设备的定位方法的技术方案,其实现原理以及有益效果与可移动设备的定位方法的实现原理及有益效果类似,可参见可移动设备的定位方法的实现原理及有益效果,此处不再进行赘述。
[0137]
图9为本发明实施例提供的一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(communications interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行可移动设备的定位方法,该方法包括:分别获取可移动设备采集的目标单目图像和惯性测量单元数据;提取目标单目图像对应的多个点特征及多个线特征;从多个点特征中剔除异常点,得到目标单目图像对应的多个目标点特征;根据多个线特征中两两线特征的端点之间的距离,对多个线特征进行合并处理,得到多个第一线特征;并对多个第一线特征进行筛选处理,得到目标单目图像对应的多个目标线特征;根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作。
[0138]
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0139]
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的可移动设备的定位方法,该方法包括:分别获取可移动设备采集的目标单目图像和惯性测量单元数据;提取目标单目图像对应的多个点特征及多个线特征;从多个点特征中剔除异常点,得到目标单目图像对应的多个目标点特征;根据多个线特征中两两线特征的端点之间的距离,对多个线特征进行合并处理,得到多个第一线特征;并对多个第一线特征进行筛选处理,得到目标单目图像对应的多个目标线特征;根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作。
[0140]
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的可移动设备的定位方法,该方法包括:分别获取可移动设备采集的目标单目图像和惯性测量单元数据;提取目标单目图像对应的多个点特征及多个线特征;从多个点特征中剔除异常点,得到目标单目图像对应的多个目标点特征;根据多个线特征中两两线特征的端点之间的距离,对多个线特征进行合并处理,得到多个第一线特征;并对多个第一线特征进行筛选处理,得到目标单目图
像对应的多个目标线特征;根据多个目标点特征、多个目标线特征以及惯性测量单元数据,执行可移动设备的定位操作。
[0141]
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
[0142]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0143]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1