IP Library Granted Patent US 10,198,641
Granted Patent B2
US 10,198,641 · App. 15/379,757 · Granted Feb 5, 2019

3D position estimation of objects from a monocular camera using a set of known 3D points on an underlying surface

Inventors: Wan-Yen Lo (Mountain View, CA); David I. Ferguson (Mountain View, CA)
Assignee: Waymo LLC
G06K9/00798B60R1/00B60R11/04B60W30/00G01C21/005G05D1/0088G05D1/0238G05D1/0246G05D1/0274G06K9/6267G06T7/50G06T7/70G06T15/20G06T15/205G06T17/10B60R2300/301B60R2300/8093G06T2207/30256
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 10,198,641
App. No.
15/379,757
Granted
Feb 5, 2019
Kind
B2
Abstract

Disclosed herein are methods and systems for determining a location of an object within an environment. An example method may include determining a three-dimensional (3D) location of a plurality of reference points in an environment, receiving a two-dimensional (2D) image of a portion of the environment that contains an object, selecting certain reference points from the plurality of reference points that form a polygon when projected into the 2D image that contains at least a portion of the object, determining an intersection point of a ray directed toward the object and a 3D polygon formed by the selected reference points, and based on the intersection point of the ray directed toward the object and the 3D polygon formed by the selected reference points, determining a 3D location of the object in the environment.

Claims (51)

1. A computer-implemented method, comprising:

receiving a two-dimensional (2D) image of a portion of the environment from a camera on an autonomous vehicle, wherein the image contains an object;

retrieving previously stored three-dimensional (3D) locations of a plurality of reference points of the environment, wherein the 3D locations of the plurality of reference points that were previously stored comprises a road in the environment;

projecting the plurality of reference points into the 2D image based on the previously stored 3D locations of the plurality of reference points and a location of the camera on the autonomous vehicle;

selecting reference points from the plurality of projected reference points such that the selected reference points form a polygon that surrounds the object in the 2D image;

determining an intersection point of a ray directed toward the object and a 3D polygon formed by the previously stored 3D locations of the selected reference points;

determining a location of the object in the environment based on the determined intersection point, wherein the object is a portion of a different vehicle, wherein the method further comprises determining a location of the different vehicle based on the location of the object in the environment; and

providing instructions to control the autonomous vehicle based on the determined location of the object in the environment.

2. The method of claim 1 , wherein selecting the reference points comprises selecting three reference points that form a triangle that surrounds the object in the 2D image.

3. The method of claim 2 , wherein determining the intersection point of the ray directed toward the object and the 3D polygon formed by the previously stored 3D locations of the selected reference points comprises:

determining a plane that contains the previously stored 3D locations of the three selected reference points; and

determining the intersection point based on a single ray-plane intersection between the ray directed toward the object and the plane that contains the previously stored 3D locations of the three selected reference points.

4. The method of claim 1 , wherein the ray directed toward the object comprises a ray directed toward a center pixel of the object.

5. The method of claim 1 , wherein the portion of the different vehicle comprises a tire of the different vehicle.

6. The method of claim 1 , further comprising:

retrieving previously stored 3D locations of one or more continuous curves in the environment; and

determining the 3D locations of the plurality of reference points by sampling the one or more continuous curves at one or more intervals.

7. The method of claim 6 , wherein the one or more continuous curves comprise a first lane boundary and a second lane boundary of a road within the environment, and wherein selecting the reference points comprises selecting at least one reference point on the first lane boundary and at least one reference point on the second lane boundary.

8. The method of claim 7 , wherein selecting the reference points comprises selecting two reference points on the first lane boundary and one reference point on the second lane boundary to form a triangle that surrounds the object in the 2D image.

9. The method of claim 1 , wherein selecting the reference points comprises sequentially considering individual reference points of the plurality based on distance to the object within the 2D image.

10. A vehicle, comprising:

a camera configured to capture a two-dimensional (2D) image of a portion of an environment, wherein the image contains an object; and

a computing system configured to:

retrieve previously stored three-dimensional (3D) locations of a plurality of reference points of the environment, wherein the 3D locations of the plurality of reference points that were previously stored comprises a road in the environment;

project the plurality of reference points into the 2D image based on the previously stored 3D locations of the plurality of reference points and a location of the camera on the vehicle;

select reference points from the plurality of projected reference points such that the selected reference points form a polygon that surrounds the object in the 2D image;

determine an intersection point of a ray directed toward the object and a 3D polygon formed by the previously stored 3D locations of the selected reference points;

determine a location of the object in the environment based on the determined intersection point, wherein the object is a portion of a different vehicle, wherein the computing system is further configured to determine a location of the different vehicle based on the location of the object in the environment; and

provide instructions to control the vehicle based on the determined location of the object in the environment.

11. The vehicle of claim 10 , wherein the control system is configured to select the reference points by selecting three reference points that form a triangle that surrounds the object in the 2D image.

12. The vehicle of claim 11 , wherein the control system is configured to determine the intersection point of the ray directed toward the object and the 3D polygon formed by the previously stored 3D locations of the selected reference points by:

determining a plane that contains the previously stored 3D locations of the three selected reference points; and

determining the intersection point based on a single ray-plane intersection between the ray directed toward the object and the plane that contains the previously stored 3D locations of the three selected reference points.

13. The vehicle of claim 10 , wherein the computing system is further configured to:

retrieve previously stored 3D locations of one or more continuous curves in the environment; and

determine the 3D locations of the plurality of reference points by sampling the one or more continuous curves at one or more intervals.

14. The vehicle of claim 10 , wherein the portion of the different vehicle comprises a tire of the different vehicle.

15. A non-transitory computer readable medium having stored therein instructions, that when executed by a computing system, cause the computing system to perform functions comprising:

receiving a two-dimensional (2D) image of a portion of the environment from a camera on an autonomous vehicle, wherein the image contains an object;

retrieving previously stored three-dimensional (3D) locations of a plurality of reference points of the environment, wherein the 3D locations of the plurality of reference points that were previously stored comprises a road in the environment;

projecting the plurality of reference points into the 2D image based on the previously stored 3D locations of the plurality of reference points and a location of the camera on the autonomous vehicle;

selecting reference points from the plurality of projected reference points such that the selected reference points form a polygon that surrounds the object in the 2D image;

determining an intersection point of a ray directed toward the object and a 3D polygon formed by the previously stored 3D locations of the selected reference points;

determining a location of the object in the environment based on the determined intersection point, wherein the object is a portion of a different vehicle, wherein the computing system is further configured to determine a location of the different vehicle based on the location of the object in the environment; and

providing instructions to control the autonomous vehicle based on the determined location of the object in the environment.

16. The non-transitory computer readable medium of claim 15 , wherein selecting the reference points comprises selecting three reference points that form a triangle that surrounds the object in the 2D image.

17. The non-transitory computer readable medium of claim 16 , wherein determining the intersection point of the ray directed toward the object and the 3D polygon formed by the previously stored 3D locations of the selected reference points comprises:

determining a plane that contains the previously stored 3D locations of the three selected reference points; and

determining the intersection point based on a single ray-plane intersection between the ray directed toward the object and the plane that contains the previously stored 3D locations of the three selected reference points.

18. The non-transitory computer readable medium of claim 15 , wherein the ray directed toward the object comprises a ray directed toward a center pixel of the object.

19. The non-transitory computer readable medium of claim 15 , wherein the portion of the different vehicle comprises a tire of the different vehicle.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2017
From: GOOGLE INC.
To: WAYMO HOLDING INC.
Reel/Frame 042084/0741 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2017
From: WAYMO HOLDING INC.
To: WAYMO LLC
Reel/Frame 042085/0001 →
Continuity (2)
Continuation 13952853 · Jul 29, 2013
Related Publication 20170098129A1 · Apr 6, 2017