IP Library Granted Patent US 11,989,847
Granted Patent B2
US 11,989,847 · App. 17/668,577 · Granted May 21, 2024

Photorealistic image simulation with geometry-aware composition

Inventors: Frieda Rong (Toronto, CA); Yun Chen (Toronto, CA); Shivam Duggal (Toronto, CA); Shenlong Wang (Toronto, CA); Xinchen Yan (San Mateo, CA); Sivabalan Manivasagam (Toronto, CA); Ersin Yumer (Burlingame, CA); Raquel Urtasun (Toronto, CA)
Assignee: UATC, LLC
G06T19/20G01B11/22G01S17/89G01S17/931G06N3/04G06N3/08G06T3/0093G06T7/521G06T15/20G06T17/10G06T19/006G06T2207/10028G06T2207/20084G06T2207/30252G06T2210/12G06T2210/21G06T2219/2004
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,989,847
App. No.
17/668,577
Granted
May 21, 2024
Kind
B2
Abstract

The present disclosure provides systems and methods for generating photorealistic image simulation data with geometry-aware composition for testing autonomous vehicles. In particular, aspects of the present disclosure can involve the intake of data on an environment and output of augmented data on the environment with the photorealistic addition of an object. As one example, data on the driving experiences of a self-driving vehicle can be augmented to add another vehicle into the collected environment data. The augmented data may then be used to test safety features of software for a self-driving vehicle.

Claims (46)

1. A computer-implemented method, comprising:

obtaining one or more real world images collected by one or more real world sensors of a first vehicle during operation of the first vehicle, wherein the one or more real world images depict an environment at which the first vehicle is located;

generating a depth map of the environment that describes respective depths of objects of the environment;

identifying one or more first objects of the objects of the environment, based at least in part on the depth map, that would occlude a simulated object at an insertion location within the environment;

augmenting at least one of the one or more real world images of the environment to generate an initial augmented image that depicts the simulated object at the insertion location and occluded by the one or more first objects of the environment;

refining the initial augmented image with a machine-learned refinement model to generate a refined augmented image, wherein the machine-learned refinement model processes the initial augmented image to add one or more of texture correction, color correction, or contrast correction to a border between the at least one of the one or more real world images and the simulated object;

generating simulation data based at least in part on the refined augmented image that depicts the simulated object, wherein the simulated object is generated in the refined augmented image at least in part by selecting an object and a source texture to represent the simulated object from an object bank based on a point of view and distance relative to the simulated object from the first vehicle; and

executing, based on the simulation data, a simulation for autonomous vehicle software;

wherein the simulation data comprises road data to test performance features for the autonomous vehicle software during the simulation.

2. The computer-implemented method of claim 1 , wherein the simulation data comprises video simulation data across multiple camera sensors.

3. The computer-implemented method of claim 2 , wherein the simulation data comprises synthetic labeled data for three-dimensional detection.

4. The computer-implemented method of claim 1 , wherein the objects of the environment comprise one or more moving or non-moving objects in the environment.

5. The computer-implemented method of claim 1 , wherein the identifying the one or more first objects is further based at least in part on a comparison of the respective depths of the objects of the environment to a rendered depth associated with the simulated object at the insertion location.

6. The computer-implemented method of claim 1 , further comprising rendering one or more occlusion masks for the objects of the environment by evaluating depths of the environment and depths of the simulated object on a per pixel basis, wherein the one or more occlusion masks are used to generate the initial augmented image.

7. The computer-implemented method of claim 1 , further comprising:

comparing the respective depths of the objects of the environment to a rendered depth associated with the simulated object at the insertion location within the environment to identify one or more second objects of the environment that the simulated object would occlude at the insertion location; and

wherein the initial augmented image depicts the simulated object at the insertion location, the simulated object occluding the one or more second objects of the environment.

8. A computing system for generation of synthetic imagery, the computing system comprising:

one or more processors; and

one or more non-transitory computer-readable media that store instructions for execution by the one or more processors that cause the computing system to perform operations, the operations comprising:

obtaining environment data descriptive of an environment of a vehicle, wherein the environment data comprises one or more images of the environment;

generating a depth map of the environment that describes respective depths of objects of the environment;

identifying one or more first objects of the objects of the environment, based at least in part on the depth map, that would occlude a simulated object at an insertion location within the environment;

augmenting at least one of the one or more images of the environment to generate an initial augmented image that depicts the simulated object at the insertion location and occluded by the one or more first objects of the environment;

refining the initial augmented image with a machine-learned refinement model to generate a refined augmented image, wherein the machine-learned refinement model processes the initial augmented image to add one or more of texture correction, color correction, or contrast correction to a border between the at least one of the one or more images and the simulated object;

generating simulation data based at least in part on the refined augmented image that depicts the simulated object, wherein the simulated object is generated in the refined augmented image at least in part by selecting an object and a source texture to represent the simulated object from an object bank based on a point of view and distance relative to the simulated object from the vehicle; and

executing, based on the simulation data, a simulation for autonomous vehicle software;

wherein the simulation data comprises road data to test performance features for the autonomous vehicle software during the simulation.

9. The computing system of claim 8 , the operations further comprising rendering one or more occlusion masks for the objects of the environment by evaluating depths of the environment and depths of the simulated object on a per pixel basis, wherein the one or more occlusion masks are used to generate the initial augmented image.

10. The computing system of claim 8 , wherein:

the one or more images comprise a Light Detection and Ranging (LiDAR) point cloud data; and

the operations comprise: projecting the LiDAR point cloud data onto the at least one of the one or more images; and interpolating LiDAR point cloud depths to obtain the depth map of the environment for the at least one of the one or more images.

11. One or more non-transitory computer-readable media that store instructions for execution by a computing system that cause the computing system to perform operations for generating synthetic imagery, the operations comprising:

obtaining one or more real world images collected by one or more real world sensors of a first vehicle during operation of the first vehicle, wherein the one or more real world images depict an environment at which the first vehicle is located;

determining an insertion location for a simulated vehicle within the environment;

identifying one or more first objects of the environment that would occlude the simulated vehicle at the insertion location;

augmenting at least one of the one or more real world images of the environment to generate an initial augmented image that depicts the simulated vehicle at the insertion location and occluded by the one or more first objects of the environment;

refining the initial augmented image with a machine-learned refinement model to generate a refined augmented image, wherein the machine-learned refinement model processes the initial augmented image to add one or more of texture correction, color correction; or contrast correction to a border between the at least one of the one or more real world images and the simulated vehicle;

generating simulation data based at least in part on the refined augmented image that depicts the simulated vehicle, wherein the simulated vehicle is generated in the refined augmented image at least in part by selecting an object and a source texture to represent the simulated vehicle from an object bank based on a point of view and distance relative to the simulated vehicle from the first vehicle; and

executing, based on the simulation data, a simulation for autonomous vehicle software;

wherein the simulation data comprises road data to test performance features for the autonomous vehicle software during the simulation.

12. The one or more non-transitory computer-readable media of claim 11 , wherein the identifying the one or more first objects is based at least in part on a comparison of respective depths of the first objects of the environment to a rendered depth associated with the simulated vehicle at the insertion location.

13. The one or more non-transitory computer-readable media of claim 11 , the operations further comprising rendering one or more occlusion masks for the first objects of the environment by evaluating depths of the environment and depths of the simulated vehicle on a per pixel basis, wherein the one or more occlusion masks are used to generate the initial augmented image.

14. The one or more non-transitory computer-readable media of claim 11 , wherein:

the one or more real world images comprise a Light Detection and Ranging (LiDAR) point cloud data; and

the operations comprise: projecting the LiDAR point cloud data onto the at least one of the one or more real world images; and interpolating LiDAR point cloud depths to obtain a depth map of the environment for the at least one of the one or more real world images.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 14, 2024
From: UATC, LLC
To: AURORA OPERATIONS, INC.
Reel/Frame 067733/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2023
From: RONG, FRIEDA; CHEN, YUN; DUGGAL, SHIVAM; YAN, XINCHEN; WANG, SHENLONG; MANIVASAGAM, SIVABALAN; YUMER, ERSIN
To: UBER TECHNOLOGIES, INC.
Reel/Frame 062268/0373 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2023
From: URTASUN, RAQUEL
To: UATC, LLC
Reel/Frame 062268/0432 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 4, 2023
From: UBER TECHNOLOGIES, INC.
To: UATC, LLC
Reel/Frame 062268/0444 →