IP Library › Granted Patent US 12,728,894
Granted Patent B1
US 12,728,894 · App. 18/503,671 · Granted Sep 8, 2026

Inferring future visibility to improve autonomous vehicle driving behavior and safety

Inventors: William V. Baxter, III (Bellevue, WA); Kaifei Chen (Santa Clara, CA); Mayank Singal (Sunnyvale, CA); Andrei Tchouprakov (Mountain View, CA); Chenge Yang (Sunnyvale, CA); Ming Zou (Mountain View, CA)
B60W60/0015B60W30/0956B60W50/0097G06V20/58B60W2050/0083B60W2420/403B60W2554/20B60W2556/40G06T15/06G06V10/25
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,728,894
App. No.
18/503,671
Granted
Sep 8, 2026
Kind
B1
Abstract

A system includes a memory storing instructions and a processing device operatively coupled to the memory, wherein the instructions, when executed by the processing device, cause the processing device to perform operations including obtaining a set of input data representing a set of objects within a driving environment being navigated by an autonomous vehicle (AV), generating, based on the set of input data, future visibility information for a set of future locations along a trajectory of the AV within the driving environment, determining, based on the future visibility information, whether a point of sufficient visibility (PSV) exists among the set of future locations, wherein the PSV is a point determined to be clear of occlusions with respect to a speculative object, and controlling operation of the AV based on the PSV determined to exist among the set of future locations.

Claims (52)

1 . A system comprising:

a memory storing instructions; and

a hardware processor operatively coupled to the memory, wherein the instructions, when executed by the hardware processor, cause the hardware processor to perform operations comprising:

obtaining a set of input data representing a set of objects within a driving environment being navigated by an autonomous vehicle (AV), the set of input data being associated with a first time;

generating, based on the set of input data associated with the first time, future visibility information for a plurality of future locations along a trajectory of the AV within the driving environment, wherein the future visibility information for each future location of the plurality of future locations corresponds to a second time during which visibility of the driving environment is likely to change, and wherein the second time for each future location is a respective amount of time later than the first time;

determining, based on the future visibility information, whether a point of sufficient visibility (PSV) exists among the plurality of future locations, wherein the PSV is identified, from among the plurality of future locations, as a first future location along the trajectory of the AV that is determined to be clear of occlusions with respect to a speculative object; and

controlling operation of the AV based on the PSV determined to exist among the plurality of future locations.

2 . The system of claim 1 , wherein the set of objects comprises a set of permanent objects within the driving environment and a set of perception objects observed by the AV within the driving environment.

3 . The system of claim 2 , wherein obtaining the set of input data comprises obtaining a surfel map corresponding to the set of permanent objects.

4 . The system of claim 1 , wherein determining, based on the future visibility information, whether the PSV exists among the plurality of future locations further comprises:

identifying a region of interest (ROI) with respect to a viewpoint of the AV;

determining, based on the ROI, a set of future visibilities associated with the plurality of future locations, wherein each future location of the plurality of future locations corresponds to a respective future visibility of the set of future visibilities; and

determining whether the PSV exists within the plurality of future locations based on the set of future visibilities.

5 . The system of claim 4 , wherein determining the set of future visibilities further comprises determining, for each future location of the plurality of future locations, whether the ROI is occluded using raycasting by:

identifying a number of occluded rays that exist with respect to the ROI;

determining whether the number of occluded rays satisfies a threshold condition; and

in response to determining that the number of occluded rays satisfies the threshold condition, identifying the ROI as being occluded.

6 . The system of claim 1 , wherein controlling operation of the AV based on the PSV further comprises identifying at least one of: a yield location, a distance to the PSV, or a time to the PSV.

7 . The system of claim 1 , wherein the operations further comprise, in response to determining that the PSV does not exist among the plurality of future locations, using a set of default settings to control operation of the AV.

8 . A method comprising:

obtaining, by a hardware processor, a set of input data representing a set of objects within a driving environment being navigated by an autonomous vehicle (AV), the set of input data being associated with a first time;

generating, by the hardware processor based on the set of input data associated with the first time, future visibility information for a plurality of future locations along a trajectory of the AV within the driving environment, wherein the future visibility information for each future location of the plurality of future locations corresponds to a second time during which visibility of the driving environment is likely to change, and wherein the second time for each future location is a respective amount of time later than the first time;

determining, by the hardware processor based on the future visibility information, whether a point of sufficient visibility (PSV) exists among the plurality of future locations, wherein the PSV is identified, from among the plurality of future locations, as a first future location along the trajectory of the AV that is a point determined to be clear of occlusions with respect to a speculative object; and

controlling, by the hardware processor, operation of the AV based on the PSV determined to exist among the plurality of future locations.

9 . The method of claim 8 , wherein the set of objects comprises a set of permanent objects within the driving environment and a set of perception objects observed by the AV within the driving environment.

10 . The method of claim 9 , wherein obtaining the set of input data comprises obtaining a surfel map corresponding to the set of permanent objects.

11 . The method of claim 8 , wherein determining, based on the future visibility information, whether the PSV exists among the plurality of future locations further comprises:

identifying a region of interest (ROI) with respect to a viewpoint of the AV;

determining, based on the ROI, a set of future visibilities associated with the plurality of future locations, wherein each future location of the plurality of future locations corresponds to a respective future visibility of the set of future visibilities; and

determining whether the PSV exists within the plurality of future locations based on the set of future visibilities.

12 . The method of claim 11 , wherein determining the set of future visibilities further comprises determining, for each future location of the plurality of future locations, whether the ROI is occluded using raycasting by:

identifying a number of occluded rays that exist with respect to the ROI;

determining whether the number of occluded rays satisfies a threshold condition; and

in response to determining that the number of occluded rays satisfies the threshold condition, identifying the ROI as being occluded.

13 . The method of claim 8 , wherein controlling operation of the AV based on the PSV further comprises identifying at least one of: a yield location, a distance to the PSV, or a time to the PSV.

14 . The method of claim 8 , further comprising, in response to determining that the PSV does not exist among the plurality of future locations, using, by the hardware processor, a set of default settings to control operation of the AV.

15 . A non-transitory computer-readable storage medium having instructions stored thereon that, when executed by a hardware processor, cause the hardware processor to perform operations comprising:

obtaining a set of input data representing a set of objects within a driving environment being navigated by an autonomous vehicle (AV), the set of input data being associated with a first time;

generating, based on the set of input data associated with the first time, future visibility information for a plurality of future locations along a trajectory of the AV within the driving environment, wherein the future visibility information for each future location of the plurality of future locations corresponds to a second time during which visibility of the driving environment is likely to change, and wherein the second time for each future location is a respective amount of time later than the first time;

determining, based on the future visibility information, whether a point of sufficient visibility (PSV) exists among the plurality of future locations, wherein the PSV is identified, from among the plurality of future locations, as a first future location along the trajectory of the AV that is determined to be clear of occlusions with respect to a speculative object; and

controlling operation of the AV based on the PSV determined to exist among the plurality of future locations.

16 . The non-transitory computer-readable storage medium of claim 15 , wherein the set of objects comprises a set of permanent objects within the driving environment and a set of perception objects observed by the AV within the driving environment, and wherein obtaining the set of input data comprises obtaining a surfel map corresponding to the set of permanent objects.

17 . The non-transitory computer-readable storage medium of claim 15 , wherein determining, based on the future visibility information, whether the PSV exists among the plurality of future locations further comprises:

identifying a region of interest (ROI) with respect to a viewpoint of the AV;

determining, based on the ROI, a set of future visibilities associated with the plurality of future locations, wherein each future location of the plurality of future locations corresponds to a respective future visibility of the set of future visibilities; and

determining whether the PSV exists within the plurality of future locations based on the set of future visibilities.

18 . The non-transitory computer-readable storage medium of claim 17 , wherein determining the set of future visibilities further comprises determining, for each future location of the plurality of future locations, whether the ROI is occluded using raycasting by:

identifying a number of occluded rays that exist with respect to the ROI;

determining whether the number of occluded rays satisfies a threshold condition; and

in response to determining that the number of occluded rays satisfies the threshold condition, identifying the ROI as being occluded.

19 . The non-transitory computer-readable storage medium of claim 15 , wherein controlling operation of the AV based on the PSV further comprises identifying at least one of: a yield location, a distance to the PSV, or a time to the PSV.

20 . The non-transitory computer-readable storage medium of claim 15 , wherein the operations further comprise, in response to determining that the PSV does not exist among the plurality of future locations, using a set of default settings to control operation of the AV.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2023
From: BAXTER, WILLIAM V., III; CHEN, KAIFEI; SINGAL, MAYANK; TCHOUPRAKOV, ANDREI; YANG, CHENGE; ZOU, MING
To: WAYMO LLC
Reel/Frame 065486/0706 →
References Cited (39)
US 8054201B2 · Okugi · 2011 [cited by examiner]
US 8195394B1 · Zhu · 2012 [cited by examiner]
US 8457827B1 · Ferguson · 2013 [cited by examiner]
US 9760092B2 · Ferguson · 2017 [cited by examiner]
US 11016492B2 · Gier · 2021 [cited by examiner]
US 11126180B1 · Kobilarov · 2021 [cited by examiner]
US 11188082B2 · Silva · 2021 [cited by examiner]
US 11505181B2 · Vladimerou · 2022 [cited by examiner]
US 20030137517A1 · Kondo · 2003 [cited by examiner]
US 20040073368A1 · Gonzalez-Banos · 2004 [cited by examiner]
US 20070003162A1 · Miyoshi · 2007 [cited by examiner]
US 20070030212A1 · Shibata · 2007 [cited by examiner]
US 20070053551A1 · Kubo · 2007 [cited by examiner]
US 20090140881A1 · Sakai · 2009 [cited by examiner]
US 20090237269A1 · Okugi · 2009 [cited by examiner]
US 20100228482A1 · Yonak · 2010 [cited by examiner]
US 20110090073A1 · Ozaki · 2011 [cited by examiner]
US 20110102195A1 · Kushi · 2011 [cited by examiner]
US 20120218125A1 · Demirdjian · 2012 [cited by examiner]
US 20130197736A1 · Zhu · 2013 [cited by examiner]
US 20130245877A1 · Ferguson · 2013 [cited by examiner]
US 20130325241A1 · Lombrozo · 2013 [cited by examiner]
US 20200225669A1 · Silva · 2020 [cited by examiner]
US 20200241530A1 · Caveney · 2020 [cited by examiner]
US 20200377092A1 · Torres · 2020 [cited by examiner]
US 20210149408A1 · Dodson · 2021 [cited by examiner]
US 20210405638A1 · Boyraz · 2021 [cited by examiner]
US 20220063662A1 · Sprunk · 2022 [cited by examiner]
US 20220097726A1 · Buchanan · 2022 [cited by examiner]
US 20220097731A1 · Xu · 2022 [cited by examiner]
US 20220185267A1 · Beller · 2022 [cited by examiner]
US 20220315051A1 · Patel · 2022 [cited by examiner]
US 20230143805A1 · Baba · 2023 [cited by examiner]
US 20240087333A1 · Hari · 2024 [cited by examiner]
US 20240166197A1 · Rocchi · 2024 [cited by examiner]
US 20240190452A1 · Mirkovic · 2024 [cited by examiner]
US 20240300486A1 · Otis · 2024 [cited by examiner]
US 20240300487A1 · Otis · 2024 [cited by examiner]
US 20240300533A1 · Otis · 2024 [cited by examiner]