A Method for Converging Regional Integrated Transportation Networks Based on OSM

CN117648783BActive Publication Date: 2026-08-11SOUTHEAST UNIV
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-11-15
Publication Date
2026-08-11

AI Technical Summary

Technical Problem

当前,由于区域综合交通网络各子网络的数据源不同,且数据格式不统一,缺乏一套快速有效的区域网络数据一体化构建方法和规范化的数据格式,不利于区域综合交通网络的一体化分析

Benefits of technology

[0019] This invention establishes a mapping relationship between OSM data tags and integrated transportation network elements. It proposes a method to quickly extract location and attribute information from the vast amount of information contained in OSM data, focusing on road segment and node data within the integrated transportation network, and stores this information in corresponding datasets. This invention enables the rapid and integrated construction of regional integrated transportation networks and merges highway, rail, and waterway network data using a unified format, which facilitates the provision of standardized data for the integrated analysis of regional integrated transportation networks. Finally, the effectiveness of the method is demonstrated through experimental evaluation on real-world datasets.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117648783B_ABST
    Figure CN117648783B_ABST
Patent Text Reader

Abstract

This invention discloses a method for constructing a regional integrated transportation network based on OSM (Optical System Mapping). It extracts regional integrated transportation network elements from OSM map data, sets different resolution levels and their correspondences with network elements, and processes the data to form spatial data and attribute data files of road segments, routes, nodes, and topological points within the regional integrated transportation network. Based on the user-set resolution level, it constructs an integrated regional integrated transportation network that includes highway segments and nodes, railway lines and nodes, waterway lines and nodes, and related attributes. This invention allows users to integrate and construct large-scale regional integrated transportation networks encompassing multiple modes, including highway, railway, and waterway networks. It provides fundamental data in computer-generated representations for rapid regional integrated transportation analysis, significantly saving time and workload associated with manually drawing regional integrated transportation networks.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention belongs to the field of integrated transportation network computer technology, specifically relating to a method for constructing a regional integrated transportation network based on OSM. Background Technology

[0002] Traffic organization planning for integrated transportation networks is particularly important, as its results directly impact the trajectory of regional spatial economic development. A prerequisite for comprehensive transportation network organization planning is the ability to quickly extract complete and accurate road network data and create computer-represented traffic network maps. Currently, due to the different data sources and inconsistent data formats of the various sub-networks within a regional integrated transportation network, there is a lack of a rapid and effective method for constructing integrated regional network data and a standardized data format, which hinders the integrated analysis of regional integrated transportation networks.

[0003] OSM (OpenStreetMap) is an open-source world map and online map collaboration project, freely usable under an open license. The official OSM website (https: / / www.openstreetmap.org) provides an interface for downloading map data of arbitrary rectangular areas. The downloaded OSM format file stores all spatial and attribute data constituting the specified area, including road network, railway network, waterway network, administrative divisions, and various POI / AOIs. Because irrelevant content exists during the construction of integrated transportation networks using OSM map data, manual deletion is extremely labor-intensive, and its data classification definitions differ from those of my country's integrated transportation network data, rapid and accurate data filtering and structural transformation are necessary to create a computer-represented integrated transportation network map, thereby providing foundational data for integrated transportation planning. Summary of the Invention

[0004] The technical problem to be solved by this invention is to propose a method for constructing a regional integrated transportation network based on OSM, which can construct an integrated regional integrated transportation network that includes highway segments and nodes, railway lines and nodes, waterway lines and nodes and related attributes, so as to quickly provide basic data in computer representation form for regional integrated transportation analysis, and greatly save the time and workload of manually drawing regional integrated transportation networks.

[0005] To solve the above-mentioned technical problems, the present invention adopts the following technical solution:

[0006] A method for constructing a regional integrated transportation network based on OSM includes the following steps:

[0007] S1. Download and export the map data file for the specified area from the OpenStreetMap official website (https: / / www.openstreetmap.org), and save the file with the .osm extension.

[0008] S2. Set the integration construction accuracy of the comprehensive transportation network, and construct data filtering rules according to the accuracy requirements, and establish the mapping relationship between relation and way data key-value pairs and network elements.

[0009] S3. Traverse the OSM map data, filter the relation data that meets the accuracy requirements, and extract the corresponding way data numbers, storing them in the rail_id or river_id list according to the network type.

[0010] S4. Construct a set of roadway (for storing highway network paths), a set of railway (for storing rail network paths), and a set of riverway (for storing waterway network paths) respectively.

[0011] S5. Traverse the OSM map data, filter the way-type data that meets the accuracy requirements, and extract its name, OSM number, 'node' member OSM number, level, number of lanes / tracks / channels and other attribute information, and store them into the sets roadway, railway and riverway respectively according to the type.

[0012] S6. Construct sets roadnd for storing highway network point data, railnd for storing rail network point data, and rivernd for storing waterway network point data.

[0013] S7. Traverse the OSM map data, filter the node data that meets the accuracy requirements, and extract its OSM number, longitude value, latitude value, tag label and other attribute information, and store them into the sets roadnd, railnd and rivernd respectively according to the type.

[0014] S8. Create a set Ttopo that stores information about the topology points of the integrated transportation network, a set Tnode that stores information about the nodes of the integrated transportation network, a set Tgeom that stores information about the paths of the integrated transportation network, and a set Tlink-topo that stores the connection relationships between the paths and topology points of the integrated transportation network.

[0015] S9. Using the roadway, railway, and riverway set data extracted in step S5 and the roadnd, railnd, and rivernd set data extracted in step S7, merge and construct the highway subnetwork, rail subnetwork, and waterway subnetwork of the integrated transportation network.

[0016] S10, output files Ttopo, Tlink-topo, Tnode, and Tgeom, to obtain the data contained in constructing the integrated transportation network of the target area.

[0017] Furthermore, the present invention also proposes 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 computer program to implement the steps of the OSM-based regional integrated transportation network fusion construction method described above.

[0018] The present invention adopts the above technical solution, and its significant technical effects compared with the prior art are as follows:

[0019] This invention establishes a mapping relationship between OSM data tags and integrated transportation network elements. It proposes a method to quickly extract location and attribute information from the vast amount of information contained in OSM data, focusing on road segment and node data within the integrated transportation network, and stores this information in corresponding datasets. This invention enables the rapid and integrated construction of regional integrated transportation networks and merges highway, rail, and waterway network data using a unified format, which facilitates the provision of standardized data for the integrated analysis of regional integrated transportation networks. Finally, the effectiveness of the method is demonstrated through experimental evaluation on real-world datasets. Attached Figure Description

[0020] Figure 1 This is a flowchart illustrating the overall implementation of the present invention.

[0021] Figure 2 This is an actual schematic diagram of the OSM map in an embodiment of the present invention.

[0022] Figure 3 This is a computer-generated abstract diagram illustrating the construction of a regional integrated transportation network in an embodiment of the present invention. Detailed Implementation

[0023] The present invention will now be described in detail with reference to the accompanying drawings and specific embodiments. These embodiments are based on the technical solution of the present invention and provide detailed implementation methods and specific operating procedures. However, the scope of protection of the present invention is not limited to the following embodiments.

[0024] This invention proposes a method for constructing a regional integrated transportation network based on OSM, such as... Figure 1 As shown, it includes the following steps:

[0025] S1. Download OSM map data for a specified area in Nanjing City, save the file with the .osm extension, and the map area is as follows: Figure 2 As shown.

[0026] S2. Set the accuracy of the integrated transportation network construction, and construct data filtering rules according to the accuracy requirements. Establish the mapping relationship between relation and way data key-value pairs and network elements. The specific content is as follows:

[0027] The classification levels include: ① Highway network: expressway / Class I highway / Class II highway / Class III highway; ② Rail network: railway line / subway line; ③ Waterway network: natural rivers / artificial waterways.

[0028] (1) Construct the mapping relationship between key-value pairs (k:v) of integrated transportation network relation data and network elements, including:

[0029] k="route",v="railway" corresponds to a rail network element; k="route",v="train" corresponds to a rail network element; k="railway",v="subway" corresponds to a rail network element; k="route",v="waterway" corresponds to a waterway network element; k="waterway",v="river" corresponds to a waterway network element; k="type",v="watershed" corresponds to a waterway network element; k="route",v="ferry" corresponds to a waterway network element.

[0030] (2) Construct the mapping relationship between the key-value pairs (k:v) of the integrated transportation network way data and the network elements, including:

[0031] The highway network mapping relationships include: k = "highway", v = "motorway" corresponds to highway elements; k = "highway", v = "trunk" corresponds to highway elements; k = "highway", v = "motorway_link" corresponds to highway elements; k = "highway", v = "trunk_link" corresponds to highway elements; k = "highway", v = "primary" corresponds to primary highway elements; k = "highway", v = "primary_link" corresponds to primary highway elements; k = "highway", v = "secondary" corresponds to secondary highway elements; k = "highway", v = "secondary_link" corresponds to secondary highway elements; k = "highway", v = "tertiary" corresponds to tertiary highway elements; k = "highway", v = "tertiary_link" corresponds to tertiary highway elements.

[0032] The track network mapping relationships include: k = "railway", v = "rail" corresponds to railway line elements; k = "railway", v = "subway" corresponds to subway line elements; k = "waterway", v = "river" corresponds to natural river elements; k = "waterway", v = "canal" corresponds to artificial waterway elements; k = "route", v = "ferry" corresponds to artificial waterway elements.

[0033] S3. Traverse the OSM map data, filter relation data that meet the accuracy requirements, and extract the corresponding way data numbers. Store these data in the rail_id or river_id list according to the network type. Specifically:

[0034] S3.1 Initialize i = 1.

[0035] S3.2 Initialize the list rail_id, which is used to store the OSM number of the rail network path.

[0036] S3.3 Initialize the list river_id, which is used to store the OSM number of the water transport network path.

[0037] S3.4 Read the type label at the end of the i-th data and determine if it is 'relation'. If it is, proceed to step S3.5; otherwise, proceed to step S3.8.

[0038] S3.5 Search for the (k:v) key-value pairs stored in the 'tag' attribute label of the i-th data, and judge according to the data filtering rules in step S2. If there is a (k:v) key-value pair that matches the "railway network" relation data filtering rule, proceed to step S3.5. If there is a (k:v) key-value pair that matches the "waterway network" relation data filtering rule, proceed to step S3.6. Otherwise, proceed to step S3.9.

[0039] S3.6 Search for all 'member' elements referenced by the i-th data entry, and read the 'type' attribute tag of the 'member' element in turn. If type = 'way', extract the 'ref' tag corresponding to that 'member' element and add it to the rail_id list.

[0040] S3.7 Search for all 'member' elements referenced by the i-th data entry, and read the 'type' attribute tag of the 'member' element in turn. If type = 'way', extract the 'ref' tag corresponding to that 'member' element and add it to the river_id list.

[0041] S3.8 Update i = i + 1, and return to step S3.4.

[0042] S3.9 Repeat steps S3.1-S3.8 until the OSM map data traversal is complete.

[0043] S4. Construct sets for storing highway network paths (roadway), rail network paths (railway), and waterway network paths (riverway), with the following formats:

[0044] roadway = {w1 a |w1 a =(id) a ,name a ,list a ,class a ,lanes a )}, a∈Z, 0<a≤A

[0045] Where roadway represents the collection storing highway network path data, w1 a It is the route data of the a-th road in the set roadway, id a It is the OSM number of the route data for the a-th highway, name a It is the name of the a-th highway route, list a The list stores the OSM number of the 'node' member referenced by the a-th highway path, class a It is the lane classification of the a-th highway route. a Let A be the number of lanes on the a-th road path, and let A be the length of the set roadway.

[0046] railway={w2 b |w2 b =(id) b ,name b ,list b ,class b ,lanes b )}, b∈Z, 0<b≤B

[0047] Here, railway represents the collection that stores track network path data, w2 b It is the data of the b-th track path in the set "railway", id b It is the OSM number of the b-th track path data, name b It is the name of the b-th track path, list a The list stores the OSM number of the 'node' member referenced by the b-th track path, class bIt is the level of the b-th orbital path, lanes b Let B be the number of tracks on the b-th track path, and let B be the length of the set railway.

[0048] riverway={w3 c |w3 c =(id) c ,name c ,list c ,class c ,lanes c )}, c∈Z, 0<c≤C

[0049] Here, riverway represents a collection that stores waterway network path data, w3 c It is the data of the c-th waterway route in the set Riverway, id c It is the OSM number of the cth waterway route data, name c It is the name of the c-th waterway route, list c The list stores the OSM number of the 'node' member referenced by the c-th waterway path, class c It is the grade of the cth waterway route, lane. c It is the number of routes in the c-th waterway, and C is the length of the set riverway.

[0050] S5. Traverse the OSM map data, filter the way-type data that meets the accuracy requirements, and extract its name, OSM number, 'node' member OSM number, level, number of lanes / tracks / channels, and other attribute information. Store these attributes in the sets roadway, railway, and riverway according to their type.

[0051] S5.1: Initialize i = 1, a = 1, b = 1, c = 1;

[0052] S5.2: Read the type label at the end of the i-th data item and determine if it is 'way'. If it is, proceed to step S5.3; otherwise, proceed to step S5.22.

[0053] S5.3: Search for the (k:v) key-value pair 'tag' stored within the 'tag' attribute tag of the i-th data. i And according to the data filtering rules in step S2, if tag i Existence (k) i ,v i If the key-value pairs match the "road network" way category data filtering rules, proceed to step S5.4. If there exists (k i ,v iIf the key-value pairs match the "track network" way-type data filtering rules, proceed to step S5.10. If there exists (k i ,v i If the key-value pairs match the filtering rules for the "way" category of "water transport network", proceed to step S5.16; otherwise, proceed to step S5.22.

[0054] S5.4: Search for the 'id' label of the i-th data, which is the OSM number of the a-th highway path, and assign it the value id. a ;

[0055] S5.5: Search tags i Read the v value corresponding to k = 'name', which is the name of the a-th highway route, and assign it the value name. a =v;

[0056] S5.6: Search tags i Read the v value corresponding to k = 'lanes', which is the number of lanes, and assign it to lanes. a =v;

[0057] S5.7: Search sequentially for the 'nd' tag of the i-th data, read the OSM number referred to by its 'ref', which is the OSM number of the point constituting the a-th highway path, and store the numbers sequentially into a list. a List;

[0058] S5.8: Based on the "Highway Network" data filtering rules in step S2, class... a Assignment:

[0059] ①k i ="highway",v i = "motorway" or k i ="highway",v i ="trunk" or k i ="highway",v i ="motorway_link" or k i ="highway",v i ="trunk_link", which indicates that the path is a highway, assigned a class value. a =11; ②k i ="highway",v i ="primary" or k i ="highway",v i ="primary_link", which indicates that the path is a primary highway, assigned the class value. a =12; ③k i="highway",v i ="secondary" or k i ="highway",v i ="secondary_link", which indicates that the path is a secondary highway, assigned the class value. a =13; ④k i ="highway",v i ="tertiary" or k i ="highway",v i ="tertiary_link", which corresponds to a tertiary highway, and is assigned the class value. a =14;

[0060] S5.9: The information of the a-th highway route has been extracted. Let a = a + 1 and proceed to step S5.22.

[0061] S5.10: Search for the 'id' label of the i-th data entry, which is the OSM number of the b-th highway path. Check if the number exists in the rail_id list. If it exists, assign the number the value id. b Otherwise, proceed to step S5.22;

[0062] S5.11: Search tags i Read the v value corresponding to k = 'name', which is the name of the b-th track path, and assign it the value name. b =v;

[0063] S5.12: Search sequentially for the 'nd' tag of the i-th data, read the OSM number referred to by its 'ref', which is the point OSM number that constitutes the b-th track path, and store the numbers sequentially into a list. b List;

[0064] S5.13: Based on the "Track Network" data filtering rules in step S2, class... b Assignment:

[0065] ①k i ="railway",v i ="rail", which indicates that the path is a railway line, assigned a class value. b =21; ②k i ="railway",v i ="subway", which corresponds to a railway line, and is assigned the class value. b =22;

[0066] S5.14: OSM data does not include the attribute of the number of railway tracks; lanes should be assigned according to normal circumstances. b default value;

[0067] S5.15: The information of the b-th railway route has been extracted. Let b = b + 1 and proceed to step S5.22.

[0068] S5.16: Search for the 'id' label of the i-th data entry, which is the OSM number of the c-th waterway route. Check if the number exists in the river_id list. If it exists, assign the number the value id. c Otherwise, proceed to step S5.22;

[0069] S5.17: Search tags i Read the v value corresponding to k = 'name', which is the name of the c-th waterway route, and assign it the value name. c =v;

[0070] S5.18: Search sequentially for the 'nd' tag of the i-th data, read the OSM number referred to by its 'ref', which is the point OSM number that constitutes the c-th waterway route, and store the numbers sequentially into a list. c List;

[0071] S5.19: Based on the "Waterway Network" data filtering rules in step S2, class... c Assignment:

[0072] ①k i ="waterway",v i ="river", which indicates that the path is a natural river, assigned a class value. c =31; ②k i ="waterway",v i ="canal" or k i ="route",v i ="ferry", which indicates that the path is an artificial waterway, assigned a class value. c =32;

[0073] S5.20: OSM data does not include the attribute of the number of waterways; lanes are assigned according to normal circumstances. c default value;

[0074] S5.21: Information on the c-th waterway route has been extracted. Update c = c + 1 and proceed to step S5.22.

[0075] S5.22: Update i = i + 1, return to step S5.2, until the OSM map data traversal is completed, and obtain the set roadway containing 6029 elements, the set railway containing 4 elements, and the set riverway containing 166 elements.

[0076] S6. Construct sets roadnd for storing highway network point data, railnd for storing rail network point data, and rivernd for storing waterway network point data. The specific contents are as follows:

[0077] roadnd = {nd1 d |nd1 d =(id) d ,lat d ,lon d ,tag d )},d∈Z,0<d≤D

[0078] Where roadnd represents the set storing highway network point data, nd1 d It is the data of the d-th road point in the set roadnd, id d It is the OSM number of the d-th highway point, lat d It is the latitude value of the d-th highway point, lon d It is the longitude value of the d-th highway point, tag d It is the set of attribute labels for the d-th road point, where D is the length of the set roadnd.

[0079] railnd={nd2 e |nd2 e =(id) e ,lat e ,lon e ,tag e )}, e∈Z, 0<e≤E

[0080] Where railnd represents the collection storing track network point data, nd2 e It is the data of the e-th track network point in the set railnd, id e It is the OSM number of the e-th orbital network point, lat e It is the latitude value of the e-th orbital network point, lon e It is the longitude value of the e-th orbital network point, tag e It is the set of attribute labels for the e-th track network point, where E is the length of the set railnd.

[0081] rivernd={nd3 f |nd3 f =(id)f ,lat f ,lon f ,tag f )}, f∈Z, 0<f≤F

[0082] Where rivernd represents the set storing data on points in the waterway network, nd f It is the data of the f-th waterway network point in the set rivernd, id f It is the OSM number of the f-th waterway network point, lat f It is the latitude value of the f-th point in the water transport network, lon f It is the longitude value of the f-th point in the waterway network, tag f Rivernd is the set of attribute labels for the f-th point in the water transport network, where F is the length of the set Rivernd.

[0083] S7. Traverse the OSM map data, filter node data that meets the accuracy requirements, and extract its OSM number, longitude value, latitude value, tag label, and other attribute information. Store these attributes in the sets roadnd, railnd, and rivernd according to their types. The specific contents are as follows:

[0084] S7.1 Initialize i = 1, d = 1, e = 1, f = 1;

[0085] S7.2 Read the type label at the end of the i-th data and determine if it is 'node'. If it is, proceed to step S7.3; otherwise, proceed to step S7.7.

[0086] S7.3 Search for the value id corresponding to the 'id' tag of the i-th data. i The value corresponding to the 'lat' tag is lat i The value corresponding to the 'lon' tag is lon. i The collection of key-value pairs corresponding to the 'tag' tag i ;

[0087] S7.4, Check if the list w1[list] contains the ID. i If it exists, then let nd1 d [id] = id i nd1 d [lat]=lat i nd1 d [lon] = lon i nd1 d [tag] = tag i If d = d + 1, otherwise proceed to step S7.5;

[0088] S7.5, Check if the w2[list] list contains the id. i If it exists, then let nd2 e [id] = id i nd2 e [lat]=lat i nd2 e [lon] = lon i nd2 e [tag] = tag i If e = e + 1, otherwise proceed to step S7.6;

[0089] S7.6, Check if the w3[list] list contains the id. i If it exists, then let nd3 f [id] = id i nd3 f [lat]=lat i nd3 f [lon] = lon i nd3 f [tag] = tag i If f = f + 1, otherwise proceed to step S7.7;

[0090] S7.7 Let i = i + 1, return to step S7.2, until the OSM map data traversal ends, and obtain the set roadnd containing 36030 elements, the set railnd containing 4188 elements, and the set rivernd containing 4426 elements.

[0091] S8. Create a set Ttopo storing information about the topology points of the integrated transportation network, a set Tnode storing information about the nodes of the integrated transportation network, a set Tgeom storing information about the paths of the integrated transportation network, and a set Tlink-topo storing the connection relationships between the paths and topology points of the integrated transportation network. The specific contents are as follows:

[0092] Ttopo={Ttopo m |Ttopo m =(id) m ,lat m ,lon m )}, m∈Z, 0<m≤M

[0093] Where Ttopo represents the set of points storing network topology information, Ttopo m It is the m-th element in the Ttopo set, with id m It is the OSM number of the m-th topology point in the network, lat m lon mThese are the topological points Ttopo m The latitude and longitude values ​​are given, and M is the length of the set Ttopo.

[0094] Tnode = {Tnode n |Tnode n =(id) n ,lat n ,lon n ,type n )}, n∈Z, 0<n≤N

[0095] Where Tnode represents a collection that stores network node information, Tnode n It is the nth element in the Tnode set, with the id n It is the OSM number of the nth node in the network, lat n lon n These are nodes (Tnodes) n Latitude and longitude values, type n It is a node Tnode n The type number is N, where N is the length of the set Tnode.

[0096] Tink-topo = {Tlink-topo q |Tink-topo q =(id) q ,num q ,[topo1,...,topo numq ])},q∈Z,0<q≤Q

[0097] Here, Tlink-topo represents the set that stores the connection relationships between paths and topological points in the integrated transportation network. q It is the q-th element in the Tlink-topo collection, with id p num is the OSM number of the q-th path in the network. q It is the number of topological points contained in the q-th path of the network, [topo1,...,topo...]. numq ] is a sequence list of OSM numbers of topological points contained in the q-th path of the network, where Q is the length of the set Tlink-topo.

[0098] Tgeom={Tgeom p |Tgeom p =(id) p node1 p node2 p ,type p ,class p ,lenp ,lanes p )}, p∈Z, 0<p≤P

[0099] Where Tgeom represents the collection storing integrated transportation network path information, Tgeom p It is the p-th element in Tgeom, with id p It is the OSM number of the p-th path in the network, node1 p node2 p These are the OSM numbers of the start and end points of the p-th path, respectively, and type p It is the type number of the p-th path, class p It is the path Tgeom p The grade number, len p len is the length of the p-th path. p It represents the number of lanes / tracks / channels on the p-th path, and P is the length of the set Tgeom.

[0100] S9. Using the roadway, railway, and riverway data sets extracted in step S5 and the roadnd, railnd, and rivernd data sets extracted in step S7, the highway subnetwork, rail subnetwork, and waterway subnetwork of the integrated transportation network are merged and constructed. The specific content is as follows:

[0101] S9.1 Initialize a = 1, m = 1, n = 1, p = 1, q = 1;

[0102] S9.2, Read the roadway collection element w1 a =(id) a ,name a ,list a ,class a ,lanes a ), list a The length is len;

[0103] S9.3 Reading a list a [0] corresponds to path w1 a Starting point OSM number, read list a [len-1] corresponds to the path w1 a The OSM number of the destination is read sequentially from the list. a [1] to list a [len-2] corresponds to the path w1 a The OSM numbering sequence of topological points;

[0104] S9.4. Search the list by matching elements by their IDs within the roadnd collection. a The element corresponding to [0] is nd1 x =(id) x ,lat x ,lon x ), search list a The element corresponding to [len-1] is nd1 y =(id) y ,lat y ,lon y ), search list a [1]...list a The element nd1 corresponding to [len-2] w =(id) w ,lat w ,lon w ...nd1 z =(id) z ,lat z ,lon z );

[0105] S9.5, according to the list a Based on the point list order, calculate the distance between adjacent points according to their coordinates and sum them to obtain path w1. a Total length len_w1 a ;

[0106] S9.6 Update the set Ttopo and assign values ​​to Ttopo. m [id] = list a [0], Ttopo m [lat]=lat x Ttopo m [lon] = lon x Ttopo m+1 [id] = list a [1], Ttopo m+1 [lat]=lat w Ttopo m+1 [lon] = lon w ...;Ttopo m+len-2 [id] = list a [len-2], Ttopo m+len-2 [lat]=lat z Ttopo m+len-2 [lon] = lon z Ttopo m+len-1 [id] = lista [len - 1], Ttopo m+len-1 [lat]=lat y , Ttopo m+len-1 [lon]=lon y ;

[0107] S9.7. Update the set Tnode, assign values to Tnode n [id]=list a [0], Tnode n [lat]=lat x , Tnode n [lon]=lon x , Tnode n [type]=1; Tnode n+1 [id]=list a [[ID=3)]][len - 1], Tnode n [lat]=lat y , Tnode n+1 [lon]=lon y , Tnode n+1 [type]=1;

[0108] S9.8. Update the set Tlink - topo, assign values to Tlink - topo q [id]=id a , Tlink - topo q [num]=len,

[0109] S9.9. Update the set Tgeom, Tgeom p [id]=id a , Tgeom p [node1]=list a [0], Tgeom p [node2]=list a [len - 1], Tgeom p [type]=1, Tgeom p [class]=class a , Tgeom p [len]=len_w1 a , Tgeom p [lanes]=lanes a ;

[0110] S9.10 Update a = a + 1, m = m + len, n = n + 2, p = p + 1, q = q + 1, return to step S9.2, until the 6029 elements contained in the roadway set are traversed to obtain the data of the road subnetwork;

[0111] S9.11. Initialize b = 1, m, n, p, q are the values ​​obtained in step S9.10;

[0112] S9.12, Reading the railway collection element w2 b =(id) b ,name b ,list b ,class b ,lanes b ), list b The length is len;

[0113] S9.13, Reading a list b [0] corresponds to the path w2 b Starting point OSM number, read list b [len-1] corresponds to the path w2 b The OSM number of the destination is read sequentially from the list. b [1] to list b [len-2] corresponds to the path w2 b The OSM numbering sequence of topological points;

[0114] S9.14. Searching for elements in the railnd collection by ID. b The element corresponding to [0] is nd2 x =(id) x ,lat x ,lon x ), search list b The element corresponding to [len-1] is nd2 y =(id) y ,lat y ,lon y ), search list b [1]...list b The element corresponding to [len-2] is nd2 w =(id) w ,lat w ,lon w ...nd2 z =(id) z ,lat z ,lon z );

[0115] S9.15, according to the list b Based on the point list order, calculate the distance between adjacent points according to their coordinates and sum them to obtain the path w2. b Total length len_w2 b ;

[0116] S9.16 Update the set Ttopo and assign values ​​to Ttopo. m [id] = list b [0], Ttopo m [lat]=lat x Ttopo m [lon] = lon x Ttopo m+1 [id] = list b [1], Ttopo m+1 [lat]=lat w Ttopo m+1 [lon] = lon w ...;Ttopo m+len-2 [id] = list b [len-2], Ttopo m+len-2 [lat]=lat z Ttopo m+len-2 [lon] = lon z Ttopo m+len-1 [id] = list b [len-1], Ttopo m+len-1 [lat]=lat y Ttopo m+len-1 [lon] = lon y ;

[0117] S9.17, Update collection Tnode, assign value to Tnode n [id] = list b [0], Tnode n [lat]=lat x Tnode n [lon] = lon x Tnode n [type] = 1; Tnode n+1 [id] = list b [len-1], Tnode n [lat]=lat y Tnode n+1 [lon] = lon y Tnoden+1 [type] = 2;

[0118] S9.18, Update the collection Tlink-topo, assign values ​​to Tlink-topo. q [id] = id b Tlink-topo q [num] = len,

[0119] S9.19, Update set Tgeom, Tgeom p [id] = id b Tgeom p [node1] = list b [0], Tgeom p [node2] = list b [len-1], Tgeom p [type] = 2, Tgeom p [class] = class b Tgeom p [len] = len_w2 b Tgeom p [lanes] = lanes b ;

[0120] S9.20, Update b = b + 1, m = m + len, n = n + 2, p = p + 1, q = q + 1, Return to step S9.12, Continue until the four elements contained in the railway set are traversed to obtain the data of the track sub-network;

[0121] S9.21. Initialize c = 1, m, n, p, q are the values ​​obtained in step S9.20;

[0122] S9.22, Reading element w3 from the riverway collection. c =(id) c ,name c ,list c ,class c ,lanes c ), list c The length is len;

[0123] S9.23, Reading a list c [0] corresponds to path w3 c Starting point OSM number, read list c [len-1] corresponds to the path w3 c The OSM number of the destination is read sequentially from the list.c [1] to list c [len-2] corresponds to the path w3 c The OSM numbering sequence of topological points;

[0124] S9.24. Search the list by matching elements by ID in the railnd collection. c The element corresponding to [0] is nd3 x =(id) x ,lat x ,lon x ), search list c The element corresponding to [len-1] is nd3 y =(id) y ,lat y ,lon y ), search list c [1]...list c The element corresponding to [len-2] is nd3 w =(id) w ,lat w ,lon w ...nd3 z =(id) z ,lat z ,lon z );

[0125] S9.25, according to the list c Based on the point list order, calculate the distance between adjacent points according to their coordinates and sum them to obtain the path w3. c Total length len_w3 c ;

[0126] S9.26, Update set Ttopo, assign value to Ttopo m [id] = list c [0], Ttopo m [lat]=lat x Ttopo m [lon] = lon x Ttopo m+1 [id] = list c [1], Ttopo m+1 [lat]=lat w Ttopo m+1 [lon] = lon w ...;Ttopo m+len-2 [id] = list c [len-2], Ttopo m+len-2[lat]lat z ,Ttopo m+len-2 [lon]Lon z NTtopo m+len-1 [id]0list c [len-1],Corpse m+len-1 [lat]lat y ,Ttopo m+len-1 [lon]Lon y 100.

[0127] S9.27 、Characteristics of Tnode,Configuration Tnode n [id]0list c [0],Tnode n [lat]lat x ,Tnode n [lon]Lon x ,Tnode n [type]10Tnode n+1 [id]0list c [len-1],Tnode n [lat]lat y ,Tnode n+1 [lon]Lon y ,Tnode n+1 [type]93

[0128] S9.28 Latest version of Tlink-topo, download Tlink-topo q [id]Id b ,Tlink-topo q [num]Mlen,

[0129] S9.29 Thanks for reading Tgeom,Tgeom p [id]Id b ,Tgeom p [node1])list c [0],Tgeom p [ node2 ] list c [len-1],Tgeom p [type]3,Tgeom p [class]Mclass b ,

[0130] Tgeom p [len]len_w3c Tgeom p [lanes] = lanes b ;

[0131] S9.30, Update c = c + 1, m = m + len, n = n + 2, p = p + 1, q = q + 1, return to step S9.22, until the 166 set elements contained in the riverway are traversed to obtain the data of the water transport sub-network;

[0132] S10: Output files Ttopo (containing 32,365 data entries), Tlink-topo (containing 5,251 data entries), Tnode (containing 5,100 data entries), and Tgeom (containing 5,100 data entries) to construct the data contained in the comprehensive transportation network of a designated area in Nanjing. The obtained data is then visualized as follows: Figure 3 As shown.

[0133] This invention also proposes an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor. It should be noted that when the processor executes the computer program, it corresponds to the specific steps of the method provided in this invention, possessing the corresponding functional modules and beneficial effects for executing the method. Technical details not described in detail in this embodiment can be found in the method provided in this invention.

[0134] The preferred embodiments of the present invention have been described in detail above. It should be understood that those skilled in the art can make numerous modifications and variations based on the concept of the present invention without creative effort. Therefore, all technical solutions that can be obtained by those skilled in the art based on the concept of the present invention through logical analysis, reasoning, or limited experimentation on the basis of existing technology should be within the scope of protection defined by the claims.

Claims

1. A method for constructing a regional integrated transportation network based on OSM, characterized in that, include S1. Download and export map data files for a specified area using internet resources; S2. Set the integration construction accuracy of the comprehensive transportation network, and construct data filtering rules according to the accuracy requirements, and establish the mapping relationship between relation and way data key-value pairs and network elements; S3. Traverse the OSM map data, filter the relation data that meets the accuracy requirements, and extract the corresponding way data numbers, and store them in the rail_id or river_id list according to the network type. S4. Construct a set of roadway for storing highway network paths, a set of railway for storing rail network paths, and a set of riverway for storing waterway network paths; S5. Traverse the OSM map data, filter the way-type data that meets the accuracy requirements, and extract its name, OSM number, 'node' member OSM number, level, number of lanes / tracks / channels, and store them into the sets roadway, railway, and riverway respectively according to their types. S6. Construct a set roadnd for storing highway network point data, a set railnd for storing rail network point data, and a set rivernd for storing waterway network point data; S7. Traverse the OSM map data, filter the node data that meets the accuracy requirements, and extract the attribute information of its OSM number, longitude value, latitude value, and tag label. Store the data in the sets roadnd, railnd, and rivernd according to their types. S8. Construct a set Ttopo for storing topology point information of the integrated transportation network, a set Tnode for storing node information of the integrated transportation network, a set Tgeom for storing path information of the integrated transportation network, and a set Tlink-topo for storing the connection relationship between paths and topology points of the integrated transportation network; S9. Using the roadway, railway and riverway set data extracted in step S5 and the roadnd, railnd and rivernd set data extracted in step S7, construct the highway subnetwork, rail subnetwork and waterway subnetwork of the integrated transportation network. S10, output files Ttopo, Tlink-topo, Tnode, and Tgeom, to obtain the data contained in constructing the integrated transportation network of the target area.

2. The method for constructing a regional integrated transportation network based on OSM according to claim 1, characterized in that, In step S2, the mapping relationship between the integrated transportation network relation and way data key-value pairs and network elements is as follows: (1) Construct the mapping relationship between key-value pairs (k:v) of integrated transportation network relation data and network elements, including: k="route", v="railway" corresponds to a rail network element; k="route", v="train" corresponds to a rail network element; k="railway", v="subway" corresponds to a rail network element; k="route", v="waterway" corresponds to a waterway network element; k="waterway", v="river" corresponds to a waterway network element; k="type", v="watershed" corresponds to a waterway network element; k="route", v="ferry" corresponds to a waterway network element. (2) Construct the mapping relationship between the key-value pairs (k:v) of the integrated transportation network way data and the network elements, including: The highway network mapping relationships include: k = "highway", v = "motorway" corresponds to highway elements; k = "highway", v = "trunk" corresponds to highway elements; k = "highway", v = "motorway_link" corresponds to highway elements; k = "highway", v = "trunk_link" corresponds to highway elements; k = "highway", v = "primary" corresponds to primary highway elements; k = "highway", v = "primary_link" corresponds to primary highway elements; k = "highway", v = "secondary" corresponds to secondary highway elements; k = "highway", v = "secondary_link" corresponds to secondary highway elements; k = "highway", v = "tertiary" corresponds to tertiary highway elements; k = "highway", v = "tertiary_link" corresponds to tertiary highway elements. The track network mapping relationships include: k = "railway", v = "rail" corresponds to railway line elements; k = "railway", v = "subway" corresponds to subway line elements; k = "waterway", v = "river" corresponds to natural river elements; k = "waterway", v = "canal" corresponds to artificial waterway elements; k = "route", v = "ferry" corresponds to artificial waterway elements.

3. The method for constructing a regional integrated transportation network based on OSM according to claim 2, characterized in that, Step S3, storing to the list includes the following sub-steps: S3.1 Initialize i = 1; S3.2 Initialize the list rail_id, which is used to store the OSM number of the rail network path; S3.3 Initialize the list river_id, which is used to store the OSM number of the water transport network path; S3.4 Read the type label at the end of the i-th data and determine if it is 'relation'. If it is, proceed to step S3.5; otherwise, proceed to step S3.

8. S3.5 Search for the (k:v) key-value pairs stored in the 'tag' attribute label of the i-th data, and judge according to the data filtering rules in step S2. If there is a (k:v) key-value pair that matches the "railway network" relation data filtering rule, proceed to step S3.

5. If there is a (k:v) key-value pair that matches the "waterway network" relation data filtering rule, proceed to step S3.

6. Otherwise, proceed to step S3.

9. S3.6 Search all 'member' elements referenced by the i-th data, and read the attribute tag 'type' of the 'member' element in turn. If type = 'way', extract the 'ref' tag corresponding to the 'member' element and add it to the rail_id list. S3.7 Search for all 'member' elements referenced by the i-th data, and read the attribute tag 'type' of the 'member' element in turn. If type = 'way', extract the 'ref' tag corresponding to the 'member' element and add it to the river_id list. S3.8 Update i = i + 1, then return to step S3.4; S3.9 Repeat steps S3.1-S3.8 until the OSM map data traversal is complete.

4. The method for constructing a regional integrated transportation network based on OSM according to claim 1, characterized in that, In step S4, the constructed set formats are expressed as follows: roadway={w1 a |w1 a =(id a ,name a ,list a ,class a ,lanes a )},a∈Z,0<a≤A Where roadway represents the collection storing highway network path data, w1 a This represents the path data of the a-th road in the set roadway, id a The name represents the OSM number of the route data for the a-th highway. a List represents the name of the a-th highway route. a The list stores the OSM number of the 'node' member referenced by the a-th highway path, class a Lanes represents the class of the a-th highway route. a Let A represent the number of lanes on the a-th road route, and let A represent the length of the set roadway. railway={w2 b |w2 b =(id b ,name b ,list b ,class b ,lanes b )},b∈Z,0<b≤B Here, railway represents the collection that stores track network path data, w2 b This represents the path data of the b-th track in the set `railway`, id. b The name represents the OSM number of the b-th track path data. b List represents the name of the b-th track path. a The list stores the OSM number of the 'node' member referenced by the b-th track path, class b Lanes represents the class of the b-th track path. b Let B represent the number of tracks in the b-th track path, and let B represent the length of the set railway. riverway={w3 c |w3 c =(id c ,name c ,list c ,class c ,lanes c )},c∈Z,0<c≤C Here, riverway represents a collection that stores waterway network path data, w3 c This represents the path data of the c-th waterway in the set riverway, id c The name represents the OSM number of the c-th waterway route data. c List represents the name of the c-th waterway route. c The list stores the OSM number of the 'node' member referenced by the c-th waterway path, class c Lanes indicates the class of the c-th waterway route. c Let C represent the number of routes in the c-th waterway route, and let C represent the length of the set riverway.

5. The method for constructing a regional integrated transportation network based on OSM according to claim 2, characterized in that, Step S5, storing to the collection, includes the following sub-steps: S5.1 Initialize i = 1, a = 1, b = 1, c = 1; S5.2 Read the type label at the end of the i-th data. If it is 'way', proceed to step S5.3; otherwise, proceed to step S5.

22. S5.3 Search for the (k:v) key-value pair tag stored in the 'tag' attribute tag of the i-th data. j According to the data filtering rules in step S2, if the tag i Existence (k) i ,v i If the key-value pair matches the "road network" way category data filtering rule, proceed to step S5.

4. If there exists (k i ,v i If the key-value pair matches the "track network" way-type data filtering rule, proceed to step S5.

10. If there exists (k i ,v i If the key-value pair matches the "waterway network" way-type data filtering rule, proceed to step S5.16; otherwise, proceed to step S5.

22. S5.4 Search for the 'id' label of the i-th data, which is the OSM number of the a-th highway path, and assign it the value id. a ; S5.5, Search Tags i Read the v value corresponding to k = 'name', which is the name of the a-th highway route, and assign it the value name. a =v; S5.6, Search tags i Read the v value corresponding to k = 'lanes', which is the number of lanes, and assign it to lanes. a =v; S5.

7. Search sequentially for the 'nd' tag of the i-th data, read the OSM number referred to by its 'ref', which is the OSM number of the point constituting the a-th highway path, and store the numbers sequentially into a list. a List; S5.

8. Based on the "Highway Network" data filtering rules in step S2, class... a Assignment; S5.9 After the information of the a-th highway route has been extracted, let a = a + 1 and proceed to step S5.22; S5.

10. Search for the 'id' label of the i-th data entry, which is the OSM number of the b-th highway path. Check if the number exists in the rail_id list. If it exists, assign the number the value id. b Otherwise, proceed to step S5.22; S5.11, Search tags i Read the v value corresponding to k = 'name', which is the name of the b-th track path, and assign it the value name. b =v; S5.

12. Search the 'nd' tag of the i-th data in sequence, read the OSM number referred to by its 'ref', which is the point OSM number that constitutes the b-th track path, and store the numbers in the list in sequence. b List; S5.

13. According to the "track network" data filtering rules in step S2, class b Assignment; S5.14, OSM data does not include the attribute of the number of railway tracks; therefore, lanes are assigned according to normal circumstances. b default value; S5.

15. The information of the b-th railway route has been extracted. Let b = b + 1 and proceed to step S5.

22. S5.

16. Search for the 'id' label of the i-th data, which is the OSM number of the c-th waterway route. Check if the number exists in the river_id list. If it exists, assign the number the value id. c Otherwise, proceed to step S5.22; S5.17, Search tags i Read the v value corresponding to k = 'name', which is the name of the c-th waterway route, and assign it the value name. c =v; S5.

18. Search the 'nd' tag of the i-th data in sequence, read the OSM number referred to by its 'ref', which is the point OSM number that constitutes the c-th waterway route, and store the numbers in the list in sequence. c List; S5.

19. Based on the "Waterway Network" data filtering rules in step S2, class... c Assignment; S5.20 and OSM data do not include the attribute of the number of waterways; lanes are assigned according to normal circumstances. c default value; S5.

21. After extracting the information of the c-th waterway route, update c = c + 1 and proceed to step S5.

22. S5.22, Update i = i + 1, return to step S5.2, until the OSM map data traversal is completed.

6. The method for constructing a regional integrated transportation network based on OSM according to claim 1, characterized in that, In step S6, the constructed set formats are expressed as follows: roadnd={nd1 d |nd1 d =(id d ,lat d ,lon d ,tag d )},d∈Z,0<d≤D Where roadnd represents the set storing highway network point data, nd1 d This represents the data of the d-th road point in the set roadnd, where id d lat represents the OSM number of the d-th highway point. d Lon represents the latitude value of the d-th highway point. d Tag represents the longitude value of the d-th highway point. d Let roadnd represent the set of attribute labels for the d-th road point, where D represents the length of the set roadnd. railnd={nd2 e |nd2 e =(id e ,lat e ,lon e ,tag e )},e∈Z,0<e≤E Where railnd represents the collection storing track network point data, nd2 e This represents the data of the e-th track network point in the set railnd, id. e lat represents the OSM number of the e-th orbital network point. e Lon represents the latitude value of the e-th orbital network point. e Tag represents the longitude value of the e-th orbital network point. e Let E represent the set of attribute labels for the e-th track network point, where E represents the length of the set railnd. rivernd={nd3 f |nd3 f (id f ,lat f ,I f ,tag f )},f∈Z,0<f≤F Where rivernd represents the set storing data on points in the waterway network, nd f This represents the data of the f-th point in the water transport network of the set rivernd, where id is... f lat represents the OSM number of the f-th waterway network point. f Lon represents the latitude value of the f-th point in the waterway network. f Tag represents the longitude value of the f-th point in the waterway network. f Let f represent the set of attribute labels for the f-th point in the water transport network, where F represents the length of the set rivernd.

7. The method for constructing a regional integrated transportation network based on OSM according to claim 1, characterized in that, Step S7, storing to the collection, includes the following sub-steps: S7.1 Initialize i = 1, d = 1, e = 1, f = 1; S7.2 Read the type label at the end of the i-th data. If it is 'node', proceed to step S7.3; otherwise, proceed to step S7.

7. S7.3 Search for the value id corresponding to the 'id' tag of the i-th data. i The value corresponding to the 'lat' tag is lat i The value lon corresponding to the 'lon' tag i The set of key-value pairs corresponding to the 'tag' tag i ; S7.4, Check if the list w1[list] contains the ID. i If it exists, then let nd1 d [id] = id i nd1 d [lat]=lat i nd1 d [lon] = lon i nd1 d [tag] = tag i If d = d + 1, otherwise proceed to step S7.5; S7.5, Check if the w2[list] list contains the id. i If it exists, then let nd2 e [id] = id i nd2 e [lat]=lat i nd2 e [lon] = lon i nd2 e [tag] = tag i If e = e + 1, otherwise proceed to step S7.6; S7.6, Check if the w3[list] list contains the id. k If it exists, then let nd3 f [id] = id i nd3 f [lat]=lat i nd3 f [lon] = lon i nd3 f [tag] = tag i If f = f + 1, otherwise proceed to step S7.7; S7.7 Let i = i + 1, return to step S7.2, until the OSM map data traversal is completed.

8. The method for constructing a regional integrated transportation network based on OSM according to claim 1, characterized in that, In step S8, the constructed set formats are expressed as follows: Ttopo={Ttopo m |Ttopo m =(id m ,lat m ,lon m )},m∈Z,0<m≤M Where Ttopo represents the set of points storing network topology information, Ttopo m This represents the m-th element in the Ttopo set, with id. m lat represents the OSM number of the m-th topological point in the set. m lon m These represent the topological points Ttopo m The latitude and longitude values, where M represents the length of the set Ttopo; Tnode={Tnode n |Tnode n =(id n ,lat n ,lon n ,type n )},n∈Z,0<n≤N Where Tnode represents a collection that stores network node information, Tnode n This represents the nth element in the Tnode set, id. n lat represents the OSM number of the nth node in the storage network. n lon n Tnode n Latitude and longitude values, type n Tnode n The type number, where N represents the length of the set Tnode; Tink-topo={Tlink-topo q |Tink-topo q =(id q ,num q ,[topo1,...,topo numq ])},q∈Z,0<q≤Q Here, Tlink-topo represents the set that stores the connection relationships between paths and topological points in the integrated transportation network. q This represents the q-th element in the Tlink-topo set, with id. p num represents the OSM number of the q-th path in the storage network. q This represents the number of topological points contained in the q-th path, [topo1,...,topo...]. numq [] represents the sequence list of OSM numbers of the topology points contained in the q-th path, where Q represents the length of the set Tlink-topo; Tgeom={Tgeom p |Tgeom p =(id p ,node1 p ,node2 p ,type p ,class p ,len p ,lanes p )},p∈Z,0<p≤P Where Tgeom represents the collection storing integrated transportation network path information, Tgeom p This represents the p-th element in Tgeom, with id. p Indicates the OSM number of the p-th path in the storage network, node1 p node2 p Represent the OSM numbers of the start and end points of the p-th path, respectively, and type p Indicates the type number of the p-th path, class p len represents the level number of the p-th path. p lanes represents the length of the p-th path. p Let P represent the number of lanes / tracks / channels of the p-th path, and let P represent the length of the set Tgeom.

9. The method for constructing a regional integrated transportation network based on OSM according to claim 1, characterized in that, In step S9, building the network includes the following sub-steps: S9.1 Initialize a = 1, m = 1, n = 1, p = 1, q = 1; S9.2, Read the roadway collection element w1 a =(id) a ,name a ,list a ,class a ,lanes a ), list a The length is len; S9.3 Reading a list a [0] corresponds to path w1 a Starting point OSM number; Read list a [len-1] corresponds to the path w1 a The OSM number of the destination; read the list sequentially. a [1] to list a [len-2] corresponds to the path w1 a The OSM numbering sequence of topological points; S9.

4. Search the list by matching elements by their IDs within the roadnd collection. a The element corresponding to [0] is nd1 x =(id) x ,lat x ,lon x ), search list a The element corresponding to [len-1] is nd1 y =(id) y ,lat y ,lon y ), search list a [1]...list a The element nd1 corresponding to [len-2] w =(id) w ,lat w ,lon w ...nd1 z =(id) z ,lat z ,lon z ); S9.5, according to the list a Based on the point list order, calculate the distance between adjacent points according to their coordinates and sum them to obtain path w1. a Total length len_w1 a ; S9.

6. Update the set Ttopo and assign values to Ttopo m [id] = list a [0], Ttopo m [lat] = lat x , Ttopo m [lon] = lon x ; Ttopo m+1 [id] = list a [1], Ttopo m+1 [lat] = lat w , Ttopo m+1 [lon] = lon w ;...; Ttopo m+len-2 [id] = list a [len - 2], Ttopo m+len-2 [lat] = lat z , Ttopo m+len-2 [lon] = lon z ; Ttopo m+len-1 [id] = list a [len - 1], Ttopo m+len-1 [lat] = lat y , Ttopo m+len-1 [lon] = lon y ; S9.

7. Update the set Tnode and assign values to Tnode n [id] = list a [0], Tnode n [lat] = lat x , Tnode n [lon] = lon x , Tnode n [type] = 1; Tnode n+1 [id] = list a [len - 1], Tnode n [lat] = lat y , Tnode n+1 [lon] = lon y , Tnode n+1 [type] = 1; S9.8 version of Tlink-topo, download Tlink-topo q [id]Id a ,Tlink-topo q [num]Ylen,{topo1,...,toponum q }6{list a [0]...list a [len-1]} S9.9 p [id]=id a ,Tgeom p [node1]=leaf a [0], Tgeom p [node2]=leaf a [len-1], Tgeom p [type]=1,Tgeom p [class]=class a ,Tgeom p [len]=len_w1 a ,Tgeom p [lanes]=lanes a ; S9.10 Update a = a + 1, m = m + len, n = n + 2, p = p + 1, q = q + 1, return to step S9.2, until the roadway set elements are traversed to the end, and obtain the data of the road sub-network; S9.

11. Initialize b = 1, and use the values ​​obtained in step S9.10 for m, n, p, and q; S9.12, Reading the railway collection element w2 b =(id) b ,name b ,list b ,class b ,lanes b ), list b The length is len; S9.13, Reading a list b [0] corresponds to the path w2 b Starting point OSM number, read list b [len-1] corresponds to the path w2 b The OSM number of the destination is read sequentially from the list. b [1] to list b [len-2] corresponds to the path w2 b The OSM numbering sequence of topological points; S9.

14. Searching for elements in the railnd collection by ID. b The element corresponding to [0] is nd2 x =(id) x ,lat x ,lon x ), search list b The element corresponding to [len-1] is nd2 y =(id) y ,lat y ,lon y ), search list b [1]...list b The element corresponding to [len-2] is nd2 w =(id) w ,lat w ,lon w ...nd2 z =(id) z ,lat z ,lon z ); S9.15, according to the list b Based on the point list order, calculate the distance between adjacent points according to their coordinates and sum them to obtain the path w2. b Total length len_w2 b ; S9.16, update the set Ttopo, assign value to Ttopo m [id] = list b [0], Ttopo m [lat] = lat x , Ttopo m [lon] = lon x ; Ttopo m+1 [id] = list b [1], Ttopo m+1 [lat] = lat w , Ttopo m+1 [lon] = lon w ;...; Ttopo m+len-2 [id] = list b [len - 2], Ttopo m+len-2 [lat] = lat z , Ttopo m+len-2 [lon] = lon z ; Ttopo m+len-1 [id] = list b [len - 1], Ttopo m+len-1 [lat] = lat y , Ttopo m+len-1 [lon] = lon y ; S9.

17. Update the set Tnode and assign values to Tnode n [id] = list b [0], Tnode n [lat] = lat x , Tnode n [lon] = lon x , Tnode n [type] = 1; Tnode n+1 [id] = list b [len - 1], Tnode n [lat] = lat y , Tnode n+1 [lon] = lon y , Tnode n+1 [type] = 2; S9.18 Latest version of Tlink-topo, download Tlink-topo q [id]Id b ,Tlink-topo q [num]Ylen,{topo1,...,toponum q }6{list b [0]...list b [len-1]} S9.19 p [id]=id b ,Tgeom p [node1]=leaf b [0], Tgeom p [node2]=leaf b [len-1], Tgeom p [type]=2,Tgeom p [class]=class b ,Tgeom p [len]=len_w2 b ,Tgeom p [lanes]=lanes b ; S9.20, Update b = b + 1, m = m + len, n = n + 2, p = p + 1, q = q + 1, return to step S9.12, until the elements of the railway set are traversed to the end; S9.

21. Initialize c = 1, and use the values ​​obtained in step S9.20 for m, n, p, and q; S9.22, Reading element w3 from the riverway collection. c =(id) c ,name c ,list c ,class c ,lanes c ), list c The length is len; S9.23, Reading a list c [0] corresponds to path w3 c Starting point OSM number, read list c [len-1] corresponds to the path w3 c The OSM number of the destination is read sequentially from the list. c [1] to list c [len-2] corresponds to the path w3 c The OSM numbering sequence of topological points; S9.

24. Search the list by matching elements by ID in the railnd collection. c The element corresponding to [0] is nd3 x =(id) x ,lat x ,lon x ), search list c The element corresponding to [len-1] is nd3 y =(id) y ,lat y ,lon y ), search list c [1]...list c The element corresponding to [len-2] is nd3 w =(id) w ,lat w ,lon w ...nd3 z =(id) z ,lat z ,lon z ); S9.25, according to the list c Based on the point list order, calculate the distance between adjacent points according to their coordinates and sum them to obtain the path w3. c Total length len_w3 c ; S9.

26. Update the set Ttopo and assign values to Ttopo m [id] = list c [0], Ttopo m [lat] = lat x , Ttopo m [lon] = lon x ; Ttopo m+1 [id] = list c [1], Ttopo m+1 [lat] = lat w , Ttopo m+1 [lon] = lon w ;...; Ttopo m+len-2 [id] = list c [len - 2], Ttopo m+len-2 [lat] = lat z , Ttopo m+len-2 [lon] = lon z ; Ttopo m+len-1 [id] = list c [len - 1], Ttopo m+len-1 [lat] = lat y , Ttopo m+len-1 [lon] = lon y ; S9.

27. Update the set Tnode and assign values to Tnode n [id] = list c [0], Tnode n [lat] = lat x , Tnode n [lon] = lon x , Tnode n [type] = 1; Tnode n+1 [id] = list c [len - 1], Tnode n [lat] = lat y , Tnode n+1 [lon] = lon y , Tnode n+1 [type] = 3; S9.28 Latest version of Tlink-topo, download Tlink-topo q [id]Id b ,Tlink-topo q [num]Ylen,{topo1,...,toponum q }6{list c [0]...list c [len-1]} S9.29 p [id]=id b ,Tgeom p [node1]=leaf c [0], Tgeom p [node2]=leaf c [len-1], Tgeom p [type]=3,Tgeom p [class]=class b ,Tgeom p [len]=len_w3 c ,Tgeom p [lanes]=lanes b ; S9.30, Update c = c + 1, m = m + len, n = n + 2, p = p + 1, q = q + 1, return to step S9.22, until the traversal of the riverway set elements is complete.

10. 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 computer program, it implements the steps of the method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Big data system-based Beidou traffic transportation data fusion method

    CN113157989A

  • Method for extracting OSM map data to quickly construct regional highway network

    CN115905440A