CN113050993A - 基于激光雷达的检测方法、装置及计算机可读存储介质 - Google Patents
基于激光雷达的检测方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN113050993A CN113050993A CN201911377026.7A CN201911377026A CN113050993A CN 113050993 A CN113050993 A CN 113050993A CN 201911377026 A CN201911377026 A CN 201911377026A CN 113050993 A CN113050993 A CN 113050993A
- Authority
- CN
- China
- Prior art keywords
- algorithm
- sub
- grid
- laser radar
- algorithms
- 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
- 238000001514 detection method Methods 0.000 title claims abstract description 62
- 238000003860 storage Methods 0.000 title claims abstract description 49
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 371
- 238000000034 method Methods 0.000 claims abstract description 90
- 230000001133 acceleration Effects 0.000 claims abstract description 88
- 230000008569 process Effects 0.000 claims abstract description 56
- 238000012545 processing Methods 0.000 claims abstract description 52
- 238000004040 coloring Methods 0.000 claims description 49
- 238000000605 extraction Methods 0.000 claims description 26
- 230000011218 segmentation Effects 0.000 claims description 23
- 238000013507 mapping Methods 0.000 claims description 18
- 230000004888 barrier function Effects 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 7
- 238000004364 calculation method Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 238000005457 optimization Methods 0.000 description 10
- 238000005192 partition Methods 0.000 description 8
- 238000005520 cutting process Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 6
- 239000010410 layer Substances 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 5
- 238000006243 chemical reaction Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 239000002356 single layer Substances 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000010422 painting Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000003252 repetitive effect Effects 0.000 description 2
- 238000012216 screening Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 238000002310 reflectometry Methods 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- 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/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W40/00—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
- B60W40/02—Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to ambient conditions
-
- 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/02—Systems using the reflection of electromagnetic waves other than radio waves
- G01S17/50—Systems of measurement based on relative movement of target
-
- 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
- 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
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/4808—Evaluating distance, position or velocity 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
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/481—Constructional features, e.g. arrangements of optical elements
- G01S7/4817—Constructional features, e.g. arrangements of optical elements relating to scanning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3889—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
-
- 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/11—Region-based segmentation
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
- G06V10/757—Matching configurations of points or features
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
- B60W2050/005—Sampling
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W50/00—Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
- B60W2050/0001—Details of the control system
- B60W2050/0043—Signal treatments, identification of variables or parameters, parameter estimation or state estimation
- B60W2050/0052—Filtering, filters
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2420/00—Indexing codes relating to the type of sensors based on the principle of their operation
- B60W2420/40—Photo, light or radio wave sensitive means, e.g. infrared sensors
- B60W2420/408—Radar; Laser, e.g. lidar
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2554/00—Input parameters relating to objects
- B60W2554/20—Static objects
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60W—CONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
- B60W2554/00—Input parameters relating to objects
- B60W2554/40—Dynamic objects, e.g. animals, windblown objects
-
- 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/02—Systems using the reflection of electromagnetic waves other than radio waves
- G01S17/06—Systems determining position data of a target
- G01S17/08—Systems determining position data of a target for measuring distance only
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Electromagnetism (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Automation & Control Theory (AREA)
- Mathematical Physics (AREA)
- Mechanical Engineering (AREA)
- Transportation (AREA)
- General Engineering & Computer Science (AREA)
- Medical Informatics (AREA)
- Artificial Intelligence (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Optical Radar Systems And Details Thereof (AREA)
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明实施例涉及异构计算领域,公开了一种基于激光雷达的检测方法、装置及计算机可读存储介质,所述基于激光雷达的检测方法包括:获取激光雷达的扫描数据;对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法;对至少一个所述子算法进行异构加速以处理所述扫描数据,并根据处理结果,得到检测出的障碍物位置和可行驶区域。本发明提供的基于激光雷达的检测方法、装置及计算机可读存储介质能够提高激光雷达感知过程中的数据运算速度,从而提高激光雷达的可靠性。
Description
技术领域
本发明实施例涉及异构计算领域,特别涉及一种基于激光雷达的检测方法、装置及计算机可读存储介质。
背景技术
传统的自动驾驶系统可以划分为定位、感知、融合、决策规划、控制等模块。其中,感知模块是自动驾驶系统的一个重要组成部分,它使车辆能够及时获取周边路况信息,深入理解动态环境的变化,以便于后续做有效的信息融合和决策规划。在自动驾驶过程中,周围路况信息通过摄像头、毫米波雷达、超声波雷达、激光雷达等多种传感器传入车辆的电子控制单(Electronic Control Unit,ECU)元中。
激光雷达是自动驾驶中一种重要的传感器,它具有测量分辨率高、抗干扰能力强、抗隐身能力强、穿透能力强和全天候工作的特点。它利用了激光发射器投射到探测物上折返的时间,能够计算出探测物的距离信息,并绘制出三维点云图;同时激光束在投射到物体表面时,根据物体表面反射率不同,还会产生不同的表面特征信息,对于目标检测、跟踪有十分重要的参考价值。利用激光雷达来感知车辆周边环境信息,能够准确探测出障碍物的距离信息以及物体表面属性,其识别精度是摄像头毫米波雷达等传感器达不到的。然而,激光雷达感测的过程中数据计算量大,由于当前激光雷达感知过程中的数据运算速度不高,直接影响了激光雷达的可靠性。
发明内容
本发明实施方式的目的在于提供一种基于激光雷达的检测方法、装置及计算机可读存储介质,其能够提高激光雷达感知过程中的数据运算速度,从而提高激光雷达的可靠性。
为解决上述技术问题,本发明的实施方式提供了一种基于激光雷达的检测方法,包括:
获取激光雷达的扫描数据;对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法;对至少一个所述子算法进行异构加速以处理所述扫描数据,并根据处理结果,得到检测出的障碍物位置和可行驶区域。
本发明的实施方式还提供了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现上述的基于激光雷达的检测方法。
本发明的实施方式还提供了一种基于激光雷达的检测装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时实现上述的基于激光雷达的检测方法。
本发明的实施方式相对于现有技术而言,对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,由于特征算法中具有多个实现流程,通过对特征算法的实现流程进行拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,从而能够满足异构加速的条件;继而,对至少一个所述子算法进行异构加速以处理所述扫描数据。由于能够进行并行处理的子算法均是数据量大、计算耗时长且对CPU占用率较高的算法,通过对至少一个子算法进行异构加速,能够有效降低激光雷达感知算法的整体耗时,从而提高了激光雷达感知过程中的数据运算速度,进而提高了激光雷达的可靠性。此外,由于CPU占用率较高的子算法通过异构加速后CPU占用率大大降低,从而能够选择更低功耗和成本的处理器和异构计算设备,降低了基于激光雷达的目标检测装置的生产成本。
另外,所述对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,具体包括:对用于根据所述扫描数据检测障碍物位置的第一特征算法、用于根据所述扫描数据检测可行驶区域的第二特征算法进行算法拆分,得到所述第一特征算法中能够进行并行处理的多个第一子算法、所述第二特征算法中能够进行并行处理的多个第二子算法;所述对至少一个所述子算法进行异构加速以处理所述扫描数据,具体包括:对所述多个第一子算法中的至少一个算法和/或所述多个第二子算法中的至少一个算法进行异构加速以处理所述扫描数据。
另外,所述第一特征算法包括:根据所述扫描数据拟合地面的拟合算法;根据所述拟合地面的结果、对所述障碍物进行分割聚类的分割聚类算法;根据所述分割聚类的结果、提取所述障碍物的边缘边框的边缘提取算法;以及根据所述边缘边框、识别所述障碍物位置的位置识别算法;对用于根据所述扫描数据检测障碍物位置的第一特征算法进行算法拆分,具体包括:对所述拟合算法、分割聚类算法、边缘提取算法以及位置识别算法中的至少一者进行算法拆分。
另外,在对边缘提取算法进行算法拆分的情况下,将所述边缘提取算法拆分成如下步骤:根据所述分割聚类的结果,提取所述障碍物的M个二维映射外轮廓点坐标,其中,M为大于1的整数;根据所述M个二维映射外轮廓点坐标得到M条拟合直线,并计算所述M条拟合直线的M个倾斜角度,其中,一个所述二维映射外轮廓点对应一个倾斜角度;根据所述倾斜角度旋转对应的所述二维映射外轮廓点坐标,得到所述障碍物的立方体边框。通过此种方式,能够对第一特征算法中运算耗时较长的边缘提取算法进行算法拆分,以对边缘提取算法中满足异构加速条件的步骤进行异构加速,进而提高了激光雷达感知过程中的数据运算速度,提高了激光雷达的可靠性。
另外,所述对所述多个第一子算法中的至少一个子算法和/或所述多个第二子算法中的至少一个子算法进行异构加速,具体为:对所述边缘提取算法中的至少一个步骤进行异构加速;所述对所述边缘提取算法中的至少一个步骤进行异构加速,具体包括:并行处理所述根据所述M个二维映射外轮廓点坐标得到M条拟合直线。
另外,所述第二特征算法包括:将所述扫描数据按360度栅格分类存放的分类存放算法;根据所述360度栅格分类存放的结果,获取所述扫描数据中的地面点,并对所述地面点进行初步着色处理的地面点判断算法;根据所述地面点建立栅格图像,对所述栅格图像进行细化着色处理,得到所述可行驶区域的栅格着色算法;对激光雷达用于检测可行驶区域的第二特征算法进行算法拆分,具体包括:对所述分类存放算法、所述地面点判断算法、所述栅格着色算法三者中的至少一者进行算法拆分。
另外,在对所述分类存放算法进行算法拆分的情况下,将所述分类存放算法拆分成如下步骤:根据所述原始激光雷达点云数据,得到原始激光雷达点的极坐标;以预设弧度划分所述激光雷达的扫描区域,得到N个扇区,其中,N为大于1的整数;根据每个所述原始激光雷达点的极坐标所在的扇区位置,将每个所述原始激光雷达点按照所述扇区组成二维数组存放。通过此种方式,能够对第二特征算法中运算耗时较长的分类存放算法进行算法拆分,从而能够使分类存放算法满足异构加速条件,以对分类存放算法进行异构加速,进一步提高了激光雷达感知过程中的数据运算速度,进而进一步提高了激光雷达的可靠性。
另外,所述对所述多个第一子算法中的至少一个子算法和/或所述多个第二子算法中的至少一个子算法进行异构加速,具体为:对所述分类存放算法中的至少一个步骤进行异构加速;所述对所述分类存放算法中的至少一个步骤进行异构加速,具体包括:并行处理所述多个扇区位置内的所述原始激光雷达点。
另外,所述对所述分类存放算法、所述地面点判断算法、所述栅格着色算法三者中的至少一者进行算法拆分,具体为:对所述栅格着色算法进行算法拆分;所述对所述栅格着色算法进行算法拆分,具体为:将所述栅格着色算法拆分为如下步骤:判断所述栅格图像中的每个栅格是否为地面,并对判定为地面的栅格进行着色处理。通过此种方式,能够对第二特征算法中运算耗时较长的栅格着色算法进行算法拆分,从而能够使栅格着色算法满足异构加速条件,以对栅格着色算法进行异构加速,进一步提高了激光雷达感知过程中的数据运算速度,进而进一步提高了激光雷达的可靠性。
另外,所述对所述多个第一子算法中的至少一个算法和/或所述多个第二子算法中的至少一个算法进行异构加速,具体为:对所述多个第二子算法中的至少一个算法进行异构加速;所述对所述多个第二子算法中的至少一个算法进行异构加速,具体包括:并行处理判断所述栅格图像中的每个栅格是否为地面。
附图说明
一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
图1是根据本发明第一实施方式提供的基于激光雷达的检测方法的流程图;
图2是根据本发明第二实施方式提供的基于激光雷达的检测方法的流程图;
图3是根据本发明第二实施方式提供的目标检测跟踪方法的流程图;
图4是根据本发明第二实施方式提供的极坐标栅格点云划分图;
图5是根据本发明第二实施方式提供的点云聚类的流程图;
图6是根据本发明第二实施方式提供的障碍物外轮廓边框提取的流程图;
图7是根据本发明第二实施方式提供的目标检测跟踪算法拆分流程图;
图8是根据本发明第三实施方式提供的基于激光雷达的检测方法的流程图;
图9是根据本发明第三实施方式提供的可行驶区域识别算法的流程图;
图10是根据本发明第四实施方式提供的基于激光雷达的检测方法的流程图;
图11是根据本发明第四实施方式提供的地面着色效果图;
图12是根据本发明第六实施方式提供的基于激光雷达的检测装置的结构示意图;
图13是根据本发明第七实施方式提供的基于激光雷达的检测装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的各实施方式进行详细的阐述。然而,本领域的普通技术人员可以理解,在本发明各实施方式中,为了使读者更好地理解本发明而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施方式的种种变化和修改,也可以实现本发明所要求保护的技术方案。
本发明的第一实施方式涉及一种基于激光雷达的检测方法,本实施方式的具体流程如图1所示,包括:
S101:获取激光雷达的扫描数据。
具体的说,激光雷达的工作过程中会产生大量的扫描数据,这些扫描数据包括但不限于原始激光点的距离,位置坐标等。本实施方式中,获取的扫描数据为原始激光雷达点云数据。
S102:对用于根据扫描数据进行检测的特征算法进行算法拆分,得到特征算法中能够进行并行处理的至少一个子算法。
具体的说,本实施方式中被拆分的特征算法可以为一个,也可以为多个。例如,本实施方式中,特征算法可以包括目标检测跟踪算法和可行驶区域识别算法,目标检测跟踪算法可以检测障碍物位置,并在检测到障碍物位置跟踪该障碍物;可行驶区域识别算法能够检测可行驶区域,从而满足自动驾驶的基本条件。
S103:对至少一个子算法进行异构加速以处理扫描数据,并根据处理结果,得到检测出的障碍物位置和可行驶区域。
具体的说,异构加速是一种特殊形式的并行和分布式加速方式,它或是用能同时支持SIMD方式和MIMD方式的单个独立计算机,或是用由高速网络互连的一组独立计算机来完成计算任务。它能协调地使用性能、结构各异地机器以满足不同的计算需求,并使代码(或代码段)能以获取最大总体性能方式来执行。以特征算法为目标检测跟踪算法为例,目标检测算法中包含多个子算法,对其中的至少一个子算法进行异构加速以处理扫描数据,便可在加快系统的运算速度的同时,降低算法对CPU的占用率。
本发明的实施方式相对于现有技术而言,对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,由于特征算法中具有多个实现流程,通过对特征算法的实现流程进行拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,从而能够满足异构加速的条件;继而,对至少一个所述子算法进行异构加速以处理所述扫描数据。由于能够进行并行处理的子算法均是数据量大、计算耗时长且对CPU占用率较高的算法,通过对至少一个子算法进行异构加速,能够有效降低激光雷达感知算法的整体耗时,从而提高了激光雷达感知过程中的数据运算速度,进而提高了激光雷达的可靠性。此外,由于CPU占用率较高的子算法通过异构加速后CPU占用率大大降低,从而能够选择更低功耗和成本的处理器和异构计算设备,降低了基于激光雷达的目标检测装置的生产成本。
本发明的第二实施方式涉及一种基于激光雷达的检测方法,第二实施方式是在第一实施方式的基础上做了进一步的改进,具体改进之处在于:在第二实施方式中,对特征算法进行了进一步的细化:特征算法包括用于根据所述扫描数据检测障碍物位置的第一特征算法、用于根据所述扫描数据检测可行驶区域的第二特征算法,第一特征算法包括拟合算法、分割聚类算法和位置识别算法,且在第二实施方式中,对第一特征算法的拟合算法进行了算法拆分,通过此种方式,能够对第一特征算法中运算耗时较长的边缘提取算法进行算法拆分,使得边缘提取算法的算法步骤满足异构加速条件,以对其进行异构加速,进一步提高了激光雷达感知过程中的数据运算速度,从而进一步提高了激光雷达的可靠性。
本实施方式的具体流程如图2所示,包括:
S201:获取激光雷达的扫描数据。
S202:对边缘提取算法进行算法拆分,得到边缘提取算法中能够进行并行处理的至少一个子算法。
具体的,本实施方式中,第一特征算法为目标检测跟踪算法,包括根据所述扫描数据拟合地面的拟合算法、根据所述拟合地面的结果,对所述障碍物进行分割聚类的分割聚类算法、根据所述分割聚类的结果,提取所述障碍物的边缘边框的边缘提取算法、以及根据所述边缘边框,识别所述障碍物位置的位置识别算法。可以理解的是,本实施方式是通过对边缘提取算法进行算法拆分,以改进激光雷达感知过程中的数据运算速度。
为了便于理解以及对目标检测跟踪算法进行进一步的详细说明,如图3所示,目标检测跟踪算法可包含如下步骤:
S2021:判断扫描数据的有效性,存放判定为有效的扫描数据。
关于步骤S2021,具体的说,扫描数据中包含有原始激光雷达点的距离和高度信息,距离即为原始激光雷达点与激光雷达初始中心点之间的距离,高度即为原始激光雷达点距离地面的高度,通过预设距离阈值和高度阈值,在距离大于距离阈值时,判定原始激光雷达点无效,在高度大于高度阈值时,判定原始激光雷达点无效。值得一提的是,本实施方式中会将扫描数据中有效的数据顺序存放起来。将存放后所有点云数据按照极坐标划分,以2度为一个扇区,根据每个点所在的扇区位置,将所有坐标点按照扇区组成一维数组存放。可以理解的是,本领域技术人员也可以按照其他弧度划分扇区,本实施方式并不对此作具体限定。
S2022:根据扫描数据存放的结果,筛选扫描数据中的地面点。
关于步骤S2022,具体的说,以每个扇区为个体,找出每个扇区内所有激光点云数据中在Z轴方向上的最低点,将该扇区内每个点的与该最低点作比较,同时将该点Z轴方向的值与激光雷达安装离地面高度作比较,低于一定高度,则初步认为该激光点是地面点,如此循环遍历所有扇区内的点集。也就是说,当激光点云数据的高度低于一定高度(可以根据实际需求预先设置),即可判定该点为地面点。
S2023:根据筛选出来的地面点,拟合二维平面。
关于步骤S2023,具体的说,利用筛选出来的地面点,使用RANSAC算法进行拟合,拟合出二维平面,得出平面方程ax+by+cz+d=0的参数数值(其中,a、b、c和d均为常数,x、y和z为自变量),同时确保平面方程中z的参数c为正数。利用上述方法的拟合出来的平面方程,将有效点云数据集的每一点与该平面上同X轴与Y轴位置点的Z轴方向上值作比较,处于合理范围(可以根据实际需求预先设置合理范围)的则认为是地面点,其余点则归类为非地面点。
需要说明的是,上述步骤S2021至步骤S2023为拟合算法的步骤,通过执行步骤S2021至步骤S2023,即可得到拟合的地面。
S2024:将除去地面点后的扫描数据作为原始点云数据,对原始点云数据进行分类。
关于步骤S2024,具体的说,如图4所示,按照超过最大距离以及超过最大高度分离原始点云数据,剩余的数据为可分割部分。将该部分数据按极坐标栅格法进行保存,保存为二维数组,每个数组单元保存该栅格内所有的点集数据。利用上述保存下来的栅格数据,建立与之对应的二维数组P(200*360),每个有数据的栅格标1,否则标0,将得到的二维数组进行膨胀处理,从而消除孤立栅格点。可以理解的是,对于原始点云数据中距离激光雷达中心点较远或者高度较高的数据,可以当成无效数据(即可认定该数据并不表征障碍物),通过按照超过最大距离以及超过最大高度分离原始点云数据,使得无效数据被分离出去,从而能够极大的减小后续步骤的计算量,进一步提高激光雷达感知算法的运算性能。
S2025:根据原始点云数据分类的结果,对原始点云数据进行聚类。
关于步骤S2025,具体的说,根据上述步骤中二维数组P数据,遍历每个数据点,判断该点的周围8个位置的点是否为1,结果为1,则将这些栅格区域点归为同一类,也就是同一个障碍物点组成的点,若判断结果为0,则进入下一个P数据点位置进行上述判断,直至所有P内的点全部遍历完成,所有同一类P点所对应的的栅格组成的点为同一障碍物的点集。如图5所示,可以通过如下步骤对原始点云数据进行聚类:S1:原始点云数据与标签矩阵元素映射。S2:膨胀栅格标签矩阵。S3:判断栅格及上下左右领域是否为空,若是,则执行步骤S1;若否,则执行步骤S4。S4:标记为相同数字标签。S5:判断是否遍历栅格,若是,则执行步骤S6;若否,则执行步骤S1。S6:聚类标签矩阵。
S2026:根据原始点云数据聚类的结果,得到单个障碍物点云数据。
关于步骤S2026,具体的说,利用每个得出的障碍物点,将其所处栅格内所有激光点云数据归为同一类,得到障碍物点云数据。
值得一提的是,上述步骤S2024至步骤S2026为分割聚类算法的步骤,通过执行步骤S2024至步骤S2026,即可对障碍物进行分割聚类。
S2027:根据障碍物点云数据,提取障碍物的M个二维映射外轮廓点坐标。
关于步骤S2027,具体的说,M为大于1的整数,本实施方式中可以通过如下方式提取二维映射外轮廓点坐标:首先设计栅格,找出障碍物点云数据的X方向,或者Y方向的最大最小点(以下以X方向上为准),以该几点到原点的距离合适设置等弧度的栅格(以激光雷达线束角度以及距离为准),距离越远,栅格间距越大。分割点云,将所有点按照其X轴坐标值用快排法查找其所在栅格,并放入其中。并保存其每一个栅格内Y轴方向的最大值点和最小值点。
S2028:根据M个二维映射外轮廓点坐标得到M条拟合直线,并计算M条拟合直线的M个倾斜角度。
关于步骤S2028,具体的说,一个所述二维映射外轮廓点对应一个倾斜角度,利用S2027中所得到的所有点集,使用随机采样一致性原理拟合平面直线,并计算该直线与X轴方向上的夹角大小β,即可得到该直线的倾斜角度。
S2029:根据倾斜角度旋转对应的二维映射外轮廓点坐标,得到障碍物的立方体边框。
关于步骤S2029,具体的说,根据步骤二得到的夹角β(拟合出来的直线与X轴方向夹角),将所有步骤一中得到的点集以β旋转坐标,即:
Point[i].x_new=Point[i].x*cosβ-Point[i].y*sinβ
Point[i].y_new=Point[i].x*sinβ+Point[i].y*cosβ
绘制的立方体边框的障碍物信息中,包含了障碍物的速度、点数、中心点坐标、三维框角点坐标、跟踪id号、类别和最后一次被跟踪上的时间等。
值得一提的是,上述步骤S2027至步骤S2029为边缘提取算法的步骤,通过执行步骤S2027至步骤S2029,即可检测出障碍物的位置。总的来说,如图6所示,障碍物外轮廓边框提取可分为激光点云二维坐标映射外轮廓点提取、RANSAC计算拟合直线、外轮廓点旋转提取极值坐标、按极值计算障碍物立体边框这几个步骤。
优选地,在得到障碍物的立方体边框之后,会置一个队列用于存放跟踪的目标,然后将所有障碍物的坐标信息转换到全局坐标系下,跟踪的具体过程如下:计算关联矩阵,根据前一帧点云里所有的障碍物与本帧点云的所有障碍物,通过计算两帧之间每个目标物之间的距离差和点数差,计算出代价函数,从而建立一个两帧间所有目标的关联矩阵;利用匈牙利算法进行匹配,得出了一个两帧之间匹配跟踪的最佳结果。更新最新的跟踪物体列表。新的障碍物会被指定新的id号,并重新画框及记录类别。
如图7所示,总的来说,目标检测跟踪算法可分为平面拟合、地面分割、聚类、画框以及跟踪这几个步骤,平面拟合的过程具体可分为“将原始点集按扇区分类存放”、“每个扇区初步筛选地面点,并统一记录”、“对所有预选地面点用ransac生成平面方程”这几个步骤;地面分割的过程即将原始点集用平面方程分割为地面点和非地面点;聚类的过程具体可分为“将非地面点按360度栅格分类存放”、“以栅格为单位进行聚类”、“提取聚类后栅格中的点,保存为不同的物体”这几个步骤;画框的过程具体可分为“激光点云二维映射外轮廓点提取”、“霍夫变换拟合直线,计算直线倾斜度”、“旋转点集坐标,画出立方体边框”这几个步骤;跟踪的过程具体可分为“坐标系转换”、“计算关联矩阵”、“匈牙利算法计算最佳匹配”这几个步骤。
S203:对至少一个子算法进行异构加速以处理扫描数据,并根据处理结果,得到检测出的障碍物位置和可行驶区域。
具体的说,本实施方式中对至少一个子算法进行异构加速以处理扫描数据,可以为:并行处理根据M个二维映射外轮廓点坐标得到M条拟合直线,并计算M条拟合直线的M个倾斜角度。在目标检测算法的画框过程中,使用霍夫变换来对单个物体的边缘拟合出平面直线,进而得到物体的三维边界矩形框。霍夫变换是图像处理中从图像识别几何形状的基本方法之一,该方法寻找直线相比其他方法,可以更好的减少噪声干扰。其基本原理在于利用点与线的对偶性,将原始图像空间的给定曲线通过曲线表达形式变为参数空间的一个点。这样就把原始图像给定曲线的检测问题,转化为检测参数空间的峰值问题。霍夫变换对每个点进行相同的处理,存在大量重复性工作,采用异构加速实现,将不同的点做适当并行处理,对每个点的运算流程实现流水操作,极大减小时间消耗。
为了便于理解,下面对如何绘制障碍物的立方体边框进行详细的举例说明:
首先,直线在极坐标系的表示方式为r=x·cosθ+y·sinθ。霍夫变换对一个图像点集进行处理,对每一个点(x0,y0),在极坐标对极径极角平面绘出所有通过它的直线,得到一条正弦曲线。若有两个不同点在上述操作后得到的曲线在平面θ-r相交,就意味着他们通过同一条直线。以上方法对每个点做相同处理,存在大量重复性工作。用CPU执行时会依次遍历图像的所有点,消耗时间与点的数量成正比。若用FPGA实现,将不同的点做适当并行处理,对每个点的运算流程实现流水操作,极大减小时间消耗。
使用HLS软件对霍夫变换的算法实现进行编译指导和优化,生成RTL级硬件描述代码。编译指导和优化按照以下原则:
(1)定义内部变量尽量使用定点类型取代浮点类型。在HLS中,数据精度对硬件资源的占用率有很大影响,HLS支持可配置的定点数运算,在满足精度前提下,使用定点数可以降低硬件资源消耗,并运行在更高的时钟频率下。
(2)对单层循环,在循环内设计为流水线模式,使用流水线优化指令set_directive_pipeline。流水方式能增加资源利用率,下一次循环无需等到前一次循环全部完成才开始,从而加快运算并行度和计算速度。
(3)对嵌套循环,可对内层循环使用流水线优化指令set_directive_pipeline。该特点为使用pipeline的当前层以下的循环层自动被优化展开,当前层以上(含该层)的循环会被降为单层循环。里层循环展开后,里层操作步骤对应的硬件电路会被复制多份,实现并行处理。
(4)分割数组,使用分割优化指令set_directive_array_partition。注意,分割数组的优化并不是孤立的,需要与具体的使用结合起来。数组分割后被综合为多个block RAM(也可指定为其它类型的RAM),满足多接口同时访问,改善数据的吞吐率。当与展开的多份硬件电路配合使用时,可最大限度发挥硬件电路的并行执行能力。
可以理解的是,霍夫变换的代码实现较多,为了避免重复,此处不再一一赘述。对每一部分含有大量图像点密集操作的功能模块,均可按照上述原则设计和指导优化,即可实现目标检测画框功能的FPGA并行加速处理,大大缩短处理时延。
需要说明的是,本实施方式中还可以对边缘提取算法的其他步骤进行异构加速,也可以对拟合算法和分割聚类的其他算法进行异构加速,也就是说,本实施方式并不对进行异构加速的算法种类作具体限定,也不对进行异构加速的算法数量作具体限定,如可以同时异构加速边缘提取算法和拟合算法,从而进一步提高系统的运算性能;此外,关于如何得到检测出的障碍物位置以在本实施方式中的步骤S2021至步骤S2029进行了详细的说明,为了避免重复,此处不再赘述。
本发明的实施方式相对于现有技术而言,对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,由于特征算法中具有多个实现流程,通过对特征算法的实现流程进行拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,从而能够满足异构加速的条件;继而,对至少一个所述子算法进行异构加速以处理所述扫描数据。由于能够进行并行处理的子算法均是数据量大、计算耗时长且对CPU占用率较高的算法,通过对至少一个子算法进行异构加速,能够有效降低激光雷达感知算法的整体耗时,从而提高了激光雷达感知过程中的数据运算速度,进而提高了激光雷达的可靠性。此外,由于CPU占用率较高的子算法通过异构加速后CPU占用率大大降低,从而能够选择更低功耗和成本的处理器和异构计算设备,降低了基于激光雷达的目标检测装置的生产成本。
本发明的第三实施方式涉及一种基于激光雷达的检测方法,第三实施方式是在第一实施方式的基础上做了进一步的改进,具体改进之处在于:在第三实施方式中,对第二特征算法进行了进一步的细化:第二特征算法包括分类存放算法、地面点判断算法和栅格着色算法,且在第三实施方式中,对第二特征算法的分类存放算法进行了算法拆分,通过此种方式,能够对第二特征算法中运算耗时较长的分类存放算法进行算法拆分,使得分类存放算法的步骤满足异构加速条件,以对其进行异构加速,进一步提高了激光雷达感知过程中的数据运算速度,从而进一步提高了激光雷达的可靠性。
本实施方式的具体流程如图8所示,包括:
S301:获取激光雷达的扫描数据。
S302:对分类存放算法进行算法拆分,得到分类存放算法中能够进行并行处理的至少一个子算法。
具体的说,本实施方式中,第二特征算法可以为可行驶区域识别算法,可行驶区域识别是将激光雷达采集到的点云数据在水平面方向投影,之后进行区域分割,并对分割区域内的点云数据进行处理,并最终得出该区域是否可行驶的结论。一般来说,激光雷达快速旋转的同时发射高频率激光束对外界环境进行持续性的扫描,这种工作方式最适合采用极坐标系下的区域分割方法。可行驶区域识别算法包括将扫描数据按360度栅格分类存放的分类存放算法;根据360度栅格分类存放的结果,获取扫描数据中的地面点,并对地面点进行初步着色处理的地面点判断算法;根据地面点建立栅格图像,对栅格图像进行细化着色处理,得到可行驶区域的栅格着色算法。可以理解的是,本实施方式是通过对分类存放算法进行算法拆分,以改进激光雷达感知过程中的数据运算速度。
为了便于理解以及对可行驶区域识别算法进行进一步的详细说明,如图9所示,可行驶区域识别算法可包含如下步骤:
S3021:根据扫描数据,得到原始激光雷达点的极坐标。
S3022:以预设弧度划分激光雷达的扫描区域,得到N个扇区。
具体的说,N为大于1的整数,划分的N个扇区如图4所示。
S3023:根据每个原始激光雷达点的极坐标所在的扇区位置,将每个原始激光雷达点按照扇区组成二维数组存放。
值得一提的是,上述步骤S3021至步骤S3023为分类存放算法的步骤,通过执行步骤S3021至步骤S3023,即可对原始激光点进行分类存放。
S3024:获取每个栅格中在Z轴方向上的最低点。
S3025:根据每个栅格中在Z轴方向上的最低点建立极坐标坐标系的第一栅格图像。
具体的说,将每个栅格中在Z轴方向上的最低点进行建立与之对应的极坐标坐标系的栅格图像,全部初始化为1,以原点按作极坐标向外发散,没有激光点的标记为0,与当前栅格最低点做比较,判断是地面激光点的标位0,若遇到判断是非地面点,则从该处栅格,以扇形区域区域往后,都标为1。通过遍历所有的激光点后,对第一栅格图像进行膨胀处理,以便于更清晰的观察第一栅格图像。
值得一提的是,上述步骤S3024至步骤S3025为地面点判断算法的步骤,通过执行步骤S3024至步骤S3025,即可判断地面点与非地面点,并可对地面点进行着色处理。
S3026:使用笛卡尔坐标系建立第二栅格图像,根据第一栅格图像和第二栅格图像得到可行驶区域。
具体的说,使用笛卡尔坐标系建立更高精度的图像栅格500*500,每个像素点覆盖精度为0.1*0.1(m),用此图像栅格去判断极坐标栅格中同位置是否为0,为0则表示可行驶区域,否则标为不可行驶区域。
值得一提的是,上述步骤S3026为栅格着色算法的步骤,通过执行步骤S3026,即可画出最后的可行驶区域。
S303:对至少一个子算法进行异构加速以处理扫描数据,并根据处理结果,得到检测出的障碍物位置和可行驶区域。
具体的说,本实施方式中对至少一个子算法进行异构加速以处理扫描数据,可以为:并行处理将每个所述原始激光雷达点按照所述扇区组成二维数组存放。该过程中需遍历所有原始激光雷达点数据,计算每个点映射到栅格的索引位置,存入栅格。采用异构加速实现,对不同点的计算使用流水线模式,使得每个点的坐标转换和区域属性计算仅需1个时钟即可完成,相比传统CPU提高了成千上万倍的效率。
为了便于理解,下面对如何并行处理将每个所述原始激光雷达点按照所述扇区组成二维数组存放进行具体的举例说明:
首先将激光雷达采集到的点云数据在水平面方向投影,之后进行区域分割,并将点按照分割后的栅格分类存放。该过程中需遍历所有原始点云数据,计算每个点映射到栅格的索引位置,存入栅格。采用异构加速实现,对不同点的计算使用流水线模式,使得每个点的坐标转换和区域属性计算仅需1个时钟即可完成,相比传统CPU提高了成千上万倍的效率,详细步骤如下;
将水平面在极坐标系下按照一定步长的r和θ进行区域分割,然后将所有空间笛卡尔直角坐标系下的点云数据在水平面上进行投影,得到平面直角坐标系的特征描述数据,再进行坐标转换,得到极坐标系下特征描述数据,然后根据该特征描述数据计算出该点位于哪块分割区域,并将该点特征数据存储到该区域对应的容器中。
为便于描述,首先定义相关符号含义如下:
r:极坐标系下半径变量;
θ:极坐标系下极角变量;
L:极坐标平面圆的半径;
r′:极半径轴切割步长;
θ′:极角轴切割步长;
M:沿极半径方向切割块数;
N:沿极角方向切割块数;
X:某点云特征数据在直角坐标系下的x坐标方向值;
Y:某点云特征数据在直角坐标系下的y坐标方向值;
Z:某点云特征数据在直角坐标系下的z坐标方向值;
PointCloud_Array:点云数据数组,数组每个元素为x,y,z;
M:某点云位于极半径方向的块数编号;
N:某点云位于极角方向的块数编号;
PointAttr_Array:点云属性信息数组,数组每个元素为m,n;
Size:点云数据数组元素个数。
(1)以激光雷达为原点,在水平面上将r(θ)=L的圆(半径为L)在极半径轴和极角轴上进行等分切割,其中极半径轴切割步长为r′,极角轴切割步长为θ′,则总切割区域数为(L/r′)*(2π/θ′),记L/r′为M,2π/θ′为N,则我们将半径为L的圆划分成了M*N块区域;
(2)首先将相同数据类型的点云数据统一进行保存。按点云数据量分配一块特定内存,将空间笛卡尔直角坐标系下的所有点云特征数据(x,y,z)集按顺序存储在该内存中,形成数组PointCloud_Array;注意,对同类型的点云或其它数据均使用数组来保存,避免使用含有动态内存管理的数据结构,如vector等。此处目的是便于HLS优化加速模块使用AXI总线直接访问外部存储设备。数组的另一个作用是可使用HLS将其映射为FPGA内部的存储资源,以实现并发访问,后续实施例中会用到。以下实施例均遵照该原则。
(3)按点云数据量分配一块特定内存,用来存放硬件加速计算出来的各点区域属性信息,形成数组PointAttr_Array,该数组元素和PointCloud_Array数组元素一一对应;
(4)将PointCloud_Array数组首地址及数组大小size作为入参传递给加速函数,设计加速函数时设置该数组访问方式为顺序访问形式,这样FPGA将数据从内存搬运到逻辑单元的过程访问内存的方式是连续的,同时使用zero_copy(零拷贝)指令使得编译器将硬件加速器的接口直接连接到处理器的S_AXI端口来完成数据传输,这样将极大提升接口部分性能;
(5)将PointAttr_Array数组首地址作为出参传递给加速函数,并同样设置该数组访问方式为顺序访问,且使用zero_copy指令描述该数组的数据传输方式;
(6)FPGA加速函数内部是一个循环次数为size的单层循环体,每次循环处理一个点云数据,我们对该循环体采用流水线PIPELINE指令进行优化即可。采用该类型优化使得FPGA在对第i次循环进行数据计算的同时读取第i+1次循环所需的数据,并可能同时存储第i-1次循环输出的计算结果。每次循环是这样工作的:先读取一个PointCloud_Array数组元素点(x,y,z),然后通过公式和θ=atan2(y,x)计算得到该元素极坐标系的特征数据(r,θ),记m=r/r′且m<=M,n=θ/θ′且n<=N,至此,我们计算出了点(x,y,z)位于(m,n)区域块,最后将(m,n)存入到该点对应的PointAttr_Array数组元素中。
需要说明的是,关于如何得到检测出的可行驶区域以在本实施方式中的步骤S3021至步骤S3026进行了详细的说明,为了避免重复,此处不再赘述。
本发明的实施方式相对于现有技术而言,对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,由于特征算法中具有多个实现流程,通过对特征算法的实现流程进行拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,从而能够满足异构加速的条件;继而,对至少一个所述子算法进行异构加速以处理所述扫描数据。由于能够进行并行处理的子算法均是数据量大、计算耗时长且对CPU占用率较高的算法,通过对至少一个子算法进行异构加速,能够有效降低激光雷达感知算法的整体耗时,从而提高了激光雷达感知过程中的数据运算速度,进而提高了激光雷达的可靠性。此外,由于CPU占用率较高的子算法通过异构加速后CPU占用率大大降低,从而能够选择更低功耗和成本的处理器和异构计算设备,降低了基于激光雷达的目标检测装置的生产成本。
本发明的第四实施方式涉及一种基于激光雷达的检测方法,第四实施方式与第三实施方式大致相同,主要区别之处在于,在第四实施方式中,所述对所述分类存放算法、所述地面点判断算法、所述栅格着色算法三者中的至少一者进行算法拆分,具体为:对所述栅格着色算法进行算法拆分;所述对所述栅格着色算法进行算法拆分,具体为:将所述栅格着色算法拆分为如下步骤:判断所述栅格图像中的每个栅格是否为地面,并对判定为地面的栅格进行着色处理。通过此种方式,能够对第二特征算法中运算耗时较长的栅格着色算法进行算法拆分,使得栅格着色算法的步骤满足异构加速条件,以对其进行异构加速,进一步提高了激光雷达感知过程中的数据运算速度,从而进一步提高了激光雷达的可靠性。
本实施方式的具体流程如图10所示,包括:
S401:获取激光雷达的扫描数据。
S402:对栅格着色算法进行算法拆分,得到栅格着色算法中够进行并行处理的至少一个子算法。
具体的说,可行驶区域识别算法包括将扫描数据按360度栅格分类存放的分类存放算法;根据360度栅格分类存放的结果,获取扫描数据中的地面点,并对地面点进行初步着色处理的地面点判断算法;根据地面点建立栅格图像,对栅格图像进行细化着色处理,得到可行驶区域的栅格着色算法。可以理解的是,本实施方式是通过对栅格着色算法算法进行算法拆分,以改进激光雷达感知过程中的数据运算速度。
S403:对至少一个子算法进行异构加速以处理扫描数据,并根据处理结果,得到检测出的障碍物位置和可行驶区域。
关于步骤S404,具体的说,本实施方式中对至少一个子算法进行异构加速以处理扫描数据,可以为:并行处理判断所述栅格图像中的每个栅格是否为地面,并对判定为地面的栅格进行着色处理。地面区域着色,是用颜色标注出可行驶区域,再发送到可视化界面进行展示。其会遍历所有待着色区域,对每一份区域,均计算前一步中的栅格与待着色区域的对应位置关系,提取栅格中地面信息并在正方形中着色。采用异构加速实现,将不同区域做适当并行处理,前后步骤实现流水操作,极大减小时间消耗。
为了便于理解,下面对如何并行处理判断所述栅格图像中的每个栅格是否为地面,并对判定为地面的栅格进行着色处理进行详细的举例说明:
处理地面着色功能的处理单元的输入是前一步输出的栅格,每个栅格已被标识好否为地面,如图11中第一部分所示,0为地面区域,1为非地面区域。着色区域限定为一个正方形,被固定划分成500x500份。针对着色区域的每一份,需要提取栅格中对应位置并判断是否为地面,若是则在正方形中涂色,否则不涂色。见图11中第二部分,数值代表着色的深度,60表示可行驶的路面,90表示不可行驶区域。
上述过程中,需遍历待着色区域的500×500份,对每一份,均计算栅格与待着色区域的对应位置关系,提取栅格中地面信息并在正方形中着色。每一份区域的操作是相对独立的,互相之间没有依赖关系。若用CPU执行会按顺序依次处理,消耗时间与区域划分的份数成正比;用FPGA实现,可将不同着色区域做适当并行处理,前后步骤实现流水操作,极大减小时间消耗。
使用HLS对该流程进行编译指导和优化,再生成RTL级硬件描述代码。着色部分代码结构如下:
循环一:for(x=0;x<500;x++){
循环二:for(y=0;y<500;y++){
初始化待着色区域的颜色
eg.colour[y*500+x]=90;
计算索引值x,y代表的着色区域对应到的栅格的位置a,b
提取栅格区域的地面信息
判断是否为地面,并着色
上述代码结构中,循环一和循环二遍历了整个着色区,循环次数均为常量。变量x,y用来索引着色区位置,变量a、b用来索引栅格的位置。数组grid_info[]存放了栅格信息,数组colour[]存放着色区信息。
以上代码位于加速模块内,无论是数组grid_info[]还是colour[],均为内部定义。加速函数首先要将传入的外部数组拷贝至函数的内部数组中,HLS将内部数组最终映射为FPGA内部的存储资源,实现并发访问。在加速模块执行过程中,异构处理器间不再进行数据交互,直至传出结果数据。这样做可减少异构处理器间的频繁访问,极大提高运算性能。
对循环一使用流水线优化指令set_directive_pipeline。该指令使循环二被优化展开,循环二大括号中内容生成的硬件电路被复制为多份,循环一本身无影响。对数组colour[]使用分割优化指令set_directive_array_partition。对数组grid_info[]的两个维度均可使用分割优化指令set_directive_array_partition。数组在综合后映射为多个block RAM,按分割的份数可同时访问多个数据,与循环二展开的多份硬件电路相匹配,实现了数据的并行处理。数组colour[]和数组grid_info[]分割的份数可根据需要调整。分割数越多,RAM提供的端口数越多,性能越好,但资源占用较多;反之RAM端口数越少,性能越差,但资源占用少。以上操作即可实现地面区域着色功能的FPGA并行加速处理,大大缩短处理时延。
本发明的实施方式相对于现有技术而言,对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,由于特征算法中具有多个实现流程,通过对特征算法的实现流程进行拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,从而能够满足异构加速的条件;继而,对至少一个所述子算法进行异构加速以处理所述扫描数据。由于能够进行并行处理的子算法均是数据量大、计算耗时长且对CPU占用率较高的算法,通过对至少一个子算法进行异构加速,能够有效降低激光雷达感知算法的整体耗时,从而提高了激光雷达感知过程中的数据运算速度,进而提高了激光雷达的可靠性。此外,由于CPU占用率较高的子算法通过异构加速后CPU占用率大大降低,从而能够选择更低功耗和成本的处理器和异构计算设备,降低了基于激光雷达的目标检测装置的生产成本。
本发明第五实施方式涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例。
即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明的第六实施方式涉及一种基于激光雷达的检测装置100,具体结构如图12所示,包括:获取模块1、算法拆分模块2和异构加速模块3;获取模块1用于获取激光雷达的扫描数据,并将所述扫描数据发送至算法拆分模块2;算法拆分模块2用于接收所述扫描数据,并对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法;异构加速模块3用于对至少一个所述子算法进行异构加速以处理所述扫描数据,并根据处理结果,得到检测出的障碍物位置和可行驶区域。
需要说明的是,基于激光雷达的检测装置100也可以不包含获取模块1,可以通过算法拆分模块2直接得到激光雷达的扫描数据,从而使基于激光雷达的检测装置100的结构更加简单。
具体的说,本实施方式中的特征算法可以为目标检测跟踪算法和可行驶区域识别算法,也就是说,算法拆分模块2具有两个功能,一是实现了目标检测跟踪算法和可行驶区域识别算法,二是对两部分算法的实现流程进行合理拆分;异构加速模块3选择算法拆分模块2中的并行处理部分,实现异构加速。
值得一提的是,凡经算法拆分模块进行算法拆分后,具有“数据量大、耗时且可通过并行处理实现”特点的操作步骤,均可使用异构加速方式实现,属于本发明保护范围。另外,实施例中可采用高层次综合技术(HLS)进行FPGA实现,但本发明包括不限于该方式,亦可使用传统RTL语言进行实现。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
本发明第七实施方式涉及一种基于激光雷达的检测装置,如图13所示,包括:至少一个处理器701;以及,与至少一个处理器701通信连接的存储器702;其中,存储器702存储有可被至少一个处理器701执行的指令,指令被至少一个处理器701执行,以使至少一个处理器701能够执行上述基于激光雷达的检测方法。
其中,存储器702和处理器701采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器701和存储器702的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器701处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器701。
处理器701负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器702可以被用于存储处理器701在执行操作时所使用的数据。
本领域的普通技术人员可以理解,上述各实施方式是实现本发明的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本发明的精神和范围。
Claims (12)
1.一种基于激光雷达的检测方法,其特征在于,包括:
获取激光雷达的扫描数据;
对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法;
对至少一个所述子算法进行异构加速以处理所述扫描数据,并根据处理结果,得到检测出的障碍物位置和可行驶区域。
2.根据权利要求1所述的基于激光雷达的检测方法,其特征在于,所述对用于根据所述扫描数据进行检测的特征算法进行算法拆分,得到所述特征算法中能够进行并行处理的至少一个子算法,包括:
对用于根据所述扫描数据检测障碍物位置的第一特征算法、用于根据所述扫描数据检测可行驶区域的第二特征算法进行算法拆分,得到所述第一特征算法中能够进行并行处理的多个第一子算法、所述第二特征算法中能够进行并行处理的多个第二子算法;
所述对至少一个所述子算法进行异构加速以处理所述扫描数据,具体包括:
对所述多个第一子算法中的至少一个子算法和/或所述多个第二子算法中的至少一个子算法进行异构加速以处理所述扫描数据。
3.根据权利要求2所述的基于激光雷达的检测方法,其特征在于,所述第一特征算法包括:根据所述扫描数据拟合地面的拟合算法;根据所述拟合地面的结果对所述障碍物进行分割聚类的分割聚类算法;根据所述分割聚类的结果提取所述障碍物的边缘边框的边缘提取算法;以及根据所述边缘边框识别所述障碍物位置的位置识别算法;
所述对用于根据所述扫描数据检测障碍物位置的第一特征算法进行算法拆分,包括:
对所述拟合算法、分割聚类算法、边缘提取算法以及位置识别算法中的至少一者进行算法拆分。
4.根据权利要求3所述的基于激光雷达的检测方法,其特征在于,在对所述边缘提取算法进行算法拆分的情况下,将所述边缘提取算法拆分成如下步骤:
根据所述分割聚类的结果,提取所述障碍物的M个二维映射外轮廓点坐标,其中,M为大于1的整数;
根据所述M个二维映射外轮廓点坐标得到M条拟合直线,并计算所述M条拟合直线的M个倾斜角度,其中,一个所述二维映射外轮廓点对应一个倾斜角度;
根据所述倾斜角度旋转对应的所述二维映射外轮廓点坐标,得到所述障碍物的立方体边框。
5.根据权利要求4所述的基于激光雷达的检测方法,其特征在于,所述对所述多个第一子算法中的至少一个子算法和/或所述多个第二子算法中的至少一个子算法进行异构加速,具体为:对所述边缘提取算法中的至少一个算法进行异构加速;
所述对所述边缘提取算法的至少一个算法进行异构加速,包括:
并行所述根据所述M个二维映射外轮廓点坐标得到M条拟合直线,并计算所述M条拟合直线的M个倾斜角度。
6.根据权利要求1所述的基于激光雷达的检测方法,其特征在于,所述第二特征算法包括:将所述扫描数据按360度栅格分类存放的分类存放算法;根据所述360度栅格分类存放的结果,获取所述扫描数据中的地面点,并对所述地面点进行初步着色处理的地面点判断算法;根据所述地面点建立栅格图像,对所述栅格图像进行细化着色处理,得到所述可行驶区域的栅格着色算法;
对激光雷达用于检测可行驶区域的第二特征算法进行算法拆分,包括:
对所述分类存放算法、所述地面点判断算法、所述栅格着色算法三者中的至少一者进行算法拆分。
7.根据权利要求6所述的基于激光雷达的检测方法,其特征在于,在对所述分类存放算法进行算法拆分的情况下,将所述分类存放算法拆分成如下步骤:
根据所述扫描数据,得到原始激光雷达点的极坐标;
以预设弧度划分所述激光雷达的扫描区域,得到N个扇区,其中,N为大于1的整数;
根据每个所述原始激光雷达点的极坐标所在的扇区位置,将每个所述原始激光雷达点按照所述扇区组成二维数组存放。
8.根据权利要求7所述的基于激光雷达的检测方法,其特征在于,所述对所述多个第一子算法中的至少一个子算法和/或所述多个第二子算法中的至少一个子算法进行异构加速,具体为:对所述分类存放算法中的至少一个算法进行异构加速;
所述对所述分类存放算法中的至少一个算法进行异构加速,包括:
并行所述根据每个所述原始激光雷达点的极坐标所在的扇区位置,将每个所述原始激光雷达点按照所述扇区组成二维数组存放。
9.根据权利要求6所述的基于激光雷达的检测方法,其特征在于,所述对所述分类存放算法、所述地面点判断算法、所述栅格着色算法三者中的至少一者进行算法拆分,具体为:对所述栅格着色算法进行算法拆分;
所述对所述栅格着色算法进行算法拆分,具体为:将所述栅格着色算法拆分为如下步骤:
判断所述栅格图像中的每个栅格是否为地面,并对判定为地面的栅格进行着色处理。
10.根据权利要求9所述的基于激光雷达的检测方法,其特征在于,所述对所述多个第一子算法中的至少一个算法和/或所述多个第二子算法中的至少一个算法进行异构加速,具体为:对所述多个第二子算法中的至少一个算法进行异构加速;
所述对所述多个第二子算法中的至少一个算法进行异构加速,具体包括:
并行所述判断所述栅格图像中的每个栅格是否为地面,并对判定为地面的栅格进行着色处理。
11.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至10中任一项所述的方法。
12.一种基于激光雷达的检测装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至10中任一项所述的方法。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911377026.7A CN113050993A (zh) | 2019-12-27 | 2019-12-27 | 基于激光雷达的检测方法、装置及计算机可读存储介质 |
PCT/CN2020/138365 WO2021129619A1 (zh) | 2019-12-27 | 2020-12-22 | 基于激光雷达的检测方法、装置及计算机可读存储介质 |
EP20906665.3A EP4016292A4 (en) | 2019-12-27 | 2020-12-22 | DETECTION METHOD AND DEVICE USING LASER RADAR, AND COMPUTER-READABLE RECORDING MEDIA |
US17/639,905 US11994593B2 (en) | 2019-12-27 | 2020-12-22 | Detection method and device based on laser radar, and computer readable storage medium |
JP2022518172A JP7305884B2 (ja) | 2019-12-27 | 2020-12-22 | レーザーレーダーに基づく検出方法、装置及びコンピュータ読み取り可能な記憶媒体 |
KR1020227009576A KR20220052348A (ko) | 2019-12-27 | 2020-12-22 | 레이저 레이더 기반 검출 방법, 장치 및 컴퓨터 판독 가능 저장 매체 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911377026.7A CN113050993A (zh) | 2019-12-27 | 2019-12-27 | 基于激光雷达的检测方法、装置及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113050993A true CN113050993A (zh) | 2021-06-29 |
Family
ID=76506299
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911377026.7A Pending CN113050993A (zh) | 2019-12-27 | 2019-12-27 | 基于激光雷达的检测方法、装置及计算机可读存储介质 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11994593B2 (zh) |
EP (1) | EP4016292A4 (zh) |
JP (1) | JP7305884B2 (zh) |
KR (1) | KR20220052348A (zh) |
CN (1) | CN113050993A (zh) |
WO (1) | WO2021129619A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486446A (zh) * | 2021-07-06 | 2021-10-08 | 沈阳航空航天大学 | 一种飞机油箱内单管路多目标优化布局方法 |
CN113985429A (zh) * | 2021-09-23 | 2022-01-28 | 天津大学 | 基于三维激光雷达的无人机环境扫描与重构方法 |
CN116188803A (zh) * | 2023-04-23 | 2023-05-30 | 武汉工程大学 | 一种基于极坐标的边界点云提取方法、系统、设备及介质 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113640826B (zh) * | 2021-08-11 | 2023-10-20 | 山东大学 | 一种基于3d激光点云的障碍物识别方法及系统 |
CN114495026A (zh) * | 2022-01-07 | 2022-05-13 | 武汉市虎联智能科技有限公司 | 一种激光雷达识别方法、装置、电子设备和存储介质 |
CN116540260A (zh) * | 2023-04-20 | 2023-08-04 | 中国人民解放军国防科技大学 | 一种基于单线激光雷达的三维成像方法、系统及介质 |
CN116452422B (zh) * | 2023-04-24 | 2024-02-20 | 上海几何伙伴智能驾驶有限公司 | 一种4d成像毫米波雷达的回环检测方法 |
CN116528172B (zh) * | 2023-06-25 | 2023-09-05 | 成都工业学院 | 融合二次雷达信息的民航甚高频地空通信抗干扰方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3653862B2 (ja) * | 1996-04-22 | 2005-06-02 | 日産自動車株式会社 | 車両用カーブ径推定装置および目標先行車検出装置 |
JPH11345394A (ja) * | 1998-06-03 | 1999-12-14 | Mitsubishi Electric Corp | 車両の周辺監視装置 |
DE10151417A1 (de) | 2001-10-18 | 2003-05-08 | Siemens Ag | System und Verfahren zum Verarbeiten von Bilddaten |
WO2010096453A1 (en) * | 2009-02-17 | 2010-08-26 | Board Of Regents, The University Of Texas System | Methods of producing laser speckle contrast images |
CN101808126B (zh) * | 2010-03-12 | 2012-11-14 | 清华大学 | 一种用于实时视频处理的分布式计算系统和方法 |
JP5402968B2 (ja) | 2011-03-21 | 2014-01-29 | 株式会社デンソー | 車両用道路形状認識方法及び装置、記録媒体 |
US9170846B2 (en) | 2011-03-29 | 2015-10-27 | Daniel Delling | Distributed data-parallel execution engines for user-defined serial problems using branch-and-bound algorithm |
CN102819951B (zh) | 2011-06-09 | 2016-05-11 | 无锡物联网产业研究院 | 一种道路目标检测系统、方法及装置 |
US8600589B2 (en) | 2012-04-24 | 2013-12-03 | Exelis, Inc. | Point cloud visualization of acceptable helicopter landing zones based on 4D LIDAR |
US9683836B2 (en) | 2013-08-09 | 2017-06-20 | Conduent Business Services, Llc | Vehicle classification from laser scanners using fisher and profile signatures |
CN106022245B (zh) * | 2016-05-16 | 2019-09-06 | 中国资源卫星应用中心 | 一种基于算法分类的多源遥感卫星数据并行处理系统及方法 |
CN109814552B (zh) | 2018-12-28 | 2024-05-24 | 阿波罗智能技术(北京)有限公司 | 车载控制单元、基于fpga的车辆自动驾驶方法及装置 |
CN110134042B (zh) | 2019-05-10 | 2021-11-05 | 吉林大学 | 车辆路径跟踪预测控制器及fpga异构加速实现方法 |
CN110503195A (zh) | 2019-08-14 | 2019-11-26 | 北京中科寒武纪科技有限公司 | 利用人工智能处理器执行任务的方法及其相关产品 |
-
2019
- 2019-12-27 CN CN201911377026.7A patent/CN113050993A/zh active Pending
-
2020
- 2020-12-22 EP EP20906665.3A patent/EP4016292A4/en active Pending
- 2020-12-22 JP JP2022518172A patent/JP7305884B2/ja active Active
- 2020-12-22 KR KR1020227009576A patent/KR20220052348A/ko unknown
- 2020-12-22 WO PCT/CN2020/138365 patent/WO2021129619A1/zh unknown
- 2020-12-22 US US17/639,905 patent/US11994593B2/en active Active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113486446A (zh) * | 2021-07-06 | 2021-10-08 | 沈阳航空航天大学 | 一种飞机油箱内单管路多目标优化布局方法 |
CN113486446B (zh) * | 2021-07-06 | 2023-11-07 | 沈阳航空航天大学 | 一种飞机油箱内单管路多目标优化布局方法 |
CN113985429A (zh) * | 2021-09-23 | 2022-01-28 | 天津大学 | 基于三维激光雷达的无人机环境扫描与重构方法 |
CN116188803A (zh) * | 2023-04-23 | 2023-05-30 | 武汉工程大学 | 一种基于极坐标的边界点云提取方法、系统、设备及介质 |
CN116188803B (zh) * | 2023-04-23 | 2023-09-15 | 武汉工程大学 | 一种基于极坐标的边界点云提取方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
JP2022550291A (ja) | 2022-12-01 |
WO2021129619A1 (zh) | 2021-07-01 |
US20220342077A1 (en) | 2022-10-27 |
EP4016292A4 (en) | 2022-10-26 |
KR20220052348A (ko) | 2022-04-27 |
US11994593B2 (en) | 2024-05-28 |
JP7305884B2 (ja) | 2023-07-10 |
EP4016292A1 (en) | 2022-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113050993A (zh) | 基于激光雷达的检测方法、装置及计算机可读存储介质 | |
EP3506212B1 (en) | Method and apparatus for generating raster map | |
CN110031824B (zh) | 激光雷达联合标定方法及装置 | |
CN113412505B (zh) | 用于对通过探测和测距传感器获得的点云进行有序表示和特征提取的处理单元和方法 | |
CN113761999B (zh) | 一种目标检测方法、装置、电子设备和存储介质 | |
CN110663060B (zh) | 一种用于表示环境元素的方法、装置、系统、以及车辆/机器人 | |
CN113569958B (zh) | 激光点云数据聚类方法、装置、设备及介质 | |
WO2024012211A1 (zh) | 自动驾驶环境感知方法、介质及车辆 | |
CN114047487B (zh) | 雷达和车体的外参标定方法、装置、电子设备和存储介质 | |
CN113031004A (zh) | 基于三维激光雷达的无人船水面目标检测及路径规划方法 | |
CN112348000A (zh) | 障碍物识别方法、装置、系统及存储介质 | |
CN112789521A (zh) | 感知区域的确定方法、装置、存储介质及车辆 | |
Stanisz et al. | Implementation of the pointpillars network for 3D object detection in reprogrammable heterogeneous devices using FINN | |
CN113192174B (zh) | 建图方法、装置及计算机存储介质 | |
CN115685224A (zh) | 一种激光雷达点云聚类方法、装置、激光雷达及车辆 | |
Li et al. | Pillar‐based 3D object detection from point cloud with multiattention mechanism | |
CN113436336B (zh) | 地面点云分割方法和装置及自动驾驶车辆 | |
CN116311114A (zh) | 一种可行驶区域生成方法、装置、电子设备及存储介质 | |
CN116136599A (zh) | 可行驶区域的确定方法、装置及存储介质 | |
CN116263504A (zh) | 车辆识别方法、装置、电子设备及计算机可读存储介质 | |
CN113867371A (zh) | 路径规划方法和电子设备 | |
CN112800873A (zh) | 确定目标方向角的方法、装置、系统及存储介质 | |
CN112179360B (zh) | 地图生成方法、装置、系统及介质 | |
CN113610883B (zh) | 点云处理系统和方法、计算机设备和存储介质 | |
CN117218342A (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 |