CN117011483A - 多异构激光雷达建图方法、装置、电子设备和存储介质 - Google Patents
多异构激光雷达建图方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN117011483A CN117011483A CN202310731609.5A CN202310731609A CN117011483A CN 117011483 A CN117011483 A CN 117011483A CN 202310731609 A CN202310731609 A CN 202310731609A CN 117011483 A CN117011483 A CN 117011483A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- current frame
- point
- laser
- cloud data
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000013507 mapping Methods 0.000 title claims abstract description 31
- 238000003860 storage Methods 0.000 title claims abstract description 23
- 238000000605 extraction Methods 0.000 claims description 106
- 239000013598 vector Substances 0.000 claims description 38
- 230000008859 change Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 239000007787 solid Substances 0.000 claims description 2
- 238000010276 construction Methods 0.000 abstract description 9
- 230000006870 function Effects 0.000 description 12
- 239000011159 matrix material Substances 0.000 description 9
- 238000005457 optimization Methods 0.000 description 9
- 230000009466 transformation Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000004364 calculation method Methods 0.000 description 4
- 230000001131 transforming effect Effects 0.000 description 4
- 238000009826 distribution Methods 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 239000013307 optical fiber Substances 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000010420 art technique Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000009987 spinning Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Radar, Positioning & Navigation (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Computer Networks & Wireless Communication (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Optical Radar Systems And Details Thereof (AREA)
Abstract
本公开实施例公开了一种多异构激光雷达建图方法、装置、电子设备和存储介质,该方法包括:获取类型不完全相同的多路激光雷达的当前帧点云数据,确定每一路当前帧点云数据对应的多个点云线段,对每一个点云线段进行平面、交线角点、边缘角点、孤立角点以及强度特征提取,得到当前帧总特征集合,通过当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定当前帧点云数据对应的局部点云地图,实现了多异构激光雷达的建图,该方法通过提取平面、交线角点、边缘角点、孤立角点以及强度特征,适用于各种类型的激光雷达,降低了建图对车端激光雷达布局方案的依赖,提升了建图数据信息的利用率,以及建图技术的易用性和通用性。
Description
技术领域
本公开涉及激光雷达技术领域,尤其涉及一种多异构激光雷达建图方法、装置、电子设备和存储介质。
背景技术
激光建图技术是自动驾驶领域的核心技术之一。目前主流的激光雷达有旋转式激光雷达、转镜式激光雷达与振镜式激光雷达。现有的激光雷达建图技术,主要使用旋转式激光雷达、转镜式激光雷达的一种进行建图工作,且不能同时使用振镜式激光雷达进行建图。究其原因是不同类型的激光雷达的底层工作方式不同,导致了不同雷达的点云特性之间存在差异。因此很难用现有技术对不同类型的激光雷达数据同时建图。
然而在实际的自动驾驶应用中,经常会出现多种异构雷达同时应用的场景,其中只使用某一种激光雷达进行建图不仅受限于车端传感器布局方案设计,而且存在视野局限导致退化的情况,以及数据信息利用率低下等问题,导致建图技术易用性低、难以通用化应用。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本公开实施例提供了一种多异构激光雷达建图方法、装置、电子设备和存储介质,解决现有技术中建图对车端激光雷达布局方案的依赖、建图技术易用性低、难以通用化应用、以及数据信息利用率低下的问题。
第一方面,本公开实施例提供了一种多异构激光雷达建图方法,该方法包括:
获取多路激光雷达的当前帧点云数据,并确定每一路激光雷达的当前帧点云数据对应的多个点云线段,多路激光雷达中各激光雷达的类型不完全相同;
针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到所述当前帧点云数据的特征集合,其中,所述特征集合包括平面特征集合、角点特征集合以及强度特征集合;
基于各路激光雷达的当前帧点云数据的特征集合确定当前帧总特征集合,其中,所述当前帧总特征集合包括当前帧总平面特征集合、当前帧总角点特征集合以及当前帧总强度特征集合;
基于所述当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图。
第二方面,本公开实施例还提供了一种多异构激光雷达建图装置,该装置包括:
数据获取模块,用于获取多路激光雷达的当前帧点云数据,并确定每一路激光雷达的当前帧点云数据对应的多个点云线段,多路激光雷达中各激光雷达的类型不完全相同;
特征提取模块,用于针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到所述当前帧点云数据的特征集合,其中,所述特征集合包括平面特征集合、角点特征集合以及强度特征集合;
总特征确定模块,用于基于各路激光雷达的当前帧点云数据的特征集合确定当前帧总特征集合,其中,所述当前帧总特征集合包括当前帧总平面特征集合、当前帧总角点特征集合以及当前帧总强度特征集合;
地图确定模块,用于基于所述当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图。
第三方面,本公开实施例还提供了一种电子设备,所述电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上所述的多异构激光雷达建图方法。
第四方面,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上所述的多异构激光雷达建图方法。
本公开实施例提供的一种多异构激光雷达建图方法,通过获取类型不完全相同的多路激光雷达的当前帧点云数据,确定每一路激光雷达的当前帧点云数据对应的多个点云线段,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到当前帧点云数据的特征集合,进而得到当前帧总特征集合,通过当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图,实现了根据多异构激光雷达采集的点云数据进行建图,该方法通过提取分线后的点云线段的平面特征、交线角点特征、边缘角点特征、孤立角点特征以及强度特征,并联合历史帧点云数据的局部点云地图构建当前帧点云数据的局部点云地图,适用于各种类型的激光雷达,降低了建图对车端激光雷达布局方案的依赖,提升了建图数据信息的利用率,以及建图技术的易用性和通用性。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1为本公开实施例中的一种多异构激光雷达建图方法的流程图;
图2为本公开实施例提供的一种点云子视场示意图;
图3为本公开实施例提供的一种偏转角和入射角的示意图;
图4为本公开实施例提供的一种角点示意图;
图5为本公开实施例中的一种多异构激光雷达建图装置的结构示意图;
图6为本公开实施例中的一种电子设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
图1为本公开实施例中的一种多异构激光雷达建图方法的流程图,该方法适用于根据车端多类型的激光雷达采集的点云数据进行建图的情况。该方法可以由多异构激光雷达建图装置执行,该装置可以采用软件和/或硬件的方式实现,该装置可配置于电子设备中。如图1所示,该方法具体可以包括如下步骤:
S110、获取多路激光雷达的当前帧点云数据,并确定每一路激光雷达的当前帧点云数据对应的多个点云线段,多路激光雷达中各激光雷达的类型不完全相同。
在本实施例中,激光雷达的类型可以包括至少两种,如,包括旋转式多线激光雷达、旋镜式固态激光雷达以及振镜式固态激光雷达中的至少两种。每一种类型的激光雷达的数量可以是一个或多个。
其中,激光雷达的当前帧点云数据可以包括激光雷达在当前帧的时间范围内采集到的所有激光点。示例性的,若车上的激光雷达的数量为10,则可以获取到10路激光雷达的当前帧点云数据。
考虑到激光雷达通常取100ms内累计的激光点作为一帧点云数据,每一帧点云数据中的激光点均参照该激光点的发射时刻的激光雷达坐标系,而在扫描周期内激光雷达自身运动姿态会发生变化,因此,一帧点云数据中每个激光点所参照的坐标系均是不同的。从单帧点云数据整体上看,激光雷达的自身运动会造成点云数据出现形变,因此,可以在使用当前帧点云数据之前,对当前帧点云数据中运动造成的畸变进行校正。
在一种具体的实施方式中,在确定每一路激光雷达的当前帧点云数据对应的多个点云线段之前,还包括如下步骤:
步骤11、针对每一路激光雷达的当前帧点云数据,根据当前帧点云数据中各个激光点对应的时间戳确定当前帧点云数据对应的时间范围;
步骤12、基于当前车速以及当前转向角度,确定对应的激光雷达在时间范围内的位姿变化信息;
步骤13、基于位姿变化信息确定时间范围内的每个激光点相对于起始激光点的位姿变化量,针对时间范围内的每个激光点,根据对应的位姿变化量对激光点进行位姿转换。
在本实施例中,校正各路激光雷达的当前帧点云数据中的运动畸变,可以采用将当前帧点云数据中的所有激光点从各自的参考坐标系变换到同一公共坐标系的方式。
具体的,对于每一路激光雷达的当前帧点云数据,可以根据其中每个激光点的时间戳确定当前帧点云数据中的起始激光点对应的时刻以及终止激光点对应的时刻,得到当前帧点云数据对应的时间范围。
进一步的,可以根据轮速计测量得到的数据,即当前车速以及当前转向角度,确定各激光雷达在对应的时间范围内的位姿变化信息。通过线性插值的方式,根据位姿变化信息获取每个激光点相对于起始激光点的位姿变化量,进而根据位姿变化量对每个激光点进行位姿变换。
通过上述实施方式,实现了对各路激光雷达的当前帧点云数据的畸变校正,提高了点云数据的建图准确性。
具体的,对于每一路激光雷达的当前帧点云数据,可以对当前帧点云数据进行分线处理,得到每一路激光雷达的当前帧点云数据对应的多个点云线段。
其中,对当前帧点云数据进行分线处理的目的在于:当前帧点云数据是基于时间顺序排列的激光点序列,因此,为了得到其中的各激光点在三维空间的分布位置信息,以便于后续进行平面、角点等与空间相关的特征提取,可以通过分线的方式确定其中各激光点在三维空间的分布位置。
示例性的,多路激光雷达的当前帧点云数据至少包括旋转式多线激光雷达的当前帧点云数据,针对每一路旋转式多线激光雷达的当前帧点云数据,可以通过计算当前帧点云数据中每个激光点的水平与竖直偏转角,确定激光点在三维空间的分布位置,进而确定激光点所在的扫描线,完成分线操作。
在一种示例中,多路激光雷达的当前帧点云数据至少包括振镜式固态激光雷达的当前帧点云数据,确定每一路激光雷达的当前帧点云数据对应的多个点云线段,包括:获取与振镜式固态激光雷达对应的多个点云子视场,以及各点云子视场的脉冲发射顺序;针对每一路振镜式固态激光雷达的当前帧点云数据,基于脉冲发射顺序对当前帧点云数据进行分解,得到与各点云子视场分别对应的点云线段。
其中,点云子视场可以是振镜式固态激光雷达扫描的各个视场。示例性的,图2为本公开实施例提供的一种点云子视场示意图,如图2所示,与振镜式固态激光雷达对应的多个点云子视场的数量可以为8个,即F0~F7,各个点云子视场与相邻的其它点云子视场之间存在部分重叠区域,以确保激光雷达整体视场的连续性。
其中,脉冲发射顺序可以是振镜式固态激光雷达在各个点云子视场之间的发射脉冲的顺序。参见图2,脉冲发射顺序可以是:F0→F6→F1→F7→F2→F4→F3→F5。振镜式固态激光雷达可以按照该脉冲发射顺序依次扫描,在每个点云子视场的第一个脉冲扫描完成后,每个点云子视场的第二个脉冲继续按照该脉冲发射顺序依次扫描,以此类推,直至所有脉冲全部扫描完成。
如图2所示,在每一路振镜式固态激光雷达的当前帧点云数据中,空间上连续的激光点在时间顺序上并不连续,以点云子视场F0为例,空间上相邻的两个激光点P_F0(0)以及P_F0(1)在时间上并不相邻,而是相差8个点的扫描时间。
因此,针对每一路振镜式固态激光雷达的当前帧点云数据,采用脉冲发射顺序对当前帧点云数据进行分解,得到与各点云子视场分别对应的点云线段,以得到在空间上相邻排列的各个点云线段,其中,点云线段可以理解为点云序列,点云序列中的各个激光点按照时间先后顺序排列,相邻的两个激光点之间间隔时间为按脉冲发射顺序发射一轮脉冲的时间。
通过上述示例,将振镜式固态激光雷达的当前帧点云数据分解为各个点云线段,得到了与各个点云子视场一一对应的各个点云线段,实现了对当前帧点云数据中各个激光点的空间位置的确定,便于后续进行与空间相关的特征提取。
S120、针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到当前帧点云数据的特征集合,其中,特征集合包括平面特征集合、角点特征集合以及强度特征集合。
具体的,对于每一路激光雷达的当前帧点云数据,可以对其中的各个点云线段进行平面特征提取,得到平面特征集合,由于单根激光线在空间中扫描到物体时,总是可以在平面交线处、平面边缘处和空中孤立点处提取到角点特征,因此,对其中的各个点云线段进行交线角点特征提取、边缘角点特征提取以及孤立角点特征提取,得到角点特征集合;对其中的各个点云线段进行强度特征提取,得到强度特征集合。
其中,平面特征集合包括多个平面激光点,平面激光点为可以与周围的激光点构成平面的激光点。角点特征集合包括多个角点激光点,角点激光点可以是平面交线角点、平面边缘断裂角点或孤立角点,平面交线角点为两个平面对应的线相交位置处的激光点,平面边缘断裂角点可以是位于平面边缘处且不与其它平面相交的激光点,孤立角点为空中孤立的激光点。
在本实施例中,考虑到各路激光雷达的当前帧点云数据的各个点云线段中可能存在浮空噪声点、距离过近的点或距离过远的点,因此,还可以在进行特征提取之前,对各路激光雷达的当前帧点云数据的各个点云线段进行预处理。
在一种具体的实施方式中,多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,在针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取之前,还包括:
针对每一路固态激光雷达的当前帧点云数据的各点云线段,确定点云线段中各激光点的偏转角,将偏转角大于预设角度阈值的激光点从点云线段中剔除,其中,偏转角为激光点与对应的激光雷达的X轴之间的夹角;和/或,针对每一路固态激光雷达的当前帧点云数据的各点云线段,确定点云线段中各激光点的入射角,并确定各激光点的入射角与预设平行角之间的差值,将差值小于预设角度差的激光点从点云线段中剔除,其中,入射角为激光点与激光点的周围局部平面之间的夹角。
其中,X轴可以是激光雷达的脉冲发射中心轴。偏转角可以理解为激光点对应的激光束与X轴之间的夹角。可以通过如下公式计算各激光点的偏转角:
式中,表示激光点P的偏转角,(x,y,z)表示激光点P的坐标。
其中,入射角可以理解为激光点对应的激光束与该激光点的周围局部平面之间的夹角。示例性的,可以通过如下公式计算各激光点的入射角:
式中,θ(Pb)表示激光点Pb的入射角,Pa、Pc为构成激光点Pb的周围局部平面的激光点的坐标。
示例性的,图3为本公开实施例提供的一种偏转角和入射角的示意图,其中,a、c为b的相邻激光点,a与c构成了b的周围局部平面,b与该周围局部平面之间的夹角为入射角,b与激光雷达的X轴之间夹角为偏转角,d与激光雷达的X轴之间夹角为偏转角。
具体的,在每个点云子视场中,具有较大偏转角的激光点接近点云子视场的边缘,如图2中每个点云子视场的两侧边缘部分的激光点,接近点云子视场的边缘,其扫描轨迹具有较大的曲率,导致这些激光点无法通过曲率值准确反映出被扫描物体的粗糙程度,因此,可以剔除掉偏转角大于预设角度阈值的激光点,以去除偏转角较大的激光点,保证特征提取的准确性。其中,预设角度阈值可以是预先设置的临界偏转角,如预设角度阈值可以取70°~80°内的任一角度。
并且,当激光点对应的激光束大致平行于周围局部平面时,激光点的距离测量值往往是不可靠的,因此,还可以剔除掉入射角与预设平行角之间的差值小于预设角度差的激光点,以将入射角接近于预设平行角的激光点去除。其中,预设平行角可以是0°或者180°。
通过上述方式,可以将距离过近或距离过远的激光点从点云线段中剔除,保留能够提供稳定特征的激光点作为特征提取的目标,进一步保证了点云建图的准确性。
在本实施例中,平面特征、角点特征以及强度特征的提取可以同时进行,也可以依次进行。需要说明的是,在依次进行平面、角点、强度的特征提取的方式中,可以预先为每个激光点设置对应的标记位,标记位采用默认值,每次进行某一类特征提取时,对标记位取默认值的所有激光点进行特征提取,若将激光点添加至该类特征集合中,则可以设置激光点对应的标记位为预设值,表示该激光点已被记录到一类特征集合中,以便于在后续进行特征提取时避免再次计算该类激光点的信息,提高了特征提取的效率。
针对平面特征的提取,示例性的,以旋转式多线激光雷达的当前帧点云数据的各个点云线段为例,可以通过激光点的局部曲率描述激光点的局部粗糙程度,将激光点按照局部曲率的大小进行排序,选择局部曲率最小的若干个激光点作为平面激光点,存储至平面特征集合中。
在一种示例中,多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取,包括:针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,根据点云线段中每一个激光点的邻域点集合,确定各激光点的局部曲率;将局部曲率小于预设曲率阈值的激光点,添加至当前帧点云数据的平面特征集合中。
其中,固态激光雷达可以是振镜式固态激光雷达或旋镜式固态激光雷达。激光点的邻域点集合可以由邻域范围内的多个激光点构成,例如,可以选取该激光点以及在同一点云线段上的该激光点的左右各三个激光点,组成邻域点集合。示例性的,根据激光点的邻域点集合确定激光点的局部曲率,可以通过如下公式计算:
式中,c表示激光点的局部曲率,Xr表示邻域点集合,|Xr|为邻域点集合中激光点的个数,ri为激光点的深度,rj为激光点的邻域点集合中的激光点的深度,深度可以理解为激光点到对应的激光雷达之间的距离。
具体的,激光点的局部曲率越大,则表示该激光点周围的点云越粗糙,局部曲率越小,则表示该激光点周围的点云越平滑。因此,可以将局部曲率小于预设曲率阈值的激光点,作为平面激光点添加至当前帧点云数据的平面特征集合中。通过该方式,实现了对振镜式固态激光雷达或旋镜式固态激光雷达的当前帧点云数据中的平面特征的提取,保证了特征提取的准确性。
针对角点特征的提取,示例性的,以旋转式多线激光雷达的当前帧点云数据的各个点云线段为例,可以选择局部曲率最大的若干个激光点作为角点激光点,存储至角点特征集合中。
在一种示例中,多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行交线角点特征提取,包括如下步骤:
步骤21、针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,根据点云线段中每一个激光点的左邻域点集合以及右邻域点集合,确定各激光点的左局部曲率和右局部曲率;
步骤22、将左局部曲率和右局部曲率均小于预设曲率阈值的激光点,确定为待加入点;
步骤23、针对每一个待加入点,根据位于待加入点左侧的多个激光点构成多个左侧局部向量,根据位于待加入点右侧的多个激光点构成多个右侧局部向量,基于多个左侧局部向量和多个右侧局部向量确定激光点对应的左平面向量和右平面向量;
步骤24、确定左平面向量与右平面向量之间的平面夹角,将平面夹角位于预设平面夹角范围内的待加入点,添加至当前帧点云数据的角点特征集合中。
在上述步骤21中,可以通过激光点的左邻域点集合确定左局部曲率,通过激光点的右邻域点集合确定右局部曲率。其中,计算左局部曲率和右局部曲率的方式可以参见平面特征提取过程中计算局部曲率的方式。
进一步的,如果左局部曲率和右局部曲率均小于预设曲率阈值,则表示该激光点的左右两侧均较为平滑,此时可以将该激光点确定为待加入点。
进一步的,对于每一个待加入点,根据其左侧的多个激光点(如5个)分别构造多个左侧局部向量(如5个),每个左侧局部向量表示为由待加入点指向左侧的激光点,将多个左侧局部向量加权求和,得到可以表示该待加入点左侧平面的左平面向量。并且,根据其右侧的多个激光点(如5个)分别构建多个右侧局部向量(如5个),每个右侧局部向量表示为由待加入点指向右侧的激光点,将多个右侧局部向量加权求和,得到可以表示该待加入点右侧平面的右平面向量。
进一步的,可以确定左平面向量与右平面向量之间的平面夹角,例如,可以通过如下公式计算平面夹角:
式中,分别表示待加入点的左平面向量和右平面向量,/> 分别为左平面向量的模长和右平面向量的模长,θ为平面夹角。
进一步的,可以将平面夹角位于预设平面夹角范围内的待加入点,作为角点激光点,添加至当前帧点云数据的角点特征集合中。其中,预设平面夹角范围可以是[60°,120°]。
图4为本公开实施例提供的一种角点示意图,如图4所示,其中,D、H为平面交线角点激光点。通过该方式,实现了对振镜式固态激光雷达或旋镜式固态激光雷达的当前帧点云数据的平面交线角点特征提取,可以将左右两侧均较为平滑的激光点作为平面交线角点激光点,并且排除掉平面夹角过大与过小的极端情况,保证了角点特征提取的准确性以及全面性。
在一种示例中,多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行边缘角点特征提取,包括如下步骤:
步骤31、针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,确定点云线段中各激光点与左侧激光点之间的第一距离、以及与右侧激光点之间的第二距离;
步骤32、将第一距离或第二距离大于预设距离阈值的激光点确定为距离跳变点,得到跳变点集合;
步骤33、若跳变点集合中存在两个距离跳变点相邻的情况,则将两个距离跳变点中与对应的激光雷达之间的距离最远的点,从跳变点集合中剔除,并将跳变点集合中剩余的点添加至当前帧点云数据的角点特征集合中。
在上述步骤31中,对于点云线段中的每一个激光点,计算其与左侧激光点的第一距离,以及其与右侧激光点之间的第二距离。进一步的,如果第一距离超过预设距离阈值,或者第二距离超过预设距离阈值,则表示该激光点两侧中的左侧或右侧存在明显的距离跳变,可以将该激光点作为距离跳变点。通过该方式筛选出各个点云线段中的所有距离跳变点,得到跳变点集合。其中,预设距离阈值可以根据左侧激光点或右侧激光点与对应的激光雷达之间的距离确定,如,预设距离阈值取0.1×距离。
在本实施例中,与两侧有明显距离跳变的激光点往往是平面边缘点,如图4所示,激光点A、B、C、E、G、I、J、L均为平面边缘点。然而,考虑到由于前方平面边缘的遮挡,可能使得一些不为平面边缘的点满足两侧有明显距离跳变的判断条件,如图4中的激光点K,但随着激光雷达的运动,激光点K可能又不满足两侧有明显距离跳变的判断条件,因此,为了在边缘角点特征提取过程中将该类不确定的平面边缘点剔除,以确保特征提取的准确性,还可以通过上述步骤33将此类点从跳变点集合中剔除。
具体的,如果跳变点集合中存在两个距离跳变点相邻的情况,可以将相邻的两个距离跳变点中距离激光雷达最远的点剔除,保留距离激光雷达最近的点,进而将跳变点集合中剩余的点作为平面边缘角点,添加至当前帧点云数据的角点特征集合中。如图4中的激光点L与激光点K相邻,可以将K从跳变点集合中剔除。
示例性的,上述步骤31-33可以通过如下公式表示,即将满足如下公式的激光点确定平面边缘角点:
|PK-PL|≥0.1|PK|,and,|PK|>|PL|;
式中,PL为激光点,PK为激光点的左侧激光点或右侧激光点,|PK|、|PL|为模长,即与对应的激光雷达之间的距离,|PK-PL|为第一距离或第二距离,0.1|PK|为预设距离阈值。
通过上述实施方式,实现了对振镜式固态激光雷达或旋镜式固态激光雷达的当前帧点云数据的平面边缘角点特征提取,避免了提取到被前方平面遮挡的非平面边缘点,保证了特征提取的准确性和全面性。
在一种示例中,多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行孤立角点特征提取,包括:
针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,确定点云线段中各激光点与左侧激光点之间的第一夹角余弦值,以及与右侧激光点之间的第二夹角余弦值;将第一夹角余弦值和第二夹角余弦值均大于预设余弦阈值的激光点,添加至当前帧点云数据的角点特征集合中。
考虑到在激光雷达的扫描过程中,相邻的激光点之间的偏转角度是恒定的,如果相邻的激光点之间的角度变大,则表示两个激光点之间存在无穷远点,无穷远点没有激光回波,导致被跳过了,进而导致激光点之间的夹角变大。因此,可以通过计算点云线段中每一个激光点与其左右两侧激光点之间的夹角的余弦值,判断激光点是否为空中的孤立点。
其中,第一夹角余弦值为点云线段中的激光点与左侧激光点之间的夹角的余弦值,第二夹角余弦值为点云线段中的激光点与右侧激光点之间的夹角的余弦值。需要说明的是,一个激光点与另一个激光点之间的夹角可以理解为一个激光点对应的激光束与另一个激光点对应的激光束之间的夹角。
具体的,参见图4,如果激光点F与左侧激光点E之间的第一夹角余弦值大于预设余弦阈值,且,激光点F与右侧激光点G之间的第二夹角余弦值大于预设余弦阈值,则可以确定该激光点F为孤立角点,可以将其添加至当前帧点云数据的角点特征集合中。示例性的,如图4中激光点F即为空中的孤立点。
通过上述方式,实现了对振镜式固态激光雷达或旋镜式固态激光雷达的当前帧点云数据的孤立角点特征提取,保证了特征提取的准确性和全面性。
在本实施例中,针对强度特征的提取,考虑到在地下巷道、交通隧道等特殊场景下,会存在反光柱、反光条等具有显著激光强度的物体,因此,可以单独将反射强度高的激光点提取为强度特征,以在角点特征稀缺的环境下获取稳定的特征,避免建图算法退化。
具体的,可以对各路激光雷达的当前帧点云数据的每个点云线段进行遍历,将其中强度值大于设定强度阈值的激光点添加至强度特征集合中。
S130、基于各路激光雷达的当前帧点云数据的特征集合确定当前帧总特征集合,其中,当前帧总特征集合包括当前帧总平面特征集合、当前帧总角点特征集合以及当前帧总强度特征集合。
具体的,在得到每一路激光雷达的当前帧点云数据的特征集合后,可以将所有路激光雷达的当前帧点云数据的平面特征集合合并,得到当前帧总平面特征集合,将所有路激光雷达的当前帧点云数据的角点特征集合合并,得到当前帧总角点特征集合,将所有路激光雷达的当前帧点云数据的强度特征集合合并,得到当前帧总强度特征集合。
S140、基于当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图。
其中,与多路激光雷达的历史帧点云数据对应的局部点云地图,可以是基于多路激光雷达的多个历史帧点云数据构成的地图。
示例性的,可以对当前帧总特征集合与历史帧点云数据对应的局部点云地图进行匹配,根据匹配结果构造点-点残差、点-线残差以及点-面残差,进而联合各种残差构建约束函数,通过对约束函数求解得到多路激光雷达的当前帧点云数据相对于世界坐标系的变换矩阵,基于该变换矩阵将当前帧点云数据变换至世界坐标系下,并合并到世界坐标系下的局部点云地图中,完成当前帧点云数据的建图。
在一种具体的实施方式中,基于当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图,包括如下步骤:
步骤41、对当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图进行特征匹配,根据匹配结果构建点-面残差、点-线残差以及点-点残差;
步骤42、基于点-面残差、点-线残差以及点-点残差构建残差优化函数,以残差优化函数的计算结果最小化为目标,得到多路激光雷达的当前帧点云数据相对于世界坐标系的变换矩阵;
步骤43、基于变换矩阵将多路激光雷达的当前帧点云数据变换至世界坐标系中,并将变换后的多路激光雷达的当前帧点云数据合并至与多路激光雷达的历史帧点云数据对应的局部点云地图中,得到与多路激光雷达的当前帧点云数据对应的局部点云地图。
其中,当前帧总平面特征集合可以构建点-面残差,当前帧总角点特征集合可以构建点-线残差,当前帧总强度特征集合可以构建点-点残差。
针对上述步骤41,可选的,对当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图进行特征匹配,包括:针对当前帧总平面特征集合中的每一个平面激光点,在历史帧总平面特征集合中查找平面激光点的近邻点集合,其中,历史帧总平面特征集合为与多路激光雷达的历史帧点云数据对应的局部点云地图中的总平面特征集合;
相应的,根据匹配结果构建点-面残差,包括:根据平面激光点的近邻点集合构建参考平面,基于平面激光点以及参考平面构建点-面残差。
即,对于当前帧总平面特征集合中的每一个平面激光点,可以在与历史帧点云数据对应的局部点云地图中的总平面特征集合中,查找近邻点集合,进而根据近邻点集合构建参考平面,根据该平面激光点与参考平面之间的距离构建点-面残差。其中,每一个平面激光点可以分别对应一个点-面残差。通过该方式,实现了点-面残差的准确构建。
针对上述步骤41,可选的,对当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图进行特征匹配,包括:针对当前帧总角点特征集合中的每一个角点激光点,在历史帧总角点特征集合中查找角点激光点的近邻点集合,其中,历史帧总角点特征集合为与多路激光雷达的历史帧点云数据对应的局部点云地图中的总角点特征集合;
相应的,根据匹配结果构建点-线残差,包括:根据角点激光点的近邻点集合构建参考线段,基于角点激光点以及参考线段构建点-线残差。
即,对于当前帧总角点特征集合中的每一个角点激光点,可以在与历史帧点云数据对应的局部点云地图中的总角点特征集合中,查找近邻点集合,进而根据近邻点集合构建参考线段,根据该角点激光点与参考线段之间的距离构建点-线残差。其中,每一个角点激光点可以分别对应一个点-线残差。通过该方式,实现了点-线残差的准确构建。
针对上述步骤41,可选的,对当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图进行特征匹配,包括:针对当前帧总强度特征集合中的每一个强度激光点,在历史帧总强度特征集合中查找强度激光点的近邻点集合,其中,历史帧总强度特征集合为与多路激光雷达的历史帧点云数据对应的局部点云地图中的总强度特征集合;
相应的,根据匹配结果构建点-点残差,包括:基于强度激光点以及近邻点集合构建点-点残差。
即,对于当前帧强度特征集合中的每一个强度激光点,可以在与历史帧点云数据对应的局部点云地图中的总强度特征集合中,查找近邻点集合,进而根据该强度激光点与近邻点集合中各个点之间的距离,构建点-点残差。通过该方式,实现了点-点残差的准确构建。
在构建出残差后,进一步的,在上述步骤42中,通过所有点的点-面残差、点-线残差以及点-点残差,构造残差优化函数,其中,残差优化函数可以用于计算所有点的残差的平方值的累计和。
具体的,可以通过高斯牛顿法等非线性最小二乘优化方法,不断最小化残差优化函数的计算结果,以残差优化函数的计算结果最小化为目标,得到多路激光雷达的当前帧点云数据相对于世界坐标系的变换矩阵。
进一步的,在上述步骤43中,通过变换矩阵可以将各路激光雷达的当前帧点云数据,从当前帧坐标系变换至世界坐标系中,进而将变换后的各路激光雷达的当前帧点云数据与历史帧点云数据对应的局部点云地图融合,得到当前帧点云数据的建图结果。
通过上述步骤41-步骤43,实现了多类型特征的联合位姿求解,保证了位姿求解的准确性,进而保证了点云建图的准确性。
本实施例提供的多异构激光雷达建图方法,通过获取各激光雷达的类型不完全相同的多路激光雷达的当前帧点云数据,确定每一路激光雷达的当前帧点云数据对应的多个点云线段,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到当前帧点云数据的特征集合,进而得到当前帧总特征集合,通过当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图,实现了根据多异构激光雷达采集的点云数据进行建图,该方法通过提取分线后的点云线段的平面特征、交线角点特征、边缘角点特征、孤立角点特征以及强度特征,并联合历史帧点云数据的局部点云地图构建当前帧点云数据的局部点云地图,适用于各种类型的激光雷达,降低了建图对车端激光雷达布局方案的依赖,提升了建图数据信息的利用率,以及建图技术的易用性和通用性。
图5为本公开实施例中的一种多异构激光雷达建图装置的结构示意图。如图5所示:该装置包括:数据获取模块510、特征提取模块520、总特征确定模块530以及地图确定模块540。
数据获取模块510,用于获取多路激光雷达的当前帧点云数据,并确定每一路激光雷达的当前帧点云数据对应的多个点云线段,多路激光雷达中各激光雷达的类型不完全相同;
特征提取模块520,用于针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到所述当前帧点云数据的特征集合,其中,所述特征集合包括平面特征集合、角点特征集合以及强度特征集合;
总特征确定模块530,用于基于各路激光雷达的当前帧点云数据的特征集合确定当前帧总特征集合,其中,所述当前帧总特征集合包括当前帧总平面特征集合、当前帧总角点特征集合以及当前帧总强度特征集合;
地图确定模块540,用于基于所述当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图。
可选的,数据获取模块510还用于:针对每一路激光雷达的当前帧点云数据,根据所述当前帧点云数据中各个激光点对应的时间戳确定所述当前帧点云数据对应的时间范围;基于当前车速以及当前转向角度,确定对应的激光雷达在所述时间范围内的位姿变化信息;基于所述位姿变化信息确定所述时间范围内的每个激光点相对于起始激光点的位姿变化量,针对所述时间范围内的每个激光点,根据对应的位姿变化量对所述激光点进行位姿转换。
可选的,所述多路激光雷达的当前帧点云数据至少包括振镜式固态激光雷达的当前帧点云数据,数据获取模块510还用于:获取与所述振镜式固态激光雷达对应的多个点云子视场,以及各所述点云子视场的脉冲发射顺序;针对每一路振镜式固态激光雷达的当前帧点云数据,基于所述脉冲发射顺序对当前帧点云数据进行分解,得到与各所述点云子视场分别对应的点云线段。
可选的,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,所述装置还包括预处理模块,所述预处理模块,用于针对每一路固态激光雷达的当前帧点云数据的各点云线段,确定所述点云线段中各激光点的偏转角,将偏转角大于预设角度阈值的激光点从所述点云线段中剔除,其中,所述偏转角为所述激光点与对应的激光雷达的X轴之间的夹角;和/或,针对每一路固态激光雷达的当前帧点云数据的各点云线段,确定所述点云线段中各激光点的入射角,并确定各激光点的入射角与预设平行角之间的差值,将差值小于预设角度差的激光点从所述点云线段中剔除,其中,所述入射角为所述激光点与所述激光点的周围局部平面之间的夹角。
可选的,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,所述特征提取模块520包括平面提取单元,所述平面提取单元,用于针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,根据所述点云线段中每一个激光点的邻域点集合,确定各激光点的局部曲率;将局部曲率小于预设曲率阈值的激光点,添加至所述当前帧点云数据的平面特征集合中。
可选的,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,所述特征提取模块520包括交线角点提取单元,所述交线角点提取单元,用于针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,根据所述点云线段中每一个激光点的左邻域点集合以及右邻域点集合,确定各激光点的左局部曲率和右局部曲率;将左局部曲率和右局部曲率均小于预设曲率阈值的激光点,确定为待加入点;针对每一个待加入点,根据位于所述待加入点左侧的多个激光点构成多个左侧局部向量,根据位于所述待加入点右侧的多个激光点构成多个右侧局部向量,基于多个左侧局部向量和多个右侧局部向量确定所述激光点对应的左平面向量和右平面向量;确定所述左平面向量与所述右平面向量之间的平面夹角,将平面夹角位于预设平面夹角范围内的待加入点,添加至所述当前帧点云数据的角点特征集合中。
可选的,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,所述特征提取模块520包括边缘角点提取单元,所述边缘角点提取单元,用于针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,确定所述点云线段中各激光点与左侧激光点之间的第一距离、以及与右侧激光点之间的第二距离;将第一距离或第二距离大于预设距离阈值的激光点确定为距离跳变点,得到跳变点集合;若所述跳变点集合中存在两个距离跳变点相邻的情况,则将两个距离跳变点中与对应的激光雷达之间的距离最远的点,从所述跳变点集合中剔除,并将所述跳变点集合中剩余的点添加至所述当前帧点云数据的角点特征集合中。
可选的,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,所述特征提取模块520包括孤立角点提取单元,所述孤立角点提取单元,用于针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,确定所述点云线段中各激光点与左侧激光点之间的第一夹角余弦值,以及与右侧激光点之间的第二夹角余弦值;将所述第一夹角余弦值和所述第二夹角余弦值均大于预设余弦阈值的激光点,添加至所述当前帧点云数据的角点特征集合中。
可选的,所述地图确定模块540包括残差构建单元、位姿求解单元以及合并单元,其中:
所述残差构建单元,用于对所述当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图进行特征匹配,根据匹配结果构建点-面残差、点-线残差以及点-点残差;
所述位姿求解单元,用于基于所述点-面残差、所述点-线残差以及所述点-点残差构建残差优化函数,以所述残差优化函数的计算结果最小化为目标,得到多路激光雷达的当前帧点云数据相对于世界坐标系的变换矩阵;
所述合并单元,用于基于所述变换矩阵将多路激光雷达的当前帧点云数据变换至所述世界坐标系中,并将变换后的多路激光雷达的当前帧点云数据合并至与多路激光雷达的历史帧点云数据对应的局部点云地图中,得到与多路激光雷达的当前帧点云数据对应的局部点云地图。
可选的,所述残差构建单元,还用于:针对所述当前帧总平面特征集合中的每一个平面激光点,在历史帧总平面特征集合中查找所述平面激光点的近邻点集合,其中,所述历史帧总平面特征集合为与多路激光雷达的历史帧点云数据对应的局部点云地图中的总平面特征集合;根据所述平面激光点的近邻点集合构建参考平面,基于所述平面激光点以及所述参考平面构建点-面残差。
可选的,所述残差构建单元,还用于:针对所述当前帧总角点特征集合中的每一个角点激光点,在历史帧总角点特征集合中查找所述角点激光点的近邻点集合,其中,所述历史帧总角点特征集合为与多路激光雷达的历史帧点云数据对应的局部点云地图中的总角点特征集合;根据所述角点激光点的近邻点集合构建参考线段,基于所述角点激光点以及所述参考线段构建点-线残差。
可选的,所述残差构建单元,还用于:针对所述当前帧总强度特征集合中的每一个强度激光点,在历史帧总强度特征集合中查找所述强度激光点的近邻点集合,其中,所述历史帧总强度特征集合为与多路激光雷达的历史帧点云数据对应的局部点云地图中的总强度特征集合;基于所述强度激光点以及所述近邻点集合构建点-点残差。
本公开实施例提供的多异构激光雷达建图装置,可执行本公开方法实施例所提供的多异构激光雷达建图方法中的步骤,具备执行步骤和有益效果此处不再赘述。
图6为本公开实施例中的一种电子设备的结构示意图。下面具体参考图6,其示出了适于用来实现本公开实施例中的电子设备600的结构示意图。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600可以包括处理装置(例如中央处理器、图形处理器等)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理以实现如本公开所述的实施例的方法。在RAM 603中,还存储有电子设备600操作所需的各种程序和数据。处理装置601、ROM602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码,从而实现如上所述的多异构激光雷达建图方法。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
获取多路激光雷达的当前帧点云数据,并确定每一路激光雷达的当前帧点云数据对应的多个点云线段,多路激光雷达中各激光雷达的类型不完全相同;
针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到所述当前帧点云数据的特征集合,其中,所述特征集合包括平面特征集合、角点特征集合以及强度特征集合;
基于各路激光雷达的当前帧点云数据的特征集合确定当前帧总特征集合,其中,所述当前帧总特征集合包括当前帧总平面特征集合、当前帧总角点特征集合以及当前帧总强度特征集合;
基于所述当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图。
可选的,当上述一个或者多个程序被该电子设备执行时,该电子设备还可以执行上述实施例所述的其他步骤。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
上述实施例的可读存储介质存储的计算机指令用于使所述计算机执行如上任一实施例所述的多异构激光雷达建图方法,并且具有相应的方法实施例的有益效果,在此不再赘述。
Claims (10)
1.一种多异构激光雷达建图方法,其特征在于,所述方法包括:
获取多路激光雷达的当前帧点云数据,并确定每一路激光雷达的当前帧点云数据对应的多个点云线段,多路激光雷达中各激光雷达的类型不完全相同;
针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到所述当前帧点云数据的特征集合,其中,所述特征集合包括平面特征集合、角点特征集合以及强度特征集合;
基于各路激光雷达的当前帧点云数据的特征集合确定当前帧总特征集合,其中,所述当前帧总特征集合包括当前帧总平面特征集合、当前帧总角点特征集合以及当前帧总强度特征集合;
基于所述当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图。
2.根据权利要求1所述的方法,其特征在于,在所述确定每一路激光雷达的当前帧点云数据对应的多个点云线段之前,还包括:
针对每一路激光雷达的当前帧点云数据,根据所述当前帧点云数据中各个激光点对应的时间戳确定所述当前帧点云数据对应的时间范围;
基于当前车速以及当前转向角度,确定对应的激光雷达在所述时间范围内的位姿变化信息;
基于所述位姿变化信息确定所述时间范围内的每个激光点相对于起始激光点的位姿变化量,针对所述时间范围内的每个激光点,根据对应的位姿变化量对所述激光点进行位姿转换。
3.根据权利要求1所述的方法,其特征在于,所述多路激光雷达的当前帧点云数据至少包括振镜式固态激光雷达的当前帧点云数据,所述确定每一路激光雷达的当前帧点云数据对应的多个点云线段,包括:
获取与所述振镜式固态激光雷达对应的多个点云子视场,以及各所述点云子视场的脉冲发射顺序;
针对每一路振镜式固态激光雷达的当前帧点云数据,基于所述脉冲发射顺序对当前帧点云数据进行分解,得到与各所述点云子视场分别对应的点云线段。
4.根据权利要求1所述的方法,其特征在于,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,在所述针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取之前,还包括:
针对每一路固态激光雷达的当前帧点云数据的各点云线段,确定所述点云线段中各激光点的偏转角,将偏转角大于预设角度阈值的激光点从所述点云线段中剔除,其中,所述偏转角为所述激光点与对应的激光雷达的X轴之间的夹角;和/或,
针对每一路固态激光雷达的当前帧点云数据的各点云线段,确定所述点云线段中各激光点的入射角,并确定各激光点的入射角与预设平行角之间的差值,将差值小于预设角度差的激光点从所述点云线段中剔除,其中,所述入射角为所述激光点与所述激光点的周围局部平面之间的夹角。
5.根据权利要求1所述的方法,其特征在于,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取,包括:
针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,根据所述点云线段中每一个激光点的邻域点集合,确定各激光点的局部曲率;
将局部曲率小于预设曲率阈值的激光点,添加至所述当前帧点云数据的平面特征集合中。
6.根据权利要求1所述的方法,其特征在于,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行交线角点特征提取,包括:
针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,根据所述点云线段中每一个激光点的左邻域点集合以及右邻域点集合,确定各激光点的左局部曲率和右局部曲率;
将左局部曲率和右局部曲率均小于预设曲率阈值的激光点,确定为待加入点;
针对每一个待加入点,根据位于所述待加入点左侧的多个激光点构成多个左侧局部向量,根据位于所述待加入点右侧的多个激光点构成多个右侧局部向量,基于多个左侧局部向量和多个右侧局部向量确定所述激光点对应的左平面向量和右平面向量;
确定所述左平面向量与所述右平面向量之间的平面夹角,将平面夹角位于预设平面夹角范围内的待加入点,添加至所述当前帧点云数据的角点特征集合中。
7.根据权利要求1所述的方法,其特征在于,所述多路激光雷达的当前帧点云数据至少包括固态激光雷达的当前帧点云数据,针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行边缘角点特征提取,包括:
针对每一路固态激光雷达的当前帧点云数据中的各个点云线段,确定所述点云线段中各激光点与左侧激光点之间的第一距离、以及与右侧激光点之间的第二距离;
将第一距离或第二距离大于预设距离阈值的激光点确定为距离跳变点,得到跳变点集合;
若所述跳变点集合中存在两个距离跳变点相邻的情况,则将两个距离跳变点中与对应的激光雷达之间的距离最远的点,从所述跳变点集合中剔除,并将所述跳变点集合中剩余的点添加至所述当前帧点云数据的角点特征集合中。
8.一种多异构激光雷达建图装置,其特征在于,所述装置包括:
数据获取模块,用于获取多路激光雷达的当前帧点云数据,并确定每一路激光雷达的当前帧点云数据对应的多个点云线段,多路激光雷达中各激光雷达的类型不完全相同;
特征提取模块,用于针对每一路激光雷达的当前帧点云数据,对当前帧点云数据的每一个点云线段进行平面特征提取、交线角点特征提取、边缘角点特征提取、孤立角点特征提取以及强度特征提取,得到所述当前帧点云数据的特征集合,其中,所述特征集合包括平面特征集合、角点特征集合以及强度特征集合;
总特征确定模块,用于基于各路激光雷达的当前帧点云数据的特征集合确定当前帧总特征集合,其中,所述当前帧总特征集合包括当前帧总平面特征集合、当前帧总角点特征集合以及当前帧总强度特征集合;
地图确定模块,用于基于所述当前帧总特征集合以及与多路激光雷达的历史帧点云数据对应的局部点云地图,确定与多路激光雷达的当前帧点云数据对应的局部点云地图。
9.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310731609.5A CN117011483A (zh) | 2023-06-20 | 2023-06-20 | 多异构激光雷达建图方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310731609.5A CN117011483A (zh) | 2023-06-20 | 2023-06-20 | 多异构激光雷达建图方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117011483A true CN117011483A (zh) | 2023-11-07 |
Family
ID=88571760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310731609.5A Pending CN117011483A (zh) | 2023-06-20 | 2023-06-20 | 多异构激光雷达建图方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117011483A (zh) |
-
2023
- 2023-06-20 CN CN202310731609.5A patent/CN117011483A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10901429B2 (en) | Method and apparatus for outputting information of autonomous vehicle | |
CN111324121B (zh) | 一种基于激光雷达的移动机器人自动充电方法 | |
CN109490825B (zh) | 定位导航方法、装置、设备、系统及存储介质 | |
CN110609570A (zh) | 一种基于无人机的自主避障巡检方法 | |
CN108875804B (zh) | 一种基于激光点云数据的数据处理方法和相关装置 | |
CN109407073B (zh) | 反射值地图构建方法和装置 | |
CN107850450A (zh) | 用于生成及使用定位参考数据的方法及系统 | |
CN110286387A (zh) | 应用于自动驾驶系统的障碍物检测方法、装置及存储介质 | |
US20170294026A1 (en) | Method and apparatus for generating road surface, method and apparatus for processing point cloud data, computer program, and computer readable recording medium | |
CN107742304B (zh) | 移动轨迹的确定方法及装置、移动机器人及存储介质 | |
CN108734780B (zh) | 用于生成地图的方法、装置和设备 | |
CN113432533B (zh) | 一种机器人定位方法、装置、机器人及存储介质 | |
CN111435163A (zh) | 地面点云数据过滤方法、装置、探测系统及存储介质 | |
CN113475976B (zh) | 机器人可通行区域确定方法、装置、存储介质及机器人 | |
CN111999744A (zh) | 一种无人机多方位探测、多角度智能避障方法 | |
CN114255252B (zh) | 障碍物轮廓获取方法、装置、设备及计算机可读存储介质 | |
CN113768419A (zh) | 确定扫地机清扫方向的方法、装置及扫地机 | |
CN112630798B (zh) | 用于估计地面的方法和装置 | |
Wujanz et al. | Survey configuration for terrestrial laser scanning | |
CN117011483A (zh) | 多异构激光雷达建图方法、装置、电子设备和存储介质 | |
CN114115263B (zh) | 用于agv的自主建图方法、装置、移动机器人及介质 | |
CN115713607A (zh) | 基于激光雷达和倾斜摄影提升建模质量的方法 | |
CN114779207A (zh) | 噪声数据识别方法、装置及存储介质 | |
CN112556596B (zh) | 三维变形测量系统、方法、装置和存储介质 | |
CN111723797B (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 |