Processing method of point cloud data collected by LiDAR

By preprocessing the lidar point cloud data and clustering and segmenting the flooding method, obstacles are identified, and the problems of undersegment or oversegment in point cloud data processing in the prior art are solved, and the accuracy of obstacle recognition is improved.

CN114488073BActive Publication Date: 2025-04-15CHINA FAW CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202210135624.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-02-14
Publication Date
2025-04-15
Estimated Expiration
2042-02-14

AI Technical Summary

Technical Problem

In the prior art, when processing point cloud data collected by lidar, undersegment or oversegment are prone to occur, which affects the accuracy of obstacle identification.

Method used

By obtaining the point cloud data collected by the lidar, pre-processing is performed based on the point cloud coordinate information, the foreground cloud points located above the road surface of the driving road are filtered out, and the target point cloud collection is generated. Then, an image segmentation algorithm based on the water-drift method is used to cluster and segment the target point cloud collection, multiple clusters are generated, and the geometric data of each cluster is calculated to identify obstacles.

Benefits of technology

It effectively avoids undersegment or oversegment problems caused by projection methods, improves the recognition accuracy of point cloud data, and ensures that obstacles affecting vehicle driving safety can be accurately identified.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114488073B_ABST
    Figure CN114488073B_ABST
Patent Text Reader

Abstract

The present invention discloses a method for processing point cloud data collected by a laser radar, and relates to the field of deep learning technology. The method comprises: obtaining a point cloud set in at least one frame of a point cloud image collected by a laser radar; preprocessing the point cloud set based on the point cloud coordinate information of each point cloud point, screening out foreground point cloud points located above the road surface of the driving road from the point cloud set, and generating a target point cloud set; clustering and segmenting the target point cloud set using an image segmentation algorithm based on the flooding method, and generating multiple clusters; based on the point cloud data in each cluster, calculating the geometric data of each obstacle to be identified in the point cloud image, and identifying the target obstacle based on the calculation result. The present invention solves the technical problem of under-segmentation or over-segmentation of point clouds in the related art, thereby achieving the technical effect of improving the accuracy of image recognition.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of deep learning technology, and in particular to a method for processing point cloud data collected by a laser radar. Background Art

[0002] In the autonomous driving system, the use of lidar for obstacle avoidance is the key perception link to achieve autonomous driving.

[0003] In related technologies, target detection algorithms are usually used to detect data collected by radar. However, the autonomous driving system software running on the terminal is limited by computer hardware resources. The three-dimensional lidar point cloud computing usually adopts BEV (bird's eye view) projection and performs image segmentation processing on the projected point cloud. However, this type of solution usually has technical problems of under-segmentation or over-segmentation of the point cloud.

[0004] To address the above-mentioned problems, no effective solution has been proposed yet. Summary of the invention

[0005] An embodiment of the present invention provides a method for processing point cloud data collected by a laser radar, so as to at least solve the technical problem of under-segmentation or over-segmentation of point clouds in related technologies.

[0006] According to a first aspect of an embodiment of the present invention, a method for processing point cloud data collected by a laser radar is provided, wherein the laser radar is installed at different positions of a vehicle, and the processing method comprises: obtaining a point cloud set in at least one frame of a point cloud image collected by the laser radar, wherein the point cloud set comprises: a plurality of point cloud points located in a driving road area scanned by the laser radar during vehicle driving, and the point cloud data of each point cloud point comprises at least point cloud coordinate information; pre-processing the point cloud set based on the point cloud coordinate information of each point cloud point, screening out foreground point cloud points located above the road surface of the driving road from the point cloud set, and generating a target point cloud set; clustering and segmenting the target point cloud set using an image segmentation algorithm based on the flooding method, and generating a plurality of clusters, wherein each cluster respectively represents an obstacle to be identified in the point cloud image; calculating the geometric data of each obstacle to be identified in the point cloud image based on the point cloud data in each cluster, and identifying the target obstacle based on the calculation result, wherein the target obstacle is characterized as an obstacle that has a safety impact on the driving safety of the vehicle.

[0007] Optionally, the point cloud set is preprocessed based on the point cloud coordinate information of each point cloud point, and foreground point cloud points located above the road surface of the driving road are filtered out from the point cloud set to generate a target point cloud set, including: filtering the point cloud set based on the point cloud coordinate information of each point cloud point, and filtering out a point cloud point data set whose point cloud coordinate information is above the road surface of the driving road from the point cloud set, wherein the filtering process includes at least one of the following: removing point cloud points located on the road surface of the driving road, and removing point cloud points whose point cloud coordinate information is lower than the road surface height of the driving road.

[0008] Optionally, the point cloud collection is filtered based on the point cloud coordinate information of each point cloud point, including: traversing all point cloud points of the point cloud collection in the point cloud map, and querying the road surface height of the driving road corresponding to each point cloud point; based on the point cloud coordinate information of each point cloud point in the point cloud map, determining the height coordinate of each point cloud point relative to the driving road; if the height coordinate of any point cloud point is less than or equal to the corresponding road surface height, and / or the difference with the road surface height is less than or equal to the height threshold, remove the point cloud point from the point cloud collection.

[0009] Optionally, after filtering out a point cloud data set whose point cloud coordinate information is located above the road surface of the driving road from the point cloud set, the method further includes: performing unsupervised segmentation processing on the point cloud points in the point cloud data set that are located above the road surface of the driving road, and segmenting to obtain multiple types of point cloud points, wherein the types of point cloud points include: outlier points, background points, and foreground points; at least removing outlier points and background points, and retaining point cloud points of foreground points from the point cloud points located above the road surface of the driving road, wherein the point cloud points of all retained foreground points constitute a target point cloud set.

[0010] Optionally, before performing unsupervised segmentation processing on the point cloud points in the point cloud data set that are located above the road surface of the driving road, the method also includes: determining a point cloud coordinate system for the laser radar, wherein the direction of the coordinate axis x of the point cloud coordinate system is the forward direction of the vehicle when driving, the direction of the coordinate axis z is the vertical upward direction perpendicular to the road surface of the driving road where the vehicle is located, and the direction of the coordinate axis y is determined by the vector product of the coordinate axis x and the coordinate axis z.

[0011] Optionally, unsupervised segmentation processing is performed on the point cloud points in the point cloud data set that are located above the road surface of the driving road, and the segmentation to obtain multiple types of point cloud points includes: obtaining point cloud coordinate information of the point cloud points in the point cloud image that are located above the road surface of the driving road in the point cloud coordinate system; traversing the point cloud coordinate information on the point cloud coordinate system to determine the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value; dividing the plane grid based on the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value to obtain multiple plane grids after division, wherein the plane grid is a plane coordinate system determined by the coordinate axis x and the coordinate axis y in the point cloud coordinate system; and determining the type of the plane grid based on the point cloud points in the divided plane grid.

[0012] Optionally, based on the point cloud points in the divided plane grid, determining the type of the plane grid includes: traversing each plane grid to determine whether each plane grid contains point cloud points; determining the plane grid containing the point cloud points as the target plane grid; determining at least one clustering condition, wherein the clustering condition is determined based on the height coordinates of all point cloud points in the point cloud set; determining whether the point cloud points in the target plane grid meet at least one clustering condition; if the point cloud points in the target plane grid meet all clustering conditions, downsampling each point cloud point in the target plane grid to obtain a height coordinate set of the target plane grid, wherein the height coordinate set is composed of the height coordinates of all point cloud points in the target plane grid; and segmenting the height coordinate set of the target plane grid using the mean shift method to determine the type of the target plane grid.

[0013] Optionally, after obtaining multiple divided plane grids, the grid state of the plane grid is initialized, wherein, if the point cloud points in the target plane grid meet any one or more clustering conditions, the state of the grid points in the target plane grid is updated, and the grid state of the plane grid is updated based on the updated state of the grid points.

[0014] Optionally, the target point cloud set includes multiple target plane grids, wherein the target point cloud set is clustered and segmented using an image segmentation algorithm based on the flooding method, and generating multiple clusters includes: traversing each target plane grid contained in the target point cloud set; if the point cloud points in the traversed target plane grid are not empty and the target plane grid has a domain, marking the target plane grid to be clustered into the first cluster; and re-clustering the unmarked target plane grids to generate at least one second cluster.

[0015] Optionally, based on the point cloud data within each cluster, the geometric data of each obstacle to be identified in the point cloud map is calculated, and the target obstacle is identified based on the calculation result, including: reading the point cloud coordinate information of each point cloud point within any cluster; based on the point cloud coordinate information of each point cloud point within the cluster, calculating the height value of the obstacle to be identified represented by the cluster from the road surface; if the height value of the obstacle to be identified from the road surface is lower than the height value of the vehicle, the obstacle to be identified is a target obstacle.

[0016] According to a second aspect of an embodiment of the present invention, a processing system for point cloud data collected by a laser radar is also provided. The laser radar is installed at different positions of a vehicle, and the processing system includes: an acquisition device, which is used to acquire a point cloud set in at least one frame of a point cloud image collected by the laser radar, wherein the point cloud set includes: a plurality of point cloud points located in a driving road area scanned by the laser radar during vehicle driving, and the point cloud data of each point cloud point at least includes point cloud coordinate information; a set generation device, which is used to pre-process the point cloud set based on the point cloud coordinate information of each point cloud point, and filter out foreground point cloud points located above the road surface of the driving road from the point cloud set to generate a target point cloud set; a cluster generation device, which is used to cluster and segment the target point cloud set using an image segmentation algorithm based on the flooding method to generate a plurality of clusters, wherein each cluster represents an obstacle to be identified in the point cloud image; an identification device, which is used to calculate the geometric data of each obstacle to be identified in the point cloud image based on the point cloud data in each cluster, and identify the target obstacle based on the calculation result, wherein the target obstacle is characterized as an obstacle that has a safety impact on the driving safety of the vehicle.

[0017] Optionally, the set generating device includes: a screening module, used to perform screening processing on the point cloud set based on the point cloud coordinate information of each point cloud point, and screen out a point cloud point data set whose point cloud coordinate information is above the road surface of the driving road from the point cloud set, wherein the screening process includes at least one of the following: removing point cloud points located on the road surface of the driving road, and removing point cloud points whose point cloud coordinate information is lower than the road surface height of the driving road.

[0018] Optionally, the screening module includes: a query submodule, which traverses all point cloud points in the point cloud set in the point cloud map, and queries the road surface height of the driving road corresponding to each point cloud point; a determination submodule, which is used to determine the height coordinates of each point cloud point relative to the driving road based on the point cloud coordinate information of each point cloud point in the point cloud map; and a first removal submodule, which is used to remove the point cloud point from the point cloud set if the height coordinate of any point cloud point is less than or equal to the corresponding road surface height, and / or the difference with the road surface height is less than or equal to a height threshold.

[0019] Optionally, the screening module also includes: a segmentation submodule, used to perform unsupervised division processing on the point cloud points in the point cloud data set that are located above the road surface of the driving road, and the segmentation obtains multiple types of point cloud points, wherein the types of point cloud points include: outlier points, background points and foreground points; a second removal submodule, used to remove at least outlier points and background points, and retain point cloud points of foreground points from the point cloud points located above the road surface of the driving road, wherein the point cloud points of all retained foreground points constitute a target point cloud set.

[0020] Optionally, the screening module also includes: a coordinate system determination submodule, used to determine the point cloud coordinate system for the laser radar, wherein the direction of the coordinate axis x of the point cloud coordinate system is the forward direction of the vehicle when traveling, the direction of the coordinate axis z is the vertical upward direction perpendicular to the road surface on which the vehicle is traveling, and the direction of the coordinate axis y is determined by the vector product of the coordinate axis x and the coordinate axis z.

[0021] Optionally, the segmentation submodule includes: an information acquisition unit, used to acquire point cloud coordinate information of point cloud points in the point cloud map located above the road surface of the driving road in the point cloud coordinate system; an extreme point determination unit, used to traverse the point cloud coordinate information in the point cloud coordinate system, and determine the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value; a grid acquisition unit, used to divide the plane grid based on the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value, to obtain multiple plane grids after division, wherein the plane grid is a plane coordinate system determined by the coordinate axis x and the coordinate axis y in the point cloud coordinate system; a type determination unit, used to determine the type of the plane grid based on the point cloud points in the divided plane grid.

[0022] Optionally, the type determination unit includes: a first judgment subunit, used to traverse each plane grid and determine whether each plane grid contains point cloud points; a target grid determination subunit, used to determine the plane grid containing point cloud points as the target plane grid; a clustering condition determination subunit, used to determine at least one clustering condition, wherein the clustering condition is determined based on the height coordinates of all point cloud points in the point cloud set; a second judgment subunit, used to determine whether the point cloud points in the target plane grid meet at least one clustering condition; a coordinate set acquisition subunit, used to downsample each point cloud point in the target plane grid if the point cloud points in the target plane grid meet all clustering conditions, and obtain a height coordinate set of the target plane grid, wherein the height coordinate set is composed of the height coordinates of all point cloud points in the target plane grid; a type determination subunit, using the mean shift method to segment the height coordinate set of the target plane grid to determine the type of the target plane grid.

[0023] Optionally, the segmentation submodule is also used to initialize the grid state of the plane grid after obtaining the multiple divided plane grids, wherein if the point cloud points in the target plane grid meet any one or more clustering conditions, the state of the grid points in the target plane grid is updated, and the grid state of the plane grid is updated based on the updated state of the grid points.

[0024] Optionally, the cluster generation device includes: a traversal module, used to traverse each target plane grid contained in the target point cloud set; a first clustering module, used to mark the target plane grid and cluster it into the first cluster if the point cloud points in the traversed target plane grid are not empty and the target plane grid has a domain; a second clustering module, used to re-cluster the unmarked target plane grids to generate at least one second cluster.

[0025] Optionally, the identification device includes: a reading module for reading the point cloud coordinate information of each point cloud point in any cluster; a height value calculation module for calculating the height value of the obstacle to be identified represented by the cluster from the road surface based on the point cloud coordinate information of each point cloud point in the cluster; and a target obstacle determination module for determining that the obstacle to be identified is a target obstacle if the height value of the obstacle to be identified from the road surface is lower than the height value of the vehicle.

[0026] According to a third aspect of an embodiment of the present invention, a vehicle is further provided, which controls a driving trajectory of the vehicle based on the processing method of the first aspect, wherein the driving trajectory is to control the vehicle to avoid a target obstacle.

[0027] According to a fourth aspect of an embodiment of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium including a stored program, wherein when the program is running, the device where the computer-readable storage medium is located is controlled to execute any method for processing point cloud data collected by a laser radar in the first aspect.

[0028] According to a fifth aspect of an embodiment of the present invention, a processor is provided, characterized in that the processor is used to run a program, wherein when the program is running, any method for processing point cloud data collected by a laser radar in the first aspect is executed.

[0029] In an embodiment of the present invention, a point cloud set in at least one frame of the point cloud image collected by the laser radar is obtained; the point cloud set is pre-processed based on the point cloud coordinate information of each of the point cloud points, and the foreground point cloud points located above the road surface of the driving road are screened out from the point cloud set to generate a target point cloud set; the target point cloud set is clustered and segmented using an image segmentation algorithm based on the flooding method to generate a plurality of clusters; based on the point cloud data in each of the clusters, the geometric data of each obstacle to be identified in the point cloud image is calculated, and the target obstacle is identified based on the calculation result. It is easy to notice that the present application pre-processes the point cloud set in combination with the coordinate information of the point cloud points, and only retains the foreground point cloud points as the target point cloud set without projection. Therefore, the technical problems of under-segmentation or over-segmentation caused by projection are avoided, thereby achieving the technical effect of improving the accuracy of image recognition. BRIEF DESCRIPTION OF THE DRAWINGS

[0030] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of this application. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:

[0031] Figure 1 is a flow chart of a method for processing point cloud data collected by a laser radar according to an embodiment of the present invention;

[0032] Figure 2 is a schematic diagram of a laser radar point cloud coordinate system according to an embodiment of the present invention;

[0033] Figure 3 is a schematic diagram of a method for filtering laser radar road surface point cloud points and point cloud points below the road surface according to an embodiment of the present invention;

[0034] Figure 4 This is an example diagram of cluster segmentation results using the flooding method according to an embodiment of the present invention;

[0035] Figure 5 is a flowchart of laser radar 2.5D point cloud segmentation according to an embodiment of the present invention;

[0036] Figure 6 Point cloud segmentation flow chart based on conditional discrimination and mean shift method according to an embodiment of the present invention;

[0037] Figure 7 is a schematic diagram of the obstacle being a tunnel;

[0038] Figure 8 4 is a schematic diagram of the structure of a system for processing point cloud data collected by a laser radar according to an embodiment of the present invention. DETAILED DESCRIPTION

[0039] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0040] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0041] According to an embodiment of the present invention, a method embodiment of a data processing method is provided. It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer executable instructions, and although a logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in an order different from that shown here.

[0042] When a vehicle is driving on the road, if the BEV projection method in the related technology is used to process the 3D point cloud scanned by the lidar, and the projected point cloud is used for obstacle recognition, the following situations may exist: branches, more soil or bricks extending from the green belt make the vehicles driving along the roadside and the green belt naturally merge into one on the projected point cloud, resulting in under-segmentation; the drooping branches on the trees hang over the vehicles in the parking spaces, making the vehicles and trees merge into one, resulting in under-segmentation. Therefore, when the projection method is used to process the point cloud information, when obstacles, trees and green belts merge into one, the merged objects will be deleted from the foreground obstacles, resulting in missed recognition, and there is a technical problem of inaccurate recognition.

[0043] Figure 1 is a flow chart of a method for processing point cloud data collected by a laser radar according to an embodiment of the present invention. Figure 1 As shown, the method comprises the following steps:

[0044] Step S101, obtaining a point cloud set in at least one frame of point cloud image collected by the laser radar, wherein the point cloud set includes: multiple point cloud points located in the driving road area scanned by the laser radar during vehicle driving, and the point cloud data of each point cloud point includes at least point cloud coordinate information.

[0045] Specifically, laser radars include but are not limited to mechanical laser radars and solid-state laser radars. The present application can collect at least one frame of point cloud images, but the processing method provided in the present application can process one frame of point cloud data at a time in step S101, and the next frame of point cloud data will be processed only after the currently processed frame of point cloud data is processed. The coordinate information of the point cloud points can represent the relative position and height information of each point cloud point in this frame of point cloud data.

[0046] Step S102 , pre-processing the point cloud set based on the point cloud coordinate information of each point cloud point, filtering out foreground point cloud points located above the road surface of the driving road from the point cloud set, and generating a target point cloud set.

[0047] Specifically, based on the coordinate information of each point cloud point, the point cloud points on the road surface belonging to the driving road and the point cloud points below the route of the driving road in the frame point cloud image are filtered out to obtain the foreground point cloud points located above the route of the driving road. The above foreground point cloud points constitute the target point cloud set.

[0048] In an optional embodiment, the coordinates of the point cloud point acquired by the laser radar in the radar's own coordinate system are defined as (x i ,y i , z i ),like Figure 2 As shown, the direction of the coordinate axis x is the forward direction of the vehicle, and the direction of the coordinate axis z is the vertical upward direction perpendicular to the road surface where the vehicle is located. The calculation method of the y direction is shown in Formula 1:

[0049]

[0050] like Figure 3As shown, if the coordinates of the point cloud point satisfy Formula 1, the point cloud point is a point cloud point located on the road surface, and the point cloud point is removed. If Formula 1 is not satisfied, the point cloud point belongs to a non-click surface point cloud point, and the point cloud point is added to the non-road surface point set, and the road surface height corresponding to the point cloud point is queried. It should be noted that the road surface height corresponding to the point cloud point can obtain the real road surface height based on the data collected by the laser radar. The height of the point cloud point is obtained based on the coordinate information of the point cloud point, and then it is determined whether the height of the point cloud point is greater than the road surface height. If the height of the point cloud point is greater than the road surface height, the point is added to the target point cloud set. If the height of the point cloud point is less than the road surface height, the point cloud point is removed. After the traversal is completed, the point cloud points located above the road surface in this frame of point cloud data are determined to obtain the target point cloud set.

[0051] Step S103 , clustering and segmenting the target point cloud set using an image segmentation algorithm based on the flooding method to generate a plurality of clusters, wherein each cluster represents an obstacle to be identified in the point cloud image.

[0052] Specifically, the image segmentation algorithm based on the FloodFill method is used to remove outliers and background points in the target point cloud set to obtain multiple clusters. When there are two clusters, Figure 4 As shown, the preliminary recognition of obstacles is completed.

[0053] It should be noted that in actual driving on the road, there may be motor vehicles, non-motor vehicles, pedestrians, and special-shaped vehicles such as tractors, trailers, and rickshaws on the same road, as well as irregular isolation roadblocks corresponding to construction sections. Since the frequency of special-shaped vehicles and isolation roadblocks corresponding to construction sections is not high, the sample size is small and there is no regularity when they appear. If the traditional supervised method of machine learning is used, it is difficult to identify the above situation. Therefore, this application uses an unsupervised image segmentation algorithm based on the flooding method to cluster and segment the point cloud set, thereby achieving the technical effect of improving the recognition accuracy.

[0054] Step S104, based on the point cloud data in each cluster, calculate the geometric data of each obstacle to be identified in the point cloud image, and identify the target obstacle based on the calculation result, wherein the target obstacle is characterized as an obstacle that has a safety impact on the driving safety of the vehicle.

[0055] Specifically, after calculating the geometric data of the obstacle to be identified, the geometric data of the obstacle to be identified is identified based on the obstacle database to determine whether the obstacle to be identified will affect the normal passage of the vehicle. If the obstacle affects the normal passage of the vehicle, the obstacle can be a target obstacle.

[0056] Through the above-mentioned embodiments of the present invention, a point cloud set in at least one frame of the point cloud image collected by the laser radar is obtained; the point cloud set is pre-processed based on the point cloud coordinate information of each of the point cloud points, and the foreground point cloud points located above the road surface of the driving road are screened out from the point cloud set to generate a target point cloud set; the target point cloud set is clustered and segmented using an image segmentation algorithm based on the flooding method to generate multiple clusters; based on the point cloud data in each of the clusters, the geometric data of each obstacle to be identified in the point cloud image is calculated, and the target obstacle is identified based on the calculation result. It is easy to notice that the present application pre-processes the point cloud set in combination with the coordinate information of the point cloud points, and only retains the foreground point cloud points as the target point cloud set without projection. Therefore, the technical problems of under-segmentation or over-segmentation caused by projection are avoided, thereby achieving the technical effect of improving the accuracy of image recognition.

[0057] Optionally, the point cloud set is preprocessed based on the point cloud coordinate information of each point cloud point, and foreground point cloud points located above the road surface of the driving road are filtered out from the point cloud set to generate a target point cloud set, including: filtering the point cloud set based on the point cloud coordinate information of each point cloud point, and filtering out a point cloud point data set whose point cloud coordinate information is above the road surface of the driving road from the point cloud set, wherein the filtering process includes at least one of the following: removing point cloud points located on the road surface of the driving road, and removing point cloud points whose point cloud coordinate information is lower than the road surface height of the driving road.

[0058] It should be noted that, since the point cloud points located on the ground and the point cloud points below the ground usually do not hinder the normal passage of vehicles, they can be removed in the preprocessing stage to reduce interference with subsequent processing processes.

[0059] Optionally, the point cloud collection is filtered based on the point cloud coordinate information of each point cloud point, including: traversing all point cloud points of the point cloud collection in the point cloud map, and querying the road surface height of the driving road corresponding to each point cloud point; based on the point cloud coordinate information of each point cloud point in the point cloud map, determining the height coordinate of each point cloud point relative to the driving road; if the height coordinate of any point cloud point is less than or equal to the corresponding road surface height, and / or the difference with the road surface height is less than or equal to the height threshold, remove the point cloud point from the point cloud collection.

[0060] Specifically, the road surface height of each point cloud point can be obtained from the data collected by the laser radar. In the actual screening process, according to actual needs, the size relationship between the height coordinates of the point cloud point and the corresponding road surface height can be directly compared, or the difference between the height coordinates of the point cloud point and the height threshold can be directly compared.

[0061] Optionally, after filtering out a point cloud data set whose point cloud coordinate information is located above the road surface of the driving road from the point cloud set, the method further includes: performing unsupervised segmentation processing on the point cloud points in the point cloud data set that are located above the road surface of the driving road, and segmenting to obtain multiple types of point cloud points, wherein the types of point cloud points include: outlier points, background points, and foreground points; at least removing outlier points and background points, and retaining point cloud points of foreground points from the point cloud points located above the road surface of the driving road, wherein the point cloud points of all retained foreground points constitute a target point cloud set.

[0062] Specifically, outliers may be points that are far from the center, foreground points may be point cloud points on target obstacles, and background points may be points in the point cloud set other than foreground points.

[0063] In an alternative embodiment, if Figure 5 As shown, after obtaining a point cloud set consisting of a frame of lidar point cloud, the outliers and background points in the set are removed, the foreground points in the set are retained, and then the foreground points are clustered and segmented, and the obstacle envelope is calculated. Then, the obstacle envelope is judged to determine whether the obstacle affects the normal passage of the vehicle.

[0064] Optionally, before performing unsupervised segmentation processing on the point cloud points in the point cloud data set that are located above the road surface of the driving road, the method also includes: determining a point cloud coordinate system for the laser radar, wherein the direction of the coordinate axis x of the point cloud coordinate system is the forward direction of the vehicle when driving, the direction of the coordinate axis z is the vertical upward direction perpendicular to the road surface of the driving road where the vehicle is located, and the direction of the coordinate axis y is determined by the vector product of the coordinate axis x and the coordinate axis z.

[0065] Specifically, the point cloud coordinate system for the laser radar can be the coordinate system of the radar itself. The direction of the coordinate axis y is get.

[0066] Optionally, unsupervised segmentation processing is performed on the point cloud points in the point cloud data set that are located above the road surface of the driving road, and the segmentation to obtain multiple types of point cloud points includes: obtaining point cloud coordinate information of the point cloud points in the point cloud image that are located above the road surface of the driving road in the point cloud coordinate system; traversing the point cloud coordinate information on the point cloud coordinate system to determine the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value; dividing the plane grid based on the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value to obtain multiple plane grids after division, wherein the plane grid is a plane coordinate system determined by the coordinate axis x and the coordinate axis y in the point cloud coordinate system; and determining the type of the plane grid based on the point cloud points in the divided plane grid.

[0067] In an optional embodiment, assuming that there are N point cloud points to be segmented, the set of point cloud points is

[0068] {P i},0≤i≤N-1 (2)

[0069] Traverse all point cloud points and obtain the minimum and maximum x coordinates of the point cloud points, expressed as (x min , x max ); Get the minimum and maximum y coordinates of the point cloud points, expressed as (y min ,y max ). Define the grid scale of the Oxy plane to be divided as v = (v x , v y ), then the number of divided plane grids can be recorded as:

[0070]

[0071] Then the value range of the plane grid index coordinate is G(r, c) = (0~N x , 0~N y ),

[0072] Then, the plane grid is divided according to the number and scale of the plane grid to obtain multiple plane grids after division. After obtaining multiple plane grids, the point cloud points in the plane grid are clustered using an image segmentation method based on the flooding method to obtain a height coordinate set of the plane grid, and then the height coordinate set is processed using an improved mean shift algorithm to determine the type of the above grid. The type of the grid can be the category with the highest frequency of visits to a certain category by the point cloud points in this grid.

[0073] Optionally, based on the point cloud points in the divided plane grid, determining the type of the plane grid includes: traversing each plane grid to determine whether each plane grid contains point cloud points; determining the plane grid containing the point cloud points as the target plane grid; determining at least one clustering condition, wherein the clustering condition is determined based on the height coordinates of all point cloud points in the point cloud set; determining whether the point cloud points in the target plane grid meet at least one clustering condition; if the point cloud points in the target plane grid meet all clustering conditions, downsampling each point cloud point in the target plane grid to obtain a height coordinate set of the target plane grid, wherein the height coordinate set is composed of the height coordinates of all point cloud points in the target plane grid; and segmenting the height coordinate set of the target plane grid using the mean shift method to determine the type of the target plane grid.

[0074] In an optional embodiment, traverse the Oxy plane grid and obtain its state S1(x j ,y j), if the state s of the plane grid j =1, the grid is conditionally judged; otherwise, the grid is ignored. The steps of conditional judgment on the grid points are as follows:

[0075] It should be noted that the coordinates of each grid point are G j (x j ,y j ), for the grid point G j (x j ,y j ), the point cloud point set contained in the grid is recorded as Q j , point cloud point P i (x i ,y i , z i ) corresponds to the grid point coordinates g i (r i , c i ), see formula (5). If (r i , c i )≡(x j ,y j ), then P i (x i ,y i )Add to set Q j .

[0076] For each grid G j (x j ,y j ), get the corresponding point cloud point set Q j If Q j is not an empty set, for Q j All point cloud points in get their respective height coordinates z, and calculate the minimum and maximum values ​​of the height coordinates, expressed as (z min , z max ).

[0077] Set the clustering conditions C1 and C2 for a single grid, and the height division scale v within the grid z , then the height coordinate index range in the grid is Conditions C1 and C2 are expressed as:

[0078] C1:z max -z min The value is less than the threshold δ0; C2: N z The value must be less than or equal to 1.

[0079] Set the first threshold δ1 and the second threshold δ2 in the grid as initial values, and δ1≤δ2. jIf the calculation result satisfies condition C1, then operation OP1 is executed. OP1 can be expressed as: compare z min and δ1, if z min <δ1, then compare z max and δ1, and modify δ1 to the larger value of the two, and finally retain Q j All point cloud points with height coordinates less than δ1; otherwise, the state of the grid will be changed to s j (x j ,y j )=0. If Q j If the calculation result satisfies condition C2, then operation OP2 is performed. OP2 can be expressed as: compare z min and δ1, if z min <δ1, then compare z max and δ1, and modify δ1 to the larger value of the two, and finally retain Q j All point cloud points with height coordinates less than δ1; otherwise, compare z min and δ2, if z min <δ2, and modify δ1 to z max and δ1, and retain Q j The point cloud points whose height coordinates are less than δ1. The above-mentioned reserved points can be a set of height coordinates. j The calculation result satisfies conditions C1 and C2 at the same time, then Q j It can be a combination of height coordinates. Then, the mean shift method is used to segment the height coordinate set of the target plane grid, including:

[0080] Downsample the point cloud points in a single grid to obtain the point cloud point set Q corresponding to a single grid j Point cloud point P in i (x i ,y i , z i ), point cloud point height coordinate z i The corresponding height index coordinates are Traverse the set Q j All point cloud points in the , and take the average value P′ of the height coordinate values ​​of the point cloud points with the same height index coordinates z . Point cloud point set Q j After downsampling, the height coordinate values ​​are sorted from small to large to obtain the set Q z j = {P′ iz}. Let set Q z j is the plane grid G j The down-sampled point height set replaces the point cloud point set Q jThe real height coordinate set in .

[0081] For the plane grid G j The height coordinate set Q of the point cloud points after downsampling z j , using the mean shift method for segmentation, including:

[0082] (a) Select a set Q z j The unclassified minimum index data is used as the initial seed point k i The parameters required to define the mean shift segmentation method include: Gaussian radius h, the category index l that currently needs to be classified j , cluster center c j Equal to point k i The z coordinate of the initial moment, i=0, j=0.

[0083] (b) c j is the cluster center, with h as the radius for Q z j Cluster the samples in. Traverse all samples m, and the clustering distance function is d m =||mk o ||.If d m <h, then the category count prob(m,i) of sample m is increased by 1.

[0084] (c) Add to category l j After the sample traversal is completed, the category l is calculated j The new cluster center c of all samples in j .

[0085] (d) Set the stopping condition threshold of clustering δ3. Calculate the offset in clustering shift = k i -c j If |shift| < δ3, stop clustering, select the next seed point and category index, and repeat steps a to c until all samples are clustered; if this condition is not met, move the cluster center to position c j , repeat steps b to c; until the clustering stop condition is met, and then repeat steps a to c until all samples are clustered.

[0086] (e) For the set Q z j Each sample P′ iz , traverse its category labels {prob(i, l)}, and take the category with the largest value in the category count as the category of the sample.

[0087] (f) Traverse all categories and take the category with the largest number of samples as the plane grid Gj The category is then calculated and the maximum value of all samples in the category is used as the plane grid G j The third threshold δ3.

[0088] (g) Keep the set Q j Points in the point cloud whose height coordinates are less than δ3 are deleted. j Other points of j Finally, it is a non-empty set, then the plane grid G j The state remains s j (x j ,y j )=1; otherwise modify the state s j (x j ,y j )=0.

[0089] (h) Get all plane grids containing non-empty point sets

[0090] In an alternative embodiment, if Figure 6 As shown, after obtaining multiple plane grids, traverse the plane grids to determine whether the grid contains point cloud points. When the grid contains point cloud points, perform condition C1 judgment. The C1 judgment can be whether the difference between the maximum value and the minimum value of the point cloud points located in the grid on the z coordinate is less than the first threshold, then execute OP1, which includes: comparing the relationship between the minimum value on the z coordinate and the first threshold. If the minimum value on the z coordinate is less than the first threshold, take the larger value of the maximum value of the z coordinate and the first threshold as the first threshold, and retain the point cloud points in the grid whose height is less than the first threshold. point; if the minimum value on the z coordinate is greater than or equal to the first threshold, conditional judgment C2 is performed, and conditional judgment C2 includes: comparing the minimum value on the z coordinate with the first threshold, if the minimum value on the z coordinate is less than the first threshold, taking the maximum value on the z coordinate and the maximum value of the first threshold as the new first threshold, if the minimum value on the z coordinate is greater than or equal to the first threshold, then comparing the minimum value on the z coordinate and the second threshold, if the minimum value on the z coordinate is less than the second threshold, then taking the maximum value on the z coordinate and the maximum value of the first threshold as the new first threshold, and retaining the point cloud points in the grid whose height is less than the first threshold. Among them, the first threshold is less than or equal to the second threshold.

[0091] Optionally, after obtaining multiple divided plane grids, the grid state of the plane grid is initialized, wherein, if the point cloud points in the target plane grid meet any one or more clustering conditions, the state of the grid points in the target plane grid is updated, and the grid state of the plane grid is updated based on the updated state of the grid points.

[0092] In an optional embodiment, the state of the Oxy plane grid is initialized, and the index coordinates are established. The state quantity S(r, c) of the Oxy plane grid is defined. The initial state is recorded as:

[0093] S0(r,c)={0},0≤r≤N x -1, 0≤c≤N c -1 (4).

[0094] Traversing point cloud points {P i}, update the grid point state s corresponding to each point cloud point j For a point cloud point P i (x i ,y i ), the corresponding grid point coordinates are G j (x j ,y j ) = g i (r i , c i ),but

[0095] Update the state of the grid to s j (x j ,y j )=1.

[0096] Traversing point cloud points {P i}, the resulting grid state is:

[0097]

[0098] Optionally, the target point cloud set includes multiple target plane grids, wherein the target point cloud set is clustered and segmented using an image segmentation algorithm based on the flooding method, and generating multiple clusters includes: traversing each target plane grid contained in the target point cloud set; if the point cloud points in the traversed target plane grid are not empty and the target plane grid has a domain, marking the target plane grid to be clustered into the first cluster; and re-clustering the unmarked target plane grids to generate at least one second cluster.

[0099] In an alternative embodiment, all plane grids G are traversed. j The corresponding set Q j , update G again j Status j (x j ,y j ), including: If Q j is a non-empty set, then s j (x j ,y j )=1; otherwise s j (xj ,y j )=0. Perform flood clustering on the grids with a state value of 1. The specific steps of flood clustering are as follows:

[0100] Step 1: For the plane grid s j (x j ,y j ), there is a neighborhood:

[0101]

[0102] The cluster is marked as O i , i≥0. At the initial moment i=0.

[0103] Step 2: Traverse the grid points of the unmarked clusters one by one. If s j (x j ,y j )=1, then grid point j is added to cluster O i , and judge the state of the neighboring grid. If the state of the neighboring grid is 1, the neighboring grid is also added to the cluster O i , and mark the grid point as belonging to cluster O i .

[0104] Step 3: If s j (x j ,y j ) is 0, the clustering ends and the cluster stops growing. i Clustering is complete.

[0105] Step 4: Increase by 1. Repeat steps 2 to 3 for the grids that are not marked as clusters until all plane grids are marked as belonging to a cluster. Finally, the set of clusters {O i}, i≥0.

[0106] Optionally, based on the point cloud data within each cluster, the geometric data of each obstacle to be identified in the point cloud map is calculated, and the target obstacle is identified based on the calculation result, including: reading the point cloud coordinate information of each point cloud point within any cluster; based on the point cloud coordinate information of each point cloud point within the cluster, calculating the height value of the obstacle to be identified represented by the cluster from the road surface; if the height value of the obstacle to be identified from the road surface is lower than the height value of the vehicle, the obstacle to be identified is a target obstacle.

[0107] Specifically, the target obstacle may be an obstacle that affects the normal passage of the current vehicle. Obstacles that do not affect the passage may be filtered out according to the height value of the obstacle to be identified from the road surface, such as bridge holes, tree crowns, traffic lights, hanging crossbars of billboards, etc. Figure 7 As shown, Figure 7This is a schematic diagram of the case where the obstacle is a tunnel. Its ground clearance is greater than the height of the vehicle itself and will not hinder the passage of vehicles.

[0108] In an optional embodiment, assuming that the height of the vehicle itself is H1, the safe passage margin is H2, the height of the laser radar coordinate origin from the vehicle's grounding point is Z1, and the lowest height coordinate of the point cloud point in the obstacle cluster in the laser radar coordinate system is z i , the definition of the self-vehicle passing height is the minimum safe height for the self-vehicle to pass, then the vehicle's own passing height can be calculated by formula (10):

[0109] H3=H1+H2 (10),

[0110] The minimum height H of the obstacle that allows the vehicle to pass in the laser radar coordinate system th for:

[0111] H th =H3-Z1 (11),

[0112] Traverse all obstacles and calculate the height coordinates of the point cloud points contained in the cluster, and calculate its minimum value O z_min If O z_min >H th , then the obstacle is an obstacle that does not affect the passage of the vehicle, so it is removed from the obstacle list and is not used as the final target obstacle.

[0113] According to an embodiment of the present application, an embodiment of a system for processing point cloud data collected by a laser radar is also provided. The specific implementation methods and optional embodiments in this embodiment are similar or identical to those in the above-mentioned embodiments and will not be described in detail here.

[0114] Figure 8 is a schematic diagram of the structure of a system for processing point cloud data collected by a laser radar according to an embodiment of the present invention. Figure 8 As shown, the system includes:

[0115] The acquisition device 81 is used to obtain a point cloud set in at least one frame of point cloud image collected by the laser radar, wherein the point cloud set includes: multiple point cloud points located in the driving road area scanned by the laser radar during vehicle driving, and the point cloud data of each point cloud point at least includes point cloud coordinate information.

[0116] The set generating device 82 is used to pre-process the point cloud set based on the point cloud coordinate information of each point cloud point, filter out the foreground point cloud points located above the road surface of the driving road from the point cloud set, and generate a target point cloud set.

[0117] The cluster generating device 83 is used to perform cluster segmentation on the target point cloud set by using an image segmentation algorithm based on the flooding method to generate a plurality of clusters, wherein each cluster represents an obstacle to be identified in the point cloud image.

[0118] The identification device 84 is used to calculate the geometric data of each obstacle to be identified in the point cloud image based on the point cloud data in each cluster, and identify the target obstacle based on the calculation result, wherein the target obstacle is characterized as an obstacle that has a safety impact on the driving safety of the vehicle.

[0119] In the above embodiment, a point cloud set in at least one frame of the point cloud image collected by the laser radar is obtained; the point cloud set is preprocessed based on the point cloud coordinate information of each of the point cloud points, and the foreground point cloud points located above the road surface of the driving road are screened out from the point cloud set to generate a target point cloud set; the target point cloud set is clustered and segmented using an image segmentation algorithm based on the flooding method to generate multiple clusters; based on the point cloud data in each of the clusters, the geometric data of each obstacle to be identified in the point cloud image is calculated, and the target obstacle is identified based on the calculation result. It is easy to notice that the present application preprocesses the point cloud set in combination with the coordinate information of the point cloud points, and only retains the foreground point cloud points as the target point cloud set without projection. Therefore, the technical problems of under-segmentation or over-segmentation caused by projection are avoided, thereby achieving the technical effect of improving the accuracy of image recognition.

[0120] Optionally, the set generating device includes: a screening module, used to perform screening processing on the point cloud set based on the point cloud coordinate information of each point cloud point, and screen out a point cloud point data set whose point cloud coordinate information is above the road surface of the driving road from the point cloud set, wherein the screening process includes at least one of the following: removing point cloud points located on the road surface of the driving road, and removing point cloud points whose point cloud coordinate information is lower than the road surface height of the driving road.

[0121] Optionally, the screening module includes: a query submodule, which traverses all point cloud points in the point cloud set in the point cloud map, and queries the road surface height of the driving road corresponding to each point cloud point; a determination submodule, which is used to determine the height coordinates of each point cloud point relative to the driving road based on the point cloud coordinate information of each point cloud point in the point cloud map; and a first removal submodule, which is used to remove the point cloud point from the point cloud set if the height coordinate of any point cloud point is less than or equal to the corresponding road surface height, and / or the difference with the road surface height is less than or equal to a height threshold.

[0122] Optionally, the screening module also includes: a segmentation submodule, used to perform unsupervised division processing on the point cloud points in the point cloud data set that are located above the road surface of the driving road, and the segmentation obtains multiple types of point cloud points, wherein the types of point cloud points include: outlier points, background points and foreground points; a second removal submodule, used to remove at least outlier points and background points, and retain point cloud points of foreground points from the point cloud points located above the road surface of the driving road, wherein the point cloud points of all retained foreground points constitute a target point cloud set.

[0123] Optionally, the screening module also includes: a coordinate system determination submodule, used to determine the point cloud coordinate system for the laser radar, wherein the direction of the coordinate axis x of the point cloud coordinate system is the forward direction of the vehicle when traveling, the direction of the coordinate axis z is the vertical upward direction perpendicular to the road surface on which the vehicle is traveling, and the direction of the coordinate axis y is determined by the vector product of the coordinate axis x and the coordinate axis z.

[0124] Optionally, the segmentation submodule includes: an information acquisition unit, used to acquire point cloud coordinate information of point cloud points in the point cloud map located above the road surface of the driving road in the point cloud coordinate system; an extreme point determination unit, used to traverse the point cloud coordinate information in the point cloud coordinate system, and determine the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value; a grid acquisition unit, used to divide the plane grid based on the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value, to obtain multiple plane grids after division, wherein the plane grid is a plane coordinate system determined by the coordinate axis x and the coordinate axis y in the point cloud coordinate system; a type determination unit, used to determine the type of the plane grid based on the point cloud points in the divided plane grid.

[0125] Optionally, the type determination unit includes: a first judgment subunit, used to traverse each plane grid and determine whether each plane grid contains point cloud points; a target grid determination subunit, used to determine the plane grid containing point cloud points as the target plane grid; a clustering condition determination subunit, used to determine at least one clustering condition, wherein the clustering condition is determined based on the height coordinates of all point cloud points in the point cloud set; a second judgment subunit, used to determine whether the point cloud points in the target plane grid meet at least one clustering condition; a coordinate set acquisition subunit, used to downsample each point cloud point in the target plane grid if the point cloud points in the target plane grid meet all clustering conditions, and obtain a height coordinate set of the target plane grid, wherein the height coordinate set is composed of the height coordinates of all point cloud points in the target plane grid; a type determination subunit, using the mean shift method to segment the height coordinate set of the target plane grid to determine the type of the target plane grid.

[0126] Optionally, the segmentation submodule is also used to initialize the grid state of the plane grid after obtaining the multiple divided plane grids, wherein if the point cloud points in the target plane grid meet any one or more clustering conditions, the state of the grid points in the target plane grid is updated, and the grid state of the plane grid is updated based on the updated state of the grid points.

[0127] Optionally, the cluster generation device includes: a traversal module, used to traverse each target plane grid contained in the target point cloud set; a first clustering module, used to mark the target plane grid and cluster it into the first cluster if the point cloud points in the traversed target plane grid are not empty and the target plane grid has a domain; a second clustering module, used to re-cluster the unmarked target plane grids to generate at least one second cluster.

[0128] Optionally, the identification device includes: a reading module for reading the point cloud coordinate information of each point cloud point in any cluster; a height value calculation module for calculating the height value of the obstacle to be identified represented by the cluster from the road surface based on the point cloud coordinate information of each point cloud point in the cluster; and a target obstacle determination module for determining that the obstacle to be identified is a target obstacle if the height value of the obstacle to be identified from the road surface is lower than the height value of the vehicle.

[0129] According to a third aspect of an embodiment of the present invention, a vehicle is further provided, wherein the driving trajectory of the vehicle is controlled based on the processing method of the point cloud data collected by the laser radar in the first aspect, wherein the driving trajectory is to control the vehicle to avoid the target obstacle.

[0130] According to the fourth aspect of an embodiment of the present invention, a computer-readable storage medium is also provided, and the computer-readable storage medium includes a stored program, wherein when the program is running, the device where the computer-readable storage medium is located is controlled to execute any method for processing point cloud data collected by the laser radar in the above embodiments.

[0131] According to a fifth aspect of an embodiment of the present invention, a processor is further provided, and the processor is used to run a program, wherein when the program is running, the method for processing point cloud data collected by the laser radar in any one of the above embodiments is executed.

[0132] In the above embodiments of the present invention, the description of each embodiment has its own emphasis. For parts that are not described in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0133] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only schematic. For example, the division of the units can be a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of units or modules, which can be electrical or other forms.

[0134] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple units. Some or all of the units may be selected according to actual needs to achieve the purpose of the present embodiment.

[0135] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0136] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or the part that contributes to the prior art, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a computer device (which can be a personal computer, a server or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), mobile hard disk, magnetic disk or optical disk and other media that can store program codes.

[0137] The above is only a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principle of the present invention. These improvements and modifications should also be regarded as the scope of protection of the present invention.

Claims

1. A method for processing point cloud data collected by a laser radar, characterized in that: The laser radar is installed at different positions of the vehicle, and the processing method includes: Acquire a point cloud set in at least one frame of point cloud image collected by the laser radar, wherein the point cloud set includes: a plurality of point cloud points located in a driving road area scanned by the laser radar during vehicle driving, and the point cloud data of each point cloud point includes at least point cloud coordinate information; Preprocessing the point cloud set based on the point cloud coordinate information of each of the point cloud points, filtering out foreground point cloud points located above the road surface of the driving road from the point cloud set, and generating a target point cloud set; Using an image segmentation algorithm based on the flooding method to cluster and segment the target point cloud set, generating a plurality of clusters, wherein each cluster represents an obstacle to be identified in the point cloud image, and the target point cloud set includes a plurality of target plane grids; The target point cloud set is clustered and segmented by using an image segmentation algorithm based on the flooding method, and the generation of multiple clusters includes: traversing each of the target plane grids contained in the target point cloud set; if the point cloud points in the traversed target plane grid are not empty and the target plane grid has a neighborhood, marking the target plane grid to be clustered into the first cluster; re-clustering the unmarked target plane grids to generate at least one second cluster; Based on the point cloud data in each of the clusters, the geometric data of each obstacle to be identified in the point cloud image is calculated, and a target obstacle is identified based on the calculation result, wherein the target obstacle is characterized as an obstacle that has a safety impact on the driving safety of the vehicle; The method further includes: determining a point cloud coordinate system for the laser radar; dividing the plane grid according to the number and scale of the plane grids to obtain a plurality of plane grids after division, wherein the plane grid is a plane coordinate system determined by a coordinate axis x and a coordinate axis y in the point cloud coordinate system; After obtaining the multiple plane grids after the division, the grid state of the plane grid is initialized, wherein, if the point cloud points in the target plane grid meet any one or more clustering conditions, the state of the grid points in the target plane grid is updated, and the grid state of the plane grid is updated based on the updated state of the grid points.

2. The method according to claim 1, characterized in that Preprocessing the point cloud set based on the point cloud coordinate information of each point cloud point, filtering out foreground point cloud points located above the road surface of the driving road from the point cloud set, and generating a target point cloud set, including: The point cloud set is filtered based on the point cloud coordinate information of each point cloud point, and a point cloud point data set whose point cloud coordinate information is above the road surface of the driving road is filtered out from the point cloud set, wherein the filtering process includes at least one of the following: removing point cloud points located on the road surface of the driving road, and removing point cloud points whose point cloud coordinate information is lower than the road surface height of the driving road.

3. The method according to claim 2, characterized in that The point cloud set is screened based on the point cloud coordinate information of each point cloud point, including: Traversing all the point cloud points in the point cloud set in the point cloud image, and querying the road surface height of the driving road corresponding to each point cloud point; Based on the point cloud coordinate information of each point cloud point in the point cloud image, determining the height coordinate of each point cloud point relative to the driving road; If the height coordinate of any point cloud point is less than or equal to the corresponding road surface height, and / or the difference with the road surface height is less than or equal to the height threshold, the point cloud point is removed from the point cloud set.

4. The method according to claim 2 or 3, characterized in that: After filtering out a point cloud point data set whose point cloud coordinate information is located above the road surface of the driving road from the point cloud set, the method further includes: Performing unsupervised segmentation processing on the point cloud points located above the road surface of the driving road in the point cloud data set to obtain multiple types of point cloud points, wherein the types of the point cloud points include: outlier points, background points and foreground points; At least the outlier points and the background points are removed, and the point cloud points of the foreground points are retained from the point cloud points located above the road surface of the driving road, wherein the point cloud points of all the retained foreground points constitute the target point cloud set.

5. The method according to claim 4, characterized in that Before performing unsupervised segmentation processing on the point cloud points in the point cloud data set that are located above the road surface of the driving road, the method further includes: Determine a point cloud coordinate system for the laser radar, wherein the direction of the coordinate axis x of the point cloud coordinate system is the forward direction of the vehicle when traveling, the direction of the coordinate axis z is the vertical upward direction perpendicular to the road surface of the vehicle, and the direction of the coordinate axis y is determined by the vector product of the coordinate axis x and the coordinate axis z.

6. The method according to claim 5, characterized in that The point cloud points located above the road surface of the driving road in the point cloud data set are subjected to unsupervised segmentation processing, and multiple types of point cloud points are obtained by segmentation, including: Acquire point cloud coordinate information of a point cloud point located above the road surface of the driving road in the point cloud image in the point cloud coordinate system; Traversing the point cloud coordinate information on the point cloud coordinate system, determining the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value; Dividing the plane grid based on the point cloud point with the smallest x coordinate value and the point cloud point with the largest x coordinate value, as well as the point cloud point with the smallest y coordinate value and the point cloud point with the largest y coordinate value, to obtain a plurality of plane grids after division, wherein the plane grid is a plane coordinate system determined by the coordinate axis x and the coordinate axis y in the point cloud coordinate system; Based on the point cloud points in the divided plurality of plane grids, the type of the plane grid is determined.

7. The method according to claim 6, characterized in that Based on the point cloud points in the divided plurality of plane grids, determining the type of the plane grid comprises: Traversing each plane grid, and determining whether each plane grid contains a point cloud point; Determine the plane grid containing the point cloud points as the target plane grid; Determine at least one clustering condition, wherein the clustering condition is determined based on height coordinates of all point cloud points of the point cloud set; Determining whether the point cloud points in the target plane grid satisfy at least one of the clustering conditions; If the point cloud points in the target plane grid meet all clustering conditions, down-sample each point cloud point in the target plane grid to obtain a height coordinate set of the target plane grid, wherein the height coordinate set is composed of the height coordinates of all the point cloud points in the target plane grid; The height coordinate set of the target plane grid is segmented by using the mean shift method to determine the type of the target plane grid.

8. The method according to claim 1, characterized in that Based on the point cloud data in each of the clusters, calculating the geometric data of each obstacle to be identified in the point cloud image, and identifying the target obstacle based on the calculation result includes: Reading the point cloud coordinate information of each point cloud point in any of the clusters; Based on the point cloud coordinate information of each point cloud point in the cluster, calculate the height value of the obstacle to be identified represented by the cluster from the road surface; If the height value of the obstacle to be identified from the road surface is lower than the height value of the vehicle, the obstacle to be identified is the target obstacle.

Citation Information

Patent Citations

  • Multiline laser radar-based 3D point cloud segmentation method

    CN106204705A

  • Height limit early warning method and device based on laser radar, electronic equipment and storage medium

    CN111652060A

  • Road environment element sensing method based on laser radar

    CN111985322A

  • Complete target extraction method based on structured color point cloud segmentation

    CN113470049A