Time-of-flight measurement using linear inverse function

文档序号:277803 发布日期:2021-11-19 浏览:10次 中文

阅读说明:本技术 使用线性反函数的飞行时间测量 (Time-of-flight measurement using linear inverse function ) 是由 J·P·高德巴兹 于 2020-03-26 设计创作,主要内容包括:一个示例提供了一种飞行时间深度成像系统,该系统被配置为调制从光源发射的光以利用经调制的光照射环境,以及针对一个或多个调制频率中的每个调制频率,在多个相位步长中的每个相位步长处对图像进行积分,并且经由一个或多个温度传感器感测光源和/或图像传感器的温度以获取测量到的温度。指令还可执行以,并且针对图像传感器的一个或多个像素中的每个像素:使用针对每个调制频率的线性反函数基于测量到的温度来确定复相量,基于复相量来确定从光源发射的光与来自光源的、被环境反射回来的光之间的相位偏移,以及基于相位偏移来输出针对像素的深度值。(One example provides a time-of-flight depth imaging system configured to modulate light emitted from a light source to illuminate an environment with the modulated light, and for each modulation frequency of one or more modulation frequencies, integrate an image at each phase step of a plurality of phase steps, and sense a temperature of the light source and/or the image sensor via one or more temperature sensors to obtain a measured temperature. The instructions are further executable to, for each of one or more pixels of an image sensor: the method further includes determining a complex phasor based on the measured temperature using a linear inverse function for each modulation frequency, determining a phase offset between light emitted from the light source and light from the light source reflected back by the environment based on the complex phasor, and outputting a depth value for the pixel based on the phase offset.)

1. A time-of-flight depth imaging system comprising:

a modulated time-of-flight image sensor;

a light source;

one or more temperature sensors configured to sense a temperature of the light source and/or image sensor;

a processor; and

a storage device comprising instructions executable by the processor to

Modulating light emitted from the light source to illuminate an environment with the modulated light,

integrating an image at each of a plurality of phase steps for each of one or more modulation frequencies, and sensing the temperature of the light source and/or image sensor via the one or more temperature sensors to obtain a measured temperature, an

For each of one or more pixels of the image sensor,

determining a complex phasor based on the measured temperature using a linear inverse function for each modulation frequency,

determining a phase offset between the light emitted from the light source and light from the light source reflected back by the environment based on the complex phasor, and

outputting a depth value for the pixel based on the phase offset.

2. The time-of-flight depth imaging system of claim 1, wherein the complex phasor is determined based on a predetermined temperature calibration model that correlates effective light source phase and amplitude sensed by the image sensor for each individual phase step with the temperature sensed by the light source and/or the image sensor.

3. The time-of-flight depth imaging system of claim 2, wherein the predetermined temperature calibration model for an individual camera is determined based on calibration at two or more temperatures.

4. The time-of-flight depth imaging system of claim 3, wherein the predetermined temperature calibration model is determined based on a principal component analysis of a population of time-of-flight depth imaging devices.

5. The time of flight depth imaging system of claim 2, wherein the predetermined temperature calibration model for the effective phase of each phase step and the predetermined temperature calibration model for the effective amplitude of each phase step are polynomials.

6. The time-of-flight depth imaging system of claim 2, wherein for each device the predetermined temperature model is adjusted using a phase sweep, a measure of effective phase and/or effective amplitude based on each individual phase step.

7. The time-of-flight depth imaging system of claim 2, wherein the spacing between the phase steps is non-uniform over 360 degrees.

8. The time-of-flight depth imaging system of claim 2, wherein the phase relationship between the sensor reference waveform and the illumination modulation waveform for each integration changes between temporally adjacent frames.

9. The time-of-flight depth imaging system of claim 1, wherein the instructions are further executable to perform spatial temperature correction for each frequency.

10. The time-of-flight depth imaging system of claim 9, wherein the temperature sensor is a first temperature sensor, and further comprising a second temperature sensor configured to sense a temperature of the image sensor, and wherein the instructions are further executable to: correcting the determined phase offset to account for spatially dependent errors of the image sensor by applying a horizontal correction vector to one or more rows of pixels of the image sensor and applying a vertical correction vector to one or more columns of pixels of the image sensor, the horizontal and vertical correction vectors based on the temperature of the image sensor.

11. On a time-of-flight depth imaging system including an image sensor, a light source, and a temperature sensor configured to sense a temperature of the light source and/or image sensor, a method comprising:

modulating light emitted from the light source to illuminate an environment with the modulated light;

integrating the image at each of a plurality of phase steps for each of the one or more modulation frequencies; and

for each image integrated at each phase step,

sensing a temperature of the light source and/or image sensor via the temperature sensor, an

For each of one or more pixels of the image sensor,

determining a complex phasor based on the sensed temperature using a linear inverse function for each modulation frequency,

determining a phase offset between the light emitted from the light source and light from the light source reflected back by the environment based on the complex phasor, and

outputting a depth value for the pixel.

12. The method of claim 11, wherein determining the complex phase quantity comprises: determining the complex phasor based on a predetermined temperature calibration model, the predetermined temperature calibration model relating light source effective phase and amplitude to the temperature of the light source.

13. The method of claim 12, wherein the predetermined temperature calibration model is determined based on calibration at two or more temperatures.

14. The method of claim 11, wherein a phase relationship between the sensor reference waveform and the illumination modulation waveform for each integration changes between temporally adjacent frames.

15. The method of claim 11, further comprising: correcting the determined phase offset for each image integrated at each phase step to account for spatially dependent errors of the image sensor.

Background

Time-of-flight depth sensors may utilize a phase offset method to measure distance. In such an example, a periodically modulated laser beam is emitted towards the target object, reflected light is received at the image sensor, and for each pixel of the image sensor, the phase of the received light is compared with the phase of the emitted light. The depth (distance) from each pixel of the time-of-flight sensor to the target object may then be determined based on the phase offset.

Disclosure of Invention

This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the detailed description. This summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used to limit the scope of the claimed subject matter. Furthermore, the claimed subject matter is not limited to implementations that solve any or all disadvantages noted in any part of this disclosure.

Examples are disclosed that relate to mitigating effects of temperature on components of a time-of-flight depth sensing system. One example provides a time-of-flight depth imaging system that includes a modulated time-of-flight image sensor, a light source, and one or more temperature sensors configured to sense a temperature of the light source and/or the image sensor. The example also includes a processor and a storage device including instructions executable by the processor to: light emitted from the light source is modulated to illuminate the environment with the modulated light, and for each of the one or more modulation frequencies, the image is integrated at each of a plurality of phase steps, and the temperature of the light source and/or the image sensor is sensed via one or more temperature sensors to acquire a measured temperature. The instructions are further executable to: for each of one or more pixels of the image sensor, a complex phasor is determined based on the measured temperature using a linear inverse function for each modulation frequency, a phase offset between light emitted from the light source and light from the light source that is reflected back by the environment is determined based on the complex phasor, and a depth value for the pixel is output based on the phase offset.

Drawings

FIG. 1 shows a block diagram of an example time-of-flight depth imaging system.

Fig. 2 shows an example Argand plot, which represents the phase and amplitude of a sample captured by a time-of-flight depth camera with a light source without temperature dependence.

FIG. 3 shows an example Argard plot representing the phase and amplitude of a sample captured by a time-of-flight depth with a light source exhibiting temperature dependence.

Fig. 4 shows a graph of phase shift as a function of light source temperature for nine example phase samples.

Fig. 5 shows a graph of amplitude as a function of light source temperature for nine example phase samples.

FIG. 6 shows a series of polynomial curves fitted to data representing phase error as a function of light source temperature for selected phase samples across a population of depth sensors.

Fig. 7 shows the residual phase error versus temperature for a selected phase sample on a population of depth sensors when determining depth using a linear inverse (inverse) method with single temperature point calibration.

FIG. 8 shows the residual phase error versus temperature for selected phase samples across a population of depth sensors when determining depth using a linear inverse method with two-point temperature calibration.

FIG. 9 shows a graph depicting depth accuracy as a function of ambient temperature using a linear inverse method and a two-point temperature calibration.

FIG. 10 shows a block diagram depicting data flow within a time-of-flight depth sensing system.

FIG. 11 illustrates an example method of operating a time-of-flight system.

FIG. 12 illustrates a block diagram of an example computing system.

Detailed Description

Amplitude Modulated Continuous Wave (AMCW) time-of-flight (ToF) depth sensing systems work by illuminating a scene with modulated light and measuring the time it takes the light to travel to objects in the scene and back to the sensor. The sensor works by correlating the backscattered light with a reference modulation signal, enabling the phase shift induced in the modulation waveform to be measured and the time taken for the light to travel to be inferred, thus calculating the distance to the object. Since phase wrapping causes ambiguity in the measured distance, multiple modulation frequencies are typically used to increase the maximum unambiguous range. Such systems are described in detail in the literature.

The AMCW ToF sensing system may operate at high peak laser power to overcome background ambient light amounts in some environments, such as outdoor spaces or indoor spaces with bright lighting. To further reduce noise from background light, it may be desirable to emit the total laser energy of an image frame for a short period of time to limit the amount of ambient light that is integrated. The use of a high power laser light source helps to shorten the integration time. However, the phase and amplitude of the light emitted by such high power light sources may be sensitive to the light source temperature. In time-of-flight sensing systems that calculate phase based on Discrete Fourier Transform (DFT) bins of phase measurements, this may result in centimeter-level errors in the sensed depth values. For example, when the laser light source heats up within a frame during a series of phase steps, the electro-optical properties of the first phase step, such as peak optical power output, threshold current and mean phase, may be different from those of the second or third phase step. The ambient temperature may further influence the electro-optical properties. The image sensor used to integrate the reflected light may also have a spatial temperature dependence that varies as a function of pixel location on the image sensor, further complicating accurate depth measurements.

Various methods can be used to mitigate errors caused by such temperature sensitivity. One possible solution is to maintain the light source at a substantially constant temperature during depth sensing. However, for many practical systems, the hardware used to maintain the temperature may be too bulky and/or expensive. As another possible solution, the time-of-flight depth sensing system may use pixel-by-pixel linear correction after conversion to depth values. However, such an approach may be applied late in the depth image data processing pipeline after phase unwrapping, resulting in performance degradation. Furthermore, such pixel-by-pixel linear correction may not account for the spatial temperature dependence of the image sensor.

Accordingly, examples are disclosed that relate to calibrating such temperature dependencies of light sources and image sensors in time-of-flight imaging systems for accurate depth sensing. In short, rather than using a fourier transform-based approach to process depth data, the disclosed examples use a linear inverse approach to determine the complex phasor (complex phasor) for each sample acquired at each source modulation frequency. As explained in more detail below, the phase and amplitude may be arbitrary using the disclosed example linear inverse method as compared to fourier transform-based methods. Depending on the calibration temperature used, the disclosed examples may help achieve millimeter-scale accuracy over a wide temperature range (e.g., from 10 ° to 80 ° celsius).

FIG. 1 shows an example time-of-flight depth sensing system 10 configured to image a target 12. The depth camera 10 includes a modulated light source 14, an imaging array 16, and a controller 18. The depth camera may also include various other components, such as an imaging lens 20 and/or a wavelength filter, which may be disposed in front of the array.

The modulated light source 14 is configured to irradiate the target 12 with amplitude modulated light of sinusoidal, rectangular or any other shape. The modulated light source may comprise one or more suitable laser light sources, such as LEDs, VCSELs or edge emitting lasers.

The imaging array 16 includes an array of depth sensing pixels. The imaging array is configured to receive pulsed or modulated probe light reflected back from the target 12. Each pixel of the array is configured to present an output signal that is dependent on the distance from the depth camera to the core of the target 12 imaged onto that pixel.

Continuing with FIG. 1, controller 18 includes a logic subsystem 62 and a storage subsystem 64. The controller 18 includes logic for providing modulated drive signals to the light source 14 and the modulated imaging array 16 to synchronize the operation of these components. The imaging array 16 operates by correlating the incident light with a reference waveform (which may vary for each measurement) and storing the correlation value within each pixel. The values stored for a particular illumination and sensor modulation waveform combination may be referred to as integration. The controller is also configured to read the output signal from each pixel of the imaging array to enable calculation of a depth map of the target 12. In some embodiments, repeated depth imaging may be used to assemble a time-resolved series of depth maps (depth video).

As mentioned above, the power of the light emitted from the light source of the camera is modulated by a periodic waveform. The light source may be modulated at a plurality of frequencies per depth image frame, and the depth values may be determined at a plurality of phase steps for each modulation frequency. Fig. 2 shows an example Argand plot 200 representing the phase and amplitude of samples captured by a time-of-flight depth camera with a light source without temperature dependence. In this example, the three phase samples are sampled with the same intrinsic correlation waveform shape, but shifted by 120 degrees by changing the phase relationship between the light source modulation waveform and the sensor reference waveform. From the perspective of the fundamental frequency of the correlation waveform, each phase sample can be considered as a projection 202 of a real signal 204 onto a sampling vector 206, the sampling vector 206 representing the effective phase and amplitude of the phase sample. As mentioned above, the prior art method calculates the phase of each frequency by computing a Discrete Fourier Transform (DFT) bin corresponding to the fundamental frequency of three phase samples, as represented by the following equation:

whereinIs a complex depth measurement, andis the phase step. Plural depth measurementThe amplitude of the modulated illumination backscattered from the scene and measured by the sensor in modulus is encoded and the time-of-flight induced phase shift is encoded in a complex parameter. The phase offset for each frequency can be calibrated to enable the depth to be calculated without unknown phase offsets due to the illumination and the electro-optical properties of the sensor.

In the example of fig. 2, it is assumed that each vector is equidistant, at 0 degrees, 120 degrees, and 240 degrees, representing the phase angle of the emitted light, and that each vector is equal in length, representing the amount of light emitted for that particular phase sample. In practice, however, due to the aforementioned temperature dependence of the laser light source, the vector may actually shift in angle and vary in length, since the phase angle and amplitude of the emitted light is a function of temperature. Fig. 3 shows an example Argand plot 300, which represents the phase and amplitude of samples captured by a time-of-flight depth camera with a temperature-dependent light source, and depicts an example vector representing the phase and amplitude of three-phase samples affected by temperature changes. Imaging sensors also have temperature dependence, but it is usually dominated by the light source.

The terms "effective phase" and "effective amplitude" may be used to refer to the phase and amplitude of the light source, as it will be measured by the sensor itself under ideal conditions for each individual phase step. In some embodiments, the effective phase and amplitude of each phase step is determined by performing a phase scan in which the phase relationship of the sensor reference and illumination modulation waveforms advances every frame. Once enough samples have been collected for over at least 360 degrees of phase step advance, a DFT may be performed on each integration over the collected frames and the effective phase and amplitude of each individual phase step may be determined. In contrast, the standard method performs a DFT on different phase steps of the same frequency within a frame, rather than performing a DFT on each integration (corresponding to a particular phase step) over multiple frames. The disclosed phase scanning method allows measuring the change in phase and amplitude behavior as a function of the phase step order, which may not be possible to achieve by standard methods.

Changes in effective phase and amplitude as a function of temperature may cause aliasing of the negative fundamental frequency of the correlation waveform onto the fundamental frequency, resulting in a two-cycle linearity error. Existing solutions can model the effective phase and/or amplitude of each complex depth measurement as a whole and correct for any fixed phase offset or scale, but do not model the individual phase steps and their resulting effect on range linearity.

Thus, rather than computing DFT bins, examples disclosed herein use a linear inverse function to compute the complex phasors based on the estimated phase and amplitude values. The disclosed examples allow for arbitrary changes in phase and amplitude while correcting for errors caused by temperature changes.

To apply the complex phase method disclosed herein to real-time-of-flight depth measurements, the phase and amplitude of the light sources as a function of temperature can be modeled prior to runtime, for example, using data obtained from a cluster of light sources. An example modeling process is described in more detail below. The resulting temperature model can then be applied at runtime to help calculate the complex phasor for each phase step to correct for the effects of light source temperature on the depth measurement.

Fig. 4 shows a graph 400 of phase shift for each sample as a function of temperature for nine example samples of an example light source, where samples 1, 2, and 3 correspond to phase samples at a first modulation frequency, samples 4, 5, and 6 correspond to phase samples at a second modulation frequency, and samples 7, 8, and 9 correspond to phase samples at a third modulation frequency. Fig. 5 shows a plot 500 of amplitude versus temperature for the same samples 1-9. As can be seen, for different modulation frequencies, the phase and amplitude each vary as a function of the temperature of the light source. In addition, each phase sample within the modulation frequency also varies based on the light source temperature. Thus, temperature calibration methods that apply the same calibration for each phase sample and/or each frequency may experience linearity or phase unwrapping errors. In contrast, the linear inverse examples disclosed herein may avoid such errors.

The curves of fig. 4 and 5 may each be modeled by a polynomial, such as a cubic polynomial, or other suitable function, to form a predetermined temperature calibration model. To determine the temperature calibration model, temperature-dependent data for each phase sample and each modulation frequency may be collected over a sample group of light sources using each integrated phase sweep, and each temperature-dependent curve for each phase sample at each frequency may be fitted to a polynomial function or other suitable function. Fig. 6 shows a graph depicting a plurality of polynomial functions fitted to phase error versus temperature data across a population of light sources for a first phase sample at a selected modulation frequency given a known target distance. Similar data can be obtained and fitted to other phase samples and other modulation frequencies. As can be seen from this figure, the phase error and variation between samples over the entire population increases with increasing temperature. From such data, a mean population temperature model (a previously referenced predetermined temperature calibration model) may be generated from a plurality of fitted polynomial functions to calibrate the depth camera and correct temperature-dependent data of the light source when calculating depth from the image sensor.

FIG. 7 shows the residual phase error versus light source temperature across an example population of depth sensors of FIG. 6 using single point temperature calibration with linear inverse phase and amplitude calculations for a first phase step at a selected modulation frequency. The example shown here is calibrated at about 30 ℃. As can be seen, the phase error is much smaller compared to the phase error of fig. 6. However, higher temperatures result in slightly higher variance than lower temperatures. Furthermore, as mentioned above, the polynomial function of fig. 6 is plotted as it diverges with increasing temperature. In this way, when using single point calibration, the mean temperature model may therefore not accurately fit the depth sensor population to the extent desired for certain applications over the entire operating temperature range.

Thus, in some examples, the mean temperature model may be adjusted on a per unit basis using a two-point temperature calibration and known population variations. In such an example, instead of using a generic population calibration at a fixed temperature, the fitted polynomial function may be further constrained by a second calibration temperature. To this end, the polynomial function (or other suitable function) may be distorted using measurements taken at the second calibration temperature to match the measurements at the two temperatures. As one example, correction basis vectors determined from principal component analysis may be applied to polynomial coefficients to account for variations in polynomials or other functions for the population. FIG. 8 shows the residual phase error versus temperature after applying an example two-point temperature calibration on an example population of depth sensors. The second calibration temperature used for these examples is approximately 60 ℃. As can be seen, the error of the two-point temperature calibration may be within millimeters over a relatively wide temperature range.

After modeling the temperature dependence of the phase and amplitude of the light source group, the model can be applied during runtime using a linear inverse method. One example parameterization applicable to both phase and amplitude in such a scheme is as follows.

The function assumes that there are two temperature sensors in the depth sensing system, one configured to sense the temperature (t) of the light sourcelaser) And one configured to sense a temperature (t) of the image sensorsensor). In other examples, the terminology for image sensor temperature may be omitted. Further, in some examples, additional spatial corrections may be applied in the depth data processing pipeline to account for the effect of sensor temperature on the complex phasor calculations, as described below. In examples where the depth sensing system comprises more than one light source temperature sensor, the above-mentioned parameterisation may also comprise a separate coefficient for each of the plurality of light source temperatures. Although the example equation (2) above is a polynomial function, it should be understood that any other suitable function may be used.

The temperature sensor may be read at any frequency, for example, once per integration/phase step, or once per modulation frequency or once per frame or at any other rate. In some cases, it may only be read once during operation.

Continuing, for each frequency, the complex phasor c may be calculated via a linear inverse function. An example calculation using the Moore-Penrose pseudo-inverse function is as follows.

c=[1,i]R(HTH)-1HT (3)

Wherein the content of the first and second substances,

and wherein αk=fk,amplitude(tlaser,tsensor),(5)

θk=fk,phase(tlaser,tsensor),(6)

Is originally captured, andis a rotation matrix that encodes a fixed spatial phase correction. As shown, the complex phase calculation may include all phase steps (three in this example) for that frequency.

In some embodiments, the phase relationship between the sensor reference and illumination modulation waveforms for each integration varies from frame to frame. In this case, a corresponding offset is applied to the phase model for each phase step to correct for the variation. This allows for the generation of corrected distance measurements despite variations in the phase relationship. In some embodiments, the system may perform phase scans continuously, with the phase relationship of each integral advancing every frame; as a result, systematic deviation due to harmonic aliasing of the correlation waveform can be reduced. In some embodiments, this is combined with a time averaging technique.

Furthermore, in some embodiments, the phase steps for each frequency are not equally spaced around 360 degrees (as opposed to standard methods that use equidistant phase steps). In some embodiments, this is combined with time averaging in order to reduce the negative impact of any correlated waveform harmonic aliasing on range linearity.

In some embodiments, one or more cameras have phase scans performed at multiple temperatures to determine the effective phase and amplitude of each integration or phase step, collect data similar or identical to fig. 4 and 5 for each camera, provide a corpus of camera temperature data. In some embodiments, a corpus temperature model is created by fitting a polynomial curve to the combined phase and amplitude data. In various embodiments, a polynomial curve is fitted to the phase/amplitude versus temperature data for each integration of each camera.

Furthermore, in some embodiments, single point temperature calibration for a particular camera is performed by performing a phase scan of all modulation frequencies at a known or controlled temperature using a target of known properties (such as a flat wall). Another potential target configuration is a retroreflector or mirror at a known distance with a diffuser above the imaging lens to simulate imaging an object at a constant radial distance. The corpus temperature model for the effective phase is adjusted by applying an offset or mathematical transformation such that the model for each integral intersects the true value at a known or measured calibration temperature. In the case of a polynomial model, some embodiments may include: the constant term of the polynomial is adjusted so that the condition is satisfied. The adjusted model is then used during operation of the camera to calculate the effective phase for each integration/phase step. The same or similar transformation is performed on the corpus temperature model for the effective amplitude so that the effective amplitude measured at the calibration temperature intersects the adjustment model for each integration. In the case of a polynomial model, some embodiments may include scaling the polynomial so that it intersects at the calibration temperature.

In some embodiments, additional calibrations are performed at different temperatures. The adjusted corpus temperature model for effective phase and amplitude is mathematically transformed in such a way that the adjusted model intersects all measurements of effective phase and amplitude. In some embodiments using two temperature calibrations, this is achieved by adding a linear correction factor to the model such that the adjusted model intersects the first and second valid phase and amplitude measurements. In other embodiments, this is achieved by creating orthogonal basis vectors on the coefficients of the polynomial model and performing a weighted addition on the adjusted corpus temperature model such that the adjusted model intersects all measurements of effective phase and amplitude.

In some embodiments, the orthogonal basis vectors for the effective phases are generated by transforming a polynomial model fitted to the corpus temperature data in the corpus for each integral of each camera such that the effective phase of each integral for each camera in the corpus intersects zero at the calibration temperature of the particular camera to be calibrated. In some embodiments, this is achieved by adding a constant offset to the fitted polynomial model. Assuming that the calibration temperature effective phase is fixed to zero, a principal component analysis is performed to generate a varying first principal component in the corpus for each integrated effective phase. When performing additional temperature calibration at the second temperature, the basis vector corresponding to the first principal component is used to correct the adjusted effective phase model by weighted addition such that the adjusted model intersects the first and second measurements. In another embodiment, a third temperature calibration step is performed and the effective phase model is adjusted using the basis vector corresponding to the second principal component so that it intersects all temperature calibration measurements of the effective phase. In another embodiment, this is extended to any number of temperature measurements.

Further, in some embodiments, multiple calibrations are performed at different temperatures for each camera to be calibrated using a phase scan. The model is fitted directly to the effective amplitude and phase measured over temperature. This is used during run-time to perform temperature correction. In some embodiments, this may be a linear fit over the measured laser temperature for each integrated phase and amplitude. In another embodiment, the fitting operation may use statistics of a corpus of camera temperature data as statistical priors and solve a maximum a posteriori estimation problem in order to determine an optimal model to apply at runtime. In some embodiments, the statistical prior may be a multivariate gaussian distribution describing coefficients of a polynomial fit to the effective phase and effective amplitude of each integral over a corpus of camera temperature data. In some embodiments, the same (or similar) method is applied to the effective amplitude.

In some embodiments, the fitted model may not exactly intersect the measured effective phase and amplitude.

Furthermore, in some embodiments, the fixed spatial phase correction for each pixel is calculated from a known target and is used to calculate the phase correction (referred to as R in equation (3) above) that is applied at runtime after calibration.

It should be understood that other mathematically similar or equivalent methods are possible within the scope of the present disclosure, including where the calibration temperature is stored and a corpus temperature model is used to estimate the change in effective phase and amplitude relative to the effective phase and amplitude at calibration, without the need to create a modified temperature calibration model for each camera. In other embodiments, the corpus temperature model is used to adjust the spatial phase calibration so that it is represented as if it were at a specified temperature, e.g., zero degrees celsius.

FIG. 9 shows example real world performance of a time-of-flight depth sensing system after applying the linear inverse method with the two-point temperature calibration illustrated in FIG. 8. As shown, an error in the range of about ± 2 millimeters can be achieved over a range of temperatures.

As mentioned above, image sensor performance may also exhibit some temperature dependence. Even for an ideal light source at a constant temperature, variations in sensor temperature can result in spatial sensor performance variations, affecting complex phase measurements. For example, at each phase step, the image may be integrated by modulating the image sensor using a Delay Locked Loop (DLL) in the image sensor, which deliberately introduces a phase delay horizontally across the pixels of the image sensor. Each pixel in the image sensor has a sampling phasor whose phase may vary. Thus, spatial variations in the image sensor may be a function of sensor signals delayed horizontally (left to right with respect to pixels in the sensor) due to DLLs and vertically (top to bottom) from pixel to pixel due to pixel clock driver(s) affecting clock lines in the imaging array in conjunction with transmission lines. These properties may change with changes in temperature, resulting in depth measurement errors.

Therefore, in addition to the temperature correction based on the light source temperature, the spatial temperature correction based on the sensor temperature may also be applied. In some examples, a horizontal correction vector may be applied to each row of pixels in the image sensor and a vertical correction vector may be applied to each column of pixels. The horizontal and vertical correction vectors may be determined based on population data associated with phase errors on the sensor as a function of temperature. For example, the vector may be calculated as follows.

Horizontal correction vector ═ tsensor-tcalibration)hc

Vertical correction vector ═ tsensor-tcalibration)vcIn which the basis vector h used for the horizontal correction vectorcIs a linear function of the number of columns and is used to correct the basis vector v of the vector perpendicularlycIs a quartic function of the number of rows. The disclosed examples are not limited to basis vectors that can be modeled as polynomials; in some embodiments, the entire basis vectors are stored explicitly or different types of models are used.

In some embodiments, the spatial temperature basis vector is generated by measuring the effective phase of one or more cameras at two different temperatures, performing a subtraction of the effective phase at one temperature from the effective phase at the other temperature and averaging all the cameras. The spatial correction factor per degree celsius is determined by dividing the effective phase difference by the difference between the two temperatures. In other embodiments, more temperatures are used. In some embodiments, the horizontal correction vector h is determined by weighted least squares linear fitting of the raw effective phase space correction factors per degree celsius value in the horizontal and vertical directionscAnd a vertical correction vector vcWherein the weight is a measureMean complex modulus of the resulting signal. In other embodiments, any method known to those skilled in the art may be used to fit the correction vectors to the available data.

FIG. 10 shows a block diagram of an example depth engine 1000 within a time-of-flight depth camera that may implement the example temperature corrections described above. As described above, the raw data 1002 and the laser and sensor temperatures 1004 are provided as inputs to a temperature correction de-projection block 1006, which uses a linear inversion based approach to determine a complex phase while compensating for the light source temperature dependence (and potentially the image sensor temperature dependence). Continuing, at block 1008, a phase and an effective luminance (AB) (e.g., amplitude) are determined from the complex phasor. Next, as described above, spatial correction of the temperature dependence of the image sensor may be performed at 1010 using input from the image sensor temperature sensor at block 1012.

Next, the phase unwrapping block 1014 takes the determined phase measurements and performs phase unwrapping, which facilitates using multiple phase samples at each modulation frequency to disambiguate between possible distances. Performing spatial correction prior to phase unwrapping may help prevent de-aliasing errors or linearity errors that may be introduced during the phase unwrapping stage, but in some examples, spatial correction may occur after phase unwrapping. The phase and amplitude measurements may then be converted to depth, xyz measurements, and/or reflectivity at 1018, which may then be output from the depth engine at 1020. Optionally, filters may be applied at any stage of the pipeline, which may include processing filters, image filters, cassette filters, and/or other suitable filters. A subset of these outputs or additional outputs may be provided, such as the sum of the amplitudes of the individual modulation frequencies measured by the sensor.

FIG. 11 illustrates an example method 1100 of correcting time-of-flight depth measurements. The method 1100 includes, at 1102, modulating light emitted from a light source to illuminate an environment with the modulated light. The method 1100 further includes, at 1104, integrating the image at each of a plurality of phase steps for each of the one or more modulation frequencies, and at 1105, sensing a temperature of the light source and/or the image sensor via one or more temperature sensors to obtain a measured temperature.

For each image integrated at each phase step, at 1106, and for each pixel of the one or more pixels of the image sensor, at 1110, the method 1100 includes, at 1112, determining a complex phasor based on the temperature of the light source and/or the image sensor using a linear inverse function. At 1114, a complex phasor may be determined based on a predetermined temperature calibration model that relates light source phase and amplitude to a temperature of the light source. The predetermined temperature calibration model may be based on phase and amplitude behavior as a function of light source temperature for a population of devices determined during factory calibration/manufacturing. In some examples, the predetermined temperature calibration model may be based on calibration at two or more different temperature points, while in other examples, the calibration model may be based on a single calibration temperature point. Next, for each pixel, a phase offset between light emitted from the light source and light from the light source that is reflected back by the environment is determined based on the complex phasor at 1116. As described above, determining the phase offset based on the complex phasor using a linear inverse function may allow for the use of arbitrary phase steps and frequencies. In some examples, non-equidistant phase steps may be purposely used and varied over time to help improve accuracy.

The method 1100 further includes, at 1118, correcting the determined phase offset to account for spatially dependent errors of the image sensor. This may be accomplished, for example, by applying a horizontal correction vector to one or more rows of pixels of the image sensor and a vertical correction vector to one or more columns of pixels of the image sensor at 1120. The method 1100 then includes, at 1122, outputting a depth value for each pixel. Thus, the resulting depth values take into account the temperature dependence of the light source and the image sensor, which may be more accurate than methods using per-pixel linear correction to determine the depth values.

FIG. 12 schematically illustrates a non-limiting embodiment of a computing system 1200 that can perform one or more of the methods and processes described above. Computing system 1200 is shown in simplified form. The computing system 1200 may take the form of one or more personal computers, server computers, tablet computers, home entertainment computers, network computing devices, gaming devices, mobile computing devices, mobile communication devices (e.g., smart phones), and/or other computing devices. For example, computing system 1200 may represent depth camera 10.

Computing system 1200 includes a logic subsystem 1202 and a storage subsystem 1204. Computing system 1200 may optionally include a display subsystem 1206, an input subsystem 1208, a communication subsystem 1210, and/or other components not shown in fig. 12.

Logic subsystem 1202 includes one or more physical devices configured to execute instructions. For example, the logic machine may be configured to execute instructions that are part of one or more applications, services, programs, routines, libraries, objects, components, data structures, or other logical constructs. Such instructions may be implemented to perform a task, implement a data type, transform the state of one or more components, achieve a technical effect, or otherwise achieve a desired result.

Logic subsystem 1202 may include one or more processors configured to execute software instructions. Additionally or alternatively, logic subsystem 1202 may include one or more hardware or firmware logic machines configured to execute hardware or firmware instructions. The processors of logic subsystem 1202 may be single core or multicore, and the instructions executed thereon may be configured for sequential processing, parallel processing, and/or distributed processing. The various components of logic subsystem 1202 may optionally be distributed among two or more separate devices, which may be remotely located and/or configured to coordinate processing. Aspects of the logic subsystem 1202 may be virtualized and executed by remotely accessible networked computing devices configured in a cloud computing configuration.

The storage subsystem 1204 includes one or more physical devices configured to hold instructions executable by the logic subsystem 1202 to implement the methods and processes described herein. When such methods and processes are implemented, the state of the storage machine may be transformed — e.g., to hold different data.

The storage subsystem 1204 may include removable and/or built-in devices. Storage subsystem 1204 may include optical memory (e.g., CD, DVD, HD-DVD, blu-ray disc, etc.), semiconductor memory (e.g., RAM, EPROM, EEPROM, etc.), and/or magnetic memory (e.g., hard-disk drive, floppy-disk drive, tape drive, MRAM, etc.), among others. The storage subsystem 1204 may include volatile, nonvolatile, dynamic, static, read/write, read-only, random-access, sequential-access, location-addressable, file-addressable, and/or content-addressable devices.

It should be appreciated that the storage subsystem 1204 includes one or more physical devices. However, aspects of the instructions described herein may alternatively be propagated by a communication medium (e.g., an electromagnetic signal, an optical signal, etc.) that is not held by a physical device for a limited duration.

Aspects of the logic subsystem 1202 and the storage subsystem 1204 may be integrated together into one or more hardware logic components. Such hardware logic components may include Field Programmable Gate Arrays (FPGAs), program and application specific integrated circuits (PASIC/ASIC), program and application specific standard products (PSSP/ASSP), systems on a chip (SOC), and Complex Programmable Logic Devices (CPLDs).

The term "engine" may be used to describe an aspect of computing system 1200 that is implemented to perform particular functions. In some cases, the engine may be instantiated via the logic subsystem 1202 executing instructions held by the storage subsystem 1204. It should be understood that different engines may be instantiated from the same application, service, code block, object, library, routine, API, function, etc. Likewise, the same module, program, and/or engine may be instantiated by different applications, services, code blocks, objects, routines, APIs, functions, and so forth. The term "engine" may encompass a single or a set of executable files, data files, libraries, drivers, scripts, database records, and the like.

When included, the display subsystem 1206 may be used to present a visual representation of data held by the storage subsystem 1204. The visual representation may take the form of a Graphical User Interface (GUI). The state of display subsystem 1206 may likewise be transformed to visually represent changes in the underlying data, as the herein described methods and processes change the data held by the storage machine, thereby transforming the state of the storage machine. Display subsystem 1206 may include one or more display devices utilizing virtually any type of technology. Such display devices may be combined with logic subsystem 1202 and/or storage subsystem 1204 in a shared enclosure, or such display devices may be peripheral display devices.

When included, input subsystem 1208 may include or interface with one or more user input devices, such as a keyboard, mouse, touch screen, or game controller. In some embodiments, the input subsystem may include or interface with a selected Natural User Input (NUI) component. Such components may be integrated or peripheral, and the translation and/or processing of input actions may be processed on-board or off-board. Examples of NUI components may include a microphone for speech and/or voice recognition; infrared, color, stereo and/or depth cameras for machine vision and/or gesture recognition; a head tracker, eye tracker, accelerometer and/or gyroscope for motion detection and/or intent recognition; and an electric field sensing assembly for assessing brain activity.

When included, communication subsystem 1210 may be configured to communicatively couple computing system 1200 with one or more other computing devices. Communication subsystem 1210 may include wired and/or wireless communication devices compatible with one or more different communication protocols. As a non-limiting example, the communication subsystem may be configured for communication via a wireless telephone network or a wired or wireless local or wide area network. In some embodiments, the communication subsystem may allow computing system 1200 to send and/or receive messages to and/or from other devices via a network such as the internet.

Another example provides a time-of-flight depth imaging system comprising a modulated time-of-flight image sensor, a light source, one or more temperature sensors configured to sense a temperature of the light source and/or the image sensor, a processor, and a storage device comprising instructions executable by the processor to: modulating light emitted from a light source to illuminate an environment with the modulated light, for each modulation frequency of one or more modulation frequencies, integrating an image at each phase step of a plurality of phase steps, sensing a temperature of the light source and/or the image sensor via one or more temperature sensors to obtain a measured temperature, and for each pixel of one or more pixels of the image sensor, determining a complex phasor based on the measured temperature using a linear inverse function for each modulation frequency, determining a phase offset between the light emitted from the light source and light from the light source reflected back by the environment based on the complex phasor, and outputting a depth value for the pixel based on the phase offset. The complex phasor may additionally or alternatively be determined based on a predetermined temperature calibration model that relates the effective light source phase and amplitude sensed by the image sensor for each individual phase step to the temperature sensed by the light source and/or image sensor. A predetermined temperature calibration model for an individual camera may additionally or alternatively be determined based on calibration at two or more temperatures. The predetermined temperature calibration model may additionally or alternatively be determined based on a principal component analysis of a population of time-of-flight depth imaging devices. The predetermined temperature calibration model for the effective phase of each phase step and the predetermined temperature calibration model for the effective amplitude of each phase step may additionally or alternatively be a polynomial. The predetermined temperature model may additionally or alternatively be adjusted for each device using a phase scan based on a measurement of the effective phase and/or effective amplitude of each individual phase step. The spacing between the phase steps may additionally or alternatively be non-uniform over 360 degrees. Additionally or alternatively, the phase relationship between the sensor reference waveform and the illumination modulation waveform for each integration may change between temporally adjacent frames. The instructions may additionally or alternatively further perform to: a spatial temperature correction is performed for each frequency. Where the temperature sensor is a first temperature sensor, the time-of-flight depth imaging system may additionally or alternatively comprise a second temperature sensor configured to sense a temperature of the image sensor, and wherein the instructions are further executable to: the determined phase offset is corrected to account for spatially dependent errors of the sensor by applying a horizontal correction vector to one or more rows of pixels of the image sensor and a vertical correction vector to one or more columns of pixels of the image sensor, the horizontal and vertical correction vectors being based on a temperature of the image sensor.

On a time-of-flight depth imaging system including an image sensor, a light source, and a temperature sensor configured to sense a temperature of the light source and/or the image sensor, another example provides a method comprising: modulating light emitted from a light source to illuminate an environment with the modulated light, for each modulation frequency of one or more modulation frequencies, integrating an image at each phase step of a plurality of phase steps, and for each image integrated at each phase step, sensing a temperature of the light source and/or the image sensor via a temperature sensor, and for each pixel of one or more pixels of the image sensor, determining a complex phasor based on the sensed temperature using an inverse linear function for each modulation frequency, determining a phase offset between light emitted from the light source and light from the light source reflected back by the environment based on the complex phasor, and outputting a depth value for the pixel. Determining the complex phasor may additionally or alternatively include: the complex phasor is determined based on a predetermined temperature calibration model that relates the light source effective phase and amplitude to the temperature of the light source. The predetermined temperature calibration model may additionally or alternatively be determined based on calibration at two or more temperatures. The predetermined temperature calibration model may additionally or alternatively be a polynomial. Additionally or alternatively, the phase relationship between the sensor reference waveform and the illumination modulation waveform for each integration may change between temporally adjacent frames. The method may additionally or alternatively comprise: the determined phase offset is corrected for each image integrated at each phase step to account for spatially dependent errors of the image sensor.

Another example provides a time-of-flight depth imaging system comprising a modulated time-of-flight image sensor, a light source, a first temperature sensor configured to sense a temperature of the light source, a second temperature sensor configured to sense a temperature of the image sensor, a processor, and a storage device comprising instructions executable by the processor to: modulating light emitted from a light source to illuminate an environment with the modulated light, for each modulation frequency of one or more modulation frequencies, integrating the image at each phase step of a plurality of phase steps, for each image integrated at each phase step, sensing a temperature of the light source via a first temperature sensor, sensing a temperature of an image sensor via a second temperature sensor, for each pixel of one or more pixels of the image sensor, determining a complex phasor based on the temperature of the light source using a linear inverse function, and determining a phase offset between light emitted from the light source and light from the light source reflected back by the environment based on the complex phasor, correcting the determined phase offset to account for space-dependent errors of the image sensor by applying a horizontal correction vector to one or more rows of pixels of the image sensor and a vertical correction vector to one or more columns of pixels of the image sensor, the horizontal correction vector and the vertical correction vector are based on a temperature of the image sensor, and a depth value for each pixel is output. The horizontal correction vector and the vertical correction vector may each additionally or alternatively be based on a phase error as a function of temperature of the image sensor. The horizontal correction vector may additionally or alternatively comprise a linear function of the number of columns, which is applied to each row of pixels in the image sensor. The vertical correction vector may additionally or alternatively comprise a quartic function, which is a function of the number of rows applied to each column of pixels in the image sensor.

It is to be understood that the configurations and/or approaches described herein are exemplary in nature, and that these specific embodiments or examples are not to be considered in a limiting sense, because numerous variations are possible. The specific routines or methods described herein may represent one or more of any number of processing strategies. As such, various acts illustrated and/or described may be performed in the sequence illustrated and/or described, in other sequences, in parallel, or omitted. Also, the order of the above-described processes may be changed.

The subject matter of the present disclosure includes all novel and nonobvious combinations and subcombinations of the various processes, systems and configurations, and other features, functions, acts, and/or properties disclosed herein, as well as any and all equivalents thereof.

22页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于在医学透射射线照相中操纵X射线的同轴X射线聚焦光学器件

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类