IP Library Granted Patent US 11,120,104
Granted Patent B2
US 11,120,104 · App. 15/886,353 · Granted Sep 14, 2021

Method and apparatus for processing a histogram output from a detector sensor

Inventors: John Kevin Moore (Edinburgh, GB); Sam Lee (Edinburgh, GB); Pascal Mellot (Lans en Vercors, FR); Donald Baxter (Stirling, GB); Stuart McLeod (Edinburgh, GB); Kenneth Dargan (Edinburgh, GB)
Assignees: STMICROELECTRONICS (RESEARCH & DEVELOPMENT) LIMITED; STMICROELECTRONICS (GRENOBLE 2) SAS
G06F17/18G01S7/4863G01S7/4865G01S7/4876G01S7/497G01S17/10G06F11/0703G01S7/4813
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,120,104
App. No.
15/886,353
Granted
Sep 14, 2021
Kind
B2
Abstract

A method includes receiving a histogram output from a detector sensor, and calculating a median point of a pulse waveform within the histogram. The pulse waveform has an even probability distribution over at least one quantization step of the histogram around the median point. A corresponding apparatus can include a detector sensor and a co-processor coupled to the detector sensor.

Claims (430)

1. A method comprising:

receiving a histogram output from a detector sensor, the detector sensor being a single photon avalanche diode array sensor, the histogram output comprising time-of-flight sensing data of one or more objects within a field-of-view of the detector sensor, wherein receiving the histogram comprises receiving the histogram as filtered histogram data comprising a plurality of histogram bin values, the filtered histogram data comprising a pulse waveform with a defined width and histogram bin position;

calculating a median point of the pulse waveform within the histogram, the pulse waveform having an even probability distribution over at least one quantization step of the histogram around the median point; and

determining ranges of the one or more objects within the field-of-view of the detector sensor based on the median point of the pulse waveform, wherein determining the ranges comprises determining from the filtered histogram data and based on the median point a parameter associated with the pulse waveform, wherein the parameter comprises an object range, a range noise estimate, or a maximum distance detection value.

2. The method as claimed in claim 1 , wherein determining the parameter comprises determining an object range by determining from the filtered histogram data an object range associated with the pulse waveform comprises applying a linear interpolation to a phase weighted filtered histogram to determine a phase value associated with the median point associated with a zero crossing event.

3. The method as claimed in claim 1 , wherein determining the parameter comprises determining an object range by determining from the filtered histogram data an object range associated with the pulse waveform comprises applying an interpolation to a phase weighted filtered histogram, the phase weighted filter comprising a first part and a second part and generating a first difference value based on a sum of the second part and a negative first part, such that for at least one histogram position where the first difference value crosses zero then the interpolation comprises the determined histogram position value+(|difference value for the bin position|/|difference value for the bin position|+|difference value for the bin position following the zero crossing bin position|).

4. The method as claimed in claim 1 , wherein determining the parameter comprises determining an object range by determining from the filtered histogram data an object range associated with the pulse waveform comprises applying a interpolation to phase weighted filtered histogram to determine a phase value associated with the median point, the phase weighted filter comprising a first part, a second part and a third part and generating a first difference value based on the sum of the first part, the second part and a negative third part, and generating a second difference value based on the sum of the second part, the third part and a negative first part, such that for at least one histogram position where the first difference value and the second difference value are greater than zero then the interpolation comprises the determined histogram position value+0.5+((the third part value−the first part value)/(2*(the second part value−a determined ambient value))).

5. The method as claimed in claim 1 , wherein determining the parameter comprises determining a range noise estimate associated with the pulse waveform by:

determining shot noise contributions from each filter part;

applying a range interpolation based transfer function to each shot noise contribution; and

combining the range interpolation based transfer function components to generate the range noise estimate.

6. The method as claimed in claim 1 , wherein determining the parameter comprises determining a range noise estimate associated with the pulse waveform by:

generating a noise value based on a phase weighted filtered histogram, the phase weighted filter comprising a first part A, a second part B located at a detected median event bin and a third part C, and wherein the noise values is

Noise

combined

=

(

C

+

A

4

×

(

B

-

amb

)

2

)

+

(

(

C

-

A

)

2

×

(

B

+

amb

)

4

×

(

B

-

amb

)

4

)

=

Noise

Numerator

2

+

Noise

Denominator

2

where

Noise

numerator

=

C

+

A

2

(

B

-

amb

)

and

Noise

denominator

=

C

-

A

2

(

B

-

amb

-

(

B

+

amb

)

)

-

C

-

A

2

(

B

-

amb

)

,

and amb is a determined ambient level.

7. The method as claimed in claim 1 , wherein determining the parameter comprises determining a range noise estimate associated with the pulse waveform by:

generating a noise value based on a phase weighted filtered histogram, the phase weighted filter comprising a first part A, a second part B located at a detected median event bin and a third part C, and wherein the noise values is

Noise

phase

=

(

C

+

C

x

+

A

+

A

x

4

×

(

B

-

B

x

-

amb

)

2

)

+

(

(

C

-

C

x

-

(

A

-

A

x

)

)

2

×

(

B

+

B

x

+

amb

)

4

×

(

B

-

B

x

-

amb

)

4

)

and A x , B X and C X are internal parasitic path components associated with the phase weighted filter first part, second part and third part respectively and amb is a determined ambient level.

8. The method as claimed in claim 1 , wherein determining the parameter comprises determining a maximum distance detection value.

9. The method as claimed in claim 8 , wherein determining from the filtered histogram data and based on the median point a maximum distance detection value comprises determining based on a threshold from an ambient level and a return level from a determined calibration value a distance at which a returned signal is not significant to determine a range determination.

10. The method as claimed in claim 8 , wherein determining from the filtered histogram data and based on the median point a maximum distance value

Dmax

=

Part

A

/

Part

B

where

Part

A

=

Dcal

×

2

×

Signal

@

Dcal

×

Ref

Ref

@

Dcal

\

and

Part

B

=

Sconf

×

Signal

@

Dcal

×

Ref

Ref

@

Dcal

±

(

Sconf

2

×

Signal

@

Dcal

×

Ref

Ref

@

Dcal

)

+

(

4

×

Signal

@

Dcal

×

Ref

Ref

@

Dcal

×

(

(

Aconf

×

Ambient

)

)

)

,

wherein a distance at which a Dmax calibration is taken defined by Dcal, a signal value in events/bin generated from a 100% target at a Dmax calibration distance defined as Signal@Dcal, a value of reflectance of target used for signal calibration defined as Ref@Dcal, a desired reflectance that Dmax is to be calculated for defined as Ref an ambient count defined as Ambient, a signal confidence (where 94% valid ranges implies 2 sigma) defined as SConf, and an ambient noise floor aligned with a histogram processing assumption defined as Aconf.

11. An apparatus for processing a histogram output from a detector sensor, wherein the detector sensor is a single photon avalanche diode array sensor, the histogram output comprising time-of-flight sensing data of one or more objects within a field-of-view of the detector sensor, the apparatus comprising a processing device configured to

receive the histogram output as filtered histogram data comprising a plurality of histogram bin values, the filtered histogram data comprising a pulse waveform with a defined width and histogram bin position,

calculate a median point of the pulse waveform within the histogram, the pulse waveform having an even probability distribution over a quantization step of the histogram around the median point,

determine, from the filtered histogram data and based on the median point, a parameter associated with the pulse waveform, wherein the parameter comprises an object range, a range noise estimate, or a maximum distance detection value, and determine ranges of the one or more objects within the field-of-view of the detector sensor based on the median point of the pulse waveform.

12. The apparatus as claimed in claim 11 , wherein the processing device is a microcontroller.

13. The apparatus as claimed in claim 12 , wherein the microcontroller is physically integrated with the detector sensor.

14. An apparatus comprising:

a detector sensor configured to output a histogram, the histogram output comprising time-of-flight sensing data of one or more objects within a field-of-view of the detector sensor, wherein the detector sensor is a single photon avalanche diode array sensor, wherein the detector sensor is configured to output the histogram as filtered histogram data comprising a plurality of histogram bin values, the filtered histogram data comprising a pulse waveform with a defined width and histogram bin position; and

a co-processor coupled to the detector sensor, the co-processor configured to calculate a median point of the pulse waveform within the histogram, the pulse waveform having an even probability distribution over a quantization step of the histogram around the median point and determine ranges of the one or more objects within the field-of-view of the detector sensor based on the median point of the pulse waveform, wherein the co-processor is further configured to determine from the filtered histogram data and based on the median point a parameter associated with the pulse waveform, wherein the parameter comprises an object range, a range noise estimate, or a maximum distance detection value.

15. The apparatus as claimed in claim 14 , wherein the co-processor is configured to determine from the filtered histogram data a range noise estimate associated with the pulse waveform by:

determining shot noise contributions from each filter part;

applying a range interpolation based transfer function to each shot noise contribution; and

combining the range interpolation based transfer function components to generate the range noise estimate.

16. The apparatus as claimed in claim 14 , wherein the co-processor is configured to determine from the filtered histogram data a range noise estimate associated with the pulse waveform, the co-processor being configured to generate a noise value based on a phase weighted filtered histogram, the phase weighted filter comprising a first part A, a second part B located at the detected median event bin and a third part C, and wherein the noise value is

Noise

phase

=

(

C

+

C

x

+

A

+

A

x

4

×

(

B

-

B

x

-

amb

)

2

)

+

(

(

C

-

C

x

-

(

A

-

A

x

)

)

2

×

(

B

+

B

x

+

amb

)

4

×

(

B

-

B

x

-

amb

)

4

)

and A x , B X and C X are internal parasitic path components associated with the phase weighted filter first part, second part and third part respectively and amb is a determined ambient level.

17. The apparatus as claimed in claim 14 , wherein the co-processor is configured to determine from the filtered histogram data and based on the median point a maximum distance detection value, the co-processor being configured to determine a distance at which a returned signal is not significant to determine a range determination based on a threshold from an ambient level and a return level from a determined calibration value.

18. The apparatus as claimed in claim 14 , wherein the co-processor is configured to determine a maximum distance value (Dmax) from the filtered histogram data and based on the median point, the co-processor configured to determine:

Dmax

=

Part

A

Part

B

where

Part

A

=

Dcal

×

2

×

Signal

@

Dcal

×

Ref

Ref

@

Dcal

and

Part

B

=

Sconf

×

Signal

@

Dcal

×

Ref

Ref

@

Dcal

±

(

Sconf

2

×

Signal

@

Dcal

×

Ref

Ref

@

Dcal

)

+

(

4

×

Signal

@

Dcal

×

Ref

Ref

@

Dcal

×

(

(

Aconf

×

Ambient

)

)

)

,

wherein a distance at which a Dmax calibration is taken defined by Dcal, a signal value in events/bin generated from a 100% target at a Dmax calibration distance defined as Signal@Dcal, a value of reflectance of target used for signal calibration defined as Ref@Dcal, a desired reflectance that Dmax is to be calculated for defined as Ref an ambient count defined as Ambient, a signal confidence (where 94% valid ranges implies 2 sigma) defined as SConf, and an ambient noise floor aligned with a histogram processing assumption defined as Aconf.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2018
From: MOORE, JOHN KEVIN; LEE, SAM; BAXTER, DONALD; MCLEOD, STUART; DARGAN, KENNETH
To: STMICROELECTRONICS (RESEARCH & DEVELOPMENT) LIMITED
Reel/Frame 044801/0876 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2018
From: MELLOT, PASCAL
To: STMICROELECTRONICS (GRENOBLE 2) SAS
Reel/Frame 044801/0913 →
Priority Claims (4)
EP 17158736 · Mar 1, 2017 · regional
EP 17305222 · Mar 1, 2017 · regional
EP 17305223 · Mar 1, 2017 · regional
EP 17305224 · Mar 1, 2017 · regional
Continuity (1)
Related Publication 20180253404A1 · Sep 6, 2018