Information processing device

The device accurately extracts map differences by dividing regions into branch and non-branch areas, simplifying graphs, and assigning lane numbers to enhance precision in map comparison.

JP7856076B2Active Publication Date: 2026-05-11TOYOTA JIDOSHA KK
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
TOYOTA JIDOSHA KK
Filing Date
2023-09-26
Publication Date
2026-05-11

AI Technical Summary

Technical Problem

Conventional methods for extracting differences between maps are inaccurate due to errors that can lead to incorrect associations of nodes and edges, especially when meshes include the same elements in different regions, preventing precise difference extraction.

Method used

An information processing device that divides maps into branch and non-branch regions, determines corresponding regions based on overlap, simplifies graphs by removing unnecessary nodes, and assigns lane numbers to find a graph editing path that minimizes editing cost, using a predetermined standard to output differences.

Benefits of technology

Enables accurate and efficient extraction of map differences by reducing problem complexity and retaining semantically important nodes, improving precision by considering lane numbers and road shapes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007856076000001
    Figure 0007856076000001
  • Figure 0007856076000002
    Figure 0007856076000002
  • Figure 0007856076000003
    Figure 0007856076000003
Patent Text Reader

Abstract

To extract a differential between a reference map and an input map more accurately than in the prior arts.SOLUTION: An information processing device extracts a differential between a reference map and an input map. The information processing device includes a control section for: dividing each of regions of the reference map and the input map into a branched region in which a branch of a road or a traffic lane is present and a non-branched region other than the branched region; determining a branched region and a non-branched region of the input map corresponding to a branched region and a non-branched region of the reference map based on an overlap degree of the branched region of the reference map and the branched region of the input map and an overlap degree of the non-branched region of the reference map and the non-branched region of the input map; calculating a graph editing path that minimizes editing cost determined by a predetermined reference regarding each of the corresponding regions; and outputting the graph editing path regarding a plurality of corresponding regions as the differential between the reference map and the input map.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to an information processing apparatus, and particularly to an information processing apparatus that extracts differences between two maps.

Background Art

[0002] As a method for extracting differences between two maps, it is disclosed that the map is divided into meshes and differences are extracted for each mesh. However, if there are errors in the map, the same node or edge may be included in different meshes, making it impossible to associate meshes or edges correctly or resulting in incorrect associations, which may prevent appropriate difference extraction.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Non-Patent Documents

[0004]

Non-Patent Document 1

[0005] One aspect of this disclosure aims to provide a technology that can extract the difference between a reference map and an input map with greater accuracy than conventional methods. [Means for solving the problem]

[0006] One aspect of the present disclosure is an information processing device for detecting the difference between a reference map and an input map, characterized by having a control unit that performs the following: acquiring a reference map and an input map, each containing a plurality of nodes and a plurality of edges; dividing the respective regions of the reference map and the input map into branch regions where roads or lanes branch and non-branch regions that are not branch regions; determining branch regions and non-branch regions of the input map that correspond to the branch regions and non-branch regions of the reference map based on the degree of overlap between the branch regions of the reference map and the branch regions of the input map, and the degree of overlap between the non-branch regions of the reference map and the non-branch regions of the input map; finding a graph editing path for each of the corresponding regions that minimizes the editing cost defined by a predetermined standard; and outputting the graph editing paths for a plurality of corresponding regions as the difference between the reference map and the input map. [Effects of the Invention]

[0007] According to the aspects of this disclosure, it is possible to extract the difference between the reference map and the input map with greater accuracy than before. [Brief explanation of the drawing]

[0008] [Figure 1] This figure shows a functional block diagram and a flowchart of the map difference extraction process for a map difference evaluation device (information processing device) according to one embodiment. [Figure 2] This figure illustrates the format of map data in one embodiment. [Figure 3] This figure illustrates the region division of a map and the correspondence between the divided regions in one embodiment. [Figure 4] This figure illustrates the simplification of the graph and the assignment of lane numbers in one embodiment. [Figure 5] This figure illustrates an example of graph editing costs in one embodiment. [Figure 6] This figure illustrates the difference extraction results in one embodiment. [Modes for carrying out the invention]

[0009] Embodiments of this disclosure will be described below with reference to the drawings. The configurations of the following embodiments are illustrative, and this disclosure is not limited to the configurations of these embodiments.

[0010] (System Configuration) Figure 1(A) shows the configuration of a map difference evaluation device 100 according to one embodiment. The map difference evaluation device 100 is an information processing device (computer) having a configuration in which a processor 110, memory 120, communication device 130, input device 140, and output device 150 are connected to each other via a bus so as to be able to communicate with each other.

[0011] The processor 110 is an arithmetic unit such as a CPU and operates according to a program stored in the memory 120. The processor 110 corresponds to the control unit in this disclosure. The memory 120 is the main memory, on which the executable program is loaded, and is also used as temporary memory by the processor 110. The communication device 130 is a device for communicating with other information processing devices by wired communication or wireless communication. The input device 140 is a keyboard or mouse and accepts input from the user. The output device 150 is a display device or audio playback device that outputs calculation results, etc., to the user.

[0012] The executable program loaded into memory 120 causes the processor 110 to function as a map acquisition unit 121, a region division unit 122, a correspondence determination unit 123, a difference extraction unit 124, and a result output unit 128 when executed by the processor 110. The difference extraction unit 124 includes a simplification unit 125, a lane number assignment unit 126, and a graph editing path determination unit 127 as sub-function units. Details of each function unit are described below with reference to the flowchart.

[0013] (process) Figure 1(B) is a flowchart showing the flow of the map difference evaluation process performed by the map difference evaluation device 100.

[0014] In step S10, the map acquisition unit 121 acquires a reference map and an input map. The reference map is the map used as the basis for difference evaluation, and the map difference evaluation device 100 evaluates how, or by how much, the input map differs from the reference map. For example, the reference map is a map generated at a certain time, and the input map is a map generated at a later time. In this case, the map difference evaluation device 100 is used, for example, to evaluate what kind of differences have occurred over time. In another example, the reference map is a high-precision map created using a costly but accurate method, and the input map is a map created using a low-cost automatic generation method. In this case, the map difference evaluation device 100 is used, for example, to evaluate the accuracy of the automatically generated map, and by extension, the accuracy of the automatic generation algorithm.

[0015] The format of the reference map and the input map are identical, and both include multiple nodes and multiple edges (links). In this embodiment, the map includes at least nodes and edges on a lane-by-lane basis. The map may also include nodes and edges on a road-by-road basis. Furthermore, the map The map may include information to identify the area where roads exist (road area). The road area may be distinguished into intersection area (branching area) and non-intersection area (non-branching area), and the map may include information to identify intersection area and non-intersection area.

[0016] FIG. 2 is a diagram for explaining an example of map data, and shows an example of a map representing an intersection where a two-lane road on one side intersects with a one-lane road on one side. In this example, the map data includes a road area 200, a road link 201, and a lane link 202. More specifically, the lane link 202 is composed of a plurality of lane nodes and edges (links) connecting the nodes. The interval between nodes is, for example, about several meters. From the lane link, the connection relationship between lanes can be grasped. For example, in the example of FIG. 2, it can be seen that left turns are possible in all directions, but right turns are possible from the two-lane road on one side to the one-lane road on one side, but the reverse is prohibited.

[0017] In step S12, the area division unit 122 divides each area of the reference map and the input map into a branch area where there is a branch of a road or a lane and a non-branch area other than the branch area. FIG. 3(A) is a diagram showing the result of this area division process, and shows that the road area 301 of the reference map or the input map is divided into a branch area 302 indicated by a solid line and a non-branch area 303 indicated by a broken line. Hereinafter, each area is also referred to as a divided area.

[0018] The division process by the area division unit 122 is performed, for example, according to this information when information (for example, a label) for specifying an intersection area (branch area) and a non-intersection area (non-branch area) is given to the map data. Alternatively, the division process by the area division unit 122 may be performed based on the position of a node (branch node) to which three or more edges are connected in the map data. Specifically, the area division unit 122 may extract the branch nodes, obtain the area where the branch nodes exist by clustering processing, and determine the obtained area as the branch area and the other road areas as the non-branch areas. The method of area division may be performed by a method other than the method shown here.

[0019] In step S14, the correspondence determination unit 123 determines the branched areas of the input map that correspond to the branched areas of the reference map, and the non-branched areas of the input map that correspond to the non-branched areas of the reference map. The correspondence determination unit 123 performs this correspondence based on the degree of overlap between the divided areas of the reference map and the branched areas of the input map, and the degree of overlap between the non-branched areas of the reference map and the non-branched areas of the input map. Here, the degree of overlap may be evaluated based on a relative criterion, for example, the ratio of the overlapping area to the size (area) of the branched areas of the reference map or the input map. Alternatively, the degree of overlap may be evaluated based on an absolute criterion, for example, the size (area) of the overlapping area. Furthermore, the degree of overlap may be evaluated as a combination of the ratio of the overlapping area and the size of the overlapping area.

[0020] Figure 3(B) shows the results of region division for the reference map and the input map. Thick solid lines represent branched regions of the reference map, thick dashed lines represent non-branched regions of the reference map, thin solid lines represent branched regions of the input map, and thin dashed lines represent non-branched regions of the input map. Through the correspondence determination process described above, for example, branched region 311 of the reference map is associated with branched region 312 of the input map, and non-branched region 313 of the reference map is associated with non-branched region 314 of the input map.

[0021] In Figure 3(B), the division regions of the reference map and the input map are depicted as having the same shape and being roughly one-to-one in correspondence. However, there may be cases where one division region in the reference map corresponds to multiple division regions in the input map, or vice versa. In such cases, the correspondence determination unit 123 can determine the correspondence relationship after integrating the multiple division regions into one.

[0022] The loop processing L1 in steps S16-S18 is based on the corresponding processes in step S14. This is performed on the pair of partitioned regions.

[0023] Step S16 is a preprocessing step for the difference extraction process and includes a graph simplification process by the simplification unit 125 and a lane number assignment process by the lane number assignment unit 126.

[0024] The simplification unit 125 simplifies the graph by deleting nodes within the region that are unnecessary for processing. Specifically, as shown in Figure 4(A), the simplification unit 125 deletes non-branching intermediate nodes and edits the nodes at both ends of the non-branching intermediate nodes to connect them with edges (links). A non-branching intermediate node is a node other than the entry and exit ends of a divided region (branching region or non-branching region), and is not a branching node. An entry end node is a node connected from a node in an adjacent divided region, and an exit end node is a node connected to a node in an adjacent divided region. In the example in Figure 4(A), node b between branching nodes a and c is a non-branching intermediate node, and the simplification process deletes node b and edits it so that nodes a and c are connected. As a result, the edges (a,b) and (b,c) are replaced with edge (a,c).

[0025] Furthermore, the simplification unit 125 may integrate a branch node connected to an entry or exit node with the entry or exit node. This process can also be understood as deleting a branch node and editing the edges that were connected to the branch node to connect to the entry or exit node. In the example in Figure 4(B), node e, which is a branch node, is connected to node d, which is an entry or exit node, so node e is deleted and the edges (e,f) and (e,g) that were connected to node e are replaced with edges (d,f) and (d,g).

[0026] These processes remove all nodes within the divided region, leaving only the entry and exit nodes. Figure 4(C) shows an example of graph simplification. Graph 401 shows the graph before simplification, and graph 402 shows the graph after simplification. Graph 401 does not show nodes, but in reality, nodes are densely present (every few meters). On the other hand, graph 402 shows nodes. Graph 402 has only entry and exit nodes, and only edges connecting the entry and exit nodes exist.

[0027] By simplifying the graph in this way, the problem size of optimizing the graph editing path can be reduced, and at the same time, the accuracy of difference extraction can be improved by retaining only the semantically important nodes.

[0028] The lane numbering unit 126 assigns lane numbers to the lanes included in each road in a predetermined order. The lane numbering process may be performed on the simplified graph or on the graph before simplification. Referring to Figure 4(D), the lane numbering process will be explained using the example of a situation where there are three entry lane nodes 411 to 413 on road 410. The lane numbering unit 126 determines the coordinates of each node 411 to 413 using a local coordinate system where the lane direction is the X axis and the lane width direction is the Y axis, and assigns lane numbers in descending order of Y-axis position. For example, the coordinates of node 411 are (1.1, 8.0), the coordinates of node 412 are (1.0, 5.0), and the coordinates of node 413 are (1.1, 2.0). Therefore, lane number 0 is assigned to node 411, lane number 1 to node 412, and lane number 2 to node 413. It is not mandatory to assign lane numbers in descending order of Y-axis position; lane numbers may be assigned in ascending order of Y-axis position, or in any other order determined by any deterministic procedure. The lane number assignment unit 126 may assign lane numbers to lane nodes at both the entry and exit ends, or it may assign lane numbers to only one of the nodes at either the entry or exit end.

[0029] In step S18, the graph editing path determination unit 127 performs simplification processing and lane number The goal is to find the graph editing path that minimizes editing cost for the reference map and input map after the assignment process has been completed. A graph editing path is a sequence of editing operations to match the first graph to the second graph, and these editing operations include adding, deleting, and replacing nodes, and adding, deleting, and replacing edges (links). Any existing algorithm (e.g., Non-Patent Document 1) can be used to find the graph editing path that minimizes editing cost.

[0030] The editing cost for each graph editing operation can be determined according to predetermined criteria.

[0031] In this embodiment, the cost of node substitution is generally set to be smaller the closer the two nodes are, and larger the further apart they are. However, when determining the distance between two nodes, the influence of the distance in the lane width direction is weighted more heavily than the distance in the lane direction. Figures 5(A) and 5(B) illustrate the cost of node substitution based on location. Figure 5(A) shows nodes N1 and N2 on the reference map and nodes M1 to M4 on the input map. Figure 5(A) is shown in a global coordinate system, where the vertical direction corresponds to the latitude direction and the horizontal direction corresponds to the longitude direction, and the distance (length) on the drawing corresponds to the actual distance (length). In this example, it is appropriate to associate node N1 on the reference map with node M1 on the input map. However, if the evaluation is simply based on the distance between nodes, if the distance D1 between nodes N1 and M1 is greater than the distance D2 between nodes N1 and M3, node N1 will be associated with node M3. Therefore, in this embodiment, the cost is evaluated in such a way that the influence of the distance in the lane width direction is increased. First, a local coordinate system is introduced where the lane direction at node N1 is the X-axis and the direction perpendicular to the lane direction is the Y-axis. Here, the lane direction at node N1 may be, for example, the direction of the edge connecting from a divided region adjacent to node N1, or the direction of the edge within the same divided region connected to node N1. Then, the scale in the X-axis direction is compressed, while the scale in the Y-axis direction is maintained. The compression ratio can be, for example, 0.5, but any value greater than 0 and less than 1 is acceptable. Figure 5(B) shows the graph after the coordinate transformation and compression in the X-axis direction. The distance between nodes after this transformation is evaluated as the node substitution cost. In the example in Figure 5(B), since distance D3 is smaller than distance D4, the node in the input map that corresponds to node N1 in the reference map is appropriately determined to be node M1. In map evaluation, the positional displacement in the width direction of the road has a greater impact than the positional displacement in the direction of road travel. In other words, a difference associated with a node with less positional displacement in the width direction can be considered a better difference. The above explanation is intended to illustrate the concept of node replacement cost; the actual processing should follow the above principles, but it does not need to be carried out in the exact same way as described above.

[0032] Furthermore, in this embodiment, the cost of node substitution (replacement) may be determined depending on whether the lane numbers assigned to the nodes are the same or different. For example, the editing cost of substituting a node with a node with a different lane number is greater than the editing cost of substituting that node with a node with the same lane number. In other words, the editing cost of associating nodes with different lane numbers is greater than the editing cost of associating nodes with the same lane number. By using such a cost criterion, the difference resulting from associating semantically identical lanes can be made into a better difference.

[0033] The cost of node replacement can be the sum of the cost based on location and the cost based on the identity of the lane number.

[0034] The costs for adding and removing nodes can be set as appropriate.

[0035] Furthermore, the costs of adding, deleting, and replacing edges can be set in the same way as for adding, deleting, and replacing nodes. For example, the cost of edge replacement could be the sum of the costs of replacing the nodes at both ends of the edge.

[0036] Figures 6(A) to 6(C) illustrate the calculation results of the graph editing path. Figure 6(A) shows a simplified graph of the reference map, Figure 6(B) shows a simplified graph of the input map, and Figure 6(C) shows the graph editing path that minimizes the editing cost for these two maps (graphs). In node editing operations, replacing node 1 with node a is expressed as "1→a", deleting node 1 is expressed as "1→ε", and adding node a is expressed as "ε→a". Similarly, replacing edge (1,2) with edge (a,b) is expressed as "(1,2)→(a,b)", deleting edge (1,2) is expressed as "(1,2)→ε", and adding edge (a,b) is expressed as "ε→(a,b)". In the examples in Figures 6(A) to 6(C), node 6 is deleted, nodes 1 to 5 are replaced by nodes a to e respectively, edges (4,6) and (2,6) are deleted, and edge (b,c) is added.

[0037] As described above, the difference extraction unit 124 finds the graph editing path that minimizes the editing cost for one pair of corresponding divided regions. Then, in the loop process L1, it similarly finds the graph editing path for each of the corresponding pairs of divided regions.

[0038] In step S20, the result output unit 128 outputs the result of the difference evaluation to the output device 150. An example of the evaluation result is the difference or degree of difference (or distance) between the reference map and the input map. The difference between the reference map and the input map is obtained as the union of graph editing paths for each divided region pair. The difference between the reference map and the input map is obtained as the sum of graph editing costs for each divided region pair. The result output unit 128 may output both the difference and the degree of difference, or it may output only one of them.

[0039] (Advantageous effects of this embodiment) According to this embodiment, the complex task of evaluating the difference between two maps is divided into a simpler task of evaluating the difference for each divided region, enabling fast and highly accurate difference evaluation. Here, when dividing the region, static division may result in a node being included in a different region due to positional errors, but in this embodiment, dynamic division that takes into account branched and non-branched regions is performed, thus avoiding such problems. In other words, in this embodiment, by performing dynamic region division that takes into account the macroscopic topology of roads, it becomes possible to divide and map regions such that the nodes of the corresponding reference map and input map are included in the corresponding regions.

[0040] Furthermore, in extracting differences from maps (graphs), simplifying the graph removes elements that have little impact on accuracy, enabling efficient difference extraction. Simplifying the problem allows for the adoption of a computationally intensive but more accurate difference extraction algorithm, thereby improving the accuracy of difference extraction. In addition, in evaluating editing costs, by assigning a higher cost to positional deviations in the lane width direction than to deviations in the direction of travel, an appropriate difference evaluation that takes into account the actual road shape can be performed. Moreover, by considering lane numbers and setting a lower cost for substitutions with the same lane number, an appropriate difference evaluation that takes into account the actual road shape can also be performed.

[0041] As described above, this embodiment enables high-speed and high-precision differential evaluation by reducing the amount of information and thus the problem size, while retaining context such as lane number and lane direction and performing differential evaluation using this context.

[0042] (Other embodiments) The embodiments described above are merely examples, and this disclosure may be modified as appropriate without departing from its essence.

[0043] The present disclosure can also be realized by supplying a computer program implementing the functions described in the embodiments above to a computer, and having one or more processors in the computer read and execute the program. Such a computer program may be provided to the computer by a non-temporary computer-readable storage medium that can be connected to the computer's system bus, or it may be provided to the computer via a network. Non-temporary computer-readable storage mediums include, for example, any type of disk such as magnetic disks (floppy disks, hard disk drives (HDDs), etc.), optical disks (CD-ROMs, DVDs, Blu-ray discs, etc.), read-only memory (ROM), random access memory (RAM), EPROM, EEPROM, magnetic cards, flash memory, optical cards, and any type of medium suitable for storing electronic instructions. [Explanation of Symbols]

[0044] 100: Map difference evaluation device (information processing device), 110: Processor, 120: Memory 130: Communication device, 140: Input device, 150: Output device 121: Map acquisition unit, 122: Area division unit, 123: Correspondence determination unit, 124: Difference extraction unit 125: Simplified section, 126: Lane number assignment section, 127: Graph editing path determination section 128: Result Output Section

Claims

1. An information processing device for detecting the difference between a reference map and an input map, Obtain a reference map and an input map, each containing multiple nodes and multiple edges, The respective areas of the aforementioned reference map and the aforementioned input map are divided into branching areas where roads or lanes branch off and non-branching areas that are not part of the aforementioned branching areas. Based on the degree of overlap between the branching region of the reference map and the branching region of the input map, and the degree of overlap between the non-branching region of the reference map and the non-branching region of the input map, the branching region and non-branching region of the input map corresponding to the branching region and non-branching region of the reference map are determined. For each corresponding area, a graph editing path, which is a series of editing operations to match one of the graphs of the reference map and the input map to the other, is determined such that the editing cost is minimized according to a predetermined standard. Outputting the graph editing paths for multiple corresponding regions as the difference between the reference map and the input map, It has a control unit that performs the following: The aforementioned editing operations include adding, deleting, and replacing nodes, and adding, deleting, and replacing edges. An information processing device characterized by the following:

2. The control unit outputs the sum of the editing costs for the plurality of corresponding regions as the distance or difference between the reference map and the input map. The information processing apparatus according to feature 1.

3. The control unit divides the respective regions of the reference map and the input map into the branch region and the non-branch region based on the locations of branch nodes included in the reference map and the input map, or based on information that identifies the branch region assigned to the reference map and the input map. The information processing apparatus according to feature 1.

4. The control unit deletes non-branch intermediate nodes that are not branch nodes, other than the entry and exit ends of the branch region or the non-branch region, and both ends of the non-branch intermediate nodes. After editing the nodes to connect them with edges, the graph editing path is determined. The information processing apparatus according to feature 1.

5. The control unit assigns lane numbers to the lanes included in each road in a predetermined order. The editing cost of associating nodes with different lane numbers is greater than the editing cost of associating nodes with the same lane number. The information processing apparatus according to feature 1.

6. The further away the corresponding node is, the greater the editing cost, and the editing cost is greater for positional deviations in a direction perpendicular to the direction of travel than for positional deviations with respect to the direction of travel of the road corresponding to the node. The information processing apparatus according to feature 1.