Point cloud map lane line extraction method and device, computer equipment and storage medium

By dividing the point cloud map into sub-point cloud maps and performing regional and topological connections, the problem of inaccurate lane line extraction in point cloud maps is solved, achieving more accurate lane line extraction.

CN117237892BActive Publication Date: 2026-07-07CHINA AUTOMOTIVE INNOVATION CORP

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA AUTOMOTIVE INNOVATION CORP
Filing Date
2023-09-07
Publication Date
2026-07-07

AI Technical Summary

Technical Problem

Existing technologies for extracting lane lines from point cloud maps suffer from missing lane line data, leading to inaccurate extraction.

Method used

The point cloud map is divided into multiple sub-point cloud maps. Solid line areas and dashed line areas are identified and distinguished. Based on the area attributes and the trajectory attributes of the driving trajectory points, the lane line attributes of each sub-point cloud map are determined and topological connections are performed to obtain the line segment attributes of the target lane line.

Benefits of technology

By partitioning and topologically connecting the point cloud map, complex lane lines are accurately constructed, improving the accuracy of lane line extraction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117237892B_ABST
    Figure CN117237892B_ABST
Patent Text Reader

Abstract

The application relates to a point cloud map lane line extraction method and device, computer equipment and a storage medium. The method comprises the following steps: dividing a point cloud map into at least two sub-point cloud maps, and performing lane line identification on point cloud data contained in each sub-point cloud map to obtain a solid line region and a dashed line region corresponding to each sub-point cloud map; determining the segment properties of a solid lane line and the segment properties of a dashed lane line of each sub-point cloud map according to the region properties of the solid line region, the region properties of the dashed line region and the trajectory properties of driving trajectory points in each sub-point cloud map; and performing topological connection on the solid lane line and the dashed lane line of each sub-point cloud map according to the segment properties of the solid lane line and the segment properties of the dashed lane line of each sub-point cloud map and the trajectory properties of the driving trajectory points in the point cloud map to obtain the segment properties of a target lane line of the point cloud map. The method can make the determined target lane line more accurate.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of autonomous driving technology, and in particular to a method, apparatus, computer device, and storage medium for extracting lane lines from point cloud maps. Background Technology

[0002] In recent years, with the rapid development of intelligent driving technology, high-precision maps have become an important component of this technology. Lane lines in high-precision maps are typically obtained by mapping the positions of lane lines in a point cloud map. Therefore, accurately extracting lane line positions from a point cloud map is a crucial step in creating high-precision maps.

[0003] Currently, the method for extracting lane lines from point cloud maps is usually to identify lane line point clouds in the point cloud map, and then perform simple fitting processing on all lane line point clouds to complete the extraction of the target lane line. However, since the shape of lane lines varies in actual use, relying solely on simple fitting operations will lead to missing lane line data, resulting in inaccurate extraction of the target lane line. Summary of the Invention

[0004] Therefore, it is necessary to provide a method, apparatus, computer equipment, and storage medium for accurately extracting lane lines from point cloud maps, addressing the aforementioned technical problems.

[0005] Firstly, this application provides a method for extracting lane lines from point cloud maps. The method includes:

[0006] The point cloud map is divided into at least two sub-point cloud maps, and lane line recognition is performed on the point cloud data contained in each sub-point cloud map to obtain the solid line area and dashed line area corresponding to each sub-point cloud map.

[0007] Based on the regional attributes of the solid line areas and the dashed line areas in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map, the line segment attributes of the solid lane lines and the line segment attributes of the dashed lane lines in each sub-point cloud map are determined.

[0008] Based on the line segment attributes of solid lane lines and dashed lane lines in each sub-point cloud map, as well as the trajectory attributes of driving trajectory points in the point cloud map, the solid lane lines and dashed lane lines in each sub-point cloud map are topologically connected to obtain the line segment attributes of the target lane line in the point cloud map; the line segment attributes of the target lane line are used to characterize the position of the target lane line in the point cloud map.

[0009] Secondly, this application also provides a point cloud map lane line extraction device. The device includes:

[0010] The region determination module is used to divide the point cloud map into at least two sub-point cloud maps, and to identify lane lines in the point cloud data contained in each sub-point cloud map to obtain the solid line area and dashed line area corresponding to each sub-point cloud map.

[0011] The attribute determination module is used to determine the line segment attributes of the solid lane lines and the dashed lane lines of each sub-point cloud map based on the regional attributes of the solid line areas and the dashed line areas in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map.

[0012] The target determination module is used to perform topological connections on the solid lane lines and dashed lane lines of each sub-point cloud map based on the line segment attributes of the solid lane lines and dashed lane lines of each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in the point cloud map, to obtain the line segment attributes of the target lane lines in the point cloud map; the line segment attributes of the target lane lines are used to characterize the position of the target lane lines in the point cloud map.

[0013] Thirdly, this application also provides a computer device. The computer device includes a memory and a processor, the memory storing a computer program, and the processor executing the computer program to perform the following steps:

[0014] The point cloud map is divided into at least two sub-point cloud maps, and lane line recognition is performed on the point cloud data contained in each sub-point cloud map to obtain the solid line area and dashed line area corresponding to each sub-point cloud map.

[0015] Based on the regional attributes of the solid line areas and the dashed line areas in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map, the line segment attributes of the solid lane lines and the line segment attributes of the dashed lane lines in each sub-point cloud map are determined.

[0016] Based on the line segment attributes of solid lane lines and dashed lane lines in each sub-point cloud map, as well as the trajectory attributes of driving trajectory points in the point cloud map, the solid lane lines and dashed lane lines in each sub-point cloud map are topologically connected to obtain the line segment attributes of the target lane line in the point cloud map; the line segment attributes of the target lane line are used to characterize the position of the target lane line in the point cloud map.

[0017] Fourthly, this application also provides a computer-readable storage medium. The computer-readable storage medium stores a computer program thereon, which, when executed by a processor, performs the following steps:

[0018] The point cloud map is divided into at least two sub-point cloud maps, and lane line recognition is performed on the point cloud data contained in each sub-point cloud map to obtain the solid line area and dashed line area corresponding to each sub-point cloud map.

[0019] Based on the regional attributes of the solid line areas and the dashed line areas in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map, the line segment attributes of the solid lane lines and the line segment attributes of the dashed lane lines in each sub-point cloud map are determined.

[0020] Based on the line segment attributes of solid lane lines and dashed lane lines in each sub-point cloud map, as well as the trajectory attributes of driving trajectory points in the point cloud map, the solid lane lines and dashed lane lines in each sub-point cloud map are topologically connected to obtain the line segment attributes of the target lane line in the point cloud map; the line segment attributes of the target lane line are used to characterize the position of the target lane line in the point cloud map.

[0021] Fifthly, this application also provides a computer program product. The computer program product includes a computer program that, when executed by a processor, performs the following steps:

[0022] The point cloud map is divided into at least two sub-point cloud maps, and lane line recognition is performed on the point cloud data contained in each sub-point cloud map to obtain the solid line area and dashed line area corresponding to each sub-point cloud map.

[0023] Based on the regional attributes of the solid line areas and the dashed line areas in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map, the line segment attributes of the solid lane lines and the line segment attributes of the dashed lane lines in each sub-point cloud map are determined.

[0024] Based on the line segment attributes of solid lane lines and dashed lane lines in each sub-point cloud map, as well as the trajectory attributes of driving trajectory points in the point cloud map, the solid lane lines and dashed lane lines in each sub-point cloud map are topologically connected to obtain the line segment attributes of the target lane line in the point cloud map; the line segment attributes of the target lane line are used to characterize the position of the target lane line in the point cloud map.

[0025] The aforementioned point cloud map lane line extraction method, apparatus, computer equipment, and storage medium divide the overall point cloud map into multiple sub-point cloud maps and perform lane line identification on each sub-point cloud map. This allows for more accurate and comprehensive identification of solid and dashed line regions on each lane. Based on the solid and dashed line regions, as well as the trajectory attributes of driving trajectory points in each sub-point cloud map, solid and dashed lane lines are determined. Finally, based on the determined solid and dashed lane lines and their trajectory attributes, topological connections are made between the solid and dashed lane lines to obtain the line segment attributes of the target lane line. By determining the topological connections of each solid and dashed lane line based on the trajectory attributes, the connection order of the solid and dashed lane lines in the target lane line can be accurately determined. In the process of extracting lane lines, this solution divides the point cloud map into partitions, distinguishing between solid lane lines and dashed lane lines, and considering the topological relationship between them. Compared with existing technologies that directly perform simple fitting operations on the point clouds of each lane line in the point cloud map, this method can accurately construct more complex lane lines, such as a lane line composed of both solid and dashed lines, thus making the determined target lane lines more accurate. Attached Figure Description

[0026] Figure 1 This is an application environment diagram of a point cloud map lane line extraction method provided in this embodiment;

[0027] Figure 2 This is a flowchart illustrating the first method for extracting lane lines from point cloud maps provided in this embodiment;

[0028] Figure 3 This embodiment provides a lane line image and a schematic diagram of alternative connected regions;

[0029] Figure 4 This embodiment provides a schematic diagram of an alternative connected region and a schematic diagram of the minimum bounding box.

[0030] Figure 5 This is a schematic diagram of a lane line topology connection provided in this embodiment;

[0031] Figure 6 This embodiment provides a flowchart for determining the attributes of dashed lane line segments.

[0032] Figure 7 This embodiment provides a schematic diagram of a dashed area and a dashed lane line.

[0033] Figure 8 This is a schematic diagram illustrating a process for updating the set of dashed lane line points in this embodiment;

[0034] Figure 9This embodiment provides a flowchart for determining the attributes of solid lane line segments.

[0035] Figure 10 This is a schematic diagram of a solid line region provided in this embodiment;

[0036] Figure 11 This embodiment provides a flowchart for updating the set of solid lane line points.

[0037] Figure 12 This is a structural block diagram of the first point cloud map lane line extraction device provided in this embodiment;

[0038] Figure 13 This is a structural block diagram of the second type of point cloud map lane line extraction device provided in this embodiment;

[0039] Figure 14 This is a structural block diagram of the third type of point cloud map lane line extraction device provided in this embodiment;

[0040] Figure 15 This is a structural block diagram of the fourth point cloud map lane line extraction device provided in this embodiment;

[0041] Figure 16 This is an internal structural diagram of a computer device provided in this embodiment. Detailed Implementation

[0042] To make the objectives, technical solutions, and advantages of this application clearer, the following detailed description is provided in conjunction with the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the scope of this application.

[0043] The point cloud map lane line extraction method provided in this application embodiment can be applied to, for example... Figure 1In the application environment shown, the navigation satellite system 101 is used to collect the vehicle's driving trajectory points in real time. Simultaneously, the navigation satellite system 101 can communicate with the server 100, sending the driving trajectory points from each sub-point cloud map acquired by the navigation satellite system 101 to the server 100. The camera 102 and radar 103 can also communicate with the server 100. The server 100 determines the point cloud map based on the image data collected by the camera 102 and the point cloud data collected by the radar 103. After obtaining the point cloud map, server 100 can further divide the point cloud map into at least two sub-point cloud maps and perform lane line identification on the point cloud data contained in each sub-point cloud map to obtain the corresponding solid line area and dashed line area of ​​each sub-point cloud map. Based on the regional attributes of the solid line area and dashed line area in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map, the line segment attributes of the solid line lanes and dashed line lanes in each sub-point cloud map are determined. Based on the line segment attributes of the solid line lanes and dashed line lanes in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in the point cloud map, the solid line lanes and dashed line lanes in each sub-point cloud map are topologically connected to obtain the line segment attributes of the target lane line in the point cloud map. After obtaining the line segment attributes of the target lane line in the point cloud map, the position of the target lane line in the point cloud map can be located based on the line segment attributes of the target lane line, and then this position can be mapped to a high-precision map, thereby realizing the construction of lane lines in a high-precision map. Server 100 can be implemented using a standalone server or a server cluster composed of multiple servers.

[0044] In one embodiment, such as Figure 2 As shown, a method for extracting lane lines from point cloud maps is provided, which can be applied to... Figure 1 Taking the server in the example, the following steps are included:

[0045] S201, divide the point cloud map into at least two sub-point cloud maps, and perform lane line recognition on the point cloud data contained in each sub-point cloud map to obtain the solid line area and dashed line area corresponding to each sub-point cloud map.

[0046] The point cloud map can be constructed based on point cloud data collected by LiDAR. The point clouds included in this map can encompass all point clouds in the LiDAR-collected environment, such as point clouds representing lane lines (i.e., lane line point clouds), as well as original point clouds of vehicles, traffic lights, road signs, and other road features. Sub-point cloud maps can be obtained by dividing the entire point cloud map into several sub-point cloud maps. For example, based on the data collection time, the corresponding area of ​​point cloud data collected within a certain time range within the entire point cloud map can be divided into a sub-point cloud map. Another method is to divide the point cloud map based on driving trajectory points. Specifically, driving trajectory points collected within a certain time range are grouped into one category, and for each category of driving trajectory points, their corresponding area within the entire point cloud map is divided into a sub-point cloud map. Since driving trajectory points represent their direction of travel, the sub-point cloud maps determined in this way can reflect the direction of travel of lane lines, facilitating the subsequent determination of the starting points of each lane line in the sub-point cloud map and assisting in determining the candidate locations of lane lines. Point cloud data can be data collected by radar that includes 3D coordinate information and light intensity information. Solid line areas can be the lane line areas corresponding to solid lane lines in the sub-point cloud map. Dashed line areas can be the lane line areas corresponding to dashed lane lines in the sub-point cloud map.

[0047] Optionally, for each sub-point cloud map, lane line recognition is performed on the point cloud data contained in the sub-point cloud map to obtain the lane line image corresponding to the sub-point cloud map; connected component extraction is performed on the lane line image to obtain at least two candidate connected regions; based on the regional attributes of each candidate connected region, solid line regions and dashed line regions are determined from each candidate connected region.

[0048] The lane line image can be obtained by mapping the lane line region in the sub-point cloud map to a raster image corresponding to the point cloud map. It should be noted that the construction process of the lane line image will be described in detail in subsequent embodiments. A connected component can be a set of adjacent pixels with the same pixel value in the lane line image. A candidate connected region can be a connected component in the lane line image representing all lane lines (including solid lane lines and dashed lane lines). It should be noted that for each lane line (including solid lane lines and dashed lane lines), there is a corresponding candidate connected component. Region attributes can include region length, region width, number of region raster cells, center point position, and region endpoint positions. It should be noted that the region endpoint positions in the region attributes can be determined by using the minimum bounding box of each candidate connected component, and taking the midpoints of the two short sides of the minimum bounding box as the two region endpoint positions of that candidate connected component.

[0049] Specifically, for each sub-point cloud data, lane line identification (i.e., identifying the semantic features of each point cloud data) is performed on the point cloud data contained in that sub-point cloud map to obtain point cloud data representing lane lines. From all the point cloud data representing lane lines, four edge point cloud data (i.e., the point cloud data with the smallest x-coordinate, the point cloud data with the largest x-coordinate, the point cloud data with the smallest y-coordinate, and the point cloud data with the largest y-coordinate) are found respectively. Based on the edge point cloud data and the preset edge buffer threshold ETS (ETS>0, such as 0.5 meters), the image edge coordinates (i.e., the minimum value of the image x-coordinate, the maximum value of the image x-coordinate, the minimum value of the image y-coordinate, and the maximum value of the image y-coordinate) are calculated. Based on the image edge coordinates and the preset grid distance r (r > 0, such as 0.03 meters), the grid image corresponding to the point cloud data representing the lane line is determined (i.e., the grid image at this time is a blank image). The two-dimensional coordinates of each point cloud data representing the lane line are projected into the corresponding grid in the grid image, and grayscale values ​​are assigned to each grid (e.g., the grayscale value of a blank grid is 0, and the grayscale value of a grid containing two-dimensional coordinates is 225). The resulting grid image containing the two-dimensional coordinates of the point cloud data representing the lane line is then used as the lane line image (i.e., the grid image corresponding to the sub-point cloud map).

[0050] For grid cells in the lane line image with identical and adjacent pixel values, a closing operation (i.e., connected component extraction) is performed to obtain a set (i.e., a connected component) containing the two-dimensional coordinates of several grid cells with identical and adjacent pixel values. The region corresponding to each set in the lane line image is then used as a candidate connected component. For example, ... Figure 3 As shown, the black dots in the left figure (1) represent the point cloud data corresponding to the lane lines in the lane line image, and the thick black lines in the right figure (2) represent the candidate connected regions. It is clear from the figure that some point cloud data are densely distributed and adjacent, as shown by the area marked by the dashed line in Figure (1). For this part of the point cloud data, the black solid area marked by the dashed line in Figure (2) can be obtained by closing operation, that is, the connected region, and then the connected region can be further used as the candidate connected region corresponding to this part of the point cloud data.

[0051] For each candidate connected region, determine its minimum bounding box. The length of this minimum bounding box is taken as the region length, and the width as the region width. Simultaneously, obtain the number of region grids contained in the candidate connected region. The region length, region width, and number of region grids are all used as region attributes for the candidate connected region. Based on these region attributes, determine solid-line and dashed-line regions from each candidate connected region. Specifically, if the number of region grids in a candidate connected region meets the solid-line requirement, and the region length and width meet the solid-line length requirement, then the candidate connected region is determined to be a solid-line region. If the number of region grids in a candidate connected region meets the dashed-line requirement, and the region length and width meet the dashed-line length requirement, then the candidate connected region is determined to be a dashed-line region.

[0052] The requirements for the number of solid lines are as follows: the area grid is greater than the first quantity threshold Ath1 (e.g., 1500 pixels) and less than the grid proportion threshold rA; the grid proportion threshold is determined based on the number of area grids and the pre-set solid line area proportion. The requirements for the number of dashed lines are as follows: the area grid is greater than the second quantity threshold Ath2 (e.g., 600 pixels) and less than or equal to the third quantity threshold Ath3 (e.g., 5000 pixels); the third quantity threshold is greater than the first quantity threshold, and the first quantity threshold is greater than the second quantity threshold. The requirements for the length of solid lines are as follows: one of the area length and area width is greater than the first length threshold Lth1 (e.g., 3 pixels), and the other is greater than the second length threshold Lth2 (e.g., 250 pixels). The requirements for the length of dashed lines are as follows: both the area length and area width are less than the third length threshold Lth3 (e.g., 300 pixels); the first length threshold is less than the third length threshold; and the third length threshold is less than the second length threshold.

[0053] Specifically, based on the number of grid cells in the candidate connected region, the region length, the solid line length requirement for the region width, and the dashed line number requirement, the candidate connected region can be determined to be a solid line region or a dashed line region using the following solid line region judgment formula (1-1) and dashed line region judgment formula (1-2).

[0054]

[0055] Wherein, PixelN represents the number of raster cells in the candidate connected region, Ath1 represents the first quantity threshold, PixelA represents the total number of raster cells in the lane line image, rA represents the raster percentage threshold, Rh represents the length of the candidate connected region, Rw represents the width of the candidate connected region, Lth1 represents the first length threshold, and Lth3 represents the third length threshold.

[0056]

[0057] Wherein, PixelN represents the number of raster cells in the candidate connected region, Ath2 represents the second quantity threshold, Ath3 represents the third quantity threshold, Rh represents the length of the candidate connected region, Rw represents the width of the candidate connected region, and Lth2 represents the second length threshold.

[0058] It should be noted that since each grid cell in the lane line image can represent a pixel, obtaining the number of grid cells in the candidate connected region is equivalent to obtaining the pixel value of that candidate connected region.

[0059] It should be noted that the specific implementation method for calculating the image edge data based on the edge point cloud data and the preset edge buffer threshold in the above embodiments can be shown in the following formula (1-3).

[0060]

[0061] Among them, X min The minimum x-coordinate representing point cloud data, X max The maximum x-coordinate, Y, of the point cloud data. min The minimum x-coordinate, Y, representing the point cloud data max The maximum ordinate of the point cloud data is represented by ETS, which represents the preset edge buffer threshold. mint The minimum value of the x-coordinate of the image, X maxt The maximum value of the abscissa of the image, Y mint The minimum value of the ordinate of the image, Y maxt It represents the maximum value of the image's vertical coordinate.

[0062] It should be noted that the specific implementation of determining the raster image corresponding to the point cloud data representing the lane line based on the image edge data and the preset raster distance in the above embodiments can be as follows: the image length and image width of the raster image are calculated based on the image edge data and the preset raster distance using the following formulas (1-4), and the raster image corresponding to the point cloud data representing the lane line is further obtained based on the image length and image width.

[0063]

[0064] Where W represents the image length of the raster image, H represents the image width of the raster image, and X... mint The minimum value of the x-coordinate of the image, X maxt The maximum value of the abscissa of the image, Y mint The minimum value of the ordinate of the image, Y maxt The maximum value of the image's vertical coordinate is represented by r, and the preset grid distance is represented by r.

[0065] It should be noted that, due to the randomness in radar-based point cloud data acquisition, the two-dimensional coordinates of the point cloud data may contain decimals, which will further lead to the presence of decimals in the image's horizontal and vertical coordinate values. To facilitate calculation, after obtaining the decimal result, this application should transform the calculated decimal result into an integer result by rounding (i.e., removing the decimal part and adding 1) to facilitate subsequent calculations.

[0066] It should be noted that the specific implementation of projecting the two-dimensional coordinates of each point cloud data representing a lane line onto the corresponding grid in the raster image can be as follows: based on the coordinate values ​​of each point cloud data representing a lane line, the minimum abscissa of the point cloud data, the distance between the minimum abscissa of the point cloud data and the preset grid, the grid coordinates of each point cloud data in the raster image are determined by the following formula (1-5). Then, based on the grid coordinates, the grid corresponding to the grid coordinates is found in the raster image, and the two-dimensional coordinates of the point cloud data corresponding to the grid coordinates are added to the grid, thus completing the two-dimensional coordinate projection of the point cloud data.

[0067]

[0068] Where Px represents the x-coordinate of the point cloud data corresponding to the raster coordinates, Py represents the y-coordinate of the point cloud data corresponding to the raster coordinates, x represents the x-coordinate of the point cloud data, y represents the y-coordinate of the point cloud data, and X represents the y-coordinate of the point cloud data. mint The minimum value of the abscissa of the image, Y mint The minimum value of the image's vertical coordinate is represented by r, and the preset grid distance is represented by r.

[0069] It should be noted that since the two-dimensional coordinates corresponding to the point cloud data and the horizontal and vertical coordinates of the image may contain decimals, in order to facilitate calculation, after calculating the decimal result, this application should transform the calculated decimal result into an integer result by rounding (i.e. removing the decimal part and adding 1) to facilitate subsequent calculations.

[0070] It should be noted that the grayscale value of a grid is typically used to represent the color corresponding to that grid. For example, when the grayscale value of a grid is 0, the grid can be represented as black, and when the grayscale value of a grid is 225, the grid can be represented as white. This setting allows for a more accurate display of the grid distribution corresponding to lane lines to the user.

[0071] Optionally, the minimum bounding box corresponding to the candidate connected region can be determined by: determining the edge grids corresponding to the candidate connected region (i.e., the grid with the smallest x-coordinate, the grid with the largest x-coordinate, the grid with the smallest y-coordinate, and the grid with the largest y-coordinate); determining the difference between the smallest and largest x-coordinates based on the two-dimensional coordinate values ​​in the edge grids, and using this difference as the length of the minimum bounding box; determining the difference between the smallest and largest y-coordinates, and using this difference as the width of the minimum bounding box; and determining the minimum bounding box corresponding to the candidate connected region based on the length and width of the minimum bounding box. Alternatively, one can determine the edge grid corresponding to the candidate connected region, and based on the grid with the smallest and largest horizontal coordinates, determine the number of grid cells in the horizontal direction between the grid with the smallest and largest horizontal coordinates as the length of the minimum bounding box; based on the grid with the smallest and largest vertical coordinates, determine the number of grid cells in the vertical direction between the grid with the smallest and largest vertical coordinates as the width of the minimum bounding box; based on the length and width of the minimum bounding box, determine the minimum bounding box corresponding to the candidate connected region. For example, such as... Figure 4 As shown, each black solid area in the left figure (1) is a candidate connected region, while in the right figure (2), there is a box outside each black solid area (i.e., candidate connected region), which is the minimum outer bounding box of the candidate connected region.

[0072] S202, based on the regional attributes of the solid line areas and the dashed line areas in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map, determine the line segment attributes of the solid line lane lines and the line segment attributes of the dashed line lane lines in each sub-point cloud map.

[0073] The trajectory attributes can include trajectory acquisition time and trajectory point location. Optionally, the trajectory attributes of driving trajectory points in each sub-point cloud map can be represented using a binary tree (K-dimension tree, KD-tree). Specifically, the implementation of constructing a binary tree based on the trajectory attributes of driving trajectory points in each sub-point cloud map can be as follows: For each sub-point cloud map, determine the trajectory acquisition time and trajectory point location of all driving trajectory points corresponding to that sub-point cloud map; find the maximum and minimum trajectory acquisition times from all driving trajectory points corresponding to that sub-point cloud map; filter out driving trajectory points whose trajectory acquisition times are between the maximum and minimum trajectory acquisition times; sort the selected driving trajectory points in ascending order of time; and finally construct a binary tree based on the sorted driving trajectory points. The advantage of this method is that it can filter out driving trajectory points with incomplete trajectory attributes. At the same time, displaying the trajectory attributes of driving trajectory points in the sub-point cloud map through a binary tree structure can speed up the user's search efficiency for adjacent driving trajectory points of a given driving trajectory point. It should be noted that the driving trajectory points in this application mainly serve to constrain the forward direction of the lane lines. They are typically used to determine the starting point of each lane line in the sub-point cloud map, as well as to assist in determining the positions of candidate points that constitute lane lines.

[0074] The line segment attributes can include the position of the line segment endpoints and the line segment width (i.e., the lane line width).

[0075] Optionally, the line segment attributes of the dashed lane lines in each sub-point cloud map are determined based on the regional attributes of the dashed areas in each sub-point cloud map and the trajectory attributes of the driving trajectory points in each sub-point cloud map; the line segment attributes of the solid lane lines in each sub-point cloud map are determined based on the regional attributes of the solid areas in each sub-point cloud map and the trajectory attributes of the driving trajectory points in each sub-point cloud map.

[0076] Specifically, the method for determining the line segment attributes of dashed lane lines can be as follows: Based on the trajectory attributes of driving trajectory points in each sub-point cloud map, the first lane line point of the dashed lane line is found from the point cloud data of each dashed area. The other endpoint of the dashed area corresponding to the first lane line point is then used as the second lane line point of that dashed lane line. Based on the positional relationship between the last two determined lane line points on the dashed lane line, and the positional relationship between the last lane line and other endpoints, combined with the positional relationship between the nearest trajectory point of the last lane line point and its previous trajectory point, points belonging to the dashed lane line are selected from other endpoints. This determines the subsequent lane trajectory points of the last lane trajectory point on the dashed lane line. By repeating the above operations, all lane line points on the dashed lane line are obtained. Then, based on all lane line points on the dashed lane line, the line segment attributes of the virtual lane line are determined. The other endpoints of the dashed area are the endpoints of each dashed area other than those already used as lane line point locations.

[0077] The method for determining the segment attributes of dashed lane lines is similar to the method described above, except that the number of dashed lane line points determined in each loop is one or more, while for solid lane lines, only the first determined lane line point is retained in each loop. Furthermore, the final dashed lane line segment attributes may contain multiple sets of segment endpoint positions, while the determined solid lane line segment attributes contain only one set of segment endpoint positions. Each set of segment endpoint positions includes the positions of the left and right endpoints of the segment.

[0078] It should be noted that the specific implementation method for determining the line segment attributes of dashed lane lines and solid lane lines in each sub-point cloud map will be described in detail in subsequent embodiments, and will not be repeated here.

[0079] S203. Based on the line segment attributes of the solid lane lines and dashed lane lines of each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in the point cloud map, perform topological connections on the solid lane lines and dashed lane lines of each sub-point cloud map to obtain the line segment attributes of the target lane lines of the point cloud map.

[0080] The line segment attribute of the target lane line is used to characterize the position and width of the target lane line in the point cloud map, as well as the solid / virtual attribute of the line segment. Optionally, the line segment attribute may also include the color value of the target lane line.

[0081] Optionally, based on the line segment attributes of the solid lane lines and dashed lane lines of each sub-point cloud map, and the trajectory attributes of the driving trajectory points in the point cloud map, the topological connection relationship of the solid lane lines and dashed lane lines of each sub-point cloud map is determined; the solid lane lines and / or dashed lane lines with topological association are taken as a target lane line of the point cloud map, and the line segment attributes of the target lane line are determined based on the line segment attributes of the solid lane lines and / or dashed lane lines that constitute the target lane line.

[0082] Specifically, for each dashed lane line, based on its segment attributes, the first and last lane line points are selected, and their positions are used to construct the connection endpoints of the dashed lane line. Based on the segment endpoints of the solid lane lines and the connection endpoints of the dashed lane lines in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in the point cloud map, the topological connection relationships between the solid and dashed lane lines in each sub-point cloud map are determined. Simultaneously, solid lane lines and / or dashed lane lines with topological relationships are designated as target lane lines in the point cloud map.

[0083] Scenario 1: For a target lane line consisting of multiple solid lane lines (or dashed lane lines), this application can directly use the endpoint positions of the segments of the multiple solid lane lines (or the endpoint positions of the segments of the multiple dashed lane lines) as the endpoint positions of the target lane line, and determine the segment width of the target lane line based on the segment width of the solid lane lines (or dashed lane lines); alternatively, the first and last lane line points of the target lane line can be selected, and the positions of these two lane line points can be used as the endpoint positions of the target lane line, while determining the segment width of the target lane line based on the segment width of the solid lane lines (or dashed lane lines).

[0084] Scenario 2: For a target lane line formed by connecting solid lane lines and dashed lane lines, this application can directly use the endpoint positions of each solid lane line and dashed lane line segment as the endpoint positions of the target lane line segment, and determine the width of the target lane line segment based on the width of the solid lane line and dashed lane line segment. Alternatively, for a portion of the target lane line formed by connecting multiple solid lane lines (or dashed lane lines), the first and last lane line points in this portion can be selected, and the positions of these two lane line points can be used as the solid line endpoint positions (or dashed line endpoint positions) of this portion. The determined solid line endpoint positions and dashed line endpoint positions can be used as the endpoint positions of the target lane line segment, and the width of the target lane line segment can be determined based on the width of the solid line and dashed lane line segment.

[0085] For example, such as Figure 5As shown, the first line from top to bottom in the diagram is the target lane line, which consists of multiple solid lane lines. This corresponds to the situation described above. Figure 5 The first and second lines are as follows: In the first line, the large circles represent the endpoints of solid lane lines, and the small circles represent solid lane lines. The small circles marked by the leftmost and rightmost large circles indicate the endpoints of the target lane line segments. The second line is a target lane line composed of multiple dashed lane lines. In the second line, the line formed by two small circles and a dashed line segment constitutes a dashed lane line. The boxes marked indicate the endpoints of the target lane line segments. The above two scenarios correspond to... Figure 5 The third line in the diagram is the target lane line, which consists of solid lane lines and dashed lane lines. In the third line, the line formed by two small circles and a dashed line segment is a dashed lane line, and the line formed by small circles without dashed line segments is a solid lane line. The two small circles marked "1" and "2" are the endpoints of the first dashed lane line segment in the target lane line, the two small circles marked "3" and "4" are the endpoints of the solid lane line segment in the target lane line, and the two small circles marked "5" and "6" are the endpoints of the second dashed lane line segment in the target lane line.

[0086] Optionally, the width of the target lane line segment can be determined by averaging the widths of the solid lane lines and / or dashed lane lines, and then using this average width as the target lane line segment width. Alternatively, the width of the segment corresponding to the first lane point in the target lane line can be selected as the target lane line segment width.

[0087] It should be noted that the above content describes the method for determining the endpoint position and width of the line segments in the line segment attributes of the target lane line. Regarding the solid / dashed attribute of the line segments, the determination method can be as follows: when the target lane line is composed of multiple solid lane lines, the solid / dashed attribute of the target lane line can be solid; when the target lane line is composed of multiple dashed lane lines, the dashed / dashed attribute of the target lane line can be dashed; when the target lane line is composed of both solid and dashed lane lines, the solid / dashed attribute of the lane lines composed of solid lane lines is solid, and the dashed / dashed attribute of the lane lines composed of dashed lane lines is dashed. The determination of the color value in the line segment attributes will be described in detail in subsequent embodiments.

[0088] The aforementioned point cloud map lane line extraction method divides the overall point cloud map into multiple sub-point cloud maps and identifies lane lines within each sub-point cloud map. This allows for more accurate and comprehensive identification of solid and dashed line regions on each lane. Based on the solid and dashed line regions, as well as the trajectory attributes of driving trajectory points in each sub-point cloud map, solid and dashed lane lines are determined. Finally, based on the determined solid and dashed lane lines and their trajectory attributes, topological connections are performed on the solid and dashed lane lines to obtain the line segment attributes of the target lane line. By determining the topological connections of each solid and dashed lane line based on the trajectory attributes, the connection order of solid and dashed lane lines within the target lane line can be accurately determined. In the process of extracting lane lines, this solution divides the point cloud map into partitions, distinguishing between solid lane lines and dashed lane lines, and considering the topological relationship between them. Compared with existing technologies that directly perform simple fitting operations on the point clouds of each lane line in the point cloud map, this method can accurately construct more complex lane lines, such as a lane line composed of both solid and dashed lines, thus making the determined target lane lines more accurate.

[0089] Optionally, to ensure the accuracy of the constructed high-precision map, both the two-dimensional coordinate information and the height coordinate information of the point cloud data are needed in the process of constructing the lane lines required for the high-precision map. Therefore, this example needs to obtain both the two-dimensional coordinate information and the height information of the point cloud data at the same time. Specifically, this embodiment can determine the elevation information of each sub-point cloud map based on the point cloud data contained in each sub-point cloud map; and add height information to the endpoint positions of the line segments in the line segment attributes of the target lane lines of the point cloud map based on the elevation information.

[0090] The elevation information can be a matrix of information containing the elevation information of each lane line point cloud in the sub-point cloud map.

[0091] Optionally, since the sub-point cloud map is the basis for constructing lane line images and elevation information, the number of grids in the lane line image corresponding to each sub-point cloud map is the same as the number of elements in the elevation information. Furthermore, the grid positions representing lane lines in the lane line image are the same as the element positions representing lane lines in the elevation information. In other words, the number of grids corresponding to the image length of the lane line image is the same as the number of columns in the elevation information, and the number of grids corresponding to the image width of the lane line image is the same as the number of rows in the elevation information. The element coordinates of each point cloud data element in the elevation information are determined (i.e., the row position represents the x-value of the elevation coordinate, and the column position represents the y-value of the elevation coordinate). Based on these element coordinates, the element corresponding to those coordinates is found in the elevation information, and the elevation coordinate of the point cloud data corresponding to those coordinates is added to that element (i.e., the element value is updated from 0 to the elevation coordinate), thus completing the elevation coordinate projection of the point cloud data.

[0092] After obtaining the elevation information and the target lane line, this embodiment can further determine the position of the endpoint of the target lane line segment in the lane line image grid in the lane line image for each target lane line in the sub-point cloud map. Based on the position of the lane line image grid, the elevation information element with the same position as the position of the lane line image grid is found from the elevation information. Based on the height information recorded in the elevation information element, the height information is added to the corresponding grid in the lane line image. At this time, the lane line position in the lane line image is the fused three-dimensional coordinate (that is, the height information for the endpoint of the line segment is added), and finally stored in the corresponding grid in the form of three-dimensional coordinates.

[0093] It should be noted that, before constructing the lane line image, to prevent the point cloud data corresponding to lane lines in the sub-point cloud map from being insufficient, the point cloud data corresponding to lane lines in the sub-point cloud map can be dilated (increasing the amount of point cloud data corresponding to lane lines), and the lane line image can be constructed based on the dilated lane line point cloud data. However, at this time, the raster representing lane lines in the lane line image and the elements representing lane lines in the elevation information are not in a one-to-one correspondence. Therefore, for lane line point cloud data where the corresponding height coordinates cannot be found in the elevation information, the height coordinates closest to that corresponding location can be selected as the height coordinates corresponding to that lane line point cloud data.

[0094] Optionally, since the LiDAR can acquire not only the three-dimensional coordinates of each point cloud data of the lane line, but also the color information of each point cloud data during the acquisition of lane line point cloud data, this embodiment can also assist in constructing lane lines in a high-precision map based on the color information of each point cloud data acquired by the LiDAR. Specifically, this embodiment can determine the color image of each sub-point cloud map based on the point cloud data contained in each sub-point cloud map; and add color information to the endpoint positions of the line segments in the line segment attributes of the target lane line of the point cloud map based on the color image.

[0095] The color image can be an image that contains color information of the lane line point clouds in the sub-point cloud map.

[0096] Optionally, the method for determining the color image of each sub-point cloud map based on the point cloud data contained in each sub-point cloud map is similar to the method for determining the lane line image in the above embodiment. The only difference is that the color information (such as color value, i.e., RGB value) of the point cloud data representing the lane line is projected into each grid, that is, the color value of each point cloud data representing the lane line is projected into the corresponding grid in the grid image.

[0097] Optionally, since the lane line image and the color image are constructed in a similar way, that is, the lane line image and the color image corresponding to each sub-point cloud map have the same image size and the same grid position representing each lane line, for each target lane line of each sub-point cloud map, the position of the endpoint of the target lane line segment in the lane line image grid is determined, and according to the position of the lane line image grid, the position of the color image grid that is the same as the position of the lane line image grid is found in the color image. According to the color information recorded in the color image grid, the color image is added to the corresponding grid in the lane line image. At this time, the lane line in the lane line image is the lane line with color value fused.

[0098] It should be noted that, since lane line colors are usually uniform in practical applications, using the color values ​​corresponding to the lane line points of each lane line that constitute the target lane line as the target lane line's color value would result in inconsistent color values ​​among the lane line points. Therefore, for a target lane line composed of multiple lane lines, this embodiment can determine the target lane line's color value based on the color values ​​corresponding to the lane line points of each lane line. Specifically, if the color values ​​corresponding to the lane line points of each lane line that constitute the target lane line are the same, then that color value can be directly used as the target lane line's color value. If the color values ​​corresponding to the lane line points of each lane line that constitute the target lane line are different, then the color value with the larger proportion can be selected as the target lane line's color value, or a preset color value can be used as the target lane line's color value. Alternatively, the average value among the color values ​​can be calculated and used as the target lane line's color value.

[0099] Optionally, after determining the line segment attributes of the target lane lines, this application can store the endpoint positions (i.e., 3D coordinate positions), solid / dashed attributes (i.e., whether the target lane line is composed of dashed or solid lines), line segment widths, and color values ​​of each target lane line in JSON format. Correspondingly, when users require high-precision maps, this application can quickly retrieve the endpoint positions, solid / dashed attributes, line segment widths, and color values ​​of each target lane line to accurately construct lane lines in the high-precision map. Furthermore, to ensure more accurate lane line construction in the high-precision map, the lane line points of each lane line constituting the target lane line (i.e., the lane line points in the dashed and solid line point sets in subsequent embodiments) can also be stored together. Compared to storing only the endpoints, this method can more realistically restore the original direction of the lane lines.

[0100] The advantage of this setup is that, during the process of constructing lane lines in a high-precision map based on the endpoint positions (i.e., 3D coordinate positions) and widths of each target lane line segment, this application can also assign lane line colors based on stored color values ​​to further complete the construction of lane lines in the high-precision map. Simultaneously, this method processes the color values ​​corresponding to the endpoints of each segment in the target lane line to ensure a uniform color for the target lane lines.

[0101] Figure 6 This is a flowchart illustrating the process of determining the attributes of dashed lane line segments in one embodiment. To more accurately determine the attributes of dashed lane line segments, this embodiment provides an optional method for determining the attributes of dashed lane line segments, including the following steps:

[0102] S601, for each sub-point cloud map, based on the trajectory attributes of the driving trajectory points in the sub-point cloud map, determine the first lane point position and the second lane point position of the dashed lane line in this round from the regional endpoint positions of each dashed line area, and add the first lane point position and the second lane point position to the dashed lane line point set of the dashed lane line in this round in sequence.

[0103] Among them, the dashed lane line point set can be a set used to store all lane points that constitute the dashed lane line.

[0104] Optionally, the first trajectory point in the driving trajectory points is determined based on the trajectory acquisition time of the driving trajectory points in the sub-point cloud map; a target area is selected from each dashed area based on the distance between the trajectory point position of the first trajectory point and the area endpoint position of each dashed area in the sub-point cloud map; and the area endpoint position of the target area is used as the first lane point position and the second lane point position of the dashed lane line in this round.

[0105] Specifically, from the driving trajectory points in the sub-point cloud map, the driving trajectory point with the earliest collection time is selected as the first trajectory point. The distance between the trajectory point of the first trajectory point and the endpoints of each dashed area in the sub-point cloud map is determined. The dashed area corresponding to the smallest distance among the determined distances is taken as the target area. The endpoints in the target area are taken as the first lane point and the second lane point of the dashed lane line in this round (that is, the endpoint closest to the first trajectory point is taken as the first lane point, and the endpoint farther from the first trajectory point is taken as the second lane point).

[0106] S602, based on the positions of the last two lane line points in the dashed lane line point set, the endpoint positions of other dashed areas, and the trajectory attributes of the driving trajectory points, update the dashed lane line point set for this round.

[0107] Optionally, based on the positions of the last two lane line points in the dashed lane line point set, and the positional relationship between the last lane line and other area endpoints, and combined with the positional relationship between the nearest driving trajectory point of the last lane point and its previous trajectory point, points belonging to the dashed lane line are selected from the other area endpoints. That is, the subsequent lane trajectory point of the last lane trajectory point on the dashed lane line is determined, and the subsequent lane trajectory point is added to the dashed lane line point set of the dashed lane line in the current round, thus updating the dashed lane line point set of the dashed lane line in the current round.

[0108] It should be noted that the specific implementation method for updating the dashed lane line point set of the current round based on the positions of the last two lane line points in the dashed lane line point set, the endpoint positions of other dashed areas, and the trajectory attributes of the driving trajectory points will be described in detail in subsequent embodiments, and will not be repeated here.

[0109] S603: After the dashed lane point set of the dashed lane line in this round is updated, update the endpoint positions of other dashed areas, and determine the first lane point position and the second lane point position of the dashed lane line in the next round based on the updated endpoint positions of other dashed areas and the trajectory attributes of the driving trajectory points. Then return to execute the operation of adding the first lane point position and the second lane point position to the dashed lane point set of the dashed lane line in this round in sequence, until the updated endpoint positions of other dashed areas are empty.

[0110] Optionally, after the set of dashed lane points for the current round is updated, the endpoint positions added to the set of dashed lane points in this round are deleted from the endpoint positions of other dashed areas. Based on the updated endpoint positions of other dashed areas and the trajectory attributes of the driving trajectory points, the first lane point position and the second lane point position of the dashed lane for the next round are determined. The process is then repeated to add the first lane point position and the second lane point position to the set of dashed lane points for the current round in sequence, until the updated endpoint positions of other dashed areas are empty.

[0111] Specifically, based on the updated endpoint positions of other dashed areas and the trajectory attributes of driving trajectory points, the method for determining the first and second lane point positions of the dashed lane line in the next round can be as follows: based on the distance between the trajectory point position of the first trajectory point and the endpoint position of the updated dashed area in the sub-point cloud map, the dashed area corresponding to the smallest distance among the determined distances is taken as the target area, and the endpoint position in the target area is taken as the first and second lane point positions of the dashed lane line in this round.

[0112] S604. Based on the set of dashed lane line points determined in each round and the area width of each dashed lane area corresponding to the dashed lane line, determine the line segment attributes of the dashed lane line determined in each round.

[0113] Optionally, based on the set of dashed lane line points determined in each round, the position of the first lane line and the position of the last lane line point in the set are taken as the endpoint positions of the dashed lane line segment. At the same time, based on the area width of each dashed area corresponding to the dashed lane line, the segment width of the dashed lane line determined in each round is determined.

[0114] Specifically, based on the width of each dashed area corresponding to the dashed lane line, the possible methods for determining the line segment width of the dashed lane line in each round are as follows: either the width of the first dashed area is used as the line segment width of the dashed lane line, or the average value between the widths of each dashed area is calculated and the obtained average value is used as the line segment width of the dashed lane line.

[0115] It should be noted that, as Figure 7 The schematic diagrams of the dashed areas and the dashed lane lines shown are as follows: In the left diagram, the lines connected by circles and solid lines are the dashed areas corresponding to "S1", "S2" and "S3" respectively, where the circles represent the endpoints of the dashed areas. In the right diagram (2), the three lines formed by circles and dashed lines (i.e., the lines corresponding to 1', 2' and 3') are the dashed lane lines 1.

[0116] The method described above for determining the segment attributes of dashed lane lines involves determining the first and second lane point positions of the dashed lane line in the current round from the endpoint positions of each dashed area, based on the trajectory attributes in the sub-point cloud map. Then, based on the last two lane point positions in the dashed lane point set, the endpoint positions of other dashed areas, and the trajectory attributes of the driving trajectory points, the dashed lane point set for the current round is updated. After updating the dashed lane point set, the endpoint positions added in the current round are removed from the endpoint positions of other dashed areas. The first and second lane point positions of the dashed lane line in the next round are then determined again. The process returns to update the dashed lane point set for the current round, ultimately determining the segment attributes of the dashed lane lines determined in each round. This method, through multiple rounds of iterative updates to the lane point set, can more accurately and precisely determine the dashed lane line to which each endpoint position belongs, thus obtaining more precise segment attributes of the dashed lane lines.

[0117] Figure 8This is a flowchart illustrating the process of updating the dashed lane line point set in one embodiment. To more accurately determine the lane line points within the dashed lane line point set, this embodiment provides an optional method for updating the dashed lane line point set, including the following steps:

[0118] S801, take the position of the last lane line point in the set of dashed lane line points as the current position of the dashed line, and select the candidate position of the dashed line from the endpoint positions of other dashed line areas that meets the distance requirement of the current position of the dashed line.

[0119] Optionally, the position of the last lane line point in the set of dashed lane line points is taken as the current position of the dashed line. The distance between the current position of the dashed line and the endpoint positions of other dashed line areas is determined. If there are other endpoint positions of dashed line areas that meet the distance requirements, then the other endpoint positions of dashed line areas are taken as candidate positions of the dashed line.

[0120] S802, determine whether there is a first case where the difference between the first dashed line forward direction angle and the second dashed line forward direction angle is less than the first direction angle threshold.

[0121] Wherein, the first dashed line forward direction angle is the forward direction angle between the current position of the dashed line and the position of the previous lane line point corresponding to the current position of the dashed line in the set of dashed line lane lines; the second dashed line forward direction angle is the forward direction angle between the position of the candidate dashed line point and the current position of the dashed line.

[0122] Optionally, vector processing is performed on the current position of the dashed line and the position of the previous lane line corresponding to the current position of the dashed line in the set of dashed lane lines to form the first dashed line forward direction angle; vector processing is performed on the candidate position of the dashed line and the current position of the dashed line to form the second dashed line forward direction angle; it is determined whether there is a first case where the difference between the first dashed line forward direction angle and the second dashed line forward direction angle is less than the first direction angle threshold (e.g., 5°).

[0123] S803, if the first case exists, the position of the candidate point of the dashed line corresponding to the forward direction angle of the second dashed line in the first case shall be used to determine the position of the newly added dashed line lane point.

[0124] Optionally, if the difference between the forward direction angle of the first dashed line and the forward direction angle of the second dashed line is less than the first direction angle threshold, it proves that the position of the candidate dashed line point and the current position of the dashed line point are almost the same as a solid line. Therefore, the position of the candidate dashed line point corresponding to the forward direction angle of the second dashed line that satisfies the first condition is used to determine the position of the newly added dashed line lane point.

[0125] S804 If the first case does not exist, then select the trajectory point closest to the current position of the dashed line from the trajectory points according to the trajectory point position in the trajectory attribute of the driving trajectory point.

[0126] Optionally, if the first case does not exist, it proves that there may be no lane line point in other dashed area that belongs to the same lane as the current point of the dashed line. Therefore, based on the position of the trajectory point in the trajectory attribute of the driving trajectory point, a preset number (e.g., 5) of trajectory points closest to the current point of the dashed line can be selected from the driving trajectory points.

[0127] S805, determine whether there is a second case where the difference between the forward direction angle of the second dashed line and the forward direction angle of the third dashed line is less than the first direction angle threshold.

[0128] Among them, the forward direction angle of the third dashed line is the forward direction angle between the nearest trajectory point and the next trajectory point of the nearest trajectory point.

[0129] Optionally, the forward direction angle between the nearest trajectory point and the next trajectory point of the nearest trajectory point is determined as the forward direction angle of the third dashed line, and at the same time, it is determined whether there is a second case where the difference between the forward direction angle of the second dashed line and the forward direction angle of the third dashed line is less than the first direction angle threshold.

[0130] S806, if a second situation exists, the position of the candidate point of the dashed line corresponding to the forward direction angle of the second dashed line in the second situation shall be used to determine the position of the newly added dashed line lane point.

[0131] Optionally, if there exists a second case where the difference between the second dashed line's forward direction angle and the third dashed line's forward direction angle is less than the first direction angle threshold, then the position of the dashed line candidate point corresponding to the second dashed line's forward direction angle that satisfies this second case will be used as the position of the newly added dashed line lane point.

[0132] S807, update the set of dashed lane points for the current dashed lane based on the location of the newly added dashed lane points.

[0133] Optionally, the newly added dashed lane point positions determined in steps S803 and S806 can be added sequentially to the dashed lane point set of the current dashed lane line to complete the update of the dashed lane point set of the current dashed lane line.

[0134] Optionally, to ensure the comprehensiveness of the dashed lane point locations included in the dashed lane point set, this step can also involve adding the newly added dashed lane point location to the dashed lane point set of the current dashed lane line; if the number of lane point locations included in the dashed lane point set of the current dashed lane line is odd, then the corresponding endpoint location of the last lane point location in the dashed lane point set is added to the dashed lane point set.

[0135] Among them, the corresponding endpoint position is the other endpoint position of the area other than the last lane line position in the area endpoint position of the dashed line area corresponding to the last lane line position.

[0136] Specifically, the newly added dashed lane point position is added to the current dashed lane point set. It is then determined whether the number of lane point positions in the set after adding the new position is odd. If it is odd, the corresponding endpoint of the last lane point added to the current set is also added to the same set, thus completing the update of the dashed lane point set for this round. If the number is even, the update of the dashed lane point set for this round is complete.

[0137] S808, if the second case does not exist, then the update of the dashed lane line point set for this round is complete.

[0138] Optionally, if the second case does not exist, the set of dashed lane line points for the current round is determined to be updated. In addition, this embodiment can also use the position of the candidate dashed line point corresponding to the smallest third dashed line forward direction angle as the first lane line point position in the new set of dashed lane line points for the next round.

[0139] The above-described method for updating the dashed lane point set determines whether a candidate dashed line point belongs to the current round's dashed lane point set by using the first dashed line forward direction angle, the second dashed line forward direction angle, and a first direction angle threshold. When the difference between the first and second dashed line forward direction angles does not meet the first direction angle threshold, it further determines whether the lane points in the current dashed lane point set are completely aligned by using the third dashed line forward direction angle, the second dashed line forward direction angle, and the first direction angle threshold. When the difference between the third and second dashed line forward direction angles meets the first direction angle threshold, it proves that the candidate dashed line point belongs to the current round's dashed lane point set. The lane point set uses candidate dashed lane points as the locations for new dashed lane points. The set of dashed lane point sets is updated by using the differences between each forward direction angle (i.e., the forward direction angle of the first dashed line, the forward direction angle of the second dashed line, and the forward direction angle of the third dashed line) and the first direction angle threshold to accurately determine whether there are any new dashed lane point locations. If there are, the dashed lane point set is updated based on the new dashed lane point locations. Otherwise, it proves that all dashed lane points in the current dashed lane point set have been found, and the determination of new dashed lane lines can be initiated. This method can accurately and comprehensively find all lane point locations for each virtual lane line with attributes.

[0140] Figure 9 This is a flowchart illustrating the process of determining the attributes of solid lane line segments in one embodiment. To more accurately determine the attributes of solid lane line segments, this embodiment provides an optional method for determining the attributes of solid lane line segments, including the following steps:

[0141] S901, for each sub-point cloud map, based on the trajectory attributes of the driving trajectory points in the sub-point cloud map, determine the first lane point position and the second lane point position of the solid line lane line in this round from the regional endpoint positions of each solid line area, and add the first lane point position and the second lane point position to the solid line lane line point set of the solid line lane line in this round in sequence.

[0142] Among them, the solid line lane point set can be a set used to store all lane points that constitute the solid line lane.

[0143] Optionally, in this embodiment, for each sub-point cloud map, the first lane point position and the second lane point position of the solid lane line in this round are determined from the regional endpoint positions of each solid line area based on the trajectory attributes of the driving trajectory points in the sub-point cloud map, and the first lane point position and the second lane point position are sequentially added to the solid lane line point set of the solid lane line in this round. This is similar to the specific implementation method in the above embodiment, where for each sub-point cloud map, the first lane point position and the second lane point position of the dashed lane line in this round are determined from the regional endpoint positions of each dashed line area based on the trajectory attributes of the driving trajectory points in the sub-point cloud map, and the first lane point position and the second lane point position are sequentially added to the dashed lane line point set of the dashed lane line in this round. Therefore, this application will not elaborate further.

[0144] S902, based on the positions of the last two lane line points in the solid line lane point set, the endpoint positions of other solid line areas, and the trajectory attributes of the driving trajectory points, update the solid line lane point set for this round.

[0145] Among them, the endpoints of other solid line areas are the endpoints of other areas besides those already used as lane line points.

[0146] Optionally, the specific implementation of updating the solid lane point set of the solid lane lines in this embodiment based on the positions of the last two lane point sets, the endpoint positions of other solid line areas, and the trajectory attributes of the driving trajectory points is similar to the implementation of updating the dashed lane point set of the dashed lane lines in the above embodiment based on the positions of the last two lane point sets, the endpoint positions of other dashed line areas, and the trajectory attributes of the driving trajectory points. The difference is that the number of dashed lane point sets determined in the current round is one or more, while for solid lane lines, only the first determined lane point is retained in the current round. In addition, the line segment attributes of the updated dashed lane lines in the current round may contain multiple sets of line segment endpoint positions, while the line segment attributes of the updated solid lane lines in the current round contain only one set of line segment endpoint positions.

[0147] S903: After the solid line lane point set of the solid line lanes in this round is updated, the endpoint positions of other solid line areas are updated according to the solid line lane point set of the solid line lanes in this round. Based on the updated endpoint positions of other solid line areas and the trajectory attributes of the driving trajectory points, the positions of the first lane point and the second lane point of the solid line lanes in the next round are determined. Then, the operation of adding the first lane point position and the second lane point position to the solid line lane point set of the solid line lanes in this round is performed sequentially until the updated endpoint positions of other solid line areas are empty.

[0148] Optionally, in this embodiment, after the solid line lane point set of the solid line lanes in the current round is updated, the endpoint positions of other solid line areas are updated according to the solid line lane point set of the solid line lanes in the current round. Based on the updated endpoint positions of other solid line areas and the trajectory attributes of the driving trajectory points, the positions of the first and second lane points of the solid line lanes in the next round are determined. The process then returns to execute the operation of sequentially adding the first and second lane point positions to the solid line lane point set of the solid line lanes in the current round, until the updated endpoint positions of other solid line areas are empty. The current method is similar to the above embodiment, in which, after the set of dashed lane points for the current round of dashed lane lines is updated, the endpoint positions of other dashed areas are updated, and the positions of the first and second lane points for the next round of dashed lane lines are determined based on the updated endpoint positions of other dashed areas and the trajectory attributes of the driving trajectory points. Then, the operation of adding the first and second lane point positions to the set of dashed lane points for the current round of dashed lane lines is performed sequentially until the updated endpoint positions of other dashed areas are empty. This application will not elaborate further on this method.

[0149] S904. Based on the set of solid lane line points determined in each round and the regional attributes of the solid lane line area corresponding to the solid lane line, determine the line segment attributes of the solid lane line determined in each round.

[0150] Optionally, for each solid lane line determined in each round, the positions of the first and last lane points in the solid lane line point set are used as the endpoint positions of the line segments in the line segment attributes of the solid lane line determined in each round; the center line of the solid line area is determined according to the area attributes of the solid line area corresponding to the solid lane line; and the line segment width in the line segment attributes of the solid lane line is determined according to the number of pixels from each position point on the center line to the tangential boundary on one side.

[0151] Specifically, the method for determining the endpoint position of a line segment can be as follows: for each round of solid lane lines, the position of the first lane point and the position of the last lane point in the set of solid lane line points of that solid lane line are both used as the endpoint positions of the line segment in the line segment attributes of the solid lane lines determined in that round.

[0152] Specifically, the width of a line segment can be determined by extracting the centerline corresponding to the solid line region from the solid line region based on the region attributes of the solid line lane line. Simultaneously, the number of pixels from each point on the centerline to the tangential boundary on one side, and the number of pixels corresponding to the centerline itself, can be counted. For example,... Figure 10 As shown, the colored squares (i.e., black squares and diagonal squares) in the figure represent the solid line area (i.e., the connected region representing the solid line). The squares with diagonal markings in the figure represent other grids in the solid line area that are not the center line. The black squares in the figure represent the grids corresponding to the center line of the solid line area. The numbers on the black squares in the figure represent the number of pixels from each point on the center line to the tangential boundary on one side.

[0153] After obtaining the number of pixels from each point on the center point to the tangential boundary on one side, and the number of pixels corresponding to the center line, the pixel half-width of the solid lane line can be determined by the following formula (1-6) based on the number of pixels from each point on the center point to the tangential boundary on one side, and the number of pixels corresponding to the center line; then, based on the pixel half-width and the preset pixel length, the line segment width in the line segment attribute of the solid lane line can be determined by the following formula (1-7).

[0154]

[0155] Where Lpw represents the pixel half-width of the solid lane line, and Pd n This represents the number of pixels at each position point on the center point that are connected to the tangential boundary on one side (i.e., Figure 10 The number marked on the black square), N represents the number of pixels corresponding to the center line (e.g., Figure 10 (The number of all black squares in the game).

[0156] Lw=Lpw*S*2 (1-7)

[0157] Where Lw represents the line segment width of the solid lane line, Lpw represents the pixel half-width of the solid lane line, and S represents the preset pixel length.

[0158] The method described above for determining the segment attributes of solid lane lines determines the first and second lane point positions of the solid lane line in the current round based on the trajectory attributes in the sub-point cloud map, starting from the endpoint positions of each solid line area. Then, based on the last two lane point positions, the endpoint positions of other solid line areas, and the trajectory attributes of the driving trajectory points, the solid lane point set for the current round is updated. After updating the solid lane point set, the first and second lane point positions of the solid lane line in the next round are determined again, and the process of updating the solid lane point set for the current round is repeated, ultimately determining the segment attributes of the solid lane lines determined in each round. This method, by updating the lane point set in multiple cyclic rounds, can more accurately and precisely determine the solid lane line to which each endpoint position belongs, thereby obtaining more precise segment attributes of the solid lane lines.

[0159] Figure 11 This is a flowchart illustrating the process of updating the set of solid lane line points in one embodiment. In this embodiment, to more accurately determine the position of each lane line point in the set of solid lane line points, an optional method for updating the set of solid lane line points is provided, including the following steps:

[0160] S1101, take the position of the last lane line point in the solid line lane line point set as the current position of the solid line, and select the candidate position of the solid line from the endpoint positions of other solid line areas that meets the distance requirement of the current position of the solid line.

[0161] Optionally, the position of the last lane line point in the set of solid line lane line points is taken as the current position of the solid line. The distance between the current position of the solid line and the endpoint positions of other solid line areas is determined, and the endpoint positions of other solid line areas that meet the distance threshold (such as 15 pixels) are selected as candidate positions of the solid line.

[0162] S1102, sort the candidate points of the solid line in descending order according to the distance between the candidate point position and the current point position of the solid line.

[0163] Optionally, based on the positions of all solid line candidate points that meet the distance requirements, the points are sorted in descending order according to the distance between the current solid line point and the positions of the solid line candidate points, and the descending sorting result is used as the sorting result of each solid line candidate point position.

[0164] S1103, sort the results in descending order, and determine whether the difference between the forward direction angle of the first solid line and the forward direction angle of the second solid line is less than the second direction angle threshold. If yes, proceed to step S1104; otherwise, proceed to step S1105.

[0165] Wherein, the first solid line forward direction angle is the forward direction angle between the current point position of the solid line and the previous lane line point position corresponding to the current point position in the lane line set; the second solid line forward direction angle is the forward direction angle between the candidate point position of the solid line and the current point position.

[0166] Optionally, vector processing is performed on the current position of the solid line and the position of the previous lane line point corresponding to the current position of the solid line in the lane line set to form the first solid line forward direction angle; vector processing is performed on the candidate position of the solid line and the current position to form the second solid line forward direction angle; according to the descending sorting results, it is determined whether the difference between the first solid line forward direction angle and the second solid line forward direction angle is less than the second direction angle threshold (e.g., 10°).

[0167] S1104. Based on the descending sorting results, the position of the first solid line candidate point that satisfies the difference between the first solid line forward direction angle and the second solid line forward direction angle being less than the second direction angle threshold is taken as the position of the new lane point.

[0168] Optionally, when a candidate solid line point is found where the difference between the first solid line forward direction angle and the second solid line forward direction angle is less than the second direction angle threshold (i.e., the first one to meet the threshold), the candidate solid line point is used as the location of the new lane point.

[0169] S1105, if there is no candidate point for the solid line whose difference between the first solid line forward direction angle and the second solid line forward direction angle is less than the second direction angle threshold, then select the closest trajectory point to the current point of the solid line from the trajectory points according to the trajectory point position in the trajectory attribute of the driving trajectory point.

[0170] Optionally, if there is no candidate solid line point whose difference between the first solid line forward direction angle and the second solid line forward direction angle is less than the second direction angle threshold, it proves that there may be no lane line point in other solid line areas that belongs to the same lane line as the current solid line point. Therefore, based on the trajectory point position in the trajectory attribute of the driving trajectory point, a preset number (e.g., 5) of trajectory points closest to the current solid line point can be selected from the driving trajectory points.

[0171] S1106. According to the descending sorting results, determine whether the difference between the forward direction angle of the second solid line and the forward direction angle of the third solid line is less than the second direction angle threshold. If yes, proceed to step S1107; otherwise, proceed to step S1109.

[0172] Among them, the forward direction angle of the third solid line is the forward direction angle between the nearest trajectory point and the next trajectory point of the nearest trajectory point.

[0173] Optionally, the forward direction angle between the nearest trajectory point and the next trajectory point of the nearest trajectory point is determined as the forward direction angle of the third dashed line, and at the same time, it is determined whether the difference between the forward direction angle of the second solid line and the forward direction angle of the third solid line is less than the second direction angle threshold.

[0174] S1107, the position of the first solid line candidate point that satisfies the difference between the second solid line forward direction angle and the third solid line forward direction angle being less than the second direction angle threshold is taken as the position of the new lane point.

[0175] Optionally, when a candidate solid line point is found where the difference between the second solid line forward direction angle and the third solid line forward direction angle is less than the second direction angle threshold (i.e., the first one to satisfy this condition), the candidate solid line point that satisfies the condition of the difference between the second solid line forward direction angle and the third solid line forward direction angle being less than the second direction angle threshold is taken as the location of the newly added lane point.

[0176] S1108, Update the set of solid lane line points for the current solid lane line based on the location of the newly added lane point.

[0177] Optionally, the specific implementation of updating the set of solid lane points of the current solid lane based on the location of the newly added lane point is similar to the implementation of updating the set of dashed lane points of the current dashed lane based on the location of the newly added dashed lane point in the above embodiment, and will not be described in detail here.

[0178] S1109, if there is no candidate point position for the solid line where the difference between the second solid line forward direction angle and the third solid line forward direction angle is less than the second direction angle threshold, then the update of the solid line lane line point set for this round is completed.

[0179] Optionally, if there is no candidate solid line point whose difference between the second solid line forward direction angle and the third solid line forward direction angle is less than the second direction angle threshold, then the solid line lane point set update for this round is completed. At the same time, in this embodiment, the candidate solid line point position corresponding to the smallest third solid line forward direction angle can also be used as the first lane point position in the new solid line lane point set for the next round.

[0180] The aforementioned method for updating the solid lane line point set determines whether a candidate solid line point belongs to the current round's solid lane line point set by using the first solid line forward direction angle, the second solid line forward direction angle, and a second direction angle threshold. Since the candidate solid line points have already been sorted in descending order, after determining the first candidate solid line point that meets the second direction angle threshold, there is no need to further judge the remaining candidate solid line points, further reducing data computation costs and computational resource consumption. Similarly, when the first candidate solid line point appears where the difference between the third and second solid line forward direction angles is less than the second direction angle threshold, there is also no need to judge the remaining candidate solid line points; this candidate solid line point can be directly used as the new dashed lane line point location. This method can more accurately and quickly determine the new dashed lane line position and update the solid lane line point set based on this new dashed lane line position, increasing the efficiency of determining the new dashed lane line position and reducing computational resource consumption.

[0181] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least some of the steps or stages of other steps.

[0182] Based on the same inventive concept, this application also provides a point cloud map lane line extraction device for implementing the point cloud map lane line extraction method described above. The solution provided by this device is similar to the solution described in the above method; therefore, the specific limitations of one or more point cloud map lane line extraction device embodiments provided below can be found in the limitations of the point cloud map lane line extraction method described above, and will not be repeated here.

[0183] In one embodiment, such as Figure 12 As shown, a point cloud map lane line extraction device 1 is provided, including: a region determination module 10, an attribute determination module 11, and a target determination module 12, wherein:

[0184] The region determination module 10 is used to divide the point cloud map into at least two sub-point cloud maps, and to identify lane lines in the point cloud data contained in each sub-point cloud map to obtain the solid line area and dashed line area corresponding to each sub-point cloud map.

[0185] The attribute determination module 11 is used to determine the line segment attributes of the solid lane lines and the dashed lane lines of each sub-point cloud map based on the regional attributes of the solid line areas and the dashed line areas in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map.

[0186] The target determination module 12 is used to perform topological connections on the solid lane lines and dashed lane lines of each sub-point cloud map based on the line segment attributes of the solid lane lines and dashed lane lines of each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in the point cloud map, to obtain the line segment attributes of the target lane lines in the point cloud map; the line segment attributes of the target lane lines are used to characterize the position of the target lane lines in the point cloud map.

[0187] In one embodiment, such as Figure 13 As shown, Figure 12 The attribute determination module 11 includes:

[0188] The image determination unit 110 is used to identify lane lines for each sub-point cloud map by performing lane line recognition on the point cloud data contained in the sub-point cloud map, and obtain the lane line image corresponding to the sub-point cloud map.

[0189] The candidate determination unit 111 is used to extract connected components from the lane line image to obtain at least two candidate connected regions.

[0190] The region determination unit 112 is used to determine solid line regions and dashed line regions from each candidate connected region based on the region attributes of each candidate connected region.

[0191] The dashed line attribute unit 113 is used to determine the line segment attribute of the dashed lane line of each sub-point cloud map based on the regional attribute of the dashed line area in each sub-point cloud map and the trajectory attribute of the driving trajectory point in each sub-point cloud map.

[0192] Solid line attribute unit 114 is used to determine the line segment attribute of the solid line lane line of each sub-point cloud map based on the regional attribute of the solid line area in each sub-point cloud map and the trajectory attribute of the driving trajectory point in each sub-point cloud map.

[0193] In one embodiment, Figure 13 The region determination unit 112 includes:

[0194] Solid line region sub-units are used to determine a candidate connected region as a solid line region if the number of region grids in the candidate connected region meets the solid line number requirement, and the region length and region width meet the solid line length requirement.

[0195] The dashed region sub-unit is used to determine the candidate connected region as a dashed region if the number of region grids in the candidate connected region meets the dashed line number requirement, and the region length and region width meet the dashed line length requirement.

[0196] In one embodiment, Figure 13 The dashed attribute unit 113 in the text also includes:

[0197] The location determination sub-unit is used to determine the first lane point position and the second lane point position of the dashed lane line in this round from the regional endpoint positions of each dashed line area, based on the trajectory attributes of the driving trajectory points in the sub-point cloud map, and add the first lane point position and the second lane point position to the dashed lane line point set of the dashed lane line in this round in sequence.

[0198] The point set update subunit is used to update the dashed lane line point set of the dashed lane line in this round based on the positions of the last two lane line points in the dashed lane line point set, the endpoint positions of other dashed area and the trajectory attributes of the driving trajectory points; wherein, the endpoint positions of other dashed area are the endpoint positions of each dashed area other than those already used as lane line point positions.

[0199] The update completion sub-unit is used to update the endpoint positions of other dashed areas after the dashed lane point set of the current round is updated. Based on the updated endpoint positions of other dashed areas and the trajectory attributes of the driving trajectory points, it determines the first lane point position and the second lane point position of the dashed lane line in the next round, and returns to execute the operation of adding the first lane point position and the second lane point position to the dashed lane point set of the current round in sequence until the updated endpoint positions of other dashed areas are empty.

[0200] The dashed line attribute sub-unit is used to determine the line segment attributes of the dashed lane lines determined in each round based on the set of dashed lane line points determined in each round and the area width of each dashed lane area corresponding to the dashed lane lines.

[0201] In one embodiment, the location determination subunit includes:

[0202] The trajectory point determination component is used to determine the first trajectory point among the driving trajectory points based on the trajectory acquisition time of the driving trajectory points in the sub-point cloud map;

[0203] The target region determination component is used to select a target region from each dashed region based on the distance between the trajectory point position of the first trajectory point and the region endpoint positions of each dashed region in the sub-point cloud map.

[0204] The lane position determination component is used to determine the location of the endpoint of the target area as the first and second lane point locations of the dashed lane lines in this round.

[0205] In one embodiment, the point set update subunit includes:

[0206] The dashed line candidate point location determination component is used to take the last lane line point location in the dashed line lane line point set as the current dashed line point location, and select dashed line candidate point locations from other dashed line area endpoint locations that meet the distance requirements of the current dashed line point location;

[0207] The first case judgment component is used to determine whether there is a first case where the difference between the first dashed line forward direction angle and the second dashed line forward direction angle is less than the first direction angle threshold; wherein, the first dashed line forward direction angle is the forward direction angle between the current point position of the dashed line and the position of the previous lane line point corresponding to the current point position of the dashed line in the set of dashed line lane lines; the second dashed line forward direction angle is the forward direction angle between the candidate point position of the dashed line and the current point position of the dashed line.

[0208] The first newly added determining component is used to determine the position of the newly added dashed lane point by taking the position of the candidate dashed point corresponding to the forward direction angle of the second dashed line in the first case if the first case exists.

[0209] The second case judgment component is used to select the trajectory point closest to the current point of the dashed line from the trajectory points according to the trajectory point position in the trajectory attribute of the driving trajectory point if the first case does not exist, and to determine whether there is a second case where the difference between the forward direction angle of the second dashed line and the forward direction angle of the third dashed line is less than the first direction angle threshold; wherein, the forward direction angle of the third dashed line is the forward direction angle between the nearest trajectory point and the next trajectory point of the nearest trajectory point;

[0210] The second newly added determining component is used to determine the position of the newly added dashed lane point by taking the position of the candidate dashed point corresponding to the second dashed line forward direction angle in the second case if a second case exists.

[0211] The point set update component is used to update the point set of the current dashed lane line based on the location of the newly added dashed lane point.

[0212] The update completion component is used to determine that the set of dashed lane line points for the current round is updated if the second case does not exist.

[0213] In one embodiment, the point set update component includes:

[0214] The point set adds a sub-component, which is used to add the location of the new dashed lane point to the dashed lane point set of the current dashed lane line;

[0215] Add a sub-component to the dot set. If the number of lane line point positions contained in the dot set of the current dotted lane line is odd, add the corresponding endpoint position of the last lane line position in the dot set to the dot set.

[0216] In one embodiment, Figure 13 The solid line attribute unit 114 in the text includes:

[0217] The solid line lane line point addition sub-unit is used to determine the first lane point position and the second lane point position of the solid line lane line in this round from the regional endpoint positions of each solid line area, based on the trajectory attributes of the driving trajectory points in the sub-point cloud map, and add the first lane point position and the second lane point position to the solid line lane line point set of the solid line lane line in this round in sequence.

[0218] The solid line lane point set update subunit is used to update the solid line lane point set of the solid line lane line in this round based on the positions of the last two lane point sets, the endpoint positions of other solid line areas, and the trajectory attributes of the driving trajectory points; wherein, the endpoint positions of other solid line areas are the endpoint positions of each solid line area other than those already used as lane point positions.

[0219] The solid line lane point set update completion subunit is used to update the endpoint positions of other solid line areas based on the solid line lane point set of the current round after the solid line lane point set of the current round is updated. Based on the updated endpoint positions of other solid line areas and the trajectory attributes of the driving trajectory points, it determines the first lane point position and the second lane point position of the solid line lane in the next round, and returns to execute the operation of adding the first lane point position and the second lane point position to the solid line lane point set of the current round in sequence, until the updated endpoint positions of other solid line areas are empty.

[0220] The solid line segment attribute determination sub-unit is used to determine the line segment attributes of the solid line lane lines determined in each round based on the set of solid line lane line points determined in each round and the area attributes of the solid line area corresponding to the solid line lane lines.

[0221] In one embodiment, the solid line segment attribute determination subunit includes:

[0222] The segment endpoint position determination component is used to determine the segment endpoint positions in the segment attributes of the solid lane lines determined in each round, based on the positions of the first and last lane points in the solid lane line point set of the solid lane line.

[0223] The centerline determination component is used to determine the centerline of the solid line area based on the area attributes of the solid line area corresponding to the solid line lane line.

[0224] The line segment width determination component is used to determine the line segment width in the line segment attributes of the solid lane line based on the number of pixels from each position point on the center line to the tangential boundary on one side.

[0225] In one embodiment, the solid lane line point set update subunit includes:

[0226] The solid line candidate point location determination component is used to take the last lane line point location in the solid line lane line point set as the current solid line point location, and select solid line candidate point locations from other solid line area endpoint locations that meet the distance requirements of the current solid line point location;

[0227] The descending sorting component is used to sort the positions of the candidate points on the solid line in descending order based on the distance between the candidate point positions and the current point position on the solid line.

[0228] The first new lane point location determination component is used to sort the results in descending order and select the first candidate solid line point whose difference between the first solid line forward direction angle and the second solid line forward direction angle is less than the second direction angle threshold as the new lane point location; wherein, the first solid line forward direction angle is the forward direction angle between the current solid line point location and the previous lane line point location corresponding to the current solid line point location in the lane line set; the second solid line forward direction angle is the forward direction angle between the candidate solid line point location and the current point location;

[0229] The second new lane point location determination component is used to select the nearest trajectory point from the driving trajectory points based on the trajectory point location in the trajectory attributes of the driving trajectory points if there is no solid line candidate point location where the difference between the first solid line forward direction angle and the second solid line forward direction angle is less than the second direction angle threshold. The first solid line candidate point location that satisfies the condition that the difference between the second solid line forward direction angle and the third solid line forward direction angle is less than the second direction angle threshold is taken as the new lane point location. The third solid line forward direction angle is the forward direction angle between the nearest trajectory point and the next trajectory point of the nearest trajectory point.

[0230] The solid line lane point set update component is used to update the solid line lane point set of the current solid line lane based on the location of newly added lane points.

[0231] The solid line lane point set update completion component is used to determine that the solid line lane point set update for this round is complete if there is no solid line candidate point position where the difference between the second solid line forward direction angle and the third solid line forward direction angle is less than the second direction angle threshold.

[0232] In one embodiment, such as Figure 14As shown, Figure 12 The target determination module 12 includes:

[0233] The topology connection relationship determination unit 120 is used to determine the topology connection relationship between the solid lane lines and the dashed lane lines of each sub-point cloud map based on the line segment attributes of the solid lane lines and the dashed lane lines of each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in the point cloud map.

[0234] The target lane line determination unit 121 is used to take solid lane lines and / or dashed lane lines with topological relationships as a target lane line in the point cloud map, and determine the line segment attributes of the target lane line based on the line segment attributes of the solid lane lines and / or dashed lane lines that constitute the target lane line.

[0235] In one embodiment, such as Figure 15 As shown, Figure 12 The point cloud map lane line extraction device 1 includes:

[0236] The elevation information determination module 13 is used to determine the elevation information of each sub-point cloud map based on the point cloud data contained in each sub-point cloud map.

[0237] The height information adding module 14 is used to add height information to the endpoint positions of the line segments in the line segment attributes of the target lane lines in the point cloud map based on the elevation information.

[0238] In one embodiment, Figure 12 The point cloud map lane line extraction device 1 includes:

[0239] The color image determination module 13 is used to determine the color image of each sub-point cloud map based on the point cloud data contained in each sub-point cloud map.

[0240] The color information adding module 14 is used to add color information to the endpoint positions of the line segments in the line segment attributes of the target lane lines of the point cloud map based on the color image.

[0241] Each module in the aforementioned point cloud map lane line extraction device can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor in a computer device, or stored in the memory of a computer device as software, so that the processor can call and execute the corresponding operations of each module.

[0242] In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as follows: Figure 16As shown, the computer device includes a processor, memory, communication interface, display screen, and input devices connected via a system bus. The processor provides computing and control capabilities. The memory includes non-volatile storage media and internal memory. The non-volatile storage media stores the operating system and computer programs. The internal memory provides an environment for the operation of the operating system and computer programs stored in the non-volatile storage media. The communication interface is used for wired or wireless communication with external terminals; wireless communication can be achieved through Wi-Fi, mobile cellular networks, NFC (Near Field Communication), or other technologies. When executed by the processor, the computer program implements a method for extracting lane lines from a point cloud map. The display screen can be an LCD screen or an e-ink display screen. The input devices can be a touch layer covering the display screen, buttons, a trackball, or a touchpad mounted on the computer device casing, or an external keyboard, touchpad, or mouse.

[0243] Those skilled in the art will understand that Figure 16 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0244] In one embodiment, a computer device is provided, including a memory and a processor, wherein the memory stores a computer program, and the processor executes the computer program to implement the point cloud map lane line extraction method described in any of the above embodiments.

[0245] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, which, when executed by a processor, is used to implement the point cloud map lane line extraction method described in any of the above embodiments. In another embodiment, a computer program product is provided, comprising a computer program that, when executed by a processor, is used to implement the point cloud map lane line extraction method described in any of the above embodiments.

[0246] It should be noted that the data involved in this application (including but not limited to data related to target lane lines and the line segment attributes of target lane lines) are all information and data authorized by the user or fully authorized by all parties.

[0247] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments of the above methods. Any references to memory, databases, or other media used in the embodiments provided in this application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (ROM), magnetic tape, floppy disk, flash memory, optical memory, high-density embedded non-volatile memory, resistive random access memory (ReRAM), magnetic random access memory (MRAM), ferroelectric random access memory (FRAM), phase change memory (PCM), graphene memory, etc. Volatile memory can include random access memory (RAM) or external cache memory, etc. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM). The databases involved in the embodiments provided in this application may include at least one type of relational database and non-relational database. Non-relational databases may include, but are not limited to, blockchain-based distributed databases. The processors involved in the embodiments provided in this application may be general-purpose processors, central processing units, graphics processing units, digital signal processors, programmable logic devices, quantum computing-based data processing logic devices, etc., and are not limited to these.

[0248] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0249] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this application should be determined by the appended claims.

Claims

1. A method for extracting lane lines from a point cloud map, characterized in that, The method includes: The point cloud map is divided into at least two sub-point cloud maps, and lane line recognition is performed on the point cloud data contained in each sub-point cloud map to obtain the solid line area and dashed line area corresponding to each sub-point cloud map. Based on the regional attributes of solid line areas and dashed line areas in each sub-point cloud map, and the trajectory attributes of driving trajectory points in each sub-point cloud map, the line segment attributes of solid lane lines and dashed lane lines in each sub-point cloud map are determined. Specifically, determining the line segment attributes of solid lane lines and dashed lane lines in each sub-point cloud map includes: for each sub-point cloud map, performing lane line identification on the point cloud data contained in that sub-point cloud map to obtain the corresponding lane line image; extracting connected components from the lane line image to obtain at least two candidate connected regions; if the number of region grids in the candidate connected region meets the solid line count requirement, and the region length and width meet the solid line length requirement, then the candidate connected region is determined to be a solid line region. The requirement for the number of solid lines is that the number of region grids is greater than a first quantity threshold and less than a grid proportion threshold; the grid proportion threshold is determined based on the number of region grids and a pre-set solid line region proportion; if the number of region grids in the candidate connected region meets the requirement for the number of dashed lines, and the region length and region width meet the requirement for the length of dashed lines, then the candidate connected region is determined to be a dashed line region; the requirement for the number of dashed lines is that the number of region grids is greater than a second quantity threshold and less than or equal to a third quantity threshold; the third quantity threshold is greater than the first quantity threshold, and the first quantity threshold is greater than the second quantity threshold; the requirement for the length of solid lines is that either the region length or the region width is greater than a first length threshold, and the other is greater than a second length threshold; the requirement for the length of dashed lines is that both the region length and the region width are less than a third length threshold; the first length threshold is less than the third length threshold; the third length threshold is less than the second length threshold; Based on the line segment attributes of the solid lane lines and dashed lane lines of each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in the point cloud map, the solid lane lines and dashed lane lines of each sub-point cloud map are topologically connected to obtain the line segment attributes of the target lane line of the point cloud map; the line segment attributes of the target lane line are used to characterize the position of the target lane line in the point cloud map.

2. The method according to claim 1, characterized in that, The process of determining the line segment attributes of the solid lane lines and dashed lane lines in each sub-point cloud map based on the regional attributes of the solid line areas and dashed line areas in each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in each sub-point cloud map, includes: Based on the regional attributes of the dashed lines in each sub-point cloud map and the trajectory attributes of the driving trajectory points in each sub-point cloud map, the line segment attributes of the dashed lane lines in each sub-point cloud map are determined. Based on the regional attributes of the solid line areas in each sub-point cloud map and the trajectory attributes of the driving trajectory points in each sub-point cloud map, the line segment attributes of the solid lane lines in each sub-point cloud map are determined.

3. The method according to claim 2, characterized in that, Based on the regional attributes of the dashed lines in each sub-point cloud map and the trajectory attributes of the driving trajectory points in each sub-point cloud map, the line segment attributes of the dashed lane lines in each sub-point cloud map are determined, including: For each sub-point cloud map, based on the trajectory attributes of the driving trajectory points in the sub-point cloud map, the first lane point position and the second lane point position of the dashed lane line in this round are determined from the regional endpoint positions of each dashed line area, and the first lane point position and the second lane point position are added to the dashed lane line point set of the dashed lane line in this round in sequence. Based on the positions of the last two lane line points in the dashed lane line point set, the endpoint positions of other dashed areas, and the trajectory attributes of the driving trajectory points, the dashed lane line point set for this round is updated; wherein, the endpoint positions of other dashed areas are the endpoint positions of each dashed area other than those already used as lane line point positions. After the set of dashed lane points for the current round is updated, the endpoint positions of the other dashed areas are updated. Based on the updated endpoint positions of the other dashed areas and the trajectory attributes of the driving trajectory points, the first lane point position and the second lane point position for the next round of dashed lanes are determined. Then, the operation of adding the first lane point position and the second lane point position to the set of dashed lane points for the current round of dashed lanes is performed sequentially until the updated endpoint positions of the other dashed areas are empty. Based on the set of dashed lane line points determined in each round, and the area width of each dashed lane area corresponding to the dashed lane line, the line segment attributes of the dashed lane line determined in each round are determined.

4. The method according to claim 3, characterized in that, The trajectory attributes include the trajectory acquisition time and trajectory point location; determining the first lane point location and the second lane point location of the dashed lane line for this round from the regional endpoint locations of each dashed line area based on the trajectory attributes of the driving trajectory points in the sub-point cloud map includes: Based on the trajectory acquisition time of the driving trajectory points in the sub-point cloud map, the first trajectory point among the driving trajectory points is determined; Based on the distance between the trajectory point position of the first trajectory point and the region endpoint positions of each dashed region in the sub-point cloud map, a target region is selected from each dashed region. The endpoints of the target area are used as the first and second lane point positions of the dashed lane lines in this round.

5. The method according to claim 3, characterized in that, Based on the positions of the last two lane line points in the dashed lane line point set, the endpoint positions of other dashed area regions, and the trajectory attributes of the driving trajectory points, the dashed lane line point set for this round is updated, including: The position of the last lane line point in the set of dashed lane line points is taken as the current position of the dashed line, and candidate positions of dashed lines that meet the distance requirements from the endpoint positions of other dashed line areas are selected. Determine whether there exists a first case where the difference between the first dashed line forward direction angle and the second dashed line forward direction angle is less than the first direction angle threshold; wherein, the first dashed line forward direction angle is the forward direction angle between the current point position and the position of the previous lane line point corresponding to the current point position in the lane line set; the second dashed line forward direction angle is the forward direction angle between the position of the dashed line candidate point and the position of the dashed line current point. If the first situation exists, then the position of the candidate point of the dashed line corresponding to the forward direction angle of the second dashed line in the first situation is used to determine the position of the newly added dashed line lane point. If the first situation does not exist, then based on the position of the trajectory point in the trajectory attribute of the driving trajectory point, the nearest trajectory point to the current position is selected from the driving trajectory points, and it is determined whether there is a second situation where the difference between the second dashed line forward direction angle and the third dashed line forward direction angle is less than the first direction angle threshold; wherein, the third dashed line forward direction angle is the forward direction angle between the nearest trajectory point and the next trajectory point of the nearest trajectory point; If the second situation exists, the position of the candidate point of the dashed line corresponding to the forward direction angle of the second dashed line in the second situation is used to determine the position of the newly added dashed line lane point. The set of dashed lane points for the current dashed lane is updated based on the location of the newly added dashed lane points.

6. The method according to claim 5, characterized in that, The step of updating the set of dashed lane points of the current dashed lane line based on the location of the newly added dashed lane point includes: Add the newly added dashed lane point position to the dashed lane point set of the current dashed lane line; If the number of lane point positions contained in the current dashed lane point set is odd, then the corresponding endpoint position of the last lane point position in the dashed lane point set is added to the dashed lane point set. Wherein, the corresponding endpoint position is another region endpoint position other than the last lane line position in the region endpoint positions of the dashed line area corresponding to the last lane line position.

7. The method according to claim 6, characterized in that, The determination of whether there exists a second case where the difference between the second dashed line's forward direction angle and the third dashed line's forward direction angle is less than the first direction angle threshold includes: If the second scenario does not exist, then the update of the dashed lane line point set for this round is complete.

8. The method according to claim 2, characterized in that, The step of determining the line segment attributes of the solid lane lines in each sub-point cloud map based on the regional attributes of the solid line areas in each sub-point cloud map and the trajectory attributes of the driving trajectory points in each sub-point cloud map includes: For each sub-point cloud map, based on the trajectory attributes of the driving trajectory points in the sub-point cloud map, the first lane point position and the second lane point position of the solid lane line in this round are determined from the regional endpoint positions of each solid line area, and the first lane point position and the second lane point position are added to the solid lane line point set of the solid lane line in this round in sequence. Based on the positions of the last two lane line points in the solid line lane point set, the endpoint positions of other solid line areas, and the trajectory attributes of the driving trajectory points, the solid line lane point set for this round is updated; wherein, the endpoint positions of other solid line areas are the endpoint positions of each solid line area other than those already used as lane line point positions. After the solid line lane point set of the solid line lanes in this round is updated, the endpoint positions of the other solid line areas are updated according to the solid line lane point set of the solid line lanes in this round. Based on the updated endpoint positions of the other solid line areas and the trajectory attributes of the driving trajectory points, the first lane point position and the second lane point position of the solid line lanes in the next round are determined. Then, the operation of adding the first lane point position and the second lane point position to the solid line lane point set of the solid line lanes in this round is performed sequentially until the updated endpoint positions of the other solid line areas are empty. Based on the set of solid lane line points determined in each round, and the regional attributes of the solid lane line area corresponding to the solid lane line, the line segment attributes of the solid lane line determined in each round are determined.

9. The method according to claim 8, characterized in that, The step of determining the line segment attributes of the solid lane lines determined in each round, based on the set of solid lane line points determined in each round and the regional attributes of the corresponding solid line areas, includes: For each solid lane line determined in each round, the position of the first lane point and the position of the last lane point in the solid lane line point set of the solid lane line are used as the line segment endpoint positions in the line segment attributes of the solid lane line determined in each round. The centerline of the solid line area is determined based on the area attributes of the solid line area corresponding to the solid line lane line. The line segment width in the line segment attribute of the solid lane line is determined based on the number of pixels from each position point on the center line to the single-sided tangential boundary.

10. The method according to claim 8, characterized in that, The step of updating the solid lane line point set for this round based on the positions of the last two lane line points in the solid lane line point set, the endpoint positions of other solid line areas, and the trajectory attributes of the driving trajectory points includes: The last lane line point in the set of solid line lane line points is taken as the current solid line point position, and candidate solid line point positions that meet the distance requirements from the endpoint positions of other solid line areas are selected. Sort the candidate points of the solid line in descending order according to the distance between the candidate point position and the current point position of the solid line; According to the descending sorting result, the first solid line candidate point whose difference between the first solid line forward direction angle and the second solid line forward direction angle is less than the second direction angle threshold is taken as the new lane point position; wherein, the first solid line forward direction angle is the forward direction angle between the current solid line point position and the previous lane line point position corresponding to the current solid line point position in the lane line set; the second solid line forward direction angle is the forward direction angle between the solid line candidate point position and the current point position; If there is no candidate solid line point whose difference between the first solid line forward direction angle and the second solid line forward direction angle is less than the second direction angle threshold, then based on the trajectory point position in the trajectory attributes of the driving trajectory points, the nearest trajectory point to the current solid line point is selected from the driving trajectory points, and the first candidate solid line point whose difference between the second solid line forward direction angle and the third solid line forward direction angle is less than the second direction angle threshold is taken as the new lane point position; wherein, the third solid line forward direction angle is the forward direction angle between the nearest trajectory point and the next trajectory point of the nearest trajectory point; Based on the location of the newly added lane point, the set of solid lane point points for the current solid lane line is updated.

11. The method according to claim 10, characterized in that, The method further includes: If there is no candidate point location for the solid line where the difference between the second solid line forward direction angle and the third solid line forward direction angle is less than the second direction angle threshold, then the update of the solid line lane line point set for this round is completed.

12. The method according to claim 1, characterized in that, The step involves performing topological connections on the solid and dashed lane lines of each sub-point cloud map based on the line segment attributes of the solid and dashed lane lines of each sub-point cloud map, as well as the trajectory attributes of the driving trajectory points in the point cloud map, to obtain the line segment attributes of the target lane lines in the point cloud map. This includes: Based on the line segment attributes of solid lane lines and dashed lane lines in each sub-point cloud map, as well as the trajectory attributes of driving trajectory points in the point cloud map, the topological connection relationship of solid lane lines and dashed lane lines in each sub-point cloud map is determined. Solid lane lines and / or dashed lane lines with topological relationships are used as a target lane line in the point cloud map, and the line segment attributes of the target lane line are determined based on the line segment attributes of the solid lane lines and / or dashed lane lines that constitute the target lane line.

13. The method according to any one of claims 1 to 12, characterized in that, The method further includes: Based on the point cloud data contained in each sub-point cloud map, determine the elevation information of each sub-point cloud map; Based on the elevation information, add height information to the endpoint positions of the line segments in the line segment attributes of the target lane line in the point cloud map.

14. The method according to claim 13, characterized in that, The method further includes: Based on the point cloud data contained in each sub-point cloud map, determine the color image of each sub-point cloud map; Based on the color image, color information is added to the endpoint positions of the line segments in the line segment attributes of the target lane lines in the point cloud map.

15. A point cloud map lane line extraction device, characterized in that, Use the method described in any one of claims 1-14.

16. A computer device comprising a memory and a processor, wherein the memory stores a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the method according to any one of claims 1 to 14.

17. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 14.