一种机器人定位信息的确定方法及装置转让专利

申请号 : CN202010729712.2

文献号 : CN111595336B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 李梦男安吉斯支涛

申请人 : 北京云迹科技有限公司

摘要 :

本申请提供了一种机器人定位信息的确定方法及装置,其中方法包括:依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内机器人在轮速里程计坐标系下的移动距离和移动速度;将移动距离和移动速度,转换到摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度;在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,将依据轮速里程信息确定的目标拍摄时刻的定位信息,作为机器人在目标拍摄时刻的定位信息。本申请得到的机器人的定位信息精度可以得到提高。

权利要求 :

1.一种机器人定位信息的确定方法,其特征在于,应用于机器人的处理器;所述机器人安装有分别与所述处理器连接的轮速里程计、IMU传感器和摄像设备;所述方法,包括:依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内所述机器人在轮速里程计坐标系下的移动距离和移动速度;

将所述移动距离和移动速度,转换到所述摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度;

在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,将依据所述轮速里程信息确定的所述目标拍摄时刻的定位信息,作为所述机器人在所述目标拍摄时刻的定位信息;所述移动距离差值为所述转换后的移动距离,与,机器人在所述预设时间段内视觉坐标系下的参考移动距离间的差值;所述移动速度差值为所述转换后的移动速度,与,机器人在所述预设时间段内视觉坐标系下的参考移动速度间的差值;所述参考移动距离与所述参考移动速度是依据所述机器人在所述目标拍摄时刻的参考定位信息计算得到;所述参考定位信息依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置计算得到。

2.根据权利要求1所述的方法,其特征在于,还包括:

在所述移动距离差值不小于预设第一阈值或所述移动速度差值不小于预设第二阈值的情况下,获取所述机器人在所述目标拍摄时刻的参考定位信息;

将所述参考定位信息,作为所述机器人在所述目标拍摄时刻的定位信息。

3.根据权利要求2所述的方法,其特征在于,依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置,确定所述机器人在所述目标拍摄时刻的参考定位信息,包括:依据IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,预测机器人在所述目标拍摄时刻下的位置信息,得到预测位置信息;

依据所述预测位置信息,推算在所述目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在所述目标拍摄时刻拍摄得到的图像中的位置,得到所述特征角点在所述目标拍摄时刻图像中的推算位置;

循环执行以下操作:

在推算位置与实际位置间的差值不属于预设范围的情况下,依据所述差值以及所述差值的方向,修正预测位置信息;所述实际位置为所述摄像设备在所述目标拍摄时刻实际拍摄得到的图像中所述特征角点的位置;

依据修正后的预测位置信息,推算在所述目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在所述目标拍摄时刻拍摄得到的图像中的位置,得到所述特征角点在所述目标拍摄时刻图像中的推算位置;直至推算位置与实际位置间的差值属于所述预设范围;

将修正后的预测位置信息作为所述机器人在所述目标拍摄时刻的参考定位信息。

4.根据权利要求1所述的方法,其特征在于,还包括:

每隔预设时长,将轮速里程计坐标系与视觉坐标系进行标定。

5.一种机器人定位信息的确定装置,其特征在于,应用于机器人的处理器;所述机器人安装有分别与所述处理器连接的轮速里程计、IMU传感器和摄像设备,所述装置包括:计算模块,用于依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内所述机器人在轮速里程计坐标系下的移动距离和移动速度;

转换模块,用于将所述移动距离和移动速度,转换到所述摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度;

第一确定模块,用于在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,将依据所述轮速里程信息确定的所述目标拍摄时刻的定位信息,作为所述机器人在所述目标拍摄时刻的定位信息;所述移动距离差值为所述转换后的移动距离与机器人在所述预设时间段内视觉坐标系下的参考移动距离间的差值;所述移动速度差值为所述转换后的移动速度与机器人在所述预设时间段内视觉坐标系下的参考移动速度间的差值;所述参考移动距离与所述参考移动速度是依据所述机器人在所述目标拍摄时刻的参考定位信息计算得到;所述参考定位信息依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置计算得到。

6.根据权利要求5所述的装置,其特征在于,还包括:

获取模块,用于在所述移动距离差值不小于预设第一阈值或所述移动速度差值不小于预设第二阈值的情况下,获取所述机器人在所述目标拍摄时刻的参考定位信息;

第二确定模块,用于将所述参考定位信息,作为所述机器人在所述目标拍摄时刻的定位信息。

7.根据权利要求6所述的装置,其特征在于,还包括:

第三确定模块,用于依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置,确定所述机器人在所述目标拍摄时刻的参考定位信息,包括:第三确定模块,具体用于依据IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,预测机器人在所述目标拍摄时刻下的位置信息,得到预测位置信息;

依据所述预测位置信息,推算在所述目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在所述目标拍摄时刻拍摄得到的图像中的位置,得到所述特征角点在所述目标拍摄时刻图像中的推算位置;

循环执行以下操作:

在推算位置与实际位置间的差值不属于预设范围的情况下,依据所述差值以及所述差值的方向,修正预测位置信息;所述实际位置为所述摄像设备在所述目标拍摄时刻实际拍摄得到的图像中所述特征角点的位置;

依据修正后的预测位置信息,推算在所述目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在所述目标拍摄时刻拍摄得到的图像中的位置,得到所述特征角点在所述目标拍摄时刻图像中的推算位置;直至推算位置与实际位置间的差值属于所述预设范围;

将修正后的预测位置信息作为所述机器人在所述目标拍摄时刻的定位信息。

8.根据权利要求5所述的装置,其特征在于,还包括:

标定模块,用于每隔预设时长,将轮速里程计坐标系与视觉坐标系进行标定。

9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序执行权利要求1 4任意一项权利要求所述的机器人定位信息的确定方法。

~

10.一种机器人定位信息的确定设备,其特征在于,所述设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行如权利要求1

4中任一项权利要求所述的机器人定位信息的确定方法。

~

说明书 :

一种机器人定位信息的确定方法及装置

技术领域

[0001] 本申请涉及机器人定位领域,尤其涉及一种机器人定位信息的确定方法及装置。

背景技术

[0002] 轮速里程计在机器人定位过程中扮演重要的角色,是许多定位算法中必不可少的感知传感器。
[0003] 由于轮速里程计的特性,轮速里程计只能在局部范围内能观测到平滑、连续的高精度定位信息。并且,在某些场景下,轮速里程计会因为特殊的情况而导致观测的数据失效,例如,光滑的地面打滑,机器人被搬动导致轮子悬空等情况。
[0004] 即通过轮速里程计测量的轮速里程信息确定得到的机器人的定位信息,存在精度低的问题。

发明内容

[0005] 本申请提供了一种机器人定位信息的确定方法及装置,目的在于解决机器人的定位信息精度低的问题。
[0006] 为了实现上述目的,本申请提供了以下技术方案:
[0007] 本申请提供了一种机器人定位信息的确定方法,应用于机器人的处理器;所述机器人安装有分别与所述处理器连接的轮速里程计、IMU传感器和摄像设备;所述方法,包括:
[0008] 依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内所述机器人在轮速里程计坐标系下的移动距离和移动速度;
[0009] 将所述移动距离和移动速度,转换到所述摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度;
[0010] 在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,将依据所述轮速里程信息确定的所述目标拍摄时刻的定位信息,作为所述机器人在所述目标拍摄时刻的定位信息;所述移动距离差值为所述转换后的移动距离,与,机器人在所述预设时间段内视觉坐标系下的参考移动距离间的差值;所述移动速度差值为所述转换后的移动速度,与,机器人在所述预设时间段内视觉坐标系下的参考移动速度间的差值;所述参考移动距离与所述参考移动速度是依据所述机器人在所述目标拍摄时刻的参考定位信息计算得到;所述参考定位信息依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置计算得到。
[0011] 可选的,还包括:
[0012] 在所述移动距离差值不小于预设第一阈值或所述移动速度差值不小于预设第二阈值的情况下,获取所述机器人在所述目标拍摄时刻的参考定位信息;
[0013] 将所述参考定位信息,作为所述机器人在所述目标拍摄时刻的定位信息。
[0014] 可选的,依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置,确定所述机器人在所述目标拍摄时刻的参考定位信息,包括:
[0015] 依据IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,预测机器人在所述目标拍摄时刻下的位置信息,得到预测位置信息;
[0016] 依据所述预测位置信息,推算在所述目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在所述目标拍摄时刻拍摄得到的图像中的位置,得到所述特征角点在所述目标拍摄时刻图像中的推算位置;
[0017] 循环执行以下操作:
[0018] 在推算位置与实际位置间的差值不属于预设范围的情况下,依据所述差值以及所述差值的方向,修正预测位置信息;所述实际位置为所述摄像设备在所述目标拍摄时刻实际拍摄得到的图像中所述特征角点的位置;
[0019] 依据修正后的预测位置信息,推算在所述目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在所述目标拍摄时刻拍摄得到的图像中的位置,得到所述特征角点在所述目标拍摄时刻图像中的推算位置;直至推算位置与实际位置间的差值属于所述预设范围;
[0020] 将修正后的预测位置信息作为所述机器人在所述目标拍摄时刻的定位信息。
[0021] 可选的,还包括:
[0022] 每隔预设时长,将轮速里程计坐标系与视觉坐标系进行标定。
[0023] 本申请还提供了一种机器人定位信息的确定装置,应用于机器人的处理器;所述机器人安装有分别与所述处理器连接的轮速里程计、IMU传感器和摄像设备,所述装置包括:
[0024] 计算模块,用于依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内所述机器人在轮速里程计坐标系下的移动距离和移动速度;
[0025] 转换模块,用于将所述移动距离和移动速度,转换到所述摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度;
[0026] 第一确定模块,用于在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,将依据所述轮速里程信息确定的所述目标拍摄时刻的定位信息,作为所述机器人在所述目标拍摄时刻的定位信息;所述移动距离差值为所述转换后的移动距离与机器人在所述预设时间段内视觉坐标系下的参考移动距离间的差值;所述移动速度差值为所述转换后的移动速度与机器人在所述预设时间段内视觉坐标系下的参考移动速度间的差值;所述参考移动距离与所述参考移动速度是依据所述机器人在所述目标拍摄时刻的参考定位信息计算得到;所述参考定位信息依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置计算得到。
[0027] 可选的,还包括:
[0028] 获取模块,用于在所述移动距离差值不小于预设第一阈值或所述移动速度差值不小于预设第二阈值的情况下,获取所述机器人在所述目标拍摄时刻的参考定位信息;
[0029] 第二确定模块,用于将所述参考定位信息,作为所述机器人在所述目标拍摄时刻的定位信息。
[0030] 可选的,还包括:
[0031] 第三确定模块,用于依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置,确定所述机器人在所述目标拍摄时刻的参考定位信息,包括:
[0032] 第三确定模块,具体用于依据IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,预测机器人在所述目标拍摄时刻下的位置信息,得到预测位置信息;
[0033] 依据所述预测位置信息,推算在所述目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在所述目标拍摄时刻拍摄得到的图像中的位置,得到所述特征角点在所述目标拍摄时刻图像中的推算位置;
[0034] 循环执行以下操作:
[0035] 在推算位置与实际位置间的差值不属于预设范围的情况下,依据所述差值以及所述差值的方向,修正预测位置信息;所述实际位置为所述摄像设备在所述目标拍摄时刻实际拍摄得到的图像中所述特征角点的位置;
[0036] 依据修正后的预测位置信息,推算在所述目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在所述目标拍摄时刻拍摄得到的图像中的位置,得到所述特征角点在所述目标拍摄时刻图像中的推算位置;直至推算位置与实际位置间的差值属于所述预设范围;
[0037] 将修正后的预测位置信息作为所述机器人在所述目标拍摄时刻的定位信息。
[0038] 可选的,还包括:
[0039] 标定模块,用于每隔预设时长,将轮速里程计坐标系与视觉坐标系进行标定。
[0040] 本申请还提供了一种存储介质,所述存储介质包括存储的程序,其中,所述程序执行上述任一种所述的机器人定位信息的确定方法。
[0041] 本申请还提供了一种设备,所述设备包括至少一个处理器、以及与所述处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述任一种所述的机器人定位信息的确定方法。
[0042] 本申请所述的机器人定位信息的确定方法及装置,依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内机器人在轮速里程计坐标系下的移动距离和移动速度;将移动距离和移动速度,转换到摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度。
[0043] 在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,由于移动距离差值为转换后的移动距离与机器人在预设时间段内视觉坐标系下的参考移动距离间的差值;移动速度差值为转换后的移动速度与机器人在预设时间段内视觉坐标系下的参考移动速度间的差值,并且,参考移动距离与参考移动速度是依据机器人在目标拍摄时刻的参考定位信息计算得到。
[0044] 其中,参考定位信息依据IMU传感器测量的目标拍摄时刻前的瞬时加速度和角速度,以及摄像设备在目标拍摄时刻拍摄的图像中特征角点的位置计算得到。由于摄像设备拍摄的图像中特征角点的位置是精确的,因此,计算得到的参考定位信息是准确的,进而,参考移动距离与参考移动速度是准确的。因此,在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,可以表明依据轮速里程计测量的轮速里程信息确定得到的机器人的定位信息是准确的。因此,将依据轮速里程信息确定的目标拍摄时刻的定位信息,作为机器人在目标拍摄时刻的位置信息是准确的。
[0045] 综上所述,本申请得到的机器人的定位信息精度可以得到提高。

附图说明

[0046] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0047] 图1为本申请实施例公开的一种机器人定位信息的确定方法的应用场景示意图;
[0048] 图2为本申请实施例公开的一种依据IMU传感器测量信息和特征角点位置信息确定机器人位置信息的过程示意图;
[0049] 图3为本申请实施例公开的一种机器人定位信息的确定方法的流程图;
[0050] 图4为本申请实施例公开的一种机器人定位信息的确定装置的结构示意图;
[0051] 图5为本申请实施例公开的一种设备的结构示意图。

具体实施方式

[0052] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0053] 图1为本申请实施例提供的一种机器人定位信息的确定方法的应用场景示意图,包括:处理器、轮速里程计、IMU传感器和摄像设备。其中,轮速里程计、IMU传感器和摄像设备分别与处理器连接,轮速里程计用于测量机器人的轮速里程信息,摄像设备用于拍摄图像,IMU传感器用于测量机器人的瞬时加速度和角速度信息。处理器用于执行机器人定位信息的确定方法和机器人参考定位信息的计算方法。
[0054] 本申请实施例是对机器人的定位信息进行确定,在实际中,机器人开始移动后,需要实时确定机器人的位置信息。在本实施例中,对于需要对机器人进行定位的时刻可以为目标拍摄时刻,其中,目标拍摄时刻可以为摄像设备的拍摄时刻中的每个拍摄时刻,或者,某些拍摄时刻。当然,在实际中,目标拍摄时刻的取值可以根据实际情况确定,本实施例不对目标拍摄时刻的取值作限定。
[0055] 在本申请实施例中,对每个目标拍摄时刻下的机器人定位信息的确定流程相同,本实施例是站在任意一个目标拍摄时刻的角度,介绍本实施例对机器人在目标拍摄时刻的定位信息的确定流程。
[0056] 在本实施例中,依据IMU传感器测量的目标拍摄时刻前的瞬时加速度和角速度,以及摄像设备在目标拍摄时刻拍摄的图像中特征角点的位置,确定机器人在目标拍摄时刻的参考定位信息,可以包括以下步骤:
[0057] S201、依据IMU传感器测量的目标拍摄时刻前的瞬时加速度和角速度,预测机器人在目标拍摄时刻的位置信息,得到预测位置信息。
[0058] 在本步骤中,需要依据机器人开始移动后且在目标拍摄时刻之前IMU传感器测量的瞬时加速度和角速度,对机器人在目标拍摄时刻的位置信息进行预测。
[0059] 在本步骤中,预测的具体实现方式可以包括:依据匀加速运动中的距离、加速度和时间之间的关系,计算机器人在目标拍摄时刻与上一拍摄时刻之间的时长下的移动距离。并基于该移动距离和目标拍摄时刻的上一拍摄时刻下机器人的位置信息,可计算得到本步骤的机器人在目标拍摄时刻的位置信息,得到预测位置信息。
[0060] S202、依据预测位置信息,推算在目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点,在目标拍摄时刻拍摄得到的图像中的位置,得到特征角点在目标拍摄时刻的推算位置。
[0061] 在本步骤中,依据预测位置信息,推算在目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在目标拍摄时刻拍摄得到的图像中的位置的具体实现方式,可以包括依据S201中计算出的机器人在目标拍摄时刻与上一拍摄时刻间的时长下的移动距离,以及特征角点在两帧图像中的像素差值,通过勾股定理计算得到特征角点在目标拍摄时刻的图像中的位置,得到推算位置。
[0062] S203、判断推算位置与实际位置间的差值是否属于预设范围,如果否,则执行S204,如果是,则执行S205。
[0063] 在本步骤中,实际位置为摄像设备在目标拍摄时刻实际拍摄得到的图像中该特征角点的位置。
[0064] S204、依据差值以及差值的方向,修正预测位置信息。
[0065] 在推算位置与实际位置间的差值不属于预设范围的情况下,执行本步骤的操作。在本步骤中,依据差值以及差值方向,修正预测位置信息的具体实现原则,可以包括迭代向着差值减少的方向修正预测位置。
[0066] 执行完本步骤后,返回执行步骤S202,直至得到与实际位置间的差值属于预设范围的修正预测位置信息,为了描述方便,称为修正后的预测位置信息。
[0067] 需要说明的是,执行完本步骤后执行S202时,需要依据修正后的预测位置信息,推算在目标拍摄时刻的上一拍摄时刻拍摄的图像中特征角点,在目标拍摄时刻拍摄得到的图像中的位置。
[0068] S205、将修正后的预测位置信息作为机器人在目标拍摄时刻的参考定位信息。
[0069] 在本实施例中,在计算参考位置信息之前需要进行初始化,在初始化过程中,需要确定出机器人开始移动后摄像设备拍摄的第一帧图像中特征角点的深度信息,具体可以包括以下步骤A1 步骤A4:~
[0070] A1、检测机器人开始移动后摄像设备拍摄的第一帧图像中的特征角点。
[0071] A2、确定特征角点在第一帧图像中的位置。
[0072] A3、依据特征角点的预设深度信息,构建特征角点在IMU坐标系下的初始位置。
[0073] 在本实施例中,预设深度信息为预先设定的默认深度信息,该深度信息并不是特征角点的真实深度信息。
[0074] A4、依据机器人开始移动后的轮速里程信息和IMU信息,计算特征角点在第一帧图像中的真实深度信息。
[0075] 在本步骤中,IMU信息包括瞬时加速度和角速度。
[0076] 在本步骤中,依据轮速里程信息和IMU信息,计算特征角点在第一帧图像中的真实深度信息的实现方式可以包括:依据轮速里程信息和IMU信息可以计算得到机器人移动的位置差值,同时可以计算得到该移动过程中特征角点的像素点在图像中的差值,然后,再利用机器人移动的位置差值、特征角点的像素点在图像中的差值,以及勾股定理,可以计算得到第一帧图像中特征角点的深度信息。
[0077] 在本实施例中,通过IMU传感器测量的目标拍摄时刻前的瞬时加速度和角速度信息,预测机器人在目标拍摄时刻的位置信息,基于该预测位置信息计算目标拍摄时刻拍摄得到的图像中特征角点的位置,即推算位置,并通过摄像头实际在目标拍摄时刻拍摄的图像中特征角点的实际位置,对机器人的预测位置信息进行修正,直至推算位置与实际位置间的差值属于预设范围,此时得到的修正后的预测位置信息,可以代表机器人在目标拍摄时刻的准确位置信息。
[0078] 因此,机器人在目标拍摄时刻的修正后的预测位置信息,可以作为判断通过轮速里程计测量的信息计算得到的机器人在目标拍摄时刻的位置信息是否准确的参考,因此,在本实施例中,将修正后的预测位置信息称为参考位置信息。
[0079] 基于计算得到的参考位置信息,确定机器人的定位信息,具体过程如图3所示,图3为本申请实施例提供的一种机器人定位信息的确定方法,可以包括以下步骤:
[0080] S301、依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内机器人在轮速里程计坐标系下的移动距离和移动速度。
[0081] 在本步骤中,计算截止目标拍摄时刻的预设时间段内机器人在轮速里程计坐标系下的移动距离和移动速度的具体实现方式为现有技术,这里不在赘述。
[0082] S302、将移动距离和移动速度,转换到摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度。
[0083] 在本实施例中,摄像设备具有预设的坐标系即视觉坐标系。
[0084] 在本步骤中,依据轮速里程计坐标系与视觉坐标系之间的转换关系,将移动距离和移动速度转换到视觉坐标系下,具体的转换实现方式为现有技术,这里不在赘述。
[0085] S303、判断是否满足移动距离差值小于预设第一阈值,并且,移动速度差值小于预设第二阈值,如果是,则执行S304,如果否,则执行S305。
[0086] 在本步骤中,通过转换得到的预设时间段内机器人在视觉坐标系下的移动距离和移动速度,与依据图2实施例得到的参考位置信息计算得到预设时间段内机器人在视觉坐标系下的移动距离与移动速度进行对比,即判断是否满足移动距离的差值小于预设第一阈值,并且,移动速度差值小于预设第二阈值,如果是,则执行S304,如果否,则执行S305。
[0087] 其中,依据目标拍摄时刻的参考位置信息,计算预设时间段内机器人在视觉坐标系下的移动距离和移动速度的具体实现方式为现有技术,这里不再赘述。
[0088] 可选的,在本步骤中,可以通过滤波器执行,例如,卡尔曼滤波器。具体的,向滤波器中输入转换后的移动距离与移动速度,以及通过参考位置信息计算得到的移动距离和移动速度,滤波器对输入的移动距离进行比较,同时对输入的移动速度进行比较,得到比较结果。在比较结果表示动距离差值小于预设第一阈值,并且,移动速度差值小于预设第二阈值,表明依据轮速里程信息确定的目标拍摄时刻下机器人的定位信息是准确的,否则,表明依据轮速里程信息确定的目标拍摄时刻下机器人的定位信息是不准确的,例如,机器人的车轮出现打滑现象。
[0089] S304、将依据轮速里程信息确定的目标拍摄时刻的定位信息,作为机器人在目标拍摄时刻的定位信息。
[0090] 在移动距离差值小于预设第一阈值,并且,移动速度差值小于预设第二阈值的情况下,执行本步骤的操作,具体的,将依据轮速里程信息确定的目标拍摄时刻的定位信息,作为机器人在该目标拍摄时刻的位置信息。其中,依据轮速里程信息确定机器人在目标拍摄时刻的定位信息的具体实现方式为现有技术,这里不再赘述。
[0091] S305、将参考位置信息作为机器人在目标拍摄时刻的位置信息。
[0092] 在移动距离差值不小于预设第一阈值,或者,移动速度差值不小于预设第二阈值的情况下,执行本步骤的操作。具体的,在本步骤中,获取机器人在目标拍摄时刻的参考位置信息,其中,参考位置信息依据IMU传感器测量的目标拍摄时刻前的瞬时加速度和角速度,以及摄像设备在目标拍摄时刻拍摄的图像中特征角点的实际位置确定得到,其中,具体的确定过程可以参考图2对应的实施例,这里不在赘述。
[0093] S306、采用视觉坐标系对轮速里程坐标系进行标定。
[0094] 可选的,在本实施例中,移动距离间的差值不小于第一阈值,或者,移动速度间的差值不小于第二阈值的情况下,执行本步骤。或者,每隔预设时长,执行本步骤。原因是:随着机器人的移动,机器人的轮子可能打滑,在轮子打滑的情况下,机器人的实际位置并未发生变化,但是,轮子在转,导致轮速里程计在继续计数,因此,依据轮速里程计的测量结果确定的机器人的位置信息与机器人的真实位置信息之间存在偏差,即轮速里程计出现了漂移现象。由于在实际中,基于摄像头拍摄的图像信息,确定机器人的位置信息,既使在机器人的轮子打滑的情况下,确定的位置信息也是准确的。因此,在本实施例中,为了防止轮速里程计的漂移到对机器人定位信息的影响,将轮速里程计坐标系与视觉坐标系进行标定,即依据视觉坐标系对轮速里程坐标系进行标定,从而解决轮速里程计出现的漂移现象。其中,标定的具体实现方式为现有技术,这里不再赘述。
[0095] 图4为本申请实施例提供的一种机器人定位信息的确定装置,应用于机器人的处理器;所述机器人安装有分别与所述处理器连接的轮速里程计、IMU传感器和摄像设备,所述装置可以包括:计算模块401、转换模块402和第一确定模块403;其中,[0096] 计算模块401,用于依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内所述机器人在轮速里程计坐标系下的移动距离和移动速度。
[0097] 转换模块402,用于将移动距离和移动速度,转换到摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度。
[0098] 第一确定模块403,用于在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,将依据轮速里程信息确定的目标拍摄时刻的定位信息,作为机器人在目标拍摄时刻的定位信息;移动距离差值为转换后的移动距离与机器人在预设时间段内视觉坐标系下的参考移动距离间的差值;移动速度差值为转换后的移动速度与机器人在预设时间段内视觉坐标系下的参考移动速度间的差值;参考移动距离与参考移动速度是依据机器人在目标拍摄时刻的参考定位信息计算得到;参考定位信息依据IMU传感器测量的目标拍摄时刻前的瞬时加速度和角速度,以及摄像设备在目标拍摄时刻拍摄的图像中特征角点的位置计算得到。
[0099] 可选的,该装置还可以包括:
[0100] 获取模块,用于在移动距离差值不小于预设第一阈值或移动速度差值不小于预设第二阈值的情况下,获取机器人在目标拍摄时刻的参考定位信息;第二确定模块,用于将参考定位信息,作为机器人在目标拍摄时刻的定位信息。
[0101] 可选的,该装置还可以包括:
[0102] 第三确定模块,用于依据IMU传感器测量的目标拍摄时刻前的瞬时加速度和角速度,以及摄像设备在目标拍摄时刻拍摄的图像中特征角点的位置,确定机器人在所述目标拍摄时刻的参考定位信息,包括:
[0103] 第三确定模块,具体用于依据IMU传感器测量的目标拍摄时刻前的瞬时加速度和角速度,预测机器人在目标拍摄时刻下的位置信息,得到预测位置信息;
[0104] 依据预测位置信息,推算在目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在目标拍摄时刻拍摄得到的图像中的位置,得到特征角点在目标拍摄时刻图像中的推算位置;
[0105] 循环执行以下操作:
[0106] 在推算位置与实际位置间的差值不属于预设范围的情况下,依据差值以及差值的方向,修正预测位置信息;实际位置为摄像设备在目标拍摄时刻实际拍摄得到的图像中特征角点的位置;
[0107] 依据修正后的预测位置信息,推算在目标拍摄时刻的上一拍摄时刻拍摄的图像中的特征角点在目标拍摄时刻拍摄得到的图像中的位置,得到特征角点在目标拍摄时刻图像中的推算位置;直至推算位置与实际位置间的差值属于所述预设范围;
[0108] 将修正后的预测位置信息作为机器人在目标拍摄时刻的定位信息。
[0109] 可选的,该装置还可以包括:
[0110] 标定模块,用于每隔预设时长,将轮速里程计坐标系与视觉坐标系进行标定。
[0111] 机器人定位信息的确定装置包括处理器和存储器,上述计算模块401、转换模块402和第一确定模块403等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
[0112] 处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解决机器人的定位信息精度低的问题。
[0113] 本发明实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现所述机器人定位信息的确定方法。
[0114] 本发明实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行所述机器人定位信息的确定方法。
[0115] 本发明实施例提供了一种设备,如图5所示,设备包括至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,处理器、存储器通过总线完成相互间的通信;处理器用于调用存储器中的程序指令,以执行上述的机器人定位信息的确定方法。本文中的设备可以是服务器、PC、PAD、手机等。
[0116] 本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:
[0117] 依据轮速里程计测量得到的轮速里程信息,计算截止预设的目标拍摄时刻的预设时间段内所述机器人在轮速里程计坐标系下的移动距离和移动速度;
[0118] 将所述移动距离和移动速度,转换到所述摄像设备的视觉坐标系下,得到转换后的移动距离和移动速度;
[0119] 在移动距离差值小于预设第一阈值且移动速度差值小于预设第二阈值的情况下,将依据所述轮速里程信息确定的所述目标拍摄时刻的定位信息,作为所述机器人在所述目标拍摄时刻的定位信息;所述移动距离差值为所述转换后的移动距离,与,机器人在所述预设时间段内视觉坐标系下的参考移动距离间的差值;所述移动速度差值为所述转换后的移动速度,与,机器人在所述预设时间段内视觉坐标系下的参考移动速度间的差值;所述参考移动距离与所述参考移动速度是依据所述机器人在所述目标拍摄时刻的参考定位信息计算得到;所述参考定位信息依据所述IMU传感器测量的所述目标拍摄时刻前的瞬时加速度和角速度,以及所述摄像设备在所述目标拍摄时刻拍摄的图像中特征角点的位置计算得到。
[0120] 本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0121] 在一个典型的配置中,设备包括一个或多个处理器(CPU)、存储器和总线。设备还可以包括输入/输出接口、网络接口等。
[0122] 存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。存储器是计算机可读介质的示例。
[0123] 计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存 (PRAM)、静态随机存取存储器 (SRAM)、动态随机存取存储器 (DRAM)、其他类型的随机存取存储器 (RAM)、只读存储器 (ROM)、电可擦除可编程只读存储器 (EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器 (CD-ROM)、数字多功能光盘 (DVD) 或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体 (transitory media),如调制的数据信号和载波。
[0124] 还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
[0125] 本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
[0126] 以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
[0127] 本申请实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
[0128] 本说明书的各个实施例中记载的特征可以相互替换或者组合,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
[0129] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。