Virtual elevation generation method, device and equipment of road and medium

By identifying and fusing reference road groups for abnormal road segments in a 3D map, the problem of abnormal slopes was solved, and the accuracy of the 3D map was improved.

CN115272602BActive Publication Date: 2026-06-26TENCENT TECHNOLOGY (SHENZHEN) CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
TENCENT TECHNOLOGY (SHENZHEN) CO LTD
Filing Date
2022-08-24
Publication Date
2026-06-26

AI Technical Summary

Technical Problem

In existing technologies, roads are prone to exhibiting abnormal slopes in 3D map displays, which affects the accuracy of the 3D maps.

Method used

By identifying reference road groups for abnormal road segments and merging them with adjacent reference road groups, virtual elevations are calculated using the same baseline elevation, thus eliminating slope anomalies.

Benefits of technology

This improved the accuracy of the 3D map and ensured that road sections met the slope requirements of road construction specifications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115272602B_ABST
    Figure CN115272602B_ABST
Patent Text Reader

Abstract

The application relates to the technical field of maps, in particular to a virtual elevation generation method and device for a road, equipment and a medium. When the slope of an ungrouped road is abnormal, the abnormal road section and a connected reference road are fused into a fused road group, so that the same reference elevation can be used when calculating the virtual elevation of each road section in the fused road group, thereby effectively eliminating the slope abnormality of the abnormal road section before fusion due to the difference in the reference elevation of the reference road group.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure generally relates to the field of map technology, and specifically to a method, apparatus, device, and medium for generating virtual elevations of roads. Background Technology

[0002] When electronic maps are displayed in a three-dimensional manner, they will show elements such as buildings and roads, such as... Figure 1 As shown. To display roads, it's necessary to obtain the road's height relative to the ground, i.e., the virtual elevation.

[0003] In related technologies, roads can be grouped, and virtual elevation calculations can be performed on a group-by-group basis. Furthermore, 3D maps can be rendered based on these virtual elevations. However, roads with abnormal slopes often appear between different road groups, such as... Figure 2 The steep drop in road elevation shown in the image affects the accuracy of the 3D map. Summary of the Invention

[0004] In view of the above-mentioned defects or deficiencies in the prior art, it is desirable to provide a method, apparatus, device and medium for generating virtual elevation of roads, which can effectively eliminate road sections with abnormal slopes and improve the accuracy of three-dimensional maps.

[0005] In a first aspect, embodiments of this application provide a method for generating virtual elevations of roads, including:

[0006] Determine a reference road group for abnormal road segments; the abnormal road segment is a road segment with an abnormal slope among the ungrouped road segments after grouping road segments within the target area based on preset rules; the reference road group is a road group that has a connection relationship with the abnormal road segment among the road groups obtained by grouping road segments within the target area based on the preset rules.

[0007] The abnormal road segment and the reference road group are fused together to obtain a fused road group;

[0008] The virtual elevation of the abnormal road segment is determined based on the baseline elevation of the fused road group.

[0009] In some embodiments, the preset rule includes: dividing road segments that have overlapping relationships into the same road group.

[0010] In some embodiments, grouping road segments within the target area based on preset rules includes:

[0011] Determine the centerline of each road segment within the target area on a plan view;

[0012] Based on the intersection relationship between the centerlines of each road segment, road segments with overlapping relationships are identified, and these road segments with overlapping relationships are assigned to the same road group.

[0013] In some embodiments, the reference road group for determining abnormal road segments includes:

[0014] For each road group within the target area, traverse the road segments in the road group to obtain at least one adjacent road segment connected to the abnormal road segment;

[0015] The reference road group is determined based on the at least one adjacent road segment.

[0016] In some embodiments, determining the reference road group based on the at least one adjacent road segment includes:

[0017] The road group to which the adjacent road segments belong is used as the reference road group;

[0018] Traverse the secondary reference road segments of each reference road segment in the reference road group, and take the road group to which the secondary reference road segment belongs as the new reference road group; the secondary reference road segment is a road segment that is connected to the reference road segment but does not belong to the same road group;

[0019] Return to the process of traversing the secondary reference road segments of each reference road segment in the reference road group until no secondary reference road segment exists.

[0020] In some embodiments, the reference road group for determining abnormal road segments includes:

[0021] Create a target road group based on the abnormal road segment;

[0022] Traverse all road groups within the target area and determine the road groups that are connected to the target road group as the reference road groups.

[0023] In some embodiments, traversing all road groups within the target area and determining the road groups among all road groups that have a connection relationship with the target road group as the reference road group includes:

[0024] Traverse all road groups to identify pairs of road segments that are connected but do not belong to the same road group;

[0025] The two road groups to which the road segment belongs are identified as road group pairs with a connection relationship;

[0026] Based on the connection relationship of each road group pair, the road group that has a connection relationship with the target road group is determined as the reference road group.

[0027] In some embodiments, determining a road group connected to the target road group as a reference road group based on the connection relationship of the road group pairs includes:

[0028] Establish a traversal queue and add the target road group to the traversal queue;

[0029] The road pairs are initially traversed. Based on the connection relationship of the road pairs, a first reference road group connected to the target road group is determined. The first reference road group is added to the traversal queue, and the target road group is deleted from the traversal queue.

[0030] The first reference road group in the traversal queue is traversed in a loop. Based on the connection relationship of the road group pairs, the second reference road group connected to the first reference road group in the traversal queue is determined. The first reference road group in the traversal queue is deleted, and the second reference road group is added to the traversal queue as the first reference road group.

[0031] Return to the previous step and iterate through the first reference road group in the traversal queue until the second road group no longer exists.

[0032] In some embodiments, traversing the connection relationships of each road segment in the road group to obtain connected road segment pairs that do not belong to the same road group includes:

[0033] For any one of the road segments, obtain at least one connecting road segment connected to the road segment;

[0034] For each road segment, if the road segment and the connecting road segment do not belong to the same road group, then the road segment and the connecting road segment are determined to be connected road segments that do not belong to the same road group.

[0035] In some embodiments, the fusion process of the abnormal road segment and the reference road group to obtain a fused road group includes:

[0036] Create a merged road group based on the abnormal road segments;

[0037] Add the reference road group in the traversal queue to the merged road group.

[0038] In some embodiments, the fusion process of the abnormal road segment and the reference road group to obtain a fused road group includes:

[0039] An initial road group is created based on the abnormal road segment;

[0040] All road segments in the reference road group are added to the initial road group to obtain the merged road group.

[0041] In some embodiments, determining the virtual elevation of the abnormal road segment based on the reference elevation of the fused road group includes:

[0042] Identify at least two road points corresponding to each road segment;

[0043] For each road point, the elevation of the road point is obtained, and the difference between the elevation of the road point and the reference elevation is used as the virtual elevation of the road point.

[0044] The virtual elevation of each road segment is determined based on the virtual elevation of at least two road points corresponding to each road segment.

[0045] In some embodiments, roads in the target area are constituted based on each road segment in the target area described above;

[0046] Based on the virtual elevations corresponding to each road segment in the road, a target map corresponding to the target area is constructed.

[0047] The target map is displayed in a spatial dimension, and during the display process, road segments with different virtual elevations are presented in a relative relationship that matches the different virtual elevations. The relative relationship includes the vertical relationship between the roads.

[0048] Secondly, embodiments of this application provide a virtual elevation generation device for roads, comprising:

[0049] The determination module is used to determine a reference road group for abnormal road segments; the abnormal road segment is a road segment with an abnormal slope among the ungrouped road segments after the road segments in the target area are grouped based on preset rules; the reference road group is a road group that has a connection relationship with the abnormal road segment among the road groups obtained by grouping the road segments in the target area based on the preset rules.

[0050] The fusion module is used to fuse the abnormal road segment and the reference road group to obtain a fused road group;

[0051] The calculation module is used to determine the virtual elevation of the abnormal road segment based on the baseline elevation of the fused road.

[0052] Thirdly, embodiments of this application provide an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the program to implement the method described in embodiments of this application.

[0053] Fourthly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the method described in embodiments of this application.

[0054] Fifthly, embodiments of this application provide a computer program product, including a computer program, characterized in that, when the computer program is executed by a processor, it implements the method described in embodiments of this application.

[0055] The virtual elevation generation method, apparatus, device, and medium for roads proposed in this application can effectively eliminate slope anomalies caused by differences in the reference elevation of the reference road group when there are slope anomalies in ungrouped roads. This is achieved by merging abnormal road segments with connected reference roads into a merged road group, so that the same reference elevation can be used when calculating the virtual elevation of each road segment in the merged road group. Based on the reference elevation of the merged road group, 3D rendering can effectively improve the accuracy of the 3D map, making the road segments in the rendered 3D map more consistent with the slope of road construction specifications.

[0056] Additional aspects and advantages of the invention will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of the invention. Attached Figure Description

[0057] Other features, objects, and advantages of this application will become more apparent from the following detailed description of non-limiting embodiments with reference to the accompanying drawings:

[0058] Figure 1 A three-dimensional map is shown;

[0059] Figure 2 This demonstrates the phenomenon of steep road drops in a 3D map display;

[0060] Figure 3 The diagram illustrates the implementation environment architecture of the virtual elevation generation method for roads provided in this application embodiment;

[0061] Figure 4 A flowchart illustrating a method for generating virtual road elevation according to an embodiment of this application is shown.

[0062] Figure 5 A schematic diagram illustrating the principle of road division provided in an embodiment of this application is shown;

[0063] Figure 6 A schematic diagram illustrating the principle of road grouping provided in an embodiment of this application is shown;

[0064] Figure 7 This application shows the application to Figure 4A schematic diagram illustrating the principle of obtaining a fused road group through fusion;

[0065] Figure 8 A schematic diagram of a reference road group provided in an embodiment of this application is shown;

[0066] Figure 9 This invention provides a schematic diagram of the principle of a continuous reference road group according to an embodiment of the present application.

[0067] Figure 10 This application shows the application to Figure 4 A schematic diagram illustrating the principle of establishing a target road group;

[0068] Figure 11 This illustration shows a schematic diagram of the principle of establishing a road group for multiple abnormal road segments according to an embodiment of this application;

[0069] Figure 12 This illustration shows an original schematic diagram of the road group connection relationship provided in an embodiment of this application;

[0070] Figure 13 This illustration shows a flowchart of determining road segment pairs according to an embodiment of this application;

[0071] Figure 14 This illustration shows a flowchart of a process for clustering adjacent road groups of any road group according to an embodiment of this application;

[0072] Figure 15 A schematic diagram of the process for determining a reference road group according to an embodiment of this application is shown;

[0073] Figure 16 A flowchart illustrating an embodiment of the iterative process provided in this application is shown;

[0074] Figure 17 An exemplary structural block diagram of a virtual elevation generation device for roads provided in an embodiment of this application is shown;

[0075] Figure 18 An exemplary structural block diagram of a virtual elevation generation apparatus for roads provided in another embodiment of this application is shown;

[0076] Figure 19 A schematic diagram of the structure of a computer system suitable for implementing an electronic device or server according to embodiments of this application is shown. Detailed Implementation

[0077] The present application will now be described in further detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and not intended to limit it. Furthermore, it should be noted that, for ease of description, only the parts relevant to the invention are shown in the accompanying drawings.

[0078] First, a brief explanation of the terms used in the embodiments of this application will be provided:

[0079] Absolute elevation refers to the distance from a point on a road along the vertical direction to the absolute datum. For example, in the field of 3D mapping, the absolute datum can be the sea level, and the absolute elevation of a point on a road can be the height of that point along the vertical direction from the sea level.

[0080] Virtual elevation refers to the height of a road relative to the ground in a three-dimensional representation of a planar map.

[0081] A road segment refers to the division of roads on a flat map; each road segment is called a road segment.

[0082] The centerline of a road is the axis of symmetry along the direction of a road segment.

[0083] Road points refer to a series of points on the road centerline after a road segment is represented by the road centerline. The number of these points can be set in advance.

[0084] Connectivity refers to the relationship between different road segments. For example, for a road segment with a preceding or succeeding road segment, the relationship between that road segment and the preceding or succeeding road segment is a connectivity relationship. Connectivity relationships can also include diverging and merging relationships.

[0085] Overlapping relationship refers to the relationship between two road segments that do not belong to the same road plane and are spatially separated. For example, if one road segment is above another road segment, the two road segments are said to have an overlapping relationship, with the road segment above overlapping the road segment below.

[0086] Traffic splitting relationship refers to a relationship between two road segments that share the same preceding road segment.

[0087] An intersection relationship refers to a situation where two road segments share the same subsequent road segment, thus establishing an intersection relationship between them.

[0088] The reference elevation refers to the height of a road segment relative to the ground, determined based on its road characteristics. For example, the reference elevation of a regular road is usually 0 meters, while that of an overpass is usually 3.5 meters.

[0089] It should be noted that, unless otherwise specified, the embodiments and features described in this application can be combined with each other. This application will now be described in detail with reference to the accompanying drawings and embodiments.

[0090] For the specific implementation environment of the virtual elevation generation method for roads proposed in this application, please refer to [link / reference needed]. Figure 1 . Figure 1The diagram illustrates the implementation environment architecture of the virtual elevation generation method for roads provided in this application embodiment.

[0091] like Figure 3 As shown, the implementation environment architecture includes a terminal device 101 and a server 102. The terminal device 101 and the server 102 can be used individually to execute the virtual elevation generation method for roads in this embodiment, or they can be used collaboratively to execute the virtual elevation generation method for roads in this embodiment. Collaborative execution is taken as an example.

[0092] Server 102 is used to calculate various virtual road data based on the collected road data. This virtual road data is used to achieve the rendering effect of the roads in a 3D map. For example, it can calculate the virtual elevation data of each road. Terminal device 101 is used to obtain the virtual road data from server 102 and perform rendering based on the virtual road data to display 3D map information to the user.

[0093] Terminal device 101 may be a desktop computer, laptop computer, smartphone, tablet computer, e-book reader, smart glasses, smartwatch, vehicle terminal, aircraft, etc., but is not limited to these.

[0094] Server 102 can be a standalone physical server, a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms.

[0095] Terminal device 101 and server 102 are connected directly or indirectly via wired or wireless communication. Optionally, the aforementioned wireless or wired network uses standard communication technologies and / or protocols. The network is typically the Internet, but can also be any network, including but not limited to any combination of Local Area Network (LAN), Metropolitan Area Network (MAN), Wide Area Network (WAN), mobile, wired or wireless network, private network, or virtual private network.

[0096] The method for generating virtual road elevation proposed in this application can be implemented by a terminal interface recognition device, which can be installed on a terminal device or a server.

[0097] To further illustrate the technical solutions provided in the embodiments of this application, a detailed description is provided below in conjunction with the accompanying drawings and specific implementation methods. Although the embodiments of this application provide method operation instruction steps as shown in the following embodiments or drawings, the method may include more or fewer operation instruction steps based on conventional or non-creative effort. In steps where there is no logically necessary causal relationship, the execution order of these steps is not limited to the execution order provided in the embodiments of this application. In actual processing or when the device executes the method, it may be executed sequentially or in parallel according to the method shown in the embodiments or drawings.

[0098] Please refer to Figure 4 , Figure 4 A flowchart illustrating a method for generating virtual road elevation according to an embodiment of this application is shown. Figure 4 As shown, the method includes:

[0099] Step 201: Determine the reference road group for abnormal road segments. Abnormal road segments are road segments with abnormal slopes among the ungrouped road segments after grouping road segments in the target area based on preset rules. Reference road groups are road groups that are connected to abnormal road segments among the road groups obtained by grouping road segments in the target area based on preset rules.

[0100] It should be noted that, since roads are typically long, dividing roads into segments facilitates processing and storage, while also effectively reducing processing granularity and improving data processing accuracy. This application is based on data processing of road segments after road segmentation. For example, such as... Figure 5 As shown, real-world roads are divided into many segments, forming multiple road segments, such as A through G in the diagram. A branches into three roads: B, C, and D. The successor road to B is E, to C is F, and to D is G. It should be understood that in practical applications, road segments can be divided manually or based on the length range of the road segments.

[0101] Furthermore, after dividing the road into road segments, in order to avoid the computational pressure caused by processing a large number of road segments at the same time, the road segments are usually divided into road groups. By processing the data of multiple road segments within a road group, the purpose of processing the road segments can be achieved. At the same time, multiple road groups can also be processed in parallel to improve the overall computational efficiency.

[0102] It should also be noted that an abnormal slope is defined as a road segment whose slope is greater than or equal to a preset slope threshold. The preset slope threshold can be a slope that conforms to road construction specifications, such as 3°.

[0103] Specifically, after dividing the roads within the target area into road segments and grouping these segments according to preset rules to obtain multiple road groups, the baseline elevation corresponding to each road group is determined. Then, the virtual elevation of each road segment within a road group is calculated using the baseline elevation. At this point, road segments may not be grouped due to not meeting the grouping conditions corresponding to the preset rules. The two vertices of such road segments belong to two different road groups, and the virtual elevations of each road segment in both road groups have already been calculated; that is, the virtual elevations of the two vertices of the road segment have been obtained through the road group calculation. Based on the virtual elevations of the two vertices and the length of the road, the slope of the road segment can be determined. Then, it is determined whether the slope of the road is greater than or equal to a preset slope threshold. If it is, the road segment is determined to be an abnormal road segment; otherwise, it is determined to be a normal road segment.

[0104] When an ungrouped road segment is identified as an abnormal road segment, it can be determined that the two vertices of the abnormal road segment have different virtual elevations due to the different road groups. That is, the difference in the virtual elevations calculated is large because the reference elevations selected by the two road groups are different. Therefore, the two road groups directly connected to the abnormal road segment can be used as reference road groups for the abnormal road segment to facilitate the recalculation of the virtual elevation for the abnormal road segment.

[0105] In one or more embodiments, since road connections are often complex, a road group may affect two abnormal road segments at the same time. In this case, other road groups related to the reference road group can also be used as reference road groups for abnormal road segments. That is, road groups that are indirectly connected to abnormal road segments through the reference road group are also used as reference road groups. This effectively reduces the amount of computation and avoids problems such as a road group repeatedly calculating virtual elevation due to different connected abnormal road segments, or the virtual elevation calculated later affecting the abnormal road segments calculated earlier.

[0106] Step 202: Merge the abnormal road segments and the reference road group to obtain a merged road group.

[0107] In this embodiment, the fusion operation is achieved by using abnormal road segments and road segments from the reference road group as elements of the fused road group. In other words, the fused road group includes abnormal road segments and road segments from the reference road group. For example, a set corresponding to the fused road group can be constructed, and then the abnormal road segments can be added to the set to become elements of the fused road group. Simultaneously, each road segment from the reference road group can also be added to the set corresponding to the fused road group to become an element of the fused road group. Alternatively, a fused road group identifier can be generated, a mapping relationship between the fused road group identifier and the abnormal road segments can be constructed, and a mapping relationship between the fused road group identifier and each road segment in the reference road group can be constructed. Alternatively, the identifier of the reference road group can be replaced with the fused road group identifier, so that road segments are added to the fused road group by setting a mapping relationship with the road group identifier.

[0108] Step 203: Determine the virtual elevation of the abnormal road segment based on the baseline elevation of the fused road group.

[0109] As explained above, a road segment can be represented by a series of road points, where road points are points on the road surface, preferably points on the centerline of the road segment. Therefore, in this step, the virtual elevation of a road segment can be obtained by calculating the virtual elevation of the road points within the road segment of the road group. Specifically, this includes: obtaining the baseline elevation within the road group, i.e., the virtual elevation of the "ground" within the road group, where the elevation of the road segment with the lowest elevation within the road group can be used as the baseline elevation for that road group. Then, the difference between the elevation of the road point and the baseline elevation is used as the virtual elevation of that road point. Through the above calculations, the virtual elevation of each road point in each road segment within the road group can be obtained, and further, the virtual elevation of each road segment in the road group can be calculated.

[0110] Of course, in actual implementation, other methods can be used to calculate the virtual elevation of road segments within a road group. For example, the following process can be used: First, calculate the virtual elevation of the road point with the highest elevation (such as the starting point) within the road group through the above process. Then, based on the preset slope, the virtual elevation of the starting point, and the length of the connecting edge (or road length) between the road point after the starting point and the road point in the road segment within the road group, calculate the virtual elevation of the remaining road points in each road segment within the road group in sequence.

[0111] In this context, the road length between two road points refers to the straight-line distance between them on the road surface. The connecting edge length between two road points refers to the projected distance between them on a flat map. The reason for the difference is that flat maps cannot represent slopes; when slopes exist, the connecting edge length, which represents the projected distance, will naturally differ from the road length, which represents the slope distance.

[0112] Therefore, the virtual elevation generation method for roads proposed in this application can effectively eliminate the slope anomalies caused by the difference in the reference elevation of the reference road group when the slope of the ungrouped roads is abnormal. This is achieved by merging the abnormal road segments with the connected reference roads into a merged road group, so that the same reference elevation can be used when calculating the virtual elevation of each road segment in the merged road group.

[0113] In another embodiment of this application, three-dimensional rendering is further performed based on the reference elevation of the fused road group. Exemplarily, this includes: constructing roads in the target area based on each road segment in the target area; building a target map corresponding to the target area based on the virtual elevations corresponding to each road segment; displaying the target map in a spatial dimension, wherein road segments with different virtual elevations are presented with relative relationships matching the different virtual elevations, including the vertical relationship between the roads.

[0114] In other words, this application uses the baseline elevation of the fused road group for 3D rendering, which can effectively improve the accuracy of the 3D map and make the road segments in the rendered 3D map more in line with the slope of the road construction specifications.

[0115] In another embodiment of this application, road groups can be formed based on the overlap relationship between road segments, and abnormal road segments can be processed based on the grouping. For example, the preset rules mentioned above include: dividing road segments with overlap relationships into the same road group.

[0116] In other words, in this embodiment, road segments are grouped according to whether there is an overlap relationship between them. That is, multiple road segments within a reference road group have an overlap relationship, while ungrouped road segments do not have an overlap relationship with multiple road segments within the reference road group. For example, grouping road segments within a target area based on preset rules includes: determining the road centerlines of each road segment within the target area on a planar map; determining the road segments with overlap relationships based on the intersection relationships between the road centerlines of each road segment; and assigning the road segments with overlap relationships to the same road group.

[0117] Specifically, for any road segment in the target area, the road centerline of the road segment on the plan map is determined. The road segments whose road centerlines intersect with the road centerlines of the corresponding road segments are considered as road segments that have an overlapping relationship with the road segment. Then, road segments that have a direct or indirect overlapping relationship with the road segment are grouped into road groups.

[0118] For example, such as Figure 6As shown in the diagram, the straight lines represent the centerlines of the corresponding road segments, and the dots represent the two vertices of the road segments. Two road segments sharing a single dot are connected; that is, one road precedes the other, and the other is a successor to one of them. Figure 6 In this context, for road link1, the centerlines of roads link2 and link3 intersect with its own centerline. Road link4 only shares point A with road link1, but they do not intersect. Therefore, road link1, road link2, and road link3 form overlapping group 1. Road link4 does not overlap with any road segment in overlapping group 1, and therefore does not belong to overlapping group 1. Similarly, road link4 does not belong to overlapping group 2. Specifically, in overlapping group 2, road link5 and road link6 have a direct overlapping relationship, road link7 has a direct overlapping relationship with road link6, and an indirect overlapping relationship with road link5; that is, road link7 overlaps road link5 through road link6. Following the same principle, road link8 has a direct overlap relationship with road link7, road link8 has an indirect overlap relationship with road link6 through road link7, and has an indirect overlap relationship with road link5 through link7 and road link6. Road link6, road link7, and road link8, based on their direct or indirect overlap relationships with road link5, form overlap group 2 with road link5. Road link4 is an ungrouped road segment, connected to road link1 in overlap group 1 at point A, and connected to road link5 in overlap group 2 at point B.

[0119] Therefore, this application groups road segments by overlapping relationships, so that when calculating virtual elevation, each road segment in the road group can maintain the elevation difference between each other, thereby ensuring that multiple road segments with the same projection point on the ground in the rendered 3D map have different elevations.

[0120] In another embodiment of this application, road segments that meet the connection conditions can be found by traversal, and then a reference road group can be determined based on the road segments. For example, the reference road group for determining abnormal road segments mentioned above includes: for each road group in the target area, traversing the road segments in the road group to obtain at least one adjacent road segment connected to the abnormal road segment; and determining the reference road group based on the at least one adjacent road segment.

[0121] In this context, adjacent road segments are those that share a common origin with abnormal road segments; that is, adjacent road segments are those that are connected to abnormal road segments based on their connection relationships. For example, when an abnormal road segment has only one preceding or succeeding road, it is determined that the abnormal road segment has only one adjacent road segment. When an abnormal road segment has both preceding and succeeding roads, it is determined that the abnormal road segment has two adjacent road segments. When an abnormal road segment is an intersecting road and / or a diverging road, it is determined that the abnormal road segment has multiple adjacent road segments. Then, the road group to which each adjacent road segment belongs is determined as a reference road group.

[0122] It should be understood that since what needs to be found is a road group, not a road segment, even if a road segment is connected to an abnormal road segment, it cannot be determined as a reference road group because it does not belong to any road group.

[0123] In one possible implementation, for any road segment within the target area, it is determined whether the road segment belongs to a road group. If it belongs to a road group, it is further determined whether the road is connected to an abnormal road segment. If they are connected, the road group to which the road segment belongs is used as a reference road group. If it does not belong to a road group or is not connected, the next road segment within the target area is traversed.

[0124] In one possible implementation, the road information within the target area includes the grouping of road segments. That is, the road grouping within the target area can be obtained first to determine the grouped road segments and the ungrouped road segments. The grouped road segments are traversed to determine whether each grouped road segment is connected to an abnormal road segment. If so, the grouped road segment is determined to be an adjacent road segment of the abnormal road segment, and the road group to which the adjacent road segment belongs is used as a reference road group. If not, the grouped road segment is determined not to be an adjacent road segment of the abnormal road segment.

[0125] For example, with Figure 6 Taking road link4 as an abnormal road segment as an example, the grouping situation determines that the road segments to be traversed include road link1, road link2, road link3, road link5, road link6, road link7, and road link8. Traversing these seven road segments reveals that road link3 in road group 1 and road link5 in road group 2 are two adjacent road segments connected to the abnormal road segment road link4. Therefore, road group 1 and road group 2 can be determined as reference road groups for the abnormal road segment road link4. It should be understood that when the abnormal road segment is merged with the reference road group to obtain the merged road group, the following can be obtained: Figure 7 The fusion road group shown.

[0126] Therefore, this application can find road segments that are connected and belong to a road group by traversing, and then determine the reference road group based on the road segments, which effectively realizes the determination of the reference road group and provides reliable data support for the construction of integrated road groups.

[0127] In another embodiment of this application, in order to reduce the amount of computation, at least one road segment that shares vertices with the abnormal road segment can be directly determined based on the vertices of the abnormal road segment, and then the road group to which these road segments belong can be used as a reference road group.

[0128] For example, two vertices of the abnormal road segment are obtained, and at least one road segment that shares two vertices with the abnormal road segment is obtained. These road segments have a connection relationship with the abnormal road segment because they share vertices. Then, it is determined whether these road segments belong to a road group. If any road segment belongs to a road group, the road group to which the road segment belongs is determined as a reference road group. If any road segment does not belong to a road group, the judgment of the next road segment is performed.

[0129] Therefore, the embodiments of this application can quickly obtain the road segments connected to the abnormal road segments based on the vertices of the abnormal road segments, thereby effectively reducing the amount of data to be searched and improving the calculation speed for determining the reference road group.

[0130] In another embodiment of this application, the reference road group may further include a road group indirectly connected to the abnormal road segment, that is, a road group connected to the abnormal road segment through the reference road group. For example, the foregoing description of determining a reference road group based on at least one adjacent road segment includes: taking the road group to which the adjacent road segment belongs as the reference road group; traversing the secondary reference road segments of each reference road segment in the reference road group; taking the road group to which the secondary reference road segment belongs as a new reference road group, where the secondary reference road segment is a road segment connected to the reference road segment but not belonging to the same road group; and returning to traversing the secondary reference road segments of each reference road segment in the reference road group until no secondary reference road segment exists.

[0131] It should be understood that because the reference road group needs to be merged with the abnormal road segments to form a merged road group and the virtual elevation needs to be updated, the virtual elevation of all road segments in the reference road group may be modified. In other words, if a road segment is connected to a reference road segment in the reference road group, that road segment is prone to developing an abnormal slope due to changes in the virtual elevation of the reference road segment. For example, if... Figure 8As shown, vertex C of road link8 in overlay group 2 also belongs to road link10 in overlay group 3. That is, road link8 and road link10 are connected road segments but do not belong to the same road group. At this time, because overlay group 2 recalculates the virtual elevation by merging with the abnormal road segment road link4, the virtual elevation of vertex C is affected by the reference elevation of the merged road group. That is, road link10 is prone to slope anomalies due to the change in the virtual elevation of vertex C. Based on this, in order to avoid repeatedly updating the virtual elevation of the same road group, a secondary reference road segment (road link10) is determined according to the reference road group (overlay group 2), and then the road group to which the secondary reference road segment belongs (overlay group 3) is used as the new reference road group. Specifically, after identifying the reference road group directly connected to the abnormal road segment, the reference road segments in the reference road group can be further traversed to determine whether the reference road segment has connected road segments. If there are connected road segments, it is further determined whether the connected road segments belong to the same road group as the reference road segment. If they belong to the same road group, the process returns to the next reference road segment. If they do not belong to the same road group, the road segment is determined as a secondary reference road segment, thereby finding the secondary reference road segments connected to the reference road segment. The road group to which the secondary reference road segment belongs is also used as a reference road group, and so on, until there are no road groups indirectly connected to the abnormal road segment in the target area.

[0132] It should be understood that, in the embodiments of this application, the traversal ends when there are no new secondary reference road segments, that is, the number of reference road groups indirectly connected to abnormal road segments is not limited.

[0133] In one possible implementation, if any reference road segment is connected to at least two secondary reference road segments when traversing reference road segments in the same reference road group, it can be determined whether the two secondary reference road segments belong to the same road group as the reference road segment, thereby avoiding the omission of referenced road segments.

[0134] In one possible implementation, when determining whether a secondary reference road segment belongs to the same road group as a reference road segment, the reference road group is not retrieved repeatedly. For example, if... Figure 9As shown, the four reference road groups are divided into reference road group a, reference road group b, reference road group c, and reference road group d. The edges between the four reference road groups represent the connection relationship between two reference road groups. Reference road group a is obtained based on abnormal road segments; reference road group b is obtained by traversing the reference road segments in reference road group a; reference road group c is obtained by traversing the reference road segments in reference road group b; and reference road group d is obtained by traversing the reference road segments in reference road group c. When traversing the reference road segments in reference road group d, if a road segment connected to the reference road segment in reference road group d and belonging to reference road group a is found, reference road group a is not repeatedly used as a new reference road group, thus effectively saving traversal times and avoiding infinite loop traversal.

[0135] Therefore, this application can effectively avoid the problem of abnormal road elevation caused by partial shared vertices by traversing the reference road group and using multiple road groups that may be affected by abnormal road segment elevations as reference road groups for fusion.

[0136] In another embodiment of this application, when at least one abnormal road segment exists in the target area, in order to facilitate the determination of the reference road group for fusion, a road group can also be created for the abnormal road segment, that is, the abnormal road segment is grouped. For example, the determination of the reference road group for the abnormal road segment mentioned above includes: creating a target road group based on the abnormal road segment, traversing all road groups in the target area, and determining the road group among all road groups that has a connection relationship with the target road group as the reference road group.

[0137] It should be noted that creating a target road group based on an abnormal road segment means creating a road group, which contains only the abnormal road segment.

[0138] For example, with Figure 6 Taking the target area in the example, if a target road group (represented by an ellipse) is created for the abnormal road segment link4, then it will look like this: Figure 10 The road grouping shown is such that a road group consisting only of road segment link4 is added between the original capping group 1 and capping group 2.

[0139] It should be understood that, in the embodiments of this application, when obtaining the reference road group of abnormal road segments through traversal, abnormal road segments of other road groups can also be used as the reference road group, thereby effectively improving the efficiency of traversal and reducing the risk of repeatedly calculating virtual elevation.

[0140] In one possible implementation, after creating a target road group based on each abnormal road segment within the target area, the grouping information within the target area is updated. For example, the abnormal road segment is bound to its corresponding target road group identifier to prevent the target road group created based on the abnormal road segment from being missed when traversing the road groups.

[0141] For example, such as Figure 11 As shown, road link4 and road link9 are both abnormal road segments. Target road group AB is created based on road link4, and target road group CD is created based on road link9. When traversing all road groups within the target area, roads link1-link12 are all traversed as road segments within the road group. Therefore, based on the connection relationship between road link3 and road link4 in overlay group 1 and the connection relationship between road link5 and road link4 in overlay group 2, overlay groups 1 and 2 are determined as reference road groups for road link4. Then, based on the connection relationship between road link9 and road link8 in overlay group 2, target road group CD is determined as an indirectly connected reference road group for road link4. Finally, based on the connection relationship between road link10 and road link9 in target road group CD, overlay group 3 is also determined as an indirectly connected reference road group for road link4.

[0142] Therefore, by creating road groups for abnormal road segments, abnormal road segments that were not previously used as references can participate in the fusion process more quickly, thereby effectively reducing the parallel computation for each abnormal road segment.

[0143] It should also be understood that, in the embodiments of this application, since a target road group is created for the abnormal road segment, an additional road group that can be used for fusion is added to the target area. In this case, the problem of determining the reference road group for the abnormal road segment is abstracted into a graph theory problem, such as... Figure 12 As shown, each node represents a road group, and each edge indicates that the two nodes (i.e., road groups) it connects to are directly connected. Specifically, in Figure 12 In the diagram, road group A and road group B are two directly connected road groups. The edges between road group A and road group B represent the connection between them. Road group B is also directly connected to road group C, road group E and road group F, and indirectly connected to road group D through road group C.

[0144] Therefore, the problem of clustering road groups according to direct connections is essentially a problem of computing the connected components of an undirected graph, i.e., a graph traversal problem. In reality, the connectivity of road groups is achieved through the connectivity of road segments; therefore, the problem can be transformed into traversing the connections between road segments. For example, Figure 12It contains two connected components: one is a connected subgraph consisting of road group A, road group B, road group E, road group C, road group D and road group F, and the other is a connected subgraph consisting of road group G, road group H and road group I.

[0145] In another embodiment of this application, the connectivity between nodes can be determined by the connection relationships (connectivity relationships) between road segments in a connected graph (road group). For example, the previously described method of traversing all road groups within a target area and determining road groups connected to the target road group as reference road groups includes: traversing all road groups, identifying pairs of connected road segments that do not belong to the same road group, identifying the two road groups to which the road segment pairs belong as road group pairs with a connectivity relationship, and determining road groups connected to the target road group as reference road groups based on the connectivity relationships of each road group pair.

[0146] In other words, in order to obtain the connectivity relationships at the granularity level of road groups, it is necessary to first obtain the connectivity relationships at the granularity level of road segments. That is, the connectivity relationships of road groups are achieved through the connectivity relationships of road segments, and then the connectivity relationships between road groups are obtained based on the connectivity relationships of road segments.

[0147] Therefore, this application effectively transforms information that cannot be directly obtained into information that can be directly obtained by converting the problem of obtaining road groups with connectivity into the problem of obtaining road segment pairs with connectivity, thereby improving the feasibility of the solution.

[0148] For example, the traversal of the connection relationships of each road segment in the road group described above to obtain road segment pairs that are connected but do not belong to the same road group includes: for any road segment, obtaining at least one connecting road segment connected to the road segment; for each connecting road segment, if the road segment and the connecting road segment do not belong to the same road group, then determining that the road segment and the connecting road segment are connected road segments that do not belong to the same road group.

[0149] Specifically, such as Figure 13 As shown, the process of obtaining road segment pairs with connectivity through traversal includes:

[0150] Step 1101: Traverse all road segments in all road groups.

[0151] This includes obtaining road grouping information within the target area and determining the road segments contained in each road group based on the road grouping information.

[0152] For example, with Figure 6 For example, road link1, road link2 and road link3 in the cover group 1 are the road segments that need to be traversed.

[0153] Step 1102: Determine whether the traversal of the road segments has been completed.

[0154] If yes, end the traversal; otherwise, proceed to step 1103.

[0155] In one possible implementation, a traversal queue can be generated based on road segments, and the currently traversed road segment can be deleted during traversal, so that the traversal is completed when the traversal queue is empty.

[0156] Step 1103: Denote the currently traversed road segment as "link", and obtain all adjacent road segments of "link", denoted as set S. Set S includes all predecessor road segments and all successor road segments of "link".

[0157] For example, taking road link3 in the cover group 1 as an example, when traversing the road segment road link3, road link3 is marked as link. The set S corresponding to road link3 includes road link2 and road link4. When road link2 is the predecessor road of road link3, road link4 is the successor road of road link3. When road link4 is the predecessor road of road link3, road link4 is the successor road of road link3.

[0158] Step 1104: Determine whether set S is an empty set.

[0159] If yes, return to step 1102; otherwise, proceed to step 1105.

[0160] It should be understood that when set S is not empty, it means that road link has connected roads that have not yet been judged; when set S is empty, it means that there are no connected roads that have not yet been judged in the current traversal loop of road link. For example, S is a non-empty set when both road link2 and road link4 are traversed, or when only road link2 or road link4 has been traversed.

[0161] Step 1105: Traverse the road segments in S.

[0162] Step 1106: Record the currently traversed road segment as otherlink and delete otherlink from S.

[0163] Here, the currently traversed road segment is denoted as otherlink, which means that the currently traversed road segment is denoted as the adjacent road segment of road link.

[0164] For example, when traversing road link2, road link2 is marked as otherlink, and when traversing road link4, road link4 is marked as otherlink.

[0165] Step 1107: Determine whether link and otherlink belong to the same road group.

[0166] If yes, return to step 1104; otherwise, proceed to step 1108.

[0167] For example, if both road link2 and road link3 are road segments in overlay group 1, they belong to the same road group, so the process returns to step 1104. If road link4 belongs to the target road group AB and does not belong to the same road group as road link3, then the process returns to step 908.

[0168] Step 1108: Record link and otherlink as a road pair with a connection relationship, and return to step 1104.

[0169] In other words, this application, by constructing a traversal set and using labels, can accurately find connected road segment pairs that do not belong to the same road group from the traversed data. Furthermore, by providing computer-executable loop judgment logic, the feasibility of the solution is further ensured. For example, road link3 and road link4 are denoted as a road group pair with a connection relationship, such as (road link3, road link4). It should be understood that after obtaining the connected road segment pairs (link and otherlink) that do not belong to the same road group, the two road groups to which the two road segments in the road segment pair belong are considered as road groups with a connection relationship, and these two road groups with a connection relationship are used as reference road groups.

[0170] Therefore, this embodiment of the application traverses adjacent road groups by establishing a set of adjacent road groups, effectively avoiding the omission of connection relationships and providing strong data support for determining reference road groups.

[0171] In another embodiment of this application, after obtaining the connectivity relationships of each node (road group) through road segments, a complete connectivity graph can be obtained based on the connectivity paths between nodes. For example, the aforementioned process of determining a road group connected to a target road group as a reference road group based on the connectivity relationships of the road group pairs includes: establishing a traversal queue, adding the target road group to the traversal queue, performing an initial traversal of the road group pairs, determining a first reference road group connected to the target road group based on the connectivity relationships of the road group pairs, adding the first reference road group to the traversal queue, deleting the target road group from the traversal queue, iterating through the first reference road group in the traversal queue, determining a second reference road group connected to the first reference road group in the traversal queue based on the connectivity relationships of the road group pairs, deleting the first reference road group from the traversal queue, adding the second reference road group as the first reference road group to the traversal queue, and returning to perform iterative traversal of the first reference road group in the traversal queue until no second road group exists.

[0172] In other words, after identifying connected road pairs, reference road pairs can be found by traversing these road pairs. For example, using... Figure 12 For example, by judging road segment pairs, multiple road group pairs can be obtained, such as (road group A, road group B), (road group B, road group C), (road group B, road group E), (road group B, road group F), and (road group B, road group D). In this case, if road group A is a target road segment created based on an abnormal road segment, a traversal queue can be established, and road group A can be added to the traversal queue. The road group pairs are traversed to determine the first reference road group B connected to road group A, and the first reference road group B is added to the traversal queue. Then, the road group pairs are traversed again to find the road groups connected to the first reference road group B. Through this search, road groups C, E, and F are obtained. Road groups C, E, and F are the second reference road groups, and so on. This process can determine the road groups connected to the first reference road group B. Figure 10 In the network, there are no other road groups connected to road groups E and F. Road group C is also connected to road group D, and road group D has no other connected road groups. Based on this, the reference road groups for road group A include road groups B, C, D, E, and F.

[0173] It should be understood that by screening road segment pairs, the actual process involves calculating ( Figure 10 For computational efficiency, the neighboring nodes of each node can also be processed in parallel using multiple threads. Therefore, the neighboring nodes obtained from multiple threads need to be clustered, that is, the neighboring nodes of each node are merged into the same dataset.

[0174] Specifically, such as Figure 14 As shown, it includes:

[0175] Step 1201: Obtain road pairs that have a connection relationship, denoted as set P.

[0176] For example, set P = {(road group A, road group B), (road group B, road group C), (road group B, road group E), (road group B, road group F), (road group B, road group D)}

[0177] Step 1202: Traverse all road pairs in set P, denote the two road groups in the currently traversed road pair as group and othergroup, and delete the currently traversed road pair from set P.

[0178] For example, when traversing a road segment pair (road group A, road group B), road group A can be marked as "group" and road group B as "othergroup". Simultaneously, the road segment pair is deleted from set P, at which point P = {(road group B, road group C), (road group B, road group E), (road group B, road group F), (road group B, road group D)}.

[0179] If the traversal is complete, the final clustering result is output; otherwise, step 1203 is executed.

[0180] It should be understood that when P is an empty set, the traversal is completed and the final clustering result is output. When P is a non-empty set, step 1003 is executed.

[0181] Step 1203: Add othergroup to the neighbor set of group, and add group to the neighbor set of othergroup, and return to step 1002.

[0182] In other words, the embodiments of this application also require establishing an adjacency combination for each road segment in the road segment pair. For example, the adjacency set of road segment A can be marked as A. When traversing the road segment pair (road group A, road group B), the othergroup of road segment A is added to the adjacency set of group (road segment A), that is, A={road segment B}.

[0183] Therefore, by traversing the road pairs, we can determine all road pairs connected to any given road pair (for example, road pairs connected to any given road pair). Figure 12 In the middle road group B, road groups A, C, E and F were found, saving computational costs for subsequent calculations.

[0184] In another embodiment of this application, the abnormal road segments and reference road groups are fused to obtain a fused road group, including: creating a fused road group based on the abnormal road segments and adding reference road groups from the traversal queue to the fused road group.

[0185] In other words, based on the connection relationships of each road group determined by the aforementioned scheme, a complete connectivity graph is further determined. For example... Figure 15 As shown, it includes:

[0186] Step 1301: Create a collection of visited road groups called visitedGroups.

[0187] It should be understood that the visitedGroups set is used to mark visited road groups to avoid repeated traversal.

[0188] Step 1302: Traverse the road groups in the target area and denote the currently traversed road group as groupA.

[0189] For example, to make Figure 12 Taking road group A as an example, we can obtain the connected graph containing road group A.

[0190] Step 1303: Determine whether visitedGroups contains groupA.

[0191] If yes, return to step 1302; otherwise, proceed to step 1304.

[0192] It should be understood that since groupA (road group A) is still being traversed, visitedGroups does not yet contain groupA (road group A) at this time.

[0193] Step 1304: Add groupA to visitedGroups.

[0194] groupA (road group A) has been extracted and traversed. To avoid repeated traversal when traversing other road groups, groupA (road group A) is added to visitedGroups.

[0195] Step 1305: Create the queue corresponding to groupA.

[0196] It should be noted that the queue is used to hold road groups to be traversed. At the same time, the queue can effectively determine the traversal order of each road group, thereby improving traversal efficiency.

[0197] Step 1306: Create the traversal result collection clusterResult.

[0198] Similar to visitedGroups, clusterResult is created to prevent elements in the queue corresponding to groupA from being traversed repeatedly. At the same time, the traversal result set clusterResult is also the set corresponding to the merged road groups; that is, the road groups contained in the set clusterResult are the defined reference road groups.

[0199] Step 1307: Add groupA to the tail of the queue.

[0200] It should be understood that by adding groupA to the tail of the queue, a basis is provided for traversing the adjacent road groups of groupA.

[0201] Step 1308: Remove the first element of the queue, denoted as currGroup.

[0202] When the queue contains only groupA, then groupA (road group A) is retrieved and marked as currGroup.

[0203] Step 1309: Determine if the queue is not empty.

[0204] If yes, proceed to step 1310; otherwise, proceed to step 1315.

[0205] It should be noted that in this process, we check whether the queue is not empty. When the queue is not empty, it means that there are still road groups that have not been traversed. When the queue is not empty, it means that the queue is empty, that is, the traversal of the current road groups with connectivity has been completed, and the connectivity of the road groups can be output.

[0206] Step 1310: Add currGroup to clusterResult. That is, add the reference road group in the traversal queue to the fused road group set currGroup, so that the fused road group can be obtained at the same time when determining the reference road group corresponding to the abnormal road segment.

[0207] Step 1311: Traverse the road groups directly connected to currGroup and mark the adjacent road groups as otherGroup.

[0208] If the traversal is not complete, proceed to step 1312; if the traversal is complete, return to step 1309.

[0209] It should be understood that the road group directly connected to currGroup (road group A), that is, the set of adjacent road groups A corresponding to road group A, is A={road group B} in this embodiment of the application.

[0210] Step 1312: Determine whether visitedGroups contains otherGroup.

[0211] If it is included, return to step 1311; otherwise, proceed to step 1313.

[0212] That is, determine whether otherGroup (road group B) has been traversed. For example, when groupA is road group B, the set B determined by the adjacency relationship is {road group A, road group C, road group E, road group F}. When the current step is executed, it can be determined that visitedGroups contains road group A, so there is no need to traverse road group A again, and the process returns to step 1311. If visitedGroups does not contain road group C, road group E, and road group F, the process can continue to add otherGroup to visitedGroups.

[0213] Step 1313: Add otherGroup to visitedGroups.

[0214] Step 1314: Add otherGroup to the tail of the queue and return to step 1311.

[0215] It should be understood that steps 1313 and 1314 ensure that otherGroup can be traversed without being traversed repeatedly.

[0216] Step 1315: Use each road group in clusterResult as the reference road group for groupA.

[0217] It should be understood that, in Figure 15 In the illustrated embodiment, it is possible to utilize Figure 14 The obtained adjacent groups are executed in step 1311, that is, using Figure 15 The obtained adjacent groups complete the traversal of road groups directly connected to currGroup, thereby effectively avoiding the traversal of road group pairs within the target area and effectively reducing the amount of computation.

[0218] Therefore, by establishing a traversal completion set, the embodiments of this application can effectively avoid repeated traversal of road groups and effectively improve the efficiency of determining reference road groups.

[0219] In another embodiment of this application, the abnormal road segments in the current target area can be corrected by virtual elevation through iterative methods, so that there are no road segments with abnormal slopes in the target area in the end.

[0220] For example, such as Figure 16 As shown, the process includes the following:

[0221] Step 1401: Group the road segments within the target area based on the overlay relationship.

[0222] Step 1402: Set the maximum number of iterations MAX_TIME and mark the initial number of iterations as t = 0.

[0223] The maximum number of iterations, MAX_TIME, can be set according to the size of the target region. It can be a threshold obtained from a finite number of experiments on the target region, or a threshold obtained from a finite number of computer simulations on the target region, for example, 15 iterations.

[0224] Step 1403: Determine whether the current iteration count has not yet reached the maximum iteration count (t≤MAX_TIME)?

[0225] If yes, proceed to step 1404; otherwise, end the iteration.

[0226] Step 1404: Merge the connected road groups to obtain merged road groups.

[0227] The connected road group is a reference road group that includes abnormal road segments and has a connection with them. Therefore, this step is equivalent to merging the abnormal road segments and the reference road groups to obtain a merged road group.

[0228] Step 1405: Determine the virtual elevation of each road segment within the fused road group based on the baseline elevation of the fused road group.

[0229] Step 1406: Obtain the slope of each ungrouped road segment within the target area, and add road segments with abnormal slopes to set N.

[0230] In one possible embodiment, ungrouped road segments can be obtained by acquiring the grouping information within the target area. Then, the slope of the ungrouped road segments can be calculated based on the length and virtual elevation of the ungrouped road segments. If the slope of the ungrouped road segment is less than a preset slope threshold, the ungrouped road segment will not be added to set N. If the slope of the ungrouped road segment is greater than or equal to the preset slope threshold, the ungrouped road segment will be added to set N.

[0231] Step 1407: Determine if set N is empty.

[0232] If set N is empty, the correction is complete; if set N is not empty, proceed to step 1408.

[0233] In other words, the set N is used to determine whether there are still abnormal road segments after the current correction operation.

[0234] Step 1408: Create a target road group for each road segment in set N.

[0235] Step 1409: Record t = t + 1, and return to step 1403.

[0236] Therefore, this application can correct abnormal road segments in the target area through iterative correction, so that the slope of all road segments in the target area can meet the slope of the road construction specifications.

[0237] It should be noted that although the operation of the method of the present invention is described in a specific order in the accompanying drawings, this does not require or imply that the operations must be performed in that specific order, or that all the operations shown must be performed in order to achieve the desired result.

[0238] In summary, the virtual elevation generation method for roads proposed in this application can effectively eliminate slope anomalies caused by differences in the reference elevation of the reference road group when the slope of ungrouped roads is abnormal. This is achieved by merging abnormal road segments with connected reference roads into a fused road group, allowing the same reference elevation to be used when calculating the virtual elevation of each road segment in the fused road group. Furthermore, 3D rendering based on the reference elevation of the fused road group can effectively improve the accuracy of the 3D map, making the road segments in the rendered 3D map more consistent with the slope specifications of road construction.

[0239] Figure 17 An exemplary structural block diagram of the virtual elevation generation apparatus for roads provided in this application embodiment is shown.

[0240] like Figure 17 As shown, the virtual elevation generation device 10 for roads in this embodiment of the application includes:

[0241] The determination module 11 is used to determine a reference road group for abnormal road segments; the abnormal road segment is a road segment with an abnormal slope among the ungrouped road segments after the road segments in the target area are grouped based on preset rules; the reference road group is a road group that has a connection relationship with the abnormal road segment among the road groups obtained by grouping the road segments in the target area based on the preset rules.

[0242] The fusion module 12 is used to perform fusion processing on the abnormal road segment and the reference road group to obtain a fused road group;

[0243] The calculation module 13 is used to determine the virtual elevation of the abnormal road segment based on the reference elevation of the fused road.

[0244] In another embodiment of this application, the preset rule includes: dividing road segments that have overlapping relationships into the same road group.

[0245] In another embodiment of this application, the determining module 11 is used to: determine the road centerline of each road segment within the target area on a planar map;

[0246] Based on the intersection relationship between the centerlines of each road segment, road segments with overlapping relationships are identified, and these road segments with overlapping relationships are assigned to the same road group.

[0247] In another embodiment of this application, the determining module 11 is configured to:

[0248] For each road group within the target area, traverse the road segments in the road group to obtain at least one adjacent road segment connected to the abnormal road segment;

[0249] The reference road group is determined based on the at least one adjacent road segment.

[0250] In another embodiment of this application, the determining module 11 is configured to:

[0251] The road group to which the adjacent road segments belong is used as the reference road group;

[0252] Traverse the secondary reference road segments of each reference road segment in the reference road group, and take the road group to which the secondary reference road segment belongs as the new reference road group; the secondary reference road segment is a road segment that is connected to the reference road segment but does not belong to the same road group;

[0253] Return to the process of traversing the secondary reference road segments of each reference road segment in the reference road group until no secondary reference road segment exists.

[0254] In another embodiment of this application, the determining module 11 is configured to:

[0255] Create a target road group based on the abnormal road segment;

[0256] Traverse all road groups within the target area and determine the road groups that are connected to the target road group as the reference road groups.

[0257] In another embodiment of this application, the determining module 11 is configured to:

[0258] Traverse all road groups to identify pairs of road segments that are connected but do not belong to the same road group;

[0259] The two road groups to which the road segment belongs are identified as road group pairs with a connection relationship;

[0260] Based on the connection relationship of each road group pair, the road group that has a connection relationship with the target road group is determined as the reference road group.

[0261] In another embodiment of this application, the determining module 11 is configured to:

[0262] Establish a traversal queue and add the target road group to the traversal queue;

[0263] The road pairs are initially traversed. Based on the connection relationship of the road pairs, a first reference road group connected to the target road group is determined. The target road group is deleted from the traversal queue, and the first reference road group is added to the traversal queue.

[0264] The first reference road group in the traversal queue is traversed in a loop. Based on the connection relationship of the road group pairs, the second reference road group connected to the first reference road group in the traversal queue is determined. The first reference road group in the traversal queue is deleted, and the second reference road group is added to the traversal queue as the first reference road group.

[0265] Return to the previous step and iterate through the first reference road group in the traversal queue until the second road group no longer exists.

[0266] In another embodiment of this application, the determining module 11 is configured to:

[0267] For any one of the road segments, obtain at least one connecting road segment connected to the road segment;

[0268] For each road segment, if the road segment and the connecting road segment do not belong to the same road group, then the road segment and the connecting road segment are determined to be connected road segments that do not belong to the same road group.

[0269] In another embodiment of this application, the fusion module 12 is used for:

[0270] Create a merged road group based on the abnormal road segments;

[0271] Add the reference road group in the traversal queue to the merged road group.

[0272] In another embodiment of this application, the fusion module 12 is used for:

[0273] An initial road group is created based on the abnormal road segment;

[0274] All road segments in the reference road group are added to the initial road group to obtain the merged road group. In another embodiment of this application,

[0275] In another embodiment of this application, the calculation module 13 is used for:

[0276] Identify at least two road points corresponding to each road segment;

[0277] For each road point, the elevation of the road point is obtained, and the difference between the elevation of the road point and the reference elevation is used as the virtual elevation of the road point.

[0278] The virtual elevation of each road segment is determined based on the virtual elevation of at least two road points corresponding to each road segment.

[0279] In another embodiment of this application, such as Figure 18 As shown, the virtual elevation generation device 10 for roads in this embodiment of the application further includes: a rendering module 14, used for:

[0280] The roads in the target area are constituted by the road segments in the aforementioned target area;

[0281] Based on the virtual elevations corresponding to each road segment in the road, a target map corresponding to the target area is constructed.

[0282] The target map is displayed in a spatial dimension, and during the display process, road segments with different virtual elevations are presented in a relative relationship that matches the different virtual elevations. The relative relationship includes the vertical relationship between the roads.

[0283] In summary, the virtual elevation generation device for roads proposed in this application can effectively eliminate slope anomalies caused by differences in the reference elevation of the reference road group when there are slope anomalies in ungrouped roads. This is achieved by merging the abnormal road segments with the connected reference roads into a fused road group, so that the same reference elevation can be used when calculating the virtual elevation of each road segment in the fused road group. Based on the reference elevation of the fused road group, 3D rendering can effectively improve the accuracy of the 3D map, making the road segments in the rendered 3D map more consistent with the slope of road construction specifications.

[0284] It should be understood that the units or modules described in device 10 are related to the reference. Figure 2The steps in the described method correspond to each other. Therefore, the operations and features described above for the method also apply to device 10 and the units contained therein, and will not be repeated here. Device 10 can be pre-implemented in the browser or other security applications of an electronic device, or it can be loaded into the browser or other security applications of an electronic device by means of downloading. The corresponding units in device 10 can cooperate with the units in the electronic device to implement the solution of the embodiments of this application.

[0285] The division of modules or units mentioned in the detailed description above is not mandatory. In fact, according to the embodiments of this disclosure, the features and functions of two or more modules or units described above can be embodied in one module or unit. Conversely, the features and functions of one module or unit described above can be further divided and embodied by multiple modules or units.

[0286] The following is for reference. Figure 19 , Figure 19 A schematic diagram of the structure of a computer system suitable for implementing the embodiments of this application is shown.

[0287] like Figure 19 As shown, the computer system includes a central processing unit (CPU) 1701, which can perform various appropriate actions and processes based on programs stored in read-only memory (ROM) 1702 or programs loaded from storage section 1708 into random access memory (RAM) 1703. RAM 1703 also stores various programs and data required for the system's operating instructions. CPU 1701, ROM 1702, and RAM 1703 are interconnected via bus 1704. Input / output (I / O) interface 1705 is also connected to bus 1704.

[0288] The following components are connected to I / O interface 1705: an input section 1706 including a keyboard, mouse, etc.; an output section 1707 including a cathode ray tube (CRT), liquid crystal display (LCD), etc., and speakers, etc.; a storage section 1708 including a hard disk, etc.; and a communication section 1709 including a network interface card such as a LAN card, modem, etc. The communication section 1709 performs communication processing via a network such as the Internet. Drive 1710 is also connected to I / O interface 1705 as needed. Removable media 1711, such as a disk, optical disk, magneto-optical disk, semiconductor memory, etc., are installed on drive 1710 as needed so that computer programs read from them can be installed into storage section 1708 as needed.

[0289] Specifically, according to embodiments of this application, the flowchart above refers to... Figure 2The described process can be implemented as a computer software program. For example, embodiments of this application include a computer program product comprising a computer program carried on a computer-readable medium, the computer program containing program code for performing the methods shown in the flowchart. In such an embodiment, the computer program contains program code for performing the methods shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network via communication section 1709, and / or installed from removable medium 1711. When the computer program is executed by central processing unit (CPU) 1701, it performs the functions defined in the system of this application.

[0290] It should be noted that the computer-readable medium shown in this application can be a computer-readable signal medium or a computer-readable storage medium, or any combination of the two. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this application, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. In this application, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. Computer-readable signal media can also be any computer-readable medium other than computer-readable storage media, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wireless, wire, optical fiber, RF, etc., or any suitable combination thereof.

[0291] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operational instructions of possible implementations of systems, methods, and computer program products according to various embodiments of this application. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two connected blocks may actually be executed substantially in parallel, or they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified functions or operational instructions, or using a combination of dedicated hardware and computer instructions.

[0292] The units or modules described in the embodiments of this application can be implemented in software or hardware. The described units or modules can also be housed in a processor; for example, a processor can be described as including a determination module, a fusion module, and a calculation module. The names of these units or modules do not necessarily limit the specific unit or module itself. For example, a determination module can also be described as "determining a reference road group for abnormal road segments; the reference road group is a road group directly or indirectly connected to the abnormal road segment among road groups divided based on road segments within a target area, and the abnormal road segment is a road segment with an abnormal slope among ungrouped road segments within the target area."

[0293] In another aspect, this application also provides a computer-readable storage medium, which may be included in the electronic device described in the above embodiments, or may exist independently and not assembled into the electronic device. The aforementioned computer-readable storage medium stores one or more programs that, when used by one or more processors, execute the virtual elevation generation method for roads described in this application.

[0294] The above description is merely a preferred embodiment of this application and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of disclosure in this application is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the foregoing disclosed concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features with similar functions disclosed in this application.

Claims

1. A method for generating virtual elevation of roads, characterized in that, include: Determine a reference road group for abnormal road segments; the abnormal road segment is a road segment with an abnormal slope among the ungrouped road segments after grouping road segments within the target area based on preset rules; the reference road group is a road group that has a connection relationship with the abnormal road segment among the road groups obtained by grouping road segments within the target area based on the preset rules. The method for determining the reference road group for the abnormal road segment includes: for each road group within the target area, traversing the road segments in the road group to obtain at least one adjacent road segment connected to the abnormal road segment; taking the road group to which the adjacent road segment belongs as the reference road group; traversing the secondary reference road segments of each reference road segment in the reference road group, taking the road group to which the secondary reference road segment belongs as a new reference road group; the secondary reference road segment is a road segment connected to the reference road segment but not belonging to the same road group; returning to traversing the secondary reference road segments of each reference road segment in the reference road group until no secondary reference road segment exists; The abnormal road segment and the reference road group are fused together to obtain a fused road group; The virtual elevation of the abnormal road segment is determined based on the baseline elevation of the fused road group.

2. The method according to claim 1, characterized in that, The preset rules include: dividing road segments that overlap each other into the same road group.

3. The method according to claim 2, characterized in that, The grouping of road segments within the target area based on preset rules includes: Determine the centerline of each road segment within the target area on a plan view; Based on the intersection relationship between the centerlines of each road segment, road segments with overlapping relationships are identified, and these road segments with overlapping relationships are assigned to the same road group.

4. The method according to claim 1, characterized in that, The reference road group for determining abnormal road segments includes: Create a target road group based on the abnormal road segment; Traverse all road groups within the target area and determine the road groups that are connected to the target road group as the reference road groups.

5. The method according to claim 4, characterized in that, The step of traversing all road groups within the target area and determining the road groups connected to the target road group as the reference road groups includes: Traverse all road groups to identify pairs of road segments that are connected but do not belong to the same road group; The two road groups to which the road segment belongs are identified as road group pairs with a connection relationship; Based on the connection relationship of each road group pair, the road group that has a connection relationship with the target road group is determined as the reference road group.

6. The method according to claim 5, characterized in that, The step of determining the road group that has a connection relationship with the target road group as the reference road group based on the connection relationship of the road group pairs includes: Establish a traversal queue and add the target road group to the traversal queue; The road pairs are initially traversed. Based on the connection relationship of the road pairs, a first reference road group connected to the target road group is determined. The target road group is deleted from the traversal queue, and the first reference road group is added to the traversal queue. The first reference road group in the traversal queue is traversed in a loop. Based on the connection relationship of the road group pairs, the second reference road group connected to the first reference road group in the traversal queue is determined. The first reference road group in the traversal queue is deleted, and the second reference road group is added to the traversal queue as the first reference road group. Return to the previous step and iterate through the first reference road group in the traversal queue until the second reference road group no longer exists.

7. The method according to claim 5, characterized in that, The process of traversing the connection relationships of each road segment in the road group to obtain connected road segment pairs that do not belong to the same road group includes: For any one of the road segments, obtain at least one connecting road segment connected to the road segment; For each road segment, if the road segment and the connecting road segment do not belong to the same road group, then the road segment and the connecting road segment are determined to be connected road segments that do not belong to the same road group.

8. The method according to claim 6, characterized in that, The process of fusing the abnormal road segment and the reference road group to obtain a fused road group includes: Create a merged road group based on the abnormal road segments; Add the reference road group in the traversal queue to the merged road group.

9. The method according to claim 1, characterized in that, The process of fusing the abnormal road segment and the reference road group to obtain a fused road group includes: An initial road group is created based on the abnormal road segment; All road segments in the reference road group are added to the initial road group to obtain the merged road group.

10. The method according to claim 1, characterized in that, Determining the virtual elevation of the abnormal road segment based on the reference elevation of the fused road group includes: Identify at least two road points corresponding to each road segment; For each road point, the elevation of the road point is obtained, and the difference between the elevation of the road point and the reference elevation is used as the virtual elevation of the road point. The virtual elevation of each road segment is determined based on the virtual elevation of at least two road points corresponding to each road segment.

11. The method according to any one of claims 1-10, characterized in that, The roads in the target area are constituted by the road segments in the aforementioned target area; Based on the virtual elevations corresponding to each road segment in the road, a target map corresponding to the target area is constructed. The target map is displayed in a spatial dimension, and during the display process, road segments with different virtual elevations are presented in a relative relationship that matches the different virtual elevations. The relative relationship includes the vertical relationship between the roads.

12. A virtual elevation generation device for roads, characterized in that, include: A determination module is used to determine a reference road group for abnormal road segments. The abnormal road segment is a road segment with an abnormal slope among the ungrouped road segments after grouping road segments within a target area based on preset rules. The reference road group is a road group obtained by grouping road segments within the target area based on the preset rules that has a connection relationship with the abnormal road segment. The determination module is used to, for each road group within the target area, traverse the road segments in the road group to obtain at least one adjacent road segment connected to the abnormal road segment; designate the road group to which the adjacent road segment belongs as the reference road group; traverse the secondary reference road segments of each reference road segment in the reference road group, and designate the road group to which the secondary reference road segment belongs as a new reference road group; the secondary reference road segment is a road segment connected to the reference road segment but not belonging to the same road group; return to traverse the secondary reference road segments of each reference road segment in the reference road group until no secondary reference road segment exists. The fusion module is used to fuse the abnormal road segment and the reference road group to obtain a fused road group; The calculation module is used to determine the virtual elevation of the abnormal road segment based on the baseline elevation of the fused road.

13. The apparatus according to claim 12, characterized in that, The preset rules include: dividing road segments that overlap each other into the same road group.

14. The apparatus according to claim 13, characterized in that, The determining module is used to: determine the road centerline of each road segment within the target area on a planar map; Based on the intersection relationship between the centerlines of each road segment, road segments with overlapping relationships are identified, and these road segments with overlapping relationships are assigned to the same road group.

15. The apparatus according to claim 12, characterized in that, The determining module is used for: Create a target road group based on the abnormal road segment; Traverse all road groups within the target area and determine the road groups that are connected to the target road group as the reference road groups.

16. The apparatus according to claim 15, characterized in that, The determining module is used for: Traverse all road groups to identify pairs of road segments that are connected but do not belong to the same road group; The two road groups to which the road segment belongs are identified as road group pairs with a connection relationship; Based on the connection relationship of each road group pair, the road group that has a connection relationship with the target road group is determined as the reference road group.

17. The apparatus according to claim 16, characterized in that, The determining module is used for: Establish a traversal queue and add the target road group to the traversal queue; The road pairs are initially traversed. Based on the connection relationship of the road pairs, a first reference road group connected to the target road group is determined. The target road group is deleted from the traversal queue, and the first reference road group is added to the traversal queue. The first reference road group in the traversal queue is traversed in a loop. Based on the connection relationship of the road group pairs, the second reference road group connected to the first reference road group in the traversal queue is determined. The first reference road group in the traversal queue is deleted, and the second reference road group is added to the traversal queue as the first reference road group. Return to the previous step and iterate through the first reference road group in the traversal queue until the second reference road group no longer exists.

18. The apparatus according to claim 16, characterized in that, The determining module is used for: For any one of the road segments, obtain at least one connecting road segment connected to the road segment; For each road segment, if the road segment and the connecting road segment do not belong to the same road group, then the road segment and the connecting road segment are determined to be connected road segments that do not belong to the same road group.

19. The apparatus according to claim 17, characterized in that, The fusion module is used for: Create a merged road group based on the abnormal road segments; Add the reference road group in the traversal queue to the merged road group.

20. The apparatus according to claim 12, characterized in that, The fusion module is used for: An initial road group is created based on the abnormal road segment; All road segments in the reference road group are added to the initial road group to obtain the merged road group.

21. The apparatus according to claim 12, characterized in that, The calculation module is used for: Identify at least two road points corresponding to each road segment; For each road point, the elevation of the road point is obtained, and the difference between the elevation of the road point and the reference elevation is used as the virtual elevation of the road point. The virtual elevation of each road segment is determined based on the virtual elevation of at least two road points corresponding to each road segment.

22. The apparatus according to any one of claims 12-21, characterized in that, The device further includes a rendering module for: The roads in the target area are constituted by the road segments in the aforementioned target area; Based on the virtual elevations corresponding to each road segment in the road, a target map corresponding to the target area is constructed. The target map is displayed in a spatial dimension, and during the display process, road segments with different virtual elevations are presented in a relative relationship that matches the different virtual elevations. The relative relationship includes the vertical relationship between the roads.

23. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the virtual elevation generation method for roads as described in any one of claims 1 to 11.

24. A computer-readable storage medium having a computer program stored thereon, characterized in that, When executed by a processor, the program implements the virtual elevation generation method for roads as described in any one of claims 1 to 11.

25. A computer program product, comprising a computer program, characterized in that, When executed by a processor, the computer program implements the method for generating virtual elevations of roads as described in any one of claims 1 to 11.