CN116501813A - 建图方法、装置、设备及介质 - Google Patents

建图方法、装置、设备及介质 Download PDF

Info

Publication number
CN116501813A
CN116501813A CN202210054753.5A CN202210054753A CN116501813A CN 116501813 A CN116501813 A CN 116501813A CN 202210054753 A CN202210054753 A CN 202210054753A CN 116501813 A CN116501813 A CN 116501813A
Authority
CN
China
Prior art keywords
map
local area
point cloud
precision
preset
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.)
Pending
Application number
CN202210054753.5A
Other languages
English (en)
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.)
Uisee Shanghai Automotive Technologies Ltd
Original Assignee
Uisee Shanghai Automotive Technologies 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 Uisee Shanghai Automotive Technologies Ltd filed Critical Uisee Shanghai Automotive Technologies Ltd
Priority to CN202210054753.5A priority Critical patent/CN116501813A/zh
Publication of CN116501813A publication Critical patent/CN116501813A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • Geometry (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)
  • Instructional Devices (AREA)

Abstract

本公开实施例涉及一种建图方法、装置、设备及介质,其中该方法包括:获取预设场景下第一局部区域的第一地图;其中,第一局部区域为GPS信号低于预设信号阈值的区域,第一地图是基于行驶在第一局部区域的第一车辆采集到的点云数据构建的;获取预设场景下第二局部区域的第二地图;第二局部区域为与第一局部区域有重叠且可获取到高精度地图的区域,第二地图的精度大于预设精度阈值;采用第二地图对第一地图进行矫正,以使第一地图的精度大于预设精度阈值;基于第二地图和矫正后的第一地图构建预设场景对应的高精度地图。本公开实施例无需高精度IMU即可对存在GPS信号缺失的场景进行高精度地图构建,所需成本较低,普适性较强。

Description

建图方法、装置、设备及介质
技术领域
本公开涉及图像处理技术领域,尤其涉及一种建图方法、装置、设备及介质。
背景技术
在无人驾驶技术中,车辆定位的精准性与地图精度直接相关。现有方案主要依靠SLAM(Simultaneous Localization And Mapping,同步定位与建图)构建高精度地图,而SLAM增量式建图过程中会存在累计误差,通常情况下,在基于SLAM技术建图时还会结合GPS(Global Positioning System,全球定位系统)进行误差矫正,从而保障建图精度。
然而,在一些场景中存在GPS信号缺失的情形,诸如高架桥下因GPS信号被遮挡,导致完全无GPS信号或者GPS信号很弱,此类场景无法采用GPS对SLAM建图过程中的误差进行矫正,导致最终所得的地图与真实地理坐标出现较大偏差,建图精度较差,容易出现定位导航错误的问题。而虽然相关技术对此采用的解决方案为在GPS缺失的场景中采用高精度IMU(Inertial Measurement Unit,惯性测量单元)对SLAM建图误差进行矫正,但是高精度IMU的成本高昂,普适性较差。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开提供了一种建图方法、装置、设备及介质。
第一方面,本公开实施例提供了一种建图方法,所述方法包括:获取预设场景下第一局部区域的第一地图;其中,所述第一局部区域为GPS信号低于预设信号阈值的区域,所述第一地图是基于行驶在所述第一局部区域的第一车辆采集到的点云数据构建的;获取所述预设场景下第二局部区域的第二地图;所述第二局部区域为与所述第一局部区域有重叠且可获取到高精度地图的区域,所述第二地图的精度大于预设精度阈值;采用所述第二地图对所述第一地图进行矫正,以使所述第一地图的精度大于所述预设精度阈值;基于所述第二地图和矫正后的所述第一地图构建所述预设场景对应的高精度地图。
第二方面,本公开实施例提供了一种建图装置,包括:第一地图获取模块,用于获取预设场景下第一局部区域的第一地图;其中,所述第一局部区域为GPS信号低于预设信号阈值的区域,所述第一地图是基于行驶在所述第一局部区域的第一车辆采集到的点云数据构建的;第二地图获取模块,用于获取所述预设场景下第二局部区域的第二地图;所述第二局部区域为与所述第一局部区域有重叠且可获取到高精度地图的区域,所述第二地图的精度大于预设精度阈值;第一地图矫正模块,用于采用所述第二地图对所述第一地图进行矫正,以使所述第一地图的精度大于所述预设精度阈值;场景地图构建模块,用于基于所述第二地图和矫正后的所述第一地图构建所述预设场景对应的高精度地图。
第三方面,本公开实施例提供了一种电子设备,所述电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现如本公开实施例提供的建图方法。
第四方面,本公开实施例提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行如本公开实施例提供的建图方法。
本公开实施例还提供了一种电子设备,所述电子设备包括:处理器;用于存储所述处理器可执行指令的存储器;所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现如本公开实施例提供的建图方法。
本公开实施例还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行如本公开实施例提供的建图方法。
本公开实施例提供的上述技术方案,能够获取预设场景下第一局部区域的第一地图;其中,第一局部区域为GPS信号低于预设信号阈值的区域,第一地图是基于行驶在第一局部区域的第一车辆采集到的点云数据构建的;获取预设场景下第二局部区域的第二地图;第二局部区域为与第一局部区域有重叠且可获取到高精度地图的区域,第二地图的精度大于预设精度阈值;采用第二地图对第一地图进行矫正,以使第一地图的精度大于预设精度阈值;基于第二地图和矫正后的第一地图构建预设场景对应的高精度地图。上述方式中,虽然第一局部区域的GPS信号低于信号阈值,基于点云数据构建所得的第一地图的精度不足,存在一定的误差,但是可以采用与第一局部区域重叠且可获取高精度地图的第二局部区域的第二地图对第一地图进行矫正,从而提升第一地图的精度,最后还可以基于第二地图和矫正后的第一地图构建预设场景对应的高精度地图。本公开实施例无需高精度IMU即可对存在GPS信号缺失的场景进行高精度地图构建,所需成本较低,普适性较强。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种建图方法的流程示意图;
图2为本公开实施例提供的一种横穿高架建图系统结构示意图;
图3为本公开实施例提供的一种多个路口地图的示意图;
图4为本公开实施例提供的一种高架桥场景示意图;
图5为本公开实施例提供的一种高架桥下建图系统结构示意图;
图6为本公开实施例提供的一种高架桥下场景的建图方法流程图;
图7为本公开实施例提供的一种级联式匹配算法流程图;
图8为本公开实施例提供的一种建图装置的结构示意图;
图9为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
定位技术在无人驾驶领域中占据着极其重要的地位,自动驾驶车辆往往需要高精度地图进行自主定位,地图精度通常会直接影响定位的精准性。主流的高精度建图方案主要采用SLAM技术建图,但是在长距离GPS缺失的场景下,随移动距离与时间增长,误差逐渐累积,在无外源定位信息矫正的情况下,基于SLAM技术构建所得的地图将会和真实地理坐标出现较大偏差,诸如,每公里约5m偏差。
基于SLAM技术构建的地图具有累积误差的原因为:SLAM技术属于增量式建图,在建图过程中,每帧数据的定位解算(即里程计)都有一定的位姿(位置+角度)误差,鉴于SLAM增量式特点,下一帧的定位误差会累积在之前的误差上,故随着车辆行驶的距离增加,累积误差也将随之增大,导致车辆轨迹、构建所得的地图与真实位置偏离越来越大。
基于以上问题,在实际应用中,通常需要同时结合其它定位误差无累积的定位手段来矫正SLAM的累积误差,常用方式为采用外源高精度定位数据对SLAM的累计误差进行矫正,但其需有高精度定位设备进行辅助,诸如采用GPS和/或高精度IMU,通过对轨迹添加位姿约束,矫正轨迹与真值一致,从而消除相应的累积误差。但是,在很多场景下由于遮挡等原因,GPS信号很差甚至完全没有GPS信号,此时则无法再采用GPS进行误差矫正,而高精度IMU的造价非常高昂,普适性较差,很多没有配置高精度IMU的车辆在建图行驶过程中,一旦进入GPS信号缺失的区域,因误差无法被矫正,则轨迹会逐渐偏离,构建所得的该区域对应的地图也存在较大的误差,精度不高,与真实地理坐标存在偏差,即便后续行驶至有GPS信号的其它区域,也无法再进行地图对齐。
以常见的长距离高架桥下的建图场景为例,由于GPS信号被高架桥遮挡,而精准的多轴IMU造价高昂,大多车辆并不会配置高精度IMU,因此这些没有配置高精度IMU的车辆在进入高架桥下时,没有外源定位数据(诸如GPS数据、高精度IMU数据)对SLAM的累积误差进行矫正,因此轨迹逐渐偏离,且构建的高架桥下的主路地图与真实地理坐标之间的偏差也逐渐增大,在遇到横穿高架桥下的路口处,也会出现无法与路口地图(也即,高精度的横穿地图)对齐的情况。因此,高架桥下的所构建的地图大多精度不佳,存在一定的误差,对于自动驾驶车辆而言非常容易出现定位导航错误等问题。
为了改善以上问题,本公开实施例提供了一种建图方法、装置、设备及介质,可应用于存在GPS信号缺失的场景,无需采用高精度IMU便可以构建高精度地图,以下进行详细说明。
图1为本公开实施例提供的一种建图方法的流程示意图,该方法可以由建图装置执行,其中该装置可以采用软件和/或硬件实现,一般可集成在电子设备中。如图1所示,该方法主要包括如下步骤S102~步骤S108:
步骤S102,获取预设场景下第一局部区域的第一地图;其中,第一局部区域为GPS信号低于预设信号阈值的区域,第一地图是基于行驶在第一局部区域的第一车辆采集到的点云数据构建的。
其中,预设场景可以根据实际情况设置,在此不进行限制,一些实施示例中,预设场景包括GPS信号低于预设信号阈值的第一局部区域和可获取到高精度地图的第二局部区域,且第一局部区域和第二局部区域具有部分重叠。其中,预设信号阈值可以根据需求而设置,通常而言,预设信号阈值的数值较低,而低于预设信号阈值的GPS信号通常很弱甚至完全没有,无法被有效利用,因此第一局部区域也可被视为属于GPS信号缺失的区域。
为了感知区域环境从而进行地图构建,第一车辆配置有多种传感器,多种传感器诸如可以包括雷达、GPS等传感器,还可以包括诸如摄像头、CAN(Controller AreaNetwork,控制器局域网)、低精度IMU等,在此不进行限制。由于第一局部区域的GPS信号缺失,因此只能基于第一车辆采集到的点云数据(诸如通过雷达采集到的点云数据)构建第一地图,具体实现时,可以基于第一车辆采集到的点云数据和SLAM技术构建第一地图,而由于在地图构建过程中无法利用GPS信号对SLAM的累计误差进行矫正,因此,所得的第一局部区域的第一地图为存在误差的地图,精度不高。
步骤S104,获取预设场景下第二局部区域的第二地图;第二局部区域为与第一局部区域有重叠且可获取到高精度地图的区域,第二地图的精度大于预设精度阈值。
本公开实施例对第二局部区域的高精度地图获取方式不进行限定,诸如,可以直接从指定系统下载预先构建的第二局部区域的第二地图。
第二局部区域与第一局部区域存在部分重叠,可以理解的是,虽然第二局部区域在重叠区域中的GPS信号也低于预设信号阈值,但是非重叠区域的GPS信号较高(未被遮挡或屏蔽),因此能够有效利用非重叠区域的GPS信号对重叠区域对应的地图进行矫正,以确保第二地图的精度大于预设精度阈值。其中,预设精度阈值可以根据需求而灵活设置,通常而言,大于预设精度阈值的地图即可被视为高精度地图。
步骤S106,采用第二地图对第一地图进行矫正,以使第一地图的精度大于预设精度阈值。
由于第一局部区域和第二局部区域之间存在重叠区域,对于第二地图中该重叠区域对应的局部地图而言是高精度的,而对于第一地图中该重叠区域对应的局部地图而言是低精度的(也即,与真实地理坐标存在误差),因此在一些实施方式中,可以利用重叠区域对应的两个局部地图之间的偏差,对第一地图进行矫正,以提升第一地图的精度。通过这种方式,即便车辆没有配置成本高昂的高精度IMU,也可以针对GPS信号缺失的区域得到相应的高精度地图。
步骤S108,基于第二地图和矫正后的第一地图构建预设场景对应的高精度地图。
在一些具体的实施方式中,可以将第二地图和矫正后的第一地图进行对齐,将对齐后的合并地图作为所述预设场景对应的高精度地图。其中,在对齐过程中,可将第二地图和矫正后的第一地图之间的重叠区域对应的局部地图进行重合,从而实现第二地图和矫正后的第一地图的拼接。对齐后所得的整幅地图即可作为预设场景对应的高精度地图。
上述方式中,虽然第一局部区域的GPS信号低于信号阈值,基于点云数据构建所得的第一地图的精度不足,存在一定的误差,但是可以采用与第一局部区域重叠且可获取高精度地图的第二局部区域的第二地图对第一地图进行矫正,从而提升第一地图的精度,最后还可以基于第二地图和矫正后的第一地图构建预设场景对应的高精度地图。本公开实施例无需高精度IMU即可对存在GPS信号缺失的场景进行高精度地图构建,所需成本较低,普适性较强。
在一些实施方式中,第二局部区域中与第一局部区域重叠之外的非重叠区域均为GPS信号高于预设信号阈值的区域,高于预设信号阈值的GPS信号为有效信号,可用于进行地图构建,诸如可用于对SLAM的累计误差进行矫正,在此基础上,第二局部区域的第二地图是按照如下方式预先构建的:基于图优化算法以及行驶在第二局部区域的第二车辆采集到的多传感器数据,构建第二局部区域的第二地图。
其中,图优化算法的基本思想为:通过保留所有的观测数据帧以及帧间的空间约束关系,并将约束看作是随机观测,然后采用最大似然方法估计车辆位姿。而行驶在第二局部区域的第二车辆采集到的多传感器数据即为观测数据帧,通常而言,车辆在行驶过程中可以采集到多个观测数据帧,每个观测数据帧诸如可以体现点云、车辆位姿等信息。
在一些具体的实施方式中,基于图优化算法以及行驶在第二局部区域的第二车辆采集到的多传感器数据,构建第二局部区域的第二地图的步骤,可以参照如下步骤a~步骤c实现:
步骤a,基于行驶在第二局部区域的第二车辆采集到的多传感器数据,获取第二关键帧以及每个第二关键帧对应的约束因子;其中,每个第二关键帧对应的约束因子包含里程计因子,且部分第二关键帧对应的约束因子还包含有GPS因子。其中,约束因子也可以理解为约束条件。示例性的,上述步骤a可以参照如下步骤a1~a4执行:
步骤a1,基于行驶在第二局部区域的第二车辆采集到的多传感器数据获取多个第二关键帧。车辆在行驶过程中可以采集多个观测数据帧,为了提升处理效率,可以从中选取部分观测数据帧作为关键帧,主要针对关键帧进行处理。示例性地,可以每n帧选取一帧作为关键帧,或者,在第二车辆每行驶m米所采集的观测数据帧作为关键帧,具体n值或m值可以根据需求而灵活设置,在此不进行限制。
步骤a2,对于每个第二关键帧,基于该第二关键帧对应的多传感器数据,为该第二关键帧添加相应的里程计因子。可以理解的是,根据多传感器数据可以明确获知每个观测数据帧对应的里程计,因此每个第二关键帧都具有相应的里程计,并为其添加里程计因子,里程计因子用于作为图优化算法中的一种约束因子。
步骤a3,在该第二关键帧对应的多传感器数据中包含高于预设信号阈值的GPS信号的情况下,为该第二关键帧添加相应的GPS因子。由于第二局部区域中包含有GPS信号缺失的区域(也即与第一局部区域重叠的区域),也包含有可以有效获取GPS信号的区域,因此第二车辆行驶在第二局部区域中,在GPS信号缺失的区域中采集的第二关键帧对应的多传感器数据可能不包含高于预设信号阈值的GPS信号,而在其它区域中采集的第二关键帧对应的多传感器数据则包含有高于预设信号阈值的GPS信号,也即只有在某第二关键帧对应的多传感器数据包含有高于预设信号阈值的GPS信号的情况下,才为其添加相应的GPS因子。
步骤a4,在该第二关键帧对应的多传感器数据指示检测到回环的情况下,为该第二关键帧添加相应的回环因子。除此之外,可以根据多传感器数据进行回环检测,检测到回环的情况下添加相应的回环因子。诸如,第二车辆环形运动回到已建图的起点处,则认为检索到回环约束,回环至起点处所对应的第二关键帧即可相应添加回环因子。
步骤b,根据每个第二关键帧对应的约束因子以及图优化算法,对每个第二关键帧的位姿进行优化。如上所述,每个第二关键帧对应的约束因子至少包含里程计因子,部分第二关键帧对应的约束因子还可能包含有回环因子和/或GPS因子,在上述因子的约束下结合图优化算法,即可对每个第二关键帧的位姿进行优化,得到优化后的位姿。具体而言,针对位姿的优化量为车辆的六个自由度的状态量。
在图优化过程中,每个第二关键帧都对应一个状态节点,每个约束因子都对应一条约束边,然后计算整幅图的均方根误差,通过最小化此误差进行优化,误差优化的过程实质为调整位姿的过程,优化后的节点即对应每个第二关键帧优化后的位姿。
步骤c,基于优化后的位姿构建第二局部区域的第二地图。
在得到每个第二关键帧经优化后的位姿之后,可以使每个第二关键帧对应的点云基于优化后的位姿进行空间转换到大地坐标系,然后多个第二关键帧经空间转换后的点云再进行叠加,即可组成第二局部区域的第二地图,该第二地图也为高精度点云地图。
为便于理解上述步骤a~c,以预设场景包括高架桥下的区域场景为例,高架桥下的区域场景中包含至少一个高架桥下的主路区域以及每个主路区域对应的路口区域,该路口区域也即横穿高架桥的路口所在区域;其中,主路区域为第一局部区域,路口区域为第二局部区域。在该种情况下,可参见图2所示的一种横穿高架建图系统结构示意图,具体示意出了在构建第二局部区域(也即横穿高架桥的路口所在区域)的地图时所采用的图优化方式,图2中的x_i表征车辆状态节点,每个第二关键帧(也即雷达关键帧)分别对应一个车辆状态节点,其中,第二关键帧均取自于雷达帧,诸如每间隔多个雷达帧则选取一个第二关键帧,如图2所示,诸如F_0、F_k、F_i等均为第二关键帧,F_0对应的车辆状态节点为x_0,F_k对应的车辆状态节点为x_k,依次类推。如图2所示,高架桥下对应有部分车辆状态节点(如x_k~x_k+j),高架桥下的区域即为路口区域所包含的横穿高架桥的部分区域,因GPS信号被高架桥遮挡,所以GPS信号大多低于预设信号阈值,属于GPS信号缺失状态,所以高架桥下对应的车辆状态节点均无GPS观测值及GPS因子。图2中示意的除x_k~x_k+j之外的其它车辆状态节点均为路口区域所包含的除高架桥下之外的区域所对应的状态节点,高架桥下之外的区域因没有被遮挡,所以可以正常接收GPS信号,故大多车辆状态节点都可以对应有GPS因子,如图2所示,可以基于每个车辆状态节点对应的GPS测量值(诸如GPS_m)为其相应添加gps因子,构成GPS约束。另外,如果多传感器数据指示F_2和F_i为回环帧,即可在二者之间构建回环约束,也即加入回环(loop)因子。另外,由于每个关键帧都会对应有里程计,因此每个关键帧都可添加相应的里程计因子(odom)。
综上,在针对横穿高架的路口区域进行建图时,可以使用基于图优化的多传感器融合建图方式增加建图精度与鲁棒性,其中,建图过程中的优化量为车辆六自由度的状态量,约束因子至少有里程计因子,还可以进一步包含GPS因子和/或回环因子。在建图推算中,可以使用点云-局部地图的扫描配准算法,获得关键帧间的位姿变化,以此作为车辆状态量的里程计因子。若该时刻有GPS观测值则对相应的车辆状态节点添加GPS因子;而在高架桥下由于GPS信号被遮挡,则无GPS因子。此外若车辆诸如环形运动回到已建图处时,则会检索到回环约束,此时为相应的车辆状态节点添加回环因子。最后可以基于最小化均方根误差进行联合优化,优化后的状态节点值则为优化后的轨迹位姿,对应的点云可根据优化后的位姿进行空间转换,空间转换后的点云经过叠加即可组成高精度点云地图。
在一些实施方式中,预设场景中包含N段第一局部区域和N段第二局部区域;N为预设的正整数;示例性地,第一局部区域可以为高架桥下的主路区域,第二局部区域可以为路口区域。由于前述已按照步骤a~步骤c预先构建了预设场景中第二局部区域的第二地图,示例性地,可以参照图3所示的一种多个路口地图的示意图,多个路口地图(图3中多处灰色部分)均可作为第二地图。后续在对预设场景中的第一局部区域的第一地图进行矫正,以及整体基于矫正后的第一地图和第二地图构建预设场景对应的高精度地图时,可以直接获取预先构建的第二地图即可,具体而言,可直接获取第二地图中所需的子地图,诸如第一车辆在高架桥下的主路行驶并逐渐靠近高架桥下的第一个路口时,可直接获取预先构建的第一个路口的路口地图。示例性地,获取预设场景下第二局部区域的第二地图的步骤,可以参照如下(1)~(2)实现:
(1)在第一车辆从第i段第一局部区域的起始位置行驶至结束位置的过程中,在指定的搜索条件触发下,从预先构建的第i段第二局部区域的第二地图中搜索第i段第二局部区域与第i段第一局部区域的重叠区域的地图。
其中,i的取值范围为1~N,指定的搜索条件包括:获取到用于构建第i段第一局部区域的第一地图的第一关键帧;或者,检测到第一车辆行驶至预设位置;其中,预设位置的数量可以为多个。也即,第一车辆在第一局部区域的行驶建图过程中,每获取到一个第一关键帧则触发搜索一次,或者,也可以每行驶至指定位置节点(诸如每行驶m米)就触发搜索一次,以上搜索条件仅为示例性说明,在此不进行限定。
具体而言,在从预先构建的第i段第二局部区域的第二地图中搜索第i段第二局部区域与第i段第一局部区域的重叠区域的地图的步骤,包括:从预先构建的第i段第二局部区域的第二地图中,搜索与第一地图的当前第一关键帧相距指定距离范围内(诸如30米范围内)的当前第二关键帧;基于搜索到的当前第二关键帧得到第i段第二局部区域与第i段第一局部区域的重叠区域的地图。如果未搜索到第二关键帧(说明第一车辆的当前位置与上述重叠区域仍具有较长距离),则继续行驶及搜索,直至搜索到第二关键帧。
(2)将搜索到的重叠区域的地图作为获取到的第i段第二局部区域的第二子地图;其中,第i段第二局部区域的第二子地图用于矫正第i段第一局部区域的第一地图。可以理解的是,第i段第二局部区域的第二子地图是高精度地图,而第i段第一局部区域的第一地图为存在误差的地图,因此可以基于重叠区域的地图偏差对第i段第一局部区域的第一地图进行矫正,从而提升第一地图的精度。
为便于理解上述(1)~(2),以图4简单所示的一种高架桥场景示意图为例进行说明,在图4中简单示意出3段第一局部区域(主路区域)和3段第二局部区域(路口区域),以第1段第一局部区域和第1段第二局部区域为例,第1段第一局部区域为z1、z3、z6、z4构成的矩形区域,第1段第二局部区域为h1、h2、h4、h3构成的矩形区域,二者的重叠区域为z2、z3、z5、z6构成的矩形区域。其中,第1段第二局部区域对应的第二地图已预先构建,如前所述,虽然z2、z3、z5、z6构成的矩形区域被高架桥遮挡,无法有效接收到GPS信号,但是z2、z3、h4、h3构成的矩形区域以及h1、z5、z6、h2构成的矩形区域均可以正常获取GPS信号,可用于对SLAM建图过程中的累积误差进行矫正,所以最终所得的第1段第二局部区域对应的第二地图为高精度地图,基本不存在误差。第一车辆从高架桥起点进入第1段第一局部区域,在进入该区域之前因可以接收到GPS信号,经过GPS矫正,所以轨迹不存在偏差,一旦驶入第1段第一局部区域,由于GPS信号被高架桥遮挡,无法再利用GPS信号对SLAM建图过程中产生的累计误差进行矫正,所以在第1段第一局部区域行驶过程中的累计误差越来越大,但其在行驶过程中会逐渐靠近z2、z3、z5、z6构成的重叠区域,在第二地图中,该重叠区域对应的地图为高精度地图,所以可以利用第二地图中该重叠区域对应的子地图对当前构建的第1段第一局部区域的第一地图进行矫正,逐步消除累计误差,便可以得到高精度的第1段第一局部区域的第一地图。之后第一车辆驶入第2段第一局部区域,但与前述类似,在第一车辆逐渐靠近并驶过第2个路口处,第2段第一局部区域的第一地图也可以被第2段第二局部区域的第二地图矫正为高精度地图,后续依次类推,在此不再赘述。
如上所述,虽然第一车辆长距离行驶在GPS信号缺失的高架桥下,但是可以利用横穿高架桥的路口地图对高架桥下的主路地图进行矫正,因此最终得到的高架桥下的主路地图也可以被矫正为高精度地图,基本不存在误差,无需配置高精度IMU也可有效保障定位精度。
在前述已获取预设场景下第一局部区域的第一地图(精度不高)以及第二局部区域的第二地图(高精度)的前提下,即可采用第二地图对第一地图进行矫正,以提升第一地图的精度。在一些实施方式中,采用第二地图对第一地图进行矫正的步骤,包括如下步骤A至步骤B:
步骤A,将第一地图对应的第一关键帧中的点云与第二地图对应的第二关键帧中的点云进行配准,以获取点云偏移量。在一些具体实施方式中,步骤A可以参照如下步骤执行:
步骤A1,将第一地图对应的当前第一关键帧中的点云作为待匹配点云,将第二地图对应的当前第二关键帧中的点云作为目标点云。当前正在处理的第一关键帧即为当前第一关键帧,同理,当前正在处理的第二关键帧即为当前第二关键帧。
步骤A2,采用预设的点云匹配算法对待匹配点云和目标点云进行匹配,并根据匹配结果获取待匹配点云和目标点云之间的偏移量。
考虑到第一局部区域和第二局部区域在搜索初始,区域之间可能重叠度较低,初始偏差较大,为了能够进行更好的匹配,在一些实施方式中,预设的点云匹配算法为将点云粗匹配算法和点云精匹配算法进行级联的算法。示例性地,点云粗匹配算法包括迭代最近点算法或者词袋模型算法,点云精匹配算法包括基于边缘和平面特征的匹配算法或者基于特征点的匹配算法。具体可根据实际情况选择具体的点云粗匹配算法和点云精匹配算法,示例性地,在激光方案中采用迭代最近点算法(ICP算法)作为点云粗匹配算法,如果粗匹配成功,所得的匹配结果可能存在分米级误差,然后再使用基于边缘和平面特征的匹配算法作为点云精匹配算法,所得的匹配结果可以存在厘米级误差,通过这种由粗至细的级联式匹配方式,可有效保障偏移量的精确度,有助于进一步可靠消除累计误差。此外,在视觉方案中也可以采用上述级联式匹配方式计算偏移量,诸如采用词袋模型算法作为点云粗匹配算法,采用基于特征点的匹配算法作为点云精匹配算法,在此不再赘述。
为便于理解,步骤A2具体可以参照如下步骤A2.1~A2.4执行:
步骤A2.1,采用点云粗匹配算法对待匹配点云和目标点云进行粗匹配,得到粗匹配结果。
步骤A2.2,判断粗匹配结果的匹配误差是否小于预设误差阈值;如果是,执行步骤A2.3,如果否,执行步骤A2.4。如果匹配误差小于预设误差阈值,则认为待匹配点云和目标点云粗匹配成功,也可理解为待匹配点云和目标点云之间的重合度满足要求,以点云粗匹配算法是ICP算法为例,粗匹配成功的待匹配点云和目标点云之间可能存在分米级误差,为了进一步缩小误差,则采用步骤A2.3进行精匹配。而如果匹配误差大于预设误差阈值,则认为待匹配点云和目标点云粗匹配失败,也可理解为待匹配点云和目标点云之间的重合度不满足要求,当前第一关键帧可能并非是第一地图中与重叠区域相关的关键帧,无法用于与第二关键帧进行点云匹配,所以可丢弃该第一关键帧,更换新的第一关键帧进行重新匹配。
步骤A2.3,基于粗匹配结果和点云精匹配算法对待匹配点云和目标点云进行精匹配,得到精匹配结果,并根据精匹配结果得到待匹配点云和目标点云之间的偏移量。粗匹配成功的待匹配点云和目标点云可以直接进行精匹配,具体而言,粗匹配结果可以作为精匹配算法的初始值,因此可以在粗匹配结果的基础上直接采用点云精匹配算法对待匹配点云和目标点云进行精匹配,得到精匹配结果,进而即可得到待匹配点云和目标点云之间的偏移量,在精匹配结果的基础上,该偏移量可体现为厘米级,因此精准度较高,基于高精准的偏移量对第一地图进行矫正,可有效提升第一地图的精度。
步骤A2.4,更换当前第一关键帧,以重新对更换后的当前第一关键帧对应的待匹配点云和目标点云进行匹配。诸如,可以采用被丢弃的第一关键帧之后采集到的下个第一关键帧作为当前第一关键帧,然后重新执行上述匹配步骤。
步骤B,根据点云偏移量对第一地图进行矫正。由于无GPS对第一地图进行误差矫正,本公开实施例能够采用点云偏移量替代GPS对第一地图进行误差矫正。示例性地,上述步骤B可以参照如下步骤B1~步骤B2实现:
步骤B1,基于第一车辆采集到的点云数据和点云偏移量,获取第一关键帧以及每个第一关键帧对应的约束因子;其中,每个第一关键帧对应的约束因子均包含里程计因子,部分第一关键帧对应的约束因子还包含地图定位因子,且地图定位因子是基于点云偏移量确定的。
步骤B2,根据每个第一关键帧对应的约束因子以及图优化算法,对每个第一关键帧的位姿进行优化,以矫正第一地图。具体优化方式也可参照在构建第二局部区域的第二地图时所采用的优化方式,主要区别在于采用地图定位因子(基于点云偏移量确定)替代GPS因子(基于GPS观测值确定)。
为便于理解上述步骤B,依旧以高架桥下场景为例,参见图5所示的一种高架桥下建图系统结构示意图,与图2类似,每个第一关键帧(也即雷达关键帧)分别对应一个车辆状态节点,其中,第一关键帧均取自于雷达帧,诸如每间隔多个雷达帧则选取一个第一关键帧;而且图5示意出了高架桥下的两个路口,分别为路口i和路口j,其中,路口i对应有多个车辆状态节点(x_i~x_i+3),路口j对应有多个车辆状态节点(x_j~x_j+3),以x_i为例,在x_i处的第一关键帧对应的点云匹配成功,得到地图匹配偏移值MapLoc_i(也即上述点云偏移量),基于地图匹配偏移值即可为x_i处的车辆状态节点添加地图定位因子(map约束)。另外,由于每个关键帧都会对应有里程计,因此每个关键帧都可添加相应的里程计因子(odom)。
综上,在针对高架桥下的主路区域进行建图时,由于第一车辆在高架桥下长时间形式会缺失GPS矫正,但每经过路口都可触发地图匹配,诸如根据第一车辆的当前距离搜索指定距离范围内的路口地图(也可称为横穿地图),并采用上述点云匹配算法获取匹配成功的主路地图的当前关键帧与路口地图的当前关键帧之间的偏移量,基于该偏移量对主路地图进行矫正,尽可能消除主路地图的误差,提升主路地图的精度,使主路地图最终能够与路口地图对齐。
在第一地图(诸如上述主路地图)被矫正为高精度地图之后,即可基于第二地图(诸如上述路口地图)和矫正后的第一地图构建预设场景对应的高精度地图,具体而言,可以将第二地图和矫正后的第一地图进行对齐,将对齐后的合并地图作为预设场景对应的高精度地图。
为便于对本公开实施例提供的建图方法进行理解,以下以预设场景是高架桥下的场景为例进行整体说明,参见图6所示的一种高架桥下场景的建图方法流程图,示意出两个分支,在上分支主要用于构建横穿高架地图(又可称为横穿地图或路口地图,具体对应前述第二局部地图),在下分支主要用于构建主路地图(具体对应前述第一局部地图)。具体而言,在构建横穿高架地图时,可以基于采集到的横穿高架数据(多传感器数据)进行融合建图,图6示例性示意出Lidar(雷达)和GPS,且CAN和IMU均为可选项,也即,可以根据需求不选用CAN数据,或者不配置IMU。另外,图6中所示意的IMU可以是低精度IMU,在本公开实施例中无需配置高精度IMU也可达到构建高精度地图的效果。基于多传感器数据可以确定里程计,里程计可用于实现图优化,具体而言,基于采集到的多个关键帧(主要体现点云及位姿两方面)可组成局部地图,里程计和GPS均可作为约束因子对相应的局部地图进行图优化,从而对关键帧进行更新,诸如,对关键帧位姿进行优化。更新后的关键帧可构成高精度的横穿高架地图,横穿高架地图可用于作为矫正地图,以便在后续对主路地图进行矫正。同理,构建主路地图与构建横穿高架地图类似,不同之处在于会额外判断车辆是否运动到矫正地图附近,如果是,则将主路地图中的关键帧点云与横穿高架地图中的关键帧点云进行级联式匹配,并在匹配成功时获取主路地图中的关键帧点云与矫正地图中的关键帧点云之间的偏移量,将偏移量作为约束因子对相应的局部地图进行图优化,从而对关键帧(点云)进行更新,更新后的关键帧可构成高精度的主路地图。横穿高架地图和主路地图合并起来即为修正累积误差且对齐GPS的地图,该地图也即高架桥下的场景地图。为便于理解,图6中示意出了横穿高架地图对应的关键帧与主路地图对应的关键帧共同组合构成修正累积误差且对齐GPS的地图,该地图即为高精度地图,从而确保从不同路段、不同方向进出高架桥下的区域时,GPS定位和地图定位结果一致,定位源可平滑切换。
如图6中示意出在确认车辆运动到矫正地图附近时,会判断级联式匹配是否成功,在成功的情况下才将偏移量作为约束因子,为便于理解级联式匹配的过程,可进一步参见图7中所示意的一种级联式匹配算法流程图,基于高架下多传感器融合建图方式可获得多个关键帧,关键帧主要体现在位姿和点云两类数据,根据关键帧位姿可判别车辆是否运动到矫正地图附近,如果是,则采用主路地图对应的关键帧点云(作为待匹配点云)与附近的横穿高架地图对应的关键帧点云(简称附近点云,可作为目标点云)进行粗匹配,具体而言,可以采用诸如ICP算法等粗匹配算法判别待匹配点云与目标点云之间的匹配误差是否小于预设的误差阈值,如果否,则放弃主路地图对应的当前关键帧,再采用下一关键帧再次与目标点云进行粗匹配;如果是,则将粗匹配结果作为精匹配算法的初值,再次进行精匹配,最后根据精匹配结果得到主路地图的关键帧点云与横穿高架地图的关键帧点云之间的偏移量。该偏移量即可被用于对主路地图进行优化,以降低主路地图与真实地理坐标的误差,提升主路地图的精度。
综上所述,本公开实施例提供的上述建图方法,能够在不采用价格高昂的高精度IMU的情况下,便可针对缺失GPS的场景进行准确建图,所需成本较低,普适性较强。诸如对于长距离缺失GPS的高架桥下场景,可以显著提升主路地图的精度,示例性地,将地图精度由5m/1km(也即,每1km存在5m误差)提升至10cm/1km(也即,每1km存在10cm误差),从而可有效保障后续的定位精度。
此外,本公开实施例提供的上述建图方法中还应用到一种新的点云匹配算法(点云粗匹配算法和点云精匹配算法的级联算法),由于待匹配的点云之间的初始偏差通常较大,因此首先可采用诸如ICP算法等点云粗匹配算法计算出分米级匹配结果,然后再以分米级匹配结果作为点云精匹配算法的初值,在采用诸如基于边缘和平面特征的点云精匹配算法计算得到厘米级匹配结果,通过这种级联匹配方式,即便对于稀疏的待匹配点云也可以在初始偏差较大的情况下保证匹配结果的鲁棒性和精确性。
另外,本公开实施例提供的上述方式可广泛应用于存在GPS缺失的场景中,利用预先建立的该场景中局部区域的高精度地图对缺失GPS的区域进行地图矫正,消除建图过程中引入的累计误差,使得缺失GPS的区域对应的地图也可与真实地理坐标对齐,有效保证GPS定位和地图定位结果的一致性。
对应于前述建图方法,本公开实施例还提供了一种建图装置,图8为本公开实施例提供的一种建图装置的结构示意图,该装置可由软件和/或硬件实现,一般可集成在电子设备中,如图8所示,包括:
第一地图获取模块802,用于获取预设场景下第一局部区域的第一地图;其中,第一局部区域为GPS信号低于预设信号阈值的区域,第一地图是基于行驶在第一局部区域的第一车辆采集到的点云数据构建的;
第二地图获取模块804,用于获取预设场景下第二局部区域的第二地图;第二局部区域为与第一局部区域有重叠且可获取到高精度地图的区域,第二地图的精度大于预设精度阈值;
第一地图矫正模块806,用于采用第二地图对第一地图进行矫正,以使第一地图的精度大于预设精度阈值;
场景地图构建模块808,用于基于第二地图和矫正后的第一地图构建预设场景对应的高精度地图。
上述装置中,虽然第一局部区域的GPS信号低于信号阈值,基于点云数据构建所得的第一地图的精度不足,存在一定的误差,但是可以采用与第一局部区域重叠且可获取高精度地图的第二局部区域的第二地图对第一地图进行矫正,从而提升第一地图的精度,最后还可以基于第二地图和矫正后的第一地图构建预设场景对应的高精度地图。本公开实施例无需高精度IMU即可对存在GPS信号缺失的场景进行高精度地图构建,所需成本较低,普适性较强。
在一些实施方式中,所述第二局部区域中与所述第一局部区域重叠之外的非重叠区域均为GPS信号高于预设信号阈值的区域;
所述装置还包括第二地图构建模块,用于按照如下方式预先构建所述第二局部区域的第二地图:基于图优化算法以及行驶在所述第二局部区域的第二车辆采集到的多传感器数据,构建所述第二局部区域的第二地图。
在一些实施方式中,第二地图构建模块具体用于:基于行驶在所述第二局部区域的第二车辆采集到的多传感器数据,获取第二关键帧以及每个所述第二关键帧对应的约束因子;其中,每个所述第二关键帧对应的约束因子包含里程计因子,且部分所述第二关键帧对应的约束因子还包含有GPS因子;根据每个所述第二关键帧对应的约束因子以及图优化算法,对每个所述第二关键帧的位姿进行优化;基于优化后的位姿构建所述第二局部区域的第二地图。
在一些实施方式中,第二地图构建模块具体用于:基于行驶在所述第二局部区域的第二车辆采集到的多传感器数据获取多个第二关键帧;对于每个所述第二关键帧,基于该第二关键帧对应的多传感器数据,为该第二关键帧添加相应的里程计因子;在该第二关键帧对应的多传感器数据中包含高于预设信号阈值的GPS信号的情况下,为该第二关键帧添加相应的GPS因子;在该第二关键帧对应的多传感器数据指示检测到回环的情况下,为该第二关键帧添加相应的回环因子。
在一些实施方式中,所述预设场景中包含N段第一局部区域和N段第二局部区域;N为预设的正整数;第二地图获取模块804具体用于:在所述第一车辆从第i段第一局部区域的起始位置行驶至结束位置的过程中,在指定的搜索条件触发下,从预先构建的第i段第二局部区域的第二地图中搜索所述第i段第二局部区域与所述第i段第一局部区域的重叠区域的地图;将搜索到的所述重叠区域的地图作为获取到的所述第i段第二局部区域的第二子地图;其中,所述第i段第二局部区域的第二子地图用于矫正所述第i段第一局部区域的第一地图,且i的取值范围为1~N。
在一些实施方式中,所述指定的搜索条件包括:获取到用于构建所述第i段第一局部区域的第一地图的第一关键帧;或者,检测到所述第一车辆行驶至预设位置。
在一些实施方式中,第二地图获取模块804具体用于:从预先构建的第i段第二局部区域的第二地图中,搜索与所述第一地图的当前第一关键帧相距指定距离范围内的当前第二关键帧;基于搜索到的所述当前第二关键帧得到所述第i段第二局部区域与所述第i段第一局部区域的重叠区域的地图。
在一些实施方式中,第一地图矫正模块806具体用于:将所述第一地图对应的第一关键帧中的点云与所述第二地图对应的第二关键帧中的点云进行配准,以获取点云偏移量;根据所述点云偏移量对所述第一地图进行矫正。
在一些实施方式中,第一地图矫正模块806具体用于:将所述第一地图对应的当前第一关键帧中的点云作为待匹配点云,将所述第二地图对应的当前第二关键帧中的点云作为目标点云;采用预设的点云匹配算法对所述待匹配点云和所述目标点云进行匹配,并根据匹配结果获取所述待匹配点云和所述目标点云之间的偏移量。
在一些实施方式中,所述预设的点云匹配算法为将点云粗匹配算法和点云精匹配算法进行级联的算法。
在一些实施方式中,第一地图矫正模块806具体用于:采用所述点云粗匹配算法对所述待匹配点云和所述目标点云进行粗匹配,得到粗匹配结果;判断所述粗匹配结果的匹配误差是否小于预设误差阈值;如果是,基于所述粗匹配结果和所述点云精匹配算法对所述待匹配点云和所述目标点云进行精匹配,得到精匹配结果,并根据所述精匹配结果得到所述待匹配点云和所述目标点云之间的偏移量;如果否,更换所述当前第一关键帧,以重新对更换后的所述当前第一关键帧对应的待匹配点云和所述目标点云进行匹配。
在一些实施方式中,所述点云粗匹配算法包括迭代最近点算法或者词袋模型算法,所述点云精匹配算法包括基于边缘和平面特征的匹配算法或者基于特征点的匹配算法。
在一些实施方式中,第一地图矫正模块806具体用于:基于所述第一车辆采集到的点云数据和所述点云偏移量,获取第一关键帧以及每个所述第一关键帧对应的约束因子;其中,每个所述第一关键帧对应的约束因子均包含里程计因子,部分所述第一关键帧对应的约束因子还包含地图定位因子,且所述地图定位因子是基于所述点云偏移量确定的;根据每个所述第一关键帧对应的约束因子以及图优化算法,对每个所述第一关键帧的位姿进行优化,以矫正所述第一地图。
在一些实施方式中,场景地图构建模块808具体用于:将所述第二地图和矫正后的所述第一地图进行对齐,将对齐后的合并地图作为所述预设场景对应的高精度地图。
在一些实施方式中,所述预设场景包括高架桥下的区域场景,所述高架桥下的区域场景中包含至少一个高架桥下的主路区域以及每个所述主路区域对应的路口区域;其中,所述主路区域为第一局部区域,所述路口区域为第二局部区域。
本公开实施例所提供的建图装置可执行本公开任意实施例所提供的建图方法,具备执行方法相应的功能模块和有益效果。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置实施例的具体工作过程,可以参考方法实施例中的对应过程,在此不再赘述。
本公开实施例还提供了一种电子设备,电子设备包括:处理器;用于存储处理器可执行指令的存储器;处理器,用于从存储器中读取可执行指令,并执行指令以实现上述任一建图方法。
图9为本公开实施例提供的一种电子设备的结构示意图。如图9所示,电子设备900包括一个或多个处理器901和存储器902。
处理器901可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备900中的其他组件以执行期望的功能。
存储器902可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器901可以运行所述程序指令,以实现上文所述的本公开的实施例的建图方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。
在一个示例中,电子设备900还可以包括:输入装置903和输出装置904,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
此外,该输入装置903还可以包括例如键盘、鼠标等等。
该输出装置904可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置904可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图9中仅示出了该电子设备900中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备900还可以包括任何其他适当的组件。
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本公开实施例所提供的建图方法。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本公开实施例所提供的建图方法。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本公开实施例还提供了一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现本公开实施例中的建图方法。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
综上,本公开实施例提供的建图方法、装置、设备及介质,可参照如下执行:
A1.一种建图方法,包括:
获取预设场景下第一局部区域的第一地图;其中,所述第一局部区域为GPS信号低于预设信号阈值的区域,所述第一地图是基于行驶在所述第一局部区域的第一车辆采集到的点云数据构建的;
获取所述预设场景下第二局部区域的第二地图;所述第二局部区域为与所述第一局部区域有重叠且可获取到高精度地图的区域,所述第二地图的精度大于预设精度阈值;
采用所述第二地图对所述第一地图进行矫正,以使所述第一地图的精度大于所述预设精度阈值;
基于所述第二地图和矫正后的所述第一地图构建所述预设场景对应的高精度地图。
A2.根据A1所述的方法,所述第二局部区域中与所述第一局部区域重叠之外的非重叠区域均为GPS信号高于预设信号阈值的区域;
所述第二局部区域的第二地图是按照如下方式预先构建的:
基于图优化算法以及行驶在所述第二局部区域的第二车辆采集到的多传感器数据,构建所述第二局部区域的第二地图。
A3.根据A2所述的方法,基于图优化算法以及行驶在所述第二局部区域的第二车辆采集到的多传感器数据,构建所述第二局部区域的第二地图的步骤,包括:
基于行驶在所述第二局部区域的第二车辆采集到的多传感器数据,获取第二关键帧以及每个所述第二关键帧对应的约束因子;其中,每个所述第二关键帧对应的约束因子包含里程计因子,且部分所述第二关键帧对应的约束因子还包含有GPS因子;
根据每个所述第二关键帧对应的约束因子以及图优化算法,对每个所述第二关键帧的位姿进行优化;
基于优化后的位姿构建所述第二局部区域的第二地图。
A4.根据A3所述的方法,获取第二关键帧以及每个所述第二关键帧对应的约束因子的步骤,包括:
基于行驶在所述第二局部区域的第二车辆采集到的多传感器数据获取多个第二关键帧;
对于每个所述第二关键帧,基于该第二关键帧对应的多传感器数据,为该第二关键帧添加相应的里程计因子;
在该第二关键帧对应的多传感器数据中包含高于预设信号阈值的GPS信号的情况下,为该第二关键帧添加相应的GPS因子;
在该第二关键帧对应的多传感器数据指示检测到回环的情况下,为该第二关键帧添加相应的回环因子。
A5.根据A1至A4任一项所述的方法,所述预设场景中包含N段第一局部区域和N段第二局部区域;N为预设的正整数;
获取所述预设场景下第二局部区域的第二地图的步骤,包括:
在所述第一车辆从第i段第一局部区域的起始位置行驶至结束位置的过程中,在指定的搜索条件触发下,从预先构建的第i段第二局部区域的第二地图中搜索所述第i段第二局部区域与所述第i段第一局部区域的重叠区域的地图;
将搜索到的所述重叠区域的地图作为获取到的所述第i段第二局部区域的第二子地图;其中,所述第i段第二局部区域的第二子地图用于矫正所述第i段第一局部区域的第一地图,且i的取值范围为1~N。
A6.根据A5所述的方法,所述指定的搜索条件包括:
获取到用于构建所述第i段第一局部区域的第一地图的第一关键帧;
或者,
检测到所述第一车辆行驶至预设位置。
A7.根据A5所述的方法,从预先构建的第i段第二局部区域的第二地图中搜索所述第i段第二局部区域与所述第i段第一局部区域的重叠区域的地图的步骤,包括:
从预先构建的第i段第二局部区域的第二地图中,搜索与所述第一地图的当前第一关键帧相距指定距离范围内的当前第二关键帧;
基于搜索到的所述当前第二关键帧得到所述第i段第二局部区域与所述第i段第一局部区域的重叠区域的地图。
A8.根据A1所述的方法,采用所述第二地图对所述第一地图进行矫正的步骤,包括:
将所述第一地图对应的第一关键帧中的点云与所述第二地图对应的第二关键帧中的点云进行配准,以获取点云偏移量;
根据所述点云偏移量对所述第一地图进行矫正。
A9.根据A8所述的方法,将所述第一地图对应的第一关键帧中的点云与所述第二地图对应的第二关键帧中的点云进行配准,以获取点云偏移量的步骤,包括:
将所述第一地图对应的当前第一关键帧中的点云作为待匹配点云,将所述第二地图对应的当前第二关键帧中的点云作为目标点云;
采用预设的点云匹配算法对所述待匹配点云和所述目标点云进行匹配,并根据匹配结果获取所述待匹配点云和所述目标点云之间的偏移量。
A10.根据A9所述的方法,所述预设的点云匹配算法为将点云粗匹配算法和点云精匹配算法进行级联的算法。
A11.根据A10所述的方法,采用预设的点云匹配算法对所述待匹配点云和所述目标点云进行匹配,并根据匹配结果获取所述待匹配点云和所述目标点云之间的偏移量的步骤,包括:
采用所述点云粗匹配算法对所述待匹配点云和所述目标点云进行粗匹配,得到粗匹配结果;
判断所述粗匹配结果的匹配误差是否小于预设误差阈值;
如果是,基于所述粗匹配结果和所述点云精匹配算法对所述待匹配点云和所述目标点云进行精匹配,得到精匹配结果,并根据所述精匹配结果得到所述待匹配点云和所述目标点云之间的偏移量;
如果否,更换所述当前第一关键帧,以重新对更换后的所述当前第一关键帧对应的待匹配点云和所述目标点云进行匹配。
A12.根据A10所述的方法,所述点云粗匹配算法包括迭代最近点算法或者词袋模型算法,所述点云精匹配算法包括基于边缘和平面特征的匹配算法或者基于特征点的匹配算法。
A13.根据A8所述的方法,根据所述点云偏移量对所述第一地图进行矫正的步骤,包括:
基于所述第一车辆采集到的点云数据和所述点云偏移量,获取第一关键帧以及每个所述第一关键帧对应的约束因子;其中,每个所述第一关键帧对应的约束因子均包含里程计因子,部分所述第一关键帧对应的约束因子还包含地图定位因子,且所述地图定位因子是基于所述点云偏移量确定的;
根据每个所述第一关键帧对应的约束因子以及图优化算法,对每个所述第一关键帧的位姿进行优化,以矫正所述第一地图。
A14.根据A1所述的方法,基于所述第二地图和矫正后的所述第一地图构建所述预设场景对应的高精度地图的步骤,包括:
将所述第二地图和矫正后的所述第一地图进行对齐,将对齐后的合并地图作为所述预设场景对应的高精度地图。
A15.根据A1所述的方法,所述预设场景包括高架桥下的区域场景,所述高架桥下的区域场景中包含至少一个高架桥下的主路区域以及每个所述主路区域对应的路口区域;其中,所述主路区域为第一局部区域,所述路口区域为第二局部区域。
B16.一种建图装置,包括:
第一地图获取模块,用于获取预设场景下第一局部区域的第一地图;其中,所述第一局部区域为GPS信号低于预设信号阈值的区域,所述第一地图是基于行驶在所述第一局部区域的第一车辆采集到的点云数据构建的;
第二地图获取模块,用于获取所述预设场景下第二局部区域的第二地图;所述第二局部区域为与所述第一局部区域有重叠且可获取到高精度地图的区域,所述第二地图的精度大于预设精度阈值;
第一地图矫正模块,用于采用所述第二地图对所述第一地图进行矫正,以使所述第一地图的精度大于所述预设精度阈值;
场景地图构建模块,用于基于所述第二地图和矫正后的所述第一地图构建所述预设场景对应的高精度地图。
C17.一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述A1-A15中任一所述的建图方法。
D18.一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序用于执行上述A1-A15中任一所述的建图方法。

Claims (10)

1.一种建图方法,其特征在于,包括:
获取预设场景下第一局部区域的第一地图;其中,所述第一局部区域为GPS信号低于预设信号阈值的区域,所述第一地图是基于行驶在所述第一局部区域的第一车辆采集到的点云数据构建的;
获取所述预设场景下第二局部区域的第二地图;所述第二局部区域为与所述第一局部区域有重叠且可获取到高精度地图的区域,所述第二地图的精度大于预设精度阈值;
采用所述第二地图对所述第一地图进行矫正,以使所述第一地图的精度大于所述预设精度阈值;
基于所述第二地图和矫正后的所述第一地图构建所述预设场景对应的高精度地图。
2.根据权利要求1所述的方法,其特征在于,所述第二局部区域中与所述第一局部区域重叠之外的非重叠区域均为GPS信号高于预设信号阈值的区域;
所述第二局部区域的第二地图是按照如下方式预先构建的:
基于图优化算法以及行驶在所述第二局部区域的第二车辆采集到的多传感器数据,构建所述第二局部区域的第二地图。
3.根据权利要求1至2任一项所述的方法,其特征在于,所述预设场景中包含N段第一局部区域和N段第二局部区域;N为预设的正整数;
获取所述预设场景下第二局部区域的第二地图的步骤,包括:
在所述第一车辆从第i段第一局部区域的起始位置行驶至结束位置的过程中,在指定的搜索条件触发下,从预先构建的第i段第二局部区域的第二地图中搜索所述第i段第二局部区域与所述第i段第一局部区域的重叠区域的地图;
将搜索到的所述重叠区域的地图作为获取到的所述第i段第二局部区域的第二子地图;其中,所述第i段第二局部区域的第二子地图用于矫正所述第i段第一局部区域的第一地图,且i的取值范围为1~N。
4.根据权利要求1所述的方法,其特征在于,采用所述第二地图对所述第一地图进行矫正的步骤,包括:
将所述第一地图对应的第一关键帧中的点云与所述第二地图对应的第二关键帧中的点云进行配准,以获取点云偏移量;
根据所述点云偏移量对所述第一地图进行矫正。
5.根据权利要求4所述的方法,其特征在于,将所述第一地图对应的第一关键帧中的点云与所述第二地图对应的第二关键帧中的点云进行配准,以获取点云偏移量的步骤,包括:
将所述第一地图对应的当前第一关键帧中的点云作为待匹配点云,将所述第二地图对应的当前第二关键帧中的点云作为目标点云;
采用预设的点云匹配算法对所述待匹配点云和所述目标点云进行匹配,并根据匹配结果获取所述待匹配点云和所述目标点云之间的偏移量。
6.根据权利要求5所述的方法,其特征在于,所述预设的点云匹配算法为将点云粗匹配算法和点云精匹配算法进行级联的算法。
7.根据权利要求1所述的方法,其特征在于,基于所述第二地图和矫正后的所述第一地图构建所述预设场景对应的高精度地图的步骤,包括:
将所述第二地图和矫正后的所述第一地图进行对齐,将对齐后的合并地图作为所述预设场景对应的高精度地图。
8.一种建图装置,其特征在于,包括:
第一地图获取模块,用于获取预设场景下第一局部区域的第一地图;其中,所述第一局部区域为GPS信号低于预设信号阈值的区域,所述第一地图是基于行驶在所述第一局部区域的第一车辆采集到的点云数据构建的;
第二地图获取模块,用于获取所述预设场景下第二局部区域的第二地图;所述第二局部区域为与所述第一局部区域有重叠且可获取到高精度地图的区域,所述第二地图的精度大于预设精度阈值;
第一地图矫正模块,用于采用所述第二地图对所述第一地图进行矫正,以使所述第一地图的精度大于所述预设精度阈值;
场景地图构建模块,用于基于所述第二地图和矫正后的所述第一地图构建所述预设场景对应的高精度地图。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
所述处理器,用于从所述存储器中读取所述可执行指令,并执行所述指令以实现上述权利要求1-7中任一所述的建图方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序用于执行上述权利要求1-7中任一所述的建图方法。
CN202210054753.5A 2022-01-18 2022-01-18 建图方法、装置、设备及介质 Pending CN116501813A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210054753.5A CN116501813A (zh) 2022-01-18 2022-01-18 建图方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210054753.5A CN116501813A (zh) 2022-01-18 2022-01-18 建图方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN116501813A true CN116501813A (zh) 2023-07-28

Family

ID=87321808

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210054753.5A Pending CN116501813A (zh) 2022-01-18 2022-01-18 建图方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN116501813A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117078566A (zh) * 2023-10-17 2023-11-17 腾讯科技(深圳)有限公司 地图数据处理方法以及相关设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117078566A (zh) * 2023-10-17 2023-11-17 腾讯科技(深圳)有限公司 地图数据处理方法以及相关设备
CN117078566B (zh) * 2023-10-17 2024-02-02 腾讯科技(深圳)有限公司 地图数据处理方法以及相关设备

Similar Documents

Publication Publication Date Title
CN112268559B (zh) 复杂环境下融合slam技术的移动测量方法
CN110160542B (zh) 车道线的定位方法和装置、存储介质、电子装置
CN109416256B (zh) 行驶车道推定系统
CN107167826B (zh) 一种自动驾驶中基于可变网格的图像特征检测的车辆纵向定位系统及方法
US9969081B2 (en) Method and system for the directed control of robotic assets
CN111220164A (zh) 定位方法、装置、设备及存储介质
EP3667236B1 (en) A method of determining position data
JP2001331787A (ja) 道路形状推定装置
CN112327842B (zh) 机器人定位充电桩的方法及系统
CN111339802A (zh) 实时相对地图的生成方法及装置、电子设备和存储介质
CN112946681B (zh) 融合组合导航信息的激光雷达定位方法
CN111176298A (zh) 一种无人车轨迹录制与轨迹跟踪方法
CN115494533A (zh) 车辆定位方法、装置、存储介质及定位系统
Sung et al. What if there was no revisit? Large-scale graph-based SLAM with traffic sign detection in an HD map using LiDAR inertial odometry
CN114111775A (zh) 一种多传感器融合定位方法、装置、存储介质及电子设备
CN114829971A (zh) 一种激光雷达的标定方法、装置及存储介质
CN116501813A (zh) 建图方法、装置、设备及介质
CN113566817B (zh) 一种车辆定位方法及装置
CN117824667A (zh) 一种基于二维码和激光的融合定位方法及介质
Meis et al. A new method for robust far-distance road course estimation in advanced driver assistance systems
Deusch et al. Improving localization in digital maps with grid maps
CN116067358A (zh) 一种多源数据融合建图与定位方法、系统及自动驾驶车辆
CN115597585A (zh) 一种机器人定位方法、装置、设备及存储介质
CN117367419A (zh) 机器人定位方法、装置和计算可读存储介质
CN115164887A (zh) 基于激光雷达与惯性组合的行人导航定位方法和装置

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