掌桥专利:专业的专利平台
掌桥专利
首页

一种机器人自主重定位方法、装置、机器人及存储介质

文献发布时间:2023-06-19 12:02:28


一种机器人自主重定位方法、装置、机器人及存储介质

技术领域

本发明涉及机器人领域,特别涉及一种机器人自主重定位方法、装置、机器人及存储介质。

背景技术

随着机器人技术的不断发展,可自主移动的机器人已在工业、服务业等领域中得到了广泛的应用。这些机器人可利用内建地图数据进行导航移动,但是导航移动需要建立在机器人实际位置及姿态与内建地图数据对齐的基础上,同时在实际应用中,机器人可能存在重启的情况,因此如何在机器人重启时进行机器人的重定位是机器人领域的重要技术问题。

相关技术中,为了在机器人重启时进行重定位,通常会要求机器人在固定位置进行重启,或是通过人工方式在内建地图中设置初始位姿,上述方式不仅为用户使用机器人带来麻烦,同时当机器人遭遇意外重启将无法确定重启位置,进而为机器人的运行带来障碍。

发明内容

本发明的目的是提供一种机器人自主重定位方法、装置、机器人及存储介质,可利用机器人在当前位置采集的深度视觉图像及激光扫描数据进行重定位,进而确保机器人在任意位置自主重定位的可靠性及准确性,提升用户使用体验。

为解决上述技术问题,本发明提供一种机器人自主重定位方法,包括:

获取融合地图及当前位置的深度视觉图像和激光扫描数据;其中,所述融合地图由视觉地图、视觉词袋和激光栅格地图生成;

利用所述深度视觉图像在所述融合地图中进行匹配,确定机器人在所述融合地图中匹配度最大的初始位姿;

当所述匹配度大于等于预设阈值时,利用所述初始位姿及所述激光扫描数据确定所述机器人在所述融合地图中的精确位姿;

当所述匹配度小于所述预设阈值时,控制所述机器人运动至下一位置,直至所述下一位置匹配到的初始位姿对应的匹配度大于等于所述预设阈值时,利用所述下一位置的初始位姿及所述激光扫描数据确定所述精确位姿。

可选地,所述控制所述机器人运动至下一位置,包括:

控制所述机器人按照预设模式进行运动,并在运动过程中确定预设数量的候选位置;所述预设模式包括旋转和平移;

将所述候选位置的初始位姿设置为第一候选位姿,并将匹配度最大的第一候选位姿对应的候选位置设置为所述下一位置;

按照所述预设模式控制所述机器人运动至所述下一位置。

可选地,所述利用所述初始位姿及所述激光扫描数据确定所述机器人在所述融合地图中的精确位姿,包括:

根据所述初始位姿的位置在所述融合地图中生成初始区域;

利用所述激光扫描数据在所述初始区域中进行匹配,确定所述精确位姿。

可选地,所述利用所述激光扫描数据在所述初始区域中进行匹配,确定所述精确位姿,包括:

对所述初始区域进行降采样,得到低精度栅格图;

利用所述激光扫描数据在所述低精度栅格图中进行匹配,得到第二候选位姿;

在所述融合地图中,对所述激光扫描数据与所述第二候选位姿进行匹配,得到所述精确位姿。

可选地,在利用所述激光扫描数据在所述初始区域中进行匹配之后,还包括:

当匹配失败时,对所述初始区域进行调整,并利用调整后的初始区域执行所述利用所述激光扫描数据在所述初始区域中进行匹配的步骤。

可选地,所述利用所述深度视觉图像在所述融合地图中进行匹配,确定机器人在所述融合地图中匹配度最大的初始位姿,包括:

提取所述深度视觉图像中的ORB特征点,并将所述ORB特征点输入所述融合地图的视觉词袋进行匹配,得到所述深度视觉图像在所述融合地图中对应的候选图像;

将所述深度视觉图像中的ORB特征点与所述候选图像的ORB特征点进行匹配,得到ORB特征点对,并将所述ORB特征点对输入RANSAC算法中进行处理,去除匹配错误的ORB特征点对;

确定完成处理的ORB特征点对的点对数量,并利用所述点对数量及深度视觉图像中的ORB特征点的数量计算所述匹配度;

将所述匹配度最大的候选图像作为匹配图像,将所述匹配图像及所述深度视觉图像输入PNP算法进行计算,得到所述初始位姿。

可选地,所述融合地图的生成过程,包括:

获取当前采集位置的深度图像、可见光图像及待处理激光扫描数据;

提取所述可见光图像的ORB特征点,并利用所述可见光图像的ORB特征点更新所述视觉词袋;

将所述可见光图像及上一采集位置的历史可见光图像输入g2o图优化模型中,得到所述机器人的视觉位姿;

利用所述待处理激光扫描数据更新所述激光栅格地图,并利用所述待处理激光扫描数据在更新后的激光栅格地图中进行激光定位,得到所述机器人的激光位姿;

将所述视觉位姿及所述激光位姿输入EKF模型中,得到所述机器人的当前位姿;

将所述当前位姿与所述可见光图像、所述可见光图像的ORB特征点及所述深度图像建立绑定关系,并利用所述绑定关系更新所述视觉地图;

利用更新后的视觉词袋、激光栅格地图及视觉地图更新所述融合地图。

本发明还提供一种机器人自主重定位装置,包括:

获取模块,用于获取融合地图及当前位置的深度视觉图像和激光扫描数据;其中,所述融合地图由视觉地图、视觉词袋和激光栅格地图生成;

第一匹配模块,用于利用所述深度视觉图像在所述融合地图中进行匹配,确定机器人在所述融合地图中匹配度最大的初始位姿;

第二匹配模块,用于当所述匹配度大于等于预设阈值时,利用所述初始位姿及所述激光扫描数据确定所述机器人在所述融合地图中的精确位姿;

运动控制模块,用于当所述匹配度小于所述预设阈值时,控制所述机器人运动至下一位置,直至所述下一位置匹配到的初始位姿对应的匹配度大于等于所述预设阈值时,利用所述下一位置的初始位姿及所述激光扫描数据确定所述精确位姿。

本发明还提供一种机器人,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上述所述的机器人自主重定位方法的步骤。

本发明还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的机器人自主重定位方法的步骤。

本发明提供一种机器人自主重定位方法,包括:获取融合地图及当前位置的深度视觉图像和激光扫描数据;其中,所述融合地图由视觉地图、视觉词袋和激光栅格地图生成;利用所述深度视觉图像在所述融合地图中进行匹配,确定机器人在所述融合地图中匹配度最大的初始位姿;当所述匹配度大于等于预设阈值时,利用所述初始位姿及所述激光扫描数据确定所述机器人在所述融合地图中的精确位姿;当所述匹配度小于所述预设阈值时,控制所述机器人运动至下一位置,直至所述下一位置匹配到的初始位姿对应的匹配度大于等于所述预设阈值时,利用所述下一位置的初始位姿及所述激光扫描数据确定所述精确位姿。

可见,本方法首先利用机器人在当前位置采集到的深度视觉图像在融合地图中进行匹配以确定初始位姿,由于融合地图带有视觉地图及视觉词袋的特征信息,因此本方法可通过对深度视觉图像与融合地图进行图像匹配的方式,确定机器人的初始位姿;本方法进一步使用激光扫描数据及初始位姿确定机器人的精确位姿,由于融合地图也带有激光栅格地图的特征信息,同时激光扫描数据匹配精度比深度视觉图像更高,因此本方法可利用激光扫描数据及初始位姿提升机器人重定位精度;最后,当机器人遭遇初始位姿匹配失败时,即初始位姿的匹配度小于预设阈值时,本方法还会自主控制机器人进行运动,以获取更高匹配度的初始位姿,进而确保机器人在任意位置自主重定位的可靠性及准确性,无需在固定位置重启或是人工设置,可有效避免相关技术中由固定位置重启或是人工设置对机器人重定位造成的不便,进而提升用户使用体验。本发明还提供一种机器人自主重定位装置、机器人及存储介质,具有上述有益效果。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例所提供的一种机器人自主重定位方法的流程图;

图2为本发明实施例所提供的一种机器人自主重定位装置的结构框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

相关技术中,为了在机器人重启时进行重定位,通常会要求机器人在固定位置进行重启,或是通过人工方式在内建地图中设置初始位姿,上述方式不仅为用户使用机器人带来麻烦,同时当机器人遭遇意外重启将无法确定重启位置,进而为机器人的运行带来障碍。有鉴于此,本发明提供一种机器人自主重定位方法,可利用机器人在当前位置采集的深度视觉图像及激光扫描数据进行重定位,进而确保机器人在任意位置自主重定位的可靠性及准确性,提升用户使用体验。请参考图1,图1为本发明实施例所提供的一种机器人自主重定位方法的流程图,该方法可以包括:

S101、获取融合地图及当前位置的深度视觉图像和激光扫描数据;其中,融合地图由视觉地图、视觉词袋和激光栅格地图生成。

在本发明实施例中,机器人重定位所使用的融合地图由视觉地图、视觉词袋及激光栅格地图共同生成,其中,视觉地图带有可见光图像的纹理信息,由在每一位置及姿态朝向所采集的可见光图像构成,利用视觉地图可在当前位置光线充足的情况下可快速有效地进行机器人位置和姿势的确定;视觉词袋基于视觉地图训练而成,其包含了视觉地图中所有可见光图像的特征信息,并可根据特征信息对可见光图像进行分类,可进一步提升视觉地图的匹配效率;激光栅格地图由激光扫描数据生成,包含了高精度的激光扫描信息,可在任意光照条件下精确匹配机器人的位置及姿态。由于本发明实施例采用了由视觉地图、视觉词袋及激光栅格地图所构成的融合地图进行机器人重定位,因此能够有效且精准地确定机器人位置。

需要说明的是,本发明实施例并不限定视觉词袋及激光栅格地图的生成方式,可参考视觉词袋及激光栅格地图的相关技术。可以理解的是,视觉词袋基于的图像训练集为视觉地图,其作用为提取不同机器人位置及姿态所对应的可见光图像的特征信息,并根据上述特征信息对当前位置的深度视觉图像进行分类,以在视觉地图中快速查找匹配度较高的候选图像。进一步,本发明实施例也不限定视觉地图的生成方式,只要视觉地图利用每一位置和姿态所采集的可见光图像生成,并确保每一位姿与可见光图像一一对应即可,可参考机器人视觉地图的相关技术。进一步,本发明也不限定融合地图的生成方式,只要该融合地图能够将视觉地图与激光栅格地图依照机器人的位姿建立对应关系,并将视觉地图与视觉词袋根据各位姿对应可见光图像的特征信息建立对应关系即可。

进一步,可以理解的是,在生成视觉地图的过程中,需要确定机器人的位姿后,才可建立位姿与可见光图像的对应关系。本发明实施例并不限定机器人位姿的确定方式,例如可将相邻位置所采集的可见光图像进行特征点采集及特征点匹配,并将匹配成功的特征点输入g2o图优化模型中,得到机器人的视觉位姿,最后将视觉位姿作为机器人的位姿;也可以利用激光扫描数据与激光栅格地图进行激光定位,以得到机器人的激光位姿,并将激光位姿作为机器人的位姿;当然,可以将视觉位姿与激光位姿相融合,并将融合的结果作为机器人的位姿。考虑到视觉位姿的匹配效率较高,但其精度受光线的影响较大,而激光位姿的匹配效率较低,但其精度受光线的影响较小,因此在本发明实施例中,机器人的位姿可由视觉位姿及激光位姿共同生成,综合以上两种位姿,可有效平衡机器人位姿确定的效率及精度之间的关系,进而可同时确保较高的匹配效率及匹配精度。需要说明的是,本发明实施例并不限定g2o图优化模型的具体内容,本发明也不限定激光定位的具体内容,可参考相关技术。

进一步,本发明实施例并不限定深度视觉图像和激光扫描数据的具体形式,可参考相关技术。可以理解的是,深度视觉图像及激光扫描数据同时采集。本发明实施例并不限定深度视觉图像和激光扫描数据的采集为间隔周期采集或是实时采集,可根据实际应用需求进行设定。同样可以理解的是,当前位置即为当前图像采集时刻所对应的位置

S102、利用深度视觉图像在融合地图中进行匹配,确定机器人在融合地图中匹配度最大的初始位姿。

由于融合地图包含了可见光图像的纹理信息,同时可见光图像与机器人位姿建立了一一对应关系,因此本发明实施例可通过图像匹配的方式确定机器人的初始位姿。

可以理解的是,由于本发明实施例所使用的融合地图包含了视觉词袋信息,因此可利用视觉词袋进行图像匹配,以筛选出与深度视觉图像相似的候选图像。需要说明的是,本发明实施例并不限定利用视觉词袋进行匹配的具体过程,可参考相关技术,例如可提取局部图像特征作为视觉单词,并利用TF-IDF模型计算视觉单词的匹配得分,最后依照匹配得分筛选出相似的候选图像。由于视觉词袋主要利用局部图像特征及局部图像特征的统计特征进行候选图像筛选,其匹配精度可能无法达到应用要求,因此在筛选出候选图像之后,可将候选图像与深度视觉图像进行特征点匹配,并利用特征点的匹配数量计算匹配度,最后可根据匹配度选择出最佳的候选图像。需要说明的是。本发明实施例并不限定具体的图像特征点,例如可以为例如可以是SIFT特征点、ORB特征点或其他种类的特征点,其中SIFT特征点(Scale-invariant feature transform,尺度不变特征变换)是一种局部特征描述子,具有尺度和旋转不变性的特征;ORB(Oriented FAST and Rotated BRIEF)为一种由FAST特征点和BRIEF特征描述子相结合的特征点,同样具有尺度和旋转不变性,同时其采集效率远高于SIFT特征点。考虑到ORB特征点的性能较优,因此在本发明实施例中可利用ORB特征点作为图像特征点。需要说明的是,本发明实施例并不限定ORB特征点的采集方式及过程,可参考相关技术;本发明实施例同样不限定利用ORB特征点进行图像匹配的过程,也可参考ORB特征点匹配的相关技术。最后,需要说明的是,在构建视觉地图时,也可对每一位置及姿态所采集的可见光图像进行ORB特征点提取,进而将ORB特征也融合至视觉地图中。

在一种可能的情况中,利用深度视觉图像在融合地图中进行匹配,确定机器人在融合地图中匹配度最大的初始位姿,可以包括:

步骤11:提取深度视觉图像中的ORB特征点,并将ORB特征点输入融合地图的视觉词袋进行匹配,得到深度视觉图像在融合地图中对应的候选图像;

步骤12:将深度视觉图像中的ORB特征点与候选图像的ORB特征点进行匹配,得到ORB特征点对,并将ORB特征点对输入RANSAC算法中进行处理,去除匹配错误的ORB特征点对;

步骤13:确定完成处理的ORB特征点对的点对数量,并利用点对数量及深度视觉图像中的ORB特征点的数量计算匹配度;

步骤14:将匹配度最大的候选图像作为匹配图像,将匹配图像及深度视觉图像输入PNP算法进行计算,得到初始位姿。

可以理解的是,ORB特征点在匹配过程中可能存在误匹配,而无匹配的ORB特征点对将会影响匹配精度,因此可利用RANSAC算法去除匹配错误的ORB特征点对。进一步,在挑选出候选图像后,由于候选图像的位置与姿态可能与深度视觉图像所对应的当前位置及姿态存在偏差,进而导致候选图像对应的位姿不能准确地与当前位置建立对应关系,因此可将候选图像的ORB特征点及深度视觉图像的ORB输入PNP算法中,通过估计特征点在空间中的相对位置的方式得到较为精确的初始位姿。

S103、当匹配度大于等于预设阈值时,利用初始位姿及激光扫描数据确定机器人在融合地图中的精确位姿。

当匹配度大于等于预设阈值时,说明匹配到候选图像符合应用需求,进而可确定初始位姿较为准确,此时便可进一步利用激光扫描数据确定机器人的精确位姿。在本发明实施例中,考虑到激光扫描数据能够较为准确地确定机器人位姿,但激光扫描数据的数据量较为庞大,若直接采用激光扫描数据与完整的融合地图进行匹配效率较低,难以达到实时匹配要求;而在确定机器人的初始位姿后,便可利用激光扫描数据与初始位姿周边的融合地图进行局部匹配,可显著提升匹配效率,因此本发明实施例通过首先先利用深度视觉图像确定初始位姿,再将初始位姿与激光扫描数据相结合确定精确位姿,不仅能够确保精确位姿的精准度,同时也可避免激光扫描数据与完整的融合地图进行匹配,进而提升激光扫描数据的匹配效率。

需要说明的是,本发明实施例并不限定预设阈值的具体数值,可根据实际应用需求进行设置。

进一步,本发明实施例并不限定利用初始位姿及激光扫描数据确定机器人在融合地图中的精确位姿的具体方式,例如可以利用初始位姿确定视觉区域,并利用激光扫描数据确定激光区域,最后根据视觉区域和激光区域的融合程度确定精确位姿;当然,也可以利用初始位姿确定融合地图中初始区域,并利用激光扫描数据在初始区域中进行匹配,得到精确位姿。考虑到利用初始位姿确定融合地图中初始区域,并利用激光扫描数据在初始区域中进行匹配,得到精确位姿,可大幅度降低激光扫描数据的匹配量,进而提升匹配效率,因此在本发明实施例中,可通过利用初始位姿确定融合地图中初始区域,并利用激光扫描数据在初始区域中进行匹配的方式,确定机器人的精确位姿。

S104、当匹配度小于预设阈值时,控制机器人运动至下一位置,直至下一位置匹配到的初始位姿对应的匹配度大于等于预设阈值时,利用下一位置的初始位姿及激光扫描数据确定精确位姿。

当匹配度小于预设阈值时,说明匹配到候选图像不符合应用需求,此时获取到的初始位姿将出现较大偏差,而上述情况往往是由于当前位置所采集的深度视觉图像并未包含足够的图像特征信息,进而造成图像匹配失败。针对上述情况,在本发明实施例中,将会自动控制机器人进行运动,以从更多位姿获取带有足量图像特征信息的深度视觉图像。

需要说明的是,本发明实施例并不限定机器人的运动模式,例如可以为旋转,也可以为平移。可以理解的是,机器人在运动之后采集到的深度视觉图像仍然可能存在无法匹配合适的候选图像的情况,此时若盲目控制机器人进行运动将难以提升机器人初始位姿的确定效率,因此在本发明实施例中,在每次控制机器人以某种运动模式进行运动时,都会确定一定数量的候选位置,并确定每一候选位置对应候选图像的匹配度,最后根据匹配度的大小选择出最优的候选位置作为下一运动模式的起点位置。通过上述方式,本发明实施例可有针对性地控制机器人进行运动,进而可提升初始位姿的匹配效率。

在一种可能的情况中,控制机器人运动至下一位置,包括:

步骤21:控制机器人按照预设模式进行运动,并在运动过程中确定预设数量的候选位置;预设模式包括旋转和平移;

步骤22:将候选位置的初始位姿设置为第一候选位姿,并将匹配度最大的第一候选位姿对应的候选位置设置为下一位置;

步骤23:按照预设模式控制机器人运动至下一位置。

需要说明的是,本发明实施例并不限定针对特定预设模式确定候选位置的方式,例如当预设模式为旋转时,可控制机器人原地旋转预设角度,并在该预设角度范围内,每到达一个间隔角度选取一个候选位置,上述预设角度及间隔角度均可根据实际应用需求进行设置;当预设模型为平移时,可控制机器人沿直线行进预设距离,并在没到达一个间隔距离是选取一个候选位置,上述预设距离及间隔距离同样可根据实际应用需求进行设置,可以理解的是,只要通过设置预设角度、间隔角度,或是预设距离、间隔距离,所得到候选位置为预设数量即可。本发明同样不限定预设数量的具体数值,可根据实际应用需求进行设置。

最后,需要说明的是,在控制机器人运动的过程中,若出现障碍,可调用机器人的避障装置进行避障操作。

基于上述实施例,本方法首先利用机器人在当前位置采集到的深度视觉图像在融合地图中进行匹配以确定初始位姿,由于融合地图带有视觉地图及视觉词袋的特征信息,因此本方法可通过对深度视觉图像与融合地图进行图像匹配的方式,确定机器人的初始位姿;本方法进一步使用激光扫描数据及初始位姿确定机器人的精确位姿,由于融合地图也带有激光栅格地图的特征信息,同时激光扫描数据匹配精度比深度视觉图像更高,因此本方法可利用激光扫描数据及初始位姿提升机器人重定位精度;最后,当机器人遭遇初始位姿匹配失败时,即初始位姿的匹配度小于预设阈值时,本方法还会自主控制机器人进行运动,以获取更高匹配度的初始位姿,进而确保机器人在任意位置自主重定位的可靠性及准确性,无需在固定位置重启或是人工设置,可有效避免相关技术中由固定位置重启或是人工设置对机器人重定位造成的不便,进而提升用户使用体验。

基于上述实施例,下面对利用初始位姿及激光扫描数据确定机器人在融合地图中的精确位姿的具体方式进行介绍。在一种可能的情况中,利用初始位姿及激光扫描数据确定机器人在融合地图中的精确位姿,可以包括:

S201、根据初始位姿的位置在融合地图中生成初始区域。

需要说明的是,本发明实施例并不限定初始区域的具体形状及尺寸,可根据实际应用需求进行设置。本发明实施例也不限定确定初始区域的具体方式,例如以初始位姿对应的位置作为初始区域中心进行生成;若初始区域为矩形,也可将初始位姿对应的位置作为矩形任意角。

S202、利用激光扫描数据在初始区域中进行匹配,确定精确位姿。

本发明实施例并不限定利用激光扫描数据在初始区域中进行匹配的具体方式,例如可直接利用利用激光扫描数据在初始区域中的所有融合地图进行完整匹配,也可以先利用初始区域的融合地图生成低精度栅格图,再利用激光扫描数据与低精度栅格图进行初步匹配,最后根据初步匹配的结果进一步在融合地图中进行精细匹配,得到精确位姿。考虑到激光扫描数据所面对的匹配量较大,因此本发明实施例可利用低精度栅格图降低激光扫描数据的匹配量,进而提升匹配效率。

在一种可能的情况中,利用激光扫描数据在初始区域中进行匹配,确定精确位姿,可以包括:

步骤31:对初始区域进行降采样,得到低精度栅格图;

步骤32:利用激光扫描数据在低精度栅格图中进行匹配,得到第二候选位姿;

步骤33:在融合地图中,对激光扫描数据与第二候选位姿进行匹配,得到精确位姿。

需要说明的是,本发明实施例并不限定降采样的具体方式,可参考栅格图降采样的相关技术。

最后,由于可能存在激光扫描属于与初始区域的匹配度不符合要求,进而导致匹配失败的情况,因此在匹配失败后,可对初始区域进行调整,例如放大或是位移调整,并利用调整后的初始区域继续进行匹配。需要说明的是,本发明实施例并不限定放大的尺寸及位移调整的距离,可根据实际应用需求进行设置。

在一种可能的情况中,在利用激光扫描数据在初始区域中进行匹配之后,还可以包括:

步骤41:当匹配失败时,对初始区域进行调整,并利用调整后的初始区域执行利用激光扫描数据在初始区域中进行匹配的步骤。

基于上述实施例,本方法可利用初始位姿确定融合地图中初始区域,并利用激光扫描数据在初始区域中进行匹配,得到精确位姿,进而可大幅度降低激光扫描数据的匹配量,最终可达到提升匹配效率的效果。

基于上述实施例,下面对融合地图的生成过程进行介绍。在一种可能的情况中,融合地图的生成过程,可以包括:

S301、获取当前采集位置的深度图像、可见光图像及待处理激光扫描数据。

可以理解的是,在采集的过程中,当遇到障碍时可调用机器人的避障装置进行避障操作。

S302、提取可见光图像的ORB特征点,并利用可见光图像的ORB特征点更新视觉词袋。

S303、将可见光图像及上一采集位置的历史可见光图像输入g2o图优化模型中,得到机器人的视觉位姿。

需要说明的是,本发明实施例并不限定g2o图优化模型的具体内容,可参考相关技术。

S304、利用待处理激光扫描数据更新激光栅格地图,并利用待处理激光扫描数据在更新后的激光栅格地图中进行激光定位,得到机器人的激光位姿。

需要说明的是,本发明实施例并不限定激光定位的具体方式,可参考相关技术。可以理解的是,需要将激光位姿与视觉位姿调整至同一坐标系中,以实现激光位姿与视觉位姿的对齐。

S305、将视觉位姿及激光位姿输入EKF模型中,得到机器人的当前位姿。

需要说明的是,本发明实施例并不限定EKF模型(Extended Kalman Filter,扩展卡尔曼滤波器)的具体内容,可参考相关技术。

S306、将当前位姿与可见光图像、可见光图像的ORB特征点及深度图像建立绑定关系,并利用绑定关系更新视觉地图。

在建立当前位姿与可见光图像、可见光图像的ORB特征点及深度图像的绑定关系之后,也可以将深度图像的深度信息融合值ORB特征点中,使ORB特征点带有深度值,进而更好地与深度视觉图像进行匹配。

S307、利用更新后的视觉词袋、激光栅格地图及视觉地图更新融合地图。

基于上述实施例,在本方法所生成的融合地图由视觉地图、视觉词袋及激光栅格地图共同生成,其中,视觉地图带有可见光图像的纹理信息,由在每一位置及姿态朝向所采集的可见光图像构成,利用视觉地图可在当前位置光线充足的情况下可快速有效地进行机器人位置和姿势的确定;视觉词袋基于视觉地图训练而成,其包含了视觉地图中所有可见光图像的特征信息,并可根据特征信息对可见光图像进行分类,可进一步提升视觉地图的匹配效率;激光栅格地图由激光扫描数据生成,包含了高精度的激光扫描信息,可在任意光照条件下精确匹配机器人的位置及姿态。由于本方法采用了由视觉地图、视觉词袋及激光栅格地图进行融合地图生成,可保留大量的特征信息以供匹配使用,因此能够有效提升机器人重定位的可靠性及准确性。

下面对本发明实施例提供的一种机器人自主重定位装置、电子设备及存储介质进行介绍,下文描述的机器人自主重定位装置、电子设备及存储介质与上文描述的机器人自主重定位方法可相互对应参照。

请参考图2,图2为本发明实施例所提供的一种机器人自主重定位装置的结构框图,该装置可以包括:

获取模块201,用于获取融合地图及当前位置的深度视觉图像和激光扫描数据;其中,融合地图由视觉地图、视觉词袋和激光栅格地图生成;

第一匹配模块202,用于利用深度视觉图像在融合地图中进行匹配,确定机器人在融合地图中匹配度最大的初始位姿;

第二匹配模块203,用于当匹配度大于等于预设阈值时,利用初始位姿及激光扫描数据确定机器人在融合地图中的精确位姿;

运动控制模块204,用于当匹配度小于预设阈值时,控制机器人运动至下一位置,直至下一位置匹配到的初始位姿对应的匹配度大于等于预设阈值时,利用下一位置的初始位姿及激光扫描数据确定精确位姿。

可选地,运动控制模块204,可以包括:

第一运动控制子模块,用于控制机器人按照预设模式进行运动,并在运动过程中确定预设数量的候选位置;预设模式包括旋转和平移;

设置子模块,用于将候选位置的初始位姿设置为第一候选位姿,并将匹配度最大的第一候选位姿对应的候选位置设置为下一位置;

第二运动控制子模块,用于按照预设模式控制机器人运动至下一位置。

可选地,第二匹配模块203,可以包括:

初始区域确定子模块,用于根据初始位姿的位置在融合地图中生成初始区域;

精确位姿确定子模块,用于利用激光扫描数据在初始区域中进行匹配,确定精确位姿。

可选地,精确位姿确定子模块,可以包括:

降采样单元,用于对初始区域进行降采样,得到低精度栅格图;

第一匹配单元,用于利用激光扫描数据在低精度栅格图中进行匹配,得到第二候选位姿;

第二匹配单元,用于在融合地图中,对激光扫描数据与第二候选位姿进行匹配,得到精确位姿。

可选地,第二匹配模块203,还可以包括:

调整子模块,用于当匹配失败时,对初始区域进行调整,并利用调整后的初始区域执行利用激光扫描数据在初始区域中进行匹配的步骤。

可选地,第一匹配模块202,可以包括:

第一匹配子模块,用于提取深度视觉图像中的ORB特征点,并将ORB特征点输入融合地图的视觉词袋进行匹配,得到深度视觉图像在融合地图中对应的候选图像;

第二匹配子模块,用于将深度视觉图像中的ORB特征点与候选图像的ORB特征点进行匹配,得到ORB特征点对,并将ORB特征点对输入RANSAC算法中进行处理,去除匹配错误的ORB特征点对;

匹配度计算子模块,用于确定完成处理的ORB特征点对的点对数量,并利用点对数量及深度视觉图像中的ORB特征点的数量计算匹配度;

初始位姿确定子模块,用于将匹配度最大的候选图像作为匹配图像,将匹配图像及深度视觉图像输入PNP算法进行计算,得到初始位姿。

可选地,该装置还可以包括:

第二获取模块,用于获取当前采集位置的深度图像、可见光图像及待处理激光扫描数据;

视觉词袋更新模块,用于提取可见光图像的ORB特征点,并利用可见光图像的ORB特征点更新视觉词袋;

视觉位姿确定模块,用于将可见光图像及上一采集位置的历史可见光图像输入g2o图优化模型中,得到机器人的视觉位姿;

激光位姿确定模块,用于利用待处理激光扫描数据更新激光栅格地图,并利用待处理激光扫描数据在更新后的激光栅格地图中进行激光定位,得到机器人的激光位姿;

当前位姿确定模块,用于将视觉位姿及激光位姿输入EKF模型中,得到机器人的当前位姿;

绑定模块,用于将当前位姿与可见光图像、可见光图像的ORB特征点及深度图像建立绑定关系,并利用绑定关系更新视觉地图;

更新模块,用于利用更新后的视觉词袋、激光栅格地图及视觉地图更新融合地图。

本发明实施例还提供一种机器人,包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上述的机器人自主重定位方法的步骤。

可以理解的是,该机器人还可以包含轮速计、激光雷达、深度相机、IMU惯性传感器等传感器。本发明实施例并不限定具体的传感器,同时也不限定上述传感器具体的设置方式,可根据实际应用需求进行设置。

由于电子设备部分的实施例与机器人自主重定位方法部分的实施例相互对应,因此电子设备部分的实施例请参见机器人自主重定位方法部分的实施例的描述,这里暂不赘述。

本发明实施例还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述任意实施例的机器人自主重定位方法的步骤。

由于存储介质部分的实施例与机器人自主重定位方法部分的实施例相互对应,因此存储介质部分的实施例请参见机器人自主重定位方法部分的实施例的描述,这里暂不赘述。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。

以上对本发明所提供的一种机器人自主重定位方法、装置、机器人及存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

相关技术
  • 一种机器人自主重定位方法、装置、机器人及存储介质
  • 机器人重定位方法、装置、机器人和计算机可读存储介质
技术分类

06120113147019