A method for generating vectorized data of road boundary lines and an electronic device

By extracting and processing the point set of boundary line elements from the segmented point cloud, the automated vectorized data generation of road boundary lines in high-precision maps is achieved, solving the problem of low vectorization processing efficiency of complex road boundary lines, and improving the production automation rate and accuracy.

CN114863048BActive Publication Date: 2025-05-30ECARX (HUBEI) TECHCO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210540610.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-17
Publication Date
2025-05-30
Estimated Expiration
2042-05-17

AI Technical Summary

Technical Problem

The prior art is difficult to efficiently generate road boundary line vectorized data in high-precision maps, especially the vectorized processing efficiency of complex guardrails and roadsides at urban intersections and high-speed gateways is low, and manual drawing methods reduce production efficiency.

Method used

By obtaining segmented point clouds with labels, the point sets of boundary line elements are extracted for instantiation, denoising, and clustering, and point cloud refinement and sorting based on the main direction of the local area, and vectorized data are generated by combining curve fitting and sampling.

Benefits of technology

It improves the production automation rate and production efficiency of high-precision maps, and improves the accuracy of road boundary line vectorization data, which can handle vector generation of complex road boundaries.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114863048B_ABST
    Figure CN114863048B_ABST
Patent Text Reader

Abstract

The present invention provides a method for generating vectorized data of road boundary lines and an electronic device. The method for generating vectorized data of road boundary lines includes: obtaining segmented point clouds obtained by sensing and segmenting a road; respectively extracting points with a label of a boundary line element from the segmented point clouds to form a point set, thereby obtaining one or more boundary line element point sets, wherein each boundary line element point set contains points with the same type of boundary line element label; instantiating each boundary line element point set to obtain one or more boundary line element instances; refining and sorting the points in each boundary line element instance based on the main direction of the local area to obtain one or more ordered boundary point sets; performing curve fitting and sampling on each ordered boundary point set to obtain vectorized data of the road boundary line. The automation rate and production efficiency of high-precision map production based on the vectorized data of road boundary lines are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of high-precision maps, and particularly to a method for generating vectorized data of road boundary lines and an electronic device. Background Art

[0002] High-precision maps are crucial for autonomous driving. In the production of high-precision maps, road boundary lines (mainly including guardrails, roadside edges, etc.) are important geometric elements, and their accuracy and completeness rate have important reference significance for modules such as positioning and path planning in autonomous driving. Different from lane lines drawn on the road, the geometric forms of road boundary lines are more diverse. Especially at urban intersections and highway ramps, there will be some complex guardrails and roadside edges, which bring difficulties to automatically extracting the vectorized data of road boundary lines required for high-precision maps, while the manual drawing method will greatly reduce the production efficiency of high-precision maps. Summary of the Invention

[0003] In view of the above problems, a method for generating vectorized data of road boundary lines and an electronic device that overcome the above problems or at least partially solve the above problems are proposed.

[0004] An object of the present invention is to provide a method for generating vectorized data of road boundary lines that can improve the production automation rate and production efficiency of high-precision maps.

[0005] A further object of the present invention is to instantiate the point set of boundary line elements through denoising and clustering to further improve the accuracy of the generated vectorized data of road boundary lines.

[0006] Another further object of the present invention is to facilitate the automatic generation of vectorized data of road boundary lines through a point cloud refinement and sorting algorithm with fixed parameters, thereby improving the production automation rate of high-precision maps.

[0007] Still another further object of the present invention is to realize the automatic generation of vectorized data of road boundary lines through a point cloud refinement and sorting algorithm with adaptively adjusted parameters, thereby further improving the accuracy of high-precision maps while improving the production automation rate of high-precision maps.

[0008] Specifically, according to one aspect of the embodiments of the present invention, a method for generating vectorized data of road boundary lines is provided, including:

[0009] Obtaining segmented point clouds obtained after the perception segmentation of a road, where the segmented point clouds are a set of unordered multiple three-dimensional space points with labels, and the labels indicate the road element types of each point, and the road element types at least include one or more boundary line elements of the road;

[0010] Extract points with the label of the boundary line element from the segmented point cloud respectively to form point sets, obtaining one or more boundary line element point sets, where each of the boundary line element point sets contains points with the same type of boundary line element label;

[0011] Instantiate each of the boundary line element point sets to obtain one or more boundary line element instances;

[0012] Refine and sort the points in each of the boundary line element instances based on the local region principal direction to obtain one or more ordered boundary point sets;

[0013] Perform curve fitting and sampling on each of the ordered boundary point sets to obtain the vectorized data of the road boundary line.

[0014] Optionally, the step of extracting points with the label of the boundary line element from the segmented point cloud respectively to form point sets, obtaining one or more boundary line element point sets includes:

[0015] Classify the points in the segmented point cloud according to the label, and store the points with the same label into the same point set to obtain point sets of multiple different road element types;

[0016] Extract the point sets with the road element type of the boundary line element from the multiple point sets, thereby obtaining one or more boundary line element point sets.

[0017] Optionally, the step of instantiating each of the boundary line element point sets includes:

[0018] Denoise each of the boundary line element point sets;

[0019] Cluster each of the denoised boundary line element point sets.

[0020] Optionally, the step of denoising each of the boundary line element point sets includes:

[0021] For each of the boundary line element point sets, search for any point in the boundary line element point set that has not been denoised, and determine a sphere with a first specified radius with the point as the center of the sphere;

[0022] Judge whether the number of points in the sphere is less than the set number threshold;

[0023] If so, delete all the points in the sphere;

[0024] If not, mark all the points in the sphere as points that have been denoised;

[0025] Judge whether there are still points in the boundary line element point set that have not been denoised;

[0026] If it exists, return to the step of searching for any un-denoised point in the set of boundary line element points, and determining a sphere with a first specified radius with this point as the center of the sphere for each set of boundary line element points;

[0027] If it does not exist, end the denoising step.

[0028] Optionally, the step of refining the points in each boundary line element instance based on the local region main direction includes:

[0029] For each boundary line element instance, respectively form a local region point set by each point in the boundary line element instance and the points within a first specified distance from this point;

[0030] Calculate the center point and the main direction of the local region point set;

[0031] Based on the center point, project this point onto the main direction of the local region point set to obtain a projection point corresponding to this point;

[0032] Form a refined point set with all the projection points, where the main direction of each point in the refined point set is the main direction of the corresponding local region point set.

[0033] Optionally, the step of sorting the points in each boundary line element instance based on the local region main direction includes:

[0034] Step S410, for each refined point set, arbitrarily select a point from the refined point set as the reference point;

[0035] Step S412, use the reference point as the first starting point;

[0036] Step S414, starting from the first starting point, estimate the next point in the forward direction according to the main direction of the first starting point at a specified step length as the first estimated point;

[0037] Step S416, form a first neighborhood point set by all the points in the refined point set whose distance from the first estimated point is within a second specified distance;

[0038] Step S418, determine whether the first neighborhood point set is empty; if not, execute step S420; if so, execute step S424;

[0039] Step S420, find the point in the first neighborhood point set that is most consistent with the main direction of the first starting point as the forward point of the first starting point;

[0040] Step S422, use the forward point as the new first starting point, and return to step S414;

[0041] Step S424, use the reference point as the second starting point;

[0042] Step S426, starting from the second starting point, estimate the previous point in the backward direction according to the main direction of the second starting point at the specified step length as the second estimated point;

[0043] Step S428, form a second neighborhood point set with all the points in the refined point set whose distance from the second estimated point is within the second specified distance;

[0044] Step S430, determine whether the second neighborhood point set is empty; if not, execute step S432; if so, execute step S436;

[0045] Step S432, find the point in the second neighborhood point set that is most consistent with the main direction of the second starting point as the backward point of the second starting point;

[0046] Step S434, use the backward point as the new second starting point, and return to step S426;

[0047] Step S436, combine all the backward points, the reference point and all the forward points in sequence to obtain the ordered boundary point set.

[0048] Optionally, after obtaining one or more of the ordered boundary point sets and before performing curve fitting and sampling on each of the ordered boundary point sets, the method further includes:

[0049] Adaptive adjustment parameter step: Determine whether the coverage rate of each ordered boundary point set for the corresponding boundary line element instance meets the requirements. If so, execute the step of performing curve fitting and sampling on each ordered boundary point set. If not, use at least one of the first specified distance, the specified step length, and the second specified distance as an adjustment parameter, and increase the adjustment parameter at the corresponding set interval;

[0050] If the increased adjustment parameter is not greater than the corresponding preset adjustment parameter threshold, re-execute the step of refining and sorting the points in each boundary line element instance based on the local area main direction and the adaptive adjustment parameter step until the coverage rate of each ordered boundary point set for the corresponding boundary line element instance meets the requirements;

[0051] If the increased adjustment parameter is greater than the corresponding preset adjustment parameter threshold, execute the step of performing curve fitting and sampling on each ordered boundary point set.

[0052] Optionally, the step of determining whether the coverage rate of each ordered boundary point set for the corresponding boundary line element instance meets the requirements includes:

[0053] For each instance of the boundary line element, search for any point that has not been covered and judged in the instance of the boundary line element as the target point, and determine a sphere with a second specified radius with the target point as the center of the sphere;

[0054] Judge whether there is a point in the corresponding ordered boundary point set within the sphere. If there is, determine that the target point is covered; if not, determine that the target point is not covered;

[0055] Mark the target point as having been covered and judged;

[0056] Judge whether there is still a point in the instance of the boundary line element that has not been covered and judged;

[0057] If there is, return to the step of "For each instance of the boundary line element, search for any point that has not been covered and judged in the instance of the boundary line element as the target point, and determine a sphere with a second specified radius with the target point as the center of the sphere";

[0058] If not, calculate the ratio of the number of covered points to the total number of all points in the instance of the boundary line element as the coverage rate;

[0059] Judge whether the coverage rate is greater than or equal to a preset value;

[0060] If so, determine that the coverage rate meets the requirements; otherwise, determine that the coverage rate does not meet the requirements.

[0061] Optionally, the step of performing curve fitting and sampling on each of the ordered boundary point sets to obtain the vectorized data of the road boundary line includes:

[0062] Select a curve model required for fitting;

[0063] Use each of the ordered boundary point sets as the input of the curve model for fitting to obtain a curve corresponding to each of the ordered boundary point sets;

[0064] Sample each of the curves at a specified interval distance to obtain the vectorized data of the road boundary line.

[0065] According to another aspect of the embodiments of the present invention, there is also provided an electronic device, including a memory, a processor, and a machine-executable program stored on the memory and running on the processor, and when the processor executes the machine-executable program, it implements the method for generating vectorized data of the road boundary line as described in any one of the foregoing.

[0066] In the method for generating vectorized data of the road boundary line of the present invention, after extracting the boundary line element point set from the segmented point cloud (simply referred to as the segmented point cloud) obtained by sensing and segmenting the road and instantiating it to obtain the boundary line element instance, the local area main direction of the road boundary points is used to refine and sort the unordered three-dimensional point cloud in the boundary line element instance, and based on the sorted ordered points, a smooth road boundary line vectorized data is generated by using a curve fitting algorithm and curve sampling, realizing the vector generation of complex road boundaries, and further improving the production automation rate and production efficiency of high-precision maps based on the vectorized data of this road boundary line.

[0067] Furthermore, in the method for generating vectorized data of the road boundary line of the present invention, the instantiation of the boundary line element point set is realized through denoising and clustering, which can eliminate noise (such as the influence of sparse early noise), thereby further improving the accuracy of the generated road boundary line vectorized data.

[0068] Furthermore, in the method for generating vectorized data of the road boundary line of the present invention, the point cloud in the boundary line element instance is refined and sorted by a point cloud refinement and sorting algorithm with fixed parameters (including a fixed first specified distance, specified step size, and second specified distance), which facilitates the automatic generation of complex road boundary line vectorized data, thereby improving the production automation rate of high-precision maps.

[0069] Furthermore, in the method for generating vectorized data of the road boundary line of the present invention, when the sorted points cannot cover the point set in the boundary line element instance due to uneven road boundaries or large noise, the automatic generation of road boundary line vectorized data is realized by a point cloud refinement and sorting algorithm that adaptively adjusts parameters (including adjusting at least one of the first specified distance, specified step size, and second specified distance), thereby further improving the accuracy of high-precision maps while improving the production automation rate of high-precision maps.

[0070] The above description is only an overview of the technical solution of the present invention. In order to be able to understand the technical means of the present invention more clearly, it can be implemented according to the content of the specification. And in order to make the above and other purposes, features, and advantages of the present invention more obvious and understandable, the following specifically illustrates the embodiments of the present invention.

[0071] According to the following detailed description of the specific embodiments of the present invention in conjunction with the drawings, those skilled in the art will understand the above and other purposes, advantages, and features of the present invention more clearly. Brief Description of the Drawings

[0072] By reading the following detailed description of the preferred embodiments, various other advantages and benefits will become apparent to those of ordinary skill in the art. The drawings are only for the purpose of illustrating the preferred embodiments and are not considered to be a limitation of the present invention. Moreover, throughout the drawings, the same reference numerals are used to represent the same components. In the drawings:

[0073] Figure 1 FIG. shows a schematic flow chart of a method for generating vectorized data of road boundary lines according to an embodiment of the present invention;

[0074] Figure 2 FIG. shows a schematic diagram of segmenting point clouds according to an embodiment of the present invention;

[0075] Figure 3 FIG. shows a schematic flow chart of the step of denoising each boundary line element point set in the method for generating vectorized data of road boundary lines according to an embodiment of the present invention;

[0076] Figure 4 FIG. shows a schematic diagram of the effect after instantiating the boundary line element point set according to an embodiment of the present invention;

[0077] Figure 5 FIG. shows a schematic flow chart of the step of refining the points in each boundary line element instance based on the main direction of the local area in the method for generating vectorized data of road boundary lines according to an embodiment of the present invention;

[0078] Figure 6 FIG. shows a schematic diagram of the point cloud after point cloud refinement according to an embodiment of the present invention;

[0079] Figure 7 FIG. shows a schematic flow chart of the sorting step in the method for generating vectorized data of road boundary lines according to an embodiment of the present invention;

[0080] Figure 8 FIG. shows a schematic diagram of the point cloud after point cloud sorting according to an embodiment of the present invention;

[0081] Figure 9 FIG. shows a schematic diagram of the vectorized expression of the generated road boundary lines according to an embodiment of the present invention;

[0082] Figure 10 FIG. shows a schematic flow chart of a method for generating vectorized data of road boundary lines according to another embodiment of the present invention;

[0083] Figure 11 FIG. shows a schematic flow chart of the step of determining whether the coverage rate of each ordered boundary point set for the corresponding boundary line element instance meets the requirements in the method for generating vectorized data of road boundary lines according to an embodiment of the present invention; and

[0084] Figure 12 The structural schematic diagram of an electronic device according to an embodiment of the present invention is shown. Specific implementation manners

[0085] Hereinafter, exemplary embodiments of the present disclosure will be described in more detail with reference to the accompanying drawings. Although the exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided so that the present disclosure can be more thoroughly understood and the scope of the present disclosure can be completely conveyed to those skilled in the art.

[0086] To solve or at least partially solve the above technical problems, an embodiment of the present invention proposes a method for generating vectorized data of road boundary lines. Figure 1 The flowchart of the method for generating vectorized data of road boundary lines according to an embodiment of the present invention is shown. Refer to Figure 1 , this method may at least include the following steps S100 to step S500.

[0087] Step S100, obtaining the segmented point cloud obtained after the perception segmentation of the road, where the segmented point cloud is a set of unordered multiple three-dimensional space points with labels, and the labels indicate the road element types of each point, and the road element types at least include one or more boundary line elements of the road.

[0088] Step S200, respectively extracting the points with the label of the boundary line element from the segmented point cloud to form a point set, so as to obtain one or more boundary line element point sets, where each boundary line element point set contains the points with the same boundary line element label.

[0089] Step S300, instantiating each boundary line element point set to obtain one or more boundary line element instances.

[0090] Step S400, refining and sorting the points in each boundary line element instance based on the local area main direction to obtain one or more ordered boundary point sets.

[0091] Step S500, performing curve fitting and sampling on each ordered boundary point set to obtain the vectorized data of the road boundary line.

[0092] In the method for generating vectorized data of road boundary lines provided by the embodiments of the present invention, after extracting the boundary line element point set from the segmented point cloud obtained by the perception segmentation of the road and instantiating it to obtain the boundary line element instance, the local area main direction of the road boundary points is used to refine and sort the unordered three-dimensional point cloud in the boundary line element instance, and based on the sorted ordered points, a smooth vectorized data of the road boundary line is generated by using a curve fitting algorithm and curve sampling, realizing the vector generation of complex road boundaries, and further improving the production automation rate and production efficiency of high-precision maps based on the vectorized data of the road boundary line.

[0093] In step S100 above, the segmented point cloud obtained by the perception segmentation of the road is used as the input source for generating the vectorized data of the road boundary line. A typical segmented point cloud can be as Figure 2 shown. The segmented point cloud is a set of a series of unordered labeled three-dimensional space points, which can be described as The storage of the three-dimensional points in the segmented point cloud is unordered, and each point has four dimensions. x, y, and z respectively describe the three-dimensional space coordinates of the point. Generally, the coordinate system based on the three-dimensional space coordinates is a local coordinate system; l is the label of the point, which is given by the perception segmentation result.

[0094] The label l included in the data of each point in the segmented point cloud can indicate the road element type of the point. The road element type generally can include lane lines, dotted boxes, traffic signs, guardrails, roadside edges, ground, noise, etc. For example, if the label l of a certain point in the segmented point cloud is a lane line, it indicates that the point is a point related to the lane line. In particular, the road element type at least includes one or more boundary line elements of the road. If the label l of a certain point in the segmented point cloud is a boundary line element, it indicates that the point is a point related to the road boundary line.

[0095] In step S200, according to the road element type indicated by the label of the data of each point in the segmented point cloud, the points with the label of the boundary line element are respectively extracted from the segmented point cloud to form a point set.

[0096] In a further embodiment, step S200 can be specifically implemented as the following steps:

[0097] First, classify the points in the segmented point cloud according to the labels, store the points with the same label into the same point set, so as to obtain multiple point sets of different road element types. Then, extract the point set with the road element type of the boundary line element from the multiple point sets, so as to obtain one or more boundary line element point sets. Generally speaking, road boundary lines mainly include elements such as guardrails and road edges. Therefore, in some embodiments, attention can be focused only on the road boundary points composed of boundary line elements such as guardrails (Guardrail) and / or road edges (Roadside). Specifically, extract the points with the label of guardrail (guardrail) from the segmented point cloud P to form a guardrail point set (also called guardrail point cloud) P g ={p i |i = 1, 2,..., m, l(p i ) = guardrail}, and / or, extract the points with the label of roadside (road edge) from the segmented point cloud P to form a roadside point set (also called roadside point cloud) P r ={p i |i = 1, 2,..., q, l(p i ) = roadside}, where l(p i ) represents the label of the point p i .

[0098] After extracting one or more boundary line element point sets, execute step S300 to instantiate each boundary line element point set respectively.

[0099] In some embodiments, the instantiation can be divided into two steps: denoising and clustering. Specifically, first denoise each boundary line element point set, and then cluster each denoised boundary line element point set.

[0100] Due to the limitation of the accuracy of the perception segmentation algorithm and the influence of environmental noise, some points with incorrect labels will inevitably appear during segmentation. By denoising, the deviation caused by such points with incorrect labels can be reduced or even eliminated. One denoising method is to determine a sphere with an arbitrary specified radius in each boundary line element point set. If the number of points in the sphere is less than the set number threshold, all the points in the sphere are deleted, otherwise all the points in the sphere are retained. Obviously, since the points in each boundary line element point set have been classified in advance, the labels of the points in each sphere with a specified radius in each boundary line element point set are the same. For example, the labels of the points in each sphere in the roadside point set are all roadside. The method of determining the sphere with the specified radius in each boundary line element point set can be various. For example, each boundary line element point set can be evenly divided into multiple spheres with the specified radius, or by traversing the points in each boundary line element point set, each point can be used as the center of the sphere to determine multiple spheres with the specified radius.

[0101] Figure 3 The figure shows a flowchart of the step of denoising each set of boundary line element points in the method for generating vectorized data of road boundary lines according to an embodiment of the present invention. As Figure 3 shown, in this embodiment, denoising each set of boundary line element points may include the following steps S302 to S312.

[0102] Step S302: For each set of boundary line element points, search for any point in the set of boundary line element points that has not been denoised, and determine a sphere with a first specified radius with this point as the center of the sphere.

[0103] Specifically, in this step, K-D tree search may be used.

[0104] Step S304: Determine whether the number of points inside the sphere is less than the set number threshold; if so, execute step S306; if not, execute step S308.

[0105] Step S306: Delete all points inside the sphere.

[0106] Step S308: Mark all points inside the sphere as points that have been denoised.

[0107] Step S310: Determine whether there are still points in the set of boundary line element points that have not been denoised; if so, return to step S302; if not, execute step S312.

[0108] Step S312: End the denoising step.

[0109] That is, when denoising each set of boundary line element points, steps S302 to S310 are repeatedly executed until there are no points in the set of boundary line element points that have not been denoised.

[0110] The above denoising method can, to a certain extent, reduce or even eliminate the influence of sparse noise, thereby further improving the accuracy of the generated vectorized data of road boundary lines.

[0111] After denoising, clustering is performed on each set of denoised boundary line element points. The clustering algorithm may, for example, adopt DBSCAN (Density-Based Spatial Clustering of Applications with Noise), Kmeans (K-means) clustering algorithm, etc. The present invention does not make specific limitations thereto.

[0112] Still taking the previously extracted guardrail point set P g and roadside edge point set P r as an example, through denoising and clustering, P g and Pr obtain the instantiation result: guardrail instance set E g ={e i | i = 1, 2, ..., n 1} and roadside edge instance set E r ={e i | i = 1, 2, ..., n 2}, where n 1 and n 2 are the number of guardrail instances and the number of roadside edge instances respectively, and each instance consists of a series of three-dimensional points that are close in distance and have the same label.

[0113] Through instantiation, different road boundary instances can be separated, preparing for subsequent vectorization. Figure 4 shows the effect after instantiating the road boundary of the segmented point cloud according to an embodiment of the present invention. Of course, those skilled in the art should recognize that the foregoing instantiation steps are performed separately for each set of boundary line element points.

[0114] After obtaining each boundary line element instance, road boundary vectorization is performed. The processing unit for vectorization is the single instance e i obtained in the foregoing instantiation step. Road boundary vectorization is mainly divided into four steps: point cloud refinement, point cloud sorting, curve fitting, and curve sampling.

[0115] Since the point clouds such as guardrails and roadside edges that make up the road boundary are a group of points occupying a certain elevation distance, and in high-precision map drawing, the road boundary is generally simplified to a curve projected on the ground, it is necessary to first project the three-dimensional points related to the instance onto the ground using the local ground equation.

[0116] Figure 5 shows a flow diagram of the steps of refining the points in each boundary line element instance (referred to as point cloud refinement) based on the main direction of the local area in the method for generating vectorization data of the road boundary line according to an embodiment of the present invention. As Figure 5 shown, the process of this point cloud refinement may include the following steps S402 to step S408.

[0117] Step S402, for each boundary line element instance, respectively form a local area point set by each point in the boundary line element instance and the points within the first specified distance from this point.

[0118] Step S404, calculate the center point and the main direction of the local area point set.

[0119] Step S406, project this point onto the main direction of the local area point set based on the center point to obtain the projection point corresponding to this point.

[0120] Step S408: Use all the projection points to form a refined point set, where the main direction of each point in the refined point set is the main direction of the corresponding local area point set.

[0121] The key point of the above point cloud refinement step is to project each point onto the main direction of the center of the local area. The following is a more specific description in combination with the foregoing instantiation results.

[0122] For each instance e i and any point p i ∈ e i , first search for all points within a first specified distance (denoted as r) from it to form a local area point set P i,neighbor ={p j | j = 1, 2,..., n, | p j - p i | < r}. Then, according to the local area point set P i,neighbor , the center point p i,m and the main direction vector l i of this local area point set can be calculated, where l i can be solved by eigenvalue decomposition. In some implementation schemes, the main direction vector can also be expressed as a unit main direction vector, that is, the main direction vector obtained after normalization with a modulus value of 1. Finally, project p i onto the main direction to obtain the corresponding projection point satisfying This step of point cloud refinement only changes the coordinates of the points and does not reduce the number of points in the instance e i . Use all the projection points of this instance to form a refined point set, denoted as Use the main direction of the local area point set when projecting each point in the instance e i as the main direction of its corresponding projection point (that is, the main direction of each point in the refined point set is the main direction of the corresponding local area point set), and denote the set formed by the main directions of each point in the refined point set as L i . Figure 6 shows a schematic diagram of the point cloud after point cloud refinement according to an embodiment of the present invention, where the black points are the points before refinement and the gray points are the points after point cloud refinement.

[0123] After point cloud refinement, the sorted point cloud can be continued for each refined point set. Figure 7 shows a schematic flowchart of the sorting step in the method for generating vectorized data of the road boundary line according to an embodiment of the present invention. As Figure 7 shown, the process of point cloud sorting may include the following steps S410 to step S436.

[0124] Step S410: For each refined point set, arbitrarily select a point from the refined point set as the reference point.

[0125] Step S412: Use the reference point as the first starting point.

[0126] Step S414: Starting from the first starting point, estimate the next point in the forward direction according to the main direction of the first starting point at a specified step size as the first estimated point.

[0127] Step S416: Form a first neighborhood point set with all the points in the refined point set whose distances from the first estimated point are within a second specified distance.

[0128] Step S418: Determine whether the first neighborhood point set is empty; if not, execute Step S420; if so, execute Step S424.

[0129] Step S420: Find the point in the first neighborhood point set that is most consistent with the main direction of the first starting point as the forward point of the first starting point.

[0130] Step S422: Use this forward point as the new first starting point and return to Step S414.

[0131] Step S424: Use the reference point as the second starting point.

[0132] Step S426: Starting from the second starting point, estimate the previous point in the backward direction according to the main direction of the second starting point at a specified step size as the second estimated point.

[0133] Step S428: Form a second neighborhood point set with all the points in the refined point set whose distances from the second estimated point are within a second specified distance.

[0134] Step S430: Determine whether the second neighborhood point set is empty; if not, execute Step S432; if so, execute Step S436.

[0135] Step S432: Find the point in the second neighborhood point set that is most consistent with the main direction of the second starting point as the backward point of the second starting point.

[0136] Step S434: Use this backward point as the new second starting point and return to Step S426.

[0137] Step S436: Sequentially combine all the backward points, the reference point, and all the forward points to obtain an ordered boundary point set.

[0138] The above steps S414, S416, S418, and S420 can be combined into a forward search step. In actual operation, the forward search step can be repeatedly executed until the first neighborhood point set is empty, thereby finding all forward points starting from the selected point. Similarly, the above steps S426, S428, S430, and S432 can be combined into a backward search step. In actual operation, the backward search step can be repeatedly executed until the second neighborhood point set is empty, thereby finding all backward points starting from the selected point.

[0139] Next, the point cloud sorting step will still be specifically described with reference to the above-mentioned refined point set as an example.

[0140] Based on the refined point set and L i perform point cloud sorting. Starting from arbitrarily select a point Iteratively search for neighboring points forward and backward respectively according to its corresponding main direction until the search ends. Specifically, starting from estimate the coordinates of the next point in the forward direction according to the main direction where α is the specified step size. Then, with as the center, search for all points within a distance of the second specified distance (denoted as β) in to form the first neighborhood point set In find the point whose main direction l i is the most consistent This point is the forward point of, and satisfies Then, starting from continue to repeat the above steps to find the next point in the forward direction until the first neighborhood point set is empty. Denote the set of forward points of as The points in F are all ordered.

[0141] The principle of backward direction search is similar to that of forward direction search. First, estimate the coordinates of the previous point in the backward direction according to the main direction In search for all points within a distance of β to form the second neighborhood point set In find the point i whose direction is the most consistent with l This point is the backward point of, and satisfies Starting from again, continue to repeat the above steps to find the next point in the backward direction until the second neighborhood point set is empty. Denote the backward point set of as The points in B are all ordered.

[0142] Combine the point sets B, F and the point to finally obtain the sorted point set (i.e., the ordered boundary point set) Figure 8 FIG. shows a schematic diagram of the sorted point cloud of two road boundary examples (a) and (b) according to an embodiment of the present invention. In each example, the left figure is before sorting and the right figure is after sorting. The order of the points is rendered according to the color, and there is a gradual transition of the color. Starting from Figure 8 it can be seen that the sorted point cloud is globally ordered.

[0143] After point cloud refinement and point cloud sorting, curve fitting and sampling can be performed. In some further embodiments, when performing curve fitting on each ordered boundary point set, a curve model required for fitting can be selected according to actual needs, such as a B-spline curve model or a Bezier curve model. Use each ordered boundary point set as the input of curve fitting to obtain a curve C corresponding to each ordered boundary point set. Finally, sample each curve C at a specified interval distance d (i.e., equidistant sampling). The sampled point set is the vectorized expression of the boundary line element instance, that is, the vectorized data of the road boundary line. The obtained vectorized data of the road boundary line can be used for the drawing of high-precision maps. Figure 9 FIG. shows a schematic diagram of the vectorized expression of the generated road boundary line according to an embodiment of the present invention.

[0144] In the foregoing embodiments, when performing point cloud refinement and point cloud sorting, the first specified distance, the specified step size, and the second specified distance are preset fixed values, that is, fixed parameters are used. The point cloud refinement and sorting algorithm with fixed parameters (including fixed first specified distance, specified step size, and second specified distance) refines and sorts the point cloud in the boundary line element instance, facilitating the automated generation of complex road boundary line vectorized data, thereby improving the production automation rate of high-precision maps.

[0145] However, when the road boundary is not smooth or the noise is large, the point cloud refinement and point cloud sorting algorithms based on fixed parameters may not be fully applicable. Therefore, this application further introduces an adaptive parameter model.

[0146] Figure 10 FIG. shows a schematic flow diagram of a method for generating vectorized data of a road boundary line according to another embodiment of the present invention. Refer to Figure 10As shown, after obtaining one or more ordered boundary point sets in step S400 and before executing step S500, the method for generating vectorized data of the road boundary line may further include the following steps S440 to S460.

[0147] Step S440: Determine whether the coverage rate of each ordered boundary point set for the corresponding boundary line element instance meets the requirements. If so, execute step S500; if not, execute step S450.

[0148] Step S450: Use at least one of the first specified distance, the specified step size, and the second specified distance as an adjustment parameter, and increase the adjustment parameter at a corresponding set interval.

[0149] Step S460: Determine whether the increased adjustment parameter is greater than the corresponding preset adjustment parameter threshold. If so, execute step S500; if not, return to step S400.

[0150] It should be noted that in this embodiment, step S400 may be specifically implemented as the above steps S402 to S436. In addition, the first specified distance, the specified step size, and the second specified distance can be adjusted separately, or any two can be adjusted in combination, or all three can be adjusted simultaneously. Further, since the specified step size and the second specified distance are both used in the point cloud sorting, it is preferred to adjust the specified step size and the second specified distance in combination.

[0151] In this embodiment, the set interval and the preset adjustment parameter threshold are in one-to-one correspondence with at least one of the first specified distance, the specified step size, and the second specified distance used as the adjustment parameter. For example, if the adjustment parameter is the first specified distance, the corresponding set interval is the first specified distance adjustment interval, and the corresponding preset adjustment parameter threshold is the preset first specified distance threshold. When the adjustment parameters are the specified step size and the second specified distance, the set intervals are respectively the specified step size adjustment interval corresponding to the specified step size and the second specified distance adjustment interval corresponding to the second specified distance, and the preset adjustment parameter thresholds are respectively the preset specified step size threshold corresponding to the specified step size and the preset second specified distance threshold corresponding to the second specified distance, and so on.

[0152] The first specified distance used in the point cloud refinement is a relatively important parameter. The larger the first specified distance, the greater the anti-noise ability, and at the same time, the worse the ability to depict details. In practical applications, it is necessary to make a trade-off according to the quality of the point cloud data and the accuracy requirements of the high-precision map. In this embodiment, by setting the corresponding preset adjustment parameter threshold, to a certain extent, it is prevented that the adjustment parameter is adjusted to be too large and details are lost, thereby causing a decrease in map accuracy.

[0153] In this embodiment, in the case where the sorted points cannot meet the point set in the covered boundary line element instance due to uneven road boundaries or high noise, an automated generation of vectorized data for road boundary lines is achieved through a point cloud refinement and sorting algorithm that adaptively adjusts parameters (including at least one of adjusting the first specified distance, the specified step size, and the second specified distance), thereby further improving the accuracy of the high-precision map while increasing the production automation rate of the high-precision map.

[0154] Figure 11 The flowchart shows the steps of determining whether the coverage rate of each ordered boundary point set for the corresponding boundary line element instance meets the requirements in the method for generating vectorized data of road boundary lines according to an embodiment of the present invention. As Figure 11 shown, in some embodiments, step S440 may include:

[0155] Step S441, for each boundary line element instance, search for any point that has not been judged for coverage in the boundary line element instance as the target point, and determine a sphere with a second specified radius with the target point as the center of the sphere;

[0156] Step S442, determine whether there is a point in the corresponding ordered boundary point set within the sphere. If so, execute step S443a; if not, execute step S443b;

[0157] Step S443a, determine that the target point is covered, and go to step S444;

[0158] Step S443b, determine that the target point is not covered, and go to step S444;

[0159] Step S444, mark the target point as having been judged for coverage;

[0160] Step S445, determine whether there is still a point that has not been judged for coverage in the boundary line element instance. If so, return to step S441; if not, execute step S446;

[0161] Step S446, calculate the ratio of the number of covered points to the total number of all points in the boundary line element instance as the coverage rate;

[0162] Step S447, determine whether the coverage rate is greater than or equal to a preset value. If so, execute step S448; if not, execute step S449;

[0163] Step S448, determine that the coverage rate meets the requirements;

[0164] Step S449, determine that the coverage rate does not meet the requirements.

[0165] In step S441, a K-D tree search can be utilized. This preset value can be set according to actual application requirements. For example, it can be set to any value within 70% to 90%, such as 80%.

[0166] Based on the same inventive concept, an embodiment of the present invention further provides an electronic device 20. Refer to Figure 12 As shown, the electronic device 20 includes a memory 21, a processor 22, and a machine-executable program 23 stored on the memory 21 and running on the processor 22. When the processor 22 executes the machine-executable program 23, it implements the method for generating vectorized data of road boundary lines according to any of the foregoing embodiments or combinations of embodiments.

[0167] Those skilled in the art can clearly understand the specific working processes of the above-described systems, devices, and units. They can refer to the corresponding processes in the foregoing method embodiments. For the sake of brevity, they will not be described in detail herein.

[0168] In addition, in each embodiment of the present invention, the functional units can be physically independent of each other, or two or more functional units can be integrated together, or all functional units can be integrated in a processing unit. The above-mentioned integrated functional units can be implemented in the form of hardware, or in the form of software or firmware.

[0169] Those of ordinary skill in the art can understand that if the integrated functional unit is implemented in the form of software and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, in essence, or all or part of the technical solution can be embodied in the form of a software product. The computer software product is stored in a storage medium, which includes several instructions for causing a computing device (such as a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the embodiments of the present invention when running the instructions. The foregoing storage medium includes: USB flash drives, mobile hard disks, read-only memories (ROMs), random access memories (RAMs), magnetic disks, or optical discs, etc., which can store program codes.

[0170] Alternatively, all or part of the steps of implementing the foregoing method embodiments can be completed by hardware related to program instructions (such as a computing device such as a personal computer, a server, or a network device). The program instructions can be stored in a computer-readable storage medium. When the program instructions are executed by the processor of the computing device, the computing device executes all or part of the steps of the methods described in the embodiments of the present invention.

[0171] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it; although the present invention has been described in detail with reference to the foregoing embodiments, those of ordinary skill in the art should understand that within the spirit and principle of the present invention, it is still possible to modify the technical solutions described in the foregoing embodiments, or perform equivalent replacements on some or all of the technical features; and these modifications or replacements do not cause the corresponding technical solutions to deviate from the protection scope of the present invention.

Claims

1. A method for generating vectorized data of road boundary lines, comprising: obtaining segmented point clouds obtained by sensing and segmenting a road, wherein the segmented point clouds are a set of unordered multiple three-dimensional spatial points with labels, and the labels indicate the road element types of each point, and the road element types at least include one or more boundary line elements of the road; respectively extracting points with labels of the boundary line elements from the segmented point clouds to form point sets, obtaining one or more boundary line element point sets, wherein each of the boundary line element point sets contains points with the same boundary line element label; instantiating each of the boundary line element point sets to obtain one or more boundary line element instances; refining and sorting the points in each of the boundary line element instances based on the local area main direction to obtain one or more ordered boundary point sets; performing curve fitting and sampling on each of the ordered boundary point sets to obtain the vectorized data of the road boundary lines; wherein the step of refining the points in each of the boundary line element instances based on the local area main direction includes: for each of the boundary line element instances, respectively forming a local area point set by each point in the boundary line element instance and points within a first specified distance from the point; calculating the center point and the main direction of the local area point set; projecting the point onto the main direction of the local area point set based on the center point to obtain a projection point corresponding to the point; forming a refined point set with all the projection points, wherein the main direction of each point in the refined point set is the main direction of the corresponding local area point set.

2. The vectorized data generation method according to claim 1, wherein, the step of respectively extracting points with labels of the boundary line elements from the segmented point clouds to form point sets, obtaining one or more boundary line element point sets includes: classifying the points in the segmented point clouds according to the labels, and storing points with the same label into the same point set to obtain multiple point sets of different road element types; extracting point sets with road element types of the boundary line elements from the multiple point sets, thereby obtaining one or more boundary line element point sets.

3. The vectorized data generation method according to claim 1, wherein, the step of instantiating each of the boundary line element point sets includes: denoising each of the boundary line element point sets; clustering each of the denoised boundary line element point sets.

4. The vectorized data generation method according to claim 3, wherein, the step of denoising each of the boundary line element point sets includes: for each of the boundary line element point sets, searching for any point in the boundary line element point set that has not been denoised, and determining a sphere with a first specified radius with the point as the center; judging whether the number of points in the sphere is less than a set number threshold; if so, deleting all the points in the sphere; if not, marking all the points in the sphere as points that have been denoised; judging whether there are still points in the boundary line element point set that have not been denoised; If it exists, return to the step of searching for any un-denoised point in the set of boundary line element points, and determining a sphere with a first specified radius with the point as the center of the sphere for each set of boundary line element points; If it does not exist, end the denoising step.

5. The vectorized data generation method according to claim 1, wherein, The step of sorting the points in each boundary line element instance based on the local area main direction includes: Step S410, for each refined point set, arbitrarily select a point from the refined point set as the reference point; Step S412, use the reference point as the first starting point; Step S414, starting from the first starting point, estimate the next point in the forward direction as the first estimated point according to the main direction of the first starting point at a specified step size; Step S416, form a first neighborhood point set with all the points in the refined point set whose distance from the first estimated point is within a second specified distance; Step S418, determine whether the first neighborhood point set is empty; if not, execute step S420; if so, execute step S424; Step S420, find the point in the first neighborhood point set that is most consistent with the main direction of the first starting point as the forward point of the first starting point; Step S422, use the forward point as the new first starting point, and return to step S414; Step S424, use the reference point as the second starting point; Step S426, starting from the second starting point, estimate the previous point in the backward direction as the second estimated point according to the main direction of the second starting point at the specified step size; Step S428, form a second neighborhood point set with all the points in the refined point set whose distance from the second estimated point is within the second specified distance; Step S430, determine whether the second neighborhood point set is empty; if not, execute step S432; if so, execute step S436; Step S432, find the point in the second neighborhood point set that is most consistent with the main direction of the second starting point as the backward point of the second starting point; Step S434, use the backward point as the new second starting point, and return to step S426; Step S436, sequentially combine all the backward points, the reference point, and all the forward points to obtain the ordered boundary point set.

6. The vectorized data generation method according to claim 5, wherein, After obtaining one or more of the ordered boundary point sets and before performing curve fitting and sampling on each ordered boundary point set, the method further includes: Adaptive adjustment parameter step: Determine whether the coverage rate of each ordered boundary point set for the corresponding boundary line element instance meets the requirements. If so, execute the step of performing curve fitting and sampling on each ordered boundary point set. If not, use at least one of the first specified distance, the specified step size, and the second specified distance as the adjustment parameter, and increase the adjustment parameter at a corresponding set interval; If the increased adjustment parameter is not greater than the corresponding preset adjustment parameter threshold, re - execute the step of refining and sorting the points in each of the boundary line element instances based on the local area main direction and the adaptive adjustment parameter step until the coverage rate of each of the ordered boundary point sets for the corresponding boundary line element instance meets the requirements; If the increased adjustment parameter is greater than the corresponding preset adjustment parameter threshold, execute the step of curve fitting and sampling for each of the ordered boundary point sets.

7. The vectorized data generation method according to claim 6, wherein, the step of determining whether the coverage rate of each of the ordered boundary point sets for the corresponding boundary line element instance meets the requirements includes: For each of the boundary line element instances, search for any point that has not been judged for coverage in the boundary line element instance as the target point, and determine a sphere with a second specified radius with the target point as the center of the sphere; Judge whether there is a point in the corresponding ordered boundary point set within the sphere. If there is, determine that the target point is covered; if not, determine that the target point is not covered; Mark the target point as having been judged for coverage; Judge whether there are still points in the boundary line element instance that have not been judged for coverage; If there are, return to the step of, for each of the boundary line element instances, searching for any point that has not been judged for coverage in the boundary line element instance as the target point, and determining a sphere with a second specified radius with the target point as the center of the sphere; If not, calculate the ratio of the number of covered points in the boundary line element instance to the total number of all points as the coverage rate; Judge whether the coverage rate is greater than or equal to a preset value; If so, determine that the coverage rate meets the requirements; otherwise, determine that the coverage rate does not meet the requirements.

8. The vectorized data generation method according to claim 1, wherein, the step of curve fitting and sampling for each of the ordered boundary point sets to obtain the vectorized data of the road boundary line includes: Select a curve model required for fitting; Use each of the ordered boundary point sets as the input of the curve model for fitting to obtain a curve corresponding to each of the ordered boundary point sets; Sample each of the curves at a specified interval distance to obtain the vectorized data of the road boundary line.

9. An electronic device, including a memory, a processor, and a machine - executable program stored on the memory and running on the processor, and when the processor executes the machine - executable program, it implements the vectorized data generation method of the road boundary line according to any one of claims 1 - 8.

Citation Information

Patent Citations

  • A subsea pipeline detection and three-dimensional reconstruction method based on multi-beam point cloud

    CN109035224A

  • Method for identifying drivable area of vehicle based on laser radar sensor

    CN110781891A