IP Library › Granted Patent US 12,604,182
Granted Patent B2
US 12,604,182 · App. 18/399,066 · Granted Apr 14, 2026

Method and apparatus for generating sub-trajectories for a trajectory

Inventors: Elena Vidyakina (Berlin, DE); Elena Mumford (Eindhoven, NL); Johannes Braese (Berlin, DE)
Assignee: HERE Global B.V.
H04W12/02B60R25/32
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,604,182
App. No.
18/399,066
Granted
Apr 14, 2026
Kind
B2
Abstract

An apparatus and a method for generating sub-trajectories for a trajectory are disclosed. The method includes retrieving trajectory data comprising a plurality of data points defining a trajectory and iteratively executing a set of operations until a termination condition is met. The set of operations include selecting an observation point associated with the plurality of data points and calculating a set of visible points comprising one or more data points from the plurality of data points associated with the observation point based on a predefined visibility context criterion. The method further includes identifying a changing point from the plurality of data points based on the iterative execution of the set of operations, and generating a sub-trajectory for the trajectory such that the changing point indicates a starting point of the sub-trajectory.

Claims (63)

1 . A method, comprising:

retrieving, by at least one processor from one or more sensors of a mobile device over a communications network, trajectory data comprising a plurality of data points defining a trajectory;

iteratively executing, by the at least one processor, a set of operations until a termination condition is met, the set of operations comprising:

selecting an observation point associated with one of the plurality of data points, and

calculating a set of visible points comprising one or more data points from the plurality of data points, such that the set of visible points are associated with the observation point based on a predefined visibility context criterion retrieved from a map database;

identifying, by the at least one processor, a changing point from the plurality of data points based on the iterative execution of the set of operations until the termination condition is met;

generating, by the at least one processor, an anonymized sub-trajectory for the trajectory such that the changing point indicates a starting point of the anonymized sub-trajectory; and

outputting, by the least one processor, the anonymized sub-trajectory to at least one location-based service.

2 . The method of claim 1 , wherein the changing point is identified based on a comparison between location information of the changing point and location information of a corresponding previous data point from the plurality of data points.

3 . The method of claim 1 , wherein the visibility context criterion is predefined based on map data associated with a location of the trajectory.

4 . The method of claim 1 , further comprising:

processing the anonymized sub-trajectory to introduce a gap overlapping with the changing point; and

outputting the processed anonymized sub-trajectory in place of a part of the trajectory.

5 . The method of claim 4 , further comprising:

estimating a data leak risk value for the anonymized sub-trajectory based on a length of the gap, a length of the processed anonymized sub-trajectory and a length of the anonymized sub-trajectory; and

outputting the processed anonymized sub-trajectory in place of the part of the trajectory when the estimated data leak risk value is less than a privacy threshold value.

6 . The method of claim 4 ,

wherein the anonymized the sub-trajectory is generated from the trajectory based on one or more anonymization parameters, and wherein the one or more anonymization parameters include at least the changing point, and a gap length of the gap.

7 . The method of claim 1 , further comprising:

identifying one or more changing points from the plurality of data points based on a set of visible points for each of the plurality of data points, wherein the set of visible points for each of the plurality of data points are determined based on the iterative execution of the set of operations until the termination condition is met; and

generating a plurality of anonymized sub-trajectories from the trajectory such that the one or more changing points indicate a starting point of a corresponding anonymized sub-trajectory.

8 . The method of claim 7 , further comprising:

processing the plurality of anonymized sub-trajectories to introduce a gap overlapping with at least one changing point of the plurality of anonymized sub-trajectories; and

outputting the processed plurality of anonymized sub-trajectories in place of the trajectory.

9 . The method of claim 8 , wherein when a minimum number of the plurality of anonymized sub-trajectories to generate and a minimum gap length for the gap are predefined, the method further comprises:

processing the plurality of anonymized sub-trajectories to introduce the gap overlapping with at least one changing point such that a number of changing points not replaced with the gap is minimized.

10 . An apparatus comprising at least one processor and at least one non-transitory memory including computer program code instructions, the computer program code instructions configured to, when executed, cause the apparatus to:

retrieve, by the at least one processor from one or more sensors of a mobile device over a communications network, trajectory data comprising a plurality of data points defining a trajectory;

iteratively execute, by the at least one processor, a set of operations until a termination condition is met, the set of operations comprising:

selecting an observation point associated with one of the plurality of data points, and

calculating a set of visible points comprising one or more data points from the plurality of data points, such that the set of visible points are associated with the observation point based on a predefined visibility context criterion;

identify, by the at least one processor, a changing point from the plurality of data points based on the iterative execution of the set of operations until the termination condition is met;

generate, by the at least one processor, an anonymized sub-trajectory for the trajectory such that the changing point indicates a starting point of the anonymized sub-trajectory; and

output, by the least one processor, the anonymized sub-trajectory to at least one location-based service.

11 . The apparatus of claim 10 , wherein the changing point is identified based on a comparison between location information of the changing point and location information of a corresponding previous data point from the plurality of data points.

12 . The apparatus of claim 10 , wherein the visibility context criterion is predefined based on map data associated with a location of the trajectory.

13 . The apparatus of claim 10 , wherein the computer program code instructions are further configured to cause the apparatus to:

process the anonymized sub-trajectory to introduce a gap overlapping with the changing point; and

output the processed anonymized sub-trajectory in place of a part of the trajectory.

14 . The apparatus of claim 13 , wherein the computer program code instructions are further configured to cause the apparatus to:

estimate a data leak risk value for the anonymized sub-trajectory based on a length of the gap, a length of the processed anonymized sub-trajectory and a length of the anonymized sub-trajectory; and

output the processed anonymized sub-trajectory in place of the part of the trajectory when the estimated data leak risk value is less than a privacy threshold value.

15 . The apparatus of claim 13 , wherein

the sub-trajectory is generated from the trajectory based on one or more anonymization parameters, and wherein the one or more anonymization parameters include at least the changing point, and a gap length of the gap.

16 . The apparatus of claim 10 , wherein the computer program code instructions are further configured to cause the apparatus to:

identify one or more changing points from the plurality of data points based on a set of visible points for each of the plurality of data points, wherein the set of visible points for each of the plurality of data points are calculated based on the iterative execution of the set of operations until the termination condition is met; and

generate a plurality of anonymized sub-trajectories from the trajectory such that the one or more changing points indicate a starting point of a corresponding anonymized sub-trajectory.

17 . The apparatus of claim 16 , wherein the computer program code instructions are further configured to cause the apparatus to:

process the plurality of anonymized sub-trajectories to introduce a gap overlapping with the one or more changing points of the plurality of anonymized sub-trajectories; and

output the processed plurality of anonymized sub-trajectories in place of the trajectory.

18 . The apparatus of claim 16 , wherein when a minimum number of the plurality of sub-trajectories to generate and a minimum gap length for the gap are predefined, the computer program code instructions are further configured to cause the apparatus to:

process the plurality of anonymized sub-trajectories to introduce the gap overlapping with at least one changing point such that a number of changing points not replaced with the gap is minimized.

19 . A non-transitory computer-readable storage medium having computer program code instructions stored therein, the computer program code instructions, when executed by at least one processor, cause the at least one processor to:

retrieve, by the at least one processor from one or more sensors of a mobile device over a communications network, trajectory data comprising a plurality of data points defining a trajectory;

iteratively execute, by the at least one processor, a set of operations until a termination condition is met, the set of operations comprising:

selecting an observation point associated with one of the plurality of data points, and

calculating a set of visible points comprising one or more data points from the plurality of data points, such that the set of visible points are associated with the observation point based on a predefined visibility context criterion;

identify, by the at least one processor, a changing point from the plurality of data points based on the iterative execution of the set of operations until the termination condition is met;

generate, by the at least one processor, an anonymized sub-trajectory for the trajectory such that the changing point indicates a starting point of the anonymized sub-trajectory; and

output, by the least one processor, the anonymized sub-trajectory to at least one location-based service.

20 . The non-transitory computer-readable storage medium of claim 19 , wherein the computer program code instructions, when executed by the at least one processor, cause the at least one processor to:

process the anonymized sub-trajectory to introduce a gap overlapping with the changing point; and

output the processed anonymized sub-trajectory in place of a part of the trajectory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2024
From: VIDYAKINA, ELENA; MUMFORD, ELENA; BRAESE, JOHANNES
To: HERE GLOBAL B.V.
Reel/Frame 066462/0827 →
Continuity (1)
Related Publication 20250220415A1 · Jul 3, 2025
References Cited (9)
US 11042648B2 · Ostadzadeh et al. · 2021 [cited by applicant]
US 11526628B2 · Bennati et al. · 2022 [cited by applicant]
US 11562168B2 · Balu · 2023 [cited by applicant]
US 20210372801A1 · Bennati · 2021 [cited by examiner]
US 20210383022A1 · Bennati · 2021 [cited by examiner]
US 20220156869A1 · Bennati · 2022 [cited by examiner]
Han et al., “Research on trajectory data releasing method via differential privacy based on spatial partition”, Research Article, Security and Communication Networks, vol. 2018, Article ID 4248092, Nov. 1, 2018, 14 page… [cited by applicant]
Office Action for related European Application No. 24222358.4-1218, dated May 22, 2025, 9 pages. [cited by applicant]
Liu et al., “SLAT: Sub-Trajectory Linkage Attack Tolerance Framework for Privacy-Preserving Trajectory Publishing”, 2018 International Conference on Networking and Network Applications (NaNA), Oct. 12, 2018, pp. 298-303. [cited by applicant]