IP Library Granted Patent US 12,515,651
Granted Patent B2
US 12,515,651 · App. 18/052,122 · Granted Jan 6, 2026

System and method for target behavior prediction using host prediction in advanced driving assist system (ADAS), autonomous driving (AD), or other applications

Inventors: Kilsoo Kim (Hermosa Beach, CA); Jongmoo Choi (Gardena, CA); Shanmukha M. Bhumireddy (Torrance, CA); Emilio Aron Moyers Barrera (Bloomfield Hills, MI); Phillip Vu (Calabasas, CA); Rishitha Kalakata (Torrance, CA)
Assignee: CANOO TECHNOLOGIES INC.
B60W30/0956B60W30/09B60W50/16B60W2554/4041B60W2554/4046
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,515,651
App. No.
18/052,122
Granted
Jan 6, 2026
Kind
B2
Abstract

A method includes obtaining sensor data associated with a target object at a host vehicle and generating at least one first polynomial associated with the host vehicle. Each first polynomial is a representation of an estimated behavior of the host vehicle. The method also includes identifying relative positions of the target object over time and generating at least one second polynomial associated with the target object based on the relative positions. Coefficients of each second polynomial are based on a magnitude of a covariance of the relative positions used to generate the second polynomial. Each second polynomial is a representation of an estimated behavior of the target object. The method further includes determining whether a collision between the host vehicle and the target object is possible based on the first and second polynomials and, in response to determining that the collision is possible, initiating one or more corrective actions.

Claims (97)

1 . A method of determining a possibility of a collision between a host vehicle and a target object, the method comprising:

using at least one processing device coupled to a communications bus within the host vehicle to

communicate with a plurality of sensors coupled to the communications bus to obtain sensor data from each of the plurality of sensors, the sensor data-associated with the target object at the host vehicle,

perform a sensor fusion function to combine the sensor data from the plurality of sensors,

operate a vehicle path prediction function based upon the sensor data to predict a future path of the host vehicle by

generating at least one first polynomial associated with the host vehicle, wherein each first polynomial is a representation of an estimated behavior of the host vehicle, and

identifying relative positions of the target object with reference to the host vehicle over time,

operate a target path prediction function based upon the combined sensor data to estimate a position of the target object relative to the host vehicle by

generating at least one second polynomial associated with the target object based on the relative positions of the target object, wherein coefficients of each second polynomial are based on a magnitude of a covariance of the relative positions of the target object used to generate the second polynomial, and wherein each second polynomial is a representation of an estimated behavior of the target object,

for each second polynomial being generated, comparing the magnitude of the covariance to a covariance threshold in order to determine how the coefficients of the second polynomial are determined

determine whether a collision between the host vehicle and the target object is possible based on the predicted future path of the host vehicle and the estimated position of the target object relative to the host vehicle and

in response to determining that the collision between the host vehicle and the target object is possible, selectively operate at least one actuator coupled to the vehicle data bus to initiate one or more corrective actions by the host vehicle.

2 . The method of claim 1 , further comprising, for each second polynomial being generated:

generating a covariance matrix based on the relative positions of the target object used to generate the second polynomial; and

generating the magnitude of the covariance of the relative positions of the target object used to generate the second polynomial based on the covariance matrix.

3 . The method of claim 2 wherein:

the coefficients of the second polynomial are determined based on the relative positions of the target object with reference to different positions of the host vehicle over time when the magnitude of the covariance is above the covariance threshold; and

the coefficients of the second polynomial are determined based on the relative positions of the target object with reference to a single position of the host vehicle when the magnitude of the covariance is below the covariance threshold.

4 . The method of claim 1 , further comprising using the at least one processing device for at least one of:

generating a weighted combination of multiple first polynomials associated with the host vehicle; and

generating a weighted combination of multiple second polynomials associated with the target object,

wherein determining whether the collision is possible comprises using at least one of: the weighted combination of the first polynomials and the weighted combination of the second polynomials.

5 . The method of claim 4 , wherein at least one weighted combination of polynomials is generated using weights defined by a sigmoid function.

6 . The method of claim 1 , wherein the one or more corrective actions comprise at least one of:

adjusting at least one of a steering of the host vehicle, a speed of the host vehicle, and a braking of the host vehicle; and

activating an audible, visible, or haptic warning.

7 . The method of claim 1 , further comprising using the at least one processing device for repeatedly:

generating the at least one first polynomial for the host vehicle over time and generating the at least one second polynomial for the target object over time; and

determining whether the collision between the host vehicle and the target object is possible based on the first and second polynomials over time.

8 . The method of claim 1 , further comprising using the at least one processing device for repeatedly:

generating the at least one first polynomial for the host vehicle over time and generating multiple second polynomials for multiple target objects over time; and

determining whether the collision between the host vehicle and any of the target objects is possible based on the first and second polynomials over time.

9 . An apparatus comprising:

at least one processing device coupled to a communications bus within a host vehicle, the at least one processing device configured to:

communicate with a plurality of sensors coupled to the communications bus to obtain sensor data from each of the plurality of sensors, the sensor data associated with a target object at the host vehicle;

perform a sensor fusion function to combine the sensor data from the plurality of sensors;

operate a vehicle path prediction function based upon the sensor data to predict a future path of the host vehicle by

generating at least one first polynomial associated with the host vehicle, wherein each first polynomial is a representation of an estimated behavior of the host vehicle, and

identifying relative positions of the target object with reference to the host vehicle over time;

operate a target path prediction function based upon the combined sensor data to estimate a position of the target object relative to the host vehicle by

generating at least one second polynomial associated with the target object based on the relative positions of the target object, wherein coefficients of each second polynomial are based on a magnitude of a covariance of the relative positions of the target object used to generate the second polynomial, and wherein each second polynomial is a representation of an estimated behavior of the target object;

for each second polynomial being generated, comparing the magnitude of the covariance to a covariance threshold in order to determine how the coefficients of the second polynomial are determined;

determine whether a collision between the host vehicle and the target object is possible based on the predicted future path of the host vehicle and the estimated position of the target object relative to the host vehicle; and

in response to determining that the collision between the host vehicle and the target object is possible, selectively operate at least one actuator coupled to the vehicle data bus to initiate one or more corrective actions by the host vehicle.

10 . The apparatus of claim 9 , wherein the at least one processing device is further

configured, for each second polynomial being generated, to:

generate a covariance matrix based on the relative positions of the target object used to generate the second polynomial; and

generate the magnitude of the covariance of the relative positions of the target object used to generate the second polynomial based on the covariance matrix.

11 . The apparatus of claim 10 , wherein:

the at least one processing device is configured to determine the coefficients of the second polynomial based on the relative positions of the target object with reference to different positions of the host vehicle over time when the magnitude of the covariance is above the covariance threshold; and

the at least one processing device is configured to determine the coefficients of the second polynomial based on the relative positions of the target object with reference to a single position of the host vehicle when the magnitude of the covariance is below the covariance threshold.

12 . The apparatus of claim 9 , wherein the at least one processing device is further configured to at least one of:

generate a weighted combination of multiple first polynomials associated with the host vehicle;

generate a weighted combination of multiple second polynomials associated with the target object; and

wherein the at least one processing device is configured to determine whether the collision is possible using at least one of the weighted combination of the first polynomials and the weighted combination of the second polynomials.

13 . The apparatus of claim 12 , wherein the at least one processing device is configured to generate at least one weighted combination of polynomials using weights defined by a sigmoid function.

14 . The apparatus of claim 9 , wherein one or more corrective actions comprise at least one of:

adjusting at least one of a steering of the host vehicle, speed of the host vehicle, and a braking of the host vehicle; and

activating an audible, visible, or haptic warning.

15 . The apparatus of claim 9 , wherein the at least one processing device is further configured to repeatedly:

generate the at least one first polynomial for the host vehicle over time and generate the at least one second polynomial for the target object over time; and

determine whether the collision between the host vehicle and the target object is possible based on the first and second polynomials over time.

16 . The apparatus of claim 9 , wherein the at least one processing device is further configured to repeatedly:

generate the at least one first polynomial for the host vehicle over time and generate multiple second polynomials for multiple target objects over time; and

determine whether the collision between the host vehicle and any of the target objects is possible based on the first and second polynomials over time.

17 . A non-transitory machine-readable medium containing instructions that when executed cause at least one processing device coupled to a data communications bus within a host vehicle to:

communicate with a plurality of sensors coupled to the data communications bus to obtain sensor data from each of the plurality of sensors, the sensor data associated with a target object;

perform a sensor fusion function to combine the sensor data from the plurality of sensors;

operate a vehicle path prediction function based upon the sensor data to predict a future path of the host vehicle by

generating at least one first polynomial associated with the host vehicle, wherein each first polynomial is a representation of an estimated behavior of the host vehicle, and

identifying relative positions of the target object with reference to the host vehicle over time;

operate a target path prediction function based upon the combined sensor data to estimate a position of the target object relative to the host vehicle by

generating at least one second polynomial associated with the target object based on the relative positions of the target object, wherein coefficients of each second polynomial are based on a magnitude of a covariance of the relative positions of the target object used to generate the second polynomial, and wherein each second polynomial is a representation of an estimated behavior of the target object,

for each second polynomial being generated, comparing the magnitude of the covariance to a covariance threshold in order to determine how the coefficients of the second polynomial are determined;

determine whether a collision between the host vehicle and the target object is possible based on the predicted future path of the host vehicle and the estimated position of the target object relative to the host vehicle first and second-polynomials; and

in response to determining that the collision between the host vehicle and the target object is possible, selectively operate at least one actuator coupled to the vehicle data bus to initiate one or more corrective actions by the host vehicle.

18 . The non-transitory machine-readable medium of claim 17 , further containing instructions that when executed cause the at least one processing device, for each second polynomial being generated, to:

generate a covariance matrix based on the relative positions of the target object used to generate the second polynomial; and

generate the magnitude of the covariance of the relative positions of the target object used to generate the second polynomial based on the covariance matrix.

19 . The non-transitory machine-readable medium of claim 18 , wherein:

the instructions when executed cause the at least one processing device to determine the coefficients of the second polynomial based on the relative positions of the target object with reference to different positions of the host vehicle over time when the magnitude of the covariance is above the covariance threshold; and

the instructions when executed cause the at least one processing device to determine the coefficients of the second polynomial based on the relative positions of the target object with reference to a single position of the host vehicle when the magnitude of the covariance is below the covariance threshold.

20 . The non-transitory machine-readable medium of claim 17 , further containing instructions that when executed cause the at least one processing device to at least one of:

generate a weighted combination of multiple first polynomials associated with the host vehicle;

generate a weighted combination of multiple second polynomials associated with the target object; and

wherein the instructions that when executed cause the at least one processing device to determine whether the collision is possible comprise:

instructions that when executed cause the at least one processing device to use at least one of the weighted combination of the first polynomials and the weighted combination of the second polynomials.

21 . The non-transitory machine-readable medium of claim 20 , wherein the instructions when executed cause the at least one processing device to generate at least one weighted combination of polynomials using weights defined by a sigmoid function.

22 . The non-transitory machine-readable medium of claim 17 , wherein the one or more collective actions comprise at least one of:

adjusting at least one of a steering of the host vehicle, a speed of the host vehicle, and a braking of the host vehicle; and

activating an audible, visible, or haptic warning.

23 . The non-transitory machine-readable medium of claim 17 , further containing instructions that when executed cause the at least one processing device to repeatedly:

generate the at least one first polynomial for the host vehicle over time and generate the at least one second polynomial for the target object over time; and

determine whether the collision between the host vehicle and the target object is possible based on the first and second polynomials over time.

24 . The non-transitory machine-readable medium of claim 17 , further containing instructions that when executed cause the at least one processing device to repeatedly:

generate the at least one first polynomial for the host vehicle over time and generate multiple second polynomials for multiple target objects over time; and

determine whether the collision between the host vehicle and any of the target objects is possible based on the first and second polynomials over time.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2026
From: CANOO TECHNOLOGIES INC.
To: WHS ENERGY SOLUTIONS, LLC
Reel/Frame 075311/0490 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 2, 2022
From: KIM, KILSOO; CHOI, JONGMOO; BHUMIREDDY, SHANMUKHA M.; MOYERS BARRERA, EMILIO ARON; VU, PHILLIP; KALAKATA, RISHITHA
To: CANOO TECHNOLOGIES INC.
Reel/Frame 061636/0681 →