BEV space drivable area boundary automatic labeling method based on point cloud
Through the methods of multi-frame point cloud fusion and dynamic geometric analysis, the problem of obstacle detection with diverse shapes in autonomous driving has been solved, and high-precision automatic labeling of the boundaries of the drivable area has been achieved, which reduces the cost of manual labeling and improves the safety and scene adaptability of autonomous driving.
Patent Information
- Application Number
- CN202510972177.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-15
- Publication Date
- 2025-09-12
AI Technical Summary
In existing autonomous driving technologies, obstacle detection based on BEV views is difficult to cover unknown obstacles of various shapes, and the cost of manual labeling is high, and the labeling accuracy and efficiency are difficult to meet safety requirements.
Through multi-frame point cloud fusion and dynamic geometric analysis, continuous frame point cloud data collected by multi-line lidar is obtained, static and dynamic point clouds are separated, dense global ground and obstacle point cloud data are generated, and the boundary of the drivable area is detected in the BEV view, and a closed boundary is generated using a ray scanning algorithm.
It achieves high-precision automatic labeling of obstacles of any shape, reduces manual labeling costs, improves labeling efficiency and scene generalization capabilities, and meets the centimeter-level positioning requirements of L4 autonomous driving.
Smart Images

Figure CN120635863A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of autonomous driving technology, and in particular to a method for automatically marking boundaries of a BEV spatial drivable area based on point cloud. Background Art
[0002] In the field of autonomous driving, obstacle detection technology based on BEV views mostly relies on rectangular boxes to mark specific categories of targets (such as vehicles and pedestrians), which makes it difficult to cover the diverse forms of unknown obstacles in real-world scenarios (such as construction cones and scattered cargo). Existing methods have significant flaws. For example, box detection has a high rate of missed detection of irregular obstacles (such as inclined roadblocks and animals); and model training relies on large-scale manually labeled data, which is expensive and inefficient. Especially for long-tail scenarios (such as extreme weather and complex road conditions), the consistency and coverage of manual labeling are difficult to guarantee. Although some studies have attempted to reduce labor costs through semi-automatic labeling, due to the sparsity of single-frame point clouds and interference from dynamic targets, the labeling accuracy and efficiency still cannot meet the safety requirements of autonomous driving. Summary of the Invention
[0003] The main purpose of this invention is to provide a point cloud-based method for automatic labeling of the boundaries of the BEV spatial drivable area. The method aims to achieve high-precision automatic labeling of the boundaries of the three-dimensional drivable area around the autonomous driving vehicle through multi-frame point cloud fusion and dynamic geometric analysis, comprehensively cover obstacles of any shape and reduce the cost of manual labeling, thereby improving driving safety and scene generalization capabilities.
[0004] To achieve the above objectives, the present invention provides a method for automatically marking the boundaries of a BEV's drivable area based on a point cloud, comprising the following steps:
[0005] Acquire a continuous frame point cloud data stream collected by a multi-line laser radar, where each frame of the point cloud data stream contains omnidirectional three-dimensional environmental information around the vehicle, and simultaneously acquire continuous frame positioning data aligned with the timestamp of each frame of the point cloud data;
[0006] Dividing the point cloud data stream by combining a road surface segmentation algorithm to output ground point cloud data and non-ground point cloud data;
[0007] Separating preliminary dynamic point cloud data and preliminary static point cloud data in the non-ground point cloud data based on the positioning data, and performing noise removal on the preliminary static point cloud;
[0008] Project each frame of ground point cloud data to the global coordinate system, merge multiple frames of data to fill the driving occlusion area, and generate dense global ground point cloud data;
[0009] Dividing the preliminary static point cloud data and the ground point cloud data into voxel grids according to the XY plane, extracting the static obstacle point cloud data of the current frame based on the point cloud state in the voxel grid and a mixed voxel threshold, and updating the dense global ground point cloud data, wherein the mixed voxel threshold is a threshold used to determine whether the number of ground points in the mixed voxel exceeds a preset value;
[0010] Projecting the static obstacle point cloud data of each frame into the global coordinate system, and generating dense static obstacle point cloud data by superimposing and checking the consistency of multiple frames of data;
[0011] Based on the updated dense global ground point cloud data, the misclassified ground points in the preliminary dynamic point cloud data are eliminated through geometric constraints or distance thresholds to obtain dynamic obstacle point cloud data. The dense static obstacle point cloud data of the current frame is then merged with the dynamic obstacle point cloud data to output the comprehensive obstacle point cloud data of the current frame.
[0012] Based on the updated dense global ground point cloud data and the comprehensive obstacle point cloud data of the current frame, in the BEV view, with the vehicle origin as the center, a ray scanning algorithm is used to detect the nearest obstacle point in 360 directions of the complete obstacle point cloud data, generate a closed and continuous drivable area boundary, and output it to the user interaction interface.
[0013] Furthermore, the step of acquiring a continuous frame point cloud data stream collected by a multi-line laser radar and synchronously acquiring continuous frame positioning data aligned with the timestamp of each frame of point cloud data includes:
[0014] Multi-line laser radar collects continuous frame point cloud data of the 360-degree environment around the vehicle in real time, with each frame containing at least 100,000 3D points;
[0015] The positioning data and point cloud data are time-synchronized and calibrated, with the timestamp alignment error less than 5ms. A global high-precision map is constructed based on GPS, IMU and point cloud data to generate fused positioning data.
[0016] Furthermore, the step of dividing the point cloud data stream by combining a road surface segmentation algorithm and outputting ground point cloud data and non-ground point cloud data includes:
[0017] Using the RANSAC algorithm to perform initial plane fitting on the pre-processed point cloud data stream to extract candidate ground point cloud data;
[0018] Input the candidate ground point cloud data into the Patchwork++ algorithm, perform secondary screening based on point cloud distribution density and curvature, and output ground point cloud data with a confidence level higher than 90%;
[0019] The remaining point cloud data are marked as non-ground point cloud data including obstacles and noise.
[0020] 5. Furthermore, the step of separating preliminary dynamic point cloud data and preliminary static point cloud data in the non-ground point cloud data based on the positioning data and performing noise removal on the preliminary static point cloud includes:
[0021] Based on the continuous frame positioning data, the motion vectors of all points in the non-ground point cloud data are calculated by an optical flow method or an inter-frame matching algorithm, and a preliminary dynamic point cloud that is inconsistent with the vehicle's motion direction and a preliminary static point cloud that is consistent with the vehicle's motion direction are separated;
[0022] Clustering the preliminary static point cloud using the KNN algorithm, and removing isolated noise points with less than 5 points in the cluster;
[0023] Based on the point cloud density and spatial distribution characteristics, the preliminary dynamic point cloud data is clustered twice to eliminate noise point clusters with a density lower than a preset threshold.
[0024] Furthermore, the step of projecting each frame of ground point cloud data into a global coordinate system, merging multiple frames of data to fill the driving occlusion area, and generating dense global ground point cloud data includes:
[0025] Project each frame of ground point cloud data into a unified global coordinate system according to the corresponding positioning data;
[0026] The voxel interpolation algorithm is used to fuse multiple frames of ground point cloud data, with a voxel resolution of 0.1m*0.1m*0.05m;
[0027] Through the Poisson surface reconstruction algorithm, the missing point cloud areas caused by the sensor acquisition blind spots are filled to generate complete dense global ground point cloud data.
[0028] Furthermore, the steps of dividing the preliminary static point cloud data and the ground point cloud data into voxel grids according to the XY plane, extracting the static obstacle point cloud data of the current frame according to the point cloud state and the mixed voxel threshold in the voxel grid, and updating the dense global ground point cloud data include:
[0029] Divide the ground point cloud data of the current frame and the preliminary static point cloud data into voxel grids with a side length of 0.5m according to the XY plane;
[0030] Classify the status of each voxel in the voxel grid. If the voxel contains only ground point cloud data, it is marked as a ground-only voxel. If the voxel contains only non-ground point cloud data, it is marked as other-only voxel. If the voxel contains both ground point cloud data and non-ground point cloud data, it is marked as a mixed voxel.
[0031] Count the number of ground points within the mixed voxel. If the number of ground points is greater than the preset threshold, calculate the Euclidean distance from the non-ground point to the nearest ground point. If the distance is ≤ 0.2m, classify the corresponding non-ground point cloud data into the ground point cloud data. Otherwise, mark it as static obstacle point cloud data.
[0032] If the number of ground points is less than or equal to the preset threshold, the mixed voxel is reclassified as only other voxels, and all non-ground point cloud data within the mixed voxel is marked as static obstacle point cloud data;
[0033] Based on the processing results of mixed voxels, the newly added ground point cloud data is merged into the dense global ground point cloud data;
[0034] Starting from the ground-only voxels and the processed mixed voxels, a region growing algorithm is used to expand outward with a step size of 1.0m, and the point cloud data of the neighboring voxels that meet the ground features are added to the dense global ground point cloud data;
[0035] Based on the expansion path of the region growing algorithm, secondary classification is performed on the non-ground point cloud data in the adjacent other voxels and mixed voxels, and the point cloud data that meets the ground geometric constraint characteristics is classified as ground point cloud data, and the remaining point cloud data is marked as static obstacle point cloud data;
[0036] A spatial connectivity check is performed on all the marked static obstacle point cloud data, isolated point clusters are removed, and the distribution range of the static obstacle point cloud is updated.
[0037] Furthermore, the step of projecting the static obstacle point cloud data of each frame into a global coordinate system and generating dense static obstacle point cloud data by superimposing and checking the consistency of multiple frames of data includes:
[0038] Project the static obstacle point cloud data of each frame into the global coordinate system and record the timestamp;
[0039] The multi-frame point cloud superposition and mean filtering algorithm are used to fuse the static obstacle point cloud data at the same spatial position;
[0040] The spatial consistency check is used to eliminate false detection points caused by residual dynamic obstacles or sensor noise, and generate dense static obstacle point cloud data in the global coordinate system.
[0041] Furthermore, the step of eliminating misclassified ground points in the preliminary dynamic point cloud data by geometric constraints or distance thresholds based on the updated dense global ground point cloud data to obtain dynamic obstacle point cloud data includes:
[0042] Based on the updated dense global ground point cloud data, the preliminary dynamic point cloud data is collectively verified, the vertical distance between each dynamic point and the ground plane is calculated, and misclassified ground points with a distance of ≤ 0.15m are eliminated. The remaining dynamic points after elimination are plane-fitted, and point cloud clusters that meet the ground geometric characteristics are eliminated;
[0043] Through the time continuity test, the instantaneous noise points that do not appear repeatedly in three consecutive frames are eliminated, and the verified dynamic obstacle point cloud data is output.
[0044] Furthermore, the step of merging the dense static obstacle point cloud data of the current frame with the dynamic obstacle point cloud data to output the comprehensive obstacle point cloud data of the current frame includes:
[0045] Perform timestamp alignment on the dynamic obstacle point cloud data and compensate for the dynamic point cloud pose offset error caused by the vehicle's motion according to the vehicle's motion trajectory;
[0046] Based on the motion trend of the dynamic obstacle point cloud data in adjacent frames, the missing frames in the time series are filled using the cubic spline interpolation algorithm;
[0047] According to the spatial coordinates, the dense static obstacle point cloud data of the current frame is directly superimposed with the dynamic obstacle point cloud data to output the comprehensive obstacle point cloud data of the current frame.
[0048] Furthermore, the step of detecting the nearest obstacle point in 360-degree directions of the complete obstacle point cloud data using a ray scanning algorithm based on the updated dense global ground point cloud data and the current frame integrated obstacle point cloud data with the vehicle origin as the center in the BEV view, generating a closed and continuous drivable area boundary, and outputting it to the user interaction interface includes:
[0049] In the BEV view, with the origin of the vehicle as the center, rays are emitted in 360-degree directions with an angular resolution of 0.5°;
[0050] According to the point cloud source frame, the comprehensive obstacle point cloud data of the current frame is divided into multiple clusters, and each cluster of point cloud data is divided into subclusters according to the number of laser radar rings;
[0051] Sort the points in each sub-cluster by horizontal angle, segment them according to the distance between adjacent points, and perform least square curve fitting on each segment of the point cloud to generate the obstacle line on the BEV plane;
[0052] Detect the intersection of each ray and the obstacle line, and give priority to recording the closest intersection;
[0053] If no intersection is detected, additional edge points with a sudden change in distance from the updated dense global ground point cloud data are detected;
[0054] Record the polar coordinates of all nearest intersection points and edge points, and generate a smooth and closed drivable area boundary through B-spline curve fitting;
[0055] The boundary of the drivable area is superimposed on a high-precision map, and the drivable area is displayed in real time through a user interaction interface.
[0056] The method for automatically marking the boundaries of the BEV spatial drivable area based on point cloud provided by the present invention has the following beneficial effects:
[0057] The present invention separates obstacles based on the geometric features and dynamic characteristics of point clouds, breaking away from the category limitations of traditional rectangular frames. It can detect obstacles of any shape (such as fallen trees and irregular roadblocks), reducing the rate of missed obstacle detection. It generates a dense global map by fusing multi-frame point clouds and automatically extracts drivable boundaries in combination with ray scanning, improving annotation efficiency and supporting real-time updates. The present invention also adapts to complex environments such as cities, highways, and off-road vehicles through dynamic threshold adjustment (such as voxel ground ratio and noise rejection density) and semantic filling technology, improving the filling rate of occluded areas, and eliminating the need for manual labeling. Through self-calibration and spatiotemporal filtering of multi-sensor data, the obstacle position error is less than 0.1 meters, meeting the centimeter-level positioning requirements of L4 autonomous driving. BRIEF DESCRIPTION OF THE DRAWINGS
[0058] Figure 1 1 is a flow chart of a method for automatically marking the boundary of a BEV spatial drivable area based on point cloud in one embodiment of the present invention; DETAILED DESCRIPTION
[0059] In order to make the purpose, technical solutions and advantages of the present invention more clearly understood, the present invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not intended to limit the present invention.
[0060] Reference Figure 1 , which is a flow chart of a method for automatically labeling the boundary of a BEV's drivable area based on point cloud proposed by the present invention, comprising the following steps:
[0061] S1, obtaining a continuous frame point cloud data stream collected by a multi-line laser radar, wherein each frame of the point cloud data stream contains omnidirectional three-dimensional environmental information around the vehicle, and synchronously obtaining continuous frame positioning data aligned with the timestamp of each frame of the point cloud data;
[0062] S2, dividing the point cloud data stream by combining a road surface segmentation algorithm, and outputting ground point cloud data and non-ground point cloud data;
[0063] S3, separating preliminary dynamic point cloud data and preliminary static point cloud data in the non-ground point cloud data based on the positioning data, and performing noise removal on the preliminary static point cloud;
[0064] S4, projecting the ground point cloud data of each frame into the global coordinate system, merging multiple frames of data to fill the driving occlusion area, and generating dense global ground point cloud data;
[0065] S5, dividing the preliminary static point cloud data and the ground point cloud data into voxel grids according to the XY plane, extracting the static obstacle point cloud data of the current frame according to the point cloud state in the voxel grid and the mixed voxel threshold, and updating the dense global ground point cloud data, wherein the mixed voxel threshold is a threshold used to determine whether the number of ground points in the mixed voxel exceeds a preset value;
[0066] S6, projecting the static obstacle point cloud data of each frame into a global coordinate system, and generating dense static obstacle point cloud data by superimposing and checking the consistency of multiple frames of data;
[0067] S7, based on the updated dense global ground point cloud data, remove misclassified ground points in the preliminary dynamic point cloud data through geometric constraints or distance thresholds to obtain dynamic obstacle point cloud data, and merge the dense static obstacle point cloud data of the current frame with the dynamic obstacle point cloud data to output the comprehensive obstacle point cloud data of the current frame;
[0068] S8, based on the updated dense global ground point cloud data and the current frame comprehensive obstacle point cloud data, in the BEV view, with the vehicle origin as the center, detect the nearest obstacle point in 360 directions of the complete obstacle point cloud data through a ray scanning algorithm, generate a closed and continuous drivable area boundary, and output it to the user interaction interface.
[0069] As described in step S1 above, multiple laser emitters rotate at high speed to scan the surrounding environment, generating high-precision three-dimensional point cloud data. Since each frame of the point cloud contains at least 100,000 three-dimensional points, the data is rich and detailed, capturing important features in the environment and providing high-quality information for subsequent analysis and processing. While collecting continuous frames of point cloud data, the system also needs to synchronously obtain continuous frames of positioning data aligned with the timestamp of each frame of the point cloud data. Positioning data typically includes GPS information (latitude and longitude coordinates) and IMU (inertial measurement unit) data (such as acceleration and angular velocity). The positioning data and point cloud data are time-synchronized and calibrated to ensure that the timestamp alignment error is less than 5 milliseconds. High-precision time synchronization is a key step in ensuring that each frame of point cloud data is consistent with its corresponding positioning information. By fusing GPS, IMU, and point cloud data, a global high-precision map is constructed, integrating multi-source data into a high-precision, comprehensive environmental model. The fused positioning data not only provides spatial location accuracy but also provides a reliable foundation for subsequent point cloud processing and analysis, such as for applications such as autonomous driving and environmental perception. Step S1 ensures the accuracy and completeness of point cloud data and positioning information, laying the foundation for further data processing, analysis, and application, helping the system to better understand and respond to the surrounding environment and achieve efficient decision-making and navigation.
[0070] As described in step S2 above, the RANSAC and Patchwork++ algorithms are used to segment the ground and non-ground point clouds. The number of RANSAC iterations is adaptively adjusted based on the point cloud density, for example, 500 iterations for sparse scenes (such as highways) and 1000 iterations for dense scenes (such as urban roads). The inlier threshold is set to 1.5 times the point cloud density to avoid overfitting or underfitting. Point clouds in high curvature areas (such as speed bumps and manhole covers) are given a lower weight (curvature weight factor α = 0.3) to reduce their priority in ground segmentation and reduce misclassification.
[0071] As described in step S3 above, based on the continuous frame positioning data, the motion vectors of all points in the non-ground point cloud data are calculated using the optical flow method or the inter-frame matching algorithm. The key to this process is to identify and separate preliminary dynamic point clouds that are inconsistent with the vehicle's motion direction, and to identify point clouds with consistent motion directions as preliminary static point clouds. The optical flow method effectively captures object motion changes by analyzing feature points in continuous video frames, while the inter-frame matching algorithm tracks point motion by comparing point cloud differences between adjacent frames. Noise removal is performed on the preliminary static point cloud data. The preliminary static point cloud is clustered using the KNN algorithm, removing isolated noise points with fewer than 5 points in the cluster. The KNN algorithm determines similarity by calculating the distance between points, thereby clustering similar points together, effectively improving the quality of the point cloud data and preventing interference from individual noise points in subsequent processing. Based on point cloud density and spatial distribution characteristics, the preliminary dynamic point cloud data is subjected to secondary clustering to further remove noise point clusters with a density below a preset threshold. Motion vectors calculated using the optical flow method are scored for confidence (based on the residual matching of point clouds between adjacent frames), and outliers with a confidence score < 0.8 (such as raindrops and dust particles) are removed. The KNN clustering threshold is adjusted based on the dynamics of the scene. For example, in congested scenes (with many dynamic objects), the minimum number of points is set to 8, and in open scenes, the minimum number of points is set to 3. This balances noise removal and object retention, reduces the false detection rate of dynamic point clouds, and reduces the noise of static point clouds.
[0072] As described in step S4 above, multiple frames of ground point clouds are projected into the global coordinate system and fused to fill the occluded areas. A hierarchical voxel strategy is used, with coarse-grained voxels (0.2m 3 ) Quickly fill large blind areas, fine-grained voxels (0.05m 3 ) optimizes local details, balancing computational efficiency and accuracy. It integrates lightweight semantic segmentation models (such as PointNet) to identify the semantic categories of occluded areas (such as asphalt pavement and grass), prioritizing point clouds that match ground characteristics to improve blind spot filling speed and semantic consistency.
[0073] As described in step S5 above, the voxel grid is divided according to the XY plane, the mixed voxels are processed, and the ground point cloud is updated. The ground point ratio threshold is adaptively adjusted according to the complexity of the scene, for example, it is set to 40% in the curved area and 60% in the straight area to avoid misjudgment caused by fixed thresholds. The ground growth direction is restricted to the main direction of vehicle travel (±30° fan-shaped area) to prevent the lateral non-road areas (such as green belts) from being mistakenly included. Region growing expansion is performed starting from only ground voxels and processed mixed voxels. In this stage, the region growing algorithm is first used to expand outward from the only ground voxels and processed mixed voxels as the starting point, with a step size of 1.0 meter. The region growing algorithm is a technique commonly used in image processing and point cloud processing. Its basic idea is to start from one or more seed points and gradually aggregate neighboring points that meet specific characteristics into regions. The expansion process is to supplement the point cloud data that meets the ground characteristics in the neighboring voxels to the dense global ground point cloud data, thereby optimizing and enhancing the density of the ground point cloud to achieve a more comprehensive ground representation. Secondary classification based on the expansion path: After completing the region growing expansion, the algorithm's expansion path is used to perform secondary classification on the non-ground point cloud data in the adjacent other voxels and mixed voxels. Point cloud data that meets the ground geometric constraint characteristics are classified as ground point clouds, while the remaining point cloud data are marked as static obstacle point cloud data. This process uses geometric constraint characteristics (such as planarity, continuity, etc.) to ensure the accuracy of classification so that the ground point cloud and the static obstacle point cloud can be effectively distinguished. Finally, a spatial connectivity check is performed on all marked static obstacle point cloud data to eliminate isolated point clusters. Isolated point clusters refer to sets of points that are independently distributed in space and have no obvious connection with other point clouds. These points may be noise or unnecessary information caused by false detection. Through this step, the distribution range of the static obstacle point cloud is updated to ensure that the final data is cleaner and more accurate, which can be effectively used for subsequent obstacle detection, navigation, and environmental perception. Through the processing of these steps, more accurate and dense ground point cloud data and clear static obstacle point cloud data are effectively constructed, providing a solid data foundation for subsequent analysis and applications (such as autonomous driving, robot navigation, etc.).
[0074] As described in step S6 above, multiple frames of static point clouds are projected into the global coordinate system and fused to generate a dense static obstacle point cloud. The point cloud of static obstacles at the same location is time-series filtered to predict their positions and correct for jitter, suppressing drift caused by sensor noise or residual dynamic objects. The height variance of the point cloud at the same location is calculated, and outliers with variances greater than 0.1m (such as cargo on top of temporarily parked vehicles) are removed. This improves the stability of static obstacle positions and reduces false detections.
[0075] As described in step S7 above, based on geometric constraints and time continuity tests, misclassified ground points are eliminated. Combining the vehicle's motion trajectory with the historical dynamic point positions, the next frame position is predicted through linear regression, and noise points that deviate from the predicted trajectory by more than 0.5m are eliminated. Combine the point cloud reflection intensity (such as metal reflectivity > 0.8) and geometric features (plane fitting residual < 0.05m) to distinguish dynamic obstacles from reflective interference (such as accumulated water). Improve the continuity of dynamic obstacle trajectories and suppress reflective interference through S7. Merge the static and dynamic obstacle point clouds of the current frame and output a comprehensive obstacle point cloud. Based on the IMU angular velocity and acceleration data, compensate for the deformation of the dynamic point cloud caused by sharp turns or braking of the vehicle to ensure spatiotemporal consistency. For dynamic point clouds that are missing due to occlusion, use forward (historical frames) and backward (future frames) linear interpolation to restore the complete trajectory. Reduce the dynamic obstacle trajectory breakage rate through S8 and improve the occlusion recovery accuracy.
[0076] As described in step S8 above, in the bird's-eye view (BEV view), rays are emitted in a 360-degree direction with the vehicle origin as the center, with an angular resolution of 0.5°. High-resolution ray scanning more accurately detects obstacles in the surrounding environment, ensuring that the system can fully cover the 360-degree field of view, thereby obtaining a large amount of effective information. When processing the comprehensive obstacle point cloud data of the current frame, the point cloud is divided into multiple clusters based on the source frame, and each cluster of point cloud data is further divided into subclusters based on the number of lidar rings, structuring the point cloud data for subsequent processing. By dividing into clusters and subclusters, the system can more clearly manage and analyze point cloud data and improve processing efficiency. For each subcluster, the points are sorted according to their horizontal angle and segmented by the distance between adjacent points. Subsequently, the least squares curve fitting technique is applied to each segment of the point cloud to generate obstacle lines on the BEV plane. This fitting technique can effectively depict the shape and position of the obstacle, making subsequent boundary generation more accurate. At this stage, the intersection between each ray and the generated obstacle line is detected, and the nearest intersection is recorded first. If no intersection is detected for some rays, the edge points with sudden changes in distance from the updated dense global ground point cloud data are supplemented for detection to ensure that even in a complex environment, the system can obtain key information as much as possible and provide a basis for subsequent decision-making. The polar coordinate information of all the nearest intersections and edge points is recorded, and a smooth and closed drivable area boundary is generated through B-spline curve fitting to ensure that the generated boundary is not only smooth but also conforms to the kinematic constraints of the vehicle, such as the minimum turning radius constraint (for example, 6 meters), thereby enhancing path safety and reducing the time consumption of boundary generation. Finally, the generated drivable area boundary is superimposed on the high-precision map, and the drivable area is displayed in real time through the user interaction interface. Through step S8, the system can efficiently and accurately generate the drivable area boundary, make full use of the surrounding environment information, and improve the safety and reliability in autonomous driving or navigation scenarios.
[0077] In one embodiment, an autonomous vehicle travels at 30 km / h on an urban road. A 128-line lidar mounted on the vehicle's roof collects 3D point cloud data of the surrounding environment at a frequency of 10 frames per second, with each frame containing approximately 150,000 points and covering a range of 80 meters. A synchronous integrated navigation system (GPS + IMU) outputs high-precision positioning data at a frequency of 200 Hz. Using a dynamic timestamp interpolation algorithm, the time synchronization error between the point cloud and positioning data is controlled within 3 milliseconds, ensuring spatiotemporal consistency in subsequent processing.
[0078] When the vehicle approaches an intersection, the LiDAR detects a temporary construction area 30 meters ahead, multiple traffic cones on the ground, a stationary delivery truck in the right lane, and a pedestrian crossing the road on the left. The system first preprocesses the original point cloud: it uses the RANSAC algorithm to quickly fit the ground plane and extract candidate ground points. The ground fitting formula is:
[0079]
[0080] Where n is the number of point clouds, (x_i, y_i) are the point cloud coordinates, a, b, and c are the plane parameters, and D_ground represents the sum of the distances from the point to the plane. The Patchwork++ algorithm, combined with curvature analysis, then removes the undulating point clouds around traffic cones from the ground points. The final output is a ground point cloud with a confidence level above 95%. The remaining point clouds are marked as non-ground points, including pedestrians, vehicles, and construction obstacles.
[0081] In the dynamic and static separation stage, the system calculates the motion vector of each point in the non-ground point cloud based on the optical flow method. The optical flow velocity calculation formula is:
[0082]
[0083] Where p_t represents the point cloud position in the current frame, p_{t-1} represents the point cloud position in the previous frame, and Δt represents the time interval. The pedestrian's point cloud's direction of motion deviated from the ego vehicle's trajectory and was identified as a dynamic obstacle. The stationary delivery truck's point cloud was classified as a preliminary static point cloud. KNN clustering was used to remove isolated noise points with fewer than 8 points, and the clustering threshold was adjusted based on the complexity of the dynamic scene. Traffic cones in the construction area were misclassified as noise during dynamic analysis due to their small size. However, through subsequent multi-frame overlay and consistency verification of the static point clouds, accurate reconstruction was ultimately achieved.
[0084] When generating dense global ground point cloud, multiple frames of ground data are projected into the global coordinate system and interpolated by layered voxels (coarse granularity of 0.2 meters). 3 Fill blind spots, granularity 0.05 meters 3Optimize details) to generate a continuous ground model, and the multi-frame point cloud fusion weight calculation formula is:
[0085]
[0086] Among them, m is the number of frames, w_k is the weight of each frame, x is the point cloud coordinate, μ_k is the mean of each frame, and σ_k is the variance parameter. For areas blocked by express trucks, the system prioritizes filling in semantic information (such as asphalt pavement texture features) to ensure the integrity of the ground model. In the voxel grid division stage, the mixed voxels around the traffic cones (45% of the ground points) are judged by the Euclidean distance threshold (≤0.15 meters), and the voxel classification probability calculation formula is:
[0087]
[0088] Where Nground is the number of ground points within a voxel, N_total is the total number of points within a voxel, d_min is the minimum distance to the ground, and σ is the distance threshold parameter. Points close to the ground are classified as ground points, while the rest are marked as static obstacles. A region growing algorithm is used to expand the ground region along the main direction of vehicle travel (a ±30° fan-shaped area) to avoid including the sidewalk edge. After multi-frame fusion and Kalman filter smoothing, the static obstacle point cloud achieves a position drift error of less than 0.08 meters for traffic cones. The dynamic pedestrian point cloud significantly improves trajectory continuity through geometric constraints (vertical distance > 0.15 meters) and temporal continuity checks (if not present for three consecutive frames, the point cloud is eliminated). Finally, the static obstacle point clouds (traffic cones, trucks) and dynamic obstacle point clouds (pedestrians) in the current frame are superimposed according to their spatial coordinates, and missing frames in the time series are filled using a cubic spline interpolation algorithm to output a real-time obstacle map.
[0089] In the BEV view, the system emits rays at a resolution of 0.5° and detects a pedestrian 5 meters to the left, a traffic cone 20 meters ahead, and a stationary truck 8 meters to the right. For areas blocked by the truck, ray scanning is used to detect sudden edges (such as curbs) in the global ground point cloud. A smooth boundary is generated using B-spline curve fitting. The minimum turning radius is constrained to 6 meters. The minimum turning radius is calculated as follows:
[0090]
[0091] Where v is the vehicle speed, g is the acceleration due to gravity, and θ_max is the maximum steering angle, ensuring the path complies with the vehicle's steering capabilities. The boundaries of the drivable area are displayed in real time on the vehicle's interactive interface and transmitted to the planning module. This user interface displays the drivable area in real time, guiding the vehicle to safely circumvent construction areas and pedestrians.
[0092] In summary, the present invention obtains a continuous frame point cloud data stream collected by a multi-line laser radar, and each frame of point cloud data in the point cloud data stream contains omnidirectional three-dimensional environmental information around the vehicle, and synchronously obtains continuous frame positioning data aligned with the timestamp of each frame of point cloud data; divides the point cloud data stream by combining a road segmentation algorithm, and outputs ground point cloud data and non-ground point cloud data; separates preliminary dynamic point cloud data and preliminary static point cloud data in the non-ground point cloud data based on the positioning data, and performs noise removal on the preliminary static point cloud; projects each frame of ground point cloud data into a global coordinate system, merges multiple frames of data to fill in the driving occlusion area, and generates dense global ground point cloud data; divides the preliminary static point cloud data and the ground point cloud data into voxel grids according to the XY plane, extracts the static obstacle point cloud data of the current frame according to the point cloud status and the mixed voxel threshold in the voxel grid, and updates the dense global ground point cloud data, wherein the mixed voxel threshold is used to judge whether the number of ground points in the mixed voxel exceeds a threshold of a preset value; projecting the static obstacle point cloud data of each frame into a global coordinate system, and generating dense static obstacle point cloud data by superimposing and checking multiple frames of data for consistency; based on the updated dense global ground point cloud data, eliminating misclassified ground points in the preliminary dynamic point cloud data by geometric constraints or distance thresholds to obtain dynamic obstacle point cloud data, and merging the dense static obstacle point cloud data of the current frame with the dynamic obstacle point cloud data to output comprehensive obstacle point cloud data of the current frame; based on the updated dense global ground point cloud data and the comprehensive obstacle point cloud data of the current frame, detecting the nearest obstacle point in 360 directions of the complete obstacle point cloud data with the origin of the vehicle as the center in the BEV view by a ray scanning algorithm, generating a closed and continuous drivable area boundary, and outputting it to a user interaction interface, so as to achieve high-precision automatic annotation of the three-dimensional drivable area boundary around the autonomous driving vehicle, comprehensively covering obstacles of any shape and reducing manual annotation costs, thereby improving driving safety and scene generalization capabilities.
[0093] Those skilled in the art will appreciate that all or part of the processes in the above-described method embodiments can be implemented by instructing the relevant hardware through a computer program. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the above-described method embodiments. Among them, any reference to memory, storage, database, or other media provided by the present invention and used in the embodiments can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), double-speed SDRAM (SSRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct RAM bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM.
[0094] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, apparatus, article, or method comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, apparatus, article, or method. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, apparatus, article, or method comprising the element.
[0095] The above description is only a preferred embodiment of the present invention and does not limit the patent scope of the present invention. Any equivalent structure or equivalent process transformation made by using the contents of the present invention description and drawings, or directly or indirectly applied in other related technical fields, are also included in the patent protection scope of the present invention.
Claims
1. A method for automatically marking the boundaries of BEV spatial drivable areas based on point cloud, characterized in that: The following steps are involved: Acquire a continuous frame point cloud data stream collected by a multi-line laser radar, where each frame of the point cloud data stream contains omnidirectional three-dimensional environmental information around the vehicle, and simultaneously acquire continuous frame positioning data aligned with the timestamp of each frame of the point cloud data; Dividing the point cloud data stream by combining a road surface segmentation algorithm to output ground point cloud data and non-ground point cloud data; Separating preliminary dynamic point cloud data and preliminary static point cloud data in the non-ground point cloud data based on the positioning data, and performing noise removal on the preliminary static point cloud; Project each frame of ground point cloud data to the global coordinate system, merge multiple frames of data to fill the driving occlusion area, and generate dense global ground point cloud data; Dividing the preliminary static point cloud data and the ground point cloud data into voxel grids according to the XY plane, extracting the static obstacle point cloud data of the current frame based on the point cloud state in the voxel grid and a mixed voxel threshold, and updating the dense global ground point cloud data, wherein the mixed voxel threshold is a threshold used to determine whether the number of ground points in the mixed voxel exceeds a preset value; Projecting the static obstacle point cloud data of each frame into the global coordinate system, and generating dense static obstacle point cloud data by superimposing and checking the consistency of multiple frames of data; Based on the updated dense global ground point cloud data, the misclassified ground points in the preliminary dynamic point cloud data are eliminated through geometric constraints or distance thresholds to obtain dynamic obstacle point cloud data. The dense static obstacle point cloud data of the current frame is then merged with the dynamic obstacle point cloud data to output the comprehensive obstacle point cloud data of the current frame. Based on the updated dense global ground point cloud data and the comprehensive obstacle point cloud data of the current frame, in the BEV view, with the vehicle origin as the center, a ray scanning algorithm is used to detect the nearest obstacle point in 360 directions of the complete obstacle point cloud data, generate a closed and continuous drivable area boundary, and output it to the user interaction interface.
2. The method for automatically marking the boundary of the BEV space drivable area based on point cloud according to claim 1, characterized in that: The step of obtaining a continuous frame point cloud data stream collected by a multi-line laser radar and synchronously obtaining continuous frame positioning data aligned with the timestamp of each frame of point cloud data includes: Multi-line laser radar collects continuous frame point cloud data of the 360-degree environment around the vehicle in real time, with each frame containing at least 100,000 3D points; The positioning data and point cloud data are time-synchronized and calibrated, with the timestamp alignment error less than 5ms. A global high-precision map is constructed based on GPS, IMU and point cloud data to generate fused positioning data.
3. The method for automatically marking the boundary of the BEV space drivable area based on point cloud according to claim 1, characterized in that: The step of dividing the point cloud data stream by combining the road surface segmentation algorithm and outputting ground point cloud data and non-ground point cloud data includes: Using the RANSAC algorithm to perform initial plane fitting on the pre-processed point cloud data stream to extract candidate ground point cloud data; Input the candidate ground point cloud data into the Patchwork++ algorithm, perform secondary screening based on point cloud distribution density and curvature, and output ground point cloud data with a confidence level higher than 90%; The remaining point cloud data are marked as non-ground point cloud data including obstacles and noise.
4. The method for automatically labeling the boundary of the BEV space drivable area based on point cloud according to claim 1, characterized in that: The step of separating preliminary dynamic point cloud data and preliminary static point cloud data in the non-ground point cloud data based on the positioning data, and performing noise removal on the preliminary static point cloud, comprises: Based on the continuous frame positioning data, the motion vectors of all points in the non-ground point cloud data are calculated by an optical flow method or an inter-frame matching algorithm, and a preliminary dynamic point cloud that is inconsistent with the vehicle's motion direction and a preliminary static point cloud that is consistent with the vehicle's motion direction are separated; Clustering the preliminary static point cloud using the KNN algorithm, and removing isolated noise points with less than 5 points in the cluster; Based on the point cloud density and spatial distribution characteristics, the preliminary dynamic point cloud data is clustered twice to eliminate noise point clusters with a density lower than a preset threshold.
5. The method for automatically marking the boundary of the BEV space drivable area based on point cloud according to claim 1, characterized in that: The step of projecting each frame of ground point cloud data into a global coordinate system, merging multiple frames of data to fill the driving occlusion area, and generating dense global ground point cloud data includes: Project each frame of ground point cloud data into a unified global coordinate system according to the corresponding positioning data; The voxel interpolation algorithm is used to fuse multiple frames of ground point cloud data, with a voxel resolution of 0.1m*0.1m*0.05m; Through the Poisson surface reconstruction algorithm, the missing point cloud areas caused by the sensor acquisition blind spots are filled to generate complete dense global ground point cloud data.
6. The method for automatically marking the boundary of the BEV space drivable area based on point cloud according to claim 1, characterized in that: The step of dividing the preliminary static point cloud data and the ground point cloud data into voxel grids according to the XY plane, extracting the static obstacle point cloud data of the current frame according to the point cloud state and the mixed voxel threshold in the voxel grid, and updating the dense global ground point cloud data includes: Divide the ground point cloud data of the current frame and the preliminary static point cloud data into voxel grids with a side length of 0.5m according to the XY plane; Classify the status of each voxel in the voxel grid. If the voxel contains only ground point cloud data, it is marked as a ground-only voxel. If the voxel contains only non-ground point cloud data, it is marked as other-only voxel. If the voxel contains both ground point cloud data and non-ground point cloud data, it is marked as a mixed voxel. Count the number of ground points within the mixed voxel. If the number of ground points is greater than the preset threshold, calculate the Euclidean distance from the non-ground point to the nearest ground point. If the distance is ≤ 0.2m, classify the corresponding non-ground point cloud data into the ground point cloud data. Otherwise, mark it as static obstacle point cloud data. If the number of ground points is less than or equal to the preset threshold, the mixed voxel is reclassified as only other voxels, and all non-ground point cloud data within the mixed voxel is marked as static obstacle point cloud data; Based on the processing results of mixed voxels, the newly added ground point cloud data is merged into the dense global ground point cloud data; Starting from the ground-only voxels and the processed mixed voxels, a region growing algorithm is used to expand outward with a step size of 1.0m, and the point cloud data of the neighboring voxels that meet the ground features are added to the dense global ground point cloud data; Based on the expansion path of the region growing algorithm, secondary classification is performed on the non-ground point cloud data in the adjacent other voxels and mixed voxels, and the point cloud data that meets the ground geometric constraint characteristics is classified as ground point cloud data, and the remaining point cloud data is marked as static obstacle point cloud data; A spatial connectivity check is performed on all the marked static obstacle point cloud data, isolated point clusters are removed, and the distribution range of the static obstacle point cloud is updated.
7. The method for automatically marking the boundary of the BEV space drivable area based on point cloud according to claim 1, characterized in that: The step of projecting the static obstacle point cloud data of each frame into a global coordinate system and generating dense static obstacle point cloud data by superimposing and checking the consistency of multiple frames of data includes: Project the static obstacle point cloud data of each frame into the global coordinate system and record the timestamp; The multi-frame point cloud superposition and mean filtering algorithm are used to fuse the static obstacle point cloud data at the same spatial position; The spatial consistency check is used to eliminate false detection points caused by residual dynamic obstacles or sensor noise, and generate dense static obstacle point cloud data in the global coordinate system.
8. The method for automatically marking the boundary of the BEV drivable area based on point cloud according to claim 1, characterized in that: The step of eliminating misclassified ground points in the preliminary dynamic point cloud data by geometric constraints or distance thresholds based on the updated dense global ground point cloud data to obtain dynamic obstacle point cloud data includes: Based on the updated dense global ground point cloud data, the preliminary dynamic point cloud data is collectively verified, the vertical distance between each dynamic point and the ground plane is calculated, and misclassified ground points with a distance of ≤ 0.15m are eliminated. The remaining dynamic points after elimination are plane-fitted, and point cloud clusters that meet the ground geometric characteristics are eliminated; Through the time continuity test, the instantaneous noise points that do not appear repeatedly in three consecutive frames are eliminated, and the verified dynamic obstacle point cloud data is output.
9. The method for automatically marking the boundary of the BEV drivable area based on point cloud according to claim 1, characterized in that: The step of merging the dense static obstacle point cloud data of the current frame with the dynamic obstacle point cloud data to output the comprehensive obstacle point cloud data of the current frame includes: Perform timestamp alignment on the dynamic obstacle point cloud data and compensate for the dynamic point cloud pose offset error caused by the vehicle's motion according to the vehicle's motion trajectory; Based on the motion trend of the dynamic obstacle point cloud data in adjacent frames, the missing frames in the time series are filled using the cubic spline interpolation algorithm; According to the spatial coordinates, the dense static obstacle point cloud data of the current frame is directly superimposed with the dynamic obstacle point cloud data to output the comprehensive obstacle point cloud data of the current frame.
10. The method for automatically marking the boundary of the BEV drivable area based on point cloud according to claim 1, characterized in that: The step of detecting the nearest obstacle point in 360-degree directions of the complete obstacle point cloud data using a ray scanning algorithm based on the updated dense global ground point cloud data and the current frame comprehensive obstacle point cloud data with the vehicle origin as the center in the BEV view, generating a closed and continuous drivable area boundary, and outputting it to the user interaction interface includes: In the BEV view, with the origin of the vehicle as the center, rays are emitted in 360-degree directions with an angular resolution of 0.5°; According to the point cloud source frame, the comprehensive obstacle point cloud data of the current frame is divided into multiple clusters, and each cluster of point cloud data is divided into subclusters according to the number of laser radar rings; Sort the points in each sub-cluster by horizontal angle, segment them according to the distance between adjacent points, and perform least square curve fitting on each segment of the point cloud to generate the obstacle line on the BEV plane; Detect the intersection of each ray and the obstacle line, and give priority to recording the closest intersection; If no intersection is detected, additional edge points with a sudden change in distance from the updated dense global ground point cloud data are detected; Record the polar coordinates of all nearest intersection points and edge points, and generate a smooth and closed drivable area boundary through B-spline curve fitting; The boundary of the drivable area is superimposed on a high-precision map, and the drivable area is displayed in real time through a user interaction interface.
Citation Information
Cited By
Point cloud labeling method and device and deep learning model training method
CN120953999A
Method and system for encrypting road surface point cloud and medium
CN121438249A
Three-dimensional occupancy truth value automatic generation method based on time sequence radar point cloud
CN121640052A
Robust adaptive point cloud internal cavity detection method
CN122223032A