WO2020143160A1 - 驾驶线路规划方法、装置、计算机设备及存储介质 - Google Patents
驾驶线路规划方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- WO2020143160A1 WO2020143160A1 PCT/CN2019/090222 CN2019090222W WO2020143160A1 WO 2020143160 A1 WO2020143160 A1 WO 2020143160A1 CN 2019090222 W CN2019090222 W CN 2019090222W WO 2020143160 A1 WO2020143160 A1 WO 2020143160A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- linked list
- data
- path
- user
- identification code
- 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.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION 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
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
- G06Q50/26—Government or public services
Definitions
- the present application relates to the field of data analysis technology, and in particular, to a driving route planning method, device, computer equipment, and storage medium.
- the route with frequent traffic jams is generally a road with a high traffic frequency.
- abcd the common route for multiple vehicles
- the traffic frequency is not taken into account during planning
- the impact of road planning may not solve the problem of traffic congestion.
- the embodiments of the present application provide a driving route planning method, device, computer equipment, and storage medium, which are designed to solve the problem that the existing road planning of urban roads is generally based on building distribution and other factors, which leads to The planned road route may cause traffic congestion because it does not consider the actual traffic flow of each road.
- an embodiment of the present application provides a driving route planning method, which includes:
- the linked list historical data corresponding to each user in the linked list is cut into multi-segment paths, and the multi-segment paths are counted to obtain a set of path statistics data;
- an embodiment of the present application provides a driving route planning device, including:
- the data storage unit is used to obtain the collected user path data, convert the user path data into linked list data, and store the corresponding linked list historical data in the constructed linked list;
- the data cutting unit is used to cut the historical data of the linked list corresponding to each user into multiple paths according to the preset cutting time interval value according to the linked list historical data corresponding to each user in the linked list, and to calculate the multiple path to obtain Collection of path statistics;
- a first route set obtaining unit configured to obtain a route whose frequency ranking in the route statistical data set is before a preset first ranking threshold to form a first route set, and collect each route in the first route set The direct connection routes formed by the corresponding start point and end point are counted to obtain the first set of planned routes.
- an embodiment of the present application further provides a computer device, which includes a memory, a processor, and a computer program stored on the memory and executable on the processor, and the processor executes the computer
- the program implements the driving route planning method described in the first aspect above.
- an embodiment of the present application also provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the processor causes the processor to execute the first The driving route planning method described on the one hand.
- FIG. 1 is a schematic diagram of an application scenario of a driving route planning method provided by an embodiment of this application;
- FIG. 2 is a schematic flowchart of a driving route planning method provided by an embodiment of this application.
- FIG. 3 is another schematic flowchart of a driving route planning method provided by an embodiment of this application.
- FIG. 4 is a schematic diagram of a sub-process of a driving route planning method provided by an embodiment of the present application.
- FIG. 5 is a schematic diagram of another sub-process of the driving route planning method provided by the embodiment of the present application.
- FIG. 6 is a schematic block diagram of a driving route planning device provided by an embodiment of this application.
- FIG. 7 is another schematic block diagram of a driving route planning device provided by an embodiment of this application.
- FIG. 8 is a schematic block diagram of a subunit of a driving route planning device provided by an embodiment of this application.
- FIG. 9 is a schematic block diagram of another subunit of a driving route planning device provided by an embodiment of this application.
- FIG. 10 is a schematic block diagram of a computer device provided by an embodiment of the present application.
- FIG. 1 is a schematic diagram of an application scenario of a driving route planning method provided by an embodiment of the present application.
- FIG. 2 is a schematic flowchart of a driving route planning method provided by an embodiment of the present application.
- the driving route planning method is applied to In the server, the method is executed by the application software installed in the server.
- the method includes steps S110-S130.
- the server after the server receives the user path data collected and converted by the front-end collection device, the server stores the user path data corresponding to each user in a linked list to effectively monitor each user's path.
- step S110 includes steps S111-S115.
- S111 Receive user path data obtained by identifying the collected vehicle pictures, and store the user path data in the created temporary database.
- a front-end collection device (such as a surveillance camera) installed on the road collects multiple vehicle images and performs license plate recognition and uploads it to the server.
- the server receives user path data including the license plate number, and then the user The path data is stored in a temporary database created in the server. Since the uploading server is user path data, there is no need to upload vehicle pictures, which reduces the amount of data transmission.
- the message middleware is used to receive the user path data uploaded by the front-end collection device, and parse and process the user path data into linked list data and send it to the linked list for storage.
- the second is a front-end collection device, such as surveillance cameras installed on the road (these surveillance cameras are generally installed at intersections, highway toll gate intersections, important road sections, etc.), used to collect user path data and upload to message middleware, such as
- the user path data including the license plate number, the name of the current intersection passed, and the time point of the current intersection can be parsed and uploaded to the server, that is, the vehicle collected by the surveillance camera
- the picture includes at least the license plate number, the name of the current intersection passed, and the time point of passing the current intersection.
- the license plate number can be used as the user's unique identification code.
- the name of the current intersection passed and the time point of the current intersection can be used as unique to the user.
- the linked list data to be processed corresponding to the identification code For example, the surveillance camera set at the intersection A takes a picture of the vehicle a at the intersection A. The surveillance camera set at the intersection A performs license plate recognition to obtain the license plate number of the vehicle a. At this time, according to the license plate number of the vehicle a and the name of the intersection A (That is, the name of the current intersection) and the time when the surveillance camera set at the intersection A took the vehicle picture of the vehicle a at the intersection A (that is, the time point of passing the current intersection) can form user route data.
- step S111 user path data obtained by identifying the collected vehicle pictures is received, and the user path data is stored in the created temporary database, including:
- the message middleware is distributed publish and subscribe message middleware (distributed publish and subscribe message middleware is Kafka message middleware).
- Kafka message middleware can be visually understood as a large pool, constantly Various types of messages are produced, stored, and consumed, that is, producers write messages to queues (that is, image-understanding pools), and consumers take messages from the queues for business logic.
- Kafka message middleware is used as temporary storage data for user path data, which can effectively perform corresponding data processing and processing on user path data.
- the user path data obtained by recognizing the vehicle picture is first stored in the temporary database.
- the temporary database needs to be obtained from the temporary database according to a preset access cycle
- User route data is stored in the target area after data processing.
- the user unique identification code corresponding to the user path data and the to-be-processed linked list data corresponding to the user unique identification code are analyzed and obtained; wherein the to-be-processed
- the linked list data includes the name of the current intersection and the time point of passing the current intersection.
- the incremental data is temporarily stored in the temporary database.
- the temporary data is taken from the temporary Obtain incremental user path data from the database, update the user path data to the linked list, and delete the user path data that has been processed by the temporary database to avoid repeated insertion of the data into the linked list.
- a linked list data can be established for each user in the linked list.
- Each linked list data only stores relevant data of the user corresponding to the linked list data, and multiple linked list data can form a linked list.
- 1Use a set of arbitrary storage units to store the nodes of the linear table (this group of storage units can be either continuous or discontinuous)
- Chain storage is one of the most commonly used storage methods. It can be used to represent not only linear tables, but also various non-linear data structures.
- the linked list includes a data field (that is, a data field) and a next field (that is, a pointer field); the data field of each linked list data in the linked list is used to store the data value of the node value, such as the current intersection that is included in the user path data The name, the time point of passing the current intersection; the next field is used to store the pointer field (chain field) of the node's direct successor address (location).
- step S112 the method further includes:
- to-be-processed linked list data corresponding to the user unique identification code is multiple sets of linked list data, sort the linked list data included in the multiple sets of linked list data in ascending time order to obtain the sorted linked list data;
- to-be-processed linked list data corresponding to the user unique identification code is not multiple sets of linked list data, obtain the to-be-processed linked list data.
- each set of data corresponds to a unique user identification code
- each set of data can be processed according to the format of the linked list data, that is, each set of data is taken from the temporary database
- the to-be-processed linked list data in the set of data is encapsulated into the data field of the linked list data, and the pointer field of the linked list data is initially set to a null value.
- the identification attribute of the linked list data is set as the unique identification code of the user, and each group of user path data from the temporary database can be processed into linked list data through the above process.
- a Kafka message middleware resolves to a user's unique identification code (for example, denoted as user A1), which corresponds to user A1 passing through card mount a at 10:00:00 on June 1, 2018; user A1 is Passed the bayonet b at 09:00:00 on June 1, 2018, which means that the pending list data parsed by the user A1 includes 2 sets of linked list data, which needs to be included in the linked list historical data of the user Add 2 linked list storage units to store the linked list data at different time points.
- Both of the above two data correspond to the pending list data of user A1.
- A1 is ranked at the front of the user through the bayonet b at 09:00:00 on June 1, 2018;
- A1 is ranked at 10:00:00 on June 1, 2018, through the bayonet a, so that multiple groups of linked list data are adjusted in time sequence and then inserted into the linked list, which can store user path data in chronological order.
- S113 Traverse and determine whether the linked list historical data corresponding to the user unique identification code exists in the linked list stored locally.
- traversing and judging whether there is linked list historical data corresponding to the unique identification code of the user in the locally stored linked list is to determine the linked list Whether there is historical data corresponding to the user's unique identification code; if there is no linked list historical data corresponding to the user's unique identification code in the linked list, it is necessary to create an initial linked list in the linked list, and then insert the pending linked list data into the initial linked list ; If there is linked list historical data corresponding to the user's unique identification code in the linked list, insert the to-be-processed linked list data into the corresponding linked list historical data for storage.
- step S114 includes:
- the data field of the linked list is time point + bayonet; starting from the head of the linked list, it constantly finds the node specified by the next field (that is, the pointer field), and retains two pointer values for each move, one of which is t1 is Stay at the current node, another pointer t2 stays at the node in the next next domain; by comparing whether the target time is between the time corresponding to the node pointed to by t1 and t2, if it is, then the node pointed to by t1 and t2 Add a new node in the middle to save the current data.
- the method further includes:
- the linked list historical data corresponding to the user unique identification code does not exist in the linked list, it means that the vehicle corresponding to the user unique identification code is being monitored for the first time, and a new initial linked list needs to be created in the linked list.
- the identification attribute of the initial linked list is set to the unique identification code of the user, and then the data of the linked list to be processed is inserted into the initial linked list correspondingly.
- step S1141 the method further includes:
- the application container engine is located according to the user unique identification code, and the linked list historical data stored in the application container engine is obtained.
- each application container engine is named after the user's unique identification code as the identification attribute, and correspondingly stores the linked list data corresponding to the user's unique identification code .
- the linked list historical data corresponding to each user in the linked list is cut into multi-segment paths according to the preset cutting time interval value, and the multi-segment paths are counted to obtain a path statistical data set .
- step S120 includes:
- S121 Obtain the data of each node included in the linked list historical data corresponding to each user in the linked list;
- the linked list includes massive user's linked list historical data.
- Each user's linked list historical data represents the user's historical path data, which can accurately reflect when and through which bayonet the user passed.
- each node data includes a data field and a next field. The data field is used to store the node value data field, such as the name of the currently passed intersection and the current pass included in the user path data. Intersection time.
- the chain form of the linked list historical data is formed Cut off the chain connection between the two adjacent nodes in the data (that is, clear the pointing relationship between the two adjacent nodes); if the two adjacent nodes in the linked list historical data If the time interval of the point data does not exceed the preset cutting time interval value, the chain connection relationship of the two adjacent node data is maintained.
- each user's linked list historical data can be cut into multiple segments of the path, and the linked list historical data of multiple different users are all cut through the above method, so the linked list history corresponding to each user can be obtained
- the data is cut into multi-section paths, and the multi-section paths are counted to obtain a set of path statistics data.
- path prediction can be performed according to the path in the path statistical data.
- some paths with higher path frequency can be obtained in the path statistics data set. These higher frequency paths indicate that the user has a high probability of passing the path, such as the actual path
- the route is abcd, and in order to improve the traffic efficiency of this path, it can be suggested to directly build an ad directly connected path, which can greatly improve the efficiency of traffic and reduce traffic congestion.
- the frequency ranking of the paths in the path statistics data set is before the preset first ranking threshold to form the first path set
- the frequency of the path abcd is 10000 times
- the frequency of the defg is 20000 times
- the path The frequency of mln is 40,000
- the first ranking threshold is set to 4
- the frequency ranking of the path mln, defg, abcd ranks in the top 3 in the path statistics data set (that is, the frequency ranking is before the preset first ranking threshold) Therefore, the three paths mln, defg, and abcd constitute the first path set, and then mn, dg, and ad constitute the first planned route set.
- the method further includes:
- some paths with a higher path frequency during the search time period can be obtained from the path statistics data .
- These higher frequency paths indicate that the user has a high probability of passing the path.
- the actual route of the path is abcd, and in order to improve the traffic efficiency of the path, it is recommended to directly build an ad directly connected path, which can greatly Increase the efficiency of traffic and reduce traffic congestion.
- This method analyzes the traffic frequency of each road with fine-grained dimensional data, which helps to construct more accurate route planning.
- An embodiment of the present application further provides a driving route planning device, which is used to execute any embodiment of the foregoing driving route planning method.
- a driving route planning device which is used to execute any embodiment of the foregoing driving route planning method.
- FIG. 6, is a schematic block diagram of a driving route planning device provided by an embodiment of the present application.
- the driving route planning device 100 can be configured in a server.
- the driving route planning device 100 includes a data storage unit 110, a data cutting unit 120, and a first route set acquisition unit 130.
- the data storage unit 110 is configured to acquire the collected user path data, convert the user path data into linked list data, and store the corresponding linked list historical data in the constructed linked list.
- the data storage unit 110 includes a data temporary storage unit 111, a data analysis unit 112, a linked list traversal unit 113, and a data insertion unit 114.
- the data temporary storage unit 111 is configured to receive user route data obtained by identifying the collected vehicle pictures, and store the user route data in the created temporary database.
- the temporary data storage unit 111 is also used to:
- the data parsing unit 112 is configured to acquire the user path data from the temporary database according to a preset fetch cycle, and parse and acquire the user unique identification code corresponding to the user path data and the to-be-processed linked list corresponding to the user unique identification code data.
- the data storage unit 110 further includes:
- Multi-group linked list data judgment unit for judging whether the to-be-processed linked list data corresponding to the user unique identification code is multiple sets of linked list data; data sorting unit to be used if the to-be-processed linked list data corresponding to the user unique identification code For multiple sets of linked list data, sort the linked list data included in the multiple sets of linked list data in ascending time order to obtain the sorted linked list data; a data acquisition unit for processing if corresponding to the user unique identification code The linked list data is not multiple sets of linked list data, and the to-be-processed linked list data is obtained.
- the linked list traversing unit 113 is configured to traverse and determine whether there is linked list historical data corresponding to the user unique identification code in the locally stored linked list.
- the data insertion unit 114 is configured to insert the to-be-processed linked list data into the linked list historical data for storage if there is linked list historical data corresponding to the user unique identification code in the linked list.
- the data insertion unit 114 includes:
- a historical data acquiring unit used to acquire each linked list data in the linked list historical data, and a time point corresponding to each linked list data passing through the current intersection
- a current data acquiring unit used to acquire each of the pending linked list data Linked list data, and the time point corresponding to each linked list data passing through the current intersection
- sequentially inserting units used to sort the acquired historical data of the linked list and the acquired linked list data in ascending order according to the time point of passing the current intersection, Inserting each linked list data in the linked list data to be processed into the linked list historical data, and correspondingly adjusting the pointer field of each linked list data.
- the data storage unit 110 further includes:
- a linked list data creation unit 115 is used to establish initial linked list data in the linked list according to the user's unique identification code if there is no linked list historical data corresponding to the user's unique identification code in the linked list.
- the pending list data is inserted into the initial list data.
- the data storage unit 110 further includes:
- the storage container positioning unit is configured to locate an application container engine according to the user unique identification code and obtain the linked list historical data stored in the application container engine.
- the data cutting unit 120 is used to cut the historical data of the linked list corresponding to each user into multi-segment paths according to the preset historical value of the linked list corresponding to each user in the linked list according to the preset cutting time interval value. Get the path statistics data collection.
- the data cutting unit 120 includes: a node data acquisition unit 121 for acquiring data of each node included in the linked list historical data corresponding to each user in the linked list; the time difference The judging unit 122 is used to judge whether the difference between the time values corresponding to any adjacent node data exceeds the cutting time interval value; the linked list data cutting unit 123 is used to determine if there is adjacent node data corresponding to The difference between the time values exceeds the cutting time interval value, and the pointer relationship between corresponding adjacent node data is deleted to obtain a multi-segment path.
- the first route set obtaining unit 130 is configured to obtain a route whose frequency ranking of the route in the route statistical data set is before a preset first ranking threshold to form a first route set, and collect each of the first route sets The direct connection routes formed by the starting point and the ending point corresponding to the route are counted to obtain the first set of planned routes.
- the driving route planning device 100 further includes:
- the second route set obtaining unit 140 is configured to obtain a route whose frequency ranking in the route statistical data set is before a preset second ranking threshold within the search period to form a second route set, and The direct connection routes formed by the starting point and the end point of each path in the two path sets are counted to obtain a second set of planned routes.
- the device analyzes the traffic frequency of each road with fine-grained dimensional data, which helps to construct a more accurate route plan.
- the above driving route planning device may be implemented in the form of a computer program, and the computer program may run on the computer device shown in FIG. 10.
- FIG. 10 is a schematic block diagram of a computer device provided by an embodiment of the present application.
- the computer device 500 is a server.
- the server may be an independent server or a server cluster composed of multiple servers.
- the computer device 500 includes a processor 502, a memory, and a network interface 505 connected through a system bus 501, where the memory may include a nonvolatile storage medium 503 and an internal memory 504.
- the non-volatile storage medium 503 can store an operating system 5031 and a computer program 5032.
- the computer program 5032 When executed, it may cause the processor 502 to execute the driving route planning method.
- the processor 502 is used to provide computing and control capabilities to support the operation of the entire computer device 500.
- the internal memory 504 provides an environment for the operation of the computer program 5032 in the non-volatile storage medium 503. When the computer program 5032 is executed by the processor 502, the processor 502 can execute the driving route planning method.
- the network interface 505 is used for network communication, such as providing user path data transmission.
- the structure shown in FIG. 10 is only a block diagram of a part of the structure related to the solution of the present application, and does not constitute a limitation on the computer device 500 to which the solution of the present application is applied.
- the specific computer device 500 may include more or fewer components than shown in the figures, or combine certain components, or have a different arrangement of components.
- the processor 502 is used to run the computer program 5032 stored in the memory to implement the driving route planning method according to the embodiment of the present application.
- the embodiment of the computer device shown in FIG. 10 does not constitute a limitation on the specific configuration of the computer device.
- the computer device may include more or less components than shown in the figure. Or combine certain components, or arrange different components.
- the computer device may only include a memory and a processor. In such an embodiment, the structures and functions of the memory and the processor are consistent with the embodiment shown in FIG. 10, and details are not described herein again.
- the processor 502 may be a central processing unit (Central Processing Unit, CPU), and the processor 502 may also be other general-purpose processors, digital signal processors (Digital Signal Processor, DSP), Application specific integrated circuit (Application Specific Integrated Circuit, ASIC), ready-made programmable gate array (Field-Programmable Gate Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
- the general-purpose processor may be a microprocessor or the processor may be any conventional processor.
- a computer-readable storage medium may be a non-volatile computer-readable storage medium.
- the computer-readable storage medium stores a computer program, where the computer program is executed by the processor to implement the driving route planning method of the embodiment of the present application.
- the storage medium may be an internal storage unit of the foregoing device, such as a hard disk or a memory of the device.
- the storage medium may also be an external storage device of the device, such as a plug-in hard disk equipped on the device, a smart memory card (Smart) Card (SMC), a secure digital (SD) card, or a flash memory card (Flash Card) etc.
- the storage medium may also include both an internal storage unit of the device and an external storage device.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Human Resources & Organizations (AREA)
- Tourism & Hospitality (AREA)
- Economics (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- Educational Administration (AREA)
- Theoretical Computer Science (AREA)
- General Business, Economics & Management (AREA)
- Development Economics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Primary Health Care (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Traffic Control Systems (AREA)
Abstract
一种驾驶线路规划方法、装置、计算机设备及存储介质。该方法包括:获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中(S110);根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合(S120);以及获取所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合(S130)。
Description
本申请要求于2019年1月7日提交中国专利局、申请号为201910013079.4、申请名称为“驾驶线路规划方法、装置、计算机设备及存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及数据分析技术领域,尤其涉及一种驾驶线路规划方法、装置、计算机设备及存储介质。
目前,在进行城市规划,对城市道路进行线路规划时,一般是根据建筑分布或是其他因素来进行规划,这就导致所规划的道路路线可能因不合理而导致交通拥堵。经常交通拥堵的路线一般是车辆通行频率较高的道路,例如多个车辆的共同路线为a-b-c-d,表示从起点a至终点d的路线是通行频率较高的,若在规划时未考虑到通行频率的影响,可能规划设计的道路路线会无法解决交通拥堵问题。
发明内容
本申请实施例提供了一种驾驶线路规划方法、装置、计算机设备及存储介质,旨在解决现有技术中对城市道路进行线路规划时,一般是根据建筑分布等因素来进行规划,这就导致所规划的道路路线可能因未考虑各道路的实际车流量而导致交通拥堵的问题。
第一方面,本申请实施例提供了一种驾驶线路规划方法,其包括:
获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中;
根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合;以及
获取所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之 前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合。
第二方面,本申请实施例提供了一种驾驶线路规划装置,其包括:
数据存储单元,用于获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中;
数据切割单元,用于根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合;以及
第一路线集合获取单元,用于获取所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合。
第三方面,本申请实施例又提供了一种计算机设备,其包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面所述的驾驶线路规划方法。
第四方面,本申请实施例还提供了一种计算机可读存储介质,其中所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行上述第一方面所述的驾驶线路规划方法。
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的驾驶线路规划方法的应用场景示意图;
图2为本申请实施例提供的驾驶线路规划方法的流程示意图;
图3为本申请实施例提供的驾驶线路规划方法的另一流程示意图;
图4为本申请实施例提供的驾驶线路规划方法的子流程示意图;
图5为本申请实施例提供的驾驶线路规划方法的另一子流程示意图;
图6为本申请实施例提供的驾驶线路规划装置的示意性框图;
图7为本申请实施例提供的驾驶线路规划装置的另一示意性框图;
图8为本申请实施例提供的驾驶线路规划装置的子单元示意性框图;
图9为本申请实施例提供的驾驶线路规划装置的另一子单元示意性框图;
图10为本申请实施例提供的计算机设备的示意性框图。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1和图2,图1是本申请实施例提供的驾驶线路规划方法的应用场景示意图,图2是本申请实施例提供的驾驶线路规划方法的流程示意图,该驾驶线路规划方法应用于服务器中,该方法通过安装于服务器中的应用软件进行执行。
如图2所示,该方法包括步骤S110~S130。
S110、获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中。
在本实施例中,当服务器接收了由前端采集装置采集而转化得到的用户路径数据后,以链表的方式存储个用户对应的用户路径数据,以实现对每一用户的路径进行有效监控。
在一实施例中,如图4所示,步骤S110包括步骤S111-步骤S115。
S111、接收将所采集的车辆图片进行识别得到的用户路径数据,将所述用户路径数据存储至创建的临时数据库中。
在本实施例中,是设置在道路上的前端采集装置(如监控摄像头)采集到多张车辆图片并进行车牌识别后上传至服务器,服务器接收包括车牌号的用户路径数据,然后将所述用户路径数据存储至在服务器中创建的临时数据库中。由于上传服务器的是用户路径数据,无需上传车辆图片,降低了数据传输量。
为了更清楚的理解技术方案的使用场景(例如以监控用户的交通路线轨迹为例),下面对所涉及到的终端进行介绍。其中,在本申请中,是站在服务器的角度来描述技术方案。
一是服务器,服务器中部署有消息中间件和链表。消息中间件用于接收前端采集装置上传的用户路径数据,并将用户路径数据解析并处理成链表数据后发送至链表进行存储。
二是前端采集装置,例如设置在道路上的监控摄像头(这些监控摄像头一般安装在路口、高速路收费站路口、重要道路地段等地方),用于采集用户路径数据并上传至消息中间件,例如监控摄像头所采集的车辆图片本地进行车牌识别后,上传至服务器中可以解析获取的用户路径数据包括车牌号、所通过当前路口名称、通过当前路口的时间点等信息,即监控摄像头所采集的车辆图片至少包括车牌号、所通过当前路口名称、通过当前路口的时间点等信息,其中车牌号即可作为用户唯一识别码,所通过当前路口名称、及通过当前路口的时间点可作为与用户唯一识别码对应的待处理链表数据。例如A路口设置的监控摄像头在A路口拍摄到车辆a的车辆图片,通过A路口设置的监控摄像头进行车牌识别得到车辆a的车牌号,此时根据车辆a的车牌号、路口A的路口名称(即所通过当前路口名称)、及A路口设置的监控摄像头在A路口拍摄到车辆a的车辆图片的时间(即通过当前路口的时间点)即可组成用户路径数据。
在一实施例中,所述步骤S111中接收将所采集的车辆图片进行识别得到的用户路径数据,将所述用户路径数据存储至创建的临时数据库中,包括:
通过消息中间件接收将所采集的车辆图片进行识别得到的用户路径数据,将所述用户路径数据存储至在所述消息中间件中创建的临时数据库中;其中,所述消息中间件为分布式发布订阅消息中间件;所述用户路径数据包括车牌号、 所通过当前路口名称、通过当前路口的时间点。
在本实施例中,所述消息中间件为分布式发布订阅消息中间件(分布式发布订阅消息中间件即Kafka消息中间件),Kafka消息中间件可形象的理解为一个大的水池,不断的生产、存储、消费着各种类别的消息,即生产者往队列(即形象理解的水池)里写消息,消费者从队列里取消息进行业务逻辑。通过Kafka消息中间件作为用户路径数据的临时存储数据,能有效的对用户路径数据进行对应的数据加工和处理。
S112、按预设的取数周期从所述临时数据库中获取所述用户路径数据,解析获取用户路径数据对应的用户唯一识别码、及与用户唯一识别码对应的待处理链表数据。
在本实施例中,对车辆图片识别得到的用户路径数据是先存储在临时数据库中,为了消费临时数据库中的用户路径数据,需按预设的取数周期从所述临时数据库中获取所述用户路径数据,进行数据加工后存储至目标区域。在对从所述临时数据库中获取所述用户路径数据进行数据加工时,是解析获取用户路径数据对应的用户唯一识别码、及与用户唯一识别码对应的待处理链表数据;其中所述待处理链表数据包括所通过当前路口名称、通过当前路口的时间点。
即Kafka消息中间件中接收并保存了用户路径数据后,将增量的数据暂时保存在临时数据库中,当临时数据库中沉淀的增量的数据到达一定量,按预设的取数周期从临时数据库中获取增量的用户路径数据,将用户路径数据解析后,更新至链表中,并将临时数据库已经处理过的用户路径数据做删除操作,避免数据重复插入到链表中。
为了更清楚的理解本申请中采用链表存储数据,下面对链表进行介绍。
链表中可以针对每一用户建立一条链表数据,每一条链表数据中仅保存与该链表数据所对应用户的相关数据,多条链表数据即可组成一张链表。
链表的具体存储表示为:
①用一组任意的存储单元来存放线性表的结点(这组存储单元既可以是连续的,也可以是不连续的)
②链表中结点的逻辑次序和物理次序不一定相同。为了能正确表示结点间的逻辑关系,在存储每个结点值的同时,还必须存储指示其后继结点的地址(或位置)信息(称为指针(pointer)或链(link))。
链式存储是最常用的存储方式之一,它不仅可用来表示线性表,而且可用来表示各种非线性的数据结构。
链表中包括data域(即数据域)和next域(即指针域);链表中每一条链表数据的data域用于存放结点值的数据域,如用户路径数据中所包括的所通过当前路口名称、通过当前路口的时间点;next域用于存放结点的直接后继的地址(位置)的指针域(链域)。
在一实施例中,步骤S112之后还包括:
判断与所述用户唯一识别码对应的待处理链表数据是否为多组链表数据;
若与所述用户唯一识别码对应的待处理链表数据为多组链表数据,将多组链表数据中所包括的链表数据按时间升序的方式进行排序,得到排序后的链表数据;
若与所述用户唯一识别码对应的待处理链表数据不为多组链表数据,获取所述待处理链表数据。
在本实施例中,当从临时数据库所取出多组数据后,每一组数据都对应一个用户唯一识别码,且每一组数据能根据链表数据的格式进行加工,即每组数据从临时数据库中取出时,将该组数据中的待处理链表数据封装至链表数据的数据域,并将该链表数据的指针域初始设置为空值。此时将该链表数据的标识属性置为用户唯一识别码,通过上述过程即可将每组从临时数据库的用户路径数据加工成链表数据。
显然,若有多组数据都对应同一个用户唯一识别码,表示与所述用户唯一识别码对应的待处理链表数据是否为多组链表数据。例如,在Kafka消息中间件中解析到某一用户唯一识别码(例如记为用户A1),其对应有在用户A1在2018年6月1日10:00:00通过卡口a;用户A1在在2018年6月1日09:00:00通过卡口b,这就表示该用户A1此次被解析的的待处理链表数据中包括2组链表数据,需要在该用户对应的链表历史数据中增加2个链表存储单元,以分别存储不同时间点的链表数据。上述两条数据均对应的是用户A1的待处理链表数据,此时按时间先后顺序进排序时,A1在在2018年6月1日09:00:00,通过卡口b排在之前;用户A1在2018年6月1日10:00:00,通过卡口a排在之后,这样将多组链表数据进行时间顺序调整后再插入链表,可实现按时间先后顺序存储用户路径数据。
S113、遍历并判断本地已存储的链表中是否存在与所述用户唯一识别码对应的链表历史数据。
在本实施例中,遍历并判断本地已存储的链表(本地已存储的链表即服务器中已存储的各链表)中是否存在与所述用户唯一识别码对应的链表历史数据,是为了判断链表中是否有该用户唯一识别码对应的历史数据;若链表中不存在与所述用户唯一识别码对应的链表历史数据,需要在链表中新建初始链表,再将所述待处理链表数据对应插入初始链表;若链表中存在与所述用户唯一识别码对应的链表历史数据,将所述待处理链表数据插入至对应链表历史数据进行存储即可。
S114、若链表中存在与所述用户唯一识别码对应的链表历史数据,将所述待处理链表数据插入至所述链表历史数据进行存储。
在一实施例中,所述步骤S114包括:
获取所述链表历史数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点;
获取所述待处理链表数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点;
按通过当前路口的时间点升序对获取所述链表历史数据及获取所述待处理链表数据进行排序,将所述待处理链表数据中每一链表数据插入至所述链表历史数据,并对应调整每一链表数据的指针域。
在本实施例中,链表的data域为时间点+卡口;从链表头开始,不断找到next域(即指针域)指定的节点,每次移动都保留两个指针值,其中一个指针t1是停留在当前的节点,另一个指针t2停留在下一个next域的节点;通过比对目标时间是否在t1和t2所指向的节点对应的时间之间,若是的话,则在t1和t2所指向的节点中间增加新增加一个节点,保存当前的数据。
将新增的数据不断更新到与用户唯一识别码对应的链表数据,实现了单一用户链表数据的更新。通过遍历每个用户唯一识别码对应的链表数据,将新增的链表数据补充到用户时序链表数据中,得到最新的链表数据(包含了时间+卡口),并且基于用户的链表数据,得到用户在不同路段(卡口与卡口之间构成路段)上的通行时间,即路段通行时间表。
在一实施例中,如图4所示,步骤S113之后,还包括:
S115、若所述链表中不存在与所述用户唯一识别码对应的链表历史数据,根据用户唯一识别码在链表对应建立初始链表数据,并将与用户唯一识别码对应的待处理链表数据插入至初始链表数据。
在本实施例中,若链表中不存在与所述用户唯一识别码对应的链表历史数据,表示所述用户唯一识别码对应的车辆是首次被监控拍摄,需要在链表中新建初始链表,将该初始链表的标识属性置为用户唯一识别码,再将所述待处理链表数据对应插入初始链表。
在一实施例中,步骤S1141之前,还包括:
根据所述用户唯一识别码定位应用容器引擎,获取所述应用容器引擎中存储的链表历史数据。
在本实施例中,可以在服务器建立多个应用容器引擎(即Docker容器),每一应用容器引擎以用户唯一识别码作为标识属性命名,并对应存储与所述用户唯一识别码对应的链表数据。通过对每个用户启动一个Docker容器,然后通过部署和启动Docker容器的程序,提高大规模用户快速更新链表。
S120、根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合。
在一实施例中,如图5所示,步骤S120包括:
S121、获取所述链表中每一用户对应的链表历史数据包括的各结点数据;
S122、判断任意相邻的结点数据对应的时间值之间的差值是否超出所述切割时间间隔值;
S123、若存在有相邻的结点数据对应的时间值之间的差值超出所述切割时间间隔值,将对应的相邻的结点数据之间指针关系进行删除,以得到多段路径。
在本实施例中,在链表中包括海量用户的链表历史数据,每一用户的链表历史数据表示该用户的历史路径数据,能准确的反映用户在何时路过何卡口。在每一用户的链表历史数据中每一结点数据均包括data域和next域,data域用于存放结点值的数据域,如用户路径数据中所包括的当前通过的路口名称和通过当前路口的时间。这样,一旦某一用户的链表历史数据中相邻两个结点数据的时间间隔超出预设的切割时间间隔值(如取切割时间间隔值为2小时),则将链表历史数据形成的链式数据中将上述相邻的两个结点之间的链式连接关系 切割断开(也就是清除上述两个相邻结点之间指针的指向关系);若链表历史数据中相邻两个结点数据的时间间隔未超出预设的切割时间间隔值,则保持上述相邻两个结点数据的链式连接关系。通过预设的切割时间间隔值,能将每一用户的链表历史数据切割成多段路径,而多个不同的用户的链表历史数据均经过上述方式的切割,故能得到与各用户对应的链表历史数据切割成多段路径,统计多段路径得到路径统计数据集合。
由于在路径统计数据集合中可获知路径统计数据包括哪些路径,以及与每一路径对应概率值,故在后续步骤中可根据路径统计数据中的路径进行路径预测。
S130、获取所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合。
在本实施例中,在不考虑时间维度时,可以在路径统计数据集合中获取路径频次较高的一些路径,这些频次较高的路径表示用户经过该路径的概率很高,如该路径的实际路线为a-b-c-d,而为了提高该路径的通行效率,可以建议直接修建一条a-d直连的路径,这样可以极大的提高通行的效率,减少交通拥堵。
例如,在所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之前的路径以组成第一路径集时,例如路径a-b-c-d的频次为10000次、d-e-f-g的频次为20000次、路径m-l-n的频次为40000次,且第一排名阈值设置为4,且路径m-l-n、d-e-f-g、a-b-c-d的频次排名在路径统计数据集合中排名前3位(即频次排名位于预设的第一排名阈值之前),故以路径m-l-n、d-e-f-g、a-b-c-d这3条路径组成第一路径集,然后以m-n、d-g、a-d组成第一规划线路集合。通过上述方式,能有效的筛选出车流量极大的路径,以作为修建起点与终点直连道路的依据。
在一实施例中,如图3所示,步骤S130之后还包括:
S140、获取所述路径统计数据集合中在搜索时间段内路径的频次排名位于预设的第二排名阈值之前的路径,以组成第二路径集,将所述第二路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第二规划线路集合。
在本实施例中,在考虑时间维度时,可以在路径统计数据中获取在搜索时间段(如上午7:30-9:00,下午5:30-7:30)路径频次较高的一些路径,这些频次 较高的路径表示用户经过该路径的概率很高,如该路径的实际路线为a-b-c-d,而为了提高该路径的通行效率,可以建议直接修建一条a-d直连的路径,这样可以极大的提高通行的效率,减少交通拥堵。
该方法以细粒度的维度数据分析各道路的通行频次,有助于构建更加准确的线路规划。
本申请实施例还提供一种驾驶线路规划装置,该驾驶线路规划装置用于执行前述驾驶线路规划方法的任一实施例。具体地,请参阅图6,图6是本申请实施例提供的驾驶线路规划装置的示意性框图。该驾驶线路规划装置100可以配置于服务器中。
如图6所示,驾驶线路规划装置100包括数据存储单元110、数据切割单元120、第一路线集合获取单元130。
数据存储单元110,用于获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中。
在一实施例中,如图8所示,数据存储单元110包括数据临时存储单元111、数据解析单元112、链表遍历单元113、数据插入单元114。
数据临时存储单元111,用于接收将所采集的车辆图片进行识别得到的用户路径数据,将所述用户路径数据存储至创建的临时数据库中。
在一实施例中,所述数据临时存储单元111还用于:
通过消息中间件接收将所采集的车辆图片进行识别得到的用户路径数据,将所述用户路径数据存储至在所述消息中间件中创建的临时数据库中;其中,所述消息中间件为分布式发布订阅消息中间件;所述用户路径数据包括车牌号、所通过当前路口名称、通过当前路口的时间点。
数据解析单元112,用于按预设的取数周期从所述临时数据库中获取所述用户路径数据,解析获取用户路径数据对应的用户唯一识别码、及与用户唯一识别码对应的待处理链表数据。
在一实施例中,数据存储单元110还包括:
多组链表数据判断单元,用于判断与所述用户唯一识别码对应的待处理链表数据是否为多组链表数据;数据排序单元,用于若与所述用户唯一识别码对应的待处理链表数据为多组链表数据,将多组链表数据中所包括的链表数据按时间升序的方式进行排序,得到排序后的链表数据;数据获取单元,用于若与 所述用户唯一识别码对应的待处理链表数据不为多组链表数据,获取所述待处理链表数据。
链表遍历单元113,用于遍历并判断本地已存储的链表中是否存在与所述用户唯一识别码对应的链表历史数据。
数据插入单元114,用于若链表中存在与所述用户唯一识别码对应的链表历史数据,将所述待处理链表数据插入至所述链表历史数据进行存储。
在一实施例中,所述数据插入单元114包括:
历史数据获取单元,用于获取所述链表历史数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点;当前数据获取单元,用于获取所述待处理链表数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点;依序插入单元,用于按通过当前路口的时间点升序对获取所述链表历史数据及获取所述待处理链表数据进行排序,将所述待处理链表数据中每一链表数据插入至所述链表历史数据,并对应调整每一链表数据的指针域。
在一实施例中,如图8所示,数据存储单元110还包括:
链表数据新建单元115,用于若所述链表中不存在与所述用户唯一识别码对应的链表历史数据,根据用户唯一识别码在链表对应建立初始链表数据,并将与用户唯一识别码对应的待处理链表数据插入至初始链表数据。
在一实施例中,数据存储单元110还包括:
存储容器定位单元,用于根据所述用户唯一识别码定位应用容器引擎,获取所述应用容器引擎中存储的链表历史数据。
数据切割单元120,用于根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合。
在一实施例中,如图9所示,数据切割单元120包括:结点数据获取单元121,用于获取所述链表中每一用户对应的链表历史数据包括的各结点数据;时间差值判断单元122,用于判断任意相邻的结点数据对应的时间值之间的差值是否超出所述切割时间间隔值;链表数据切割单元123,用于若存在有相邻的结点数据对应的时间值之间的差值超出所述切割时间间隔值,将对应的相邻的结点数据之间指针关系进行删除,以得到多段路径。
第一路线集合获取单元130,用于获取所述路径统计数据集合中路径的频次 排名位于预设的第一排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合。
在一实施例中,如图7所示,驾驶线路规划装置100还包括:
第二路线集合获取单元140,用于获取所述路径统计数据集合中在搜索时间段内路径的频次排名位于预设的第二排名阈值之前的路径,以组成第二路径集,将所述第二路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第二规划线路集合。
该装置以细粒度的维度数据分析各道路的通行频次,有助于构建更加准确的线路规划。
上述驾驶线路规划装置可以实现为计算机程序的形式,该计算机程序可以在如图10所示的计算机设备上运行。
请参阅图10,图10是本申请实施例提供的计算机设备的示意性框图。该计算机设备500是服务器。其中,服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图10,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032被执行时,可使得处理器502执行驾驶线路规划方法。该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行驾驶线路规划方法。该网络接口505用于进行网络通信,如提供用户路径数据的传输等。本领域技术人员可以理解,图10中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现本申请实施例的驾驶线路规划方法。
本领域技术人员可以理解,图10中示出的计算机设备的实施例并不构成对 计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图10所示实施例一致,在此不再赘述。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(Central Processing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本申请的另一实施例中提供计算机可读存储介质。该计算机可读存储介质可以为非易失性的计算机可读存储介质。该计算机可读存储介质存储有计算机程序,其中计算机程序被处理器执行时实现本申请实施例的驾驶线路规划方法。
所述存储介质可以是前述设备的内部存储单元,例如设备的硬盘或内存。所述存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (20)
- 一种驾驶线路规划方法,包括:获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中;根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合;以及获取所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合。
- 根据权利要求1所述的驾驶线路规划方法,其中,所述获取所述路径统计数据集合中路径的频次排名位于预设排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线,以得到第一规划线路集合之后,还包括:获取所述路径统计数据集合中在搜索时间段内路径的频次排名位于预设的第二排名阈值之前的路径,以组成第二路径集,将所述第二路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第二规划线路集合。
- 根据权利要求1所述的驾驶线路规划方法,其中,所述按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,包括:获取所述链表中每一用户对应的链表历史数据包括的各结点数据;判断任意相邻的结点数据对应的时间值之间的差值是否超出所述切割时间间隔值;若存在有相邻的结点数据对应的时间值之间的差值超出所述切割时间间隔值,将对应的相邻的结点数据之间指针关系进行删除,以得到多段路径。
- 根据权利要求1所述的驾驶线路规划方法,其中,所述获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中,包括:接收将所采集的车辆图片进行识别得到的用户路径数据,将所述用户路径数据存储至创建的临时数据库中;按预设的取数周期从所述临时数据库中获取所述用户路径数据,解析获取用户路径数据对应的用户唯一识别码、及与用户唯一识别码对应的待处理链表数据;遍历并判断本地已存储的链表中是否存在与所述用户唯一识别码对应的链表历史数据;若链表中存在与所述用户唯一识别码对应的链表历史数据,将所述待处理链表数据插入至所述链表历史数据进行存储。
- 根据权利要求4所述的驾驶线路规划方法,其中,所述遍历并判断本地已存储的链表中是否存在与所述用户唯一识别码对应的链表历史数据之后,还包括:若所述链表中不存在与所述用户唯一识别码对应的链表历史数据,根据用户唯一识别码在链表对应建立初始链表数据,并将与用户唯一识别码对应的待处理链表数据插入至初始链表数据。
- 根据权利要求4所述的驾驶线路规划方法,其中,所述将所述待处理链表数据插入至所述链表历史数据进行存储,包括:获取所述链表历史数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点;获取所述待处理链表数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点;按通过当前路口的时间点升序对获取的所述链表历史数据及获取的所述待处理链表数据进行排序,将所述待处理链表数据中每一链表数据插入至所述链表历史数据,并对应调整每一链表数据的指针域。
- 根据权利要求6所述的驾驶线路规划方法,其中,所述获取所述链表历史数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点之前,还包括:根据所述用户唯一识别码定位应用容器引擎,获取所述应用容器引擎中存储的链表历史数据。
- 根据权利要求4所述的驾驶线路规划方法,其中,所述解析获取用户路径数据对应的用户唯一识别码、及与用户唯一识别码对应的待处理链表数据之后,还包括:判断与所述用户唯一识别码对应的待处理链表数据是否为多组链表数据;若与所述用户唯一识别码对应的待处理链表数据为多组链表数据,将多组链表数据中所包括的链表数据按时间升序的方式进行排序,得到排序后的链表数据;若与所述用户唯一识别码对应的待处理链表数据不为多组链表数据,获取所述待处理链表数据。
- 根据权利要求4所述的驾驶线路规划方法,其中,按预设的取数周期从所述临时数据库中获取所述用户路径数据,包括:若临时数据库中沉淀的增量的数据到达预设的数据量,按预设的取数周期从临时数据库中获取增量的用户路径数据,将用户路径数据解析后,更新至链表中,并将临时数据库已经解析处理过的用户路径数据做删除操作。
- 一种驾驶线路规划装置,其中,包括:数据存储单元,用于获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中;数据切割单元,用于根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合;以及第一路线集合获取单元,用于获取所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合。
- 一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现以下步骤:获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中;根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合;以及获取所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之 前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合。
- 根据权利要求11所述的计算机设备,其中,所述获取所述路径统计数据集合中路径的频次排名位于预设排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线,以得到第一规划线路集合之后,还包括:获取所述路径统计数据集合中在搜索时间段内路径的频次排名位于预设的第二排名阈值之前的路径,以组成第二路径集,将所述第二路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第二规划线路集合。
- 根据权利要求11所述的计算机设备,其中,所述按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,包括:获取所述链表中每一用户对应的链表历史数据包括的各结点数据;判断任意相邻的结点数据对应的时间值之间的差值是否超出所述切割时间间隔值;若存在有相邻的结点数据对应的时间值之间的差值超出所述切割时间间隔值,将对应的相邻的结点数据之间指针关系进行删除,以得到多段路径。
- 根据权利要求11所述的计算机设备,其中,所述获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中,包括:接收将所采集的车辆图片进行识别得到的用户路径数据,将所述用户路径数据存储至创建的临时数据库中;按预设的取数周期从所述临时数据库中获取所述用户路径数据,解析获取用户路径数据对应的用户唯一识别码、及与用户唯一识别码对应的待处理链表数据;遍历并判断本地已存储的链表中是否存在与所述用户唯一识别码对应的链表历史数据;若链表中存在与所述用户唯一识别码对应的链表历史数据,将所述待处理链表数据插入至所述链表历史数据进行存储。
- 根据权利要求14所述的计算机设备,其中,所述遍历并判断本地已存储的链表中是否存在与所述用户唯一识别码对应的链表历史数据之后,还包括:若所述链表中不存在与所述用户唯一识别码对应的链表历史数据,根据用户唯一识别码在链表对应建立初始链表数据,并将与用户唯一识别码对应的待处理链表数据插入至初始链表数据。
- 根据权利要求14所述的计算机设备,其中,所述将所述待处理链表数据插入至所述链表历史数据进行存储,包括:获取所述链表历史数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点;获取所述待处理链表数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点;按通过当前路口的时间点升序对获取的所述链表历史数据及获取的所述待处理链表数据进行排序,将所述待处理链表数据中每一链表数据插入至所述链表历史数据,并对应调整每一链表数据的指针域。
- 根据权利要求16所述的计算机设备,其中,所述获取所述链表历史数据中每一链表数据,及每一链表数据对应的通过当前路口的时间点之前,还包括:根据所述用户唯一识别码定位应用容器引擎,获取所述应用容器引擎中存储的链表历史数据。
- 根据权利要求14所述的计算机设备,其中,所述解析获取用户路径数据对应的用户唯一识别码、及与用户唯一识别码对应的待处理链表数据之后,还包括:判断与所述用户唯一识别码对应的待处理链表数据是否为多组链表数据;若与所述用户唯一识别码对应的待处理链表数据为多组链表数据,将多组链表数据中所包括的链表数据按时间升序的方式进行排序,得到排序后的链表数据;若与所述用户唯一识别码对应的待处理链表数据不为多组链表数据,获取所述待处理链表数据。
- 根据权利要求14所述的计算机设备,其中,按预设的取数周期从所述临时数据库中获取所述用户路径数据,包括:若临时数据库中沉淀的增量的数据到达预设的数据量,按预设的取数周期从临时数据库中获取增量的用户路径数据,将用户路径数据解析后,更新至链 表中,并将临时数据库已经解析处理过的用户路径数据做删除操作。
- 一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机程序,所述计算机程序当被处理器执行时使所述处理器执行以下操作:获取所采集的用户路径数据,将所述用户路径数据转化为链表数据,并存储在构建的链表中对应的链表历史数据中;根据所述链表中与每一用户对应的链表历史数据,按照预设的切割时间间隔值,将与每一用户对应的链表历史数据切割成多段路径,统计多段路径以得到路径统计数据集合;以及获取所述路径统计数据集合中路径的频次排名位于预设的第一排名阈值之前的路径,以组成第一路径集,将所述第一路径集中每一路径对应的起点与终点形成的直连路线进行统计,以得到第一规划线路集合。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201910013079.4 | 2019-01-07 | ||
| CN201910013079.4A CN109886532B (zh) | 2019-01-07 | 2019-01-07 | 驾驶线路规划方法、装置、计算机设备及存储介质 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2020143160A1 true WO2020143160A1 (zh) | 2020-07-16 |
Family
ID=66925708
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2019/090222 Ceased WO2020143160A1 (zh) | 2019-01-07 | 2019-06-06 | 驾驶线路规划方法、装置、计算机设备及存储介质 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN109886532B (zh) |
| WO (1) | WO2020143160A1 (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114266377A (zh) * | 2021-11-12 | 2022-04-01 | 国网浙江省电力有限公司杭州供电公司 | 基于电力物联网的移动应急电源空间调度系统及方法 |
| CN114815756A (zh) * | 2022-06-02 | 2022-07-29 | 遥相科技发展(北京)有限公司 | 一种移动机器人的行径作业智能规划方法及装置 |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008076192A (ja) * | 2006-09-20 | 2008-04-03 | Clarion Co Ltd | ナビゲーション装置、高速道路検索方法及びコンピュータプログラム |
| CN101937613A (zh) * | 2010-06-29 | 2011-01-05 | 中国科学院软件研究所 | 一种基于公交车网络的数据传输方法 |
| CN103217166A (zh) * | 2012-01-21 | 2013-07-24 | 日电(中国)有限公司 | 用于抽取用户路线选择偏好的方法和系统 |
| CN104121908A (zh) * | 2013-04-25 | 2014-10-29 | 北京搜狗信息服务有限公司 | 一种延时路径规划的方法和系统 |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7349800B2 (en) * | 2005-04-12 | 2008-03-25 | International Business Machines Corporation | Adaptable navigation system |
| JP2007178126A (ja) * | 2005-12-26 | 2007-07-12 | Aisin Aw Co Ltd | 走行リンク特定システム |
| US8103532B2 (en) * | 2008-10-23 | 2012-01-24 | Raytheon Company | Method and system for fast local search and insertion heuristics for vehicle routing |
| US20170006161A9 (en) * | 2013-03-15 | 2017-01-05 | Genesys Telecommunications Laboratories, Inc. | Intelligent automated agent for a contact center |
| CN107767685B (zh) * | 2016-08-23 | 2020-08-21 | 杭州海康威视系统技术有限公司 | 一种寻车系统及方法 |
| US10579062B2 (en) * | 2017-05-31 | 2020-03-03 | Baidu Usa Llc | Scalable smooth reference path generator for autonomous driving vehicles |
-
2019
- 2019-01-07 CN CN201910013079.4A patent/CN109886532B/zh active Active
- 2019-06-06 WO PCT/CN2019/090222 patent/WO2020143160A1/zh not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2008076192A (ja) * | 2006-09-20 | 2008-04-03 | Clarion Co Ltd | ナビゲーション装置、高速道路検索方法及びコンピュータプログラム |
| CN101937613A (zh) * | 2010-06-29 | 2011-01-05 | 中国科学院软件研究所 | 一种基于公交车网络的数据传输方法 |
| CN103217166A (zh) * | 2012-01-21 | 2013-07-24 | 日电(中国)有限公司 | 用于抽取用户路线选择偏好的方法和系统 |
| CN104121908A (zh) * | 2013-04-25 | 2014-10-29 | 北京搜狗信息服务有限公司 | 一种延时路径规划的方法和系统 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN114266377A (zh) * | 2021-11-12 | 2022-04-01 | 国网浙江省电力有限公司杭州供电公司 | 基于电力物联网的移动应急电源空间调度系统及方法 |
| CN114815756A (zh) * | 2022-06-02 | 2022-07-29 | 遥相科技发展(北京)有限公司 | 一种移动机器人的行径作业智能规划方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN109886532A (zh) | 2019-06-14 |
| CN109886532B (zh) | 2023-10-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN110417901B (zh) | 数据处理方法、装置及网关服务器 | |
| WO2020143170A1 (zh) | 预测路线获取方法、装置、计算机设备及存储介质 | |
| CN112000502A (zh) | 海量错误日志的处理方法、装置、电子装置及存储介质 | |
| CN109670091B (zh) | 一种基于数据标准的元数据智能维护方法和装置 | |
| WO2020143181A1 (zh) | 数据存储方法、装置、计算机设备及存储介质 | |
| US20230042747A1 (en) | Message Processing Method and Device, Storage Medium, and Electronic Device | |
| CN103942312A (zh) | 公交换乘线路规划方法和装置 | |
| WO2020143160A1 (zh) | 驾驶线路规划方法、装置、计算机设备及存储介质 | |
| AU2018215877B2 (en) | A method of predicting a traffic behaviour in a road system | |
| CN111277467B (zh) | 一种通信装置、数据流识别方法及相关设备 | |
| CN115544088A (zh) | 地址信息查询方法、装置、电子设备及存储介质 | |
| CN104933136A (zh) | 基于海量车牌自动识别数据的动态拼车方法和系统 | |
| CN117500001A (zh) | 三防手机的数据传输方法、系统、三防手机以及存储介质 | |
| WO2023093257A1 (zh) | 一种自动驾驶业务的建模方法和相关设备 | |
| CN111868777B (zh) | 中央控制系统和方法 | |
| CN108282414A (zh) | 一种数据流的引导方法、服务器和系统 | |
| CN117892110A (zh) | 设备巡检方法、装置、设备及存储介质 | |
| CN111679919A (zh) | 数据交互方法、装置、设备及存储介质 | |
| CN116910144A (zh) | 算力网络资源中心、算力服务系统以及数据处理方法 | |
| CN115798174A (zh) | 多灾害预警信息的融合处理方法、装置、设备及存储介质 | |
| CN118626497B (zh) | 一种基于分布式二级索引的地铁票卡记录存储和索引方法 | |
| CN115705259A (zh) | 故障处理方法、相关设备及存储介质 | |
| CN118522151A (zh) | 一种交通流预测方法、装置、设备及介质 | |
| CN109858682B (zh) | 消失路线预测方法、装置、计算机设备及存储介质 | |
| CN116866213A (zh) | 一种流量分布获取方法、装置、设备及存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19908681 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 19908681 Country of ref document: EP Kind code of ref document: A1 |