Road network generation method, vehicle and computer readable storage medium
By collecting crowdsourced vehicle data to generate keyframe datasets, constructing road network node sets and connecting road segments, and performing network post-processing, the problems of high cost and long update cycle of traditional high-precision map generation are solved, enabling rapid construction and optimization of high-precision road networks to meet the real-time requirements of autonomous driving.
Patent Information
- Application Number
- CN202511722385.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-21
- Publication Date
- 2026-02-24
AI Technical Summary
Traditional high-precision map generation methods are costly and have long update cycles, making it difficult to meet the real-time road condition requirements of autonomous driving. Existing solutions lack effective data quality control mechanisms, resulting in low accuracy in road network construction.
By collecting vehicle crowdsourced data, a keyframe dataset is generated, a road network node set is constructed and road segments are connected, and network post-processing is performed to generate the target road network. Standardized digital map data and perception data are used to accurately locate road network nodes and optimize the topology.
It reduces mapping costs, improves map update speed and accuracy, and enables the automatic construction and optimization of high-precision road networks to meet the real-time requirements of autonomous driving.
Smart Images

Figure CN121558058A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of vehicle technology, and more specifically, to a road network generation method, a vehicle, and a computer-readable storage medium. Background Technology
[0002] High-precision maps are fundamental for achieving accurate vehicle positioning, route planning, and safe driving. In recent years, with the rapid development of autonomous driving technology, the demand for high-precision maps has been increasing, especially the requirements for real-time performance and accuracy.
[0003] Currently, traditional high-precision map generation methods mainly rely on professional surveying vehicles. These vehicles are equipped with expensive equipment such as LiDAR and high-precision Global Positioning System (GPS). While this ensures high map accuracy, the equipment investment is huge, the data collection and maintenance costs are high, and the update cycle is long, making it difficult to meet the real-time road condition requirements of autonomous driving.
[0004] There is currently no good solution to the above problems. Summary of the Invention
[0005] This application provides a road network generation method, a vehicle, and a computer-readable storage medium to at least solve the technical problems of high acquisition and maintenance costs and long update cycles in the generation of high-precision maps in related technologies.
[0006] According to one aspect of the embodiments of this application, a road network generation method is provided, comprising: collecting crowdsourced data of vehicles; generating a keyframe dataset based on the crowdsourced data; constructing a road network node set using the keyframe dataset and constructing multiple connecting road segments using the road network node set; generating an initial road network through the multiple connecting road segments; and performing network post-processing on the initial road network to generate a target road network.
[0007] Furthermore, generating a keyframe dataset based on crowdsourced data includes: determining the vehicle's original driving trajectory based on crowdsourced data; optimizing the original driving trajectory to generate a target driving trajectory; and using the target driving trajectory to obtain a keyframe dataset.
[0008] Furthermore, obtaining the keyframe dataset using the target driving trajectory includes: calculating the cumulative driving distance using multiple trajectory points on the target driving trajectory; selecting multiple keyframe points based on the cumulative driving distance; transforming the multiple keyframe points and multiple road element points associated with the target driving trajectory to a first coordinate system to obtain a first transformation result, wherein the first coordinate system is an orthogonal coordinate system related to the driving trajectory; performing segmented scanning on the multiple keyframe points according to a preset distance to obtain multiple keyframe scanning segments; and obtaining the keyframe dataset based on the first transformation result and the multiple keyframe scanning segments.
[0009] Furthermore, obtaining the keyframe dataset based on the first transformation result and multiple keyframe scan segments includes: calculating the longitudinal distance between multiple road element points and the target driving trajectory based on the first transformation result; associating the multiple road element points with multiple keyframe points according to the longitudinal distance to obtain association results; transforming the multiple road elements corresponding to the multiple road element points to a second coordinate system based on the association results to obtain a second transformation result, wherein the second coordinate system is the local coordinate system of the keyframes; and obtaining the keyframe dataset based on the second transformation result and multiple keyframe scan segments.
[0010] Furthermore, the crowdsourced data includes at least one of the following: standardized digital map data and perception data. The keyframe dataset includes multiple keyframe scan segments. Constructing a road network node set using the keyframe dataset includes: in response to the inclusion of standardized digital map data in the crowdsourced data, querying the standardized digital map data to see if there are connection identifiers corresponding to multiple keyframe scan segments; in response to finding connection identifiers in the standardized digital map data, adding the keyframe scan segments corresponding to the connection identifiers to the road network node set; in response to the absence of standardized digital map data in the crowdsourced data, querying the perception data to see if there are intersection boxes; in response to finding intersection boxes in the perception data, adding the keyframe scan segments located within the intersection boxes to the road network node set; in response to the absence of intersection boxes in the perception data, temporarily constructing intersection boxes using the perception data and adding the keyframe scan segments located within the intersection boxes to the road network node set.
[0011] Furthermore, constructing multiple connecting road segments using a road network node set includes: performing cluster analysis on keyframe scan segments of intersection types contained in the road network node set to obtain analysis results; generating multiple initial road network nodes based on the analysis results; updating the multiple initial road network nodes by comparing them with known road network nodes to obtain multiple intermediate road network nodes; evaluating the confidence of the multiple intermediate road network nodes and filtering out some road network nodes that do not meet the preset quality requirements to obtain multiple target road network nodes; and constructing multiple connecting road segments using the multiple target road network nodes.
[0012] Furthermore, constructing multiple connecting road segments using multiple target road network nodes includes: determining multiple candidate connecting trajectory pairs using multiple target road network nodes; evaluating the trajectory quality of multiple candidate connecting trajectory pairs and selecting multiple target connecting trajectories from the multiple candidate connecting trajectory pairs; generating multiple connecting skeletons based on the multiple target connecting trajectories; and constructing the geometric shapes of the multiple connecting skeletons to obtain multiple connecting road segments.
[0013] Further, post-processing of the initial road network to generate the target road network includes: improving the topology of the initial road network by establishing bidirectional associations between road network nodes and connecting road segments to obtain an improved road network; deleting invalid nodes with confidence levels below a preset threshold from the improved road network and merging the connecting road segments associated with the invalid nodes to obtain a deleted road network; performing topology verification on the deleted road network to obtain a verified road network; synchronizing the verified road network with the historical version road network to obtain a synchronized road network; and attaching the identifiers of associated road segments to the road network nodes included in the synchronized road network to obtain the target road network.
[0014] According to another aspect of the embodiments of this application, a road network generation device is also provided, comprising: a collection module for collecting crowdsourced data of vehicles; a first generation module for generating a keyframe dataset based on the crowdsourced data; a construction module for constructing a road network node set using the keyframe dataset and constructing multiple connecting road segments using the road network node set; a second generation module for generating an initial road network through multiple connecting road segments; and a processing module for performing network post-processing on the initial road network to generate a target road network.
[0015] According to another aspect of the embodiments of this application, a vehicle is also provided, including: a memory storing an executable program; and a processor for running the program, wherein the program executes the methods in various embodiments of this application when it runs.
[0016] According to another aspect of the embodiments of this application, a computer-readable storage medium is also provided, the computer-readable storage medium including a stored executable program, wherein, when the executable program is running, it controls the device where the computer-readable storage medium is located to perform the methods of various embodiments of this application.
[0017] According to another aspect of the embodiments of this application, a computer program product is also provided, including a computer program that, when executed by a processor, implements the methods of various embodiments of this application.
[0018] In this embodiment, crowdsourced vehicle data is collected, and a keyframe dataset is generated based on this data. Then, a road network node set is constructed using the keyframe dataset, and multiple connecting road segments are built from the road network node set. An initial road network is then generated using these multiple connecting road segments. Finally, post-processing is performed on the initial road network to generate the target road network. This achieves the goal of automatically constructing and optimizing a high-precision road network, thereby reducing mapping costs and improving map update speed and accuracy. It also solves the technical problems of high data collection and maintenance costs and long update cycles in the production of high-precision maps in related technologies. Attached Figure Description
[0019] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0020] Figure 1 This is a flowchart of a road network generation method according to one embodiment of this application;
[0021] Figure 2 This is a flowchart of keyframe data generation according to one embodiment of this application;
[0022] Figure 3 This is another flowchart of a road network generation method according to one embodiment of this application;
[0023] Figure 4 This is a structural block diagram of a road network generation device according to one embodiment of this application. Detailed Implementation
[0024] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0025] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0026] In the fields of autonomous driving and intelligent transportation, high-precision maps play a crucial role. They not only provide detailed geographic information but also carry key data such as road attributes and traffic signs, forming the foundation for accurate vehicle positioning, route planning, and safe driving. In recent years, with the rapid development of autonomous driving technology, the demand for high-precision maps has been increasing, especially regarding real-time performance and accuracy.
[0027] Currently, traditional high-precision map generation methods primarily rely on specialized surveying vehicles equipped with expensive equipment such as LiDAR and high-precision Global Positioning System (GPS). While this ensures high map accuracy, the investment in equipment is enormous, data collection and maintenance costs are high, and update cycles are long (quarterly), making it difficult to meet the real-time road condition requirements of autonomous driving. Map provider partnerships have also been proposed. While these partnerships can provide standardized maps, they are limited by high licensing fees and closed data sharing mechanisms, hindering overall industry progress. Furthermore, crowdsourcing solutions have been proposed, utilizing driving data uploaded by public vehicles to build maps. However, the lack of effective data quality control mechanisms results in generally low accuracy of the constructed road networks, and the limited number of participating vehicles affects the diversity and comprehensiveness of the data.
[0028] Therefore, traditional high-precision map generation methods suffer from drawbacks such as high data acquisition and maintenance costs, slow map update cycles, and low accuracy in road network construction. To address these shortcomings, no effective solution has been proposed prior to this application.
[0029] According to an embodiment of this application, a method embodiment for road network generation is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.
[0030] This embodiment provides a road network generation method. Figure 1 This is a flowchart of a road network generation method according to one embodiment of this application, such as... Figure 1 As shown, the process includes the following steps:
[0031] Step S10: Collect crowdsourced data for vehicles.
[0032] In this embodiment, crowdsourced data refers to driving data collected from a large number of dispersed vehicles. Exemplarily, crowdsourced data includes, but is not limited to, driving trajectories, speeds, accelerations, perception data (such as images or point cloud data captured by cameras or LiDAR), GPS information, and other driving data for each vehicle. Exemplarily, crowdsourced data is typically uploaded to the cloud for subsequent processing and analysis.
[0033] As can be seen, this application collects vehicle driving data from various sources (autonomous or conventional vehicles, etc.), i.e., it collects crowdsourced vehicle data. Therefore, utilizing crowdsourced vehicles to collect driving data can cover a wider geographical area and road conditions, improving the diversity and comprehensiveness of the data. Furthermore, compared to the high cost of professional mapping vehicles, the crowdsourced data collection method adds almost no additional cost, significantly reducing the cost of producing high-precision maps. In addition, crowdsourced data can quickly reflect road changes, supporting map updates on a daily or even shorter cycle.
[0034] Step S11: Generate a keyframe dataset based on crowdsourced data.
[0035] In this embodiment, a keyframe is a data point in the crowdsourced data. Keyframes typically contain road features, important nodes, or information that helps with localization and map building, such as the precise pose of a vehicle at a specific location, and the detection results of environmental features (such as stop lines and lane lines).
[0036] A keyframe dataset refers to a collection of data consisting of keyframes, that is, a set of data points selected from crowdsourced data. For example, a keyframe dataset can be denoted as {KeyFrame1, KeyFrame2, ..., KeyFrameN}.
[0037] As can be seen, this application selects multiple keyframes from crowdsourced data and generates a keyframe dataset based on these keyframes. Therefore, the establishment of the keyframe dataset avoids processing redundant raw data and improves the efficiency of subsequent data processing. Furthermore, the keyframes centrally represent the features and key points of the road, facilitating accurate identification and location when constructing the road network node set later.
[0038] Step S12: Construct a road network node set using the keyframe dataset and construct multiple connecting road segments using the road network node set.
[0039] In this embodiment of the application, the road network node set is a set of representative points identified from the keyframe dataset. The nodes in the road network node set represent key locations in the road network, such as intersections and turning points. These key locations usually have high geometric consistency and topological stability and are the basis of the road network topology.
[0040] A link is a connection established between nodes in a road network, representing a continuous path of an actual road. The construction of links depends on the positional relationships between the road network nodes. Links form the backbone of the road network, connecting various important nodes and reflecting the actual direction of the roads.
[0041] For example, this application can filter keyframes from a keyframe dataset that may represent key locations in the road network, such as intersections and turning points, to construct a road network node set. Simultaneously, based on the constructed road network node set, the correlation between road network nodes is analyzed to determine which road network nodes should be connected via links and which need to form independent road segments. This allows the road network nodes to be connected through connecting road segments, thus constructing multiple connected road segments.
[0042] Therefore, by constructing the road network node set and connecting road segments, the road network structure becomes clearer and more orderly, facilitating subsequent topology optimization and verification. Furthermore, the generation of the road network node set and connecting road segments ensures high accuracy of the road network, providing stable and reliable road network information for autonomous driving.
[0043] Step S13: Generate an initial road network by connecting multiple road segments.
[0044] In this embodiment, the initial road network is a road network structure assembled from connected road segments, but it has not undergone final verification and optimization. The initial road network reflects the basic form of the road network built based on crowdsourced data and keyframe information, providing a starting point for subsequent network post-processing.
[0045] As can be seen, this application obtains an initial road network by stitching together the constructed connecting road segments to form a complete road network structure. Thus, the generation of the initial road network provides the basic framework for the road network, laying the foundation for subsequent network post-processing and optimization. Furthermore, rapid iteration and optimization can be performed based on the initial road network, shortening the time cycle for high-precision map production.
[0046] Step S14: Perform network post-processing on the initial road network to generate the target road network.
[0047] In this embodiment, NetPostProcessor refers to a series of algorithms used to improve and optimize the road network topology, including but not limited to topology improvement, invalid node handling, topology verification, and version synchronization. By performing network postprocessing, the accuracy and reliability of the final generated target road network can be improved, ensuring that it meets the quality standards of high-precision maps.
[0048] The target road network is the final road network structure after network post-processing optimization. The target road network has the characteristics of high accuracy, high confidence and real-time updates, and can be directly used for autonomous driving and intelligent navigation systems.
[0049] As can be seen, this application performs a series of post-processing operations on the initial road network to correct any errors, optimize its structure, and ensure it meets the quality standards of high-precision maps, ultimately generating the target road network. Therefore, network post-processing significantly improves the accuracy and reliability of the target road network, meeting the requirements of autonomous driving and navigation systems.
[0050] In summary, this application, by collecting crowdsourced data, obtains a broad and real-time updated data source, providing a rich and detailed data foundation for the subsequent generation of the target road network. Furthermore, this crowdsourced data possesses real-time performance and low cost. By generating a keyframe dataset, this application helps reduce the complexity of subsequent calculations while ensuring the accurate capture of key road features. By constructing a road network node set and generating connecting road segments, this application can reconstruct the true road layout, establishing a clear structural foundation for the subsequent generation of the initial road network. This application performs network post-processing on the initial road network, eliminating potential errors and inconsistencies through a series of operations such as topology improvement, invalid node handling, and topology verification, resulting in a final target road network with high accuracy and confidence.
[0051] The above steps in this application involve collecting crowdsourced vehicle data, generating a keyframe dataset based on this data, constructing a road network node set using the keyframe dataset, building multiple connecting road segments using the road network node set, generating an initial road network using the multiple connecting road segments, and finally performing network post-processing on the initial road network to generate the target road network. This achieves the goal of automatically constructing and optimizing a high-precision road network, thereby reducing mapping costs, improving map update speed and accuracy, and solving the technical problems of high data collection and maintenance costs and long update cycles in the production of high-precision maps in related technologies.
[0052] Optionally, in step S11, generating a keyframe dataset based on crowdsourced data may include the following steps:
[0053] Step S111: Determine the original driving trajectory of the vehicle based on crowdsourced data.
[0054] Step S112: Optimize the original driving trajectory to generate the target driving trajectory.
[0055] Step S113: Obtain keyframe dataset using the target driving trajectory.
[0056] In this embodiment of the application, when generating a keyframe dataset based on crowdsourced data, the original driving trajectory of the vehicle is first determined based on the crowdsourced data. The original driving trajectory refers to the original record of the vehicle's driving route obtained directly from the crowdsourced data. The original driving trajectory typically contains a large number of data points, which reflect the actual path the vehicle takes during its journey.
[0057] For example, this application first reads and parses crowdsourced data to extract vehicle location and motion information, and then determines the original driving trajectory of each vehicle based on this information. Specifically, it can identify the data stream uploaded by each vehicle, track the vehicle's movement path using GPS coordinates, and may combine other sensor information (such as wheel speedometers, gyroscopes, etc.) to enhance the continuity and accuracy of the trajectory.
[0058] Therefore, due to the wide range of sources for crowdsourced data, it can effectively cover various roads and driving scenarios, ensuring the comprehensiveness and diversity of the original driving trajectories. Furthermore, the real-time upload characteristic of crowdsourced data allows for the rapid determination of the original driving trajectories, providing an immediate data foundation for subsequent processing.
[0059] Then, the original driving trajectory is optimized to generate the target driving trajectory. Trajectory optimization refers to using nonlinear algorithms to perform global pose optimization on the vehicle trajectory. For example, advanced algorithms such as nonlinear least squares, Kalman filtering, and particle filtering can be used to optimize the data points in the original driving trajectory, correct errors caused by sensors such as GPS positioning, and improve the geometric accuracy and reliability of the trajectory.
[0060] The target driving trajectory refers to the optimized driving trajectory. Compared with the original driving trajectory, the target driving trajectory has significant improvements in geometric accuracy, time synchronization and coherence, providing a high-quality reference path for the generation of keyframes.
[0061] As can be seen, this application optimizes the original driving trajectory to generate a more accurate target driving trajectory. For example, a factor graph model can be used to integrate trajectory data from multiple vehicles, and global pose optimization can be used to adjust the position and orientation information of each vehicle during the driving process, ensuring spatial continuity and consistency.
[0062] Therefore, by reducing sensor errors, the accuracy of the target driving trajectory is much higher than that of the original trajectory, providing a more accurate basis for subsequent keyframe selection and road network generation. Furthermore, the optimization process may include data simplification, removing redundant or error-prone data points to reduce the computational burden of subsequent processing.
[0063] Finally, the keyframe dataset is obtained using the target driving trajectory.
[0064] As can be seen, this application selects key data points from the target driving trajectory using certain standards or algorithms to form a keyframe dataset. Therefore, the keyframe dataset is not only concise but also contains crucial information, facilitating efficient storage and rapid access, and simplifying subsequent processing module invocation. Furthermore, the keyframes cover important road features, helping to accurately depict road details during road network construction and improving the completeness of road information.
[0065] Optionally, in step S113, obtaining the keyframe dataset using the target driving trajectory may include the following execution steps:
[0066] Step S1131: Calculate the cumulative driving distance using multiple trajectory points on the target driving trajectory.
[0067] Step S1132: Select multiple key frame points by accumulating driving distance.
[0068] Step S1133: Transform multiple keyframe points and multiple road element points associated with the target driving trajectory to the first coordinate system to obtain the first transformation result, wherein the first coordinate system is an orthogonal coordinate system related to the driving trajectory.
[0069] Step S1134: Perform segmented scanning on multiple keyframe points according to a preset distance to obtain multiple keyframe scanning segments.
[0070] Step S1135: Obtain the keyframe dataset based on the first transformation result and multiple keyframe scan segments.
[0071] In this embodiment of the application, when obtaining the keyframe dataset using the target driving trajectory, the cumulative driving distance is first calculated using multiple trajectory points on the target driving trajectory. These multiple trajectory points refer to discrete points on the target driving trajectory recorded according to time and location. Each trajectory point contains instantaneous information about the vehicle at that location, such as coordinates and speed.
[0072] The cumulative driving distance is the total distance traveled by the vehicle from its starting position to the current trajectory point.
[0073] As can be seen, this application will traverse every trajectory point on the target driving trajectory, calculate the driving distance of the vehicle in this segment of the journey based on the Euclidean distance between the two points or a more complex kinematic model, and accumulate the total driving distance of the vehicle from the start of driving to the current point, that is, the cumulative driving distance.
[0074] Therefore, by calculating the cumulative driving distance, a clear benchmark is provided for the selection of subsequent key frame points, ensuring the uniformity and rationality of the selection process. It also allows for a better understanding and association of the relationships between trajectory points, adding information dimensions for subsequent processing.
[0075] Then, multiple keyframe points are selected based on the accumulated driving distance. These keyframe points are representative and crucial data points selected from the target driving trajectory, used for subsequent identification and construction of road network nodes.
[0076] For example, based on the cumulative driving distance, a trajectory point can be selected as a keyframe point at fixed intervals (e.g., 3m) to obtain multiple keyframe points. This selection strategy ensures that the distribution of keyframe points is relatively uniform, while covering enough geographical information to facilitate fine-grained road network construction in subsequent processing stages.
[0077] Therefore, the key frame selection strategy balances information density and processing efficiency, preserving sufficient geographical information while avoiding data redundancy.
[0078] Next, multiple keyframe points and multiple road element points associated with the target driving trajectory are transformed to the first coordinate system to obtain the first transformation result. The first coordinate system is an orthogonal coordinate system with a certain point (usually the vehicle's starting position) as the origin and the road extension direction as the axis. It is used for local coordinate transformation and feature localization; that is, the first coordinate system is an orthogonal coordinate system related to the driving trajectory. For example, the first coordinate system can be the FrenetFrame coordinate system.
[0079] Road element points are various road feature points detected along the driving trajectory, such as stop lines, traffic signs, lane lines, etc. Road element points carry important road information.
[0080] As can be seen, this application transforms keyframe points and their associated road element points from a global coordinate system (such as GPS coordinates) to a first coordinate system, thereby unifying the data representation and facilitating subsequent data processing and feature fusion in the local coordinate system. Through coordinate transformation, the system can more intuitively analyze and understand the relative positions and relationships between road elements and keyframe points.
[0081] Therefore, the introduction of the first coordinate system simplifies the complexity of data management and analysis, providing a unified reference framework for cross-sensor fusion. Furthermore, the transformed data is easier to locate features within a local area, improving the accuracy and efficiency of feature recognition.
[0082] Next, multiple keyframe points are scanned in segments according to preset distances to obtain multiple keyframe scan segments. Each keyframe scan segment is a scan segment generated at preset distance intervals along the target driving trajectory in the first coordinate system. Alternatively, a keyframe scan segment can be a local spatial data set formed by scanning the surrounding space with the keyframe point as the center and a preset distance as the radius (e.g., 500m × 500m). Each keyframe scan segment contains a local information set of all relevant road element points and sensor data near the keyframe point.
[0083] As can be seen, this application segments multiple keyframe points for scanning according to a preset distance, taking into account all road element points and other sensor data near the keyframe points to form a keyframe scanning segment containing rich information, resulting in multiple keyframe scanning segments. Through segmentation processing, large-scale road information can be refined and decomposed, facilitating parallel processing and the identification of local features.
[0084] Therefore, dividing the road network into multiple keyframe scan segments allows for parallel processing of subsequent road network construction, significantly improving processing efficiency. Furthermore, each scan segment focuses on local information near the keyframe points, enhancing the ability to capture and analyze features in that area.
[0085] Finally, a keyframe dataset is obtained based on the first transformation result and multiple keyframe scan segments.
[0086] As can be seen, this application comprehensively utilizes the information from the first transformation result and the keyframe scan segment to generate a keyframe dataset. This keyframe dataset not only includes the precise location and pose information of the keyframe points, but also associates all road elements and perception data around the point.
[0087] The resulting keyframe dataset integrates road features, vehicle perception, and spatial location information, providing a comprehensive and accurate data foundation for road network construction. Furthermore, the structured output of the keyframe dataset facilitates its use and analysis in subsequent processing stages, promoting the automation and intelligence of road network construction.
[0088] Optionally, in step S1135, obtaining the keyframe dataset based on the first transformation result and multiple keyframe scan segments may include the following execution steps:
[0089] Step S11351: Calculate the longitudinal distance between multiple road element points and the target driving trajectory based on the first transformation result.
[0090] Step S11352: Associate multiple road element points with multiple keyframe points according to the vertical distance to obtain the association results.
[0091] Step S11353: Based on the association result, transform the multiple road elements corresponding to the multiple road element points to the second coordinate system to obtain the second transformation result, wherein the second coordinate system is the local coordinate system of the keyframe.
[0092] Step S11354: Obtain the keyframe dataset based on the second transformation result and multiple keyframe scan segments.
[0093] In this embodiment of the application, when obtaining the keyframe dataset based on the first transformation result and multiple keyframe scan segments, the longitudinal distance between multiple road element points and the target driving trajectory is first calculated based on the first transformation result. The longitudinal distance is the distance calculated along the trajectory extension direction in the projection of the road element point and the target driving trajectory, and is used to measure the positional relationship of the road element point relative to the target driving trajectory.
[0094] As can be seen, this application calculates the longitudinal distance between each road element point and the target driving trajectory in its local coordinate system based on the first transformation result, i.e., it calculates the longitudinal distance offset. For example, the nearest projection point of the road element point on the target driving trajectory can be found, and then the actual distance from that nearest projection point to the road element point, i.e., the longitudinal distance, can be calculated. The longitudinal distance is measured in the direction of road extension (i.e., longitudinally) and reflects the positional information of the road element point relative to the driving trajectory, which is crucial for subsequent association and coordinate transformation.
[0095] Therefore, the use of the first transformation result ensures the consistency and accuracy of calculations under a unified coordinate system. By calculating the longitudinal distance, the positioning information of road element points is refined, which has a direct impact on the accuracy of road network construction.
[0096] Then, multiple road element points are associated with multiple keyframe points according to their vertical distance to obtain the association results. The association results reflect the correspondence between road element points and keyframe points, that is, each road element point is assigned to the nearest or most relevant keyframe point, providing structured association data for subsequent data processing and road network construction.
[0097] As can be seen, this application associates each road element point with the nearest keyframe point based on the longitudinal distance calculated above. For example, the distance between each road element point and all keyframe points can be compared, and the keyframe point with the smallest distance can be selected as the associated object of that element point, forming an association result that includes the correspondence between element points and keyframe points.
[0098] Therefore, by calculating the vertical distance, the correspondence between road element points and keyframe points was clarified, enhancing the logical correlation and usability between data points. Furthermore, the correlation results allow subsequent processing to directly access road element information associated with keyframes, eliminating the need for complex searches or matching and simplifying the processing flow.
[0099] Next, based on the association results, multiple road elements corresponding to multiple road element points are transformed to the second coordinate system to obtain the second transformation result. The second coordinate system is the keyframe local coordinate system, which is a local coordinate frame defined with each keyframe point as the center, used to more accurately represent the position and attributes of road element points from the perspective of the keyframe point.
[0100] As can be seen, this application transforms the road element points associated with keyframe points to the second coordinate system based on the association results. The purpose of this transformation is to enable subsequent road network construction and analysis to be performed more accurately within the local view of each keyframe point, unaffected by global coordinate transformation. For example, the system analyzes the association results one by one, and for each keyframe point, transforms all associated road element points from the first coordinate system to the second coordinate system centered on that keyframe point, obtaining the second transformation result.
[0101] Therefore, in the local coordinate system of the keyframe, the information of road element points becomes more detailed and accurate, which is beneficial for feature recognition and road network construction. Furthermore, the second transformation result ensures the accuracy of the positional information of road element points from the keyframe perspective, guaranteeing the accuracy of subsequent road network generation.
[0102] Finally, a keyframe dataset is obtained based on the second transformation result and multiple keyframe scan segments.
[0103] As can be seen, this application aggregates all the second transformation results and keyframe scan segment information to generate the final keyframe dataset. This keyframe dataset contains detailed information on all keyframe points, as well as the local coordinate representation and association features of road elements surrounding each keyframe point. In this way, the system can integrate all the necessary information in a single dataset, providing comprehensive support for subsequent road network construction, node identification, and link generation.
[0104] Therefore, the keyframe dataset effectively integrates all key information, removes redundancy, and improves data utilization efficiency and processing speed. Furthermore, the generated keyframe dataset can be directly used to construct the road network, containing all the element information required for network construction, serving as a direct data source for subsequent steps.
[0105] Optionally, the crowdsourced data includes at least one of the following: standardized digital map data and perception data; the keyframe dataset includes: multiple keyframe scan segments; and in step S12, constructing a road network node set using the keyframe dataset may include the following execution steps:
[0106] Step S121: In response to the fact that the crowdsourced data contains standardized digital map data, query the standardized digital map data to see if there are connection identifiers corresponding to multiple keyframe scan segments.
[0107] Step S122: In response to finding the connection identifier from the standardized digital map data, add the keyframe scan segment corresponding to the connection identifier to the road network node set.
[0108] Step S123: In response to the fact that the crowdsourced data does not contain standardized digital map data, query the perception data to see if there is an intersection box.
[0109] Step S124: In response to querying the intersection box from the sensing data, add the key frame scan segment located within the intersection box to the road network node set.
[0110] In step S125, in response to the absence of a road intersection frame in the sensing data, a temporary road intersection frame is constructed using the sensing data, and the key frame scan segments located within the road intersection frame are added to the road network node set.
[0111] In this embodiment, the crowdsourced data includes at least one of the following: standardized digital map data and perception data. Standardized digital map data (SD map data) is a pre-prepared, structured, and standardized map data, typically containing basic framework information of the road network, such as road nodes, road connections, and road classifications. Perception data is real-time environmental information collected through vehicle-mounted sensors (such as cameras, radar, and lidar), which can be used to identify road traffic signs, road surface conditions, obstacles, etc.
[0112] The keyframe dataset consists of multiple keyframe scan segments, each containing crowdsourced data collected around a specific location point (keyframe point) to form the foundational data for building the road network node set.
[0113] When constructing a road network node set using a keyframe dataset, if the crowdsourced data includes standardized digital map data, it is necessary to query the standardized digital map data to see if there are connection identifiers corresponding to multiple keyframe scan segments. The connection identifier (Link ID) is information used to uniquely identify each road connection in a standard digital map, which helps in identifying and locating specific road network elements.
[0114] As can be seen, this application checks whether the crowdsourced data contains standardized digital map data. If the crowdsourced data contains standardized digital map data, it queries this standardized digital map data to see if there are connection identifiers that match the location of the keyframe scan segments. This query process aims to determine which keyframe scan segments correspond to components of the existing road network in order to perform accurate positioning and association.
[0115] If a connection identifier is found in the standardized digital map data, the keyframe scan segment corresponding to the connection identifier is added to the road network node set.
[0116] As can be seen, if a connection identifier corresponding to a keyframe scan segment is found, it means that these keyframe scan segments are located within a known road network structure. The system will add these scan segments to the road network node set for subsequent construction and updating of the road network nodes.
[0117] If the crowdsourced data does not include standardized digital map data, the system queries the perception data to determine if intersection frames exist. Intersection frames refer to the boundaries of areas where intersections may exist, automatically identified and marked through analysis of perception data. Typically, intersection frames surround features such as traffic lights, crosswalks, and stop lines; their purpose is to locate intersections, facilitating the subsequent construction of road network nodes.
[0118] It can be seen that if the crowdsourced data does not contain standardized digital map data, then the vehicle's perception data will be relied upon to identify potential road network nodes. The perception data can be checked to see if it contains markings or box selection information about intersections in order to determine the location of the intersections.
[0119] If an intersection frame is found from the perception data, the key frame scan segment located within the intersection frame is added to the road network node set.
[0120] As can be seen, if intersection frames are present in the sensing data, it means that the system has identified the intersection through sensing information. At this time, the system will mark all keyframe scan segments located within the intersection frames as road network nodes, thereby adding them to the road network node set.
[0121] If no intersection frame is found from the sensing data, a temporary intersection frame is constructed using the sensing data, and the key frame scan segment located within the intersection frame is added to the road network node set.
[0122] As can be seen, if there is no direct intersection bounding box information in the perception data, the system will attempt to temporarily construct the intersection bounding box by analyzing the perception data, that is, inferring the existence of the intersection by recognizing features such as traffic lights, zebra crossings, and stop lines. Once the intersection bounding box is constructed, the system will continue to perform the aforementioned steps, marking the keyframe scan segments within the intersection bounding box as road network nodes and incorporating them into the road network node set.
[0123] Therefore, this application ensures the precise location of road network nodes through standardized digital map data, which helps maintain the continuity and integrity of the road network. Utilizing keyframe datasets and standardized digital map data, the system can quickly identify and construct road network node sets, reducing a significant amount of computational work. Even in the absence of standardized digital map data, the system can still identify and construct road network nodes using sensing data, enhancing the flexibility and versatility of road network construction technology. Furthermore, by autonomously identifying intersections using sensing data, the system reduces dependence on external data sources, enabling it to construct road networks in any environment.
[0124] Optionally, in step S12, constructing multiple connecting road segments using the road network node set may include the following execution steps:
[0125] Step S126: Perform cluster analysis on the key frame scan segments of intersection types contained in the road network node set to obtain the analysis results.
[0126] Step S127: Generate multiple initial road network nodes based on the analysis results.
[0127] Step S128 involves comparing multiple initial road network nodes with known road network nodes to update the multiple initial road network nodes, thereby obtaining multiple intermediate road network nodes.
[0128] Step S129: Confidence assessment is performed on multiple intermediate road network nodes, and some road network nodes that do not meet the preset quality requirements are filtered out from the multiple intermediate road network nodes to obtain multiple target road network nodes.
[0129] Step S130: Construct multiple connecting road segments using multiple target road network nodes.
[0130] In this embodiment of the application, when constructing multiple connecting road segments using a road network node set, cluster analysis is first performed on the key frame scan segments of intersection types contained in the road network node set to obtain the analysis results. Among them, the key frame scan segments of intersection types refer to key frame scan segments containing intersection feature information, such as stop lines, traffic lights, and turning signs. These features are crucial for identifying the location and type of intersections.
[0131] Cluster analysis is a data mining technique used to divide a dataset into several groups or clusters, such that data points within a cluster are similar to each other, while those between clusters are significantly different. In the embodiments of this application, cluster analysis is used to identify and distinguish keyframe scan segments at different intersection locations.
[0132] As can be seen, this application performs clustering processing on keyframe data containing intersection features, such as Euclidean clustering of the global location of keyframes, thereby grouping keyframes with similar locations and features together to form intersection candidate regions. Clustering analysis can identify the locations of different intersections and begin constructing corresponding road network nodes. The clustering algorithm may be based on factors such as the geographic coordinates of keyframes and the similarity of perceptual features to ensure that each cluster truly represents an independent intersection.
[0133] This allows for the effective filtering of segments representing different intersections from a large amount of keyframe data, improving the accuracy and efficiency of intersection identification. Furthermore, through clustering, the system can merge duplicate data generated by different vehicles passing through the same intersection multiple times, avoiding redundant operations in subsequent processing.
[0134] Subsequently, multiple initial road network nodes are generated based on the analysis results. These initial road network nodes are nodes generated based on the clustering results described above, used to represent key intersections, junctions, or other important landmarks in the road network. The generation of each initial road network node starts from the center point or representative point of a cluster, integrating data information from all keyframe scan segments in that cluster, including but not limited to vehicle trajectories, perception features (such as stop lines and traffic light positions), and geographic coordinates.
[0135] As can be seen, based on the analysis results, this application will generate an initial road network node for each determined intersection candidate area, that is, generate a Node for each cluster. Thus, the generated initial road network node provides a data foundation for subsequent road network construction.
[0136] Then, by comparing multiple initial road network nodes with known road network nodes, the initial road network nodes are updated to obtain multiple intermediate road network nodes. The known road network nodes are road network node information previously constructed or read from standardized digital map data, used to compare and verify the accuracy and reliability of the newly generated nodes.
[0137] Intermediate road network nodes refer to the set of road network nodes that are newly generated during the road network construction process but have not yet undergone confidence assessment and quality control.
[0138] As can be seen, this application compares multiple initial road network nodes with known road network nodes, updates the multiple initial road network nodes, and obtains multiple intermediate road network nodes. That is, the newly created initial road network nodes are compared and merged with the existing road network node information. If the new node is close to or overlaps with a known node, the information of the known node will be updated, such as adding connected road segments or optimizing node coordinates, thereby generating a series of intermediate road network nodes.
[0139] Therefore, by comparing with existing information, the addition of new nodes will not disrupt the continuity of the existing road network. Furthermore, the update operation adds detailed information about the nodes, such as the number of connected road segments and traffic flow, providing more data for subsequent road network optimization.
[0140] Next, a confidence assessment is performed on multiple intermediate road network nodes. Nodes that do not meet the preset quality requirements are then filtered out, resulting in multiple target road network nodes. The confidence assessment is a process of quantitatively evaluating the quality of road network nodes, typically considering indicators such as the accuracy of the node's geometric location and the consistency of its environmental characteristics.
[0141] The target road network node is the road network node that has been confirmed as reliable and accurate after quality control and confidence assessment, and will become the basis for constructing connecting road segments.
[0142] As can be seen, confidence assessment of multiple intermediate road network nodes is performed. For example, probabilistic assessment can be conducted based on the spatiotemporal distribution of these nodes to filter out those that do not meet preset quality requirements, resulting in multiple target road network nodes. In other words, the confidence of intermediate road network nodes is quantitatively scored according to a series of evaluation criteria. Only nodes with confidence scores higher than a preset threshold are considered sufficiently reliable and thus retained as target road network nodes. This step is crucial for ensuring the quality of the constructed road network.
[0143] Therefore, by using confidence assessment, erroneous or uncertain nodes are eliminated, ensuring the accuracy and reliability of road network construction, and avoiding excessive processing of low-quality data, thus saving computing resources and processing time.
[0144] Finally, multiple connecting road segments are constructed using multiple target road network nodes. It can be seen that this application utilizes screened and verified target road network nodes to construct connecting road segments, including determining the start and end points, shape, attributes, and information of other nodes connected to the road segments. By connecting multiple target road network nodes, a complete road network topology is formed, providing the necessary geospatial framework for autonomous driving and other intelligent transportation applications.
[0145] This results in a clear, coherent, and reliable road network, providing a solid foundation for subsequent intelligent vehicle navigation and traffic planning. Furthermore, by continuously adding and evaluating new nodes, the system can update the road network information in real time, maintaining the map's timeliness and accuracy.
[0146] Optionally, in step S130, constructing multiple connecting road segments using multiple target road network nodes may include the following execution steps:
[0147] Step S1301: Use multiple target road network nodes to determine multiple candidate connection trajectory pairs.
[0148] Step S1302: Evaluate the trajectory quality of multiple candidate connection trajectory pairs and select multiple target connection trajectories from the multiple candidate connection trajectory pairs.
[0149] Step S1303: Generate multiple connection skeletons based on multiple target connection trajectories.
[0150] Step S1304: Construct the geometry of multiple connecting skeletons to obtain multiple connecting road segments.
[0151] In this embodiment of the application, when constructing multiple connecting road segments using multiple target road network nodes, multiple candidate connecting trajectory pairs are first determined using the multiple target road network nodes. The candidate connecting trajectory is a driving path that may be used to connect two nodes, selected from crowdsourced data based on the target road network nodes.
[0152] Candidate connection trajectory pairs are the set of all possible connection trajectories between two target road network nodes.
[0153] As can be seen, this application first identifies all possible driving paths that connect two target road network nodes, searches for KeyFrame pairs associated with different Nodes, and thus obtains multiple candidate connection trajectory pairs. These multiple candidate connection trajectory pairs may come from the driving records of different vehicles at different times, covering multiple driving directions and paths.
[0154] This ensures that all possible connection paths are considered, providing ample alternatives for subsequent trajectory quality assessment. Furthermore, it maximizes the use of every record in the crowdsourced data, improving data utilization and the completeness of map information.
[0155] Then, trajectory quality assessment is performed on multiple candidate connection trajectory pairs, and multiple target connection trajectories are selected from these pairs. The trajectory quality assessment is a process of scoring and comparing candidate trajectories based on a series of preset standards, such as positioning accuracy, data integrity, and road feature consistency.
[0156] The target connection trajectory is the connection trajectory that has been identified as the optimal choice after quality assessment, and it is used to construct the specific connection segments.
[0157] As can be seen, this application evaluates all candidate connection trajectory pairs obtained above and selects the target connection trajectories that are of the highest quality and best reflect actual driving conditions. Thus, by eliminating low-quality trajectories, the accuracy and precision of road network construction are ensured, providing reliable data for the safe operation of autonomous vehicles.
[0158] Subsequently, multiple connection skeletons are generated based on multiple target connection trajectories. The connection skeleton refers to a simplified trajectory that serves as the basic framework during the construction of connection segments. It includes the basic direction of the road and its connection relationships, but does not include specific geometric details.
[0159] As can be seen, this application utilizes the aforementioned selected target connection trajectories to generate the connection skeleton of the connecting road segments, i.e., the Link formed by the KeyFrame sequence of connecting Node pairs. The connection skeleton reflects the main direction and connection method of the road segments, laying the foundation for subsequent detailed construction work. Thus, the construction of the skeleton makes the road network structure clearer and more explicit, easier to understand and maintain, and can accelerate the subsequent processing steps, improving overall efficiency.
[0160] Finally, the geometry of multiple connecting skeletons is constructed to obtain multiple connecting road segments. Geometry construction refers to adding detailed geometric attributes, such as road width, slope, and curvature, to the connecting skeletons to make them complete and usable connecting road segments.
[0161] As can be seen, this application further fills in specific geometric and physical attributes based on the aforementioned connecting skeleton, that is, it uses intermediate KeyFrame points to construct the Link geometry, such as road width, curvature change, height difference, etc., and finally generates multiple connecting road segments, each of which contains detailed geometric information and road attributes.
[0162] Therefore, the generation of connecting road segments refines the road network information, enabling it to meet the requirements of high-precision maps, while also standardizing the description method of road data. Furthermore, detailed road geometry information plays a crucial role in path planning and obstacle avoidance decisions for autonomous vehicles, enhancing the map's practical functionality.
[0163] Optionally, in step S14, performing network post-processing on the initial road network to generate the target road network may include the following steps:
[0164] Step S141: By establishing a bidirectional association between road network nodes and connecting road segments, the initial road network is topologically improved to obtain the improved road network.
[0165] Step S142: Delete invalid nodes with confidence levels below a preset threshold from the improved road network, and merge the connected road segments associated with the invalid nodes to obtain the deleted road network.
[0166] Step S143: Perform topology verification on the deleted road network to obtain the verified road network.
[0167] Step S144: Synchronize the verified road network with the historical version road network to obtain the synchronized road network.
[0168] Step S145: Add the identifier of the associated road segment to the road network nodes included in the synchronized road network to obtain the target road network.
[0169] In this embodiment of the application, when performing network post-processing on the initial road network to generate the target road network, the initial road network is first improved by establishing a bidirectional association between road network nodes and connecting road segments to obtain the improved road network. The bidirectional association refers to the mutual linking between road network nodes and connecting road segments, ensuring that each node can point to all road segments connected to it, and also ensuring that each road segment can trace back to the nodes at both ends of its path.
[0170] It can be seen that by establishing a bidirectional association between road network nodes and connecting road segments—that is, establishing a bidirectional association between Node and Link—the initial road network topology is improved, ensuring that accurate link relationships are established between road network nodes and connecting road segments. Therefore, bidirectional association can correct potential connection errors, ensuring that the relationships between all nodes and road segments are correct and forming a logically coherent road network.
[0171] Then, invalid nodes with confidence levels below a preset threshold are removed from the improved road network, and the connecting road segments associated with the invalid nodes are merged to obtain the road network after deletion. The preset threshold is a pre-defined minimum confidence level requirement used to filter inaccurate data points, such as deleting nodes with a confidence level <0.4.
[0172] Invalid nodes are those with a confidence level below a preset threshold, which may be considered inaccurate due to insufficient or contradictory data.
[0173] It can be seen that by deleting invalid nodes with low confidence from the improved road network, and by appropriately processing the connecting road segments related to these invalid nodes, such as merging or correcting them, the consistency and accuracy of the road network can be maintained, thus obtaining the road network after deletion.
[0174] Therefore, deleting invalid nodes helps to eliminate noisy data and improve the accuracy and reliability of the entire road network data. Furthermore, removing unnecessary nodes and optimizing connecting road segments can simplify the road network structure and reduce the complexity of subsequent processing.
[0175] Next, a topology check is performed on the deleted road network to obtain the checked road network. Topology check involves verifying the connectivity and rationality of the road network's topology to ensure there are no logical errors or contradictions.
[0176] As can be seen, after completing node deletion and road segment merging, this application performs a comprehensive topology check, that is, checks whether links traverse irrelevant nodes to ensure the logical correctness and integrity of the road network structure. Any violations of topology rules, such as broken road segments or isolated nodes, will be identified and corrected.
[0177] Therefore, topology verification eliminates structural errors and ensures the logical integrity of the road network. Furthermore, verification can identify and correct potential problems, thereby enhancing the reliability and applicability of the map.
[0178] Next, the verified road network is synchronized with the historical version of the road network to obtain the synchronized road network. Version synchronization refers to comparing and integrating the current version of the road network with the historical version to ensure data continuity and compatibility.
[0179] As can be seen, this application compares the newly generated verified road network with the previous version of the map, that is, the comparison and update of the new and old road network links, so as to identify the newly added, changed or deleted nodes and road segments, and perform corresponding synchronization operations to ensure that the new version of the map is consistent with historical data and avoid version conflicts.
[0180] Therefore, version synchronization ensures the continuity and consistency of map data, making it easy for users to seamlessly transition to the new version, while also making the map data of the old and new versions compatible, facilitating long-term maintenance and iterative updates.
[0181] Finally, the associated road segment identifiers are attached to the road network nodes included in the synchronized road network to obtain the target road network. The identifier is a label or ID used to uniquely identify and distinguish road segments.
[0182] As can be seen, this application will perform final processing on the road network that has completed version synchronization, adding the identifiers of all its associated road segments to each road network node, that is, attaching the corresponding Link ID to the KeyFrame, making the connection relationship of each node clearer and facilitating subsequent data query and update.
[0183] Therefore, the addition of labels makes the data relationships clear, making it easier to track and verify the connecting road segments of each node. Furthermore, clear labels help to quickly locate and update road segment information, reducing maintenance costs and time.
[0184] In summary, this application discloses a road network generation method based on crowdsourced data. This method automatically constructs a high-precision road network map by collecting and processing data gathered by crowdsourced vehicles. Furthermore, this application proposes a road network generation system based on crowdsourced data. This system includes modules for data acquisition, preprocessing, road network generation, and post-processing, and can execute the proposed road network generation method based on crowdsourced data, thereby efficiently transforming crowdsourced data into structured road network information. This application features a wide range of data sources, timely updates, and low cost, and can be widely applied in fields such as autonomous driving and navigation.
[0185] Figure 2 This is a flowchart of keyframe data generation according to one embodiment of this application, such as... Figure 2 As shown, Figure 2 It includes the original trajectory layer, keyframe layer, keyframe numbering layer, and lane line layer.
[0186] The original trajectory layer identifies the raw trajectory data points directly obtained from sensors such as vehicle GPS and LiDAR. Figure 2 The original trajectory data points are labeled as 0, 1, 3, ..., 110, 111, 113, which represent the position information captured by the sensor during the vehicle's movement.
[0187] The keyframe layer includes a series of keyframes selected from the original trajectory points using a specific algorithm. Keyframes are optimized, streamlined data points that can carry road segment feature information. Figure 2 The image shows keyframes 0, 3, 110, and 113 generated from the original trajectory points 0, 3, 110, and 113, respectively, indicating that these four points became key nodes after processing.
[0188] The keyframe numbering layer assigns a unique identifier to each keyframe to facilitate subsequent processing and indexing. Figure 2 The image shows keyframe number 1 extending from keyframe 0, keyframe number 2 extending from keyframe 3, keyframe number 37 extending from keyframe 110, and keyframe number 38 extending from keyframe 113, demonstrating how the keyframe data is organized and indexed.
[0189] The lane line layer consists of lane line information captured using onboard sensors (such as cameras and lidar).
[0190] Furthermore, Figure 2 Starting from the original trajectory layer, algorithms such as nonlinear optimization are used to globally optimize the pose of the collected vehicle trajectories, forming an optimized trajectory. Based on the optimized trajectory, a point is selected every 3 meters as a keyframe point. Perceived road features (such as stop line positions and lane lines) are spatially correlated with the keyframe points and transformed into the local coordinate system of the KeyFrame. Simultaneously, the road network is divided into 500m × 500m sub-graph units to facilitate parallel processing and improve computational efficiency. After keyframe generation, feature recognition is performed, such as identifying intersection features and other key landmarks. Furthermore, a confidence evaluation system based on indicators such as geometric consistency and topological stability is used to score the quality of the identified keyframes, ensuring that only high-confidence keyframes are included in the final road network node set.
[0191] Figure 3 This is another flowchart of a road network generation method according to one embodiment of this application, such as... Figure 3As shown, the process first collects raw driving trajectory information uploaded by crowdsourced vehicles, including GPS location, speed, and direction data, as well as road feature information captured by vehicle sensors such as LiDAR and cameras. Then, a nonlinear algorithm is used to perform global pose optimization on the vehicle's driving trajectory. Based on GPS and wheel speed data, an optimized trajectory is generated, improving the accuracy and continuity of the original data. Next, keyframes are generated; a point is selected every 3 meters on the optimized trajectory as a keyframe point. These keyframe points will be used to construct the road network skeleton. Then, it is determined whether intersection features, such as stop lines, zebra crossings, and traffic lights, are detected. If intersection features are detected, a node is created, that is, the keyframe point is transformed into a Node node, serving as a key node in the road network, representing the intersection location. If no intersection features are detected, it is marked as a link segment; that is, keyframe points without detected intersection features are marked as Link segments, representing non-intersection road segments.
[0192] Furthermore, if a node is created, a confidence assessment is performed on the created node, for example, determining whether the node confidence is ≥0.4, to ensure its accuracy and reliability. Nodes with a confidence of ≥0.4 will be added to the road network node set for subsequent road network topology optimization. Low-quality nodes with a confidence of <0.4 will be discarded.
[0193] If a link is marked as a connected segment, a link will be generated for adjacent nodes, such as nodes with a distance of less than 200m, establishing the connection between nodes and the basic framework of the road network for subsequent road network topology optimization. For non-adjacent nodes, i.e., link segments that exceed the distance between nodes, such as nodes with a distance of ≥200m, they are marked as isolated road segments, which may need to be processed separately or merged later.
[0194] Finally, road network topology optimization is performed. By analyzing the road network node set and link connections, the road network topology structure is optimized to ensure the continuity and rationality of the road network. Then, the optimized road network topology is checked to ensure it conforms to preset logical rules and actual road conditions, ensuring there are no incorrect nodes or connections; that is, the topology verification is checked. If the topology verification passes, a final high-precision road network map is generated, completing the entire processing flow. If the topology verification fails, the connection relationships are adjusted, and road network topology optimization is performed again.
[0195] Furthermore, the algorithms used in this application will be introduced separately.
[0196] Keyframe generation algorithm:
[0197] Input data: vehicle trajectory points, offset latitude and longitude information (latitude, longitude, altitude, Lla), and pose in the local coordinate system, as well as road features perceived by LiDAR or camera at different times.
[0198] Trajectory optimization: The vehicle trajectory is globally optimized using a nonlinear algorithm. Based on GPS and wheel speed sensor data, the optimized trajectory opt_trajs is generated.
[0199] Distance calculation: The cumulative distance is calculated for each trajectory point, and then a point is taken every 3m as a keyframe point.
[0200] Element association: Calculate the FrenetFrame coordinate system for the above trajectory, project the midline point position of each type of road element onto the FrenetFrame coordinate system of the trajectory, calculate the longitudinal distance offset, calculate the offset value of each element, and associate the element with the corresponding keyframe.
[0201] Scan Segmentation: Generate a scan segment (KeyFrame) every 3 meters along the optimized trajectory, containing:
[0202] (1) Basic information: key_frame_id, clip_id, type (KeyFrameType), status (KeyFrameStatus).
[0203] (2) Spatiotemporal information: timestamp, offset value, vehicle pose (ego_tf_p, ego_tf_q).
[0204] (3) Sensor data: Inertial Navigation System (INS) information (GPS time, status, etc.).
[0205] (4) Feature recognition: Identify intersection features (kNode) or skeleton features (kLink) through prior feature information (prior_feature_info).
[0206] Data transformation: Transform various road elements into the KeyFrame local coordinate system.
[0207] Data storage: Save various types of data to specified files in a standardized format.
[0208] Output: {KeyFrame1, KeyFrame2,...,KeyFrameN}.
[0209] Node recognition algorithm:
[0210] First, iterate through {KeyFrame1, KeyFrame2, ..., KeyFrameN}. Based on the coordinates in the KeyFrame, query the LinkID of the projection in the SD map. If the corresponding Link segment is an intersection, mark the corresponding KeyFrame as kNode, and the rest as kLink.
[0211] If there is no SD map, check if the corresponding perception element has an intersection box. If it is inside the box, it is a kNode; otherwise, it is a kLink.
[0212] If there is no intersection frame, a bounding intersection frame is generated based on the detected traffic lights, zebra crossings, stop lines, etc. The corresponding KeyFrame is marked as kNode if it is inside the intersection frame, and kLink otherwise.
[0213] The network generation algorithm includes the NodeBuilder algorithm, the Link construction algorithm, and the NetPostProcessor algorithm.
[0214] Among them, the node construction algorithm is as follows:
[0215] Node identification: Filter KeyFrames of type kNode from all trajectories.
[0216] Cluster analysis: Perform Euclidean clustering on the global location of the KeyFrame (tolerance 20m).
[0217] Node generation: Each cluster generates one Node, which contains:
[0218] (1) Unique Identifier: A randomly generated universally unique identifier (UUID).
[0219] (2) Geometric information: location of cluster center point.
[0220] (3) Related information: KeyFrame index and perception information included.
[0221] Node update: Compare and update with the basic road network, including:
[0222] (1) Distance matching (200m threshold).
[0223] (2) Analysis of common data packets.
[0224] (3) Update mode judgment (new node (kNew) / updated node (kUpdate) / existing node (kOld) etc.).
[0225] Confidence assessment: Probability assessment is performed based on the spatiotemporal distribution of nearby KeyFrame points.
[0226] Link construction algorithm:
[0227] Candidate identification: Find KeyFrame pairs that are associated with different Nodes.
[0228] Quality assessment: There are multiple trajectories between two nodes. The optimal trajectory between the two nodes is selected based on the trajectory positioning error.
[0229] Skeleton generation: The sequence of KeyFrames that connect Node pairs forms a Link.
[0230] Geometry construction: Construct the Link geometry using the intermediate KeyFrame points.
[0231] Network post-processing algorithms:
[0232] Topology improvement: Establish bidirectional associations between Nodes and Links.
[0233] Invalid node handling: Delete nodes with low confidence (<0.4) and merge associated links.
[0234] Topology check: Checks whether a link traverses unrelated nodes.
[0235] Version synchronization: Comparison and update of old and new road network links.
[0236] Data association: Attach the corresponding Link ID to the KeyFrame.
[0237] For example, the intersection recognition scheme of this application can be replaced by direct intersection detection using a deep learning model (92% accuracy) or by clustering recognition based on trajectory turning features (89% accuracy). The trajectory optimization scheme of this application can be replaced by concatenated Kalman filtering (reducing memory usage by 40%) or by using the GTSAM library instead of a custom factor graph (improving development efficiency). The subgraph partitioning scheme of this application can be replaced by dynamic grid partitioning, i.e., automatically adjusting the subgraph size (200-800m) according to data density, or by road topology partitioning, i.e., partitioning the subgraph according to road connection relationships.
[0238] Therefore, this application proposes a multi-source feature fusion intersection recognition technology, which combines SD map data with perceived features (stop lines, lane lines, etc.). It also proposes a graph-based trajectory joint optimization method, which integrates multi-vehicle trajectory data using a factor graph model. Furthermore, it proposes a subgraph segmentation processing mechanism: dividing the road network into 500m × 500m subgraph units for parallel processing. Finally, it proposes a confidence evaluation system, establishing an evaluation model that includes six indicators such as geometric consistency and topological stability.
[0239] Therefore, this application can reduce the cost of high-precision map collection. The collection cost of this application is less than 10% of the collection cost of traditional solutions. This application can achieve daily map update capability. This application can improve the accuracy of road network construction based on crowdsourced data, with an accuracy rate of over 98%. Furthermore, this application supports automatic road network generation in areas without SD maps.
[0240] Compared to professional vehicle mapping solutions, this application can reduce data collection costs by 95%, achieve a road network topology accuracy of 98.7% (based on 1000km of urban road testing), support daily updates for hotspot areas (actual update latency <12 hours), and achieve a historical data reuse rate of 91.2% (6 months of tracking data).
[0241] It should be noted that the user information (including but not limited to user device information, user personal information, etc.) and data (including but not limited to data used for analysis, data stored, data displayed, etc.) involved in this application are all information and data authorized by the user or fully authorized by all parties. Furthermore, the collection, use and processing of the relevant data must comply with the relevant laws, regulations and standards of the relevant countries and regions, and corresponding operation entry points are provided for users to choose to authorize or refuse.
[0242] According to an embodiment of this application, a road network generation device is provided. It should be noted that the device can be used to execute the above-described road network generation method.
[0243] Figure 4 This is a structural block diagram of a road network generation apparatus according to one embodiment of this application, such as... Figure 4 As shown, a road network generation device 400 is used as an example. The device includes: a collection module 401 for collecting crowdsourced data from vehicles; a first generation module 402 for generating a keyframe dataset based on the crowdsourced data; a construction module 403 for constructing a road network node set using the keyframe dataset and constructing multiple connecting road segments using the road network node set; a second generation module 404 for generating an initial road network through multiple connecting road segments; and a processing module 405 for performing network post-processing on the initial road network to generate a target road network.
[0244] Embodiments of this application also provide a vehicle, including: a memory storing an executable program; and a processor for running the program, wherein the program executes the methods described in various embodiments of this application when it runs.
[0245] Embodiments of this application also provide a computer-readable storage medium including a stored executable program, wherein, when the executable program is running, it controls the device where the computer-readable storage medium is located to perform the methods of various embodiments of this application.
[0246] Embodiments of this application also provide a computer program product, including a computer program that, when executed by a processor, implements the methods of various embodiments of this application.
[0247] In the above embodiments of this application, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0248] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0249] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0250] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0251] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard drive, magnetic disk, or optical disk.
[0252] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. A road network generation method, characterized in that, include: Collect crowdsourced data on vehicles; Generate a keyframe dataset based on the crowdsourced data; The keyframe dataset is used to construct a road network node set and the road network node set is used to construct multiple connecting road segments. An initial road network is generated by the multiple connecting road segments; The initial road network is subjected to network post-processing to generate the target road network.
2. The road network generation method according to claim 1, characterized in that, Generating the keyframe dataset based on the crowdsourced data includes: The original driving trajectory of the vehicle is determined based on the crowdsourced data; The original driving trajectory is optimized to generate the target driving trajectory; The keyframe dataset is obtained using the target driving trajectory.
3. The road network generation method according to claim 2, characterized in that, Obtaining the keyframe dataset using the target driving trajectory includes: The cumulative travel distance is calculated using multiple trajectory points on the target driving trajectory; Multiple key frame points are selected based on the cumulative driving distance; The multiple keyframe points and the multiple road element points associated with the target driving trajectory are transformed to a first coordinate system to obtain a first transformation result, wherein the first coordinate system is an orthogonal coordinate system related to the driving trajectory; The multiple keyframe points are scanned in segments according to a preset distance to obtain multiple keyframe scanning segments; The keyframe dataset is obtained based on the first conversion result and the multiple keyframe scan segments.
4. The road network generation method according to claim 3, characterized in that, Obtaining the keyframe dataset based on the first conversion result and the plurality of keyframe scan segments includes: Based on the first conversion result, calculate the longitudinal distance between the plurality of road element points and the target driving trajectory; The multiple road element points are associated with the multiple keyframe points according to the longitudinal distance, and the association results are obtained. Based on the association result, the multiple road elements corresponding to the multiple road element points are transformed to the second coordinate system to obtain the second transformation result, wherein the second coordinate system is the keyframe local coordinate system; The keyframe dataset is obtained based on the second conversion result and the multiple keyframe scan segments.
5. The road network generation method according to claim 3, characterized in that, The crowdsourced data includes at least one of the following: standardized digital map data and perception data; the keyframe dataset includes: multiple keyframe scan segments; constructing the road network node set using the keyframe dataset includes: In response to the fact that the crowdsourced data includes the standardized digital map data, query the standardized digital map data to see if there is a connection identifier corresponding to the multiple keyframe scan segments; In response to finding the connection identifier from the standardized digital map data, the keyframe scan segment corresponding to the connection identifier is added to the road network node set; In response to the fact that the standardized digital map data is not included in the crowdsourced data, a query is performed on the sensing data to determine whether an intersection box exists. In response to querying the intersection frame from the sensing data, the keyframe scan segment located within the intersection frame is added to the road network node set; In response to the absence of the intersection frame from the sensing data, the intersection frame is temporarily constructed using the sensing data, and the keyframe scan segment located within the intersection frame is added to the road network node set.
6. The road network generation method according to claim 1, characterized in that, Constructing the multiple connecting road segments using the road network node set includes: Cluster analysis was performed on the keyframe scan segments of intersection types included in the road network node set to obtain the analysis results; Multiple initial road network nodes are generated based on the analysis results; By comparing the multiple initial road network nodes with known road network nodes, the multiple initial road network nodes are updated to obtain multiple intermediate road network nodes; Confidence assessment is performed on the multiple intermediate road network nodes, and some road network nodes that do not meet the preset quality requirements are filtered out from the multiple intermediate road network nodes to obtain multiple target road network nodes; The multiple target road network nodes are used to construct the multiple connecting road segments.
7. The road network generation method according to claim 6, characterized in that, Constructing the multiple connecting road segments using the multiple target road network nodes includes: Multiple candidate connection trajectory pairs are determined using the multiple target road network nodes; The multiple candidate connection trajectory pairs are evaluated for trajectory quality, and multiple target connection trajectories are selected from the multiple candidate connection trajectory pairs; Multiple connection skeletons are generated based on the multiple target connection trajectories; The geometry of the multiple connecting skeletons is constructed to obtain the multiple connecting road segments.
8. The road network generation method according to claim 6, characterized in that, Post-processing the initial road network to generate the target road network includes: By establishing a two-way association between road network nodes and connecting road segments, the initial road network is topologically improved to obtain a improved road network. Invalid nodes with confidence levels below a preset threshold are removed from the improved road network, and the connecting road segments associated with the invalid nodes are merged to obtain the deleted road network. Perform topology verification on the deleted road network to obtain the verified road network; The verified road network is synchronized with the historical version of the road network to obtain the synchronized road network. The target road network is obtained by attaching the identifier of the associated road segment to the road network nodes included in the synchronized road network.
9. A vehicle, characterized in that, include: Memory, which stores executable programs; A processor for running the program, wherein the program executes the road network generation method according to any one of claims 1 to 8 when it runs.
10. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored executable program, wherein, when the executable program is executed, it controls the device on which the storage medium is located to perform the road network generation method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Visual surveying and mapping navigation positioning method based on lightweight point cloud map
CN116839600A
Road network generation method and device, computer equipment and computer readable storage medium
CN117516558A
Automatic driving high-precision map incremental updating method and system based on crowdsourcing data
CN120907532A
Vehicle positioning method, device, electronic apparatus, and computer storage medium
JP2021131398A