Trajectory stop point calculation method, device, electronic equipment and vehicle

By using a screening and multi-level updating algorithm and utilizing time and distance limits to identify stay points, the problem of inaccurate stay point identification in the prior art is solved, and the accuracy of stay point identification is improved.

CN116203602BActive Publication Date: 2025-09-09GREAT WALL MOTOR CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202310012577.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-01-05
Publication Date
2025-09-09
Estimated Expiration
2043-01-05

AI Technical Summary

Technical Problem

Existing stay point calculation methods cannot simultaneously take into account spatiotemporal aggregation, temporal continuity and directionality under non-ideal data conditions, resulting in the misidentification of meaningless stay points and the omission of meaningful stay points.

Method used

By obtaining a time-continuous sequence of trajectory points, using the time dimension and distance dimension limits to screen candidate stay points, a multi-level update algorithm is adopted to eliminate meaningless stay points, identify temporarily departed stay points, and improve recognition accuracy.

Benefits of technology

Under non-ideal data conditions, the recognition accuracy of stay points is improved, meaningless stay points are eliminated, and stay points that are closer to actual application scenarios are identified.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116203602B_ABST
    Figure CN116203602B_ABST
Patent Text Reader

Abstract

The present invention provides a trajectory stop point calculation method, device, electronic device, and vehicle, relating to the field of vehicle technology. First, a time-continuous trajectory point sequence is obtained. Then, the trajectory point sequence is screened based on a time dimension limit and a distance dimension limit to obtain a candidate stop point list consisting of multiple candidate stop points. Finally, based on the coverage relationship between the candidate stop points, the candidate stop point list is updated in multiple levels based on the first candidate stop point and the second candidate stop point until an iteration condition is met. The candidate stop point list obtained from the last iteration is output to obtain a target stop point. In the present invention, candidate stop points are identified and updated based on the time dimension and the distance dimension, thereby eliminating the influence of the number of trajectory points on the identification of candidate stop points, making it closer to actual application scenarios, and thus improving the accuracy and speed of stop point identification.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of vehicle technology, and in particular to a trajectory stop point calculation method, device, electronic equipment and vehicle. Background Art

[0002] In current travel scenarios, predicting a trip's destination beforehand is a fundamental capability of in-vehicle intelligence. The data source for the destination prediction model primarily relies on the user's historical travel history. Initially, a user's historical travel history consists of a series of discontinuous GPS track points. Therefore, during data preprocessing, the track's stop points must be calculated based on the distribution of GPS points, thereby segmenting each trip's start and end points and forming historical travel data. Furthermore, by effectively removing unimportant and redundant information from the massive amount of GPS track data and obtaining a track's stop point sequence, users' behavioral patterns and travel preferences can be quickly identified, providing strong data support for personalized point of interest recommendations and other location-based services. Therefore, quickly and accurately acquiring stop points can help the vehicle better understand the user's driving habits.

[0003] In the related art, the existing stay point calculation method takes into account spatiotemporal aggregation, time continuity and directionality under non-ideal data conditions, resulting in a low recognition rate of stay points. Summary of the Invention

[0004] The embodiments of the present invention provide a trajectory stop point calculation method, device, electronic device, and vehicle, which aim to solve or partially solve the problems existing in the background technology.

[0005] In order to solve the above-mentioned technical problems, the present invention is achieved as follows:

[0006] In a first aspect, an embodiment of the present invention provides a method for calculating trajectory stop points, the method comprising:

[0007] Obtain a time-continuous sequence of trajectory points;

[0008] According to the time dimension limit and the distance dimension limit, the trajectory point sequence is screened to obtain a candidate stay point list consisting of multiple candidate stay points;

[0009] Arrange the candidate stay points in the candidate stay point list in descending order according to the time scale difference between the corresponding trajectory point candidate intervals from large to small;

[0010] The candidate stay point with the highest ranking is selected as the first candidate stay point, and the other candidate stay points other than the first candidate stay point are selected as the second candidate stay points;

[0011] The candidate stay point list is updated in multiple levels according to the first candidate stay point and the second candidate stay point until an iteration condition is satisfied, and the candidate stay point list obtained in the last iteration is output to obtain a target stay point.

[0012] Optionally, the step of obtaining a time-continuous sequence of trajectory points includes:

[0013] Acquiring vehicle track point positioning data, wherein the track point positioning data includes longitude information, latitude information, and time information;

[0014] Based on the time information, the trajectory point positioning data are combined in ascending or descending time order to generate the time-continuous trajectory point sequence.

[0015] Optionally, the step of filtering the trajectory point sequence according to the time dimension limit and the distance dimension limit to obtain a candidate stay point list consisting of multiple candidate stay points includes:

[0016] Taking each trajectory point on the trajectory point sequence as an anchor point, perform bidirectional traversal along the trajectory point sequence;

[0017] Calculate the spherical distance between other trajectory points and the anchor point in the trajectory point sequence, and determine other trajectory points whose spherical distance is less than or equal to the distance dimension limit as candidate trajectory points. Then, group multiple candidate trajectory points together to generate candidate trajectory point intervals.

[0018] Calculate the time scale difference between the starting candidate trajectory point and the ending candidate trajectory point in the trajectory point candidate interval. If the time scale difference is greater than or equal to the time dimension limit, the trajectory point candidate interval is determined as a candidate stay point, where the center point of the candidate stay point is the anchor point.

[0019] Multiple candidate stay points are collected to generate a candidate stay point list.

[0020] Optionally, the step of performing multi-level updating on the candidate stay point list according to the first candidate stay point and the second candidate stay point includes:

[0021] Performing a first-level update on the candidate stay point list based on the inclusion relationship between the trajectory point candidate interval corresponding to the first candidate stay point and the center point of the second candidate stay point;

[0022] Performing a second-level update on the candidate stay point list according to the overlapping relationship between the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point;

[0023] For the candidate stay point list that has completed the first level update and the second level update, continue to execute the step of arranging the candidate stay points in the candidate stay point list in descending order according to the time scale difference of their corresponding trajectory point candidate intervals from large to small.

[0024] Optionally, the step of performing a first-level update on the candidate stay point list according to the inclusion relationship between the trajectory point candidate interval corresponding to the first candidate stay point and the center point of the second candidate stay point includes:

[0025] If the center point of the second candidate stay point is located within the trajectory point candidate interval corresponding to the first candidate stay point, the second candidate stay point is removed from the candidate stay point list.

[0026] Optionally, the step of performing a second-level update on the candidate stay point list according to the overlapping relationship between the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point includes:

[0027] If there is an overlapping area between the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point, the overlapping area in the trajectory point candidate interval corresponding to the second candidate stay point is deleted to generate a revised trajectory point candidate interval corresponding to the second candidate stay point;

[0028] Calculate the time scale difference of the corrected trajectory point candidate interval corresponding to the second candidate stay point. If the time scale difference is less than the time dimension limit, remove the second candidate stay point from the candidate stay point list.

[0029] In a second aspect, an embodiment of the present invention provides a trajectory stop point calculation device, the device comprising:

[0030] A trajectory point sequence generation module is used to obtain a time-continuous trajectory point sequence;

[0031] A screening module is used to screen the trajectory point sequence according to the time dimension limit and the distance dimension limit to obtain a candidate stay point list consisting of multiple candidate stay points;

[0032] A sorting module is used to sort the candidate stay points in the candidate stay point list in descending order according to the time scale difference between their corresponding trajectory point candidate intervals from large to small;

[0033] a candidate stay point determination module, configured to select the candidate stay point with the highest ranking as the first candidate stay point, and select other candidate stay points other than the first candidate stay point as the second candidate stay points;

[0034] The iteration module is used to perform multi-level updates on the candidate stay point list according to the first candidate stay point and the second candidate stay point until the iteration condition is met, and output the candidate stay point list obtained by the last iteration to obtain the target stay point.

[0035] Optionally, the trajectory point sequence generation module includes:

[0036] A positioning data acquisition submodule is used to obtain the vehicle's track point positioning data, wherein the track point positioning data includes longitude information, latitude information and time information;

[0037] The combining submodule is configured to combine the trajectory point positioning data in ascending or descending time order based on the time information to generate the time-continuous trajectory point sequence.

[0038] Optionally, the screening module includes:

[0039] The traversal submodule is used to perform bidirectional traversal along the trajectory point sequence with each trajectory point on the trajectory point sequence as an anchor point;

[0040] The first screening submodule is used to calculate the spherical distance between other trajectory points and the anchor point in the trajectory point sequence, determine other trajectory points whose spherical distance is less than or equal to the distance dimension limit as candidate trajectory points, and aggregate multiple candidate trajectory points to generate a candidate trajectory point interval;

[0041] The second screening submodule is used to calculate the time scale difference between the starting candidate trajectory point and the ending candidate trajectory point in the trajectory point candidate interval. If the time scale difference is greater than or equal to the time dimension limit, the trajectory point candidate interval is determined as a candidate stay point, wherein the center point of the candidate stay point is the anchor point;

[0042] The combination submodule is used to collect multiple candidate stay points and generate a candidate stay point list.

[0043] Optionally, the iteration module includes:

[0044] A first updating submodule, configured to perform a first-level update on the candidate stay point list based on an inclusion relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a center point of the second candidate stay point;

[0045] A second updating submodule, configured to perform a second-level update on the candidate stay point list according to an overlapping relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a trajectory point candidate interval corresponding to the second candidate stay point;

[0046] The loop submodule is used to continue to execute the step of arranging the candidate stay points in the candidate stay point list that has completed the first level update and the second level update in descending order according to the time scale difference of their corresponding trajectory point candidate intervals from large to small.

[0047] Optionally, the second updating submodule includes:

[0048] a correction unit, configured to, if there is an overlapping area between the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point, delete the overlapping area in the trajectory point candidate interval corresponding to the second candidate stay point, and generate a corrected trajectory point candidate interval corresponding to the second candidate stay point;

[0049] The elimination unit is used to calculate the time scale difference of the corrected trajectory point candidate interval corresponding to the second candidate stay point, and eliminate the second candidate stay point from the candidate stay point list when the time scale difference is less than the time dimension limit.

[0050] According to a third aspect of an embodiment of the present invention, an electronic device is provided, including:

[0051] at least one processor; and a memory communicatively connected to the at least one processor; wherein,

[0052] The memory stores instructions that can be executed by at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can perform the method steps proposed in the first aspect of the embodiment of the present invention.

[0053] A fourth aspect of an embodiment of the present invention provides a vehicle, the vehicle including a processor, and the processor is configured to implement the method steps provided in the first aspect of the embodiment of the present invention when executing.

[0054] Embodiments of the present invention have the following advantages: First, a temporally continuous sequence of trajectory points is obtained; then, the sequence of trajectory points is screened based on time and distance dimension limits to obtain a candidate stay point list consisting of multiple candidate stay points; finally, based on the coverage relationship between the candidate stay points, the candidate stay point list is updated in multiple levels based on the first and second candidate stay points until the iteration conditions are met, and the candidate stay point list obtained from the last iteration is output to obtain the target stay point. In the present invention, candidate stay points are identified and updated based on the time and distance dimensions, thereby eliminating the influence of the number of trajectory points on the identification of candidate stay points, thereby being closer to actual application scenarios, eliminating meaningless stay points such as "intersections", and further identifying "temporary departure" stay points, thereby improving the recognition accuracy of the entire stay point. BRIEF DESCRIPTION OF THE DRAWINGS

[0055] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.

[0056] Figure 1 This is a flowchart of a method for calculating trajectory stop points in an embodiment of the present invention;

[0057] Figure 2 Schematic diagram of generating a trajectory point sequence in an embodiment of the present invention;

[0058] Figure 3 4 is a module diagram of a trajectory stop point calculation device in an embodiment of the present invention. DETAILED DESCRIPTION

[0059] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.

[0060] Traditional approaches to calculating stay points in the related art primarily include clustering models, probabilistic models, and differentiation strategies. Clustering models primarily consider the spatiotemporal proximity of trajectory points, while probabilistic models primarily consider the frequency of visitation. However, they both ignore the temporal continuity and directionality of trajectory points. A drawback of these methods is that they may yield some meaningless stay points. For example, a user may pass through an intersection multiple times, but not continuously, while commuting to work, shopping, and returning home. The distance between the intersection's trajectory points meets a distance threshold, and their cumulative duration meets a time threshold. If temporal continuity is not considered, these points will be identified as stay points, but they do not represent the user's stay behavior. Differentiation strategies, on the other hand, only consider one direction of temporal continuity, ignoring the spatiotemporal clustering of trajectory points. This can lead to the omission of meaningful stay points. For example, if a user arrives at stop point A, temporarily leaves, and then returns to point A, and the distance traveled exceeds the distance threshold, the "temporarily departed" stay point cannot be identified.

[0061] Therefore, the existing stay point calculation strategy cannot simultaneously take into account spatiotemporal aggregation, temporal continuity and directionality under non-ideal data conditions, resulting in the misidentification of meaningless stay points such as "intersections" and the inability to identify stay points such as "temporary departure" and "jump".

[0062] Based on this, the inventors proposed the inventive concept of this application: by only using the time threshold to identify and update candidate stop points, in the trajectory data with non-fixed time intervals, the time interval between the start and end points of the candidate interval is used as the judgment basis, so as to be closer to the actual application scenario, exclude meaningless stop points such as "intersections", further identify the stop points of "temporary departure", thereby improving the recognition accuracy of the entire stop point.

[0063] The embodiment of the present invention provides a method for calculating track stop points, see Figure 1 , Figure 1 A flowchart showing the steps of a method for calculating a track stop point according to an embodiment of the present application is shown, which is applied to a vehicle system. The method includes:

[0064] S101: Obtain a time-continuous trajectory point sequence.

[0065] In this embodiment, the vehicle's GPS positioning module is responsible for collecting the vehicle's location information at preset time intervals, that is, generating a track point at preset time intervals. However, in actual application in non-ideal environments, track points are often not fixed in intervals. When the user loses the signal during a section of the track, such as entering an underground garage, the track is interrupted, thereby generating GPS track data with non-fixed intervals. Therefore, the time intervals of the track point sequences in the present invention are different, that is, the time intervals between any two adjacent track point groups may not be exactly the same. The steps for obtaining a time-continuous track point sequence from non-fixed interval GPS track data can be:

[0066] S101-1: Acquire trajectory point positioning data of the vehicle, where the trajectory point positioning data includes longitude information, latitude information, and time information;

[0067] S101 - 2 : Based on the time information, the trajectory point positioning data are combined in ascending or descending time order to generate the time-continuous trajectory point sequence.

[0068] In this embodiment, if Figure 2 As shown, in Figure 2 In the three-dimensional coordinate system shown, the longitude coordinates of the track points are used as the horizontal axis, the latitude coordinates of the track points are used as the vertical axis, and the acquisition time of the track points is used as the vertical axis. For each track point, according to its corresponding longitude and latitude coordinates and acquisition time, it is mapped to the target coordinate system. This mapping operation is performed for all track points. All track point positioning data can be plotted in the target coordinate system. Then, they are connected according to the size of the time scale to obtain a time-continuous track point sequence.

[0069] As an example, for any trajectory point p (p.longtitude, p.latitude, p.time), p.time represents the acquisition time of the trajectory point p, p.longtitude represents the longitude, and p.latitude represents the latitude. Then the trajectory points pn are mapped to the three-dimensional coordinate system in sequence to obtain a time-continuous trajectory point sequence Traj = p1 → p2 → p3 pn - 1→pn.

[0070] S102: Filter the trajectory point sequence according to the time dimension limit and the distance dimension limit to obtain a candidate stay point list consisting of multiple candidate stay points.

[0071] In this embodiment, the time dimension limit and the distance dimension limit can be understood as what time conditions and distance conditions must be met at the same time to determine that a certain point is a stop point. The time dimension limit and the distance dimension limit can be determined according to the actual application scenario, and this application does not limit this.

[0072] As an example, for any point A, if it is determined that the vehicle has been within a range of 10 meters around point A within 30 minutes, point A can be used as a candidate stop point.

[0073] According to the time dimension limit and the distance dimension limit, the specific steps for filtering the trajectory point sequence may include:

[0074] S102-1: Taking each trajectory point on the trajectory point sequence as an anchor point, perform bidirectional traversal along the trajectory point sequence.

[0075] In this embodiment, the trajectory point sequence Traj=p1→p2→p3 in the above embodiment is continued. pn - Taking 1→pn as an example, we first start from the first trajectory point in the trajectory point sequence, that is, p1 is used as the anchor point, and traverse in the left and right directions at the same time according to the preset window length. Then, we use p2 as the anchor point and traverse in the directions of p1 and p3 at the same time until the traversal of pn is completed. Then, while traversing, we execute steps S102-2 to S102-3.

[0076] S102-2: Calculate the spherical distances between other trajectory points and the anchor point in the trajectory point sequence, determine other trajectory points whose spherical distances are less than or equal to the distance dimension limit as candidate trajectory points, and aggregate multiple candidate trajectory points to generate candidate trajectory point intervals.

[0077] In this embodiment, continuing with the above embodiment, when p4 is used as the anchor point, if the preset window length is 3, traversing to the left, the spherical distances of p1, p2, and p3 to p4 are calculated respectively. If the spherical distances of p1 and p4 are less than or equal to the distance dimension limit, p1 is determined to meet the criteria for a candidate trajectory point and is selected as a candidate trajectory point. Similarly, if the spherical distances of p2 and p3 to p4 are less than or equal to the distance dimension limit, p2 and p3 are also selected as candidate trajectory points. Simultaneously, traversing to the right, the spherical distances of p5, p6, and p7 to p4 are calculated respectively. If the spherical distances of p5, p6, and p7 to p4 are less than or equal to the distance dimension limit, p5, p6, and p7 are also selected as candidate trajectory points. The continuous subsequence [p1, p7] consisting of the set of candidate trajectory points is then selected as the candidate trajectory point interval. It should be noted that, for any two points, the spherical distance between the two points can be calculated based on their respective latitude and longitude coordinates.

[0078] S102-3: Calculate the time scale difference between the starting candidate trajectory point and the ending candidate trajectory point in the trajectory point candidate interval. If the time scale difference is greater than or equal to the time dimension limit, determine the trajectory point candidate interval as a candidate stay point, where the center point of the candidate stay point is the anchor point.

[0079] In this embodiment, the above embodiment is continued for explanation. For the candidate trajectory point interval [p1, p7], p1 is the starting candidate trajectory point, and p7 is the end candidate trajectory point. The time scale value corresponding to p7 is subtracted from the time scale value corresponding to p1, that is, the vertical axis coordinate of p7 is subtracted from the vertical axis coordinate of p1, so as to obtain the time scale difference between the candidate trajectory point and the end candidate trajectory point. Then, the time scale difference between the candidate trajectory point and the end candidate trajectory point is compared with the preset time dimension limit. When the time scale difference is greater than or equal to the time dimension limit, the candidate trajectory point interval can be determined as a candidate stay point.

[0080] That is, for a continuous subsequence, if the constraints of the time dimension and the distance dimension are met at the same time, the continuous subsequence can be defined as a candidate stay point, and the anchor point generating the continuous subsequence is the center point of the candidate stay point.

[0081] S102-4: Gather multiple candidate stay points to generate a candidate stay point list.

[0082] In this embodiment, after completing the traversal of all trajectory points in the trajectory point sequence, candidate stay points that satisfy the constraints of both the time dimension and the distance dimension are collected to obtain a candidate stay point list.

[0083] After obtaining the candidate stay point list, since the candidate intervals corresponding to the candidate stay points may overlap, it is necessary to screen again to obtain non-overlapping stay points. The specific steps may be:

[0084] S103 arranges the candidate stay points in the candidate stay point list in descending order according to the time scale difference between their corresponding trajectory point candidate intervals from large to small.

[0085] In this embodiment, after obtaining the candidate stay point list, all candidate stay points are reordered in descending order according to the time scale difference between the trajectory point candidate intervals corresponding to each candidate stay point calculated in S102-3.

[0086] As an example, the trajectory point candidate interval corresponding to candidate stay point A is [p1, p7], the trajectory point candidate interval corresponding to candidate stay point B is [p4, p8], and the trajectory point candidate interval corresponding to candidate stay point C is [p6, p10]. The time scale difference of the trajectory point candidate interval [p1, p7] is the time scale corresponding to the p7 trajectory point minus the time scale corresponding to the p1 trajectory point, that is, t1. Similarly, the time scale difference of the trajectory point candidate interval [p6, p10] is the time scale corresponding to the p10 trajectory point minus the time scale corresponding to the p6 trajectory point, that is, t2. The time scale difference of the trajectory point candidate interval [p4, p8] is the time scale corresponding to the p8 trajectory point minus the time scale corresponding to the p4 trajectory point, that is, t3. If t1>t2>t3, the candidate stay points are sorted in the order of candidate stay point A - candidate stay point C - candidate stay point B.

[0087] S104: The candidate stay point with the highest ranking is selected as the first candidate stay point, and the other candidate stay points other than the first candidate stay point are selected as the second candidate stay points.

[0088] In this embodiment, the above-mentioned embodiment is continued for explanation. After the candidate stay points are sorted in the order of candidate stay point A - candidate stay point C - candidate stay point B, the candidate stay point with the highest ranking, i.e., candidate stay point A, is used as the first candidate stay point, and the other candidate stay points, i.e., candidate stay point B and candidate stay point C, are used as the second candidate stay points.

[0089] S105: performing multi-level updates on the candidate stay point list according to the first candidate stay point and the second candidate stay point until an iteration condition is satisfied, and outputting the candidate stay point list obtained in the last iteration to obtain a target stay point.

[0090] In this embodiment, after obtaining the first candidate stay point and the second candidate stay point, it is necessary to perform a multi-level update on the candidate stay point list based on the relationship between the first candidate stay point and the second candidate stay point, and eliminate candidate stay points that do not meet the requirements. The specific steps may be:

[0091] S105-1: performing a first-level update on the candidate stay point list according to the inclusion relationship between the trajectory point candidate interval corresponding to the first candidate stay point and the center point of the second candidate stay point.

[0092] The first-level update of the candidate stay point list can be understood as screening out a wider range of candidate stay points, which can be specifically implemented as follows:

[0093] If the center point of the second candidate stay point is located within the trajectory point candidate interval corresponding to the first candidate stay point, the second candidate stay point is removed from the candidate stay point list.

[0094] In this embodiment, the above embodiment is continued to be used as an example for explanation. Candidate stay point A is the first candidate stay point, and candidate stay point B and candidate stay point C are the second candidate stay points. The trajectory point candidate interval corresponding to the first candidate stay point is [p1, p7]. If the center point of any second candidate stay point is within the interval [p1, p7], then it can be considered that the second candidate stay point is a small-range candidate stay point relative to the first candidate stay point. The center point of candidate stay point B is p6, and the center point of candidate stay point C is p8. Then candidate stay point B is eliminated and only candidate stay point C is retained.

[0095] S105 - 2 : performing a second-level update on the candidate stay point list according to the overlapping relationship between the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point.

[0096] In this embodiment, after completing the first-level update of the selected stay point list, the candidate stay points with smaller ranges are eliminated. The second-level update of the candidate stay point list is actually to eliminate the overlapping parts of the candidate trajectory point candidate intervals corresponding to the candidate stay points. The specific implementation steps can be:

[0097] S105-2-1: If there is an overlapping area between the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point, delete the overlapping area in the trajectory point candidate interval corresponding to the second candidate stay point and generate a revised trajectory point candidate interval corresponding to the second candidate stay point;

[0098] S105-2-2: Calculate the time scale difference of the corrected trajectory point candidate interval corresponding to the second candidate stay point. If the time scale difference is less than the time dimension limit, remove the second candidate stay point from the candidate stay point list.

[0099] In the implementation of S105-2-1 to S105-2-2, the above implementation is continued as an example. The candidate stay point A is the first candidate stay point, the candidate stay point C is the second candidate stay point, the trajectory point candidate interval corresponding to the first candidate stay point is [p1, p7], and the trajectory point candidate interval corresponding to the second candidate stay point is [p6, p10]. That is, the overlapping area of ​​the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point is [p6, p7]. Therefore, it is necessary to delete the [p6, p7] part of the trajectory point candidate interval corresponding to the second candidate stay point, so as to generate The corrected trajectory point candidate interval corresponding to the second candidate stay point, that is, [p8, p10], after generating the corrected trajectory point candidate interval corresponding to the second candidate stay point, since it deletes a part of the candidate interval, it is necessary to re-judge whether it meets the time threshold restriction condition, that is, recalculate the time scale difference of the corrected trajectory point candidate interval, that is, the time scale corresponding to the p10 trajectory point minus the time scale corresponding to the p8 trajectory point, to generate t4. If t4 is less than the time dimension limit, it means that the second candidate stay point after the corrected trajectory point candidate interval does not meet the time dimension limit requirement, so the candidate stay point C is removed from the candidate stay point list.

[0100] S105-3: For the candidate stay point list that has completed the first level update and the second level update, continue to execute the step of arranging the candidate stay points in the candidate stay point list in descending order according to the time scale difference of their corresponding trajectory point candidate intervals from large to small.

[0101] In this embodiment, after completing the first-level update and the second-level update of the candidate stay point list, the first candidate stay point obtained in this iteration is retained, and the remaining candidate stay point list composed of the second candidate stay points is iteratively executed to arrange the candidate stay points in the candidate stay point list in descending order according to the time scale difference of their corresponding trajectory point candidate intervals from large to small. After the number of iterations is reached, the first candidate stay point retained in each iteration is output, and finally the target stay point is output.

[0102] The embodiment of the present invention also provides a trajectory stop point calculation device, referring to Figure 3 , shows a functional module diagram of a trajectory stop point calculation device of the present invention, which may include the following modules:

[0103] A trajectory point sequence generation module 301 is used to obtain a time-continuous trajectory point sequence;

[0104] A screening module 302 is configured to screen the trajectory point sequence according to a time dimension limit and a distance dimension limit to obtain a candidate stay point list consisting of a plurality of candidate stay points;

[0105] The sorting module 303 is used to sort the candidate stay points in the candidate stay point list in descending order according to the time scale difference between the corresponding trajectory point candidate intervals from large to small;

[0106] A candidate stay point determination module 304 is configured to select the candidate stay point with the highest ranking as the first candidate stay point, and select other candidate stay points other than the first candidate stay point as the second candidate stay points;

[0107] The iteration module 305 is used to perform multi-level updates on the candidate stay point list according to the first candidate stay point and the second candidate stay point until the iteration condition is met, and output the candidate stay point list obtained in the last iteration to obtain the target stay point.

[0108] In a feasible implementation, the trajectory point sequence generation module 301 includes:

[0109] A positioning data acquisition submodule is used to obtain the vehicle's track point positioning data, wherein the track point positioning data includes longitude information, latitude information and time information;

[0110] The combining submodule is configured to combine the trajectory point positioning data in ascending or descending time order based on the time information to generate the time-continuous trajectory point sequence.

[0111] In a feasible implementation, the screening module 302 includes:

[0112] The traversal submodule is used to perform bidirectional traversal along the trajectory point sequence with each trajectory point on the trajectory point sequence as an anchor point;

[0113] The first screening submodule is used to calculate the spherical distance between other trajectory points and the anchor point in the trajectory point sequence, determine other trajectory points whose spherical distance is less than or equal to the distance dimension limit as candidate trajectory points, and aggregate multiple candidate trajectory points to generate a candidate trajectory point interval;

[0114] The second screening submodule is used to calculate the time scale difference between the starting candidate trajectory point and the ending candidate trajectory point in the trajectory point candidate interval. If the time scale difference is greater than or equal to the time dimension limit, the trajectory point candidate interval is determined as a candidate stay point, wherein the center point of the candidate stay point is the anchor point;

[0115] The combination submodule is used to collect multiple candidate stay points and generate a candidate stay point list.

[0116] In a feasible implementation, the iteration module 305 includes:

[0117] A first updating submodule, configured to perform a first-level update on the candidate stay point list based on an inclusion relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a center point of the second candidate stay point;

[0118] A second updating submodule, configured to perform a second-level update on the candidate stay point list according to an overlapping relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a trajectory point candidate interval corresponding to the second candidate stay point;

[0119] The loop submodule is used to continue to execute the step of arranging the candidate stay points in the candidate stay point list that has completed the first level update and the second level update in descending order according to the time scale difference of their corresponding trajectory point candidate intervals from large to small.

[0120] In a feasible implementation, the second updating submodule includes:

[0121] a correction unit, configured to, if there is an overlapping area between the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point, delete the overlapping area in the trajectory point candidate interval corresponding to the second candidate stay point, and generate a corrected trajectory point candidate interval corresponding to the second candidate stay point;

[0122] The elimination unit is used to calculate the time scale difference of the corrected trajectory point candidate interval corresponding to the second candidate stay point, and eliminate the second candidate stay point from the candidate stay point list when the time scale difference is less than the time dimension limit.

[0123] In another embodiment provided by the present invention, a vehicle is further provided. The vehicle includes a processor, and the processor is used to implement the method proposed in the first aspect of the embodiment of the present invention when executing.

[0124] Based on the same inventive concept, another embodiment of the present invention provides an electronic device, including a processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus.

[0125] Memory for storing computer programs;

[0126] The processor is used to implement the trajectory stop point calculation method of the present invention when executing the program stored in the memory.

[0127] The communication bus mentioned in the above terminal can be a Peripheral Component Interconnect (PCI) bus or an Extended Industry Standard Architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or one type of bus. The communication interface is used for communication between the above terminal and other devices. The memory can include a random access memory (RAM) or a non-volatile memory, such as at least one disk storage. Optionally, the memory can also be at least one storage system located away from the aforementioned processor.

[0128] The above-mentioned processor can be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it can also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, and discrete hardware components.

[0129] In addition, to achieve the above-mentioned purpose, an embodiment of the present application further proposes a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the trajectory stop point calculation method of the embodiment of the present application.

[0130] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Thus, embodiments of the present invention may take the form of entirely hardware embodiments, entirely software embodiments, or embodiments combining software and hardware aspects. Furthermore, embodiments of the present invention may take the form of a computer program product implemented on one or more computer-usable devices (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0131] The embodiments of the present invention are described with reference to the flowcharts and / or block diagrams of the methods, terminal devices (systems), and computer program products according to the embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of the processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing terminal device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing terminal device generate instructions for implementing the process in the flowchart and / or block diagram. Figure 1 a process or multiple processes and / or boxes Figure 1 A system that specifies the functions of a box or boxes.

[0132] These computer program instructions can also be stored in a computer readable memory that can guide a computer or other programmable data processing terminal device to work in a specific manner, so that the instructions stored in the computer readable memory produce a product including an instruction system, which is implemented in the process Figure 1 a process or multiple processes and / or boxes Figure 1 The function specified in one or more boxes.

[0133] These computer program instructions can also be loaded onto a computer or other programmable data processing terminal device so that a series of operating steps are executed on the computer or other programmable terminal device to produce a computer-implemented process, thereby providing instructions for executing on the computer or other programmable terminal device to implement the process. Figure 1 a process or multiple processes and / or boxes Figure 1 A step that specifies a function in one or more boxes.

[0134] Finally, it should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply that there is any such actual relationship or order between these entities or operations. "And / or" means that either one of the two can be selected, or both can be selected. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or terminal device that includes a series of elements includes not only those elements, but also other elements that are not explicitly listed, or also includes elements that are inherent to such process, method, article or terminal device. In the absence of further restrictions, the elements defined by the sentence "including one..." do not exclude the presence of other identical elements in the process, method, article or terminal device that includes the elements.

[0135] The above describes in detail a trajectory stop point calculation method, device, electronic device, and vehicle provided by the present invention. Specific examples are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only intended to help understand the method and core concept of the present invention. At the same time, for those skilled in the art, according to the concept of the present invention, there may be changes in the specific implementation method and application scope. In summary, the content of this specification should not be understood as limiting the present invention.

Claims

1. A method for calculating trajectory stop points, characterized in that: The method comprises: Obtain a time-continuous sequence of trajectory points; Filtering the trajectory point sequence according to a time dimension limit and a distance dimension limit to obtain a candidate stay point list consisting of a plurality of candidate stay points; Arrange the candidate stay points in the candidate stay point list in descending order according to the time scale difference between the corresponding trajectory point candidate intervals from large to small; The candidate stay point with the highest ranking is selected as the first candidate stay point, and the other candidate stay points other than the first candidate stay point are selected as the second candidate stay points; According to the first candidate stay point and the second candidate stay point, the candidate stay point list is updated in multiple levels until an iteration condition is satisfied, and the candidate stay point list obtained in the last iteration is output to obtain a target stay point; The step of performing multi-level updating on the candidate stay point list according to the first candidate stay point and the second candidate stay point includes: performing a first-level update on the candidate stay point list according to an inclusion relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a center point of the second candidate stay point; performing a second-level update on the candidate stay point list according to an overlapping relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a trajectory point candidate interval corresponding to the second candidate stay point; For the candidate stay point list that has completed the first level update and the second level update, continue to execute the step of arranging the candidate stay points in the candidate stay point list in descending order according to the time scale difference of their corresponding trajectory point candidate intervals from large to small.

2. The trajectory stop point calculation method according to claim 1, characterized in that: The steps of obtaining a time-continuous sequence of trajectory points include: Acquiring vehicle track point positioning data, wherein the track point positioning data includes longitude information, latitude information, and time information; Based on the time information, the trajectory point positioning data are combined in ascending or descending time order to generate the time-continuous trajectory point sequence.

3. The trajectory stop point calculation method according to claim 1, characterized in that: The step of screening the trajectory point sequence according to the time dimension limit and the distance dimension limit to obtain a candidate stay point list consisting of multiple candidate stay points includes: Taking each trajectory point on the trajectory point sequence as an anchor point, bidirectionally traversing along the trajectory point sequence; Calculating the spherical distances between other trajectory points in the trajectory point sequence and the anchor point, determining other trajectory points whose spherical distances are less than or equal to the distance dimension limit as candidate trajectory points, and grouping the plurality of candidate trajectory points to generate a candidate trajectory point interval; Calculating a time scale difference between a starting point candidate trajectory point and an ending point candidate trajectory point in the trajectory point candidate interval, and determining the trajectory point candidate interval as the candidate stay point if the time scale difference is greater than or equal to the time dimension limit, wherein the center point of the candidate stay point is the anchor point; A plurality of the candidate stay points are collected to generate the candidate stay point list.

4. The trajectory stop point calculation method according to claim 1, characterized in that: The step of performing a first-level update on the candidate stay point list according to the inclusion relationship between the trajectory point candidate interval corresponding to the first candidate stay point and the center point of the second candidate stay point comprises: If the center point of the second candidate stay point is located within the trajectory point candidate interval corresponding to the first candidate stay point, the second candidate stay point is removed from the candidate stay point list.

5. The trajectory stop point calculation method according to claim 1, characterized in that: The step of performing a second-level update on the candidate stay point list according to an overlapping relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a trajectory point candidate interval corresponding to the second candidate stay point includes: If there is an overlapping area between the trajectory point candidate interval corresponding to the first candidate stay point and the trajectory point candidate interval corresponding to the second candidate stay point, deleting the overlapping area in the trajectory point candidate interval corresponding to the second candidate stay point and generating a revised trajectory point candidate interval corresponding to the second candidate stay point; Calculate the time scale difference of the corrected trajectory point candidate interval corresponding to the second candidate stay point, and if the time scale difference is less than the time dimension limit, remove the second candidate stay point from the candidate stay point list.

6. A trajectory stop point calculation device, characterized in that: The device comprises: A trajectory point sequence generation module is used to obtain a time-continuous trajectory point sequence; A screening module, configured to screen the trajectory point sequence according to a time dimension limit and a distance dimension limit to obtain a candidate stay point list consisting of a plurality of candidate stay points; a sorting module, configured to arrange the candidate stay points in the candidate stay point list in descending order according to the time scale difference between the corresponding trajectory point candidate intervals; a candidate stay point determination module, configured to select the candidate stay point with the highest ranking as a first candidate stay point, and select other candidate stay points other than the first candidate stay point as second candidate stay points; an iteration module, configured to perform multi-level updates on the candidate stay point list according to the first candidate stay point and the second candidate stay point until an iteration condition is satisfied, and output the candidate stay point list obtained in the last iteration to obtain a target stay point; Wherein, the iteration module includes: a first updating submodule, configured to perform a first-level update on the candidate stay point list according to an inclusion relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a center point of the second candidate stay point; a second updating submodule, configured to perform a second-level update on the candidate stay point list according to an overlapping relationship between a trajectory point candidate interval corresponding to the first candidate stay point and a trajectory point candidate interval corresponding to the second candidate stay point; The loop submodule is used to continue to execute the step of arranging the candidate stay points in the candidate stay point list that has completed the first level update and the second level update in descending order according to the time scale difference of their corresponding trajectory point candidate intervals from large to small.

7. The trajectory stop point calculation device according to claim 6, characterized in that: The screening module includes: The traversal submodule is used to perform bidirectional traversal along the trajectory point sequence with each trajectory point on the trajectory point sequence as an anchor point; The first screening submodule is used to calculate the spherical distance between other trajectory points and the anchor point in the trajectory point sequence, determine other trajectory points whose spherical distance is less than or equal to the distance dimension limit as candidate trajectory points, and aggregate multiple candidate trajectory points to generate a candidate trajectory point interval; The second screening submodule is used to calculate the time scale difference between the starting candidate trajectory point and the ending candidate trajectory point in the trajectory point candidate interval. If the time scale difference is greater than or equal to the time dimension limit, the trajectory point candidate interval is determined as a candidate stay point, wherein the center point of the candidate stay point is the anchor point; The combination submodule is used to collect multiple candidate stay points and generate a candidate stay point list.

8. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus; Memory for storing computer programs; The processor is configured to implement the trajectory stop point calculation method described in any one of claims 1 to 5 when executing the program stored in the memory.

9. A vehicle, characterized in that: The method comprises a processor and a memory, wherein the memory stores machine executable instructions that can be executed by the processor, and the processor is used to execute the machine executable instructions to implement the trajectory stop point calculation method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Berth identification method and device based on ship track

    CN111581314A

  • Method and system for identifying stop point based on GPS track of heavy-duty truck and medium

    CN115436972A