This disclosure relates to the field of photoelectric detection, and in particular, to a data processing method for a LiDAR and a LiDAR.
A LiDAR is a radar system that can detect the characteristic quantity (e.g., the position, speed or the like) of an object by transmitting a laser beam and is an advanced detection method that combines the laser technology with the photoelectric detection technology. Because of its advantages of high resolution, good concealability, strong anti-active interference capability, good low-altitude detection performance, small volume, light weight, or the like, the LiDAR has been widely used in fields such as automatic driving, traffic communication, unmanned aerial vehicles, intelligent robots, resource exploration, or the like.
The LiDAR typically includes multiple detection channels, and each detection channel includes, for example, one or more lasers and one or more detectors. After one laser emits a detection laser beam, a detector corresponding to the detection field of view (“FOV”) of the laser is turned on or activated within a predetermined time window and is in a state of being capable of detecting an echo. To ensure the complete detection of an echo, the length of the time window is typically set to be relatively large, and the time window is, for example, set based on the maximum detection distance of the LiDAR. In an actual operation process, the detector receives the echo only within a very short time range, the proportion of the time range to the time window is very small, and as a result, in most time of the time window, the detector receives ambient noise or interference signals instead of a valid echo. The received echo, ambient noise, and interference signals are sampled and stored by a signal processor circuit. Therefore, for the existing storage and ranging method for the LiDAR, a memory with a large capacity is required, and extremely large storage space is consumed. In particular, to improve the long distance ranging capability and obtain one frame of the point cloud, the number of repeated measurements needs to be increased, and in this case, the requirements for storage space are also continuously increased.
The content disclosed in this background is merely techniques known to the applicants and does not necessarily represent the existing technology in the art.
In view of at least one disadvantage of the existing technology, this disclosure provides a data processing method for a LiDAR. The data processing method includes:
S101: performing k detection sweeps by using an original detection window to obtain a result of the k detection sweeps as a first set of detection data, wherein k is an integer, and k≥1;
S102: determining, based on the first set of detection data, a position of an echo pulse at an arrival time point within the original detection window;
S103: adjusting, based on the position of the echo pulse, a detection window, wherein the adjusted detection window includes the position of the echo pulse and is smaller than the original detection window;
S104: performing n detection sweeps by using the adjusted detection window to obtain a result of the n detection sweeps as a second set of detection data, wherein n is an integer, and n≥1; and
S105: determining, based on the first set of detection data and the second set of detection data or based on the second set of detection data, at least one of a distance or a reflectivity of an object.
Based on an aspect of this disclosure, the first set of detection data and the second set of detection data include time information and intensity information corresponding to the time information obtained during the detection sweeps, and step S102 further includes:
generating a first histogram based on the first set of detection data; and
on the first histogram, determining a time point corresponding to a maximum value of an amplitude as the position of the echo pulse, or determining a time range in which an amplitude exceeds a predetermined threshold as the position of the echo pulse.
Based on an aspect of this disclosure, step S103 further includes: adjusting the detection window with the position of the echo pulse as a center.
Based on an aspect of this disclosure, a range of the original detection window is related to a predetermined maximum detection distance of the LiDAR, and step S104 further includes: not storing detection data outside a range of the adjusted detection window, or outside a range of the adjusted detection window, turning off a receiver, and performing no detection.
Based on an aspect of this disclosure, step S105 includes: determining, based on the first set of detection data and the second set of detection data, at least one of the distance or the reflectivity of the object, and calibrating, based on the second set of detection data, at least one of the distance or the reflectivity of the object.
Based on an aspect of this disclosure, the first set of detection data and the second set of detection data are stored in a first storage manner or a second storage manner, wherein the first storage manner includes storage based on a weight of the time information at a first time accuracy, the second storage manner includes storage based on a time resolution of the LiDAR, the first time accuracy is m times the time resolution, and m>1.
Based on an aspect of this disclosure, the first set of detection data is stored in the first storage manner, and the second set of detection data is stored in the second storage manner.
Based on an aspect of this disclosure, the weight includes a first weight and a second weight, the first weight is associated with a time interval between the time information and one of adjacent first time scales, the second weight is associated with a time interval between the time information and the other one of adjacent first time scales, and the first storage manner includes: storing the intensity information based on the first weight and the second weight, respectively, at the first time accuracy.
Based on an aspect of this disclosure, the k detection sweeps and the n detection sweeps jointly complete one detection for one point in a three-dimensional environment, and k>n.
This disclosure also provides a LiDAR. The LiDAR includes:
a transmitter, configured to transmit a laser pulse to a three-dimensional environment to perform multiple detection sweeps;
a receiver, configured to receive an echo pulse of the laser pulse reflected by an object and convert the echo pulse into an electrical signal;
a time-to-digital converter, coupled to the transmitter and the receiver to determine detection data;
a memory, coupled to the time-to-digital converter and configured to store the detection data; and
a processor, coupled to the time-to-digital converter and the memory and configured to perform the following operations:
S201: for first k detection sweeps, obtaining and storing a first set of detection data within an original detection window, wherein k is an integer, and k≥1;
S202: determining, based on the first set of detection data, a position of an echo pulse at an arrival time point within the original detection window;
S203: adjusting, based on the position of the echo pulse, a detection window, wherein the adjusted detection window includes the position of the echo pulse and is smaller than the original detection window;
S204: for subsequent n detection sweeps, obtaining and storing a second set of detection data within the adjusted detection window, wherein n is a positive number, and n≥1; and
S205: determining, based on the first set of detection data and the second set of detection data or based on the second set of detection data, at least one of a distance or a reflectivity of the object.
Based on an aspect of this disclosure, the detection data includes time information and intensity information corresponding to the time information obtained from each detection sweep, and step S202 further includes:
generating a first histogram based on the first set of detection data; and
on the first histogram, determining a time point corresponding to a maximum value of an amplitude as the position of the echo pulse, or determining a time range in which an amplitude exceeds a predetermined threshold as the position of the echo pulse.
Based on an aspect of this disclosure, step S203 includes: adjusting the detection window with the position of the echo pulse as a center.
Based on an aspect of this disclosure, a range of the original detection window is related to a predetermined maximum detection distance of the LiDAR, and step S204 further includes: not storing detection data outside a range of the adjusted detection window, or outside a range of the adjusted detection window, turning off the receiver, and performing no detection.
Based on an aspect of this disclosure, step S205 further includes: determining, based on the first set of detection data and the second set of detection data, at least one of the distance or the reflectivity of the object, and calibrating, based on the second set of detection data, at least one of the distance or the reflectivity of the object.
Based on an aspect of this disclosure, the first set of detection data and the second set of detection data are stored in a first storage manner or a second storage manner, wherein the first storage manner includes storage based on a weight of the time information at a first time accuracy, the second storage manner includes storage based on a time resolution of the LiDAR, the first time accuracy is m times the time resolution, and m>1.
Based on an aspect of this disclosure, the first set of detection data is stored in the first storage manner, and the second set of detection data is stored in the second storage manner.
Based on an aspect of this disclosure, the weight includes a first weight and a second weight, the first weight is associated with a time interval between the time information and one of adjacent first time scales, the second weight is associated with a time interval between the time information and the other one of adjacent first time scales, and the first storage manner includes: storing the intensity information based on the first weight and the second weight, respectively, at the first time accuracy.
Based on an aspect of this disclosure, the receiver includes a SPAD array, and the detection data includes a time point at which the SPAD array is triggered by photon and a number of triggered SPADs.
This disclosure further provides a computer-readable storage medium including computer-executable instructions stored thereon, wherein the computer-executable instructions, when executed by a processor, perform the data processing method described above.
In the technical solutions of this disclosure, only data about obstacles is stored in a fine manner, and a pulse waveform of the original signal can be preserved while the original signal is compressed, thereby providing the ranging capability with a higher precision on the basis of relatively small storage space.
The drawings forming a part of this disclosure are used to provide a further understanding of this disclosure. The example embodiments and descriptions thereof in this disclosure are used to explain this disclosure and do not form an undue limitation on this disclosure. In the drawings:
In the following, some example embodiments are described. The described embodiments can be modified in various different ways without departing from the spirit or scope of this disclosure, as would be apparent to those skilled in the art. Accordingly, the drawings and descriptions are to be regarded as illustrative and not restrictive in nature.
In the description of this disclosure, it needs to be understood that the orientation or position relations represented by such terms as “central” “longitudinal” “latitudinal” “length” “width” “thickness” “above” “below” “front” “rear” “left” “right” “vertical” “horizontal” “top” “bottom” “inside” “outside” “clockwise” “counterclockwise” and the like are based on the orientation or position relations as shown in the accompanying drawings, and are used only for the purpose of facilitating description of this disclosure and simplification of the description, instead of indicating or suggesting that the represented devices or elements must be oriented specifically, or configured or operated in a specific orientation. Thus, such terms should not be construed to limit this disclosure. In addition, such terms as “first” and “second” are only used for the purpose of description, rather than indicating or suggesting relative importance or implicitly indicating the number of the represented technical features. Accordingly, features defined with “first” and “second” can, expressly or implicitly, include one or more of the features. In the description of this disclosure, “plurality” means two or more, unless otherwise defined explicitly and specifically.
In the description of this disclosure, it needs to be noted that, unless otherwise specified and defined explicitly, such terms as “installation” “coupling” and “connection” should be broadly understood as, for example, fixed connection, detachable connection, or integral connection; or mechanical connection, electrical connection or intercommunication; or direct connection, or indirect connection via an intermediary medium; or internal communication between two elements or interaction between two elements. For those skilled in the art, the specific meanings of such terms herein can be construed in light of the specific circumstances.
Herein, unless otherwise specified and defined explicitly, if a first feature is “on” or “beneath” a second feature, this can cover direct contact between the first and second features, or contact via another feature therebetween, other than the direct contact. Furthermore, if a first feature is “on”, “above”, or “over” a second feature, this can cover the case that the first feature is right above or obliquely above the second feature, or just represent that the level of the first feature is higher than that of the second feature. If a first feature is “beneath”, “below”, or “under” a second feature, this can cover the case that the first feature is right below or obliquely below the second feature, or just represent that the level of the first feature is lower than that of the second feature.
The following disclosure provides many different embodiments or examples for implementing different structures of this disclosure. To simplify this disclosure, components and configurations of specific examples are described below, which are illustrative only and are not intended to limit this disclosure. In addition, this disclosure can use at least one of repeated reference numerals or letters in the various examples. This repetition is for the purpose of simplicity and clarity and does not in itself represent a relationship among the various embodiments or configurations discussed. In addition, this disclosure provides examples of various specific processes and materials, however, those skilled in the art can recognize applicability of other processes and/or use of other materials.
The single photon avalanche diode (“SPAD”) is an avalanche photo diode (“APD”) that operates in a Geiger mode state and can perform single-photon detection. The specific process of photon detection is as follows. A particular reverse bias voltage Vbias is applied to an APD, the photon carrying the energy is incident on the PN junction, and the energy is transmitted to the electron on the covalent bond so that the electron breaks from the covalent bond to form an electron-hole pair, which is also referred to as a photon-generated carrier. If the reverse bias voltage Vbias is large enough, the photon-generated carrier of the depletion layer can obtain sufficiently high kinetic energy so that the covalent bond can be broken to produce more electron-hole pairs during the impact with the lattice. This process is also referred to as impact ionization. The new carrier causes new impact ionization continuously, resulting in a chain effect and an avalanche multiplication effect of the carrier. In this way, a pulse current that is large enough to be detected is obtained, such as a pulse current in the order of mA, thereby achieving the single-photon detection. The photon detection efficiency (“PDE”) is an important parameter of the SPAD and characterizes an average probability that the photon can trigger an avalanche and be detected after the photon is incident on the SPAD. The PDE can be represented by using Equation 1 below:
PDE=εgeo*QE*εtrigger (Equation 1)
In Equation 1, εgeo characterizes a geometric fill factor, QE characterizes quantum efficiency, that is, a probability that an electron-hole pair is generated, and εtrigger characterizes a probability that the electron-hole pair further triggers the avalanche.
In addition, PDE also characterizes the capability of the SPAD to detect a single-photon signal and can be represented as: the number of detected photons/the total number of incident photons.
In a detection process of the LiDAR, taking a detector array formed by the SPADs as an example, because the SPAD operates in a Geiger mode and an avalanche effect can be triggered by a single photon, the SPADs can be susceptible to ambient light noise. In another aspect, the SPADs can have a relatively low PDE for a waveband of common detection light of a LiDAR, and the intensity of the signal obtained by a single detection is relatively weak.
To improve the signal-to-noise ratio, for a ranging apparatus that uses an array of SPADs, time-correlated single-photon counting (“TCSPC”) is typically used for ranging. The basic idea of measuring time information of photon is, with the photon considered as a random event, to make statistics after repeating the measurement of the photon for multiple cycles.
As shown in
For each detection sweep, the controller of the LiDAR triggers a light source at the transmitting end to emit a light pulse for detection at the transmitting time point t1 and records the transmitting time point t1. The light pulse encounters an external obstacle, is reflected by the obstacle, returns to the LiDAR, and is received by the photodetector at the receiving end at the time point t2. When the photodetector is an array of SPADs, ambient light can also trigger the avalanche of the SPAD. Once the photon is received by the SPAD, an avalanche electrical signal is generated and transmitted to a time-to-digital converter (“TDC”), and the TDC outputs a time signal of the triggering of the SPAD and a count signal of the SPADs triggered at the same time point t2 (this is the case when one pixel includes multiple SPADs; when one pixel includes only one SPAD, the count signal is not present, and the SPAD has only two states: triggered and not triggered). The memory subsequently stores a timestamp (e.g., time information represented by the horizontal axis in
The triggering count cnt obtained from each detection sweep is stored in a corresponding position in the memory based on the timestamp. When a new triggering count cnt arrives in the position corresponding to a particular timestamp, the originally stored value is accumulated with the new triggering count cnt and then the result is updated to the position. The data stored in the memory after accumulation of multiple detection sweeps forms a histogram, referring to
Therefore, based on the embodiments described above, in one measurement of the distance or reflectivity information of each point within one FOV range, the LiDAR actually performs multiple detection sweeps (multiple transmitting-receiving cycles), where the number of sweeps can range from dozens to hundreds. Multiple sweeps are performed on any point within one FOV range in one time period, and the curves of the intensity information received by the detector at the same time information during the multiple sweeps are accumulated as the intensity information-time information curve. For example, referring to
In the context of this disclosure, “measurement” (or “detection”) is distinguished from “detection sweep” (or “sweep”). Specifically, one “measurement” corresponds to a TOF measurement within a particular FOV range in one detection period (i.e., a period in which one frame of the point cloud is generated) of the LiDAR to generate one or more “points” (one or more columns of points or a bunch of points) in one frame of point cloud map, and after measurements within all of the FOV ranges are completed, one complete frame of the point cloud is obtained. The “detection sweep” refers to the process where the laser in one detection channel completes one transmission and the detector completes the corresponding reception during one measurement. One “measurement” can include one “detection sweep” or can include multiple “detection sweeps” for the same object point, such as hundreds of detection sweeps.
Preferred embodiments of this disclosure are described in detail in conjunction with the drawings, and it should be understood that the preferred embodiments described hereinafter are only intended to describe and explain this disclosure and not to limit this disclosure.
This disclosure relates to a data processing method for a LiDAR. Referring to
In step S101, k detection sweeps are performed by using an original detection window to obtain a result of the k detection sweeps as a first set of detection data, where k is an integer, and k≥1.
After the photon is incident on the detector 221-1, 221-2, . . . , and 221-n, the SPADs are triggered and generate electrical signals. Each detector is coupled to a TDC, and the TDC can determine the arrival time of the photon. The data processor apparatus (not shown in
Taking the detector 22 shown in
The range of the original detection window is, for example, related to a predetermined maximum detection distance of the LiDAR, for example, the range of the original detection window can be set to be equal to or slightly less than the time corresponding to the maximum detection distance, or range of the original detection window is related to the capacity of the memory. Based on an embodiment of this disclosure, the range of the triggering time point in which there is a photon triggering can be considered as an original detection window, as shown in the original detection window Win-Ori in
In this disclosure, each measurement includes, for example, (k+n) detection sweeps. The value of (k+n) affects the final detection result. For example, within a particular range, the larger the value of (k+n) is, the higher the precision of the detection result is, but the required calculation amount and storage space are larger.
In the embodiment of
In step S102, a position of an echo pulse at an arrival time point within the initial detection window is determined based on the first set of detection data.
Specifically, based on the method shown in
Based on an embodiment of this disclosure, in the first histogram, the time point corresponding to the maximum value of the amplitude or the triggering count is determined as the position of the echo pulse at the arrival time point within the original detection window. Alternatively, the time range in which the amplitude or the triggering count exceeds a predetermined threshold (as shown by a dashed line in
In step S103, a detection window is adjusted based on the position of the echo pulse so that the adjusted detection window includes the position of the echo pulse and is smaller than the original detection window.
After the rough position of the echo pulse is determined in step S102, in the process of subsequent sweeps of the current measurement, the echo pulse is usually located at or near the rough position. Therefore, in step S103, the detection window can be adjusted based on the rough position so that in the process of subsequent sweeps, the receiving and processing of data do not need to be performed within the entire range of the original detection window, instead, the receiving and processing of data can be performed only within the adjusted detection window which is smaller. For the adjustment of the detection window, it needs to be ensured that the rough position of the echo pulse is within the adjusted detection window, and the adjusted detection window needs to be smaller than the original detection window.
The position of the echo pulse determined in step S102 can be a specific triggering time point or can be a time range. When the position of the echo pulse is one or more triggering time points, each triggering time point can be taken as a center and a predetermined window is superimposed onto the center, that is, a period of time before and after the triggering time point is taken as the adjusted detection window.
Preferably, the triggering time point is not a center of the superimposed predetermined window, as long as the superimposed predetermined window includes the triggering time point. When the position of the echo pulse is one or more time ranges, the time ranges can be taken as the adjusted detection window. Alternatively, each time range can be taken as a center and a predetermined window is superimposed onto the center, that is, a period of time before and after the time range is taken as the adjusted detection window. Alternatively, the triggering time point is not be a center of the superimposed predetermined window, as long as the superimposed predetermined window includes the time range. Based on an embodiment of this disclosure, when the position of the echo pulse is one or more time ranges, the time range can be widened to the left and right by a particular proportion, such as 10% or 20%, respectively, to obtain the adjusted detection window.
In step S104, n detection sweeps are performed by using the adjusted detection window to obtain the result of the n detection sweeps as a second set of detection data, where n is an integer, and n≥1.
After the detection window is adjusted in step S103, for the remaining n detection sweeps of the current measurement, the measurement is performed using the adjusted detection window to obtain the second set of detection data. The second set of detection data includes, for example, the time information and the intensity information corresponding to the time information obtained during each detection sweep.
Based on a preferred embodiment of this disclosure, the k detection sweeps and the n detection sweeps jointly complete one measurement for one point in a three-dimensional environment. In other words, to complete one measurement, the first k detection sweeps need to be performed first and the data is stored as the first set of detection data, and then n detection sweeps need to be performed and the data is stored as the second set of detection data. Preferably, k>n to improve ranging precision, that is, when k>n, the ranging precision can be improved compared with the case where k≤n.
Based on a preferred embodiment of this disclosure, during the n detection sweeps, some measures can be taken for detection data outside the range of the adjusted detection window, for example, data outside the range of the adjusted detection window is not stored, to reduce the calculation amount and storage space. Because the detection data outside the range of the detection window is taken as ambient noise or interference signals after the rough position of the echo pulse is determined and the detection window is adjusted, the detection data is not stored, thereby improving the detection efficiency and the signal-to-noise ratio. Alternatively, the receiver (e.g., a photodetector or a TDC) is turned off outside the range of the adjusted detection window, and the detection is not performed, thereby reducing the system power consumption.
In step S105, a distance and/or a reflectivity of an object are determined based on the first set of detection data and the second set of detection data or based on the second set of detection data.
Specifically, a second histogram similar to the histogram in
Based on a preferred embodiment of this disclosure, the distance and the reflectivity of the object are determined based on the first set of detection data and the second set of detection data, and the distance and the reflectivity of the object are calibrated based on the second set of detection data. By combining two sets of detection data, more precise information about the object is obtained. For example, a rough position of the object is determined based on the first set of detection data and then is calibrated based on the second set of data to obtain a more precise position.
For another example, two sets of detection data are combined to obtain the precise position of the object. For another example, two sets of detection data are combined to obtain a rough position of the object, and then the rough position is calibrated based on the second set of data. It should be understood by those skilled in the art that one detection is divided into two or more groups of detection sweeps, the parameters of the subsequent detection sweeps are directed or adjusted by using data from the previous sweeps to obtain two or more sets of detection data, and then the distance from the object is determined based on the two or more sets of detection data, which are all within the protection scope of this disclosure.
In the embodiments described above, each measurement includes, for example, (k+n) detection sweeps, and the (k+n) detection sweeps are divided into two groups: the first k detection sweeps and the subsequent n detection sweeps. A rough position of an echo pulse can be obtained through the first k detection sweeps, and then the subsequent n detection sweeps are directed by using the rough position. Specifically, the detection window of the subsequent n detection sweeps is adjusted based on the rough position so that in the process of the subsequent n detection sweeps, the reception and outputting processing of signals does not need to be performed within the entire original detection window, instead, the reception of signal and processing of data can be performed only within the adjusted detection window, thereby reducing the power consumption, the storage amount, and the data processing amount of the LiDAR.
In the TDC of some LiDARs, each time scale of the time resolution of the TDC requires one corresponding storage position, and the count cnt of all triggered SPADs obtained from multiple detection sweeps is stored in the storage position corresponding to the time point. Because the time resolution of the TDC can be of the order of picoseconds (“ps”), a register with a great deal of storage space is required.
Each detector is coupled to a TDC, and the TDC can determine the arrival time of the photon. The data processor apparatus (not shown in
Taking the detector module 22 shown in
In the embodiment of
Through the detector module 22 shown in
When the photodetector is a SPAD array, once the photon is received by the SPAD, an avalanche electrical signal is generated and transmitted to the TDC, and the TDC outputs a time signal t1a of the triggering of the SPAD and a count signal cnt1a of the SPADs triggered at the same time point (here 1a represents the first triggering of the ath detection sweep). The triggering time point timestamp1a (hereinafter referred to as tp1a) of t1a−ta is calculated by the subtraction program, and the tp1a and the count signal cnt1a of SPADs triggered at the triggering time point are transmitted to and stored in the memory. One macro-pixel includes multiple SPADs, and the SPAD can perform detection again after the dead time. Therefore, during one detection sweep, the SPAD can be triggered again at another time point, and the memory stores tp2a and cnt2a of this triggering (2a represents the second triggering of the ath detection sweep). Multiple triggering in one detection sweep need to be stored based on time information.
During the next detection sweep b, the controller of the LiDAR transmits a signal again based on a predetermined program to control the transmitting end to transmit a detection light pulse at the time point tb. Once the photon is received by the SPAD, an avalanche electrical signal is transmitted to the TDC, and the TDC outputs a time signal t1b of the triggering of the SPAD and a count signal cnt1b of the SPADs triggered at the same time point (here 1b represents the first triggering of the bth detection sweep). Subsequently, the triggering time point timestamp1b (hereinafter referred to as tp1b) of the SPAD triggering time t1b−tb and the count signal cnt1b of SPADs triggered at the triggering time point are stored in the memory. One macro-pixel includes multiple SPADs, and the SPAD can perform detection again after the dead time. Therefore, during one detection sweep, the SPAD can be triggered again at another time point, and the memory stores tp2b and cnt2b of this triggering.
During the hundreds of detection sweeps, the triggering count cnt obtained from each detection sweep is stored at the corresponding position in the memory based on the triggering time point timestamp. When a new triggering count cnt arrives at the corresponding position of the same triggering time point timestamp, the originally stored value is accumulated with the new triggering count cnt and then the result is updated and stored to the position. After the results of the n detection sweeps are accumulated, a histogram is stored in the memory, and still referring to
In the data storage method shown in
Referring to
With such storage and ranging method, because the precision of the triggering time point timestamp is in the order of ps, when a long TOF detection is performed, the storage of a complete histogram requires a large memory and consumes a great deal of storage space. In particular, to improve the long distance ranging capability, the time length of the detection and the number of repeated detection sweeps need to be increased, and the requirement for the storage space is also increased.
Based on an embodiment of the present disclosure, the data storage method with weighted accumulation is used to compress the original signal while the ranging precision is preserved, thereby greatly reducing the storage space required for storing the histogram. After the approximate range of the object is determined, by means of the measurement using a “zoom-in” operation, the calculation amount required for generating a histogram can be reduced while keeping track of the object, thereby reducing the power consumption of the system.
In
It is readily appreciated by those skilled in the art that the time resolution of the LiDAR is small and the interval of the first time scale is relatively large, the time scale corresponding to the time resolution of the LiDAR can also be referred to as a “fine scale”, and the first time scale can also be referred to as a “rough scale”.
Still referring to
Based on a preferred embodiment of this disclosure, the first weight is associated with a time interval between the time point x and the adjacent first time scale A to the left of the time point x, and the first weight, for example, is (16−x); the second weight is associated with a time interval between the time point x and the adjacent first time scale A+1 to the right of the time point x, and the second weight, for example, is x. Therefore, the time point x is represented as its weights at two adjacent rough scales (A and A+1) instead, where the weight of x on the rough scale A is (16−x), and the weight on the rough scale A+1 is x (x characterizes the distance from the time point to A), as an equivalent to the fine scale of the time point x. In other words, by taking x as a weight, the data at the fine scale is stored on the addresses corresponding to the two adjacent rough scales to represent the value at the scale x, instead of storing the scale x itself. This process is represented by the following equation:
A*(16−x)+(A+1)*x=A*16+x (Equation 2).
In the Equation 2, the left on the equal sign is the sum of the starting value and the ending value of the rough scale stored using the rough scale, weights are applied to the starting value and the ending value, and the right of the equal sign is the specific value of the triggering time point. The specific value of the triggering time point can be represented by using the storage method of rough scale in combination with weight.
Similarly, when the signal obtained from the triggering further includes, in addition to the triggering time point, the triggering count cnt indicating the number or the intensity of the triggering, the newly-added intensity information at the rough scale A is cnt*(16−x), and the newly-added intensity information at the rough scale A+1 is cnt*x, which are accumulated during multiple sweeps, respectively. A detailed description is given below, for example, referring to
Still referring to
During the next sweep b, the signals tp2 and cnt2b are received, weights for the rough scales A and A+1 are applied respectively to obtain cnt2b*(16−x2b) and cnt2b*x2b, which are added with the originally stored data respectively and then the sums are respectively stored in the registers corresponding to the rough scales A and A+1. The histogram is obtained by accumulating the data of multiple sweeps, and during the multiple sweeps, the triggering counts cnt of all the triggering occurring at the time points 0-15 are stored in the registers corresponding to the rough scales A and A+1.
The comparison between the rough scale and the fine scale is shown in
In the embodiments of
In the above-mentioned embodiments, the first weight is (16−x), the second weight is x, and this disclosure is not limited thereto. The first weight can be x, the second weight can be (16−x); or the first weight can be 1−(x/n), and the second weight can be x/n, as long as the first weight is associated with a time interval between the time point x and one of adjacent first time scales, and the second weight is associated with a time interval between the time point x and the other one of adjacent first time scales.
The storage method shown in
Based on a preferred embodiment of this disclosure, the first set of detection data and the second set of detection data are stored in a first storage manner or a second storage manner Specifically, the first storage manner includes storage at a first time accuracy (i.e., the precision corresponding to the rough scale in
Because the first storage manner is performed at the first time accuracy, the second storage manner is performed at the second time accuracy, and the first time accuracy is lower than the second time accuracy, the storage space used in the first storage manner is less than the storage space used in the second storage manner.
Based on a preferred embodiment of this disclosure, the first set of detection data is stored in the first storage manner, and the second set of detection data is stored in the second storage manner Because less storage space is used in the first storage manner than in the second storage manner, the data volume of the first set of detection data is less, the calculation amount is lower, and the position of the object obtained based on the first set of detection data is rougher.
Based on a preferred embodiment of this disclosure, the first storage manner also involves a weight. The weight includes a first weight and a second weight, the first weight is associated with a time interval between the time information and one of adjacent first time scales, and the second weight is associated with a time interval between the time information and the other one of adjacent first time scales.
The rough scale of the 4-bit bit width includes 16 fine scales, and the comparison of the rough scale and the fine scale can be referred to
Specifically, when the first 300 detection sweeps are performed, the memory stores the first set of detection data based on the weighted accumulation method, and the detection data includes a triggering time point tp and a triggering count cnt. For example, one detector corresponds to nine SPADs, and cnt E (0, 9), that is, the maximum number of triggered SPADs is nine and the minimum number of triggered SPADs is zero. After 300 sweeps, data in the memory can be read to obtain a preliminary histogram, as shown in
After the rough position of the echo pulse is acquired, the detection window for the subsequent detection sweeps is adjusted, and the detection information is accumulated and stored using the manner shown in
Specifically, still referring to
The weighted accumulated histogram obtained from the first 300 detection sweeps and the histogram obtained from the subsequent 100 detection sweeps are accumulated, and information, such as TOF, distance of the object, and reflectivity of the object, is determined by using a centroid method or a leading-edge method. Preferably, the information such as TOF, distance of the object, and reflectivity of the object, is calibrated by using the stored histogram (a small section of the histogram) of the original pulse signal from the subsequent 100 detection sweeps.
In the embodiment of
In summary, the data storage method with weighted accumulation designed in this disclosure is used to compress the original signal while the ranging precision is preserved, thereby greatly reducing the storage space required for storing the histogram. The triggering time points to be processed subsequently are limited through the zoom-in operation, thereby reducing the unnecessary calculation amount and reducing the system power consumption. Moreover, the weighted accumulation is implemented in an FPGA or an IC, the calculation amount is determined by the triggering count, and in the subsequent measurement after the approximate range of the object is determined, by means of the zoom-in measurement, the calculation amount required for generating a histogram can be reduced while keeping track of the object, thereby reducing the system power consumption.
This disclosure further provides a LiDAR 10. The LiDAR 10 includes a transmitter 11, a receiver 12, a TDC 13, a memory 14, and a processor 15.
The transmitter 11 is configured to transmit a laser pulse to a three-dimensional environment to perform multiple detection sweeps.
The receiver 12 is configured to receive an echo pulse of the laser pulse reflected by an object and convert the echo pulse into an electrical signal.
The TDC 13 is coupled to the transmitter 11 and the receiver 12 to determine detection data.
The memory 14 is coupled to the TDC 13 and configured to store the detection data.
The processor 15 is coupled to the TDC 13 and the memory 14 and is configured to perform the following method 200 based on the flowchart shown in
In step S201, for the first k detection sweeps, a first set of detection data within an original detection window are obtained and stored, where k is an integer, and k≥1.
In step S202, a position of an echo pulse at an arrival time point within the original detection window is determined based on the first set of detection data.
In step S203, the detection window is adjusted based on the position of the echo pulse so that the adjusted detection window includes the position of the echo pulse and is smaller than the original detection window.
In step S204, for the subsequent n detection sweeps, a second set of detection data within the adjusted detection window are obtained and stored, where n is a positive number, and n≥1.
In step S205, a distance and/or a reflectivity of the object are determined based on the first set of detection data and the second set of detection data.
Based on an embodiment of this disclosure, the detection data includes time information and intensity information corresponding to the time information obtained from each detection sweep, and step S102 further includes:
generating a first histogram based on the first set of detection data; and
on the first histogram, determining a time point corresponding to the maximum value of an amplitude or a time range in which an amplitude exceeds a predetermined threshold as the position of the echo pulse at the arrival time point within the original detection window.
Based on an embodiment of this disclosure, step S203 further includes: adjusting the detection window with the position of the echo pulse at the arrival time point within the original detection window as the center.
Based on an embodiment of this disclosure, the range of the original detection window is related to the predetermined maximum detection distance of the LiDAR 10, and step S204 further includes: not storing detection data outside the range of the adjusted detection window, or outside the range of the adjusted detection window, turning off the receiver 12, and performing no detection.
Based on an embodiment of this disclosure, step S205 further includes: determining, based on the first set of detection data and the second set of detection data, at least one of the distance or the reflectivity of the object, and calibrating, based on the second set of detection data, at least one of the distance or the reflectivity of the object.
Based on an embodiment of this disclosure, the first set of detection data and the second set of detection data are stored in a first storage manner or a second storage manner, where the first storage manner includes storage based on a weight of the time information at a first time accuracy, the second storage manner includes storage based on a time resolution of the LiDAR, the first time accuracy is m times the time resolution, and m>1.
Based on an embodiment of this disclosure, the first set of detection data is stored in the first storage manner, and the second set of detection data is stored in the second storage manner.
Based on an embodiment of this disclosure, the weight includes a first weight and a second weight, the first weight is associated with a time interval between the time information and one of adjacent first time scales, the second weight is associated with a time interval between the time information and the other one of adjacent first time scales, and the first storage manner includes: storing the intensity information based on the first weight and the second weight, respectively, at the first time accuracy.
Based on an embodiment of this disclosure, the receiver includes a SPAD array, and the detection data includes a time point at which the SPAD array is triggered by a photon and the number of triggered SPADs.
This disclosure further relates to a computer-readable storage medium including computer-executable instructions stored thereon, where the computer-executable instructions, when executed by a processor, perform the data processing method described above.
Finally, it is to be noted that the above are merely preferred embodiments of this disclosure and are not intended to limit this disclosure. Although the embodiments of this disclosure are described in detail with reference to the above-mentioned embodiments, those skilled in the art can still modify the technical schemes described in the above-mentioned embodiments, or make equivalent substitutions on part of the technical features therein. Any modifications, equivalent substitutions, improvements and the like within the spirit and principle of this disclosure shall fall within the scope of protection of this disclosure.
Number | Date | Country | Kind |
---|---|---|---|
202110806406.9 | Jul 2021 | CN | national |
This application is a continuation of International Application No. PCT/CN2022/081303, filed on Mar. 17, 2022, which claims priority to Chinese Patent Application No. 202110806406.9, filed on Jul. 16, 2021. The disclosures of the aforementioned applications are hereby incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2022/081303 | Mar 2022 | US |
Child | 18412164 | US |