Patent ID: 12248098

DETAILED DESCRIPTION OF THE EXAMPLE EMBODIMENTS

Throughout the following description, identical reference numerals will be used to identify like parts.

Referring toFIG.1, a first indirect time of flight range calculation apparatus100comprises a source of electromagnetic radiation (not shown), for example a Laser Diode (LD) or a Light Emitting Diode (LED). In this example, the source of electromagnetic radiation is infrared light that is amplitude modulated in accordance with an indirect time of flight measurement technique so as to be emitted as a continuous wave optical signal. A detection and ranging module of the apparatus100comprises an optical receiver photonic mixer pixel device102, the optical receiver photonic mixer pixel device102comprising a photodiode104having an anode operably coupled to ground potential and a cathode coupled a first input of a photonic mixer106, an output of the photonic mixer106being coupled to an input of an integrator108. In this example, a single photonic mixer pixel device102is being described for the sake of conciseness and clarity of description. However, the skilled person will appreciate that the detection and ranging module comprises an array of photonic mixer pixel devices of the kind described above.

A phase signal generator112is configured to generate a continuous wave electrical signal. The phase offset of the continuous wave signal is selectable via a control input114, the phase of the continuous wave signal being selectable from a set of phase offsets: [θ0, θ1, . . . , θm-1]. An output of the phase signal generator112is coupled to a second input of photonic mixer106.

An output of the integrator108is coupled to an input of a Digital Fourier Transform (DFT) unit110. In this respect, phase angle measurements are transferred serially to the DFT unit110, thereby reducing memory requirements for the detection and ranging module. The DFT unit110comprises internal buffers (not shown) to support serial transfer of measurements from the integrator108. In order to support this arrangement, the DFT unit110is operably coupled to a timing control unit116to maintain synchronisation of data processing.

The timing control unit116has a synchronisation output118operably coupled to a timing input120of the DFT unit110. A control output122of the timing control unit116is coupled to the control input114of the phase signal generator112.

The DFT unit110has a plurality of digital in-phase (I)/quadrature (Q) outputs125. In this example, the DFT unit110comprises b pairs of digital I/O outputs corresponding to different harmonics of measured signals. As the output of the integrator108is an accumulated charge and, in this example in the analogue domain, the output of the integrator108needs to be converted to the digital domain. This can be achieved, for example, by employing a photon counter as the integrator108or providing an analogue-to-digital converter before the DFT unit110.

A first pair of I/O outputs of the plurality of digital I/O outputs125, relating to the first harmonic of the received reflected optical signal, is coupled to a phase angle calculation unit, for example an arctan unit124. An output of the arctan unit124is coupled to a first input126of a summation unit128. The summation unit128constitutes a combiner, the summation unit128having an output for providing a corrected phase angle. The output of the arctan unit124is also operably coupled to an input of a lookup table unit130, supported by a data store, an output of the lookup table unit130being operably coupled to a second input132of the summation unit128. In this example, the DFT unit110, the arctan unit124, the lookup table unit130, the data store, and the summation unit128constitute a signal processing circuit.

In operation (FIG.2), the light source emits a continuous wave optical signal that illuminates (Step200) a scene. An object in the scene, for example, reflects the emitted optical signal. The phase signal generator112generates a continuous wave electrical signal, the timing control unit116controlling cycling through the set of phase offsets in respect of the electrical signal relative to the continuous wave optical signal. A synchronisation signal is also applied by the synchronisation output118to the DFT unit110.

In order to calculate a corrected phase angle, a phase angle is calculated by applying the electrical signal generated by the phase signal generator112to the photonic mixer106and the phase offset of the electrical signal is cycled through the set of phase offsets mentioned above and digital representations of the charges stored in the integrator108in respect of each phase offset of the set of phase offsets are measured (Step202) and received by the DFT unit110in series and converted to a pair of I/O outputs constituting an I/O vector (Step204), V, representing the complex valued analogue electrical measurements in respect of the fundamental frequency. In this respect, the integrator108provides a plurality of phase-separated amplitude measurement outputs in series representing respective accumulated charge levels for applied phase offset values in respect of the photonic mixer pixel device102. The DFT unit110calculates, for each frame cycle, intermediate I and Q values for phase-separated amplitude measurements respectively received in series, which are accumulated over a frame cycle to generate final I and Q value results. Operation of such an arrangement comprises vectors being calculated iteratively using the DFT unit110in respect of each incoming phase angle measurement.

The DFT unit110can also generate other I/O vectors in respect of harmonics of the charges measured by the integrator108. After the electrical measurement signals are converted to the frequency domain, the I- and Q-values for the fundamental frequency are provided by the DFT unit110at the outputs thereof. In this example, the synchronisation signal ensures that the fundamental frequency I/O outputs of a current measurement frame of the DFT unit110are synchronously received by the arctan unit124. The arctan unit124then, in accordance with the indirect time of flight measurement technique, calculates (Step206) an angle of the vector, V, constituting an extracted (measured) calculated phase angle, φmeas, in the complex plane from the fundamental frequency I and Q values.

The extracted phase angle, φmeas, is received by the summation unit128as well as the lookup table unit130. In response to receipt of the extracted phase angle, φmeas, the lookup table unit130accesses (Step208) a phase angle correction value, φerr, corresponding to the value of the extracted phase angle, φmeas, received and outputs the phase angle correction value, −φerr, which is received by the summation unit128and applied (Step210), for example added, to the extracted phase angle, (p meas, received and that corresponds to the phase angle correction value, −φerr, retrieved by the lookup table unit130. The combination of the extracted phase angle, φmeas, with the phase angle correction value, −φerr, yields a corrected phase angle, φcor, which is provided (Step212) at an output of the summation unit128. The corrected phase angle can then be used to calculate a range to the source of the reflection of the emitted light.

The above steps (Steps202to212) are repeated (Step213) until correction of measured angles is no longer required.

Turning to the lookup table unit130, it has been discovered that with a priori knowledge of the transient of the emitted optical signal, it is possible to calculate phase angle error correction values to be applied to estimated phase angle measurements in order to correct the estimated phase angle measurements for circular errors. Referring toFIGS.3and4, a model for the emitted optical signal, s(t), is selected, constituting reference illumination data. In this example, the model is based upon a convolution of a pair of rectangular functions:

s⁡(t)=1ts⁢rect⁡(1tp)⋆rect⁡(tts)(1)

s(t) is a convolution of an ideal rectangular waveform having a pulse duration, tp, with another ideal rectangular waveform having a duration that can range between 0 to 100% of the slope time, ts, of the waveform, for example the rise time or the fall time of the waveform. However, it should be appreciated that the model can be developed further by the skilled person, for example the above model assumes the waveform to possess equal rise and fall times, whereas different models can take into account the possibility of the waveform having different rise and fall times.

In order to characterise the model specific to the light emitted by the optical source, the slope time tsof the emitted optical signal is measured (Step300), for example, once during end-of-line testing of the apparatus100during a calibration phase, for example during manufacture, or during use in the field in order to take into account operational parameter drifts that occur during the lifetime of the apparatus100and/or temperature effects. The slope time can be an average of a number of slope times measured over a plurality of periods of the emitted optical signal. By measuring the slope time, it is possible to obtain an indication of the bandwidth of the optical signal and the harmonics of the optical signal that lead to the circular errors. In this respect, a bandwidth-time product, Γ, is given by the following expression:
Γ=fmodts(2)

The bandwidth-time product, r, represents the ratio of slope time to the period of the optical signal.

Using the model of equation (1) above in respect of a theoretical time of flight range calculation system and as characterised (Step302) by the measured slope time (Step300) mentioned above, m measurements are made during a period of the optical signal, s(t),400. This results in m different integration periods in respect of the integrator108and a sample point is obtained every 2π/m over a complete illumination period of the optical signal400. Each sample point, Pk, where k=0, . . . , m−1, is characterised over the period of the optical signal400as:
Pk(ϕ)=sp(ϕ)*MIXk(ϕ)  (3)

where

MIXk(ϕ)=rect⁡(ϕπ-2⁢k+2m),
and ϕ the phase angle introduced by a time-of-flight path from the optical source of the apparatus100to an object in the scene and back to the optical receiver photonic mixer pixel device102. Using the above expression (2), the sample points, Pk(ϕ), for each of k (=0, . . . , m−1) phase angle shifted mixing signals402,404,406,408, are calculated (Step304). As the skilled person will appreciate, the m sample points for a given period of the optical signal400are used to calculate (Step306) in-phase and quadrature vector components, in this example in respect of the first harmonic of the optical signal400, using a Fourier transform:

I⁡(ϕ)=∑k=0m-1⁢Pk(ϕ)⁢cos⁡(θk)(4)Q⁢(ϕ)=∑k=0m-1⁢Pk(ϕ)⁢sin⁡(θk)⁢where⁢θk=2⁢π⁢km(5)

Taking a four-phase system (m=4), a first sample point value, P0,410, a second sample point value, P1,412, a third sample point vale, P2,414, and a fourth sample point value, P3,416are calculated, for example, as follows:
I(ϕ)=P0(ϕ)−P2(ϕ)  (6)
Q(ϕ)=P1(ϕ)−P3(ϕ)  (7)

From the in-phase and quadrature vector components, an estimate, ϕest(ϕ),418of a current phase angle value, ϕ, i.e. an estimate of the actual or ideal solution (the ground truth) for the phase angle value, ϕ, for the in-phase and quadrature components of the vector, can be calculated (Step308) using either, a first phase angle calculation technique, for example, an a tan 2 method, or a second phase angle calculation technique, for example a triangular method where the number of phase offsets employed by the phase signal generator112is four:

ϕestSIN={atan⁢2⁢(Q⁡(ϕ),I⁡(ϕ))if⁢Q⁡(ϕ)≥0atan⁢2⁢(Q⁡(ϕ),I⁡(ϕ))+2⁢πif⁢Q⁡(ϕ)<0(8)ϕestTRI={π2⁢(1-Inorm(ϕ))if⁢Qnorm(ϕ)≥0π2⁢(3+Inorm(ϕ))else(9)

where:

Inorm(ϕ)=I⁡(ϕ)❘"\[LeftBracketingBar]"I⁡(ϕ)❘"\[RightBracketingBar]"+❘"\[LeftBracketingBar]"Q⁡(ϕ)❘"\[RightBracketingBar]"(10)Qnorm(ϕ)=Q⁡(ϕ)❘"\[LeftBracketingBar]"I⁡(ϕ)❘"\[RightBracketingBar]"+❘"\[LeftBracketingBar]"Q⁡(ϕ)❘"\[RightBracketingBar]"(11)

Where a four-phase system is employed, it is possible to select between the a tan 2 or the triangular method to estimate the phase angle based upon the configured model, depending upon the value of the bandwidth-time product, Γ. For example, if the bandwidth-time product, Γ, is less than about 0.2, use of the triangular method is more beneficial than the a tan 2 method. Then, using knowledge of the actual or predetermined phase angle, ϕ, used when calculating the in-phase and quadrature components of the vector above, a phase angle error value, ϕerr,420is calculated (Step310) for the estimated phase angle, ϕest:
ϕerr=ϕest−ϕ  (12)

Applying the configured model to equation (3), equation (3) can be used with the expressions for calculating the in-phase and quadrature values mentioned above, as well as the appropriate equation for obtaining the estimated phase angle from the in-phase and quadrature components can be used with the above expression (equation (12)) to calculate the phase angle error value, ϕerr. This computational process constitutes a function to calculate (Step312) the phase angle error value, ϕerr. The function is then used to calculate the estimated phase angle, ϕest, and the corresponding phase angle error values, ϕerr, in respect of a predetermined number of “ground truth” phase angles. In this regard, the predetermined number of “ground truth” phase angles can be quantised values, for example 12-bit quantised phase angle values. The phase angle error values, ϕerr, are, in this example, translated, for example negated (−ϕerr) prior to storage in the lookup table unit130with the corresponding estimated phase angle, ϕest, values.

Referring toFIG.5, it can be seen that when plotting the estimated phase angle error values, ϕest, against the calculated phase angle error values, −ϕerr, the change in calculated phase angle error value, −ϕerr, with estimated a.phase angle error values, ϕest, is cyclic. In this regard, as the circular error is periodic, over a period of 2π in this example, the number of calculated values stored in the lookup table unit130can optionally be reduced by a factor of four. However, the skilled person should understand that if the model of the emitted optical signal is asymmetric, for example the model has differing rise and fall times and/or more generally an asymmetric envelope, an alternative to this simplification would typically need to be employed. In this regard, storage of all calculated values based on the asymmetric model would need to be stored for subsequent access owing to the lack of symmetry in the model and therefore all the calculated phase angle error value, −ϕerr, would need to be stored.

In another example (FIG.6), an amplitude calculation path134is added to the first indirect time of flight range calculation apparatus100ofFIG.1to yield a second indirect time of flight range calculation apparatus150. In this respect, and as already described above in relation toFIG.1, a phase angle calculation path136is provided, the arctan unit124, the lookup table unit130and the summation unit128being in the phase angle calculation path136. The amplitude calculation path134is disposed in parallel with the phase angle calculation path136and receives an output from the lookup table unit130. Like the arctan unit124, the first pair of I/O outputs of the plurality of digital I/O outputs125, relating to the first harmonic of the received reflected optical signal, is also coupled to an input of an amplitude calculation unit138, an output of the amplitude calculation unit138being operably coupled to a first input140of a multiplier unit142. In this example, the lookup table unit130comprises a first output144operably coupled to the second input132of the summation unit128, and a second output146operably coupled to a second input148of the multiplier unit142. The multiplier unit142also comprises an output for providing the product of a first signal and a second signal respectively applied to the two inputs thereof.

In operation (FIG.7), the second indirect time of flight range calculation apparatus150operates in a like manner to the first indirect time of flight range calculation apparatus100ofFIG.1in relation to the generation of the I/O components of the vector, V (Steps200to204), and indeed in relation to the generation of the corrected phase angle value, φcor(Steps208to210). However, in addition to using the I/O components of the vector, V, to calculate the corrected phase angle value, φcor, the I/O components of the vector, V, are used by the amplitude calculation unit138to calculate (Step214), in accordance with the indirect time of flight measurement technique, an amplitude of the vector, V, constituting an extracted (measured) amplitude, Lxmeas, in the complex plane from the fundamental frequency in-phase and quadrature values. The extracted amplitude, Lxmeas, is received by the multiplier unit142. In response to receipt of the extracted angle, φmeas, the lookup table unit130also accesses (Step208) an amplitude correction value, CLx, corresponding to the value of the extracted angle, φmeas, received and outputs the amplitude correction value, CLx, at the second output146of the lookup table unit130, which is received by the multiplier unit142at the second input148thereof and multiplied (Step216) with the extracted amplitude, Lxmeas, received at the first input140thereof and that corresponds to the amplitude correction value, CLx, retrieved by the lookup table unit130. The multiplication of the extracted amplitude, Lxmeas, with the amplitude correction value, CLx, yields a corrected measured amplitude, Lxcor, which is provided (Step218) at the output of the multiplier unit142.

The above steps (Steps202to218) are repeated (Step220) until correction of measured angles and amplitudes is no longer required.

Turning again to the lookup table unit130, in this example as explained above, the phase angle error value, −ϕerr, and the amplitude correction value, CLx, are retrieved with reference to the extracted phase angle, φmeas. In common with the phase angle error value, −ϕerr, it is possible to calculate the amplitude correction values, CLx, for the lookup table based upon the model of the optical signal (set out in equation (1) above) that is emitted by the optical source. In this regard, the in-phase and quadrature components of the vector, V, calculated above in relation to equations (4) to (7) are likewise used to calculate the amplitude correction value, CLx. As with the phase angle, more than one technique is available to calculate the amplitude of the vector, V: a first amplitude calculation technique, for example the Euclidean norm, L2, technique, and a second amplitude calculation technique, for example the so-called Taxicab norm (or Manhattan distance), L1, the latter technique lending itself better to four-phase systems where piece-wise linear segments of the in-phase (I(ϕ)) and quadrature (Q(ϕ)) components are used for phase angle extraction. For completeness, the amplitude of the vector, V, using the Euclidean norm, L2, technique is calculated as follows:
L2est=√{square root over (I(ϕ)2+Q(ϕ)2)}  (13)

However, in the present example, the amplitude of the vector, V, is calculated using the Taxicab norm, L1, technique:
L1est=|I(ϕ)|+‥Q(ϕ)|  (14)

which is already calculated in respect of the triangular phase angle calculation technique set forth above (equations (9), (10), (11)).

In a like manner to that performed above in relation to the calculation of the phase angle error value, ϕerr, an amplitude correction value, CLx, is calculated using the measurement vector, V, and in-phase and quadrature values corresponding to a notional true phase angle, ϕ:

CLx=mean⁢(Lx)Lx(15)

where x indicates the amplitude calculation technique used to calculate the amplitude of the measurement vector, V, and the amplitude corresponding to the notional true phase angle, ϕ.

Referring toFIG.8, in order to characterise the model specific to the light emitted by the optical source, as in relation to the preceding example, the slope time of a cycle of the emitted optical signal is measured (Step500), for example, once during end-of-line testing of the apparatus100during manufacture, or during use in the field in order to take into account operational parameter drifts that occur during the lifetime of the apparatus100and/or temperature effects. The slope time can be an average of a number of slope times measured over a plurality of periods of the emitted optical signal. By measuring the slope time, it is possible to obtain an indication of the bandwidth of the optical signal and the harmonics of the optical signal that lead to the circular errors.

Using the model of equation (1) above in respect of a theoretical time of flight range calculation system and as characterised (Step502) by the measured slope time (Step500) mentioned above, m measurements are made during a period of the optical signal, s(t),400. This results in m different integration periods in respect of the integrator108and a sample point is obtained every 27/m over a complete illumination period of the optical signal400. Each sample point, Pk, where k=0, . . . , m−1, is characterised over the period of the optical signal400as set out in equation (3) above.

Using equation (3) above, the sample points, Pk(ϕ), for each of k (=0, . . . , m−1) phase shifted mixing signals402,404,406,408, are calculated (Step504). The m sample points for a given period of the optical signal400are used to calculate (Step506) in-phase and quadrature vector components, in this example in respect of the first harmonic of the optical signal, using a Fourier transform.

Taking the four-phase system (m=4) used above, the first sample point value, P0,410, the second sample point value, P1,412, the third sample point value, P2,414, and the fourth sample point value, P3,416are used to calculate the in-phase, I(ϕ), and the quadrature, Q(ϕ), vector components according to equations (6) and (7) above.

From the in-phase and quadrature vector components, the estimated phase angle, ϕest(ϕ),418as well as an estimated amplitude value, Lx(ϕ) for the current phase angle value, ϕ, are calculated (Step508) using either, for example, the arctan 2 method or the triangular method, and the Taxicab norm or the Euclidean norm method.

Depending upon the value of the bandwidth-time product, Γ, described above, the a tan 2 or the triangular method can be used to estimate the phase angle based upon the configured model. Likewise, depending upon whether an odd or even number of measurements are being made, the Taxicab norm or Euclidean norm method can be used to estimate the amplitude based upon the configured model. Then, using knowledge of the actual phase angle, ϕ, used when calculating the in-phase and quadrature components of the vector, the phase angle error value, ϕerr,420is calculated (Step510) for the estimated phase angle, ϕest, in accordance with equation (12) above. Likewise, the amplitude correction value, CLx, is calculated (Step510) for the estimated phase angle, ϕest, in accordance with equation (15) above.

Applying the configured model to equation (3), equation (3) can be used with the expressions for calculating the in-phase and quadrature values mentioned above, as well as the appropriate equation for obtaining the estimated amplitudes from the in-phase and quadrature components, and the above expression (equation (15)) can be used to calculate the amplitude correction value, CLx. This computational process constitutes another function to calculate (Step512) the amplitude correction value, CLx. The function already mentioned above is then used to calculate the estimated phase angle, ϕest, and the corresponding phase angle error values, ϕerr, in respect of a predetermined number of “ground truth” phase angles. In this regard, the predetermined number of “ground truth” phase angles can be quantised values, for example 12-bit quantised phase angle values. The phase angle error values, ϕerr, are, in this example, translated, for example negated (−ϕerr) prior to storage in the lookup table unit130with the corresponding estimated phase angle, ϕest, values.

Referring toFIG.9, it can be seen that when plotting the estimated phase angle values, ϕest, against the calculated amplitude correction values, CLx, the change in calculated phase angle correction value, CLx, with estimated phase angle error values, ϕest, is also cyclic. However, as mentioned above, the skilled person should understand that if the model of the emitted optical signal is asymmetric, for example the model has differing rise and fall times and/or more generally an asymmetric envelope, an alternative to this simplification would typically need to be employed. In this regard, storage of all calculated values based on the asymmetric model would need to be stored for subsequent access owing to the lack of symmetry in the model and therefore the all calculated phase angle error value, −ϕerr, and all the calculated amplitude correction values, CLx, would need to be stored.

In another embodiment, a reference measurement can be made to calibrate the apparatus100, for example during manufacture, in order to generate the lookup table data. In this regard, a reference measurement of a substantially reference static scene can be made using a higher precision measurement mode of the apparatus100,150, employing another indirect time of flight measurement technique, than the level of precision used during normal operation of the apparatus100,150using the indirect time of flight measurement technique already described above. In this respect, the greater accuracy provided by the higher precision measurement mode is, in this example, attributable to a greater number of sample points being taken, Pk, by the higher precision indirect time of flight measurement technique, such as a greater number of measurements at equidistant phase offsets within a time frame than are taken during normal operation of the apparatus100,150. In such modes of operation, lower circular errors are expected. Optionally, the number of sample points can be odd.

Once acquired, the reference image is used in conjunction with a measurement of the same static reference scene in the normal mode of operation to calculate data points for the lookup table. In this respect, differences between amplitude values and/or phase angle values calculated using the higher precision mode and those values obtained using the normal mode of precision are used to generate the data points for the lookup table. For example, using such reference illumination data, the phase angle error values can be calculated as follows:
ϕerr(ϕref)=ϕnormal(ϕref)−ϕref(16)

where φerr(ϕref) is the phase angle value error with respect to the reference in particular the phase angle value calculated in respect of the reference measurement, φnormal(φref) is the phase angle value calculated in respect of the measurement made using the normal precision mode, and ϕrefis the phase angle value calculated using the higher precision mode. In respect of amplitude error values, this can be calculated as follows:

Lxerr(ϕref)=Lxnormal(ϕref)Lxref(ϕref)-1(17)

where Lxerr(ϕref) is the amplitude error value with respect to the reference measurement having a corresponding reference phase angle measurement value of ϕref, Lxnormal(ϕref) is the amplitude value calculated in respect of the amplitude measurement made using the normal precision mode, and LXref(ϕref) is the amplitude measurement made using the higher precision mode.

In a further example, the reference measurement can be made to calibrate the apparatus100, for example during manufacture, in order to generate the lookup table data. However, for some applications, the lookup table data can benefit from supplementary data in respect of one or more ranges where the reference scene, for example, lacks one or more objects at the one or more ranges and hence data cannot be acquired. In this regard, the previously described technique for generating error values using the configured model of the light emitted by the light source can be employed in order provide additional error value data in respect of the one or more ranges.

In this regard, a first plurality of measurement vectors is calculated using the higher precision mode as reference measurements in respect of the substantially static reference scene and a first plurality of phase angles are respectively calculated from the first plurality of measurement vectors. Likewise, using the normal precision mode, a second plurality of measurement vectors is calculated and a second plurality of phase angles is respectively calculated from the second plurality of measurement vectors.

In this and the previous examples employing the reference scene, the reference scene is substantially static, or expressed differently quasi-static, between the measurement using the higher precision mode and the normal precision mode.

The apparatus100is capable of measuring ranges over a span of possible ranges (or a range of ranges) limited by the aliasing associated with the modulation frequency of the light source used. As explained above, the first plurality of the phase angles and the second plurality of phase angles are used to calculate a plurality of phase angle errors, constituting use of reference illumination data, the plurality of phase angle errors providing corrections in respect of a portion of, but not all, the span of measurable ranges. As also explained above, this can be on account of the reference scene lacking one or more objects at one or more ranges covered by the span of measurable ranges. A data set of phase angle error values associated with the span of measurable ranges is therefore incomplete. However, one or more calculations of measurement vectors corresponding to range values, outside the portion of the span of measurable ranges, are performed using the previously described technique for calculating phase angle error values using the configured model of the light emitted by the light source. The one or more calculated phase angle error values using this latter technique contribute to completion of the data set of phase angle error values.

Optionally, any suitable interpolation technique can be employed with the above-described techniques for generating the data set of phase angle error values. In this regard, the data set of phase angle error values can be completed using the one or more phase angle error values calculated using the model of the transient of the light emitted by the light source, the plurality of phase angle error values calculated using the reference scene and an interpolation technique.

In this example, and other examples set forth herein, when this measurement technique is employed (and preceding measurement techniques) in respect of an array of pixels, a plurality of amplitude error values and/or phase angle error values can be calculated for populating the data store in respect of the lookup table. However, the number of error values calculated depends upon the content of the static scene and so, in some examples, missing data points are calculated using known techniques, for example statistical techniques, such as for fitting available data points to complete a curve representing calculated error values stored in the lookup table.

The skilled person should appreciate that the above-described implementations are merely examples of the various implementations that are conceivable within the scope of the appended claims. Indeed, it should be appreciated that, for example, the technique described above employing the reference measurements can be used in conjunction with the technique described above where parameters of the emitted light are calculated during normal operation of the apparatus100,150.

It should be appreciated that references herein to “light”, other than where expressly stated otherwise, are intended as references relating to the optical range of the electromagnetic spectrum, for example, between about 350 nm and about 2000 nm, such as between about 550 nm and about 1400 nm or between about 600 nm and about 1000 nm.

Alternative embodiments of the invention can be implemented as a computer program product for use with a computer system, the computer program product being, for example, a series of computer instructions stored on a tangible data recording medium, such as a diskette, CD-ROM, ROM, or fixed disk, or embodied in a computer data signal, the signal being transmitted over a tangible medium or a wireless medium, for example, microwave or infrared. The series of computer instructions can constitute all or part of the functionality described above, and can also be stored in any memory device, volatile or non-volatile, such as semiconductor, magnetic, optical or other memory device.