IP Library Granted Patent US 10,977,813
Granted Patent B2
US 10,977,813 · App. 16/537,294 · Granted Apr 13, 2021

System and method for robust depth calculation with ToF sensors using multiple exposure times

Inventors: Miroslav Trajkovic (Setauket, NY); Adithya H. Krishnamurthy (Hicksville, NY); Bryn P. Martino (Commack, NY)
Assignee: Zebra Technologies Corporation
G06T7/50G01S7/51G01S17/42G06T15/00G06T2200/24G06T2207/10028G06T2207/10144G06T2207/30168
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,977,813
App. No.
16/537,294
Granted
Apr 13, 2021
Kind
B2
Abstract

A system and method for performing robust depth calculations with time of flight (ToF) sensors using multiple exposure times is disclosed. A three-dimensional (3D) depth sensor assembly captures a first array of n point values, where each point value of the first array has a respective first-array depth component and a respective first-array quality component. The 3D depth sensor assembly then captures a second array of n point values, where each point value of the second array has a respective second-array depth component and a respective second-array quality component. A processor then renders a 3D point cloud comprising a third array of n point values, where each point value of the third array has a respective third-array depth component. The respective third-array depth component for each point value of the third array is based on either the corresponding respective first-array depth component or the corresponding respective second-array depth component.

Claims (71)

1. A method for performing depth calculations using three-dimensional (3D) depth sensors, comprising:

capturing, by a 3D depth sensor assembly, configured with a first set of capture-parameters, a first array of n point values, each point value of the first array having a respective first-array depth component and a respective first-array quality component;

capturing, by the 3D depth sensor assembly, configured with a second set of capture-parameters, a second array of n point values, each point value of the second array having a respective second-array depth component and a respective second-array quality component; and

rendering, by a processor, a 3D point cloud comprising a third array of n point values, each point value of the third array having a respective third-array depth component,

wherein n is an integer,

wherein i is an integer ranging from 1 to n, and

wherein, for each i th point value of the third array, the respective third-array depth component is based on the respective first-array depth component of i th point value of the first array when the respective first-array quality component of the i th point value of the first array is within a predetermined quality threshold, and the respective third-array depth component is based on the respective second-array depth component of i th point value of the second array when the respective first-array quality component of the i th point value of the first array is not within a predetermined quality threshold,

wherein:

the first set of capture-parameters corresponds to a first exposure duration;

the second set of capture-parameters corresponds to a second exposure duration that is different from the first exposure duration;

the respective first-array depth component of each of the n point values of the first array corresponds to captured depth data from within a first depth range based on the first exposure duration; and

the respective second-array depth component of each of the n point values of the second array corresponds to captured depth data from within a second depth range based on the second exposure duration.

2. The method of claim 1 , wherein:

the respective first-array quality component for each of the n point values of the first array indicates a luminance of each respective n point value of the first array;

the respective second-array quality component for each of the n point values of the second array indicates a luminance of each respective n point value of the second array; and

the predetermined quality threshold is indicative of a range of luminance values.

3. The method of claim 1 , wherein basing the respective third-array depth component on the respective first-array depth component or the second-array depth component includes setting equal the respective third-array depth component to the respective first-array depth component or the second-array depth component.

4. A method for performing depth calculations using three-dimensional (3D) depth sensors, comprising:

capturing, by a 3D depth sensor assembly, a plurality of point arrays, each of the plurality of point arrays being captured with the 3D depth sensor assembly being configured with a respective set of capture-parameters that is different from any other set of capture-parameters used to capture each other of the plurality of point arrays, each of the plurality of point arrays having n point values, each of the n point values of each of the plurality of point arrays having a respective depth component and a respective quality component; and

rendering, by a processor, a 3D point cloud comprising a rendered array of n point values, each point value of the rendered array having a respective rendered-array depth component,

wherein n is an integer,

wherein i is an integer ranging from 1 to n, and

wherein, for each i th point value of the rendered array, the operation of rendering the 3D point cloud includes:

(a) determining if the respective quality component of i th point value of one of the plurality of point arrays is within a predetermined quality threshold;

(b) responsive to the respective quality component of the i th point value of the one of the plurality of point arrays being within the predetermined quality threshold, basing the respective rendered-array depth component on the respective depth component of the i th point value of the one of the plurality of point arrays; and

(c) responsive to the respective quality component of the i th point value of the one of the plurality of point arrays being outside the predetermined quality threshold, repeating steps (a)-(c) such that the one of the plurality of point arrays is replaced with another one of the plurality of point arrays

wherein, for each i th point value of the rendered array, the operation of rendering the 3D point cloud further includes:

(d) responsive to the respective quality component of the i th point value of the each of the plurality of point arrays being outside the predetermined quality threshold, basing the respective rendered-array depth component on the respective depth component of the i th point value of a point array having the respective quality component of the i th point value deviate the least from the predetermined quality threshold relative to any other point array of the plurality of point arrays.

5. The method of claim 4 , wherein:

each respective set of capture-parameters corresponds to a respective exposure duration; and

for each point array of the plurality of point arrays, the respective depth component of each of the n point values corresponds to captured depth data from within a respective depth range based on the respective exposure duration.

6. The method of claim 4 , wherein:

for each point array of the plurality of point arrays, the respective quality component of each of the n point values indicates a luminance of each respective n point value; and

the predetermined quality threshold is indicative of a range of luminance values.

7. The method of claim 4 , wherein basing the respective rendered-array depth component on the respective depth component of the i th point value of the one of the plurality of point arrays includes setting equal the respective rendered-array depth component to the respective depth component of the i th point value of the one of the plurality of point arrays.

8. A method for performing depth calculations using three-dimensional (3D) depth sensors, comprising:

capturing, by a 3D depth sensor assembly, a first plurality of points and a second plurality of points, wherein each point of the first plurality of points includes a first respective quality component and a first respective depth component, and wherein each point of the second plurality of points includes a second respective quality component and a second respective depth component;

rendering, by one or more processors, a first 3D point cloud containing the first plurality of points, and a second 3D point cloud containing the second plurality of points;

determining, by the one or more processors, whether the first respective quality component is within a threshold range for each point in the first plurality of points; and

generating, by the one or more processors, a rendered point cloud from the first 3D point cloud and second 3D point cloud by at least:

for each first respective point in the first plurality of points, storing, by the one or more processors, the first respective point in the rendered point cloud if the first respective quality component is within the threshold range; and

for each second respective point in the second plurality of points corresponding to the first respective point in the first plurality of points, storing, by the one or more processors, the second respective point in the rendered point cloud if the first respective quality component associated with the first respective point is not within the threshold range,

wherein:

the 3D depth sensor assembly captures the first plurality of points using a first exposure duration;

the 3D depth sensor assembly captures the second plurality of points using a second exposure duration that is different from the first exposure duration;

the first respective depth component of each point in the first plurality of points corresponds to captured depth data from within a first depth range based on the first exposure duration; and

the second respective depth component of each point in the second plurality of points corresponds to captured depth data from within a second depth range based on the second exposure duration.

9. The method of claim 8 , wherein:

the first respective quality component of each point in the first plurality of points indicates a luminance of each respective point in the first plurality of points;

the second respective quality component of each point in the second plurality of points indicates a luminance of each respective point in the second plurality of points; and

the threshold range is indicative of a range of luminance values.

10. A system for performing robust depth calculations, comprising:

a user interface;

a trailer monitoring unit (TMU) mounted proximate a loading bay and communicatively connected with the user interface, the TMU including:

a housing; and

a three-dimensional (3D) depth sensor assembly at least partially within the housing and configured to capture a first plurality of points and a second plurality of points, wherein each point of the first plurality of points includes a first respective quality component and a first respective depth component, and wherein each point of the second plurality of points includes a second respective quality component and a second respective depth component;

wherein the TMU is configured to:

render a first 3D point cloud containing the first plurality of points, and a second 3D point cloud containing the second plurality of points;

determine whether the first respective quality component is within a threshold range for each point in the first plurality of points; and

generate a rendered point cloud from the first 3D point cloud and second 3D point cloud by at least:

for each first respective point in the first plurality of points, store, by the one or more processors, the first respective point in the rendered point cloud if the first respective quality component is within the threshold range; and

for each second respective point in the second plurality of points corresponding to the first respective point in the first plurality of points, store, by the one or more processors, the second respective point in the rendered point cloud if the first respective quality component associated with the first respective point is outside the threshold range,

wherein:

the 3D depth sensor assembly captures the first 3D point cloud using a first exposure duration;

the 3D depth sensor assembly captures the second 3D point cloud using a second exposure duration that is different from the first exposure duration:

the first respective depth component of each point in the first plurality of points corresponds to captured depth data from within a first depth range based on the first exposure duration; and

the second respective depth component of each point in the second plurality of points corresponds to captured depth data from within a second depth range based on the second exposure duration.

11. The system of claim 10 , wherein:

the first respective quality component of each point in the first plurality of points indicates a luminance of each respective point in the first plurality of points;

the second respective quality component of each point in the second plurality of points indicates a luminance of each respective point in the second plurality of points; and

the threshold range is indicative of a range of luminance values.

Assignments (3)
RELEASE OF SECURITY INTEREST - 364 - DAY Recorded Mar 5, 2021
From: JPMORGAN CHASE BANK, N.A.
To: ZEBRA TECHNOLOGIES CORPORATION; LASER BAND, LLC; TEMPTIME CORPORATION
Reel/Frame 056036/0590 →
SECURITY INTEREST Recorded Sep 1, 2020
From: ZEBRA TECHNOLOGIES CORPORATION; LASER BAND, LLC; TEMPTIME CORPORATION
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 053841/0212 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2020
From: TRAJKOVIC, MIROSLAV; KRISHNAMURTHY, ADITHYA H.; MARTINO, BRYN P.
To: ZEBRA TECHNOLOGIES CORPORATION
Reel/Frame 053397/0588 →