一种机器人的任意位置定位方法、装置及系统
技术领域
本申请涉及机器人技术领域,更具体地说,涉及一种机器人的任意位置定位方法、装置及系统。
背景技术
机器人在进行运动时必须通过当前位置判断下一步的移动方向和移动方式。目前,机器人主要是通过基站定位的方式进行全局坐标定位,这种定位方式需要提前对环境进行基站布置,即在机器人的预设活动范围内布置多个作为定位基准的基站,由于需要提前布置基站,因此工作量较大,且运行成本较高。
发明内容
有鉴于此,本申请提供一种机器人的任意位置定位方法、装置及系统,用于对机器人进行定位,以解决现有基站定位工作量较大、运行成本较高的问题。
为了实现上述目的,现提出的方案如下:
一种机器人的任意位置定位方法,包括如下操作:
利用所述预设特征提取算法提取所述机器人所处的所述当前场景的环境拓扑信息的拓扑特征点,作为当前拓扑特征点;
将所述当前拓扑特征点与所述机器人的上一场景或预存的离线场景的环境拓扑信息的拓扑特征点进行特征匹配,得到所述机器人的初定位信息;
利用预设特征提取算法提取所述机器人以当前位姿所处的当前场景的环境地图信息的地图特征点,作为当前地图特征点;
将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并基于所述初定位信息得到所述机器人的准确位置信息。
可选的,所述预设特征提取算法为Harris特征提取算法。
可选的,所述进行特征匹配为利用最小二乘法进行特征匹配。
可选的,所述将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并基于所述初定位信息得到所述机器人的准确位置信息,包括:
将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并基于所述初定位信息与所述机器人的行走里程信息,得到所述机器人的准确位置信息。
可选的,所述将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并基于所述初定位信息与所述机器人的行走里程信息,得到所述机器人的准确位置信息,包括:
根据机器人的行走里程信息判断所述当前场景与所述上一场景或所述离线场景是否为同一场景;
如是同一场景则将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,得到所述机器人的准确位置信息;
如不是同一场景则将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配并基于所述初定位信息,得到所述机器人的准确位置信息。
一种机器人的任意位置定位装置,包括拓扑特征点提取模块、初定位信息计算模块、地图特征点提取模块和特征匹配模块,其中:
所述拓扑特征点提取模块用于利用所述预设特征提取算法提取所述机器人所处的所述当前场景的环境拓扑信息的拓扑特征点,作为当前拓扑特征点;
所述初定位信息及时模块用于将所述当前拓扑特征点与所述机器人的上一场景或预存的离线场景的环境拓扑信息的拓扑特征点进行特征匹配,得到所述机器人的初定位信息;
所述地图特征点提取模块用于利用预设特征提取算法提取所述机器人以当前位姿所处的当前场景的环境地图信息的地图特征点,作为当前地图特征点;
所述特征匹配模块用于将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并基于所述初定位信息得到所述机器人的准确位置信息。
可选的,所述地图特征点提取模块用于利用Harris特征提取算法提取所述地图特征点。
可选的,所述特征匹配模块用于利用最小二乘法进行特征匹配。
可选的,所述特征匹配模块还用于将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点和所述机器人的行走里程信息进行特征匹配,并基于所述初定位信息得到所述准确位置信息。
可选的,还包括场景判断模块,其中:
所述场景判断单元用于根据机器人的行走里程信息判断所述当前场景与所述上一场景或所述离线场景是否为同一场景;
当所述当前场景与所述上一场景或所述离线场景为同一场景时,所述特征匹配模块用于将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,得到所述机器人的准确位置信息;
当所述当前场景与所述上一场景或所述离线场景不为同一场景时,所述特征匹配模块用于将所述当前地图特征点与所述机器人的上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配并基于所述初定位信息,得到所述机器人的准确位置信息。
一种机器人的任意位置定位系统,包括如上所述的任意位置定位装置和距离传感器,其中:
所述距离传感器与所述任意位置定位装置相连接,用于获取所述环境地图信息。
可选的,还包括与所述任意位置定位装置相连接的里程计,其中:
所述里程计用于获取所述机器人的行走里程信息。
可选的,还包括与所述任意位置定位装置相连接的视觉传感器,其中:
所述视觉传感器用于获取所述机器人所处的所述当前场景的环境拓扑信息。
从上述的技术方案可以看出,本申请公开了一种机器人的任意位置定位方法、装置及系统,该方法、装置及系统首先计算该机器人的初定位信息,同时对机器人的所处的当前场景的环境地图信息进行特征点提起,然后将提取的地图特征点与上一场景或离线场景的环境地图信息的地图特征点进行特征匹配,即能够得到该机器人的准确位置信息。本方法、装置及系统无需对环境进行基站定位,因此工作量较小,且运行成本较低。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种机器人的任意位置定位方法的流程图;
图2为本申请另一实施例提供的一种机器人的任意位置定位方法的流程图;
图3为本申请又一实施例提供的一种机器人的任意位置定位装置的示意图;
图4为本申请又一实施例提供的一种机器人的任意位置定位装置的示意图;
图5为本申请又一实施例提供的一种机器人的任意位置定位系统的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
实施例一
图1为本申请实施例提供的一种机器人的任意位置定位方法的流程图。
如图1所示,本实施例提供的任意位置定位方法包括如下步骤。
S101:提取当前场景的当前拓扑特征点。
本步骤为通过相应的传感器获取该机器人以当前位姿所处的当前场景下的环境拓扑信息,然后对获取的环境拓扑信息的特征点提取,将该特征点作为当前拓扑特征点,即通过预设特征提取算法提取该环境拓扑信息的拓扑特征点。该预设特征提取算法为Harris特征提取算法。
S102:根据当前拓扑特征点计算初定位信息。
在得到环境拓扑信息的拓扑特征点后,将该拓扑特征点与上一场景或预存的离线场景的环境拓扑信息的拓扑特征点进行特征匹配,根据匹配结果得到该机器人的初定位信息。所谓环境拓扑信息是利用视觉传感器获取的该机器人周边的图像信息。同样,上面所提到的特征匹配是通过最小二乘法进行特征匹配。
S103:提取当前场景的地图特征点。
当机器人在某个空间内运行时,一般活动范围不会太大,基本上就在一个划定范围、例如一个房间内进行活动,因此其活动的边界是较为固定的,此时如果能够得到其相对于该划定范围的边界的移动距离就能够对其自身进行定位。
本申请的技术方案首先通过相应的传感器获取该机器人以当前位姿所处的当前场景下的环境地图信息,然后对获取的环境地图信息的特征点提取,即通过预设特征提取算法提取该环境地图信息的地图特征点。
优选的,该预设特征提取算法为harris特征提取算法。
S104:根据地图特征点计算准确位置信息。
在得到环境地图信息的地图特征点后,将该地图特征点与上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,同时根据上述初定位信息得到该机器人的准确位置信息。所谓环境地图信息是利用距离传感器获取的该机器人相对于周边的距离信息。
上一场景为相对于当前场景的上一刻的场景,具体讲为相对于本次定位的上一次定位时所采集到环境地图信息所针对的场景;而预存的离线场景是本次定位为开机后的第一次定位时,对上一次关机时最后一次定位时采集到的环境地图信息所针对的场景,还可以是预先通过其他手段采集到的本场景的环境地图信息。
优选的,上面所提到的特征匹配是通过最小二乘法进行特征匹配。
从上述技术方案可以看出,本实施例提供了一种机器人的任意位置定位方法,该方法首先计算该机器人的初定位信息,同时对机器人的所处的当前场景的环境地图信息进行特征点提起,然后将提取的地图特征点与上一场景或离线场景的环境地图信息的地图特征点进行特征匹配,即能够得到该机器人的准确位置信息。本方法无需对环境进行基站定位,因此工作量较小,且运行成本较低。
优选的,上述技术方案中在进行特征匹配以得到机器人的准确位置信息时,还可以将利用里程计获得的机器人的行走里程信息一并进行特征匹配,从而能够得到更为精确的准确位置信息。
实施例二
图2为本申请另一实施例提供的一种机器人的任意位置定位方法的流程图。
在上一实施例中提到机器人一般活动范围不会太大,但是一旦在较大范围移动超出该划定范围的边界后,本定位方法的精度可能就会较差,因此本实施例对上一实施例进行了局部改进,完整的流程如图2所示。
S201:提取当前场景的当前拓扑特征点。
本步骤为通过相应的传感器获取该机器人以当前位姿所处的当前场景下的环境拓扑信息,然后对获取的环境拓扑信息的特征点提取,将该特征点作为当前拓扑特征点,即通过预设特征提取算法提取该环境拓扑信息的拓扑特征点。该预设特征提取算法为Harris特征提取算法。
S202:根据当前拓扑特征点计算初定位信息。
在得到环境拓扑信息的当前拓扑特征点后,将该拓扑特征点与上一场景或预存的离线场景的环境拓扑信息的拓扑特征点进行特征匹配,根据匹配结果得到该机器人的初定位信息。所谓环境拓扑信息是利用视觉传感器获取的该机器人周边的图像信息。同样,上面所提到的特征匹配是通过最小二乘法进行特征匹配。
S203:提取当前场景的地图特征点。
当机器人在某个空间内运行时,一般活动范围不会太大,基本上就在一个划定范围、例如一个房间内进行活动,因此其活动的边界是较为固定的,此时如果能够得到其相对于该划定范围的边界的移动距离就能够对其自身进行定位。
本申请的技术方案首先通过相应的传感器获取该机器人以当前位姿所处的当前场景下的环境地图信息,然后对获取的环境地图信息的特征点提取,即通过预设特征提取算法提取该环境地图信息的地图特征点。
优选的,该预设特征提取算法为Harris特征提取算法。
S204:判断当前场景与上一场景或离线场景是否为同一场景。
为了判断机器人是否走出了划定范围,通过里程计获取的机器人的行走里程信息判断当前场景是否与上一场景或者离线场景是否为同一场景,如果是同一场景则执行步骤S205;如果不是同一场景,说明机器人走出了划定范围,则执行步骤S206。
S205:根据地图特征点计算准确位置信息。
在得到环境地图信息的地图特征点后,将该地图特征点与上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并根据行走里程信息得到该机器人的准确位置信息。此时无需借助初定位信息对准确位置信息进行计算,因此能够节省运算资源。所谓环境地图信息是利用距离传感器获取的该机器人相对于周边的距离信息。上一场景为相对于当前场景的上一刻的场景,具体讲为相对于本次定位的上一次定位时所采集到环境地图信息所针对的场景;而预存的离线场景是本次定位为开机后的第一次定位时,对上一次关机时最后一次定位时采集到的环境地图信息所针对的场景;另外还可以是预先通过其他手段采集到的本场景的环境地图信息。
优选的,上面所提到的特征匹配是通过最小二乘法进行特征匹配。
206:根据地图特征点和行走里程信息计算准确位置信息。
即在判断出当前场景与上一场景或者离线场景不是同一场景的情况下,将环境地图信息的地图特征点与上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并基于上述的初定位信息和行走里程信息得到该机器人的准确位置信息。所谓环境地图信息是利用距离传感器获取的该机器人相对于周边的距离信息。
实施例三
图3为本申请又一实施例提供的一种机器人的任意位置定位装置的示意图。
如图3所示,本实施例提供的任意位置定位装置包括拓扑特征点提取模块10、初定位信息计算模块20、地图特征点提取模块30和特征匹配模块40。
拓扑特征点提取模块10用于提取当前场景的当前拓扑特征点。
即对通过相应的传感器获取该机器人以当前位姿所处的当前场景下的环境拓扑信息环境拓扑信息的特征点进行提取,将该特征点作为当前拓扑特征点,即通过预设特征提取算法提取该环境拓扑信息的拓扑特征点。该预设特征提取算法为Harris特征提取算法。
初定位信息计算模块20用于根据拓扑特征点计算初定位信息。
在拓扑特征点提取模块10得到环境拓扑信息的当拓扑特征点后,将该当前拓扑特征点与上一场景或预存的离线场景的环境拓扑信息的拓扑特征点进行特征匹配,根据匹配结果得到该机器人的初定位信息。所谓环境拓扑信息是利用视觉传感器获取的该机器人周边的图像信息。同样,上面所提到的特征匹配是通过最小二乘法进行特征匹配。
地图特征点提取模块30用于提取当前场景的地图特征点。
当机器人在某个空间内运行时,一般活动范围不会太大,基本上就在一个划定范围、例如一个房间内进行活动,因此其活动的边界是较为固定的,此时如果能够得到其相对于该划定范围的边界的移动距离就能够对其自身进行定位。
本地图特征点提取模块30即用于对通过相应的传感器获取的该机器人以当前位姿所处的当前场景下的环境地图信息进行特征点提取,即通过预设特征提取算法提取该环境地图信息的地图特征点。
优选的,该地图特征点提取模块30利用Harris特征提取算法进行特征点提取的操作。
特征匹配模块40用于根据地图特征点和初定位信息计算准确位置信息。
在得到环境地图信息的地图特征点后,特征匹配模块40将该地图特征点与上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并同时根据初定位信息计算模块20得到的初定位信息得到该机器人的准确位置信息。所谓环境地图信息是利用距离传感器获取的该机器人相对于周边的距离信息。
上一场景为相对于当前场景的上一刻的场景,具体讲为相对于本次定位的上一次定位时所采集到环境地图信息所针对的场景;而预存的离线场景是本次定位为开机后的第一次定位时,对上一次关机时最后一次定位时采集到的环境地图信息所针对的场景;另外还可以是预先通过其他手段采集到的本场景的环境地图信息。
优选的,特征匹配模块40利用最小二乘法进行特征匹配。
从上述技术方案可以看出,本实施例提供了一种机器人的任意位置定位装置,该装置首先利用拓扑特征点提取模块和初定位信息计算模块计算该机器人的初定位信息,同时利用地图特征提取模块对机器人的所处的当前场景的环境地图信息进行特征点提起,然后利用特征匹配模块将提取的地图特征点与上一场景或离线场景的环境地图信息的地图特征点进行特征匹配,即能够得到该机器人的准确位置信息。本装置无需对环境进行基站定位,因此工作量较小,且运行成本较低。
优选的,上述技术方案中在进行特征匹配以得到机器人的准确位置信息时,还可以将利用里程计获得的机器人的行走里程信息一并进行特征匹配,从而能够得到更为精确的准确位置信息。
实施例四
图4为本申请又一实施例提供的一种机器人的任意位置定位装置的示意图。
如图4所示,上一实施例中提到机器人一般活动范围不会太大,但是一旦在较大范围移动超出该划定范围的边界后,本定位方法的精度可能就会较差,因此本实施例对上一实施例进行了局部改进,增设了场景判断模块50。
场景判断模块50用于判断当前场景与上一场景或离线场景是否为同一场景。
为了判断机器人是否走出了划定范围,场景判断模块50根据通过里程计获取的机器人的行走里程信息进行判断,即判断当前场景与上一场景或者离线场景是否为同一场景,如果是同一场景输出第一匹配信号,如果不是同一场景,说明机器人走出了划定范围,则输出第二匹配信号。
在这里,特征匹配模块40根据第一匹配信号将该地图特征点与上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并同时根据机器人的里程计获取的行走里程信息得到该机器人的准确位置信息。所谓环境地图信息是利用距离传感器获取的该机器人相对于周边的距离信息。
或者,特征匹配模块40根据第二匹配信号将该地图特征点与上一场景或预存的离线场景的环境地图信息的地图特征点进行特征匹配,并同时根据初定位信息计算模块20得到的初定位信息和机器人的行走里程信息得到该机器人的准确位置信息。
实施例五
图5为本申请又一实施例提供的一种机器人的任意位置定位系统的示意图。
如图5所示,本实施例提供的任意位置定位系统包括上面实施例提供的任意位置定位装置100和距离传感器101。
距离传感器101与任意位置定位装置100相连接,用于对机器人在当前位姿下的当前环境的环境地图信息进行获取,然后输出到任意位置定位装置100,由该装置计算机器人的准确位置信息,从而完成定位。
进一步地,本系统还包括分别与任意位置定位装置100相连接的里程计102和视觉传感器103。
里程计102用于获取机器人的行走里程信息,以使任意位置定位装置100能够根据该行走里程信息对当前场景的变化进行判断。视觉传感器103用于获取该机器人在当前位姿下所处的所述当前场景的环境拓扑信息,当机器人走出划定范围后,利用根据该拓扑环境信息得到的初定位信息可以对该准确位置信息进行精度修正,从而避免位置的误判。
从上述技术方案可以看出,本申请提供机器人的任意位置定位系统利用距离传感器、里程计和视觉传感器获取相关的信息,然后在对相关的信息进行处理即可对机器人进行定位,无需在环境设置多个基站,因此就运行成本来说要低得多,能够取得很好的经济效益。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。