Map loading method, device and equipment, medium and vehicle
By dividing high-precision maps into multiple map areas and using concurrent compilation and concurrent loading technology, the problem of memory resource waste during map loading is solved, and efficient map compilation and loading is achieved.
Patent Information
- Application Number
- CN202310924638.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-07-26
- Publication Date
- 2025-02-11
AI Technical Summary
When loading multiple versions of high-precision maps and loading different project maps, memory resources are prone to problems.
By dividing high-precision maps into map areas of different locations for storage and management, and using concurrent compilation and concurrent loading, different map areas are compiled and loaded simultaneously.
It effectively improves the compilation and loading speed of maps, saves memory resources, and supports testing of different versions of maps or maps in different regions.
Smart Images

Figure CN119413189A_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to the field of autonomous driving technology, and more specifically, to a map loading method, device, equipment, medium and vehicle. Background Art
[0002] Currently, in the production process of high-precision maps, the maps need to be compiled into a standardized map format and then loaded into memory.
[0003] In the related art, during the map testing phase, high-precision maps are often updated. After each map update, the entire map data is recompiled, and during the map initialization process, the entire recompiled map is loaded into the memory for subsequent map matching algorithm testing. When there are many map versions or many different map production projects, this current loading method is prone to waste of memory resources. Summary of the invention
[0004] The present invention provides a map loading method, device, equipment, medium and vehicle, which solve the problem of memory resource waste when loading multiple versions of maps and loading maps of different projects.
[0005] The specific technical solutions are as follows:
[0006] In a first aspect, an embodiment of the present invention provides a map loading method, comprising:
[0007] During the map test, when the original high-precision map is updated, the updated map area data is compiled to obtain an updated compilation result corresponding to the updated map area, wherein the original high-precision map is divided into map areas at multiple different locations for storage;
[0008] Receive a map test request, and parse the map test request to obtain version information of the map to be loaded and location information of each track point of the traditional navigation path;
[0009] Determine, from the map compilation result of the high-precision map corresponding to the version information, a map area corresponding to the location information of each track point, wherein the map compilation result of the high-precision map includes an original compilation result corresponding to the unupdated map area and an updated compilation result corresponding to the updated map area;
[0010] If the obtained map area is a plurality of different map areas, the plurality of different map areas are simultaneously loaded into the memory, and the various map areas are merged in the memory to obtain a target high-precision map area corresponding to the position of the traditional navigation path.
[0011] It can be seen from the above scheme that by dividing the high-precision map into multiple different map areas, for example, dividing it into multiple different tiles for storage, it is convenient to manage different map areas, and in the process of map compilation, different map areas can be compiled simultaneously by concurrent compilation. Compared with the scheme of directly compiling the entire map provided by the related art, the concurrent compilation method provided by the embodiment of the present invention can effectively improve the compilation speed of the map. In addition, in the map testing phase, when a map test request is received, by determining the target version information of the map to be loaded and the multiple map areas to be loaded corresponding to the traditional navigation path in the map of this version, multiple map areas in the target version map can be loaded into the memory concurrently. Compared with the method of directly loading the entire map provided by the related art, the method of concurrently loading different map areas provided by the embodiment of the present invention can effectively improve the loading speed of the map and achieve the effect of saving memory. In addition, in the scenario where there are many versions of maps to be tested or many map production projects in different regions, the concurrent compilation and concurrent loading methods provided by the embodiment of the present invention can support testing of maps of different versions or maps of different regions.
[0012] Optionally, the high-precision map is stored in the form of map tiles in different regions, and different tiles correspond to different numbering information and location information;
[0013] Accordingly, determining the map area corresponding to the location information of each track point includes:
[0014] For each track point in the traditional navigation path, according to the location information of each track point, the tile information corresponding to each location information is determined from the map compilation result of the high-precision map corresponding to the version information, wherein the location information includes longitude information and latitude information.
[0015] Optionally, determining the tile information corresponding to each position information includes:
[0016] For each current track point in the traditional navigation path, determine the current tile information to which the location information of the current track point belongs;
[0017] In a plurality of set directions deviating from the current track point, inserting observation points at set positions away from the current track point respectively;
[0018] Determine the tile information corresponding to the location information of each observation point;
[0019] The tile information of each observation point and the current tile are used as the tile information corresponding to the current trajectory point.
[0020] Through the above technical solution, it can be seen that by inserting multiple observation points around the current track point and using the tile to which each observation point belongs as the tile corresponding to the current track point, the problem of inaccurate tile positioning caused by the inconsistency between the accuracy of traditional navigation maps and high-precision maps is solved. In addition, it also solves the problem that when a track point is located at the junction of adjacent tiles, it is impossible to accurately locate all tiles corresponding to the track point only through the longitude and latitude information of one track point.
[0021] Optionally, compiling the updated map area data to obtain an updated compilation result corresponding to the updated map area includes:
[0022] Filter out key information from the updated map area data, the key information including the road centerline of each high-precision road section, the corresponding road speed limit information and the calculated road range of each high-precision road section;
[0023] The key information is used as an updated compilation result corresponding to the updated map area.
[0024] By adopting the above compilation method, it is possible to save memory, save disk storage and reduce costs.
[0025] Optionally, after completing the map test, the method provided in this embodiment further includes:
[0026] During the map initialization process, the map compilation results of the tested high-precision map are loaded into the memory;
[0027] When receiving a navigation request, read the high-precision map completed by the test from the memory;
[0028] The traditional navigation path provided by the traditional navigation map is matched with the high-precision map completed by the test to generate a high-precision navigation path.
[0029] Through the above technical solution, it can be seen that in the map application stage, fewer map versions are delivered to users. When the map service is started, the tested map can be loaded into the memory, thereby improving the map reading speed in the subsequent matching process.
[0030] Optionally, the traditional navigation path provided by the traditional navigation map is matched with the high-precision map completed by the test, including:
[0031] If the length of the traditional navigation path is greater than the preset length, the traditional navigation path is split into a plurality of sections to be matched, and repeated sections between adjacent sections to be matched are stored;
[0032] Match each road section to be matched with the high-precision map after the test at the same time;
[0033] During the matching process, for each trajectory point on each road segment to be matched, high-precision road segments matching each trajectory point are simultaneously observed, and the obtained high-precision road segments are topologically connected to obtain continuous high-precision road segments matching the road segment to be matched;
[0034] According to the topological continuity relationship between the repeated road segments and each road segment to be matched, each continuous high-precision road segment matching each road segment to be matched is merged to obtain a high-precision navigation path matching the traditional navigation path.
[0035] In the above technical solution, by adopting segmented matching and using concurrent observation for each trajectory point in each traditional trajectory section, the matching efficiency can be improved.
[0036] In a second aspect, an embodiment of the present invention further provides a map loading device, comprising:
[0037] A map compiling module is configured to compile the updated map area data during the map testing process when the original high-precision map is updated, and obtain an updated compilation result corresponding to the updated map area, wherein the original high-precision map is divided into a plurality of map areas at different locations for storage;
[0038] A test request parsing module is configured to receive a map test request and parse the map test request to obtain version information of the map to be loaded and location information of each track point of the traditional navigation path;
[0039] A map area determination module is configured to determine a map area corresponding to the location information of each track point from a map compilation result of the high-precision map corresponding to the version information, wherein the map compilation result of the high-precision map includes an original compilation result corresponding to the unupdated map area and an updated compilation result corresponding to the updated map area;
[0040] The map loading module is configured to load multiple different map areas into the memory at the same time if the obtained map area is multiple different map areas, and merge the various map areas in the memory to obtain a target high-precision map area corresponding to the location of the traditional navigation path.
[0041] Optionally, the high-precision map is stored in the form of map tiles in different regions, and different tiles correspond to different numbering information and location information;
[0042] Correspondingly, the map area determination module includes:
[0043] The tile information determination unit is configured to determine, for each track point in the traditional navigation path, the tile information to which each location information belongs based on the location information of each track point and from the map compilation result of the high-precision map corresponding to the version information, wherein the location information includes longitude information and latitude information.
[0044] Optionally, the tile information determination unit is specifically configured as follows:
[0045] For each current track point in the traditional navigation path, determine the current tile information to which the location information of the current track point belongs;
[0046] In a plurality of set directions deviating from the current track point, inserting observation points at set positions away from the current track point respectively;
[0047] Determine the tile information corresponding to the location information of each observation point;
[0048] The tile information of each observation point and the current tile are used as the tile information corresponding to the current trajectory point.
[0049] Optionally, the map compilation module is configured as follows:
[0050] Filter out key information from the updated map area data, the key information including the road centerline of each high-precision road section, the corresponding road speed limit information and the calculated road range of each high-precision road section;
[0051] The key information is used as an updated compilation result corresponding to the updated map area.
[0052] Optionally, the device provided by the embodiment of the present invention further includes:
[0053] The service startup module is configured to load the map compilation result of the high-precision map completed by the test into the memory during the map initialization process after the map test is completed;
[0054] A map reading module, configured to read the high-precision map completed by the test from a memory when a navigation request is received;
[0055] The matching module is configured to match the traditional navigation path provided by the traditional navigation map with the high-precision map completed by the test to generate a high-precision navigation path.
[0056] Optionally, the matching module is specifically configured as follows:
[0057] If the length of the traditional navigation path is greater than the preset length, the traditional navigation path is split into a plurality of sections to be matched, and repeated sections between adjacent sections to be matched are stored;
[0058] Match each road section to be matched with the high-precision map after the test at the same time;
[0059] During the matching process, for each trajectory point on each road section to be matched, high-precision road sections matching each trajectory point are simultaneously observed, and the obtained high-precision road sections are topologically connected to obtain continuous high-precision road sections matching the road section to be matched;
[0060] According to the topological continuity relationship between the repeated road segments and each road segment to be matched, each continuous high-precision road segment matching each road segment to be matched is merged to obtain a high-precision navigation path matching the traditional navigation path.
[0061] In a third aspect, an embodiment of the present invention provides an electronic device, the electronic device comprising:
[0062] one or more processors;
[0063] a storage device for storing one or more programs,
[0064] When the one or more programs are executed by the one or more processors, the one or more processors implement the map loading method provided by any embodiment of the present invention.
[0065] In a fourth aspect, an embodiment of the present invention provides a storage medium having a computer program stored thereon, characterized in that when the program is executed by a processor, a map loading method as provided in any embodiment of the present invention is implemented.
[0066] In a fifth aspect, an embodiment of the present invention provides a vehicle, which includes the map loading device provided by any embodiment of the present invention, or includes the electronic device provided by any embodiment of the present invention.
[0067] In a sixth aspect, an embodiment of the present invention provides a computer program, wherein the computer program includes program instructions, and when the program instructions are executed by a computer, the map loading method provided by any embodiment of the present invention is implemented. BRIEF DESCRIPTION OF THE DRAWINGS
[0068] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0069] Figure 1a A flowchart of a map loading method provided in Embodiment 1 of the present invention;
[0070] Figure 1b A schematic diagram of tiles corresponding to trajectory points provided in the first embodiment of the present invention;
[0071] Figure 2 A flowchart of a map loading method provided in Embodiment 2 of the present invention;
[0072] Figure 3 A structural block diagram of a map loading device provided in Embodiment 3 of the present invention;
[0073] Figure 4 A structural block diagram of an electronic device provided in Embodiment 4 of the present invention;
[0074] Figure 5 A schematic diagram of a vehicle provided in Embodiment 5 of the present invention. DETAILED DESCRIPTION
[0075] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0076] It should be noted that the terms "including" and "having" and any variations thereof in the embodiments of the present invention and the accompanying drawings are intended to cover non-exclusive inclusions. For example, a process, method, system, product or device including a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products or devices.
[0077] The embodiments of the present invention disclose a map loading method, device, equipment, medium and vehicle, which are described in detail below.
[0078] Embodiment 1
[0079] Figure 1a This is a flowchart of a map loading method provided in the first embodiment of the present invention. The method can be applied to the test scenario of multiple versions of maps, or the test scenario of production projects of maps in different regions. The method provided in this embodiment can be executed by a map loading device, which can be implemented in software and / or hardware. Figure 1a As shown, the method provided in this embodiment specifically includes:
[0080] S110. During the map test process, when the original high-precision map is updated, the updated map area data is compiled to obtain an updated compilation result corresponding to the updated map area.
[0081] Among them, map compilation is to compile the original map data into a standardized map format that can be used by users.
[0082] In the related art, after the first version of the map is produced, the entire map data is compiled to facilitate subsequent map applications. If the map data of a certain area in the map is updated, the entire updated map data needs to be compiled again.
[0083] In this embodiment, after the first version of the map is produced, the entire map data also needs to be compiled to obtain the original compilation result corresponding to the original map data. Unlike the related art, this embodiment can divide the high-precision map into multiple map areas with different locations according to accuracy and latitude for management. For example, the map data can be stored in different areas in the form of map tiles. The numbering information and location information corresponding to different tiles are different. In this way, the original high-precision map can be split into N tiles. When compiling the map, concurrent compilation can be performed according to the granularity of the tile. Compared with the method of directly compiling the entire map, this embodiment can effectively improve the compilation speed of the precision map by tiling the high-precision map and compiling each tile concurrently. In addition, when the map data of any tile in the original high-precision map is updated, the method of compiling only the updated map area can be adopted. If the map data of multiple tiles in the original map data is updated, the method of concurrently compiling the map data corresponding to multiple tiles can be adopted at the same time, so as to realize the incremental compilation of the map data.
[0084] In this embodiment, the high-precision map is divided into a plurality of different map areas for management. In addition to the above-mentioned convenience of map data management and concurrent compilation of different map areas, it also includes concurrent loading of compilation results of different map areas and rapid testing of different versions of maps or map production projects in different regions. Among them, the specific test process of the map is the process of matching the traditional navigation path with its corresponding high-precision map. In this matching process, some key information in the high-precision map is needed, such as the road centerline of the high-precision road section and its corresponding road speed limit information, and the road range of each high-precision road section. Since there is a lot of redundant information irrelevant to the test in the data format of the original map data, in the map compilation process, this embodiment can extract the key information needed in the subsequent matching process by reducing the data format of the original map data. For example, in the process of incremental compilation of the updated map area data, the road centerline of each high-precision road section and its corresponding road speed limit information can be screened out from the updated map area data, and the road range of each high-precision road section can be calculated. By adopting the above setting method, the effects of saving memory, saving disk storage, and reducing costs can be achieved. For example, the original map data is a 1MB map file, which can be reduced to 200KB by adopting the map compilation method provided by this embodiment. When the compilation result is loaded into the memory, the memory can be saved due to the large reduction in the amount of data.
[0085] S120: Receive a map test request, and parse the map test request to obtain version information of the map to be loaded and location information of each track point of the traditional navigation path.
[0086] The map test request includes the version information of the map to be loaded and the location information of each track point in the traditional navigation path, wherein the location information includes longitude information and latitude information. When receiving the map request, the target version information of the map to be loaded and the location information of each track point in the traditional navigation path can be parsed. In the subsequent map loading process, the map areas corresponding to the location information of each track point in the target version of the map can be loaded concurrently.
[0087] S130. Determine the map area corresponding to the position information of each track point from the map compilation result of the high-precision map corresponding to the version information.
[0088] In this embodiment, since the high-precision map is divided into different map areas for management, the location information of each track point in the navigation request can correspond to a certain map area in the high-precision map. Specifically, the high-precision map can be stored in the form of tiles according to the longitude and latitude information. Different tiles have corresponding numbering information, and the location information of each track point can be located in a tile. In this embodiment, the tile to which each track point belongs can be determined by the longitude and latitude information of each track point in the traditional navigation path.
[0089] It should be noted that the track points of the traditional navigation path may be located at the junction of adjacent tiles. In this case, if only the longitude and latitude information of one track point is used, it is impossible to accurately locate all the tiles corresponding to the track point. In addition, due to the difference between the accuracy of the traditional navigation path and the accuracy of the high-precision map, the tiles located by the track points of the traditional navigation path may not be accurate. In order to solve the above problems, this embodiment adopts the method of inserting multiple observation points around the current track point, and taking the tile to which each observation point belongs as the tile corresponding to the current track point, which can be implemented in the following way:
[0090] 1. For each current track point in the traditional navigation path, determine the current tile information to which the location information of the current track point belongs.
[0091] 2. In multiple set directions that deviate from the current trajectory point, insert observation points at set positions away from the current trajectory point.
[0092] The number of directions needs to be set so that the tiles determined by each direction can cover all tiles around the current track point. For example, the number of directions can be set to more than 8. The distance between the inserted track point and the current track point can be set to any distance between 30 and 60 meters.
[0093] 3. Determine the tile information corresponding to the location information of each observation point.
[0094] 4. The tile information of each observation point and the current tile are used as the tile information corresponding to the current trajectory point.
[0095] Specifically, Figure 1b Schematic diagram of tiles corresponding to trajectory points provided in the first embodiment of the present invention. Figure 1bAs shown, the current track point is a, which corresponds to tile1. Observation points b~i are inserted respectively in the eight set directions deviating from the current track point and at the set positions away from the current track point a. Each observation point determines and corresponds to a tile, that is, tile1~tile4. In this embodiment, tile1~tile4 are all used as the target tiles corresponding to the current track point a. When the current track point a is at the junction of different tiles, all target tiles corresponding to the current track point a can be accurately located by adopting the above scheme. Alternatively, because the accuracy of the current track point a is different from that of the high-precision map, the position of the current track point a should actually correspond to the position a′ in the high-precision map. If only the tile corresponding to the current track point a is determined, it is easy to cause the problem of inaccurate tile positioning. By adopting the above technical solution, the problem of inaccurate tile positioning caused by the inconsistent accuracy of traditional navigation maps and high-precision maps is solved.
[0096] S140. If the obtained map area is a plurality of different map areas, the plurality of different map areas are simultaneously loaded into the memory, and the respective map areas are merged in the memory to obtain a target high-precision map area corresponding to the position of the traditional navigation path.
[0097] In this embodiment, since the high-precision map area is divided into multiple different map areas for management, after the different map areas are compiled concurrently, the compilation results corresponding to the different map areas can be loaded concurrently. For example, the map compilation results of different map areas can be loaded into the memory at the same time at the granularity of tiles, and the various map areas can be merged in the memory. In this embodiment, when the entire map is divided into multiple different map areas, the topological relationship between the roads in each different map area needs to be recorded. When merging the various map areas in the memory, the various map areas can be merged based on the topological relationship between the roads.
[0098] The technical solution provided by the related technology is to load all maps into the memory when the map service is started, that is, when the map is initialized. In the application scenario of testing multiple versions of maps, or testing map production projects in different regions, if the loading method provided by the related technology is adopted, all versions of maps and maps of all regions must be loaded into the memory when the map service is started, which will make it difficult to distinguish the maps in the memory and will also cause a waste of memory resources. This embodiment adopts a method of loading the map area in the target version of the map on demand according to the request content when a map test request is received, and a concurrent loading method is adopted for the map data of different map areas. Compared with the map loading solution provided by the related technology, this embodiment is set up in this way, which effectively improves the loading speed of the map and saves memory resources.
[0099] The technical solution provided in this embodiment can facilitate the management of different map areas by dividing the high-precision map into multiple different map areas, for example, dividing it into multiple different tiles for storage, and can compile different map areas simultaneously by concurrent compilation in the process of map compilation. Compared with the solution of directly compiling the entire map provided by the related art, the concurrent compilation method provided by the embodiment of the present invention can effectively improve the compilation speed of the map. In addition, in the map testing phase, when a map test request is received, by determining the target version information of the map to be loaded and the multiple map areas to be loaded corresponding to the traditional navigation path in the map of this version, the multiple map areas in the target version map can be loaded into the memory concurrently. Compared with the method of directly loading the entire map provided by the related art, the method of concurrently loading different map areas provided by the embodiment of the present invention can effectively improve the loading speed of the map and achieve the effect of saving memory. In addition, in the scenario where there are many versions of maps to be tested or many map production projects in different regions, the concurrent compilation and concurrent loading methods provided by the embodiment of the present invention can support testing of maps of different versions or maps of different regions.
[0100] Further, after completing the test operation on the map, in the application stage of the map after the test, the traditional navigation path provided by the traditional high-precision map can be matched to the high-precision map after the test, so as to determine which sections the vehicle should start the automatic driving mode and which sections need manual takeover. Among them, the traditional navigation path is a path generated based on the user's departure and destination information. After matching the high-precision navigation path, the automatic driving system can start the automatic driving server of the section corresponding to the high-precision navigation path. In this embodiment, after the map test is completed, the target map version that ultimately serves the user is determined, usually 1 to 2 versions. Compared with the test stage, the number of map versions is greatly reduced, that is, in the application stage of the map, there is no need to deploy multiple map versions to be tested like in the test stage. In this application stage, in order to improve the user experience, the map can be fully loaded into the map server during the initialization process of the map after the test. In this way, in the actual interaction with the user, when the user triggers a navigation request, the map can be read directly from the memory, which is faster and has higher concurrency, thereby improving the user experience. Below, the actual application process of the map is introduced in detail.
[0101] Embodiment 2
[0102] Figure 2 This is a flow chart of a map loading method provided in the second embodiment of the present invention. Based on the above embodiment, this embodiment refines the actual matching process of the tested map after the map test is completed, such as Figure 2 As shown, the method provided in this embodiment includes:
[0103] S200. During the map test process, when the original high-precision map is updated, the updated map area data is compiled to obtain an updated compilation result corresponding to the updated map area.
[0104] S210: Receive a map test request, and parse the map test request to obtain version information of the map to be loaded and location information of each track point of the traditional navigation path.
[0105] S220. Determine the map area corresponding to the location information of each track point from the map compilation result of the high-precision map corresponding to the version information.
[0106] Among them, the map compilation result of the high-precision map includes the original compilation result corresponding to the unupdated map area and the updated compilation result corresponding to the updated map area.
[0107] S230. If the obtained map area is a plurality of different map areas, the plurality of different map areas are simultaneously loaded into the memory, and each map area is merged in the memory to obtain a target high-precision map area corresponding to the position of the traditional navigation path.
[0108] S240. After the map test is completed, during the map initialization process, the map compilation result of the tested high-precision map is loaded into the memory.
[0109] In this embodiment, after the testing of different versions of maps is completed, the target map version delivered to the user is greatly reduced compared to the testing stage, generally 1 to 2 versions. Since the target map version is small, the map can be fully loaded into the memory during the application stage of the tested map when the map service is started, that is, during the map initialization process. When a navigation request is received, the high-precision map to be matched can be quickly read from the memory to determine the high-precision navigation path.
[0110] Specifically, the implementation of steps S210 to S240 may refer to the description of the above embodiment, which will not be described in detail here.
[0111] S250: When receiving a navigation request, read the high-precision map that has been tested from the memory.
[0112] S260: Match the traditional navigation path provided by the traditional navigation map with the high-precision map after the test to generate a high-precision navigation path.
[0113] In this embodiment, in the process of matching the traditional navigation path provided by the traditional navigation map with the high-precision map after the test, segmented matching can be adopted, and each track point in each traditional track section adopts a concurrent observation method, so as to achieve the effect of improving the matching efficiency, which can be specifically achieved by the following steps:
[0114] A. If the length of the traditional navigation path is greater than a preset length, the traditional navigation path is split into multiple sections to be matched, and repeated sections between adjacent sections to be matched are stored.
[0115] The preset length may be set to 1000 kilometers. In addition, a conventional navigation path longer than the preset length may be evenly divided into 10 segments or more.
[0116] B. Match each road section to be matched with the high-precision map that has been tested.
[0117] C. During the matching process, for any trajectory point of the road section to be matched, high-precision road sections matching each trajectory point are observed at the same time, and the obtained high-precision road sections are topologically connected to obtain continuous high-precision road sections matching the road section to be matched.
[0118] Among them, the high-precision road segments that match each trajectory point include high-precision road segments that successfully match each trajectory point and high-precision road segments that may match each trajectory point. The successfully matched high-precision road segments must meet all of the following matching conditions: the accuracy (longitude and latitude information) of the high-precision road segments and the trajectory points are consistent, the road label information is consistent, and the angle information of the road segments is consistent; the potentially matched high-precision road segments meet any one or two of the above matching conditions.
[0119] Specifically, the Viterbi algorithm can be used to obtain continuous high-precision road sections that match the to-be-matched road sections, which can be achieved in the following ways:
[0120] The observation values of the high-precision road segments that successfully match each trajectory point and the high-precision road segments that may match are scored respectively. Then, the transfer probability of each high-precision road segment can be scored according to the observation score of each high-precision road segment, and the Witter score of each high-precision road segment is calculated starting from the first high-precision road segment that successfully matches the current trajectory point until the Witter score of the last high-precision road segment that successfully matches the trajectory point is calculated.
[0121] Specifically, the transition probability score of the first high-precision segment (1) that successfully matches the current trajectory point can be used as a weight value, and the observation score of the high-precision segment is weighted based on the weight value to obtain the Viterbi score of the high-precision segment (1). The obtained Viterbi scores are sequentially used as the observation scores of the next candidate continuous high-precision segments, and based on the transition probability scores corresponding to the candidate continuous high-precision segments, the calculation operation of the Viterbi score of the candidate continuous high-precision segments is continued until the Viterbi score of the last high-precision segment that can be observed by the last trajectory point and successfully matches it is calculated.
[0122] Specifically, the observation score of the successfully matched high-precision road section may be scored as 1, and the observation score of the possibly matched high-precision road section may be scored as 0.5.
[0123] Among them, for any high-precision road segment with an observation score of 1, the scoring of the transition probability of the high-precision road segment connected to the high-precision road segment candidate can be divided into the following three cases:
[0124] If the high-precision road segment that is continuous with the candidate high-precision road segment is the same road segment, the transition probability of the candidate continuous high-precision road segment can be scored as 1+E, where E is a minimum value greater than 0; or,
[0125] If the high-precision road segment that is continuous with the high-precision road segment candidate is a road segment that can be topologically connected, the transition probability of the candidate continuous high-precision road segment can be scored as 1+2E, where E is a minimum value greater than 0;
[0126] If the candidate continuous high-precision road segment of the high-precision road segment cannot be topologically connected to the high-precision road segment, the transition probability of the candidate continuous high-precision road segment can be scored as 0.
[0127] In addition, for any high-precision road segment with an observation score of 0.5, the transfer probability of the high-precision road segment can be scored as 1, that is, a strategy of not weighting the candidate continuous road segments that may be matched is adopted to avoid a strong correlation between the score of the final matching path and the number of road segments.
[0128] By adopting the above-mentioned Vitter score calculation method, the Vitter score values corresponding to different continuous sections can be quickly calculated, and multiple continuous high-precision sections corresponding to the largest scores are selected from these multiple Vitter score values as the continuous high-precision sections that match the section to be matched.
[0129] D. Based on the topological continuity relationship between the repeated road segments and the road segments to be matched, the continuous high-precision road segments that match the road segments to be matched are merged to obtain a high-precision navigation path that matches the traditional navigation path.
[0130] For example, for a certain to-be-matched road segment m, if the road numbering information of the continuous high-precision road segments that match the to-be-matched road segment m is 1, 2, 3, 4, 5, and for another to-be-matched road segment n that is topologically connected to the to-be-matched road segment m, if the road numbering information of the continuous high-precision road segments that match the to-be-matched road segment n is 4, 5, 6, it means that the repeated road segments are high-precision road segments 4 and high-precision road segments 5. At this time, the high-precision road segments that match the topologically continuous to-be-matched road segments m and to-be-matched road segments n can be merged, that is, merged into high-precision road segments 1, high-precision road segments 2, high-precision road segments 3, high-precision road segments 4, high-precision road segments 5 and high-precision road segments 6. According to the above method, all high-precision road segments with repeated road segments can be merged to obtain a high-precision navigation path that matches the traditional navigation path.
[0131] In this embodiment, in the application stage of the map, since the number of target versions of maps delivered to users is small, the map is loaded into the memory when the map service is started, so that when a navigation request is received, the map to be matched can be quickly read from the memory. In the matching process, the Viterbi algorithm can be used to quickly obtain a high-precision navigation path that matches the traditional navigation path.
[0132] Embodiment 3
[0133] Figure 3 A structural block diagram of a map loading device provided in Embodiment 3 of the present invention is shown in FIG. Figure 3 As shown, the device includes: a map compilation module 310, a test request parsing module 320, a map area determination module 330 and a map loading module 340, wherein:
[0134] The map compiling module 310 is configured to compile the updated map area data during the map testing process when the original high-precision map is updated, and obtain an updated compilation result corresponding to the updated map area, wherein the original high-precision map is divided into a plurality of map areas at different locations for storage;
[0135] The test request parsing module 320 is configured to receive a map test request and parse the map test request to obtain version information of the map to be loaded and location information of each track point of the traditional navigation path;
[0136] The map area determination module 330 is configured to determine the map area corresponding to the location information of each track point from the map compilation result of the high-precision map corresponding to the version information, wherein the map compilation result of the high-precision map includes an original compilation result corresponding to the unupdated map area and an updated compilation result corresponding to the updated map area;
[0137] The map loading module 340 is configured to load multiple different map areas into the memory at the same time if the obtained map area is multiple different map areas, and merge the various map areas in the memory to obtain a target high-precision map area corresponding to the location of the traditional navigation path.
[0138] Optionally, the high-precision map is stored in the form of map tiles in different regions, and different tiles correspond to different numbering information and location information;
[0139] Correspondingly, the map area determination module includes:
[0140] The tile information determination unit is configured to determine, for each track point in the traditional navigation path, the tile information to which each location information belongs based on the location information of each track point and from the map compilation result of the high-precision map corresponding to the version information, wherein the location information includes longitude information and latitude information.
[0141] Optionally, the tile information determination unit is specifically configured as follows:
[0142] For each current track point in the traditional navigation path, determine the current tile information to which the location information of the current track point belongs;
[0143] In a plurality of set directions deviating from the current track point, inserting observation points at set positions away from the current track point respectively;
[0144] Determine the tile information corresponding to the location information of each observation point;
[0145] The tile information of each observation point and the current tile are used as the tile information corresponding to the current trajectory point.
[0146] Optionally, the map compilation module is configured as follows:
[0147] Filter out key information from the updated map area data, the key information including the road centerline of each high-precision road section, the corresponding road speed limit information and the calculated road range of each high-precision road section;
[0148] The key information is used as an updated compilation result corresponding to the updated map area.
[0149] Optionally, the device provided by the embodiment of the present invention further includes:
[0150] The service startup module is configured to load the map compilation result of the high-precision map completed by the test into the memory during the map initialization process after the map test is completed;
[0151] A map reading module, configured to read the high-precision map completed by the test from a memory when a navigation request is received;
[0152] The matching module is configured to match the traditional navigation path provided by the traditional navigation map with the high-precision map completed by the test to generate a high-precision navigation path.
[0153] Optionally, the matching module is specifically configured as follows:
[0154] If the length of the traditional navigation path is greater than the preset length, the traditional navigation path is split into a plurality of sections to be matched, and repeated sections between adjacent sections to be matched are stored;
[0155] Match each road section to be matched with the high-precision map after the test at the same time;
[0156] During the matching process, for each trajectory point on each road section to be matched, high-precision road sections matching each trajectory point are simultaneously observed, and the obtained high-precision road sections are topologically connected to obtain continuous high-precision road sections matching the road section to be matched;
[0157] According to the topological continuity relationship between the repeated road segments and each road segment to be matched, each continuous high-precision road segment matching each road segment to be matched is merged to obtain a high-precision navigation path matching the traditional navigation path.
[0158] The map loading device provided in the embodiment of the present invention can execute the map loading method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method. For technical details not described in detail in the above embodiment, please refer to the map loading method provided in any embodiment of the present invention.
[0159] Embodiment 4
[0160] Figure 4 A structural block diagram of an electronic device provided in Embodiment 4 of the present invention, such as Figure 4 As shown, the electronic device includes:
[0161] A memory 510 storing executable program codes;
[0162] a processor 520 coupled to the memory 510;
[0163] The processor 520 calls the executable program code stored in the memory 510 to execute the map loading method provided by any embodiment of the present invention.
[0164] Embodiment 5
[0165] Based on the above embodiments, another embodiment of the present invention provides a vehicle, wherein the vehicle includes the device as described in any of the above embodiments, or includes the electronic device as described above.
[0166] Figure 5 This is a schematic diagram of a vehicle provided in Embodiment 5 of the present invention. Figure 5 As shown, the vehicle includes a speed sensor 61, an ECU (Electronic Control Unit) 62, a GPS (Global Positioning System) positioning device 63, and a T-Box (Telematics Box) 64. The speed sensor 61 is used to measure the vehicle speed and use the vehicle speed as an empirical speed for model training; the GPS positioning device 63 is used to obtain the current geographic location of the vehicle; the T-Box 64 can communicate with the server as a gateway; and the ECU 62 can execute the above map loading method.
[0167] In addition, the vehicle may also include: a V2X (Vehicle-to-Everything) module 65, a radar 66 and a camera 67. The V2X module 65 is used to communicate with other vehicles, roadside equipment, etc.; the radar 66 or the camera 67 is used to sense the road environment information in the front and / or other directions to obtain original point cloud data; the radar 66 and / or the camera 67 can be configured at the front and / or rear of the vehicle body.
[0168] Based on the above method embodiments, another embodiment of the present invention provides a storage medium having executable instructions stored thereon, which, when executed by a processor, enables the processor to implement the map loading method as described in any of the above embodiments.
[0169] Those skilled in the art can understand that the accompanying drawings are only schematic diagrams of an embodiment, and the modules or processes in the accompanying drawings are not necessarily required to implement the present invention.
[0170] Those skilled in the art can understand that the modules in the device in the embodiment can be distributed in the device in the embodiment according to the description of the embodiment, or can be changed accordingly and located in one or more devices different from the embodiment. The modules in the above embodiment can be combined into one module, or can be further divided into multiple sub-modules.
[0171] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A map loading method, characterized in that: include: During the map test, when the original high-precision map is updated, the updated map area data is compiled to obtain an updated compilation result corresponding to the updated map area, wherein the original high-precision map is divided into a plurality of map areas at different locations for storage; Receiving a map test request, and parsing the map test request to obtain version information of the map to be loaded and location information of each track point of the traditional navigation path; Determining a map area corresponding to the location information of each track point from a map compilation result of the high-precision map corresponding to the version information, wherein the map compilation result of the high-precision map includes an original compilation result corresponding to an unupdated map area and an updated compilation result corresponding to an updated map area; If the obtained map area is a plurality of different map areas, the plurality of different map areas are simultaneously loaded into the memory, and the various map areas are merged in the memory to obtain a target high-precision map area corresponding to the position of the traditional navigation path.
2. The method according to claim 1, characterized in that The high-precision map is stored in the form of map tiles in different regions, and different tiles correspond to different numbering information and location information; Accordingly, the determining of the map area corresponding to the location information of each track point includes: For each track point in the traditional navigation path, based on the location information of each track point, the tile information corresponding to each location information is determined from the map compilation result of the high-precision map corresponding to the version information, wherein the location information includes longitude information and latitude information.
3. The method according to claim 2, characterized in that The determining of tile information corresponding to each piece of position information includes: For each current track point in the traditional navigation path, determine the current tile information to which the position information of the current track point belongs; In a plurality of set directions deviating from the current trajectory point, respectively inserting observation points at set positions away from the current trajectory point; Determine the tile information corresponding to the location information of each observation point; The tile information of each observation point and the current tile are used as the tile information corresponding to the current trajectory point.
4. The method according to claim 1, characterized in that: The step of compiling the updated map area data to obtain an updated compilation result corresponding to the updated map area includes: Filtering out key information from the updated map area data, the key information including the road centerline of each high-precision road section, the corresponding road speed limit information and the calculated road range of each high-precision road section; The key information is used as an updated compilation result corresponding to the updated map area.
5. The method according to claim 1, characterized in that After completing the map test, the method further includes: During the map initialization process, the map compilation results of the tested high-precision map are loaded into the memory; Upon receiving a navigation request, reading the high-precision map completed by the test from the memory; The traditional navigation path provided by the traditional navigation map is matched with the high-precision map completed by the test to generate a high-precision navigation path.
6. The method according to claim 5, characterized in that The matching of the traditional navigation path provided by the traditional navigation map with the high-precision map completed by the test includes: If the length of the traditional navigation path is greater than the preset length, the traditional navigation path is split into a plurality of sections to be matched, and repeated sections between adjacent sections to be matched are stored; Match each road section to be matched with the high-precision map after the test at the same time; During the matching process, for each trajectory point on each road segment to be matched, high-precision road segments matching each trajectory point are simultaneously observed, and the obtained high-precision road segments are topologically connected to obtain continuous high-precision road segments matching the road segment to be matched; According to the topological continuity relationship between the repeated road segments and each road segment to be matched, each continuous high-precision road segment matching each road segment to be matched is merged to obtain a high-precision navigation path matching the traditional navigation path.
7. A map loading device, characterized in that: include: A map compiling module is configured to compile the updated map area data during the map testing process when the original high-precision map is updated, and obtain an updated compilation result corresponding to the updated map area, wherein the original high-precision map is divided into a plurality of map areas at different locations for storage; A test request parsing module is configured to receive a map test request and parse the map test request to obtain version information of the map to be loaded and location information of each track point of the traditional navigation path; a map area determination module, configured to determine a map area corresponding to the location information of each track point from a map compilation result of the high-precision map corresponding to the version information, wherein the map compilation result of the high-precision map includes an original compilation result corresponding to the unupdated map area and an updated compilation result corresponding to the updated map area; The map loading module is configured to load the multiple different map areas into the memory at the same time if the obtained map area is multiple different map areas, and merge the various map areas in the memory to obtain the target high-precision map area corresponding to the position of the traditional navigation path.
8. The device according to claim 7, characterized in that The high-precision map is stored in the form of map tiles in different regions, and different tiles correspond to different numbering information and location information; Accordingly, the map area determination module includes: The tile information determination unit is configured to determine, for each track point in the traditional navigation path, the tile information to which each location information belongs from the map compilation result of the high-precision map corresponding to the version information according to the location information of each track point, wherein the location information includes longitude information and latitude information.
9. The device according to claim 8, characterized in that The tile information determination unit is specifically configured to: For each current track point in the traditional navigation path, determine the current tile information to which the position information of the current track point belongs; In a plurality of set directions deviating from the current trajectory point, respectively inserting observation points at set positions away from the current trajectory point; Determine the tile information corresponding to the location information of each observation point; The tile information of each observation point and the current tile are used as the tile information corresponding to the current trajectory point.
10. The device according to claim 7, characterized in that The map compilation module is specifically configured as follows: Filtering out key information from the updated map area data, the key information including the road centerline of each high-precision road section, the corresponding road speed limit information and the calculated road range of each high-precision road section; The key information is used as an updated compilation result corresponding to the updated map area.
11. The device according to claim 7, characterized in that The device also includes: The service startup module is configured to load the map compilation result of the high-precision map completed by the test into the memory during the map initialization process after the map test is completed; A map reading module, configured to read the high-precision map completed by the test from the memory when receiving a navigation request; The matching module is configured to match the traditional navigation path provided by the traditional navigation map with the high-precision map completed by the test to generate a high-precision navigation path.
12. The device according to claim 11, characterized in that The matching module is specifically configured as follows: If the length of the traditional navigation path is greater than the preset length, the traditional navigation path is split into a plurality of sections to be matched, and repeated sections between adjacent sections to be matched are stored; Match each road section to be matched with the high-precision map after the test at the same time; During the matching process, for each trajectory point on each road segment to be matched, high-precision road segments matching each trajectory point are simultaneously observed, and the obtained high-precision road segments are topologically connected to obtain continuous high-precision road segments matching the road segment to be matched; According to the topological continuity relationship between the repeated road segments and each road segment to be matched, each continuous high-precision road segment matching each road segment to be matched is merged to obtain a high-precision navigation path matching the traditional navigation path.
13. An electronic device, characterized in that: include: one or more processors; a storage device for storing one or more programs, When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1 to 6.
14. A storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 6 is implemented.
15. A vehicle, characterized in that: The vehicle comprises the device as claimed in any one of claims 7 to 14, or comprises the electronic device as claimed in claim 13.