CN108550318A - 一种构建地图的方法及装置 - Google Patents

一种构建地图的方法及装置 Download PDF

Info

Publication number
CN108550318A
CN108550318A CN201810199043.5A CN201810199043A CN108550318A CN 108550318 A CN108550318 A CN 108550318A CN 201810199043 A CN201810199043 A CN 201810199043A CN 108550318 A CN108550318 A CN 108550318A
Authority
CN
China
Prior art keywords
cloud data
point cloud
data frame
map
pose
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810199043.5A
Other languages
English (en)
Other versions
CN108550318B (zh
Inventor
林辉
卢维
穆方波
殷俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Dahua Technology Co Ltd
Original Assignee
Zhejiang Dahua Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhejiang Dahua Technology Co Ltd filed Critical Zhejiang Dahua Technology Co Ltd
Priority to CN201810199043.5A priority Critical patent/CN108550318B/zh
Publication of CN108550318A publication Critical patent/CN108550318A/zh
Application granted granted Critical
Publication of CN108550318B publication Critical patent/CN108550318B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram
    • G09B29/003Maps
    • G09B29/005Map projections or methods associated specifically therewith
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B29/00Maps; Plans; Charts; Diagrams, e.g. route diagram
    • G09B29/003Maps
    • G09B29/006Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes
    • G09B29/007Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes using computer methods

Abstract

本发明提供一种构建地图的方法及装置,用于解决现有SLAM方案构建地图精确度低的技术问题。该方法包括:在控制AGV移动过程中,在不同的位置使用激光雷达对该AGV的周围环境进行扫描测距,获得包含有障碍物信息的点云数据帧;其中,该障碍物信息包括多个障碍点以及各障碍点与该AGV的相对位置信息;在扫描到的点云数据帧的数量达到预设帧数N时,基于扫描到的N帧点云数据帧生成局部地图;在确定该AGV重复经过同一位置时,计算该AGV首次经过该同一位置时生成的第一局部地图与该AGV第二次经过该同一位置时生成的第二局部地图的差异值;根据该第一局部地图与该第二局部地图的差异值对已生成的所有局部地图进行优化。

Description

一种构建地图的方法及装置
技术领域
本发明涉及导航技术领域,特别涉及一种构建地图的方法及装置。
背景技术
即时定位与地图构建(Simultaneous Localization and Mapping,SLAM)是一种真正实现全自主移动机器人的关键技术。现有SLAM构建地图的原理为:将每一次扫描到的点云数据帧与已观测信息进行匹配,增量式地生成地图。这种增量式方法构建出的地图的精确度与每一次点云数据帧的匹配精度密切相关。
然而,在实际应用中,点云数据帧与已观测信息的匹配不可能完全精确,不可避免地会存在误差,且随着时间的推移,这些误差还会被持续累积,导致最终生成的地图的精确度低。
发明内容
本发明提供一种构建地图的方法及装置,用于解决现有SLAM方案构建地图精确度低的技术问题。
第一方面,本发明实施例提供一种构建地图的方法,包括:
在控制AGV移动过程中,在不同的位置使用激光雷达对所述AGV的周围环境进行扫描测距,获得包含有障碍物信息的点云数据帧;其中,所述障碍物信息包括多个障碍点以及各障碍点与所述AGV的相对位置信息;
在扫描到的点云数据帧的数量达到预设帧数N时,基于扫描到的N帧点云数据帧生成局部地图;
在确定所述AGV重复经过同一位置时,计算所述AGV首次经过所述同一位置时生成的第一局部地图与所述AGV第二次经过所述同一位置时生成的第二局部地图的差异值;
根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化。
在上述方案中,AGV在构建地图的过程中,还检测AGV是否重复经过了同一位置,如果确定AGV重复经过了同一位置,则计算AGV首次经过该同一位置时生成的局部地图与AGV第二次经过该同一位置时生成的局部地图的差异值,并根据计算得到的差异值对已生成的各个局部地图进行优化,以此实现对地图构建过程中所累积的误差的调整,提高了AGV构建地图的精确度。
可选的,所述基于扫描到的N帧点云数据帧生成局部地图,包括:按照采集时间的先后顺序,依次对所述N帧点云数据帧中的每一帧点云数据帧执行如下操作:根据历史点云数据帧的位姿,估计当前点云数据帧的M个可能位姿,所述历史点云数据帧为所述AGV在采集所述当前点云数据帧之前的预设时间范围内所采集的连续多帧点云数据帧,所述位姿包括所述AGV采集点云数据帧时的位置相对于所述AGV的初始位置的距离、偏向角;基于所述M个可能位姿,将所述当前点云数据帧映射到栅格地图M次,获得M个初始映射图;计算各个初始映射图与所述历史点云数据帧在所述栅格地图上的映射图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述当前点云数据帧的位姿;以及,根据确定出的所述N帧点云数据帧中各个点云数据帧的位姿,将所述各个点云数据帧映射到所述栅格地图上,共获得N个映射图,将所述N个映射图作为所述局部地图。
本方式通过持续生成局部地图的方式实现增量式构建地图,计算量小,能够提高构建地图的效率。
可选的,在使用激光雷达进行扫描测距时,还包括:检测地面是否有路标;在检测到路标时,将检测到的路标的相关信息添加到同时扫描到的点云数据帧中,其中所述相关信息包括检测到的路标的编号;确定所述AGV重复经过同一位置,包括:从已生成的所有局部地图中的点云数据帧中获取路标的编号;在确定任一局部地图中的点云数据帧与另一局部地图中的点云数据帧均包含有同一路标的编号时,确定所述AGV重复经过所述同一路标所在的位置。
本方式通过检测AGV是否经过相同路标确定AGV是否重复经过同一位置,提高了地图构建的效率。
可选的,所述相关信息还包括检测到的路标与所述AGV的相对位置信息;在根据所述差异值对已生成的所有局部地图进行优化之后,还包括:在确定所述AGV已检测到所有路标时,根据各个路标与所述AGV的相对位置信息,将各个路标添加到各个路标对应的局部地图中。
通过本方式,可以生成包含有路标信息的地图,提高了用户体验。
可选的,所述路标具体为二维码图像,以使得AGV可通过检测是否经过相同二维码确定是否重复经过同一位置,提高了地图构建的效率。
可选的,在基于扫描到的N帧点云数据帧生成局部地图之后,所述方法还包括:将所述N帧点云数据帧中的预设帧的位姿作为所述局部地图的整体位姿;基于所述N帧点云数据帧中各个点云数据帧的位姿、所述局部地图的整体位姿,确定所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿;基于所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿,计算所述N帧点云数据帧中各个点云数据帧与所述局部地图的误差约束项对所述N帧点云数据帧中所有点云数据帧与所述局部地图的误差约束项进行求和作为所述局部地图的整体误差约束项;
所述计算所述第一局部地图与所述第二局部地图的差异值,包括:计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿;基于所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,计算所述AGV采集所述第二局部地图中各个点云数据帧与所述第一局部地图的误差约束项对所述第二局部地图中所有点云数据帧与所述第一局部地图的误差约束项进行求和作为所述第一局部地图与所述第二局部地图的差异值;
所述根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化,包括:求所有局部地图的整体位姿误差约束项与所述差异值的总和:采用梯度下降法调整已生成的所有局部地图中的点云数据帧的位姿,使达到最小值。
本方式采用梯度下降法调整所有局部地图点云数据帧的位姿,使达到最小,实现了对增量式构建地图过程中所累积的匹配误差的调整,提高了AGV构建地图的精确度。
可选的,所述计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,包括:对所述第二局部地图中的每一点云数据帧均执行如下操作:根据所述第一局部地图的位姿,估计所述第二局部地图中的任一点云数据帧的K个可能位姿;基于所述K个可能位姿,将所述任一点云数据帧映射到栅格地图K次,获得K个初始映射图;计算所述K个初始映射图中各个初始映射图与所述第一局部地图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述任一点云数据帧的新位姿;根据所述任一点云数据帧的新位姿与所述第一局部地图的整体位姿,确定所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿。
本方式基于第一局部地图位姿重新计算第二局部地图中各帧点云数据帧的位姿,然后基于重新计算的各帧点云数据帧的位姿确定第二局部地图中各个点云数据帧与第一局部地图的相对位姿,使得第一局部地图与第二局部地图的差异值的计算更加准确可靠,保证优化效果,进一步提高了AGV构建地图的精确度。
第二方面,本发明实施例提供一种构建地图的装置,包括:扫描单元,用于在控制AGV移动过程中,在不同的位置使用激光雷达对所述AGV的周围环境进行扫描测距,获得包含有障碍物信息的点云数据帧;其中,所述障碍物信息包括多个障碍点以及各障碍点与所述AGV的相对位置信息;处理单元,用于在扫描到的点云数据帧的数量达到预设帧数N时,基于扫描到的N帧点云数据帧生成局部地图;在确定所述AGV重复经过同一位置时,计算所述AGV首次经过所述同一位置时生成的第一局部地图与所述AGV第二次经过所述同一位置时生成的第二局部地图的差异值;根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化。
可选的,所述处理单元用于基于扫描到的N帧点云数据帧生成局部地图,包括:按照采集时间的先后顺序,依次对所述N帧点云数据帧中的每一帧点云数据帧执行如下操作:根据历史点云数据帧的位姿,估计当前点云数据帧的M个可能位姿,所述历史点云数据帧为所述AGV在采集所述当前点云数据帧之前的预设时间范围内所采集的连续多帧点云数据帧,所述位姿包括所述AGV采集点云数据帧时的位置相对于所述AGV的初始位置的距离、偏向角;基于所述M个可能位姿,将所述当前点云数据帧映射到栅格地图M次,获得M个初始映射图;计算各个初始映射图与所述历史点云数据帧在所述栅格地图上的映射图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述当前点云数据帧的位姿;以及,根据确定出的所述N帧点云数据帧中各个点云数据帧的位姿,将所述各个点云数据帧映射到所述栅格地图上,共获得N个映射图,将所述N个映射图作为所述局部地图。
可选的,所述扫描单元还用于:检测地面是否有路标;在检测到路标时,将检测到的路标的相关信息添加到同时扫描到的点云数据帧中,其中所述相关信息包括检测到的路标的编号;所述处理单元用于确定所述AGV重复经过同一位置,包括:从已生成的所有局部地图中的点云数据帧中获取路标的编号;在确定任一局部地图中的点云数据帧与另一局部地图中的点云数据帧均包含有同一路标的编号时,确定所述AGV重复经过所述同一路标所在的位置。
可选的,所述相关信息还包括检测到的路标与所述AGV的相对位置信息;所述处理单元还用于:在根据所述差异值对已生成的所有局部地图进行优化之后,在确定所述AGV已检测到所有路标时,根据各个路标与所述AGV的相对位置信息,将各个路标添加到各个路标对应的局部地图中。
可选的,所述路标具体为二维码图像。
可选的,所述处理单元还用于:在基于扫描到的N帧点云数据帧生成局部地图之后,将所述N帧点云数据帧中的预设帧的位姿作为所述局部地图的整体位姿;基于所述N帧点云数据帧中各个点云数据帧的位姿、所述局部地图的整体位姿,确定所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿;基于所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿,计算所述N帧点云数据帧中各个点云数据帧与所述局部地图的误差约束项对所述N帧点云数据帧中所有点云数据帧与所述局部地图的误差约束项进行求和作为所述局部地图的整体误差约束项;
所述处理单元用于计算所述第一局部地图与所述第二局部地图的差异值,包括:计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿;基于所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,计算所述AGV采集所述第二局部地图中各个点云数据帧与所述第一局部地图的误差约束项对所述第二局部地图中所有点云数据帧与所述第一局部地图的误差约束项进行求和作为所述第一局部地图与所述第二局部地图的差异值;
所述处理单元用于根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化,包括:求所有局部地图的整体位姿误差约束项与所述差异值的总和:采用梯度下降法调整已生成的所有局部地图中的点云数据帧的位姿,使达到最小值。
可选的,所述处理单元用于计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,包括:对所述第二局部地图中的每一点云数据帧均执行如下操作:根据所述第一局部地图的位姿,估计所述第二局部地图中的任一点云数据帧的K个可能位姿;基于所述K个可能位姿,将所述任一点云数据帧映射到栅格地图K次,获得K个初始映射图;计算所述K个初始映射图中各个初始映射图与所述第一局部地图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述任一点云数据帧的新位姿;根据所述任一点云数据帧的新位姿与所述第一局部地图的整体位姿,确定所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿。
第三方面,本发明实施例提供一种构建地图的设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令执行本发明实施例第一方面或第一方面的任一种可选的实施方式所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行本发明实施例第一方面或第一方面的任一种可选的实施方式所述的方法。
本发明实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
AGV在构建地图的过程中,还检测AGV是否重复经过了同一位置,如果确定AGV重复经过了同一位置,则计算AGV首次经过该同一位置时生成的局部地图与AGV第二次经过该同一位置时生成的局部地图的差异值,并根据计算得到的差异值对已生成的各个局部地图进行优化,以此实现对地图构建过程中所累积的误差的调整,提高了AGV构建地图的精确度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例中构建地图的方法的流程示意图;
图2为本发明实施例中AGV的结构示意图;
图3为本发明实施例中仓储环境的示意图;
图4为本发明实施例中栅格地图的示意图;
图5为本发明实施例中位姿图模型的示意图;
图6为本发明实施例中栅格地图的示意图;
图7为本发明实施例中构建地图的装置的结构示意图;
图8为本发明实施例中构建地图的设备的结构示意图。
具体实施方式
下面通过附图以及具体实施例对本发明技术方案做详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
需要理解的是,在本发明实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本发明实施例的描述中“多个”,是指两个或两个以上。
本发明实施例中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
SLAM是指机器人在未知环境中,从一个未知位置开始移动,在移动过程中根据位置估计和地图进行自身定位,同时在自身定位的基础上建造增量式地图,实现机器人的自主定位和导航。
现有的SLAM方案一般都是依赖于将点云数据帧与已观测信息进行匹配,并以增量的方式生成地图。
例如,专利CN201710504910.7公开了采用2D激光雷达对周围环境进行扫描,并采用占据栅格地图表示环境信息,在自动导引运输车(Automated Guided Vehicle,AGV)每一次对环境扫描得到扫描点云后,以AGV上一时刻位姿为中心遍历一定范围的位移和旋转角得到一系列虚拟位姿,并根据各个虚拟位姿以及当前占据栅格地图计算得到一系列虚拟扫描点云;将所有虚拟扫描点云与当前占据栅格地图的实际扫描点云匹配,找出匹配度最高的一组虚拟扫描点云,以其对应的虚拟位姿作为当前AGV的最优位姿;最后基于该最优位姿将当前实际扫描点云叠加至占据栅格地图中,从而实现增量式构建地图。
这种方法构建出的地图的精确度和点云数据帧的匹配精度密切相关。在实际应用中,扫描点云与已观测信息的匹配不可能完全精确,不可避免地会存在误差,且随着时间的推移,这些误差还将会持续累积。因此,现有技术存在构建地图精确度低的问题。
为了解决现有技术存在的技术问题,本发明实施例提供一种构建地图的方法,该方法可以应用于任意类型的可移动电子设备中,例如机器人、AGV、无人机、无人汽车等,本发明实施例不做具体限制。接下来本发明实施例主要以AGV为例进行详细介绍。
参照图1,本发明实施例构建地图的方法包括:
步骤101:在控制AGV移动过程中,在不同的位置使用激光雷达对所述AGV的周围环境进行扫描测距,获得包含有障碍物信息的点云数据帧。
其中,所述障碍物信息包括多个障碍点以及各障碍点与AGV的相对位置信息。该相对位置信息具体可以包括各个障碍点相对于AGV的距离和偏向角。
其中,在使用激光雷达进行扫描测距时,还可以进一步包括:检测地面是否有路标;在检测到路标时,将检测到的路标的相关信息添加到同时扫描到的点云数据帧中。所述路标的具体实现方式可以有多种,如二维码图像、数字路标等,本发明实施例不做具体限制。在本发明实施例接下来的描述中,主要以二维码图像路标为例说明。二维码图像的相关信息包括二维码的编号、二维码与AGV的相对位置信息(包括距离、偏向角)。
步骤102:在扫描到的点云数据帧的数量达到预设帧数N时,基于扫描到的N帧点云数据帧生成局部地图。
具体的,确定所述N帧点云数据帧中的每一帧点云数据帧的位姿;根据确定出的所述N帧点云数据帧中各个点云数据帧的位姿,将所述各个点云数据帧映射到所述栅格地图上,共获得N个映射图,将所述N个映射图作为所述局部地图。其中,所述位姿为AGV采集点云数据帧时的位置相对于所述AGV的初始位置的距离及偏向角。
其中,确定所述N帧点云数据帧中的每一帧点云数据帧的位姿,包括:按照采集时间的先后顺序,依次针对所述N帧点云数据帧中的每一帧点云数据帧,根据历史点云数据帧的位姿估计当前点云数据帧的M个可能位姿,所述历史点云数据帧为所述AGV在采集所述当前点云数据帧之前的预设时间范围内所采集的连续多帧点云数据帧;基于所述M个可能位姿,将所述当前点云数据帧映射到栅格地图M次,获得M个初始映射图;计算各个初始映射图与所述历史点云数据帧在所述栅格地图上的映射图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述当前点云数据帧的位姿。
其中,预设帧数N的选取原则可以为:使得AGV在获得N帧点云数据帧的过程中最多只扫描到一个路标(一个路标可被扫描到多次)。如果生成的局部地图对应的点云数据帧中包含有路标的编号,则采用该编号对局部地图进行标记,比如将该编号作为该局部地图的编号。
在基于扫描到的N帧点云数据帧生成局部地图之后,还可以进一步包括:将所述N帧点云数据帧中的预设帧的位姿作为所述局部地图的整体位姿;基于所述N帧点云数据帧中各个点云数据帧的位姿、所述局部地图的整体位姿,确定所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿;基于所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿,计算所述N帧点云数据帧中各个点云数据帧与所述局部地图的误差约束项:对所述N帧点云数据帧中所有点云数据帧与所述局部地图的误差约束项进行求和:作为所述局部地图的整体误差约束项。其中ξF,i为该局部地图中的第i帧点云数据帧的位姿,ξS,j为该局部地图的整体位姿,ξi,j为该局部地图中的第i帧点云数据帧与该局部地图整体的相对位姿,e(ξF,i,ξS,j,ξi,j)为相对位姿的误差函数,∑i,j为Fi与Sj之间的相对位姿ξi,j的协方差矩阵。所述预设帧可以为N帧点云数据帧中的任意指定帧,例如第N/2帧,本发明实施例不做具体限制。
步骤103:在确定所述AGV重复经过同一位置时,计算所述AGV首次经过所述同一位置时生成的第一局部地图与所述AGV第二次经过所述同一位置时生成的第二局部地图的差异值。
其中,所述确定所述AGV重复经过同一位置,具体可以包括:从已生成的所有局部地图中的点云数据帧中获取路标的编号;在确定任一局部地图中的点云数据帧与另一局部地图中的点云数据帧均包含有同一路标的编号时,确定所述AGV重复经过所述同一路标所在的位置。对应步骤102具体实施方式,在各个局部地图均被标记时,所述确定所述AGV重复经过同一位置的具体实现方式还可以为:获取所有局部地图的的编号;在确定任一局部地图与另一局部地图的编号相同时,确定所述AGV重复经过该编号的路标所在的位置。
其中,计算所述第一局部地图与所述第二局部地图的差异值的具体实施方式包括:
步骤一:计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿。
具体的,针对所述第二局部地图中的每一点云数据帧,根据所述第一局部地图的位姿,估计所述第二局部地图中的任一点云数据帧的K个可能位姿;基于所述K个可能位姿,将所述任一点云数据帧映射到栅格地图K次,获得K个初始映射图;计算所述K个初始映射图中各个初始映射图与所述第一局部地图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述任一点云数据帧的新位姿;根据所述任一点云数据帧的新位姿与所述第一局部地图的整体位姿,确定所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿。
步骤二:基于所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,计算所述AGV采集所述第二局部地图中各个点云数据帧与所述第一局部地图的误差约束项
其中,ξF,i为第二局部地图中的第i帧点云数据帧的位姿,ξS,m为第一局部地图的整体位姿,ξi,m为所述第二局部地图中的第i帧点云数据帧与第一局部地图的相对位姿,∑i,m为估算Fi与Sm之间的相对位姿ξi,m的协方差矩阵,e(ξF,i,ξS,m,ξi,m)为相对位姿误差函数。
步骤三:对所述第二局部地图中所有点云数据帧与所述第一局部地图的误差约束项进行求和作为所述第一局部地图与所述第二局部地图的差异值。
步骤104:根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化。
具体的,求所有局部地图的整体位姿误差约束项与所述差异值的总和,即然后采用梯度下降法调整已生成的所有局部地图中的点云数据帧的位姿,使得达到最小值为止。
在具体实施过程中,在根据所述差异值对已生成的所有局部地图进行优化之后,如果所述AGV已检测到所有路标,则可以进一步根据各个路标与所述AGV的相对位置信息,将各个路标添加到各个路标对应的局部地图中,获得包含有路标信息的全局地图;如果所述AGV未检测到所有路标,则可重复执行上述步骤101至104,直到所有路标均被检测到为止,然后生成包含有路标信息的全局地图。
在上述方案中,AGV在构建地图的过程中,还进行闭环检测,即检测AGV是否重复经过了同一位置,如果确定AGV重复经过了同一位置,则计算AGV首次经过该同一位置时生成的局部地图与AGV第二次经过该同一位置时生成的局部地图的差异值,并根据计算得到的差异值对已生成的各个局部地图进行优化,以此实现对增量式构建地图过程中所累积的匹配误差的调整,提高了AGV构建地图的精确度。并且,上述方案在构建地图、闭环检测以及地图优化等过程中,均是以局部地图为基本计算单位,计算量小,提高了AGV构建地图的效率。
为了便于本领域技术人员更加清楚地理解本发明实施例技术方案,接下来,例举本发明的一种可能的应用场景,并在该场景下对本发明实施例技术方案的具体实施方式进行详细说明:
参照图2,本例中的AGV包括移动底盘(包括电机、控制器、嵌入式计算机)、2D激光雷达、二维码扫描装置(由朝下扫描的摄像头与预置了二维码识别程序的嵌入式计算设备组成)。
参照图3,该AGV可用于仓储环境下的二维码地图构建。该仓储环境包括货架、工作台等仓储功能部件,仓储环境地面上按一定间距铺设有二维码,每个二维码对应唯一的身份标识编号(identification,ID)。AGV使用2D激光雷达扫描环境轮廓,如图3虚线条所示,同时二维码扫描装置扫描地上的二维码信息。AGV沿着箭头方向前进,覆盖所有二维码,在重复经过至少一个二维码时形成闭环。AGV行进过程中对仓储环境充分扫描,最终生成一张包含了所有二维码位姿信息的占据栅格地图。
AGV在该仓储环境下构建地图的具体过程包括:
步骤(一):获取点云数据帧。
AGV前进过程中,使用2D激光雷达持续不断地扫描周围环境,得到点云数据帧。与此同时,AGV上的二维码扫描转置不断地扫描地面检查是否存在二维码,若恰好扫描到一个二维码,则记录其信息Qi={id,ξQ,i},其中id为二维码编号,ξQ,i为二维码在点云坐标系中的位姿,ξq_i=[xQ,iyQ,iθQ,i]T,xQ,i、yQ,i为障碍点相对于AGV的2D位移,θQ,i为2D旋转角;
点云数据帧可表示为Fi={Pi,QiF,i},其中Pi={pi,1,pi,2,…,pi,k}为2D点云,pi,k=[xi,kyi,k]T为一个2D障碍点的坐标,Qi为二维码信息,ξF,i表示该点云数据帧的位姿。若扫描得到某点云数据帧时,AGV的二维码扫描装置扫描得到二维码信息,则Qi为二维码信息,否则Fi中Qi为空。
步骤(二):生成局部地图。
当点云数据帧达到预设帧数N时,将最近的N帧点云数据帧进行匹配,以生成局部地图。其中,N帧点云数据帧的匹配过程包括步骤(a)至步骤(h):
(a)初始化。对占据栅格地图的每一个栅格,初始化设置其概率值为0;
(b)将一帧点云数据帧做模拟投影。设当前点云数据帧的位姿初始值为设当前其估计的位姿为其中初始值与历史帧的位姿相关,比如初始值可以为上一帧点云数据帧的位姿。参照图4,将点云投影至占据栅格地图:
其中,表示从第i帧点云数据帧对应的点云坐标系映射到世界坐标系(即栅格地图)的位姿变换矩阵,不同帧点云的点云坐标可以不同,所有点云数据帧的世界坐标系相同。di,k表示该点云帧内第k个障碍点与AGV的距离值,θi,k表示该障碍点相对于AGV的偏移角度,r表示栅格地图的分辨率, 即为第k个障碍点在点云坐标系中的横纵坐标,ui,k和vi,k分别表示该障碍点对应在栅格地图上的横纵坐标;图4中黑色填充的栅格表征历史帧的投影,斜线图案填充的栅格表征当前帧点云数据帧的投影;
(c)计算模拟投影对应的得分值。将该帧点云数据帧投影至占据栅格地图后,得到一系列栅格集合Gi={(ui,1,vi,1),(ui,2,vi,2),...,(ui,k,vi,k)},则可以计算该投影对应得分值如下:
其中f(ui,k,vi,k)为栅格(ui,k,vi,k)被障碍物占据的概率值,K为栅格集合内栅格的总数,Δx、Δy、Δθ分别为三个分量的差值,wT为平移权重,wR为旋转权重;
f(ui,k,vi,k)的计算方式为:
其中,foccupy为预设值,f′(ui,k,vi,k)为本次投影前的栅格的概率值;
(e)更新占据栅格地图的概率值。根据(d)中得到的ξF,i将点云数据帧重新投影至占据栅格地图,得到栅格集合Gi={(ui,1,vi,1),(ui,2,vi,2),...,(ui,k,vi,k)}。遍历Gi,按以下方式更新每个栅格的概率值:
其中,foccupy为预设值,f′(ui,k,vi,k)为更新前栅格的概率值,f(ui,k,vi,k)为更新后栅格的概率值;
(f)重复(b)~(e)过程,直到N帧点云数据帧处理完毕;
(g)更新局部地图的二维码信息。局部地图用Sj={F1,F2,...,FN,Qj,ξS,j}表示。其中取第N/2帧点云数据帧的位姿作为局部地图的位姿,即ξS,j=ξF,N/2;同时局部地图的二维码信息Qj的取值方法为:若N帧点云数据帧对应的二维码信息均为空,则令Qj为空,否则在扫描到二维码信息的点云数据帧集合中选取预设帧(比如距离ξS,j最近的点云数据帧),以该数据帧包含的二维码信息Qi作为局部地图的二维码信息Qj的值;
(h)更新位姿图。计算Sj内所有点云数据帧位姿相对于局部地图的位姿误差约束项,并添加到所有局部地图的整体位姿误差约束项中,即其中表示所有局部地图的整体位姿误差约束项,初始为0,随着局部地图数量的增加不断累加。表示局部地图Sj中的第i帧点云数据帧Fi相对于Sj的位姿误差约束项,表示为其中e(ξF,iS,j,ξi,j)为相对位姿误差函数,∑i,j为Fi与Sj之间的相对位姿ξi,j的协方差矩阵。
步骤(三),查找闭环。
设已生成的局部地图集合为{S1,S2,...,Sj-1},当生成Sj后进行闭环查找,其方法为:遍历{S1,S2,...,Sj-1},查找是否存在与Sj包含同一个二维码id的局部地图;
若不存,则重复上述步骤(一)、(二);
若存在,假设与Sj包含同一个二维码id的局部地图为Sm,则遍历Sj内的N帧点云数据帧,对Sj内每一帧执行操作:计算第i帧点云数据帧Fi位姿与Sm位姿之间的平移量,在确定其小于一定阈值时,计算Fi与Sm之间的相对位姿ξi,m。参照图5所示,在位姿图模型中待优化节点ξF,i与ξS,m构成的边表征误差约束项其中∑i,m为估算Fi与Sm之间的相对位姿ξi,m的协方差矩阵,e(ξF,i,ξS,m,ξi,m)为相对位姿误差函数。计算之后,将其加入到位姿图的整体误差中,即
步骤(四),优化位姿。采用梯度下降法不断调整所有局部地图的以及各局部地图中的点云数据帧的位姿,直到总体误差达到最小。
步骤(五),优化完成后,判断AGV是否已覆盖所有二维码;否为否,则重复步骤(一)至(四);若为是,则生成二维码地图。
其中,生成二维码地图的具体实现过程包括:遍历占据栅格地图的所有栅格,若栅格的概率值大于一定阈值则将该栅格设置为障碍物属性,否则设置为可通行属性,同时根据优化后的二维码位姿在栅格地图中标记二维码位置,例如图6所示。
在本实施例中,AGV在仓储环境中构建地图时,通过检测是否重复经过同一二维码位置确定已生成的局部地图是否构成闭环,并在确定生成的局部地图构成闭环时,计算AGV首次经过该同一二维码位置时生成的局部地图与AGV第二次经过该同一二维码位置时生成的局部地图的差异值,并根据计算得到的差异值对已生成的局部地图进行优化,以此实现对增量式构建地图过程中所累积的匹配误差的调整,提高了AGV构建地图的精确度。并且,上述实施例在构建地图、闭环检测以及地图优化等过程中,均是以局部地图为基本计算单位,计算量小,提高了AGV构建地图的效率。
基于同一发明构思,本发明实施例还提供一种构建地图的装置,参照图7,该装置包括:
扫描单元201,用于在控制AGV移动过程中,在不同的位置使用激光雷达对所述AGV的周围环境进行扫描测距,获得包含有障碍物信息的点云数据帧;其中,所述障碍物信息包括多个障碍点以及各障碍点与所述AGV的相对位置信息;
处理单元202,用于在扫描到的点云数据帧的数量达到预设帧数N时,基于扫描到的N帧点云数据帧生成局部地图;在确定所述AGV重复经过同一位置时,计算所述AGV首次经过所述同一位置时生成的第一局部地图与所述AGV第二次经过所述同一位置时生成的第二局部地图的差异值;根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化。
可选的,所述处理单元202用于基于扫描到的N帧点云数据帧生成局部地图,包括:
按照采集时间的先后顺序,依次对所述N帧点云数据帧中的每一帧点云数据帧执行如下操作:根据历史点云数据帧的位姿,估计当前点云数据帧的M个可能位姿,所述历史点云数据帧为所述AGV在采集所述当前点云数据帧之前的预设时间范围内所采集的连续多帧点云数据帧,所述位姿包括所述AGV采集点云数据帧时的位置相对于所述AGV的初始位置的距离、偏向角;基于所述M个可能位姿,将所述当前点云数据帧映射到栅格地图M次,获得M个初始映射图;计算各个初始映射图与所述历史点云数据帧在所述栅格地图上的映射图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述当前点云数据帧的位姿;
根据确定出的所述N帧点云数据帧中各个点云数据帧的位姿,将所述各个点云数据帧映射到所述栅格地图上,共获得N个映射图,将所述N个映射图作为所述局部地图。
可选的,所述扫描单元201还用于:检测地面是否有路标;在检测到路标时,将检测到的路标的相关信息添加到同时扫描到的点云数据帧中,其中所述相关信息包括检测到的路标的编号;所述处理单元202用于确定所述AGV重复经过同一位置,包括:从已生成的所有局部地图中的点云数据帧中获取路标的编号;在确定任一局部地图中的点云数据帧与另一局部地图中的点云数据帧均包含有同一路标的编号时,确定所述AGV重复经过所述同一路标所在的位置。
可选的,所述相关信息还包括检测到的路标与所述AGV的相对位置信息;所述处理单元202还用于:在根据所述差异值对已生成的所有局部地图进行优化之后,在确定所述AGV已检测到所有路标时,根据各个路标与所述AGV的相对位置信息,将各个路标添加到各个路标对应的局部地图中。
可选的,所述路标具体为二维码图像。
可选的,所述处理单元202还用于:在基于扫描到的N帧点云数据帧生成局部地图之后,将所述N帧点云数据帧中的预设帧的位姿作为所述局部地图的整体位姿;基于所述N帧点云数据帧中各个点云数据帧的位姿、所述局部地图的整体位姿,确定所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿;基于所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿,计算所述N帧点云数据帧中各个点云数据帧与所述局部地图的误差约束项对所述N帧点云数据帧中所有点云数据帧与所述局部地图的误差约束项进行求和作为所述局部地图的整体误差约束项;
所述处理单元202用于计算所述第一局部地图与所述第二局部地图的差异值,包括:计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿;基于所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,计算所述AGV采集所述第二局部地图中各个点云数据帧与所述第一局部地图的误差约束项对所述第二局部地图中所有点云数据帧与所述第一局部地图的误差约束项进行求和作为所述第一局部地图与所述第二局部地图的差异值;
所述处理单元202用于根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化,包括:求所有局部地图的整体位姿误差约束项与所述差异值的总和:采用梯度下降法调整已生成的所有局部地图中的点云数据帧的位姿,使达到最小值。
可选的,所述处理单元202用于计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,包括:对所述第二局部地图中的每一点云数据帧均执行如下操作:根据所述第一局部地图的位姿,估计所述第二局部地图中的任一点云数据帧的K个可能位姿;基于所述K个可能位姿,将所述任一点云数据帧映射到栅格地图K次,获得K个初始映射图;计算所述K个初始映射图中各个初始映射图与所述第一局部地图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述任一点云数据帧的新位姿;根据所述任一点云数据帧的新位姿与所述第一局部地图的整体位姿,确定所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿。
以上各单元所执行操作的具体实现方式可以参照本发明实施例上述构建地图的方法中对应步骤的具体实现方式,本发明实施例不再赘述。
基于同一发明构思,本发明实施例还提供一种构建地图的设备,参照图8,该设备包括:至少一个处理器301,以及与所述至少一个处理器301通信连接的存储器302;其中,所述存储器302存储有可被所述至少一个处理器301执行的指令,所述至少一个处理器301通过执行所述存储器302存储的指令执行本发明实施例上述构建地图的方法。
基于同一发明构思,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行本发明实施例上述构建地图的方法。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (16)

1.一种构建地图的方法,其特征在于,包括:
在控制自动导引运输车AGV移动过程中,在不同的位置使用激光雷达对所述AGV的周围环境进行扫描测距,获得包含有障碍物信息的点云数据帧;其中,所述障碍物信息包括多个障碍点以及各障碍点与所述AGV的相对位置信息;
在扫描到的点云数据帧的数量达到预设帧数N时,基于扫描到的N帧点云数据帧生成局部地图;
在确定所述AGV重复经过同一位置时,计算所述AGV首次经过所述同一位置时生成的第一局部地图与所述AGV第二次经过所述同一位置时生成的第二局部地图的差异值;
根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化。
2.如权利要求1所述的方法,其特征在于,所述基于扫描到的N帧点云数据帧生成局部地图,包括:
按照采集时间的先后顺序,依次对所述N帧点云数据帧中的每一帧点云数据帧执行如下操作:根据历史点云数据帧的位姿,估计当前点云数据帧的M个可能位姿,所述历史点云数据帧为所述AGV在采集所述当前点云数据帧之前的预设时间范围内所采集的连续多帧点云数据帧,所述位姿包括所述AGV采集点云数据帧时的位置相对于所述AGV的初始位置的距离、偏向角;基于所述M个可能位姿,将所述当前点云数据帧映射到栅格地图M次,获得M个初始映射图;计算各个初始映射图与所述历史点云数据帧在所述栅格地图上的映射图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述当前点云数据帧的位姿;
根据确定出的所述N帧点云数据帧中各个点云数据帧的位姿,将所述各个点云数据帧映射到所述栅格地图上,共获得N个映射图,将所述N个映射图作为所述局部地图。
3.如权利要求1或2所述的方法,其特征在于,在使用激光雷达进行扫描测距时,还包括:
检测地面是否有路标;在检测到路标时,将检测到的路标的相关信息添加到同时扫描到的点云数据帧中,其中所述相关信息包括检测到的路标的编号;
确定所述AGV重复经过同一位置,包括:
从已生成的所有局部地图中的点云数据帧中获取路标的编号;在确定任一局部地图中的点云数据帧与另一局部地图中的点云数据帧均包含有同一路标的编号时,确定所述AGV重复经过所述同一路标所在的位置。
4.如权利要求3所述的方法,其特征在于,所述相关信息还包括检测到的路标与所述AGV的相对位置信息;在根据所述差异值对已生成的所有局部地图进行优化之后,还包括:
在确定所述AGV已检测到所有路标时,根据各个路标与所述AGV的相对位置信息,将各个路标添加到各个路标对应的局部地图中。
5.如权利要求3所述的方法,其特征在于,所述路标具体为二维码图像。
6.如权利要求1或2所述的方法,其特征在于,在基于扫描到的N帧点云数据帧生成局部地图之后,所述方法还包括:
将所述N帧点云数据帧中的预设帧的位姿作为所述局部地图的整体位姿;基于所述N帧点云数据帧中各个点云数据帧的位姿、所述局部地图的整体位姿,确定所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿;基于所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿,计算所述N帧点云数据帧中各个点云数据帧与所述局部地图的误差约束项对所述N帧点云数据帧中所有点云数据帧与所述局部地图的误差约束项进行求和作为所述局部地图的整体误差约束项;
所述计算所述第一局部地图与所述第二局部地图的差异值,包括:
计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿;基于所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,计算所述AGV采集所述第二局部地图中各个点云数据帧与所述第一局部地图的误差约束项对所述第二局部地图中所有点云数据帧与所述第一局部地图的误差约束项进行求和作为所述第一局部地图与所述第二局部地图的差异值;
所述根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化,包括:
求所有局部地图的整体位姿误差约束项与所述差异值的总和:采用梯度下降法调整已生成的所有局部地图中的点云数据帧的位姿,使达到最小值。
7.如权利要求6所述的方法,其特征在于,所述计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,包括:
对所述第二局部地图中的每一点云数据帧均执行如下操作:根据所述第一局部地图的位姿,估计所述第二局部地图中的任一点云数据帧的K个可能位姿;基于所述K个可能位姿,将所述任一点云数据帧映射到栅格地图K次,获得K个初始映射图;计算所述K个初始映射图中各个初始映射图与所述第一局部地图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述任一点云数据帧的新位姿;根据所述任一点云数据帧的新位姿与所述第一局部地图的整体位姿,确定所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿。
8.一种构建地图的装置,其特征在于,包括:
扫描单元,用于在控制AGV移动过程中,在不同的位置使用激光雷达对所述AGV的周围环境进行扫描测距,获得包含有障碍物信息的点云数据帧;其中,所述障碍物信息包括多个障碍点以及各障碍点与所述AGV的相对位置信息;
处理单元,用于在扫描到的点云数据帧的数量达到预设帧数N时,基于扫描到的N帧点云数据帧生成局部地图;在确定所述AGV重复经过同一位置时,计算所述AGV首次经过所述同一位置时生成的第一局部地图与所述AGV第二次经过所述同一位置时生成的第二局部地图的差异值;根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化。
9.如权利要求8所述的装置,其特征在于,所述处理单元用于基于扫描到的N帧点云数据帧生成局部地图,包括:
按照采集时间的先后顺序,依次对所述N帧点云数据帧中的每一帧点云数据帧执行如下操作:根据历史点云数据帧的位姿,估计当前点云数据帧的M个可能位姿,所述历史点云数据帧为所述AGV在采集所述当前点云数据帧之前的预设时间范围内所采集的连续多帧点云数据帧,所述位姿包括所述AGV采集点云数据帧时的位置相对于所述AGV的初始位置的距离、偏向角;基于所述M个可能位姿,将所述当前点云数据帧映射到栅格地图M次,获得M个初始映射图;计算各个初始映射图与所述历史点云数据帧在所述栅格地图上的映射图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述当前点云数据帧的位姿;
根据确定出的所述N帧点云数据帧中各个点云数据帧的位姿,将所述各个点云数据帧映射到所述栅格地图上,共获得N个映射图,将所述N个映射图作为所述局部地图。
10.如权利要求8或9所述的装置,其特征在于,所述扫描单元还用于:检测地面是否有路标;在检测到路标时,将检测到的路标的相关信息添加到同时扫描到的点云数据帧中,其中所述相关信息包括检测到的路标的编号;
所述处理单元用于确定所述AGV重复经过同一位置,包括:从已生成的所有局部地图中的点云数据帧中获取路标的编号;在确定任一局部地图中的点云数据帧与另一局部地图中的点云数据帧均包含有同一路标的编号时,确定所述AGV重复经过所述同一路标所在的位置。
11.如权利要求10所述的装置,其特征在于,所述相关信息还包括检测到的路标与所述AGV的相对位置信息;
所述处理单元还用于:在根据所述差异值对已生成的所有局部地图进行优化之后,在确定所述AGV已检测到所有路标时,根据各个路标与所述AGV的相对位置信息,将各个路标添加到各个路标对应的局部地图中。
12.如权利要求10所述的装置,其特征在于,所述路标具体为二维码图像。
13.如权利要求8或9所述的装置,其特征在于,所述处理单元还用于:
在基于扫描到的N帧点云数据帧生成局部地图之后,将所述N帧点云数据帧中的预设帧的位姿作为所述局部地图的整体位姿;基于所述N帧点云数据帧中各个点云数据帧的位姿、所述局部地图的整体位姿,确定所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿;基于所述N帧点云数据帧中各个点云数据帧与所述局部地图的相对位姿,计算所述N帧点云数据帧中各个点云数据帧与所述局部地图的误差约束项对所述N帧点云数据帧中所有点云数据帧与所述局部地图的误差约束项进行求和作为所述局部地图的整体误差约束项;
所述处理单元用于计算所述第一局部地图与所述第二局部地图的差异值,包括:计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿;基于所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,计算所述AGV采集所述第二局部地图中各个点云数据帧与所述第一局部地图的误差约束项对所述第二局部地图中所有点云数据帧与所述第一局部地图的误差约束项进行求和作为所述第一局部地图与所述第二局部地图的差异值;
所述处理单元用于根据所述第一局部地图与所述第二局部地图的差异值对已生成的所有局部地图进行优化,包括:求所有局部地图的整体位姿误差约束项与所述差异值的总和:采用梯度下降法调整已生成的所有局部地图中的点云数据帧的位姿,使达到最小值。
14.如权利要求13所述的装置,其特征在于,所述处理单元用于计算所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿,包括:
对所述第二局部地图中的每一点云数据帧均执行如下操作:根据所述第一局部地图的位姿,估计所述第二局部地图中的任一点云数据帧的K个可能位姿;基于所述K个可能位姿,将所述任一点云数据帧映射到栅格地图K次,获得K个初始映射图;计算所述K个初始映射图中各个初始映射图与所述第一局部地图的重合度;确定重合度最高的初始映射图所对应的可能位姿为所述任一点云数据帧的新位姿;根据所述任一点云数据帧的新位姿与所述第一局部地图的整体位姿,确定所述第二局部地图中各个点云数据帧与所述第一局部地图的相对位姿。
15.一种构建地图的设备,其特征在于,包括:
至少一个处理器,以及
与所述至少一个处理器通信连接的存储器;
其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述至少一个处理器通过执行所述存储器存储的指令执行权利要求1至8中任一项所述的方法。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行权利要求1至8中任一项所述的方法。
CN201810199043.5A 2018-03-12 2018-03-12 一种构建地图的方法及装置 Active CN108550318B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810199043.5A CN108550318B (zh) 2018-03-12 2018-03-12 一种构建地图的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810199043.5A CN108550318B (zh) 2018-03-12 2018-03-12 一种构建地图的方法及装置

Publications (2)

Publication Number Publication Date
CN108550318A true CN108550318A (zh) 2018-09-18
CN108550318B CN108550318B (zh) 2020-09-29

Family

ID=63516037

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810199043.5A Active CN108550318B (zh) 2018-03-12 2018-03-12 一种构建地图的方法及装置

Country Status (1)

Country Link
CN (1) CN108550318B (zh)

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109558471A (zh) * 2018-11-14 2019-04-02 广州广电研究院有限公司 栅格地图的更新方法、装置、存储介质和系统
CN109613548A (zh) * 2018-12-28 2019-04-12 芜湖哈特机器人产业技术研究院有限公司 一种基于图优化的激光雷达路标地图构建方法
CN109613547A (zh) * 2018-12-28 2019-04-12 芜湖哈特机器人产业技术研究院有限公司 一种基于反光板的占据栅格地图构建方法
CN110008851A (zh) * 2019-03-15 2019-07-12 深兰科技(上海)有限公司 一种车道线检测的方法及设备
CN110288708A (zh) * 2019-05-05 2019-09-27 深圳大学 一种地图构建方法、装置及终端设备
CN110297224A (zh) * 2019-08-01 2019-10-01 深圳前海达闼云端智能科技有限公司 激光雷达的定位方法、装置、机器人及计算设备
CN110715655A (zh) * 2019-10-21 2020-01-21 兰剑智能科技股份有限公司 基于实时更新地图的agv定位方法、装置及系统
CN110861082A (zh) * 2019-10-14 2020-03-06 北京云迹科技有限公司 辅助建图方法、装置、建图机器人及存储介质
WO2020133415A1 (en) * 2018-12-29 2020-07-02 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for constructing a high-definition map based on landmarks
CN111383261A (zh) * 2018-12-27 2020-07-07 浙江舜宇智能光学技术有限公司 移动机器人、及其位姿估计方法和位姿估计装置
CN111508072A (zh) * 2020-04-23 2020-08-07 东软睿驰汽车技术(上海)有限公司 地图构建方法、装置、电子设备及存储介质
CN111504335A (zh) * 2020-04-23 2020-08-07 东软睿驰汽车技术(上海)有限公司 地图构建方法、装置、电子设备及存储介质
CN111679677A (zh) * 2020-06-24 2020-09-18 浙江大华技术股份有限公司 Agv的位姿调整方法、装置、存储介质、电子装置
CN111735463A (zh) * 2020-07-28 2020-10-02 北京云迹科技有限公司 一种建图方法及装置
CN111881233A (zh) * 2020-06-28 2020-11-03 广州文远知行科技有限公司 分布式点云地图构建方法和装置、服务器、计算机可读存储介质
CN112286201A (zh) * 2020-11-09 2021-01-29 苏州罗伯特木牛流马物流技术有限公司 Agv导航控制系统及方法
CN112685527A (zh) * 2020-12-31 2021-04-20 北京迈格威科技有限公司 建立地图的方法、装置和电子系统
WO2021114764A1 (zh) * 2019-12-10 2021-06-17 亿嘉和科技股份有限公司 基于局部地图的地图修正方法及系统
WO2021128297A1 (zh) * 2019-12-27 2021-07-01 深圳市大疆创新科技有限公司 三维点云地图构建方法、系统和设备
CN113252022A (zh) * 2020-02-11 2021-08-13 北京图森智途科技有限公司 一种地图数据处理方法及装置
CN113465614A (zh) * 2020-03-31 2021-10-01 北京三快在线科技有限公司 无人机及其导航地图的生成方法和装置
CN113759369A (zh) * 2020-06-28 2021-12-07 北京京东乾石科技有限公司 基于双多线雷达的建图方法和装置
CN114236564A (zh) * 2022-02-23 2022-03-25 浙江华睿科技股份有限公司 动态环境下机器人定位的方法、机器人、装置及存储介质
CN114842458A (zh) * 2022-06-29 2022-08-02 小米汽车科技有限公司 障碍物检测方法、装置、车辆和存储介质
CN117824667A (zh) * 2024-03-06 2024-04-05 成都睿芯行科技有限公司 一种基于二维码和激光的融合定位方法及介质

Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3608658A1 (de) * 1985-03-14 1986-09-25 Nissan Motor Co., Ltd., Yokohama, Kanagawa Navigationssystem und -verfahren fuer kraftfahrzeuge
CN101210825A (zh) * 2006-12-27 2008-07-02 爱信艾达株式会社 地图信息生成系统
CN103869814A (zh) * 2012-12-17 2014-06-18 联想(北京)有限公司 一种终端定位和导航方法以及可移动的终端
CN103901885A (zh) * 2012-12-28 2014-07-02 联想(北京)有限公司 信息处理方法和信息处理设备
CN104764457A (zh) * 2015-04-21 2015-07-08 北京理工大学 一种用于无人车的城市环境构图方法
CN104850615A (zh) * 2015-05-14 2015-08-19 西安电子科技大学 一种基于g2o的SLAM后端优化算法方法
CN105004340A (zh) * 2015-07-14 2015-10-28 沈向东 结合惯性导航技术和指纹定位技术的定位误差修正方法
CN105527968A (zh) * 2014-09-29 2016-04-27 联想(北京)有限公司 信息处理方法和信息处理装置
CN105702151A (zh) * 2016-03-31 2016-06-22 百度在线网络技术(北京)有限公司 一种室内地图构建方法及装置
CN105760811A (zh) * 2016-01-05 2016-07-13 福州华鹰重工机械有限公司 全局地图闭环匹配方法及装置
CN106125730A (zh) * 2016-07-10 2016-11-16 北京工业大学 一种基于鼠脑海马空间细胞的机器人导航地图构建方法
CN106767820A (zh) * 2016-12-08 2017-05-31 立得空间信息技术股份有限公司 一种室内移动定位与制图方法
CN107239076A (zh) * 2017-06-28 2017-10-10 仲训昱 基于虚拟扫描与测距匹配的agv激光slam方法
KR20170116889A (ko) * 2016-04-12 2017-10-20 주식회사 다비오 지도 제작 장치
CN107515891A (zh) * 2017-07-06 2017-12-26 杭州南江机器人股份有限公司 一种机器人地图制作方法、装置和存储介质
CN107741745A (zh) * 2017-09-19 2018-02-27 浙江大学 一种实现移动机器人自主定位与地图构建的方法
CN107764270A (zh) * 2017-10-19 2018-03-06 武汉工控仪器仪表有限公司 一种激光扫描式室内地图生成和更新装置及方法

Patent Citations (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3608658A1 (de) * 1985-03-14 1986-09-25 Nissan Motor Co., Ltd., Yokohama, Kanagawa Navigationssystem und -verfahren fuer kraftfahrzeuge
CN101210825A (zh) * 2006-12-27 2008-07-02 爱信艾达株式会社 地图信息生成系统
CN103869814A (zh) * 2012-12-17 2014-06-18 联想(北京)有限公司 一种终端定位和导航方法以及可移动的终端
CN103901885A (zh) * 2012-12-28 2014-07-02 联想(北京)有限公司 信息处理方法和信息处理设备
CN105527968A (zh) * 2014-09-29 2016-04-27 联想(北京)有限公司 信息处理方法和信息处理装置
CN104764457A (zh) * 2015-04-21 2015-07-08 北京理工大学 一种用于无人车的城市环境构图方法
CN104850615A (zh) * 2015-05-14 2015-08-19 西安电子科技大学 一种基于g2o的SLAM后端优化算法方法
CN105004340A (zh) * 2015-07-14 2015-10-28 沈向东 结合惯性导航技术和指纹定位技术的定位误差修正方法
CN105760811A (zh) * 2016-01-05 2016-07-13 福州华鹰重工机械有限公司 全局地图闭环匹配方法及装置
CN105702151A (zh) * 2016-03-31 2016-06-22 百度在线网络技术(北京)有限公司 一种室内地图构建方法及装置
KR20170116889A (ko) * 2016-04-12 2017-10-20 주식회사 다비오 지도 제작 장치
CN106125730A (zh) * 2016-07-10 2016-11-16 北京工业大学 一种基于鼠脑海马空间细胞的机器人导航地图构建方法
CN106767820A (zh) * 2016-12-08 2017-05-31 立得空间信息技术股份有限公司 一种室内移动定位与制图方法
CN107239076A (zh) * 2017-06-28 2017-10-10 仲训昱 基于虚拟扫描与测距匹配的agv激光slam方法
CN107515891A (zh) * 2017-07-06 2017-12-26 杭州南江机器人股份有限公司 一种机器人地图制作方法、装置和存储介质
CN107741745A (zh) * 2017-09-19 2018-02-27 浙江大学 一种实现移动机器人自主定位与地图构建的方法
CN107764270A (zh) * 2017-10-19 2018-03-06 武汉工控仪器仪表有限公司 一种激光扫描式室内地图生成和更新装置及方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JOSÉ E: "Optimization of the Simultaneous Localization", 《TRANSACTIONS ON ROBOTICS AND AUTOMATION》 *
李群明,熊蓉,褚健: "室内自主移动机器人定位方法研究综述", 《机器人》 *
王磊: "全区域覆盖移动机器人同时定位与地图创建(SLAM)技术的研究", 《中国优秀博硕士学位论文全文数据库 (硕士) 信息科技辑》 *

Cited By (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109558471B (zh) * 2018-11-14 2020-10-16 广州广电研究院有限公司 栅格地图的更新方法、装置、存储介质和系统
CN109558471A (zh) * 2018-11-14 2019-04-02 广州广电研究院有限公司 栅格地图的更新方法、装置、存储介质和系统
CN111383261A (zh) * 2018-12-27 2020-07-07 浙江舜宇智能光学技术有限公司 移动机器人、及其位姿估计方法和位姿估计装置
CN109613547B (zh) * 2018-12-28 2022-05-27 芜湖哈特机器人产业技术研究院有限公司 一种基于反光板的占据栅格地图构建方法
CN109613547A (zh) * 2018-12-28 2019-04-12 芜湖哈特机器人产业技术研究院有限公司 一种基于反光板的占据栅格地图构建方法
CN109613548A (zh) * 2018-12-28 2019-04-12 芜湖哈特机器人产业技术研究院有限公司 一种基于图优化的激光雷达路标地图构建方法
WO2020133415A1 (en) * 2018-12-29 2020-07-02 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for constructing a high-definition map based on landmarks
US10996337B2 (en) 2018-12-29 2021-05-04 Beijing Didi Infinity Technology And Development Co., Ltd. Systems and methods for constructing a high-definition map based on landmarks
CN110008851A (zh) * 2019-03-15 2019-07-12 深兰科技(上海)有限公司 一种车道线检测的方法及设备
CN110008851B (zh) * 2019-03-15 2021-11-19 深兰科技(上海)有限公司 一种车道线检测的方法及设备
CN110288708A (zh) * 2019-05-05 2019-09-27 深圳大学 一种地图构建方法、装置及终端设备
CN110297224A (zh) * 2019-08-01 2019-10-01 深圳前海达闼云端智能科技有限公司 激光雷达的定位方法、装置、机器人及计算设备
CN110861082A (zh) * 2019-10-14 2020-03-06 北京云迹科技有限公司 辅助建图方法、装置、建图机器人及存储介质
WO2021077614A1 (zh) * 2019-10-21 2021-04-29 兰剑智能科技股份有限公司 基于实时更新地图的agv定位方法、装置及系统
CN110715655A (zh) * 2019-10-21 2020-01-21 兰剑智能科技股份有限公司 基于实时更新地图的agv定位方法、装置及系统
WO2021114764A1 (zh) * 2019-12-10 2021-06-17 亿嘉和科技股份有限公司 基于局部地图的地图修正方法及系统
CN113424232B (zh) * 2019-12-27 2024-03-15 深圳市大疆创新科技有限公司 三维点云地图构建方法、系统和设备
CN113424232A (zh) * 2019-12-27 2021-09-21 深圳市大疆创新科技有限公司 三维点云地图构建方法、系统和设备
WO2021128297A1 (zh) * 2019-12-27 2021-07-01 深圳市大疆创新科技有限公司 三维点云地图构建方法、系统和设备
CN113252022A (zh) * 2020-02-11 2021-08-13 北京图森智途科技有限公司 一种地图数据处理方法及装置
CN113465614A (zh) * 2020-03-31 2021-10-01 北京三快在线科技有限公司 无人机及其导航地图的生成方法和装置
CN113465614B (zh) * 2020-03-31 2023-04-18 北京三快在线科技有限公司 无人机及其导航地图的生成方法和装置
CN111508072A (zh) * 2020-04-23 2020-08-07 东软睿驰汽车技术(上海)有限公司 地图构建方法、装置、电子设备及存储介质
CN111504335A (zh) * 2020-04-23 2020-08-07 东软睿驰汽车技术(上海)有限公司 地图构建方法、装置、电子设备及存储介质
CN111508072B (zh) * 2020-04-23 2023-07-04 东软睿驰汽车技术(上海)有限公司 地图构建方法、装置、电子设备及存储介质
CN111679677B (zh) * 2020-06-24 2023-10-03 浙江华睿科技股份有限公司 Agv的位姿调整方法、装置、存储介质、电子装置
CN111679677A (zh) * 2020-06-24 2020-09-18 浙江大华技术股份有限公司 Agv的位姿调整方法、装置、存储介质、电子装置
CN113759369A (zh) * 2020-06-28 2021-12-07 北京京东乾石科技有限公司 基于双多线雷达的建图方法和装置
CN111881233B (zh) * 2020-06-28 2022-01-18 广州文远知行科技有限公司 分布式点云地图构建方法和装置、服务器、计算机可读存储介质
CN113759369B (zh) * 2020-06-28 2023-12-05 北京京东乾石科技有限公司 基于双多线雷达的建图方法和装置
CN111881233A (zh) * 2020-06-28 2020-11-03 广州文远知行科技有限公司 分布式点云地图构建方法和装置、服务器、计算机可读存储介质
CN111735463A (zh) * 2020-07-28 2020-10-02 北京云迹科技有限公司 一种建图方法及装置
CN112286201A (zh) * 2020-11-09 2021-01-29 苏州罗伯特木牛流马物流技术有限公司 Agv导航控制系统及方法
CN112685527A (zh) * 2020-12-31 2021-04-20 北京迈格威科技有限公司 建立地图的方法、装置和电子系统
CN114236564A (zh) * 2022-02-23 2022-03-25 浙江华睿科技股份有限公司 动态环境下机器人定位的方法、机器人、装置及存储介质
CN114842458A (zh) * 2022-06-29 2022-08-02 小米汽车科技有限公司 障碍物检测方法、装置、车辆和存储介质
CN117824667A (zh) * 2024-03-06 2024-04-05 成都睿芯行科技有限公司 一种基于二维码和激光的融合定位方法及介质

Also Published As

Publication number Publication date
CN108550318B (zh) 2020-09-29

Similar Documents

Publication Publication Date Title
CN108550318A (zh) 一种构建地图的方法及装置
JP6896077B2 (ja) 車両自動パーキングシステム及び方法
KR102296507B1 (ko) 트래킹 네트워크를 포함한 cnn을 사용하여 객체를 트래킹하는 방법 및 이를 이용한 장치
CN110832279B (zh) 对准由自主车辆捕获的数据以生成高清晰度地图
CN105865449B (zh) 基于激光和视觉的移动机器人的混合定位方法
CN108921947A (zh) 生成电子地图的方法、装置、设备、存储介质以及采集实体
CN110386142A (zh) 用于自动驾驶车辆的俯仰角校准方法
CN111650598A (zh) 一种车载激光扫描系统外参标定方法和装置
CN110146909A (zh) 一种定位数据处理方法
CN110009718A (zh) 一种三维高精度地图生成方法及装置
CN103901891A (zh) 一种基于层次结构的动态粒子树slam算法
Desaraju et al. Vision-based landing site evaluation and informed optimal trajectory generation toward autonomous rooftop landing
KR102338763B1 (ko) V2x 정보 융합을 이용하여 hd 맵을 업데이트하기 위한 자차량 위치 결정을 수행하는 방법 및 장치
CN110986945B (zh) 基于语义高度地图的局部导航方法和系统
CN114119920A (zh) 三维点云地图构建方法、系统
Hähnel Mapping with mobile robots.
CN110515382A (zh) 一种智能设备及其定位方法
Forsman et al. 3-D mapping of natural environments with trees by means of mobile perception
Dimitrievski et al. Robust matching of occupancy maps for odometry in autonomous vehicles
CN114577196A (zh) 使用光流的激光雷达定位
CN113589306B (zh) 定位方法、装置、电子设备及存储介质
CN111710039A (zh) 一种高精度地图的构建方法、系统、终端和存储介质
CN114236553B (zh) 一种基于深度学习的自主移动机器人定位方法
KR102626574B1 (ko) 카메라 및 라이다의 캘리브레이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
KR102616437B1 (ko) 라이다 및 관성측정장치의 캘리브레이션 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant