WO2021035697A1 - Time code demodulation processing circuit and method - Google Patents

Time code demodulation processing circuit and method Download PDF

Info

Publication number
WO2021035697A1
WO2021035697A1 PCT/CN2019/103740 CN2019103740W WO2021035697A1 WO 2021035697 A1 WO2021035697 A1 WO 2021035697A1 CN 2019103740 W CN2019103740 W CN 2019103740W WO 2021035697 A1 WO2021035697 A1 WO 2021035697A1
Authority
WO
WIPO (PCT)
Prior art keywords
time
pulse
time code
histogram
memory
Prior art date
Application number
PCT/CN2019/103740
Other languages
French (fr)
Chinese (zh)
Inventor
王瑞
何燃
朱亮
闫敏
Original Assignee
深圳奥锐达科技有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳奥锐达科技有限公司 filed Critical 深圳奥锐达科技有限公司
Priority to PCT/CN2019/103740 priority Critical patent/WO2021035697A1/en
Publication of WO2021035697A1 publication Critical patent/WO2021035697A1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/89Lidar systems specially adapted for specific applications for mapping or imaging

Definitions

  • the present invention relates to the field of computer technology, in particular to a time code demodulation processing circuit and method for time code time flight distance measurement.
  • the Time of Flight (TOF) method calculates the distance of an object by measuring the flight time of the beam in space. Because of its high accuracy and large measurement range, it is widely used in consumer electronics, unmanned aerial vehicles, AR/ VR and other fields.
  • Distance measurement systems based on the time-of-flight principle, such as time-of-flight depth cameras and lidars, often include a light source emitting end and a receiving end.
  • the light source emits a beam to the target space to provide illumination, and the receiving end receives the beam reflected by the target. Calculate the distance of the object by calculating the time required for the beam to be reflected and received.
  • the transmitter emits a pulsed beam to the target.
  • the pulsed beam is emitted at a certain frequency.
  • the time interval between adjacent pulses (pulse period) must not be less than the maximum flight time corresponding to the maximum measurement distance of the system. In order to avoid the situation that the signal cannot be recognized. Therefore, the frame rate of the system is often limited by the maximum measurement distance. When the measurement distance of the system reaches 100 meters or more, the frame rate is very low, and it is difficult to meet the high frame rate requirements of some practical applications.
  • the present application provides a time code demodulation processing circuit and a demodulation processing method for time code time flight distance measurement.
  • a time code demodulation processing circuit connected to the pixel unit, includes:
  • a sampling circuit configured to sample the photon events of the reflected light beam detected by the pixel unit to form a sampling signal
  • a histogram memory configured to store a histogram to be drawn containing multiple histogram time units
  • a time code sequence control memory configured to store the correspondence between the pre-written sampling signal and the histogram time unit that needs to be turned on;
  • the time code sequence controller is configured to control the corresponding relationship stored in the memory according to the time code sequence to control the sampling signal to enter the corresponding histogram time unit for superimposition to draw the histogram.
  • the processing circuit is configured to determine the time corresponding to the pulse waveform in the histogram; and determine the flight time according to the time corresponding to the pulse waveform.
  • the time code is a regular time code [ ⁇ t, 2 ⁇ t, 3 ⁇ t,..., (n-1) ⁇ t], where ⁇ t is the pulse period, and n is the number of pulses included in the pulse train.
  • a time code demodulation processing method including the following steps:
  • the time code sequence controller controls the corresponding relationship stored in the memory according to the time code sequence to control the sampling signal to enter the histogram time unit in the histogram memory for superimposition to draw a histogram.
  • the method further includes the following steps:
  • the flight time is determined according to the time corresponding to the pulse waveform.
  • the time code is a regular time code [ ⁇ t, 2 ⁇ t, 3 ⁇ t,..., (n-1) ⁇ t], where ⁇ t is the pulse period, and n is the number of pulses included in the pulse train.
  • the present invention provides a time code demodulation processing circuit and a demodulation processing method for time code time flight distance measurement.
  • the present invention can allow a transmitter to transmit pulses with a pulse period that is much lower than the maximum measurement range corresponding to the maximum flight time. String, which can greatly increase the frame rate.
  • a preferred embodiment of the present invention also provides a time code demodulation processing circuit and a demodulation processing method, which are used to implement anti-interference time code time flight distance measurement.
  • Fig. 1 is a schematic diagram of a time-of-flight distance measurement system according to an embodiment of the present invention.
  • Fig. 2(a) is a schematic diagram showing that the corresponding time code is a regular time code according to an embodiment of the present invention, and the transmitter transmits a pulse train containing n pulses with a pulse period ⁇ t.
  • Fig. 2(b) is a schematic diagram showing that the corresponding time code is a regular time code according to an embodiment of the present invention, and the collector successively receives the photons in the pulse train reflected by the target after time t.
  • Fig. 3(a) is a schematic diagram of a frame period single-photon counting sequence string of regular time encoding according to an embodiment of the present invention.
  • Fig. 3(b) is a histogram formed after superimposing regular time codes according to an embodiment of the present invention.
  • Fig. 4(a) is a schematic diagram of the corresponding time code being a random time code according to an embodiment of the present invention, and the transmitter transmits a pulse train containing n pulses in a random time interval.
  • Fig. 4(b) is a schematic diagram showing that the corresponding time code is a random time code according to an embodiment of the present invention, and the collector successively receives the photons in the pulse train reflected by the target after time t.
  • Fig. 5(a) is a schematic diagram of a frame period single photon counting sequence string of random time encoding according to an embodiment of the present invention.
  • Fig. 5(b) is a histogram formed after random time code superposition according to an embodiment of the present invention.
  • Fig. 6(a) is a schematic diagram showing that the corresponding time code is a double random time code according to an embodiment of the present invention, and the transmitter transmits N*n pulses in a double random time interval.
  • Fig. 6(b) is a schematic diagram showing that the corresponding time code is a double random time code according to an embodiment of the present invention, and the collector successively receives photons in the pulse train reflected by the target after time t.
  • Fig. 7(a) is a schematic diagram of a single-photon counting sequence of N pulse group periods with double random time coding according to an embodiment of the present invention.
  • Fig. 7(b) is a histogram formed after double random time coding is superimposed according to an embodiment of the present invention.
  • Fig. 8 is a schematic diagram of a time code demodulation processing circuit according to an embodiment of the present invention.
  • Fig. 9 is a schematic diagram of another time code demodulation processing circuit according to an embodiment of the present invention.
  • connection can be used for fixing or circuit connection.
  • first and second are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Therefore, the features defined with “first” and “second” may explicitly or implicitly include one or more of these features.
  • “plurality” means two or more, unless otherwise specifically defined.
  • the invention provides a time-flight distance measuring system, which has stronger anti-ambient light ability and higher resolution.
  • Fig. 1 is a schematic diagram of a time-of-flight distance measurement system according to an embodiment of the present invention.
  • the distance measurement system 10 includes a transmitter 11, a collector 12, and a processing circuit 13.
  • the transmitter 11 provides a emitted light beam 30 to the target space to illuminate an object 20 in the space. At least part of the emitted light beam 30 is reflected by the object 20 to form a reflected light beam. 40. At least part of the light signals (photons) of the reflected light beam 40 are collected by the collector 12.
  • the processing circuit 13 is connected to the transmitter 11 and the collector 12 respectively, and the trigger signals of the transmitter 11 and the collector 12 are synchronized to calculate the light beam from the transmitter
  • the time required for 11 to be emitted and received by the collector 12, that is, the flight time t between the emitted light beam 30 and the reflected light beam 40, further, the distance D of the corresponding point on the object can be calculated by the following formula:
  • c is the speed of light.
  • the transmitter 11 includes a light source 111 and an optical element 112.
  • the light source 111 can be a light source such as a light emitting diode (LED), an edge emitting laser (EEL), a vertical cavity surface emitting laser (VCSEL), etc., or an array light source composed of multiple light sources.
  • the array light source 111 is a monolithic semiconductor
  • a plurality of VCSEL light sources are generated on the substrate to form a VCSEL array light source chip.
  • the light beam emitted by the light source 111 may be visible light, infrared light, ultraviolet light, or the like.
  • the light source 111 emits light beams outward under the control of the processing circuit 13.
  • the light source 111 emits a pulsed light beam at a certain frequency (pulse period) under the control of the processing circuit 13, which can be used in the direct time flight method ( In Direct TOF measurement, the frequency is set according to the measurement distance, for example, it can be set to 1MHz ⁇ 100MHz, and the measurement distance is from several meters to several hundred meters. It is understandable that it may be a part of the processing circuit 13 or a sub-circuit independent of the processing circuit 13 to control the light source 111 to emit related light beams, such as a pulse signal generator.
  • the optical element 112 receives the pulsed beam from the light source 111, and optically modulates the pulsed beam, such as diffraction, refraction, reflection, etc., and then emits the modulated beam into space, such as a focused beam, a flood beam, and a structured light beam. Wait.
  • the optical element 112 may be a lens, a diffractive optical element, a mask, a mirror, etc., or may be a MEMS galvanometer.
  • the processing circuit 13 can be an independent dedicated circuit, such as a dedicated SOC chip, FPGA chip, ASIC chip, etc., or a general-purpose processor.
  • a dedicated SOC chip such as a dedicated SOC chip, FPGA chip, ASIC chip, etc.
  • a general-purpose processor such as a general-purpose processor.
  • the processor in the terminal can be used as at least a part of the processing circuit 13.
  • the collector 12 includes a pixel unit 121 and an imaging lens unit 122.
  • the imaging lens unit 122 receives and guides at least part of the modulated light beam reflected by the object to the pixel unit 121.
  • the pixel unit 121 is composed of a single photon avalanche photodiode (SPAD), or an array pixel unit composed of multiple SPAD pixels.
  • the array size of the array pixel unit represents the resolution of the depth camera, such as 320x240 Wait.
  • SPAD can respond to the incident single photon to realize the detection of single photon. Because of its high sensitivity and fast response speed, it can realize long-distance and high-precision measurement.
  • SPAD can count single photons, such as the use of time-correlated single photon counting (TCSPC) to realize the collection of weak light signals and the calculation of flight time .
  • TCSPC time-correlated single photon counting
  • connected to the pixel unit 121 also includes a readout circuit composed of one or more of a signal amplifier, a time-to-digital converter (TDC), an analog-to-digital converter (ADC) and other devices (not shown in the figure).
  • TDC time-to-digital converter
  • ADC analog-to-digital converter
  • these circuits can be integrated with the pixels, and they can also be part of the processing circuit 13. For ease of description, the processing circuit 13 will be collectively regarded.
  • the distance measurement system 10 may also include a color camera, an infrared camera, an IMU, and other devices.
  • the combination of these devices can achieve richer functions, such as 3D texture modeling, infrared face recognition, SLAM and other functions.
  • the transmitter 11 and the collector 12 can also be arranged in a coaxial form, that is, the two are realized by optical devices with reflection and transmission functions, such as a half mirror.
  • a single photon incident on the SPAD pixel will cause an avalanche
  • the SPAD will output an avalanche signal to the TDC circuit
  • the TDC circuit will detect the time interval between the photon emission from the emitter 11 and the avalanche.
  • the time interval is passed through a time-correlated single photon counting (TCSPC) circuit for histogram statistics to recover the waveform of the entire pulse signal, so as to achieve accurate flight time detection, and finally calculate the distance information of the object according to the flight time.
  • TCSPC time-correlated single photon counting
  • the maximum measurement range of the distance measurement system is Dmax
  • the corresponding maximum flight time is Generally, ⁇ t ⁇ t 1 is required to avoid signal aliasing, where c is the speed of light.
  • the time (frame period) to realize a single distance measurement will not be less than n*t 1 .
  • the maximum measurement range is 150m
  • the corresponding pulse period ⁇ t 1us
  • the frame rate will be less than 10fps. It can be seen that the maximum measurement range in the TCSPC method limits the pulse period, which further affects the frame rate of distance measurement.
  • the system and method for time-coded time-of-flight measurement provided by the present invention can be implemented by several different time-coded pulse modulation and demodulation schemes, which are described in detail as follows.
  • FIGs 2(a) and 2(b) are schematic diagrams of time-coded pulse modulation according to an embodiment of the present invention.
  • the transmitter 11 will be much smaller than the maximum flight time corresponding to the maximum measurement range Dmax
  • the pulse period ⁇ t transmits a pulse train, and the pulse train contains n pulses, as shown in Figure 2(a). If the measured target is at D and the corresponding flight time is t, the collector 12 will successively receive the photons in the pulse train reflected by the target after the time t, as shown in Fig. 2(b).
  • the frame period T is set to T ⁇ (n-1) ⁇ t+t 1 , that is, when the target is at the maximum measurement distance, the last in the pulse train
  • the time required for a pulse to be transmitted by the transmitter 11 until received by the collector 12 is exactly t 1 , which ensures that all pulse trains in a single frame period will be received and there will be no adjacent frame periods
  • the waveform of each pulse in the transmitted pulse train is often not as regular as the square wave shown in the figure, so the figure is only used as an example.
  • the received pulse train is only an example, and what the collector 12 receives is actually a photon number sequence that can reflect the received pulse train, which will be described in detail later.
  • the present invention provides a new time-coded continuous single-photon counting demodulation method.
  • Figures 3(a) and 3(b) are time-coded continuous single-photon counting demodulation methods according to an embodiment of the present invention. While the transmitter 11 emits a pulse train containing n pulses, the collector 12 will be activated to collect part of the photons in the pulse reflected from the target, and the processing circuit 13 will process and record the corresponding time of each incident photon, such as Use the TDC circuit to collect the incident photon time, and then use the processing circuit to identify and record the photon time, and finally form the frame period single photon counting time series as shown in Figure 3(a). Each square of the time series is It is the minimum time unit determined by the TDC time resolution.
  • the time sequence string can be acquired by any appropriate method and stored in the memory, such as continuous acquisition by a TDC with a higher bandwidth, or acquisition by a TDC with a lower bandwidth through multiple acquisitions and splicing.
  • the frame period single photon counting time series can also be collected by other types of circuits.
  • the sampling circuit can respond to the SPAD avalanche signal to directly obtain the time series. Therefore, the frame period single-photon counting sequence can also be referred to as the frame period single-photon sampling sequence.
  • the collected frame period single photon counting time series is stored in the memory, and then the histogram circuit in the processor 13 draws the histogram based on the time series, which is similar to the traditional histogram drawing in TCSPC. The principle is different.
  • the histogram in this embodiment will adopt a time-coded continuous single-photon count superposition method.
  • the minimum time unit (minimum storage unit bin) of the histogram is the same as the minimum time unit of the time series. For the time unit to be drawn, superimposition is performed according to the time code when the burst is transmitted, such as sequentially Overlay.
  • the pulse train emits a total of n pulses with a pulse period ⁇ t, and the corresponding time code is a regular time code, namely [ ⁇ t, 2 ⁇ t, 3 ⁇ t,..., (n-1) ⁇ t].
  • the superposition based on the time code refers to the current
  • the time unit to be drawn is the starting unit, and the photon counts in all time units that are separated from the starting unit by ⁇ t, 2 ⁇ t, 3 ⁇ t,..., (n-1) ⁇ t in the sequence string and the starting unit
  • the photon count values are sequentially superimposed, and the superimposed photon count is used as the value of the time unit in the histogram.
  • the superimposition of the first time unit of the histogram as shown by the arrow in Figure 3(a).
  • the histogram formed by time-coding and superimposing multiple time units is shown in Figure 3(b).
  • the collector 12 has the highest probability of collecting a photon counting event only when each pulse in the pulse train emitted by the transmitter 11 is reflected back to the collector 12 during the entire frame period.
  • the probability of collecting photons at the moment of receiving the pulse train shown in Figure 2(b) is the highest, which means that the photon count value on the corresponding time unit in the time series in Figure 3(a) is The probability of "1" is significantly higher than other time units.
  • the time resolution of TDC is smaller than the pulse width, that is, the width of each time unit of the time series is smaller than the pulse width.
  • the obtained histogram will show much Each time unit has a higher value and forms a waveform diagram reflecting the pulse shape. In this case, the time corresponding to the highest point of the waveform diagram can be used as the flight time to be measured.
  • the photon acquisition time does not need to cover the entire frame period, but only needs to be within the time of [(n-1) ⁇ t+t 1 ] Acquisition, that is, the length of the frame period single photon counting sequence string is [(n-1) ⁇ t+t 1 ], and data processing can be performed during the rest of the frame period, such as histogram calculation, flight time calculation, and distance calculation Wait.
  • the size of the smallest time unit may be an integer multiple of each time unit in the frame period single-photon count sequence string, such as 2 times, thus Can reduce the amount of calculation and memory required for histogram drawing.
  • the interval between adjacent time units can be greater than 1, for example, time coding superimposition is performed every other time unit, which can also reduce The amount of calculation and memory required for drawing.
  • the total time length of the histogram is [(n-1) ⁇ t+t 1 ], when the time unit after time t 1 is superimposed, there will be no more photon counts in the time unit in the time series. Values are superimposed, and the time unit involved in the superposition will gradually decrease.
  • the preferred embodiment does not need to be drawn with the same frame cycle length histogram, but only needs to draw from zero to the period histogram of t 1, since only the target within the maximum measurement range, The first wave crest must appear, and the flight time t can be determined with the first wave crest.
  • the pulse waveform in the histogram when searching for the pulse waveform in the histogram, it can be searched by setting a threshold value. Values above the threshold value are retained, and values below the threshold value are regarded as noise.
  • the drawing order of the histogram can also be changed, that is, it is not necessary to start from 0 to draw time unit by time unit.
  • the dichotomy can be used to draw from the middle time.
  • the first pulse waveform Once the first pulse waveform is found, continue drawing in the direction of the earlier time unit until no waveform is found in the earlier time period when the current pulse waveform is separated by ⁇ t. At this time, it is considered that the time corresponding to the current pulse waveform is the flight time of the target.
  • any suitable search algorithm that can locate the first pulse waveform is suitable for this scheme.
  • the total time length of the histogram will be adaptively changed based on the execution process of the search algorithm.
  • the calculation will stop, and then the first pulse waveform can be used for The wave crest position is determined to obtain the flight time t.
  • the total time length of the adaptively changed histogram will not exceed the maximum flight time t 1 , so that the amount of calculation and memory consumption can be greatly reduced.
  • the process of drawing a frame period single-photon count time series string and drawing a histogram based on the time series string can also be combined into one, that is, the histogram can be drawn directly based on the photon count, or of course.
  • the two steps to more than three steps.
  • the implementation principles are the same, but the implementation forms are different, and the corresponding hardware circuits will also be different. For example, the detailed description of the combination of two will be described in the specific processing circuit design later.
  • the realization form of one can reduce the storage capacity. Therefore, any realization form that utilizes this principle falls within the protection scope of the present invention.
  • FIG. 4(a) and 4(b) are schematic diagrams of random time-coded pulse modulation according to an embodiment of the present invention.
  • the pulses in this embodiment will be transmitted at preset random (pseudo-random) intervals, that is, the pulses are coded with random time [ ⁇ t 1 , ⁇ t 1 + ⁇ t 2 , ⁇ t 1 + ⁇ t 2 + ⁇ t 3 ,..., ⁇ t 1 + ⁇ t 2 ...+ ⁇ t (n-1) ], ⁇ t i represents the i-th pulse and the (i+1)th pulse
  • the time interval of each pulse, i 1, 2,...(n-1), as shown in Figure 4(a).
  • the collector 12 will successively receive the photons in the pulse train reflected by the target after the time t, as shown in Fig. 4(b).
  • the frame period T is set to That is, when the most target is located at the maximum measurement distance, the time required for the last pulse in the pulse train from the beginning of reflection by the transmitter 11 to the end of being received by the collector 12 is exactly t 1 , which ensures that it is in a single frame All the bursts in the period will be received and will not be affected by the pulses in the adjacent frame period.
  • Figures 5(a) and 5(b) are random time coding continuous single photon counting demodulation methods according to an embodiment of the present invention.
  • the collector 12 will be activated to collect some of the photons in the pulse reflected from the target, and the processing circuit 13 will process and record the corresponding time of each incident photon, and finally form the frame period single photon count time series as shown in Figure 5(a).
  • the time series records the photon count value in each time unit, and the time series
  • the total time length of the string is the frame period.
  • the collected frame period single photon counting time series is stored in the memory, and then the histogram circuit in the processor 13 draws a histogram based on the time series, which is similar to Figure 3(a) and Figure 3. Similar to the embodiment shown in (b), the histogram in this embodiment will also adopt a time-coded continuous single-photon count superposition method. The difference is that the time code is a random time code. For the time unit to be drawn, it will be coded according to the time when the burst is transmitted [ ⁇ t 1 , ⁇ t 1 + ⁇ t 2 , ⁇ t 1 + ⁇ t 2 + ⁇ t 3 ,...
  • the current time unit to be drawn will be the starting unit, and the subsequent sequence in the sequence will be separated from the starting unit by ⁇ t 1 , ⁇ t 1 + ⁇ t 2 , ⁇ t 1 + ⁇ t 2 + ⁇ t 3 ,..., ⁇ t 1 + ⁇ t 2 ...
  • the photon count value in all time units of + ⁇ t (n-1) is sequentially superimposed with the photon count value in the starting unit, and the superimposed photon count is used as the value of the time unit in the histogram.
  • the histogram formed by time-coding and superimposing multiple time units is shown in Figure 5(b).
  • the size of the smallest time unit may be an integer multiple of the frame period single-photon count sequence string, such as 2 times, thereby reducing the histogram drawing The amount of calculation and memory required at the time.
  • the interval between adjacent time units can be greater than 1, for example, time coding superimposition is performed every other time unit, which can also reduce The amount of calculation and memory required for drawing.
  • the total time length of the histogram is [(n-1) ⁇ t+t 1 ], when the time unit after time t 1 is superimposed, there will be no more photon counts in the time unit in the time series. Values are superimposed, and the time unit involved in the superposition will gradually decrease.
  • the preferred embodiment does not need to be drawn with the same frame cycle length histogram, but only needs to draw from zero to the period histogram of t 1, since only the target within the maximum measurement range, The first wave crest must appear, and the flight time t can be determined with the first wave crest.
  • the pulse waveform in the histogram when searching for the pulse waveform in the histogram, it can be searched by setting a threshold value. Values above the threshold value are retained, and values below the threshold value are regarded as noise.
  • the drawing order of the histogram can also be changed, that is, it is not necessary to start from 0 to draw time unit by time unit.
  • the dichotomy can be used to draw from the intermediate time, so that the pulse waveform can be quickly found.
  • the use of any suitable search algorithm that can locate the pulse waveform is suitable for this solution.
  • the total time length of the histogram will be adaptively changed based on the execution process of the search algorithm. Once the pulse waveform is detected, the calculation will stop, and then the pulse waveform can be used to determine the peak position to obtain the flight time t .
  • the process of drawing a frame period single-photon count timing string and drawing a histogram based on the timing string can also be combined into one, that is, the histogram can be drawn directly based on the photon count, or of course the two
  • the two steps are expanded into more than three steps.
  • the implementation principles are the same, but the implementation forms are different, and the corresponding hardware circuits will also be different. For example, the detailed description will be combined into one in the specific processing circuit design later.
  • the realization form of can reduce the storage capacity, so any realization form that uses this principle is within the protection scope of the present invention.
  • Double random time code pulse modulation and demodulation method Double random time code pulse modulation and demodulation method
  • FIG. 6(a) and 6(b) are schematic diagrams of dual random time-coded pulse modulation according to an embodiment of the present invention.
  • the collector 12 will successively receive the photons in the pulse train reflected by the target after the time t, as shown in Fig. 6(b).
  • the frame period T is set to That is, when the most target is located at the maximum measurement distance, the time required for the last pulse in the pulse train from the beginning of reflection by the transmitter 11 to the end of being received by the collector 12 is exactly t 1 , which ensures that it is in a single frame All the bursts in the period will be received and will not be affected by the pulses in the adjacent frame period.
  • Fig. 7(a) and Fig. 7(b) are a double random time coding continuous single photon counting demodulation method according to an embodiment of the present invention.
  • the difference from the embodiment shown in Fig. 5(a) and Fig. 5(b) is that while the transmitter 11 transmits N*n pulses, the collector 12 does not collect during the entire pulse train transmission time period.
  • the collector 12 will be activated to collect part of the photons in the pulse reflected from the target only during the time that each pulse group is emitted (considering the photon return time difference, it can be appropriately greater than the time period of the pulse group), the processing circuit 13 The corresponding time of each incident photon incidence will be processed and recorded, and finally a single photon counting time series of N pulse group cycles as shown in Figure 7(a) will be formed, and each time unit of the time series will record the photon count value. , The total time length of the sequence string is the time period corresponding to the pulse group.
  • the collected N pulse group period single photon counting time series are stored in the memory, and then the histogram circuit in the processor 13 draws a histogram based on the time series.
  • the method of superimposing and fusing the traditional TCSPC with the time code in the embodiment shown in Figs. 3 and 5 is actually used. That is to say, the drawing is performed in two steps (the two steps are not sequential, and can also be crossed).
  • the first step is similar to the traditional TCSPC method, that is, the photon counting in the corresponding time unit between the N pulse group period single photon counting sequence series Superimpose, as shown by the upward plus arrow in Figure 7(a); in the second step, the total sequence obtained in the first step is coded according to the first time of pulse emission in the pulse group [ ⁇ t 1 , ⁇ t 1 + ⁇ t 2 , ⁇ t 1 + ⁇ t 2 + ⁇ t 3 ,..., ⁇ t 1 + ⁇ t 2 ...+ ⁇ t (n-1) ] superimpose, that is, take the current time unit to be superimposed as the starting unit, and combine the subsequent ones in the sequence string with this
  • the starting unit is separated by ⁇ t 1 , ⁇ t 1 + ⁇ t 2 , ⁇ t 1 + ⁇ t 2 + ⁇ t 3 ,..., ⁇ t 1 + ⁇ t 2 ...+ ⁇ t (n-1)
  • the photon count value and the starting unit in all time units The photon count values in are sequentially superimposed, and
  • time code superposition can also be performed first and then TCSPC, that is, the single photon counting sequence of each pulse group period is superimposed according to the first time code, as shown in the horizontal plus sign in Figure 7(a) As shown; and then superimpose the corresponding time units in the N superimposed time series, as shown by the arrow plus sign in Figure 7 (a). Finally, the histogram shown in Figure 7(b) will be obtained.
  • the size of the minimum time unit of the histogram can be an integer multiple of the minimum time unit of the time series.
  • the interval between two adjacent time units of the histogram can also be greater than 1, for example, time code superimposition is performed every other time unit, which can also reduce the amount of calculation and memory required for rendering.
  • the time length of the histogram can be adjusted adaptively and does not need to be the same as the period length of the pulse group. Generally, only need to draw the histogram from 0 to t 1 in the time period, because only when there is a target in the maximum measurement range, the first wave crest will definitely appear, and the first wave crest can be determined Flight time t is out.
  • the pulse waveform in the histogram when searching for the pulse waveform in the histogram, it can be searched by setting a threshold value. Values above the threshold value are retained, and values below the threshold value are regarded as noise.
  • the drawing order of the histogram can also be changed, that is, it is not necessary to start from 0 to draw time unit by time unit.
  • the dichotomy can be used to draw from the intermediate time, so that the pulse waveform can be quickly found.
  • the use of any suitable search algorithm that can locate the pulse waveform is suitable for this solution.
  • the total time length of the histogram will be adaptively changed based on the execution process of the search algorithm. Once the pulse waveform is detected, the calculation will stop, and then the pulse waveform can be used to determine the peak position to obtain the flight time t .
  • the present invention also provides a time code demodulation processing circuit and processing method.
  • Fig. 8 is a time code demodulation processing circuit according to an embodiment of the present invention.
  • the time code demodulation processing circuit 82 is connected to the pixel unit 81.
  • the pixel unit 81 may be a SPAD pixel for detecting the photons of the reflected light beam.
  • the processing circuit 82 detects The arrival of each photon event is processed to calculate the flight time of the photon back and forth.
  • the time code demodulation processing circuit 82 of this embodiment includes a sampling circuit 821, a timing string memory 822, a read address register 823, a time code sequence memory 824, an addition register 825, a histogram time unit counter (referred to as a bin counter) 826, and a histogram Figure memory 827.
  • the pixel unit 81 After the pixel unit 81 collects the photon signal of the reflected light beam, it will output a photon detection event represented by the pulse signal.
  • the sampling circuit 821 will sample the pulse signal under the control of the clock signal (for example, 1 GHz) sent by the clock generator.
  • a single-photon counting timing string is formed in the frame period. It can be understood that the sampling circuit 821 may also include a TDC circuit as described above, as long as it can generate a single-photon counting timing sequence from a photon counting event.
  • the sampling time interval of the sampling circuit 821 is generally not less than the pulse width, so as to avoid the situation that photons cannot be sampled at a time corresponding to a pulse width.
  • the sampling circuit 821 when the pixel unit 81 detects a photon, the sampling circuit 821 will output a digital signal 1. When no photon is detected, the sampling circuit 821 will output a digital signal 0. Therefore, within a period of time, the sampling circuit 821 will output a digital signal of 0. A sequence of 0 and 1 is output, and the sequence formed in one frame period is the single photon counting sequence of the frame period.
  • the frame period single photon counting time series sampled by the sampling circuit 821 will be sequentially stored in the time series memory 822 according to the memory unit address.
  • the memory size of the time series memory 822 is different according to the sampling time, for example, when sampling The duration is 1000ns, the sampling interval is 1ns, and the corresponding memory is 1000bits.
  • the time code sequence memory 824 is used to store pre-written time code sequences, such as the regular time code sequence shown in FIG. 2(a) or the random time code sequence shown in FIG. 4(a).
  • the read address register 823 is used to store the address of the memory unit in the time series memory 822 that needs to be read out. Under the control of the clock signal, the time series memory 822 will read the data at the corresponding address according to the address in the read address register 823 to Addition register 825. Subsequently, the read address register 823 will automatically jump to the next address that needs to be read. For example, if the current address is x, it will automatically jump to the next address that needs to be read based on the time code sequence stored in the time code sequence memory 824. The address of: x+ ⁇ t i , where ⁇ t i is the time interval sequence value stored in the time code sequence memory 824.
  • the addition register 825 is used to perform addition calculations, and add the data currently stored in it with the data in the corresponding storage unit transferred from the time sequence memory 822. When all the sequences in the time code sequence memory 824 have been read, the The addition register 825 completes the calculation of a histogram time unit bin, and then writes the value into the histogram memory 827 to draw the histogram.
  • the bin counter 826 is used to store the number of the currently drawn bin. When all the sequences in the time code sequence memory 824 are read, that is, after the current bin drawing is finished, pulses are sent to the bin counter 826 and the addition register 825, and the bin counter 826 The number is automatically +1 to start the drawing of the next bin, the value of this bin is written into the histogram memory 827, and the addition register 825 is cleared to 0 at the same time.
  • the processing circuit 82 may further calculate the flight time based on the histogram.
  • the sampling of the data and the drawing of the histogram are performed sequentially in time sequence, that is, the sampling of the frame period single photon counting time series is first saved in the time series memory 822, and then the time series is executed. Data processing to obtain histogram.
  • a multi-timing string memory 822 may be used, for example, a dual timing string memory 822 is used, and when one frame of data is sampled, it is stored in the first timing string memory 822. Subsequently, when the histogram is drawn using the time series in the first time series memory 822, the sampling circuit 821 works synchronously, and saves the sampled time series in the second time series memory 822.
  • the sampling circuit 821 saves the sampled time series in the first time series memory 822. In this way, the sampling time can be greatly increased, and the frame rate can be increased.
  • the present invention also provides a time code demodulation method, which includes the following steps:
  • the sampling circuit 821 samples the photon events of the reflected light beam detected by the pixel unit 81 to form a frame period single photon counting time series and save it in the time series memory 822;
  • the read address register 823 read the data at the corresponding address from the timing string memory 822 to the addition register 825;
  • the addition register 825 executes the addition operation between the data currently saved and the data read out by the timing string memory 822, and transmits the operation result to the corresponding bin of the histogram memory 827 to draw a histogram;
  • the number of the previously drawn bin is stored in the bin counter 826, and the number is automatically increased by 1 when the current bin drawing is completed.
  • the embodiment shown in FIG. 8 has higher requirements on the memory.
  • the processing circuit is monolithically integrated, the capacity of the on-chip memory will be higher. It is not conducive to mass production of chips.
  • the present invention provides a demodulation method for real-time histogram drawing.
  • FIG 9 is a real-time time code demodulation processing circuit according to an embodiment of the present invention.
  • the time code demodulation processing circuit 92 is connected to the pixel unit 91.
  • the pixel unit 91 may be a SPAD pixel for detecting photons of the reflected light beam.
  • the processing circuit 92 Each detected photon event is processed to calculate the round-trip flight time of the photon.
  • the time unit that is, the time point of the corresponding photon event
  • the sequence string required for each bin to perform the superposition calculation is based on time
  • the code is known. Based on this, the corresponding relationship between each bin address and the time unit address in the time sequence that needs to be superimposed can be saved in advance.
  • the photon count value output by the sampling circuit 921 in real time will be based on the corresponding relationship, and the current The bin corresponding to the photon count value, and then the photon count value is gated to enter the corresponding bin for superposition.
  • the time code demodulation processing circuit 92 of this embodiment includes a sampling circuit 921, a time code sequence controller 922, a time code sequence control memory 923, and a histogram memory 924.
  • the sampling circuit 921 samples the pulse signal under the control of the clock signal (for example, 1 GHz) sent by the clock generator to output the sampling signal ( That is, the photon count value is 0 or 1), the sampling signal is sent to the time code sequence controller 922, and the time code sequence controller 922 will control the corresponding relationship stored in the memory 923 according to the time code sequence to control the sampling signal to enter the histogram memory 924
  • the sampling signal can be selected by means of three-state gates, transmission gates, etc. to superimpose in the corresponding bins.
  • the time code sequence control memory 923 saves the corresponding relationship between the sampling signal and the bin that needs to be turned on. For example, it contains a storage space of n x j, where n is the number of time bins, and j is the number of bins in the pixel unit. The number of bits of the measurement sequence is the same. For each clock function, the corresponding n bits of data are transmitted to the time code sequence controller 922 to control the gating of the corresponding sampling signal.
  • the present invention also provides a time code demodulation method, which includes the following steps:
  • the time code sequence controller 922 controls the corresponding relationship stored in the memory 923 according to the time code sequence to control the sampling signal to enter the corresponding bin in the histogram memory 924 for superimposition to draw a histogram.
  • processing circuits shown in Figs. 8 and 9 are not only applicable to the demodulation methods in the embodiments shown in Figs. 3(a), 3(b) and 5(a), 5(b), but are also applicable The demodulation method in the embodiment shown in Figs. 7(a) and 7(b).
  • each module is described independently. In practical applications, multiple modules can also be combined, such as timing string memory, time code memory, etc. It is the same memory. Therefore, equivalent alternatives through merging, splitting, etc. should also be regarded as the protection scope of the present invention.

Abstract

A time code demodulation processing circuit and method. The circuit comprises: a sampling circuit for sampling a photon event of a reflected light beam detected by a pixel unit so as to form a sampling signal; a histogram memory for storing a histogram to be drawn including a plurality of histogram time units; a time code sequence control memory for storing a correlation between pre-written sampling signals and histogram time units needing to be started; and a time code sequence controller for controlling, according to the correlation stored in the time code sequence control memory, the sampling signal to enter a corresponding histogram time unit for superposition so as to draw the histogram. The circuit allows an emitter to emit a pulse string with a pulse period far lower than the maximum flight time corresponding to the maximum measurement range, such that a frame rate can be improved to a great extent.

Description

时间编码解调处理电路及方法Time code demodulation processing circuit and method 技术领域Technical field
本发明涉及计算机技术领域,尤其涉及一种用于时间编码时间飞行距离测量的时间编码解调处理电路及方法。The present invention relates to the field of computer technology, in particular to a time code demodulation processing circuit and method for time code time flight distance measurement.
背景技术Background technique
时间飞行(Time of flight,TOF)法通过测量光束在空间中的飞行时间来计算物体的距离,由于其具有精度高、测量范围大等优点被广泛应用于消费电子、无人架驶、AR/VR等领域。The Time of Flight (TOF) method calculates the distance of an object by measuring the flight time of the beam in space. Because of its high accuracy and large measurement range, it is widely used in consumer electronics, unmanned aerial vehicles, AR/ VR and other fields.
基于时间飞行原理的距离测量系统比如时间飞行深度相机、激光雷达等系统往往包含一个光源发射端以及接收端,光源向目标空间发射光束以提供照明,接收端接收由目标反射回的光束,系统再通过计算光束由发射到反射接收所需要的时间来计算物体的距离。利用直接时间飞行法进行测量时,发射端向目标发射脉冲光束,该脉冲光束以一定的频率进行发射,相邻脉冲的时间间隔(脉冲周期)要求不小于系统最大测量距离对应的最大飞行时间,以避免信号无法识别的情况出现。因此,系统的帧率往往受到最大测量距离的局限,当系统测量距离达到百米甚至更远时,帧率则非常低,难以满足一些实际应用对高帧率的需求。Distance measurement systems based on the time-of-flight principle, such as time-of-flight depth cameras and lidars, often include a light source emitting end and a receiving end. The light source emits a beam to the target space to provide illumination, and the receiving end receives the beam reflected by the target. Calculate the distance of the object by calculating the time required for the beam to be reflected and received. When the direct time flight method is used for measurement, the transmitter emits a pulsed beam to the target. The pulsed beam is emitted at a certain frequency. The time interval between adjacent pulses (pulse period) must not be less than the maximum flight time corresponding to the maximum measurement distance of the system. In order to avoid the situation that the signal cannot be recognized. Therefore, the frame rate of the system is often limited by the maximum measurement distance. When the measurement distance of the system reaches 100 meters or more, the frame rate is very low, and it is difficult to meet the high frame rate requirements of some practical applications.
另外,当多个系统在相同的空间中同步工作时,容易出现干扰的情形,即某一个系统的接收端除了会接收到来自自身发射端的光信号还会接收其他系统发射端发射过来的光信号,从而引起误差。In addition, when multiple systems work synchronously in the same space, interference is prone to occur, that is, the receiving end of a certain system will not only receive the optical signal from its own transmitter, but also receive the optical signal emitted by the transmitter of other systems. , Thus causing errors.
以上背景技术内容的公开仅用于辅助理解本发明的发明构思及技术方案,其并不必然属于本专利申请的现有技术,在没有明确的证据表明上述内容在本专利申请的申请日已经公开的情况下,上述背景技术不应当用于评价本申请的新颖性和创造性。The disclosure of the above background technical content is only used to assist the understanding of the inventive concept and technical solution of the present invention. It does not necessarily belong to the prior art of the patent application. There is no clear evidence that the above content has been published on the filing date of the patent application. Under the circumstances, the above-mentioned background technology should not be used to evaluate the novelty and inventiveness of this application.
发明内容Summary of the invention
为了解决系统的帧率受到最大测量距离的限制以及多机干扰问题中的至少一种,本申请提供了一种用于时间编码时间飞行距离测量的时间编码解调处理电路及解调处理方法。In order to solve at least one of the limitation of the frame rate of the system by the maximum measurement distance and the problem of multi-machine interference, the present application provides a time code demodulation processing circuit and a demodulation processing method for time code time flight distance measurement.
一种时间编码解调处理电路,与像素单元连接,包括:A time code demodulation processing circuit, connected to the pixel unit, includes:
采样电路,经配置以对所述像素单元检测到的反射光束的光子事件进行采样,以形成采样信号;A sampling circuit configured to sample the photon events of the reflected light beam detected by the pixel unit to form a sampling signal;
直方图存储器,经配置以存储将绘制的包含多个直方图时间单元的直方图;A histogram memory, configured to store a histogram to be drawn containing multiple histogram time units;
时间编码序列控制存储器,经配置以存储预先写入的所述采样信号与需要开启的所述直方图时间单元之间的对应关系;A time code sequence control memory, configured to store the correspondence between the pre-written sampling signal and the histogram time unit that needs to be turned on;
时间编码序列控制器,经配置以根据所述时间编码序列控制存储器中保存的所述对应关系,控制所述采样信号进入相应的所述直方图时间单元中进行叠加以绘制所述直方图。The time code sequence controller is configured to control the corresponding relationship stored in the memory according to the time code sequence to control the sampling signal to enter the corresponding histogram time unit for superimposition to draw the histogram.
进一步地,所述处理电路经配置以确定所述直方图中的脉冲波形对应的时间;并根据所述脉冲波形对应的时间确定飞行时间。Further, the processing circuit is configured to determine the time corresponding to the pulse waveform in the histogram; and determine the flight time according to the time corresponding to the pulse waveform.
进一步地,所述时间编码为规则时间编码[Δt,2Δt,3Δt,…,(n-1)Δt],其中Δt为脉冲周期,n为脉冲串包含的脉冲的数量。Further, the time code is a regular time code [Δt, 2Δt, 3Δt,..., (n-1)Δt], where Δt is the pulse period, and n is the number of pulses included in the pulse train.
进一步地,所述时间编码为随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)],Δt i表示第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),其中n为脉冲串包含的脉冲的数量。 Further, the time code is a random time code [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,..., Δt 1 + Δt 2 …+Δt (n-1) ], Δt i represents The time interval between the ith pulse and the (i+1)th pulse, i=1, 2,...(n-1), where n is the number of pulses contained in the pulse train.
进一步地,所述时间编码为双重随机时间编码,包括第一随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)]以及第二随机时间编码[ΔT 1,ΔT 1+ΔT 2,ΔT 1+ΔT 2+ΔT 3,…,ΔT 1+ΔT 2…+ΔT (N-1)],其中Δt i表示脉冲组内第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),n为所述脉冲组内脉冲的数量;ΔT j表示第j个所述脉冲组与第(j+1)个所述脉冲组的时间间隔,j=1,2,…(N-1),N代表所述脉冲组的数量。 Further, the time code is a double random time code, including a first random time code [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,..., Δt 1 + Δt 2 …+Δt (n -1) ] and the second random time code [ΔT 1 , ΔT 1 +ΔT 2 , ΔT 1 +ΔT 2 +ΔT 3 ,..., ΔT 1 +ΔT 2 …+ΔT (N-1) ], where Δt i represents The time interval between the i-th pulse and the (i+1)-th pulse in the pulse group, i=1, 2,...(n-1), n is the number of pulses in the pulse group; ΔT j represents the j-th pulse The time interval between the pulse group and the (j+1)th pulse group, j=1, 2,...(N-1), and N represents the number of the pulse group.
一种时间编码解调处理方法,包括如下步骤:A time code demodulation processing method, including the following steps:
预先将采样信号与需要开启的直方图存储器中的直方图时间单元之间的对应关系写入时间编码序列控制存储器中;Pre-write the corresponding relationship between the sampling signal and the histogram time unit in the histogram memory that needs to be turned on into the time code sequence control memory;
由采样电路对像素单元检测到的反射光束的光子事件进行采样,以形成所述采样信号;Sampling the photon events of the reflected light beam detected by the pixel unit by the sampling circuit to form the sampling signal;
由时间编码序列控制器根据所述时间编码序列控制存储器中保存的所述对应关系,以控制所述采样信号进入所述直方图存储器中的直方图时间单元中进行叠加以绘制直方图。The time code sequence controller controls the corresponding relationship stored in the memory according to the time code sequence to control the sampling signal to enter the histogram time unit in the histogram memory for superimposition to draw a histogram.
进一步地,所述方法还包括如下步骤:Further, the method further includes the following steps:
确定所述直方图中的脉冲波形对应的时间;Determining the time corresponding to the pulse waveform in the histogram;
根据所述脉冲波形对应的时间确定飞行时间。The flight time is determined according to the time corresponding to the pulse waveform.
进一步地,所述时间编码为规则时间编码[Δt,2Δt,3Δt,…,(n-1)Δt],其中Δt为脉冲周期,n为脉冲串包含的脉冲的数量。Further, the time code is a regular time code [Δt, 2Δt, 3Δt,..., (n-1)Δt], where Δt is the pulse period, and n is the number of pulses included in the pulse train.
进一步地,所述时间编码为随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)],Δt i表示第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),其中n为脉冲串包含的脉冲的数量。 Further, the time code is a random time code [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,..., Δt 1 + Δt 2 …+Δt (n-1) ], Δt i represents The time interval between the ith pulse and the (i+1)th pulse, i=1, 2,...(n-1), where n is the number of pulses contained in the pulse train.
进一步地,所述时间编码为双重随机时间编码,包括第一随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)]以及第二随机时间编码[ΔT 1,ΔT 1+ΔT 2,ΔT 1+ΔT 2+ΔT 3,…,ΔT 1+ΔT 2…+ΔT (N-1)],其中Δt i表示脉冲组内第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),n为所述脉冲组内脉冲的数量;ΔT j表示第j个所述脉冲组与第(j+1)个所述脉冲组的时间间隔,j=1,2,…(N-1),N代表所述脉冲组的数量。 Further, the time code is a double random time code, including a first random time code [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,..., Δt 1 + Δt 2 …+Δt (n -1) ] and the second random time code [ΔT 1 , ΔT 1 +ΔT 2 , ΔT 1 +ΔT 2 +ΔT 3 ,..., ΔT 1 +ΔT 2 …+ΔT (N-1) ], where Δt i represents The time interval between the i-th pulse and the (i+1)-th pulse in the pulse group, i=1, 2,...(n-1), n is the number of pulses in the pulse group; ΔT j represents the j-th pulse The time interval between the pulse group and the (j+1)th pulse group, j=1, 2,...(N-1), and N represents the number of the pulse group.
本发明的有益效果:The beneficial effects of the present invention:
本发明提供了一种用于时间编码时间飞行距离测量的时间编码解调处理电路及解调处理方法,本发明可以允许发射器以远低于最大测量范围对应最大飞行时间的脉冲周期来发射脉冲串,从而可以极大程度上提升帧率。进一步地,本发明的优选实施例还提供一种时间编码解调处理电路及解调处理方法,用于实现能抗干扰的时间编码时间飞行距离测量。The present invention provides a time code demodulation processing circuit and a demodulation processing method for time code time flight distance measurement. The present invention can allow a transmitter to transmit pulses with a pulse period that is much lower than the maximum measurement range corresponding to the maximum flight time. String, which can greatly increase the frame rate. Further, a preferred embodiment of the present invention also provides a time code demodulation processing circuit and a demodulation processing method, which are used to implement anti-interference time code time flight distance measurement.
附图说明Description of the drawings
图1为根据本发明实施例的时间飞行距离测量系统示意图。Fig. 1 is a schematic diagram of a time-of-flight distance measurement system according to an embodiment of the present invention.
图2(a)为根据本发明实施例,对应的时间编码为规则时间编码,发射器以脉冲周期Δt发射包含n个脉冲的脉冲串的示意图。Fig. 2(a) is a schematic diagram showing that the corresponding time code is a regular time code according to an embodiment of the present invention, and the transmitter transmits a pulse train containing n pulses with a pulse period Δt.
图2(b)为根据本发明实施例,对应的时间编码为规则时间编码,在t时间后采集器相继接收到被目标反射的脉冲串中的光子的示意图。Fig. 2(b) is a schematic diagram showing that the corresponding time code is a regular time code according to an embodiment of the present invention, and the collector successively receives the photons in the pulse train reflected by the target after time t.
图3(a)为根据本发明实施例的规则时间编码的帧周期单光子计数时序串的示意图。Fig. 3(a) is a schematic diagram of a frame period single-photon counting sequence string of regular time encoding according to an embodiment of the present invention.
图3(b)为根据本发明实施例的规则时间编码叠加之后形成的直方图。Fig. 3(b) is a histogram formed after superimposing regular time codes according to an embodiment of the present invention.
图4(a)为根据本发明实施例,对应的时间编码为随机时间编码,发射器以随机时间间隔的方式发射包含n个脉冲的脉冲串的示意图。Fig. 4(a) is a schematic diagram of the corresponding time code being a random time code according to an embodiment of the present invention, and the transmitter transmits a pulse train containing n pulses in a random time interval.
图4(b)为根据本发明实施例,对应的时间编码为随机时间编码,在t时间后采集器相继接收到被目标反射的脉冲串中的光子的示意图。Fig. 4(b) is a schematic diagram showing that the corresponding time code is a random time code according to an embodiment of the present invention, and the collector successively receives the photons in the pulse train reflected by the target after time t.
图5(a)为根据本发明实施例的随机时间编码的帧周期单光子计数时序串的示意图。Fig. 5(a) is a schematic diagram of a frame period single photon counting sequence string of random time encoding according to an embodiment of the present invention.
图5(b)为根据本发明实施例的随机时间编码叠加之后形成的直方图。Fig. 5(b) is a histogram formed after random time code superposition according to an embodiment of the present invention.
图6(a)为根据本发明实施例,对应的时间编码为双重随机时间编码,发射器以双重随机时间间隔的方式发射N*n个脉冲的示意图。Fig. 6(a) is a schematic diagram showing that the corresponding time code is a double random time code according to an embodiment of the present invention, and the transmitter transmits N*n pulses in a double random time interval.
图6(b)为根据本发明实施例,对应的时间编码为双重随机时间编码,在t时间后采集器相继接收到被目标反射的脉冲串中的光子的示意图。Fig. 6(b) is a schematic diagram showing that the corresponding time code is a double random time code according to an embodiment of the present invention, and the collector successively receives photons in the pulse train reflected by the target after time t.
图7(a)是根据本发明实施例的双重随机时间编码的N个脉冲组周期单光子计数时序串的示意图。Fig. 7(a) is a schematic diagram of a single-photon counting sequence of N pulse group periods with double random time coding according to an embodiment of the present invention.
图7(b)为根据本发明实施例的双重随机时间编码叠加之后形成的直方图。Fig. 7(b) is a histogram formed after double random time coding is superimposed according to an embodiment of the present invention.
图8是根据本发明实施例的一种时间编码解调处理电路示意图。Fig. 8 is a schematic diagram of a time code demodulation processing circuit according to an embodiment of the present invention.
图9是根据本发明实施例的另一种时间编码解调处理电路示意图。Fig. 9 is a schematic diagram of another time code demodulation processing circuit according to an embodiment of the present invention.
具体实施方式detailed description
为了使本发明实施例所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。In order to make the technical problems, technical solutions, and beneficial effects to be solved by the embodiments of the present invention clearer, the following further describes the present invention in detail with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described here are only used to explain the present invention, but not to limit the present invention.
需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。另外,连接即可以是用于固定作用也可以是用于电路连通作用。It should be noted that when an element is referred to as being "fixed to" or "disposed on" another element, it can be directly on the other element or indirectly on the other element. When an element is referred to as being "connected to" another element, it can be directly connected to the other element or indirectly connected to the other element. In addition, the connection can be used for fixing or circuit connection.
需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。It should be understood that the terms "length", "width", "upper", "lower", "front", "rear", "left", "right", "vertical", "horizontal", "top" The orientation or positional relationship indicated by "bottom", "inner", "outer", etc. is based on the orientation or positional relationship shown in the drawings, and is only for the convenience of describing the embodiments of the present invention and simplifying the description, rather than indicating or implying what is meant. The device or element must have a specific orientation, be configured and operated in a specific orientation, and therefore cannot be understood as a limitation of the present invention.
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征。在本发明实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。In addition, the terms "first" and "second" are only used for descriptive purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of indicated technical features. Therefore, the features defined with "first" and "second" may explicitly or implicitly include one or more of these features. In the description of the embodiments of the present invention, "plurality" means two or more, unless otherwise specifically defined.
时间飞行距离测量系统Time-of-flight measurement system
本发明提供一种时间飞行距离测量系统,其具有更强的抗环境光能力以及更高的分辨率。The invention provides a time-flight distance measuring system, which has stronger anti-ambient light ability and higher resolution.
图1是根据本发明一个实施例的时间飞行距离测量系统示意图。距离测量系统10包括发射器11、采集器12以及处理电路13,其中发射器11提供发射光束30至目标空间中以照明空间中的物体20,至少部分发射光束30经物体20反射后形成反射光束40,反射光束40的至少部分光信号(光子)被采集器12采集,处理电路13分别与发射器11以及采集器12连接,同步发射器11以及采集器12的触发信号以计算光束由发射器11发出并被采集器12接收所需要的时间,即发射光束30与反射光束40之间的飞行时间t,进一步的,物体上对应点的距离D可由下式计算出:Fig. 1 is a schematic diagram of a time-of-flight distance measurement system according to an embodiment of the present invention. The distance measurement system 10 includes a transmitter 11, a collector 12, and a processing circuit 13. The transmitter 11 provides a emitted light beam 30 to the target space to illuminate an object 20 in the space. At least part of the emitted light beam 30 is reflected by the object 20 to form a reflected light beam. 40. At least part of the light signals (photons) of the reflected light beam 40 are collected by the collector 12. The processing circuit 13 is connected to the transmitter 11 and the collector 12 respectively, and the trigger signals of the transmitter 11 and the collector 12 are synchronized to calculate the light beam from the transmitter The time required for 11 to be emitted and received by the collector 12, that is, the flight time t between the emitted light beam 30 and the reflected light beam 40, further, the distance D of the corresponding point on the object can be calculated by the following formula:
D=c·t/2      (1)D=c·t/2 (1)
其中,c为光速。Among them, c is the speed of light.
发射器11包括光源111、光学元件112。光源111可以是发光二极管(LED)、边发射激光器(EEL)、垂直腔面发射激光器(VCSEL)等光源,也可以是多个光源组成的阵列 光源,优选地,阵列光源111是在单块半导体基底上生成多个VCSEL光源以形成的VCSEL阵列光源芯片。光源111所发射的光束可以是可见光、红外光、紫外光等。光源111在处理电路13的控制下向外发射光束,比如在一个实施例中,光源111在处理电路13的控制下以一定的频率(脉冲周期)发射脉冲光束,可以用于直接时间飞行法(Direct TOF)测量中,频率根据测量距离进行设定,比如可以设置成1MHz~100MHz,测量距离在几米至几百米。可以理解的是,可以是处理电路13中的一部分或者独立于处理电路13存在的子电路来控制光源111发射相关的光束,比如脉冲信号发生器。The transmitter 11 includes a light source 111 and an optical element 112. The light source 111 can be a light source such as a light emitting diode (LED), an edge emitting laser (EEL), a vertical cavity surface emitting laser (VCSEL), etc., or an array light source composed of multiple light sources. Preferably, the array light source 111 is a monolithic semiconductor A plurality of VCSEL light sources are generated on the substrate to form a VCSEL array light source chip. The light beam emitted by the light source 111 may be visible light, infrared light, ultraviolet light, or the like. The light source 111 emits light beams outward under the control of the processing circuit 13. For example, in one embodiment, the light source 111 emits a pulsed light beam at a certain frequency (pulse period) under the control of the processing circuit 13, which can be used in the direct time flight method ( In Direct TOF measurement, the frequency is set according to the measurement distance, for example, it can be set to 1MHz~100MHz, and the measurement distance is from several meters to several hundred meters. It is understandable that it may be a part of the processing circuit 13 or a sub-circuit independent of the processing circuit 13 to control the light source 111 to emit related light beams, such as a pulse signal generator.
光学元件112接收来自光源111的脉冲光束,并将脉冲光束进行光学调制,比如衍射、折射、反射等调制,随后向空间中发射被调制后的光束,比如聚焦光束、泛光光束、结构光光束等。光学元件112可以是透镜、衍射光学元件、掩膜板、反射镜等,也可以是MEMS振镜等形式。The optical element 112 receives the pulsed beam from the light source 111, and optically modulates the pulsed beam, such as diffraction, refraction, reflection, etc., and then emits the modulated beam into space, such as a focused beam, a flood beam, and a structured light beam. Wait. The optical element 112 may be a lens, a diffractive optical element, a mask, a mirror, etc., or may be a MEMS galvanometer.
处理电路13可以是独立的专用电路,比如专用SOC芯片、FPGA芯片、ASIC芯片等等,也可以包含通用处理器,比如当该深度相机被集成到如手机、电视、电脑等智能终端中去,终端中的处理器可以作为该处理电路13的至少一部分。The processing circuit 13 can be an independent dedicated circuit, such as a dedicated SOC chip, FPGA chip, ASIC chip, etc., or a general-purpose processor. For example, when the depth camera is integrated into smart terminals such as mobile phones, TVs, and computers, The processor in the terminal can be used as at least a part of the processing circuit 13.
采集器12包括像素单元121、成像透镜单元122,成像透镜单元122接收并将由物体反射回的至少部分调制光束引导到像素单元121上。在一个实施例中,像素单元121由单光子雪崩光电二极管(SPAD)组成,也可以由多个SPAD像素组成的阵列像素单元,阵列像素单元的阵列大小代表着该深度相机的分辨率,比如320x240等。SPAD可以对入射的单个光子进行响应从而实现对单光子的检测,由于其具备灵敏度高、响应速度快等优点,可以实现远距离、高精度地测量。与CCD/CMOS等组成的以光积分为原理的图像传感器相比,SPAD可以通过对单光子进行计数,比如利用时间相关单光子计数法(TCSPC)实现对微弱光信号的采集以及飞行时间的计算。一般地,与像素单元121连接的还包括由信号放大器、时数转换器(TDC)、模数转换器(ADC)等器件中的一种或多种组成的读出电路(图中未示出)。这些电路即可以与像素整合在一起,这也可以是处理电路13中的一部分,为了便于描述,将统一视作处理电路13。The collector 12 includes a pixel unit 121 and an imaging lens unit 122. The imaging lens unit 122 receives and guides at least part of the modulated light beam reflected by the object to the pixel unit 121. In an embodiment, the pixel unit 121 is composed of a single photon avalanche photodiode (SPAD), or an array pixel unit composed of multiple SPAD pixels. The array size of the array pixel unit represents the resolution of the depth camera, such as 320x240 Wait. SPAD can respond to the incident single photon to realize the detection of single photon. Because of its high sensitivity and fast response speed, it can realize long-distance and high-precision measurement. Compared with CCD/CMOS and other image sensors based on the principle of light integration, SPAD can count single photons, such as the use of time-correlated single photon counting (TCSPC) to realize the collection of weak light signals and the calculation of flight time . Generally, connected to the pixel unit 121 also includes a readout circuit composed of one or more of a signal amplifier, a time-to-digital converter (TDC), an analog-to-digital converter (ADC) and other devices (not shown in the figure). ). These circuits can be integrated with the pixels, and they can also be part of the processing circuit 13. For ease of description, the processing circuit 13 will be collectively regarded.
在一些实施例中,距离测量系统10还可以包括彩色相机、红外相机、IMU等器件,与这些器件的组合可以实现更加丰富的功能,比如3D纹理建模、红外人脸识别、SLAM等功能。In some embodiments, the distance measurement system 10 may also include a color camera, an infrared camera, an IMU, and other devices. The combination of these devices can achieve richer functions, such as 3D texture modeling, infrared face recognition, SLAM and other functions.
在一些实施例中,发射器11与采集器12也可以被设置成共轴形式,即二者之间通过具备反射及透射功能的光学器件来实现,比如半透半反镜等。In some embodiments, the transmitter 11 and the collector 12 can also be arranged in a coaxial form, that is, the two are realized by optical devices with reflection and transmission functions, such as a half mirror.
在利用SPAD的直接时间飞行法距离测量系统中,单个光子入射SPAD像素将引起雪崩,SPAD将输出雪崩信号至TDC电路,再由TDC电路检测出光子从发射器11发出到引起雪崩的时间间隔。通过多次检测之后将时间间隔通过时间相关单光子计数(TCSPC)电路进行直方图统计以恢复出整个脉冲信号的波形,从而实现精确的飞行时间 检测,最后根据飞行时间计算出物体的距离信息。假定脉冲光束发射的脉冲周期为Δt,距离测量系统的最大测量范围为Dmax,对应的最大飞行时间是
Figure PCTCN2019103740-appb-000001
一般要求Δt≥t 1以避免信号混淆,其中c是光速。如果TCSPC要求的多次检测的次数为n,则实现单次距离测量的时间(帧周期)将不低于n*t 1。比如最大测量范围是150m,对应的脉冲周期Δt=1us,n=100000,则帧周期将不低于100ms,帧率将低于10fps。由此可见,TCSPC方法中最大测量范围限制了脉冲周期,从而进一步影响到距离测量的帧率。
In the direct time-of-flight distance measurement system using SPAD, a single photon incident on the SPAD pixel will cause an avalanche, the SPAD will output an avalanche signal to the TDC circuit, and then the TDC circuit will detect the time interval between the photon emission from the emitter 11 and the avalanche. After multiple detections, the time interval is passed through a time-correlated single photon counting (TCSPC) circuit for histogram statistics to recover the waveform of the entire pulse signal, so as to achieve accurate flight time detection, and finally calculate the distance information of the object according to the flight time. Assuming that the pulse period emitted by the pulse beam is Δt, the maximum measurement range of the distance measurement system is Dmax, and the corresponding maximum flight time is
Figure PCTCN2019103740-appb-000001
Generally, Δt≥t 1 is required to avoid signal aliasing, where c is the speed of light. If the number of times of multiple detections required by TCSPC is n, the time (frame period) to realize a single distance measurement will not be less than n*t 1 . For example, the maximum measurement range is 150m, the corresponding pulse period Δt=1us, n=100000, then the frame period will not be less than 100ms, and the frame rate will be less than 10fps. It can be seen that the maximum measurement range in the TCSPC method limits the pulse period, which further affects the frame rate of distance measurement.
为了解决这一问题,根据后文的实施例,本发明提供的用于时间编码时间飞行距离测量的系统和方法可以通过几种不同的时间编码脉冲调制及解调方案来实现,具体描述如下。In order to solve this problem, according to the following embodiments, the system and method for time-coded time-of-flight measurement provided by the present invention can be implemented by several different time-coded pulse modulation and demodulation schemes, which are described in detail as follows.
规则时间编码脉冲调制及解调方法Regular time coded pulse modulation and demodulation method
图2(a)和图2(b)是根据本发明一个实施例的时间编码脉冲调制示意图。发射器11将以远小于最大测量范围Dmax对应的最大飞行时间
Figure PCTCN2019103740-appb-000002
的脉冲周期Δt发射脉冲串,脉冲串中包含n个脉冲,如图2(a)所示。若被测目标在D处,对应的飞行时间是t,则在t时间后采集器12将相继接收到被目标反射的脉冲串中的光子,如图2(b)所示。为了保证避免相邻两个帧周期中脉冲光束的相互影响,帧周期T被设置成T≥(n-1)·Δt+t 1,即当目标位于最大测量距离处时,脉冲串中的最后一个脉冲从被发射器11发射开始直到被采集器12接收到所需要的时间正好是t 1,这样就确保了在单帧周期内所有的脉冲串均会被接收且不会有相邻帧周期内的脉冲影响。在一个实施例中,最大测量范围同样假定为Dmax=150m,n=100000,但脉冲周期Δt=100ns,远小于前面实施例中的1us,帧周期T≈10ms,帧率高达100fps。
Figures 2(a) and 2(b) are schematic diagrams of time-coded pulse modulation according to an embodiment of the present invention. The transmitter 11 will be much smaller than the maximum flight time corresponding to the maximum measurement range Dmax
Figure PCTCN2019103740-appb-000002
The pulse period Δt transmits a pulse train, and the pulse train contains n pulses, as shown in Figure 2(a). If the measured target is at D and the corresponding flight time is t, the collector 12 will successively receive the photons in the pulse train reflected by the target after the time t, as shown in Fig. 2(b). In order to avoid the mutual influence of pulse beams in two adjacent frame periods, the frame period T is set to T≥(n-1)·Δt+t 1 , that is, when the target is at the maximum measurement distance, the last in the pulse train The time required for a pulse to be transmitted by the transmitter 11 until received by the collector 12 is exactly t 1 , which ensures that all pulse trains in a single frame period will be received and there will be no adjacent frame periods The impact of the pulse within. In an embodiment, the maximum measurement range is also assumed to be Dmax=150m, n=100000, but the pulse period Δt=100ns, which is much smaller than the 1us in the previous embodiment, the frame period T≈10ms, and the frame rate is as high as 100fps.
需要说明的是,发射脉冲串中的每个脉冲的波形往往不会像图中所示的方波那样规整,因此图中仅做示例作用。接收脉冲串也仅作示例,采集器12接收到的实际上是可以反映出接收脉冲串的光子数序列,将在后文中详细介绍。It should be noted that the waveform of each pulse in the transmitted pulse train is often not as regular as the square wave shown in the figure, so the figure is only used as an example. The received pulse train is only an example, and what the collector 12 receives is actually a photon number sequence that can reflect the received pulse train, which will be described in detail later.
若想实现如此高帧率的距离计算,传统的TCSPC方法将不再适用。本发明为此提供一种全新的时间编码连续单光子计数解调方法。If you want to achieve such a high frame rate distance calculation, the traditional TCSPC method will no longer be applicable. For this purpose, the present invention provides a new time-coded continuous single-photon counting demodulation method.
图3(a)和图3(b)是根据本发明一个实施例的时间编码连续单光子计数解调方法。在发射器11发射包含n个脉冲的脉冲串的同时,采集器12将被激活以采集来自目标反射的脉冲中的部分光子,处理电路13将处理并记录每个入射光子入射的相应时间,比如利用TDC电路采集入射的光子时间,随后利用处理电路通过对光子时间进行识别和记录,最终形成如图3(a)中所示的帧周期单光子计数时序串,该时序串每个方格即是由TDC时间分辨率决定的最小时间单元,当在该最小时间单元的时间内TDC检测到光子事件将会被记录(比如图中的光子计数值1即代表该最小时间单元内检测到光子), 每个方格内的数值即是光子计数值(0或1),时序串的总时间长度可以等于帧周期。该时序串可以通过任意适当的方式获取并被保存到内存中,比如由带宽较高的TDC持续采集以获取,也可以由带宽较低的TDC通过多次采集后拼接获取。Figures 3(a) and 3(b) are time-coded continuous single-photon counting demodulation methods according to an embodiment of the present invention. While the transmitter 11 emits a pulse train containing n pulses, the collector 12 will be activated to collect part of the photons in the pulse reflected from the target, and the processing circuit 13 will process and record the corresponding time of each incident photon, such as Use the TDC circuit to collect the incident photon time, and then use the processing circuit to identify and record the photon time, and finally form the frame period single photon counting time series as shown in Figure 3(a). Each square of the time series is It is the minimum time unit determined by the TDC time resolution. When a photon event is detected by the TDC within the time of the minimum time unit, it will be recorded (for example, the photon count value 1 in the figure means that the photon is detected in the minimum time unit) , The value in each square is the photon count value (0 or 1), and the total time length of the sequence string can be equal to the frame period. The time sequence string can be acquired by any appropriate method and stored in the memory, such as continuous acquisition by a TDC with a higher bandwidth, or acquisition by a TDC with a lower bandwidth through multiple acquisitions and splicing.
在一个实施例中,帧周期单光子计数时序串也可以通过其他类型的电路进行采集,比如可以通过采样电路对SPAD的雪崩信号进行响应以直接得到该时序串。因此帧周期单光子计数时序串也可以称之为帧周期单光子采样时序串。In one embodiment, the frame period single photon counting time series can also be collected by other types of circuits. For example, the sampling circuit can respond to the SPAD avalanche signal to directly obtain the time series. Therefore, the frame period single-photon counting sequence can also be referred to as the frame period single-photon sampling sequence.
在一个实施例中,所采集到的帧周期单光子计数时序串被保存到内存中,随后由处理器13中的直方图电路基于该时序串绘制直方图,与传统的TCSPC中的直方图绘制原理不同。本实施例中的直方图将采取的是时间编码连续单光子计数叠加的方式。在一个实施例中,直方图的最小时间单元(最小存储单元bin)与时序串的最小时间单元相同,对于要绘制的时间单元而言,将根据脉冲串发射时的时间编码进行叠加,比如依次叠加。脉冲串以脉冲周期Δt发射共n个脉冲,对应的时间编码为规则时间编码,即[Δt,2Δt,3Δt,…,(n-1)Δt],基于该时间编码进行叠加指的是以当前要绘制的时间单元为起始单元,将时序串中后续与该起始单元相隔Δt,2Δt,3Δt,…,(n-1)Δt的所有时间单元中的光子计数值与起始单元中的光子计数值进行依次叠加,叠加后的光子计数作为直方图中该时间单元的数值。比如对于直方图第一个时间单元的叠加方式,如图3(a)中的箭头所示。通过对多个时间单元进行时间编码叠加之后形成的直方图如图3(b)所示。In one embodiment, the collected frame period single photon counting time series is stored in the memory, and then the histogram circuit in the processor 13 draws the histogram based on the time series, which is similar to the traditional histogram drawing in TCSPC. The principle is different. The histogram in this embodiment will adopt a time-coded continuous single-photon count superposition method. In one embodiment, the minimum time unit (minimum storage unit bin) of the histogram is the same as the minimum time unit of the time series. For the time unit to be drawn, superimposition is performed according to the time code when the burst is transmitted, such as sequentially Overlay. The pulse train emits a total of n pulses with a pulse period Δt, and the corresponding time code is a regular time code, namely [Δt, 2Δt, 3Δt,..., (n-1)Δt]. The superposition based on the time code refers to the current The time unit to be drawn is the starting unit, and the photon counts in all time units that are separated from the starting unit by Δt, 2Δt, 3Δt,..., (n-1)Δt in the sequence string and the starting unit The photon count values are sequentially superimposed, and the superimposed photon count is used as the value of the time unit in the histogram. For example, for the superimposition of the first time unit of the histogram, as shown by the arrow in Figure 3(a). The histogram formed by time-coding and superimposing multiple time units is shown in Figure 3(b).
根据目标的远近以及目标的反射率不同,每个脉冲中可能仅少数光子可能会进入采集器12中,并以一定的概率产生雪崩从而造成单次光子计数事件。从统计概率来看,采集器12在整个帧周期内仅当发射器11发射的脉冲串中的每个脉冲被目标反射回采集器12的时刻,采集到光子计数事件的概率最高。换句话说,在图2(b)中所示的接收脉冲串所在的时刻采集到光子的概率最高,也就意味着图3(a)中时序串中相对应的时间单元上光子计数值为“1”的概率要明显高于其他时间单元。因此在进行时间编码直方图叠加后,在时间t+(Δt,2Δt,3Δt,…,(n-1)Δt)将会出现波峰,即采集到的光子数最多,同时由于叠加是依次往后叠加的,因此越往后的时间波峰的值将逐渐减小。但只要确定第一个脉冲波峰所在的时间就可以计算出目标的飞行时间t了。Depending on the distance of the target and the reflectivity of the target, only a few photons in each pulse may enter the collector 12 and generate an avalanche with a certain probability to cause a single photon counting event. From the statistical probability point of view, the collector 12 has the highest probability of collecting a photon counting event only when each pulse in the pulse train emitted by the transmitter 11 is reflected back to the collector 12 during the entire frame period. In other words, the probability of collecting photons at the moment of receiving the pulse train shown in Figure 2(b) is the highest, which means that the photon count value on the corresponding time unit in the time series in Figure 3(a) is The probability of "1" is significantly higher than other time units. Therefore, after the time-coded histogram is superimposed, there will be a peak at time t+(Δt, 2Δt, 3Δt,..., (n-1)Δt), that is, the number of collected photons is the largest, and because the superposition is successively superimposed , So the value of the time peak will gradually decrease in the future. But as long as the time of the first pulse peak is determined, the flight time t of the target can be calculated.
一般地,TDC的时间分辨率要小于脉宽,即时序串的每个时间单元的宽度要小于脉宽,在进行时间编码连续单光子计数叠加之后,所获取的直方图上将可以看到多个时间单元具备较高的数值,并形成一个反映脉冲形状的波形图,对于这种情况,可以将波形图的最高点对应的时间做为待测量的飞行时间。Generally, the time resolution of TDC is smaller than the pulse width, that is, the width of each time unit of the time series is smaller than the pulse width. After time-coded continuous single-photon counting is superimposed, the obtained histogram will show much Each time unit has a higher value and forms a waveform diagram reflecting the pulse shape. In this case, the time corresponding to the highest point of the waveform diagram can be used as the flight time to be measured.
可以理解的是,当帧周期T>(n-1)·Δt+t 1时,光子的采集时间无需覆盖整个帧周期,仅需要在[(n-1)·Δt+t 1]的时间内采集,即帧周期单光子计数时序串的长度为[(n-1)·Δt+t 1],在帧周期剩下的时间内可以进行数据处理,比如直方图计算、飞行 时间计算以及距离计算等。 It is understandable that when the frame period T>(n-1)·Δt+t 1 , the photon acquisition time does not need to cover the entire frame period, but only needs to be within the time of [(n-1)·Δt+t 1 ] Acquisition, that is, the length of the frame period single photon counting sequence string is [(n-1)·Δt+t 1 ], and data processing can be performed during the rest of the frame period, such as histogram calculation, flight time calculation, and distance calculation Wait.
在一个实施例中,在绘制时间编码连续单光子计数叠加直方图时,其最小的时间单元的大小可以是帧周期单光子计数时序串中每个时间单元的整数倍,比如2倍,由此可以降低直方图绘制时所需要的计算量及内存。In one embodiment, when drawing the time-coded continuous single-photon count superimposed histogram, the size of the smallest time unit may be an integer multiple of each time unit in the frame period single-photon count sequence string, such as 2 times, thus Can reduce the amount of calculation and memory required for histogram drawing.
在一个实施例中,在绘制时间编码连续单光子计数叠加直方图时,相邻的时间单元间隔,即步长可以大于1,比如每隔一个时间单元进行一次时间编码叠加,由此也可以降低绘制所需要的计算量及内存。In one embodiment, when drawing the time-coded continuous single-photon count superimposition histogram, the interval between adjacent time units, that is, the step length, can be greater than 1, for example, time coding superimposition is performed every other time unit, which can also reduce The amount of calculation and memory required for drawing.
在一个实施例中,直方图总的时间长度为[(n-1)·Δt+t 1],对于t 1时间之后的时间单元在叠加时,将不再有时序串中的时间单元光子计数值进行叠加,参与叠加的时间单元将逐渐减小。实际上,优选的方案中并不需要绘制与帧周期长度相同的直方图,而仅需要绘制从0开始到t 1这一时间段内的直方图,因为只在有目标在最大测量范围内,就一定会出现第一个波峰,而有第一个波峰就可以确定出飞行时间t了。 In one embodiment, the total time length of the histogram is [(n-1)·Δt+t 1 ], when the time unit after time t 1 is superimposed, there will be no more photon counts in the time unit in the time series. Values are superimposed, and the time unit involved in the superposition will gradually decrease. In fact, the preferred embodiment does not need to be drawn with the same frame cycle length histogram, but only needs to draw from zero to the period histogram of t 1, since only the target within the maximum measurement range, The first wave crest must appear, and the flight time t can be determined with the first wave crest.
在一个实施例中,对直方图中的脉冲波形进行寻找时,可以通过设定阈值的形式来寻找,高于阈值的数值被保留,低于阈值的数值被认为是噪声。In one embodiment, when searching for the pulse waveform in the histogram, it can be searched by setting a threshold value. Values above the threshold value are retained, and values below the threshold value are regarded as noise.
在一个实施例中,直方图的绘制顺序也可以改变,即不需要从0开始逐个时间单元进行绘制。比如可以利用二分法从中间时间开始绘制,一旦找到第一个脉冲波形后,往更早的时间单元方向进行继续绘制,直到在当前脉冲波形相距Δt的更早时间段内没有发现有波形为止,此时就认为当前脉冲波形对应的时间即为目标的飞行时间。总之,利用任意合适的能定位出第一个脉冲波形的搜索算法均适用于本方案。在本实施例中,直方图总的时间长度会基于搜索算法执行过程而进行自适应性改变,一旦绘制并检测到第一个脉冲波形后即停止计算,随后就可以利用第一个脉冲波形进行波峰位置确定从而获取飞行时间t。一般而言,自适应性改变的直方图总的时间长度均不会超过最大飞行时间t 1,从而可以大幅减小计算量及内存消耗。 In one embodiment, the drawing order of the histogram can also be changed, that is, it is not necessary to start from 0 to draw time unit by time unit. For example, the dichotomy can be used to draw from the middle time. Once the first pulse waveform is found, continue drawing in the direction of the earlier time unit until no waveform is found in the earlier time period when the current pulse waveform is separated by Δt. At this time, it is considered that the time corresponding to the current pulse waveform is the flight time of the target. In short, any suitable search algorithm that can locate the first pulse waveform is suitable for this scheme. In this embodiment, the total time length of the histogram will be adaptively changed based on the execution process of the search algorithm. Once the first pulse waveform is drawn and detected, the calculation will stop, and then the first pulse waveform can be used for The wave crest position is determined to obtain the flight time t. Generally speaking, the total time length of the adaptively changed histogram will not exceed the maximum flight time t 1 , so that the amount of calculation and memory consumption can be greatly reduced.
图3(a)和图3(b)所示的利用一种全新的基于时间编码的连续单光子计数解调方法与传统的TCSPC相比,对内存的要求较高、计算量也相对较大,但所带来的好处也非常明显,即可以允许发射器11以远低于最大测量范围对应最大飞行时间的脉冲周期来发射脉冲串,从而可以极大程度上提升帧率。尽管如此,图2(a)至图3(b)所示的调制调解方法仍难以解决多机干扰的问题,本发明还提供一种能抗干扰的时间编码时间飞行距离测量方法。As shown in Figure 3(a) and Figure 3(b), using a new time-coding-based continuous single-photon counting demodulation method, compared with the traditional TCSPC, it has higher memory requirements and a relatively large amount of calculation. , But the benefits brought by it are also very obvious, that is, the transmitter 11 can be allowed to transmit pulse trains with a pulse period much lower than the maximum measurement range corresponding to the maximum flight time, so that the frame rate can be greatly improved. Nevertheless, the modulation and mediation methods shown in FIGS. 2(a) to 3(b) are still difficult to solve the problem of multi-machine interference. The present invention also provides a time-coded time-of-flight measurement method that can resist interference.
可以理解的是,在一些实施例中,绘制帧周期单光子计数时序串以及基于该时序串绘制直方图的过程也可以合二为一,即可以直接基于光子计数进行绘制直方图,当然也可以将两个步骤扩展成三个以上的步骤,其实现原理相同,只是实现形式有所区别,对应所需要的硬件电路也会有区别,比如在后文的具体处理电路设计中将详细说明合二为一的实现形式,可以减少存储容量,因此凡是利用这一原理的任意实现形式 均在本发明的保护范围内。It is understandable that, in some embodiments, the process of drawing a frame period single-photon count time series string and drawing a histogram based on the time series string can also be combined into one, that is, the histogram can be drawn directly based on the photon count, or of course. Extend the two steps to more than three steps. The implementation principles are the same, but the implementation forms are different, and the corresponding hardware circuits will also be different. For example, the detailed description of the combination of two will be described in the specific processing circuit design later. The realization form of one can reduce the storage capacity. Therefore, any realization form that utilizes this principle falls within the protection scope of the present invention.
随机时间编码脉冲调制及解调方法Random time coded pulse modulation and demodulation method
图4(a)和图4(b)是根据本发明一个实施例的随机时间编码脉冲调制示意图。与图2(a)和图2(b)所示实施例相比,本实施例中脉冲将以预先设定的随机(伪随机)间隔进行发射,即脉冲是以随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)]的形式进行发射,Δt i表示第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),如图4(a)所示。若被测目标在D处,对应的飞行时间是t,则在t时间后采集器12将相继接收到被目标反射的脉冲串中的光子,如图4(b)所示。为了保证避免相邻两个帧周期中脉冲光束的相互影响,帧周期T被设置成
Figure PCTCN2019103740-appb-000003
即当最目标位于最大测量距离处时,脉冲串中的最后一个脉冲从被发射器11反射起始直到被采集器12接收到结束所需要的时间正好是t 1,这样就确保了在单帧周期内所有的脉冲串均会被接收且不会有相邻帧周期内的脉冲影响。在一个实施例中,最大测量范围同样假定为Dmax=150m,n=100000,若随机脉冲周期的平均值
Figure PCTCN2019103740-appb-000004
远小于前面实施例中的1us,帧周期T≈10ms,帧率高达100fps。
4(a) and 4(b) are schematic diagrams of random time-coded pulse modulation according to an embodiment of the present invention. Compared with the embodiment shown in Fig. 2(a) and Fig. 2(b), the pulses in this embodiment will be transmitted at preset random (pseudo-random) intervals, that is, the pulses are coded with random time [Δt 1 , Δt 1 +Δt 2 ,Δt 1 +Δt 2 +Δt 3 ,…,Δt 1 +Δt 2 …+Δt (n-1) ], Δt i represents the i-th pulse and the (i+1)th pulse The time interval of each pulse, i=1, 2,...(n-1), as shown in Figure 4(a). If the measured target is at D and the corresponding flight time is t, the collector 12 will successively receive the photons in the pulse train reflected by the target after the time t, as shown in Fig. 4(b). In order to avoid the mutual influence of pulse beams in two adjacent frame periods, the frame period T is set to
Figure PCTCN2019103740-appb-000003
That is, when the most target is located at the maximum measurement distance, the time required for the last pulse in the pulse train from the beginning of reflection by the transmitter 11 to the end of being received by the collector 12 is exactly t 1 , which ensures that it is in a single frame All the bursts in the period will be received and will not be affected by the pulses in the adjacent frame period. In an embodiment, the maximum measurement range is also assumed to be Dmax=150m, n=100000, if the average value of the random pulse period
Figure PCTCN2019103740-appb-000004
It is much smaller than the 1 us in the previous embodiment, the frame period is T≈10 ms, and the frame rate is as high as 100 fps.
图5(a)和图5(b)是根据本发明一个实施例的随机时间编码连续单光子计数解调方法。与图3(a)和图3(b)所示实施例相同,在发射器11发射N个脉冲串的同时,采集器12将被激活以采集来自目标反射的脉冲中的部分光子,处理电路13将处理并记录每个入射光子入射的相应时间,最终形成如图5(a)中所示的帧周期单光子计数时序串,该时序串每个时间单元中记录的是光子计数值,时序串的总时间长度即是帧周期。Figures 5(a) and 5(b) are random time coding continuous single photon counting demodulation methods according to an embodiment of the present invention. As in the embodiment shown in Figure 3(a) and Figure 3(b), while the transmitter 11 emits N pulse trains, the collector 12 will be activated to collect some of the photons in the pulse reflected from the target, and the processing circuit 13 will process and record the corresponding time of each incident photon, and finally form the frame period single photon count time series as shown in Figure 5(a). The time series records the photon count value in each time unit, and the time series The total time length of the string is the frame period.
在一个实施例中,所采集到的帧周期单光子计数时序串被保存到内存中,随后由处理器13中的直方图电路基于该时序串绘制直方图,与图3(a)和图3(b)所示实施例中类似,本实施例中的直方图同样将采取时间编码连续单光子计数叠加的方式。不同之处在于,时间编码是随机时间编码,对于要绘制的时间单元而言,将根据脉冲串发射时的时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)]进行叠加,比如依次叠加。将以当前要绘制的时间单元为起始单元,将时序串中后续与该起始单元相隔Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)的所有时间单元中的光子计数值与起始单元中的光子计数值进行依次叠加,叠加后的光子计数作为直方图中该时间单元的数值。比如对于直方图第一个时间单元的叠加方式,如图5(a)中的箭头所示。通过对多个时间单元进行时间编码叠加之后形成的直方图如图5(b)所示。 In one embodiment, the collected frame period single photon counting time series is stored in the memory, and then the histogram circuit in the processor 13 draws a histogram based on the time series, which is similar to Figure 3(a) and Figure 3. Similar to the embodiment shown in (b), the histogram in this embodiment will also adopt a time-coded continuous single-photon count superposition method. The difference is that the time code is a random time code. For the time unit to be drawn, it will be coded according to the time when the burst is transmitted [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,... , Δt 1 +Δt 2 …+Δt (n-1) ] to superimpose, for example, superimpose sequentially. The current time unit to be drawn will be the starting unit, and the subsequent sequence in the sequence will be separated from the starting unit by Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,..., Δt 1 + Δt 2 … The photon count value in all time units of +Δt (n-1) is sequentially superimposed with the photon count value in the starting unit, and the superimposed photon count is used as the value of the time unit in the histogram. For example, for the superposition method of the first time unit of the histogram, as shown by the arrow in Figure 5(a). The histogram formed by time-coding and superimposing multiple time units is shown in Figure 5(b).
在一个实施例中,在绘制时间编码连续单光子计数叠加直方图时,其最小的时间单元的大小可以是帧周期单光子计数时序串的整数倍,比如2倍,由此可以降低直方图绘制时所需要的计算量及内存。In one embodiment, when drawing a time-coded continuous single-photon count superimposed histogram, the size of the smallest time unit may be an integer multiple of the frame period single-photon count sequence string, such as 2 times, thereby reducing the histogram drawing The amount of calculation and memory required at the time.
在一个实施例中,在绘制时间编码连续单光子计数叠加直方图时,相邻的时间单 元间隔,即步长可以大于1,比如每隔一个时间单元进行一次时间编码叠加,由此也可以降低绘制所需要的计算量及内存。In one embodiment, when drawing the time-coded continuous single-photon count superimposition histogram, the interval between adjacent time units, that is, the step length, can be greater than 1, for example, time coding superimposition is performed every other time unit, which can also reduce The amount of calculation and memory required for drawing.
在一个实施例中,直方图总的时间长度为[(n-1)·Δt+t 1],对于t 1时间之后的时间单元在叠加时,将不再有时序串中的时间单元光子计数值进行叠加,参与叠加的时间单元将逐渐减小。实际上,优选的方案中并不需要绘制与帧周期长度相同的直方图,而仅需要绘制从0开始到t 1这一时间段内的直方图,因为只在有目标在最大测量范围内,就一定会出现第一个波峰,而有第一个波峰就可以确定出飞行时间t了。 In one embodiment, the total time length of the histogram is [(n-1)·Δt+t 1 ], when the time unit after time t 1 is superimposed, there will be no more photon counts in the time unit in the time series. Values are superimposed, and the time unit involved in the superposition will gradually decrease. In fact, the preferred embodiment does not need to be drawn with the same frame cycle length histogram, but only needs to draw from zero to the period histogram of t 1, since only the target within the maximum measurement range, The first wave crest must appear, and the flight time t can be determined with the first wave crest.
在一个实施例中,对直方图中的脉冲波形进行寻找时,可以通过设定阈值的形式来寻找,高于阈值的数值被保留,低于阈值的数值被认为是噪声。In one embodiment, when searching for the pulse waveform in the histogram, it can be searched by setting a threshold value. Values above the threshold value are retained, and values below the threshold value are regarded as noise.
在一个实施例中,直方图的绘制顺序也可以改变,即不需要从0开始逐个时间单元进行绘制。比如可以利用二分法从中间时间开始绘制,从而可以快速找到脉冲波形。总之,利用任意合适的能定位出脉冲波形的搜索算法均适用于本方案。在本实施例中,直方图总的时间长度会基于搜索算法执行过程而进行自适应性改变,一旦检测到脉冲波形后即停止计算,随后就可以利用脉冲波形进行波峰位置确定从而获取飞行时间t。由于本实施例是随机时间编码,在叠加后的直方图中,仅脉冲串中第一个脉冲反射回的时间t所对应的一个或多个直方图时间单元上才会形成较高的数值,不会出现像图3(b)中的多个脉冲波形的情形。换句话说,只有以第一个脉冲反射回的时间t做为起始单元,其后续叠加的每个时间单元正好对应脉冲串中的各个脉冲反射回的时间,此时采集到光子概率最高,并且该起始单元由于随机时间编码因此具备高度唯一性。因此,一旦在直方图中识别到了脉冲波形(波峰)所在的时间就可以计算出目标的飞行时间t了。一般而言,自适应性改变的直方图总的时间长度均不会超过最大飞行时间t 1,从而可以大幅减小计算量及内存消耗。 In one embodiment, the drawing order of the histogram can also be changed, that is, it is not necessary to start from 0 to draw time unit by time unit. For example, the dichotomy can be used to draw from the intermediate time, so that the pulse waveform can be quickly found. In short, the use of any suitable search algorithm that can locate the pulse waveform is suitable for this solution. In this embodiment, the total time length of the histogram will be adaptively changed based on the execution process of the search algorithm. Once the pulse waveform is detected, the calculation will stop, and then the pulse waveform can be used to determine the peak position to obtain the flight time t . Since this embodiment uses random time coding, in the histogram after superimposition, only one or more histogram time units corresponding to the time t of the reflection of the first pulse in the pulse train will form a higher value. There will be no multiple pulse waveforms like in Figure 3(b). In other words, only the time t of the reflection of the first pulse is used as the starting unit, and each time unit of subsequent superposition corresponds to the time of the reflection of each pulse in the pulse train. At this time, the probability of collecting photons is the highest. And the starting unit is highly unique due to random time coding. Therefore, once the time of the pulse waveform (peak) is identified in the histogram, the flight time t of the target can be calculated. Generally speaking, the total time length of the adaptively changed histogram will not exceed the maximum flight time t 1 , so that the amount of calculation and memory consumption can be greatly reduced.
同样地,在一些实施例中,绘制帧周期单光子计数时序串以及基于该时序串绘制直方图的过程也可以合二为一,即可以直接基于光子计数进行绘制直方图,当然也可以将两个步骤扩展成三个以上的步骤,其实现原理相同,只是实现形式有所区别,对应所需要的硬件电路也会有区别,比如在后文的具体处理电路设计中将详细说明合二为一的实现形式,可以减少存储容量,因此凡是利用这一原理的任意实现形式均在本发明的保护范围内。Similarly, in some embodiments, the process of drawing a frame period single-photon count timing string and drawing a histogram based on the timing string can also be combined into one, that is, the histogram can be drawn directly based on the photon count, or of course the two The two steps are expanded into more than three steps. The implementation principles are the same, but the implementation forms are different, and the corresponding hardware circuits will also be different. For example, the detailed description will be combined into one in the specific processing circuit design later. The realization form of, can reduce the storage capacity, so any realization form that uses this principle is within the protection scope of the present invention.
双重随机时间编码脉冲调制及解调方法Double random time code pulse modulation and demodulation method
图6(a)和图6(b)是根据本发明一个实施例的双重随机时间编码脉冲调制示意图。与图4(a)和图4(b)所示实施例相比,本实施例中脉冲串将以预先设定的双重随机(伪随机)间隔进行发射,即所有发射脉冲分成了多个脉冲组,每个脉冲组内包含多个脉冲,脉冲组内脉冲以第一随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)]的形 式进行发射,Δt i表示各个组内第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),n为脉冲组内脉冲的数量;组与组之间以第二随机时间编码[ΔT 1,ΔT 1+ΔT 2,ΔT 1+ΔT 2+ΔT 3,…,ΔT 1+ΔT 2…+ΔT (N-1)]的形式进行发射,ΔT j表示第j个脉冲组与第(j+1)个脉冲组的时间间隔,j=1,2,…(N-1),N代表脉冲组的数量,如图6(a)所示,单次测量共计发射N*n个脉冲。若被测目标在D处,对应的飞行时间是t,则在t时间后采集器12将相继接收到被目标反射的脉冲串中的光子,如图6(b)所示。为了保证避免相邻两个帧周期中脉冲光束的相互影响,帧周期T被设置成
Figure PCTCN2019103740-appb-000005
即当最目标位于最大测量距离处时,脉冲串中的最后一个脉冲从被发射器11反射起始直到被采集器12接收到结束所需要的时间正好是t 1,这样就确保了在单帧周期内所有的脉冲串均会被接收且不会有相邻帧周期内的脉冲影响。在一个实施例中,最大测量范围同样假定为Dmax=150m,n=1000,N=100,若组内脉冲周期的平均值
Figure PCTCN2019103740-appb-000006
组间周期平均值
Figure PCTCN2019103740-appb-000007
远小于前面实施例中的1us,帧周期T≈10ms,帧率高达100fps。
6(a) and 6(b) are schematic diagrams of dual random time-coded pulse modulation according to an embodiment of the present invention. Compared with the embodiment shown in Fig. 4(a) and Fig. 4(b), the pulse train in this embodiment will be transmitted at a preset double random (pseudo-random) interval, that is, all transmitted pulses are divided into multiple pulses Group, each pulse group contains multiple pulses, the pulses in the pulse group are coded with the first random time [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,..., Δt 1 + Δt 2 …+ Δt (n-1) ], Δt i represents the time interval between the i-th pulse and the (i+1)-th pulse in each group, i=1, 2,...(n-1), n is The number of pulses in a pulse group; the second random time code is used between groups [ΔT 1 , ΔT 1 + ΔT 2 , ΔT 1 + ΔT 2 + ΔT 3 ,..., ΔT 1 + ΔT 2 …+ΔT (N- 1) Transmit in the form of ], ΔT j represents the time interval between the jth pulse group and the (j+1)th pulse group, j=1, 2,...(N-1), N represents the number of pulse groups, As shown in Figure 6(a), a total of N*n pulses are emitted for a single measurement. If the measured target is at D and the corresponding flight time is t, the collector 12 will successively receive the photons in the pulse train reflected by the target after the time t, as shown in Fig. 6(b). In order to avoid the mutual influence of pulse beams in two adjacent frame periods, the frame period T is set to
Figure PCTCN2019103740-appb-000005
That is, when the most target is located at the maximum measurement distance, the time required for the last pulse in the pulse train from the beginning of reflection by the transmitter 11 to the end of being received by the collector 12 is exactly t 1 , which ensures that it is in a single frame All the bursts in the period will be received and will not be affected by the pulses in the adjacent frame period. In an embodiment, the maximum measurement range is also assumed to be Dmax=150m, n=1000, N=100, if the average value of the pulse period in the group
Figure PCTCN2019103740-appb-000006
Periodic Mean Between Groups
Figure PCTCN2019103740-appb-000007
It is much smaller than the 1 us in the previous embodiment, the frame period is T≈10 ms, and the frame rate is as high as 100 fps.
图7(a)和图7(b)是根据本发明一个实施例的双重随机时间编码连续单光子计数解调方法。与图5(a)和图5(b)所示实施例不同的是,在发射器11发射N*n个脉冲的同时,采集器12并非在整个脉冲串发射的时间段内均进行采集,而是仅在每个脉冲组被发射的时间内(考虑到光子返回时间差,可以适当大于脉冲组的时间周期)采集器12将被激活以采集来自目标反射的脉冲中的部分光子,处理电路13将处理并记录每个入射光子入射的相应时间,最终形成如图7(a)中所示的N个脉冲组周期单光子计数时序串,该时序串每个时间单元中记录的是光子计数值,时序串的总时间长度即是脉冲组对应的时间周期。Fig. 7(a) and Fig. 7(b) are a double random time coding continuous single photon counting demodulation method according to an embodiment of the present invention. The difference from the embodiment shown in Fig. 5(a) and Fig. 5(b) is that while the transmitter 11 transmits N*n pulses, the collector 12 does not collect during the entire pulse train transmission time period. Instead, the collector 12 will be activated to collect part of the photons in the pulse reflected from the target only during the time that each pulse group is emitted (considering the photon return time difference, it can be appropriately greater than the time period of the pulse group), the processing circuit 13 The corresponding time of each incident photon incidence will be processed and recorded, and finally a single photon counting time series of N pulse group cycles as shown in Figure 7(a) will be formed, and each time unit of the time series will record the photon count value. , The total time length of the sequence string is the time period corresponding to the pulse group.
在一个实施例中,所采集到的N个脉冲组周期单光子计数时序串被保存到内存中,随后由处理器13中的直方图电路基于该时序串绘制直方图。在进行绘制直方图时实际上采用的是传统TCSPC与图3、5所示实施例中的时间编码叠加融合的方式。即分两步进行绘制(两步无先后之分,也可以交叉进行),第一步类似传统TCSPC的方式,即将N个脉冲组周期单光子计数时序串之间相应时间单元中的光子计数进行叠加,如图7(a)中向上的加号箭头所示;第二步将第一步中所得到的总时序串根据脉冲组内脉冲发射的第一时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)]进行叠加,即将以当前要叠加的时间单元为起始单元,将时序串中后续与该起始单元相隔Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)的所有时间单元中的光子计数值与起始单元中的光子计数值进行依次叠加,叠加后的光子计数作为直方图中该时间单元的数值。比如对于直方图第一个时间单元的叠加方式,如图7(a)中的横向加号所示。最终将得到如图7(b)所示的直方图。 In one embodiment, the collected N pulse group period single photon counting time series are stored in the memory, and then the histogram circuit in the processor 13 draws a histogram based on the time series. When drawing the histogram, the method of superimposing and fusing the traditional TCSPC with the time code in the embodiment shown in Figs. 3 and 5 is actually used. That is to say, the drawing is performed in two steps (the two steps are not sequential, and can also be crossed). The first step is similar to the traditional TCSPC method, that is, the photon counting in the corresponding time unit between the N pulse group period single photon counting sequence series Superimpose, as shown by the upward plus arrow in Figure 7(a); in the second step, the total sequence obtained in the first step is coded according to the first time of pulse emission in the pulse group [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,…, Δt 1 + Δt 2 …+Δt (n-1) ] superimpose, that is, take the current time unit to be superimposed as the starting unit, and combine the subsequent ones in the sequence string with this The starting unit is separated by Δt 1 , Δt 1 +Δt 2 , Δt 1 +Δt 2 +Δt 3 ,..., Δt 1 +Δt 2 …+Δt (n-1) The photon count value and the starting unit in all time units The photon count values in are sequentially superimposed, and the superimposed photon count is used as the value of the time unit in the histogram. For example, for the superposition method of the first time unit of the histogram, as shown by the horizontal plus sign in Figure 7(a). Finally, the histogram shown in Figure 7(b) will be obtained.
在一些实施例中,也可以先进行时间编码叠加再进行TCSPC,即先将各个脉冲组 周期单光子计数时序串按第一时间编码的方式进行叠加,如图7(a)中的横向加号所示;再将得到的N个叠加后的时序串中的相应时间单元进行叠加,如图7(a)中的箭头加号所示。最终将得到如图7(b)所示的直方图。In some embodiments, time code superposition can also be performed first and then TCSPC, that is, the single photon counting sequence of each pulse group period is superimposed according to the first time code, as shown in the horizontal plus sign in Figure 7(a) As shown; and then superimpose the corresponding time units in the N superimposed time series, as shown by the arrow plus sign in Figure 7 (a). Finally, the histogram shown in Figure 7(b) will be obtained.
同样地,直方图的最小时间单元的大小可以是时序串最小时间单元的整数倍。另外直方图的相邻两个时间单元的间隔也可以大于1,比如每隔一个时间单元进行一次时间编码叠加,由此也可以降低绘制所需要的计算量及内存。Similarly, the size of the minimum time unit of the histogram can be an integer multiple of the minimum time unit of the time series. In addition, the interval between two adjacent time units of the histogram can also be greater than 1, for example, time code superimposition is performed every other time unit, which can also reduce the amount of calculation and memory required for rendering.
同样地,直方图的时间长度可以自适应调整,无需与脉冲组的周期长度相同。一般地,仅需要绘制从0开始到t 1这一时间段内的直方图,因为只在有目标在最大测量范围内,就一定会出现第一个波峰,而有第一个波峰就可以确定出飞行时间t了。 Similarly, the time length of the histogram can be adjusted adaptively and does not need to be the same as the period length of the pulse group. Generally, only need to draw the histogram from 0 to t 1 in the time period, because only when there is a target in the maximum measurement range, the first wave crest will definitely appear, and the first wave crest can be determined Flight time t is out.
在一个实施例中,对直方图中的脉冲波形进行寻找时,可以通过设定阈值的形式来寻找,高于阈值的数值被保留,低于阈值的数值被认为是噪声。In one embodiment, when searching for the pulse waveform in the histogram, it can be searched by setting a threshold value. Values above the threshold value are retained, and values below the threshold value are regarded as noise.
在一个实施例中,直方图的绘制顺序也可以改变,即不需要从0开始逐个时间单元进行绘制。比如可以利用二分法从中间时间开始绘制,从而可以快速找到脉冲波形。总之,利用任意合适的能定位出脉冲波形的搜索算法均适用于本方案。在本实施例中,直方图总的时间长度会基于搜索算法执行过程而进行自适应性改变,一旦检测到脉冲波形后即停止计算,随后就可以利用脉冲波形进行波峰位置确定从而获取飞行时间t。由于本实施例是随机时间编码,在叠加后的直方图中,仅脉冲串中第一个脉冲反射回的时间t所对应的一个或多个直方图时间单元上才会形成较高的数值,不会出现像图3(b)中的多个脉冲波形的情形。换句话说,只有以第一个脉冲反射回的时间t做为起始单元,其后续叠加的每个时间单元正好对应脉冲串中的各个脉冲反射回的时间,此时采集到光子概率最高,并且该起始单元由于随机时间编码因此具备高度唯一性。因此,一旦在直方图中识别到了脉冲波形(波峰)所在的时间就可以计算出目标的飞行时间t了。一般而言,自适应性改变的直方图总的时间长度均不会超过最大飞行时间t 1,从而可以大幅减小计算量及内存消耗。 In one embodiment, the drawing order of the histogram can also be changed, that is, it is not necessary to start from 0 to draw time unit by time unit. For example, the dichotomy can be used to draw from the intermediate time, so that the pulse waveform can be quickly found. In short, the use of any suitable search algorithm that can locate the pulse waveform is suitable for this solution. In this embodiment, the total time length of the histogram will be adaptively changed based on the execution process of the search algorithm. Once the pulse waveform is detected, the calculation will stop, and then the pulse waveform can be used to determine the peak position to obtain the flight time t . Since this embodiment uses random time coding, in the histogram after superimposition, only one or more histogram time units corresponding to the time t of the reflection of the first pulse in the pulse train will form a higher value. There will be no multiple pulse waveforms like in Figure 3(b). In other words, only the time t of the reflection of the first pulse is used as the starting unit, and each time unit of subsequent superposition corresponds to the time of the reflection of each pulse in the pulse train. At this time, the probability of collecting photons is the highest. And the starting unit is highly unique due to random time coding. Therefore, once the time of the pulse waveform (peak) is identified in the histogram, the flight time t of the target can be calculated. Generally speaking, the total time length of the adaptively changed histogram will not exceed the maximum flight time t 1 , so that the amount of calculation and memory consumption can be greatly reduced.
与图4(a)、4(b)和图5(a)、5(b)所示的随机调制解调方法相比,图6(a)、6(b)和图7(a)、7(b)所示的双重随机调制解调方法由于并非在整个帧周期内进行光子采集,不仅可以有效降低环境光噪声,同时可以大幅减小多设备共存时其他设备发射过来的光子进入,由此抗多机干扰效果更好。Compared with the random modulation and demodulation method shown in Figures 4(a), 4(b) and Figures 5(a), 5(b), Figures 6(a), 6(b) and 7(a), Since the dual random modulation and demodulation method shown in 7(b) does not collect photons in the entire frame period, it can not only effectively reduce ambient light noise, but also greatly reduce the entry of photons emitted by other devices when multiple devices coexist. This anti-multi-machine interference effect is better.
时间编码解调处理电路和处理方法Time code demodulation processing circuit and processing method
为了实现上述实施例中的时间编码解调,本发明还提供了时间编码解调处理电路和处理方法。In order to realize the time code demodulation in the above embodiment, the present invention also provides a time code demodulation processing circuit and processing method.
图8是根据本发明一个实施例的时间编码解调处理电路,时间编码解调处理电路82与像素单元81连接,像素单元81可以是SPAD像素用于检测反射光束的光子,处 理电路82对检测到的各个光子事件进行处理以计算光子往返的飞行时间。Fig. 8 is a time code demodulation processing circuit according to an embodiment of the present invention. The time code demodulation processing circuit 82 is connected to the pixel unit 81. The pixel unit 81 may be a SPAD pixel for detecting the photons of the reflected light beam. The processing circuit 82 detects The arrival of each photon event is processed to calculate the flight time of the photon back and forth.
本实施例的时间编码解调处理电路82包括采样电路821、时序串存储器822、读出地址寄存器823、时间编码序列存储器824、加法寄存器825、直方图时间单元计数器(简称bin计数器)826以及直方图存储器827。The time code demodulation processing circuit 82 of this embodiment includes a sampling circuit 821, a timing string memory 822, a read address register 823, a time code sequence memory 824, an addition register 825, a histogram time unit counter (referred to as a bin counter) 826, and a histogram Figure memory 827.
像素单元81采集反射光束的光子信号后将输出一次脉冲信号表示的光子检测事件,在一段时间内采样电路821在时钟发生器发出的时钟信号(例如1GHz)的控制下对脉冲信号进行采样,以形成帧周期单光子计数时序串。可以理解的是,采样电路821也可以如上文所述的包含TDC的电路,只要能将光子计数事件生成单光子计数时序串的电路即可。采样电路821的采样时间间隔一般不小于脉冲宽度,避免在一个脉冲宽度对应的时间无法采样到光子的情况发生。在一个实施例中,当像素单元81检测到光子时,采样电路821将输出数字信号1,当没有检测到光子时,采样电路821将输出数字信号0,因此在一段时间内,采样电路821将输出一串0、1序列串,一个帧周期内形成的序列串即是帧周期单光子计数时序串。After the pixel unit 81 collects the photon signal of the reflected light beam, it will output a photon detection event represented by the pulse signal. During a period of time, the sampling circuit 821 will sample the pulse signal under the control of the clock signal (for example, 1 GHz) sent by the clock generator. A single-photon counting timing string is formed in the frame period. It can be understood that the sampling circuit 821 may also include a TDC circuit as described above, as long as it can generate a single-photon counting timing sequence from a photon counting event. The sampling time interval of the sampling circuit 821 is generally not less than the pulse width, so as to avoid the situation that photons cannot be sampled at a time corresponding to a pulse width. In one embodiment, when the pixel unit 81 detects a photon, the sampling circuit 821 will output a digital signal 1. When no photon is detected, the sampling circuit 821 will output a digital signal 0. Therefore, within a period of time, the sampling circuit 821 will output a digital signal of 0. A sequence of 0 and 1 is output, and the sequence formed in one frame period is the single photon counting sequence of the frame period.
由采样电路821采样得到的帧周期单光子计数时序串将按照内存单元地址依次存储到时序串存储器822中,一般地,根据采样时长的不同,时序串存储器822的内存大小也不同,比如当采样时长是1000ns,采样间隔1ns,需要对应的内存是1000bits。The frame period single photon counting time series sampled by the sampling circuit 821 will be sequentially stored in the time series memory 822 according to the memory unit address. Generally, the memory size of the time series memory 822 is different according to the sampling time, for example, when sampling The duration is 1000ns, the sampling interval is 1ns, and the corresponding memory is 1000bits.
时间编码序列存储器824用于保存预先写入的时间编码序列,比如图2(a)所示的规则时间编码序列,或者图4(a)所示的随机时间编码序列。The time code sequence memory 824 is used to store pre-written time code sequences, such as the regular time code sequence shown in FIG. 2(a) or the random time code sequence shown in FIG. 4(a).
读出地址寄存器823用于存储需要读出来的时序串存储器822中内存单元的地址,在时钟信号控制下时序串存储器822将会按照读出地址寄存器823中的地址读出相应地址上的数据至加法寄存器825。随后,读出地址寄存器823会自动跳变到下一个需要读取的地址,比如当前地址是x,则会基于时间编码序列存储器824中保存的时间编码序列,自动跳变到下一个需要读取的地址:x+Δt i,其中Δt i是时间编码序列存储器824中保存的时间间隔序列值。 The read address register 823 is used to store the address of the memory unit in the time series memory 822 that needs to be read out. Under the control of the clock signal, the time series memory 822 will read the data at the corresponding address according to the address in the read address register 823 to Addition register 825. Subsequently, the read address register 823 will automatically jump to the next address that needs to be read. For example, if the current address is x, it will automatically jump to the next address that needs to be read based on the time code sequence stored in the time code sequence memory 824. The address of: x+Δt i , where Δt i is the time interval sequence value stored in the time code sequence memory 824.
加法寄存器825用于执行加法计算,将当前其保存的数据与时序串存储器822中传输过来的相应存储单元中的数据进行相加,当时间编码序列存储器824中的所有序列都读完后,该加法寄存器825即完成了一个直方图时间单元bin的计算,随后将该值写到直方图存储器827中以绘制直方图。The addition register 825 is used to perform addition calculations, and add the data currently stored in it with the data in the corresponding storage unit transferred from the time sequence memory 822. When all the sequences in the time code sequence memory 824 have been read, the The addition register 825 completes the calculation of a histogram time unit bin, and then writes the value into the histogram memory 827 to draw the histogram.
bin计数器826用于存储当前绘制的bin的编号,当时间编码序列存储器824中的所有序列全部读完后,即当前bin绘制结束后,给bin计数器826以及加法寄存器825发送脉冲,bin计数器826的编号自动+1,以开始下一个bin的绘制,将该bin的数值写入到直方图存储器827中,同时将加法寄存器825清0。The bin counter 826 is used to store the number of the currently drawn bin. When all the sequences in the time code sequence memory 824 are read, that is, after the current bin drawing is finished, pulses are sent to the bin counter 826 and the addition register 825, and the bin counter 826 The number is automatically +1 to start the drawing of the next bin, the value of this bin is written into the histogram memory 827, and the addition register 825 is cleared to 0 at the same time.
在直方图各个bin绘制完成后,处理电路82可以进一步根据直方图计算飞行时间。After the bins of the histogram are drawn, the processing circuit 82 may further calculate the flight time based on the histogram.
在图8所示实施例中,数据的采样与直方图的绘制在时序上先后执行的,即先将 帧周期单光子计数时序串采样完成保存到时序串存储器822中,随后对该时序串进行数据处理以获取直方图。为了减少处理时间以提升帧率,在一个实施例中,可以采用多时序串存储器822的方式,比如采用双时序串存储器822,当一帧数据采样完成后保存到第一时序串存储器822中,随后在利用第一时序串存储器822中的时序串进行直方图绘制时,采样电路821同步工作,并将采样得到的时序串保存到第二时序串存储器822中。如此往复,当利用第二时序串存储器822中的时序串进行直方图绘制时,采样电路821会将采样得到的时序串保存到第一时序串存储器822中。如此,便可以大大提升采样时间,提升帧率。In the embodiment shown in FIG. 8, the sampling of the data and the drawing of the histogram are performed sequentially in time sequence, that is, the sampling of the frame period single photon counting time series is first saved in the time series memory 822, and then the time series is executed. Data processing to obtain histogram. In order to reduce the processing time and increase the frame rate, in one embodiment, a multi-timing string memory 822 may be used, for example, a dual timing string memory 822 is used, and when one frame of data is sampled, it is stored in the first timing string memory 822. Subsequently, when the histogram is drawn using the time series in the first time series memory 822, the sampling circuit 821 works synchronously, and saves the sampled time series in the second time series memory 822. In this reciprocation, when the histogram is drawn using the time series in the second time series memory 822, the sampling circuit 821 saves the sampled time series in the first time series memory 822. In this way, the sampling time can be greatly increased, and the frame rate can be increased.
在一个实施例中,基于图8所示的处理电路,本发明还提供了一种时间编码解调方法,该方法包括以下步骤:In an embodiment, based on the processing circuit shown in FIG. 8, the present invention also provides a time code demodulation method, which includes the following steps:
预先将时间编码序列保存到时间编码序列存储器824中;Save the time code sequence in the time code sequence memory 824 in advance;
由采样电路821对像素单元81检测到的反射光束的光子事件进行采样,以形成帧周期单光子计数时序串并保存到时序串存储器822中;The sampling circuit 821 samples the photon events of the reflected light beam detected by the pixel unit 81 to form a frame period single photon counting time series and save it in the time series memory 822;
将当前需要读出来的所述时序串存储器822中内存单元的地址保存到读出地址寄存器823中,所述地址会根据所述时间编码序列自动跳变到下一个需要读取的地址;Save the address of the memory unit in the timing string memory 822 that currently needs to be read into the read address register 823, and the address will automatically jump to the next address that needs to be read according to the time code sequence;
根据所述读出地址寄存器823中的地址从所述时序串存储器822中读出相应地址上的数据至加法寄存器825;According to the address in the read address register 823, read the data at the corresponding address from the timing string memory 822 to the addition register 825;
由所述加法寄存器825执行其当前保存的数据与所述时序串存储器822读出的数据之间的加法运算,并将其运算结果传输至直方图存储器827的相应bin中以绘制直方图;The addition register 825 executes the addition operation between the data currently saved and the data read out by the timing string memory 822, and transmits the operation result to the corresponding bin of the histogram memory 827 to draw a histogram;
将前绘制bin的编号保存到bin计数器826中,并当当前bin绘制结束后所述编号自动加1。The number of the previously drawn bin is stored in the bin counter 826, and the number is automatically increased by 1 when the current bin drawing is completed.
图8所示实施例对存储器的要求较高,对于当前将SPAD感光以及数据处理电路高度集成到单颗芯片的技术趋势来说,若将处理电路进行单片集成时,片上存储器的容量将较大,不利于芯片量产。为了解决这一问题,本发明提供一种实时直方图绘制的解调方法。The embodiment shown in FIG. 8 has higher requirements on the memory. For the current technological trend of highly integrating SPAD photosensitive and data processing circuits into a single chip, if the processing circuit is monolithically integrated, the capacity of the on-chip memory will be higher. It is not conducive to mass production of chips. To solve this problem, the present invention provides a demodulation method for real-time histogram drawing.
图9是根据本发明一个实施例的实时时间编码解调处理电路,时间编码解调处理电路92与像素单元91连接,像素单元91可以是SPAD像素用于检测反射光束的光子,处理电路92对检测到的各个光子事件进行处理以计算光子往返的飞行时间。Figure 9 is a real-time time code demodulation processing circuit according to an embodiment of the present invention. The time code demodulation processing circuit 92 is connected to the pixel unit 91. The pixel unit 91 may be a SPAD pixel for detecting photons of the reflected light beam. The processing circuit 92 Each detected photon event is processed to calculate the round-trip flight time of the photon.
考虑到在直方图各时间单元bin在进行叠加时,在时间编码确定的前提下,每个bin在执行叠加计算时所需要的时序串中的时间单元(即相应光子事件的时间点)根据时间编码是已知的。基于此,可以先将每个bin地址与其所需要叠加的时序串中的时间单元地址之间的对应关系预先保存起来,采样电路921实时输出的光子计数值将会基于该对应关系,就知道当前光子计数值所对应的bin,随后该光子计数值被选通以进入相 应的bin中进行叠加。Considering that when the bins of each time unit of the histogram are superimposed, under the premise that the time code is determined, the time unit (that is, the time point of the corresponding photon event) in the sequence string required for each bin to perform the superposition calculation is based on time The code is known. Based on this, the corresponding relationship between each bin address and the time unit address in the time sequence that needs to be superimposed can be saved in advance. The photon count value output by the sampling circuit 921 in real time will be based on the corresponding relationship, and the current The bin corresponding to the photon count value, and then the photon count value is gated to enter the corresponding bin for superposition.
本实施例的时间编码解调处理电路92包括采样电路921、时间编码序列控制器922、时间编码序列控制存储器923以及直方图存储器924。The time code demodulation processing circuit 92 of this embodiment includes a sampling circuit 921, a time code sequence controller 922, a time code sequence control memory 923, and a histogram memory 924.
像素单元91采集反射光束的光子信号后将输出一次脉冲信号表示的光子检测事件,采样电路921在时钟发生器发出的时钟信号(例如1GHz)的控制下对脉冲信号进行采样,以输出采样信号(即光子计数值0或1),采样信号至时间编码序列控制器922,时间编码序列控制器922将根据时间编码序列控制存储器923中保存的对应关系,以控制该采样信号进入直方图存储器924中的相应bin中进行叠加,比如可以通过三态门、传输门等方式实现对采样信号的选通。其中时间编码序列控制存储器923中保存了用于控制采样信号与需要开启的bin之间的对应关系,比如其包含了一个n x j的存储空间,n为时间bin的数量,j与像素单元的测量序列位数相同,每个时钟作用上,会将对应的n bit数据传输至时间编码序列控制器922以控制相应的采样信号的选通。After the pixel unit 91 collects the photon signal of the reflected light beam, it will output a photon detection event represented by the pulse signal. The sampling circuit 921 samples the pulse signal under the control of the clock signal (for example, 1 GHz) sent by the clock generator to output the sampling signal ( That is, the photon count value is 0 or 1), the sampling signal is sent to the time code sequence controller 922, and the time code sequence controller 922 will control the corresponding relationship stored in the memory 923 according to the time code sequence to control the sampling signal to enter the histogram memory 924 For example, the sampling signal can be selected by means of three-state gates, transmission gates, etc. to superimpose in the corresponding bins. The time code sequence control memory 923 saves the corresponding relationship between the sampling signal and the bin that needs to be turned on. For example, it contains a storage space of n x j, where n is the number of time bins, and j is the number of bins in the pixel unit. The number of bits of the measurement sequence is the same. For each clock function, the corresponding n bits of data are transmitted to the time code sequence controller 922 to control the gating of the corresponding sampling signal.
在一个实施例中,基于图9所示的时间编码解调处理电路,本发明还提供了一种时间编码解调方法,该方法包括以下步骤:In an embodiment, based on the time code demodulation processing circuit shown in FIG. 9, the present invention also provides a time code demodulation method, which includes the following steps:
预先将采样信号与需要开启的直方图存储器924中bin之间的对应关系写入时间编码序列控制存储器923中;Pre-write the corresponding relationship between the sampling signal and the bin in the histogram memory 924 that needs to be turned on into the time code sequence control memory 923;
由采样电路对像素单元921检测到的反射光束的光子事件进行采样,以形成所述采样信号;Sampling the photon events of the reflected light beam detected by the pixel unit 921 by the sampling circuit to form the sampling signal;
由时间编码序列控制器922根据所述时间编码序列控制存储器923中保存的所述对应关系,以控制所述采样信号进入直方图存储器924中的相应bin中进行叠加以绘制直方图。The time code sequence controller 922 controls the corresponding relationship stored in the memory 923 according to the time code sequence to control the sampling signal to enter the corresponding bin in the histogram memory 924 for superimposition to draw a histogram.
可以理解的是,图8、9所示的处理电路不仅适用于图3(a)、3(b)和图5(a)、5(b)所示实施例中的解调方法,同样适用于图7(a)、7(b)所示实施例中的解调方法。It is understandable that the processing circuits shown in Figs. 8 and 9 are not only applicable to the demodulation methods in the embodiments shown in Figs. 3(a), 3(b) and 5(a), 5(b), but are also applicable The demodulation method in the embodiment shown in Figs. 7(a) and 7(b).
可以理解的是,在上述描述中,为了便于阐述各个部分之间的关系,将各个模块独立进行说明,在实际应用中,多个模块也可以进行合并,比如时序串存储器、时间编码存储器等可以是同一个存储器。因此,通过合并、拆分等方式进行的等价替代方案也应当视为本发明的保护范围。It is understandable that in the above description, in order to facilitate the elaboration of the relationship between the various parts, each module is described independently. In practical applications, multiple modules can also be combined, such as timing string memory, time code memory, etc. It is the same memory. Therefore, equivalent alternatives through merging, splitting, etc. should also be regarded as the protection scope of the present invention.
可以理解的是,当将本发明的距离测距系统嵌入装置或硬件中时会作出相应的结构或部件变化以适应需求,其本质仍然采用本发明的距离测距系统,所以应当视为本发明的保护范围。以上内容是结合具体/优选的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,其还可以对这些已描述的实施方式做出若干替代或变型,而这些替代或变型方式都应当视为属于本发明的保护范围。在本说明书的描述中,参考术语“一种实施例”、“一些实施例”、“优选实施例”、“示例”、 “具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。尽管已经详细描述了本发明的实施例及其优点,但应当理解,在不脱离由所附权利要求限定的范围的情况下,可以在本文中进行各种改变、替换和变更。此外,本发明的范围不旨在限于说明书中所述的过程、机器、制造、物质组成、手段、方法和步骤的特定实施例。本领域普通技术人员将容易理解,可以利用执行与本文所述相应实施例基本相同功能或获得与本文所述实施例基本相同结果的目前存在的或稍后要开发的上述披露、过程、机器、制造、物质组成、手段、方法或步骤。因此,所附权利要求旨在将这些过程、机器、制造、物质组成、手段、方法或步骤包含在其范围内。It can be understood that when the distance ranging system of the present invention is embedded in a device or hardware, corresponding structural or component changes will be made to adapt to requirements. The essence of the distance ranging system of the present invention is still adopted, so it should be regarded as the present invention The scope of protection. The above content is a further detailed description of the present invention in combination with specific/preferred embodiments, and it cannot be considered that the specific implementation of the present invention is limited to these descriptions. For those of ordinary skill in the technical field to which the present invention belongs, without departing from the concept of the present invention, they can also make several substitutions or modifications to the described embodiments, and these substitutions or modifications should be regarded as It belongs to the protection scope of the present invention. In the description of this specification, reference to the description of the terms "one embodiment", "some embodiments", "preferred embodiment", "examples", "specific examples", or "some examples" etc. means to incorporate the implementation The specific features, structures, materials or characteristics described in the examples or examples are included in at least one embodiment or example of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the described specific features, structures, materials or characteristics may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art can combine and combine the different embodiments or examples and the features of the different embodiments or examples described in this specification without contradicting each other. Although the embodiments of the present invention and its advantages have been described in detail, it should be understood that various changes, substitutions and alterations can be made herein without departing from the scope defined by the appended claims. In addition, the scope of the present invention is not intended to be limited to specific embodiments of the processes, machines, manufacturing, material composition, means, methods, and steps described in the specification. A person of ordinary skill in the art will easily understand that the above-mentioned disclosures, processes, machines, processes, machines, processes that currently exist or will be developed later that perform substantially the same functions as the corresponding embodiments described herein or obtain substantially the same results as the embodiments described herein can be used. Manufacturing, material composition, means, method, or step. Therefore, the appended claims intend to include these processes, machines, manufacturing, material compositions, means, methods, or steps within their scope.

Claims (10)

  1. 一种时间编码解调处理电路,与像素单元连接,其特征在于,包括:A time code demodulation processing circuit, connected to a pixel unit, characterized in that it comprises:
    采样电路,经配置以对所述像素单元检测到的反射光束的光子事件进行采样,以形成采样信号;A sampling circuit configured to sample the photon events of the reflected light beam detected by the pixel unit to form a sampling signal;
    直方图存储器,经配置以存储将绘制的包含多个直方图时间单元的直方图;A histogram memory, configured to store a histogram to be drawn containing multiple histogram time units;
    时间编码序列控制存储器,经配置以存储预先写入的所述采样信号与需要开启的所述直方图时间单元之间的对应关系;A time code sequence control memory, configured to store the correspondence between the pre-written sampling signal and the histogram time unit that needs to be turned on;
    时间编码序列控制器,经配置以根据所述时间编码序列控制存储器中保存的所述对应关系,控制所述采样信号进入相应的所述直方图时间单元中进行叠加以绘制所述直方图。The time code sequence controller is configured to control the corresponding relationship stored in the memory according to the time code sequence to control the sampling signal to enter the corresponding histogram time unit for superimposition to draw the histogram.
  2. 如权利要求1所述的时间编码解调处理电路,其特征在于,所述处理电路经配置以确定所述直方图中的脉冲波形对应的时间;并根据所述脉冲波形对应的时间确定飞行时间。The time code demodulation processing circuit of claim 1, wherein the processing circuit is configured to determine the time corresponding to the pulse waveform in the histogram; and determine the flight time according to the time corresponding to the pulse waveform .
  3. 如权利要求1所述的时间编码解调处理电路,其特征在于,所述时间编码为规则时间编码[Δt,2Δt,3Δt,…,(n-1)Δt],其中Δt为脉冲周期,n为脉冲串包含的脉冲的数量。The time code demodulation processing circuit according to claim 1, wherein the time code is a regular time code [Δt, 2Δt, 3Δt,..., (n-1)Δt], where Δt is a pulse period, n Is the number of pulses contained in the pulse train.
  4. 如权利要求1所述的时间编码解调处理电路,其特征在于,所述时间编码为随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)],Δt i表示第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),其中n为脉冲串包含的脉冲的数量。 The time code demodulation processing circuit according to claim 1, wherein the time code is a random time code [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,..., Δt 1 + Δt 2 …+Δt (n-1) ], Δt i represents the time interval between the i-th pulse and the (i+1)th pulse, i=1,2,...(n-1), where n is the pulse train The number of pulses included.
  5. 如权利要求1所述的时间编码解调处理电路,其特征在于,所述时间编码为双重随机时间编码,包括第一随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)]以及第二随机时间编码[ΔT 1,ΔT 1+ΔT 2,ΔT 1+ΔT 2+ΔT 3,…,ΔT 1+ΔT 2…+ΔT (N-1)],其中Δt i表示脉冲组内第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),n为所述脉冲组内脉冲的数量;ΔT j表示第j个所述脉冲组与第(j+1)个所述脉冲组的时间间隔,j=1,2,…(N-1),N代表所述脉冲组的数量。 The time code demodulation processing circuit according to claim 1, wherein the time code is a double random time code, including a first random time code [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,…,Δt 1 +Δt 2 …+Δt (n-1) ] and the second random time code [ΔT 1 , ΔT 1 +ΔT 2 , ΔT 1 +ΔT 2 +ΔT 3 ,…, ΔT 1 +ΔT 2 …+ΔT (N-1) ], where Δt i represents the time interval between the i-th pulse and the (i+1)-th pulse in the pulse group, i=1, 2,…(n-1), n is The number of pulses in the pulse group; ΔT j represents the time interval between the jth pulse group and the (j+1)th pulse group, j=1,2,...(N-1), N represents The number of pulse groups.
  6. 一种时间编码解调方法,其特征在于,包括如下步骤:A time code demodulation method, characterized in that it comprises the following steps:
    预先将采样信号与需要开启的直方图存储器中的直方图时间单元之间的对应关系写入时间编码序列控制存储器中;Pre-write the corresponding relationship between the sampling signal and the histogram time unit in the histogram memory that needs to be turned on into the time code sequence control memory;
    由采样电路对像素单元检测到的反射光束的光子事件进行采样,以形成所述采样信号;Sampling the photon events of the reflected light beam detected by the pixel unit by the sampling circuit to form the sampling signal;
    由时间编码序列控制器根据所述时间编码序列控制存储器中保存的所述对应关系, 以控制所述采样信号进入所述直方图存储器中的直方图时间单元中进行叠加以绘制直方图。The time code sequence controller controls the corresponding relationship stored in the memory according to the time code sequence to control the sampling signal to enter the histogram time unit in the histogram memory for superimposition to draw a histogram.
  7. 如权利要求6所述的时间编码解调处理方法,其特征在于,还包括如下步骤:8. The time code demodulation processing method of claim 6, further comprising the following steps:
    确定所述直方图中的脉冲波形对应的时间;Determining the time corresponding to the pulse waveform in the histogram;
    根据所述脉冲波形对应的时间确定飞行时间。The flight time is determined according to the time corresponding to the pulse waveform.
  8. 如权利要求6所述的时间编码解调处理方法,其特征在于,所述时间编码为规则时间编码[Δt,2Δt,3Δt,…,(n-1)Δt],其中Δt为脉冲周期,n为脉冲串包含的脉冲的数量。The time code demodulation processing method according to claim 6, wherein the time code is a regular time code [Δt, 2Δt, 3Δt,..., (n-1)Δt], where Δt is the pulse period, n Is the number of pulses contained in the pulse train.
  9. 如权利要求6所述的时间编码解调处理方法,其特征在于,所述时间编码为随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)],Δt i表示第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),其中n为脉冲串包含的脉冲的数量。 The time code demodulation processing method according to claim 6, wherein the time code is a random time code [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,..., Δt 1 + Δt 2 …+Δt (n-1) ], Δt i represents the time interval between the i-th pulse and the (i+1)th pulse, i=1,2,...(n-1), where n is the pulse train The number of pulses included.
  10. 如权利要求6所述的时间编码解调处理方法,其特征在于,所述时间编码为双重随机时间编码,包括第一随机时间编码[Δt 1,Δt 1+Δt 2,Δt 1+Δt 2+Δt 3,…,Δt 1+Δt 2…+Δt (n-1)]以及第二随机时间编码[ΔT 1,ΔT 1+ΔT 2,ΔT 1+ΔT 2+ΔT 3,…,ΔT 1+ΔT 2…+ΔT (N-1)],其中Δt i表示脉冲组内第i个脉冲与第(i+1)个脉冲的时间间隔,i=1,2,…(n-1),n为所述脉冲组内脉冲的数量;ΔT j表示第j个所述脉冲组与第(j+1)个所述脉冲组的时间间隔,j=1,2,…(N-1),N代表所述脉冲组的数量。 The time code demodulation processing method according to claim 6, wherein the time code is a double random time code, including a first random time code [Δt 1 , Δt 1 + Δt 2 , Δt 1 + Δt 2 + Δt 3 ,…,Δt 1 +Δt 2 …+Δt (n-1) ] and the second random time code [ΔT 1 , ΔT 1 +ΔT 2 , ΔT 1 +ΔT 2 +ΔT 3 ,…, ΔT 1 +ΔT 2 …+ΔT (N-1) ], where Δt i represents the time interval between the i-th pulse and the (i+1)-th pulse in the pulse group, i=1, 2,…(n-1), n is The number of pulses in the pulse group; ΔT j represents the time interval between the jth pulse group and the (j+1)th pulse group, j=1,2,...(N-1), N represents The number of pulse groups.
PCT/CN2019/103740 2019-08-30 2019-08-30 Time code demodulation processing circuit and method WO2021035697A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/103740 WO2021035697A1 (en) 2019-08-30 2019-08-30 Time code demodulation processing circuit and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2019/103740 WO2021035697A1 (en) 2019-08-30 2019-08-30 Time code demodulation processing circuit and method

Publications (1)

Publication Number Publication Date
WO2021035697A1 true WO2021035697A1 (en) 2021-03-04

Family

ID=74684346

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/103740 WO2021035697A1 (en) 2019-08-30 2019-08-30 Time code demodulation processing circuit and method

Country Status (1)

Country Link
WO (1) WO2021035697A1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103400366A (en) * 2013-07-03 2013-11-20 西安电子科技大学 Method for acquiring dynamic scene depth based on fringe structure light
CN103616696A (en) * 2013-11-27 2014-03-05 中国电子科技集团公司第三十八研究所 Laser imaging radar device and distance measurement method thereof
US20170016981A1 (en) * 2015-07-17 2017-01-19 Hexagon Technology Center Gmbh Time-of-flight measurement apparatus and time-of-flight measurement method with ambiguity resolution in real time
CN107831486A (en) * 2017-09-28 2018-03-23 成都傅立叶电子科技有限公司 A kind of laser guidance anti-interference processing method

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103400366A (en) * 2013-07-03 2013-11-20 西安电子科技大学 Method for acquiring dynamic scene depth based on fringe structure light
CN103616696A (en) * 2013-11-27 2014-03-05 中国电子科技集团公司第三十八研究所 Laser imaging radar device and distance measurement method thereof
US20170016981A1 (en) * 2015-07-17 2017-01-19 Hexagon Technology Center Gmbh Time-of-flight measurement apparatus and time-of-flight measurement method with ambiguity resolution in real time
CN107831486A (en) * 2017-09-28 2018-03-23 成都傅立叶电子科技有限公司 A kind of laser guidance anti-interference processing method

Similar Documents

Publication Publication Date Title
CN110632578B (en) System and method for time-encoded time-of-flight distance measurement
CN110609291B (en) System and method for time-coded time-of-flight distance measurement
WO2021035694A1 (en) System and method for time-coding-based time-of-flight distance measurement
WO2021051477A1 (en) Time of flight distance measurement system and method with adjustable histogram
WO2021248892A1 (en) Distance measurement system and measurement method
WO2021051478A1 (en) Time-of-flight-based distance measurement system and method for dual-shared tdc circuit
CN110632576B (en) Time coding demodulation processing circuit and method
WO2021212914A1 (en) Time delay-based distance measurement system and method
WO2021051479A1 (en) Interpolation-based time of flight measurement method and system
WO2021051480A1 (en) Dynamic histogram drawing-based time of flight distance measurement method and measurement system
CN105043539B (en) Method and apparatus for running photodetector
US9316735B2 (en) Proximity detection apparatus and associated methods having single photon avalanche diodes for determining a quality metric based upon the number of events
WO2021051481A1 (en) Dynamic histogram drawing time-of-flight distance measurement method and measurement system
CN110632577A (en) Time coding demodulation processing circuit and method
CN111487638B (en) Distance measurement system and method based on time delay
CN110221274A (en) Time flight depth camera and the distance measurement method of multifrequency modulation /demodulation
CN110221272A (en) Time flight depth camera and jamproof distance measurement method
CN110221273A (en) Time flight depth camera and the distance measurement method of single-frequency modulation /demodulation
CN111427230A (en) Imaging method based on time flight and 3D imaging device
US20220187430A1 (en) Time of flight calculation with inter-bin delta estimation
WO2020223981A1 (en) Time flight depth camera and multi-frequency modulation and demodulation distance measuring method
CN212135134U (en) 3D imaging device based on time flight
US20220099814A1 (en) Power-efficient direct time of flight lidar
WO2021035697A1 (en) Time code demodulation processing circuit and method
WO2021035696A1 (en) Time code demodulation processing circuit and method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19942974

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19942974

Country of ref document: EP

Kind code of ref document: A1