IP Library Granted Patent US 11,948,310
Granted Patent B2
US 11,948,310 · App. 17/489,237 · Granted Apr 2, 2024

Systems and methods for jointly training a machine-learning-based monocular optical flow, depth, and scene flow estimator

Inventors: Vitor Guizilini (Santa Clara, CA); Rares A. Ambrus (San Francisco, CA); Kuan-Hui Lee (San Jose, CA); Adrien David Gaidon (Mountain View, CA)
Assignee: Toyota Research Institute, Inc.
G06T7/248G05D1/0221G05D1/0246G06N3/045G06N3/08G06T7/50G06T7/55G06T7/73G06T2207/10024G06T2207/20081G06T2207/20084
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,948,310
App. No.
17/489,237
Granted
Apr 2, 2024
Kind
B2
Abstract

Systems and methods described herein relate to jointly training a machine-learning-based monocular optical flow, depth, and scene flow estimator. One embodiment processes a pair of temporally adjacent monocular image frames using a first neural network structure to produce a first optical flow estimate; processes the pair of temporally adjacent monocular image frames using a second neural network structure to produce an estimated depth map and an estimated scene flow; processes the estimated depth map and the estimated scene flow using the second neural network structure to produce a second optical flow estimate; and imposes a consistency loss between the first optical flow estimate and the second optical flow estimate that minimizes a difference between the first optical flow estimate and the second optical flow estimate to improve performance of the first neural network structure in estimating optical flow and the second neural network structure in estimating depth and scene flow.

Claims (53)

1. A system for jointly training a machine-learning-based monocular optical flow, depth, and scene flow estimator, the system comprising:

one or more processors; and

a memory communicably coupled to the one or more processors and storing:

an optical flow estimation module including instructions that when executed by the one or more processors cause the one or more processors to process a pair of temporally adjacent monocular image frames using a first neural network structure to produce a first optical flow estimate;

a depth and scene flow estimation module including instructions that when executed by the one or more processors cause the one or more processors to:

process the pair of temporally adjacent monocular image frames using a second neural network structure to produce an estimated depth map and an estimated scene flow; and

process the estimated depth map and the estimated scene flow using the second neural network structure to produce a second optical flow estimate; and

a training module including instructions that when executed by the one or more processors cause the one or more processors to impose a consistency loss between the first optical flow estimate and the second optical flow estimate that minimizes a difference between the first optical flow estimate and the second optical flow estimate to improve performance of the first neural network structure in estimating optical flow and the second neural network structure in estimating depth and scene flow.

2. The system of claim 1 , wherein the instructions in the optical flow estimation module to process the pair of temporally adjacent monocular image frames using the first neural network structure to produce the first optical flow estimate include instructions that when executed by the one or more processors cause the one or more processors to:

extract a set of encoded image features from the pair of temporally adjacent monocular image frames using a Red-Green-Blue (RGB) encoder;

process the set of encoded image features using a correlation layer to generate a correlation volume;

extract a set of encoded image context features from at least one image frame in the pair of temporally adjacent monocular image frames using a RGB context encoder; and

refine iteratively an initial estimate of optical flow based, at least in part, on the set of encoded image context features using a Gated-Recurrent-Units-based update operator and the correlation volume.

3. The system of claim 1 , wherein the instructions in the depth and scene flow estimation module to process the pair of temporally adjacent monocular image frames using the second neural network structure to produce the estimated depth map and the estimated scene flow include instructions that when executed by the one or more processors cause the one or more processors to:

extract a set of encoded image context features from at least one image frame in the pair of temporally adjacent monocular image frames using a Red-Green-Blue (RGB) context encoder; and

refine iteratively an initial estimate of depth and an initial estimate of scene flow based, at least in part, on the set of encoded image context features using a Gated-Recurrent-Units-based update operator.

4. The system of claim 1 , wherein the instructions in the depth and scene flow estimation module to process the estimated depth map and the estimated scene flow to produce the second optical flow estimate include instructions that when executed by the one or more processors cause the one or more processors to project the estimated depth map and the estimated scene flow from three-dimensional (3D) space to two-dimensional (2D) space.

5. The system of claim 1 , wherein the pair of temporally adjacent monocular image frames are one of synthetic images generated by a computing device and real-world images produced by a camera.

6. The system of claim 1 , further comprising a communication module including instructions that when executed by the one or more processors cause the one or more processors to transmit a first set of weights corresponding to the first neural network structure after training and a second set of weights corresponding to the second neural network structure after training to a robot whose operation is controlled, at least in part, based on one or more of estimated optical flow, estimated depth, and estimated scene flow produced at the robot using at least one of the first set of weights and the second set of weights.

7. The system of claim 6 , wherein the robot is one of an autonomous vehicle, a search and rescue robot, a delivery robot, an aerial drone, and an indoor robot.

8. A non-transitory computer-readable medium for jointly training a machine-learning-based monocular optical flow, depth, and scene flow estimator and storing instructions that when executed by one or more processors cause the one or more processors to:

process a pair of temporally adjacent monocular image frames using a first neural network structure to produce a first optical flow estimate;

process the pair of temporally adjacent monocular image frames using a second neural network structure to produce an estimated depth map and an estimated scene flow;

process the estimated depth map and the estimated scene flow using the second neural network structure to produce a second optical flow estimate; and

impose a consistency loss between the first optical flow estimate and the second optical flow estimate that minimizes a difference between the first optical flow estimate and the second optical flow estimate to improve performance of the first neural network structure in estimating optical flow and the second neural network structure in estimating depth and scene flow.

9. The non-transitory computer-readable medium of claim 8 , wherein the instructions to process the pair of temporally adjacent monocular image frames using the first neural network structure to produce the first optical flow estimate include instructions to:

extract a set of encoded image features from the pair of temporally adjacent monocular image frames using a Red-Green-Blue (RGB) encoder;

process the set of encoded image features using a correlation layer to generate a correlation volume;

extract a set of encoded image context features from at least one image frame in the pair of temporally adjacent monocular image frames using a RGB context encoder; and

refine iteratively an initial estimate of optical flow based, at least in part, on the set of encoded image context features using a Gated-Recurrent-Units-based update operator and the correlation volume.

10. The non-transitory computer-readable medium of claim 8 , wherein the instructions to process the pair of temporally adjacent monocular image frames using the second neural network structure to produce the estimated depth map and the estimated scene flow include instructions to:

extract a set of encoded image context features from at least one image frame in the pair of temporally adjacent monocular image frames using a Red-Green-Blue (RGB) context encoder; and

refine iteratively an initial estimate of depth and an initial estimate of scene flow based, at least in part, on the set of encoded image context features using a Gated-Recurrent-Units-based update operator.

11. The non-transitory computer-readable medium of claim 8 , wherein the instructions to process the estimated depth map and the estimated scene flow to produce the second optical flow estimate include instructions to project the estimated depth map and the estimated scene flow from three-dimensional (3D) space to two-dimensional (2D) space.

12. The non-transitory computer-readable medium of claim 8 , wherein the instructions include further instructions that when executed by one or more processors cause the one or more processors to transmit a first set of weights corresponding to the first neural network structure after training and a second set of weights corresponding to the second neural network structure after training to a robot whose operation is controlled, at least in part, based on one or more of estimated optical flow, estimated depth, and estimated scene flow produced at the robot using at least one of the first set of weights and the second set of weights.

13. The non-transitory computer-readable medium of claim 12 , wherein the robot is one of an autonomous vehicle, a search and rescue robot, a delivery robot, an aerial drone, and an indoor robot.

14. A method of jointly training a machine-learning-based monocular optical flow, depth, and scene flow estimator, the method comprising:

processing a pair of temporally adjacent monocular image frames using a first neural network structure to produce a first optical flow estimate;

processing the pair of temporally adjacent monocular image frames using a second neural network structure to produce an estimated depth map and an estimated scene flow;

processing the estimated depth map and the estimated scene flow using the second neural network structure to produce a second optical flow estimate; and

imposing a consistency loss between the first optical flow estimate and the second optical flow estimate that minimizes a difference between the first optical flow estimate and the second optical flow estimate to improve performance of the first neural network structure in estimating optical flow and the second neural network structure in estimating depth and scene flow.

15. The method of claim 14 , wherein the processing the pair of temporally adjacent monocular image frames using the first neural network structure to produce the first optical flow estimate includes:

extracting a set of encoded image features from the pair of temporally adjacent monocular image frames using a Red-Green-Blue (RGB) encoder;

processing the set of encoded image features using a correlation layer to generate a correlation volume;

extracting a set of encoded image context features from at least one image frame in the pair of temporally adjacent monocular image frames using a RGB context encoder; and

refining iteratively an initial estimate of optical flow based, at least in part, on the set of encoded image context features using a Gated-Recurrent-Units-based update operator and the correlation volume.

16. The method of claim 14 , wherein the processing the pair of temporally adjacent monocular image frames using the second neural network structure to produce the estimated depth map and the estimated scene flow includes:

extracting a set of encoded image context features from at least one image frame in the pair of temporally adjacent monocular image frames using a Red-Green-Blue (RGB) context encoder; and

refining iteratively an initial estimate of depth and an initial estimate of scene flow based, at least in part, on the set of encoded image context features using a Gated-Recurrent-Units-based update operator.

17. The method of claim 14 , wherein processing the estimated depth map and the estimated scene flow to produce the second optical flow estimate incudes projecting the estimated depth map and the estimated scene flow from three-dimensional (3D) space to two-dimensional (2D) space.

18. The method of claim 14 , wherein the pair of temporally adjacent monocular image frames are one of synthetic images generated by a computing device and real-world images produced by a camera.

19. The method of claim 14 , further comprising transmitting a first set of weights corresponding to the first neural network structure after training and a second set of weights corresponding to the second neural network structure after training to a robot whose operation is controlled, at least in part, based on one or more of estimated optical flow, estimated depth, and estimated scene flow produced at the robot using at least one of the first set of weights and the second set of weights.

20. The method of claim 19 , wherein the robot is one of an autonomous vehicle, a search and rescue robot, a delivery robot, an aerial drone, and an indoor robot.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 23, 2024
From: TOYOTA RESEARCH INSTITUTE, INC.
To: TOYOTA JIDOSHA KABUSHIKI KAISHA
Reel/Frame 067193/0901 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 8, 2021
From: GUIZILINI, VITOR; AMBRUS, RARES A.; LEE, KUAN-HUI; GAIDON, ADRIEN DAVID
To: TOYOTA RESEARCH INSTITUTE, INC.
Reel/Frame 057851/0651 →
Continuity (2)
Provisional Application 63195796 · Jun 2, 2021
Related Publication 20220392083A1 · Dec 8, 2022
Cited By (2)
US 12,243,243 US 12,243,260