IP Library Granted Patent US 12,738,071
Granted Patent B2
US 12,738,071 · App. 18/133,752 · Granted Sep 15, 2026

Methods for creating training data for determining vehicle following distance

Inventors: Joy Mazumder (Etobicoke, CA); Shashank Saurav (Toronto, CA); Javed Siddique (York, CA); Mohammed Sohail Siddique (Milton, CA)
Assignee: Geotab Inc.
G06V20/58G06T7/73G06T2207/20081G06T2207/30252
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,738,071
App. No.
18/133,752
Granted
Sep 15, 2026
Kind
B2
Abstract

Systems, methods, models, and training data for models are discussed, for determining vehicle positioning, and in particular identifying tailgating. Simulated training images showing vehicles following other vehicles, under various conditions, are generated using a virtual environment. Models are trained to determine following distance between two vehicles. Trained models are used to in detection of tailgating, based on determined distance between two vehicles. Results of tailgating are output to warn a driver, or to provide a report on driver behavior.

Claims (82)

1 . A method for creating training data for training an artificial intelligence to predict a distance between two vehicles, the method comprising:

for each instance in a first plurality of instances:

accessing respective parameter data, the respective parameter data indicating at least a first position of a first virtual vehicle and a second position of a virtual camera, the first position and the second position specific to the instance, the virtual camera representing a perspective from a second virtual vehicle positioned behind the first virtual vehicle, facing towards the first virtual vehicle;

simulating, by at least one processor in a spatial virtual environment, the first virtual vehicle at the first position and the virtual camera at the second position;

rendering, by the at least one processor based on the spatial virtual environment as simulated, at least one image for the instance from the perspective represented by the virtual camera; and

outputting the at least one image for the instance, associated with a label indicative of a distance between the first virtual vehicle and the second virtual vehicle; and

storing, by at least one non-transitory processor-readable storage medium, a first plurality of images including each at least one image output for each instance of the plurality of instances associated with the respective label indicating distance between the first virtual vehicle and the second virtual vehicle for the respective instance.

2 . The method of claim 1 , wherein for each instance in the first plurality of instances:

the respective parameter data further indicates the distance between the first virtual vehicle and the second virtual vehicle; and

the label indicative of the distance between the first virtual vehicle and the second virtual vehicle indicates the distance between the first virtual vehicle and the second virtual vehicle as included in the respective parameter data.

3 . The method of claim 1 , further comprising, for each instance in the first plurality of instances:

determining, by the at least one processor, the distance between the first virtual vehicle and the second virtual vehicle by determining a difference between the first position and the second position.

4 . The method of claim 1 , wherein for each instance in the first plurality of instances, accessing the respective parameter data comprises receiving the respective parameter data as user input via a user input device.

5 . The method of claim 1 , wherein for each instance in the first plurality of instances, accessing the respective parameter data comprises autonomously generating, by the at least one processor, the respective parameter data.

6 . The method of claim 1 wherein, for each instance in the first plurality of instances, outputting the at least one image for the instance comprises outputting the at least one image for the instance associated with a distance label indicative of a distance between the first virtual vehicle and the second virtual vehicle and associated with a vehicle presence label indicative of whether the first virtual vehicle is within a vehicle presence threshold of the second virtual vehicle.

7 . The method of claim 6 , further comprising, for each instance in the first plurality of instances:

generating, by the at least one processor, the vehicle presence label indicative of whether the first virtual vehicle is within a vehicle presence threshold of the second virtual vehicle, based on relative positions of the first virtual vehicle and the second virtual vehicle.

8 . The method of claim 1 , wherein for each instance in the first plurality of instances:

the respective parameter data further indicates a resolution for the virtual camera; and

rendering, by the at least one processor based on the spatial virtual environment as simulated, at least one image for the instance from the perspective represented by the virtual camera comprises rendering the at least one image for the instance at the resolution for the virtual camera.

9 . The method of claim 1 , wherein for each instance in the first plurality of instances, the respective parameter data further indicates at least one parameter selected from a group of parameters consisting of:

type of the first virtual vehicle;

type of the second virtual vehicle;

dimensions of the first virtual vehicle;

dimensions of the second virtual vehicle;

properties of the first virtual vehicle;

properties of the second virtual vehicle;

position and orientation of the virtual camera relative to the second virtual vehicle;

lens attributes of the virtual camera;

weather conditions;

lighting conditions;

time of day; and

date.

10 . The method of claim 1 , further comprising:

selecting a subset of instances from the first plurality of instances;

for each instance in the subset of instances:

autonomously applying a distortion effect to the at least one image output for the instance.

11 . The method of claim 10 , wherein the distortion effect includes at least one distortion effect selected from a group of distortion effects comprising:

image compression loss;

pixel value distribution;

adversarial effect;

image noise;

image saturation; and

image blur.

12 . The method of claim 1 , further comprising:

selecting a subset of instances from the first plurality of instances;

for each instance in the subset of instances:

autonomously applying an environmental effect to the at least one image output for the instance.

13 . The method of claim 12 , wherein the environmental effect includes at least one environmental effect selected from a group of environmental effects comprising:

rain;

snow; and

fog.

14 . The method of claim 1 , wherein for each instance in the first plurality of instances, rendering, by the at least one processor based on the spatial virtual environment as simulated, at least one image for the instance from the perspective represented by the virtual camera comprises:

rendering, by the at least one processor based on the spatial virtual environment, a single image for the instance from the perspective represented by the virtual camera.

15 . The method of claim 1 , wherein for each instance in the first plurality of instances, rendering, by the at least one processor based on the spatial virtual environment, at least one image for the instance from the perspective represented by the virtual camera comprises:

rendering, by the at least one processor based on the spatial virtual environment, a plurality of images for the instance from the perspective represented by the virtual camera, each image of the plurality of images for the instance representing a respective moment in time.

16 . The method of claim 15 , wherein for each instance in the first plurality of instances, simulating, by the at least one processor in the spatial virtual environment, the first virtual vehicle at the first position and the virtual camera at the second position comprises:

simulating, by the at least one processor in the spatial virtual environment, movement of the first virtual vehicle and movement of the virtual camera over each respective moment in time represented by the plurality of images for the instance.

17 . The method of claim 1 , wherein for each instance in the first plurality of instances, the first position of the first virtual vehicle indicates a longitudinal position and lateral position of the first virtual vehicle.

18 . The method of claim 1 , wherein for each instance in the first plurality of instances, the second position of the virtual camera indicates a longitudinal position and a lateral position of the virtual camera within a road lane and a height of the virtual camera.

19 . A method for creating training data for training an artificial intelligence to predict a distance between two vehicles, the method comprising:

for each instance in a first plurality of instances:

accessing respective parameter data, the respective parameter data indicating at least a first position of a first vehicle and a second position of a virtual camera, the first position and the second position specific to the instance, the virtual camera representing a perspective from a second vehicle positioned behind the first vehicle, facing towards the first vehicle;

simulating, by at least one processor in a virtual environment, the first vehicle at the first position and the virtual camera at the second position;

rendering, by the at least one processor in the virtual environment, at least one image for the instance from the perspective represented by the virtual camera; and

outputting the at least one image for the instance, associated with a label indicative of a distance between the first vehicle and the second vehicle;

storing, by at least one non-transitory processor-readable storage medium, a first plurality of images including each at least one image output for each instance of the plurality of instances associated with the respective label indicating distance between the first vehicle and the second vehicle for the respective instance;

for each instance in a second plurality of instances:

accessing respective parameter data, the respective parameter data indicating at least a third position of a virtual camera representing a perspective from a third vehicle;

simulating, by the at least one processor in the virtual environment, the virtual camera at the third position;

rendering, by the at least one processor in the virtual environment, at least one image for the instance from a perspective represented by the virtual camera at the third position; and

outputting the at least one image for the instance, associated with a label indicative of a distance between two vehicles which is a null value; and

storing, by the at least one non-transitory processor-readable storage medium, a second plurality of images including each at least one image output for each instance of the second plurality of instances associated with the respective label indicating a distance between two vehicles which is a null value.

20 . A method for creating training data for training an artificial intelligence to predict a distance between two vehicles, the method comprising:

for each instance in a first plurality of instances:

accessing respective parameter data, the respective parameter data indicating at least a first position of a first vehicle and a second position of a virtual camera, the first position and the second position specific to the instance, the virtual camera representing a perspective from a second vehicle positioned behind the first vehicle, facing towards the first vehicle;

simulating, by at least one processor in a virtual environment, the first vehicle at the first position and the virtual camera at the second position;

rendering, by the at least one processor in the virtual environment, at least one image for the instance from the perspective represented by the virtual camera; and

outputting the at least one image for the instance, associated with a label indicative of a distance between the first vehicle and the second vehicle; and

storing, by at least one non-transitory processor-readable storage medium, a first plurality of images including each at least one image output for each instance of the plurality of instances associated with the respective label indicating distance between the first vehicle and the second vehicle for the respective instance;

wherein for each instance in the first plurality of instances, accessing the respective parameter data comprises autonomously generating, by the at least one processor, the respective parameter data; and

wherein for each instance in the first plurality of instances, autonomously generating the respective parameter data comprises: autonomously determining random values for the first position and the second position, within a defined distance threshold.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 12, 2023
From: SIDDIQUE, JAVED; SIDDIQUE, MOHAMMED SOHAIL
To: GEOTAB INC.
Reel/Frame 064226/0729 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2023
From: MAZUMDER, JOY; SAURAV, SHASHANK
To: GEOTAB INC.
Reel/Frame 063304/0936 →
Continuity (2)
Provisional Application 63456179 · Mar 31, 2023
Related Publication 20240331398A1 · Oct 3, 2024
References Cited (115)
US 6950788B2 · Faghri · 2005 [cited by applicant]
US 7505841B2 · Sun et al. · 2009 [cited by applicant]
US 7676087B2 · Dhua et al. · 2010 [cited by applicant]
US 9405970B2 · Israel et al. · 2016 [cited by applicant]
US 9489635B1 · Zhu · 2016 [cited by applicant]
US 10395540B2 · Surpi et al. · 2019 [cited by applicant]
US 10431089B1 · Nguyen · 2019 [cited by applicant]
US 10496891B2 · Sai · 2019 [cited by applicant]
US 10728420B2 · Popa · 2020 [cited by applicant]
US 10766489B2 · Tuncali et al. · 2020 [cited by applicant]
US 10818109B2 · Palmer et al. · 2020 [cited by applicant]
US 10997434B2 · Kurian et al. · 2021 [cited by applicant]
US 11017244B2 · Xue · 2021 [cited by applicant]
US 11138751B2 · Guizilini et al. · 2021 [cited by applicant]
US 11257272B2 · Rowell et al. · 2022 [cited by applicant]
US 11336867B2 · Meier et al. · 2022 [cited by applicant]
US 11373411B1 · Goh · 2022 [cited by applicant]
US 11390276B2 · Yamada et al. · 2022 [cited by applicant]
US 11521009B2 · Peake et al. · 2022 [cited by applicant]
US 11544935B2 · Chen · 2023 [cited by applicant]
US 11615628B2 · Tsurumi · 2023 [cited by applicant]
US 11643102B1 · Calmer et al. · 2023 [cited by applicant]
US 11683579B1 · Symons et al. · 2023 [cited by applicant]
US 11704910B2 · Endo et al. · 2023 [cited by applicant]
US 11758096B2 · Shah et al. · 2023 [cited by applicant]
US 11866055B1 · Srinivasan et al. · 2024 [cited by applicant]
US 11989001B1 · Eihattab et al. · 2024 [cited by applicant]
US 11989949B1 · Mazumder et al. · 2024 [cited by applicant]
US 11995546B1 · Srinivasan et al. · 2024 [cited by applicant]
US 12125222B1 · Ivascu et al. · 2024 [cited by applicant]
US 12330821B2 · Xu et al. · 2025 [cited by applicant]
US 12423864B2 · Mazumder et al. · 2025 [cited by applicant]
US 12586230B2 · Siddique et al. · 2026 [cited by applicant]
US 20050090983A1 · Isaji et al. · 2005 [cited by applicant]
US 20050125121A1 · Isaji et al. · 2005 [cited by applicant]
US 20050259033A1 · Levine · 2005 [cited by applicant]
US 20060273922A1 · Bhogal et al. · 2006 [cited by applicant]
US 20100110176A1 · Aoyama · 2010 [cited by applicant]
US 20120119894A1 · Pandy · 2012 [cited by applicant]
US 20120239268A1 · Chen et al. · 2012 [cited by applicant]
US 20130057397A1 · Cutler et al. · 2013 [cited by applicant]
US 20130107051A1 · Maruoka et al. · 2013 [cited by applicant]
US 20140195093A1 · Litkouhi et al. · 2014 [cited by applicant]
US 20140222280A1 · Salomonsson et al. · 2014 [cited by applicant]
US 20160019791A1 · Lin · 2016 [cited by applicant]
US 20160167514A1 · Nishizaki et al. · 2016 [cited by applicant]
US 20160170487A1 · Saisho · 2016 [cited by applicant]
US 20160280132A1 · Palanimuthu · 2016 [cited by applicant]
US 20160343145A1 · Israel et al. · 2016 [cited by applicant]
US 20170261747A1 · Acklin · 2017 [cited by applicant]
US 20170305419A1 · Liebinger Portela et al. · 2017 [cited by applicant]
US 20170326981A1 · Masui et al. · 2017 [cited by applicant]
US 20170327037A1 · Prakah-Asante et al. · 2017 [cited by applicant]
US 20170369055A1 · Saigusa et al. · 2017 [cited by applicant]
US 20180001899A1 · Shenoy et al. · 2018 [cited by applicant]
US 20190001977A1 · Lin et al. · 2019 [cited by applicant]
US 20190232961A1 · Baier et al. · 2019 [cited by applicant]
US 20190256105A1 · Parat et al. · 2019 [cited by applicant]
US 20190389487A1 · Gowda et al. · 2019 [cited by applicant]
US 20200020121A1 · Rawashdeh · 2020 [cited by applicant]
US 20200238991A1 · Aragon et al. · 2020 [cited by applicant]
US 20200342760A1 · Vassilovski et al. · 2020 [cited by applicant]
US 20210224560A1 · Kim et al. · 2021 [cited by applicant]
US 20210356696A1 · Kamada et al. · 2021 [cited by applicant]
US 20210365696A1 · He et al. · 2021 [cited by applicant]
US 20210366144A1 · Magistri et al. · 2021 [cited by applicant]
US 20210370969A1 · Hegde et al. · 2021 [cited by applicant]
US 20220009488A1 · Li · 2022 [cited by applicant]
US 20220161798A1 · Kienitz et al. · 2022 [cited by applicant]
US 20220172396A1 · Okuma · 2022 [cited by applicant]
US 20220244142A1 · Breton · 2022 [cited by applicant]
US 20220245955A1 · Freeman et al. · 2022 [cited by applicant]
US 20220284623A1 · Kumar et al. · 2022 [cited by applicant]
US 20220371534A1 · Zheng · 2022 [cited by applicant]
US 20220379889A1 · Akella et al. · 2022 [cited by applicant]
US 20230038842A1 · Yu et al. · 2023 [cited by applicant]
US 20230077207A1 · Hassan et al. · 2023 [cited by applicant]
US 20230102113A1 · Magistri · 2023 [cited by applicant]
US 20230159031A1 · Hu et al. · 2023 [cited by applicant]
US 20230169793A1 · Ogino · 2023 [cited by applicant]
US 20230206466A1 · Todoran et al. · 2023 [cited by applicant]
US 20230227058A1 · Julian et al. · 2023 [cited by applicant]
US 20230273033A1 · Kim et al. · 2023 [cited by applicant]
US 20230286498A1 · Oguri et al. · 2023 [cited by applicant]
US 20230290002A1 · Yang et al. · 2023 [cited by applicant]
US 20230382380A1 · Herrero Zarzosa · 2023 [cited by applicant]
US 20230394843A1 · Lee et al. · 2023 [cited by applicant]
US 20240005675A1 · Lelowicz et al. · 2024 [cited by applicant]
US 20240059291A1 · Saylor et al. · 2024 [cited by applicant]
US 20240174218A1 · Kuepfer · 2024 [cited by applicant]
US 20240312343A1 · Ali et al. · 2024 [cited by applicant]
US 20240331399A1 · Mazumder et al. · 2024 [cited by applicant]
US 20250191190A1 · Ivascu · 2025 [cited by applicant]
CA 3008091A1 · 2018 [cited by applicant]
CN 110745140B · 2021 [cited by applicant]
CN 113421298A · 2021 [cited by applicant]
CN 113591518A · 2021 [cited by applicant]
CN 115035251A · 2022 [cited by applicant]
DE 102022208020 · 2023 [cited by examiner]
EP 3855409 · 2021 [cited by examiner]
EP 3855409A1 · 2021 [cited by applicant]
JP H04205825 · 1992 [cited by examiner]
JP 4205825B2 · 2009 [cited by applicant]
KR 20120021445A · 2012 [cited by applicant]
KR 201200221445 · 2017 [cited by examiner]
KR 20220119396A · 2022 [cited by applicant]
WO 2015134376A1 · 2015 [cited by applicant]
WO 2021253245A1 · 2021 [cited by applicant]
Meftah et al., “A Virtual Simulation Environment Using Deep Learning for Autonomous Vehicles Obstacle Avoidance,” 2020 IEEE International Conference on Intelligence and Security Informatics (ISI), 2020, 7 Pages. [cited by applicant]
Tram et al (“Vehicle to Vehicle Distance Estimation Using Camera based Visible Light Communications”, IEEE 2017, pp. 517-519) (Year: 2017). [cited by applicant]
Extended European Search Report for European Application No. 24165655.2, mailed Aug. 27, 2024, 134 pages. [cited by applicant]
Extended European Search Report for European Application No. 24165653.7, mailed Sep. 12, 2024, 8 pages. [cited by applicant]
Cao, et al. “A geometry-driven car-following distance estimation algorithm robust to road slopes,” Transportation Research Part C: Emerging Technologies, vol. 102, 2019, pp. 274-288, Issn 0968-090X, (https://www. scienc… [cited by applicant]
J. W. Ro, P. S. Roop and A. Malik, “A New Safety Distance Calculation for Rear-End Collision Avoidance,” in IEEE Transactions on Intelligent Transportation Systems, vol. 22, No. 3, pp. 1742-1747, Mar. 2021, doi: 10.1109… [cited by applicant]
L.-C. Liu, C-Y. Fang and S.-W. Chen, “A Novel Distance Estimation Method Leading a Forward Collision Avoidance Assist System for Vehicles on Highways,” in IEEE Transactions on Intelligent Transportation Systems, vol. 18… [cited by applicant]