一种机器人的定位方法、装置、机器人及存储介质
技术领域
本发明实施例涉及定位技术领域,具体涉及一种机器人的定位方法、装置、机器人及存储介质。
背景技术
随着人工智能技术的发展,与人工智能技术相关联的机器人技术也得到了大力发展。随着机器人技术的发展,现在的机器人不仅包括能够帮助用户扫地的扫地机器人,还包括能够与幼儿互动的育儿机器人,除此之外,机器人的种类和功能繁多,不仅减轻了用户繁重的劳动,还能够与用户互动,给用户带来了快乐体验。
机器人除了在与用户互动的过程中展示出来的各种常用功能,例如,语音识别、人脸识别之外,还包括定位功能。如果不能实现对机器人的准确定位,则无法为机器人规划相应的路径,这样,机器人,尤其是扫地机器人就无法做到对室内障碍物的躲避,会碰撞到室内的其它障碍物。
现有的定位技术不适合室内机器人的定位,现有的室内定位技术的定位精度较差,无法做到对机器人的精准定位,这样,室内机器人无法有效地躲避室内的障碍物,会碰撞到室内的其它障碍物。
如何提高现有技术中机器人的定位精度,是待解决的技术问题。
发明内容
为此,本发明实施例提供一种机器人的定位方法、装置、机器人及存储介质,以解决现有技术中机器人无法实现精准定位的问题。
为了实现上述目的,本发明实施例提供如下技术方案:
在本发明的实施方式的第一方面中,提供了一种机器人的定位方法,所述方法包括:获取在机器人移动过程中设置于底盘中的第一检测子装置检测到的第一组位移数据、惯性测量单元检测到的第二组位移数据、设置于视觉即时定位与地图构建装置中的第二检测子装置检测到的第三组位移数据;根据预设的数据修正模型,分别对各组位移数据进行修正,得到相应的各组修正后的数据,并将相应的各组修正后的位移数据传输至处理器,其中,各组修正后的数据包括修正后的第一组位移数据、修正后的第二组位移数据和修正后的第三组位移数据;根据预设的数据融合模型,所述处理器对各组修正后的数据进行数据融合的数据处理,得到相应的融合数据;根据预设的定位模型,所述处理器对所述融合数据进行处理,得到相应的跟踪路径信息,并根据所述跟踪路径信息对所述机器人进行定位,得到所述机器人的定位信息。
在本发明的另一实施例中,所述方法还包括:获取所述机器人启动时对应的初始信息,其中,所述初始信息至少包括以下一项:所述机器人启动时对应的初始位置信息,所述机器人启动时对应的绕x轴的第一初始角度信息、所述机器人启动时对应的绕y轴的第二初始角度信息、所述机器人启动时对应的绕z轴的第三初始角度信息。
在本发明的另一实施例中,所述第一组位移数据包括:所述第一检测子装置检测到的所述机器人沿x坐标轴方向的第一移动自由度数据、所述第一检测子装置检测到的所述机器人沿y坐标轴方向的第二移动自由度数据、所述第一检测子装置检测到的所述机器人沿z坐标轴方向的第三移动自由度数据、所述第一检测子装置检测到的所述机器人绕x坐标轴的第一转动自由度数据、所述第一检测子装置检测到的所述机器人绕y坐标轴的第二转动自由度数据、所述第一检测子装置检测到的所述机器人绕z坐标轴的第三转动自由度数据。
在本发明的又一实施例中,所述第二组位移数据包括:所述惯性测量单元检测到的所述机器人沿x坐标轴方向的第四移动自由度数据、所述惯性测量单元检测到的所述机器人沿y坐标轴方向的第五移动自由度数据、所述惯性测量单元检测到的所述机器人沿z坐标轴方向的第六移动自由度数据、所述惯性测量单元检测到的所述机器人绕x坐标轴的第四转动自由度数据、所述惯性测量单元检测到的所述机器人绕y坐标轴的第五转动自由度数据、所述惯性测量单元检测到的所述机器人绕z坐标轴的第六转动自由度数据。
在本发明的再一实施例中,所述第三组位移数据包括:所述第二检测子装置检测到的所述机器人沿x坐标轴方向的第七移动自由度数据、所述第二检测子装置检测到的所述机器人沿y坐标轴方向的第八移动自由度数据、所述第二检测子装置检测到的所述机器人沿z坐标轴方向的第九移动自由度数据、所述第二检测子装置检测到的所述机器人绕x坐标轴的第七转动自由度数据、所述第二检测子装置检测到的所述机器人绕y坐标轴的第八转动自由度数据、所述第二检测子装置检测到的所述机器人绕z坐标轴的第九转动自由度数据。
在本发明的实施方式的第二方面中,提供了一种机器人的定位装置,所述装置包括:获取模块,获取在机器人移动过程中设置于底盘中的第一检测子装置检测到的第一组位移数据、惯性测量单元检测到的第二组位移数据、设置于视觉即时定位与地图构建装置中的第二检测子装置检测到的第三组位移数据;处理模块,根据预设的数据修正模型,分别对所述获取模块获取到的各组位移数据进行修正,得到相应的各组修正后的数据,并将相应的各组修正后的位移数据传输至处理器,其中,各组修正后的数据包括修正后的第一组位移数据、修正后的第二组位移数据和修正后的第三组位移数据;融合模块,根据预设的数据融合模型,所述处理器对所述处理模块处理得到的各组修正后的数据进行数据融合的数据处理,得到相应的融合数据;定位模块,根据预设的定位模型,所述处理器对所述融合模块处理得到的所述融合数据进行处理,得到相应的跟踪路径信息,并根据所述跟踪路径信息对所述机器人进行定位,得到所述机器人的定位信息。
在本发明的另一实施例中,所述获取模块还用于:获取所述机器人启动时对应的初始信息,其中,所述获取模块获取到的所述初始信息至少包括以下一项:所述机器人启动时对应的初始位置信息,所述机器人启动时对应的绕x轴的第一初始角度信息、所述机器人启动时对应的绕y轴的第二初始角度信息、所述机器人启动时对应的绕z轴的第三初始角度信息。
在本发明的又一实施例中,所述获取模块获取到的所述第一组位移数据包括:所述第一检测子装置检测到的所述机器人沿x坐标轴方向的第一移动自由度数据、所述第一检测子装置检测到的所述机器人沿y坐标轴方向的第二移动自由度数据、所述第一检测子装置检测到的所述机器人沿z坐标轴方向的第三移动自由度数据、所述第一检测子装置检测到的所述机器人绕x坐标轴的第一转动自由度数据、所述第一检测子装置检测到的所述机器人绕y坐标轴的第二转动自由度数据、所述第一检测子装置检测到的所述机器人绕z坐标轴的第三转动自由度数据。
在本发明的实施方式的第三方面中,提供了一种机器人,所述机器人包括存储器、处理器及视觉即时定位与地图构建装置中的图像采集子装置;所述图像采集子装置,用于获取当前所在位置对应的图像;所述存储器,用于存储可执行的计算机程序;所述处理器,用于根据所述图像采集自装置获取的当前所在位置对应的图像,通过调用并执行所述存储器中存储的可执行的计算机程序,以实现如上所述的机器人的定位方法。
在本发明的实施方式的第四方面中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
本发明实施例具有如下优点:本发明实施例提供的一种机器人的定位方法、装置、机器人及存储介质,能够实现对机器人的精准定位。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
图1为本发明实施例1提供的一种机器人的定位方法的流程示意图;
图2为本发明实施例2提供的一种机器人的定位装置的结构示意图;
图中:201-获取模块;202-处理模块;203-融合模块;204-定位模块。
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
根据本发明的实施例1,提供了一种机器人的定位方法,如图1所示,为本发明实施例1提供的一种机器人的定位方法的流程示意图。该方法至少包括以下步骤:
S101,获取在机器人移动过程中设置于底盘中的第一检测子装置检测到的第一组位移数据、惯性测量单元检测到的第二组位移数据、设置于视觉即时定位与地图构建装置中的第二检测子装置检测到的第三组位移数据;
需要说明的是,在步骤101中,视觉即时定位与地图构建装置包括图像采集子装置,其中,图像采集子装置,用于获取当前所在位置对应的图像。在实际应用中,图像采集子装置可以为单目摄像头,图像采集子装置也可以为双目摄像头。
S102,根据预设的数据修正模型,分别对各组位移数据进行修正,得到相应的各组修正后的数据,并将相应的各组修正后的位移数据传输至处理器,其中,各组修正后的数据包括修正后的第一组位移数据、修正后的第二组位移数据和修正后的第三组位移数据;
需要说明的是,在步骤102中,预设的数据修正模型是根据常规算法建立起来的数据修正模型,该预设的数据修正模型以及该修正模型对应的算法均是常规的技术,在此不再赘述。
在实际应用中,根据预设的数据修正模型,分别对各组位移数据进行修正,根据自身的准确程度,分别给出对应的协方差数据,其中,数据可信度越高,对应的协方差数值越小;反之,数据可信度越差,对应的协方差数值越大。
S103,根据预设的数据融合模型,处理器对各组修正后的数据进行数据融合的数据处理,得到相应的融合数据;
需要说明的是,在步骤103中,预设的数据融合模型是根据常规算法建立起来的预设的数据融合模型,该预设的数据融合模型以及该数据融合模型对应的算法均是常规的技术,在此不再赘述。
在实际应用中,根据预设的数据融合模型,对各组位移数据进行数据融合处理,通过协方差进行数据处理,得到相应的融合数据。
S104,根据预设的定位模型,处理器对融合数据进行处理,得到相应的跟踪路径信息,并根据跟踪路径信息对机器人进行定位,得到机器人的定位信息;这样,通过本发明实施例1提供的方案,能够做到:实现对机器人的精准定位。
需要说明的是,在步骤104中,预设的定位模型是根据常规算法建立起来的预设的定位模型,该预设的定位模型以及该定位模型对应的算法均是常规的技术,在此不再赘述。
需要说明的是,本发明实施例1提供的一种机器人的定位方法,能够做到:解决现有技术中存在的机器人绑架问题。
机器人绑架问题是指:在缺少机器人之前的位置信息情况下,去确定机器人的当前位姿,例如,当机器人被安置在一个已经构建好地图的环境中,但是并不知道该机器人在地图中的相对位置,或者在移动过程中,由于传感器的暂时性功能障碍或相机的快速移动,都导致该机器人先前的位置信息的丢失。
本发明实施例1提供的一种机器人的定位方法采用是紧耦合算法,该算法根据多个传感器采集到的数据,根据预设的算法,计算出相应的位姿。现有技术中涉及到的算法为:对多个传感器采集到的数据进行某种加减乘除、或求平均、加权平均等类似的计算,以得到一个新的位姿。而在本发明实施例1提供的技术方案中,预设的算法不同于现有技术的算法,预设的算法中,对多个传感器采集到的数据引入了对采集到的数据进行协方差数据处理,以得到一个新的位姿,这样,最终得到的机器人定位信息更加精准,避免了室内机器人可能会碰撞到室内障碍物的可能性。
需要说明的是,本发明实施例1提供的方案中的位姿是指6自由度的位置数据,包括x方向上的平移数据、y方向上的平移数据、z方向上的平移数据、绕x轴的旋转角度数据、绕y轴的旋转角度数据、绕z轴的旋转角度数据。
在实际应用中,当机器人被抱起来后,底盘的位姿变化为0,惯性测量单元的旋转位姿数据较准确,而视觉即时定位与地图构建装置对应的位移数据和旋转位姿数据较准确,这样,根据该机器人对应的惯性测量单元的旋转位姿数据、视觉即时定位与地图构建装置对应的位移数据和视觉即时定位与地图构建装置对应的旋转位姿数据,以及紧耦合的融合算法,得出该机器人的位姿移动信息。
在一个可选的例子中,所述方法还包括:获取机器人启动时对应的初始信息,其中,初始信息至少包括以下一项:机器人启动时对应的初始位置信息,机器人启动时对应的绕x轴的第一初始角度信息、机器人启动时对应的绕y轴的第二初始角度信息、机器人启动时对应的绕z轴的第三初始角度信息。
在一个可选的例子中,第一组位移数据包括:第一检测子装置检测到的机器人沿x坐标轴方向的第一移动自由度数据、第一检测子装置检测到的机器人沿y坐标轴方向的第二移动自由度数据、第一检测子装置检测到的机器人沿z坐标轴方向的第三移动自由度数据、第一检测子装置检测到的机器人绕x坐标轴的第一转动自由度数据、第一检测子装置检测到的机器人绕y坐标轴的第二转动自由度数据、第一检测子装置检测到的机器人绕z坐标轴的第三转动自由度数据。
在一个可选的例子中,第二组位移数据包括:惯性测量单元检测到的机器人沿x坐标轴方向的第四移动自由度数据、惯性测量单元检测到的机器人沿y坐标轴方向的第五移动自由度数据、惯性测量单元检测到的机器人沿z坐标轴方向的第六移动自由度数据、惯性测量单元检测到的机器人绕x坐标轴的第四转动自由度数据、惯性测量单元检测到的机器人绕y坐标轴的第五转动自由度数据、惯性测量单元检测到的机器人绕z坐标轴的第六转动自由度数据。
在一个可选的例子中,第三组位移数据包括:第二检测子装置检测到的机器人沿x坐标轴方向的第七移动自由度数据、第二检测子装置检测到的机器人沿y坐标轴方向的第八移动自由度数据、第二检测子装置检测到的机器人沿z坐标轴方向的第九移动自由度数据、第二检测子装置检测到的机器人绕x坐标轴的第七转动自由度数据、第二检测子装置检测到的机器人绕y坐标轴的第八转动自由度数据、第二检测子装置检测到的机器人绕z坐标轴的第九转动自由度数据。
综上所述,本发明实施例1提供的一种机器人的定位方法,具有以下有益效果:实现对机器人的精准定位。
实施例2
根据本发明的实施例2,还提供了一种机器人的定位装置,如图2所示,为本发明实施例2提供的一种机器人的定位装置的结构示意图。
本发明实施例2提供的一种机器人的定位装置包括获取模块201、处理模块202、融合模块203和定位模块204。
具体而言,获取模块201,获取在机器人移动过程中设置于底盘中的第一检测子装置检测到的第一组位移数据、惯性测量单元检测到的第二组位移数据、设置于视觉即时定位与地图构建装置中的第二检测子装置检测到的第三组位移数据;
处理模块202,根据预设的数据修正模型,分别对获取模块201获取到的各组位移数据进行修正,得到相应的各组修正后的数据,并将相应的各组修正后的位移数据传输至处理器,其中,各组修正后的数据包括修正后的第一组位移数据、修正后的第二组位移数据和修正后的第三组位移数据;
融合模块203,根据预设的数据融合模型,处理器对处理模块202处理得到的各组修正后的数据进行数据融合的数据处理,得到相应的融合数据;
定位模块204,根据预设的定位模型,处理器对融合模块203处理得到的融合数据进行处理,得到相应的跟踪路径信息,并根据跟踪路径信息对机器人进行定位,得到机器人的定位信息。
在一个可选的例子中,获取模块201还用于:获取机器人启动时对应的初始信息,其中,获取模块201获取到的初始信息至少包括以下一项:机器人启动时对应的初始位置信息,机器人启动时对应的绕x轴的第一初始角度信息、机器人启动时对应的绕y轴的第二初始角度信息、机器人启动时对应的绕z轴的第三初始角度信息。
在一个可选的例子中,获取模块201获取到的第一组位移数据包括:第一检测子装置检测到的机器人沿x坐标轴方向的第一移动自由度数据、第一检测子装置检测到的机器人沿y坐标轴方向的第二移动自由度数据、第一检测子装置检测到的机器人沿z坐标轴方向的第三移动自由度数据、第一检测子装置检测到的机器人绕x坐标轴的第一转动自由度数据、第一检测子装置检测到的机器人绕y坐标轴的第二转动自由度数据、第一检测子装置检测到的机器人绕z坐标轴的第三转动自由度数据。
本发明实施例2提供的方案中的部分内容与本发明实施例1提供的方案中的部分内容相同或相似的部分,烦请参见针对本发明实施例1的相应部分的描述,在此不再赘述。
综上所述,本发明实施例2提供的一种机器人的定位装置,具有以下有益效果:能够实现对机器人的精准定位。
实施例3
根据本发明的实施例3,还提供了一种机器人,所述机器人包括存储器、处理器及视觉即时定位与地图构建装置中的图像采集子装置;图像采集子装置,用于获取当前所在位置对应的图像;存储器,用于存储可执行的计算机程序;处理器,用于根据图像采集自装置获取的当前所在位置对应的图像,通过调用并执行存储器中存储的可执行的计算机程序,以实现如下所述的机器人的定位方法:获取在机器人移动过程中设置于底盘中的第一检测子装置检测到的第一组位移数据、惯性测量单元检测到的第二组位移数据、设置于视觉即时定位与地图构建装置中的第二检测子装置检测到的第三组位移数据;根据预设的数据修正模型,分别对各组位移数据进行修正,得到相应的各组修正后的数据,并将相应的各组修正后的位移数据传输至处理器,其中,各组修正后的数据包括修正后的第一组位移数据、修正后的第二组位移数据和修正后的第三组位移数据;根据预设的数据融合模型,处理器对各组修正后的数据进行数据融合的数据处理,得到相应的融合数据;根据预设的定位模型,处理器对融合数据进行处理,得到相应的跟踪路径信息,并根据跟踪路径信息对机器人进行定位,得到机器人的定位信息。
本发明实施例3提供的方案中的部分内容与本发明实施例1提供的方案中的部分内容相同或相似的部分,烦请参见针对本发明实施例1的相应部分的描述,在此不再赘述。
综上所述,本发明实施例3提供的一种机器人,具有以下有益效果:能够实现对机器人的精准定位。
实施例4
根据本发明的实施例4,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法的步骤:获取在机器人移动过程中设置于底盘中的第一检测子装置检测到的第一组位移数据、惯性测量单元检测到的第二组位移数据、设置于视觉即时定位与地图构建装置中的第二检测子装置检测到的第三组位移数据;根据预设的数据修正模型,分别对各组位移数据进行修正,得到相应的各组修正后的数据,并将相应的各组修正后的位移数据传输至处理器,其中,各组修正后的数据包括修正后的第一组位移数据、修正后的第二组位移数据和修正后的第三组位移数据;根据预设的数据融合模型,处理器对各组修正后的数据进行数据融合的数据处理,得到相应的融合数据;根据预设的定位模型,处理器对融合数据进行处理,得到相应的跟踪路径信息,并根据跟踪路径信息对机器人进行定位,得到机器人的定位信息。
本发明实施例4提供的方案中的部分内容与本发明实施例1提供的方案中的部分内容相同或相似的部分,烦请参见针对本发明实施例1的相应部分的描述,在此不再赘述。
综上所述,本发明实施例4提供的一种计算机可读存储介质,具有以下有益效果:能够实现对机器人的精准定位。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。