IP Library Granted Patent US 11,535,248
Granted Patent B2
US 11,535,248 · App. 17/336,713 · Granted Dec 27, 2022

Trajectory prediction from precomputed or dynamically generated bank of trajectories

Inventors: Tung Minh Phan (Garden Grove, CA); Eric Wolff (Boston, MA); Emilio Frazzoli (Newton, MA); Elena Corina Grigore (Boston, MA); Freddy Boulton (Boston, MA)
Assignee: Motional AD LLC
B60W30/0956G01S7/4814G01S17/89G01S17/931G01S19/01G05B13/027G05D1/0221G06F17/18B60W2420/42B60W2554/4044B60W2556/10G05D2201/0213
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 11,535,248
App. No.
17/336,713
Granted
Dec 27, 2022
Kind
B2
Abstract

Among other things, techniques are described for predicting how an agent (e.g., a vehicle, bicycle, pedestrian, etc.) will move in an environment based on prior movement, the road network, the surrounding objects and/or other relevant environmental factors. One trajectory prediction technique involves generating a probability map for an agent's movement. Another trajectory prediction technique involves generating a trajectory lattice, for an agent's movement. In addition, a different trajectory prediction technique involves multi-modal regression where a classifier (e.g., a neural network) is trained to classify the probability of a number of (learned) modes such that each model produces a trajectory based on the current input.

Claims (79)

1. A computer implemented method comprising:

receiving, by one or more processors of a vehicle, location data and past trajectory data for one or more objects detected by one or more sensors;

determining, by the one or more processors, a set of features for the one or more objects based on the location data and the past trajectory data;

combining, by the one or more processors, the set of features with motion data of an agent to form a concatenated data set;

generating, by the one or more processors, a probability map based on the concatenated data set, wherein the probability map comprises a plurality of physical locations, and wherein each physical location of the plurality of physical locations is assigned a probability of the agent moving through that location;

determining, by the one or more processors, one or more predicted trajectories for the agent based on the probability map;

generating, by the one or more processors, one or more driving commands for the vehicle based on the one or more predicted trajectories; and

operating, by a control circuit of the vehicle, the vehicle based on the one or more driving commands.

2. The method of claim 1 , wherein generating the probability map comprises inputting, by the one or more processors, the concatenated data set into a neural network.

3. The method of claim 1 , wherein receiving the past trajectory data comprises receiving, by the one or more processors, a trajectory of each object of the one or more object for a past time interval.

4. The method of claim 1 , wherein receiving the location data and the past trajectory data comprises receiving, by the one or more processors, an image including the location data for the one or more objects and the past trajectory data for the one or more objects, wherein the past trajectory data is color coded to indicate a corresponding past trajectory for each object of the one or more objects.

5. The method of claim 4 , wherein determining the set of features for the one or more objects, comprises:

inputting, by the one or more processors, the image into a classifier; and

receiving, by the one or more processors, a plurality of features for the image from the classifier.

6. The method of claim 1 , wherein generating the probability map comprises:

generating, by the one or more processors, a data structure for a grid representing a detection range of one or more sensors of the agent, wherein the grid comprises a plurality of locations; and

assigning, by the one or more processors, a probability to each location within the grid that the agent will be present in that location within the grid.

7. The method of claim 1 , wherein each location within the probability map stores a time for each probability.

8. The method of claim 1 , wherein the one or more processors are located in the vehicle.

9. The method of claim 1 , wherein the one or more processors are located remotely from the vehicle.

10. The method of claim 1 , further comprising:

receiving, by the one or more processors, training location data and training past trajectory data for one or more training objects;

determining, by the one or more processors, a set of training features for the one or more training objects based on the training location data and the training past trajectory data;

combining, by the one or more processors, the set of training features with training motion data of an agent to form a training concatenated data set;

generating, based on the training concatenated data set, a training probability map, wherein the training probability map comprises a training plurality of physical locations, and wherein each of the training plurality of physical locations is assigned a training probability of a training agent moving through that location;

determining, based on the training probability map, one or more training trajectories for the training agent;

comparing the one or more training trajectories with a known trajectory of the training agent; and

updating weights of a model according to the comparing.

11. The method of claim 10 , wherein updating the weights of the model according to the comparing comprises propagating a difference between each of the one or more training trajectories and the known trajectory through the model.

12. A non-transitory computer-readable storage medium comprising one or more programs for execution by one or more processors, the one or more programs including instructions which, when executed by the one or more processors, cause the one or more processors to:

receive location data and past trajectory data for one or more objects detected by one or more sensors;

determine a set of features for the one or more objects based on the location data and the past trajectory data;

combine the set of features with motion data of an agent to form a concatenated data set;

generate a probability map based on the concatenated data set, wherein the probability map comprises a plurality of physical locations, and wherein each physical location of the plurality of physical locations is assigned a probability of the agent moving through that location;

determine one or more predicted trajectories for the agent based on the probability map;

generate one or more driving commands for a vehicle based on the one or more predicted trajectories; and

operate, by a control circuit of the vehicle, the vehicle based on the one or more driving commands.

13. The non-transitory computer-readable storage medium of claim 12 , wherein generating the probability map comprises inputting the concatenated data set into a neural network.

14. The non-transitory computer-readable storage medium of claim 12 , wherein receiving the past trajectory data comprises receiving a trajectory of each object of the one or more object for a past time interval.

15. The non-transitory computer-readable storage medium of claim 12 , wherein receiving the location data and the past trajectory data comprises receiving an image including the location data for the one or more objects and the past trajectory data for the one or more objects, wherein the past trajectory data is color coded to indicate a corresponding past trajectory for each object of the one or more objects.

16. The non-transitory computer-readable storage medium of claim 15 , wherein determining the set of features for the one or more objects, comprises:

inputting the image into a classifier; and

receiving a plurality of features for the image from the classifier.

17. A vehicle comprising:

one or more computer-readable media storing computer-executable instructions; and

one or more processors configured to execute the computer-executable instructions to:

receive location data and past trajectory data for one or more objects detected by one or more sensors;

determine a set of features for the one or more objects based on the location data and the past trajectory data;

combine the set of features with motion data of an agent to form a concatenated data set;

generate a probability map based on the concatenated data set, wherein the probability map comprises a plurality of physical locations, and wherein each physical location of the plurality of physical locations is assigned a probability of the agent moving through that location;

determine one or more predicted trajectories for the agent based on the probability map;

generate one or more driving commands for a vehicle based on the one or more predicted trajectories; and

operate, by a control circuit of the vehicle, the vehicle based on the one or more driving commands.

18. The vehicle of claim 17 , wherein generating the probability map comprises inputting the concatenated data set into a neural network.

19. The vehicle of claim 17 , wherein receiving the past trajectory data comprises receiving a trajectory of each object of the one or more object for a past time interval.

20. The vehicle of claim 17 , wherein receiving the location data and the past trajectory data comprises receiving an image including the location data for the one or more objects and the past trajectory data for the one or more objects, wherein the past trajectory data is color coded to indicate a corresponding past trajectory for each object of the one or more objects.

21. The vehicle of claim 17 , wherein determining the set of features for the one or more objects, comprises:

inputting, by the one or more processors, the image into a classifier; and

receiving, by the one or more processors, a plurality of features for the image from the classifier.

22. The vehicle of claim 17 , wherein generating the probability map comprises:

generating, by the one or more processors, a data structure for a grid representing a detection range of one or more sensors of the agent, wherein the grid comprises a plurality of locations; and

assigning, by the one or more processors, a probability to each location within the grid that the agent will be present in that location within the grid.

23. The vehicle of claim 17 , wherein each location within the probability map stores a time for each probability.

24. The vehicle of claim 17 , wherein the one or more processors are located in the vehicle.

25. The vehicle of claim 17 , wherein the one or more processors are located remotely from the vehicle.

26. The vehicle of claim 17 , further comprising:

receiving, by the one or more processors, training location data and training past trajectory data for one or more training objects;

determining, by the one or more processors, a set of training features for the one or more training objects based on the training location data and the training past trajectory data;

combining, by the one or more processors, the set of training features with training motion data of an agent to form a training concatenated data set;

generating, based on the training concatenated data set, a training probability map, wherein the training probability map comprises a training plurality of physical locations, and wherein each of the training plurality of physical locations is assigned a training probability of a training agent moving through that location;

determining, based on the training probability map, one or more training trajectories for the training agent;

comparing the one or more training trajectories with a known trajectory of the training agent; and

updating weights of a model according to the comparing.

27. The vehicle of claim 26 , wherein updating the weights of the model according to the comparing comprises propagating a difference between each of the one or more training trajectories and the known trajectory through the model.

28. The non-transitory computer-readable storage medium of claim 12 , wherein generating the probability map comprises:

generating a data structure for a grid representing a detection range of one or more sensors of the agent, wherein the grid comprises a plurality of locations; and

assigning a probability to each location within the grid that the agent will be present in that location within the grid.

29. The non-transitory computer-readable storage medium of claim 12 , wherein each location within the probability map stores a time for each probability.

30. The non-transitory computer-readable storage medium of claim 12 , wherein the one or more processors are located in the vehicle.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 15, 2021
From: PHAN, TUNG MINH; WOLFF, ERIC; FRAZZOLI, EMILIO; GRIGORE, ELENA CORINA; BOULTON, FREDDY
To: MOTIONAL AD LLC
Reel/Frame 057493/0032 →
Continuity (3)
Continuation 16883899 · May 26, 2020
Provisional Application 62932164 · Nov 7, 2019
Related Publication 20210284147A1 · Sep 16, 2021
Cited By (5)
US 12,204,333 US 12,420,830 US 12,497,072 US 12,552,410 US 12,617,390