Map file generation method and related device
By automatically generating OpenDRIVE files from map definition table files, the problems of low generation efficiency and high cost in existing technologies are solved, and the needs of flexible map scene definition and simulation testing are met.
Patent Information
- Application Number
- CN202410424421.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-04-09
- Publication Date
- 2025-10-17
AI Technical Summary
Existing technologies for generating OpenDRIVE files require data collection vehicles to collect information in real road environments, which is costly and inefficient. The generated files also reflect limited map scenes, making it difficult to meet simulation testing requirements.
By obtaining the map definition table file, customizing the map scene definition content using multiple map content configuration items, determining the element indication information of static traffic elements, and populating the data nodes of the OpenDRIVE file, a custom map file is generated.
It improves the efficiency of OpenDRIVE file generation, reduces costs, and the generated files can meet diverse simulation testing needs.
Smart Images

Figure CN120803901A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of computer technology, and in particular to a map file generation method and related devices. Background Art
[0002] In recent years, autonomous driving and assisted driving technologies have developed rapidly. In related R&D scenarios, large-scale, multi-angle simulation testing is required across diverse maps to more quickly and comprehensively identify algorithmic issues and rapidly iterate and optimize them. To enable map reuse across different test projects, the Association for Standardization of Automation and Measuring Systems (ASAM) has proposed a standard format for describing static traffic network map files, the OpenDRIVE file.
[0003] In related technologies, OpenDRIVE files are usually generated based on actual road information; that is, a collection vehicle can be used to collect road environment information, and then the number of lanes, lane orientation, and other information can be determined based on the analysis of the road environment information, and the OpenDRIVE file is generated accordingly. On the one hand, this method of generating OpenDRIVE files requires the collection vehicle to collect information in a real road environment, which is costly to implement and takes a long time to generate the corresponding OpenDRIVE file, resulting in low file generation efficiency. On the other hand, the generated OpenDRIVE file can only reflect the map scene corresponding to the actual collected road environment. Since the actual collected road environment is usually limited, the map scene reflected by the generated OpenDRIVE file is limited, and in many cases it is difficult to meet the relevant simulation test requirements. Summary of the Invention
[0004] The embodiments of the present application provide a map file generation method and related devices, which can improve the generation efficiency of OpenDRIVE files, reduce the generation cost, and generate corresponding OpenDRIVE files according to actual simulation test requirements.
[0005] In a first aspect, the present application provides a method for generating a map file, the method comprising:
[0006] Obtaining a map definition table file; the map definition table file includes a plurality of map content configuration items, wherein the plurality of map content configuration items are respectively used to carry custom-configured map scene definition contents of different dimensions;
[0007] determine element indication information corresponding to each static traffic element in a target map scene based on the map scene definition content carried by each of the plurality of map content configuration items; the element indication information is used to indicate a deployment form of the corresponding static traffic element in the target map scene;
[0008] determine target node content carried by a data node in a target data structure according to the element indication information corresponding to each static traffic element, to obtain a target map file having the target data structure; the target map file is used to describe the target map scene.
[0009] The second aspect of the present application provides a map file generation device, the device comprises:
[0010] a table acquisition module configured to acquire a map definition table file; the map definition table file comprises a plurality of map content configuration items, and each of the plurality of map content configuration items is configured to carry self-defined configuration of map scene definition content of different dimensions;
[0011] an element determination module configured to determine element indication information corresponding to each static traffic element in a target map scene based on the map scene definition content carried by each of the plurality of map content configuration items; the element indication information is used to indicate a deployment form of the corresponding static traffic element in the target map scene;
[0012] a file generation module configured to determine target node content carried by a data node in a target data structure according to the element indication information corresponding to each static traffic element, to obtain a target map file having the target data structure; the target map file is used to describe the target map scene.
[0013] The third aspect of the present application provides a computer device, the device comprises a processor and a memory:
[0014] the memory is configured to store a computer program;
[0015] the processor is configured to execute steps of the map file generation method according to the computer program.
[0016] The fourth aspect of the present application provides a computer readable storage medium, the computer readable storage medium is configured to store a computer program, and the computer program is configured to execute steps of the map file generation method.
[0017] The fifth aspect of the present application provides a computer program product or computer program, which comprises computer instructions stored in a computer readable storage medium. A processor of a computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions to enable the computer device to perform the steps of the map file generation method of the first aspect.
[0018] From the above technical solutions, it can be seen that the embodiments of the present application have the following advantages:
[0019] The embodiments of the present application provide a map file generation method, which proposes a mechanism for automatically generating an OpenDRIVE file based on a map definition table file. Specifically, in the method, first, a map definition table file is obtained, and the map definition table file includes a plurality of map content configuration items, and the plurality of map content configuration items are respectively used to carry map scene definition content of different dimensions which are configured by a user according to actual simulation requirements. Then, based on the map scene definition content carried by each of the plurality of map configuration items, element indication information corresponding to each static traffic element in a target map scene is determined, and the element indication information is used to indicate the deployment form of the corresponding static traffic element in the target map scene. Finally, according to the element indication information corresponding to each static traffic element, target node content carried by a data node in a target data structure is determined, so as to obtain a target map file having the target data structure and used to describe the target map scene; that is, the element indication information is written into the data node in the data structure which the OpenDRIVE file should have, the filling of the data node content is realized, and thus an OpenDRIVE file used to describe the target map scene configured by the user is obtained. In the above method, the user can quickly and flexibly set the map scene definition content through the map definition table file according to actual requirements, and then automatically generate a corresponding OpenDRIVE file based on the map definition table file. Compared with the method of generating an OpenDRIVE file based on the road environment information actually collected by a collection vehicle, the present application improves the generation efficiency of the OpenDRIVE file, reduces the related cost of generating the OpenDRIVE file, and the map scene reflected by the generated OpenDRIVE file is no longer limited to the actually collected road environment, which can better meet the related simulation test requirements. BRIEF DESCRIPTION OF DRAWINGS
[0020] Figure 1 An application scenario diagram of the map file generation method provided by the embodiments of the present application is shown;
[0021] Figure 2 A flowchart of the map file generation method provided by the embodiments of the present application is shown;
[0022] Figure 3 A schematic diagram of a 6-layer model architecture in the PEGASUS project provided for an embodiment of the present application
[0023] Figure 4 A schematic diagram of a map content configuration item included in an exemplary map definition table file provided for an embodiment of the present application
[0024] Figure 5 A schematic diagram of a definition content reference information provided for an embodiment of the present application
[0025] Figure 6 A schematic diagram of another definition content reference information provided for an embodiment of the present application
[0026] Figure 7 A schematic diagram of a structure of a map generation system provided for an embodiment of the present application
[0027] Figure 8 An interaction diagram of a map file generation method provided for an embodiment of the present application
[0028] Figure 9 A schematic diagram of a map definition table file provided for an embodiment of the present application
[0029] Figure 10 A schematic diagram of a straight road with a crossroad effect provided for an embodiment of the present application
[0030] Figure 11 A schematic diagram of a straight road with a T-shaped road intersection effect provided for an embodiment of the present application
[0031] Figure 12 A schematic diagram of a straight road with a Y-shaped road intersection effect provided for an embodiment of the present application
[0032] Figure 13 A schematic diagram of a curved road entrance effect provided for an embodiment of the present application
[0033] Figure 14 A schematic diagram of a curved road exit effect provided for an embodiment of the present application
[0034] Figure 15 A schematic diagram of an S-shaped curved road effect provided for an embodiment of the present application
[0035] Figure 16 A schematic diagram of a curved road effect provided for an embodiment of the present application
[0036] Figure 17 A schematic diagram of a direct converging two-lane road effect provided for an embodiment of the present application
[0037] Figure 18An effect schematic diagram of a direct type converging single lane provided by the embodiment of the present application;
[0038] Figure 19 An effect schematic diagram of a parallel type converging double lane provided by the embodiment of the present application;
[0039] Figure 20 An effect schematic diagram of a parallel type converging single lane provided by the embodiment of the present application;
[0040] Figure 21 An effect schematic diagram of a direct type diverging double lane provided by the embodiment of the present application;
[0041] Figure 22 An effect schematic diagram of a direct type diverging single lane provided by the embodiment of the present application;
[0042] Figure 23 An effect schematic diagram of a parallel type diverging double lane provided by the embodiment of the present application;
[0043] Figure 24 An effect schematic diagram of a parallel type diverging single lane provided by the embodiment of the present application;
[0044] Figure 25 A structure schematic diagram of a map file generation device provided by the embodiment of the present application;
[0045] Figure 26 A structure schematic diagram of a terminal device provided by the embodiment of the present application;
[0046] Figure 27 A structure schematic diagram of a server provided by the embodiment of the present application. DETAILED DESCRIPTION
[0047] In order to enable persons skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, but not all the embodiments of the present application. Based on the embodiments in the present application, all the other embodiments obtained by persons skilled in the art without creative labor fall within the scope of protection of the present application.
[0048] The terms "first," "second," "third," "fourth," etc. (if any) in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects and are not necessarily used to describe a specific order or sequential sequence. It should be understood that the numbers used in this way are interchangeable where appropriate so that the embodiments of the present application described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having," as well as any variations thereof, are intended to cover non-exclusive inclusions, e.g., a process, method, system, product, or apparatus comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products, or apparatus.
[0049] The map file generation method provided in the embodiments of this application can be executed by a computer device, which can be a terminal device or a server. Terminal devices include, but are not limited to, mobile phones, computers, intelligent voice interaction devices, smart home appliances, vehicle-mounted terminals, aircraft, and the like. A server can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server. The embodiments of this application can be applied to various scenarios, including but not limited to cloud technology, artificial intelligence, smart transportation, assisted driving, and autonomous driving.
[0050] It should be noted that the information, data, and signals involved in the embodiments of this application are authorized by the relevant objects or fully authorized by all parties, and the collection, use, and processing of relevant data comply with the relevant laws, regulations, and standards of relevant countries and regions.
[0051] To facilitate understanding of the map file generation method provided in the embodiment of the present application, the application scenario of the map file generation method is exemplarily introduced below, taking the execution subject of the map file generation method as a server as an example.
[0052] See also Figure 1 , Figure 1 Schematic diagram of the application scenario of the map file generation method provided in the embodiment of this application. Figure 1 As shown, the application scenario includes a terminal device 110 and a server 120 , and the terminal device 110 and the server 120 can communicate directly or indirectly through a wired network or a wireless network.
[0053] The terminal device 110 runs a table software, and a user can configure a map definition table file according to actual simulation requirements in the terminal device 110 through the table software. Then, the terminal device 110 transmits the map definition table file to the server 120 in response to a user-triggered operation of starting to generate an OpenDRIVE file. The server is configured to execute the map file generation method provided in the embodiments of the present application, generate an OpenDRIVE file based on the map definition table file, and feed back the OpenDRIVE file to the terminal device 110 for storage.
[0054] In actual applications, after the server 120 obtains the map definition table file transmitted by the terminal device 110, the server 120 can determine element indication information corresponding to each static traffic element in a target map scene based on map scene definition content carried by each of a plurality of map content configuration items in the map definition table file. The element indication information is used to indicate a deployment form of the corresponding static traffic element in the target map scene.
[0055] Finally, the server 120 can determine target node content carried by a data node in a target data structure according to the element indication information corresponding to each static traffic element, obtain a target map file having the target data structure and used to describe the target map scene, and then feed back the target map file to the terminal device 110 for storage. That is, the element indication information is written into a data node in a data structure that the OpenDRIVE file should have, the data node content is filled, and thus an OpenDRIVE file used to describe the target map scene customized by the user is obtained.
[0056] It can be seen that in the present application, the user can quickly and flexibly set map scene definition content through a map definition table file according to actual requirements, and then automatically generate a corresponding OpenDRIVE file based on the map definition table file. Compared with a method of generating an OpenDRIVE file based on road environment information actually collected by a collection vehicle, the method improves the generation efficiency of the OpenDRIVE file, reduces the related cost of generating the OpenDRIVE file, and the map scene reflected by the generated OpenDRIVE file is no longer limited to the actually collected road environment, which can better meet the related simulation test requirements.
[0057] It should be understood that Figure 1 It should be understood that
[0058] The map file generation method provided in the present application will be described in detail below through method embodiments.
[0059] Referring to Figure 2 , Figure 2 A flowchart of a map file generation method provided by an embodiment of the present application is shown in FIG. 1. For ease of description, the execution subject of the map file generation method is taken as a server in the following description. As shown in FIG. 1, the map file generation method includes the following steps: Figure 2
[0060] S201: Obtain a map definition table file, the map definition table file including a plurality of map content configuration items, the plurality of map content configuration items respectively used to carry self-defined configuration of map scene definition content of different dimensions.
[0061] The map definition table file refers to a file used to record map configuration information, wherein the recorded map configuration information can be self-defined by a user according to actual simulation requirements, such as self-defined according to a required map scene. The map configuration information can include but is not limited to scene naming information (used to indicate the name of a required map scene), scene description information (used to describe a required map scene), configuration marker information (used to indicate whether the current map configuration information has been configured completely), and map scene description content (used to describe roads, infrastructure, etc. in a map scene).
[0062] Meanwhile, the map definition table file can be presented in the form of a table, for example, can be presented in the form of an offline table or in the form of an online table. When presented in the form of an online table, the map definition table file supports simultaneous online editing by multiple users. For example, the map definition table file can be an electronic table such as excel, Google Sheets, LibreOffice Calc, Apache OpenOffice Calc, etc. Of course, other electronic table files can also be used, which are not limited by the present application.
[0063] The map definition table file includes a plurality of map content configuration items, i.e., used to carry the above-mentioned different types of map configuration information. In actual application, a user can configure the specific content carried by the plurality of map content configuration items according to actual simulation requirements. That is, the initial map definition table file includes a plurality of blank or filled map content configuration items with default content. A user needs to configure each map content configuration item according to actual simulation requirements, so that the content carried in the map content configuration item meets the actual simulation requirements of the user. It should be understood that the type of information required to be carried by each map content configuration item can be set according to actual map scene construction requirements, or can also be set according to the required map configuration information in a historical map generation file, which is not specifically limited by the present application.
[0064] In actual business, the information necessary for constructing the OpenDRIVE file is the description information about the map scene, therefore, it is necessary to set the map content configuration item for carrying such description information in the map definition table file; in the embodiment of the present application, the description information about the map scene is referred to as the map scene definition content, namely, the map definition table file includes the map content configuration item for carrying the map scene definition content. In addition, the embodiment of the present application supports the user to self-define the map scene definition content of different dimensions, such as supporting the user to configure the road dimension, the intersection dimension, the infrastructure dimension and the like of the map scene definition content, so as to realize the sufficient definition of the static map scene and meet the information requirement when constructing the OpenDRIVE file.
[0065] When setting the map content configuration item in the map definition table file, the 6-layer model architecture in the quality standard and method (PEGASUS) formulated to meet the automatic driving function can be followed, specifically, the first layer road model (the geometric structure of the road and the lane and the like) and the second layer infrastructure model (the traffic sign and the indicator light and the like) in the 6-layer model architecture can be followed, namely, the related information of the above first layer road model and the second layer infrastructure model carried by the map content configuration item in the map definition table file is set, which can refer to Figure 3 , Figure 3 The schematic diagram of the 6-layer model architecture in the PEGASUS project provided for the embodiment of the present application.
[0066] Specifically, the map content configuration item set according to the model architecture shown in Figure 3 can refer to Figure 4 , Figure 4An exemplary schematic diagram of a map content configuration item included in a map definition table file provided by an embodiment of the present application is shown in FIG. 1. The map definition table file includes a plurality of map content configuration items. For example, the map content configuration items can include a functional scene name configuration item (FuncId), a logic scene name configuration item (LogicId), a map scene description configuration item (Description), a completion mark configuration item (Mask), a road information configuration item (L1_road), and an infrastructure configuration item (L2_RoadFurnitureAndRules), etc. The road information configuration item can include a road basic information configuration sub-item (road type, curvature, direction, speed limit), an intersection information configuration sub-item (intersection type), a lane information configuration sub-item (lane type, number, width, edge), and a lane reference line information configuration sub-item (lane line type, state). The infrastructure configuration item includes a traffic light configuration sub-item (traffic light state, cycle). Thus, based on the above map content configuration items, more complete and comprehensive map scene definition content can be obtained, which facilitates a user to describe a required map scene from different dimensions, and at the same time Figure 4 The input interface shown is relatively simple and facilitates operation.
[0067] It should be noted that when filling the map scene definition content into the map content configuration items, some provided definition content reference information needs to be followed. For example, the definition content reference information can include a definition content reference information for the road information configuration item (L1_road) and a definition content reference information for the infrastructure configuration item (L2_RoadFurnitureAndRules). Figure 5 , Figure 5 A schematic diagram of definition content reference information provided by an embodiment of the present application is shown in FIG. 2. The definition content reference information includes content that needs to be referenced when self-defining the road information configuration item (L1_road) and content that needs to be referenced when self-defining the infrastructure configuration item (L2_RoadFurnitureAndRules).
[0068] When customizing the road information configuration item (L1_road), the road content, intersection content, lane content, and lane line (lane line) content need to be configured. The road content can include road type, curvature, direction, and speed limit; the data type corresponding to the road type is an integer constant enum, and the road type can be configured as any one of straight, curve entry, curve exit, curve S, and curve in; the data type corresponding to the curvature is a 64-bit integer type int64, and the curvature can be configured as positive or negative, positive indicating left deviation and negative indicating right deviation; the data type corresponding to the direction is an integer constant enum, and the direction can be configured as one-way or two-way; and the data type corresponding to the speed limit is a floating-point type float. The intersection content can include intersection type, and the data type corresponding to the intersection type is an integer constant enum, and the intersection type can be configured as any one of no intersection, crossroad, T-shaped road, Y-shaped junction, road entrance (or merging), and road exit (or diverging). The lane content can include lane type, number, width, and edge; the data type corresponding to the lane type is an integer constant enum, and the lane type can be configured as any one of no lane, driving lane, bicycle lane, shoulder, special lane, sidewalk, parking area, stop lane, construction road, tram track, railway track, lane entrance, lane exit, exit ramp, and entrance ramp; the data type corresponding to the number is a string type string, and the number can be configured as a number constant such as 3; the data type corresponding to the width is a floating-point type float; and the data type corresponding to the edge is an integer constant enum, and the edge can be configured as having or not having an edge. The lane line content can include lane line type, color, and state; the data type corresponding to the lane line type is an integer constant enum, and the lane line type can be configured as any one of no lane line, double solid line, solid and dashed line, dashed and solid line, and double dashed line; the data type corresponding to the color is an integer constant enum, and the color can be configured as any one of no color, white, yellow, blue, green, red, and orange; and the data type corresponding to the state is an integer constant enum, and the state can be configured as clear or blurred.
[0069] When customizing the configuration of the infrastructure configuration item (L2_RoadFurnitureAndRules), the indicator light content (red light content) needs to be configured, and the indicator light content can include a state and a period; the data type corresponding to the state is an integer constant enum, and the state can be configured as no red light or with red light; the data type corresponding to the period is a 16-bit unsigned integer type uint16, and the period can be configured as how many seconds the total period of red, green and yellow lights is; if there is no specific value, 80 seconds by default of the map generation system can be used, and the map generation system can generate the corresponding red light according to the preset red light configuration rule.
[0070] For reference Figure 6 , Figure 6 Another definition content reference information schematic diagram provided by the embodiment of the application, Figure 6 The symbol reference information followed when customizing the scene definition content is recorded in the embodiment. In the process of describing the map scene definition content in natural language, different distinguishing marks can be used to express the relationship between the defined data content concisely and make the customized map scene definition content more standardized. For example, the distinguishing mark is " / ", and the corresponding example 10 / 20 / 30 represents 10 or 20 or 30, and the corresponding example Sport Utility Vehicle (suv) / car / truck represents suv or car or truck; the distinguishing mark is "*", and the corresponding example 10*5*30 represents the minimum value = 10, the step = 5, and the maximum value = 30; the distinguishing mark is "&", and the corresponding example w1 = 10 / 20 / 30 & w2 = 10 / 15 / 20 represents one-to-one generation of parameters, that is, 3 specific parameters are generated, w1 = 10, w2 = 10; w1 = 20, w2 = 15; w1 = 30, w2 = 20; the corresponding example w1 = 10 / 20 / 30 & w2 = 10 / 15 / 20 represents cross-generation of parameters, that is, 9 specific parameters are generated, w1 = 10, w2 = 10; w1 = 10, w2 = 15; w1 = 10, w2 = 20; w1 = 20, w2 = 10; w1 = 20, w2 = 15; w1 = 20, w2 = 20; w1 = 30, w2 = 10; w1 = 30, w2 = 15; w1 = 30, w2 = 20. The application does not make any limitation on the definition content reference information in the map definition table file.
[0071] In actual application, a user can configure the map definition table file through a terminal device. For example, the user can customize the configuration of each map content configuration item in the map definition table file through a table software running on the terminal device. After the corresponding customization of the map content configuration item is completed, the user can obtain a map definition table file including the map scene definition content customized by the user. Then, the user can trigger an operation of starting to generate an OpenDRIVE file through the terminal device. The terminal device transmits the map definition table file to the server in response to the operation, so that the server obtains the map definition table file and generates the OpenDRIVE file accordingly.
[0072] S202: Determine element indication information corresponding to each static traffic element in the target map scene based on the map scene definition content carried by each of the plurality of map content configuration items, wherein the element indication information is used to indicate the deployment form of the corresponding static traffic element in the target map scene.
[0073] The target map scene refers to a map scene parsed based on the map scene definition content, that is, a map scene customized through the map definition table file. The static traffic element refers to a non-movable traffic element included in the target map scene, for example, a road, an intersection, a traffic sign, a traffic light, and the like. The element indication information is used to indicate the deployment form of the static traffic element in the target map scene parsed based on the map scene definition content. For example, the element indication information corresponding to a road element is used to indicate that the road type of the road is a straight road, the curvature is 0 meters, the road direction is bidirectional, and the speed limit is 0 kilometers per hour.
[0074] As an example, the map scene definition content can be parsed to parse the natural language in the map definition table file into a functional description language applicable to a map generation system (running in a server, which is a system for generating an OpenDRIVE file based on a map definition table file). Then, the static traffic elements included in the map scene definition content and the deployment form thereof in the target map scene are determined accordingly.
[0075] In a possible implementation, the map definition table file includes at least one row of map overall definition content for describing a single map scene, which is composed of the map scene definition content carried by each of the plurality of map configuration items. The above-mentioned "determining element indication information corresponding to each static traffic element in the target map scene based on the map scene definition content carried by each of the plurality of map content configuration items" can include:
[0076] The map definition table file is based on the definition of each row of the map as a whole to decompose and convert the processing, and at least one set of map description data is obtained, each set of map description data corresponds to a target map scene, which includes the description information obtained by converting the map scene definition content related to the target map scene; for each set of map description data, based on the map description data, the element indication information corresponding to each static traffic element in the target map scene corresponding to the element indication information is determined.
[0077] Each row of data in the map definition table file is used to describe a map scene. The map definition content as a whole refers to the definition content containing the complete description information of a map scene.
[0078] As an example, the table header of each column in the map definition table file is a plurality of map content configuration items, and the data of each row is the map scene definition content carried by the map content configuration item of the corresponding column, so that the map scene definition content can be composed based on the content carried by each map content configuration item in each row. Then the map definition table file can be decomposed and converted for each row of map definition content as a whole, and at least one set of map description data corresponding to each row of data can be obtained. The map description data refers to the map description language obtained by decomposing and converting the map definition content as a whole.
[0079] For example, the decomposition and conversion function in the third-party library Pandas of the programming language python can be used to decompose and convert the map definition content as a whole in the map definition table file. Specifically, the map definition content as a whole in each row of the map definition table file can be read first, and then the read map definition content as a whole can be data cleaned. For example, the Chinese and English in the map definition content as a whole can be format normalized to ensure that the data format of Chinese and English conforms to the preset format, and the punctuation marks and spaces in the map definition content as a whole can be de-duplicated to exclude repeated punctuation marks and unnecessary spaces. Finally, the map definition content as a whole after data cleaning can be format converted based on the decomposition and conversion function, and the map definition content as a whole can be converted into the map description language, so that at least one set of map description data corresponding to each row of map definition content as a whole can be obtained.
[0080] It should be noted that two production methods are supported when generating map description data, Cartesian product and one-to-one generation. Cartesian product refers to combining elements in multiple sets to generate all possible combinations, that is, combining multiple map definition contents as a whole to generate all possible value combinations between multiple map definition contents as a whole, so as to obtain more diversified map description data. One-to-one generation refers to generating map description data row by row according to a one-to-one correspondence to obtain map description data that meets the actual simulation requirements.
[0081] In addition, in the process of decomposing and converting the overall map definition content of each row in the map definition table file based on the map definition table file to obtain at least one set of map description data, a processing description file for recording the decomposing and converting process can also be generated. The processing description file is used to explain the conversion logic adopted for the map scene definition content, i.e., the processing description file is used to record in detail the specific logic and method in the decomposing and converting process of the map scene definition content, for example, the steps in the decomposing and converting process and the functions adopted in the decomposing and converting process, so that subsequent backtracking can be performed according to the conversion logic in the processing description file. Not only does it help relevant personnel understand the specific logic in the decomposing and converting process, but also facilitates timely adjustment based on the backtracking result to ensure that more accurate map description data is obtained.
[0082] It should be noted that multiple sets of map description data can be obtained by decomposing the overall map definition content of each row, for example, the number of lanes in the overall map definition content of a row is 0-3, so in the decomposing and converting process, the overall map definition content of this row can be decomposed and converted into three sets of map description data, which can be divided into map description data of one lane, map description data of two lanes, and map description data of three lanes. Each set of map description data after the decomposing and converting process corresponds to a target map scene and specifically includes the map description language converted from the overall map definition content corresponding to each target map scene.
[0083] Finally, for each set of map description data, the deployment form of each static traffic element in the target map scene corresponding to the map description data can be determined based on the map description data, i.e., the corresponding element indication information is obtained. The specific way of determining the element indication information will be described in detail below, which will not be described here.
[0084] In this way, the overall map definition content in the map definition table file can be decomposed and converted, so that the natural language in the map definition table can be converted into a map description language that can be understood by a map generation system, and then the element indication information of the static traffic elements in the target map scene corresponding to each set of map description data can be determined through the map description data converted from each row of overall map definition content. This realizes automatic decomposing and converting of the map definition table file, so that the deployment form of the static traffic elements in each target map scene can be quickly determined based on the decomposed and converted map description data.
[0085] In one possible implementation, when multiple sets of map description data are obtained by decomposing and converting the map definition table file, the following can also be included:
[0086] Based on the multiple sets of map description data, corresponding map construction tasks are respectively assigned to the multiple first threads, where the map construction tasks are used to indicate the map description data to be processed by the first threads.
[0087] The above-mentioned “determining, for each set of map description data, element indication information corresponding to each static traffic element in the corresponding target map scene based on the map description data” may include:
[0088] By having multiple first threads execute their respective corresponding map building tasks in parallel, element indication information of each static traffic element in the target map scene corresponding to each of the multiple sets of map description data is obtained.
[0089] A thread refers to the smallest unit that can be scheduled individually in an operating system. In this application, the first thread refers to a thread used to construct a map scene based on map description data. A map construction task refers to a task that the first thread needs to perform to construct a map scene based on map description data, that is, the map construction task is used to indicate the map description data that the first thread needs to process.
[0090] As an example, after obtaining multiple sets of map description data, corresponding map construction tasks can be assigned to the first thread according to each set of map description data. For example, assuming that map scene description data corresponding to 6 target map scenes are obtained, including map description data 1, map description data 2, map description data 3, map description data 4, map description data 5 and map description data 6, then three first threads (respectively thread a, thread b and thread c) can be called to perform map construction tasks. Accordingly, thread a can be assigned a map construction task for instructing it to process map description data 1 and map description data 2, thread b can be assigned a map construction task for instructing it to process map description data 3 and map description data 4, and thread c can be assigned a map construction task for instructing it to process map description data 5 and map description data 6.
[0091] Of course, in actual applications, other methods besides equal distribution may be used to allocate corresponding map building tasks to each first thread, and this embodiment of the present application does not impose any limitation on this.
[0092] After determining the map construction tasks that the first threads need to execute respectively, the corresponding map construction tasks can be executed in parallel by multiple first threads, so that the multiple first threads can determine the deployment form of the static traffic elements in each target map scene in parallel based on the map description data that they are responsible for processing, and obtain the deployment form of each static traffic element in the target map scene corresponding to each of the multiple sets of map description data.
[0093] Thus, based on the plurality of first threads, the deployment forms of the static traffic elements in the target map scene corresponding to the plurality of sets of map description data can be determined in parallel. Through the multi-thread parallel processing manner, not only the response speed of determining the deployment forms of the static traffic elements in the target map scene is improved, but also the computing resources in the map generation system can be more efficiently utilized, and the overall concurrent processing capability of the map generation system is improved.
[0094] S203: Determine the target node content carried by the data node in the target data structure according to the element indication information corresponding to each static traffic element, and obtain a target map file having the target data structure. The target map file is used to describe the target map scene.
[0095] The target map file refers to an OpenDRIVE file generated based on a map definition table file and used to describe a target map scene customized by a user. The OpenDRIVE file is an open standard file format used to describe roads and traffic environments, and is commonly used in fields such as simulation, autonomous driving, assisted driving, and traffic planning. The OpenDRIVE file can also be used in the testing field of autonomous driving perception, planning, decision control, and the like. The OpenDRIVE file can describe the geometric shape of the road, the lane information, the traffic signs and the traffic lights in the map scene, so that the related simulator can accurately simulate the real map situation based on the OpenDRIVE file. The format of the OpenDRIVE file complies with the eXtensible Markup Language (XML) syntax.
[0096] The target data structure refers to the data structure of the target map file. For example, the data structure of the OpenDRIVE file is a tree structure. The data node in the target data structure refers to the data node in the data structure of the target map file. For example, the data node in the tree structure of the OpenDRIVE file.
[0097] As an example, based on the element indication information corresponding to each static traffic element, the corresponding data node in the tree structure of the OpenDRIVE file can be selected, and the content indicated by the element indication information, i.e., the target node content, can be filled in the data node. Thus, based on the target node content carried by each data node, the OpenDRIVE file having a complete tree structure can be constituted.
[0098] For example, the tree structure of the OpenDRIVE file includes name, lane and traffic sign. The data node of the lane includes lane type, lane line, lane number, and the like. Accordingly, according to the element indication information corresponding to each static traffic element, the corresponding data node can be selected, and the corresponding target node content can be filled in the corresponding data node based on the element indication information.
[0099] In one possible implementation, the steps of “determining the target node content carried by the data node in the target data structure based on the element indication information corresponding to each static traffic element, and obtaining the target map file having the target data structure” may include:
[0100] The file generation function is executed in parallel by multiple second threads to determine the target node content carried by the data node in the target data structure according to the element indication information corresponding to each static traffic element in the target map scene, and generate the target map file.
[0101] The file generation function is a function for generating a target map file, that is, a function for generating an OpenDRIVE file. The second thread is a thread for parallel processing of generating a map file.
[0102] As an example, the second thread can be assigned a corresponding map file generation task based on the type of static traffic element. For example, the types of static traffic elements can include road type, intersection type, lane type, and road line type. The second thread can be assigned a corresponding map file generation task based on any of the above element types. For example, the second thread can be assigned a corresponding map file generation task based on road type. Static traffic elements of the same road type can be assigned to the same second thread, so that the second thread determines the target node content to be carried by the corresponding data node in the target data structure based on the element indication information of the road type. After each second thread completes its corresponding task, the required target map file can be obtained. Alternatively, the second thread can be assigned a corresponding map file generation task based on the map scene. For example, if it is necessary to generate a target map file corresponding to three target map scenes, and three second threads can be called, each second thread can be assigned a target map file generation task, so that it generates a target map file describing the target map scene based on the element indication information corresponding to each static traffic element in the corresponding target map scene.
[0103] Then, based on the fact that each second thread can respond to the assigned task and execute the file generation function in parallel, the corresponding target node content can be filled into the data nodes in the target data structure according to the element indication information corresponding to each static traffic element. Finally, based on the target node content carried by each data node in the target data structure, the OpenDRIVE file can be obtained.
[0104] Thus, the file generation function is executed in parallel based on the plurality of second threads, and according to the element indication information corresponding to each static traffic element and the data node in the target data structure, a plurality of target map files can be generated in parallel, thereby providing a multi-thread generation capability for generating a map file in the application and improving the generation efficiency.
[0105] In the map file generation method provided by the embodiments of the application, the method proposes a mechanism for automatically generating an OpenDRIVE file based on a map definition table file. Specifically, in the method, first, a map definition table file is obtained, the map definition table file includes a plurality of map content configuration items, and the plurality of map content configuration items are respectively used to carry map scene definition content of different dimensions which are configured by a user according to actual simulation requirements. Then, based on the map scene definition content carried by each of the plurality of map configuration items, element indication information corresponding to each static traffic element in the target map scene is determined, and the element indication information is used to indicate the deployment form of the corresponding static traffic element in the target map scene. Finally, according to the element indication information corresponding to each static traffic element, the target node content carried by the data node in the target data structure is determined, so that a target map file having the target data structure for describing the target map scene is obtained; that is, the element indication information is written into the data node in the data structure which the OpenDRIVE file should have, the filling of the data node content is realized, and thus the OpenDRIVE file for describing the target map scene configured by the user is obtained. In the above method, the user can quickly and flexibly set the map scene definition content through the map definition table file according to actual requirements, and then automatically generate the corresponding OpenDRIVE file based on the map definition table file. Compared with the method of generating the OpenDRIVE file based on the road environment information actually collected by the collection vehicle, the application improves the generation efficiency of the OpenDRIVE file, reduces the related cost of generating the OpenDRIVE file, and the map scene reflected by the generated OpenDRIVE file is no longer limited to the actually collected road environment, which can better meet the related simulation test requirements.
[0106] In a possible implementation, the method provided by the embodiments of the application can further include:
[0107] obtaining a target configuration file, and determining the element indication information corresponding to each static traffic element in the target map scene based on the target configuration file and the map scene definition content in the map definition table file.
[0108] The above "determining the element indication information corresponding to each static traffic element in the target map scene based on the map scene definition content carried by each of the plurality of map content configuration items" can include:
[0109] Based on the map scene definition content carried by each of the plurality of map content configuration items and the global parameter content defined in the target configuration file, element indication information corresponding to each static traffic element in the target map scene is determined.
[0110] The target configuration file (a toml file) refers to a file used to record configuration information referred to when generating an OpenDRIVE file, wherein the configuration information can be attribute parameter content referred to when generating the OpenDRIVE file. The target configuration file is used to define global parameter content according to which the OpenDRIVE file is generated, that is, the parameter content in the target configuration file can be applied to the global process of generating the OpenDRIVE file. For example, the global parameter content in the target configuration file can include reference configuration information, a target map file format, a target map file version, a name of the target map file, a name (identification, id) setting rule of a static traffic element in the target map scene, and a maximum length of the map, which are pre-set in a configuration center.
[0111] The target configuration file can be configured through a configuration center of a terminal device. When a user triggers an operation of starting to generate an OpenDRIVE file through the terminal device, the terminal device can transmit a target configuration file configured by the user to a server in response to the operation, so that the server obtains the target configuration file and generates the OpenDRIVE file according to the target configuration file and a map definition table file.
[0112] In a possible implementation, the implementation step of “obtaining the target configuration file” can include:
[0113] The custom configuration file includes custom global parameter content. In the case where a reference configuration file is pre-set, the custom configuration file and the reference configuration file are integrated to obtain the target configuration file, wherein the reference configuration file includes reference global parameter content as a reference standard.
[0114] The custom configuration file refers to a file in which parameter content is set by a user according to actual simulation requirements, that is, the parameter content in the custom configuration file can be applied to the global process of generating the OpenDRIVE file. For example, the custom configuration file can include a name of the OpenDRIVE file, a name (identification, id) setting rule of a static traffic element in the target map scene, and a maximum length of the map.
[0115] In actual application, the user can customize the configuration information through the terminal device, for example, the user can customize the global parameter content according to which the OpenDRIVE file is generated through the configuration center running in the terminal device, and after the setting is completed, the customized configuration file is obtained, so that the server can obtain the customized configuration file from the configuration center of the terminal device.
[0116] As an example, the user can refer to the design details of the highway overpass recommended standard (JTG / TD21-2014) to design the customized global parameter content in the customized configuration file. Specifically, the customized global parameter content in the customized configuration file can include: first, the name of the customized configuration file can be defined as [sys], and then the version of the OpenDRIVE file, the suffix format supported by the OpenDRIVE file, and the id setting rule of the static traffic element in the OpenDRIVE file can be designed in the customized configuration file.
[0117] The version of the OpenDRIVE file can be defined as [sys.version], odrmajor=1, odrminor=4, to indicate the major version number and the minor version number of the OpenDRIVE file; the supported suffix formats of the OpenDRIVE file can be defined as [sys.map], support=[“xodr”, “xml”, “sqlite”], to indicate that the supported suffix formats of the OpenDRIVE file can be the eXtensible OpenDRIVE (xodr), the eXtensible Markup Language (xml) and the Structured Query Language Lite (sqlite); the id setting rule of the static traffic element in the OpenDRIVE file can be defined as [sys.virtual], base_len=2000, start_road_id=1, start_junction_id=100, start_object_id=1, start_signal_id=199, merge_len_change=100 (#120kph), split_len_change=200 (#120kph), ratio_of_len_to_total_straight=0.8, ratio_of_len_to_perimeter_curve=0.8, suffix=“.xodr”, unreal_level_index=0, which are respectively used to indicate that the base length of the road in the OpenDRIVE file is 2000, the id of the starting road is 1, the id of the starting junction is 100, the id of the starting lane is 1, the id of the starting signal is 199, the road merging length change value is 100, the speed is 120 kilometers per hour, the road splitting length change value is 200, the speed is 120 kilometers per hour, the ratio of the road length to the total straight length is 0.8, the ratio of the road length to the perimeter curvature is 0.8, the suffix of the id setting rule of the static traffic element in the OpenDRIVE file can be xodr, and the index of the id setting rule of the static traffic element is 0.
[0118] In addition, the user can also design the setting rules of other information of the static traffic elements in the OpenDRIVE file, for example, [sys.rule], [sys.rule.ramp], [sys.rule.ramp.decel], [sys.rule.ramp.decel.onelane], [sys.rule.ramp.decel.onelane.120], 1 1 =0, 1 2 =0, gradient_rate=0, 1 3 =0, 1 =0, [sys.rule.ramp.decel.onelane.100], [sys.rule.ramp.decel.onelane.80], [sys.rule.ramp.decel.onelane.60], which respectively indicate the related setting rules of the static traffic elements in the OpenDRIVE file, which can be the related setting rules of the road in the OpenDRIVE file, the deceleration rules of the road, the deceleration rules of the single lane, the single lane deceleration rules with the speed limit of 120, the length or speed of the road, the slope of the road is 0, and the single lane deceleration rules under different speed limit conditions, i.e. the single lane deceleration rules with the speed limit of 100, the single lane deceleration rules with the speed limit of 80 and the single lane deceleration rules with the speed limit of 60; [sys.rule.ramp.decel.twolane], [sys.rule.ramp.decel.twolane.120], [sys.rule.ramp.decel.twolane.100], [sys.rule.ramp.decel.twolane.80], [sys.rule.ramp.decel.twolane.60], which respectively indicate the deceleration rules of the double lane in the OpenDRIVE file, the double lane deceleration rules with the speed limit of 120, the double lane deceleration rules with the speed limit of 100, the double lane deceleration rules with the speed limit of 80 and the double lane deceleration rules with the speed limit of 60; [sys.rule.ramp.accel], [sys.rule.ramp.accel.onelane], [sys.rule.ramp.accel.onelane.direct], [sys.rule.ramp.accel.onelane.direct.120], [sys.rule.ramp.accel.onelane.direct.100], [sys.rule.ramp.accel.onelane.direct.80], [sys.rule.ramp.accel.onelane.direct.60], [sys.rule.ramp.accel.onelane.paralle], [sys.rule.ramp.accel.onelane.paralle.120], [sys.rule.ramp.accel.onelane.paralle.100], [sys.rule.ramp.accel.onelane.paralle.80], [sys.rule.ramp.accel.onelane.paralle.60], [sys.rule.ramp.accel.twolane], [sys.rule.ramp.accel.twolane.120], [sys.rule.ramp.accel.twolane.100], [sys.rule.ramp.accel.twolane.80], [sys.rule.ramp.accel.twolane.60], respectively, are used to indicate the acceleration rules of a road, the acceleration rules of a single lane, the acceleration rules of a straight single lane, the acceleration rules of a straight single lane with a speed limit of 120, the acceleration rules of a straight single lane with a speed limit of 100, the acceleration rules of a straight single lane with a speed limit of 80, and the acceleration rules of a straight single lane with a speed limit of 60, respectively.
[0119] Thus, based on the above self-defined global parameter content, a self-defined configuration file can be formed. After obtaining the self-defined configuration file, it can be judged whether there is a pre-set reference configuration file in the configuration center. If there is a pre-set reference configuration file in the configuration center, the self-defined configuration file and the reference configuration file are integrated and processed, and a target configuration file can be obtained.
[0120] The reference configuration file refers to a configuration file pre-stored in the configuration center. The reference configuration file contains reference global parameter content serving as a reference standard, i.e., the parameter content in the reference configuration file can be applied to the global process of generating an OpenDRIVE file. Without involving a custom configuration file, an OpenDRIVE file can be generated based on the parameter content in the reference configuration file and the map definition table file. In the case that the user also configures a custom configuration file in the configuration center, the two can be integrated, so that an OpenDRIVE file can be generated based on the target configuration file after integration processing and the map definition table file.
[0121] It should be noted that in the integration processing of the reference configuration file and the custom configuration file, the reference global parameter content in the reference configuration file and the custom global parameter content in the custom configuration file can be read respectively. When the reference global parameter content overlaps with the custom global parameter content, since the custom global parameter content is set by the user according to actual simulation requirements, in the integration processing, the overlapping part is subject to the custom global parameter content. Then, the parameter content in the reference global parameter content except the overlapping part and the custom global parameter content can be used as the global parameter content in the target configuration file.
[0122] Therefore, by integrating the custom configuration file set by the user according to actual simulation requirements and the reference configuration file pre-set in the configuration center, a target configuration file containing more global parameter content that meets actual simulation requirements and covers more comprehensively can be obtained.
[0123] After obtaining the target configuration file, the element indication information corresponding to each static traffic element in the target map scene can be determined based on the global parameter content defined in the target configuration file and the map scene definition content carried by each of the plurality of map content configuration items. At this time, the element indication information corresponding to the static traffic element includes identification information and deployment form indication information of the corresponding static traffic element. The identification information of the static traffic element refers to information for uniquely identifying each static traffic element in the target map scene, for example, id information.
[0124] The specific implementation steps of determining the deployment form indication information of the static traffic element in the target scene based on the map scene definition content carried by each of the plurality of map content configuration items can refer to the content in S202, which will not be repeated here. Since the id setting rule of the static traffic element is specified in the global parameter content defined in the target configuration file, the id of the static traffic element in the target map scene can be determined in combination with the target configuration file. At the same time, since the global parameter content defined in the target configuration file also includes the map maximum length, intersection parameter, and road design rule, the above parameter content and the road content and intersection content in the map scene definition content can be combined, and the combined map scene definition content can be disassembled and converted to obtain the map description data corresponding to the roads and intersections in the target map scene. Finally, the deployment form information of the roads and intersections in the target map scene can be determined based on the map description data corresponding to the roads and intersections. Thus, based on the id of each static traffic element in the target map scene and the deployment form information of each static traffic element, the element indication information corresponding to each static element in the target map scene can be formed, and the OpenDRIVE file can be generated based on the element indication information.
[0125] It can be seen that based on the map scene definition content carried by each of the map configuration items and the global parameter content defined in the target configuration file, the identification information and the deployment form indication information corresponding to each static traffic element in the target map scene can be determined, so that the element indication information corresponding to each static traffic element in the target map scene is more in line with the actual simulation requirements, and the planning degree of the element indication information is improved, and the integrity of the target map scene is ensured.
[0126] In one possible implementation, the embodiment of the present application provides a map generation system, which can refer to Figure 7 , Figure 7 The structure diagram of the map generation system provided by the embodiment of the present application is provided, and the map generation system is a system for generating an OpenDRIVE file based on the map file generation method provided by the embodiment of the present application. The map generation system includes a basic layer, a data processing layer, and a business logic layer.
[0127] The data processing layer mainly includes a data analysis layer and a data processing layer. The data analysis is used to read the overall map definition content of each row in the map definition table file through the parser. The data processing layer is used to format the read map overall definition content through the formatter. After the format specification processing, the map overall definition content can be converted through the logic formatter to obtain the map description language, that is, the map overall definition content corresponding to the map description data. And the generalization formatter can also be used to generate a processing description file for recording the disassembly conversion process.
[0128] The basic layer mainly includes a general module and an OpenX map implementation interface. The general module mainly includes Settings, Exception and SceneFilter. Settings is used to realize the reading and integration of custom configuration files and reference configuration files to obtain a target configuration file containing global parameter content. Exception is used to locate abnormal situations in the map generation system, for example, the same OpenDRIVE file is repeatedly generated according to the same map definition table file in the map generation system. At this time, the exception can be located through the Exception. SceneFilter is used to remove the map scene definition content in the map generation system that is not completed or has a problem in definition, for example, the map scene definition content carried in the Mask configuration item in the map definition table file is NO finished, which represents that the current row is not set to be completed. Then the data of this row can be removed, or not processed temporarily, or when the map scene definition content contains a description that does not comply with the traffic law, the SceneFilter can also be used to remove the map scene definition content corresponding to the situation.
[0129] The OpenX map implementation interface includes Scenarios generation, CreatPlanview, CreatLanes, CreatJunctionRoads and XodrFactory.
[0130] The scenario generation is used to indicate a construction interface of a tree structure of an OpenDRIVE file, based on inheritance and association between different data nodes in the tree structure, and by means of a tool or library for processing Extensible Markup Language (xml) data, the construction interface of the tree structure can be obtained, so as to facilitate construction of the OpenDRIVE file with the complete tree structure.
[0131] The CreatPlanview refers to related indication information of different road reference lines (Planview) that can be selected and created by means of map description data when the factory mode is adopted (CreatPlanview belongs to the XodrFactory method class), for example, the length of a straight road, a curve entrance, a curve middle, a curve exit, an S curve, and other geometric parameters.
[0132] The CreatLanes refers to related indication information of lanes that can be selected and created by means of map description data when the factory mode is adopted (CreatLanes belongs to the XodrFactory method class), for example, the number of lanes, the type of lanes, the color of lane lines, the width of lane lines, the type of lane lines, whether the direction of lanes is one-way or two-way, and the number of lane changes.
[0133] The CreatJunctionRoads refers to related indication information of road junctions that can be selected and created by means of map description data when the factory mode is adopted (CreatJunctionRoads belongs to the XodrFactory method class), for example, a crossroad, a T-shaped road, a Y-shaped road, a direct type of merging double lanes, a direct type of merging single lanes, a parallel type of merging double lanes, a parallel type of merging single lanes, a direct type of diverging double lanes, a direct type of diverging single lanes, a parallel type of diverging double lanes, and a parallel type of diverging single lanes.
[0134] The XodrFactory refers to related indication information of different road reference lines, related indication information of lanes, and related indication information of road junctions that are selected based on map description data, on the basis of which indication information of infrastructure is created in combination with the map description data, the above information is combined and adjusted to determine the target node content carried by the data nodes in the tree structure, finally, the above target node content and the corresponding data nodes can be recorded in a target map description list, and an OpenDRIVE file with a complete tree structure can be generated based on the target map description list.
[0135] The business logic layer is configured to call various basic functions provided by the basic layer, generate a target map file for describing a map scene defined by a user according to a map definition table file and a configuration file provided by the user, and specifically configured to construct a target map scene and generate a file. When constructing the target map scene, the file name of the target map file needs to be set, the maximum length of a road needs to be set, and corresponding modules in the basic layer, such as a Road module for vectorizing a road, a Junction module for vectorizing a junction, an Infrastructure module for vectorizing infrastructure, and an Adaptive module for adjusting a position relationship, need to be called.
[0136] In a possible implementation, the determination of the element indication information corresponding to each static traffic element in the target map scene based on the map description data can include:
[0137] Based on the map description data, a road reference line creation function and a lane creation function are called to determine road indication information corresponding to a road element, the road indication information including road reference line indication information and lane indication information; a junction creation function is called to determine junction indication information corresponding to a junction element; and an infrastructure creation function is called to determine infrastructure indication information corresponding to an infrastructure element.
[0138] Specifically, the business logic layer can call functions provided by an OpenX map implementation interface (such as Scenariosgeneration, CreatPlanview, CreatLanes, CreatJunctionRoads, and XodrFactory) in the basic layer to correspondingly determine the road indication information, the junction indication information, and the infrastructure indication information.
[0139] The vectorization of the road refers to the determination of road indication information corresponding to a road element based on the map description data and the calling of a road reference line creation function CreatPlanview and a lane creation function CreatLanes in the OpenX map implementation interface, so as to determine the road reference line indication information and the lane indication information corresponding to the road element. The road reference line indication information refers to the deployment form of the related information of the road in the target map scene, such as the length of a straight road, an entrance of a curved road, a middle of a curved road, an exit of a curved road, an S-shaped curved road, and other geometric parameters. The lane indication information refers to the deployment form of the related information of a lane and a lane line in the target map scene, such as the number of lanes, the type of a lane, the color of a lane line, the width of a lane line, the type of a lane line, whether the direction of a lane is one-way or two-way, and the number of lanes.
[0140] The vectorization creates the intersection, that is, based on the map description data, calling the intersection creation function CreatJunctionRoads in the OpenX map implementation interface, and the vectorization creates the intersection indication information corresponding to the intersection element. The intersection indication information refers to the deployment form of the intersection in the target map scene, for example, a cross intersection, a T-shaped intersection, a Y-shaped intersection, a direct type merging double lane, a direct type merging single lane, a parallel type merging double lane, a parallel type merging single lane, a direct type splitting double lane, a direct type splitting single lane, a parallel type splitting double lane, and a parallel type splitting single lane.
[0141] The vectorization creates the infrastructure, that is, based on the map description data, calling the infrastructure creation function XodrFactory, and the vectorization creates the facility indication information corresponding to the infrastructure element in the intersection. The infrastructure element refers to the infrastructure in the target map scene, for example, a traffic sign and an indication light. The facility indication information refers to the deployment form of the infrastructure in the target map scene, for example, creating a traffic light at the intersection. It should be noted that in the above processes of vectorization creating the road, vectorization creating the intersection, and vectorization creating the infrastructure, the id of each static traffic element is unique in the entire creation process.
[0142] Therefore, based on the map description data, selecting to call different creation functions of the static traffic element can quickly create the corresponding element indication information, and based on the element indication information of the above static traffic element, the target map scene can be quickly determined, thereby improving the speed of generating the OpenDRIVE file.
[0143] In a possible implementation, setting the file name of the target map file can include:
[0144] Based on the map description data and the target configuration file, the file name, the file suffix, and the file version of the target map file used for describing the corresponding target map scene are determined.
[0145] The file name of the OpenDRIVE file can be spliced by the road, the intersection, the lane, and the lane line and the like in the map description data, and the file name of the OpenDRIVE file can also be defined in the target configuration file. When there are multiple OpenDRIVE files, the file name of the OpenDRIVE file can add the suffix “_number” on the basis of the original file name, so as to distinguish different OpenDRIVE files and facilitate user saving.
[0146] Meanwhile, the global parameter content in the target configuration file further contains a file suffix and a file version of the target map file. For example, the file suffix of the OpenDRIVE file can be any one of "xodr", "xml", and "sqlit", and the file version of the OpenDRIVE file can include a major version number odrmajor=1 and a minor version number odrminor=4. The application does not specifically limit the file name, file suffix, and file version of the target map file.
[0147] Therefore, based on the map description data and the global parameter content defined in the target configuration file, the file name, file suffix, and file version of the OpenDRIVE file corresponding to the map description data can be determined, so that the generated OpenDRIVE file is closer to the actual simulation requirements, and the OpenDRIVE file with high flexibility can be obtained in batches.
[0148] In a possible implementation, before the road reference line creation function and the lane creation function are called to determine the road indication information corresponding to the road element, the road length recorded in the target configuration file can also be adaptively detected and adjusted.
[0149] Specifically, in the case that the map description data corresponds to a target map scene including a curved road, if the road maximum length is defined in the target configuration file, whether there is an abnormal situation of curved road generation is detected according to the road maximum length and the curved road curvature information in the map description data; if there is, the target road maximum length is determined according to the curved road curvature information; and the target road maximum length is used as a basis for determining the road indication information.
[0150] The road maximum length refers to the global parameter content defined in the target configuration file, which can be a self-defined global parameter content in a self-defined configuration file or a reference global parameter content in a reference configuration file, and the application does not specifically limit the storage address of the road maximum length. The curved road curvature information refers to the road curvature recorded in the map definition table file and the road curvature information recorded in the map description data obtained through disassembly and conversion.
[0151] When the road in the target map scene corresponding to the map description data is a curved road, that is, the road type in the map description data is not a straight road, if the global parameter content defined in the target configuration file contains the road maximum length, whether there is an abnormal situation of curved road generation can be detected according to the road maximum length and the curved road curvature information in the map description data. The abnormal situation of curved road generation refers to the fact that the curved road in the target map scene does not conform to the actual situation, for example, the curved road in the target map scene has an overlapping situation.
[0152] As an example, if the length calculated by the curvature radius of the curve is less than the maximum length of the road, it indicates that the curve is constructed as an overlapping circle, which means that there is an abnormal situation of curve generation. When there is an abnormal situation of curve generation, the target road maximum length can be determined according to the curve curvature information, and the target road maximum length is used to indicate the deployment form of the road element in the target map scene. For example, the length calculated by the curvature radius of the curve can be calculated as the target road maximum length.
[0153] Therefore, when constructing the target map scene, the road length recorded in the target configuration file can be detected based on the curve curvature information in the map description data. When there is an abnormal situation of curve generation, the target road maximum length can be re-determined according to the curve curvature information, so that the constructed target map scene is more consistent with the actual situation, and the authenticity of the generated OpenDRIVE file is increased.
[0154] In a possible implementation, the self-adaptive adjustment of the position relationship in the target map scene can include:
[0155] According to the road indication information and the intersection indication information, the linking relationship between the road element corresponding to the road indication information and the intersection element corresponding to the intersection indication information is adaptively determined.
[0156] As an example, the road indication information and the intersection indication information created based on the map description data can be used to call the self-adaptive adjustment function in the XodrFactory class to adjust the linking relationship between the road element corresponding to the road indication information and the intersection element corresponding to the intersection indication information, that is, to adaptively adjust the front and rear linking order and the linking position of the road element and the intersection element in the target map scene. Therefore, the adjusted road element and intersection element are closer to the actual situation, and the layout of the target map scene is more reasonable.
[0157] Therefore, based on the above content, the target map scene can be constructed, and finally, the file generation function can be executed by multiple second threads in parallel in the Generator class in the business logic layer to generate OpenDRIVE files in parallel in the form of multithreading.
[0158] In a possible implementation, the above-mentioned content can be referred to Figure 8 , Figure 8An interaction diagram of a map file generation method provided by an embodiment of the present application mainly includes the interaction process among a simulation engineer, a configuration center, a map generation system and a disk. First, the simulation engineer can customize a configuration map definition table file and a target configuration file in the configuration center, then the simulation engineer can trigger a generation task of starting to generate an OpenDRIVE file through a terminal device, so that the map generation system running in the server can start to read the configuration map definition table file and the target configuration file, and then can vectorize to construct a target map scene based on the map scene definition content carried by each map content configuration item in the configuration map definition table file and the global parameter content defined by the target configuration file, that is, determine the identification information and deployment form indication information of each static traffic element in the target map scene. The map generation system can execute a file generation function in multiple threads in parallel, determine the target node content carried by the data node in the tree structure of the OpenDRIVE file according to the element indication information corresponding to each static traffic element in the target map scene, to generate the OpenDRIVE file. Finally, the OpenDRIVE file can be stored in the disk at a specified path.
[0159] Therefore, by the map file generation method provided by the embodiment of the present application, the map generation system can batch generate OpenDRIVE files (virtual high-precision maps conforming to OpenDRIVE) based on the target configuration file and the configuration map definition table file, not only realizing low-cost editing of maps and effectively reducing the test development threshold related to maps, but also being able to adjust the target configuration file and the configuration map definition table file at any time, realizing high-flexible change of the target map scene, without manually adjusting the target map scene according to the data collected by the collection vehicle, effectively saving the manpower and time cost, and also being able to quickly verify the functions in the automatic driving algorithm or the assisted driving algorithm in a specific area based on the OpenDRIVE file.
[0160] Finally, reference can be made to Figure 9 , Figure 9A schematic diagram of a map definition table file provided by an embodiment of the present application, which includes a plurality of map content configuration items and corresponding bearing map scene definition content. FuncId refers to a function scene name configuration item, which is used to indicate the name of the map scene under different application functions, and the corresponding bearing map scene definition content is VirtualMap virtual map. LogicId refers to a logic scene name configuration item, which is used to indicate the logic name in the map scene, and the corresponding bearing map scene definition content is the road name under different types, for example, straight_with_crossroad straight road ahead and intersection with another road. Description refers to a map scene description configuration item, which is used to indicate specific description information in the map scene, and the corresponding bearing map scene definition content is straight road and exists crossroad. Mask refers to a completion marker configuration item, which is used to indicate whether the map scene is designed, and the corresponding bearing map scene definition content is finished, which is used to indicate that the map scene is designed. L1_road refers to a road information configuration item, which is used to indicate lane information in the map scene, and the corresponding bearing map scene definition content is Road: [Type: straight, curvature: 0m, direction: two-way, speed limit: 0kph]; Intersection: [Type: crossroad, number: 1]; Lane: [Type: driving, number: 2, width: 3.5m, edge: none]; Lane line: [Type: solid white, dashed white, solid white, state: clear]. L2_RoadFurnitureAndRules refers to an infrastructure configuration item, which is used to indicate other traffic elements in the map scene, such as traffic lights, and the corresponding bearing map scene definition content is Traffic light: [State: Yes, cycle: 80s].
[0161] In addition, reference can also be made to Figures 10-24 , Figures 10-24 are effect schematic diagrams of OpenDRIVE files of different road types, Figure 10 is an effect schematic diagram of straight_with_crossroad straight road and crossroad provided by an embodiment of the present application, Figure 11 is an effect schematic diagram of straight_with_tRd straight road and T-shaped intersection provided by an embodiment of the present application, Figure 12 is an effect schematic diagram of straight_with_yJunc straight road and Y-shaped intersection provided by an embodiment of the present application, Figure 13 is an effect schematic diagram of curveIn curve road entrance provided by an embodiment of the present application, Figure 14 is an effect schematic diagram of curveOut curve road exit provided by an embodiment of the present application, Figure 15 is an effect schematic diagram of curveS S-shaped curve provided by an embodiment of the present application, Figure 16An effect schematic diagram of curving in a curve is provided for an embodiment of the present application, Figure 17 An effect schematic diagram of direct converging two-lane is provided for an embodiment of the present application, Figure 18 An effect schematic diagram of direct converging single-lane is provided for an embodiment of the present application, Figure 19 An effect schematic diagram of parallel converging two-lane is provided for an embodiment of the present application, Figure 20 An effect schematic diagram of parallel converging single-lane is provided for an embodiment of the present application, Figure 21 An effect schematic diagram of direct diverging two-lane is provided for an embodiment of the present application, Figure 22 An effect schematic diagram of direct diverging single-lane is provided for an embodiment of the present application, Figure 23 An effect schematic diagram of parallel diverging two-lane is provided for an embodiment of the present application, Figure 24 An effect schematic diagram of parallel diverging single-lane is provided for an embodiment of the present application.
[0162] Based on the map file generation method provided in the foregoing embodiments, the present application also correspondingly provides a map file generation device. The following will be described in combination with Figure 25 . Figure 25 A structure schematic diagram of a map file generation device 2500 provided for an embodiment of the present application, the device comprises:
[0163] A table acquisition module 2501, configured to acquire a map definition table file; the map definition table file comprises a plurality of map content configuration items, and the plurality of map content configuration items are respectively used to carry self-defined configuration of map scene definition content of different dimensions;
[0164] An element determination module 2502, configured to determine element indication information corresponding to each static traffic element in a target map scene based on the map scene definition content carried by each of the plurality of map content configuration items; the element indication information is used to indicate a deployment form of the corresponding static traffic element in the target map scene;
[0165] The file generation module 2503 is configured to determine target node content carried by a data node in a target data structure according to element indication information corresponding to each static traffic element, and obtain a target map file having the target data structure; the target map file is used to describe the target map scene.
[0166] Optionally, the apparatus further includes:
[0167] The first obtaining unit is configured to obtain a target configuration file; the target configuration file is used to define global parameter content used when the target map file is generated;
[0168] Correspondingly, the element determination module 2502 includes:
[0169] The first element determination unit is configured to determine element indication information corresponding to each static traffic element in the target map scene based on the map scene definition content carried by each of the plurality of map content configuration items and the global parameter content defined by the target configuration file; the element indication information includes identification information and deployment form indication information of the corresponding static traffic element.
[0170] Optionally, the first obtaining unit includes:
[0171] The second obtaining unit is configured to obtain a custom configuration file; the custom configuration file includes custom global parameter content;
[0172] The integration processing unit is configured to, in a case where a reference configuration file is pre-set, perform integration processing based on the custom configuration file and the reference configuration file to obtain the target configuration file; the reference configuration file includes reference global parameter content as a reference standard.
[0173] Optionally, the map definition table file includes at least one row of map overall definition content used to describe a single map scene, which is composed of map scene definition content carried by each of the plurality of map content configuration items;
[0174] Correspondingly, the element determination module 2502 includes:
[0175] The disassembly and conversion unit is configured to perform disassembly and conversion processing based on each row of the map overall definition content in the map definition table file to obtain at least one group of map description data; each group of the map description data corresponds to one of the target map scenes and includes description information obtained by converting the map scene definition content related to the target map scene;
[0176] A second element determination unit is configured to determine, for each set of map description data, element indication information corresponding to each static traffic element in the target map scene based on the map description data.
[0177] Optionally, the apparatus further comprises:
[0178] A generation unit is configured to generate a processing instruction file in a process of decomposing and converting the map overall definition content based on each row of the map definition table file to obtain at least one set of map description data; the processing instruction file is used to indicate the conversion logic adopted for the map scene definition content.
[0179] Optionally, the second element determination unit comprises:
[0180] A third element determination unit is configured to determine road indication information corresponding to road elements by calling a road reference line creation function and a lane creation function based on the map description data; the road indication information comprises road reference line indication information and lane indication information; call an intersection creation function to determine intersection indication information corresponding to intersection elements; call an infrastructure creation function to determine facility indication information corresponding to infrastructure elements.
[0181] Optionally, the apparatus further comprises:
[0182] A map file information determination unit is configured to determine a file name, a file suffix and a file version of the target map file used to describe the target map scene based on the map description data and a target configuration file; the target configuration file is used to define global parameter content followed in generating the target map file.
[0183] Optionally, the apparatus further comprises:
[0184] A detection unit is configured to, in a case where the map description data corresponds to a target map scene comprising a curved road, if a road maximum length is defined in a target configuration file, detect whether there is a curved road generation abnormality according to the road maximum length and curved road curvature information in the map description data.
[0185] A road maximum length determination unit is configured to, if there is, determine a target road maximum length according to the curved road curvature information; the target road maximum length is used as a basis for determining the road indication information.
[0186] Optionally, the apparatus further comprises:
[0187] An adaptive unit is configured to adaptively determine a link relationship between road elements corresponding to the road indication information and intersection elements corresponding to the intersection indication information according to the road indication information and the intersection indication information.
[0188] Optionally, when a plurality of sets of the map description data are obtained by parsing and converting the map definition table file, the apparatus further comprises:
[0189] an allocation unit configured to allocate a corresponding map construction task to each of the first threads based on the plurality of sets of the map description data, the map construction task being used to indicate the map description data to be processed by the first thread;
[0190] Correspondingly, the second element determination unit comprises:
[0191] a first parallel processing unit configured to execute the map construction task corresponding to each of the first threads in parallel to obtain the element indication information of each static traffic element in the target map scene corresponding to each of the plurality of sets of the map description data.
[0192] Optionally, the file generation module 2503 comprises:
[0193] a second parallel processing unit configured to execute a file generation function in parallel by using a plurality of second threads to determine the target node content carried by the data node in the target data structure according to the element indication information corresponding to each of the static traffic elements in the target map scene, and generate the target map file.
[0194] Optionally, the plurality of map content configuration items comprise a function name configuration item, a logic name configuration item, a map description information configuration item, a completion mark configuration item, a road information configuration item, and an infrastructure configuration item.
[0195] The road information configuration item comprises a road basic information configuration sub-item, an intersection information configuration sub-item, a lane information configuration sub-item, and a lane reference line information configuration sub-item; and the infrastructure configuration item comprises a traffic light configuration sub-item.
[0196] Embodiments of the present application also provide a computer device, which can be a terminal device or a server. In the following, the terminal device and the server provided by embodiments of the present application will be introduced from the perspective of hardware realization.
[0197] Referring to Figure 26 , Figure 26 is a structural schematic diagram of the terminal device provided by embodiments of the present application. As shown in Figure 26As shown, for the convenience of illustration, only parts related to the embodiments of the present application are shown, and specific technical details not disclosed, please refer to the method part of the embodiments of the present application. The terminal can be any terminal device including mobile phone, tablet computer, personal digital assistant (Personal Digital Assistant, PDA), point of sales (Point of Sales, POS), vehicle-mounted computer, etc. Take the computer as an example:
[0198] Figure 26 The diagram shows the part structure of the computer related to the terminal provided by the embodiments of the present application. Referring to Figure 26 , the computer includes: radio frequency (Radio Frequency, RF) circuit 1210, memory 1220, input unit 1230 (including touch panel 1231 and other input devices 1232), display unit 1240 (including display panel 1241), sensor 1250, audio circuit 1260 (connected with speaker 1261 and microphone 1262), wireless fidelity (wireless fidelity, WiFi) module 1270, processor 1280, and power supply 1290, etc. Those skilled in the art can understand, Figure 26 that the computer structure shown in the figure does not constitute a limitation to the computer, and can include more or less components than the diagram, or combine certain components, or different component arrangement.
[0199] The memory 1220 can be used to store software programs and modules, and the processor 1280 executes various functions of the computer and data processing by running the software programs and modules stored in the memory 1220. The memory 1220 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, at least one application program required by a function (such as a sound playing function, an image playing function, etc.), etc.; the data storage area can store data created according to the use of the computer (such as audio data, phone book, etc.), etc. In addition, the memory 1220 can include a high-speed random access memory, and can also include a non-volatile memory, for example, at least one magnetic disk storage device, flash memory device, or other volatile solid state memory device.
[0200] The processor 1280 is the control center of the computer, connecting various parts of the computer through various interfaces and lines, performing various functions of the computer and processing data by running or executing software programs and / or modules stored in the memory 1220 and calling data stored in the memory 1220. Optionally, the processor 1280 can include one or more processing units; preferably, the processor 1280 can integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface and application programs, and the modem processor mainly processes wireless communication. It can be understood that the above-mentioned modem processor can also not be integrated into the processor 1280.
[0201] In the embodiment of the present application, the processor 1280 included in the terminal is configured to perform the steps in the map file generation method described in the above various embodiments.
[0202] Referring to Figure 27 , Figure 27 A structural schematic diagram of a server 1300 provided by an embodiment of the present application is shown. The server 1300 can have great differences due to different configurations or performances, and can include one or more central processing units (CPP) 1322 (for example, one or more processors) and a memory 1332, one or more storage media 1330 (for example, one or more mass storage devices) storing application programs 1342 or data 1344. Among them, the memory 1332 and the storage medium 1330 can be temporary storage or persistent storage. The programs stored in the storage medium 1330 can include one or more modules (not shown in the figure), each of which can include a series of instruction operations in the server. Further, the central processing unit 1322 can be configured to communicate with the storage medium 1330 and execute a series of instruction operations in the storage medium 1330 on the server 1300.
[0203] The server 1300 can also include one or more power supplies 1326, one or more wired or wireless network interfaces 1350, one or more input / output interfaces 1358, and / or one or more operating systems, such as Windows Server TM , Mac OS X TM , Unix TM , Linux TM , FreeBSD TM , etc.
[0204] The steps performed by the server in the above embodiments can be based on the server structure shown in the above Figure 27 .
[0205] The CPP 1322 is configured to perform the steps in the map file generation method described in the various embodiments above.
[0206] The embodiments of the present application also provide a computer readable storage medium for storing a computer program, which is configured to perform the steps in the map file generation method described in the various embodiments above.
[0207] The embodiments of the present application also provide a computer program product or a computer program, which comprises computer instructions stored in a computer readable storage medium. A processor of a computer device reads the computer instructions from the computer readable storage medium, and the processor executes the computer instructions, so that the computer device performs the steps in the map file generation method described in the various embodiments above.
[0208] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the system, device and unit described above can refer to the corresponding processes in the foregoing method embodiments, which will not be repeated here.
[0209] In the several embodiments provided in the present application, it should be understood that the disclosed system, device and method can be implemented by other means. For example, the device embodiments described above are only schematic, and the division of the units is only a logical function division, and there can be another division manner in actual implementation, for example, a plurality of units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between the units shown or discussed can be indirect coupling or communication connection through some interface, device or unit, and can be electrical, mechanical or other forms.
[0210] The units described as separate components can or can not be physically separate, and the components shown as units can or can not be physical units, that is, they can be located in one place, or can be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the embodiments.
[0211] In addition, each functional unit in the various embodiments of the present application can be integrated in one processing unit, or each unit can exist physically, or two or more units can be integrated in one unit. The integrated unit can be realized in the form of hardware, or in the form of a software functional unit.
[0212] The integrated unit, if implemented in the form of a software function unit and sold or used as an independent product, can be stored in a computer readable storage medium. Based on such understanding, the technical solutions of the present application essentially or say the part that makes a contribution to the prior art or the whole or part of the technical solutions can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present application. The aforementioned storage medium includes: a P disk, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, and various computer program storage media that can store computer programs.
[0213] It should be understood that, in the present application, "at least one" refers to one or more, and "multiple" refers to two or more. "And / or" is used to describe the association relationship of the associated objects, which means that there can be three relationships, for example, "A and / or B" can represent: only A, only B, and A and B exist at the same time, where A and B can be singular or plural. The character " / " generally represents that the associated objects before and after are in an "or" relationship. "At least one of the following" or similar expressions means any combination of these items, including any combination of single or multiple items. For example, at least one of a, b or c can represent: a, b, c, "a and b", "a and c", "b and c", or "a and b and c", where a, b, and c can be single or multiple.
[0214] The above-described and above-embodied examples are only used to illustrate the technical solutions of the present application, rather than limit them. Although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacements to some technical features. Such modifications or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A method for generating a map file, characterized in that: The method comprises: Obtaining a map definition table file; the map definition table file includes a plurality of map content configuration items, wherein the plurality of map content configuration items are respectively used to carry custom-configured map scene definition contents of different dimensions; Determining, based on the map scene definition content carried by each of the plurality of map content configuration items, element indication information corresponding to each static traffic element in the target map scene; the element indication information is used to indicate a deployment form of the corresponding static traffic element in the target map scene; According to the element indication information corresponding to each static traffic element, the target node content carried by the data node in the target data structure is determined to obtain a target map file having the target data structure; the target map file is used to describe the target map scene.
2. The method according to claim 1, characterized in that The method further comprises: Obtaining a target configuration file; the target configuration file is used to define global parameter content based on which the target map file is generated; The determining, based on the map scene definition content respectively carried by the plurality of map content configuration items, element indication information corresponding to each static traffic element in the target map scene includes: Based on the map scene definition content carried by each of the multiple map content configuration items and the global parameter content defined by the target configuration file, the element indication information corresponding to each static traffic element in the target map scene is determined; the element indication information includes the corresponding identification information and deployment form indication information of the static traffic element.
3. The method according to claim 2, characterized in that The obtaining of the target configuration file includes: Obtain a custom configuration file; the custom configuration file includes custom global parameter content; In the case where a reference configuration file is pre-set, the target configuration file is obtained by integrating the custom configuration file and the reference configuration file; the reference configuration file includes reference global parameter content as a reference standard.
4. The method according to any one of claims 1 to 3, characterized in that The map definition table file includes at least one row of map overall definition content for describing a single map scene, which is composed of the map scene definition content carried by each of the multiple map content configuration items; The determining, based on the map scene definition content respectively carried by the plurality of map content configuration items, element indication information corresponding to each static traffic element in the target map scene includes: performing a decomposition and conversion process based on each row of the overall map definition content in the map definition table file, obtaining at least one set of map description data; each set of the map description data corresponds to one of the target map scenes, and includes description information obtained by converting the map scene definition content related to the target map scene; For each set of the map description data, element indication information corresponding to each static traffic element in the corresponding target map scene is determined based on the map description data.
5. The method according to claim 4, characterized in that The method further comprises: In the process of disassembling and converting the overall map definition content of each row in the map definition table file to obtain at least one set of map description data, a processing description file is generated; the processing description file is used to explain the conversion logic adopted for the map scene definition content.
6. The method according to claim 4 or 5, characterized in that The determining, based on the map description data, element indication information corresponding to each static traffic element in the corresponding target map scene includes: Based on the map description data, the road reference line creation function and the lane creation function are called to determine the road indication information corresponding to the road elements, wherein the road indication information includes the road reference line indication information and the lane indication information; the intersection creation function is called to determine the intersection indication information corresponding to the intersection elements; and the infrastructure creation function is called to determine the facility indication information corresponding to the infrastructure elements.
7. The method according to any one of claims 4 to 6, characterized in that The method further comprises: Based on the map description data and the target configuration file, the file name, file suffix and file version of the target map file used to describe the corresponding target map scene are determined; the target configuration file is used to define the global parameter content based on which the target map file is generated.
8. The method according to claim 6, characterized in that Before calling the road reference line creation function and the lane creation function to determine the road indication information corresponding to the road elements, the method further includes: In a case where the map description data corresponds to a target map scene including a curve, if a maximum road length is defined in the target configuration file, detecting whether there is a curve generation abnormality based on the maximum road length and curve curvature information in the map description data; If it exists, the maximum length of the target road is determined according to the curve curvature information; the maximum length of the target road is used as the basis for determining the road indication information.
9. The method according to claim 6, characterized in that The method further comprises: According to the road indication information and the intersection indication information, a link relationship between a road element corresponding to the road indication information and an intersection element corresponding to the intersection indication information is adaptively determined.
10. The method according to any one of claims 4 to 9, characterized in that When a plurality of sets of map description data are obtained by disassembling and converting the map definition table file, the method further includes: Based on the multiple sets of map description data, corresponding map construction tasks are respectively assigned to the multiple first threads; the map construction tasks are used to indicate the map description data to be processed by the first threads; The step of determining, for each set of the map description data, element indication information corresponding to each static traffic element in the corresponding target map scene based on the map description data, includes: The multiple first threads execute the map construction tasks corresponding to each of them in parallel, thereby obtaining element indication information of each static traffic element in the target map scene corresponding to each of the multiple groups of map description data.
11. The method according to any one of claims 1 to 10, characterized in that The step of determining target node content carried by a data node in a target data structure according to the element indication information corresponding to each static traffic element, and obtaining a target map file having the target data structure, includes: The file generation function is executed in parallel by multiple second threads to determine the target node content carried by the data node in the target data structure according to the element indication information corresponding to each of the static traffic elements in the target map scene, and generate the target map file.
12. The method according to any one of claims 1 to 11, characterized in that The plurality of map content configuration items include a function name configuration item, a logic name configuration item, a map description information configuration item, a completion mark configuration item, a road information configuration item, and an infrastructure configuration item; The road information configuration item includes a road basic information configuration sub-item, an intersection information configuration sub-item, a lane information configuration sub-item, and a lane reference line information configuration sub-item; and the infrastructure configuration item includes a indicator light configuration sub-item.
13. A map file generating device, characterized in that: The device comprises: A table acquisition module is used to acquire a map definition table file; the map definition table file includes a plurality of map content configuration items, and the plurality of map content configuration items are respectively used to carry custom-configured map scene definition content of different dimensions; an element determination module, configured to determine, based on the map scene definition content carried by each of the plurality of map content configuration items, element indication information corresponding to each static traffic element in the target map scene; the element indication information being used to indicate a deployment form of the corresponding static traffic element in the target map scene; The file generation module is used to determine the target node content carried by the data node in the target data structure according to the element indication information corresponding to each static traffic element, and obtain a target map file with the target data structure; the target map file is used to describe the target map scene.
14. A computer device, characterized in that: The device includes a processor and a memory; The memory is used to store computer programs; The processor is configured to execute the map file generating method according to any one of claims 1 to 12 according to the computer program.
15. A computer-readable storage medium, characterized in that The computer-readable storage medium is used to store a computer program, and when the computer program is executed by an electronic device, the map file generation method according to any one of claims 1 to 12 is implemented.
16. A computer program product comprising a computer program, characterized in that When the computer program is executed by a processor, the map file generation method according to any one of claims 1 to 12 is implemented.
Citation Information
Cited By
Method and device for generating hierarchical scene based on large model
CN121072364A