Methods and devices for determining driving routes, and a driving route display system.
By acquiring fill data and matching historical trajectories, the problem of inaccurate driving paths caused by missing vehicle positioning data was solved, achieving stable and accurate path display in severe weather or complex road conditions.
Patent Information
- Application Number
- CN202310471111.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-04-26
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2043-04-26
AI Technical Summary
In severe weather or complex road conditions, missing vehicle positioning data can lead to inaccurate predictions of vehicle travel paths, resulting in vehicles appearing discontinuously or disappearing from the map.
By acquiring fill data, a target data segment is generated and matched with historical trajectory data segments to determine the target historical trajectory data segment as the vehicle's driving path. The best historical trajectory data segment is matched using Euclidean distance and similarity algorithms to achieve path prediction.
When location data is missing, accurately predict the vehicle's driving path to ensure the continuity and accuracy of the path display and prevent vehicles from disappearing from the map.
Smart Images

Figure CN116434550B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of vehicle monitoring technology, and more specifically, to a method and apparatus for determining a driving path and a driving path display system. Background Technology
[0002] With the continuous maturation of core IoT technologies, intelligent remote monitoring terminal products, integrating data acquisition, remote transmission, remote positioning, and remote control, can acquire massive amounts of vehicle positioning data when applied to vehicle monitoring technology. Effective processing of this data can then reveal the vehicle's travel path. However, if a vehicle is affected by severe weather or passes through streets, rooftops, overpasses, tunnels, or other areas with poor road conditions, it may be unable to receive positioning data from the BeiDou Navigation Satellite System / Global Positioning System (GPS) at certain times. In such cases, real-time vehicle positioning cannot be achieved, resulting in missing vehicle positioning data on the remote monitoring service platform. This leads to discontinuities in the vehicle's real-time trajectory on the client's real-time map interface, and in severe cases, the vehicle may even "disappear" from the map altogether.
[0003] There is currently no effective solution to the above problems. Summary of the Invention
[0004] This application provides a method and apparatus for determining a driving path, and a driving path display system, to at least solve the technical problem of inaccurate vehicle driving path prediction results caused by missing vehicle positioning data.
[0005] According to one aspect of the embodiments of this application, a method for determining a driving path is provided, comprising: acquiring first target data, wherein the first target data includes positioning data of a target vehicle during driving; in the event that the first target data received within a first preset time interval is missing, acquiring filler data, and generating a first target data segment based on the first target data and the filler data; determining a target historical trajectory data segment corresponding to the first target data segment, and determining the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle within the first preset time interval.
[0006] Optionally, obtaining the fill data includes: obtaining a data sequence corresponding to a second preset time interval, wherein the second preset time interval is the time interval preceding the first preset time interval, the data sequence consists of continuous positioning data received within the second preset time interval, and the data sequence is stored in a knowledge base; and determining the data in the data sequence as fill data.
[0007] Optionally, determining the target historical trajectory data segment corresponding to the first target data segment includes: acquiring historical trajectory data segments; determining multiple historical trajectory data segments to be matched in the historical trajectory data segments; determining the similarity between each historical trajectory data segment to be matched and the first target data segment, and determining the historical trajectory data segment to be matched with the highest similarity to the target data segment as the target historical trajectory data segment.
[0008] Optionally, obtaining historical trajectory data segments includes: obtaining historical trajectory data of the target vehicle, wherein the historical trajectory data consists of multiple historical target data; segmenting the historical trajectory data to obtain multiple data segments, wherein the number of historical target data in each data segment is the same; deleting the data segments containing discrete historical target data from the multiple data segments to obtain historical trajectory data segments.
[0009] Optionally, multiple historical trajectory data segments to be matched are determined in the historical trajectory data segment, including: comparing the historical target data in the historical trajectory data segment with the first target data and the filling data in the first target data segment respectively to obtain a comparison result; if the comparison result indicates that there is historical target data in the historical trajectory data segment that is the same as the first target data, or if there is historical target data in the historical trajectory data segment that is the same as the filling data, the historical trajectory data segment is determined as the historical trajectory data segment to be matched.
[0010] Optionally, determining the similarity between each historical trajectory data segment to be matched and the first target data segment includes: determining the sum of Euclidean distances between multiple historical target data in the historical trajectory data segment to be matched and multiple data in the target data segment at the same acquisition time; determining the similarity between the historical trajectory data segment to be matched and the first target data segment based on the sum of Euclidean distances, wherein the similarity is inversely proportional to the sum of Euclidean distances.
[0011] Optionally, the method for determining the driving path further includes: if the first target data received within the third preset time interval is missing, determining all historical trajectory data segments corresponding to the target historical trajectory data segment, wherein the third preset time interval is the time interval following the first preset time interval; generating a second target data segment based on the data in the remaining historical trajectory data segment and the first target data received within the third preset time interval, wherein the remaining historical trajectory data segment is the data segment other than the target historical trajectory data segment among all historical trajectory data segments; determining the driving path corresponding to the second target data segment as the driving path of the target vehicle within the third preset time interval; if the first target data received within the third preset time interval is not missing, determining the real-time driving path corresponding to the third preset time interval, and jointly determining the target driving path and the real-time driving path as the driving path of the target vehicle from the first preset time interval to the third preset time interval.
[0012] Optionally, the method for determining the driving route further includes: if the number of first target data received in the first preset time interval is zero, determining that the target vehicle is out of contact.
[0013] According to another aspect of the embodiments of this application, a driving route display system is also provided, including: a remote monitoring terminal, a server, and a client, wherein the remote monitoring terminal is connected to the server and is used to acquire first target data and send the first target data to the server; the server is used to execute the above-described method for determining the driving route; and the client is connected to the server and is used to display the driving route of the target vehicle.
[0014] According to another aspect of the embodiments of this application, an apparatus for determining a driving path is also provided, comprising: an acquisition module for acquiring first target data, wherein the first target data includes positioning data of a target vehicle during the driving process; a generation module for acquiring filler data when it is determined that the first target data received within a first preset time interval is missing, and generating a first target data segment based on the first target data and the filler data; and a determination module for determining a target historical trajectory data segment corresponding to the first target data segment, and determining the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle within the first preset time interval.
[0015] According to another aspect of the embodiments of this application, a non-volatile storage medium is also provided, which stores a computer program, wherein the device containing the non-volatile storage medium executes the above-described method for determining a travel path by running the computer program.
[0016] According to another aspect of the embodiments of this application, an electronic device is also provided, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to execute the above-described method for determining a driving path through the computer program.
[0017] In this embodiment, the method involves: acquiring first target data, which includes the positioning data of the target vehicle during its driving process; acquiring filler data when the first target data received within a first preset time interval is missing, and generating a first target data segment based on the first target data and the filler data; determining a target historical trajectory data segment corresponding to the first target data segment, and determining the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle within the first preset time interval; processing the massive historical trajectory data generated during the actual driving of the vehicle to obtain standard historical trajectory segments, and storing the standard historical trajectory segments in a database; and when the vehicle is driving in real time... When trajectory data is missing, a discrete positioning data sequence is formed by combining estimated trajectory data and real-time trajectory data. The best historical trajectory segment of the discrete positioning data sequence is then matched with the data from the knowledge base. Based on the best historical trajectory segment, the vehicle's driving path during the data-missing period is estimated, achieving the goal of accurately predicting the vehicle's driving path when data is missing. Furthermore, by displaying the estimated driving path when data is missing and the actual driving path when there is no data missing, the above solution corrects the estimated trajectory. This achieves the technical effect of stably and accurately displaying the vehicle's driving path, thereby solving the technical problem of inaccurate vehicle driving path prediction results caused by missing vehicle positioning data. Attached Figure Description
[0018] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0019] Figure 1 This is a flowchart of a method for determining a driving path according to an embodiment of this application;
[0020] Figure 2 This is a schematic diagram illustrating the generation of a target data segment according to an embodiment of this application;
[0021] Figure 3 This is a schematic diagram of a historical trajectory data segment according to an embodiment of this application;
[0022] Figure 4 This is a structural diagram of a driving path display system according to an embodiment of this application;
[0023] Figure 5This is a structural diagram of a device for determining a driving path according to an embodiment of this application. Detailed Implementation
[0024] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0025] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0026] To better understand the embodiments of this application, the technical terms involved in the embodiments of this application are explained below:
[0027] Data Transfer Unit (DTU): A wireless terminal device specifically designed to convert serial port data into IP data or convert IP data into serial port data for transmission over a wireless communication network.
[0028] IP data: Data transmitted based on network protocols.
[0029] In related technologies, linear or nonlinear prediction methods are used to estimate vehicle trajectories. Specifically, when the current vehicle's location data is missing, its historical data is directly used to predict the trajectory. However, due to the high uncertainty of vehicle paths within a short period and the difficulty in modeling, the prediction results suffer from low accuracy. To address this issue, this application provides a related solution, which is detailed below.
[0030] According to an embodiment of this application, a method for determining a driving path is provided. It should be noted that the steps shown in the flowchart in the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions. Furthermore, although a logical order is shown in the flowchart, in some cases, the steps shown or described may be executed in a different order than that shown here.
[0031] Figure 1 This is a flowchart of a method for determining a driving path according to an embodiment of this application, such as... Figure 1 As shown, the method includes the following steps:
[0032] Step S102: Obtain first target data, wherein the first target data includes the positioning data of the target vehicle during its driving process.
[0033] This application applies the method for determining the driving path to an in-vehicle monitoring platform, and applies a DTU to an in-vehicle monitoring terminal device. In step S102, the in-vehicle monitoring platform receives the positioning data (i.e., the first target data) of the (target) vehicle sent by the in-vehicle monitoring terminal device. The in-vehicle monitoring terminal device obtains the longitude and latitude coordinates of the (target) vehicle in real time from the Beidou satellite navigation system or GPS through the DTU. It combines the longitude and latitude coordinates of the (target) vehicle at each moment to form the positioning data of the (target) vehicle at the current moment, converts it into IP data that can be transmitted through network protocols, and sends the converted positioning data to the in-vehicle monitoring platform through a communication network (such as a 4G communication network, a 5G communication network, etc.) according to the reporting frequency. The positioning data is different at different times during the driving process of the target vehicle.
[0034] Step S104: If the first target data received within the first preset time interval is missing, obtain the filling data and generate the first target data segment based on the first target data and the filling data.
[0035] In step S104, if data loss occurs within a receiving period (i.e., the first preset time interval) and the number of missing data meets a preset condition, filler data is obtained. Specifically, if the number of received positioning data within a receiving period (i.e., the first preset time interval) does not meet a preset value, or if it is detected that multiple data points corresponding to receiving times within the receiving period (i.e., the first preset time interval) do not have corresponding positioning data, it is determined that data loss has occurred. When data loss occurs, the number of received positioning data is determined. If the number of received positioning data is less than a preset value, filler data is obtained to fill the data volume within the receiving period until the sum of the number of filler data and the number of received positioning data equals the preset value, then filling stops, and the filler data and the received real-time positioning data form a (first) target data segment. For example, if the preset value is set to 3, then when the number of received real-time positioning data within the receiving period (i.e., the first preset time interval) is less than 3, filler data is obtained, wherein the number of filler data obtained is the difference between 3 and the received real-time positioning data.
[0036] The process of obtaining fill data includes: obtaining a data sequence corresponding to a second preset time interval, wherein the second preset time interval is the time interval preceding the first preset time interval, the data sequence consists of continuous positioning data received within the second preset time interval, and the data sequence is stored in a knowledge base; and determining the data in the data sequence as fill data.
[0037] Figure 2 This is a schematic diagram of generating the target data segment. Figure 2 The process of generating the target data segment will be explained in detail using an example, such as... Figure 2 As shown, a pre-defined reception period contains 6 reception times, each corresponding to a location data point. The location data received within this reception period is arranged according to the time of reception, such as... Figure 2 As shown, there are 6 data points in a receiving period: A1, A2, A3, A4, A5, and A6. Each data point corresponds to a real-time location data reception time (i.e., the first acquisition time). Each data point stores one real-time received location data point, and the location data corresponding to each data point is stored sequentially according to the time of reception. Specifically, the reception time of data point A6 is earlier than that of data point A5, the reception time of data point A5 is earlier than that of data point A4, the reception time of data point A4 is earlier than that of data point A3, the reception time of data point A3 is earlier than that of data point A2, and the reception time of data point A2 is earlier than that of data point A1. Figure 2The first data sequence shows that, in the absence of data loss, real-time received positioning data (R) is stored at each reception time; as shown in the first data sequence. Figure 2 As shown in the second data sequence, data loss occurs during the receiving period. At this time, only data points A6 and A1 have real-time received positioning data (R) stored, while the remaining data points have not received data. In this case, the amount of real-time received positioning data is less than the preset value of 3, and filler data needs to be obtained. In this embodiment, the filler data (F) is obtained by the following method: the data sequence corresponding to the previous receiving period (i.e., the second preset time interval) of the current receiving period (i.e., the first preset time interval) is obtained from the historical data of the vehicle (i.e., the target vehicle). The data in the driving trajectory data segment (i.e., the data sequence) of the previous receiving period (i.e., the second preset time interval) is used as filler data. The driving trajectory data segment (i.e., the data sequence) of the previous receiving period (i.e., the second preset time interval) includes data points: B1, B2, B3, B4, B5, and B6. Each data point corresponds to the receiving time of a trajectory data, and each data point stores a trajectory data (i.e., filler data F). In this data set, data point A1 corresponds to data point B1, data point A2 corresponds to data point B2, data point A3 corresponds to data point B3, data point A4 corresponds to data point B4, data point A5 corresponds to data point B5, and data point A6 corresponds to data point B6. Since the positioning data for data points A2, A3, A4, and A5 is missing, the trajectory data for data points B2, B3, B4, and B5 in the driving trajectory data segment (i.e., data sequence) is used as the data to be filled. Since two real-time positioning data points have already been received and the preset value is 3, the number of filler data points needed is 3 - 2 = 1. Therefore, one trajectory data point (F) is randomly selected from the trajectory data for data points B2, B3, B4, and B5 as the filler data. If the selected trajectory data (F) is from B2, it will correspond to the real-time received data. The positioning data forms the target data segment corresponding to the data points [A1, A2, A6]. If the trajectory data (F) under B3 is selected, it forms the target data segment corresponding to the data points [A1, A3, A6] together with the real-time received positioning data. If the trajectory data (F) under B4 is selected, it forms the target data segment corresponding to the data points [A1, A4, A6] together with the real-time received positioning data. If the trajectory data (F) under B5 is selected, it forms the target data segment corresponding to the data points [A1, A5, A6] together with the real-time received positioning data.
[0038] Step S106: Determine the target historical trajectory data segment corresponding to the first target data segment, and determine the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle within the first preset time interval.
[0039] In step S106, the historical trajectory data segment (i.e., the target historical trajectory data segment) that best matches the (first) target data segment obtained in step S104 is determined in the database. Since a historical trajectory data segment includes both the driving path corresponding to the historical trajectory data segment (i.e., the target driving path) and the driving path corresponding to the next receiving time period of the historical trajectory data segment, the driving path corresponding to the historical trajectory data segment (i.e., the target driving path) is first determined as the driving path of the (target) vehicle in the receiving time period (i.e., the first preset time interval). Then, based on whether there is data loss in the next receiving time period (i.e., the third preset time interval), it is determined whether the driving path corresponding to the next receiving time period is determined as the driving path of the (target) vehicle in the next receiving time period (i.e., the third preset time interval).
[0040] Through the above steps, it is possible to find the historical trajectory that best matches the current vehicle driving status from historical path trajectory data, and use the historical trajectory of this historical trajectory within the corresponding time period as the estimated path of the vehicle during the period when positioning data is missing; and continuously correct the estimated path based on the actual received positioning data, thereby ensuring that the real-time trajectory of the vehicle displayed on the display terminal is continuous and stable; thus improving the accuracy of the vehicle's estimated path.
[0041] The determination of the target historical trajectory data segment corresponding to the first target data segment mentioned in step S106 above includes: acquiring historical trajectory data segments; determining multiple historical trajectory data segments to be matched in the historical trajectory data segments; determining the similarity between each historical trajectory data segment to be matched and the first target data segment, and determining the historical trajectory data segment to be matched with the highest similarity to the first target data segment as the target historical trajectory data segment.
[0042] In this embodiment, the historical trajectory data segment that best matches the target data segment (i.e., the target historical trajectory data segment) in the database is determined by the following method: First, a large number of historical trajectory data segments of the target vehicle are obtained from the knowledge base; next, multiple historical trajectory data segments that meet the matching conditions are found from the large number of historical trajectory data segments; finally, the similarity between each historical trajectory data segment to be matched and the (first) target data segment is determined, and the historical trajectory data segment with the highest similarity to the (first) target data segment is determined as the target historical trajectory data segment.
[0043] According to an optional embodiment of this application, obtaining historical trajectory data segments includes: obtaining historical trajectory data of a target vehicle, wherein the historical trajectory data consists of multiple historical target data; segmenting the historical trajectory data to obtain multiple data segments, wherein the number of historical target data in each data segment is the same; deleting data segments containing discrete historical target data from the multiple data segments to obtain historical trajectory data segments.
[0044] Figure 3 This is a schematic diagram of a historical trajectory data segment. In this embodiment, the vehicle's longitude coordinates (a) and latitude coordinates (b) are used to represent the vehicle's positioning data. A set of longitude and latitude data represents the positioning data at a single receiving moment, such as... Figure 3 As shown, a historical trajectory data segment stores 12 data points received at 12 different receiving times, and these 12 data points are stored at 12 data points, where a 1,1 This represents the longitude coordinate at the first reception time in the first historical trajectory data segment, where the first reception time is later than the second reception time. 1,2 a represents the longitude coordinates at the second reception time in the first historical trajectory data segment. 2,1 This represents the longitude coordinates at the first reception time in the second historical trajectory data segment; b 1,1 b represents the latitude coordinates at the first reception time in the first historical trajectory data segment. 1,2 b represents the latitude coordinates at the second reception time in the first historical trajectory data segment. 2,1 This represents the latitude coordinates at the first reception time within the second historical trajectory data segment. (a) 1,1 ,b 1,1 (a) represents the historical positioning data (i.e., historical target data) at the first receiving time in the first historical trajectory data segment. 1,2 ,b 1,2 ) represents the historical positioning data (i.e., historical target data) at the second receiving time in the first historical trajectory data segment. In this embodiment, Figure 3 The historical trajectory data segments shown are stored in a cloud database. The historical trajectory data segments are generated by the following method: First, the positioning data (i.e., historical target data) of the vehicle when it was driving before the receiving period (i.e., the first preset time interval) is obtained; these historical target data are arranged into a data segment according to the time of receipt, and this data segment is the historical trajectory data; the historical trajectory data is cut into multiple data segments of the same length, and if there are data segments with a length less than the preset length after cutting, they are deleted. Figure 3The historical trajectory data segments shown are obtained by cutting historical trajectory data into segments of 12 data points. Alternatively, the historical trajectory data can be cut into segments of 6 or 24 data points, with the specific segmentation length adjustable. To ensure that each historical trajectory data segment contains continuous data—that is, to ensure that each data point in a historical trajectory data segment contains historical positioning data (i.e., historical target data)—segments containing discrete historical positioning data (i.e., historical target data) are deleted after segmenting the historical trajectory data. In this embodiment, it is ensured that all historical trajectory data segments stored in the cloud database have the same length, and that the historical positioning data (i.e., historical target data) within each historical data segment is continuous positioning data.
[0045] According to another optional embodiment of this application, determining multiple historical trajectory data segments to be matched in a historical trajectory data segment includes: comparing the historical target data in the historical trajectory data segment with the first target data and the filling data in the first target data segment respectively to obtain a comparison result; if the comparison result indicates that there is historical target data in the historical trajectory data segment that is the same as the first target data, or if there is historical target data in the historical trajectory data segment that is the same as the filling data, then determining the historical trajectory data segment as the historical trajectory data segment to be matched.
[0046] In this embodiment, the (first) target data segment is matched with multiple historical trajectory data segments stored in the cloud database. Multiple data segments that are similar to the (first) target data segment are selected for matching. Specifically, if a historical data segment and the (first) target data segment have identical data at the same data point, the historical trajectory data segment is considered a target historical trajectory data segment. For example, the target data segment obtained above is [A1, A3, A6]. The data stored at data points A1 and A6 is real-time received positioning data, and the data stored at data point A3 is filler data. The target data segment [A1, A3, A6] is matched with a historical trajectory data segment [C1, C2, C3, C4, C5, C6]. If the real-time positioning data at data point A1 is the same as the historical target data at data point C1, or the filler data at data point A3 is the same as the historical target data at data point C3, or the data point A6... If the real-time positioning data under point C6 is the same as the historical target data under point C6, then the historical trajectory data segment [C1, C2, C3, C4, C5, C6] is determined as the historical trajectory data segment to be matched with the target data segment [A1, A3, A6]. If there is no identical data in the target data segment and the historical trajectory data segment, the historical trajectory data segment cannot be determined as the historical trajectory data segment to be matched. If there is identical data in the target data segment and the historical trajectory data segment but the data points are different, the historical trajectory data segment cannot be determined as the historical trajectory data segment to be matched. In this embodiment, the method of first matching data points and then determining whether the data are the same can be used to determine the trajectory data segment to be matched; preferably, the trajectory data segment to be matched can also be determined by converting the latitude / longitude values in the positioning data from decimal degree representation to degree-minute-second representation. Specifically, if there is at least one historical target data in the historical trajectory data segment whose latitude / longitude value is equal to the latitude / longitude value of the positioning data / filled data in the (first) target data segment, then the historical trajectory data segment is considered to be related to the driving trajectory in the current time period and can be used as the historical trajectory segment to be matched.
[0047] According to some optional embodiments of this application, determining the similarity between each historical trajectory data segment to be matched and the target data segment includes: determining the sum of Euclidean distances between multiple historical target data in the historical trajectory data segment to be matched and multiple data in the first target data segment at the same acquisition time; determining the similarity between the historical trajectory data segment to be matched and the first target data segment based on the sum of Euclidean distances, wherein the similarity is inversely proportional to the sum of Euclidean distances.
[0048] In some embodiments, the Euclidean distances at each identical data point (i.e., acquisition time) between the (first) target data segment and the historical trajectory data segment to be matched are determined, and the similarity between the historical trajectory data segment to be matched and the target data segment is determined based on the sum of the Euclidean distances at all data points. For example, the similarity between the target data segment [A1, A3, A6] and the historical trajectory data segment [C1, C2, C3, C4, C5, C6] is determined by the following method: Since the historical trajectory data segment [C1, C2, C3, C4, C5, C6] has only 3 identical data points with the target data segment: [C1, C3, C6], the sum of the Euclidean distances between the data segments [A1, A3, A6] and [C1, C3, C6] is the similarity between the target data segment [A1, A3, A6] and the historical trajectory data segment [C1, C2, C3, C4, C5, C6]. For example, the positioning data for data point A1 is (X1, Y1), where X1 is the longitude and Y1 is the latitude of data point A1; the positioning data for data point C1 is (X2, Y2), where X2 is the longitude and Y2 is the mid-latitude of data point C1. The Euclidean distance (d) between data point A1 and data point C1 is calculated using the following formula:
[0049] d(A1,C1)=[(X1-X2) 2 +(Y1-Y2) 2 ] 2
[0050] The similarity between the target data segment [A1, A3, A6] and the historical trajectory data segment [C1, C2, C3, C4, C5, C6] is equal to the sum of the Euclidean distance between data points A1 and C1, the sum of the Euclidean distances between data points A3 and C3, and the sum of the Euclidean distances between data points A6 and C6. It should be noted that there is an inverse relationship between the sum of the Euclidean distances and the similarity; that is, the smaller the sum of the Euclidean distances between the target data segment and the historical trajectory data segment to be matched, the higher the similarity between the target data segment and the historical trajectory data segment to be matched.
[0051] It should be noted that, in the embodiments of this application, the similarity between the target data segment and the historical trajectory data segment to be matched can also be determined by the Longest Common Subsequence (LCS) method and the Dynamic Time Warping (DTW) method; when determining the similarity between the target data segment and the historical trajectory data segment to be matched by the LCS method and the DTW method, it is not required that the lengths of the target data segment and the historical trajectory data segment to be matched be equal.
[0052] According to an optional embodiment of this application, the method for determining the driving path further includes: in the case that the first target data received within a third preset time interval is missing, determining all historical trajectory data segments corresponding to the target historical trajectory data segment, wherein the third preset time interval is the time interval following the first preset time interval; generating a second target data segment based on the data in the remaining historical trajectory data segments and the first target data received within the third preset time interval, wherein the remaining historical trajectory data segment is the data segment other than the target historical trajectory data segment among all historical trajectory data segments; determining the driving path corresponding to the second target data segment as the driving path of the target vehicle within the third preset time interval; and in the case that the first target data received within the third preset time interval is not missing, determining the real-time driving path corresponding to the third preset time interval, and jointly determining the target driving path and the real-time driving path as the driving path of the target vehicle from the first preset time interval to the third preset time interval.
[0053] In this embodiment, if the target vehicle experiences data loss during the current reception period (i.e., the first preset time interval), the driving path for the current reception period (i.e., the first preset time interval) is determined according to the method described above. However, since the total driving path corresponding to a historical trajectory data segment includes both the driving path within the current reception period (i.e., the first preset time interval) and the driving path within the next reception period (i.e., the third preset time interval), to ensure the continuity of the displayed driving path, after determining the target vehicle's driving path within the current reception period (i.e., the first preset time interval), it is also necessary to determine the target vehicle's driving path within the next reception period (i.e., the third preset time interval). Specifically, if no data loss occurs within the driving path of the next reception period (i.e., the third preset time interval), then the driving path corresponding to the real-time received positioning data is the target vehicle's driving path within the next reception period (i.e., the third preset time interval). If data is missing, but the amount of received real-time positioning data is greater than a preset value, then there is no need to obtain filler data. Instead, the historical trajectory data segment with the highest similarity is matched directly in the database based on the obtained real-time positioning data. The driving path of the target vehicle in the next receiving period (i.e., the third preset time interval) is then displayed as the driving path corresponding to the historical trajectory data segment with the highest similarity. If data is missing in the next receiving period (i.e., the third preset time interval), and the amount of received real-time positioning data is less than a preset value, then the data in the historical trajectory data segment that does not belong to the target historical trajectory segment (i.e., the remaining historical trajectory segment) is used as new filler data. The (second) target data segment corresponding to the next receiving period (i.e., the third preset time interval) is generated using the same method as in step S104 above. The historical trajectory data segment with the highest similarity to the (second) target data segment is matched in the knowledge base according to the method in step S106 above. The driving path corresponding to the historical trajectory data segment with the highest similarity to the (second) target data segment is determined as the driving path of the target vehicle in the next receiving period (i.e., the third preset time interval).
[0054] According to some alternative embodiments of this application, the method for determining the driving route further includes: determining that the target vehicle is out of contact when the number of first target data received in a first preset time interval is zero.
[0055] In some alternative embodiments, in the extreme case where data is missing during the current receiving period (i.e., the first preset time interval) and no real-time location data is received, the target vehicle is considered to be out of contact. In this case, the user is notified of the vehicle's loss of contact via text or sound on the vehicle monitoring platform.
[0056] Figure 4This is a structural diagram of a driving path display system provided according to an embodiment of this application, such as... Figure 4 As shown, the display system includes: a remote monitoring terminal 40, a server 42, and a client 44. The remote monitoring terminal 40 is connected to the server 42 and is used to acquire first target data and send the first target data to the server 42. The server 42 is used to execute the above-described method for determining the driving path. The client 44 is connected to the server 42 and is used to display the driving path of the target vehicle.
[0057] When the display system is working, it acquires real-time positioning data of the target vehicle from the BeiDou satellite system / GPS system via remote monitoring terminal 40 and reports this data to the server via the communication network. The server 42 receives the target vehicle's positioning data. For historical positioning data, it stores it as historical trajectory positioning data formed during actual vehicle travel. Each historical trajectory positioning data is segmented and preprocessed to generate multiple standardized historical trajectory segments of equal length and continuous data. These historical trajectory segments are stored in the cloud as a knowledge base for matching. For real-time positioning data, it checks for missing data. If the server experiences missing data points within a certain time period, and the missing data meets the preset path estimation conditions (i.e., the number of received data points does not meet the preset value), it acquires filler data. The filler data and the received real-time positioning data form a target data segment. The system then matches the historical trajectory segment with the highest similarity to the target data segment in the knowledge base, determining the driving path corresponding to the historical trajectory segment as the target vehicle's driving path in the current time period. Furthermore, it corrects the vehicle's driving path based on the received real-time positioning data, thereby achieving a stable and accurate display of the vehicle's driving path. The target vehicle's driving path is then displayed to the client.
[0058] Figure 5 This is a structural diagram of a device for determining a driving path according to an embodiment of this application, such as... Figure 5 The device shown includes: an acquisition module 50, used to acquire first target data, wherein the first target data includes the positioning data of the target vehicle during its driving process; a generation module 52, used to acquire filler data when the first target data received within a first preset time interval is missing, and generate a first target data segment based on the first target data and the filler data; and a determination module 54, used to determine the target historical trajectory data segment corresponding to the first target data segment, and determine the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle within the first preset time interval.
[0059] When the device for determining the driving path is in operation, it acquires the positioning data (i.e., the first target data) of the target vehicle through the acquisition module 50. In one embodiment, the receiving time period is set to an integer multiple of the historical trajectory data segment. For example, if the time period corresponding to the historical trajectory data segment is 1 minute, then the receiving time period is set to 30 seconds. With a reporting frequency of 5 seconds, each time period should contain 6 consecutive positioning points if the reported data is not missing. Among them, the coordinate data of the 1st to 6th positioning points in each time period may be missing. When data is missing, the system checks whether the amount of received data reaches a preset value. In this embodiment, the preset value is set to 3. If the amount of real-time positioning data received within the time period is less than 3, the generation module 52 obtains filler data, where the amount of filler data is the difference between the preset value and the received real-time positioning data. The real-time positioning data and the filler data are then combined to form a calibrated discrete coordinate point sequence (i.e., the first target data segment). Then, the determination module 54 matches the historical trajectory data segment with the highest similarity among the massive historical trajectory data segments in the cloud. The target driving path corresponding to the data sequence of the first 30 seconds in the historical trajectory data segment with the highest similarity is determined as the driving path of the target vehicle within the time period (i.e., the first preset time interval).
[0060] It should be noted that, Figure 5 Preferred embodiments of the shown examples can be found in [reference needed]. Figure 1 The relevant descriptions of the embodiments shown will not be repeated here.
[0061] This application also provides a non-volatile storage medium storing a computer program, wherein the device containing the non-volatile storage medium executes the above-described method for determining a travel path by running the computer program.
[0062] The aforementioned non-volatile storage medium is used to store a program that performs the following functions: acquiring first target data, wherein the first target data includes the positioning data of the target vehicle during its driving process; in the event that the first target data received within a first preset time interval is missing, acquiring filler data and generating a first target data segment based on the first target data and the filler data; determining a target historical trajectory data segment corresponding to the first target data segment, and determining the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle within the first preset time interval.
[0063] This application also provides an electronic device, including a memory and a processor. The memory stores a computer program, and the processor is configured to execute the above-described method for determining a driving path through the computer program.
[0064] The processor in the aforementioned electronic device is used to run a program that performs the following functions: acquiring first target data, wherein the first target data includes the positioning data of the target vehicle during its driving process; in the event that the first target data received within a first preset time interval is missing, acquiring filler data and generating a first target data segment based on the first target data and the filler data; determining a target historical trajectory data segment corresponding to the first target data segment, and determining the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle within the first preset time interval.
[0065] It should be noted that each module in the above-mentioned device for determining the driving path can be a program module (for example, a set of program instructions that implement a certain function) or a hardware module. For the latter, it can be manifested in the following forms, but is not limited to them: each of the above modules is manifested as a processor, or the functions of each of the above modules are implemented by a processor.
[0066] The sequence numbers of the embodiments in this application are for descriptive purposes only and do not represent the superiority or inferiority of the embodiments.
[0067] In the above embodiments of this application, the descriptions of each embodiment have different focuses. For parts not described in detail in a certain embodiment, please refer to the relevant descriptions of other embodiments.
[0068] In the several embodiments provided in this application, it should be understood that the disclosed technical content can be implemented in other ways. The device embodiments described above are merely illustrative; for example, the division of units can be a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the displayed or discussed mutual coupling, direct coupling, or communication connection may be through some interfaces; the indirect coupling or communication connection between units or modules may be electrical or other forms.
[0069] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0070] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0071] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to related technologies, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.
[0072] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. A method for determining a driving route, characterized in that, include: Acquire first target data, wherein the first target data includes the positioning data of the target vehicle during its driving process; If the first target data received within the first preset time interval is missing, filler data is obtained, and a first target data segment is generated based on the first target data and the filler data. Determine the target historical trajectory data segment corresponding to the first target data segment, and determine the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle within the first preset time interval; Obtaining fill data includes: obtaining a data sequence corresponding to a second preset time interval, wherein the second preset time interval is the preceding time interval closest to the first preset time interval, the data sequence consists of continuous positioning data received within the second preset time interval, and the data sequence is stored in a knowledge base; and determining the data in the data sequence as the fill data. Determining the target historical trajectory data segment corresponding to the first target data segment includes: acquiring historical trajectory data segments; determining multiple historical trajectory data segments to be matched in the historical trajectory data segments; determining the similarity between each of the historical trajectory data segments to be matched and the first target data segment, and determining the historical trajectory data segment to be matched with the highest similarity to the first target data segment as the target historical trajectory data segment; Obtaining historical trajectory data segments includes: obtaining historical trajectory data of the target vehicle, wherein the historical trajectory data consists of multiple historical target data; segmenting the historical trajectory data to obtain multiple data segments, wherein the number of historical target data in each data segment is the same; deleting data segments containing discrete historical target data from the multiple data segments to obtain the historical trajectory data segments. Determining multiple historical trajectory data segments to be matched in the historical trajectory data segment includes: comparing the historical target data in the historical trajectory data segment with the first target data and the fill data in the first target data segment to obtain a comparison result; if the comparison result indicates that there is historical target data in the historical trajectory data segment that is the same as the first target data, or if there is historical target data in the historical trajectory data segment that is the same as the fill data, then the historical trajectory data segment is determined as the historical trajectory data segment to be matched.
2. The method according to claim 1, characterized in that, Determining the similarity between each of the historical trajectory data segments to be matched and the target data segment includes: Determine the sum of Euclidean distances between multiple historical target data in the historical trajectory data segment to be matched and multiple data in the first target data segment at the same acquisition time; The similarity between the historical trajectory data segment to be matched and the first target data segment is determined based on the Euclidean distance, wherein the similarity is inversely proportional to the Euclidean distance.
3. The method according to any one of claims 1 to 2, characterized in that, The method further includes: If the number of first target data received in the first preset time interval is zero, it is determined that the target vehicle is in a state of being out of contact.
4. A system for displaying driving routes, characterized in that, include: Remote monitoring terminals, servers, and clients, among which, The remote monitoring terminal is connected to the server and is used to acquire first target data and send the first target data to the server. The server is used to execute the method for determining the driving route as described in any one of claims 1-3; The client is connected to the server and is used to display the driving path of the target vehicle.
5. A device for determining a travel path, characterized in that, include: An acquisition module is used to acquire first target data, wherein the first target data includes the positioning data of the target vehicle during its driving process; The generation module is used to obtain filler data when the first target data received within a first preset time interval is missing, and to generate a first target data segment based on the first target data and the filler data. The determination module is used to determine the target historical trajectory data segment corresponding to the first target data segment, and to determine the target driving path corresponding to the target historical trajectory data segment as the driving path of the target vehicle in the first preset time interval; The generation module is further configured to perform the following steps: obtaining a data sequence corresponding to a second preset time interval, wherein the second preset time interval is the preceding time interval closest to the first preset time interval, the data sequence is composed of continuous positioning data received within the second preset time interval, and the data sequence is stored in a knowledge base; and determining the data in the data sequence as the filling data. The determining module is further configured to perform the following steps: acquiring historical trajectory data segments; determining multiple historical trajectory data segments to be matched in the historical trajectory data segments; determining the similarity between each of the historical trajectory data segments to be matched and the first target data segment, and determining the historical trajectory data segment to be matched with the highest similarity to the first target data segment as the target historical trajectory data segment; The determining module is further configured to perform the following steps: acquiring historical trajectory data of the target vehicle, wherein the historical trajectory data consists of multiple historical target data; segmenting the historical trajectory data to obtain multiple data segments, wherein the number of historical target data in each data segment is the same; deleting data segments containing discrete historical target data from the multiple data segments to obtain the historical trajectory data segments; The determining module is further configured to perform the following steps: comparing the historical target data in the historical trajectory data segment with the first target data and the filling data in the first target data segment respectively to obtain a comparison result; if the comparison result indicates that there is historical target data in the historical trajectory data segment that is the same as the first target data, or if there is historical target data in the historical trajectory data segment that is the same as the filling data, the historical trajectory data segment is determined as the historical trajectory data segment to be matched.
6. A non-volatile storage medium, characterized in that, The non-volatile storage medium stores a computer program, wherein the device containing the non-volatile storage medium executes the method for determining a travel path as described in any one of claims 1 to 3 by running the computer program.
7. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method for determining a driving path as described in any one of claims 1 to 3 through the computer program.
Citation Information
Patent Citations
Method and system for determining motion trail of mobile terminal
CN115412852A