A map parsing method and system

By constructing the original topology and ID mapping table, parsing and converting it into a semantically hierarchical high-precision map format, the problem of inconsistent high-precision map formats is solved, the ease of use and high quality of map parsing are achieved, the cost of use is reduced, and the development of the industry is promoted.

CN117149933BActive Publication Date: 2026-03-13昇启水木科技(深圳)有限公司
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-09-06
Publication Date
2026-03-13

AI Technical Summary

Technical Problem

The lack of a unified standard in existing high-precision map formats makes map semantics difficult to understand, expansion and maintenance difficult, usage costs high and map quality low. Each map vendor needs to spend a lot of time and manpower to support multiple formats, and the functional code is redundant.

Method used

This paper provides a map parsing method and system. The method involves acquiring the content of the map file to be parsed, performing initialization processing to construct the original topology and ID mapping table, parsing and verifying the data, and converting it into a semantically layered high-precision map format. The process includes basic road information extraction, road travel direction assignment, lane connection relationship calculation, and other operations.

Benefits of technology

It has achieved ease of use in map parsing, reduced usage costs, enriched map format support, improved map quality, simplified map expansion and maintenance, and promoted the rapid development of the industry.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117149933B_ABST
    Figure CN117149933B_ABST
Patent Text Reader

Abstract

This invention discloses a map parsing method and system, relating to the field of high-precision map parsing technology. After initializing the content of the acquired map file to be parsed to obtain an initialization result, the invention performs map parsing operations based on the initialization result to obtain parsed data. The parsed data is then validated to obtain the map parsing result. Finally, the map parsing result is converted into a semantically layered high-precision map format map storage structure. This method is characterized by its simplicity, ease of use, convenient expansion, and clear structure. It can improve map quality and enrich map format support while reducing usage costs, thus providing favorable support for the rapid development of the industry.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of high-precision map analysis technology, and in particular to a map analysis method and system. Background Technology

[0002] High-definition maps have become a core technology for advanced autonomous driving and autonomous driving simulation. They not only provide vehicles with accurate positioning, environmental perception, and path planning, but also simulate extreme traffic scenarios, reducing the cost of autonomous driving testing and accelerating the deployment of advanced autonomous driving. However, there is no unified standard for the representation of high-definition maps. Publicly available formats are mainly OpenDrive and Apollo OpenDrive, and each map vendor has its own high-definition map data format. Most high-definition map formats on the market lack multi-layered road semantics, making their semantics difficult to understand, expansion and maintenance challenging, and they lack advantages in rendering, display, and map calculation, hindering their use and promotion. In the field of high-definition map parsing, map vendors and related companies need to spend significant time and manpower to support and maintain other high-definition map formats, resulting in high costs, low map quality, and severe code redundancy for users. Summary of the Invention

[0003] To address the aforementioned problems in the existing technology, this invention provides a map parsing method and system.

[0004] To achieve the above objectives, the present invention provides the following solution:

[0005] A map parsing method, comprising:

[0006] Obtain the file content of the map to be parsed;

[0007] The file content of the map to be parsed is initialized to obtain the initialization result;

[0008] Based on the initialization results, a map parsing operation is performed to obtain parsed data, and the parsed data is then validated to obtain the map parsing result.

[0009] The map parsing results are converted into a map storage structure; the map storage structure is a high-precision map format with semantic layering.

[0010] Optionally, before obtaining the file content of the map to be parsed, the method further includes:

[0011] Obtain the map to be parsed and the file address where the map to be parsed is stored;

[0012] Verify whether the file address storing the map to be parsed is correct, and obtain the first verification result;

[0013] When the first verification result is correct, determine whether the format of the map to be parsed is supported, and obtain the second verification result;

[0014] When the second verification result is supported, the file content of the map to be parsed is read in based on the file address of the file storing the map to be parsed;

[0015] The operation ends when the first verification result is incorrect or the second verification result is not supported.

[0016] Optionally, the file content of the map to be parsed is initialized to obtain an initialization result, specifically including:

[0017] Construct the original topology structure based on the file content of the map to be parsed;

[0018] Construct an ID mapping table based on the original topology;

[0019] A geometry mapping table is constructed based on the ID mapping table.

[0020] Optionally, constructing the original topology based on the file content of the map to be parsed specifically includes:

[0021] Starting from the roads within all intersections in the file content of the map to be parsed, different edges are searched from the starting point, and all node points are obtained based on the two ends of the edges to generate the original topology.

[0022] Optionally, map parsing operations are performed based on the initialization results to obtain parsed data, specifically including:

[0023] The initialization result is parsed and converted into target element information; the target element information includes basic road information, road travel direction, lane connection relationship, lane turning information, and lane static path.

[0024] Optionally, the map parsing operations performed include: basic road information extraction, road travel direction assignment, lane link relationship calculation, lane turning information calculation, setting sub-segment search and binding, and lane static path calculation.

[0025] Optionally, the method further includes:

[0026] Load the map format plugins and automatically register the parsing components corresponding to each map format plugin.

[0027] A map parsing system, the system being used to apply the map parsing method described above; the system includes:

[0028] The raw data layer is used to obtain the file content of the map to be parsed.

[0029] A data mapping layer, connected to the original data layer, is used to initialize the file content of the map to be parsed to obtain an initialization result;

[0030] A data processing layer, connected to the data mapping layer, is used to perform map parsing operations based on the initialization results to obtain parsed data, and to perform verification processing on the parsed data to obtain map parsing results;

[0031] A data conversion layer, connected to the data processing layer, is used to convert the map parsing results into a map storage structure; the map storage structure is a high-precision map format with semantic layering.

[0032] Optionally, the data processing layer includes a parser; the parser corresponds to the map format to be parsed.

[0033] Optionally, the data conversion layer includes a converter.

[0034] According to specific embodiments provided by the present invention, the present invention discloses the following technical effects:

[0035] This invention initializes the content of the acquired map file to be parsed to obtain an initialization result, then performs map parsing operations based on the initialization result to obtain parsed data, and performs verification processing on the parsed data to obtain map parsing results. Then, the map parsing results are converted into a map storage structure of semantically layered high-precision map format. It has the characteristics of being simple to use, easy to expand, and having a clear structure. It can improve map quality and enrich map format support while reducing usage costs, thus providing favorable support for the rapid development of the industry. Attached Figure Description

[0036] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0037] Figure 1 A flowchart of the map parsing method provided by the present invention;

[0038] Figure 2 This is a schematic diagram of the original topology provided by the present invention;

[0039] Figure 3 A schematic diagram of the structure of the geometric mapping table provided by the present invention;

[0040] Figure 4 This is a schematic diagram of the width calculation result for the matching S value provided by the present invention;

[0041] Figure 5 A schematic diagram of the calculated centerline provided by this invention;

[0042] Figure 6 This invention provides a schematic diagram of road relationship binding errors.

[0043] Figure 7 This is a schematic diagram of the solution provided by the present invention;

[0044] Figure 8 This invention provides a schematic diagram of the connection relationship between two types of roads;

[0045] Figure 9 This is a schematic diagram of lane turning information provided by the present invention;

[0046] Figure 10 This is a schematic diagram of a special road section provided by the present invention;

[0047] Figure 11 This is a schematic diagram of the map storage structure provided by the present invention;

[0048] Figure 12 This is a schematic diagram of the map parsing system structure provided by the present invention;

[0049] Figure 13 This is an architecture diagram of the map parsing system provided by the present invention;

[0050] Figure 14 The implementation flowchart of the map parsing system provided by the present invention is shown. Detailed Implementation

[0051] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0052] The purpose of this invention is to provide a map parsing method and system that can parse high-precision map formats into semantically layered high-precision map formats. It is simple to use, easy to expand, and has a clear structure. It can reduce usage costs, improve map quality, enrich map format support, and accelerate industry development.

[0053] To make the above-mentioned objects, features and advantages of the present invention more apparent and understandable, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0054] In this invention, the provided map parsing method can be configured for high-precision maps, based on which, such as... Figure 1 As shown, the map parsing method provided by this invention includes:

[0055] Step 100: Obtain the file content of the map to be parsed. To verify the executability of the obtained map file content, this invention can perform a verification operation on the obtained map before this step. The specific verification process is as follows:

[0056] 1) Obtain the map to be parsed and the file address where the map to be parsed is stored.

[0057] 2) Verify whether the file address storing the map to be parsed is correct, and obtain the first verification result.

[0058] 3) When the first verification result is correct, determine whether the format of the map to be parsed is supported, and obtain the second verification result.

[0059] 4) When the second verification result is supported, the file content of the map to be parsed is read in based on the file address of the map to be parsed.

[0060] 5) The operation ends when the first verification result is incorrect or the second verification result is not supported.

[0061] Step 101: Initialize the file content of the map to be parsed to obtain the initialization result.

[0062] Initialization is a preparatory step before extracting and calculating map data. The core data structures are the original topology, ID mapping table, and geometry mapping table. These tables facilitate the acquisition of map element data, relationships between map elements, and road geometry information, thus enabling subsequent data extraction, merging, and calculation. Taking the initialization of a high-precision map as an example, the specific initialization process can be as follows:

[0063] 1) Construct the original topology:

[0064] Traverse the original high-resolution map file, read the data from the original high-resolution map file, and construct the original topology structure. The original topology structure is a directed graph mainly composed of node-edge elements, as shown in the following figure. Figure 2 As shown.

[0065] The graph topology algorithm for obtaining the edges of the road graph topology mainly consists of three steps: obtaining all roads within an intersection as the starting point, searching for different edges from the starting point, and then obtaining all nodes based on the two ends of each edge. Based on this, the process of constructing the original topology structure is as follows:

[0066] Step 1: Obtain all roads within the intersection and find the roads connecting to the intersection as the starting point for edge search.

[0067] Step 2: Perform a depth-first search (DFS) starting from the starting point to obtain all edges. Edge search is divided into two cases: edges on roads originating from intersections and edges on roads not connected to intersections. The edge search is interrupted when the next road is within an intersection or the current road has no subsequent connecting roads. The rule for finding successor nodes is: for bidirectional roads, the search for successor nodes is performed in both directions.

[0068] Step 3: Traverse all edges to obtain the nodes at both ends of the edges, thus completing the construction of the original topology.

[0069] 2) Construct the ID mapping table:

[0070] Based on the original topology, construct an ID mapping table between the original element IDs and the custom road semantic elements. Refer to Table 1 for the specific rules for constructing the ID mapping table.

[0071] Table 1 ID Mapping Construction Rules

[0072]

[0073]

[0074]

[0075] 3) Construct a geometry mapping table:

[0076] Based on the road alignment classification and recording of alignment data, a geometric mapping table is constructed, which stores information such as the navigation angle and corresponding lane width at each point. The structure of the geometric mapping table is as follows: Figure 3 As shown. The mapping structure in the geometric mapping table is achieved by dividing the geometric lines into intervals according to the components of the roads in OpenDrive. Each segment corresponds to a set of geometric points calculated from the set line type, with a step size of 0.5.

[0077] The geometric point structure of the geometric point set includes the widths of the left and right lanes corresponding to that point, as well as information such as the point's s-value position and heading angle. Specifically, in determining the width, Leftwidth is used to store a list of the widths of the left lane corresponding to that point, with the index corresponding to the lane's offset (translated as compensation value) decremented by one.

[0078] Use rightwidth as the list of widths of the right-hand road corresponding to this point, and subtract one from the offset of the lane corresponding to the index.

[0079] The width of the matching S value is calculated as follows:

[0080] First, obtain the width calculation formula for all width tags of the lane.

[0081] Secondly, based on the S value of the point, find the range of the S value in the width tag, and take the formula at the starting point of the range.

[0082] Then, the change in the S value is calculated and substituted into the formula at the start of the interval to obtain the corresponding lane width. Based on the S value, this width is stored in the corresponding leftwidth or rightwidth. The final calculation result is as follows: Figure 4 As shown.

[0083] Step 102: Perform map parsing operations based on the initialization results to obtain parsed data, and perform verification processing on the parsed data to obtain map parsing results.

[0084] In this step, the main purpose of map parsing is to convert the raw map file data into target element information. Its main processing steps include basic road information extraction, road travel direction assignment, lane link calculation, lane turning information calculation, finding and binding special sub-segments, and calculating static lane paths. These modules are then categorized into stages, ordered according to priority, and organized to manage different execution steps. The main processing steps include:

[0085] 1) Extraction of basic road information.

[0086] Basic road information extraction mainly involves using the acquired initialization results and data such as the aggregator alignment to calculate preliminary road element information, providing data support for subsequent conversion and calculation of target element information. Some information in the raw data is obtained directly from file data, while some information requires special processing. Data requiring special processing includes intersections, road segments, sub-road segments, and lanes.

[0087] The intersection is represented as a closed graphical point set. If the original data is not in the form of a point set, all the roads that make up the intersection are obtained. Based on all the left and right boundaries of the roads in the intersection, the convex hull algorithm is then used to calculate the closed graphical representation of the intersection.

[0088] A road segment is an element of a defined one-way road. When extracting road data, such as in OpenDrive where roads consist of two-way roads, different data for the left and right sides are extracted to generate two one-way road segments.

[0089] Sub-segments are defined elements. During extraction, OpenDrive breaks them down into components based on the number of roads and different attributes. Each component's data is then defined as a sub-segment. The road boundaries of sub-segments are represented by points, while road alignment boundaries in OpenDrive are expressed using formulas.

[0090] Lane data directly stores location data along with values ​​such as width and speed. OpenDrive uses a three-term expression for both lane width and speed values.

[0091] 2) Lane centerline calculation.

[0092] The centerline is calculated in two ways: directly through the left and right lane boundaries, and when it cannot be directly calculated from the lane boundaries. When the lane line is a changing curve, the centerline cannot be calculated from the left and right boundaries. In this case, it is calculated using a Bézier curve drawn from the midpoint of the intersection and the center point of the lane's starting point. A schematic diagram of the calculated centerline is shown below. Figure 5 As shown.

[0093] 3) Assigning the direction of travel on the road.

[0094] There are driving directions within a road segment, with right-hand driving being the basic driving direction as defined by national standards. In OpenDrive, roads are bidirectional, and the data does not contain road direction information. When splitting road segments, if all roads have consistent left and right directions, road segment elements in both directions can be directly split.

[0095] When two roads have opposite left and right directions, errors may occur in binding the road relationships according to the left and right directions when dividing the road segments. For example... Figure 6 As shown, links 5, 6, 3, and 4 are bound to an incorrect segment. This can be resolved using a combination of reversal and comparison. The reversal method is as follows:

[0096] When a road is divided into sections, such as Figure 7 As shown, the link order of segments is different. When repair is needed, the order of link 5 to link 8 needs to be reversed before the subsequent sub-segments are repaired.

[0097] The comparison solution is as follows:

[0098] Take the first sub-segment of each road segment as the reference and compare the heading angle with the subsequent sub-segments. When the heading angle changes significantly or is reversed, replace it with the pairlink corresponding to that sub-segment.

[0099] 4) Calculation of lane connection relationships.

[0100] Road connectivity calculations are performed, and lane predecessor and successor information is bound. Road connectivity calculations can be divided into two categories: one is segment-level connectivity calculation, which requires the predecessor lane in the original topology to point to the successor sub-segment; the other is intersection-level connectivity calculation, which requires traversing the roads within the intersection to find the successor sub-segment outside the intersection. The specific calculation process for these two types of road connectivity is as follows:

[0101] A. Within the same road segment, the order of sub-segments is consistent with the direction of travel. The ID of the next sub-segment is bound to the lane of the current sub-segment, which is the lane's connectLink.

[0102] B. When crossing an intersection, the successor search algorithm is used to find the reachable sub-segments after the intersection for the current sub-segment, which are the connect links of the lanes within the current sub-segment.

[0103] The successor lookup algorithm for the intersection scenario is as follows:

[0104] (1) Create a dictionary road_mapping to store the mapping relationship between a road and its preceding and succeeding roads.

[0105] (2) Traverse the roads within the intersection, find the predecessor and successor roads of each road, and add the correspondence to road_mapping.

[0106] (3) Obtain the list of successor roads (successors) for the current road. For each successor road, perform the following steps:

[0107] (3-1) Obtain the intersection road ID corresponding to the subsequent road.

[0108] (3-2) Search for the road in road_mapping by road ID. If the current road is one of its predecessor roads, then the connecting road after the intersection of the successor road has been found.

[0109] (3-3) Returning the connecting road as the successor road after the current road passes the intersection, the connecting road after the successor road passes the intersection is found.

[0110] The calculated connection relationships between the two types of roads are as follows: Figure 8 As shown.

[0111] 5) Lane turning information calculation.

[0112] Lane turning information is calculated using the angle between the left boundary of the current sub-segment and the left boundary of the subsequent sub-segment. The turning direction is determined based on the angle range, and a turning code is designed to facilitate the calculation of multiple turns within the same lane. Specifically:

[0113] (1) Direction coding design:

[0114] Set up a code set, for example, a four-digit code "0000". The first digit indicates a U-turn, the second indicates a left turn, the third indicates going straight, and the fourth indicates a right turn. Calculate the set of road turns using the code set. By deduplicating multiple one-way codes and adding the integers, the final turn code is obtained. For example, 1000 + 0100 = 1100, where 1100 indicates a left turn or U-turn.

[0115] (2) Calculation of the included angle:

[0116] Calculate the heading angle hdg1 of the current lane and the heading angle hdg2 of connectLink. Calculate the difference between the two heading angles: hdg = hdg2 - hdg1. If the difference is greater than π, subtract 2π from the difference. If the difference is less than -π, add 2π to the difference. Control the heading angle difference within the range [-π, π].

[0117] The calculated lane steering information is as follows Figure 9 As shown.

[0118] 6) Finding and binding special sub-segments.

[0119] Special sub-segments are not sub-segments within a segment; they mainly include sub-segments within intersections, such as waiting areas, roundabouts, areas for early right turns, and areas for early U-turns. They are distinct from ordinary segment links.

[0120] Special road sections are mainly divided into situations such as turning right in advance and making a U-turn in advance. These road sections have similar functions to intersections and only exist at intersections, so they are treated as special sub-road sections and stored at intersections.

[0121] The method for finding special road sections is as follows:

[0122] Step 1: Locate all road segments that are not connected to intersections.

[0123] Step 2: Check whether each segment is connected to other segments in turn, find the predecessor and successor segments of the segment, and skip the segment if the predecessor or successor segment does not exist.

[0124] Step 3: Determine if the endJunction of the predecessor segment is the same as the startJunction of the successor segment. If they are the same, bind the junction to the link of that segment.

[0125] Step 4: Determine the heading orientation of the preceding segment and the succeeding segment. Based on their orientation, determine whether to turn right or turn around in advance. Modify the type of these links and bind them to the junction.

[0126] Search results as follows Figure 10 As shown.

[0127] 7) Calculation of static path for lanes.

[0128] A static path is the path that links lanes together. A static path is the path in a Connection. A Connection mainly represents the lane-level relationship. Generally, lanes (connections) that cross sub-segments on the same road segment do not have static paths.

[0129] The connection path includes: the outermost lane connection when the number of lanes changes (e.g., more or fewer lanes) and the lane connection at intersections.

[0130] Static path calculation is divided into static path calculation within intersections and lane-level static path calculation within the same road segment. Static paths are represented by a set of Bézier curve points.

[0131] A. Static path calculation within intersections: Static paths are calculated using lane-to-lane connectLinks.

[0132] B. Static routes within the same road segment are categorized based on whether the number of lanes changes during sub-segment transitions:

[0133] The number of lanes remains unchanged: the relationship between the current lane and the reachable connectLink lanes or adjacent lanes is recorded, without recording the point set.

[0134] Lane number change: Calculate the static path based on the center lines of the two lanes.

[0135] Step 103: Convert the map parsing results into a map storage structure. The map storage structure is a semantically layered high-precision map format, as shown in the image below. Figure 11 As shown, the map storage structure mainly includes a road element layer, a signal sign layer, and an application data layer.

[0136] The road elements in the road element layer form the basic framework of the high-precision map, mainly including junctions, segments, links, and lanes. Junctions generally refer to the intersection of two roads, such as T-junctions, crossroads, tree-branch intersections, and roundabouts. However, considering the conflict between pedestrians and vehicles at pedestrian crossings, and the significant impact of lane separation points such as expressway ramps on traffic flow, this invention also includes ramps, road merging and diverging points, and pedestrian crossings within the scope of junctions. The end of a road is generally considered a virtual junction. Junctions are spaces enclosed by closed lines, may have waiting / turning areas, are connected by road segments, and do not have forward or backward driving characteristics. Roundabouts contain links.

[0137] A road segment is a one-way, orderly road between two intersections, including main roads, auxiliary roads, tunnels, elevated roads, etc. A road segment consists of multiple orderly sub-segments. Generally, there are two road segments forming a two-way road between two intersections.

[0138] If a road segment is one-way, the reason for its one-wayness is the one-wayness of its sub-segments.

[0139] If a road segment consists of one or more sub-segments, the sub-segments are arranged in a directional and orderly manner.

[0140] If a road segment starts at one intersection and ends at another, it is given by start_junction_id and end_junction_id.

[0141] The basic attributes of each lane within the same sub-segment are: driving speed, number of lanes, accessibility, etc., which remain unchanged from the start to the end. A sub-segment consists of a series of ordered lanes. For example, a sub-segment may be one-way, or it may only have lanes offset to the right, with lane offsets of 1, 2, 3, ..., where lane 0 represents the left boundary of the sub-segment, i.e., the reference line.

[0142] A lane contains lane attributes and information about the right lane line. A lane is defined by the space formed by the left lane line (boundary line) and the right lane line. For example, lane offsets are sequential and continuous, and a lane can only be to the right of the reference line.

[0143] The traffic signal layer mainly includes stop lines, crosswalks, traffic signs, and traffic lights. Stop lines are the stop lines corresponding to the lanes upstream of the intersection. Crosswalks are the pedestrian crossing areas at the intersection. Traffic signs include speed limits, height limits, width limits, and other traffic indicators.

[0144] Some high-precision map formats do not define driving directions, and the introduction of road segments ensures the directionality of roads. It is also an important concept to simplify the construction of map topology, abstracting complex road networks into points (intersections) and edges (road segments).

[0145] A sub-segment is a group of adjacent lanes whose core attributes remain unchanged. Because the core attributes do not change, the computational complexity of lanes within a sub-segment is reduced.

[0146] The application data layer mainly includes control chains, curve formulas, etc. It is primarily used for vehicle flow direction within intersections, lane connectivity, and reference static paths.

[0147] The application data layer primarily consists of open data structures designed for different business applications using high-precision maps, such as map simulation, map scenes, and map editing. This layer of data can better adapt to different business domains and has strong scalability and ease of use. Ordinary high-precision maps, on the other hand, lack an application data layer and cannot store application-level data.

[0148] Furthermore, the present invention also provides a map parsing system for applying the above-described map parsing method. For example... Figure 12 As shown, the system includes:

[0149] The raw data layer is used to obtain the file content of the map to be parsed. This layer mainly includes the extractor.

[0150] The data mapping layer, connected to the original data layer, is used to initialize the file content of the map to be parsed and obtain the initialization result.

[0151] The data processing layer, connected to the data mapping layer, is used to perform map parsing operations based on the initialization results to obtain parsed data, and to perform verification processing on the parsed data to obtain the map parsing result. The data processing layer includes a parser and a processor. The parser corresponds to the format of the map to be parsed.

[0152] The data transformation layer, connected to the data processing layer, is used to convert map parsing results into a map storage structure. This map storage structure is a semantically layered, high-precision map format. The data transformation layer includes converters.

[0153] Furthermore, the core components of each layer of the above system include: Source, Geometry, Table, Mapper, Stage, and Parser.

[0154] Among them, Source is used to parse a specific map format type, store the original data object, and provide a series of methods for quickly finding the original element object.

[0155] Geometry is used to store the locations of points representing the geometric shape of road segments, primarily for parsing in OpenDrive.

[0156] The table is used to store the ID mapping relationship between the original map elements and the target map elements.

[0157] Mapper is used to parse raw data objects of a specific map format and convert them into target data objects.

[0158] A Stage refers to the parsing business logic of a certain map block, which is used to reorganize, share, or use similar parsing logic.

[0159] The Parser is a parser used to specifically parse a certain map format, responsible for parsing the raw data into the target data.

[0160] like Figure 13 and Figure 14 As shown, before using the map parsing system provided above for map parsing, the system loads various map format plugins and automatically registers the relevant parsing components into the map engine. When the original file path of a certain map format is passed in, the map engine will perform a series of checks, such as whether the file address is correct and whether the map format is supported. After the checks pass, the original file will be loaded into memory, and then the parsing component for that map format will be obtained to perform initialization work based on the original file.

[0161] Initialization is the preparatory work before extracting and calculating map data. The core data structures are the original topology, the ID mapping table, and the Geometry mapping table (i.e., the construction of the unique identifier mapping table). Through the ID mapping table and Geometry, map element data, map element relationships, and road geometry information can be easily obtained, facilitating subsequent data extraction, merging, and calculation. After initialization is complete, the corresponding parsing component begins map parsing.

[0162] Map parsing is the main step in converting the content of a raw map file into a target structure. In this process, a set of defined parsing operations is encapsulated within a stage. The main stages in this system include basic road element extraction, road direction assignment, lane connectivity calculation, lane turning information calculation, special sub-segment search and binding, intersection traffic light pole location calculation, stop line location calculation, global ID replacement, and static path calculation. By controlling whether specific functional stages are executed, map parsing can control whether a particular set of parsing operations is executed. Adding new functionalities can also be achieved by adding new stages.

[0163] After parsing, the data will be parsed and validated, mainly removing unused element information and verifying data integrity, such as verifying the existence of IDs and deleting non-existent IDs.

[0164] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on the differences from other embodiments. The same or similar parts between the various embodiments can be referred to each other.

[0165] This document uses specific examples to illustrate the principles and implementation methods of the present invention. The descriptions of the above embodiments are only for the purpose of helping to understand the method and core ideas of the present invention. Furthermore, those skilled in the art will recognize that, based on the ideas of the present invention, there will be changes in the specific implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of the present invention.

Claims

1. A map resolution method characterized by, The method comprises the following steps: obtaining the file content of a map to be parsed; initializing the file content of the map to be parsed to obtain an initialization result; performing a map parsing operation based on the initialization result to obtain parsing data, and performing a verification process on the parsing data to obtain a map parsing result; the verification of the parsing data removes unused element information and verifies data integrity; the purpose of map parsing is to convert original map file data into target element information, and the processing steps include basic road information extraction, road travel direction assignment, lane link relationship calculation, lane turning information calculation, special sub-road segment searching and binding, and lane static path calculation; wherein, the lane static path calculation includes intersection static path calculation and lane level static path calculation within the same road segment; the static path is represented by a set of Bezier curve points; A. Intersection static path calculation: calculate the static path through the lane and the connectLink of the lane; bind the id of the next sub-road segment to the lane of the current sub-road segment, i.e. the connectLink of the lane; B. Lane level static path within the same road segment is divided into two types according to whether the number of lanes changes when the sub-road segment transitions: No change in the number of lanes: record the association between the current lane and the same level lane or adjacent lane of the connectLink, and do not record the point set; Change in the number of lanes: calculate the static path according to the lane center lines of the two lanes; convert the map parsing result into a map storage structure; the map storage structure is in a semantic layered high-definition map format.

2. The map resolution method according to claim 1, characterized by, Before obtaining the file content of the map to be parsed, the method further comprises: obtaining a map to be parsed and a file address storing the map to be parsed; verifying whether the file address storing the map to be parsed is correct to obtain a first verification result; when the first verification result is correct, determining whether the format of the map to be parsed is supported to obtain a second verification result; when the second verification result is support, reading the file content of the map to be parsed based on the file address storing the map to be parsed; when the first verification result is incorrect or the second verification result is not support, ending the operation.

3. The map resolution method according to claim 1, characterized by, The initialization process on the file content of the map to be parsed to obtain the initialization result specifically comprises: constructing an original topology based on the file content of the map to be parsed; constructing an ID mapping table based on the original topology; constructing a geometry mapping table based on the ID mapping table.

4. The map resolution method according to claim 3, characterized by, The construction of the original topology based on the file content of the map to be parsed specifically comprises: taking all roads within the intersections in the file content of the map to be parsed as starting points, searching from the starting points to obtain different edges, and obtaining all node points according to the two ends of the edges to generate the original topology.

5. The map resolution method according to claim 1, characterized by, The target element information includes basic road information, road travel direction, lane link relationship, lane turning information, and lane static path.

6. The map resolution method according to claim 1, characterized by, The performed map parsing operation includes: basic road information extraction, road travel direction assignment, lane link relationship calculation, lane turning information calculation, special sub-road segment searching and binding, and lane static path calculation.

7. The map resolution method according to claim 1, characterized by, The method further comprises: loading map format plug-ins and automatically registering the respective map format plug-ins with corresponding parsing components.

8. A map resolution system characterized by, The system is used for applying the map parsing method according to any one of claims 1-7; the system comprises: an original data layer configured to obtain file content of a map to be parsed; a data mapping layer connected with the original data layer and configured to perform initialization processing on the file content of the map to be parsed to obtain an initialization result; a data processing layer connected with the data mapping layer and configured to perform a map parsing operation based on the initialization result to obtain parsed data, and to perform verification processing on the parsed data to obtain a map parsing result; a data conversion layer connected with the data processing layer and configured to convert the map parsing result into a map storage structure; the map storage structure is in a semantic-layered high-definition map format.

9. The map resolution system of claim 8, wherein, The data processing layer comprises a parser; the parser corresponds to a map format to be parsed.

10. The map resolution system of claim 8, wherein, The data conversion layer comprises a converter.

Citation Information

Patent Citations

  • Verification method and system for server data

    CN114116272A

  • High-precision map format conversion method and device and storage medium

    CN116028561A

  • High-precision map compiling method, electronic equipment and machine readable storage medium

    CN116049100A