Real-time driving boundary generation method and vehicle
By processing point cloud data in real time and dividing it into online and offline grids, high-precision driving boundaries are generated, solving the problems of long map production cycles and high costs in autonomous driving systems, and achieving fast and accurate boundary generation and map updates.
Patent Information
- Application Number
- CN202511527626.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-10-23
- Publication Date
- 2026-01-02
AI Technical Summary
Existing autonomous driving systems rely on high-precision offline maps in dynamic environments, resulting in long map production cycles and high costs, making it difficult to adapt to scenarios with frequent road changes.
By processing point cloud data in real time, dynamically dividing online and offline grids, generating target driving boundaries, using online grids to update obstacle information in real time, and combining historical obstacle information from offline grids with vehicle driving trajectories, a high-precision driving boundary is generated.
It enables the rapid generation of highly reliable driving boundaries, meeting the needs of frequent road changes and high-precision map updates, shortening map update time, saving bandwidth usage and resource utilization, and improving generation speed and accuracy.
Smart Images

Figure CN121246848A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of smart mines, unmanned driving and vehicles, and particularly relates to a driving boundary real-time generation method and a vehicle. BACKGROUND
[0002] At present, the application of an unmanned driving system in a dynamic environment highly depends on an offline high-precision map drawn in advance. The map making process is complicated, with many links from data collection and processing to final vector drawing, resulting in a long production cycle and high cost, which is difficult to adapt to the scene of frequent road changes. SUMMARY
[0003] Therefore, the present application provides a driving boundary real-time generation method and a vehicle.
[0004] In a first aspect, an embodiment of the present application provides a driving boundary real-time generation method, which comprises: projecting a current frame of point clouds collected in a vehicle driving process to an online grid, and determining attribute information of the online grid, wherein the online grid represents a grid within a target distance of a position where the vehicle is located; determining an obstacle grid from the online grid based on the attribute information of the online grid; marking an online grid beyond the target distance of the position as an offline grid based on an updated position of the vehicle, wherein the offline grid represents a grid outside the target distance of the position where the vehicle is located; and generating a target driving boundary based on the obstacle grid in the offline grid and a driving track of the vehicle.
[0005] In a second aspect, an embodiment of the present application provides a driving boundary real-time generation device, which comprises: a projection module configured to project a current frame of point clouds collected in a vehicle driving process to an online grid, and determine attribute information of the online grid, wherein the online grid represents a grid within a target distance of a position where the vehicle is located; a determination module configured to determine an obstacle grid from the online grid based on the attribute information of the online grid; a marking module configured to mark an online grid beyond the target distance of the position as an offline grid based on an updated position of the vehicle, wherein the offline grid represents a grid outside the target distance of the position where the vehicle is located; and a generation module configured to generate a target driving boundary based on the obstacle grid in the offline grid and a driving track of the vehicle.
[0006] In a third aspect, an embodiment of the present application provides a vehicle, which comprises: a processor configured to execute the driving boundary real-time generation method of the first aspect; and a display device configured to display the target driving boundary generated by the processor.
[0007] In a fourth aspect, an embodiment of the present application provides a computer readable storage medium, which stores a computer program configured to execute the driving boundary real-time generation method of the first aspect.
[0008] In a fifth aspect, an embodiment of the present application provides a computer program product, which comprises instructions for causing a vehicle to implement the driving boundary real-time generation method of the first aspect when the instructions are executed on the vehicle.
[0009] The driving boundary real-time generation scheme provided by the present application effectively solves the problems of long map making period, high cost and difficulty in adapting to road changes of the traditional method by processing point cloud data in real time and constructing a grid map. By introducing a dynamic division and management mechanism of online grids and offline grids, the online grids are updated in real time according to vehicle perception data. When the online grids become offline grids, the obstacle information collection in the grids is completed. Then, the target driving boundary can be generated based on the stable obstacle information in the offline grids and the actual driving trajectory of the vehicle. Through the cooperation of online grids and offline grids, the target driving boundary can be output while the vehicle collects boundary information, which greatly improves the generation speed of boundary vectors and meets the updating needs of high-precision maps in scenarios where the road changes frequently and the updating time window of high-precision maps is extremely short. BRIEF DESCRIPTION OF DRAWINGS
[0010] The above and other objects, features and advantages of the present application will become more apparent from the following detailed description of embodiments of the present application, when taken in conjunction with the accompanying drawings. The drawings provided in the present application are used to provide further understanding of the embodiments of the present application, and constitute a part of the specification, and are used to explain the present application together with the embodiments of the present application, and do not constitute a limitation of the present application. In the drawings, the same reference numerals generally represent the same components or steps.
[0011] Figure 1 Fig. 1 shows a flowchart of a driving boundary real-time generation method provided by an embodiment of the present application.
[0012] Figure 2 Fig. 2 shows a schematic diagram of a grid map provided by an embodiment of the present application.
[0013] Figure 3 Fig. 3 shows a schematic diagram of boundary points before post-processing provided by an embodiment of the present application.
[0014] Figure 4 Fig. 4 shows a schematic diagram of boundary points after post-processing provided by an embodiment of the present application.
[0015] Figure 5 Fig. 5 shows a structural schematic diagram of a driving boundary real-time generation device provided by an embodiment of the present application.
[0016] Figure 6 Fig. 6 shows a structural schematic diagram of a vehicle provided by an embodiment of the present application. DETAILED DESCRIPTION
[0017] With reference to the drawings of the embodiments of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of the present application.
[0018] The realization and landing of the unmanned driving technology highly depend on the accurate and reliable perception and understanding of the surrounding environment of the vehicle. At present, the mainstream automatic driving system generally adopts a technical framework of high-precision prior map and real-time perception. In this framework, the high-precision map drawn in advance provides the vehicle with the reference information of the static environment such as lane lines, road edges and traffic signs. However, the production of the high-precision map is an extremely complex and long process.
[0019] Specifically, the standard production pipeline of the high-precision map generally includes: collecting original point cloud and image data by a professional collection vehicle and uploading to the cloud; using technologies such as simultaneous localization and mapping (SLAM) to perform point cloud mapping and splicing to form a large-scale offline point cloud map; then segmenting the point cloud to distinguish ground, vegetation, buildings, poles and other objects, and generating terrain on this basis; finally, based on the processed data, a drawing engineer manually identifies and draws key vector elements such as road boundaries. As can be seen, the entire mapping process not only has many technical links, but also heavily relies on manual intervention, resulting in a very long cycle from data collection to the online update of the final map product.
[0020] However, this mode of strong dependence on offline high-precision map has many defects when facing the frequent road changes in the real world. Especially in the mining field, as the mining progress changes continuously, the boundaries of the mining area and the dump area of the mine change rapidly, and it is necessary to quickly support the passage of unmanned vehicles, leaving very little time for high-precision map update.
[0021] Therefore, how to quickly generate a high-reliability driving boundary to meet the scenario of frequent road changes and a very short update time window of high-precision map has become a technical problem to be solved by the prior art.
[0022] Therefore, the present application is proposed, specifically, Figure 1 As shown in the figure, the method provided by an embodiment of the present application includes the following steps. Figure 1 As shown in the figure, the method provided by an embodiment of the present application includes the following steps.
[0023] Step S110, project the current frame point cloud collected in the vehicle driving process to the online grid, and determine the attribute information of the online grid.
[0024] Optionally, before performing step S110, a grid map covering the environment around the vehicle is constructed in advance. According to its relationship with the current position of the vehicle, the grid map is dynamically divided into two categories: Online grid: represents the grid within the target distance of the position where the vehicle is located, and is more specifically defined as the grid set within the target distance (m) range around the current trajectory position of the vehicle. The grids in this area are in an active state, and their attribute information (such as obstacle probability, height, etc.) will be updated in real time as new sensor data is input.
[0025] Offline grid: represents the grid outside the target distance of the position where the vehicle is located, and is defined as the grid set beyond the target distance (m) range behind the current trajectory position of the vehicle. The grids in this area are considered to have completed historical records, and their attribute information will be frozen and no longer updated with new data, mainly for subsequent driving trajectory analysis and boundary generation.
[0026] In addition, in order to establish the spatial reference system of the grid map, the origin coordinates of the grid layer need to be calculated. The origin coordinates are calculated by the current position (p_x, p_y) of the vehicle and the target distance m, for example, x_orin=p_x m; y_orin=p_y m. The origin (x_orin, y_orin) is the origin of the entire grid map coordinate system.
[0027] Further, the current frame point cloud is converted to the global coordinate system. Specifically, the current frame point cloud p_lidar collected by the laser radar during the driving of the vehicle is based on the laser radar coordinate system. In order to fuse it with the grid map, the current frame point cloud must be converted to the world coordinate system. Exemplarily, the conversion formula is as follows: p_w=T_lidar_2_world p_lidar. Wherein, the transformation matrix T_lidar_2_world is obtained by concatenating two transformation matrices, i.e. T_lidar_2_world=T_imu_2_world T lidar 2 imu. Wherein, T lidar 2 imu represents the rigid transformation matrix from the laser radar to the inertial measurement unit, which is a fixed parameter obtained by pre-calibration; T imu 2 world represents the transformation matrix from the inertial measurement unit to the world coordinate system, which is output in real time by the integrated navigation system and contains the accurate position and attitude of the vehicle in the global coordinate system. Through the above steps, each laser point p lidar is converted into a point p w (x, y, z) in the world coordinate system.
[0028] After obtaining the current frame point cloud in the world coordinate, it is projected into the grid map, and the row and column indexes of the grid where it is located are calculated. Exemplarily, the projection formula is as follows: dem x = (x x_orin) / dem_resolution; dem_y = (y y_orin) / dem_resolution. Wherein, (x, y) is the horizontal coordinate of the current frame point cloud in the world coordinate system, (x_orin, y_orin) is the origin coordinate of the grid map calculated in the foregoing, dem_resolution is the physical size of a single grid (for example, 0.1 meter per grid), (dem_x, dem_y) is the calculated grid coordinate (usually a floating point number) corresponding to the point. Then, dem_x and dem_y are rounded to obtain the row number and column number of the specific grid where the point cloud falls. Then, the attribute information of the grid is updated. For example, the number of point clouds is increased, the average height is updated, or the obstacle existence probability is calculated. Figure 2 A schematic diagram of a grid map provided by an embodiment of the application is shown. As Figure 2 shown, the attribute information of the red grid is ground, and the attribute information of the pink grid is a retaining wall.
[0029] In step S120, the obstacle grid is determined from the online grid based on the attribute information of the online grid.
[0030] The obstacle grid represents a grid whose attribute information meets a preset obstacle condition, which characterizes the space area occupied by the potential obstacles existing in the vehicle driving environment, and the preset obstacle condition is mainly determined according to the obstacle types conforming to the vehicle driving boundary and the dynamic obstacles such as pedestrians and vehicles commonly seen in the mining area, so as to accurately identify the obstacles as the vehicle driving boundary in the subsequent steps and generate the target driving boundary accordingly. Exemplarily, the obstacle condition is set based on the point cloud data features carried by the online grid, for distinguishing the grids representing non-obstacle regions such as ordinary ground, vegetation or cavities, and the grids representing obstacles such as vehicles, pedestrians, curbs, retaining walls and cone barrels.
[0031] Optionally, in some implementations, the attribute information of each online grid is first obtained. Exemplarily, the attribute information includes, but is not limited to, one or more of the average height of the grid, the point cloud density, the height variance, the reflection intensity. Subsequently, the attribute information of each online grid is compared with a preset obstacle determination condition. For example, if the average height of a grid is significantly higher than the ground elevation fitted by the surrounding grids, and the point cloud density is higher than a minimum density threshold, the grid is determined as an obstacle grid. For another example, in combination with the point cloud reflection intensity information, if the average reflection intensity feature of the point cloud in the grid matches the feature of a known obstacle (such as a vehicle metal surface), the grid can be determined as an obstacle grid. Finally, all online grids that meet the obstacle determination condition are marked, and an obstacle grid set is generated as the data basis for generating the driving boundary in the subsequent step. Before marking, the online grids can also be filtered to remove the online grids corresponding to pedestrians, vehicles, small obstacles, ruts, etc., and retain the online grids corresponding to the boundary obstacles (such as barriers, cone barrels, etc.) that can be used as the driving boundary of the vehicle, and then marked, so that the obtained obstacle grid set directly corresponds to the driving boundary, reducing the calculation difficulty in the subsequent step.
[0032] In step S130, based on the updated position of the vehicle, the online grids beyond the target distance from the position are marked as offline grids.
[0033] Optionally, in some implementations, the current position coordinates of the vehicle from the integrated navigation system are continuously received and updated. Subsequently, based on the origin of the grid calculated in the foregoing steps or based on the center coordinates of each grid, the Euclidean distance between the current all online grids and the latest vehicle position is calculated. Then, the calculated distance is compared with a preset target distance. Any online grid with a distance from the current position of the vehicle beyond the target distance will be automatically marked as offline. Once the grid is marked as offline, its attribute information will be frozen and will no longer participate in the subsequent real-time obstacle detection and map updating cycle, but the historical environment information recorded by it will be retained. This process is executed in a loop with each update of the position of the vehicle, so as to realize the synchronous evolution of the grid state and the vehicle motion trajectory.
[0034] In step S140, based on the obstacle grids in the offline grids and the driving trajectory of the vehicle, a target driving boundary is generated.
[0035] The obstacle grids in the offline grids refer to the grids that have been marked as offline in step S130 and determined as obstacles in step S120. These grids represent the obstacles perceived by the vehicle during the historical driving process and confirmed as static or historically existing, and their data state has been frozen, having high reliability and providing a reliable data basis for generating a stable driving boundary.
[0036] The target driving boundary refers to a virtual boundary line finally generated for updating into the high-precision map, which controls the driving of the vehicle in the region. The boundary defines a continuous and smooth drivable region channel, the inner side (close to the trajectory side) of which is a safe region, and the outer side is a no-entry region composed of historical obstacles.
[0037] Optionally, in some embodiments, taking the driving trajectory of the vehicle as the central reference line, searching and fitting are respectively performed to the left and right sides of the trajectory, thereby generating two target driving boundaries on the left and right sides. Specifically, for a plurality of key points on the trajectory, in the normal direction of each point, the nearest obstacle grid in the offline grid is searched outward, and these obstacle grids constitute a candidate point set of the driving boundary. Then, a curve fitting algorithm (such as spline interpolation, polynomial fitting or Bezier curve) is used to smoothly connect and fit these discrete boundary candidate points to form a continuous and regular boundary curve. During the fitting process, it is necessary to ensure that the generated boundary maintains a safe and reasonable lateral distance from the historical driving trajectory of the vehicle. Finally, the fitted target driving boundary is output.
[0038] The driving boundary real-time generation scheme provided by the present application effectively solves the problems of long map making period, high cost and difficulty in adapting to road changes of the traditional method by processing point cloud data in real time and constructing a grid map. By introducing a dynamic division and management mechanism of online grids and offline grids, the online grids are updated in real time according to the vehicle perception data. After the online grids become offline grids, the obstacle information in the grids is collected, and then the target driving boundary can be generated based on the stable obstacle information in the offline grids and the actual driving trajectory of the vehicle. Through the cooperation of online grids and offline grids, the target driving boundary can be generated in real time while the vehicle collects boundary information, greatly improving the generation speed of boundary vectors and meeting the updating needs of high-precision maps in scenarios where the road changes frequently and the updating time window of high-precision maps is extremely short.
[0039] On the other hand, the driving boundary generated by the present scheme can be directly uploaded. Compared with uploading original point cloud data, the data amount of the driving boundary in vector format is extremely small, greatly saving the bandwidth occupation, and the uploaded driving boundary can be directly updated into the high-precision map, saving the processes of uploading point cloud and other original data, point cloud mapping, point cloud segmentation, engineer drawing, etc., simplifying the generation process of the driving boundary, shortening the updating time of the high-precision map, and improving the resource utilization rate.
[0040] After the obstacles are perceived in real time through the online grid and the offline grid is marked, the present application further combines the historical obstacle information in the offline grid with the driving trajectory of the vehicle to generate a more accurate and stable target driving boundary, which is implemented as follows.
[0041] The obstacle grid includes a grid with a category attribute of a boundary obstacle, and the driving trajectory includes an offline trajectory, the offline trajectory representing a trajectory corresponding to a spatial range from which the vehicle has driven away and is no longer updated.
[0042] Specifically, the boundary obstacle refers to an obstacle grid, a category attribute of which is further refined to a specific obstacle constituting a driving boundary, such as a curb, a guardrail, a median strip, a retaining wall, a cone bucket, and the like, which are static objects having continuity and boundary indication. The offline trajectory refers to a part of a trajectory sequence in the process of driving of the vehicle, a spatial position of which has completely exceeded a current online processing range, and thus is archived and no longer updated with movement of the vehicle. It can be understood that the offline trajectory has stability and certainty, and provides a reliable reference for generation of the target driving boundary.
[0043] Further, a plurality of trajectory points are determined in the offline trajectory of the vehicle; a target line segment is obtained by extending a preset distance in a preset direction of each trajectory point from the trajectory point as a starting point, and sampling is performed in the target line segment; for each sampling point, if the sampling point is located in a grid with a category attribute of a boundary obstacle, the sampling point is determined as a boundary point; if all the sampling points in the target line segment are not located in the grid with the category attribute of the boundary obstacle, the boundary point is determined based on grids with a category attribute of ground into which the sampling points in the target line segment fall; and the target driving boundary is generated based on the determined boundary point.
[0044] The trajectory point refers to a discrete position point selected from the offline trajectory according to a certain rule (such as equal intervals), as a reference starting point for performing boundary search. The preset direction usually refers to a horizontal direction perpendicular to the tangent direction of the trajectory point to the left or right side. The preset distance defines a maximum range for boundary search starting from the trajectory point, thereby forming a target line segment with a specified length. The boundary point refers to a geometric point finally determined through sampling and judgment, for fitting the target driving boundary.
[0045] Optionally, in some implementations, in a driving trajectory preprocessing stage of the vehicle, the original driving trajectory is subjected to interpolation processing. For example, if the density of the trajectory points is required to be not less than 1 meter, new points are inserted between any two trajectory points with a distance of more than 1 meter through linear interpolation, to ensure that the driving trajectory has sufficient point density for subsequent calculation. Then, in a data classification stage of the driving trajectory, the trajectory points are divided according to the distance from the current position of the vehicle, for example, a trajectory segment with a distance of more than a target distance (such as 50 meters) from the current position of the vehicle is marked as an offline trajectory, and this part of data is frozen and used for boundary generation; and within the target distance range, it is considered as an online trajectory and kept updated.
[0046] Then, boundary point calculation is performed on the offline trajectory. Exemplarily, a sampling point on the offline trajectory is taken as a starting point For example, a line segment is emitted to the left side of the vehicle a° (e.g. 90° direction). Assuming that the line extends b meters to the left, and the sampling interval is c meters, the i-th sampling point is The calculation formula ; .
[0047] In the boundary point generation stage, these sampling points are traversed. For example, starting from the near end, the coordinates of each sampling point are first converted into grid row and column numbers, and the attribute label and height thereof are queried. Assuming that in the left search, the 15th sampling point (corresponding to 7.5 meters) is determined to fall into a boundary obstacle grid, the search in this direction is immediately stopped, and this sampling point is determined as a boundary point on the left side. Conversely, if all sampling points on a ray do not hit a boundary obstacle grid, a farthest sampling point (e.g. at 9.5 meters) with a label of ground is selected as the boundary point in this direction, which defines the theoretical boundary of the drivable area. Finally, the above operation is performed on all offline trajectory points, all determined boundary points are collected, and a continuous and reliable target driving boundary is generated through curve fitting.
[0048] In this embodiment, the offline trajectory is used as a reference, and the feature points for constructing the driving boundary are efficiently and accurately extracted through directional sampling, which further reduces the generation time of the driving boundary and improves the real-time generation of the driving boundary. Specifically, when the environment structure is clear and there are clear boundary obstacles, the scheme can quickly lock the entity boundary to ensure that the boundary fits the real environment; in an open area lacking obvious boundary obstacles, the boundary of the drivable ground area is identified as a supplement, thereby ensuring that a continuous and fault-free driving boundary can be generated in various complex scenarios.
[0049] After the boundary points are determined from the offline trajectory and the obstacle grid through sampling and conditional judgment, these boundary points may have certain dispersion and jitter due to sensor noise or environmental complexity. In order to make the generated driving boundary more accurate and stable, thereby ensuring the quality of the high-precision map updated according to it, and further improving the reliability of path planning and overall transportation efficiency, an optional embodiment of the present application can optimize the boundary points, which are implemented as follows.
[0050] The boundary points are post-processed; based on the post-processed boundary points, a target driving boundary is generated; wherein the post-processing includes: filtering the boundary points; and / or smoothing the boundary points.
[0051] Post-processing refers to a series of data optimization operations performed after obtaining the initial boundary points in order to improve the quality of the final driving boundary. Its purpose is to make the generated boundary more accurate and stable, ensuring the quality of the high-precision map updated accordingly, and better meeting the needs of vehicle regulation and control.
[0052] Filtering refers to the process of removing noise and outliers from the initial set of boundary points. This further improves the purity and reliability of the boundary point data, preventing local distortion of the final generated driving boundary due to a few erroneous boundary points.
[0053] Smoothing refers to the process of curve fitting or smoothing the sequence of boundary points to generate a continuous, smooth curve as the final driving boundary. This eliminates the jagged fluctuations of the driving boundary and generates a smoother path that is more in line with vehicle kinematics and beneficial for controller tracking.
[0054] Optionally, in some implementations, boundary points are filtered to remove isolated outliers in the vector boundary caused by perceived noise or mismatches. This process employs a sliding window-based abrupt change detection algorithm. Specifically, for boundary points within a sliding window of size n×n (where n is an odd number)... Calculate the mean coordinates of the point sets within the front and back windows respectively to obtain the mean point of the front window. With the rear mean point Then, calculations were performed. Point and The Manhattan distance difference between the points. If this difference exceeds the target threshold, then a decision is made. Points identified as abrupt change points are removed from the boundary point set. A sliding window is used to traverse all boundary points, effectively filtering out outliers and ensuring overall consistency of the driving boundaries.
[0055] Then, a smoothing process is performed to eliminate local jagged fluctuations at the driving boundaries, generating a smooth curve that meets the requirements for smooth vehicle driving. Specifically, an m×m sliding window is set, and for each boundary point within the window, the curve is smoothed based on its distance from the center point of the current window. The Gaussian distance function is used to calculate the weights, where the center point has the highest weight, and the weight value decreases exponentially with increasing distance.
[0056] For example, the weight of each boundary point .in, This indicates the offset of the current boundary point from the center point (unit: pixels, center point). =0); This represents the standard deviation, used to control the rate of weight decay; This is a constant term, ensuring that the sum of the integrals of the function is 1.
[0057] Then, the weights of all boundary points within the window are normalized. For example, the calculation formula is as follows: Based on the normalized weights, a weighted average is calculated for the coordinates of all boundary points within the window to update the center point. The coordinates. For example, the center point. The formula for calculating the coordinates is: , This achieves smoothing adjustments to the boundary points. By traversing all boundary points, a smooth, continuous target driving boundary that retains the main geometric features of the original boundary is finally output. For example, the smoothed boundary points can be represented as... .
[0058] Figure 3 The diagram shown is a schematic diagram of the boundary points before post-processing provided in an embodiment of this application. Figure 4 The diagram shown is a schematic representation of post-processed boundary points according to an embodiment of this application. Exemplarily, in... Figure 3 and Figure 4 In the diagram, blue dots represent retaining wall points, and red dots represent ground points. This demonstrates that the post-processing optimization significantly improves the previously discrete, unevenly distributed boundary points with abrupt changes. The optimized boundary points exhibit greater spatial continuity and consistency, resulting in smoother and more regular driving boundary lines. This effectively eliminates outlier noise points and smooths out local fluctuations.
[0059] In this embodiment, by filtering the boundary points, abnormal points caused by sensor noise, instantaneous misidentification, or grid classification errors in the original data are effectively eliminated, preventing local distortion or sharp spikes in the subsequently generated driving boundaries and significantly enhancing the geometric stability of the driving boundaries. Secondly, by smoothing the boundary points, the discrete, potentially jagged sequence of boundary points is transformed into a continuous and smooth curve. This not only eliminates high-frequency jitter in the driving boundaries, making them more consistent with the physical characteristics of real-world road boundaries, but also ensures the accuracy and quality of the high-precision map. This facilitates the vehicle's planning of a safe and stable trajectory and reduces the tracking difficulty for the controller, thereby ensuring the overall usability of the generated driving boundaries and guaranteeing the quality of the high-precision map.
[0060] After generating the initial driving boundary based on the offline trajectory, in order to ensure the continuity and real-time performance of the driving boundary and further improve the overall performance of the scheme in dynamic environments, this application provides an optional embodiment that can integrate online trajectory information to optimize boundary generation, the specific implementation of which is described below.
[0061] In response to the termination signal generated by the boundary, a target driving boundary is generated based on the online trajectory; the target driving boundary generated based on the offline trajectory is spliced with the target driving boundary generated based on the online trajectory to obtain a final target driving boundary, which means that the current driving boundary generation is completed, that is, the generation of the driving boundary and the collection of the point cloud data are basically completed at the same time, and the map updating efficiency is greatly improved.
[0062] Taking an actual scene as an example, after the boundary of a certain area in a mine is updated, a wide-body dump truck, a mine truck or a special mapping vehicle in the mine can drive in the area, collect point cloud data in the area, and generate a driving boundary. After the vehicle completes the collection, the target driving boundary of the area is also basically completed at the same time, and the uploaded target driving boundary can be used to update the driving boundary in the high-precision map of the area, and the map updating efficiency is extremely high.
[0063] Further, self-intersection parts in the final target driving boundary are detected and corrected.
[0064] The online trajectory represents a trajectory corresponding to a spatial range in which the vehicle is currently driving and continuously updating.
[0065] The termination signal is a control instruction for triggering the final boundary generation and output. The signal can be generated by a specific condition, for example, the vehicle reaches the destination, the user issues a stop instruction, or the current environment data meets the requirement of generating a complete boundary.
[0066] The splicing refers to the operation of seamlessly connecting the solidified driving boundary generated based on the offline trajectory and the driving boundary generated in real time based on the latest online trajectory in space. The purpose is to integrate historical and real-time data to form a continuous complete boundary covering the entire driving process of the vehicle.
[0067] The self-intersection part refers to an abnormal geometric shape in which the boundary line itself intersects or forms a loop in the final generated target driving boundary vector line. It can be understood that the self-intersection area is physically unreasonable and will cause confusion in the definition of the driving area, and must be detected and eliminated.
[0068] Optionally in some implementations, after receiving the termination signal, a target driving boundary corresponding to the trajectory segment is generated according to the latest online trajectory and the data of the corresponding online grid. Subsequently, the boundary generated based on the offline trajectory (which is generally more stable) is spliced with the boundary corresponding to the online trajectory just generated. For example, by finding the nearest feature points of the two driving boundaries at the connection place, or based on the common trajectory points for spatial registration, the smooth connection of the driving boundaries is realized to form a final target driving boundary from the starting point to the ending point.
[0069] Further, self-intersection detection is performed on the final target driving boundary. For example, an optimization algorithm based on spatial indexing (such as using a grid or quadtree) is used to find and filter out pairs of candidate line segments that are close in distance but not adjacent. This scheme significantly reduces the detection range by ignoring adjacent line segments (whose connection points are naturally adjacent and not abnormal self-intersections) and focusing on discontinuous line segments that are close in space, thereby optimizing the computational efficiency and making real-time or quasi-real-time processing possible.
[0070] Next, for the filtered pairs of candidate line segments, intersection point calculation is performed. For example, a computational geometry method such as the vector cross product method is used to detect whether two line segments intersect and return the coordinates of the intersection point. This algorithm can stably determine the intersection state between line segments and accurately calculate the position of the intersection point, providing precise geometric basis for subsequent correction.
[0071] Finally, when the existence of self-intersection is confirmed and the intersection point is located, the closed loop formed by self-intersection is deleted. Specifically, the redundant loop formed by the self-intersection point in the boundary sequence is identified and removed from the boundary point sequence. Subsequently, the non-intersecting points are reconnected at the intersection point, the two originally intersecting line segments are disconnected at the intersection point, and the correct point sequence is connected, thereby forming a single driving boundary that is free of self-intersection, continuous, and logically correct.
[0072] In this embodiment, by responding to the termination signal and integrating the boundaries of online and offline trajectories, the integrity and continuity of the driving boundary generation are ensured. Secondly, the offline trajectory boundary provides a stable and reliable historical road profile, while the online trajectory boundary supplements the latest driving environment information. By splicing the two, the final target driving boundary is generated, which can completely cover the entire driving range of the vehicle from the starting point to the ending point. In addition, by automatically detecting and eliminating the self-intersection part of the boundary, it is ensured that the generated boundary is a clear, unambiguous drivable area profile line.
[0073] Based on real-time environment perception through online grids, in order to improve the accuracy and efficiency of perception and thereby provide a more reliable data basis for subsequent obstacle recognition and driving boundary generation, an optional embodiment is provided, which can use a two-level grid structure for collaborative processing, the specific implementation is as follows.
[0074] The online grid includes a unit grid and a block grid, the size of the block grid is larger than that of the unit grid, and the two form a two-level structure.
[0075] The unit grid refers to the basic and smallest unit of the grid map. It has a small size and is used to record and carry the original point cloud data projected onto it, and is the finest granularity unit for environment information perception.
[0076] A block grid refers to a larger size grid unit composed of multiple cell grids. As a higher level processing unit, it is used to integrate and analyze the collective attribute features of multiple cell grids within its coverage from a macro perspective.
[0077] Further, the current frame point cloud collected during the vehicle driving process is projected into the cell grid to obtain the attribute information of each cell grid; based on the attribute information of the cell grids included in the block grid, the attribute information of each block grid is determined; based on the attribute information of each block grid, the attribute information of the cell grids belonging to the same block grid is optimized.
[0078] For example, for a cell grid, its attribute information includes point cloud density, average height, reflection intensity or preliminary classification result, etc. For a block grid, its attribute information is the summarized information derived from the attributes of all the cell grids it contains through specific rules (such as statistics).
[0079] Optionally, in some implementations, the current frame point cloud collected during the vehicle driving process is first projected into the cell grid. Each cell grid independently calculates its initial attribute information according to the point cloud data falling within it, for example, the density is obtained by counting the number of point clouds, or the average value of the height of the point clouds is calculated. Among them, the cell grid contains height information and semantic information. Optionally, the height information is updated by the height information of the point cloud, including but not limited to directly updating dem_z_init=p_w_z; the semantic information is updated by the semantic information of the point cloud, including but not limited to directly updating dem_label_init=p_w_label.
[0080] Subsequently, based on the preset block grid division rule (for example, one block grid covers 5 5 cell grids), the cell grids are grouped. For each block grid, the initial attribute information of all the cell grids it contains is integrated to determine the overall attribute of the block grid. In one example, a statistical mode is adopted, for example, if more than a target proportion of the cell grids in a block grid are identified as obstacles, the overall attribute of the block grid is determined as an obstacle grid. In another example, the variance of the height of all the cell grids in the block grid is calculated to serve as the terrain undulation attribute of the block grid.
[0081] Finally, based on the attribute information determined for each block grid, the initial attributes of the individual cell grids belonging to it are optimized. For example, if a block grid is determined to be the ground, the cell grids inside it that are mistakenly identified as obstacles due to noise are corrected in attribute, and they are reclassified as the ground. Or, the height values of the cell grids are smoothed by using the overall height trend of the block.
[0082] In this embodiment, on the one hand, by projecting the point cloud data to the fine unit grid, the high precision and high resolution of the environment perception are ensured; on the other hand, by optimizing and calibrating the unit grid attribute based on the macro attribute of the block grid, the perception noise and misclassification are effectively inhibited, and the robustness and output consistency of the scheme in the complex scene are significantly enhanced.
[0083] After the point cloud information is preliminarily processed through the two-level structure of the unit grid and the block grid, in order to further improve the semantic understanding ability and classification accuracy of the environment perception, thereby improving the accuracy of the driving boundary of the high-precision map determined, an optional embodiment provided by the present application can comprehensively utilize geometric and semantic information to determine the attribute of the block grid, and the specific implementation is as follows.
[0084] Based on the geometric attribute in the attribute information of the unit grid contained in the block grid, the geometric attribute of each block grid is calculated; based on the semantic attribute in the attribute information of the unit grid contained in the block grid, statistical calculation is performed to obtain the semantic attribute of each block grid; based on the geometric attribute and the semantic attribute of each block grid, the category attribute of the block grid is determined, and the category attribute includes at least one of the ground, the dynamic obstacle and the static obstacle.
[0085] The geometric attribute refers to the features directly extracted from the point cloud data to describe the shape and distribution of the grid space, which does not involve object categories and only reflects the physical structure. For example, the height, height variance, flatness, slope or point cloud density of the grid.
[0086] The semantic attribute refers to the label information obtained after the category identification of the environmental elements represented by the unit grid. This attribute is generated based on the pattern recognition and classification of the point cloud, for example, the unit grid is preliminarily classified into the ground, the obstacle and the like.
[0087] Optionally, in some implementations, based on the geometric attributes of each unit grid contained in the block grid, the overall geometric attribute of the block is calculated through a statistical or fitting method. For example, the unit grid data is utilized to calculate the normal vector, the height difference and the center point, and through the normal vector, the height difference and the center point, the preliminary semantic point (including the plane or the non-plane) of the block grid is obtained. At the same time, the semantic attributes of all the unit grids in the same block are statistically calculated. One implementation is to calculate the frequency of each category of semantic label appearing in the block, and determine the category with the highest frequency as the semantic attribute of the block. Another implementation is to calculate the average value of the confidence of each category, and determine the category with the highest average confidence as the semantic attribute of the block.
[0088] Finally, the category attribute of the block grid is determined based on the geometric attribute and the semantic attribute of each block grid by fusing the two types of information. For example, even if the semantic attribute of a block grid is counted as a vehicle, but its geometric attribute (such as very low height) indicates that it does not have the physical characteristics of a vehicle, it can be corrected to the ground. Conversely, a block grid with a semantic attribute of the ground but a geometric attribute showing a significant height change is reclassified as a static obstacle. And for a block with a semantic attribute of a vehicle and a geometric attribute showing that its position changes in consecutive frames, it is classified as a dynamic obstacle.
[0089] In this embodiment, on the one hand, through cross verification and complementary fusion of geometric information (such as height, shape) and semantic information (such as object category), the limitations of a single information source are overcome, and the accuracy of the category attribute determination of the block grid is significantly improved. On the other hand, by statistically calculating the semantic attribute of the unit grid to determine the semantic attribute of the block level, and finally combining the geometric attribute of the block grid for comprehensive determination, the robustness in the face of local perception uncertainty, data noise or transient occlusion is enhanced. In addition, the category attribute output by this scheme is clear (including ground, static and dynamic obstacles), which provides an accurate data basis for the downstream driving boundary recognition based on offline grid, ensures the accuracy of the generated driving boundary, and further ensures the accuracy of the high-precision map.
[0090] After the geometric and semantic information is comprehensively utilized to preliminarily determine the attribute of the block grid, in order to realize accurate and robust identification of the ground area and further optimize the classification effect of the obstacle, an optional embodiment provided by the present application can divide the ground based on the seed point growth, and the specific implementation is as follows.
[0091] Based on the height information of the vehicle, a ground seed point is set in the block grid corresponding to the online trajectory of the vehicle and having a geometric attribute of a plane; a ground area is obtained by extending from the ground seed point through clustering search, and the category attribute of the block grid belonging to the ground area is determined as the ground; for the block grid with a category attribute of non-ground, the category attribute of the block grid is determined as a dynamic obstacle or a static obstacle based on the semantic attribute of the block grid.
[0092] The ground seed point refers to an initial position point in the grid map which is preselected as the ground. Its setting depends on reliable prior information, such as the height of the vehicle itself and the geometric characteristics of the local area where the vehicle is located.
[0093] Optionally, in some implementations, based on the height information of the vehicle itself, and in its vicinity of the online trajectory, those block grids whose geometric properties are determined to be planar are filtered out. Within these block grids with planar characteristics, ground seed points are set, and then, starting from these seed points, a clustering search (for example, using a region growing algorithm) is performed. Specifically, according to a preset similarity criterion (such as planarity, height continuity), the neighboring regions are traversed and merged, with the purpose of aggregating the connected grids with the same ground properties into a continuous region. This process is iterated until no new adjacent block can be merged, thereby expanding a complete ground region. The category attribute of all block grids belonging to this region is uniformly determined as ground. Finally, for the block grids whose category attribute is not ground, further differentiation is made based on the semantic attribute of the block grid. For example, if its semantic attribute is identified as a pedestrian or a vehicle, then according to whether its position changes between consecutive frames, its category attribute is determined as a dynamic obstacle or a static obstacle.
[0094] In this embodiment, first, ground seed points are set using vehicle height information and geometric planar characteristics, ensuring the reliability of ground region initialization, and on this basis, a region growing algorithm is used to grow according to geometric continuity, thereby accurately dividing a continuous and physically consistent drivable ground region, effectively avoiding false segmentation caused by complex scenes or local noise. On the basis of reliable separation of the ground region, further for non-ground blocks, their semantic attributes are used to accurately distinguish static and dynamic obstacles, providing accurate passable regions and obstacle space constraints for real-time boundary generation.
[0095] After accurately identifying the ground region through the seed point growing algorithm, in order to further improve the ability to distinguish dynamic and static obstacles in the driving environment, the present application provides an optional embodiment that can combine semantic and multi-dimensional statistical features for fine classification, the specific implementation of which is described as follows.
[0096] For block grids whose category attribute is not ground, if the semantic attribute of the block grid is a preset dynamic object category, then the category attribute of the block grid is determined to be a dynamic obstacle; if the semantic attribute of the block grid does not belong to the dynamic object category, then based on at least one of the following indicators: probability density of the block grid, number of hits, obstacle size, and obstacle area, the category attribute of the block grid is determined to be a dynamic obstacle or a static obstacle.
[0097] The preset dynamic object category refers to a set of pre-defined object category labels in a motion state, such as pedestrians, vehicles, dust, etc., which inherently have the potential characteristic of motion.
[0098] In particular, the probability density of a block grid represents the statistical value of the probability that all the cell grids contained in the secondary grid belong to a certain class. This indicator is used to quantify the overall certainty of all the cell grids contained in a block grid for a certain class (such as the ground or the retaining wall). For example, it is calculated by summing the probability values of all the cell grids belonging to a certain class in the block grid, and then dividing by the total number of cell grids contained in the block grid. The probability density is a statistical value between 0 and 1, reflecting the confidence level of the block being stably classified as a certain class in historical observations. It can be understood that the lower the probability density, the more uncertain or unstable the attribute of the block grid.
[0099] The number of hits of a block grid represents the total number of times the block grid is hit by the point cloud of the current frame. This indicator is used to measure the persistence or frequency of a block grid being perceived in continuous multiple frames of point cloud data. It is calculated by counting the total number of times the block grid is hit by the point cloud in all historical observation frames, and then dividing by the number of the block grid itself (usually 1) or the sum of the number of cell grids it contains, to obtain an average hit frequency. It can be understood that if a block grid is hit continuously and stably, the value will be higher, representing a static or permanent obstacle; on the contrary, if the value of the block is lower or fluctuates greatly, it represents a transient noise or dynamic obstacle.
[0100] The obstacle size of a block grid represents the size of the actual physical space represented by the secondary grid. This indicator describes the three-dimensional spatial measure of the obstacle represented by the block grid in the real physical world, which usually refers to the physical dimension of the obstacle in length, width and height (such as meters). For example, this size is converted by the space range occupied by the block grid combined with the resolution of the grid, which is used to judge the type of obstacle from the physical scale and filter out unreasonable small noises.
[0101] The obstacle area of a block grid represents the area of the actual physical space represented by the secondary grid. This indicator is a specialization and supplement of the obstacle size, specifically referring to the actual physical area (usually in square meters) occupied by the projection of the obstacle represented by the block grid on the horizontal plane. It focuses more on describing the occupation of the obstacle to the ground driving space.
[0102] In some embodiments, the block grid with the category attribute of a dynamic obstacle is rejected.
[0103] In this embodiment, the blocks belonging to the preset dynamic object category are first directly determined as dynamic obstacles, optimizing the calculation efficiency and realizing efficient and instant response to typical dynamic targets. For the block grids with unknown semantic attributes or not belonging to the typical dynamic category, the temporal and morphological indexes such as the probability density, the number of hits, the obstacle size and area are comprehensively evaluated to effectively distinguish the real static obstacles from the transient noise or unstable point clouds. This double determination mechanism significantly improves the recall rate of dynamic obstacle identification and realizes high-precision and high-robustness distinction between dynamic and static obstacles in complex scenes.
[0104] After the attribute determination of the block grid is completed through the secondary grid structure cooperative processing, in order to further improve the fineness and accuracy of the unit grid level environment perception, thereby laying a more solid data foundation for subsequent generation of reliable driving boundaries, the application provides an optional embodiment which can utilize the semantic information of the block grid to reversely optimize the classification results of the unit level, and the specific implementation is as follows.
[0105] For the block grid with the category attribute as ground, a ground fitting equation is determined; for the block grid with the category attribute as static obstacle, each unit grid in the block grid is traversed, and the height above ground of each unit grid is calculated based on the ground fitting equation; if the height above ground of the unit grid is greater than a target height threshold, the category attribute in the attribute information of the unit grid is optimized as boundary obstacle; if the height above ground of the unit grid is less than or equal to the target height threshold, the category attribute in the attribute information of the unit grid is optimized as ground.
[0106] The ground fitting equation refers to a continuous surface capable of representing the current local ground shape, which is generated based on the spatial coordinate points of all block grids with the category attribute determined as ground, through a mathematical model, for example, a plane equation A x+B y+C z+D=0. The equation provides an accurate geometric reference for calculating the relative height of other grids.
[0107] The height above ground refers to the vertical distance of the center point or representative point of any unit grid perpendicular to the fitting surface calculated according to the ground fitting equation. The height is a relative value for accurately measuring the true protrusion degree of the object relative to the actual ground.
[0108] The boundary obstacle refers to a specific static obstacle constituting the driving boundary, such as curb, low guardrail, cone barrel, retaining wall, etc., which is classified out after optimization of the scheme, and its core feature is a significant and continuous height above ground.
[0109] Optionally, in some implementations, all three-dimensional coordinate data of the block grids whose category attributes are marked as ground obtained through ground searching are summarized. Based on these data points representing drivable areas, a ground equation accurately describing the current local ground surface is calculated through a mathematical model fitting algorithm (e.g., least square method). Subsequently, the block grids whose category attributes are static obstacles are traversed, and further refined processing is performed on each cell grid contained therein. Specifically, for a cell grid with coordinates , the planar coordinates of the cell grid are substituted into the aforementioned ground equation to solve the theoretical height of the point on the fitted ground, and further calculate the height above ground dem ground height of the cell grid. The height above ground accurately represents the degree of vertical protrusion of the point relative to the real ground. Finally, the calculated height above ground is compared with a preset target height threshold. If the height above ground of the cell grid is greater than the target height threshold, it is determined that the cell grid is an effective vertical structure, and its category attribute is optimized to a boundary obstacle; otherwise, it is determined that the cell grid is insufficient to constitute an obstacle, and its category attribute is corrected to ground.
[0110] In the embodiment, first, a continuous ground equation is fitted based on the confirmed ground block grids, thereby constructing a reference surface that accurately reflects the actual terrain undulations, overcoming the perception errors caused by using a fixed elevation reference on non-flat road surfaces such as slopes and curves. On this basis, the height above ground of each cell grid in the static obstacle block relative to the reference surface is calculated, and the cells with significant height above ground are determined as boundary obstacles, while the cells with insufficient height above ground are corrected to ground, effectively filtering out the misidentification caused by manhole covers, pavement markings, and other small undulations, improving the adaptability of the environment perception results to complex terrain, and the accuracy and robustness of boundary obstacle recognition.
[0111] In some embodiments, after optimizing the attribute information of the cell grids belonging to the same secondary grid based on the attribute information of each block grid, the method further includes: fusing the attribute information of the optimized each cell grid with the stored attribute information of the grid, so as to update the probability value and height information corresponding to the attribute information of the optimized each cell grid.
[0112] The stored attribute information of the grid refers to the historical attribute information maintained by the cell grid. It is not the result of a single observation, but a time-extended state record formed by integrating multiple frames of observation data.
[0113] Optionally, in one implementation, the probability value fusion of the cell grids is first performed. For example, a recursive updating mechanism is used to directly accumulate the observation evidence of the current frame with the historical probability information to strengthen the persistent environmental features.
[0114] For example, the calculation formula is: the probability value of the unit grid = the probability coefficient of the current specific attribute information + the probability coefficient of the past grid. In this formula, the probability coefficient of the current specific attribute information is an incremental value determined according to the current frame of point cloud data (for example, if the current frame is determined to be the ground, the ground probability coefficient f is increased by a fixed amount, and the probability coefficients of other attribute information remain unchanged or decrease). The probability coefficient of the past grid is the historical probability value stored after the last round of fusion. This fusion method does not need to introduce a forgetting mechanism, so that in a static environment, the probability value of the grid belonging to the ground or the obstacle will be continuously enhanced as it is continuously observed, thereby forming a stable and high-confidence classification result.
[0115] Secondly, height information fusion is performed. The calculation formula is: z = z_history + memory coefficient * z_current (1 memory coefficient). Wherein, z_history represents the historical height value originally stored in the unit grid, z_current represents the new height value calculated from the current frame of point cloud, and the memory coefficient is a configurable parameter between 0 and 1, used to control the weight ratio of historical data and current data. It can be understood that a higher memory coefficient means that the fusion result depends more on the historical data, which is beneficial to suppress transient noise; and a lower memory coefficient makes the system more sensitive to new height changes.
[0116] In this embodiment, the fusion of the probability value enhances the confidence of the semantic classification of the unit grid, so that the classification result of the static environment tends to be stable as it is continuously observed, effectively suppressing the random fluctuations and misjudgments of single-frame perception. The fusion of the height information smooths the sensor measurement noise and generates an elevation model closer to the real terrain. This fusion mechanism increases the accuracy of the grid attribute value, and thus the high-precision map generated finally becomes more and more accurate and stable over time.
[0117] The driving boundary real-time generation method embodiment of the present application is described in detail above, and the driving boundary real-time generation device embodiment of the present application is described in detail below. It should be understood that the description of the driving boundary real-time generation method embodiment corresponds to the description of the driving boundary real-time generation device embodiment, and therefore, the parts not described in detail can be referred to the previous method embodiment. Figures 1 to 4 Figure 5 As shown in the structure schematic diagram of the driving boundary real-time generation device provided by an embodiment of the present application, the driving boundary real-time generation device provided by the embodiment of the present application comprises:
[0118] Figure 5 As shown in the structure schematic diagram of the driving boundary real-time generation device provided by an embodiment of the present application, the driving boundary real-time generation device provided by the embodiment of the present application comprises: Figure 5 The projection module 510 is configured to project a current frame point cloud collected in a vehicle driving process to an online grid, and determine attribute information of the online grid, where the online grid represents a grid within a target distance of a position of the vehicle. The determination module 520 is configured to determine, based on the attribute information of the online grid, an obstacle grid from the online grid. The marking module 530 is configured to mark, based on a position of the vehicle, the online grid beyond the target distance of the position as an offline grid, where the offline grid represents a grid outside the target distance of the position of the vehicle. The generation module 540 is configured to generate a target driving boundary based on the obstacle grid in the offline grid and a driving trajectory of the vehicle.
[0119] In an embodiment of the present application, the obstacle grid includes a grid with a category attribute of a boundary obstacle, and the driving trajectory includes an offline trajectory representing a trajectory corresponding to a spatial range from which the vehicle has driven away and is no longer updated. The generation module 540 is further configured to determine a plurality of trajectory points in the offline trajectory of the vehicle, extend a preset distance in a preset direction of each trajectory point respectively from the trajectory point to obtain a target line segment, and sample in the target line segment, for each sampling point, if the sampling point is located in the grid with the category attribute of the boundary obstacle, determine the sampling point as a boundary point, if all the sampling points in the target line segment are not located in the grid with the category attribute of the boundary obstacle, determine a boundary point based on the grid with the category attribute of the ground into which the sampling points in the target line segment fall, and generate the target driving boundary based on the determined boundary points.
[0120] In an embodiment of the present application, the generation module 540 is further configured to post-process the boundary points, generate the target driving boundary based on the post-processed boundary points, and wherein the post-processing includes filtering the boundary points and / or smoothing the boundary points.
[0121] In an embodiment of the present application, the driving trajectory further includes an online trajectory representing a trajectory corresponding to a spatial range in which the vehicle is currently driving and continuously updating. The generation module 540 is further configured to generate the target driving boundary based on the online trajectory in response to a termination signal of the boundary generation, splice the target driving boundary generated based on the offline trajectory and the target driving boundary generated based on the online trajectory to obtain a final target driving boundary, and detect and correct a self-intersection part in the final target driving boundary.
[0122] In an embodiment of the present application, the online grid includes a unit grid and a block grid, and the size of the block grid is greater than that of the unit grid. The projection module 510 is further configured to project the current frame point cloud collected during the driving of the vehicle to the unit grid to obtain attribute information of each unit grid, determine attribute information of each block grid based on the attribute information of the unit grids included in the block grid, and optimize the attribute information of the unit grids belonging to the same block grid based on the attribute information of each block grid.
[0123] In an embodiment of the present application, the projection module 510 is further configured to calculate the geometric attribute of each block grid based on the geometric attribute in the attribute information of the unit grids included in the block grid, perform statistical calculation based on the semantic attribute in the attribute information of the unit grids included in the block grid to obtain the semantic attribute of each block grid, and determine the category attribute of the block grid based on the geometric attribute and the semantic attribute of each block grid, wherein the category attribute includes at least one of the ground, the dynamic obstacle and the static obstacle.
[0124] In an embodiment of the present application, the geometric attribute of the block grid includes a plane. The projection module 510 is further configured to set a ground seed point in the block grid with the geometric attribute of the plane corresponding to the online trajectory of the vehicle based on the height information of the vehicle, expand the ground seed point to obtain a ground area through clustering search, and determine the category attribute of the block grid belonging to the ground area as the ground. For the block grid with the category attribute of non-ground, the projection module 510 is further configured to determine the category attribute of the block grid as the dynamic obstacle or the static obstacle based on the semantic attribute of the block grid.
[0125] In an embodiment of the present application, the projection module 510 is further configured to, for the block grid with the category attribute of non-ground, if the semantic attribute of the block grid is a preset dynamic object category, determine the category attribute of the block grid as the dynamic obstacle, and if the semantic attribute of the block grid does not belong to the dynamic object category, determine the category attribute of the block grid as the dynamic obstacle or the static obstacle based on at least one of the probability density, the number of hits, the obstacle size and the obstacle area of the block grid.
[0126] In an embodiment of the present application, the projection module 510 is further configured to determine a ground fitting equation based on the block grid with the category attribute of the ground, traverse each unit grid in the block grid with the category attribute of the static obstacle, and calculate the off-ground height of each unit grid based on the ground fitting equation. If the off-ground height of the unit grid is greater than a target height threshold, the category attribute in the attribute information of the unit grid is optimized as the boundary obstacle. If the off-ground height of the unit grid is less than or equal to the target height threshold, the category attribute in the attribute information of the unit grid is optimized as the ground.
[0127] In the following, reference will be made toFigure 6 A vehicle according to an embodiment of the present application is described. Figure 6 FIG. 1 shows a schematic diagram of a vehicle according to an example embodiment of the present application.
[0128] As shown in FIG. 1, the vehicle 60 includes one or more processors 601. Figure 6
[0129] The processor 601 can be a central processing unit (CPU) or other form of processing unit that has data processing capabilities and / or instruction execution capabilities, and can control other components in the vehicle 60 to perform desired functions.
[0130] The processor 601 can execute program instructions to implement the real-time driving boundary generation method of various embodiments of the present application described above and / or other desired functions.
[0131] In one example, the vehicle 60 can also include a display device 602 for displaying the target driving boundary generated by the processor. The display device 602 of the vehicle 60 can be disposed inside the vehicle, or can be a display device independent of the vehicle and in communication with the vehicle, such as a handheld computer or an operation terminal, etc. These components are interconnected by a bus system and / or other form of connection mechanism (not shown).
[0132] Of course, for simplicity, Figure 6 Only some of the components of the vehicle 60 related to the present application are shown in FIG. 1, and components such as buses, input / output interfaces, etc. are omitted. In addition, the vehicle 60 can include any other appropriate components according to specific application cases.
[0133] In addition to the above method and device, an embodiment of the present application can also be a computer program product, which includes computer program instructions that, when executed by a processor, cause the processor to perform the steps of the real-time driving boundary generation method according to various embodiments of the present application described above in the specification.
[0134] The computer program product can be written in any combination of one or more programming languages, including an object-oriented programming language such as Java, C++, etc., and conventional procedural programming languages, such as the "C" programming language or similar programming languages. The program code can execute entirely on the user's computing device, partly on the user's device, as a stand-alone software package, partly on the user's computing device and partly on a remote computing device or entirely on the remote computing device or server.
[0135] In addition, an embodiment of the present application can also be a computer readable storage medium, having stored thereon computer program instructions which, when executed by a processor, cause the processor to perform the steps of the driving boundary real-time generation method according to various embodiments of the present application described above in the specification.
[0136] The computer readable storage medium can be any combination of one or more computer readable medium(s). The computer readable medium can be a computer readable signal medium or a computer readable storage medium. A computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium include an electrical connection having one or more wires, a portable disc, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0137] The above describes the basic principles of the present application in combination with specific embodiments, but it should be noted that the advantages, benefits, effects and the like mentioned in the present application are only examples and are not limiting, and these advantages, benefits, effects and the like cannot be considered as necessary for each embodiment of the present application. In addition, the above specific details are only for the purpose of example and understanding, and are not limiting, and the above details do not limit the present application to the above specific details.
[0138] The block diagrams of the devices, apparatuses, equipment, systems involved in the present application are only illustrative examples and are not intended to require or imply the connection, arrangement, configuration shown in the block diagrams. As those skilled in the art will recognize, these devices, apparatuses, equipment, systems can be connected, arranged, configured in any manner. Words such as "include", "contain", "have" and the like are open-ended words, meaning "including but not limited to", and can be used interchangeably. The words "or" and "and" used herein mean the word "and / or", and can be used interchangeably unless the context clearly indicates otherwise. The word "such as" used herein means the phrase "such as but not limited to", and can be used interchangeably.
[0139] It should also be noted that in the devices, equipment and methods of the present application, each component or each step can be decomposed and / or recombined. These decompositions and / or recombinations should be considered as equivalent solutions of the present application.
[0140] The above description of the disclosed aspects is provided to enable any person skilled in the art to make or use the application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein can be applied to other aspects without departing from the scope of the application. Thus, the present application is not intended to be limited to the aspects shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
[0141] The above description has been presented to enable any person skilled in the art to make or use the application. Numerous modifications and alterations to this application will be readily apparent to those skilled in the art, and it is intended to include all such modifications and alterations insofar as they come within the scope of the general concepts defined herein.
Claims
1. A method for real-time generation of driving boundaries, characterized in that, include: The current frame point cloud collected during the vehicle's movement is projected onto the online grid, and the attribute information of the online grid is determined, wherein the online grid represents the grid within the target distance of the vehicle's location; Based on the attribute information of the online grid, obstacle grids are determined from the online grid; Based on the updated position of the vehicle, online grids that are beyond the target distance of that position are marked as offline grids, wherein the offline grids represent grids that are outside the target distance of the vehicle's position; The target driving boundary is generated based on the obstacle grid in the offline grid and the vehicle's driving trajectory.
2. The method for real-time generation of driving boundaries according to claim 1, characterized in that, The obstacle grid includes grids with the category attribute of boundary obstacle, and the driving trajectory includes offline trajectory, which represents the trajectory corresponding to the spatial range where the vehicle has left and is no longer being updated. The generation of the target driving boundary based on the obstacle grid in the offline grid and the vehicle's driving trajectory includes: Multiple trajectory points are determined in the offline trajectory of the vehicle; Starting from each trajectory point, extend a preset distance in a preset direction to obtain a target line segment, and sample the target line segment. For each sampling point, if the sampling point is located in a grid with the category attribute of boundary obstacle, then the sampling point is determined as a boundary point; If none of the sampling points in the target line segment are located in the grid with the category attribute of boundary obstacle, then the boundary point is determined based on the grid with the category attribute of ground into which the sampling points in the target line segment fall; Based on the determined boundary points, the target driving boundary is generated.
3. The method for real-time generation of driving boundaries according to claim 2, characterized in that, The step of generating the target driving boundary based on the determined boundary points includes: Post-processing is performed on the boundary points; The target driving boundary is generated based on the post-processed boundary points; The post-processing includes: filtering the boundary points; and / or smoothing the boundary points.
4. The method for real-time generation of driving boundaries according to claim 2, characterized in that, The driving trajectory also includes an online trajectory, which represents the trajectory corresponding to the spatial range in which the vehicle is currently driving and is continuously updated; the method further includes: In response to the termination signal of boundary generation, a target driving boundary is generated based on the online trajectory; The target driving boundary generated based on the offline trajectory is concatenated with the target driving boundary generated based on the online trajectory to obtain the final target driving boundary. The method further includes: detecting and correcting the self-intersecting portions in the final target driving boundary.
5. The method for real-time generation of driving boundaries according to claim 1, characterized in that, The online grid includes cell grids and block grids, wherein the size of the block grid is larger than that of the cell grid; The step of projecting the current frame point cloud collected during the vehicle's movement onto the online grid and determining the attribute information of the online grid includes: Project the current frame point cloud collected during the vehicle's movement onto the unit grid to obtain the attribute information of each unit grid; Based on the attribute information of the cell grids contained in the block grid, the attribute information of each block grid is determined; Based on the attribute information of each block grid, the attribute information of the unit grids belonging to the same block grid is optimized.
6. The method for real-time generation of driving boundaries according to claim 5, characterized in that, The determination of attribute information for each block grid based on the attribute information of the cell grids contained in the block grid includes: Based on the geometric attributes in the attribute information of the cell grids contained in the block grid, calculate the geometric attributes of each block grid. Based on the semantic attributes in the attribute information of the unit grids contained in the block grid, statistical calculations are performed to obtain the semantic attributes of each block grid. Based on the geometric and semantic attributes of each block grid, the category attribute of the block grid is determined, and the category attribute includes at least one of ground, dynamic obstacles, and static obstacles.
7. The method for real-time generation of driving boundaries according to claim 6, characterized in that, The geometric properties of the block grid include planarity; determining the category attributes of the block grid based on the geometric and semantic properties of each block grid includes: Based on the vehicle's height information, ground seed points are set in a block grid with planar geometric properties corresponding to the vehicle's online trajectory; By clustering search, ground regions are obtained by expanding from the ground seed points, and the category attributes of the block grid belonging to the ground region are determined as ground. For a block grid with a category attribute of "non-ground", the category attribute of the block grid is determined to be either a dynamic obstacle or a static obstacle based on the semantic attributes of the block grid.
8. The method for real-time generation of driving boundaries according to claim 7, characterized in that, For a non-ground category grid, determining whether the category attribute of the grid is a dynamic obstacle or a static obstacle based on the semantic attributes of the grid includes: For a block grid whose category attribute is non-ground, if the semantic attribute of the block grid is a preset dynamic object category, then the category attribute of the block grid is determined to be the dynamic obstacle. If the semantic attributes of the block grid do not belong to the category of dynamic objects, then the category attribute of the block grid is determined to be either the dynamic obstacle or the static obstacle based on at least one of the following indicators: probability density, number of hits, obstacle size, and obstacle area.
9. The method for real-time generation of driving boundaries according to claim 5, characterized in that, The optimization of attribute information for cell grids belonging to the same block grid, based on the attribute information of each block grid, includes: Based on the grid blocks with the category attribute of "ground", determine the ground fitting equation; Based on the block grid with the category attribute of static obstacle, traverse each cell in the block grid and calculate the ground height of each cell based on the ground fitting equation; If the ground clearance of the cell is greater than the target height threshold, then the category attribute in the cell's attribute information will be optimized to a boundary obstacle. If the ground clearance of the cell is less than or equal to the target height threshold, then the category attribute in the cell's attribute information is optimized to ground.
10. A vehicle, characterized in that, include: A processor for executing the real-time driving boundary generation method according to any one of claims 1 to 9; A display device is used to display the target driving boundary generated by the processor.