CN116562488B - Method, apparatus, computer device, medium and program product for generating flow guiding island - Google Patents

Method, apparatus, computer device, medium and program product for generating flow guiding island Download PDF

Info

Publication number
CN116562488B
CN116562488B CN202310814154.3A CN202310814154A CN116562488B CN 116562488 B CN116562488 B CN 116562488B CN 202310814154 A CN202310814154 A CN 202310814154A CN 116562488 B CN116562488 B CN 116562488B
Authority
CN
China
Prior art keywords
road
endpoint
shortest path
island
end point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202310814154.3A
Other languages
Chinese (zh)
Other versions
CN116562488A (en
Inventor
肖童星
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310814154.3A priority Critical patent/CN116562488B/en
Publication of CN116562488A publication Critical patent/CN116562488A/en
Application granted granted Critical
Publication of CN116562488B publication Critical patent/CN116562488B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • G06Q10/047Optimisation of routes or paths, e.g. travelling salesman problem
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/29Geographical information databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9537Spatial or temporal dependent retrieval, e.g. spatiotemporal queries

Abstract

The application relates to a method, an apparatus, a computer device, a storage medium and a computer program product for generating a diversion island. The method can be applied to the map field and can be applied to various scenes such as vehicle navigation, artificial intelligence, intelligent traffic, auxiliary driving, vehicle-mounted terminals and the like, and the method comprises the following steps: determining an advanced right-turn road at the guide island, wherein two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively; searching for a shortest path from the second end point to the first end point, the shortest path passing through at least one road; determining a road boundary surrounding the diversion island from the road boundary of the right-turn road and at least one road in advance; determining an intersection between road edges surrounding the diversion island; and according to each intersection point, cutting off the side line of the flow guiding island from the side line of the road surrounding the flow guiding island. By adopting the method, the diversion island boundary can be efficiently and automatically generated by using the existing map road network data in the place lacking high-precision map data.

Description

Method, apparatus, computer device, medium and program product for generating flow guiding island
Technical Field
The present disclosure relates to the field of computer technologies, and in particular, to a method, an apparatus, a computer device, a storage medium, and a computer program product for generating a flow guiding island.
Background
With the rapid development of computer technology and internet technology, virtual map products such as lane-level high-precision maps, ordinary maps, urban road models and the like for simulating urban road conditions are layered endlessly, and convenience is brought to daily travel of people. In some cases, it is necessary to generate road elements using original map road network data, and in particular, in the case where high-precision map data of a part of regions is missing, it is necessary to generate some road elements from existing map road network data of a general map, thereby obtaining an effect similar to a high-precision map where there is no high-precision map data.
A diversion island is a traffic island that is actually present on a road and is provided for guiding a flow of traffic to a specified travel route, and is generally an area surrounded by a right-turn ahead road, an intersection, and a nearby road. For areas lacking high-precision map data, the diversion island is also one of road elements required for generating the virtual map, however, no way for automatically and efficiently generating the diversion island in the virtual map exists at present.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a method, an apparatus, a computer device, a computer-readable storage medium, and a computer program product for generating a diversion island, which are capable of efficiently and automatically generating diversion island edges using existing map road network data in a place where high-precision map data is lacking.
In a first aspect, the present application provides a method for generating a flow guiding island. The method comprises the following steps:
determining an advanced right-turn road at a diversion island, wherein two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively;
searching for a shortest path from the second end point to the first end point, the shortest path passing through at least one road;
determining a road boundary surrounding the diversion island from the road boundary of the advanced right-turn road and the at least one road;
determining an intersection between road edges surrounding the flow island;
and according to each intersection point, cutting off a diversion island boundary line of the diversion island from the road boundary line surrounding the diversion island.
In a second aspect, the application further provides a flow guiding island generation device. The device comprises:
the determining module is used for determining an advanced right-turn road at the guide island, and two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively;
A shortest path searching module, configured to search a shortest path from the second endpoint to the first endpoint, where the shortest path passes through at least one road;
the road edge determining module is used for determining the road edge surrounding the diversion island from the road edges of the right-turn road in advance and the at least one road;
the intersection point determining module is used for determining intersection points among the road edges surrounding the diversion island;
and the intercepting module is used for intercepting the diversion island side lines of the diversion island from the road side lines surrounding the diversion island according to the intersection points.
In one embodiment, the first end point is a start end point of the advanced right turn road and the second end point is an end point of the advanced right turn road.
In one embodiment, the determining module is further configured to obtain road data representing a road in map road network data, where the road data includes shape point data and road attribute data; if the road attribute data comprises a mark for indicating that the corresponding road is an advanced right-turn road, determining that the corresponding road is the advanced right-turn road at the diversion island; and acquiring the first endpoint and the second endpoint from the shape point data of the corresponding road.
In one embodiment, the shortest path search module is further configured to add the second endpoint to the first set; the first set is used for recording the determined end points of the shortest paths to the second end point and the shortest path length of the corresponding shortest paths; the second endpoint is used as a first current source point, another endpoint of a road taking the current source point as an endpoint is obtained according to map road network data, the obtained other endpoints are used as undetermined endpoints to be added into a second set, and undetermined shortest paths and undetermined shortest path lengths from the undetermined endpoints to the second endpoint are recorded; the road taking the current source point as an endpoint does not comprise the advanced right-turn road, and the second set is used for recording undetermined endpoints of the shortest path which is not currently determined to the second endpoint and undetermined shortest path lengths of undetermined shortest paths from the corresponding undetermined endpoints to the second endpoint; taking out the endpoint with the minimum corresponding undetermined shortest path length in the second set, adding the endpoint into the first set as a determined endpoint, recording the shortest path length from the determined endpoint to the second endpoint, and taking the determined endpoint as a new current source point; acquiring another end point of a road taking the new current source point as an end point according to map road network data, and calculating a shortest path length to be determined from the second end point to the other end point through the new current source point according to the shortest path length from the new current source point to the second end point and the distance from the other end point to the new current source point for each other end point; if the other end point is a pending end point existing in the second set, updating the pending shortest path and the pending shortest path length of the pending end point according to the calculated pending shortest path length and the minimum value in the pending shortest path length of the pending end point recorded in the second set; if the other endpoint does not exist in the second set, the other endpoint is added into the second set as a pending endpoint, and a pending shortest path length of the pending endpoint are recorded; and returning to the step of taking out the endpoint with the minimum corresponding undetermined shortest path length in the second set, adding the endpoint into the first set as a determined endpoint, recording the shortest path length from the determined endpoint to the second endpoint, and continuously executing the step of taking the determined endpoint as a new current source point until the new current source point is the first endpoint, and obtaining the shortest path from the second endpoint to the first endpoint.
In one embodiment, the road direction of the right-turn ahead road is a direction from a first end point to the second end point, and the path direction of the shortest path is a direction from the second end point to the first end point after passing through at least one road; the road edge determining module is further used for obtaining a shape point of a left edge of the road from the road edge of the road turning right in advance; if the road direction of the target road through which the shortest path passes is the same as the path direction of the shortest path, acquiring a shape point of a left edge line of the road from the road edge line of the passed target road; and if the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path, acquiring the reverse order shape point of the right edge line of the road from the road edge line of the passed target road.
In one embodiment, the apparatus further comprises: the backtracking module is used for taking the first endpoint as a current endpoint; acquiring a previous endpoint from which the current endpoint in the shortest path originates; determining a target road between the current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes; if the starting end point of the target road is not the previous end point from which the current end point is derived, recording that the road direction of the target road through which the shortest path passes is reverse to the path direction of the shortest path; if the starting end point of the target road is the front end point from which the current end point is derived, recording that the road direction of the target road through which the shortest path passes is the same as the path direction of the shortest path; and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
In one embodiment, the apparatus further comprises: the backtracking module is used for taking the first endpoint as a current endpoint; acquiring a previous endpoint from which the current endpoint in the shortest path originates; determining a target road between the current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes; if the end point of the target road is not the current end point, recording that the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path; if the end point of the target road is the current end point, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path to be the same direction; and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
In one embodiment, the intersection determining module is further configured to generate an edge pair according to a road edge surrounding the diversion island, so as to obtain an edge pair set; and traversing each edge pair in the edge pair set in sequence, if the traversed edge pair has an intersection point, recording the intersection point and the traversed edge pair corresponding to the intersection point until the edge pair in the edge pair set is traversed, and obtaining the intersection point set.
In one embodiment, the intercepting module is further configured to connect, from the second end point, a road edge line around the diversion island end to end, to obtain an ordered shape point set on the road edge line around the diversion island; the intersection points between the road edges belong to the ordered shape point set; determining the path distance from each intersection point to the second endpoint according to the path distance from each shape point indicated by the ordered shape point set to the second endpoint; sequencing the intersection points according to the path distance to obtain sequenced intersection points; adding the first intersection point in the ordered intersection points to the tail part of the ordered intersection points to obtain an ordered intersection point set; traversing any two adjacent intersection points in the ordered intersection point set in sequence, and intercepting a road boundary line between the two adjacent intersection points from the same road boundary line as a diversion island boundary line of the diversion island if the two adjacent intersection points are derived from the same road boundary line in the road boundary line surrounding the diversion island; and when the traversing is finished, obtaining the closed guide island side line of the guide island according to the cut guide island side line of each guide island.
In one embodiment, the apparatus further comprises: the system comprises a flow guiding island adding module, a flow guiding island processing module and a flow guiding island processing module, wherein the flow guiding island adding module is used for adding road data of the flow guiding island into map road network data, the road data comprise flow guiding island side lines of the flow guiding island and path directions of the flow guiding island, and the path directions of the flow guiding island are in the same direction as the road directions of the roads turning right in advance.
In one embodiment, the apparatus further comprises: the rendering module is used for drawing closed diversion island side lines in the virtual map according to the diversion island side lines of the diversion island; and adding preset textures into the drawn closed diversion island side line to obtain the diversion island in the virtual map.
In a third aspect, the present application also provides a computer device. The computer device comprises a memory storing a computer program and a processor which when executing the computer program performs the steps of:
determining an advanced right-turn road at a diversion island, wherein two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively;
searching for a shortest path from the second end point to the first end point, the shortest path passing through at least one road;
Determining a road boundary surrounding the diversion island from the road boundary of the advanced right-turn road and the at least one road;
determining an intersection between road edges surrounding the flow island;
and according to each intersection point, cutting off a diversion island boundary line of the diversion island from the road boundary line surrounding the diversion island.
In a fourth aspect, the present application also provides a computer-readable storage medium. The computer readable storage medium having stored thereon a computer program which when executed by a processor performs the steps of:
determining an advanced right-turn road at a diversion island, wherein two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively;
searching for a shortest path from the second end point to the first end point, the shortest path passing through at least one road;
determining a road boundary surrounding the diversion island from the road boundary of the advanced right-turn road and the at least one road;
determining an intersection between road edges surrounding the flow island;
and according to each intersection point, cutting off a diversion island boundary line of the diversion island from the road boundary line surrounding the diversion island.
In a fifth aspect, the present application also provides a computer program product. The computer program product comprises a computer program which, when executed by a processor, implements the steps of:
determining an advanced right-turn road at a diversion island, wherein two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively;
searching for a shortest path from the second end point to the first end point, the shortest path passing through at least one road;
determining a road boundary surrounding the diversion island from the road boundary of the advanced right-turn road and the at least one road;
determining an intersection between road edges surrounding the flow island;
and according to each intersection point, cutting off a diversion island boundary line of the diversion island from the road boundary line surrounding the diversion island.
In order to obtain the diversion island side line of the diversion island, the method, the device, the computer equipment, the storage medium and the computer program product for generating the diversion island only need to determine the advanced right-turn road at the diversion island, two endpoints of the advanced right-turn road are the first endpoint and the second endpoint respectively, then, the shortest path from the second endpoint to the first endpoint is searched for, the shortest path passes through at least one road, then, the road side line surrounding the diversion island is determined from the advanced right-turn road and the respective road side line of the at least one road, the intersection point between the road side lines surrounding the diversion island is determined, finally, the diversion island side line of the diversion island is cut off from the road side line surrounding the diversion island according to each intersection point, and the diversion island side line of the diversion island can be generated simply, efficiently and high-quality on the basis of the existing map road network data for each diversion island without introducing complex calculation strategies to avoid extreme conditions, the robustness is high, and the calculation resources are saved.
Drawings
FIG. 1 is an application environment diagram of a method for generating a flow guiding island in one embodiment;
FIG. 2 is a flow chart of a method for generating a flow guiding island in one embodiment;
FIG. 3 is a schematic diagram of an intersection in a real scene;
FIG. 4 is a schematic diagram of an intersection at which a right-turn road is advanced in one embodiment;
FIG. 5 is a schematic overall flow diagram of a method of generating a flow guiding island in one embodiment;
FIG. 6 is a flow diagram of searching for a shortest path from a second endpoint to a first endpoint in one embodiment;
FIG. 7 is a flow diagram of searching for a shortest path in one embodiment;
FIG. 8 is a schematic diagram of a simplified road topology;
FIG. 9 is a flow diagram of backtracking from a first endpoint and creating a shortest closed path in one embodiment;
FIG. 10 is a schematic flow diagram of backtracking and creating a shortest closed path in one embodiment;
FIG. 11 is a schematic diagram of a road and a path direction along which a shortest closed path passes in one embodiment;
FIG. 12 is a flow diagram of determining a link edge for each link on the shortest closed path in one embodiment;
FIG. 13 is a schematic illustration of road edges for each road on the shortest closed path as determined in one embodiment;
FIG. 14 is a flow diagram of calculating intersections between road edges in one embodiment;
FIG. 15 is a schematic view of one embodiment of connecting road edges end to end in sequence;
FIG. 16 is a schematic illustration of the intersection between road edges calculated in one embodiment;
FIG. 17 is a schematic flow diagram of determining a flow island edge of a flow island in one embodiment;
FIG. 18 is a schematic diagram of a closed flow island edge of a flow island in one embodiment;
FIG. 19 is a block diagram of a flow island generation device in one embodiment;
fig. 20 is an internal structural view of a computer device in one embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application will be further described in detail with reference to the accompanying drawings and examples. It should be understood that the specific embodiments described herein are for purposes of illustration only and are not intended to limit the present application.
The method for generating the flow guiding island can be applied to various virtual map products such as high-precision virtual maps, ordinary-precision maps, urban road models and the like, and can be used for visually presenting road areas of the flow guiding island. The method for generating the diversion island can be understood as a compiling process of the map original data, namely, the method is used as a link for starting and stopping, and the original map data is processed and treated to generate a file or data which is more compact and easier to use. The compiled data may be provided to upper layers (e.g., map navigation, positioning techniques, map rendering, etc.) for invocation. The generated closed diversion island boundary of the diversion island can provide the base map data of the diversion island for the navigation engine, enhance the visual effect of the navigation interface, provide data support for the automatic driving under the condition of making a decision at the intersection or using an electronic map to make a driving decision, such as a driver and the like, prevent the vehicle from driving beyond the range of the advanced right-turn road or the diversion island, reduce the probability of occurrence of accidents at the advanced right-turn road or the diversion island, and improve the safety of the automatic driving.
The flow guiding island generation method at least relates to the following technologies of intelligent traffic systems, cloud computing, computer vision technology and the like. For example, road edges of roads can be generated through map road network data in an electronic map, and closed diversion island edges of diversion islands can be generated by utilizing the road edges. In some examples, intelligent transportation systems may also be utilized to provide intelligent navigation route services for driving objects such as drivers based on location information, profiles, etc. of the diversion islands. Or, the terminal equipment can also utilize computer vision technology and the like to display the high-precision three-dimensional image corresponding to the diversion island more truly and clearly in the navigation application page or the map page.
The intelligent transportation system (intelligent traffic system, ITS), also called intelligent transportation system (Intelligent Transportation System), is a comprehensive transportation system which uses advanced scientific technology (information technology, computer technology, data communication technology, sensor technology, electronic control technology, automatic control theory, operation study, artificial intelligence, etc.) effectively and comprehensively for transportation, service control and vehicle manufacturing, and enhances the connection among vehicles, roads and users, thereby forming a comprehensive transportation system for guaranteeing safety, improving efficiency, improving environment and saving energy.
With research and progress of artificial intelligence technology, research and application of artificial intelligence technology are being developed in various fields, such as common smart home, smart wearable devices, virtual assistants, smart speakers, smart marketing, unmanned, automatic driving, unmanned aerial vehicle, robot, smart medical treatment, smart customer service, car networking, smart transportation, etc., and it is believed that with the development of technology, artificial intelligence technology will be applied in more fields and become more and more important value. The technologies of intelligent traffic, internet of vehicles, automatic driving, unmanned driving and the like generally comprise technologies of high-precision maps, environment perception, behavior decision, path planning, motion control and the like, and have wide application prospects at present.
Computer Vision (CV) is a science of researching how to make a machine "look at", and more specifically, to replace a human eye with a camera and a computer to perform machine vision such as recognition, trace tracing and measurement on a target, and further perform graphic processing, so that the computer is processed into an image more suitable for human eye observation or transmission to an instrument for detection. As a scientific discipline, computer vision research-related theory and technology has attempted to build artificial intelligence systems that can acquire information from images or multidimensional data. Computer vision technologies typically include image processing, image recognition, image semantic understanding, image retrieval, OCR, video processing, video semantic understanding, video content/behavior recognition, three-dimensional object reconstruction, 3D technology, virtual reality, augmented reality, synchronous positioning and mapping, autopilot, intelligent transportation, etc., as well as common biometric technologies such as face recognition, fingerprint recognition, etc.
At present, high-precision map data is mainly used for lane-level navigation, however, because the coverage area of a high-precision map is limited, for example, some cities have high-precision map data outside five rings, and the five rings do not have the high-precision map data. In order to obtain an effect similar to a high-precision map where there is no high-precision map data, some road elements are required to be generated by an algorithm according to a standard-precision map (namely a common navigation map), a diversion island at a right-turn road is advanced, and the diversion island is required to be generated through original map road network data as one of the road elements.
A diversion island is a traffic island that is actually present on a road and is provided for guiding a flow of traffic to a specified travel route, and is generally an area surrounded by a right-turn ahead road, an intersection, and a nearby road. For areas lacking high-precision map data, the diversion island is also one of road elements required for generating the virtual map, however, no way for automatically and efficiently generating the diversion island in the virtual map exists at present.
In view of the above, in order to solve the above-mentioned technical problems, the present embodiment provides a method for generating a diversion island, which only needs to determine an advanced right-turn road at the diversion island, where two endpoints of the advanced right-turn road are a first endpoint and a second endpoint, respectively, then searches for a shortest path from the second endpoint to the first endpoint, the shortest path passes through at least one road, then determines a road edge surrounding the diversion island from respective road edges of the advanced right-turn road and the at least one road, determines an intersection point between the road edges surrounding the diversion island, and finally cuts out diversion island edges of the diversion island from the road edges surrounding the diversion island according to each intersection point.
The method for generating the flow guiding island can be applied to an application environment shown in fig. 1. Wherein the terminal 102 communicates with the server 104 via a network. The data storage system may store data that the server 104 needs to process, such as raw road data for an advanced right-turn road at the diversion island, as well as raw road data for other roads near the advanced right-turn road, as well as road edge data for advanced right-turn roads, road edge data for other roads near the advanced right-turn road, and so forth. The data storage system may be integrated on the server 104 or may be located on the cloud or other servers.
In one embodiment, the method for generating the diversion island may be implemented by the server 104, the server 104 may determine an advanced right-turn road at the diversion island, two end points of the advanced right-turn road are a first end point and a second end point respectively, then the server 104 searches for a shortest path from the second end point to the first end point, the shortest path passes through at least one road, the server 104 determines a road edge surrounding the diversion island from respective road edges of the advanced right-turn road and the at least one road, then the server 104 may determine an intersection point between the road edges surrounding the diversion island, and finally the server 104 may cut out the diversion island edge of the diversion island from the road edge surrounding the diversion island according to each intersection point.
In some embodiments, the terminal 102 may have installed and running an application supporting a map service, and the server 104 may be a server that provides services for the application, based on which the terminal 102 interacts with the server 104. The application may be a map application, a navigation application, a positioning application, or any application that supports displaying intersections, such as a travel application, a game application that requires invoking and displaying diversion islands on roads, etc. It will be appreciated that, in some embodiments, the terminal may also generate a diversion island edge, and the execution subject for generating the diversion island edge is not limited in the embodiments of the present application.
The terminal 102 may be, but not limited to, various personal computers, notebook computers, smart phones, tablet computers, internet of things devices, portable wearable devices, and the internet of things devices may be smart speakers, smart televisions, smart air conditioners, smart vehicle devices, and the like, the smart vehicle devices may be vehicle navigation terminals, vehicle computers, and the like, and the portable wearable devices may be smart watches, smart bracelets, headsets, and the like. The server 104 may be an independent physical server, a server cluster or a distributed system formed by a plurality of physical servers, or a cloud server or a server cluster for providing cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, content delivery networks (content delivery network, CDN), basic cloud computing services such as big data and artificial intelligence platforms, and the like.
In one embodiment, as shown in fig. 2, a method for generating a flow guiding island is provided, and the method is applied to the server 104 in fig. 1 for illustration, and includes the following steps:
step 202, determining a right-turn ahead road at the guiding island, wherein two endpoints of the right-turn ahead road are a first endpoint and a second endpoint respectively.
The guide island is a traffic island provided on a road for guiding a traffic flow to a specified travel route, and is generally an area surrounded by a right-turn road, an intersection, and a nearby road. Referring to fig. 3, a region marked with a dotted circle in fig. 3 is a diversion island in a real scene. The advanced right-turn road is an advanced right-turn lane arranged for shunting the traffic of straight-going vehicles and right-turn vehicles, so that the situation that the intersection of the right-turn is blocked due to excessive straight-going vehicles is avoided, and the advanced right-turn road can improve the traffic efficiency. Referring to fig. 3, the area indicated by the arrow in fig. 3 is the advanced right-turn road in the real scene.
For elements on roads in a real scene, corresponding data are represented in map road network data. For example, in map road network data of a general map, in order to establish a connection relationship between roads, there is a concept of end points, each road records two end points thereof, and two adjacent roads in front and back are associated with the same end point, so that the connection relationship of the two roads can be established. In map road network data of a general map, a road is generally represented by a line segment (hereinafter referred to as link) having no width, and two end points of the road, one of which is a start end point and the other of which is an end point. The road further has a road direction, which is a direction from a start end point to an end point, and represents a line segment of the road, and substantially corresponds to a plurality of continuous shape points, which are an ordered set of shape points from the start end point, which is a shape point, through a plurality of intermediate shape points, to the end point. In addition, at least two line segments (links) meet to form a node, that is, a common end point of the at least two line segments may be denoted as a node, where the node represents an intersection formed by the intersection of the roads indicated by the at least two line segments.
In the above manner, each road in the map road network data may be represented by road data, where the road data includes shape point data and road attribute data, i.e., the road identifier binds the corresponding shape point data and road attribute data. The shape point data may include a series of coordinate data (point series), that is, shape points forming the road, the road attribute data includes a node identifier to which the road is connected, other roads to which the road is connected, a road width, a road class, a road name, a road lane number, a start end point, an end point, and the like of the road, a mark whether the corresponding road is a right-turn ahead road, road edge data of the corresponding road, and the like.
Specifically, for a road in the map road network data, if the road belongs to a road turning right in advance, the server may determine that a diversion island may exist near the road (also referred to as a right turning diversion island), and then the server may execute the diversion island generating method provided in the embodiment of the present application to generate a diversion island edge for the road turning right in advance based on the road data of the road and other roads near the road in the map road network data. That is, any road turning right in advance can be used as the road on which the diversion island side line is to be generated.
In the method for generating the diversion island, considering that the advanced right-turn road is one of the roads surrounding the diversion island, a shortest closed path passing through the advanced right-turn road and the intersection at the diversion island can be searched out from the advanced right-turn road, corresponding side lines of all the roads are taken out along the advancing direction of the shortest closed path, the side lines are sequentially and smoothly connected according to the sequence of the roads, and a complete closed smooth curve is obtained, namely, the closed side lines of the diversion island are generated, namely, the embodiment of the application can calculate the coordinates of all the shape points on the boundary of the diversion island. For this, the server needs to acquire two endpoints of the right-turn ahead road, which are a first endpoint and a second endpoint, respectively.
Optionally, the first end point is a start end point of the advanced right-turn road, and the second end point is an end point of the advanced right-turn road, so that a shortest closed path can be obtained from the end point of the advanced right-turn road, through at least one other road, through the start end point of the advanced right-turn road, through the advanced right-turn road, and then to the end point, and the path direction of the shortest closed path is the same as the road direction of the advanced right-turn road.
Of course, in other embodiments, the first end point may be the end point of the advanced right-turn road, and the second end point may be the start end point of the advanced right-turn road, so that a shortest closed path may be obtained from the start end point of the advanced right-turn road, through at least one road, through the end point of the advanced right-turn road, through the advanced right-turn road in reverse order, and then to the start end point, where it is seen that the path direction of the shortest closed path is opposite to the road direction of the advanced right-turn road.
For simplicity, in the following description of the present application, the direction of the road ahead of the right-turn road is the direction from the first end point to the second end point, where the first end point is the start end point of the road ahead of the right-turn road, the second end point is the end point of the road ahead of the right-turn road, and the path direction of the shortest closed path is the same direction as the direction of the road ahead of the right-turn road, i.e., the path direction of the shortest closed path is the direction from the second end point to the first end point after passing through at least one road, and then from the first end point to the second end point.
In one embodiment, determining an advanced right turn road at a diversion island includes: acquiring road data representing a road in map road network data, wherein the road data comprises shape point data and road attribute data; if the road attribute data comprises a mark for indicating that the corresponding road is an advanced right-turn road, determining that the corresponding road is the advanced right-turn road at the diversion island; the method further comprises the steps of: the first end point and the second end point are acquired from shape point data of the corresponding road.
In this embodiment, the server may determine the advanced right turn road at the diversion island according to the road data of the road, that is, if the road data of the road indicates that the road is the advanced right turn road, the server may generate the diversion island located near the road based on the road.
Fig. 4 is a schematic diagram of an intersection where a right-turn road is located in advance in one embodiment. Referring to fig. 4, fig. 4 includes two intersections, which are a single-node intersection on the left side and a composite-node intersection on the right side, respectively, the single-node intersection being an intersection formed by connecting 3 roads to the same end point, and a plurality of roads, the composite-node intersection being a "large intersection" formed by a plurality of nodes. The road pointed by the arrow in fig. 4 is a right-turn ahead road, and fig. 4 also shows a start end point (denoted as sNode) and an end point (denoted as eNode) of the right-turn ahead road.
Step 204, searching for a shortest path from the second end point to the first end point, the shortest path passing through at least one road.
In this embodiment of the present invention, the server searches, based on the map road network data, for a shortest path from the second end point to the first end point, where the shortest path passes through at least one road, and the shortest path and the road turning right in advance may form a shortest closed path, and based on a road edge of the road included in the shortest closed path, a guiding island edge of the guiding island may be obtained.
Specifically, the server searches for the shortest path from the second end point to the first end point based on the map network data, and aims to find a shortest path from the second end point to the first end point without going through the advanced right-turn road. The server may search for a shortest path from the second endpoint to the first endpoint without traversing the advanced right turn road using a shortest path algorithm, such as Dijkstra's algorithm, bellman-Ford algorithm, floyd algorithm, or SPFA algorithm, etc. In addition, in order to improve the searching efficiency, the server may also use the data structure of the index heap to efficiently modify the element in the index heap, where the index heap is an optimized priority queue, and in this embodiment, a certain target element in the index heap may be found by the index heap.
As mentioned above, each road has a road direction, and in searching for the shortest path, the server may also record whether the road was passed through in the forward direction or in the reverse direction. Under the condition that the path direction of the shortest closed path is in the same direction as the path direction of the advanced right-turn road, and the path direction of the advanced right-turn road is the direction from the first end point to the second end point, the path direction of the shortest path is the direction from the second end point to the first end point after passing through at least one road, at this time, if the shortest path is passed through the road in the forward direction, the path is the same as the shortest path, if the shortest path is passed through the road in the reverse direction, the path is opposite to the shortest path, and the server can record whether the path direction of the passed path is consistent with the path direction of the shortest path, so that the path edge line close to the diversion island can be accurately determined later.
After obtaining the shortest path, the server forms the shortest closed path with the advanced right-turn path. Optionally, the server may further determine whether the shortest closed path passes through an intersection where the advanced right-turn road is located, if the shortest closed path does not pass through the intersection, it indicates that the shortest closed path found is unreasonable, the shortest closed path should not be used to generate the flow guiding island, if the shortest closed path passes through the intersection, it indicates that the shortest closed path is reasonable, and the flow guiding island may be continuously generated based on the shortest closed path. Specifically, the server may determine whether an end point of a road in the road traversed by the shortest closed path is a certain intersection node, if so, the shortest closed path is reasonable, otherwise, the shortest closed path is reasonable and unreasonable, and cannot be used for generating the diversion island. Specifically, the attribute data of each end point of the traversed road is traversed, and whether the attribute data of the end point contains a flag indicating that the end point is an intersection node is queried, and if so, it can be determined that the shortest closed path has traversed the intersection.
And 206, determining the road side line surrounding the diversion island from the road side lines of the right-turn road and at least one road in advance.
In the map road network data, each road is usually represented by a line segment without width, and in order to generate a road fitting the actual situation, the line segment without width needs to be widened into a road surface with a certain width, so as to obtain a road edge of the road. The basis for the widening can be road attribute data of the road, such as road grade, number of lanes and the like, the lane grade can be, for example, a trunk road, a secondary road, a branch road and the like, and the lane grade can also be, for example, a primary road, a secondary road, a tertiary road, a quaternary road and the like. The computer equipment widens each road into a corresponding road surface according to the road width, and the road surface is provided with two road edges. In some embodiments, the road attribute data for the roads may directly include a corresponding road width by which the computer device widens each road to a corresponding road surface. In some embodiments, the road width of each road may also take the same value. It can be understood that the road surface formed by widening each road comprises a left line and a right line. The road width for widening the road may be one side road width, or may be a road width common to both sides, and the road widths of both sides may be the same or different.
After searching the shortest path, the server can determine the road edge surrounding the diversion island from the road edges of the right-turn road and at least one road in advance. Because the diversion island is positioned at the left side of the advanced right-turn road, when the path direction of the shortest closed path is in the same direction as the road direction of the advanced right-turn road and the road direction of the advanced right-turn road is the direction from the first end point to the second end point, the path direction of the shortest path is the direction from the second end point to the first end point after passing through at least one road, and the server can take out the left edge line of the road of the advanced right-turn road and the edge line positioned at the left side of the shortest path in the respective road edge lines of the at least one road as the road edge line surrounding the diversion island.
At step 208, intersections between road edges surrounding the flow island are determined.
Specifically, the intersection between road edges is a common shape point on different road edges. The server can connect the road edges surrounding the diversion island end to end in sequence in the whole shortest closed path, so as to obtain the intersection point between the road edges. It will be appreciated that if there is an intersection of two road edges, the intersection may be an end point of a road edge or a shape point between two end points of a road edge.
And 210, cutting off the side line of the diversion island from the side line of the road surrounding the diversion island according to each intersection point.
The intersection points determined by the server are points positioned on the shortest closed path, the distance from each point to the second endpoint is the path distance, the server can sort the intersection points according to the sequence from small to large or the sequence from large to small of the path distance from each intersection point to the second endpoint, the intersection point sequence is obtained according to the sorting result, the road boundary between every two adjacent intersection points in the intersection point sequence is the guide island boundary of the guide island, and the server can cut the guide island boundary of the guide island from the road boundary around the guide island.
Of course, the server may determine the path distance from each intersection point to the first endpoint, sort the intersection points according to the order from small to large or the order from large to small, and obtain an intersection point sequence according to the sorting result, where the road edge between every two adjacent intersection points in the intersection point sequence is the guide island edge of the guide island, and the server may cut the guide island edge of the guide island from the road edge surrounding the guide island.
Fig. 5 is a schematic overall flow chart of a method for generating a flow guiding island in one embodiment. Referring to fig. 5, the method comprises the steps of:
step 502, acquiring an advanced right-turn road and a start endpoint and an end endpoint of the advanced right-turn road;
step 504, calculating the shortest path from the end point to the start point without passing through the advanced right-turn road, and recording whether the road passing through the shortest path and the road direction of the passing road are opposite to the path direction of the shortest path;
step 506, judging whether the shortest closed path formed by the shortest path and the road turning right in advance is reasonable or not, if yes, executing step 508, if not, returning to the air, and ending the flow;
step 508, calculating the corresponding road edge of each road on the shortest path;
and 510, sequentially and smoothly connecting the road edges to obtain the closed edge of the diversion island.
The flow ends.
According to the method for generating the guide island, in order to obtain the guide island side line of the guide island, only the advance right-turning road at the guide island is needed to be determined, two end points of the advance right-turning road are the first end point and the second end point respectively, then the shortest path reaching the first end point from the second end point is searched, the shortest path passes through at least one road, the road side line surrounding the guide island is determined from the road side lines of the advance right-turning road and the at least one road, the intersection point between the road side lines surrounding the guide island is determined, and finally the guide island side lines of the guide island are cut out from the road side lines surrounding the guide island according to the intersection points.
In one embodiment, as shown in fig. 6, step 204, searching for the shortest path from the second endpoint to the first endpoint includes:
step 602, adding a second endpoint to the first set; the first set is used for recording the determined end point of the shortest path to the second end point and the shortest path length of the corresponding shortest path;
step 604, taking the second endpoint as the first current source point, obtaining another endpoint of the road taking the current source point as an endpoint according to the map network data, adding the obtained other endpoints as undetermined endpoints into a second set, and recording undetermined shortest paths from the undetermined endpoints to the second endpoint and undetermined shortest path lengths; the road taking the current source point as an endpoint does not comprise a right-turn road in advance, and the second set is used for recording undetermined endpoints of the shortest path which is not determined to the second endpoint at present and undetermined shortest path lengths of undetermined shortest paths from the corresponding undetermined endpoints to the second endpoint;
step 606, the endpoint with the minimum corresponding undetermined shortest path length in the second set is taken out and added into the first set as the determined endpoint, the shortest path length from the determined endpoint to the second endpoint is recorded, and the determined endpoint is taken as a new current source point;
As mentioned previously, the second set may be constructed using a data structure such as an index heap to efficiently determine the end point of the second set where the respective shortest path length to be determined is the smallest.
Step 608, obtaining another end point of the road using the new current source point as an end point according to the map road network data, and for each other end point, calculating a pending shortest path length from the second end point to the other end point via the new current source point according to the shortest path length from the new current source point to the second end point and the distance from the other end point to the new current source point;
step 610, if the other endpoint is a pending endpoint already existing in the second set, updating the pending shortest path and the pending shortest path length of the pending endpoint according to the calculated minimum value of the pending shortest path length of the pending endpoint and the pending shortest path length of the pending endpoint recorded in the second set;
step 612, if the other endpoint does not exist in the second set, adding the other endpoint as the pending endpoint to the second set, and recording the pending shortest path and the pending shortest path length of the pending endpoint;
after step 610 and step 612, the step 606 is returned to continue execution, i.e. the endpoint with the minimum corresponding undetermined shortest path length in the second set is fetched and added as the determined endpoint to the first set, the shortest path length from the determined endpoint to the second endpoint is recorded, the step of taking the determined endpoint as the new current source point is continued to execute until the new current source point is the first endpoint, and the shortest path from the second endpoint to the first endpoint is obtained.
The shortest path algorithm is adopted in the embodiment, the shortest path from the second endpoint to the first endpoint can be accurately and efficiently found by searching along the road from the second endpoint until the first endpoint is searched, the shortest path does not pass through the advanced right-turn road from the second endpoint to the first endpoint, and the shortest path and the advanced right-turn road form a shortest closed path.
FIG. 7 is a flow diagram of searching for a shortest path in one embodiment. Referring to fig. 7, after the flow starts, the method includes the steps of:
step 701, acquiring a right-turn road in advance;
step 702, acquiring a start endpoint sNode and an end endpoint eNode of a right turn road in advance;
step 703, judging whether the start endpoint and the end endpoint are the same;
if not, continuing to execute step 704, if yes, returning to the blank, and ending the flow;
step 704, creating a second set; can be noted as index Heap;
the second set is used for recording the undetermined endpoint of the shortest path which is not determined to the end endpoint eNode at present and the undetermined shortest path length of the undetermined shortest path from the corresponding undetermined endpoint to the end endpoint eNode;
step 705, creating a first set; can be marked as a determineset;
the first set is used for recording the shortest path length of the determined end point and the corresponding shortest path of the shortest path determined to the end point eNode;
Step 706, creating an element corresponding to the ending endpoint eNode; can be recorded as startElement;
each element records the following information:
currNode, i.e., endpoint;
from, the element corresponding to the last endpoint of the endpoint;
length, i.e. the shortest path length from the end point to the end point eNode;
common road, i.e., the road between the endpoint and the endpoint that is immediately preceding the endpoint.
Step 707, adding the element startElement corresponding to the ending endpoint eNode into the second set;
step 708, determining whether the second set is non-empty;
if yes, go to step 709, if not, return to empty, and the flow ends;
step 709, the endpoint with the minimum length of the corresponding undetermined shortest path in the second set is fetched;
the end point with the minimum length of the corresponding undetermined shortest path is the current source point currNode;
step 710, adding the fetched endpoint as a determined endpoint to the first set;
i.e. adding the element currElement corresponding to the current source point currNode into the first set.
Step 711, acquiring the current source point currNode;
step 712, determining whether the current source point currNode is the starting endpoint sNode;
if not, go to step 714; if yes, step 713 is executed, and after the element currElement corresponding to the current source point currNode is returned, the process is ended.
Step 714, obtaining the road related roads connected with the current source point currNode, and filtering out the road turning right in advance;
step 715, traversing the relatedRoads;
step 717, the currently traversed road is noted as a related road;
step 717, obtaining the other endpoint other than the current source point currNode in the two endpoints of the related road;
step 718, creating an element other element corresponding to the other endpoint other node;
step 719, judging whether the first set contains an element other element corresponding to the other endpoint other node;
if yes, go back to step 715, traverse the next releatedRoad in the releatedRoads;
if not, go to step 720;
step 720, calculating the road length roadLength of the currently traversed road relatedRoad;
step 721, determining whether the second set includes an element other element corresponding to the other endpoint other node;
if not, go to step 722, if yes, go to step 726;
step 722, calculating the shortest path length other element length from the end point eNode to the other end point currNode via the current source point currNode according to the shortest path length currelement length from the current source point currNode to the end point eNode and the road length roadLength from the other end point other node to the current source point currNode;
That is, let other element.length=current element.length+roadlength;
step 723, recording that the other endpoint other node comes from the current source point currNode;
namely, the from field of the other element is recorded as the current element corresponding to the current source point current node;
step 724, adding the element other element corresponding to the other endpoint other node into the second set;
step 725, recording that the common road field of the element corresponding to the other endpoint other node is the currently traversed road related road;
i.e. the other element. Common road = related road;
after step 725, return to step 715 to traverse the next releatedRoad in the releatedRoads.
Step 726, obtaining an element Heapotherele corresponding to the other endpoint other node in the second set;
step 727, calculating the undetermined shortest path length from the end endpoint eNode to the other endpoint currNode via the current source point currNode according to the shortest path length currelement length from the current source point currNode to the end endpoint eNode and the road length roadLength from the other endpoint currNode to the current source point currNode, namely currelement length+roadlength; judging whether the length of the undetermined shortest path of the other endpoint other node recorded in the second set is larger than the calculated length of the undetermined shortest path;
That is, it is judged whether HeapotherEle. Length is greater than currelement. Length+roadLength;
if yes, go to step 728, if not, return to step 715 to traverse the next releatedRoad in the releatedRoads.
Step 728, updating the undetermined shortest path and undetermined shortest path length of the other endpoint other node recorded in the second set according to the current element.
That is, let heatother. Length=currelement. Length+roadlength;
step 729, recording that the other endpoint other node comes from the current source point currNode;
namely, the from field of the HeapOtherEle is recorded as the current element corresponding to the current source point current node;
step 730, recording that the common road field of the element corresponding to the other endpoint other node is the currently traversed road related road;
that is, heapotherele.common road=releatedroad.
After step 730, returning to step 715, the next releatedRoad in the releatedRoads is traversed.
The search algorithm is described below with a specific example. As shown in fig. 8, a schematic diagram of a simplified road topology is shown. Referring to fig. 8, the road topology includes a forward right-turn road BA, a road CA, a road BC, a road DC, a road BD, a road DE, a road DF, and a road FE, and the connection relationship, the road direction, and the road length between the roads can be illustrated by fig. 8, for example, the forward right-turn road BA is connected to the road CA by an end point a, the road CA is connected to the road BC by an end point C, the road length of the forward right-turn road BA is 6, and the road length of the road CA is 3. According to the above description, the starting end point of the advanced right-turn road BA is B, the ending end point is a, and the shortest path search is performed by searching a shortest path from the ending end point a to the starting end point B based on the road topology map, and the shortest path and the advanced right-turn road BA form a shortest closed path. Based on the road topology map, the process of searching for the shortest path is as follows:
Firstly, acquiring a forward right-turn channel BA, a start endpoint B and an end endpoint A, continuously executing under the condition that the start endpoint and the end endpoint are different, creating a second set, namely an index heap, creating a first set, namely a determinaminset, creating an element corresponding to the end endpoint A, recording the element corresponding to the end endpoint A as a startElement, adding the element startElement corresponding to the end endpoint A into the second set, judging that the second set is not empty, at the moment, only comprising one element, namely the startElement, taking out the element corresponding to the endpoint with the minimum corresponding to the undetermined shortest path length in the second set, taking the element taken out as the element current corresponding to the current source point current, adding the element current element into the first set, and adding the element corresponding to the end endpoint A into the first set. Obtaining a current source point, namely an end endpoint A, continuously obtaining a road related road connected with the end endpoint A under the condition that the current source point currNode, namely the end endpoint A, is not an initial endpoint B, including a road BA and a road CA, filtering out an advanced right-turning road BA from the road related road, traversing the road in the related road, namely the road CA, obtaining another endpoint other than the current source point, namely the end endpoint A, namely an endpoint C, in two endpoints of the road CA, and creating an element other element corresponding to the endpoint C; judging that the first set does not contain the element other element corresponding to the endpoint C, calculating the road length roadLength=3 of the currently traversed road CA, judging that the second set does not contain the element other element corresponding to the endpoint C, calculating the element other element corresponding to the endpoint C, namely, other element, length=current element, length+roadLength=0+3=3, and recording the length field record of the element other element corresponding to the endpoint C as 3; the from field of the other element is recorded as a current element, namely an element corresponding to the end point A is ended; the other element is added to the second set index Heap and the common road field of the other element is recorded as relatedRoad, i.e. road CA.
Then, the road in the related roads is continuously traversed, at the moment, the completion of the traversal is confirmed, whether the second set index Heap is non-empty is continuously judged, at the moment, only one element, namely the element corresponding to the endpoint C is included, and the endpoint C is continuously searched as the current source point. Under the condition that a current source point currNode, namely an endpoint C, is not an initial endpoint B, continuously acquiring a road related Roads connected with the endpoint C, including a road BC, a road DC and a road EC, filtering out an advanced right-turning road BA from the road BC, traversing the road in the related Roads, wherein the currently traversed road is the road DC, acquiring another endpoint other than the current source point, namely the endpoint C, namely an endpoint D in two endpoints of the road DC, and creating an element other element corresponding to the endpoint D; judging that the first set does not contain the element other element corresponding to the endpoint D, calculating the road length roadLength=3 of the currently traversed road DC, judging that the second set does not contain the element other element corresponding to the endpoint D, calculating the element other element corresponding to the endpoint D, namely, other element, length=current element, length+roadLength=3+3=6, and recording the length field of the element other element corresponding to the endpoint D as 6; the from field of the other element is recorded as a current element, namely an element corresponding to an end point C is ended; the other element is added to the second set index Heap and the common road field of the other element is recorded as relatedRoad, i.e. road DC.
Then, the traversal of the roads in the relatedRoads is continued, at which point the incomplete traversal is confirmed. The currently traversed road is a road EC, another endpoint other than the current source point, namely endpoint C, in the two endpoints of the road EC is obtained, namely endpoint E, and an element other element corresponding to the endpoint E is created; judging that the first set does not contain the element other element corresponding to the end point E, calculating the road length roadLength=4 of the currently traversed road EC, judging that the second set does not contain the element other element corresponding to the end point E, calculating the element other element corresponding to the end point E, namely, other element, length=current element, length+roadLength=3+4=7, and recording the length field record of the element other element corresponding to the end point E as 7; the from field of the other element is recorded as a current element, namely an element corresponding to an end point C is ended; the other element is added to the second set index Heap and the common road field of the other element is recorded as the relatedRoad, i.e. road EC.
Then, the traversal of the roads in the relatedRoads is continued, at which point the incomplete traversal is confirmed. The currently traversed road is a road BC, another endpoint other than the current source point, namely endpoint C, in two endpoints of the road BC is obtained, namely endpoint B, and an element other element corresponding to the endpoint B is created; judging that the first set does not contain the element other element corresponding to the endpoint B, calculating the road length roadLength=2 of the currently traversed road BC, judging that the second set does not contain the element other element corresponding to the endpoint B, calculating the element other element corresponding to the endpoint B, namely, other element, length=current element, length+roadLength=3+2=5, and recording the length field record of the element other element corresponding to the endpoint B as 5; the from field of the other element is recorded as a current element, namely an element corresponding to an end point C is ended; the other element is added to the second set index Heap and the common road field of the other element is recorded as relatedRoad, i.e. road BC.
Then, the road in the related roads is continuously traversed, at the moment, the completion of the traversal is confirmed, whether the second set index Heap is not empty is continuously judged, at the moment, the elements corresponding to the endpoint D, E, B are included, the first queue element of the second set index Heap is taken out, the taken element is taken as the element current element corresponding to the current source point currNode, the element current element is added into the first set, the current source point, namely the initial endpoint B, at the moment, the current source point currNode, namely the initial endpoint B, is returned, the element corresponding to the initial endpoint B is obtained, and the flow is ended. Accordingly, the end points through which the shortest path from the end point a to the start point B is searched are in order: end endpoint a→endpoint c→start endpoint B.
In one embodiment, the road direction of the right-turn ahead road is a direction from the first end point to the second end point, and the path direction of the shortest path is a direction from the second end point to the first end point after passing through at least one road; that is, when the road direction of the right-turn ahead road is a direction from the first end point to the second end point, the first end point is a start end point of the right-turn ahead road, the second end point is an end point of the right-turn ahead road, and the path direction of the shortest closed path is the same direction as the road direction of the right-turn ahead road, that is, the path direction of the shortest closed path is a direction from the second end point to the first end point after passing through at least one road and then from the first end point to the second end point, step 206 of determining a road edge surrounding the diversion island from the road edges of the right-turn ahead road and the at least one road, includes:
Acquiring a shape point of a left line of a road from the line of the road turning right in advance;
if the road direction of the target road through which the shortest path passes is the same as the path direction of the shortest path, the shape point of the left edge line of the road is obtained from the edge line of the road of the passed target road;
and if the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path, acquiring the reverse order shape point of the right edge line of the road from the edge line of the road of the passed target road.
Specifically, the road direction of the advanced right-turn road is the same direction as the path direction of the shortest path, and the server can acquire the left line of the advanced right-turn road as one of the road edges surrounding the diversion island; for a target road through which the shortest path passes, acquiring a left road edge or a right road edge of the target road according to the condition that the road direction of the target road and the path direction of the shortest path are in the same direction or opposite directions, wherein the left road edge or the right road edge is taken as one of road edges surrounding the diversion island, and specifically, if the road direction of the target road through which the shortest path passes is in the same direction as the path direction of the shortest path, acquiring a shape point of the left road edge from the road edges of the target road through which the shortest path passes; and if the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path, acquiring the reverse order shape point of the right edge line of the road from the edge line of the road of the passed target road.
In one embodiment, as shown in fig. 9, after the search reaches the first end point from the second end point, the method further includes a process of backtracking from the first end point and creating a shortest closed path, the process including the steps of:
step 902, taking the first endpoint as a current endpoint;
step 904, obtaining the previous endpoint from which the current endpoint in the shortest path originates;
step 906, determining a target road between the current endpoint and the previous endpoint from which the current endpoint is connected, through which the shortest path passes;
step 908, if the starting point of the target road is not the previous point from which the current point originates, recording that the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path;
step 910, if the starting end point of the target road is the previous end point from which the current end point originates, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path in the same direction;
step 912, after taking the previous endpoint from which the current endpoint originated as the new current endpoint, the step 904 returns to the step of obtaining the previous endpoint from which the current endpoint originated in the shortest path, and continues until the new current endpoint is the second endpoint.
In this embodiment, after searching from the second endpoint to the first endpoint by adopting the shortest path algorithm, the shortest path from the second endpoint to the first endpoint without passing through the advanced right-turn road can be "restored" by going back from the first endpoint, and the shortest path plus the advanced right-turn road forms a shortest closed path.
FIG. 10 is a schematic flow diagram of backtracking and creating a shortest closed path in one embodiment. Referring to fig. 10, after the flow starts, the method includes the steps of:
step 1001, creating a result linked list, namely creating a result linked list, and initially being empty;
step 1002, judging whether an Element corresponding to a starting endpoint exists;
if yes, continuing to step 3, and if not, returning to a result linked list resultList;
step 1003, creating a current traversal element, namely an element corresponding to the initial endpoint;
step 1004, obtaining a current endpoint currNode corresponding to a current traversal element currElement;
step 1005, judging whether the current currNode of the current traversal element currElement is an ending endpoint eNode;
if not, go to step 1006; if yes, go to step 1017;
step 1006, obtaining an element corresponding to a from field of the current traversal element currElement, and recording the element as a from element;
Step 1007, obtaining an endpoint corresponding to the currNode field of the from element, and marking the endpoint as a previous endpoint from;
step 1008, obtaining a target road common road between the current end points corresponding to the current node field of the current traversing element current and the current node from the previous end point;
step 1009, creating a current element roadData stored in a result linked list;
step 1010, recording the roadfield of the current element roadData as a target road common road;
that is, let loaddata. Head=common head;
step 1011, obtaining a starting endpoint startNode of a target road common road;
step 1012, determining whether the starting endpoint startNode of the destination road common road is the previous endpoint from node;
if not, go to step 1013, if yes, go to step 1014;
step 1013, marking the target road and the shortest closed path in opposite directions;
i.e. readdata. Isreverse=true;
step 1014, marking the target road and the shortest closed path have the same path direction;
i.e. readdata. Isreverse=false;
step 1015, inserting the current element roadData into the head of a result list;
step 1016, after taking the previous endpoint from which the current endpoint originates as the new current endpoint, let current element=from element; returning to the step 1004 to continue execution;
Step 1017, creating a first element first data stored in a result list;
step 1018, recording the head field of the first element first data as a forward right-turn road;
that is, let first data. Head=rightroad;
step 1019, marking the advanced right turn road to be the same as the path direction of the shortest closed path;
that is, let first data.isreverse=false;
step 1020, inserting the first data into the header of the result list.
And 1021, returning to a resultList, and ending the flow.
The backtracking process is illustrated by way of example in fig. 8. Firstly, creating a result linked list, namely creating a result linked list, wherein the result linked list is initially empty; when the searching process is finished, the obtained current element is an element corresponding to a starting endpoint B, the obtained current element is used as a current traversing element, an endpoint currNode corresponding to the current traversing element current element, namely the endpoint B is obtained, the current endpoint B is used as a current endpoint, whether the current endpoint B is an ending endpoint eNode, namely the endpoint A is judged, if not, the element corresponding to a from field of the current traversing element is obtained, the element corresponding to the endpoint C is obtained, the currNode in the element is the endpoint C and is recorded as the from node, then a common road which is used for simultaneously connecting the endpoint C and the endpoint B is obtained, then a current element roadData stored in a result linked list is created, the road field of the current element roadData is recorded as a road BC, the starting endpoint of the road BC is obtained, namely the endpoint B is judged, the starting endpoint of the road BC is not the from node, the road is marked to be opposite to the path direction of the shortest closed path, and the current element roadData is inserted into the head of a result linked list, and at the moment, the current element roadData is provided with 1 element in the result list.
Then, taking the previous endpoint C from which the current endpoint originates as a new current endpoint, and continuing to execute: judging whether the current endpoint C is an ending endpoint eNode, namely an endpoint A, if not, acquiring an element corresponding to a from field of a current traversing element currElement, namely the endpoint A, wherein currNode in the element is the endpoint A and is recorded as the from node, then acquiring a common road which is a road CA and simultaneously connects the endpoint A and the endpoint C, then creating a current element roadData stored in a result linked list, recording the road field of the current element roadData as the road CA, acquiring a starting endpoint of the road CA, namely the endpoint C, judging that the starting endpoint of the road CA is not the from node, marking the road CA to be opposite to the path direction of the shortest closed path, and inserting the current element roadData into the head of the result linked list, wherein the result list has 2 elements.
Then, taking the previous endpoint A from which the current endpoint originates as a new current endpoint, and continuing to execute: and judging whether the current endpoint A is an ending endpoint eNode, if so, continuously creating a first element first data stored in a result linked list resultant, recording a head field of the first element first data as an advanced right-turn road BA, marking the advanced right-turn road as the same as the path direction of the shortest closed path, inserting the first data into the head of the result linked list resultant, returning to the resultant, and ending the flow.
At this time, the result list has 3 elements, which are in turn:
first data= { isreverse=false; road = advance right turn road BA };
roaddata1= { isreverse=true; road = road CA };
roaddata2= { isreverse=true; road = road BC }.
Of course, in other embodiments, the server may trace back the shortest closed path after searching for the shortest path from the second endpoint to the first endpoint as follows: taking the first endpoint as a current endpoint; acquiring a previous endpoint from which a current endpoint in the shortest path is derived; determining a target road between a current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes; if the end point of the target road is not the current end point, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path to be reversed; if the end point of the target road is the current end point, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path in the same direction; and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
As shown in fig. 11, a schematic diagram of a road, a road direction, and a path direction through which the shortest closed path passes in one embodiment. Referring to fig. 11, among the roads through which the shortest closed path passes, there are roads in the same direction as the path direction of the shortest closed path, and also roads in the opposite direction to the path direction of the shortest closed path, and in fig. 11, the path direction of the shortest closed path is indicated by a broken line arrow, and the road direction of the road through which the shortest closed path passes is indicated by a solid line arrow on the road.
FIG. 12 is a flow chart of a method for determining a road edge for each road on a shortest closed path in one embodiment. Referring to fig. 12, the process includes the steps of:
step 1201, obtaining a result list;
step 1202, calculating the edge line direction;
step 1203, creating a sideline shape point result list resultPointList;
step 1204, traversing elements in a result list;
step 1205, when the traversal is not completed, marking the current traversal element as roadData;
step 1206, let read = roaddata;
step 1207, letting isreverse = roaddata;
step 1208, determine isreverse=false?
If not, go to step 1209, if yes, go to step 1210;
Step 1209, obtaining the shape point of the right line of the road, and adding the shape point into a resultPointList after reverse order;
step 1210, obtaining left line shape points of the road, and adding the left line shape points into a resultPointList;
and returning to the step 1204 to continue execution until the element in the result linked list is traversed, returning to the resultPointList, and ending the flow.
In this embodiment, whether the road left edge line or the road right edge line of each road is taken or not is determined by comparing whether the road direction of each road on the shortest closed path and the path direction of the shortest closed path are in the same direction, so that the road edge line surrounding the diversion island can be effectively, accurately and reasonably found, a complex calculation strategy is not required to be introduced to avoid extreme conditions, the robustness is strong, and the calculation resources are saved. As shown in fig. 13, a schematic diagram of the road edges of the roads on the shortest closed path determined in one embodiment.
The process of determining a road edge is illustrated by way of example in fig. 8, where there are 3 elements in the result list: firstly, obtaining a result list of a result list;
first data= { isreverse=false; road = advance right turn road BA };
roaddata1= { isreverse=true; road = road CA };
roaddata2= { isreverse=true; road = road BC }.
Then calculating the direction of the boundary line, namely defining the left side of the shortest closed path as a required road boundary line; creating a boundary line shape point result list resultPointList; when the traversal is not completed, the current traversal element is marked as roadData; assume first element first data, which traverses to the result list; let read = roaddata, i.e., read assigned as the read field of the current traversal first data, i.e., linkBA; let isreverse=roaddata. Isreverse, when isreverse=false; determine isreverse=false? At this time, yes; acquiring left line shape points of the road, namely, advancing left lines of the road of the right-turn road BA, and adding the left lines into a resultPointList; returning to continue traversing, marking the current traversing element as roadData, assuming that the 2 nd element roadData1 in the chain table is traversed, and enabling the road = roadData. Roadi.e. the roadis assigned as a roadfield of the current traversing element roadData, and then, obtaining a road CA; let isreverse=roaddata. Isreverse, at this point, i.e. isreverse=true; determine isreverse=false? At this time, no; acquiring the shape point of the right line of the road and inversely sequencing, namely, the shape point of the right line of the road CA and inversely sequencing and then adding the shape point into a resultPointList; returning to continue traversing, marking the current element as roadData, and supposing to traverse to the 3 rd element roadData in the chain table; let read = roadData, i.e., read assigned as the read field of the current traversal roadData, i.e., road BC; let isreverse = roaddata.isreverse, now true; determine isreverse=false? If not, acquiring the right line shape point of the road, namely the shape point of the right line of the road BC, and adding the shape point into a resultPointList after the shape point of the right line of the road BC is in reverse order; and returning to continue traversing, finishing traversing, returning to a resultPointList, and finishing. At this time, the resultPointList has 3 road edges. Namely, a road left-hand line shape point of the road BA, a road right-hand line shape point of the CA, and a road right-hand line shape point of the road CB.
In one embodiment, step 208, determining the intersection between road edges around the flow island includes: generating edge pairs according to the road edges surrounding the diversion island to obtain an edge pair set; and traversing each edge pair in the edge pair set in sequence, if the traversed edge pair has an intersection point, recording the intersection point and the traversed edge pair corresponding to the intersection point until the edge pair in the edge pair set is traversed, and obtaining an intersection point set.
To find all the intersections, a second order Cartesian product of the indices of all the road edges can be introduced. It will be appreciated that the intersection point between one road edge m and another road edge n and the intersection point between the road edge n and the road edge m are the same intersection point, and that all road edge pairs are found, and in addition, in order to reduce the calculation amount, half of the road edge pairs may be removed from all the road edge pairs to perform the intersection point calculation.
As shown in fig. 14, a flow chart of calculating the intersection between road edges in one embodiment is shown. Referring to fig. 14, the method includes the steps of:
step 1401, obtaining a road edge list curveList;
step 1402, creating an intersection data list, which is initially empty;
Step 1403, creating second order Cartesian product index set of index subscripts of each object in the curveList;
for example, a second order Cartesian product index xPair set is a set of ordered pairs of index indices of two-way edges, with index indices of 0, 1, 2 in order, and 0-1, 0-2, 1-0, 1-2, 2-0, 2-1 for a total of 6 edge pairs if there are 3 edges.
Step 1404, traversing index set;
step 1405, incomplete traversal, the current traversal element is marked as index;
step 1406, let index 0=index point air. Get (0), index 1=index point air. Get (1);
wherein get (0) is the 1 st index of the current traversal element index, which represents one road edge, and get (1) is the 2 nd index of the current traversal element index, which represents another road edge.
Step 1407, judging whether index0 is smaller than index1;
if index0 is less than index1, go to step 1408;
the purpose of the judgment is to compute 0-1 and 1-0 only 1 time, if index0 is greater than index1, then not compute, but walk through a new index point again.
Step 1408, let curve0=curvelist. Get (index 0); curv1=curvelist. Get (index 1);
step 1409, calculating intersection points of curve0 and curve 1;
Step 1410, judging whether an intersection point exists;
if yes, continue step 1411;
if not, a new index is traversed again.
Step 1411, let intersectant data. Point=intersectant point;
let interactiondata. Rods = set (curve1. Rod, curve2. Rod);
step 1412, adding the intersectant data to an intersectant datalist;
and traversing a new index again, and repeating the steps.
If the traversal is complete, return the interactdatalist and the flow ends.
In one embodiment, step 210, according to each intersection, cuts out a diversion island boundary of the diversion island from the road boundary surrounding the diversion island, including: starting from the second end point, connecting the road edge line around the diversion island end to obtain an ordered shape point set on the road edge line around the diversion island; the intersection points between the road edges belong to an ordered shape point set; determining the path distance from each intersection point to the second endpoint according to the path distance from each shape point indicated by the ordered shape point set to the second endpoint; sequencing the intersection points according to the path distance to obtain sequenced intersection points; adding the first intersection point in the ordered intersection points to the tail part of the ordered intersection points to obtain an ordered intersection point set; traversing any two adjacent intersection points in the ordered intersection point set in sequence, and intercepting a road boundary between the two adjacent intersection points from the same road boundary as a diversion island boundary of the diversion island if the two adjacent intersection points are derived from the same road boundary in the road boundary surrounding the diversion island; and when the traversing is finished, obtaining the closed guide island edge line of the guide island according to the guide island edge line of each cut guide island.
Specifically, the server may sequentially connect the road edges end to form an ordered shape point set total points. As shown in fig. 15, a schematic diagram of connecting road edges end to end in sequence in one embodiment. As shown in fig. 16, a schematic diagram of the intersection between road edges calculated in one embodiment.
As shown in fig. 17, a schematic flow chart of determining a diversion island edge of a diversion island in one embodiment includes the following steps:
step 1701, starting from the ending endpoint eNode, connecting each road edge end to end in turn to form an ordered shape point set total points.
Step 1702, sorting each element in the intersectant datalist according to the distance from the corresponding intersectant point to the ending endpoint eNode in the total points;
step 1703, adding the first element of the ordered intersectantalist to the tail of the intersectantalist to obtain a sortedPointlist;
step 1704, creating a result point list resultPoints, which is initially empty;
step 1705, traversing any two adjacent elements interectdata 1 and interectdata 2 of the sortedPointList;
step 1706, calculating common road in the roads of the intersectData1 and the intersectData2, that is, the common road where both intersection points are located, without traversing;
Step 1707, using points of intersectData1 and intersectData2 to cut out a part newPoints between the two points on the boundary of the common road;
step 1708, adding newPoints to the form point list resultPoints;
and step 1709, returning to the resultPoints when the traversal is completed.
At this time, all diversion island side lines of the diversion island can be obtained, and the flow is ended.
FIG. 18 is a schematic diagram of a closed flow island edge of a flow island in one embodiment. The closed diversion island side line is the diversion island generated in the data compiling stage, and then the rendering engine can draw the effect of the diversion island by adding preset textures according to the closed diversion island side line.
In one embodiment, the method further comprises:
and adding road data of the diversion island into the map road network data, wherein the road data comprises diversion island side lines of the diversion island and path directions of the diversion island, and the path directions of the diversion island are in the same direction as the road directions of the roads turning right in advance.
In one embodiment, the method further comprises: drawing a closed diversion island boundary line in the virtual map according to the diversion island boundary line of the diversion island; and adding preset textures into the drawn closed diversion island side lines to obtain the diversion island in the virtual map.
The method for generating the guide island can be applied to any scene in which the guide island is required to be generated according to the original road network data, for example, in a high-precision map, if certain areas lack corresponding high-precision data, the ordinary map data can be used for generating the corresponding guide islands for the areas by adopting the method for generating the guide island provided by the embodiment of the application. For another example, the diversion island can be efficiently generated without depending on other path indication information, only depending on the original ordinary map data. For another example, the generated diversion island can be directly rendered and displayed according to the point string data of the diversion island after being called by the map application. Also for example, in a game application involving an urban road model, a corresponding game screen can be rendered and displayed directly according to the point string data of the diversion island in the urban road model. Of course, the applicable scenario is not limited thereto.
The following is a detailed description of one scenario:
in the high-precision map, certain areas lack corresponding high-precision data, and the diversion island generation method provided by the embodiment of the application can be adopted based on common map data, so that the problem that the diversion island displaying the high-precision map cannot be rendered in the areas is solved.
The server may find out the advanced right-turn road in the map in advance, and for each advanced right-turn road, the server may acquire a start end point and an end point of the advanced right-turn road from shape point data of the corresponding road, and search for a shortest path from the end point to the start end point from map road network data. Taking the initial endpoint as the current endpoint, and acquiring a previous endpoint from which the current endpoint in the shortest path is derived; determining a target road between a current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes; if the starting end point of the target road is not the previous end point from which the current end point is derived, recording that the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path; if the starting end point of the target road is the previous end point from which the current end point is derived, the road direction of the target road through which the shortest path passes is recorded to be in the same direction as the path direction of the shortest path. If the road direction of the target road through which the shortest path passes is the same as the path direction of the shortest path, the shape point of the left edge line of the road is obtained from the edge line of the road of the passed target road; and if the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path, acquiring the reverse order shape point of the right edge line of the road from the edge line of the road of the passed target road. Generating edge pairs according to the road edges surrounding the diversion island to obtain an edge pair set; traversing each edge pair in the edge pair set in sequence, if the traversed edge pair has an intersection point, recording the intersection point and the traversed edge pair corresponding to the intersection point until the edge pair in the edge pair set is traversed, and obtaining an intersection point set; starting from the end point, connecting the road side line around the diversion island end to obtain an ordered shape point set on the road side line around the diversion island; the intersection points between the road edges belong to an ordered shape point set; determining the path distance from each intersection point to the end point according to the path distance from each shape point indicated by the ordered shape point set to the end point; sequencing the intersection points according to the path distance to obtain sequenced intersection points; adding the first intersection point in the ordered intersection points to the tail part of the ordered intersection points to obtain an ordered intersection point set; traversing any two adjacent intersection points in the ordered intersection point set in sequence, and intercepting a road boundary between the two adjacent intersection points from the same road boundary as a diversion island boundary of the diversion island if the two adjacent intersection points are derived from the same road boundary in the road boundary surrounding the diversion island; and when the traversing is finished, obtaining the closed guide island edge line of the guide island according to the guide island edge line of each cut guide island. And adding road data of the diversion island into the map road network data, wherein the road data comprises diversion island side lines of the diversion island and path directions of the diversion island, and the path directions of the diversion island are in the same direction as the road directions of the roads turning right in advance. Drawing a closed diversion island boundary line in the virtual map according to the diversion island boundary line of the diversion island; and adding preset textures into the drawn closed diversion island side lines to obtain the diversion island in the virtual map. In this way, in the map navigation process, when the terminal or the vehicle is positioned near a certain diversion island in the area and the diversion island needs to be displayed, the map application on the terminal or the vehicle-mounted terminal can directly pull the point string data representing the diversion island from the map database, and the high-precision map navigation picture of the current position can be efficiently rendered and displayed according to the pulled point string data.
It should be understood that, although the steps in the flowcharts related to the above embodiments are sequentially shown as indicated by arrows, these steps are not necessarily sequentially performed in the order indicated by the arrows. The steps are not strictly limited to the order of execution unless explicitly recited herein, and the steps may be executed in other orders. Moreover, at least some of the steps in the flowcharts described in the above embodiments may include a plurality of steps or a plurality of stages, which are not necessarily performed at the same time, but may be performed at different times, and the order of the steps or stages is not necessarily performed sequentially, but may be performed alternately or alternately with at least some of the other steps or stages.
Based on the same inventive concept, the embodiment of the application also provides a flow guiding island generating device for realizing the flow guiding island generating method. The implementation of the solution provided by the device is similar to the implementation described in the above method, so the specific limitation in the embodiments of the device for generating a flow guiding island provided below may refer to the limitation of the method for generating a flow guiding island, which is not described herein.
In one embodiment, as shown in fig. 19, there is provided a flow island generation apparatus 1900, including: a determination module 1902, a shortest path search module 1904, a road edge determination module 1906, an intersection determination module 1908, and an intercept module 1910, wherein:
the determining module 1902 is configured to determine an advanced right-turn road at the diversion island, where two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively;
a shortest path search module 1904 for searching for a shortest path from the second end point to the first end point, the shortest path passing through at least one road;
a road edge determining module 1906, configured to determine a road edge surrounding the diversion island from respective road edges of the right-turn road and the at least one road in advance;
an intersection determination module 1908 that determines an intersection between road edges surrounding the flow island;
and the intercepting module 1910 is configured to intercept the side line of the flow guiding island from the side line of the road surrounding the flow guiding island according to each intersection point.
In one embodiment, the first end point is a start end point of the advanced right turn road and the second end point is an end point of the advanced right turn road.
In one embodiment, the determining module 1902 is further configured to obtain road data representing a road in the map road network data, where the road data includes shape point data and road attribute data; if the road attribute data comprises a mark for indicating that the corresponding road is an advanced right-turn road, determining that the corresponding road is the advanced right-turn road at the diversion island; the first end point and the second end point are acquired from shape point data of the corresponding road.
In one embodiment, shortest path search module 1904 is further configured to add a second endpoint to the first set; the first set is used for recording the determined end point of the shortest path to the second end point and the shortest path length of the corresponding shortest path; the second endpoint is used as a first current source point, another endpoint of a road taking the current source point as an endpoint is obtained according to the map network data, the obtained other endpoints are used as undetermined endpoints to be added into a second set, and undetermined shortest paths and undetermined shortest path lengths from the undetermined endpoints to the second endpoint are recorded; the road taking the current source point as an endpoint does not comprise a right-turn road in advance, and the second set is used for recording undetermined endpoints of the shortest path which is not determined to the second endpoint at present and undetermined shortest path lengths of undetermined shortest paths from the corresponding undetermined endpoints to the second endpoint; taking out the endpoint with the minimum corresponding undetermined shortest path length in the second set, adding the endpoint into the first set as a determined endpoint, recording the shortest path length from the determined endpoint to the second endpoint, and taking the determined endpoint as a new current source point; acquiring another end point of a road taking a new current source point as an end point according to map road network data, and calculating the undetermined shortest path length from the second end point to the other end point through the new current source point according to the shortest path length from the new current source point to the second end point and the distance from the other end point to the new current source point for each other end point; if the other end point is a pending end point existing in the second set, updating the pending shortest path and the pending shortest path length of the pending end point according to the calculated minimum value in the pending shortest path length of the pending end point and the pending shortest path length recorded in the second set; if the other endpoint does not exist in the second set, the other endpoint is added into the second set as the undetermined endpoint, and the undetermined shortest path and undetermined shortest path length of the undetermined endpoint are recorded; and returning to take out the endpoint with the minimum corresponding undetermined shortest path length in the second set, adding the endpoint into the first set as the determined endpoint, recording the shortest path length from the determined endpoint to the second endpoint, and continuing to execute the step of taking the determined endpoint as a new current source point until the new current source point is the first endpoint, and obtaining the shortest path from the second endpoint to the first endpoint.
In one embodiment, the road direction of the right-turn ahead road is a direction from the first end point to the second end point, and the path direction of the shortest path is a direction from the second end point to the first end point after passing through at least one road; the road edge determining module 1906 is further configured to obtain a shape point of a left edge of the road from the road edges of the road turning right in advance; if the road direction of the target road through which the shortest path passes is the same as the path direction of the shortest path, the shape point of the left edge line of the road is obtained from the edge line of the road of the passed target road; and if the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path, acquiring the reverse order shape point of the right edge line of the road from the edge line of the road of the passed target road.
In one embodiment, the apparatus further comprises: the backtracking module is used for taking the first endpoint as a current endpoint; acquiring a previous endpoint from which a current endpoint in the shortest path is derived; determining a target road between a current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes; if the starting end point of the target road is not the previous end point from which the current end point is derived, recording that the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path; if the starting end point of the target road is the previous end point from which the current end point is derived, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path in the same direction; and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
In one embodiment, the apparatus further comprises: the backtracking module is used for taking the first endpoint as a current endpoint; acquiring a previous endpoint from which a current endpoint in the shortest path is derived; determining a target road between a current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes; if the end point of the target road is not the current end point, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path to be reversed; if the end point of the target road is the current end point, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path in the same direction; and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
In one embodiment, the intersection determination module 1908 is further configured to generate an edge pair according to the road edge surrounding the diversion island, to obtain an edge pair set; and traversing each edge pair in the edge pair set in sequence, if the traversed edge pair has an intersection point, recording the intersection point and the traversed edge pair corresponding to the intersection point until the edge pair in the edge pair set is traversed, and obtaining an intersection point set.
In one embodiment, the intercepting module 1910 is further configured to connect the road edge around the diversion island from the second end point end to end, to obtain an ordered shape point set on the road edge around the diversion island; the intersection points between the road edges belong to an ordered shape point set; determining the path distance from each intersection point to the second endpoint according to the path distance from each shape point indicated by the ordered shape point set to the second endpoint; sequencing the intersection points according to the path distance to obtain sequenced intersection points; adding the first intersection point in the ordered intersection points to the tail part of the ordered intersection points to obtain an ordered intersection point set; traversing any two adjacent intersection points in the ordered intersection point set in sequence, and intercepting a road boundary between the two adjacent intersection points from the same road boundary as a diversion island boundary of the diversion island if the two adjacent intersection points are derived from the same road boundary in the road boundary surrounding the diversion island; and when the traversing is finished, obtaining the closed guide island edge line of the guide island according to the guide island edge line of each cut guide island.
In one embodiment, the apparatus further comprises: the system comprises a flow guiding island adding module, a flow guiding island processing module and a flow guiding island processing module, wherein the flow guiding island adding module is used for adding road data of a flow guiding island into map road network data, the road data comprise flow guiding island side lines of the flow guiding island and path directions of the flow guiding island, and the path directions of the flow guiding island are in the same direction as the road directions of a road turning right in advance.
In one embodiment, the apparatus further comprises: the rendering module is used for drawing closed diversion island side lines in the virtual map according to the diversion island side lines of the diversion island; and adding preset textures into the drawn closed diversion island side lines to obtain the diversion island in the virtual map.
According to the diversion island generating device, in order to obtain the diversion island boundary of the diversion island, only the advanced right-turning road at the diversion island is needed to be determined, two end points of the advanced right-turning road are the first end point and the second end point respectively, then the shortest path reaching the first end point from the second end point is searched, the shortest path passes through at least one road, then the road boundary surrounding the diversion island is determined from the road boundary of the advanced right-turning road and the road boundary of the at least one road, the intersection point between the road boundary surrounding the diversion island is determined, and finally the diversion island boundary of the diversion island is cut out from the road boundary surrounding the diversion island according to each intersection point.
The above-mentioned various modules in the flow guiding island generating device may be implemented in whole or in part by software, hardware, and combinations thereof. The above modules may be embedded in hardware or may be independent of a processor in the computer device, or may be stored in software in a memory in the computer device, so that the processor may call and execute operations corresponding to the above modules.
In one embodiment, a computer device is provided, which may be a server, and the internal structure of which may be as shown in fig. 20. The computer device includes a processor, a memory, an Input/Output interface (I/O) and a communication interface. The processor, the memory and the input/output interface are connected through a system bus, and the communication interface is connected to the system bus through the input/output interface. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage media. The database of the computer device is used for storing map road network data. The input/output interface of the computer device is used to exchange information between the processor and the external device. The communication interface of the computer device is used for communicating with an external terminal through a network connection. The computer program is executed by a processor to implement a method of generating a flow island.
It will be appreciated by those skilled in the art that the structure shown in fig. 20 is merely a block diagram of a portion of the structure associated with the present application and is not limiting of the computer device to which the present application applies, and that a particular computer device may include more or fewer components than shown, or may combine some of the components, or have a different arrangement of components.
In one embodiment, a computer device is provided, including a memory and a processor, where the memory stores a computer program, and the processor implements the steps of the method for generating a flow guiding island provided in the embodiments of the present application when the computer program is executed.
In one embodiment, a computer readable storage medium is provided, on which a computer program is stored, which when executed by a processor implements the steps of the method for generating a flow guiding island provided in the embodiments of the present application.
In one embodiment, a computer program product is provided, comprising a computer program which, when executed by a processor, implements the steps of the method for generating a flow guiding island provided in the embodiments of the present application.
It should be noted that, the user information (including, but not limited to, user equipment information, user personal information, etc.) and the data (including, but not limited to, data for analysis, stored data, presented data, etc.) referred to in the present application are information and data authorized by the user or sufficiently authorized by each party, and the collection, use and processing of the related data are required to comply with the related laws and regulations and standards of the related countries and regions.
Those skilled in the art will appreciate that implementing all or part of the above described methods may be accomplished by way of a computer program stored on a non-transitory computer readable storage medium, which when executed, may comprise the steps of the embodiments of the methods described above. Any reference to memory, database, or other medium used in the various embodiments provided herein may include at least one of non-volatile and volatile memory. The nonvolatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical Memory, high density embedded nonvolatile Memory, resistive random access Memory (ReRAM), magnetic random access Memory (MagnetoresistiveRandom Access Memory, MRAM), ferroelectric Memory (Ferroelectric Random Access Memory, FRAM), phase change Memory (Phase Change Memory, PCM), graphene Memory, and the like. Volatile memory can include random access memory (Random Access Memory, RAM) or external cache memory, and the like. By way of illustration, and not limitation, RAM can take many forms, such as static Random access memory (Static Random Access Memory, SRAM) or Dynamic Random access memory (Dynamic Random AccessMemory, DRAM), among others. The databases referred to in the various embodiments provided herein may include at least one of relational databases and non-relational databases. The non-relational database may include, but is not limited to, a blockchain-based distributed database, and the like. The processors referred to in the embodiments provided herein may be general purpose processors, central processing units, graphics processors, digital signal processors, programmable logic units, quantum computing-based data processing logic units, etc., without being limited thereto.
The technical features of the above embodiments may be arbitrarily combined, and all possible combinations of the technical features in the above embodiments are not described for brevity of description, however, as long as there is no contradiction between the combinations of the technical features, they should be considered as the scope of the description.
The above examples only represent a few embodiments of the present application, which are described in more detail and are not to be construed as limiting the scope of the present application. It should be noted that it would be apparent to those skilled in the art that various modifications and improvements could be made without departing from the spirit of the present application, which would be within the scope of the present application. Accordingly, the scope of protection of the present application shall be subject to the appended claims.

Claims (22)

1. A method for generating a flow guiding island, the method comprising:
determining an advanced right-turn road at a diversion island, wherein two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively; the road direction of the advanced right turn road is a direction pointing from the first end point to the second end point;
searching a shortest path from the second endpoint to the first endpoint, wherein the shortest path does not comprise the advanced right-turn road, the shortest path passes through at least one road, and whether the road direction of each target road in the at least one road through which the shortest path passes is consistent with the path direction of the shortest path or not is recorded; the path direction of the shortest path is a direction from the second end point to the first end point after passing through the at least one road;
Taking out the left line of the road of the right turn road in advance, taking out the left line of the target road of the at least one road which is passed by the shortest path if the road direction of the target road is the same as the path direction of the shortest path, taking out the right line of the target road which is passed by the shortest path if the road direction of the target road of the at least one road which is passed by the shortest path is opposite to the path direction of the shortest path, and taking the taken out road edge as the road edge surrounding the diversion island;
determining an intersection between road edges surrounding the flow island;
and according to each intersection point, cutting off a diversion island boundary line of the diversion island from the road boundary line surrounding the diversion island.
2. The method of claim 1, wherein the first end point is a start end point of the advanced right turn road and the second end point is an end point of the advanced right turn road.
3. The method of claim 1, wherein the determining an advanced right turn road at a diversion island comprises:
acquiring road data representing a road in map road network data, wherein the road data comprises shape point data and road attribute data;
If the road attribute data comprises a mark for indicating that the corresponding road is an advanced right-turn road, determining that the corresponding road is the advanced right-turn road at the diversion island;
the method further comprises the steps of:
and acquiring the first endpoint and the second endpoint from the shape point data of the corresponding road.
4. The method of claim 1, wherein the searching for the shortest path from the second endpoint to the first endpoint comprises:
adding the second endpoint to a first set; the first set is used for recording the determined end points of the shortest paths to the second end point and the shortest path length of the corresponding shortest paths;
the second endpoint is used as a first current source point, another endpoint of a road taking the current source point as an endpoint is obtained according to map road network data, the obtained other endpoints are used as undetermined endpoints to be added into a second set, and undetermined shortest paths and undetermined shortest path lengths from the undetermined endpoints to the second endpoint are recorded; the road taking the current source point as an endpoint does not comprise the advanced right-turn road, and the second set is used for recording undetermined endpoints of the shortest path which is not currently determined to the second endpoint and undetermined shortest path lengths of undetermined shortest paths from the corresponding undetermined endpoints to the second endpoint;
Taking out the endpoint with the minimum corresponding undetermined shortest path length in the second set, adding the endpoint into the first set as a determined endpoint, recording the shortest path length from the determined endpoint to the second endpoint, and taking the determined endpoint as a new current source point;
acquiring another end point of a road taking the new current source point as an end point according to map road network data, and calculating a shortest path length to be determined from the second end point to the other end point through the new current source point according to the shortest path length from the new current source point to the second end point and the distance from the other end point to the new current source point for each other end point;
if the other end point coincides with a pending end point of the second set, updating the pending shortest path and the pending shortest path length of the pending end point according to the calculated pending shortest path length and the minimum value of the pending shortest path length of the pending end point recorded in the second set;
if the other endpoint does not exist in the second set, the other endpoint is added into the second set as a pending endpoint, and a pending shortest path length of the pending endpoint are recorded;
And returning to the step of taking out the endpoint with the minimum corresponding undetermined shortest path length in the second set, adding the endpoint into the first set as a determined endpoint, recording the shortest path length from the determined endpoint to the second endpoint, and continuously executing the step of taking the determined endpoint as a new current source point until the new current source point is the first endpoint, and obtaining the shortest path from the second endpoint to the first endpoint.
5. The method of claim 1, wherein said recording whether the road direction of each target road in said at least one road traversed by said shortest path coincides with the path direction of said shortest path comprises:
taking the first endpoint as a current endpoint;
acquiring a previous endpoint from which the current endpoint in the shortest path originates;
determining a target road between the current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes;
if the starting end point of the target road is not the previous end point from which the current end point is derived, recording that the road direction of the target road through which the shortest path passes is reverse to the path direction of the shortest path;
If the starting end point of the target road is the front end point from which the current end point is derived, recording that the road direction of the target road through which the shortest path passes is the same as the path direction of the shortest path;
and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
6. The method of claim 1, wherein said recording whether the road direction of each target road in said at least one road traversed by said shortest path coincides with the path direction of said shortest path comprises:
taking the first endpoint as a current endpoint;
acquiring a previous endpoint from which the current endpoint in the shortest path originates;
determining a target road between the current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes;
if the end point of the target road is not the current end point, recording that the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path;
If the end point of the target road is the current end point, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path to be the same direction;
and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
7. The method of claim 1, wherein the determining an intersection between road edges surrounding the flow island comprises:
generating edge pairs according to the road edges surrounding the diversion island to obtain an edge pair set;
and traversing each edge pair in the edge pair set in sequence, if the traversed edge pair has an intersection point, recording the intersection point and the traversed edge pair corresponding to the intersection point until the edge pair in the edge pair set is traversed, and obtaining the intersection point set.
8. The method of claim 1, wherein the intercepting the diversion island edge of the diversion island from the road edge surrounding the diversion island according to each intersection point comprises:
Starting from the second end point, connecting the road edge line around the diversion island end to obtain an ordered shape point set on the road edge line around the diversion island; the intersection points between the road edges belong to the ordered shape point set;
determining the path distance from each intersection point to the second endpoint according to the path distance from each shape point indicated by the ordered shape point set to the second endpoint;
sequencing the intersection points according to the path distance to obtain sequenced intersection points;
adding the first intersection point in the ordered intersection points to the tail part of the ordered intersection points to obtain an ordered intersection point set;
traversing any two adjacent intersection points in the ordered intersection point set in sequence, and intercepting a road boundary line between the two adjacent intersection points from the same road boundary line as a diversion island boundary line of the diversion island if the two adjacent intersection points are derived from the same road boundary line in the road boundary line surrounding the diversion island;
and when the traversing is finished, obtaining the closed guide island side line of the guide island according to the cut guide island side line of each guide island.
9. The method according to any one of claims 1 to 8, further comprising:
And adding road data of the diversion island into map road network data, wherein the road data comprises diversion island side lines of the diversion island and path directions of the diversion island, and the path directions of the diversion island and the road directions of the roads turning right in advance are in the same direction.
10. The method according to any one of claims 1 to 8, further comprising:
drawing a closed diversion island boundary line in a virtual map according to the diversion island boundary line of the diversion island;
and adding preset textures into the drawn closed diversion island side line to obtain the diversion island in the virtual map.
11. A diversion island generation apparatus, the apparatus comprising:
the determining module is used for determining an advanced right-turn road at the guide island, and two endpoints of the advanced right-turn road are a first endpoint and a second endpoint respectively; the road direction of the advanced right turn road is a direction pointing from the first end point to the second end point;
a shortest path searching module, configured to search a shortest path from the second endpoint to the first endpoint, where the shortest path does not include the advanced right-turn road, the shortest path passes through at least one road, and record whether a road direction of each target road in the at least one road through which the shortest path passes is consistent with a path direction of the shortest path; the path direction of the shortest path is a direction from the second end point to the first end point after passing through the at least one road;
The road edge determining module is used for taking out the left edge of the road of the right-turn road in advance, taking out the left edge of the road of the target road which is passed through if the road direction of the target road in the at least one road which is passed through by the shortest path is the same as the path direction of the shortest path, taking out the right edge of the road of the target road which is passed through if the road direction of the target road in the at least one road which is passed through by the shortest path is opposite to the path direction of the shortest path, and taking out the right edge of the road which is passed through as the edge of the road which surrounds the flow guiding island;
the intersection point determining module is used for determining intersection points among the road edges surrounding the diversion island;
and the intercepting module is used for intercepting the diversion island side lines of the diversion island from the road side lines surrounding the diversion island according to the intersection points.
12. The apparatus of claim 11, wherein the first end point is a start end point of the advanced right turn road and the second end point is an end point of the advanced right turn road.
13. The apparatus of claim 11, wherein the determining module is configured to obtain road data representing a road in map road network data, the road data including shape point data and road attribute data; if the road attribute data comprises a mark for indicating that the corresponding road is an advanced right-turn road, determining that the corresponding road is the advanced right-turn road at the diversion island; and acquiring the first endpoint and the second endpoint from the shape point data of the corresponding road.
14. The apparatus of claim 11, wherein the shortest path search module is configured to add the second endpoint to the first set; the first set is used for recording the determined end points of the shortest paths to the second end point and the shortest path length of the corresponding shortest paths; the second endpoint is used as a first current source point, another endpoint of a road taking the current source point as an endpoint is obtained according to map road network data, the obtained other endpoints are used as undetermined endpoints to be added into a second set, and undetermined shortest paths and undetermined shortest path lengths from the undetermined endpoints to the second endpoint are recorded; the road taking the current source point as an endpoint does not comprise the advanced right-turn road, and the second set is used for recording undetermined endpoints of the shortest path which is not currently determined to the second endpoint and undetermined shortest path lengths of undetermined shortest paths from the corresponding undetermined endpoints to the second endpoint; taking out the endpoint with the minimum corresponding undetermined shortest path length in the second set, adding the endpoint into the first set as a determined endpoint, recording the shortest path length from the determined endpoint to the second endpoint, and taking the determined endpoint as a new current source point; acquiring another end point of a road taking the new current source point as an end point according to map road network data, and calculating a shortest path length to be determined from the second end point to the other end point through the new current source point according to the shortest path length from the new current source point to the second end point and the distance from the other end point to the new current source point for each other end point; if the other end point coincides with a pending end point of the second set, updating the pending shortest path and the pending shortest path length of the pending end point according to the calculated pending shortest path length and the minimum value of the pending shortest path length of the pending end point recorded in the second set; if the other endpoint does not exist in the second set, the other endpoint is added into the second set as a pending endpoint, and a pending shortest path length of the pending endpoint are recorded; and returning to the step of taking out the endpoint with the minimum corresponding undetermined shortest path length in the second set, adding the endpoint into the first set as a determined endpoint, recording the shortest path length from the determined endpoint to the second endpoint, and continuously executing the step of taking the determined endpoint as a new current source point until the new current source point is the first endpoint, and obtaining the shortest path from the second endpoint to the first endpoint.
15. The apparatus of claim 11, wherein the apparatus further comprises:
the backtracking module is used for taking the first endpoint as a current endpoint; acquiring a previous endpoint from which the current endpoint in the shortest path originates; determining a target road between the current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes; if the starting end point of the target road is not the previous end point from which the current end point is derived, recording that the road direction of the target road through which the shortest path passes is reverse to the path direction of the shortest path; if the starting end point of the target road is the front end point from which the current end point is derived, recording that the road direction of the target road through which the shortest path passes is the same as the path direction of the shortest path; and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
16. The apparatus of claim 11, wherein the apparatus further comprises:
The backtracking module is used for taking the first endpoint as a current endpoint; acquiring a previous endpoint from which the current endpoint in the shortest path originates; determining a target road between the current endpoint and a previous endpoint from which the current endpoint is connected, through which the shortest path passes; if the end point of the target road is not the current end point, recording that the road direction of the target road through which the shortest path passes is opposite to the path direction of the shortest path; if the end point of the target road is the current end point, recording the road direction of the target road through which the shortest path passes and the path direction of the shortest path to be the same direction; and after taking the previous endpoint from which the current endpoint originates as a new current endpoint, returning to the step of acquiring the previous endpoint from which the current endpoint originates in the shortest path, and continuing to execute until the new current endpoint is the second endpoint.
17. The apparatus of claim 11, wherein the intersection determination module is configured to generate edge pairs from road edges surrounding the flow island to obtain a set of edge pairs; and traversing each edge pair in the edge pair set in sequence, if the traversed edge pair has an intersection point, recording the intersection point and the traversed edge pair corresponding to the intersection point until the edge pair in the edge pair set is traversed, and obtaining the intersection point set.
18. The apparatus of claim 11, wherein the intercepting module is configured to, starting from the second end point, connect road edges around the flow-directing island end to obtain an ordered set of shape points on the road edges around the flow-directing island; the intersection points between the road edges belong to the ordered shape point set; determining the path distance from each intersection point to the second endpoint according to the path distance from each shape point indicated by the ordered shape point set to the second endpoint; sequencing the intersection points according to the path distance to obtain sequenced intersection points; adding the first intersection point in the ordered intersection points to the tail part of the ordered intersection points to obtain an ordered intersection point set; traversing any two adjacent intersection points in the ordered intersection point set in sequence, and intercepting a road boundary line between the two adjacent intersection points from the same road boundary line as a diversion island boundary line of the diversion island if the two adjacent intersection points are derived from the same road boundary line in the road boundary line surrounding the diversion island; and when the traversing is finished, obtaining the closed guide island side line of the guide island according to the cut guide island side line of each guide island.
19. The apparatus according to any one of claims 11 to 18, further comprising:
the system comprises a flow guiding island adding module, a flow guiding island processing module and a flow guiding island processing module, wherein the flow guiding island adding module is used for adding road data of the flow guiding island into map road network data, the road data comprise flow guiding island side lines of the flow guiding island and path directions of the flow guiding island, and the path directions of the flow guiding island are in the same direction as the road directions of the roads turning right in advance.
20. The apparatus according to any one of claims 11 to 18, further comprising:
the rendering module is used for drawing closed diversion island side lines in the virtual map according to the diversion island side lines of the diversion island; and adding preset textures into the drawn closed diversion island side line to obtain the diversion island in the virtual map.
21. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor implements the steps of the method of any one of claims 1 to 10 when the computer program is executed.
22. A computer readable storage medium, on which a computer program is stored, characterized in that the computer program, when being executed by a processor, implements the steps of the method of any of claims 1 to 10.
CN202310814154.3A 2023-07-05 2023-07-05 Method, apparatus, computer device, medium and program product for generating flow guiding island Active CN116562488B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310814154.3A CN116562488B (en) 2023-07-05 2023-07-05 Method, apparatus, computer device, medium and program product for generating flow guiding island

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310814154.3A CN116562488B (en) 2023-07-05 2023-07-05 Method, apparatus, computer device, medium and program product for generating flow guiding island

Publications (2)

Publication Number Publication Date
CN116562488A CN116562488A (en) 2023-08-08
CN116562488B true CN116562488B (en) 2024-02-13

Family

ID=87502141

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310814154.3A Active CN116562488B (en) 2023-07-05 2023-07-05 Method, apparatus, computer device, medium and program product for generating flow guiding island

Country Status (1)

Country Link
CN (1) CN116562488B (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06273181A (en) * 1993-03-18 1994-09-30 Hitachi Ltd Method and apparatus for deciding route, map managing apparatus and mobile body managing system
CN102037318A (en) * 2008-12-03 2011-04-27 通腾科技股份有限公司 Method of creating map data comprising transit times for intersections
JP2014153198A (en) * 2013-02-08 2014-08-25 Mitsubishi Electric Corp Traffic information reception device and traffic information transmission device
CN106522053A (en) * 2016-12-06 2017-03-22 武汉理工大学 Road intersection guiding device with public transportation stops
CN115690287A (en) * 2022-10-24 2023-02-03 武汉中海庭数据技术有限公司 Diversion strip rendering method and device based on road surface elevation data
CN116010542A (en) * 2023-01-17 2023-04-25 智道网联科技(北京)有限公司 High-precision map safety island generation method, device and storage medium
CN116319518A (en) * 2022-08-31 2023-06-23 王举范 Information acquisition method and device based on shortest path of knowledge graph

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0439134U (en) * 1990-07-31 1992-04-02
US5553836A (en) * 1995-05-11 1996-09-10 Patentials Incorporated Adjustable suspension system
US6902045B2 (en) * 2003-04-03 2005-06-07 Delphi Technologies, Inc. Apparatus, system and method for a vehicle suspension system
US9140325B2 (en) * 2009-03-19 2015-09-22 Fox Factory, Inc. Methods and apparatus for selective spring pre-load adjustment
US20110298168A1 (en) * 2010-06-03 2011-12-08 Andreas Groebner Suspension strut with adjustable spring support system
DE102016122771A1 (en) * 2015-11-30 2017-06-01 Steering Solutions Ip Holding Corporation Automated suspension adjustment device
US11679638B2 (en) * 2019-12-06 2023-06-20 9176 7590 Quebec Inc. Shock absorber
CN212156232U (en) * 2020-04-14 2020-12-15 中建二局安装工程有限公司 Air conditioner water system pipeline supporting hanger

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06273181A (en) * 1993-03-18 1994-09-30 Hitachi Ltd Method and apparatus for deciding route, map managing apparatus and mobile body managing system
CN102037318A (en) * 2008-12-03 2011-04-27 通腾科技股份有限公司 Method of creating map data comprising transit times for intersections
JP2014153198A (en) * 2013-02-08 2014-08-25 Mitsubishi Electric Corp Traffic information reception device and traffic information transmission device
CN106522053A (en) * 2016-12-06 2017-03-22 武汉理工大学 Road intersection guiding device with public transportation stops
CN116319518A (en) * 2022-08-31 2023-06-23 王举范 Information acquisition method and device based on shortest path of knowledge graph
CN115690287A (en) * 2022-10-24 2023-02-03 武汉中海庭数据技术有限公司 Diversion strip rendering method and device based on road surface elevation data
CN116010542A (en) * 2023-01-17 2023-04-25 智道网联科技(北京)有限公司 High-precision map safety island generation method, device and storage medium

Also Published As

Publication number Publication date
CN116562488A (en) 2023-08-08

Similar Documents

Publication Publication Date Title
CN100523735C (en) Fast map matching method based on small lattice road network organization and structure
CN110220521B (en) High-precision map generation method and device
CN115346012B (en) Intersection face generation method, device, equipment, storage medium and program product
CN105893632B (en) The data compiling method of road name, map label method and apparatus
JP2022507077A (en) Compartment line attribute detection methods, devices, electronic devices and readable storage media
WO2007059339A1 (en) Schematic destination maps
Jiang et al. Large-scale taxi O/D visual analytics for understanding metropolitan human movement patterns
CN116433860A (en) Intersection surface generation method, device, equipment, storage medium and program product
EP3048421B1 (en) Method and system for generalising topographical map data
CN106409129A (en) Road condition drawing method and road condition drawing device
WO2022199388A1 (en) Travel path planning method and travel path recommendation method
CN114265833A (en) Vehicle track guiding geographic space-time characteristic visualization analysis platform
CN113899384A (en) Method, device, apparatus, medium, and program for displaying intersection surface of lane-level road
CN113724279A (en) System, method, equipment and storage medium for automatically dividing traffic cells into road networks
CN104598548B (en) A kind of method and device of anal yzing agricul products price space relevance
Zhang et al. Automated detecting and placing road objects from street-level images
Khoche et al. Semantic 3d grid maps for autonomous driving
CN116562488B (en) Method, apparatus, computer device, medium and program product for generating flow guiding island
Yeh et al. Hierarchical polygonization for generating and updating lane-based road network information for navigation from road markings
CN115203352A (en) Lane level positioning method and device, computer equipment and storage medium
CN115525943A (en) Method and system for constructing three-dimensional road model based on bus line topological relation
CN115661444A (en) Image processing method, device, equipment, storage medium and product
CN101308028B (en) Navigational route database generalization method suitable for road information loading
CN117195441A (en) Method and related device for generating intersection surface
CN114332805A (en) Lane position acquisition method, lane position acquisition device, computer equipment and storage medium

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40092598

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant