移动机器人定位方法、装置、设备及存储介质
技术领域
本发明实施例涉及计算机视觉技术领域,尤其涉及一种移动机器人定位方法、装置、设备及存储介质。
背景技术
随着计算机技术的不断发展,移动机器人已经逐渐进入了人们生活的方方面面,而机器人定位技术也逐渐趋于成熟。然而,对于室内环境而言,实现对机器人位置的精确定位依旧存在不小的挑战。
现有技术中对移动机器人在室内环境中内进行定位时,通常采用基于激光雷达的概率定位系统,该概率定位系统实现了自适应蒙特卡洛定位方法,使用粒子滤波跟踪机器人在已知地图中的位姿信息。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:移动机器人的定位效果会随移动机器人所处的环境而产生变化,例如当移动机器人处于某个方向上自由度缺失的场景时,定位效果明显不佳。
发明内容
本发明提供一种移动机器人定位方法、装置、设备及存储介质,以提高移动机器人的定位效果。
第一方面,本发明实施例提供了一种移动机器人定位方法,包括:
获取设置于所述移动机器人上的相机采集的当前帧图像,并基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息;
根据所述环境状况信息,获取定位参考信息,并根据所述定位参考信息,确定所述移动机器人的当前位姿信息。
第二方面,本发明实施例还提供了一种移动机器人定位装置,包括:
环境状况信息确定模块,用于获取设置于所述移动机器人上的相机采集的当前帧图像,并基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息;
位姿信息确实能够模块,用于根据所述环境状况信息,获取定位参考信息,并根据所述定位参考信息,确定所述移动机器人的当前位姿信息。
第三方面,本发明实施例还提供了一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面实施例所提供的一种移动机器人定位方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面实施例所提供的一种移动机器人定位方法。
本发明实施例通过获取设置于移动机器人的相机采集的当前帧图像,并基于当前帧图像确定移动机器人当前所处的环境状况信息;根据环境状况信息,确定定位参考信息,并根据定位参考信息确定移动机器人的当前位姿信息。上述技术方案可以实现针对不同的环境状况信息获取不同的定位参考信息,进而通过不同定位参考信息对应的定位参考方法,进行当前位姿信息的确定,使得不同环境对应的应用场景下,进行定位参考信息和定位方法的择优选取,提高了机器人定位的定位效果。
附图说明
图1是本发明实施例一中的一种移动机器人定位方法的流程图;
图2是本发明实施例二中的一种移动机器人定位方法的流程图;
图3是本发明实施例三中的一种移动机器人定位方法的流程图;
图4是本发明实施例四中的一种移动机器人定位方法的流程图;
图5是本发明实施例五中的一种移动机器人定位装置的结构图;
图6是本发明实施例六中的一种电子设备的结构图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一中的一种移动机器人定位方法的流程图,本发明实施例适用于对移动机器人特别是在应用场景多变的移动机器人进行定位的情况,该方法由移动机器人定位装置执行,该装置由软件和/或硬件实现,并具体配置于具有一定计算能力的电子设备中。其中,该电子设备可以是独立的计算设备,如个人电脑、PC机、或服务器等,还可以是集成在移动机器人中的数据处理设备。
如图1所示的一种移动机器人定位方法,包括:
S110、获取设置于所述移动机器人上的相机采集的当前帧图像,并基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息。
其中,获取设置于移动机器人上的相机采集的当前帧图像,可以是相机采集当前时刻的当前帧图像之后,实时向电子设备发送当前帧图像;还可以检测到相机采集到当前时刻的当前帧图像之后,从相机中获取采集到的当前帧图像。其中,当前帧图像在相机和电子设备中的传输过程可以通过有线和/或无线的方式实现。
基于当前帧图像确定移动机器人当前所处的环境状况信息,可以是基于当前帧图像的图像质量,确定移动机器人当前所处的环境状况信息。其中图像质量可以是当前帧图像中信噪比和/或当前帧图像中特征点的数量等进行确定。其中环境状况信息包括表征移动机器人对当前环境的熟悉程度的状况信息,例如熟悉环境和陌生环境;环境状况信息还可以表征移动机器人所处的当前环境的恶劣程度,例如良好环境和恶劣环境;环境状况信息还可以表征移动机器人所处的当前环境的地面的平稳程度,例如颠簸环境和非颠簸环境。
可选的,基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息,可以是将当前帧图像作为输入数据输入至预先训练的环境识别模型中,得到模型的环境状况信息输出结果;其中环境识别模型可以通过大量的图像作为训练样本基于机器学习方法训练生成。
或者可选的,基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息,还可以是确定当前帧图像的信噪比,根据当前帧图像的信噪比大于设定信噪比阈值,则确定移动机器人所处的环境状况信息为良好环境;否则确定移动机器人所处的环境状况信息为恶劣环境。其中,设定信噪比阈值由技术人员根据需要或经验值进行设定,还可以通过有限次试验确定。
或者可选的,基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息,还可以是将所述当前帧图像与历史帧图像进行匹配,若匹配成功,则确定所述环境状况信息为熟悉环境;若匹配失败,则确定所述环境状况信息为陌生环境。
具体的,将当前帧图像与历史帧图像进行匹配,可以是将当前帧图像与预存的电子地图中的各历史帧图像进行比对,当当前帧图像与历史帧图像的相似度达到设定相似度阈值时,则确定当前帧图像与相似度达到设定相似度阈值的历史帧图像匹配成功。其中,设定相似度阈值由技术人员根据需要或经验值进行设定,还可以通过有限次试验确定。示例性地,可以采用词袋模型将当前帧图像与历史帧图像进行匹配判定。
S120、根据所述环境状况信息,获取定位参考信息,并根据所述定位参考信息,确定所述移动机器人的当前位姿信息。
其中,定位参考信息可以理解为确定移动机器人的当前位姿信息时所必须的参数。示例性地,定位参考信息可以是安装于移动机器人上的相机所采集的当前帧图像和/或历史帧图像,安装于移动机器人上的惯性测量单元输出的惯性测量信息,以及安装于移动机器人上的轮速计输出的轮速计信息中的至少一种。
具体的,根据移动机器人所处的环境状况不同,获取不同的定位参考信息,并基于获取的定位参考信息采用相应的位姿信息确定方式,确定移动机器人的当前位姿信息。
本发明实施例通过获取设置于移动机器人的相机采集的当前帧图像,并基于当前帧图像确定移动机器人当前所处的环境状况信息;根据环境状况信息,确定定位参考信息,并根据定位参考信息确定移动机器人的当前位姿信息。上述技术方案通过不同环境状况信息的确定,以及基于不同的环境状况信息获取不同的定位参考信息,进而通过不同定位参考信息对应的定位参考方法,进行当前位姿信息的确定,使得不同环境对应的应用场景下,进行定位参考信息和定位方法的择优选取,解决了现有技术中定位效果会随移动机器人所处的环境产生变化的问题,提高了不同应用场景下机器人定位的定位效果。
实施例二
图2是本发明实施例二中的一种移动机器人定位方法的流程图,本发明实施例在上述各实施例的技术方案的基础上进行了细分优化。
进一步地,将操作“基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息”细化为“将所述当前帧图像与历史帧图像进行匹配,若匹配成功,则确定所述环境状况信息为熟悉环境;若匹配失败,则确定所述环境状况信息为陌生环境”,以完善熟悉环境和陌生环境的判定机制。
进一步地,将环境状况信息限定为熟悉环境,并将移动机器人在熟悉环境下执行的操作“根据所述环境状况信息,获取定位参考信息,并根据所述定位参考信息,确定所述移动机器人的当前位姿信息”细化为“将所述当前帧图像作为所述定位参考信息;根据所述当前帧图像和匹配成功的历史帧图像的位姿信息,确定所述移动机器人的当前位姿信息”,以完善移动机器人在熟悉环境下进行定位时的定位机制。
进一步地,将环境状况信息限定为陌生环境,并将移动机器人在陌生环境下执行的操作“根据所述环境状况信息,获取定位参考信息”细化为“提取所述当前帧图像中的特征点,并根据提取的特征点的数量,确定所述陌生环境的环境质量,并根据所述环境质量获取定位参考信息”,以完善移动机器人在陌生环境下进行定位时的定位机制。
如图2所示的一种移动机器人定位方法,包括:
S210、获取设置于所述移动机器人上的相机采集的当前帧图像。
S220、将所述当前帧图像与历史帧图像进行匹配,判断是否匹配成功;如果是,则执行S231,否则执行S232。
具体的,当匹配成功时,说明在移动机器人中预先存储的电子地图中包含有与当前帧图像相近似的历史帧图像,因此可以确定移动机器人当前所处环境的环境状况信息为熟悉环境。当匹配失败时,说明在移动机器人中预先存储的电子地图中并不包含有与当前帧图像相近似的历史帧图像,因此确定移动机器人当前所处环境的环境状况信息为陌生环境。其中,匹配成功可以理解为当前帧图像与历史帧图像的相似度达到了设定相似度阈值,其中设定相似度阈值由技术人员根据需要或经验值进行设定,还可以根据大量试验确定。
S231、确定环境状况信息为熟悉环境,并将所述当前帧图像作为所述定位参考信息。
S241、根据所述当前帧图像和匹配成功的历史帧图像的位姿信息,确定所述移动机器人的当前位姿信息。
示例性地,当移动机器人所处环境的环境状况信息为熟悉环境时,将当前帧图像作为输入数据,采用PnP(Perspective n Point,透视n点)算法完成重定位,并直接使用通过重定位得到的移动机器人的位姿信息作为当前位姿信息。
S232、确定环境状况信息为陌生环境,并提取所述当前帧图像中的特征点,并根据提取的特征点的数量,确定所述陌生环境的环境质量,并根据所述环境质量获取定位参考信息。
在移动机器人所处环境中有白墙或者行人遮挡时,安装于移动机器人上的相机所采集的当前帧图像会存在环境纹理不足或遮挡严重的情况,很难检测到有效的特征点用于定位,因此可以通过当前帧图像中的特征点的数量对移动机器人当前所处环境的环境质量进行评价。
在本发明的一个可选实施方式中,若提取的特征点的数量大于预设数量阈值,则确定所述陌生环境的环境质量良好;若提取的特征点的数量不大于预设数量阈值,则确定所述陌生环境的环境质量恶劣。
可以理解的是,当移动机器人所处陌生环境的环境质量不同时,可以通过获取不同的参数作为定位参考信息,并采用不同的定位方式确定移动机器人的当前位姿信息,从而能够针对陌生环境的环境质量,择优进行定位参考信息和定位方式的选择。
S242、根据所述定位参考信息,确定所述移动机器人的当前位姿信息。
本发明实施例通过根据当前帧图像与历史帧图像的匹配情况,确定移动机器人所处环境的环境状况信息为熟悉环境或者陌生环境,并在熟悉环境下将当前帧图像作为定位参考信息,并结合匹配成功的历史帧图像的位姿信息进行当前位姿信息的确定;在陌生环境下通过提取当前帧图像的特征点,并根据特征点的数量确定陌生环境的环境质量,并根据环境质量进行定位参考信息的获取,进而基于定位参考信息进行当前位姿信息的确定。上述技术方案在熟悉环境下当前位姿信息的确定方式,能够有效消除其他当前位姿信息确定方式的累积误差,提高了熟悉环境下的定位精度;在陌生环境下,对陌生环境下的环境质量进行判定,并根据环境质量的判定结果进行定位参考信息的获取,进而通过相应的确定方式进行当前位姿信息的有效确定,进而提高了不用应用场景下移动机器人的定位精度。
实施例三
图3是本发明实施例三中的一种移动机器人定位方法的流程图,本发明实施例在上述各实施例的技术方案的基础上进行了细分优化。
进一步的,将环境状况信息限定为环境质量为良好的陌生环境,和环境质量为恶劣的陌生环境的情况下,将移动机器人在陌生环境下执行的操作“根据所述环境质量获取定位参考信息”细化为“若所述环境质量良好,则获取设置于所述移动机器人上的惯性测量单元输出的惯性测量信息,并将所述惯性测量信息和所述当前帧图像作为所述定位参考信息;若所述环境质量恶劣,则识别所述陌生环境的恶劣类别,并根据所述恶劣类别获取设置于所述移动机器人上的轮速计输出的轮速计信息作为所述定位参考信息;所述恶劣类别包括颠簸环境和非颠簸环境”,以完善移动机器人在陌生环境下的定位参考信息获取机制。
相应的,将操作“根据所述定位参考信息,确定所述移动机器人的当前位姿信息”细化为“若所述环境质量良好,则根据所述惯性测量信息和所述当前帧图像,确定在预设时间间隔对应的位置增量;或者,若所述环境质量恶劣,则确定所述轮速计信息在预设时间间隔对应的位置增量;根据前一时刻确定的位姿信息和所述位置增量,确定所述移动机器人的当前位姿信息;其中,所述当前位姿信息对应的当前时刻与所述前一时刻的差值为所述预设时间间隔”,以完善移动机器人在陌生环境下的进行定位时的定位机制。
如图3所示的一种移动机器人定位方法,包括:
S310、获取设置于所述移动机器人上的相机采集的当前帧图像,并基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息。
S320、判断环境状况信息是否为环境质量良好的陌生环境;若是,则执行S331;否则执行S332。
在本发明实施例的一个可选实施方式中,可以通过以下方式判断环境状况信息是否为环境质量良好的陌生环境:将所述当前帧图像与历史帧图像进行相似度匹配;若相似度达到设定相似度阈值,则确定所述环境状况信息为熟悉环境;若相似度达不到设定相似度阈值,则确定所述环境状况信息为陌生环境。其中,设定相似度阈值由技术人员根据需要或经验值进行设定,还可以根据大量试验确定。
在本发明实施例的另一个可选实施方式中,可以通过以下方式判断陌生环境的环境质量是否良好或恶劣:提取所述当前帧图像中的特征点;若提取的特征点的数量大于预设数量阈值,则确定所述陌生环境的环境质量良好;若提取的特征点的数量不大于预设数量阈值,则确定所述陌生环境的环境质量恶劣。其中,预设数量阈值由技术人员根据需要或经验值进行设定,还可以根据大量试验确定。
S331、获取设置于所述移动机器人上的惯性测量单元输出的惯性测量信息,并将所述惯性测量信息和所述当前帧图像作为所述定位参考信息。继续执行S341。
S341、根据所述惯性测量信息和所述当前帧图像,确定在预设时间间隔对应的位置增量;继续执行S350。
当陌生环境的环境质量为良好时,则说明当前移动机器人的相机视野中的环境条件良好,可以信任VIO(Visual Inertial Odometry,视觉惯性里程计)推位信息给出的机器人位姿状态,直接使用VIO获取的推位信息作为移动机器人的位姿。也即,获取安装在移动机器人上的惯性测量单元(Inertial Measurement Unit,IMU)输出的惯性测量信息,并将惯性测量信息和当前帧图像作为定位参考信息,采用视觉定位方法确定移动机器人的位置增量,并基于位置增量进行当前位姿信息的确定。
其中,惯性测量单元包括加速度计以及陀螺仪中的至少一个;相应的,惯性测量信息包括角速度以及加速度中的至少一个。
S332、识别所述陌生环境的恶劣类别,并根据所述恶劣类别获取设置于所述移动机器人上的轮速计输出的轮速计信息作为所述定位参考信息;所述恶劣类别包括颠簸环境和非颠簸环境;继续执行S342。
在本发明的一个可选实施方式中,识别陌生环境的恶劣类别可以是:获取设置于所述移动机器人上的惯性测量单元输出的惯性测量数据,并根据所述惯性测量数据确定所述移动机器人是否处于颠簸状态。示例性地,可以获取惯性测量单元输出的加速度;确定获取的加速度在竖直方向上的波动程度,并根据波动程度确定移动机器人是否处于颠簸状态。
具体的,当加速度在竖直方向上的波动程度大于设定波动阈值,则确定移动机器人当前时刻竖直方向上的加速度存在跳变,可以认为当前地面不平整,进而确定移动机器人处于颠簸状态;当加速度在竖直方向上的波动程度不大于设定波动阈值,则确定移动机器人当前时刻竖直方向上的加速度相对平稳,可以认为当前地面相对平整,进而确定移动机器人处于非颠簸状态。其中,设定波动阈值可以有技术人员根据需要或经验值进行设定,还可以根据有限次试验确定。
在本发明另一个可选实施方式中,根据所述恶劣类别获取设置于所述移动机器人上的轮速计输出的轮速计信息作为所述定位参考信息,可以是:若所述移动机器人未处于颠簸状态,则获取设置于所述移动机器人上的轮速计输出的所述轮速计信息作为所述定位参考信息。
具体的,当移动机器人未处于颠簸状态时,轮速计推位部分认为移动机器人接近于在一个二维水平面上运动,因此无需考虑竖直方向上的运动信息,因此可以从移动机器人底盘获取轮速计信息和磁罗盘信息,并通过对获取的轮速计信息和磁罗盘信息进行处理,得到移动机器人的轮速和偏转角,并将轮速和偏转角作为定位参考信息。当移动机器人处于颠簸状态时,底盘本身就存在轮子空转的现象,加上竖直方向上出现的运动分量,共同导致推位信息误差的出现,因此不适于将轮速和偏转角作为定位参考信息,此时优选是生成报警信息,并获取下一时刻相机采集的当前帧图像,返回执行环境状况确定操作,以进行下一时刻的当前位姿信息的确定。
S342、确定所述轮速计信息在预设时间间隔对应的位置增量;继续执行S350。
其中,所述当前位姿信息对应的当前时刻与所述前一时刻的差值为所述预设时间间隔。
示例性地,可以采用以下公式确定轮速计信息在预设时间间隔对应的位置增量:
其中,Δx为在水平面所在二维平面上x轴方向上的位置增量;Δy为在水平面所在二维平面上y轴方向上的位置增量;Δyaw为偏转角的角度增量;x轴与y轴垂直;Vxk为k时刻在x轴方向上的线速度,Vyk为k时刻在y轴方向上的线速度;yawk为偏转角,Vyawk为k时刻的角速度;Δt为k时刻与k-1时刻的差值,也即预设时间间隔。其中,线速度基于获取的轮速计的轮速所确定。
S350、根据前一时刻确定的位姿信息和所述位置增量,确定所述移动机器人的当前位姿信息。
本发明实施例通过在环境质量为良好的陌生环境时,获取惯性测量信息,并将惯性测量信息和当前帧图像作为定位参考图像,进而进行移动机器人当前位姿信息的确定;在环境质量为恶劣的陌生环境时,对陌生环境中移动机器人的颠簸状态进行区分,并在非颠簸状态下获取轮速计信息,并将轮速计信息作为定位参考图像,进而进行移动机器人当前位姿信息的确定。采用上述技术方案完善移动机器人在不同陌生环境下的定位机制,并通过不同应用场景下不同定位参考信息的获取以及相应定位方式的确定,提高了不用应用场景下移动机器人的定位精度。
实施例四
图4是本发明实施例四中的一种移动机器人定位方法的流程图,本发明实施例在上述各实施例的技术方案的基础上提供了一种优选实施方式。
如图4所示的一种移动机器人定位方法,包括:
S401、从相机获取当前时刻采集的当前帧图像。
S402、根据当前帧图像采用词袋模型确定是否处于熟悉环境;若是,则执行S403;否则执行S404。
S403、根据当前帧图像,采用PnP进行重定位,并将重定位的结果作为当前位姿信息;继续执行S410。
S404、提取当前帧图像中的特征点数量;继续执行S405。
S405、判断特征点数量是否大于设定数量阈值;若是,则执行S406;否则执行S407。
S406、从IMU获取加速度信息,并根据加速度信息采用VIO方式进行推位信息的确定,并根据VIO推位信息更新当前位姿信息;继续执行S410。
S407、确定加速度信息在竖直方向上是否存在跳变;若是,则执行S408;否则,执行S409。
S408、系统报错,并返回执行S401。
其中,在系统报错时,可以控制移动机器人停止前进,并原地旋转,使相近尽可能多的捕获周边环境,尝试进行重定位。
S409、获取轮速和偏转角,并使用轮速和偏转角更新当前位姿信息。
S410、输出移动机器人的当前位姿信息,并返回执行S401。
实施例五
图5是本发明实施例五中的一种移动机器人定位装置的结构图。本发明实施例适用于对移动机器人特别是在应用场景多变的移动机器人进行定位的情况,该装置由软件和/或硬件实现,并具体配置于具有一定计算能力的电子设备中。其中,该电子设备可以是独立的计算设备,如个人电脑、PC机、或服务器等,还可以是集成在移动机器人中的数据处理设备。
如图5所示的一种移动机器人定位装置,包括环境状况信息确定模块510和位姿信息确实能够模块520。
其中,环境状况信息确定模块510,用于获取设置于所述移动机器人上的相机采集的当前帧图像,并基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息;
位姿信息确实能够模块520,用于根据所述环境状况信息,获取定位参考信息,并根据所述定位参考信息,确定所述移动机器人的当前位姿信息。
本发明实施例通过环境状况信息确定模块获取设置于移动机器人的相机采集的当前帧图像,并基于当前帧图像确定移动机器人当前所处的环境状况信息;通过位姿信息确实能够模块根据环境状况信息,确定定位参考信息,并根据定位参考信息确定移动机器人的当前位姿信息。上述技术方案通过不同环境状况信息的确定,以及基于不同的环境状况信息获取不同的定位参考信息,进而通过不同定位参考信息对应的定位参考方法,进行当前位姿信息的确定,使得不同环境对应的应用场景下,进行定位参考信息和定位方法的择优选取,解决了现有技术中定位效果会随移动机器人所处的环境产生变化的问题,提高了不同应用场景下机器人定位的定位效果。
进一步地,环境状况信息确定模块510,在执行基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息时,具体用于:
将所述当前帧图像与历史帧图像进行匹配,若匹配成功,则确定所述环境状况信息为熟悉环境;若匹配失败,则确定所述环境状况信息为陌生环境。
进一步地,在所述环境状况信息为熟悉环境时,位姿信息确实能够模块520,包括重定位单元,具体用于:
将所述当前帧图像作为所述定位参考信息;
根据所述当前帧图像和匹配成功的历史帧图像的位姿信息,确定所述移动机器人的当前位姿信息。
进一步地,在所述环境状况信息为陌生环境时,位姿信息确实能够模块520,,还包括非重定位单元,在执行根据所述环境状况信息,获取定位参考信息时,具体用于:
提取所述当前帧图像中的特征点,并根据提取的特征点的数量,确定所述陌生环境的环境质量,并根据所述环境质量获取定位参考信息。
进一步地,根据提取的特征点的数量,确定所述陌生环境的环境质量,包括:
若提取的特征点的数量大于预设数量阈值,则确定所述陌生环境的环境质量良好;
若提取的特征点的数量不大于预设数量阈值,则确定所述陌生环境的环境质量恶劣。
进一步地,所述环境质量包括良好和恶劣;相应的,非重定位单元,包括视觉定位子单元和轮速定位子单元;
相应的,视觉定位子单元,具体用于:
在所述环境质量良好时,获取设置于所述移动机器人上的惯性测量单元输出的惯性测量信息,并将所述惯性测量信息和所述当前帧图像作为所述定位参考信息;
根据所述惯性测量信息和所述当前帧图像,确定在预设时间间隔对应的位置增量;
根据前一时刻确定的位姿信息和所述位置增量,确定所述移动机器人的当前位姿信息;
其中,所述当前位姿信息对应的当前时刻与所述前一时刻的差值为所述预设时间间隔。
相应的,轮速定位子单元,具体用于:
在所述环境质量恶劣时,识别所述陌生环境的恶劣类别,并根据所述恶劣类别获取设置于所述移动机器人上的轮速计输出的轮速计信息作为所述定位参考信息;所述恶劣类别包括颠簸环境和非颠簸环境;
确定所述轮速计信息在预设时间间隔对应的位置增量;
根据前一时刻确定的位姿信息和所述位置增量,确定所述移动机器人的当前位姿信息;
其中,所述当前位姿信息对应的当前时刻与所述前一时刻的差值为所述预设时间间隔。
进一步地,轮速定位子单元,在执行识别所述陌生环境的恶劣类别时,具体用于:
获取设置于所述移动机器人上的惯性测量单元输出的惯性测量数据,并根据所述惯性测量数据确定所述移动机器人是否处于颠簸状态;
相应的,轮速定位子单元,在执行根据所述恶劣类别获取设置于所述移动机器人上的轮速计输出的轮速计信息作为所述定位参考信息时,具体用于:
若所述移动机器人未处于颠簸状态,则获取设置于所述移动机器人上的轮速计输出的所述轮速计信息作为所述定位参考信息。
进一步地,该装置还包括报警模块,用于若所述移动机器人处于颠簸状态,则生成报警信息,并获取下一时刻相机采集的当前帧图像,返回执行环境状况确定操作。
上述移动机器人定位装置可执行本发明任意实施例所提供的移动机器人定位方法,具备执行移动机器人定位方法相应的功能模块和有益效果。
实施例六
图6是本发明实施例六中的一种电子设备的结构图。该电子设备包括:处理器610以及存储装置620。
一个或多个处理器610;
存储装置620,用于存储一个或多个程序。
该电子设备还包括:
输入装置630,用于获取相机采集的当前帧图像以及定位参考信息;
输出装置640,用于展示当前帧图像和/或当前位姿信息。
其中,该电子设备可以是独立的计算设备,如个人电脑、PC机、或服务器等,还可以是集成在移动机器人中的数据处理设备。
图6中以一个处理器610为例,该电子设备中的输入装置630可以通过总线或其他方式与输出装置640、处理器610以及存储装置620相连,且处理器610和存储装置620也通过总线或其他方式连接,图6中以通过总线连接为例。
在本实施例中,电子设备中的处理器610可以控制输入装置630从设置于移动机器人上的相机所采集的当前帧图像;还用于基于当前帧图像确定移动机器人当前所处的环境状况信息;还用于根据环境状况信息,控制输入装置630获取定位参考信息;还用于根据定位参考信息,确定移动机器人的当前位姿信息。
该电子设备中的存储装置620作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例中移动机器人定位方法对应的程序指令/模块(例如,附图5所示的确定模块510和位姿信息确实能够模块520)。处理器610通过运行存储在存储装置620中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例中的移动机器人定位方法。
存储装置620可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储数据等(如上述实施例中的当前帧图像、环境状况信息、定位参考信息以及当前位姿信息等)。此外,存储装置620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置620可进一步包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实施例七
本发明实施例七还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被移动机器人定位装置执行时实现本发明实施提供的一种移动机器人定位方法,包括:获取设置于所述移动机器人上的相机采集的当前帧图像,并基于所述当前帧图像确定所述移动机器人当前所处的环境状况信息;根据所述环境状况信息,获取定位参考信息,并根据所述定位参考信息,确定所述移动机器人的当前位姿信息。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。