IP Library Granted Patent US 10,551,485
Granted Patent B1
US 10,551,485 · App. 16/196,650 · Granted Feb 4, 2020

Fitting points to a surface

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,551,485
App. No.
16/196,650
Granted
Feb 4, 2020
Kind
B1
Abstract

A computer-implemented method of determining a relative velocity between a vehicle and an object. The method includes receiving sensor data generated by one or more sensors of the vehicle configured to sense an environment following a scan pattern. The method also includes obtaining, based on the sensor data, a point cloud frame. The point cloud frame comprises a plurality of points of depth data and a time at which the depth data was captured. Additionally, the method includes selecting two or more points of the scan pattern that overlap the object. The selected points are located on or near a two-dimensional surface corresponding to the object, and the depth data for two or more of the selected points are captured at different times. The method includes calculating the relative velocity between the vehicle and the object based on the depth data and capture times associated with the selected points.

Claims (85)

1. A computer-implemented method of determining a relative velocity between a vehicle and an object, the method comprising:

receiving sensor data generated by one or more sensors of the vehicle, wherein the one or more sensors are configured to sense an environment of the vehicle by following a scan pattern comprising component scan lines;

obtaining, based on the sensor data and by one or more processors, a point cloud frame representative of the environment, the point cloud frame comprising a plurality of points, each point comprising depth data associated with the point and a time at which the depth data was captured;

selecting, by the one or more processors, two or more points of the scan pattern that overlap the object, wherein:

the selected points are located on or near a two-dimensional surface corresponding to at least part of the object, and the depth data for two or more of the selected points are captured at different times; and

selecting the two or more points comprises:

identifying a region of the point cloud frame that corresponds to a location of the object in the point cloud frame; and

selecting the two or more points from within the identified region of the point cloud frame; and

calculating, by the one or more processors, the relative velocity between the vehicle and the object based at least in part on the depth data and capture times associated with the selected points.

2. The computer-implemented method of claim 1 , wherein calculating the relative velocity comprises:

approximating the two-dimensional surface of the object in a vicinity of the selected points with a two-dimensional plane; and

fitting the selected points to an equation of the two-dimensional plane moving in space with the relative velocity.

3. The computer-implemented method of claim 2 , wherein the two-dimensional plane is positioned in a particular fixed orientation when fitting the selected points to the equation of the two-dimensional plane.

4. The computer-implemented method of claim 2 , wherein:

the selected points comprise three or more points; and

calculating the relative velocity further comprises rotating the two-dimensional plane around a particular rotation axis of the two-dimensional plane when fitting the selected points to the equation.

5. The computer-implemented method of claim 2 , wherein:

the selected points comprise four or more points; and

calculating the relative velocity further comprises rotating the two-dimensional plane around two particular axes of rotation of the two-dimensional plane when fitting the selected points to the equation.

6. The computer-implemented method of claim 1 , wherein the relative velocity comprises a relative velocity along a particular axis of relative motion.

7. The computer-implemented method of claim 1 , wherein the selected points comprise three or more points, and the relative velocity comprises two components of relative velocity along two particular independent axes of relative motion.

8. The computer-implemented method of claim 1 , wherein the selected points comprise four or more points, and the relative velocity comprises three components of relative velocity along three particular independent axes of relative motion.

9. The computer-implemented method of claim 1 , wherein calculating the relative velocity comprises adjusting fitting parameters of an equation corresponding to the two-dimensional surface moving in space with the relative velocity until the selected points are substantially fit to the equation.

10. The computer-implemented method of claim 1 , wherein:

the selected points comprise a first point and a second point; and

the first and second points are part of a first scan line that traverses the environment in a first direction, and the first and second points are displaced from each other along the first direction.

11. The computer-implemented method of claim 1 , wherein:

the selected points comprise:

a first point and a second point which are part of a first scan line that traverses the environment in a first direction; and

a third point and a fourth point which are part of a second scan line that traverses the environment in a second direction opposite the first direction; and

the method further comprises:

calculating, by the one or more processors, a first relative velocity based on a difference between the depth data associated with the first and second points and a difference in time between when the depth data for the first and second points were captured; and

calculating, by the one or more processors, a second relative velocity based on a difference between the depth data associated with the third and fourth points and a difference in time between when the depth data for the third and fourth points were captured.

12. The computer-implemented method of claim 11 , further comprising:

comparing, by the one or more processors, a polarity of the first relative velocity and a polarity of the second relative velocity; and

identifying, by the one or more processors, that the two-dimensional surface is distorted based at least in part on the polarity of the first relative velocity not matching the polarity of the second relative velocity.

13. The computer-implemented method of claim 11 , further comprising:

comparing, by the one or more processors, a magnitude of the first relative velocity and a magnitude of the second relative velocity to determine that the magnitudes of the first and second relative velocities are approximately equal; and

associating, by the one or more processors, the first or second relative velocity with the relative velocity between the vehicle and the object.

14. The computer-implemented method of claim 11 , further comprising:

comparing, by the one or more processors, a magnitude of the first relative velocity and a magnitude of the second relative velocity to determine that the magnitudes of the first and second relative velocities are approximately equal; and

determining, by the one or more processors, a relative acceleration between the vehicle and the object.

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

determining that the calculated relative velocity exceeds a threshold velocity; and

in response to determining that the calculated relative velocity exceeds the threshold velocity, disregarding the calculated relative velocity.

16. A system within an autonomous vehicle, the system comprising:

a set of sensors configured to generate a set of sensor data by sensing an environment of the vehicle by following a scan pattern comprising component scan lines; and

a computing system configured to:

receive the set of sensor data;

obtain, based on the sensor data, a point cloud frame representative of the environment, the point cloud frame comprising a plurality of points, each point comprising depth data associated with the point and a time at which the depth data was captured by the set of sensors;

select two or more points of the scan pattern that overlap an object in the environment, wherein:

the selected points are located on or near a two-dimensional surface corresponding to at least part of the object, and the depth data for two or more of the selected points are captured at different times; and

selecting the two or more points comprises:

identifying a region of the point cloud frame that corresponds to a location of the object in the point cloud frame; and

selecting the two or more points from within the identified region of the point cloud frame; and

calculate a relative velocity between the autonomous vehicle and the object based at least in part on the depth data and capture times associated with the selected points.

17. The system of claim 16 , wherein:

the selected points comprise a first point and a second point; and

the relative velocity v between the vehicle and the object is calculated from an expression v=Δd/Δt, wherein Δd is a difference between the depth data associated with the first and second points and Δt is a difference in time between when the depth data was captured for the first and second points.

18. The system of claim 16 , wherein to calculate the relative velocity, the computing system is configured to:

approximate the two-dimensional surface of the object in a vicinity of the selected points with a two-dimensional plane; and

fit the selected points to an equation of the two-dimensional plane moving in space with the relative velocity.

19. The system of claim 18 , wherein:

the selected points comprise three or more points; and

to calculate the relative velocity, the computing system is configured to rotate the two-dimensional plane around a particular rotation axis of the two-dimensional plane when fitting the selected points to the equation.

20. The system of claim 18 , wherein:

the selected points comprise four or more points; and

to calculate the relative velocity, the computing system is configured to rotate the two-dimensional plane around two particular axes of rotation of the two-dimensional plane when fitting the selected points to the equation.

21. A computer-implemented method of determining a relative velocity between a vehicle and an object, the method comprising:

receiving sensor data generated by one or more sensors of the vehicle, wherein the one or more sensors are configured to sense an environment of the vehicle by following a scan pattern comprising component scan lines;

obtaining, based on the sensor data and by one or more processors, a point cloud frame representative of the environment, the point cloud frame comprising a plurality of points, each point comprising depth data associated with the point and a time at which the depth data was captured;

selecting, by the one or more processors, two or more points of the scan pattern that overlap the object, the selected two or more points comprising a first point and a second point, wherein:

the selected points are located on or near a two-dimensional surface corresponding to at least part of the object, and the depth data for two or more of the selected points are captured at different times; and

the first point is part of a first scan line that traverses the environment in a first direction, the second point is part of a second scan line that is substantially parallel to the first scan line, and the first and second points are displaced from each other along a direction substantially orthogonal to the first direction; and

calculating, by the one or more processors, the relative velocity between the vehicle and the object based at least in part on the depth data and capture times associated with the selected points, wherein the relative velocity v between the vehicle and the object is calculated from an expression v=Δd/Δt, wherein Δd is a difference between the depth data associated with the first and second points and Δt is a difference in time between when the depth data was captured for the first and second points.

22. A computer-implemented method of determining a relative velocity between a vehicle and an object, the method comprising:

receiving sensor data generated by one or more sensors of the vehicle, wherein the one or more sensors are configured to sense an environment of the vehicle by following a scan pattern comprising component scan lines;

obtaining, based on the sensor data and by one or more processors, a point cloud frame representative of the environment, the point cloud frame comprising a plurality of points, each point comprising depth data associated with the point and a time at which the depth data was captured;

selecting, by the one or more processors, two or more points of the scan pattern that overlap the object in a first region of the object, wherein the selected points are located on or near a two-dimensional surface corresponding to at least part of the object, and the depth data for two or more of the selected points are captured at different times;

calculating, by the one or more processors, a first relative velocity between the vehicle and the object based at least in part on the depth data and capture times associated with the selected points;

selecting, by the one or more processors, another two or more points of the scan pattern that overlap the object in a second region of the object different from the first region;

calculating, by the one or more processors, a second relative velocity between the vehicle and the object based at least in part on the depth data and capture times associated with the selected another points; and

comparing, by the one or more processors, the first relative velocity and the second relative velocity to determine that the object is rotating with respect to the vehicle.

23. The computer-implemented method of claim 22 , wherein the selected points comprise four or more points and the four or more points are selected from two different scan lines, wherein at least two points are selected from each scan line.

24. The computer-implemented method of claim 23 , wherein the two different scan lines are scanned in substantially opposite directions.

Assignments (13)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2026
From: LUMINAR TECHNOLOGIES, INC.
To: MICROVISION, INC.
Reel/Frame 075282/0141 →
RELEASE OF SECURITY INTEREST Recorded Feb 6, 2026
From: GLAS TRUST COMPANY LLC
To: LUMINAR TECHNOLOGIES, INC.
Reel/Frame 074733/0220 →
PARTIAL RELEASE OF SECURITY INTEREST IN PATENTS AND TRADEMARKS Recorded Feb 4, 2026
From: GLAS TRUST COMPANY LLC
To: LUMINAR TECHNOLOGIES, INC.; LUMINAR LLC
Reel/Frame 074944/0658 →
PARTIAL RELEASE OF SECURITY INTEREST IN PATENTS AND TRADEMARKS Recorded Feb 4, 2026
From: GLAS TRUST COMPANY LLC
To: LUMINAR TECHNOLOGIES, INC.; LUMINAR LLC
Reel/Frame 074944/0606 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE NAME OF THE FIRST CONVEYING PARTY PREVIOUSLY RECORDED AT REEL: 69312 FRAME: 713. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 27, 2024
From: LUMINAR TECHNOLOGIES, INC; LUMINAR , LLC; FREEDOM PHOTONICS LLC
To: GLAS TRUST COMPANY LLC
Reel/Frame 069990/0772 →
SECURITY INTEREST Recorded Nov 6, 2024
From: LUMINAR TECHNOLOGIES, INC; LUMINAR , LLC; FREEDOM PHOTONICS LLC
To: GLAS TRUST COMPANY LLC
Reel/Frame 069312/0669 →
SECURITY INTEREST Recorded Nov 6, 2024
From: LIMINAR TECHNOLOGIES, INC; LUMINAR, LLC; FREEDOM PHOTONICS LLC
To: GLAS TRUST COMPANY LLC
Reel/Frame 069312/0713 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 25, 2023
From: LUMINAR, LLC
To: LUMINAR TECHNOLOGIES, INC.
Reel/Frame 064371/0452 →
CHANGE OF NAME Recorded Jul 20, 2022
From: LUMINAR TECHNOLOGIES, INC.
To: LAZR, INC.
Reel/Frame 060755/0927 →
CHANGE OF NAME Recorded Jul 20, 2022
From: LUMINAR HOLDCO, LLC
To: LUMINAR, LLC
Reel/Frame 060755/0975 →
MERGER Recorded Jul 20, 2022
From: LAZR, INC.
To: LUMINAR HOLDCO, LLC
Reel/Frame 060560/0896 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2019
From: MAILA, TOMI P.
To: LUMINAR TECHNOLOGIES, INC.
Reel/Frame 049028/0583 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2019
From: MAHESHWARI, PRANAV; ENGLARD, BENJAMIN
To: LUMINAR TECHNOLOGIES, INC.
Reel/Frame 049028/0566 →