Time-of-flight measurement method, storage medium and device
By dividing and coherently processing the timestamp set in the time-of-flight measurement system, histogram data is generated to identify echo signals, thus solving the problem of noise signal influence and improving the accuracy of measurement and the signal-to-ground noise ratio (SBNR).
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-12-24
- Publication Date
- 2026-03-27
AI Technical Summary
In existing time-of-flight measurement systems, the impact of noise signals on measurement accuracy is difficult to reduce effectively, leading to a decrease in the accuracy of measurement results, especially with a high error rate in strong ambient light or distant target conditions.
By acquiring a set of timestamps from multiple integration periods, dividing them into groups and accumulating them, and then performing coherent processing to generate a coherent timestamp set, histogram data is generated using the coherent timestamp set, thereby identifying echo signals and noise signals and improving the signal-to-ground noise ratio (SBNR).
It effectively improves the accuracy of time-of-flight measurement, reduces the impact of noise signals on measurement results, and enhances measurement accuracy under different environmental conditions.
Smart Images

Figure CN116338709B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of measurement, in particular to a time of flight measurement method, a storage medium and a device. BACKGROUND
[0002] Time of flight (TOF) measurement system has important applications in various three-dimensional ranging and three-dimensional imaging fields, such as autonomous driving, face recognition, 3D games, and virtual reality, etc. Specifically, the time of flight measurement (TOF) technology is that a light source emits a continuous or pulsed outgoing light beam, which is reflected by a measured target and returns, and a photoelectric sensor receives the returned echo light beam, and the time difference between the emitted outgoing light beam and the received echo light beam, or the phase difference between the outgoing light beam and the echo light beam, is calculated to convert the distance of the measured target, i.e. depth information.
[0003] In the actual measurement process of time of flight, the interference of ambient light and the dark noise of the photoelectric sensor itself will cause the measurement system to generate a large amount of interference information, i.e. noise signal. Therefore, how to avoid the influence of the noise signal to improve the accuracy of time of flight ranging is a technical problem to be solved by those skilled in the art. SUMMARY
[0004] The technical problem to be solved by the embodiments of the present application is to provide a time of flight measurement method, a storage medium and a device, to reduce the influence of noise signal on measurement and improve the accuracy of measuring time of flight.
[0005] In a first aspect, the present application provides a time of flight measurement method, comprising:
[0006] obtaining N sets of time stamps; wherein N is an integer greater than 1, each set of time stamps represents a photon event corresponding to an integration period, each set of time stamps includes a plurality of time stamps, the integration periods of the time stamps are equal, and each set of time stamps includes the time stamps of one or more echo signals collected by a TDC in an integration period;
[0007] dividing the N sets of time stamps into K groups; wherein K is an integer greater than 1, each group includes one or more sets of time stamps; the number of sets of time stamps in each group can be equal or not equal;
[0008] accumulating the sets of time stamps included in each group to obtain K fragments; wherein each fragment includes a plurality of time stamps;
[0009] coherently processing the K fragments to obtain a set of coherent time stamps;
[0010] generating histogram data based on the set of coherent time stamps;
[0011] determine a time of flight from the histogram data.
[0012] In a second aspect, the present application provides a time of flight measurement device, comprising:
[0013] an acquisition unit configured to acquire N sets of timestamps, wherein N is an integer greater than 1, each set of timestamps represents photon events corresponding to an integration period, and each set of timestamps comprises a plurality of timestamps, and integration periods of the sets of timestamps are equal;
[0014] a division unit configured to divide the N sets of timestamps into K groups, wherein K is an integer greater than 1, and each group comprises one or more sets of timestamps;
[0015] an accumulation unit configured to accumulate the sets of timestamps included in each group to obtain K segments, wherein each segment comprises a plurality of timestamps;
[0016] a coherence unit configured to perform coherence processing on the K segments to obtain a set of coherent timestamps;
[0017] a generation unit configured to generate histogram data based on the set of coherent timestamps;
[0018] a determination unit configured to determine a time of flight from the histogram data.
[0019] Based on the same application concept, since the principle and beneficial effects of the device in solving the problem can be referred to the above-mentioned method embodiments of the possible distance compensation device and the beneficial effects brought by the same, the implementation of the device can be referred to the implementation of the method, and the repeated parts will not be described herein.
[0020] In yet another aspect of the present application, a computer readable storage medium is provided, and the computer readable storage medium stores instructions, when the instructions are run on a computer, the computer is caused to execute the method described in the above aspects.
[0021] In yet another aspect of the present application, a computer program product containing instructions is provided, when the instructions are run on a computer, the computer is caused to execute the method described in the above aspects.
[0022] In the embodiment of the present application, the time-to-digital converter acquires a plurality of timestamp sets collected in an integration period, divides the plurality of timestamp sets in units of slices, performs coherent operation between the plurality of divided slices to obtain a coherent timestamp set, and generates histogram data by using the coherent timestamp set. Thus, the present application can determine echo signals and noise signals according to the size of the timestamp count value in the histogram data, and determine the time of flight and the timestamp corresponding to the noise signal according to the timestamp in the histogram data. In this way, the signal-to-background noise ratio (SBNR) of the distance detector is improved, and the accuracy of measuring the time of flight of the distance detector is effectively improved. BRIEF DESCRIPTION OF DRAWINGS
[0023] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the background art, the drawings needed to be used in the embodiments of the present application or the background art will be described below.
[0024] Figure 1A is a structural schematic diagram of a distance detector in a time-of-flight measurement device provided by the embodiment of the present application;
[0025] Figure 1B is a principle schematic diagram of generating histogram data provided by the embodiment of the present application;
[0026] Figure 1C and Figure 1D is a schematic diagram of histogram data
[0027] Figure 2 is a flow schematic diagram of a time-of-flight measurement method provided by the embodiment of the present application;
[0028] Figure 3 is a schematic diagram of accumulating timestamp sets in a group provided by the embodiment of the present application;
[0029] Figure 4 and Figure 5 is a principle schematic diagram of slice coherent processing provided by the embodiment of the present application;
[0030] Figure 6 is histogram data before coherent processing of the embodiment of the present application;
[0031] Figure 7 is histogram data after coherent processing provided by the embodiment of the present application;
[0032] Figure 8 is a structural schematic diagram of a time-of-flight measurement device provided by the embodiment of the present application;
[0033] Figure 9 is another structural schematic diagram of a time-of-flight measurement device provided by the embodiment of the present application. DETAILED DESCRIPTION
[0034] In order to make the application purposes, features, and advantages of the embodiments of the present application more obvious and easy to understand, the technical solutions in the embodiments of the present application will be described clearly and completely below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work fall within the scope of protection of the present application.
[0035] The following description refers to the accompanying drawings. Unless otherwise indicated, same or similar elements in different drawings are denoted by same or similar reference numerals. The implementations described in the following exemplary embodiments are not meant to represent all implementations consistent with the present disclosure. Rather, they are merely examples of apparatuses and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0036] In the description of the present application, it should be understood that the terms "first", "second", etc. are only for the purpose of description, and cannot be understood as indicating or implying relative importance. The above terms can be understood in the specific meaning in the present application by the ordinary skill in the art.
[0037] Referring to Figure 1A The architecture diagram of the time-of-flight measurement device provided in the embodiments of the present application includes a transmitter (not shown in the figure) and a detector. The transmitter is used to emit laser pulses, and the detector can include a pixel unit, a time-to-digital converter (TDC), and a random access memory (RAM), wherein the pixel unit can include one or more single photon avalanche diodes (SPADs).
[0038] The basic process of DTOF (direct time of flight) measurement is that DTOF emits N times of pulse signals and receives N times of echo signals within a single frame measurement time, and then makes a histogram statistics of the flight times of the recorded N times of pulse signals, wherein the flight time with the highest frequency is used to calculate the distance between the laser radar and the target object.
[0039] Specifically, the transmitter transmits a pulse signal to a target object, the pulse signal is reflected by the target object, a pixel unit or a pixel array receives a return signal reflected by the target object, converts the return signal into an electrical signal, a TDC records a generation time (also referred to as a time stamp) of the electrical signal as an arrival time of the return signal, a RAM stores the arrival time of the return signal, and a time of flight (TOF) can be obtained according to a transmission time of the pulse signal and the arrival time of the return signal, and then a distance of the target object can be calculated according to a constant light speed and the time of flight.
[0040] However, in an actual measurement process, due to the high sensitivity characteristics of the detector, the signals received by the detector may also include noise signals in addition to the return signals, and the noise signals are caused by devices inside the detector or the incidence of ambient light. The detector cannot effectively distinguish which of the received signals are noise signals and which are return signals. In order to reduce the influence of noise signals on the DTOF measurement result, the related technology uses time-correlated single photon counting (TCSPC) to measure the time of flight. The main principle is that the transmitter transmits a laser pulse signal multiple times in a time frame. Since the movement speed of the target object is much smaller than the light speed, the distance of the target object in the same time frame can be considered to remain unchanged, that is, the time of flight remains unchanged. Since the arrival time of the return signal has the characteristics of coherence or consistency, and the arrival time of the noise signal has randomness, after experiencing multiple integration periods, the SiPM (Silicon photomultiplier) can distinguish the return signal from the noise signal based on the return signal accumulated by multiple SPADs (Single Photon Avalanche Diode) in each integration period.
[0041] For example, as shown in Figure 1B , the time frame is composed of N integration periods, N is an integer greater than 1, the return signals received by the detector in each integration period are represented by a rectangle filled with diagonal lines, and the noise signals received by the detector are represented by a rectangle filled with gray. The transmitter transmits a laser pulse signal at the start time of the first integration period to the Nth integration period, and the detector receives the return signal reflected by the target object. Figure 1B As can be seen from , in addition to receiving the return signal, the detector also receives multiple noise signals in each integration period. Since the position of the return signal remains basically unchanged, and the positions of the noise signals are relatively random. Therefore, the time of flight (TOF) can be calculated according to the time when the transmitter sends the pulse signal and the time when the detector receives the return signal, and then the count value (cumulative number) corresponding to the same time of flight is counted, and the DTOF measurement result is generated according to the cumulative number. Figure 1BThe histogram below, the horizontal axis of which represents time and the vertical axis of which represents the count value, the time corresponding to the maximum count value in the histogram is the flight time.
[0042] It can be seen that, for the current DTOF flight time measurement method, the correct flight time obtained by measurement depends on whether the peak position of the count value in the histogram can be correctly identified, and then the correct flight time is identified. When the ambient light is weak and the target distance is small, the signal-to-background noise ratio (SBNR) is large, and the peak value of the histogram corresponding to the echo signal is easy to obtain after a plurality of integration periods, as shown below. Figure 1C However, when the light intensity of the ambient light is strong or the distance of the target object is large, the signal photons received by the detector become less as the distance increases, while the received ambient photons remain unchanged, and the SBNR is small. The fluctuation of the peak value of the noise signal on the histogram caused by the randomness of the noise signal may be greater than the peak value corresponding to the signal photons, thereby causing the peak value identification error of the back-end circuit and causing the detection error, as shown below. Figure 1D Moreover, the stronger the ambient light and the farther the distance of the measured target, the greater the probability that the peak value of the noise signal covers the peak value of the echo signal, thereby greatly reducing the detection accuracy.
[0043] See Figure 2 , Figure 2 is a flowchart of a flight time measurement method provided by an embodiment of the present application, which includes but is not limited to the following steps:
[0044] S201, obtaining N timestamp sets.
[0045] Each timestamp set is used to represent the photon events corresponding to one integration period, which can include noise events and echo signal events. The integration periods corresponding to each timestamp set are equal, the TDC records the receiving time of the echo signal (the pulse signal reflected by the target object) and the noise signal, and stores the timestamps of the echo signal and the noise signal recorded in each integration period into the memory. The timestamps of the plurality of echo signals and the plurality of noise signals recorded by the TDC in one integration period form a timestamp set, and the specific process of recording the timestamps of the echo signal and the noise signal in the integration period can be referred to the description of Figure 1A and Figure 1B , which will not be described here. The measurement device of the present application obtains N timestamp sets recorded by the TDC in N integration periods, each timestamp set includes at least one timestamp, and the number of timestamps in each timestamp set can be equal or not equal.
[0046] For example, N = 4, the timestamp set corresponding to the first integration period includes two timestamps: t11 and t12, the timestamp set corresponding to the second integration period includes four timestamps: t21, t22, t23 and t24, the timestamp set corresponding to the third integration period includes four timestamps: t31, t32, t33 and t34, and the timestamp set corresponding to the fourth integration period includes seven timestamps: t41, t42, t43, t44, t45, t46 and t47.
[0047] It can be understood that the time interval between two adjacent timestamps in the same timestamp set is greater than or equal to the minimum time resolution of the TDC, which is determined by the hardware capability of the TDC.
[0048] S202, divide the N timestamp sets into K groups.
[0049] Wherein, the N integration periods can belong to the same frame, that is, the measuring device measures the time of flight of the target object in units of frames, N is an integer greater than 1, and the signal detected by the detector in the integration period can be a noise signal or a return signal. The noise signal can be generated by the external environment, generated internally or generated in other ways. The timestamp corresponding to the noise signal is randomly distributed in the integration period, while the timestamp of the return signal is related to the distance of the target object. The distance measurement result is similar in the N integration periods, so the return signal is concentrated in a specific position of the integration period. At the initial moment of each integration period, the transmitter transmits a pulse signal to the target object, so that there is only one return signal on each integration period. The N timestamp sets are divided into K groups in the embodiment of the application, and each group includes one or more timestamp sets. The number of timestamp sets in each group can be equal or unequal.
[0050] For example, N = 10, the 10 timestamp sets are: timestamp set 1, timestamp set 2, timestamp set 3,..., and timestamp set 10. The 10 timestamp sets are divided into 4 groups, the first group includes timestamp set 1 to timestamp set 3, and the number of timestamp sets is 3; the second group includes timestamp set 4 to timestamp set 6, and the number of timestamp sets is 3; the third group includes timestamp set 7 to timestamp set 8, and the number of timestamp sets is 2; and the fourth group includes timestamp set 9 to timestamp set 10, and the number of timestamp sets is 2.
[0051] It can be understood that when the number of timestamp sets in each group is equal, the number of timestamp sets in each group is M, and K = N / M, that is, the N timestamp sets are divided into K groups.
[0052] It is possible that, if the number of timestamp sets in each group is greater than 1, the sequence numbers of multiple timestamp sets are not required to be consecutive.
[0053] S203. Accumulate the timestamp sets included in each group to obtain K fragments.
[0054] In this process, for each group, the integration periods of all timestamp sets within the group are equal. Before accumulating the timestamp sets within the group, the integration periods of each timestamp set are aligned, meaning that the start and end times of the integration periods of each timestamp set coincide. Then, the timestamp sets within the group are merged to obtain a slice. For example, if a group includes timestamp set 1 and timestamp set 2, where timestamp set 1 includes timestamps t0 and t1, and timestamp set 2 includes timestamps t3, t1, t4, and t6, then accumulating the two timestamp sets within the first group yields the following slice: t0, t1, t1, t3, t4, t6. It should be noted that when accumulating the timestamp sets within K groups, a parallel approach can be used to execute K accumulation processes simultaneously, thereby reducing the computational processing time.
[0055] For example, see Figure 3 As shown, the number of timestamp sets obtained is N. The N integration periods are divided into multiple groups, each containing M integration periods, so the number of groups is N / M. The generation process of the first slice (slice 1): The timestamp set corresponding to the first integration period includes 6 timestamps. The time interval t between any two adjacent timestamps in any timestamp set is at least the SPAD dead time (T). dedtime Furthermore, the time interval t is generally much larger than the time resolution of TDC. The timestamp set corresponding to the 2nd integration period includes 6 timestamps, ..., the timestamp set corresponding to the Mth integration period includes 6 timestamps; the start time of the 1st to Mth integration periods is 0, and the end time is T0. After aligning the 1st to Mth integration periods, the M timestamp sets within the group are accumulated to obtain the 1st slice, and the time length of the 1st slice is 0-T0. In this way, the timestamp sets corresponding to the NMth to Nth integration periods are accumulated to obtain the N / Mth slice (slice(N / M)).
[0056] S204. Perform coherent processing on the K segments to obtain a coherent timestamp set.
[0057] The coherent timestamp set is obtained by performing coherent processing on the K fragments, and the purpose of the coherent processing is to concentrate the timestamps of the echo signals and randomize the timestamps of the noise signals, so as to enhance the echo signals and suppress the noise signals.
[0058] In a possible implementation, all the K fragments can be processed to obtain the coherent timestamp set, so as to improve the accuracy of the coherent processing, or L fragments can be selected from the K fragments to obtain the coherent timestamp set.
[0059] The rule for selecting L fragments from the K fragments is as follows:
[0060] 1. Selecting L odd fragments from the K fragments.
[0061] For example, K=10, L=5, and the 10 fragments are fragment 1, fragment 2, fragment 3, fragment 4, fragment 5, fragment 6, fragment 7, fragment 8, fragment 9, and fragment 10. The odd fragments selected from the 10 fragments are fragment 1, fragment 3, fragment 5, fragment 7, and fragment 9. The 5 odd fragments are processed to obtain the coherent timestamp set.
[0062] 2. Selecting L even fragments from the K fragments.
[0063] For example, K=10, L=3, and the 10 fragments are fragment 1, fragment 2, fragment 3, fragment 4, fragment 5, fragment 6, fragment 7, fragment 8, fragment 9, and fragment 10. The even fragments selected from the 10 fragments are fragment 6, fragment 8, and fragment 10. The 3 even fragments are processed to obtain the coherent timestamp set.
[0064] 3. Randomly selecting L fragments from the K fragments.
[0065] For example, K=10, L=7, and the 10 fragments are fragment 1, fragment 2, fragment 3, fragment 4, fragment 5, fragment 6, fragment 7, fragment 8, fragment 9, and fragment 10. The 7 fragments randomly selected from the 10 fragments are fragment 1, fragment 2, fragment 3, fragment 6, fragment 7, fragment 9, and fragment 10. The 7 fragments are processed to obtain the coherent timestamp set.
[0066] 4. Arranging the K fragments in ascending order according to the number of timestamps, and then selecting L fragments at the front, so as to reduce the operation amount of the coherent processing by selecting fragments with a small number of timestamps.
[0067] For example, K=10, L=5, 10 fragments are: fragment 1, fragment 2, fragment 3, fragment 4, fragment 5, fragment 6, fragment 7, fragment 8, fragment 9 and fragment 10. The timestamp quantity of fragment 1 is 11, the timestamp quantity of fragment 2 is 10, the timestamp quantity of fragment 3 is 9, the timestamp quantity of fragment 4 is 8, the timestamp quantity of fragment 5 is 7, the timestamp quantity of fragment 6 is 6, the timestamp quantity of fragment 7 is 5, the timestamp quantity of fragment 8 is 4, the timestamp quantity of fragment 9 is 3, and the timestamp quantity of fragment 10 is 2. The 10 fragments are arranged in ascending order according to the timestamp quantity: fragment 10, fragment 9, fragment 8, fragment 7, fragment 6, fragment 5, fragment 4, fragment 3, fragment 2, fragment 1, and the first 5 fragments are selected from the 10 fragments: fragment 10, fragment 9, fragment 8, fragment 7, fragment 6, and the coherent timestamp set is obtained by coherent processing.
[0068] 5, arrange the K fragments in descending order according to the timestamp quantity, then select the last L fragments, and perform coherent processing on the selected L fragments. By selecting fragments with fewer timestamp quantities for coherent processing, the computational complexity of coherent processing can be reduced.
[0069] For example, K=10, L=5, 10 fragments are: fragment 1, fragment 2, fragment 3, fragment 4, fragment 5, fragment 6, fragment 7, fragment 8, fragment 9 and fragment 10. The timestamp quantity of fragment 1 is 20, the timestamp quantity of fragment 2 is 21, the timestamp quantity of fragment 3 is 22, the timestamp quantity of fragment 4 is 23, the timestamp quantity of fragment 5 is 27, the timestamp quantity of fragment 6 is 28, the timestamp quantity of fragment 7 is 30, the timestamp quantity of fragment 8 is 31, the timestamp quantity of fragment 9 is 33, and the timestamp quantity of fragment 10 is 36. The 10 fragments are arranged in descending order according to the timestamp quantity: fragment 10, fragment 9, fragment 8, fragment 7, fragment 6, fragment 5, fragment 4, fragment 3, fragment 2, fragment 1, and the last 5 fragments are selected from the 10 fragments: fragment 5, fragment 4, fragment 3, fragment 2, fragment 1, and the coherent timestamp set is obtained by coherent processing.
[0070] In a possible implementation, the step of obtaining the coherent timestamp set by performing coherent processing on the L fragments selected from the K fragments includes:
[0071] The time length of the L fragments is divided into P time windows distributed continuously respectively;
[0072] The coherent timestamp set is obtained according to the time windows of the L fragments.
[0073] The time length of the L slices is divided into P continuous time windows, the integration period of the L slices is equal, the P time windows on the L slices have the same distribution position on the horizontal time axis, the time window corresponding to the first slice is W 11 12 1P The time window corresponding to the second slice is W 21 22 2P The time window corresponding to the Lth slice is W L1 L2 LP The integration period of the coherent timestamp set is also divided into P continuous time windows, that is, the distribution position of the time window of the coherent timestamp set is completely the same as that of the L slices. The timestamps in each time window of the coherent timestamp set are determined according to the following rules: for any one time window in the coherent timestamp set, which is the ith time window, 1≤i≤P, the timestamps in the same time window position in the L slices are processed, if there is at least one time window in W 1i 2i Li does not cover the timestamp, the ith time window of the coherent timestamp set is not set with a timestamp, if the timestamps in the above L time windows are all covered, the timestamps in the above L time windows are accumulated to obtain the timestamp in the ith time window of the coherent timestamp set.
[0074] For example, referring to Figure 4 , a schematic diagram of the principle of coherent processing of multiple slices is shown, L slices are slice 1, slice 2, …, and slice L, the integration periods of slice 1 to slice L are the same, the starting time of the integration period is 0, and the ending time is T0. As shown in the figure, the integration period of slice 1 to slice L is divided into 25 time windows, the length of the time window is dt, for example: the length of the time window is 2 times the minimum time resolution TDC. Since the integration periods of slice 1 to slice L are the same, the distribution positions of the time windows in slice 1 to slice L are also completely the same. Coherent operation is performed on slice 1 to slice L to obtain a coherent timestamp set, that is, Figure 4 The corresponding coherent operation result of slice 1-L, the integration period of the coherent timestamp set and the integration period of slice 1-slice L are the same, the integration period on the coherent timestamp set is also divided into 25 time windows, and the distribution positions of the time windows of the coherent timestamp set and the time windows of slice 1-slice L are also completely the same. For the first time window on the coherent timestamp set, the first time window of slice 1 and the first time window of slice L do not cover the timestamp, so the first time window of the coherent timestamp set is not set with the timestamp; for the ninth time window of the coherent timestamp set, the ninth time windows of slice 1-slice L all cover the timestamp, so the timestamps in the above nine time windows are accumulated to obtain the timestamp in the ninth time window of the coherent timestamp set. By analogy, the distribution of the timestamps in the 25 time windows on the coherent timestamp set can be obtained as shown in FIG. 8. In other words, the coherent process of the present application can be summarized as follows: for each time window on slice 1-slice L, if the time window covers the timestamp, it is recorded as “1”, if the time window does not cover the timestamp, it is recorded as “0”, the L time windows at the same position on slice 1-slice L are ANDed to obtain the operation result on the time window at the corresponding position of the coherent timestamp set, if the operation result is 0, no timestamp is output in the corresponding time window; if the operation result is 1, the timestamps in all time windows are accumulated and then output. Figure 4
[0075] In another possible implementation, K slices are subjected to coherent processing to obtain a coherent timestamp set, including:
[0076] A time window is set for each timestamp in the Xth slice; the time window needs to cover the timestamp, and optionally, the timestamp can be located at the center position of the corresponding time window;
[0077] The time windows of the first L slices before the Xth slice are set according to the time window position of the Xth slice, and the time window distribution positions of the first L slices and the Xth slice are completely the same;
[0078] An intermediate coherent timestamp set corresponding to the Xth slice is obtained according to the Xth slice and the first L slices;
[0079] K-X+1 intermediate coherent timestamp sets corresponding to the Xth slice to the Kth slice are determined;
[0080] The K-X+1 intermediate coherent timestamp sets are accumulated to obtain the coherent timestamp set.
[0081] The Xth slice is any one of the K slices, and since the first L slices of the Xth slice need to be processed, X satisfies the condition X≥L+1, and X=L+1, L+2, …, K, X and L are integers greater than 1; a time window is set for each timestamp in the Xth slice, and then a corresponding time window is set for each of the first L slices according to the time window position of the Xth slice. Since the timestamp positions and quantities corresponding to different slices may be different, the timestamps in the time windows corresponding to different slices may have different positional relationships. Let the number of time windows of the Xth slice be P X , and the number of time windows of the first L slices corresponding thereto also be P X , then the time windows corresponding to the Xth slice are W X1 , W X2 , …, The time windows corresponding to the X-1th slice are W (X-1)1 , W (X-1)2 , …, The time windows corresponding to the X-Lth slice are W (X-L)1 , W (X-L)2 , …,
[0082] It can be understood that since the intermediate coherent timestamp set corresponding to the Xth slice is equal to and aligned with the time length of the Xth slice, the time length of the intermediate coherent timestamp set is also divided into P X , for example, there are 10 (K=10) slices in the embodiment of the present application, and the 5th (X=5) slice has 9 timestamps, so 9 time windows are set, and correspondingly, the first 4 (L=4) slices also have 9 time windows, and for example, the 6th slice has 5 timestamps, so 5 time windows are set, and the first 5 slices also have 5 time windows. For any one time window of the intermediate coherent timestamp set corresponding to the Xth slice, let any one time window be the ith time window, 1≤i≤P X , if there is at least one time window in the time windows W Xi , W (X-1)i , …, W (X-L)i that does not cover a timestamp, no timestamp is set in the ith time window; if all the time windows W Xi , W (X-1)i , …, W (X-L)i cover timestamps, the time windows W Xi , W (X-1)i , …, W (X-L)iThe timestamps within each time window are accumulated to obtain the timestamp within the i-th time window. In other words, the process of determining the intermediate coherent timestamp set here is as follows: For each time window on slice X to slice XL, if a timestamp overlaps with another timestamp, it is recorded as "1"; if a timestamp does not overlap with another timestamp, it is recorded as "0". The L+1 time windows at the same position on slice X to slice XL are ANDed to obtain the operation result of the corresponding time window in the intermediate coherent timestamp set. If the operation result is 0, no timestamp is output in the corresponding time window; if the operation result is 1, the timestamps in all time windows are output.
[0083] For example, see Figure 5 As shown, first, the position of each timestamp on slice X within the integration period is determined. Then, a time window is set with each timestamp as the center point. The time windows do not need to be continuous. Figure 5 If the number of time windows corresponding to the middle segment X is 12, then the number of time windows set for the segments X-1 to XL is also 12. Then, the timestamps in the time windows at the same position in segments X to XL are compared. If at least one time window in the L+1 time windows at the same position does not cover the timestamp, then no timestamp is output; if all the timestamps in the L+1 time windows at the same position are covered, then all the timestamps in the L+1 time windows are accumulated and then output.
[0084] according to Figure 5 The method can obtain the intermediate coherent timestamp sets corresponding to each of the Xth to Kth shards, with a total of K-X+1 sets. Then, the K-X+1 intermediate coherent timestamp sets are accumulated to obtain the final coherent timestamp set. The accumulation method can refer to the accumulation process of timestamp sets within a group, which will not be elaborated here.
[0085] It should be noted that when calculating the intermediate coherent timestamp set corresponding to each of the Xth to Kth shards, the time windows of K-X+1 shards can be divided simultaneously. For example, K-X+1 computing threads can be called simultaneously to calculate the intermediate coherent timestamp set corresponding to each shard, thereby improving the computation speed of coherent processing.
[0086] S205. Generate histogram data based on a coherent timestamp set.
[0087] In the histogram data, the horizontal axis represents the time length of the coherent timestamp set and the time windows divided within that time length, while the vertical axis represents the number of timestamps corresponding to each time window in the timestamp set.
[0088] For example: see Figure 6 and Figure 7 The histogram data shown, Figure 6The histogram before the coherent processing is not prominent in peak value due to the influence of noise signals; Figure 7 The histogram data obtained after the coherent processing based on the granularity of the slices can be seen Figure 7 The count value other than the peak value is suppressed, and the peak value is relatively prominent. The time corresponding to the peak value is about 400ns.
[0089] S206, determining the time of flight according to the histogram data.
[0090] The timestamp with the maximum count value in the histogram data is taken as the signal receiving time. The time of flight is calculated based on the transmission time of the pulse signal and the signal receiving time. For example, the timestamp with the maximum count value in the histogram data is t1, and the preset signal transmission time is t0. Then the time of flight is t1-t0. The distance between the detector and the target object can be calculated according to the time of flight and the speed of light.
[0091] According to Figure 2 The description, a plurality of timestamp sets collected by the time-to-digital converter in the integration period are divided into a plurality of slices. The coherent operation is performed between the plurality of slices to obtain a coherent timestamp set. Then the histogram data is generated by using the coherent timestamp set. Thus, the correct time of flight of the target object can be determined according to the peak position of the count value of the histogram data. The count value of the timestamp corresponding to the echo signal in the histogram data remains basically unchanged, and the count value of the timestamp corresponding to the noise pulse signal is suppressed. Therefore, the signal-to-background noise ratio (SBNR) of the distance detector is improved, and the accuracy of measuring the time of flight by the distance detector is effectively improved.
[0092] The above describes a time-of-flight measurement device according to an embodiment of the application. The following provides a time-of-flight measurement device (hereinafter referred to as device 8) according to an embodiment of the application.
[0093] Figure 8 The device 3 shown can implement Figure 2 The time-of-flight measurement device according to the embodiment shown, the device 8 includes an acquisition unit 801, a division unit 802, an accumulation unit 803, a coherent processing unit 804, a generation unit 805, and a determination unit 806.
[0094] The acquisition unit 801 is configured to acquire N timestamp sets; wherein N is an integer greater than 1, each timestamp set represents a photon event corresponding to an integration period, and each timestamp set includes a plurality of timestamps, and the integration periods of the timestamp sets are equal;
[0095] The division unit 802 is configured to divide the N timestamp sets into K groups, wherein K is an integer greater than 1, and each group includes one or more timestamp sets;
[0096] The accumulation unit 803 is configured to accumulate the timestamp sets included in each group to obtain K segments, wherein each segment includes a plurality of timestamps.
[0097] The coherence unit 804 is configured to perform coherence processing on the K segments to obtain a coherent timestamp set.
[0098] The generation unit 805 is configured to generate histogram data based on the coherent timestamp set.
[0099] The determination unit 806 is configured to determine the time of flight according to the histogram data.
[0100] In one or more embodiments, the number of timestamp sets in each group is equal, K = N / M, M is the number of timestamp sets in each group, and M is an integer greater than or equal to 1.
[0101] In one or more embodiments, the coherence processing on the K segments to obtain a coherent timestamp set includes:
[0102] selecting L segments from the K segments, wherein 1
[0103] performing coherence processing on the L segments to obtain a coherent timestamp set.
[0104] In one or more embodiments, the L segments are even segments in the K segments; or
[0105] the L segments are odd segments in the K segments; or
[0106] the L segments are the last L segments in the K segments, wherein the K segments are arranged in descending order based on the number of timestamps.
[0107] In one or more embodiments, the coherence processing on the L segments to obtain a coherent timestamp set includes:
[0108] dividing the time length of the L segments into P consecutive time windows respectively, wherein the time window corresponding to the 1st segment is W 11 , the time window corresponding to the 2nd segment is W 12 , the time window corresponding to the Lth segment is W 1P , and so on. 21 22 2P L1 L2 , …, W LP ;
[0109] obtaining a coherent timestamp set according to the time windows of the L fragments; wherein the integration period of the coherent timestamp set is equal to the integration period of the L fragments, and the integration period of the coherent timestamp set is divided into P time windows which are continuously distributed; for the i-th time window in the coherent timestamp set, 1≤i≤P, if there is at least one time window in the time windows W 1i , W 2i , …, W Li which does not cover the timestamp, then no timestamp is set in the i-th time window in the coherent timestamp set; if all the time windows W 1i , W 2i , …, W Li cover the timestamp, then the timestamps in the time windows W 1i , W 2i , …, W Li are accumulated to obtain the timestamp in the i-th time window in the coherent timestamp set. In one or more embodiments, the coherent processing of the K fragments to obtain the coherent timestamp set comprises:
[0110] setting a time window for each timestamp in the X-th fragment; wherein the X-th fragment is located in the K fragments, X=L+1, L+2, …, K, X and L are integers greater than 1;
[0111] setting time windows for the first L fragments of the X-th fragment according to the time window positions of the X-th fragment; wherein the number of time windows corresponding to the X-th fragment is P X , and the time windows corresponding to the X-th fragment are W X1 , W X2 , …, the time windows corresponding to the X-1-th fragment are W (X-1)1 , W (X-1)2 , …, …, and the time windows corresponding to the X-L-th fragment are W (X-L)1 , W (X-L)2 , …,
[0112] obtaining an intermediate coherent timestamp set according to the X-th fragment and the first L fragments; wherein the integration period of the intermediate coherent timestamp set is equal to the integration period of the X-th fragment, and the integration period of the intermediate coherent timestamp set is divided into P X time windows; for the i-th time window in the intermediate coherent timestamp set, 1≤i≤P X , if there is at least one time window in the time windows W Xi , W(X-1)i W (X-L)i If there is at least one time window in which the time stamp is not covered, the time stamp in the i-th time window is not set; if the time window W Xi W (X-1)i W (X-L)i If all the time stamps are covered, the time stamps in the time windows W Xi W (X-1)i W (X-L)i are added to obtain the time stamp in the i-th time window.
[0113] Determine the intermediate coherent time stamp set corresponding to K-X+1 time stamp pairs from the X-th time slice to the K-th time slice.
[0114] Add the K-X+1 intermediate coherent time stamp sets to obtain a coherent time stamp set.
[0115] In one or more embodiments, a time window is set on the integration period of the X-th time slice with each time stamp as the center.
[0116] In one or more embodiments, the histogram data includes a plurality of time stamps and a count value of each time stamp.
[0117] In one or more embodiments, the method for determining the time of flight according to the histogram data comprises:
[0118] The time stamp with the largest count value in the histogram data is taken as the signal receiving time;
[0119] The time of flight is calculated based on the preset signal transmitting time and the signal receiving time.
[0120] The method embodiments of the present application and Figures 1A-7 The method embodiments of the present application and Figures 1A-7 The method embodiments of the present application and
[0121] The device 8 can be a field-programmable gate array (FPGA), an application-specific integrated chip, a system on chip (SoC), a central processing unit (CPU), a network processor (NP), a digital signal processing circuit, a micro controller unit (MCU), and can also be a programmable logic device (PLD) or other integrated chip.
[0122] The above describes a time-of-flight measurement method according to an embodiment of the application. A time-of-flight measurement device (hereinafter referred to as device 9) according to an embodiment of the application is provided below.
[0123] Figure 9 A device structure diagram according to an embodiment of the application is provided below, which is referred to as device 9. Device 9 can be integrated into the laser radar or the bearing platform of the above embodiment, as shown in the figure. The device includes a memory 902 and a processor 901. Figure 9
[0124] The memory 902 can be an independent physical unit connected to the processor 901 through a bus. The memory 902 and the processor 901 can also be integrated together and implemented by hardware, etc.
[0125] Optionally, device 9 can also include a transmitter and a receiver. The transmitter is used to transmit a laser signal, and the receiver is used to receive a laser signal.
[0126] The memory 902 is used to store programs for implementing the above method embodiments or various modules of the device embodiments. The processor 901 calls the programs to perform the operations of the above method embodiments:
[0127] Obtain N timestamp sets; wherein N is an integer greater than 1, each timestamp set represents a photon event corresponding to an integration period, and each timestamp set includes multiple timestamps, and the integration periods of the timestamp sets are equal;
[0128] Divide the N timestamp sets into K groups; wherein K is an integer greater than 1, and each group includes one or more timestamp sets;
[0129] Accumulate the timestamp sets included in each group to obtain K segments; wherein each segment includes multiple timestamps;
[0130] Coherently process the K segments to obtain a coherent timestamp set;
[0131] Generate histogram data based on the coherent timestamp set;
[0132] Determine the time of flight according to the histogram data.
[0133] In one or more embodiments, the number of timestamp sets in each group is equal, K=N / M, M is the number of timestamp sets in each group, and M is an integer greater than or equal to 1.
[0134] In one or more embodiments, the processor 901 performs the coherent processing of the K segments to obtain a coherent timestamp set, including:
[0135] selecting L fragments from the K fragments; wherein, 1
[0136] performing coherent processing on the L fragments to obtain a coherent timestamp set.
[0137] In one or more embodiments,
[0138] the L fragments are even fragments in the K fragments; or
[0139] the L fragments are odd fragments in the K fragments; or
[0140] the L fragments are L fragments arranged at the rear in the K fragments; wherein, the K fragments are arranged in descending order based on timestamp quantity.
[0141] In one or more embodiments, the processor 901 performs the coherent processing on the L fragments to obtain a coherent timestamp set, comprising:
[0142] dividing time lengths of the L fragments into continuous P time windows respectively; wherein, a time window corresponding to the 1st fragment is W 11 , W 12 , …, W 1P , a time window corresponding to the 2nd fragment is W 21 , W 22 , …, W 2P , …, a time window corresponding to the Lth fragment is W L1 , W L2 , …, W LP .
[0143] obtaining a coherent timestamp set according to the time windows of the L fragments; wherein, an integration period of the coherent timestamp set is equal to an integration period of the L fragments, and the integration period of the coherent timestamp set is divided into continuous P time windows; for the i-th time window in the coherent timestamp set, 1≤i≤P, if there is at least one time window in the time windows W 1i , W 2i , …, W Li that does not cover a timestamp, no timestamp is set in the i-th time window in the coherent timestamp set; if all the time windows W 1i , W 2i , …, W Li cover timestamps, the timestamps in the time windows W 1i , W 2i , …, W Li are accumulated to obtain a timestamp in the i-th time window in the coherent timestamp set.
[0144] In one or more embodiments, the processor 901 performs the coherent processing of the K slices to obtain a set of coherent timestamps, including:
[0145] setting a time window for each timestamp in an Xth slice, wherein the Xth slice is located in the K slices, X=L+1, L+2, …, K, X and L are integers greater than 1;
[0146] setting time windows for the first L slices of the Xth slice according to the time window positions of the Xth slice; wherein the number of time windows corresponding to the Xth slice is P X , the time windows corresponding to the Xth slice are W X1 , W X2 , …, the time windows corresponding to the X-1th slice are W (X-1)1 , W (X-1)2 , …, …, the time windows corresponding to the X-Lth slice are W (X-L)1 , W (X-L)2 , …,
[0147] obtaining a set of intermediate coherent timestamps from the Xth slice and the first L slices; wherein the integration period of the set of intermediate coherent timestamps is equal to the integration period of the Xth slice, and the integration period of the set of intermediate coherent timestamps is divided into P X time windows; for the i th time window of the set of intermediate coherent timestamps, 1≤i≤P X , if there is at least one time window in the time windows W Xi , W (X-1)i , …, W (X-L)i that does not cover a timestamp, no timestamp is set in the i th time window; if all the time windows W Xi , W (X-1)i , …, W (X-L)i cover timestamps, the timestamps in the time windows W Xi , W (X-1)i , …, W (X-L)i are accumulated to obtain the timestamp in the i th time window;
[0148] determining a set of intermediate coherent timestamps corresponding to the K-X+1 slices from the Xth slice to the Kth slice;
[0149] accumulating the K-X+1 sets of intermediate coherent timestamps to obtain a set of coherent timestamps.
[0150] In one or more embodiments, a time window is set on the integration period of the Xth slice centered on each of the timestamps.
[0151] In one or more embodiments, the histogram data includes multiple timestamps and count values for each timestamp.
[0152] In one or more embodiments, processor 901 performs the determination of flight time based on the histogram data, including:
[0153] The timestamp with the largest count value in the histogram data is taken as the signal reception time.
[0154] The flight time is calculated based on the preset signal transmission time and the signal reception time.
[0155] This application's embodiments and Figure 2 The embodiments are based on the same concept and bring about the same technical effects. The specific process can be referred to Figure 2 The description of the embodiments will not be repeated here.
[0156] In some or all of the flight time measurement methods described in the above embodiments, the apparatus may consist only of a processor. A memory for storing the program is located outside the apparatus, and the processor is connected to the memory via circuitry / wires to read and execute the program stored in the memory.
[0157] The processor can be a central processing unit (CPU), a network processor (NP), or a combination of a CPU and an NP.
[0158] The processor may further include hardware chips. These hardware chips may be application-specific integrated circuits (ASICs), programmable logic devices (PLDs), or combinations thereof. The PLDs may be complex programmable logic devices (CPLDs), field-programmable gate arrays (FPGAs), generic array logic (GALs), or any combination thereof.
[0159] The memory can include volatile memory (e.g., random-access memory (RAM)), non-volatile memory (e.g., flash memory, hard disk drive (HDD), or solid-state drive (SSD)), or combinations thereof.
[0160] In the above embodiments, the sending unit or transmitter performs the steps of sending in each of the above method embodiments, and the receiving unit or receiver performs the steps of receiving in each of the above method embodiments, and other steps are performed by other units or processors. The sending unit and the receiving unit can constitute a transceiving unit, and the receiver and the transmitter can constitute a transceiver.
[0161] The embodiments of the present application further provide a computer storage medium storing a computer program, and the computer program is used for executing the time-of-flight measurement method provided in the above embodiments.
[0162] The embodiments of the present application further provide a computer program product containing instructions, which, when executed on a computer, cause the computer to perform the time-of-flight measurement method provided in the above embodiments.
[0163] Those skilled in the art should understand that the embodiments of the present application can be provided as a method, a system, or a computer program product. Therefore, the present application can take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present application can take the form of a computer program product implemented on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROMs, optical storage media, etc.) containing computer-usable program code.
[0164] The present application is described with reference to the flowcharts and / or block diagrams of the method, device (system), and computer program product according to the embodiments of the present application. It should be understood that each flow and / or block in the flowcharts and / or block diagrams, and the combination of the flows and / or blocks in the flowcharts and / or block diagrams can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing apparatus to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing apparatus produce the functions specified in the flowcharts and / or block diagrams one or more flows and / or blocks.
[0165] These computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture including instructions which implement the function specified in the flowchart or flowchart(s) and / or block diagram block or blocks.
[0166] These computer program instructions can also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart or flowchart(s) and / or block diagram block or blocks.
Claims
1. A method of measuring time of flight, characterized by, The method comprises: acquiring N timestamp sets; wherein N is an integer greater than 1, each timestamp set represents a photon event corresponding to an integration period, and each timestamp set comprises a plurality of timestamps, and the integration periods corresponding to each timestamp set are equal; dividing the N timestamp sets into K groups; wherein K is an integer greater than 1, and each group comprises one or more timestamp sets; accumulating the timestamp sets included in each group to obtain K segments; wherein each segment comprises a plurality of timestamps; coherently processing the K segments to obtain a coherent timestamp set; generating histogram data based on the coherent timestamp set; determining a time of flight according to the histogram data.
2. The method of claim 1, wherein, The number of timestamp sets in each group is equal, K = N / M, M is the number of timestamp sets in each group, and M is an integer greater than or equal to 1.
3. The method according to claim 1 or 2, characterized in that, The coherent processing of the K segments to obtain a coherent timestamp set comprises: selecting L segments from the K segments; wherein 1 < L ≤ K, and L is an integer; coherently processing the L segments to obtain a coherent timestamp set.
4. The method according to claim 3, wherein: the L segments are even segments in the K segments; or the L segments are odd segments in the K segments; or the L segments are L segments arranged at the rear in the K segments; wherein the K segments are arranged in descending order based on the number of timestamps.
5. The method of claim 3, wherein, The coherent processing of the L segments to obtain a coherent timestamp set comprises: The time lengths of the L segments are divided into P consecutive time windows; where the time window corresponding to the first segment is W. 11 W 12 ..., W 1P The time window corresponding to the second slice is W. 21 W 22 ..., W 2P The time window corresponding to the Lth slice is W. L1 W L2 ...W LP ; obtaining a coherent timestamp set according to the time window of the L pieces; wherein the integral period of the coherent timestamp set is equal to the integral period of the L pieces, and the integral period of the coherent timestamp set is divided into P time windows which are continuously distributed; for the i-th time window in the coherent timestamp set, 1≤i≤P, if there is at least one time window in W 1i , W 2i , …, W Li which does not cover the timestamp, then no timestamp is set in the i-th time window in the coherent timestamp set; if all the time windows W 1i , W 2i , …, W Li cover the timestamp, then the timestamps in W 1i , W 2i , …, W Li are accumulated to obtain the timestamp in the i-th time window in the coherent timestamp set.
6. The method of claim 1 or 2, wherein, The coherent processing of the K segments to obtain a coherent timestamp set comprises: setting a time window for each timestamp in an Xth segment; wherein the Xth segment is located in the K segments, X = L+1, L+2, …, K, X and L are integers greater than 1; set time windows for the first L segments of the Xth segment according to the time window position of the Xth segment; wherein the number of time windows corresponding to the Xth segment is P X , the time windows corresponding to the Xth segment are W X1 , W X2 , …, , the time windows corresponding to the X-1th segment are , , …, , …, and the time windows corresponding to the X-Lth segment are , , …, ; An intermediate coherent timestamp set is obtained based on the Xth slice and the first L slices; wherein the integration period of the intermediate coherent timestamp set is equal to the integration period of the Xth slice, and the integration period of the intermediate coherent timestamp set is divided into P... X There are several time windows; for the i-th time window of the intermediate coherent timestamp set, 1 ≤ i ≤ P. X If the time window , … If at least one time window in the time window is not covered by a timestamp, then no timestamp is set in the i-th time window; if the time window , … If all timestamps are covered, then the time window will be... , … The timestamps within the i-th time window are accumulated to obtain the timestamp within the i-th time window; determining K-X+1 intermediate coherent timestamp sets corresponding to the Xth segment to the Kth segment; accumulating the K-X+1 intermediate coherent timestamp sets to obtain a coherent timestamp set.
7. The method of claim 6, wherein, Setting a time window on the integration period of the Xth segment with each timestamp as the center.
8. The method of claim 1, wherein, The histogram data comprises a plurality of timestamps and a count value of each timestamp.
9. The method of claim 1, wherein, The determination of the time of flight according to the histogram data comprises: taking a timestamp with the largest count value in the histogram data as a signal receiving time; calculating the time of flight based on a preset signal transmitting time and the signal receiving time.
10. A time-of-flight measurement device, characterized by The method comprises: an acquisition unit configured to acquire N timestamp sets; wherein N is an integer greater than 1, each timestamp set represents a photon event corresponding to an integration period, and each timestamp set comprises a plurality of timestamps, and the integration periods corresponding to each timestamp set are equal; a division unit configured to divide the N timestamp sets into K groups; wherein K is an integer greater than 1, and each group comprises one or more timestamp sets; an accumulation unit configured to accumulate the timestamp sets included in each group to obtain K segments; wherein each segment comprises a plurality of timestamps; and an accumulation unit configured to accumulate the timestamp sets included in each group to obtain K segments; wherein each segment comprises a plurality of timestamps. A coherence unit is configured to perform coherence processing on the K fragments to obtain a set of coherent timestamps. A generation unit is configured to generate histogram data based on the set of coherent timestamps. A determination unit is configured to determine a time of flight according to the histogram data.
11. A computer storage medium, characterized in that The computer storage medium stores a computer program, and when the computer program runs on a computer, the computer program causes the computer to execute the method in any one of claims 1 to 9.
12. A time-of-flight measurement device, characterized by Comprise: A processor and a memory, the memory is used to store computer programs or instructions, and the processor is used to execute the computer programs or instructions in the memory to realize the method in any one of claims 1 to 9.
Citation Information
Patent Citations
Waveform reconstruction in a time-of-flight sensor
CN105093206A
Distance measurement method, system and device
CN112255636A