CN114424086A - 用于lidar测量的处理*** - Google Patents
用于lidar测量的处理*** Download PDFInfo
- Publication number
- CN114424086A CN114424086A CN202080066762.5A CN202080066762A CN114424086A CN 114424086 A CN114424086 A CN 114424086A CN 202080066762 A CN202080066762 A CN 202080066762A CN 114424086 A CN114424086 A CN 114424086A
- Authority
- CN
- China
- Prior art keywords
- registers
- histogram
- time intervals
- peak
- optical measurement
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
- G01S17/894—3D imaging with simultaneous measurement of time-of-flight at a 2D array of receiver pixels, e.g. time-of-flight cameras or flash lidar
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/02—Systems using the reflection of electromagnetic waves other than radio waves
- G01S17/06—Systems determining position data of a target
- G01S17/08—Systems determining position data of a target for measuring distance only
- G01S17/10—Systems determining position data of a target for measuring distance only using transmission of interrupted, pulse-modulated waves
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/02—Systems using the reflection of electromagnetic waves other than radio waves
- G01S17/06—Systems determining position data of a target
- G01S17/42—Simultaneous measurement of distance and other co-ordinates
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/483—Details of pulse systems
- G01S7/486—Receivers
- G01S7/4865—Time delay measurement, e.g. time-of-flight measurement, time of arrival measurement or determining the exact position of a peak
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S7/00—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00
- G01S7/48—Details of systems according to groups G01S13/00, G01S15/00, G01S17/00 of systems according to group G01S17/00
- G01S7/483—Details of pulse systems
- G01S7/486—Receivers
- G01S7/487—Extracting wanted echo signals, e.g. pulse detection
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
- G01S17/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/93—Lidar systems specially adapted for specific applications for anti-collision purposes
- G01S17/931—Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Electromagnetism (AREA)
- Optical Radar Systems And Details Thereof (AREA)
Abstract
光学测量***可通过提高其数据路径的各种方面来改进其估计与周围对象的距离的准确度。空间分辨率可通过基于空间方位而细分直方图桶或积分寄存器而提高。数据路径中的任一点处的饱和可被检测到且用于停止计数个别像素中的光子,饱和可接着在测量结束之后归一化。多个峰值可使用递归或迭代技术检测到以识别每一阶段处的最大剩余峰值。代替迭代通过直方图存储器多次,阈值可基于所估计环境噪声水平而预计算,且峰值可在单次遍历中检测到。
Description
相关申请案的交叉引用
本申请案主张2019年8月5日提交的第62/882,907号美国临时申请案的权益和优先权,所述美国临时申请案以全文引用的方式并入本文中。
技术领域
本公开大体上描述光检测与测距(LIDAR)***。更具体地说,本公开描述基于SPAD的LIDAR***,其估计背景噪声水平且聚集具有改进时间分辨率的测量的过程中的总光子计数。
背景技术
LIDAR***用于对象检测和测距,例如,用于如汽车、卡车、船等交通工具。LIDAR***还用于移动应用(例如,用于面部辨识)、家庭娱乐(例如,捕获用于视频游戏输入的手势捕获)和增强现实。LIDAR***通过利用来自激光器的脉冲照射一个地景,且接着测量光子行进到对象且在反射之后返回的时间来测量与对象的距离,所述时间如LIDAR***的接收器所测量。分析检测到的信号以检测背景光当中的反射信号脉冲的存在。可基于从脉冲的传输到对应反射脉冲的接收的飞行时间而确定与对象的距离。
确切地说,在LIDAR***的经济成本下,可能难以在所有条件下提供低到几厘米的鲁棒距离准确度。如单光子雪崩二极管(SPAD)的有前景的新检测器技术是有吸引力的,但当用以测量飞行时间和其它信号特性时具有显著缺陷,特别是在广泛的环境条件和目标距离方面由于其受限制的动态范围而具有显著缺陷。另外,因为其对即使少量光子的敏感性,SPAD可极易受背景噪声光的环境水平影响。
LIDAR***将得益于在变化的现实世界条件下检测反射激光脉冲且测量其飞行时间的较准确方法。具体地说,基于SPAD的LIDAR***将得益于准确地估计背景噪声水平且聚集具有改进时间分辨率的测量的过程中的总光子计数的方法。
发明内容
在一些实施例中,光学测量***可包含光源,其配置成在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。一个或多个第一时间间隔中的每一个可包含一个或多个脉冲串中的一个。光学测量***还可包含光传感器,其包括配置成检测来自一个或多个脉冲串的光子和来自环境光的光子的一个或多个光检测器。光学测量***可另外包含多个第一寄存器,其累积在一个或多个第一时间间隔期间接收到的来自一个或多个光检测器的光子计数。一个或多个第一时间间隔中的每一个可细分成多个第一时间区间,且多个第一寄存器中的每一个可累积在一个或多个第一时间间隔中的每一个中的多个第一时间区间中的对应一个期间接收到的光子计数以表示在一个或多个第一时间间隔期间接收到的光子计数的直方图。光学测量***可进一步包含多个第二寄存器,其累积在与一个或多个第一时间间隔的至少一部分重叠的第二时间间隔中来自一个或多个光检测器的光子计数。第二时间间隔可细分成多个第二时间区间,且多个第二寄存器中的每一个可累积在多个第二时间区间中的对应一个期间接收到的光子计数。
在一些实施例中,使用光学测量***的方法可包含在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。一个或多个第一时间间隔中的每一个可包含一个或多个脉冲串中的一个。方法还可包含检测来自一个或多个脉冲串的光子和来自环境光的光子。方法可另外包含将在一个或多个第一时间间隔期间接收到的来自一个或多个光检测器的光子计数累积到多个第一寄存器中。一个或多个第一时间间隔中的每一个可细分成多个第一时间区间,且多个第一寄存器中的每一个可累积在一个或多个第一时间间隔中的每一个中的多个第一时间区间中的对应一个期间接收到的光子计数以表示在一个或多个第一时间间隔期间接收到的光子计数的直方图。方法可进一步包含将与一个或多个第一时间间隔的至少一部分重叠的第二时间间隔中的光子计数累积到多个第二寄存器中。第二时间间隔可细分成多个第二时间区间。多个第二寄存器中的每一个可累积在多个第二时间区间中的对应一个期间接收到的光子计数。
在任何实施例中,可以任何组合但不受限制地包含以下特征中的任何和全部。光学测量***还可包含聚集多个第二寄存器中的每一个中的光子计数以产生在第二时间间隔期间接收到的总光子计数的算术逻辑电路。一个或多个第一时间间隔中的每一个可由第一开始信号界定。第二时间间隔可由独立于第一开始信号的第二开始信号界定。一个或多个光检测器可包含一个或多个单光子雪崩二极管(SPAD)。一个或多个第一时间间隔中的每一个可包含于第二时间间隔中。光学测量***还可包含选择多个第二寄存器中的哪些在多个第二时间区间中的每一个期间累积光子计数的选择信号。选择信号可由计时器产生。选择信号可在与多个第二寄存器相同的集成电路上产生。选择信号可替代地并不在与多个第二寄存器相同的集成电路上产生。选择信号可基于光传感器在围绕中心轴线时的角度位置而产生。方法/***操作还可包含聚集多个第二寄存器中的每一个中的光子计数以产生在第二时间间隔期间接收到的总光子计数;和使用总光子计数估计在第二时间间隔期间由光学测量***检测到的背景噪声。估计背景噪声可包含将总光子计数除以第二时间间隔的长度。估计背景噪声可包含识别多个第一时间区间中的一个或多个时间区间,在其期间由一个或多个脉冲串引起的反射光子估计已由光学测量***接收到;和从总光子计数排除一个或多个时间区间中接收到的光子计数。可从多个第一寄存器去除背景噪声。第二时间间隔可包含一个或多个第一时间间隔以外的时间间隔。一个或多个第一时间间隔期间接收到的多个第一寄存器中的光子计数的直方图可表示由光学测量***进行的单个光学测量。方法/***操作还可包含使用在第二时间间隔中存储于多个第二寄存器中的光子计数以产生周围环境的环境图像。在第二时间间隔中存储于多个第二寄存器中的光子计数可包含来自一个或多个脉冲串的光子和来自环境光的光子。
在一些实施例中,光学测量***可包含光源,其配置成在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。一个或多个第一时间间隔中的每一个可包含一个或多个脉冲串中的一个。光学测量***还可包含光传感器,其包括配置成检测来自一个或多个脉冲串的光子的一个或多个光检测器。光学测量***还可包含数据路径,其包括算术逻辑电路和多个第一寄存器。数据路径可配置成使用由算术逻辑电路聚集的来自一个或多个脉冲串的光子计数填入多个第一寄存器,使得多个第一寄存器表示在一个或多个第一时间间隔期间接收到的光子计数的直方图。光学测量***可另外包含饱和检测电路,其确定饱和何时在数据路径中发生且在一个或多个时间第一间隔中的在饱和发生之后发生的时间间隔中使得数据路径停止填入多个第一寄存器。
在一些实施例中,使用光学测量***的方法可包含在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。一个或多个第一时间间隔中的每一个可包含一个或多个脉冲串中的一个。方法还可包含使用一个或多个光检测器检测来自一个或多个脉冲串的光子。方法可另外包含使用来自一个或多个光检测器的光子计数填入数据路径中的多个第一寄存器。光子计数由数据路径中的算术逻辑电路聚集,使得多个第一寄存器表示在一个或多个第一时间间隔期间接收到的光子计数的直方图。方法可进一步包含确定饱和何时在数据路径中发生。方法还可包含在一个或多个第一时间间隔中的在饱和发生之后发生的时间间隔中使得数据路径停止填入多个第一寄存器。
在任何实施例中,可以任何组合但不受限制地包含以下特征中的任何和全部。数据路径可包含计数器,其计数在饱和检测电路使得数据路径停止填入多个第一寄存器之前发生的一个或多个第一时间间隔的数目。计数器可通过也开始一个或多个第一时间间隔的信号递增。数据路径可进一步包含计数在饱和检测电路使得数据路径停止填入多个第一寄存器之前算术逻辑电路更新多个第一寄存器的次数的计数器。饱和检测电路可从算术逻辑电路接收指示算术逻辑电路已饱和的信号。饱和检测电路可接收指示来自算术逻辑电路的结果大于待存储于多个第一寄存器中的一个中的最大数目的信号。饱和检测电路可通过停用使得算术逻辑电路聚集光子计数的周期性信号来使得数据路径停止填入多个第一寄存器。饱和检测电路可通过停用使得多个第一寄存器存储更新光子计数的周期性信号来使得数据路径停止填入多个第一寄存器。***还可包含第二数据路径,所述第二数据路径包括第二算术逻辑电路和一个或多个积分寄存器,其中第二数据路径可配置成在包含至少一个或多个第一时间间隔的第二时间间隔中将来自一个或多个光检测器的光子计数聚集到一个或多个积分寄存器中。第二数据路径可包含第二饱和检测电路,所述第二饱和检测电路确定饱和在第二数据路径中何时发生且在饱和发生之后的第二时间间隔期间使得第二数据路径停止将来自一个或多个光检测器的光子计数聚集到一个或多个积分寄存器中。***也可计数在使得数据路径停止填入多个第一寄存器之前发生的事件的数目。***也可使用以下来计算乘数:在使得数据路径停止填入多个第一寄存器之前发生的事件的数目;和在一个或多个第一时间间隔期间发生的事件的总数目。***也可使用乘数来缩放多个第一寄存器中的光子计数的直方图。***也可在缩放光子计数的直方图之后定位多个第一寄存器中的光子计数的直方图中的峰值。***也可使用来自一个或多个光检测器的光子计数填入第二数据路径中的一个或多个积分寄存器,其中光子计数可由第二数据路径中的第二算术逻辑电路聚集,使得一个或多个积分寄存器表示在包含至少一个或多个第一时间间隔的第二时间间隔中接收到的总光子计数;确定饱和在第二数据路径中何时发生;和在饱和发生之后使得第二数据路径停止填入一个或多个积分寄存器。***也可计数在使得第二数据路径停止填入一个或多个积分寄存器之前发生的事件的数目;和使用在使得第二数据路径停止填入一个或多个积分寄存器之前发生的事件的数目来缩放一个或多个积分寄存器中的总光子计数。***也可在缩放总光子计数之后计算环境背景噪声水平。***也可使用环境背景噪声水平来设置用于检测光学测量中的峰值的阈值。***也可从多个第一寄存器中的光子计数的直方图去除环境背景噪声水平。
在一些实施例中,光学测量***可包含光源,其配置成在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中一个或多个第一时间间隔中的每一个包含一个或多个脉冲串中的一个。***还可包含光传感器,其具有配置成检测来自一个或多个脉冲串的光子的一个或多个光检测器。***可另外包含多个第一寄存器,其累积在一个或多个第一时间间隔期间接收到的来自一个或多个光检测器的光子计数以表示在一个或多个第一时间间隔期间接收到的光子计数的直方图,多个第一寄存器中的每一个对应于直方图中的时间区间。***可进一步包含峰值检测电路,其配置成每当峰值检测电路执行时识别多个第一寄存器中的直方图的至少一部分中的最大峰值。***还可包含掩蔽电路,其配置成使得峰值检测电路将对应于在峰值检测电路的先前执行期间识别为最大峰值的峰值的寄存器从在峰值检测电路的后续执行期间识别为最大峰值排除,使得峰值检测电路的多个执行识别多个峰值。
在一些实施例中,使用光学测量***的方法可包含在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。一个或多个第一时间间隔中的每一个可包含一个或多个脉冲串中的一个。方法还可包含使用一个或多个光检测器检测来自一个或多个脉冲串的光子。方法可另外包含将来自一个或多个光检测器的光子计数累积到多个第一寄存器中以表示在一个或多个第一时间间隔期间接收到的光子计数的直方图,多个第一寄存器中的每一个对应于直方图中的时间区间。方法可进一步包含通过峰值检测电路的多个执行来识别多个第一寄存器中的直方图中的多个峰值。峰值检测电路的每一执行可识别直方图的至少一部分中的最大峰值。可将对应于在峰值检测电路的先前执行期间识别为最大峰值的峰值的寄存器从在峰值检测电路的后续执行期间识别为最大峰值排除。
在任何实施例中,可以任何组合但不受限制地包含以下特征中的任何和全部。***还可包含配置成存储由峰值检测电路识别的多个峰值的多个第二寄存器。多个峰值中的每一个可作为表示峰值周围的直方图中的时间间隔的一连串时间区间而存储。多个峰值中的每一个可与峰值出现处的直方图中的相对时间一起存储。***可配置成将由峰值检测电路识别的多个峰值发送到处理器,其中处理器可在集成电路芯片上操作,所述集成电路芯片不同于峰值检测电路在其上操作的集成电路芯片。多个峰值可发送到处理器而不将滤波器应用于表示多个峰值的值。峰值检测电路的每一执行可配置成循环通过多个第一寄存器且识别多个第一寄存器中的尚未由掩蔽电路排除的最大值。最大峰值可包含围绕存储最大值的多个第一寄存器中的一个定中心的多个第一寄存器的子集。峰值检测电路可配置成循环通过多个第一寄存器至少三次以识别直方图中的至少三个最大峰值。一个或多个光检测器可包含一个或多个SPAD。方法/***操作还可包含在识别最大峰值之前将低通滤波器应用于存储于多个第一寄存器中的直方图。方法/***操作还可包含在识别最大峰值之前将匹配滤波器应用于存储于多个第一寄存器中的直方图,其中匹配滤波器可对应于一个或多个脉冲串。可通过在后续执行期间从峰值检测电路掩蔽多个第一寄存器中的表示先前识别为最大峰值的峰值的寄存器来将在峰值检测电路的先前执行期间识别为最大峰值的峰值从在峰值检测电路的后续执行期间识别为最大峰值排除。可通过以下操作来将在峰值检测电路的先前执行期间识别为最大峰值的峰值从在峰值检测电路的后续执行期间识别为最大峰值排除:将阈值设置为处于或低于来自先前识别为最大峰值的峰值的最大值;和在峰值检测电路的后续执行期间排除满足或超过阈值的峰值。在峰值检测电路的后续执行期间排除满足或超过阈值的峰值可包含:识别多个第一寄存器中的具有满足或超出阈值的值的寄存器;和排除多个第一寄存器中的所述寄存器周围的寄存器。方法/***操作还可包含从峰值检测电路的执行排除直方图中的初始峰值。初始峰值可由从光学测量***的外壳出来的一个或多个脉冲串的反射产生。初始峰值可满足或超出用于饱和检测电路的饱和阈值。方法/***操作还可包含从饱和检测电路掩蔽初始峰值。
在一些实施例中,光学测量***可包含光源,其配置成在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。一个或多个第一时间间隔中的每一个可包含一个或多个脉冲串中的一个。***还可包含光传感器,其具有配置成检测来自一个或多个脉冲串的光子的一个或多个光检测器。***可另外包含第一集成电路,其包含多个第一寄存器,所述多个第一寄存器累积在一个或多个第一时间间隔期间接收到的来自一个或多个光检测器的光子计数以表示在一个或多个第一时间间隔期间接收到的光子计数的直方图。多个第一寄存器中的每一个可对应于直方图中的时间区间。第一集成电路还可包含阈值检测电路,其配置成提供阈值以用于识别直方图中的一个或多个峰值;和峰值检测电路,其配置成遍历通过多个第一寄存器且使用阈值来识别直方图中表示的一个或多个峰值。***还可包含具有处理器的第二集成电路。第一集成电路可配置成将描述使用阈值检测到的一个或多个峰值的信息发送到第二集成电路上的处理器。
在一些实施例中,使用光学测量***的方法可包含在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。一个或多个第一时间间隔中的每一个可包含一个或多个脉冲串中的一个。方法还可包含使用一个或多个光检测器检测来自一个或多个脉冲串的光子。方法可另外包含在第一集成电路上将来自一个或多个光检测器的光子计数累积到多个第一寄存器中以表示在一个或多个第一时间间隔期间接收到的光子计数的直方图,其中多个第一寄存器中的每一个可对应于直方图中的时间区间。方法可进一步包含在第一集成电路上提供阈值以用于识别直方图中的一个或多个峰值。方法还可包含在第一集成电路上通过以阈值遍历通过多个第一寄存器来识别在直方图中表示的一个或多个峰值。方法可另外包含将描述使用阈值检测到的一个或多个峰值的信息从第一集成电路发送到第二集成电路上的处理器。
在任何实施例中,可以任何组合但不受限制地包含以下特征中的任何和全部。阈值检测电路可配置成使用现有阈值。阈值检测电路可配置成基于在一个或多个第一时间间隔期间存在的背景噪声水平而计算阈值。***还可包含一个或多个积分寄存器,其在与一个或多个第一时间间隔的至少一部分重叠的第二时间间隔中累积来自一个或多个光检测器的光子计数,其中阈值检测电路可进一步配置成使用一个或多个积分寄存器中的一个或多个值来计算背景噪声水平。阈值检测电路进一步配置成通过将一个或多个积分寄存器中的总光子计数除以在其期间启用一个或多个积分寄存器的持续时间来计算背景噪声水平。在其期间启用一个或多个积分寄存器的持续时间可基于在其期间启用一个或多个积分寄存器的时钟周期的总数目而确定。阈值检测电路可进一步配置成通过以下操作来计算背景噪声水平:识别直方图中的表示一个或多个峰值的一个或多个时间区间;和从一个或多个积分寄存器中的总光子计数减去一个或多个时间区间中的光子计数。***还可包含配置成存储由峰值检测电路识别的一个或多个峰值的多个第二寄存器。一个或多个峰值中的每一个可被存储为:时间区间窗,其表示峰值周围的直方图中的时间间隔;和直方图中的相对时间,所述峰值在其处出现。第一集成电路可实施于与第二集成电路实施于其上的芯片物理上分离且不同的芯片上。一个或多个峰值可发送到处理器而不将滤波器应用于表示直方图中的一个或多个峰值的值。方法/***操作还可包含从直方图中表示的一个或多个峰值去除背景噪声水平。方法/***操作还可包含基于在一个或多个脉冲串之间由一个或多个光检测器接收到的光子的样本而确定背景噪声水平。提供阈值可包含将阈值设置为高于背景噪声水平的预定间隔。提供阈值可包含将阈值设置为高于背景噪声水平的间隔,所述间隔是背景噪声水平的预定百分比。方法/***操作还可包含在识别一个或多个峰值之前将低通滤波器应用于存储于多个第一寄存器中的直方图。方法/***操作还可包含在识别一个或多个峰值之前将匹配滤波器应用于存储于多个第一寄存器中的直方图,其中匹配滤波器可对应于一个或多个脉冲串。一个或多个峰值可包含对应于一个或多个脉冲串的反射的峰值和并不对应于一个或多个脉冲串的反射的峰值。识别直方图中表示的一个或多个峰值可仅使用通过多个第一寄存器的单次遍历。
附图说明
参考说明书的其余部分和图式可实现对各种实施例的性质和优点的进一步理解,其中相同参考标号在若干图式中用于指代类似组件。在一些情况下,子标签与参考标号相关联以标示多个类似组件中的一个。当在未指定子标签的情况下参考参考标号时,所述参考标号是指所有此类多个类似组件。
图1A和1B示出根据一些实施例的汽车光测距装置,在本文中也称为LIDAR***。
图2示出用于实施各种实施例的示例性LIDAR装置的框图。
图3说明可通过实施例改进的典型LIDAR***的操作。
图4示出根据一些实施例的用于光测距***的光传输和检测过程的说明性实例。
图5示出根据本发明的实施例的传感器阵列和相关联电子件的各个级。
图6示出根据本发明的实施例的直方图。
图7示出根据本发明的实施例的用于选定像素的多个脉冲串上的直方图的累积。
图8示出根据一些实施例的用于接收光子且产生存储于表示直方图的存储器中的信号的集合的电路。
图9示出根据一些实施例的与测量中的不同激发(shot)相关联的时序。
图10示出根据一些实施例的具有积分寄存器的数据路径。
图11示出根据一些实施例的用于积分数据路径的时序曲线图。
图12说明根据一些实施例的用于积分数据路径和直方图数据路径的时序曲线图。
图13示出根据一些实施例的包含用于提供来自所有积分寄存器的聚集总和的ALU的积分数据路径。
图14示出根据一些实施例的用于积分数据路径和直方图数据路径的相对时序图。
图15示出根据一些实施例的在芯片上产生选择信号的积分数据路径。
图16示出根据一些实施例的从芯片外的源接收选择信号的积分数据路径。
图17说明根据一些实施例的使用用于电动车辆的多个积分寄存器的环境光测量。
图18说明根据一些实施例的用于使用光学测量***的方法。
图19示出根据一些实施例的当饱和发生时的直方图存储器的内容。
图20示出根据一些实施例的饱和可对接收到的光子计数直方图的整体形状造成的影响。
图21示出当检测到的饱和使得直方图数据路径停止累积和存储新光子计数时来自图19中所描绘的测量的直方图存储器的内容。
图22示出根据一些实施例的用于使用事件计数器来缩放饱和直方图存储器的过程。
图23示出根据一些实施例的具有饱和检测的直方图数据路径的电路图。
图24说明根据一些实施例的在用于积分数据路径的测量期间接收到的光子计数的时间线。
图25说明根据一些实施例的光子计数可如何在测量期间在一个或多个积分寄存器中持续聚集。
图26示出根据一些实施例的当饱和发生时光子计数到积分寄存器中的聚集可如何停止。
图27说明根据一些实施例的具有饱和保护的积分数据路径。
图28示出根据一些实施例的用于使用光学测量***来处置饱和的方法的流程图。
图29示出根据一些实施例的可识别和掩蔽的初始峰值。
图30示出根据一些实施例的在直方图存储器中表示的多个峰值。
图31示出根据一些实施例的对于峰值检测电路的后续执行被掩蔽的先前检测到的脉冲。
图32说明根据一些实施例的在额外峰值由峰值检测电路识别出时掩蔽电路可如何持续产生新掩码。
图33示出根据一些实施例的用于检测直方图存储器中的多个峰值的电路。
图34说明根据一些实施例的用于检测测量中的多个峰值的方法的流程图。
图35示出根据一些实施例的用于使用光学测量***来检测多个峰值的方法。
图36示出根据一些实施例的由多个激发引起的在光学测量***处检测到的光的曲线图。
图37说明根据一些实施例的与直方图存储器中的接收到的光子计数相比较的所估计背景噪声水平。
图38示出根据一些实施例的其中所估计背景噪声可用于设置用于检测直方图存储器中的峰值的信号阈值的曲线图。
图39示出根据一些实施例的由可芯片外传送到处理器的阈值操作检测到的峰值窗口。
图40示出根据一些实施例的用于计算阈值和检测直方图存储器中的一个或多个峰值的电路。
图41示出根据一些实施例的用于使用光学测量***来检测多个峰值的方法。
术语
术语“测距”特别是当在用于测量环境或帮助车辆操作的方法和装置的背景下使用时可指代确定从一个方位或位置到另一方位或位置的距离或距离向量。“光测距”可指代利用电磁波来执行测距方法或功能的一类测距方法。因此,“光测距装置”可指代用于执行光测距方法或功能的装置。“Lidar”或“LIDAR”可指代通过以脉冲激光照射目标且其后以传感器测量反射脉冲来测量与目标的距离的一类光测距方法。因此,“lidar装置”或“lidar***”可指代用于执行lidar方法或功能的一类光测距装置。“光测距***”可指代包括至少一个光测距装置(例如,lidar装置)的***。***可进一步包括呈各种布置的一个或多个其它装置或组件。
“脉冲串”可指代一起传输的一个或多个脉冲。脉冲串的发射和检测可称为“激发”。激发可在“检测时间间隔”(或“检测间隔”)中发生。
“测量”可包含在N次激发中发射和检测到的N多个脉冲串,每一次激发持续检测时间间隔。整个测量可在测量时间间隔(或仅“测量间隔”)中,其可等于测量的N个检测间隔或更长,例如当在检测间隔之间发生暂停时。
“光传感器”或“光敏元件”可将光转换为电信号。光传感器可包含多个“光检测器”,例如,单光子雪崩二极管(SPAD)。光传感器可对应于测距测量中的特定分辨率像素。
“直方图”可指代表示随时间的一连串值的任何数据结构,如在时间区间上离散的值。直方图可具有指派给每一时间区间的值。举例来说,直方图可存储在一个或多个检测间隔中的每一个中的特定时间区间期间起动的光检测器的数目的计数器。作为另一实例,直方图可对应于模拟信号在不同时间的数字化。直方图可包含信号(例如,脉冲)和噪声。因此,直方图可视为作为光子时间序列(series)或光子通量的信号和噪声的组合。原始/数字化直方图(或累积光子时间序列)可含有在存储器中数字化的信号和噪声而无需滤波。“滤波直方图”可指代在原始直方图通过滤波器之后的输出。
发射的信号/脉冲可指代不失真的“标称”、“理想”或“模板”脉冲或脉冲串。反射信号/脉冲可指代来自对象的反射激光脉冲且可能失真。数字化信号/脉冲(或原始信号)可指代来自如存储于存储器中的检测间隔的一个或多个脉冲串的检测的数字化结果,且因此可等效于直方图的一部分。检测到的信号/脉冲可指代存储器中检测到信号的方位。检测到的脉冲串可指代由匹配滤波器找到的实际脉冲串。预期信号曲线(profile)可指代由在反射信号中具有特定失真的特定发射信号引起的数字化信号的形状。
具体实施方式
本公开大体上涉及对象检测和测距的领域,且更确切地说,涉及使用飞行时间光学接收器***以用于如实时三维测绘和对象检测、跟踪和/或分类的应用。可借助本发明的各种实施例实现各种改进。此类改进可以是增加的准确度、减少的噪声和增加的能量效率。
下方的部分介绍说明性汽车LIDAR***,随后是通过光测距***检测信号的实例技术的描述,且接着以更多细节描述不同实施例。
I.说明性汽车LIDAR***
图1A和1B示出根据一些实施例的汽车光测距装置,在本文中也称为LIDAR***。此处选择LIDAR***的汽车应用仅是出于说明起见,且本文所描述的传感器可用于其它类型的交通工具中,例如船、飞机、火车等,以及其中3D深度图像有用的多种其它应用中,如医学成像、移动电话、增强现实、大地测量、地球空间信息学、考古学、地形学、地质学、地貌学、地震学、林业、大气物理学、激光导引、机载激光条带测绘(ALSM)和激光高度测量法。根据一些实施例,LIDAR***,例如扫描LIDAR***101和/或固态LIDAR***103可安装在车辆105的车顶上,如图1A和1B中所示。
图1A中示出的扫描LIDAR***101可采用扫描架构,其中可在车辆105外部的外部场或场景内的一个或多个视场110附近扫描LIDAR光源107和/或检测器电路109的定向。在扫描架构的情况下,发射的光111可如所示在周围环境上扫描。举例来说,可扫描(例如,旋转)定位于LIDAR***101中的一个或多个光源(如红外或近红外脉冲IR激光,图中未示)的输出光束,以照射车辆附近的场景。在一些实施例中,由旋转箭头115表示的扫描可由机械手段实施,例如通过将光发射器安装到旋转柱或平台。在一些实施例中,扫描可通过其它机械手段实施,如通过使用电流计。也可采用基于芯片的转向技术,例如通过使用采用一个或多个基于MEMS的反射器的微芯片,例如数字微镜(DMD)装置、数字光处理(DLP)装置和类似物。在一些实施例中,扫描可通过非机械手段实现,例如通过使用电子信号使一个或多个光学相控阵列转向。
对于固定架构,如图1B中示出的固态LIDAR***103,一个或多个固态LIDAR子***(例如,103a和103b)可安装到车辆105。每一固态LIDAR单元可面对不同方向(在单元之间可能具有部分重叠和/或不重叠的视场)以便捕获比每一单元自身能够捕获的视场更大的复合视场。
在扫描或固定架构中,在场景内的对象可反射从LIDAR光源发射的光脉冲的部分。一个或多个反射部分接着行进回到LIDAR***,且可由检测器电路检测到。举例来说,反射部分117可由检测器电路109检测到。检测器电路可与发射器安置于同一外壳中。扫描***和固定***的方面不是相互排斥的,且因此可组合使用。举例来说,图1B中的个别LIDAR子***103a和103b可采用可转向发射器,如光学相控阵列,或整个复合单元可通过机械手段旋转,进而扫描LIDAR***前方的整个场景,例如从视场119到视场121。
图2说明根据一些实施例的旋转LIDAR***200的较详细的框图。更具体地说,图2任选地说明可采用旋转电路板上的旋转致动器的旋转LIDAR***,其可从固定电路板接收功率和数据(以及传输)。
LIDAR***200可与用户接口215的一个或多个示例交互。用户接口215的不同示例可变化且可包含例如具有监视器、键盘、鼠标、CPU和存储器的计算机***;汽车中的触摸屏;具有触摸屏的手持式装置;或任何其它适当的用户接口。用户接口215可以是LIDAR***200安装于其上的对象本地的,但也可以是远程操作的***。举例来说,去往/来自LIDAR***200的命令和数据可通过蜂窝式网络(LTE等)、个域网(蓝牙、Zigbee等)、局域网(WiFi、IR等)或如因特网的广域网来路由。
硬件和软件的用户接口215可从装置向用户呈现LIDAR数据,但也可允许用户以一个或多个命令控制LIDAR***200。实例命令可包含激活或去激活LIDAR***、指定光检测器曝光水平、偏置、取样持续时间和其它操作参数(例如,发射脉冲模式和信号处理)、指定光发射器参数(如亮度)的命令。此外,命令可允许用户选择用于显示结果的方法。用户接口可显示LIDAR***结果,所述结果可包含例如单帧快照图像、恒定更新的视频图像和/或一些或所有像素的其它光测量的显示。在一些实施例中,用户接口215可跟踪对象距车辆的距离(接近度),且潜在地向驾驶员提供警示或提供此类跟踪信息以用于对驾驶员表现的分析。
在一些实施例中,LIDAR***可与车辆控制单元217通信,且可基于接收到的LIDAR数据而修改与车辆的控制相关联的一个或多个参数。举例来说,在完全自主车辆中,LIDAR***可提供汽车周围环境的实时3D图像以辅助导航。在其它情况下,LIDAR***可用作高级驾驶员辅助***(ADAS)的部分或安全***的部分,其例如可将3D图像数据提供到任何数目的不同***,例如自适应巡航控制、自动停车、驾驶员嗜眠监视、盲点监视、碰撞避免***等。当车辆控制单元217可通信地耦合到光测距装置210时,可向驾驶员提供警示或可跟踪对象的接近度的跟踪。
图2中示出的LIDAR***200包含光测距装置210。光测距装置210包含测距***控制器250、光传输(Tx)模块240和光感测(Rx)模块230。可由光测距装置通过从光传输模块240传输一个或多个光脉冲249到光测距装置周围的视场中的对象而产生测距数据。所传输光的反射部分239接着在一些延迟时间之后由光感测模块230检测到。基于延迟时间,可确定与反射表面的距离。也可采用其它测距方法,例如连续波、多普勒和类似方法。
Tx模块240包含可以是一维或二维发射器阵列的发射器阵列242,以及Tx光学***244,它们当结合在一起时可形成微光学发射器通道阵列。发射器阵列242或个别发射器是激光源的实例。Tx模块240进一步包含处理器245和存储器246。在一些实施例中,可使用脉冲编码技术,例如巴克码(Barker code)和类似物。在此类情况下,存储器246可存储指示何时应当传输光的脉冲代码。在一个实施例中,脉冲代码存储为存储于存储器中的整数序列。
Rx模块230可包含传感器阵列236,其可以是例如一维或二维光传感器阵列。每一光传感器或光敏元件(也称为传感器)可包含光检测器的集合,例如,APD或类似物,或传感器可以是单光子检测器(例如,SPAD)。类似于Tx模块240,Rx模块230包含Rx光学***237。结合在一起的Rx光学***237和传感器阵列236可形成微光学接收器通道阵列。每一微光学接收器通道测量对应于周围体积的相异视场中的图像像素的光。例如,由于光感测模块230和光传输模块240的几何配置,传感器阵列236的每一传感器(例如,SPAD的集合)可对应于发射器阵列242的特定发射器。
在一个实施例中,Rx模块230的传感器阵列236制造为单个衬底上的单片装置的部分(使用例如CMOS技术),其包含光子检测器阵列以及用于对来自阵列中的个别光子检测器(或检测器群组)的原始直方图进行信号处理的ASIC 231。作为信号处理的实例,对于每一光子检测器或光子检测器组,ASIC 231的存储器234(例如,SRAM)可累积在连续时间区间上检测到的光子的计数,且这些时间区间结合在一起可用于再创建反射光脉冲的时间序列(即,光子计数对时间)。所聚集光子计数的这一时间序列在本文中称作强度直方图(或仅直方图)。ASIC 231可实施匹配滤波器和峰值检测处理以及时识别返回信号。此外,ASIC 231可实现某些信号处理技术(例如,通过处理器238),例如多曲线匹配滤波,以帮助恢复较不易受到由于SPAD饱和和骤冷而发生的脉冲形状失真影响的光子时间序列。在一些实施例中,此类滤波的全部或部分可由可实施于FPGA中的处理器258执行。
在一些实施例中,Rx光学***237也可以是与ASIC相同的单体结构的部分,具有用于每一接收器通道层的单独衬底层。举例来说,光圈层、准直透镜层、滤光器层和光检测器层可在切割之前在晶片级下堆叠且接合。可通过在透明衬底的顶部上布置不透明衬底或通过用不透光膜涂布透明衬底来形成光圈层。在又其它实施例中,Rx模块230的一个或多个组件可在单体结构的外部。举例来说,光圈层可实施为具有销孔的单独金属薄片。
在一些实施例中,从ASIC输出的光子时间序列发送到测距***控制器250以用于进一步处理,例如,数据可由测距***控制器250的一个或多个编码器编码,且接着作为数据包发送到用户接口215。测距***控制器250可以多个方式实现,包含例如通过使用如FPGA等可编程逻辑装置作为ASIC或ASIC的部分、使用具有存储器254的处理器258以及上述的某一组合。测距***控制器250可与固定基础控制器协作或独立于基础控制器而操作(经由预先编程的指令)以通过发送命令来控制光感测模块230,所述命令包含开始和停止光检测和调整光检测器参数。类似地,测距***控制器250可通过发送命令或从基础控制器转送命令来控制光传输模块240,所述命令包含开始和停止发光控制以及可调整其它光发射器参数(例如,脉冲代码)的控制。在一些实施例中,测距***控制器250具有一个或多个有线接口或连接器以用于与光感测模块230和光传输模块240交换数据。在其它实施例中,测距***控制器250经由如光学通信链路的无线互连与光感测模块230和光传输模块240通信。
电动机260可以是当例如Tx模块240和或Rx模块230的***组件需要旋转时需要的任选组件。***控制器250控制电动机260且可开始旋转、停止旋转和改变转速。
II.反射脉冲的检测
光传感器可以多种方式布置以用于检测反射脉冲。举例来说,光传感器可布置成阵列,且每一光传感器可包含光检测器阵列(例如,SPAD)。下文还描述在检测间隔期间传输的脉冲(脉冲串)的不同模式。
A.飞行时间测量和检测器
图3说明可由一些实施例改进的典型LIDAR***的操作。激光器产生短持续时间的光脉冲310。水平轴线表示时间,且竖直轴线表示功率。由半高全宽(FWHM)表征的实例激光脉冲持续时间是几纳秒,其中单个发射器的峰值功率是约几瓦。使用侧发射器激光器或光纤激光器的实施例可具有高得多的峰值功率,而具有小直径VCSEL的实施例可具有几十毫瓦到数百毫瓦的峰值功率。
脉冲的传输的开始时间315不需要与脉冲的前沿一致。如所展示,光脉冲310的前沿可在开始时间315之后。可能希望前沿在不同模式的脉冲在不同时间传输的情形中不同,例如,对于编码的脉冲。
光学接收器***可在开始激光器的同时,即在开始时间处开始检测接收到的光。在其它实施例中,光学接收器***可在稍后时间开始,所述稍后时间是在脉冲的开始时间之后的已知时间。光学接收器***最初检测背景光330,且在一些时间之后检测激光脉冲反射320。光学接收器***可将检测到的光强度与阈值进行比较以识别激光脉冲反射320。阈值可区分背景光330与对应于激光脉冲反射320的光。
飞行时间340是发送脉冲与接收脉冲之间的时间差。可通过从激光脉冲反射320的接收时间(例如,也相对于开始时间所测量)减去脉冲的传输时间(例如,如相对于开始时间所测量)来测量所述时间差。与目标的距离可确定为飞行时间与光速的乘积的一半。来自激光装置的脉冲在不同时间从场景中的对象反射,且像素阵列检测辐射反射的脉冲。
B.使用阵列激光器和光传感器阵列的对象检测
图4示出根据一些实施例的用于光测距***的光传输和检测过程的说明性实例。图4示出收集***周围的体积或场景的三维距离数据的光测距***(例如,固态或和/或扫描)。图4是突出显示发射器与传感器之间的关系的理想化附图,且因此其它组件未图示。
光测距***400包含光发射器阵列402和光传感器阵列404。光发射器阵列402包含光发射器阵列,例如VCSEL阵列和类似物,如发射器403和发射器409。光传感器阵列404包含光传感器阵列,例如传感器413和415。光传感器可以是像素化光传感器,其针对每一像素采用离散光检测器的集合,如单光子雪崩二极管(SPAD)和类似物。然而,各种实施例可部署任何类型的光子传感器。
每一发射器可从其相邻者稍微偏移,且可配置成将光脉冲传输到与其相邻发射器不同的视场中,进而照射仅与所述发射器相关联的相应视场。举例来说,发射器403将照射光束405(由一个或多个光脉冲形成)发射到圆形视场407(其大小为清楚起见而放大)中。同样,发射器409将照射光束406(也称为发射器通道)发射到圆形视场410中。虽然图4中未示出以避免复杂化,但每一发射器将对应照射光束发射到其对应的视场中从而引起照射的视场的2D阵列(在这一实例中,21个相异的视场)。
由发射器照射的每一视场可被认为是产生自测距数据的对应3D图像中的像素或光斑。每一发射器通道可以是每一发射器相异的且与其它发射器通道不重叠,即,在发射器集合与不重叠的场或视角的集合之间存在一对一映射。因此,在图4的实例中,***可对3D空间中的21个相异点进行取样。更密集的点取样可通过具有更密集的发射器阵列或通过扫描发射器光束随时间的角度位置以使得一个发射器可对空间中的若干点进行取样来实现。如上文所描述,可通过旋转整个发射器/传感器组合件来实现扫描。
每一传感器可从其相邻者稍微偏移,且类似于上文描述的发射器,每一传感器可看见传感器前方的场景的不同视场。此外,每一传感器的视场与相应发射器通道的视场大体上一致,例如,与其重叠且大小相同。
在图4中,对应发射器-传感器通道之间的距离相对于与视场中的对象的距离已放大。实际上,与视场中的对象的距离比对应发射器-传感器通道之间的距离大得多,且因此从发射器到对象的光的路径大致平行于从对象回到传感器的反射光的路径(即,其几乎是“反射回来”)。因此,***400的前方存在一个距离范围,其中个别传感器和发射器的视场是重叠的。
因为发射器的视场与其相应传感器的视场重叠,所以每一传感器通道理想地可检测来源于其相应发射器通道的理想地不具有串扰的反射照射光束,即,不检测来自其它照射光束的反射光。因此,每一光传感器可对应于相应光源。举例来说,发射器403将照射光束405发射到圆形视场407中,且照射光束中的一些从对象408反射。理想地,反射光束411仅由传感器413检测到。因此,发射器403和传感器413共享同一视场,例如视场407,且形成发射器-传感器对。同样,发射器409和传感器415形成发射器-传感器对,共享视场410。虽然发射器-传感器对在图4中示出为在其相应阵列中的相同相对方位,但取决于***中使用的光学件的设计,任何发射器可与任何传感器配对。
在测距测量期间,来自分布于LIDAR***周围的体积周围的不同视场的反射光由各种传感器收集且处理,从而得到每一相应视场中的任何对象的距离信息。如上文所描述,可使用飞行时间技术,其中光发射器发***确定时脉冲,且在一些经过的时间之后由相应传感器检测脉冲的反射。在发射与检测之间经过的时间以及已知光速接着用以计算与反射表面的距离。在一些实施例中,可由传感器获得额外信息以确定反射表面的除距离之外的其它属性。举例来说,脉冲的多普勒频移可由传感器测得且用以计算传感器与反射表面之间的相对速度。脉冲强度可用于估计目标反射率,且脉冲形状可用于确定目标是否是硬或漫射材料。
在一些实施例中,LIDAR***可由发射器和传感器通道的相对大2D阵列构成且操作为固态LIDAR,即,其可获得范围数据的帧而不需要扫描发射器和/或传感器的定向。在其它实施例中,发射器和传感器可扫描,例如围绕轴线旋转,以确保发射器和传感器的集合的视场对周围体积的完整360度区(或360度区的某个有用部分)进行取样。例如在某一预定义时间周期内从扫描***收集的范围数据可接着后处理成一个或多个数据帧,所述数据帧可接着进一步处理成一个或多个深度图像或3D点云。深度图像和/或3D点云可进一步处理成地图图块以用于3D测绘和导航应用。
C.每一光传感器中的多个光检测器
图5示出根据本发明的实施例的传感器阵列和相关联电子件的各个级。阵列510示出各自对应于不同像素的光传感器515。阵列510可以是交错阵列。在这一特定实例中,阵列510是18x4光传感器。阵列510可用于实现高分辨率(例如,72x1024),因为实施方案适合于扫描。
阵列520示出阵列510的一部分的放大图。如可看出,每一光传感器515由多个光检测器525构成。来自像素的光检测器的信号共同贡献于所述像素的测量。
在一些实施例中,每一像素具有大量单光子雪崩二极管(SPAD)单元,这增加像素自身的动态范围。每一SPAD可具有用于偏置、骤冷和再充电的模拟前端电路。SPAD通常以高于击穿电压的偏置电压进行偏置。合适的电路感测雪崩电流的前沿,产生与雪崩积累同步的标准输出脉冲,通过将偏置向下降低到低于击穿电压而使雪崩骤冷,且将光二极管恢复到操作电平。
SPAD可定位以便最大化其局部区域中的填充因数,或可使用微透镜阵列,这允许在像素级的高光学填充因数。因此,成像器像素可包含SPAD阵列以增加像素检测器的效率。漫射器可用于扩散通过光圈的射线且由微透镜准直。罐漫射器用于以属于同一像素的所有SPAD接收一些辐射的方式扩散准直射线。
图5进一步示出检测光子532的特定光检测器530(例如,SPAD)。响应于检测,光检测器530产生电荷载流子(电子或空穴)的雪崩电流534。阈值电路540通过将雪崩电流534与阈值进行比较来调节所述雪崩电流。当检测到光子且光检测器530正常工作时,雪崩电流534上升到高于比较器阈值,且阈值电路540产生指示SPAD电流雪崩的准确时间的时间上准确二进制信号545,这又是光子到达的准确测量。电流雪崩与光子到达的关联可以纳秒的分辨率发生,进而提供高时序分辨率。二进制信号545的上升沿可由像素计数器550锁存。
二进制信号545、雪崩电流534和像素计数器550是可由包括一个或多个SPAD的光传感器提供的数据值的实例。数据值可从来自多个光检测器中的每一个的相应信号确定。可将相应信号中的每一个与阈值进行比较以确定对应光检测器是否被触发。雪崩电流534是模拟信号的实例,且因此相应信号可以是模拟信号。
像素计数器550可使用二进制信号545对已经在受周期性信号560控制的特定时间区间(例如,1、2、3等纳秒的时间窗)期间由一个或多个光子触发的用于给定像素的光检测器的数目进行计数。像素计数器550可存储用于给定测量的多个时间区间中的每一个的计数器。用于每一时间区间的计数器的值可开始于零,且基于指示检测到光子的二进制信号545而递增。当像素的任何光检测器提供此类信号时,计数器可递增。
周期性信号560可通过锁相回路(PLL)或延迟锁定回路(DLL)或产生时钟信号的任何其它方法产生。周期性信号560和像素计数器550的协调可充当时间-数字转换器(TDC),其是用于辨识事件且提供它们发生的时间的数字表示的装置。举例来说,TDC可输出每一检测到的光子或光学脉冲的到达时间。测量时间可以是两个事件(例如,开始时间和检测到的光子或光学脉冲)之间经过的时间而不是绝对时间。周期性信号560可以是在包括像素计数器550的一组存储器之间切换的相对快时钟。存储器中的每一寄存器可对应于一个直方图区间,且时钟可以取样间隔在它们之间切换。因此,当相应信号大于阈值时,指示触发的二进制值可发送到直方图电路。直方图电路可聚集跨越多个光检测器的二进制值以确定在特定时间区间期间触发的光检测器的数目。
时间区间可相对于开始信号进行测量,例如在图3的开始时间315。因此,恰好在开始信号之后的时间区间的计数器可具有对应于背景信号的低值,所述背景信号例如背景光330。最后一个时间区间可对应于给定脉冲串的检测时间间隔(也称为激发)的结束,这在下一部分中进一步加以描述。周期性信号560自从开始时间起的循环数目可充当雪崩电流534的上升沿指示检测到的光子时的时戳。时戳对应于用于像素计数器550中的特定计数器的时间区间。此类操作不同于跟随光二极管(例如,对于雪崩二极管(APD))的简单模/数转换器(ADC)。时间区间的计数器中的每一个可对应于直方图,这在下文更详细地描述。因此,虽然APD是具有有限增益的用于输入光学信号的线性放大器,但SPAD是提供在时间窗中发生的触发事件的是/否的二进制输出的触发器装置。
D.脉冲串
测距也可通过使用脉冲串实现,所述脉冲串被界定为含有一个或多个脉冲。在脉冲串内,脉冲的数目、脉冲的宽度以及脉冲之间的持续时间(统称为脉冲模式)可基于若干因数而选择,所述因数中的一些包含:
1-最大激光占空比-占空比是激光器接通的时间的分数。对于脉冲激光,这可通过如上文所解释的FWHM以及在给定周期期间发射的脉冲数目来确定。
2-眼睛安全性限制-这是由装置在不伤害恰巧观看LIDAR***的方向的旁观者的眼睛的情况下可发射的最大辐射量确定。
3-功耗-这是发射器为了照射场景而消耗的功率。
举例来说,脉冲串中的脉冲之间的间隔可以是约单个数字或数十纳秒。
可在一个测量的时间跨度期间发射多个脉冲串。每一脉冲串可对应于不同时间间隔,例如在用于检测先前脉冲串的反射脉冲的时间限制到期之前不发射后续脉冲串。
对于给定发射器或激光装置,脉冲串的发射之间的时间决定最大可检测范围。举例来说,如果脉冲串A在时间t0=0ns处发射,且脉冲串B在时间t1=1000ns处发射,那么不得将在t1之后检测到的反射脉冲串指派给脉冲串A,因为它们更可能是来自脉冲串B的反射。因此,脉冲串之间的时间和光速界定以下等式中给出的***的范围上的最大界限。
Rmax=c×(t1-t0)/2
激发(脉冲串的发射和检测)之间的时间可以是约1μs以允许整个脉冲串有足够时间行进到大致150米远的遥远对象,且接着返回。
III.来自光检测器的直方图信号
LIDAR***的一个操作模式是时间相关单光子计数(TCSPC),其是基于对周期性信号中的单个光子的计数。这一技术良好适用于低水平的周期性辐射,这在LIDAR***中是合适的。这一时间相关计数可受图5的周期性信号560控制且可使用时间区间,如针对图5所论述。
周期性信号的频率可指定时间分辨率,在所述时间分辨率内测量信号的数据值。举例来说,可在周期性信号的每周期针对每一光传感器获得一个测量值。在一些实施例中,测量值可以是在所述周期期间触发的光检测器的数目。周期性信号的时间周期对应于时间区间,其中每一周期是不同时间区间。
图6示出根据本发明的实施例的直方图600。水平轴线对应于如相对于开始时间615所测量的时间区间。如上文所描述,开始时间615可对应于脉冲串的开始时间。可考虑脉冲串的第一脉冲的上升沿与脉冲串和检测时间间隔中的任一个或两个的开始时间之间的任何偏移,其中确定接收时间将用于飞行时间测量。竖直轴线对应于触发的SPAD的数目。在某些实施例中,竖直轴线可对应于跟随APD的ADC的输出。举例来说,APD可展现传统的饱和效应,如恒定最大信号而不是SPAD的基于死时间(dead-time)的效应。一些效应可针对SPAD和APD两者发生,例如,极倾斜表面的脉冲拖尾可针对SPAD和APD两者发生。
用于时间区间中的每一个的计数器对应于直方图600中的不同条。在早期时间区间的计数器是相对低的且对应于背景噪声630。在一些点处,检测到反射脉冲620。对应计数器大得多,且可高于在背景与检测到的脉冲之间区分的阈值。反射脉冲620(在数字化之后)示出为对应于四个时间区间,这可能由具有类似宽度的激光脉冲引起,例如当时间区间各自是1ns时的4ns脉冲。但如下文更详细地描述,时间区间的数目可例如基于激光脉冲的入射角中的特定对象的属性而变化。
对应于反射脉冲620的时间区间的时间方位可用于例如相对于开始时间615确定接收时间。如下文更详细地描述,匹配滤波器可用于识别脉冲模式,进而有效地增加信噪比,而且更准确地确定接收时间。在一些实施例中,确定接收时间的准确度可小于单个时间区间的时间分辨率。举例来说,对于1ns的时间区间,所述分辨率将对应于约15cm。然而,可能需要具有仅几厘米的准确度。
因此,检测到的光子可导致直方图的特定时间区间基于其相对于例如由开始时间615指示的开始信号的到达时间而递增。开始信号可以是周期性的,使得在测量期间发送多个脉冲串。每一开始信号可同步到激光脉冲串,其中多个开始信号使得在多个检测间隔中传输多个脉冲串。因此,时间区间(例如,在开始信号之后从200到201ns)将针对每一检测间隔发生。直方图可累积计数,其中特定时间区间的计数对应于跨越多个激发全部在所述特定时间区间中发生的所测量的数据值的总和。当检测到的光子基于此类技术做直方图时,其导致返回信号的信噪比比单个脉冲串大所作出激发次数的平方根。
图7示出根据本发明的实施例的用于选定像素的多个脉冲串上的直方图的累积。图7示出三个检测到的脉冲串710、720和730。每一检测到的脉冲串对应于具有以相同时间量分隔的两个脉冲的相同模式的所传输脉冲串。因此,每一检测到的脉冲串具有相同脉冲模式,如由具有明显值的两个时间区间所示。用于其它时间区间的计数器为了便于说明而未图示,但其它时间区间可具有相对低的非零值。
在第一检测到的脉冲串710中,用于时间区间712和714的计数器是相同的。这可由在两个时间区间期间检测到光子的光检测器的相同数目引起。或在其它实施例中,在两个时间区间期间检测到大致相同数目的光子。在其它实施例中,多于一个连续时间区间可具有连续非零值;但为便于说明,已经示出个别非零时间区间。
时间区间712和714分别在开始时间715之后的458ns和478ns发生。用于其它检测到的脉冲串的所显示的计数器相对于其相应开始时间在相同时间区间发生。在这一实例中,开始时间715被识别为在时间0处发生,但实际时间是任意的。用于第一检测到的脉冲串的第一检测间隔可以是1μs。因此,从开始时间715测量的时间区间的数目可以是1,000。然后,这一第一检测间隔结束,可传输和检测新的脉冲串。不同时间区间的开始和结束可受时钟信号控制,所述时钟信号可以是充当时间-数字转换器(TDC)的部分电路,例如在图5中所描述。
对于第二检测到的脉冲串720,开始时间725是在1μs,例如在此时可发射第二脉冲串。此类单独检测间隔可发生以使得在第一检测间隔的开始传输的任何脉冲将已经被检测到,且因此不会造成在第二时间间隔中检测到的脉冲的混淆。举例来说,如果激发之间不存在额外时间,那么电路可能混淆在200m处的回反射停止标志与在50m处的少得多反射的对象(假定约1us的激发周期)。用于脉冲串710和720的两个检测时间间隔可以是相同长度且与相应开始时间具有相同关系。时间区间722和724发生在与时间区间712和714相同的458ns和478ns的相对时间。因此,当累积步骤发生时,可添加对应计数器。举例来说,可一起添加在时间区间712和722处的计数器值。
对于第三检测到的脉冲串730,开始时间735是在2μs,例如其中可发射第三脉冲串。时间区间732和734也相对于其相应开始时间735发生在458ns和478ns。即使所发射脉冲具有相同功率,在不同时间区间的计数器也可具有不同值,例如原因在于光脉冲离开对象的散射过程的随机性质。
直方图740示出来自在时间区间742和744处的三个检测到的脉冲串的计数器的累积,所述时间区间也对应于458ns和478ns。直方图740可具有在相应检测间隔期间测量的较少数目的时间区间,例如原因在于丢弃在开始或结束时的时间区间,或具有小于阈值的值。在一些实施方案中,取决于脉冲串的模式,约10到30个时间区间可具有明显的值。
举例来说,在测量期间发射以创建单个直方图的脉冲串的数目可以是约1到40个(例如,24),但还可高得多,例如50、100或500。一旦测量完成,就可复位用于直方图的计数器,且可发射脉冲串的集合以执行新的测量。在各种实施例中且取决于相应持续时间中的检测间隔的数目,可每25、50、100或500μs执行测量。在一些实施例中,测量间隔可重叠,例如,因此给定直方图对应于脉冲串的特定滑动窗口。在此类实例中,存储器可存在以用于存储多个直方图,每一直方图对应于不同时间窗。施加于检测到的脉冲的任何权重对于每一直方图可以是相同的,或此类权重可独立地受控制。
IV.直方图数据路径
图8示出根据一些实施例的用于接收光子且产生存储于表示直方图的存储器中的信号的集合的电路。如上文相对于图5所描述,光传感器阵列可用于接收反射脉冲和来自光学测量***中的环境光的背景光子。单个光传感器802可包含多个光检测器。每一光检测器可由SPAD或其它光敏传感器实施,且光检测器可布置于用于光传感器802的网格图案中,如图8中所说明。滤波器可用于光传感器中的每一个以阻止由光传感器接收围绕LIDAR***的光源定中心的范围外部的光。然而,即使利用这一滤波器,处于或接近光源的所发射波长的一些环境光可穿过滤波器。这可引起来自环境光的光子以及从LIDAR光源发射的光子由光传感器接收到。
光传感器802中的每一光检测器可包含用于产生输出信号的模拟前端电路,所述输出信号指示光子何时由光检测器接收到。举例来说,返回参考图5,来自SPAD的雪崩电流534可触发阈值电路540以产生输出二进制信号545。转回到图8,光传感器802中的每一光检测器可产生对应于接收到的光子的其自身信号。因此,光传感器802可产生对应于光传感器802中的光检测器的数目的信号816的集合。光传感器802也可称为“像素”或“像素传感器”,这是由于当在光学测量***的后来的级中显示或分析时,其可对应于信息的单个像素。当响应于接收到的光子而产生信号(例如,从逻辑“0”转变到逻辑“1”)时,这可称作“正”信号。
算术逻辑单元(ALU)804可用于实施图5的像素计数器550的功能性。具体地说,ALU804可从光传感器802的个别光检测器接收信号816的集合且聚集各自指示检测到光子的这些信号的数目。ALU 804可包含对信号816的集合执行算术和/或其它逐位操作的组合数字电子电路。举例来说,ALU 804可接收信号816的集合中的每一个作为二进制信号(即,“0”或“1”)作为ALU 804的输入或操作数。通过将输入聚集或添加在一起,ALU 804可计数信号816的集合中的正信号的数目,所述正信号指示已在特定时间区间内接收到光子。举例来说,通过添加指示“1”信号电平的信号中的每一个,ALU 804的输出可指示信号816的集合中的与又在时间区间期间接收到光子的光检测器相关联的信号的数目。
ALU 804专门设计成至少接收对应于光传感器802中的光检测器的数目的输入的数目。在图8的实例中,ALU 804可配置成接收单个位宽的32个并行输入。内部地,ALU 804可利用数字逻辑门来实施以形成纹波进位加法器、超前进位加法器、进位保存加法器和/或可以低传播时间聚集相对大量输入的任何其它类型的加法器。ALU 804的输出可称作“总信号计数”且可表示为来自ALU 804或来自ALU 804的级的n位二进制数输出。
如上文所描述,ALU 804的输出可表征在特定时间区间期间由光传感器802接收到的光子的总数目。每当ALU 804完成聚集操作,总信号计数可添加到表示直方图818的存储器806中的对应存储器方位。在一些实施例中,可使用SRAM实施存储器806。因此,在多个激发的过程(其中每一激发包含脉冲串)中,来自ALU 804的总信号计数可与存储器806中的对应存储器方位中的现有值聚集。单个测量可包括多个激发,所述多个激发填入存储器806以产生可用于检测反射信号、背景噪声、峰值和/或所关注的其它信号的时间区间中的值的直方图818。
ALU 804也可执行将总信号计数添加到存储器806的存储器方位中的现有值的第二聚集操作。回顾图7,利用每一激发,新的总信号计数可添加到存储器806的对应时间区间中的现有值。以这种方式,直方图818可在数次激发中逐步地构建于存储器806中。当总信号计数由ALU 814产生时,可从存储器806检索用于所述时间区间的对应存储器方位的当前值820。当前值820可作为操作数提供到ALU 804,所述操作数可与来自信号816的集合的总信号计数组合。在一些实施例中,ALU 804可由第一级和第二级构成,其中第一级计算来自光传感器802的总信号计数,且第二级将总信号计数与来自存储器806中的所述时间区间的存储器方位的当前值820组合。在一些实施例中,信号816的集合的聚集以及总信号计数和当前值820的聚集可作为单个操作进行。因此,即使这两个操作可功能上描述为单独“聚集”,但其可实际上使用ALU 804中的并行和顺序电路的组合一起执行。
如上文相对于图5所描述,ALU 804可接收触发聚集操作的周期性信号560。周期性信号560可使用上文所描述的技术中的任一种产生。周期性信号560可界定每一时间区间的长度。在一些实施例中,周期性信号560和对应时间区间可相对于如图3中所说明的开始信号来测量。周期性信号560的每一周期可使得聚集操作在ALU 804中执行且可使得存储器860的存储器地址递增到下一时间区间。举例来说,周期性信号560的上升沿可使得ALU 804产生将总信号计数和当前值820聚集在一起的结果。对应周期性信号808也可发送到存储器接口电路,所述存储器接口电路使地址递增到当前时间区间的存储器方位,使得每一周期也移动到存储器806中的下一时间区间。
时钟电路810可用于基于界定激发的输入和用于光学测量***的测量而产生周期性信号560。举例来说,激发输入814可对应于图3中所说明的开始信号。激发输入814可将存储器806的地址复位到与直方图818的第一时间区间对应的开始存储器方位。激发输入814也可使得时钟电路810开始产生用于ALU 804的周期性信号560和/或使存储器806的地址递增的周期性信号808。另外,时钟电路810可接收限定测量的开始/结束的测量输入812。测量可包括递增地构建直方图818的多个激发。测量信号812可用于将存储器806中的值复位,使得直方图可重新开始以用于每一新测量。
存储器806可包含累积来自光检测器的光子计数的多个寄存器。通过在对应于时间区间的相应寄存器中累积光子计数,存储器806中的寄存器可基于光子的到达时间而存储光子计数。举例来说,第一时间区间中到达的光子可存储于存储器806中的第一寄存器中,第二时间区间中到达的光子可存储于存储器806中的第二寄存器中,等等。每一“激发”可包含对存储器806中的对应于用于所述光传感器的时间区间的寄存器中的每一个的一次遍历。激发信号814可称作用于存储器806中的多个寄存器的“启用”信号,因为激发信号814使存储器806中的寄存器能够在当前激发期间存储来自ALU 804的结果。
周期性信号560可产生以使得其配置成在从光传感器802异步地提供信号816的集合时捕获所述信号的集合。举例来说,阈值电路540可配置成在预定时间间隔中使输出信号保持高。周期性信号560可定时以使得其具有小于或等于阈值电路540的保持时间的周期。替代地,周期性信号560的周期可以是阈值电路540的保持时间的百分比,如90%、80%、75%、70%、50%、110%、120%、125%、150%、200%等等。一些实施例可使用如图5中所说明的上升沿检测电路以将来自光检测器的异步信号转换成单个时钟选通,所述单个时钟选通使用运行ALU 804的相同时钟。这可保证光子不被计数超过一次。其它实施例可替代地对来自光检测器的异步脉冲进行过取样或使用强力上升沿检测。
图9示出根据一些实施例的与测量中的不同激发相关联的时序。竖直轴线表示针对单个光传感器测量的光检测器信号的总数目。举例来说,竖直轴线可表示总光子计数。水平轴线表示时间。当新光学测量如由测量信号812所指示而开始时,第一激发可以接收作为开始信号的激发信号814-1开始。周期性信号506说明ALU 804的每一时钟如何对应于单个时间区间和存储器806中的对应存储器方位。
利用每一后续激发,直方图可构建于如图9中所说明的存储器806中。每当接收到激发输入814,存储器806的寻址可复位以使得新总信号计数可添加到现有信号计数。在图9的实例中,存在每一激发之间的分隔的非零时间间隔。举例来说,由激发信号814-1开始的激发结束,且在由激发信号814-2界定的激发开始之前,非零时间间隔流逝。替代地,一些实施例可不具有后续激发之间的延迟以使得周期性信号506在整个测量中不断地计时。后续激发信号814-2、814-3可接着界定先前激发的结束和后续激发的开始两者。
在一些实施例中,计时ALU 804的测量信号812、激发信号814和周期性信号506的时序可均相对于彼此被协调和产生。因此,ALU的计时可由每一激发的开始信号触发,且取决于每一激发的开始信号。另外,周期性信号506的周期可界定与直方图中的每一存储器方位相关联的每一时间区间的长度。
图8中所说明的数据路径主要配置成构建数次激发中的直方图818。然而,在一些实施例中,可仅在激发期间填入直方图。在激发之间接收到的任何光子将不在时间区间中由ALU804聚集且将不存储于存储器806中。另外,在每一测量完成之后和在后续测量开始之前,存储器806的内容可复位。因此,可不保存或容易地获得在当前测量之前和/或之后接收到的光子。此外,不在直方图数据路径中容易地获得在直方图中接收到的所有光子的总计数,且当直方图停用时,如果在激发之间存在非零间隔,那么在测量周期期间接收到的所有光子的总计数不可用。为了以依赖于激发/测量时序的连续方式记录接收到的光子,除了图8中所说明的直方图数据路径之外可使用第二并行数据路径。
V.积分数据路径
为了记录光传感器中的所有光检测器的累积光子总数,一些实施例可提供包含积分寄存器的并行数据路径。这一积分数据路径可接收每一时间区间的总正信号计数且将所述值添加到单个积分寄存器代替单独时间区间以形成直方图。这一积分寄存器可在激发之前、之间和之后记录光子计数。因为其可分别和独立于上文所描述的直方图数据路径而计时,所以其可甚至在活动测量或多激发测量内的激发不发生时记录光子计数。其为光传感器或像素提供可用于估计背景噪声、设置阈值和提供实时图像数据的容易地获得的光子总数。
图10示出根据一些实施例的具有积分寄存器的数据路径。具有多个光检测器的光传感器802可产生如上文相对于图8所描述的信号816的集合。第二ALU 1006可聚集在如上文所描述的时间区间期间接收到的正信号。然而,代替将在离散时间区间中由ALU 1006聚集的总信号计数存储在存储器806中,这一第二数据路径可将总信号计数添加到存储于积分寄存器1004中的值,所述值表示跨越任何次数激发中的时间区间中的每一个从光检测器接收到的正信号的总数目。举例来说,积分寄存器1004可将积分寄存器1004中的当前值1010提供到ALU 1006。ALU 1006的第一级可聚集来自光传感器802的信号816的集合以产生用于当前时间区间的总信号计数。ALU 1006的第二级可接着将用于当前时间区间的总信号计数添加到表示积分寄存器1004中的总光子计数的当前值1010且将更新的总光子计数存储在积分寄存器1004中。
积分信号1008可提供到时钟电路1003以开始积分周期。时钟电路1003可产生可对ALU 1006进行计时的周期性信号1012。举例来说,周期性信号1012可界定在其期间信号816的集合可由ALU 1006聚集的时间区间。时钟电路1003也可产生用于将新值锁存到积分寄存器1004中的周期性信号1011。举例来说,周期性信号1011上的上升时钟沿可使得积分寄存器1004锁存来自ALU 1006的结果。来自ALU 1006的结果可以是总信号计数的聚集总和和在锁存新结果值之前的积分寄存器1004的当前值1010。
与积分寄存器1004和/或ALU 1006相关联的时序可独立于图8的直方图数据路径中的时钟电路810的时序。举例来说,积分数据路径中的周期性信号1012无需与直方图数据路径中的周期性信号560相位对准。这些周期性信号1012、560也可具有不同周期和/或占空比。另外,限定积分周期的开始和/或长度的积分信号1008无需与直方图数据路径的激发信号814或测量信号812对准或从其导出。因此,直方图数据路径和积分数据路径的时序可完全地彼此独立。
在一些实施例中,积分寄存器1004可在由积分信号1008界定的一个或多个间隔期间累积来自光传感器802的光子计数。在这个意义上,积分信号1008也可称为“启用”信号,因为其启用积分寄存器1004以累积光子计数。在一些实施例中,积分信号1008的每一启用可使积分寄存器1004复位以使得光子计数的累积重新开始。在其它实施例中,积分信号1008的每一启用可重启积分寄存器1004以使得其在其停止的地方继续累积光子计数。这允许积分寄存器1004在可由积分(即,启用)信号1008界定的一个或多个时间间隔中累积光子计数。
图11示出根据一些实施例的用于积分数据路径的时序曲线图。底部曲线图上的竖直轴线表示用于每一时间区间的总信号计数。顶部曲线图的竖直轴线表示存储于积分寄存器中的总值。顶部曲线图和底部曲线图的水平轴线表示时间。当积分信号被接收1008时,时钟电路1003可开始产生周期性信号1012。如底部曲线图中所说明,周期性信号1012可界定用于ALU 1006的每一取样的时间区间。应注意,积分数据路径中的术语“时间区间”无需像时间区间在直方图数据路径中那样对应于直方图中的特定存储器方位。实际上,积分数据路径的时间区间是指聚集结果变得可从ALU 1006获得的时间之间的间隔。如上文关于直方图数据路径的周期性信号560所描述,积分数据路径的周期性信号1012的频率可相对于阈值电路540的保持时间而定时,使得对光子的正传感器响应在ALU 1006的聚集操作之间不被遗漏或过度计数。在一些实施例中,SPAD的模拟前端可实施上升沿检测器以将光检测器信号转换为同步计时信号,如上文所描述。
虽然未必与直方图数据路径的激发定时,但三个此类激发910、912和914在图11中作为参考进行说明。举例来说,间隔910可表示第一激发,间隔912可表示第二激发,且间隔914可表示第三激发。应注意,积分信号1008无需对应于开始信号,所述开始信号将表示直方图数据路径中的激发的开始,如激发910。另外,应注意,积分寄存器可随着时间连续地更新而不考虑激发或测量。在这一实例中,周期性信号1012在直方图数据路径中的激发910、912、914之前、之间和之后继续对ALU 1006计时。因为积分寄存器1004可持续更新,所以积分寄存器可表示跨越时间区间中的每一个和跨越表示单独激发的时间间隔从光检测器接收到的正信号的总数目。
图11的顶部曲线图说明积分寄存器1004随着时间的值1108。顶部曲线图并不表示直方图,但实际上每一竖直条表示所述时间点处的积分寄存器1004的值。来自底部曲线图的值也说明为顶部曲线图中的黑框,其添加到用于每一时间区间的积分寄存器1004的值1108。举例来说,具有值8、10、11、9的底部曲线图中的时间区间在对应时间区间期间累积添加到顶部曲线图中的积分寄存器中的值1108。当值8存储于直方图时间区间中时,其也添加到积分寄存器中的现有值1108以产生更新值16。接下来,当前值10添加到其时间区间且添加到积分寄存器中的现有值16以产生升级值26,等等。代替将更新值存储在存储器方位中和使存储器的地址递增,相同积分寄存器用来自ALU 1006的新值进行持续更新。如上文所描述,积分寄存器1004的值可持续增加而不考虑记录在直方图数据路径中的激发。
VI.多个积分寄存器
上述实施例使用单个积分寄存器以累积在一个或多个光学测量中的激发之前、期间、之间和/或之后接收到的光子的光子计数。存储于积分寄存器中的这一聚集值可用于估计背景噪声水平以用于在背景噪声与作为测量的部分从脉冲串反射的光子之间进行区分。另外,积分寄存器中的值可用于产生周围环境的环境光图像。举例来说,测量中的激发中的每一个可落入积分寄存器的积分窗口内。虽然直方图数据路径将产生与周围环境中的对象的距离测量值,但积分寄存器中的值可用于产生周围环境的环境光图像(例如,灰度)。所得环境光图像的空间分辨率可大体上与LIDAR***的测量的空间分辨率一致,使得每一距离测量值对应于环境光图像的一个灰度图像值。
代替使用单个积分寄存器,一些实施例可使用多个积分寄存器以增加在积分寄存器中捕获的图像数据的空间分辨率。图12示出根据一些实施例的具有多个积分寄存器1202的积分数据路径。图12中示出的积分数据路径类似于图10中示出的积分数据路径。然而,代替累积在启用积分寄存器1004时接收到的所有光子计数的单个积分寄存器1004,这一积分数据路径包含多个积分寄存器1202。代替存储单个积分寄存器1004中的所有光子计数,来自ALU 1006的光子计数可基于如时序、方位、阈值等等各种刺激而存储于多个积分寄存器1202中。
如图12中所示出,ALU 1006可将当前ALU时钟周期中的光子计数的输出提供到积分寄存器1210组。积分寄存器1210组可接着选择积分寄存器1202中的一个,且所选积分寄存器可接着将在当前时钟周期期间从ALU 1006接收到的光子计数添加到其当前所存储值。选择信号1204可提供到积分寄存器1210组且用于选择和循环通过积分寄存器1202中的每一个。选择信号1204还可由积分寄存器1210组使用以选择来自积分寄存器1202的输出以用作发送到ALU 1006的当前值1010,且选择来自ALU 1006的更新值应存储到的积分寄存器1202中的一个。
当积分信号1008触发积分数据路径上的积分周期的开始时,积分寄存器1210组可选择多个积分寄存器1202中的第一积分寄存器。举例来说,选择信号1204可提供到多路复用器1206,其接收来自多个积分寄存器1202的输出且选择那些积分寄存器1202中的一个的输出以用作当前值1010。如由选择信号1204所选,这一第一积分寄存器可将光子计数的其存储总和从先前ALU时钟周期提供到ALU 1006,且ALU 1006可将来自所选积分寄存器的这一当前值1010添加到来自光传感器802的当前光子计数。这一更新值可接着提供回到积分寄存器组。
当积分寄存器1210组从ALU 1006接收更新值时,选择信号1204可再次用于选择相同积分寄存器,其中输出由以上多路复用器1206选择。在一些实施例中,选择信号1204可充当个别地用于积分寄存器1202中的每一个的启用信号。ALU 1006的输出可提供到积分寄存器1202中的每一个的输入,且选择信号1204可选择积分寄存器1204中的一个以锁存在来自ALU 1006的更新值中。虽然图12中未明确示出,但一些实施例可替代或另外地包含多路分用器或反向多路复用器以将更新值从ALU 1006发送到所选积分寄存器。
选择信号1204可在选择积分寄存器1202中的不同一个之前通过多个ALU时钟周期来选择相同积分寄存器。在选择积分寄存器时,其可以上文关于具有仅单个积分寄存器的积分数据路径所描述的相同方式聚集光子计数。然而,具有多个积分寄存器1202的实施例可在单个积分间隔期间切换到积分寄存器1202中的新的一个。举例来说,当启用积分信号1008以开始积分周期时,选择信号1204可选择如上文所描述的积分寄存器1202中的第一个。在相同积分周期期间,且而不需要积分信号1008的新启用,选择信号1204可改变或递增以选择积分寄存器1202中的第二个。随后,这一过程可继续以使得选择信号1204在积分周期期间循环通过积分寄存器1202中的每一个。这有效地将存储于图10中的单个积分寄存器中的总光子计数拆分到图12的实施例中的多个个别积分寄存器1202中。
A.来自积分寄存器的总光子计数
当选择信号1204使得积分操作从积分寄存器1202中的一个移动到下一个时,且存储于积分寄存器1202中的先前一个中的聚集值可被维持。因此,当选择积分寄存器1202中的后续一个时,积分寄存器组1210中的先前积分寄存器可维持其值直到积分周期结束为止或直到后续积分周期开始为止。举例来说,当启用积分信号1008以开始新积分周期时,积分寄存器1202中的所存储值可复位到零。
图13示出根据一些实施例的包含用于提供来自所有积分寄存器1202的聚集总和的ALU 1302的积分数据路径。因为在选择信号1204通过积分寄存器1202时,积分寄存器1202中的每一个维持其所存储值,所以在积分周期期间的任一点处来自积分寄存器1202中的每一个的聚集总和可提供一直到积分周期中的所述点的总光子计数。在积分周期完成之后,积分寄存器1202中的值可仍被维持,使得积分寄存器1202中的值的聚集总和可在后续积分周期开始之前的任一点处使用。
为产生用于积分周期的总光子计数1304,ALU 1302可从积分寄存器1202中的每一个接收输出。ALU 1302的输出可接着表示总光子计数1304。在一些实施例中,ALU 1302可以是异步,使得其随着值在积分寄存器1202的输出上更新而动态地提供新总光子计数1304。在一些实施例中,ALU 1302可以是同步ALU,且可使用与用于聚集来自光传感器802的光子计数的ALU 1006相同的时钟信号进行计时。
总光子计数1304可作为待由控制处理器使用的输出而提供,所述控制处理器产生选择信号1204和/或积分信号1008且处理来自直方图数据路径的数据以识别反射脉冲串。在一些实施例中,积分寄存器组1210还可包含额外寄存器,所述额外寄存器每当积分寄存器1202更新且新值可从ALU 1302获得时从ALU 1302接收总光子计数1304且存储所述总光子计数。这些实施例可同时提供来自个别积分寄存器1204以及在整个积分周期中存储总光子计数1304的寄存器的光子计数。
B.数据路径之间的相对时序
积分数据路径可至少部分地通过在数据路径中的每一个中使用的启用、选择和/或时钟信号的不同时序以及各种时间间隔和时间区间来区分于直方图数据路径。选择信号1204、用于ALU 1006的时钟信号1012、积分信号1008和用于积分数据路径中的积分寄存器1210组的时钟信号1011可各自分别独立于直方图数据路径中的任何或所有时序信号。举例来说,当与直方图数据路径中的时序信号相比较时,积分数据路径中的时序信号中的每一个可由不同源产生。然而,这些信号中的一些可在一些实施例中取决于彼此,或至少暂时地彼此对准。举例来说,当用于ALU 1006的电路在数据路径之间共享时,时钟信号1012和1011可在数据路径之间共享。
图14示出根据一些实施例的用于积分数据路径和直方图数据路径的相对时序图。从底部曲线图中的直方图数据路径开始,每一测量可包括一个或多个“激发”。激发可界定为在其期间脉冲串从光源传输且由对应光传感器接收到的时间间隔。举例来说,图14说明多个激发,其中的每一个在激发时间间隔1408(也称为“第一时间间隔”)期间发生。测量中的第一激发可在时间间隔1408a期间发生,测量中的第二激发可在时间间隔1408b期间发生,测量中的第三激发可在时间间隔1408c期间发生,等等。测量中的激发中的每一个和对应时间间隔1408可由直方图数据路径中的激发(或“开始”)信号814界定。
激发时间间隔1408中的每一个可细分成多个激发时间区间1406(也称为“第一时间区间”)。激发时间间隔1408中的每一个可包含相同数目的时间区间1406,且时间区间中的每一个可对应于直方图数据路径的图8中的SRAM 806中的寄存器。举例来说,在激发时间间隔1408中的每一个中的第一时间区间中接收到的光子计数可聚集在SRAM中的相同第一寄存器中,在激发时间间隔1408中的每一个中的第二时间区间中接收到的光子计数可聚集在SRAM中的相同第二寄存器中,等等。为使SRAM中的寄存器与积分寄存器1210组中的寄存器区分,SRAM中的寄存器可称作多个“第一寄存器”。如上文所描述,因为时间区间各自聚集来自多个激发时间间隔1408的值,所以SRAM中的这一寄存器集合可作为整体表示在测量期间的多个激发中接收到的值的直方图。应注意,图14说明激发时间间隔1408中的每一个之间的非零时间间隔。其它实施例可使得激发时间间隔1408背对背发生,使得在激发时间间隔1408之间不存在延迟。
转向顶部曲线图中所说明的积分数据路径,代替使用多个时间间隔以界定测量,积分数据路径可使用在其期间光子计数顺序地聚集在积分寄存器1202组中的单个积分时间间隔1402(也称为“第二时间间隔”)。顶部曲线图的时间标度可与底部曲线图的时间标度相同。积分时间间隔1402的开始可由如上文所描述的积分信号1008触发。当接收到这一信号时,选择信号1204可选择积分寄存器1202中的第一个且开始积分来自如图14中所描绘的ALU的光子计数。
当选择信号改变/递增时,积分寄存器1202中的第二个可开始从ALU接收光子计数。这一过程可继续直到积分寄存器1202中的每一个已被选择为止。因此,积分寄存器1202中的每一个可与细分积分时间间隔1402的对应时间区间1404相关联。这些也可称为将其与直方图数据路径的激发时间间隔中的每一个中的第一时间区间区分的“第二时间区间”。举例来说,积分数据路径中的第一时间区间1404a可对应于积分寄存器1210组中的第一积分寄存器。第一时间区间1404a可比直方图数据路径中的时间区间1406大得多。另外,一些实施例可允许积分时间区间1404中的每一个具有不同长度。当选择信号1204并不由计时器控管,但实际上由如位置传感器的外部刺激产生时,这可以是真实的。
积分时间区间1404无需时间上与来自直方图数据路径的时间区间1406或激发时间间隔1408中的任一个对准。举例来说,时间区间1404a可在激发时间间隔1408a的中间开始或结束,可包含多个激发时间间隔1408,和/或可聚集落在激发时间间隔1408中的任一个以外的光子计数。在一些实施例中,时间区间1404可与激发时间间隔1408同步,使得某一数目的激发时间间隔1408落入积分时间区间1404中的每一个内。举例来说,一些实施例可被定时以使得两个或更多个激发时间间隔1408均匀地落在积分时间区间1404中的每一个内。
积分时间间隔1402的持续时间也无需与构成光学测量***的单个测量的激发时间间隔1408对准。举例来说,积分时间间隔1402可包含来自多个测量的激发。积分时间间隔1402还可包含比单个测量中更少的激发时间间隔1408。在一些实施例中,多个积分时间间隔1402可适合在单个激发时间间隔和/或单个测量内。一些积分时间间隔1402可在测量之前开始且延伸到测量之外。因此,积分时间间隔1402可在激发之间、在测量之间和/或在其期间不从光源传输脉冲串的其它时间处将光子计数聚集到积分寄存器1202中。
VII.选择积分寄存器
如上文所描述,选择信号1204可用于通过积分寄存器1202。选择信号1204可由各种不同源产生,所述各种不同源包含界定间隔计时器,以及无需符合精确时序要求的外部刺激。选择信号1204可产生于与积分数据路径相同的集成电路芯片上或可替代地在芯片外产生。
A.芯片上信号
图15示出根据一些实施例的在芯片上产生选择信号1204的积分数据路径。选择信号1204可由计时器1502产生。计时器1502可配置成以规则间隔产生选择信号1204,使得积分时间区间(即,第二时间区间)中的每一个可在长度上均一。计时器可通过将积分间隔细分成总计为积分间隔的所要长度的积分时间区间来界定每一积分间隔(即,第二时间间隔)的长度。举例来说,如果积分数据路径用于产生用于周围环境的环境图像中的像素的总光子计数,那么计时器1502可配置成产生总计为对应于所述像素的时间长度的时间区间。与每一像素相关联的时间可对应于光学测量***物理上旋转以扫描周围环境的速率。计时器1502可接着用积分寄存器1210组中的积分寄存器1202的数目来细分与每一像素相关联的时间间隔以产生用于选择信号1204的最终周期。
在一些实施例中,计时器1502可配置成使得其对应于与每一光学测量相关联的时间长度。举例来说,如果每一测量配置成花费大致1μs,那么计时器可配置成通过将用于每一测量的时间除以积分寄存器1210组中的积分寄存器1202的数目来使选择信号1204递增。当积分间隔应与对应测量一致时,可使用这种配置。举例来说,当积分值用于估计背景噪声水平以设置用于测量的阈值时,积分间隔可时间上对准以包含测量。
计时器1502还可用作用于测量光学测量***的位置的代理。因为光学测量***可围绕中心轴线旋转的速率可能已知,所以计时器1502可配置成提供用于环境光测量的预定空间分辨率。举例来说,如果光学测量***每100ms围绕其中心轴线旋转360°,且***应产生1000个像素,那么计时器1502可配置成每用积分寄存器组1210中的积分寄存器1202的数目除的100μs或每25μs使选择信号1204递增。因此,计时器可用于基于光学测量***的大致角度位置而产生芯片上选择信号1204而不需要来自角度编码器的芯片外外部信号。
B.芯片外信号
图16示出根据一些实施例的从芯片外的源接收选择信号1204的积分数据路径。当芯片外产生时,且集成电路芯片1504可从外部源接收输入,且所述输入可转换成用于积分数据路径的选择信号1204。举例来说,输入可作为与集成电路1504介接的控制处理器的中断而在引脚上接收到。控制处理器可接着产生周期性信号,所述周期性信号充当用于使积分寄存器1202递增的选择信号1204。因此,外部信号可界定积分时间间隔的长度,且控制处理器可使用外部信号以产生选择信号1204,其又限定用于如上文所描述的积分寄存器1202中的每一个的积分时间区间的长度。
在一些实施例中,外部信号可由角度编码器1602产生。当积分时间间隔是基于光学测量***在其围绕其中心轴线旋转时的角度位置时,角度编码器1602可用于确定光学测量***在旋转期间的位置。举例来说,角度编码器1602可如2018年5月15日申请且标题为具有颜色的增强全景LIDAR结果(AUGMENTING PANORAMIC LIDAR RESULTS WITH COLOR)的美国专利申请案第15/980,509号中所描述而被包含,所述美国专利申请案以引用的方式并入本文中。角度编码器1602可配置成每旋转0.36°(或全旋转的1/1000)产生可发送到积分数据路径的选通信号。替代地,角度编码器1602可将表示角度旋转的值的信号发送到控制处理器,其可又基于接收到的旋转角度而产生选择信号1204。
虽然角度编码器1602作为实例用于图16中,但其它实施例可使用任何其它外部源以产生选择信号1204。举例来说,一些***可改变积分周期的速度,使得积分间隔在低光条件下减小。这可引起较高分辨率环境光图像。一些实施例可使用车辆的速度,在所述车辆上光学测量***用以影响选择信号1204的频率。举例来说,在车辆行进较快时,选择信号1204的周期可减小,而当车辆在交通信号灯处等待时,周期可增加。其它机载车辆***也可将输入提供到光学测量***以影响选择信号1204的产生,包含安全性***、冲突检测***、接收到的天气预报和测量和/或响应于周围环境的其它***。
C.提高空间分辨率
将每一积分间隔细分成数个积分时间区间的影响中的一个是提高积分过程的环境光测量的空间分辨率,所述积分时间区间中的每一个在对应积分寄存器中被捕获。图17说明根据一些实施例的使用用于电动车辆1703的多个积分寄存器的环境光测量。在这一实例中,光学测量***1701可安装在电动车辆1703的顶部上。光学测量***1701可配置成围绕其中心轴线每秒旋转多次以扫描周围区域且产生深度图像和周围环境的环境光图像两者。每一积分间隔可对应于环境光图像中的一个像素。
在一些实施例中,由直方图数据路径捕获的深度图像的测量可暂时地与由如上文所描述的积分数据路径进行的环境光测量对准。具体地说,单个深度测量可对应于单个积分周期,使得环境光测量可用于估计背景噪声,从深度图像去除背景噪声,计算用于检测反射脉冲的阈值,等等。当仅使用单个积分寄存器时,环境光图像的空间分辨率可因此由通过直方图数据路径进行的测量的长度界定,其中长度可在***扫描以捕获直方图时创建的视场的时间长度或物理长度方面进行界定。
然而,当使用多个积分寄存器时,来自积分数据路径的环境光图像的空间分辨率可基于所使用的积分寄存器的数目而提高。在图17的实例中,积分寄存器1210组包含四个积分寄存器1202。对应于测量(且因此对应于这一实例中的积分周期)的角度旋转1702的递增可细分成四个角度递增,其中的每一个聚集积分寄存器1202a到1202d中的对应一个中的接收到的光子计数。这将环境光图像的空间分辨率提高四倍。如上文所描述,选择信号1204可由光学测量***1701上的角度编码器产生,选择信号1204可基于已知转速而由用作位置的代理的计时器产生,或选择信号1204可由任何其它位置感测装置产生。
VIII.用于使用多个积分寄存器的方法
图18说明用于使用光学测量***的方法。在框1802处,方法可包含在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。第一时间间隔中的每一个可对应于如上文所描述的激发时间间隔,且第一时间间隔中的每一个可对应于传输的脉冲串中的一个。这些脉冲串可由光学测量***的光源传输且可各自包含一个或多个个别脉冲。
在框1804处,方法还可包含检测来自一个或多个脉冲串的光子和来自环境光的光子。脉冲串和环境光可使用光传感器上的多个光检测器检测到。光检测器可使用单光子雪崩二极管(SPAD)实施。当接收到光子时,光检测器可产生信号,且定限电路可产生正信号以指示接收到光子。ALU可在ALU时钟周期期间聚集这些正信号以在ALU时钟周期期间产生光子计数。
在框1806处,方法可另外包含在一个或多个第一时间间隔期间累积来自一个或多个光检测器的光子计数。这些光子计数可累积于第一多个寄存器中。第一多个寄存器可包含如上文所描述的直方图数据路径的SRAM中的寄存器。第一时间间隔中的每一个可细分成用于直方图的多个第一时间区间。一个或多个第一时间间隔中的每一个中的对应时间区间可累积于第一多个寄存器中的单个寄存器中。第一时间间隔中的每一个可表示激发,且一个或多个第一时间间隔一起可表示用于光学测量***的测量。第一时间间隔中的每一个可由将表示直方图的存储器复位回到的直方图中的第一寄存器的开始信号或激发信号界定。
在框1808处,方法可另外包含在与一个或多个第一时间间隔的至少一部分重叠的第二时间间隔中累积光子计数。这些光子计数可累积到多个第二寄存器中。第二寄存器可使用上文所描述的多个积分寄存器来实施。第二时间间隔可对应于上文所描述的积分时间间隔,且第二时间间隔可包含用于直方图数据路径的第一时间间隔中的一个或多个的至少部分。第二时间间隔也可细分成第二时间区间。第二时间区间中的每一个可由选择信号界定,且第二时间区间可各自对应于多个第二寄存器中的个别积分寄存器。一些实施例还可包含算术逻辑电路,如ALU,其产生存储于所有第二寄存器中的值的聚集总和,所述聚集总和表示在积分间隔期间接收到的总光子计数。这一总光子计数可接着用于估计背景噪声且产生用于检测反射脉冲的阈值。
IX.直方图寄存器饱和
上文所描述的直方图数据路径的宽度可能并不过大,这是由于直方图存储器的内容可典型地在每一测量开始时复位。举例来说,一些实施例可使用12位SRAM,其中每一12位寄存器可存储在0到4095的范围内的无符号值。在正常情形中,这提供足够存储器以使得来自每一测量的激发中的光子计数可聚集在直方图寄存器中而不超出12位范围。直方图数据路径中的其它数据路径组件可至少与直方图存储器中的寄存器一样宽。
在正常操作条件下,直方图存储器中的寄存器和/或其它数据路径组件可足够大以使得饱和并不常见。然而,在某些操作条件中,过量的环境光可存在以使得饱和可发生。替代或另外地,可遇到高反射和/或回反射表面,其将从光学测量***发射的大量光反射回到对应光传感器中。回反射表面是以最小量的散射将包含光的辐射反射回到其源的表面。回反射表面可通常在其中光学测量***安装在车辆上的驾驶情形中遇到。这些回反射表面可包含道路标志、车辆反射器、安全性服、安全屏障(safety barrier)和具有反射表面的其它对象。车辆上的光学测量***也可遭遇呈车辆前灯、施工灯、远光灯、路灯和/或照射道路的其它人造光源的形式的大量环境光。车辆上的光学测量***也可经历从如太阳的自然源接收到的大量光。9当光学测量***碰到这些光源和/或反射表面中的任一个时,直方图寄存器中的一个或多个的饱和可发生。
如本文中所使用,术语“饱和”可描述其中从光传感器接收到光子计数的情形,且将接收到的光子计数添加到存储于用于所述时间区间的直方图寄存器中的现有值将引起值超出可表示直方图数据路径中的至少一个组件的值。举例来说,一些实施例可使用可表示在0到4095的范围内的值的无符号12位数据路径。当添加到时间区间寄存器中的现有值的接收到的光子计数超出4095时,这一数据路径可饱和。举例来说,如果寄存器存储来自先前激发中的光子计数的值3825,且当前激发尝试将额外425个光子计数添加到用于所述时间区间的寄存器,那么数据路径将在试图聚集和/或存储大于4095的值时饱和。饱和时的数据路径的行为取决于ALU、寄存器和其它数据路径组件的实施方案。当尝试进行聚集或存储大于最大值的值时,一些组件可维持最大值(例如,4095)。一些组件可将值复位到0。一些组件可在0处重启所述计数且将超过最大值的量添加到0(例如,3825+425=155)。不管组件行为,当数据路径饱和时,超出寄存器的最大值的实际值将丢失。
在一些实施例中,直方图存储器中的寄存器可形成与ALU分离的组件,所述ALU累积当前激发中的光子计数且将所述值添加到寄存器中的现有值。如图8中所说明,ALU 804可从直方图存储器806检索当前值820且将所述值添加到当前激发中的光子计数。因此,一些实施例可包含ALU 804作为饱和限制组件。举例来说,12位ALU可产生“进位”输出或当前“添加”操作的结果超出ALU 804的输出的12位容量的其它指示。一般来说,ALU 804的输出将如上文所描述重新开始计数,且从零向上计数的剩余部分值将作为当前值820存储在直方图存储器806中。具有带符号输出的一些ALU将翻滚且开始从由ALU表示的最低负数向上计数。一些实施例可使用累积器存储器,其将ALU 804与直方图存储器组合以使得用于直方图存储器806的存储器接口执行ALU 804的累积功能。不管特定实施方案,直方图存储器806、ALU 804、用于直方图存储器806的存储器接口或一些其它数据路径组件可限于某一数目的位,且其中光子计数添加到当前值820的累积操作可超过所述数据路径组件的宽度。当这在任何组件中发生时,其可被视为饱和。
图19示出根据一些实施例的当饱和发生时的直方图存储器的内容。曲线图中的竖直条中的每一个表示存储于直方图存储器中的寄存器中的单个时间区间。每一条中的水平分区表示在每一激发期间累积于寄存器中的值。在这一实例中,八个激发已发生在光学测量中。如上文所描述,来自每一激发的光子计数可添加到来自先前激发的累积于寄存器中的光子计数的现有值。表示时间区间的每一寄存器可使用N位寄存器来实施,其中N是整数值,如8、10、12、16、24、32、64等等。典型地,寄存器无需存储关于在特定激发期间接收到哪些光子计数的任何指示。因此,每一条中的竖直分区无需表示于存储于寄存器自身中的值中,但实际上出于说明性目的而被包含以示出光子计数如何可随着时间累积在直方图存储器中的寄存器中。
图19中的水平线表示饱和限制1902,其可应用于直方图存储器中的寄存器中的每一个。如上文所描述,饱和限制1902可以是从直方图数据路径中的任何数据路径组件的位宽导出的限制。饱和限制1902可表示可由每一个别寄存器存储的最大无符号值。举例来说,饱和限制1902可以是用于12位寄存器的值4095。饱和限制1902也可表示直方图数据路径中的ALU的输出的最大宽度,使得在超出饱和限制1902之后,ALU产生进位输出和/或开始从下部ALU限制向上计数。由于高水平的环境光和/或由于反射很强的表面,图19中的直方图包含超出饱和限制1902的峰值,使得多个时间区间将存储饱和值而非实际光子计数。
不管饱和的特定数据路径组件,当新光子计数由ALU接收到且尝试将新光子计数添加到现有值时,此类饱和可发生。新光子计数可在每一激发期间多次添加到直方图存储器中的用于特定时间区间的寄存器。用于ALU的时钟信号可在时间区间期间以规则间隔切换以当光子到达时从光传感器中的个别光检测器捕获正指示。因此,由于累积操作在时间区间期间有规律地添加新光子计数而非在时间区间结束时添加累积光子计数,所以饱和可在时间区间期间的任一点处发生。一些实施例可在时间区间的持续时间中累积所有光子计数,接着尝试在时间区间期间将总光子计数的数目添加到直方图存储器中的对应寄存器。在任一情况下,饱和可在通过ALU进行的累积操作期间和/或当更新的总光子计数发送到直方图存储器以用于存储时发生。
图20示出根据一些实施例的饱和可对接收到的光子计数直方图的整体形状造成的影响。如在本公开中上文所描述,接收到的脉冲的宽度、高度和形状可由匹配滤波器处理以识别已由光学测量***的光源发射、由周围环境反射且由光传感器接收到的光脉冲。匹配滤波器可区分反射脉冲与从周围环境接收到的偶然或背景光。脉冲的形状在确定脉冲的确切方位时也是重要的。脉冲的方位(即,脉冲峰值定位于其中的时间区间)可用于确定光学测量***与周围环境中的反射对象之间的距离。
图20示出当图19中的饱和发生时直方图存储器中的寄存器的内容。代替准确地表示脉冲时间区间2002中接收到的光子计数的量值,直方图存储器中的寄存器可在其最大值处饱和。举例来说,12位无符号寄存器可在值4095的情况下饱和。因为个别寄存器典型地仅存储表示用于测量的总光子计数的值,所以所述个别寄存器并不区分个别光子何时在特定时间区间内的测量期间到达。因此,直方图数据路径并不知晓饱和寄存器的真实量值。举例来说,无法分辨寄存器是否仅因少数光子计数而饱和且因此极其准确,或寄存器是否在测量的中间因许多光子计数而饱和且因此极其不准确。寄存器饱和不仅影响个别寄存器表示总光子计数的准确度,其也未能存储指示饱和何时在测量中出现的任何信息。
除了个别寄存器的不准确性之外,图20中所描绘的饱和也改变接收到的光脉冲的形状。因为用于测量中的其余时间区间的寄存器不饱和,所以其继续准确地累积光子计数直到测量结束为止。因为脉冲时间区间2002中的光子计数饱和,所以脉冲的所记录顶部与背景噪声之间的相对距离减小。这引起较低信噪比(SNR)且因此通过使峰值较难与背景噪声辨别来降低测量中的置信度。饱和还具有“变平”脉冲的效果。代替可在单个时间区间中识别的定义明确的脉冲峰值方位,图20的脉冲时间区间2002在饱和之后不可彼此辨别。脉冲的峰值可以是脉冲时间区间2002中的任何位置。这种不确定性降低可定位峰值的准确度,且因此降低可在周围环境中计算与反射对象的距离的准确度。改变脉冲时间区间2002中的反射脉冲的形状也影响匹配滤波器可识别脉冲的准确度。
A.基于计数器的饱和缩放
为了解决与直方图数据路径中的饱和相关联的这些和其它技术问题,数据路径可包含在测量期间计数激发和/或曝光的数目的计数器。如上文所描述,“激发”以开始/激发信号开始且包含将多个时间区间中的光子计数记录在直方图存储器中。激发填入在多激发测量的过程中递增地累积的直方图的一个层。激发内的时间区间中的光子计数的每一聚集可称作“曝光”,且激发可包含多个曝光,其中ALU和直方图存储器进行计时以聚集和存储单个时间区间中的更新光子计数。当饱和发生且被检测到时,可停用在用于所述光传感器的直方图存储器中的所有寄存器的测量期间的额外光子计数的聚集和存储。计数器可存储直到饱和时发生的激发和/或曝光的数目,且这一数目与用于整个测量的测量中的激发和/或曝光的总数目一起可用于缩放直方图存储器中的不完全光子计数。这保留反射脉冲的整体形状且允许估计其真实量值。
图21示出当检测到的饱和使得直方图数据路径停止累积和存储新光子计数时来自图19中所描绘的测量的直方图存储器的内容。当在单个时间区间中检测到用于特定光传感器的单个饱和时,对于用于所有寄存器的其余测量,在用于所述光传感器的所有时间区间中可停用新光子计数的累积和存储。在饱和之后停用光传感器无需对光传感器阵列中的其它光传感器造成任何影响。这允许在每一光传感器处个别地检测到且处置饱和而不影响其它光传感器。举例来说,如果几个光传感器接收引起饱和的大的光脉冲,那么这一事件可仅与受到影响的光传感器隔离。此外,受到影响的光传感器可缩放其结果,使得其与如下文所描述的不受影响的光传感器的结果相当。
直方图数据路径可包含计数在测量的开始与饱和发生的时间之间发生的事件的数目的事件计数器2002。“事件”可包含激发的数目、由ALU累积的曝光的数目和/或在测量期间周期性地发生的任何其它时序事件。在这一实例中,事件计数器2002可表示自测量开始以来的激发的数目。然而,这不意味限制,且任何其它事件可以类似方式使用。
对于每一事件,事件计数器2002可递增。在这一实例中,事件计数器2002可在每一激发开始时或结束时递增。举例来说,使时钟开始将脉冲发送到ALU和直方图存储器的开始信号也可引起事件计数器2002递增。在测量开始之后的每一激发可继续使事件计数器2002递增直到直方图数据路径中的饱和发生为止或直到测量结束为止。引起饱和或以其它方式检测饱和的组件可将信号发送到事件计数器2002,所述信号使得事件计数器2002停止随着后续开始信号在后续激发开始时递增。因此,在测量结束时,事件计数器2002中的值可表示在测量开始时发生的激发的数目直到饱和在直方图数据路径中出现为止。
如上文相对于图19所描述,图21的直方图中的竖直条中的每一个表示存储于表示在测量中的多个激发内重复填入的单个时间区间的寄存器中的光子计数的累积总和。竖直条内的区段中的每一个表示在单个激发内接收到的光子计数。因此,这一实例示出在饱和出现之前累积和存储于直方图存储器中的总共四个激发。
在这一实例中,与时间区间2102相关联的寄存器在第四次激发期间达到饱和。如上文所描述,这可包含ALU处的饱和、直方图存储器的寄存器中的饱和和/或直方图数据路径的任何其它组件中的饱和。饱和的结果是第四次激发期间的总光子计数可不准确地累积和/或表示于相关联寄存器中。当检测到饱和时,当前激发的剩余部分的光子计数可以数种不同方式处置。在一些实施例中,对于激发的剩余部分,当前寄存器可停用,而直方图存储器中的其它寄存器继续累积光子计数直到当前激发结束为止。在当前激发结束之后,接着直方图存储器中的剩余寄存器可停用。当这发生时,使ALU递增和使直方图存储器更新的周期性时钟信号可断开。在这一实例中,除高于饱和限制1902的用于时间区间2102的光子计数的部分之外,可累积和存储每一寄存器的全光子计数。
替代地,当饱和在直方图寄存器中的任一个中发生时,一些实施例可紧接着使得ALU停止累积且使得直方图存储器停止存储新值。饱和事件仅需要发生于用于光传感器的直方图数据路径中的单个寄存器上。代替停止用于所述单个寄存器的累积,光传感器中的新光子计数的所有累积和存储可停用。这可紧接着发生,使得当饱和在激发的中间发生时,光子将不再累积于用于其余测量的剩余时间区间的任何寄存器中。在这一实例中,直到时间区间2104为止的时间区间可包含用于当前激发的全光子计数,时间区间2102将包含用于当前激发的部分光子计数,且从时间区间2106以后的时间区间将不包含来自当前激发的光子计数。这将去除图21中的从时间区间2106以后的顶部块。
在一些实施例中,曝光计数器可除了激发计数器以外或代替激发计数器而使用。当饱和在时间区间2102中发生时,曝光计数器可记录当前激发中的曝光的数目,所述曝光存储于用于时间区间2102的寄存器中。虽然时序2104之前的时间区间可包含用于当前激发的全光子计数,但用于时间区间2106和以后的寄存器可计数光子直到当前激发中的曝光的数目,所述曝光在时间区间2102中的饱和之前成功地执行。因此,时间区间2106和以后可累积与在饱和之前在时间区间2102中捕获的当前激发的部分匹配的当前激发的一部分的光子计数。这一部分由在时间区间2106之后的时间区间中的每一个中的虚线表示。举例来说,如果更新的时间区间2104饱和,且在当前曝光中计数的光子的仅50%可表示于用于时间区间2104的直方图寄存器中,那么对于当前激发,来自时间区间2106和以后的后续直方图寄存器中的光子计数也可减少50%。
其它实施例可使用用于当饱和在激发期间发生时停止新光子计数的累积和存储的不同方法。可使用上述方法的任何组合。具体地说,每一时间区间可独立于测量中的其它时间区间而处置。举例来说,其中饱和发生的时间区间2102可紧接着停止累积,而在时间区间2004之前和在时间区间2106之后的时间区间可存储当前激发的全光子计数和/或部分光子计数,或可在饱和在时间区间2102中发生之后完全停用。这些不同方法可在任何时间区间中以任何组合使用且在各种实施例中不受限制。
因为当饱和发生时,新光子计数的累积和存储可停止,所以存储于直方图存储器中的直方图的整体形状可近似在无如图19中所描绘的饱和限制1902的情况下捕获的直方图的整体形状。因为保留整体形状,所以SNR并未像当光子计数的累积和存储并不如图20中所示出而停止时一样不利地受到影响。另外,保留直方图的形状使得匹配滤波器将更可能正确地识别对应于从光学测量***的光源发射的脉冲串的反射脉冲。
虽然整体形状可保留,但由直方图存储器捕获的脉冲的量值可显著小于在整个测量期间由光传感器接收到的脉冲的实际量值。然而,因为事件计数器2002记录在饱和之前发生的事件的数目,且因为用于测量的总事件的数目也可已知和/或记录在单独计数器中,所以存储于事件计数器2002中的值可用于缩放(或以其它方式归一化)直方图的形状,使得量值近似在无饱和限制1902的情况下接收、累积和存储的量值。
图22示出根据一些实施例的用于使用事件计数器来缩放饱和直方图存储器的过程。这一实例继续使用测量中的激发的数目作为存储于事件计数器2002中的值,即,如上文所描述的四次激发。激发的总数目可存储于单独计数器2210中或可另外是光学测量***内的已知值。举例来说,提供开始信号的控制过程可存储待在每一测量期间发送的开始信号的数目。事件的总数目可除以事件计数器2002中的值以产生用于在饱和之后缩放存储于直方图存储器中的直方图2202的乘数2214。在这一实例中,测量可包含计数器2210中的总共8次激发,和事件计数器2002中的4次激发的值,从而得到乘数2。
在一些实施例中,乘数2214可与直方图存储器中识别的峰值的值一起在芯片外传送。辅助处理器可接着通过乘数2214来缩放直方图2202中的值以获得直方图2202中的值的量值。图22说明直方图2202中的值可如何通过乘数2204缩放,从而得到直方图2204中所说明的值。处理器可包含比由芯片上直方图存储器使用的寄存器大得多的存储器寄存器,且可因此能够在通过乘数2214准确地缩放之后表示这些值而不饱和。应注意,在饱和和缩放之后直方图2204的形状与图19中的接收到的光子计数的形状相比较的相似性而不考虑饱和。一些实施例也可在芯片上执行缩放和归一化功能。
通过乘数2214恰当地缩放直方图存储器中的值也允许用于峰值检测的背景噪声水平和阈值的计算。在无乘数2214的情况下,直方图2202中记录的背景噪声可能不准确。然而,当通过乘数2214缩放时,背景噪声可较准确地被估计且用于设置用于检测当前测量中的峰值的阈值。
B.直方图饱和电路
图23示出根据一些实施例的具有饱和检测的直方图数据路径的电路图。图23在操作上类似于图8中示出的直方图数据路径,然而,图23的直方图数据路径包含用于检测数据路径饱和的各种计数器和组件。这些额外组件允许直方图数据路径检测沿着数据路径的饱和何时发生,响应于检测到饱和而使ALU 804和/或直方图存储器806停止累积/存储额外光子计数,且记录在当前测量期间发生的事件(例如,激发、曝光等)的数目直到饱和发生为止。
直方图数据路径可包含随着测量中的每一激发递增的激发计数器2304。当新测量开始时,激发计数器2304可复位。每当激发输入814触发新激发的开始时,激发计数器2304可递增。举例来说,激发输入1804可作为输入提供到激发计数器2304,且激发计数器2304可响应于激发输入814上的上升沿而使存储其中的值递增。一些实施例可包含激发计数器2304中的超过一个计数器。举例来说,激发计数器2304可包含计数激发直到饱和发生为止的第一激发计数器,以及计数测量中的激发的总数目而不管饱和的第二激发计数器。这允许每一光传感器提供用于接收到的激发输入的总数目的计数以及用于在饱和之前的激发的总数目的计数两者。
如上文所描述,任何事件可进行计数以确定饱和何时发生。除了激发计数器2304之外,一些实施例可包含随着直方图数据路径中的其它事件递增的额外计数器。举例来说,一些实施例可包含计数由当前测量中的光传感器捕获的曝光的数目的曝光计数器2306。时钟810可产生使得ALU 804聚集接收到的光子计数以及用于当前时间区间的寄存器中的当前值820的周期性信号560。这一周期性信号560也可提供到曝光计数器2306以使存储于曝光计数器2306中的值随着每一曝光递增。曝光计数器2306可以类似于激发计数器2304的设计实施,其中曝光计数器2306包含多个个别计数器。举例来说,第一曝光计数器可计数曝光的数目直到饱和发生为止,而第二曝光计数器可计数当前测量中的曝光的总数目。通过对两个值进行计数,曝光计数器2306还可以用于产生用于缩放直方图存储器中的最终值的乘数。
直方图数据路径还可包含饱和检测电路2306,其检测沿着直方图数据路径的饱和且提供使得ALU 804和/或直方图存储器806在饱和之后停止聚集新光子计数的输出信号。因为饱和可在直方图数据路径中的数个不同地方中发生,所以饱和检测电路2302可在不同实施例中使用不同实施方案。举例来说,如果当ALU 804溢出时,饱和发生,那么ALU可提供指示ALU 804的结果已超出其位宽度的进位输出。这一输出可发送到饱和检测电路2302且用作用于时钟810和/或激发计数器2304的启用信号。替代地,当饱和在直方图存储器806中发生时,存储器接口可将信号发送到饱和检测电路2302,所述信号可类似地用作用于时钟810和/或激发计数器2304的启用信号。一些实施例也可使用饱和检测电路2302中的比较器以确定直方图数据路径中的较高阶位何时具有非零值,从而指示当前聚集值可超过直方图存储器806的位宽度。饱和检测电路2302可锁存指示直方图数据路径的当前饱和状态的值(例如,当饱和已发生时,逻辑‘1’),且当直方图存储器被处理以用于峰值检测以指示饱和发生时,这一值可与事件计数器中的值一起发送。当接收到新测量信号812时,饱和检测电路2302可复位用于新测量的这一状态值。
响应于通过饱和检测电路2302进行的饱和检测,来自饱和检测电路2302的输出信号可使得用于这一单个光传感器的直方图数据路径停止聚集新光子计数。在一些实施例中,输出可用作用于时钟810的启用信号,所述时钟产生触发ALU 804和直方图存储器806的周期性信号560、808。如果饱和检测电路2302停用时钟810,那么这些周期性信号560、808可不再提供到ALU 804和直方图存储器806,这又可防止其聚集和存储用于其余测量的新光子计数。应注意,断开时钟810也使曝光计数器2306停止递增。类似地,在直方图数据路径中使用的任何其它事件计数器可选择性地通过饱和检测电路2302的输出来停用。
饱和检测电路2302可包含一个或多个延迟元件或计数器,所述延迟元件或计数器使得饱和检测电路2302在饱和发生时的时间与新光子计数的聚集和/或存储停止时的时间之间***延迟。如上文所描述,各种实施例可使得直方图数据路径继续正常运行直到当前激发结束为止,而其它实施例可使得直方图数据路径响应于饱和而紧接着关断。取决于实施例,饱和检测电路2302可在断开时钟810或以其它方式停用直方图数据路径之前等待直到接收到下一激发信号814为止。
X.积分寄存器饱和
如上文所描述,光学测量***可包含针对每一光传感器同时操作的多个并行数据路径。多个并行数据路径可包含直方图数据路径和积分数据路径两者。虽然这些数据路径在图23中未一起示出,但应理解,其可均连接到相同光传感器且同时并行操作。
积分数据路径可面临如上文关于直方图数据路径所描述的类似饱和问题。具体地说,积分数据路径可具有位宽限制,所述位宽限制可由于在积分间隔期间由光传感器接收到的高水平的环境光和/或反射光而饱和。虽然问题的根源相同,但用于检测和处置饱和的电路解决方案可包含与直方图数据路径的一些差异。
A.基于计数器的饱和缩放
如上文详细描述,积分数据路径可聚集在由直方图数据路径使用的可包含时间间隔中的全部或一些的“第二时间间隔”或激发内由光传感器接收到的光子计数。总光子计数可存储于一个或多个个别积分寄存器中,且总光子计数可用于估计背景噪声水平,设置峰值检测阈值,从检测到的峰值去除背景噪声,和/或产生周围环境的环境光图像。
图24说明根据一些实施例的在用于积分数据路径的测量期间接收到的光子计数2406的时间线。代替将光子计数细分到激发中,用于积分数据路径的光子计数可作为由积分数据路径中的ALU聚集的连续光子流而被接收。用于积分数据路径的时间间隔可重叠和/或涵盖由图24中的间隔2402表示的来自直方图数据路径的激发间隔。因此,光子计数可在激发在直方图数据路径中同时发生之前、期间、之间和/或之后持续由积分数据路径聚集。
因为积分数据路径持续聚集光子计数,所以一个或多个积分寄存器中表示的总光子计数可显著高于直方图数据路径中的直方图存储器的寄存器中表示的光子计数中的任一个。图25说明根据一些实施例的光子计数可如何在测量期间在一个或多个积分寄存器中持续聚集。在这一实例中,在图24中所说明的时间内接收到的增量光子计数持续添加到图25中的积分寄存器的值。每一竖直条表示随着在积分间隔期间推移由积分寄存器表示的聚集总光子计数。每一竖直条的暗部分表示在当前聚集操作期间从积分数据路径中的ALU添加的光子计数。
类似于上文对于直方图数据路径所描述的情形,积分数据路径可包含可由积分数据路径中的组件中的任一个强加的饱和限制2502。举例来说,积分数据路径中的ALU可包含用于任何输出结果的最大位宽度。虽然积分寄存器可典型地大于由直方图存储器(例如,64位)使用的寄存器,但积分寄存器可仍具有饱和限制,所述饱和限制界定可存储于积分寄存器中的最大光子计数。虽然未按比例绘制,但饱和限制2502说明光子计数到积分寄存器中的继续聚集如何可引起积分数据路径的某一部分中的饱和。当饱和在积分数据路径中发生时,积分寄存器可面临与直方图数据路径中所经历的问题类似的问题。举例来说,由积分寄存器表示的总光子计数可能不再准确,从而难以准确地估计背景噪声水平或产生用于所述特定像素的周围环境的环境图像。
图26示出根据一些实施例的当饱和发生时光子计数到积分寄存器中的聚集可如何停止。饱和检测电路还可实施于积分数据路径中,使得当饱和发生时,积分数据路径可停止将新值添加到积分寄存器且在其余积分间隔中实际上维持当前值。当饱和限制2502由积分数据路径中的一个或多个组件达到时,积分寄存器中的值可被保留。如上文关于直方图数据路径所描述,事件计数器可计数从积分间隔的开始发生的事件的数目直到饱和发生为止。在这一实例中,所计数的事件可包含曝光,其中积分ALU聚集来自光传感器的新光子计数且更新积分寄存器中的值。曝光2602的总数目可除以曝光计数2604以计算乘数2608,所述乘数可接着应用于存储于积分寄存器中的值以产生用于积分间隔的总光子计数2610。
虽然存储于积分寄存器中的总光子计数对于全积分间隔可由于饱和而不准确,但缩放的总光子计数可以是在积分间隔期间由光传感器接收到的光子的总数目的准确估计。因此,缩放的总光子计数可用于估计背景噪声水平,设置检测阈值,从检测到的峰值去除背景噪声,和/或产生如在下文详细描述的周围环境的环境图像。
B.积分饱和电路
图27说明根据一些实施例的具有饱和保护的积分数据路径。积分数据路径可包含一个或多个事件计数器,如随着由ALU 1006捕获的每一曝光递增的曝光计数器2704。曝光计数器可使用由在积分间隔期间持续操作的时钟1003产生的周期性信号1012来递增。这允许曝光计数器2704计数在积分间隔以积分信号1008开始的时间与饱和发生的时间之间的每一曝光。
积分数据路径还可包含饱和检测电路2702,其以与用于直方图数据路径的图23中的饱和检测电路2302类似的方式操作。举例来说,饱和检测电路2702可从ALU 1006接收进位或溢出指示。饱和检测电路2702也可从积分寄存器1004接收信号,所述信号指示待存储于积分寄存器1004中的值大于所允许的位宽度。饱和检测电路2702还可包含将积分数据路径中的各个点处的值与饱和限制进行比较的一个或多个比较器。饱和检测电路2702可使用这些输入中的任一个以产生到时钟1003的输出信号。这一信号(例如,逻辑‘0’)可充当用于时钟1003的停用信号且使得时钟1003停止产生周期性信号1012、1011。在周期性信号1012、1011停用后,ALU 1006和积分寄存器1004可停止聚集和存储用于其余积分间隔的新光子计数。另外,曝光计数器2704将停止递增且进而存储在饱和之前发生的曝光的数目。
XI.用于处置存储器饱和的方法
图28示出根据一些实施例的用于使用光学测量***来处置饱和的方法的流程图。在框2802处,方法可包含在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。第一时间间隔中的每一个可对应于如上文所描述的激发时间间隔,且第一时间间隔中的每一个可对应于传输的脉冲串中的一个。这些脉冲串可由光学测量***的光源传输且可各自包含一个或多个个别脉冲。
在框2804处,方法还可包含检测来自一个或多个脉冲串的光子和光子。也可检测到来自环境光的光子。脉冲串和环境光可使用光传感器上的多个光检测器检测到。光检测器可使用单光子雪崩二极管(SPAD)实施。当接收到光子时,光检测器可产生信号,且定限电路可产生正信号以指示接收到光子。ALU可在ALU时钟周期期间聚集这些正信号以在ALU时钟周期期间产生光子计数。
在框2806处,方法可另外包含使用来自一个或多个光检测器的光子计数填入数据路径中的多个第一寄存器。第一多个寄存器可包含如上文所描述的直方图数据路径的SRAM中的寄存器。第一时间间隔中的每一个可细分成用于直方图的多个第一时间区间。一个或多个第一时间间隔中的每一个中的对应时间区间可累积于第一多个寄存器中的单个寄存器中。第一时间间隔中的每一个可表示激发,且一个或多个第一时间间隔一起可表示用于光学测量***的测量。第一时间间隔中的每一个可由将表示直方图的存储器复位回到的直方图中的第一寄存器的开始信号或激发信号界定。光子计数可由数据路径中的算术逻辑电路聚集,如上文所描述的ALU。
在框2808处,方法可进一步包含确定饱和何时在数据路径中发生。饱和可通过从算术逻辑电路接收指示溢出或进位操作的信号来确定。饱和也可通过从第一多个寄存器接收待存储于第一多个寄存器中的值过大的指示来确定。饱和也可通过将数据路径中的任一点处的任何值与预定饱和限制进行比较来确定。
在框2810处,方法还可包含在一个或多个第一第一时间间隔中的在饱和发生之后发生的时间间隔中使得数据路径停止填入多个第一寄存器。数据路径可包含饱和检测电路,所述饱和检测电路产生用于时钟电路的停用信号,当停用时所述时钟电路使得算术逻辑电路和/或多个第一寄存器停止累积光子计数。方法可当检测到饱和时紧接着使得数据路径停止填入多个第一寄存器,或替代地可等待直到当前时间间隔结束(例如,当前激发结束)为止以停止填入寄存器。
在一些实施例中,方法可另外包含计数在使得数据路径停止填入多个第一寄存器之前发生的事件的数目。数据路径可包含事件计数器,如随着每一激发和/或曝光递增的激发计数器和/或曝光计数器。事件计数器中的值可接着在测量期间与事件的总数目一起使用以缩放如上文所描述的多个第一寄存器中的直方图。
XII.直方图中的多个峰值
本公开中的实例通常使用从光源传输和由光传感器检测到的单个峰值作为光测量如何可用于确定光学测量***与周围环境中的对象之间的距离的实例。然而,这些实例不意味限制。除了由从所关注对象反射出来的脉冲串引起的预期峰值之外,直方图存储器还可包含由脉冲串的更即时、非预期反射引起的其它峰值,以及根本未必由脉冲串产生的峰值。举例来说,额外峰值可对应于光源、反射或周围环境中的其它环境光现象。初始峰值可由从光学测量***的外壳出来或从LIDAR***前方的非预期、阻挡对象出来的脉冲串的反射产生。在这些情况下,代替仅检测单个峰值,光学测量***可检测可因此存在于直方图存储器中的多个峰值。这些峰值中的每一个可接着传送到处理器以用于进一步分析,以确定哪一峰值对应于预期反射脉冲串且哪些峰值由其它源或非预期对象产生。
A.排除直方图中的多个峰值的初始峰值
本文中所描述的实施例可使用各种方法以准确地检测直方图存储器中的多个峰值。这些方法可包含检测和掩蔽由从光学测量***的外壳反射出来的来自光源的光子引起的初始峰值。这可用于从上文所描述的饱和检测排除初始峰值且从从光学测量***外部的周围环境反射的光的分析排除初始峰值。在掩蔽初始峰值之后,后续峰值可以递归方式或迭代地由峰值检测电路检测到,所述峰值检测电路配置成识别直方图存储器中的最大峰值。在识别最大峰值后,其可被掩蔽以使得从峰值检测电路的任何后续执行排除所述最大峰值,进而允许利用每一执行来识别新峰值。
图29示出根据一些实施例的可识别和掩蔽的初始峰值2904。图29中的曲线图说明随着时间存储于直方图存储器的寄存器中的值。直方图中的每一竖直条对应于如上文详细描述的直方图存储器中的寄存器或时间区间。连续曲线已叠加在图29中的竖直条上方以出于清楚起见示出直方图的大体形状,但应理解,图29中的连续曲线无需实际上作为单独值由直方图数据路径存储。另外,图29仅说明直方图存储器的初始部分。直方图存储器的后续内容可从图29中的曲线图的右侧继续。
如图29中所说明,直方图存储器的初始部分可包含由来自光学测量***上的光源的光子的发射产生的初始峰值2904。如上文所描述,用于光学测量***的光源可发射从周围环境反射和由光传感器接收到的光子。当初始地发射光子时,那些光子的至少一部分可在从光学测量***的外壳反射之后紧接着由光传感器检测到而不从光学测量***外部的周围环境反射出来。在一些情况下,初始峰值也可由阻挡光子通过周围环境的正常发射、反射和接收的紧靠着光传感器的对象引起。举例来说,塑料袋或其它对象可无意中变为附接到光学测量***,使得由光源发射的光的大部分紧接着反射回到光传感器上。这些情形中的每一个可产生在激发开始时检测到且存储于直方图存储器的初始部分中的初始峰值2906。然而,这一初始对象并非最终检测到的所要对象。
因为这一早期反射(例如,来自外壳或覆盖对象)的接近度,所以初始峰值2904的强度可极大。如上文所描述,一些实施例可检测饱和在直方图存储器中的任何时间区间中何时发生。在一个时间区间中检测到饱和可使得直方图数据路径在后续激发中的其它时间区间期间停止填入用于所述光传感器的直方图存储器。因为初始脉冲2904可极大,所以接收直方图存储器的初始部分中的初始脉冲可使得直方图数据路径在测量中稍早饱和。这一饱和可在测量中足够早发生以使得相对少的激发被接收到以用于检测来自周围环境的反射光子。
为防止初始脉冲2904使得直方图数据路径饱和,一些实施例可从饱和检测和/或峰值检测排除初始脉冲2904。因为初始峰值2904可在直方图存储器的初始部分中可预测地发生,所以可从饱和检测排除初始时间区间。举例来说,可使用掩码间隔2906从饱和检测排除预定数目的时间区间。如果饱和在掩码间隔2906期间在直方图数据路径中发生,那么直方图数据路径可忽略饱和且允许光传感器继续将光子计数收集和累积在直方图存储器中。
简要地转回到图23,在已经过预定数目的时钟周期之后,饱和检测电路2302可从时钟810接收输入。来自时钟810的信号可用作用于饱和检测电路2302的启用信号,使得其在每一激发的初始部分期间并不检测饱和。一些实施例可替代地使用饱和检测电路2302中的内部计数器,其由激发信号814复位和开始。内部计数器的输出可馈送到比较器中,所述比较器在每一激发的初始部分期间将内部计数器值与预定数目的时钟周期进行比较。当已经过预定数目的时钟周期时,饱和检测电路2302可由比较器的输出启用。
由掩码间隔2906排除的时钟周期的数目可基于每一时间区间的长度和与光学测量***的预定距离而设置。举例来说,一些实施例可排除在光学测量***的2英尺内反射的初始脉冲。掩码间隔2906中的寄存器的数目可通过将光子在2英尺范围内来回行进所花费的时间除以由每一时间区间表示的时间来确定。取决于光学测量***如何安装和安装在何处,其它实施例可使用除2英尺以外的不同范围。举例来说,其它实施例可使用如1英尺、2英尺、3英尺、5英尺等等范围。一些实施例也可允许在操作期间基于各种因素而动态地设置/调整由掩码间隔2906表示的范围,所述因素如携载光学测量***的车辆行进的速度、天气条件、交通条件和/或可引起大初始峰值2904的任何其它因素。
B.检测多个峰值
除了如上文所描述从饱和检测排除之外,当检测到在直方图存储器的后续时间区间中接收到的额外峰值时,也可排除初始峰值2904。实际上,大初始峰值2904可继之以表示从周围环境中的对象反射的光子的多个峰值。初始峰值之后的多个峰值可用于确定光学测量***与反射对象之间的距离。因此,为避免干扰这些距离测量的准确度,一些实施例可包含能够排除如初始峰值2904的先前检测到的峰值的峰值检测电路。
1.先前峰值的递归掩蔽
图30示出根据一些实施例的在直方图存储器中表示的多个峰值。直方图存储器可包含超出直方图数据路径的饱和限制2902的上文所描述的初始峰值2904。另外,直方图存储器可包含表示由从周围环境中的对象出来的反射引起的光子计数的多个后续峰值3002、3004、3006、3008。为准确地计算距离,峰值检测电路可循环通过直方图存储器的寄存器以识别每一峰值,同时排除先前检测到的峰值被识别超过一次。
如上文所描述,原始直方图数据可在被分析以检测峰值之前经历一个或多个滤波操作。一些实施例可使用原始直方图数据上的低通滤波器以消除任何瞬态信号,使数据平滑,和/或扩展任何反射峰值的宽度。一些实施例也可使用对应于由光学测量***的光源发射的脉冲串的匹配滤波器。匹配滤波器可改变由直方图存储器存储的数据的形状以产生可比原始数据中的信号更容易识别的峰值。匹配滤波器还可以用于区分反射脉冲瞬变和/或由光传感器接收到的环境背景光。
用于检测多个脉冲和掩蔽初始脉冲的本文中所描述的实施例可与直方图存储器中的任何类型的数据一起使用。举例来说,这些实施例可与未滤波数据一起使用以检测原始数据中的峰值。这些实施例还可与滤波数据一起使用,所述滤波数据如已经历低通滤波操作的数据和已使用匹配滤波器进行滤波的数据。滤波器可在峰值已由峰值检测电路检测到之前以及之后应用于数据而不影响其操作。识别为峰值的直方图存储器的部分也可以滤波和/或未滤波格式发送到处理器。
一些实施例可使用递归掩蔽的方法以排除初始峰值2904和先前由峰值检测电路所识别的任何峰值。峰值检测电路可配置成循环通过直方图存储器中的寄存器且识别最大值。举例来说,峰值检测电路可连续地穿过直方图存储器中的每一寄存器以检测存储于寄存器中的最大值。因为存储于每一直方图寄存器中的值表示在光学测量的激发中的每一个期间累积的光子计数,所以这一最大值可表示在任何单个时间区间期间接收到的光子的最大数目。
在已识别最大值后,最大值周围的直方图存储器的一部分可识别为峰值。一些实施例可识别可指定为峰值的最大值附近的预定数目的时间区间。举例来说,预定数目的时间区间,如5个时间区间、9个时间区间、15个时间区间、17个时间区间等等可识别最大值且围绕最大值定中心以表示整个峰值。一些实施例可识别具有在最大值的百分比内的值的周围时间区间。这可引起可用于取决于峰值的宽度而表示峰值的可变数目个时间区间。举例来说,当其值在最大值的25%内时,最大值周围的时间区间可包含于峰值中。当掩蔽稍后迭代中的所识别峰值以识别其它峰值时,可使用峰值的宽度。
在图30中,如峰值3004的窄峰值可包含最大值周围的6个时间区间,而如峰值3002的较宽峰值可包含最大值周围的12个时间区间。一些实施例也可排除其中所得峰值将过窄的最大值。举例来说,将引起仅三个时间区间宽的峰值的最大值可被视为瞬态峰值而非反射峰值。这些相对窄峰值可由峰值检测电路排除,这是由于其不大可能由从周围环境中的所述特定距离处的对象反射的光子产生。使用这些方法中的任一种,峰值检测电路可识别时间区间的数目以表示峰值,且这些时间区间中的值可发送到处理器以计算与反射对象的距离。
通过峰值检测电路进行的每一操作或执行可检测直方图存储器中的最大值。在无修改的情况下,峰值检测电路的每一执行将可能识别相同最大值且返回相同峰值。因此,一些实施例可使用掩蔽电路,其耦合到峰值检测电路以在峰值检测电路进行通过直方图存储器的多个遍历时检测多个峰值。掩蔽电路可使用由峰值检测电路先前检测的峰值以使得峰值检测电路从后续执行周期排除这些峰值。这允许峰值检测电路的每一执行识别并不视为先前迭代中的最大峰值的新峰值。
在图30中,初始峰值2904可以是已知峰值或先前检测到的峰值。因此,掩蔽电路可将掩码提供到峰值检测电路以排除掩码间隔2906中的时间区间。举例来说,掩蔽电路可将值提供到峰值检测电路,所述峰值检测电路识别直方图存储器中的前12个(或其它数目)时间区间作为应从峰值检测电路的执行排除的时间区间。当峰值检测电路执行时,可从当前执行周期排除掩码间隔2906中识别的任何最大值。举例来说,峰值检测电路可跳过掩码间隔2906中的时间区间。代替跳过掩码间隔2906中的时间区间,峰值检测电路可替代地忽略识别为掩码间隔2906内的最大值的任何值。对于初始峰值2904,掩码间隔2906可在峰值检测电路的第一执行期间由峰值检测电路使用,使得初始峰值2904并不识别为对应于从周围环境中的对象反射的光子的峰值。
当从峰值检测电路的执行排除初始峰值2904时,可识别直方图存储器中的下一最大峰值。在图30实例中,峰值3004可在峰值检测电路的第一执行期间识别为峰值。峰值3004可包含大于直方图存储器中的任何其它剩余值的最大值。峰值检测电路可继续循环通过寄存器直到直方图存储器结束为止,接着确定直方图存储器中的最大值对应于峰值3004。峰值检测电路可接着确定由最大值引起的峰值,所述峰值包含例如周围这一最大值的9个时间区间以便界定峰值3004。这些时间区间的指示可接着传送到存储所识别峰值的寄存器的集合和/或传送到掩蔽电路以使得可从峰值检测电路的后续执行排除峰值3004。
图31示出根据一些实施例的对于峰值检测电路的后续执行被掩蔽的先前检测到的脉冲。在峰值检测电路(其使用掩码2906)的第一执行期间识别峰值3004之后,掩蔽电路可产生识别与峰值3004相关联的时间区间的掩码间隔3102。除了来自与初始峰值2904相关联的掩码间隔2906的时间区间之外,可提供这些时间区间。在峰值检测电路的第二执行期间,可排除考虑掩码间隔2906和掩码间隔3102中识别的最大值。替代地,掩码间隔2906或掩码间隔3102中的任何时间区间无需检查其值以考虑作为最大值且可由峰值检测电路跳过。
在峰值检测电路的第二执行期间,可识别下一最大剩余峰值。在图31的实例中,峰值3008可借助于具有直方图存储器中剩余的最大有效最大值来识别。如上文所描述,峰值3008周围的时间区间可由峰值检测电路识别且存储于寄存器的集合中和/或传送到掩蔽电路以使得在峰值检测电路的后续执行期间排除考虑与峰值3008相关联的时间区间。
图32说明根据一些实施例的在额外峰值由峰值检测电路识别出时掩蔽电路可如何持续产生新掩码。在检测到峰值3008之后,掩蔽电路可产生识别与峰值3008相关联的时间区间的掩码间隔3202。掩蔽电路可将掩码间隔3202传送到峰值检测电路,使得从峰值检测电路的后续执行排除那些时间区间。举例来说,在峰值检测电路的第三执行期间,可从搜索最大值排除与掩码间隔2906、掩码间隔3102和掩码间隔3202相关联的时间区间。随着在峰值检测电路的后续执行期间识别更多峰值,需要由峰值检测电路考虑的时间区间的数目减小。这可提高峰值检测电路的后续执行可循环通过直方图存储器的速度,且可减少用于检测测量中的多个峰值的总体时间。
图30到32说明峰值检测电路如何可作为递归过程来执行,其中来自先前执行的结果用于影响每一后续执行。上文所描述的掩蔽过程允许执行峰值检测电路任何次数,且因此任何数目的峰值可在直方图存储器中被检测到。一些实施例可在每一测量中检测到预定义数目的峰值。举例来说,对于配置成在每一测量中找到三个峰值的***,峰值检测电路可执行三次,其中每一执行由于先前检测到的峰值被掩蔽而检测新峰值。在图32中,在检测峰值3004和峰值3008之后,峰值检测电路可第三次执行以检测峰值3006。识别用于当前测量的三个峰值后,峰值检测电路可完成用于当前测量的其执行周期。
一些实施例无需识别预定数目的峰值,但可实际上识别满足阈值的峰值的数目。大体上,“阈值”可包含上文所描述的预定数目的峰值。另外,“阈值”可包含满足某些准则的可变数目的峰值。一些实施例可识别具有超过阈值的最大值的任何峰值。一些实施例可识别具有在最大峰值的最大值的阈值百分比内的最大值的任何峰值。举例来说,在识别最大峰值后,可识别额外峰值,其具有在最大峰值的最大值的50%内的最大值。一些实施例可识别在预定时间间隔中从第一检测到的峰值识别的预定数目的峰值。举例来说,峰值检测电路可识别第一峰值,接着识别在第一峰值之后的50个时间区间内发生的峰值。在这些情况中的任一个中,在满足用于识别脉冲的阈值后,峰值检测电路可结束用于当前测量的其执行。
2.先前峰值的定限
上文所描述的实例使用掩码间隔以排除通过峰值检测电路的后续执行考虑时间区间。然而,一些实施例可使用替代方法以排除考虑先前所识别的峰值。举例来说,代替识别待排除的特定时间区间,掩蔽电路可调整用于由峰值检测电路检测到的峰值的最大阈值。使用阈值可提供仅单个值需要在掩蔽电路与用于后续执行的峰值检测电路之间存储和/或更新的优点。
返回参考图30,可借助于阈值3010而非掩码间隔2906(或除了所述掩码间隔之外)来排除初始峰值2904。阈值3010可设置为处于或低于饱和限制1902。峰值检测电路可接着排除具有满足或超过阈值3010的最大值的任何峰值。举例来说,当分析初始峰值2904时,峰值检测电路可确定用于初始峰值2904的时间区间中的至少一个满足饱和限制1902。峰值动作电路可接着识别满足或超过阈值3010的任何时间区间周围的时间区间且在当前峰值执行周期期间消除考虑那些时间区间。满足或超过阈值3010的时间区间周围的时间区间可使用上文关于确定掩码间隔2906所描述的方法中的任一种来识别。
在将阈值3010设置为处于或接近饱和限制1902之后,峰值检测电路的第一执行可使用上文所描述的最大值方法来识别峰值3004。具体地说,峰值3004中的时间区间可包含直方图存储器中的最大值,且周围时间区间可被识别以界定用于处理器和掩蔽电路两者的峰值3004。
再次参看图31,阈值3110可设置成排除初始峰值2904和峰值3004两者。举例来说,阈值3110可设置为处于或低于在峰值3004中找到的最大值。如上文所描述,当遇到超出阈值3010的最大值时,峰值检测电路可排除最大值和最大值周围的任何时间区间两者。因为由峰值检测电路识别的每一后续峰值将在量值上必定小于先前所识别的峰值中的任一个,所以阈值3110可持续向下移动以排除其识别出的峰值。峰值3008可由峰值检测电路识别为并不满足或超过阈值3110的最大值。峰值3008周围的时间区间可接着被识别以用于处理器和掩蔽电路。
阈值3210可设置成排除最近识别的峰值3008。阈值3210也可排除峰值3004和初始峰值2904,这是因为其也在先前被识别且因此在量值上大于峰值3008。这一过程可迭代地继续直到已识别阈值数目的峰值为止。如上文关于递归掩蔽所描述,这一阈值可指示符合预定义准则的峰值的数目,和/或任何其它类型的阈值。
XIII.峰值检测电路
图33示出根据一些实施例的用于检测直方图存储器中的多个峰值的电路。这一电路类似于图8和图10中的上文所描述的直方图数据路径。这一电路可包含峰值检测电路3306,其可与直方图存储器806的存储器接口通信。峰值检测电路3306可如上文所描述操作以循环通过直方图存储器806中的寄存器中的每一个以识别最大值和表示时间区间的周围寄存器以界定每一峰值。峰值检测电路3306可包含用以识别直方图存储器806中的作为最大值的值的一个或多个比较器、指定应排除考虑的掩码和/或阈值的一个或多个寄存器以及请求来自直方图存储器806的信息的寻址单元。
电路还可包含存储由峰值检测电路3306识别的峰值的多个寄存器3304。峰值可存储为具有从直方图存储器806读取的相关联值的一连串时间区间。举例来说,来自直方图存储器806的值可复制到多个寄存器3304中以表示直方图存储器中的所识别峰值。多个寄存器3304也可将峰值表示为直方图存储器806中的地址或存储器方位。当将所识别峰值发送到处理器以用于距离计算时,寄存器3304可从直方图存储器806读取值且将读取值从直方图存储器806发送到处理器。除了存储用于每一时间区间的值之外和/或参考直方图存储器806中的时间区间,寄存器3304也可存储指示用于所识别峰值中的每一个的时间方位的相对时间信息。举例来说,寄存器3304可存储相对时间区间数目(例如时间区间45),其可用于估计从激发开始以来的时间区间的时间。例如,当使用内插滤波器时,还可存储时间区间的部分。多个寄存器3304也可在本文中称为“多个第二寄存器”以区分其与直方图存储器中的“多个第一寄存器”。
多个寄存器3304可将所存储的峰值传送到处理器3308。处理器可对应于图2中的测距***控制器250。在一些实施例中,处理器3308可以是芯片外处理器。举例来说,处理器3308可实施于与峰值检测电路3306实施于其上的集成电路芯片物理上分离且不同的集成电路芯片中。处理器3308可接收用于每一测量的多个寄存器3304中的所存储峰值中的每一个且可执行距离和/或时序计算以确定光学测量***与周围环境中的反射对象之间的距离。作为实例,处理器3308可将内插滤波器应用于所存储峰值的直方图部分(或滤波部分)。在一些实施例中,寄存器3304可将数据的未滤波版本发送到处理器3308。举例来说,处理器3308可从尚未进行低通滤波或匹配滤波的直方图存储器806接收原始数据。在其它实施例中,滤波数据可实际上传送到处理器3308。
掩蔽电路3302可使用多个寄存器3304中的所存储峰值以使得峰值检测电路3306排除已从峰值检测电路3306的后续执行检测到的峰值。在一些实施例中,掩蔽电路3302可发送可从峰值检测电路3306的执行排除的时间区间的范围,包括直方图存储器806中的地址的范围。在一些实施例中,掩蔽电路3302可发送阈值,使得可从峰值检测电路3306的执行排除超过阈值的峰值。在一些实施例中,掩蔽电路3302可与峰值检测电路3306整合,使得掩码和/或阈值内部地存储在峰值检测电路3306中。在其它实施例中,掩蔽电路3302和峰值检测电路3306可将其功能性分离到集成电路上的不同区域中。
这一电路可任选地包含滤波器3310,其用于将一个或多个滤波器应用于存储于直方图存储器806中的数据值。这些滤波器可包含使过渡信号平滑、提高信噪比(SNR)、增加任何峰值的宽度等等的低通滤波器。这些滤波器还可包含配置成识别从光源发射的脉冲串模式的匹配滤波器。任何滤波器3310可在峰值检测电路3306的操作之前、之后或期间应用。举例来说,峰值检测电路3306可对如从ALU 804接收到的原始直方图数据进行操作。在一些实施例中,在已应用滤波器3310中的一个或多个之后,峰值检测电路3306可对直方图存储器中的寄存器进行操作。一些实施例可允许峰值检测电路3306处理滤波数据,且接着将对应于滤波峰值的未滤波数据传送到芯片外处理器3308。
XIV.用于多峰值检测的方法
用于迭代地或以递归方式检测直方图存储器中的多个峰值的方法可包含顶部层级过程,其包含传输脉冲串、接收反射信号和环境光信号、将光子计数累积在直方图存储器中和识别直方图中的峰值。这些方法还可包含下部层级过程,其包含多次执行峰值检测电路以递增地检测直方图存储器中的峰值。这一部分将首先描述用于多次执行峰值检测电路的下部层级过程。这一部分将接着描述用于使用下部层级过程完成测量的顶部层级过程。
图34说明根据一些实施例的用于检测测量中的多个峰值的方法的流程图。这一方法可由上文所描述的峰值检测电路执行。
在框3402处,方法可通过循环通过直方图存储器以识别最大峰值来开始。举例来说,峰值检测电路可连续地将地址或地址范围发送到直方图存储器以检索存储于直方图存储器中的值。从直方图存储器检索的每一值可与所存储最大值进行比较以定位直方图存储器中的总体最大值。使用上述方法,峰值检测电路可接着界定直方图存储器中的最大值周围的峰值,其可包含直方图存储器中的具有最大值的时间区间周围的多个时间区间。
在框3406处,方法可任选地确定在峰值检测电路的当前执行中检测到的峰值以及在峰值检测电路的先前执行中检测到的峰值是否满足或超过阈值。如上文所描述,这一阈值可包含满足预定义准则的预定义数目的峰值和/或可变数目的峰值,如落入预定时间间隔中的峰值、在最大峰值的最大值的阈值百分比内的峰值等等。如果并不执行定限,那么方法可继续框3410。在一些实施方案中,代替定限,框3406可确定峰值的数目是否已达到最大。
在框3408处,如果检测到的峰值满足或超过阈值,那么方法可继续和将所存储的峰值发送到处理器以用于距离和/或时序计算。
在框3410处,如果检测到的峰值的数目仍不满足或超过阈值,那么方法可通过与从峰值检测电路的先前执行检测到的任何峰值一起存储来自峰值检测电路的当前执行的最大峰值来继续。
在框3412处,方法可包含产生掩码和/或阈值以从峰值检测电路的后续执行排除所存储峰值中的每一个。如上文所描述,掩码和/或阈值可使得峰值检测电路忽略落入属于先前所识别峰值的时间区间的范围内的最大值。掩码和/或阈值也可使得峰值检测电路忽略满足或超过阈值的最大值。方法可接着在框3402处继续且再次循环通过直方图存储器以识别先前所识别最大峰值以外的另一最大峰值。
图35示出根据一些实施例的用于使用光学测量***来检测多个峰值的方法。在框3502处,方法可包含在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。第一时间间隔中的每一个可对应于如上文所描述的激发时间间隔,且第一时间间隔中的每一个可对应于传输的脉冲串中的一个。这些脉冲串可由光学测量***的光源传输且可各自包含一个或多个个别脉冲。
在框3504处,方法还可包含检测来自一个或多个脉冲串的光子和光子。也可检测到来自环境光的光子。脉冲串和环境光可使用光传感器上的多个光检测器检测到。光检测器可使用单光子雪崩二极管(SPAD)实施。当接收到光子时,光检测器可产生信号,且定限电路可产生正信号以指示接收到光子。ALU可在ALU时钟周期期间聚集这些正信号以在ALU时钟周期期间产生光子计数。
在框3506处,方法可另外包含将来自光检测器的光子计数累积到寄存器中以表示多个第一寄存器中的光子计数的直方图。多个第一寄存器可包含如上文所描述的直方图数据路径的SRAM中的寄存器。第一时间间隔中的每一个可细分成用于直方图的多个第一时间区间。一个或多个第一时间间隔中的每一个中的对应时间区间可累积于第一多个寄存器中的单个寄存器中。第一时间间隔中的每一个可表示激发,且一个或多个第一时间间隔一起可表示用于光学测量***的测量。第一时间间隔中的每一个可由将表示直方图的存储器复位回到的直方图中的第一寄存器的开始信号或激发信号界定。光子计数可由数据路径中的算术逻辑电路聚集,如上文所描述的ALU。
在框3508处,方法可进一步包含通过峰值检测电路的多个执行来识别由第一多个寄存器表示的直方图中的多个峰值。峰值检测电路的每一执行可识别直方图中的最大峰值。如上文所描述,峰值检测电路可穿过直方图存储器中的时间区间以识别最大值,且接着识别表示具有最大值的峰值的多个时间区间。另外,可将在峰值检测电路的先前执行期间识别为最大峰值的峰值从在峰值检测电路的后续执行期间识别为最大峰值排除。这些先前所识别的峰值可使用如上文详细描述的时间区间掩码和/或阈值来排除。
XV.利用积分寄存器计算阈值
以上实施例中的一些描述用于以递归方式或迭代地检测测量中的一个或多个峰值的***和方法。这些递归或迭代方法可在没有关于测量在其中进行的周围环境的额外信息的情况下适用于识别峰值。具体地说,不需要关于环境光水平、背景噪声、反射光强度等等的信息。实际上,这些方法使用上文所描述的迭代或递归电路以连续地识别测量中的最大剩余未识别峰值直到已满足准则为止,如识别测量中的预定数目的峰值。
代替使用迭代或递归方法,一些实施例可实际上使用从周围环境测量的信息来计算阈值。举例来说,可使用上文所描述的一个或多个积分寄存器从周围环境测量背景噪声水平。因为积分寄存器表示在测量期间接收到的总光子计数,所以这一总光子计数可除以在其期间启用积分寄存器以计算背景噪声水平的总时间,所述背景噪声水平表示从周围环境接收到的处于或接近LIDAR光源的波长的环境光光子。一些实施例可任选地从背景噪声水平的计算去除由光学测量***所发射的一个或多个脉冲串引起的任何反射光峰值。这一背景噪声水平可接着用于计算用于检测测量中的峰值的阈值,在所述测量中导出阈值。
数种技术优点可通过计算用于检测测量中的峰值的阈值来实现。举例来说,阈值允许每一测量基于在所述测量期间存在的背景噪声水平而设置测量特定的阈值。其也允许单个阈值用于检测测量中的多个峰值,且因此仅需要计算阈值一次。此外,单个阈值允许峰值检测电路进行通过直方图存储器的单次遍历。进行通过直方图存储器的多次遍历需要用于每一遍历的额外时间和功率。代替需要用于每一所识别峰值的通过直方图存储器的遍历,这些方法允许仅利用单次遍历来识别多个峰值,进而减少识别多个峰值所需要的时间和功率。
用于识别多个峰值的阈值可使用数种不同技术来计算。举例来说,可通过光学测量***获得或计算背景噪声水平的估计。背景噪声水平的这一估计可接着用于设置如下文更详细描述的阈值。估计背景噪声水平也可使用数种不同技术来实现。一些实施例可使用在测量中的激发之间接收到的光的统计取样以估计背景噪声水平。其它实施例可利用上文所描述的积分寄存器。
A.估计背景噪声
图36示出根据一些实施例的由多个激发引起的在光学测量***处检测到的光的曲线图。在这一实例中,激发中的每一个可接收至少第一峰值3606和第二峰值3608。应注意,额外峰值可随着时间继续超出曲线图的右侧而被接收到,这在图26中未明确示出。第一峰值3606和/或第二峰值3608可由来自先前从光学测量***的光源发射的一个或多个脉冲串的光子产生。在一些环境中,第一峰值3606和/或第二峰值3608也可由周围环境中的其它反射或光源产生。
如上文所描述,一些实施例可在识别直方图中的峰值之前将各种滤波器应用于直方图存储器的内容。举例来说,低通滤波器可应用于直方图数据。一些实施例可另外或替代地将匹配滤波器应用于直方图数据。用于利用阈值识别多个峰值的这些实施例可用于滤波和未滤波数据两者上。因此,图36中的曲线图可互换地被视为滤波或未滤波直方图数据而无限制。
曲线图的竖直轴线可表示由光传感器阵列中的一个光传感器接收到的光子计数。水平轴线可表示时间。这些光子可已在多个激发内被接收到以存储信号直方图存储器的数字化表示。因此,图36中的竖直条中的每一个可表示直方图存储器中的单个时间区间。应注意,存储于图36中示出的直方图存储器中的时间区间中的每一个中的值也可在测量的过程中聚集在一个或多个积分寄存器中。代替示出积分寄存器的值,应理解,积分寄存器可如上文所描述操作以包含曲线图的竖直条中的每一个中的光子计数,以及在测量中的激发之前、之间和/或之后发生的任何光子计数。
如上文所描述,一些实施例可包含单个积分寄存器,而其它实施例可包含多个积分寄存器。积分寄存器配置与用于估计背景噪声水平和产生峰值检测阈值的这些方法相容。因此,本说明书可使用术语“积分寄存器”来指单个积分寄存器且指提供测量内的光子计数的聚集总和的多个积分寄存器。
第一峰值3606可与包含如上文所描述的多个时间区间的第一窗口3602相关联。第二峰值3608也可以相同方式与第二窗口3604相关联。第一窗口3602和第二窗口3604中的时间区间可因此分别与第一峰值3606和第二峰值3608相关联。第一窗口3602和第二窗口3604以外的剩余时间区间可称作背景时间区间3610。背景时间区间3610可表示在那些时间区间中的每一个期间接收到的背景噪声,这是由于其不与作为测量的部分的反射脉冲串或其它强光源或反射相关联。
背景噪声水平可通过背景时间区间3610中的值来确定。举例来说,可使用直方图数据的标准差分析来估计背景噪声水平。这一分析可去除在第一窗口3602和第二窗口3604中发生的异常值时间区间和使在背景时间区间3610中找到的值平均以计算背景噪声水平。替代地,可从第一窗口3602和第二窗口3604以外的背景时间区间3610的直方图值获得样本作为背景噪声的估计。
代替仅依赖于直方图存储器的内容,一些实施例可另外或替代地使用积分寄存器的总光子计数以计算背景噪声水平。存储于积分寄存器中的总值可提供估计测量中的背景噪声水平的更准确和计算上便宜的方法。因为积分寄存器存储在已知时间间隔中由光传感器接收到的所有光子的总体总和,这一值可除以总时间间隔,在所述总时间间隔期间积分操作发生以估计背景噪声。举例来说,用于对积分ALU和/或积分寄存器进行计时的周期性信号的时钟周期的数目可与积分寄存器中的总光子计数一起跟踪。总光子计数可接着除以时钟周期的数目以计算背景噪声水平。
当计算背景噪声水平时,一些实施例也可补偿由积分寄存器记录的任何峰值3606、3608。应注意,图36并不相对于时间按比例绘制。实际返回脉冲大体上仅构成在积分寄存器中记录的总体积分值的小部分。因此,与由于整个测量中的背景噪声接收到的光子的总数目相比较,由于返回脉冲而接收到的光子可被视为可忽略的。与总体积分时间相比较,峰值中的光子影响背景噪声水平的估计的程度可取决于窗口3602、3604的大小。如果窗口3602、3604的大小与总体积分时间相比较是小的(例如,小于5%),那么其对背景噪声估计的影响可被视为可忽略的,且总信号光子计数可用于估计背景噪声水平。
然而,如果窗口3602、3604的大小构成超过总积分时间的可忽略部分(例如,超过10%),那么额外步骤可进行以较准确地估计背景噪声水平。举例来说,可从积分寄存器中的值减去在窗口3602、3604期间接收到的光子。可从积分寄存器中的值减去直方图寄存器中的在窗口3602、3604中的时间区间期间的光子计数。另外,可从总体积分时间减去窗口3602、3604的长度。用于积分寄存器中的总光子计数的所修改值可接着除以所修改积分时间以更好地估计背景噪声值。这可允许光学测量***降低当计算背景噪声水平时多个强峰值将以其它方式造成的影响。
图37说明根据一些实施例的与直方图存储器中的接收到的光子计数相比较的所估计背景噪声水平3610。使用上文所描述的过程中的任一个,可针对测量来计算背景噪声水平3712。任选地,可通过如以上部分中所描述减去在第一窗口3602和/或第二窗口3604期间接收到的光子计数而从估计程序去除在第一间隔3602和/或第二间隔3604期间接收到的光子计数。这可引起极接近于存储于背景时间区间3610中的背景噪声水平的实际平均值的所估计背景噪声水平3712。
所估计背景噪声水平3712可由光学测量***使用以用于数种不同信号处理程序。在一些实施例中,可在对其进行分析以用于距离测量之前从峰值3606、3608中的每一个减去所估计背景噪声水平3712。举例来说,可从直方图寄存器中的落入与所识别峰值相关联的时间窗内的每一时间区间减去所估计背景噪声水平,如第一窗口3602和第二窗口3604中的时间区间。减去背景噪声水平可减少与所识别峰值相关联的时间区间中的每一个中的光子计数,这可提供用于峰值的更准确量值测量。
一些实施例可在集成电路芯片中实施直方图数据路径和积分数据路径,所述集成电路芯片可检测直方图存储器中的峰值且将描述那些峰值的信息传送到单独处理器以用于距离计算、数据可视化和其它数据分析操作。一些实施方案可传送关于峰值3606、3608的信号强度的信息,且除了其时间方位之外可使用这些峰值的强度(即,量值)。在从集成电路传送峰值数据之前,所估计背景噪声水平3712可用作信号底层(signal floor)且从峰值3606、3608被减去。这可通过在分析那些峰值3606、3608的形状和/或高度之前去除背景噪声水平来提供脉冲量值的更准确特性。
B.设置检测阈值
图38示出根据一些实施例的其中所估计背景噪声可用于设置用于检测直方图存储器中的峰值的信号阈值的曲线图。在估计背景噪声水平3712之后,所述估计可用作用于设置用于检测直方图存储器中的峰值的阈值3802的基线,所述峰值如峰值3606和/或峰值3608。通过使用背景噪声水平3712作为基线,阈值可设置成使得在背景时间区间3610中识别的任何背景噪声可通过将阈值设置为高于背景噪声水平3712的距离来被排除为峰值。
一些实施例可以所估计背景噪声水平3712开始且添加预定百分比的背景噪声水平3712以计算所要阈值。背景噪声水平3712可增加的预定百分比可以是10%、20%、30%、40%、50%、75%、100%、125%、150%等等。举例来说,图38说明通过使背景噪声水平3712增加大致125%来设置的阈值3802。这允许根据背景噪声水平3712的量值来缩放用于每一测量的阈值。在具有更多背景噪声的环境中,阈值3802可按比例增加以在有噪声环境中提供更大容限。
代替使背景噪声水平3712增加某一百分比,一些实施例也可将预定值添加到背景噪声水平3712以产生阈值3802。举例来说,图38中的阈值3802可通过将预定光子计数添加到背景噪声水平3712来设置。这可提供高于背景噪声水平3712的恒定容限,其相对于各种背景噪声水平恒定。
代替使用如上文所描述的平均背景噪声水平的估计,一些实施例可找到背景时间区间3610中的最大值且基于所述最大值而产生阈值。举例来说,最大值可识别于背景时间区间3610中,且阈值可使用上文所描述的方法中的任一种基于最大值而非平均值或均值来设置。这可产生高于基于平均值或均值的阈值3802的阈值3804。较高阈值3804可确保所计算的容限3808在测量中排除所有背景时间区间3610。
XVI.单次遍历峰值检测
在已确定用于测量的阈值后,所述阈值可由峰值检测电路使用以进行通过直方图存储器的单次遍历以识别测量中的任何峰值。上文所描述的迭代和/或递归方法通过产生阈值来递增地识别峰值,且因此可需要通过直方图存储器的多次遍历以识别多个峰值。相比之下,预先计算阈值的这些实施例可使用通过直方图存储器的单次遍历来识别多个峰值。
A.检测峰值
再次参看图38,所描绘阈值中的任一个可用于识别峰值。为识别一个或多个峰值,峰值检测电路可进行通过直方图存储器的遍历。如本文中所使用,术语“遍历”可指连续地存取直方图存储器中的存储器方位且对照阈值来评估存储于存储器方位中的光子计数的操作或操作的集合。举例来说,通过直方图存储器的遍历可包含将地址或地址范围提供到直方图存储器,从那些所寻址方位检索光子计数,和/或将那些光子计数与一个或多个阈值进行比较。
在图38的实例中,由曲线图中的竖直条表示的时间区间中的每一个可表示直方图存储器中的方位。如上文所描述,这些方位可称作存储在多个激发内接收到的光子计数的直方图的“多个第一寄存器”。由曲线图中的竖直条描绘的这些存储器方位的值可在直方图存储器中顺序地被存取且与阈值进行比较,所述阈值如阈值3804。当存储器方位包含超出阈值3804的值时,所述存储器方位可识别为属于峰值。举例来说,峰值3606中的九个中间存储器方位(或其它数目)可识别为属于峰值,这是因为存储于那些存储器方位中的每一个中的光子计数超过阈值3804。
在直方图存储器中的一个或多个存储器方位已识别为属于峰值后,可使用上文详细描述的技术来确定那些存储器方位周围的峰值窗口。举例来说,在峰值3606的中心存储器方位识别为超过阈值3804后,第一窗口3602可由上文所描述的各种方法确定。这些方法可包含指定峰值周围的预定数目的时间区间作为第一窗口3602的部分,指定超过较低阈值的周围时间区间作为第一窗口3602的部分,等等。
B.芯片外传送峰值
上文所描述的峰值检测方法可在包含直方图存储器、峰值检测电路和阈值检测电路的集成电路上执行。这一集成电路可实施于与处理器分离且不同的单芯片封装中,所述处理器分析检测到的峰值以用于距离计算、图像产生、图像处理等等。因此,一些实施例可检测直方图存储器中的峰值,指定包含那些峰值的时间区间窗,且将描述那些峰值的信息从集成电路传送到单独处理器。
图39示出根据一些实施例的由可芯片外传送到处理器的阈值操作检测到的峰值窗口。在这一实例中,可从其余直方图存储器提取包含来自图38的检测到的峰值的第一窗口3602和第二窗口3604。回想一下,相较于表示直方图存储器中的激发和/或测量的总体时间,包含峰值的时间窗可相对小。因此,芯片上峰值检测极大地减小可需要从集成电路流式传输到处理器的存储器的量。
一些实施例可从直方图存储器读取已识别为属于峰值的值且将那些值传送到芯片外处理器。举例来说,表示属于峰值3606的时间区间的光子计数的一连串数字可发送到处理器。另外,一些实施例可发送标识符,所述标识符提供用于检测到的峰值的开始/结束的相对时序信息。举例来说,时间区间数目、存储器方位地址或其它标识符可用于指定在测量中所识别峰值在何处开始/结束。
如上文所描述,取决于实施例,直方图存储器中的表示所识别峰值的数据值可以滤波和/或未滤波格式来芯片外传送到处理器。举例来说,表示从光传感器接收到的光子计数的原始直方图值可发送到处理器。如果需要,那么在集成电路上发生的任何滤波可接着由处理器复制。这允许处理器使用未滤波数据,同时如果任何操作需要滤波数据,那么仍允许处理器单独对未滤波数据进行滤波器。一些实施例可替代或另外地发送数据,所述数据已使用上文所描述的滤波选项中的任一个进行滤波,所述滤波选项包含低通滤波器、匹配滤波器等等。
XVII.阈值和峰值检测电路
图40示出根据一些实施例的用于计算阈值和检测直方图存储器中的一个或多个峰值的电路。这一实例示出直方图数据路径和积分数据路径可如何在相同集成电路中组合。直方图数据路径可包含图8中所描绘的电路元件中的任一个,包含直方图存储器806、时钟810、激发信号814、测量信号812、周期性信号560、808等等。直方图数据路径可包含图10中所描绘的电路元件中的任一个,包含积分寄存器1004、时钟1003、周期性信号1011、积分信号1008等等。积分寄存器1004还可包含如图12中所描绘的多个个别寄存器。在这一实施例中,积分数据路径和直方图数据路径可共享ALU 804。举例来说,ALU 804的第一级可聚集来自光检测器的正信号816,且ALU 804的一个或多个第二级可将这一值添加到直方图存储器806中的时间区间的当前值820且添加到积分寄存器1004中的当前值1010。积分信号1008可独立于测量信号812和/或激发信号814而定时。
当测量完成时,阈值检测电路4002可使用上文所描述的各种方法以计算用于峰值检测的一个或多个阈值。举例来说,阈值检测电路4002可从积分寄存器1004接收或聚集总光子计数以估计背景噪声水平。替代地,阈值检测电路4002可对其它统计方法采样或使用其它统计方法以从直方图存储器806的来自并不对应于反射峰值的背景时间区间的内容导出背景噪声水平。阈值检测电路4002可缩放背景噪声水平或将值添加到背景噪声水平以产生一个或多个阈值。
阈值检测电路4002可将一个或多个所计算阈值传送到峰值检测电路4004。峰值检测电路可使用由阈值检测电路4002计算的一个或多个阈值来进行通过直方图存储器806的遍历以识别直方图中的一个或多个峰值。一些实施例可仅使用通过直方图存储器806的单次遍历以识别多个峰值。峰值检测电路4002可接着使用上述方法来识别所识别峰值周围的窗口或间隔。
直方图数据路径的元件、积分数据路径的元件、阈值检测电路4002和峰值检测电路4004可实施于第一集成电路4020中。举例来说,第一集成电路4020可包含在与光学测量***中的其它集成电路芯片物理上分离且不同的半导体材料的单元中实施的这些个别电路中的每一个。
在一些实施例中,峰值检测电路4004可将表示峰值的间隔传送到芯片外处理器4008。芯片外处理器4008可对应于图2中的测距***控制器250。芯片外处理器4008可实施于第二集成电路4022中。第二集成电路4022可与第一集成电路4020物理上分离且不同。举例来说,第一集成电路4020与第二集成电路4022之间的通信可包含经由印刷电路板上的迹线在集成电路4020、4022的引脚或衬垫之间传输信号。
在一些实施例中,峰值检测电路4004可在表示峰值的间隔由峰值检测电路4004检测到时将所述表示峰值的间隔传送到芯片外处理器4008。其它实施例可存储所识别峰值中的每一个且在其均已被检测到后将峰值一起传输到芯片外处理器4008。举例来说,寄存器4006的第二集合可在所识别峰值由峰值检测电路4004识别时存储表示所述所识别峰值的信息。寄存器4006的第二集合可存储直方图存储器806中的地址范围、来自直方图存储器806的值、来自直方图存储器806的时间区间数等等。寄存器4006的第二集合可在大小上显著小于直方图存储器806。虽然直方图存储器806可存储光子计数的直方图的全部内容,但寄存器4006的第二集合可仅需要存储表示直方图中的有限数目的峰值的信息(或参考信息)。因此,因为存储于寄存器4006的第二集合中的信息显著小于存储于直方图存储器806中的信息,所以在第一集成电路4020与第二集成电路4022之间传送这一信息所需的带宽和存储器可通过这些实施例极大地减少。
虽然描绘为图40中的单独电路元件,但阈值检测电路4002、峰值检测电路4004和/或寄存器4006的第二集合可不受限制地以任何组合实施。举例来说,阈值检测电路4002可以是峰值检测电路4004的集成部分而无两个电路之间的任何功能分离。替代地,阈值检测电路4002和峰值检测电路4004可在数据路径中功能上分离。
XVIII.用于阈值峰值检测的方法
图41示出根据一些实施例的用于使用光学测量***来检测多个峰值的方法。
在框4102处,方法可包含在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分。第一时间间隔中的每一个可对应于如上文所描述的激发时间间隔,且第一时间间隔中的每一个可对应于传输的脉冲串中的一个。这些脉冲串可由光学测量***的光源传输且可各自包含一个或多个个别脉冲。
在框4104处,方法还可包含检测来自一个或多个脉冲串的光子和光子。也可检测到来自环境光的光子。脉冲串和环境光可使用光传感器上的多个光检测器检测到。光检测器可使用单光子雪崩二极管(SPAD)实施。当接收到光子时,光检测器可产生信号,且定限电路可产生正信号以指示接收到光子。ALU可在ALU时钟周期期间聚集这些正信号以在ALU时钟周期期间产生光子计数。
在框4106处,方法可另外包含将来自光检测器的光子计数累积到寄存器中以表示多个第一寄存器中的光子计数的直方图。多个第一寄存器可包含如上文所描述的直方图数据路径的SRAM中的寄存器。第一时间间隔中的每一个可细分成用于直方图的多个第一时间区间。一个或多个第一时间间隔中的每一个中的对应时间区间可累积于第一多个寄存器中的单个寄存器中。第一时间间隔中的每一个可表示激发,且一个或多个第一时间间隔一起可表示用于光学测量***的测量。第一时间间隔中的每一个可由将表示直方图的存储器复位回到的直方图中的第一寄存器的开始信号或激发信号界定。光子计数可由数据路径中的算术逻辑电路聚集,如上文所描述的ALU。可在第一集成电路上执行累积来自光检测器的光子计数。多个第一寄存器也可驻留在第一集成电路上。
在框4108处,方法可进一步包含提供阈值以用于识别直方图中的一个或多个峰值。在一些实施例中,阈值可包含在当前测量期间并不需要任何计算的默认阈值。举例来说,阈值可从先前测量重新使用或可基于由先前测量中所使用的阈值而计算。阈值也可以是所使用的阈值,除非计算特定针对当前测量的阈值。
在一些实施例中,背景噪声水平可被确定且用于计算阈值。背景噪声水平可使用积分寄存器来确定,所述积分寄存器累积存在于与测量重叠的时间间隔中的总光子计数。举例来说,总光子计数可除以在其期间启用积分寄存器的时间。多个积分寄存器可被使用和聚集以计算总光子计数。可稍后从任何所识别峰值去除背景噪声水平。另外,背景噪声水平可用于产生阈值。举例来说,可计算阈值以使得其是高于背景噪声水平的值或所述值的的预定百分比。可使用上文所描述的方法中的任一种进行这些操作,所述方法包含由图40的峰值检测电路4004和阈值检测电路4002执行的方法。阈值可由具有多个第一寄存器的第一集成电路上实施的电路提供。积分寄存器也可实施于第一集成电路上。
在框4110处,方法可另外包含通过以阈值遍历通过第一多个寄存器来识别直方图中表示的一个或多个峰值。如上文所描述,通过第一多个寄存器的遍历可包含从直方图存储器连续地检索值且将其与阈值进行比较的操作或操作的集合。识别所述峰值可包含识别超过阈值的值,以及识别超过阈值的值周围的时间窗或时间间隔。时间窗可包含直方图存储器的时间区间中的多个值和所述间隔何时在直方图存储器中出现的指示。一些实施例可将一个或多个峰值存储在寄存器的单独集合中,如寄存器4006的第二集合中,且可将一个或多个峰值以滤波和/或未滤波格式传送到芯片外处理器。峰值可识别于第一集成电路上。
在框4112处,方法可进一步包含将描述使用阈值检测到的一个或多个峰值的信息发送到第二集成电路上的处理器。如上文在图40中所描绘,处理器可包含实施于单独集成电路上的芯片外处理器。第一集成电路可与第二集成电路物理上分离且不同。处理器可配置成识别由从周围环境中的所关注对象反射的脉冲串引起的一个或多个峰值中的峰值。处理器还可配置成执行距离计算,产生图像,和/或对描述从第一集成电路发送的一个或多个峰值的信息执行其它处理功能。描述一个或多个峰值的信息可包含来自表示在直方图的时间区间中接收到的光子计数的多个第一寄存器的值。信息还可包含指示何时相对于由光学测量***进行的测量接收到光子计数的时序信息。
XIX.额外实施例
虽然本文公开的一些实施例关注于在用于汽车使用情况的3D感测的情境内应用光测距,但在不脱离本公开的范围的情况下可在任何应用中使用本文公开的***。举例来说,***可具有小或甚至微型的形状因数,其实现若干额外使用情况,例如用于固态光测距***。举例来说,***可用于如移动电话、平板PC、膝上型计算机、桌面PC的装置内或其它***装置和/或用户接口装置内的3D相机和/或深度传感器。举例来说,可在移动装置内采用一个或多个实施例以支持面部辨识和面部跟踪能力、眼部跟踪能力和/或用于对象的3D扫描。其它使用情况包含面向前的深度相机以用于移动装置中的扩增和虚拟现实应用。
其它应用包含在如飞机、直升飞机、无人机和类似物的机载车辆上部署一个或多个***。此类实例可提供3D感测和深度成像以帮助导航(自主或以其它方式)和/或产生3D地图以用于稍后分析,例如支持地球物理、建筑和/或考古学的分析。
***还可安装到如建筑物、墙、线杆、桥、脚手架和类似物的固定对象和结构。在此类情况下,***可用于监视室外区域,如制造设施、装配线、工业设施、建筑工地、挖掘场地、道路、铁路、桥梁等。此外,***可安装在室内且用以监视个人和或对象在建筑物内的移动,如在仓库内的库存的移动或人、行李或货物在办公楼、机场、火车站等内的移动。如得益于本公开的所属领域的一般技术人员将理解,光测距***的许多不同应用是可能的,且因此,本文提供的实例是仅出于说明性目的提供,且不应解释为将此类***的使用仅限于显式地公开的实例。
XX.计算机***
本文提到的计算机***或电路中的任一个可利用任何合适数目个子***。子***可经由***总线75连接。作为实例,子***可包含输入/输出(I/O)装置、***存储器、存储装置和可用于连接计算机***其它装置(例如,引擎控制单元)的网络适配器(例如以太网、Wi-Fi等)。***存储器和/或存储装置可体现计算机可读媒体。
计算机***可包含多个相同组件或子***,所述组件或子***例如通过外部接口、通过内部接口或经由可装卸式存储装置连接在一起,所述可装卸式存储装置可从一个组件连接和去除到另一组件。在一些实施例中,计算机***、子***或设备可经由网络通信。
实施例的方面可使用硬件电路(例如,专用集成电路或现场可编程门阵列)和/或以模块化或集成方式使用具有大体上可编程处理器的计算机软件以控制逻辑的形式实施。如本文所使用,处理器可包含单核处理器、同一集成芯片上的多核处理器或单个电路板上或联网的多个处理单元,以及专用硬件。基于本公开和本文中所提供的教示,所属领域的一般技术人员将知道且理解使用硬件和硬件与软件的组合来实施本发明的实施例的其它方式和/或方法。
本申请案中描述的任何软件组件或功能可实施为使用例如Java、C、C++、C#、Objective-C、Swift的任何合适的计算机语言或如Perl或Python的脚本语言使用例如常规或面向对象的技术的由处理器执行的软件代码。软件代码可存储为计算机可读媒体上用于存储和/或传输的一连串指令或命令。合适的非暂时性计算机可读媒体可包含随机存取存储器(RAM)、只读存储器(ROM)、如硬盘驱动器或软盘的磁性媒体或如光盘(CD)或数字通用光盘(DVD)的光学媒体、快闪存储器和类似物。计算机可读媒体可以是此类存储或发射装置的任何组合。
此类程序也可使用载波信号来编码和传输,所述载波信号适合于经由包括因特网的符合多种协议的有线、光学和/或无线网络来传输。因此,计算机可读媒体可使用以此类程序编码的数据信号产生。以程序代码编码的计算机可读媒体可与兼容装置一起封装或与其它装置分开地提供(例如,经由因特网下载)。任何此类计算机可读媒体可存在于单个计算机产品(例如硬盘驱动器、CD或整个计算机***)上或内部,且可存在于***或网络内的不同计算机产品上或内部。计算机***可包含监视器、打印机,或用于向用户提供本文所提及的任何结果的其它合适的显示器。
本文所描述的任何方法可完全或部分地用计算机***执行,所述计算机***包含可配置成执行所述步骤的一个或多个处理器。因此,实施例可涉及配置成执行本文所述的任何方法的步骤的计算机***,所述计算机***可能具有执行相应步骤或相应步骤群组的不同组件。虽然呈现为编号的步骤,但本文的方法的步骤可同时或在不同时间或以不同次序执行。另外,这些步骤的部分可与其它方法的其它步骤的部分一起使用。而且,步骤的全部或部分可以是任选的。另外,任何方法的步骤中的任一个可利用用于执行这些步骤的***的模块、单元、电路或其它构件来执行。
在不偏离本发明的实施例的精神和范围的情况下,特定实施例的特定细节可以任何合适方式组合。然而,本发明的其它实施例可针对与每一个别方面或这些个别方面的特定组合相关的特定实施例。
已经出于说明和描述的目的呈现了对本发明的实例实施例的以上描述。不旨在是详尽的,或将本发明局限为所描述的精确形式,根据上文的教示,许多修改和变形是可能的。
除非明确指示有相反的意思,否则叙述“一(a/an)”或“所述”旨在表示“一个或多个”。除非明确指示为相反情况,否则“或”的使用旨在表示“包含性的或”,而不是“排除性的或”。对“第一”组件的引用不一定要求提供第二组件。此外,除非明确指出,否则提到“第一”或“第二”组件并不将提到的组件局限在特定方位。术语“基于”旨在表示“至少部分地基于”。
本文所提及的所有专利、专利申请案、公开案和描述都出于所有目的以全文引用的方式并入。并非承认它们是现有技术。
Claims (80)
1.一种光学测量***,包括:
光源,所述光源被配置为在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中所述一个或多个第一时间间隔中的每一个第一时间间隔包括所述一个或多个脉冲串中的一个脉冲串;
光传感器,所述光传感器包括一个或多个光检测器,所述一个或多个光检测器被配置为检测来自所述一个或多个脉冲串的光子和来自环境光的光子;
多个第一寄存器,所述多个第一寄存器累积在所述一个或多个第一时间间隔期间接收到的来自所述一个或多个光检测器的光子计数,其中所述一个或多个第一时间间隔中的每一个第一时间间隔被细分成多个第一时间区间,并且所述多个第一寄存器中的每一个第一寄存器累积在所述一个或多个第一时间间隔中的每一个第一时间间隔中的所述多个第一时间区间中的对应的一个第一时间区间期间接收到的光子计数,以表示在所述一个或多个第一时间间隔期间接收到的光子计数的直方图;以及
多个第二寄存器,所述多个第二寄存器累积在与所述一个或多个第一时间间隔的至少部分重叠的第二时间间隔中来自所述一个或多个光检测器的所述光子计数,其中所述第二时间间隔被细分成多个第二时间区间,并且所述多个第二寄存器中的每一个第二寄存器累积在所述多个第二时间区间中的对应的一个第二时间区间期间接收到的光子计数。
2.根据权利要求1所述的光学测量***,进一步包括算术逻辑电路,所述算术逻辑电路聚集所述多个第二寄存器中的每一个第二寄存器中的光子计数以产生在所述第二时间间隔期间接收到的总光子计数。
3.根据权利要求1所述的光学测量***,其中所述一个或多个第一时间间隔中的每一个第一时间间隔由第一开始信号限定。
4.根据权利要求3所述的光学测量***,其中所述第二时间间隔由独立于所述第一开始信号的第二开始信号限定。
5.根据权利要求1所述的光学测量***,其中所述一个或多个光检测器包括一个或多个单光子雪崩二极管(SPAD)。
6.根据权利要求1所述的光学测量***,其中所述一个或多个第一时间间隔中的每一个第一时间间隔被包括在所述第二时间间隔中。
7.根据权利要求1所述的光学测量***,进一步包括选择信号,所述选择信号选择所述多个第二寄存器中的哪个第二寄存器在所述多个第二时间区间中的每一个第二时间区间期间累积光子计数。
8.根据权利要求7所述的光学测量***,其中所述选择信号由计时器产生。
9.根据权利要求7所述的光学测量***,其中所述选择信号在与所述多个第二寄存器相同的集成电路上产生。
10.根据权利要求7所述的光学测量***,其中所述选择信号不在与所述多个第二寄存器相同的集成电路上产生。
11.根据权利要求7所述的光学测量***,其中所述选择信号基于所述光传感器在围绕中心轴线时的角度位置而产生。
12.一种使用光学测量***的方法,所述方法包括:
在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中所述一个或多个第一时间间隔中的每一个第一时间间隔包括所述一个或多个脉冲串中的一个脉冲串;
检测来自所述一个或多个脉冲串的光子和来自环境光的光子;
将在所述一个或多个第一时间间隔期间接收到的来自一个或多个光检测器的光子计数累积到多个第一寄存器中,其中所述一个或多个第一时间间隔中的每一个第一时间间隔被细分成多个第一时间区间,并且所述多个第一寄存器中的每一个第一寄存器累积在所述一个或多个第一时间间隔中的每一个第一时间间隔中的所述多个第一时间区间中的对应的一个第一时间区间期间接收到的光子计数,以表示在所述一个或多个第一时间间隔期间接收到的光子计数的直方图;以及
将在与所述一个或多个第一时间间隔的至少部分重叠的第二时间间隔中的光子计数累积到多个第二寄存器中,其中所述第二时间间隔被细分成多个第二时间区间,并且所述多个第二寄存器中的每一个第二寄存器累积在所述多个第二时间区间中的对应的一个第二时间区间期间接收到的光子计数。
13.根据权利要求12所述的方法,进一步包括:
聚集所述多个第二寄存器中的每一个第二寄存器中的光子计数以产生在所述第二时间间隔期间接收到的总光子计数;以及
使用所述总光子计数估计在所述第二时间间隔期间由所述光学测量***检测到的背景噪声。
14.根据权利要求13所述的方法,其中估计所述背景噪声包括:
将所述总光子计数除以所述第二时间间隔的长度。
15.根据权利要求13所述的方法,其中估计所述背景噪声包括:
识别所述多个第一时间区间中的一个或多个时间区间,在所述一个或多个时间区间期间估计由所述一个或多个脉冲串引起的已被所述光学测量***接收到的反射光子;以及
从所述总光子计数排除在所述一个或多个时间区间中接收到的光子计数。
16.根据权利要求13所述的方法,其中从所述多个第一寄存器中去除所述背景噪声。
17.根据权利要求12所述的方法,其中所述第二时间间隔包括所述一个或多个第一时间间隔以外的时间间隔。
18.根据权利要求12所述的方法,其中在所述一个或多个第一时间间隔期间接收到的所述多个第一寄存器中的光子计数的所述直方图表示由所述光学测量***进行的单个光学测量。
19.根据权利要求12所述的方法,进一步包括使用在所述第二时间间隔中存储在所述多个第二寄存器中的所述光子计数以产生周围环境的环境图像。
20.根据权利要求12所述的方法,其中在所述第二时间间隔中存储在所述多个第二寄存器中的所述光子计数包括来自所述一个或多个脉冲串的所述光子和来自所述环境光的所述光子。
21.一种光学测量***,其包括:
光源,所述光源被配置为在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中所述一个或多个第一时间间隔中的每一个第一时间间隔包括所述一个或多个脉冲串中的一个脉冲串;
光传感器,所述光传感器包括一个或多个光检测器,所述一个或多个光检测器被配置为检测来自所述一个或多个脉冲串的光子;
数据路径,所述数据路径包括算术逻辑电路和多个第一寄存器,其中所述数据路径被配置为使用由所述算术逻辑电路聚集的来自所述一个或多个脉冲串的光子计数填入所述多个第一寄存器,使得所述多个第一寄存器表示在所述一个或多个第一时间间隔期间接收到的光子计数的直方图;以及
饱和检测电路,所述饱和检测电路确定饱和何时在所述数据路径中发生并且在所述一个或多个时间第一间隔中的在所述饱和发生之后发生的时间间隔中使得所述数据路径停止填入所述多个第一寄存器。
22.根据权利要求21所述的光学测量***,其中所述数据路径进一步包括计数器,所述计数器计数在所述饱和检测电路使得所述数据路径停止填入所述多个第一寄存器之前发生的所述一个或多个第一时间间隔的数目。
23.根据权利要求22所述的光学测量***,其中所述计数器通过信号递增,所述信号也使得所述一个或多个第一时间间隔开始。
24.根据权利要求21所述的光学测量***,其中所述数据路径进一步包括计数器,所述计数器计数在所述饱和检测电路使得所述数据路径停止填入所述多个第一寄存器之前所述算术逻辑电路更新所述多个第一寄存器的次数。
25.根据权利要求21所述的光学测量***,其中所述饱和检测电路从所述算术逻辑电路接收指示所述算术逻辑电路已饱和的信号。
26.根据权利要求21所述的光学测量***,其中所述饱和检测电路接收指示来自所述算术逻辑电路的结果大于待存储于所述多个第一寄存器中的一个第一寄存器中的最大数目的信号。
27.根据权利要求21所述的光学测量***,其中所述饱和检测电路通过停用使得所述算术逻辑电路聚集光子计数的周期性信号来使得所述数据路径停止填入所述多个第一寄存器。
28.根据权利要求21所述的光学测量***,其中所述饱和检测电路通过停用使得所述多个第一寄存器存储更新的光子计数的周期性信号来使得所述数据路径停止填入所述多个第一寄存器。
29.根据权利要求21所述的光学测量***,进一步包括第二数据路径,所述第二数据路径包括第二算术逻辑电路和一个或多个积分寄存器,其中所述第二数据路径被配置为在包括至少所述一个或多个第一时间间隔的第二时间间隔中将来自所述一个或多个光检测器的所述光子计数聚集到所述一个或多个积分寄存器中。
30.根据权利要求29所述的光学测量***,其中所述第二数据路径包括第二饱和检测电路,所述第二饱和检测电路确定在所述第二数据路径中何时发生饱和并且在所述饱和发生之后的所述第二时间间隔期间使得所述第二数据路径停止将来自所述一个或多个光检测器的所述光子计数聚集到所述一个或多个积分寄存器中。
31.一种使用光学测量***的方法,所述方法包括:
在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中所述一个或多个第一时间间隔中的每一个第一时间间隔包括所述一个或多个脉冲串中的一个脉冲串;
使用一个或多个光检测器检测来自所述一个或多个脉冲串的光子;
使用来自所述一个或多个光检测器的光子计数填入数据路径中的多个第一寄存器,其中所述光子计数由所述数据路径中的算术逻辑电路聚集,使得所述多个第一寄存器表示在所述一个或多个第一时间间隔期间接收到的光子计数的直方图;
确定在所述数据路径中何时发生饱和;以及
在所述饱和发生之后发生的所述一个或多个第一时间间隔中的时间间隔中使得所述数据路径停止填入所述多个第一寄存器。
32.根据权利要求31所述的方法,进一步包括计数在使得所述数据路径停止填入所述多个第一寄存器之前发生的事件的数目。
33.根据权利要求32所述的方法,进一步包括使用以下来计算乘数:
在使得所述数据路径停止填入所述多个第一寄存器之前发生的事件的数目;以及
在所述一个或多个第一时间间隔期间发生的事件的总数目。
34.根据权利要求33所述的方法,进一步包括使用所述乘数来缩放所述多个第一寄存器中的光子计数的所述直方图。
35.根据权利要求34所述的方法,进一步包括在缩放光子计数的所述直方图之后定位所述多个第一寄存器中的光子计数的所述直方图中的峰值。
36.根据权利要求31所述的方法,进一步包括:
使用来自所述一个或多个光检测器的光子计数填入第二数据路径中的一个或多个积分寄存器,其中所述光子计数由所述第二数据路径中的第二算术逻辑电路聚集,使得所述一个或多个积分寄存器表示在包括至少所述一个或多个第一时间间隔的第二时间间隔中接收到的总光子计数;
确定在所述第二数据路径中何时发生饱和;以及
在所述饱和发生之后使得所述第二数据路径停止填入所述一个或多个积分寄存器。
37.根据权利要求36所述的方法,进一步包括:
计数在使得所述第二数据路径停止填入所述一个或多个积分寄存器之前发生的事件的数目;以及
使用在使得所述第二数据路径停止填入所述一个或多个积分寄存器之前发生的事件的数目来缩放所述一个或多个积分寄存器中的所述总光子计数。
38.根据权利要求37所述的方法,进一步包括在缩放所述总光子计数之后计算环境背景噪声水平。
39.根据权利要求38所述的方法,进一步包括使用所述环境背景噪声水平来设置用于检测所述光学测量中的峰值的阈值。
40.根据权利要求38所述的方法,进一步包括从所述多个第一寄存器中的光子计数的所述直方图中去除所述环境背景噪声水平。
41.一种光学测量***,包括:
光源,所述光源被配置为在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中所述一个或多个第一时间间隔中的每一个第一时间间隔包含所述一个或多个脉冲串中的一个脉冲串;
光传感器,所述光传感器包括一个或多个光检测器,所述一个或多个光检测器被配置为检测来自所述一个或多个脉冲串的光子;
多个第一寄存器,所述多个第一寄存器累积在所述一个或多个第一时间间隔期间接收到的来自所述一个或多个光检测器的光子计数,以表示在所述一个或多个第一时间间隔期间接收到的光子计数的直方图,所述多个第一寄存器中的每一个第一寄存器对应于所述直方图中的时间区间;
峰值检测电路,所述峰值检测电路被配置为每次所述峰值检测电路执行时识别所述多个第一寄存器中的所述直方图的至少部分中的最大峰值;以及
掩蔽电路,所述掩蔽电路被配置为使得所述峰值检测电路排除对应于在所述峰值检测电路的先前执行期间识别为最大峰值的峰值的寄存器在所述峰值检测电路的后续执行期间被识别为最大峰值,使得所述峰值检测电路的多个执行识别多个峰值。
42.根据权利要求41所述的光学测量***,进一步包括多个第二寄存器,所述多个第二寄存器被配置为存储由所述峰值检测电路识别的所述多个峰值。
43.根据权利要求42所述的光学测量***,其中所述多个峰值中的每一个峰值被存储为表示所述峰值周围的所述直方图中的时间间隔的一连串时间区间。
44.根据权利要求42所述的光学测量***,其中所述多个峰值中的每一个峰值与在所述直方图中所述峰值出现处的相对时间一起被存储。
45.根据权利要求41所述的光学测量***,其中所述光学测量***被配置为将由所述峰值检测电路识别的所述多个峰值发送到处理器,其中所述处理器在集成电路芯片上操作,所述集成电路芯片不同于所述峰值检测电路在其上操作的集成电路芯片。
46.根据权利要求45所述的光学测量***,其中所述多个峰值被发送到所述处理器而不将滤波器应用于表示所述多个峰值的值。
47.根据权利要求41所述的光学测量***,其中所述峰值检测电路的每一执行被配置为循环通过所述多个第一寄存器并且识别所述多个第一寄存器中的尚未由所述掩蔽电路排除的最大值。
48.根据权利要求47所述的光学测量***,其中最大峰值包括所述多个第一寄存器的子集,所述多个第一寄存器的子集围绕存储所述最大值的所述多个第一寄存器中的一个第一寄存器。
49.根据权利要求41所述的光学测量***,其中所述峰值检测电路被配置为循环通过所述多个第一寄存器至少三次以识别所述直方图中的至少三个最大峰值。
50.根据权利要求41所述的光学测量***,其中所述一个或多个光检测器包括一个或多个单光子雪崩二极管(SPAD)。
51.一种使用光学测量***的方法,所述方法包括:
在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中所述一个或多个第一时间间隔中的每一个第一时间间隔包含所述一个或多个脉冲串中的一个脉冲串;
使用一个或多个光检测器检测来自所述一个或多个脉冲串的光子;
将来自所述一个或多个光检测器的光子计数累积到多个第一寄存器中以表示在所述一个或多个第一时间间隔期间接收到的光子计数的直方图,所述多个第一寄存器中的每一个第一寄存器对应于所述直方图中的时间区间;
通过峰值检测电路的多个执行来识别所述多个第一寄存器中的所述直方图中的多个峰值,其中所述峰值检测电路的每一执行识别所述直方图的至少部分中的最大峰值,并且
其中排除对应于在所述峰值检测电路的先前执行期间被识别为最大峰值的峰值的寄存器在所述峰值检测电路的后续执行期间被识别为最大峰值。
52.根据权利要求51所述的方法,进一步包括在识别所述最大峰值之前将低通滤波器应用于存储于所述多个第一寄存器中的所述直方图。
53.根据权利要求51所述的方法,进一步包括在识别所述最大峰值之前将匹配滤波器应用于存储于所述多个第一寄存器中的所述直方图,其中所述匹配滤波器对应于所述一个或多个脉冲串。
54.根据权利要求51所述的方法,其中通过以下操作来排除在所述峰值检测电路的先前执行期间被识别为最大峰值的所述峰值在所述峰值检测电路的后续执行期间被识别为最大峰值:
在后续执行期间掩蔽所述多个第一寄存器中的表示先前由所述峰值检测电路识别为最大峰值的所述峰值的寄存器。
55.根据权利要求51所述的方法,其中通过以下操作来排除在所述峰值检测电路的先前执行期间被识别为最大峰值的所述峰值在所述峰值检测电路的后续执行期间被识别为最大峰值:
将阈值设置为处于或低于来自先前被识别为最大峰值的所述峰值的最大值;以及
在所述峰值检测电路的后续执行期间排除满足或超过所述阈值的峰值。
56.根据权利要求55所述的方法,其中在所述峰值检测电路的后续执行期间排除满足或超过所述阈值的峰值包括:
识别所述多个第一寄存器中的具有满足或超出所述阈值的值的寄存器;以及
排除所述多个第一寄存器中的所述寄存器周围的寄存器。
57.根据权利要求51所述的方法,进一步包括从所述峰值检测电路的执行排除所述直方图中的初始峰值。
58.根据权利要求57所述的方法,其中所述初始峰值由从所述光学测量***的外壳出来的所述一个或多个脉冲串的反射产生。
59.根据权利要求57所述的方法,其中所述初始峰值满足或超出用于饱和检测电路的饱和阈值。
60.根据权利要求59所述的方法,进一步包括从所述饱和检测电路掩蔽所述初始峰值。
61.一种光学测量***,包括:
光源,所述光源被配置为在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中所述一个或多个第一时间间隔中的每一个第一时间间隔包含所述一个或多个脉冲串中的一个脉冲串;
光传感器,所述光传感器包括一个或多个光检测器,所述一个或多个光检测器被配置为检测来自所述一个或多个脉冲串的光子;
第一集成电路,所述第一集成电路包括:
多个第一寄存器,所述多个第一寄存器累积在所述一个或多个第一时间间隔期间接收到的来自所述一个或多个光检测器的光子计数,以表示在所述一个或多个第一时间间隔期间接收到的光子计数的直方图,所述多个第一寄存器中的每一个第一寄存器对应于所述直方图中的时间区间;
阈值检测电路,所述阈值检测电路被配置为提供阈值以用于识别所述直方图中的一个或多个峰值;以及
峰值检测电路,所述峰值检测电路被配置为遍历通过所述多个第一寄存器并且使用所述阈值来识别所述直方图中表示的所述一个或多个峰值;以及
第二集成电路,所述第二集成电路包括处理器,其中所述第一集成电路被配置为将描述使用所述阈值检测到的所述一个或多个峰值的信息发送到所述第二集成电路上的所述处理器。
62.根据权利要求61所述的光学测量***,其中所述阈值检测电路被配置为使用现有阈值。
63.根据权利要求61所述的光学测量***,其中所述阈值检测电路被配置为基于在所述一个或多个第一时间间隔期间存在的背景噪声水平计算所述阈值。
64.根据权利要求63所述的光学测量***,进一步包括:
一个或多个积分寄存器,所述一个或多个积分寄存器在与所述一个或多个第一时间间隔的至少部分重叠的第二时间间隔中累积来自所述一个或多个光检测器的所述光子计数,其中所述阈值检测电路进一步被配置为使用所述一个或多个积分寄存器中的一个或多个值来计算所述背景噪声水平。
65.根据权利要求64所述的光学测量***,其中所述阈值检测电路进一步被配置为通过将所述一个或多个积分寄存器中的总光子计数除以在其期间启用所述一个或多个积分寄存器的持续时间来计算所述背景噪声水平。
66.根据权利要求65所述的光学测量***,其中在其期间启用所述一个或多个积分寄存器的所述持续时间基于在其期间启用所述一个或多个积分寄存器的时钟周期的总数目而被确定。
67.根据权利要求64所述的光学测量***,其中所述阈值检测电路进一步被配置为通过以下操作来计算所述背景噪声水平:
识别所述直方图中的表示所述一个或多个峰值的一个或多个时间区间;以及
从所述一个或多个积分寄存器中的总光子计数中减去所述一个或多个时间区间中的光子计数。
68.根据权利要求61所述的光学测量***,进一步包括多个第二寄存器,所述多个第二寄存器被配置为存储由所述峰值检测电路识别的所述一个或多个峰值。
69.根据权利要求68所述的光学测量***,其中所述一个或多个峰值中的每一个峰值被存储为:
时间区间窗,所述时间区间窗表示所述直方图中的所述峰值周围的时间间隔;以及
所述直方图中的所述峰值出现处的相对时间。
70.根据权利要求61所述的光学测量***,其中所述第一集成电路实施于与所述第二集成电路实施于其上的芯片物理上分离且不同的芯片上。
71.根据权利要求61所述的光学测量***,其中所述一个或多个峰值被发送到所述处理器而不将滤波器应用于表示所述直方图中的所述一个或多个峰值的值。
72.一种使用光学测量***的方法,所述方法包括:
在一个或多个第一时间间隔中传输一个或多个脉冲串作为光学测量的部分,其中所述一个或多个第一时间间隔中的每一个第一时间间隔包含所述一个或多个脉冲串中的一个脉冲串;
使用一个或多个光检测器检测来自所述一个或多个脉冲串的光子;
在第一集成电路上将来自所述一个或多个光检测器的光子计数累积到多个第一寄存器中,以表示在所述一个或多个第一时间间隔期间接收到的光子计数的直方图,所述多个第一寄存器中的每一个第一寄存器对应于所述直方图中的时间区间;
在所述第一集成电路上提供阈值以用于识别所述直方图中的一个或多个峰值;
在所述第一集成电路上通过以所述阈值遍历通过所述多个第一寄存器来识别在所述直方图中表示的所述一个或多个峰值;以及
将描述使用所述阈值检测到的所述一个或多个峰值的信息从所述第一集成电路发送到第二集成电路上的处理器。
73.根据权利要求72所述的方法,进一步包括从所述直方图中表示的所述一个或多个峰值中去除所述背景噪声水平。
74.根据权利要求72所述的方法,进一步包括基于在所述一个或多个脉冲串之间由所述一个或多个光检测器接收到的光子的样本确定所述背景噪声水平。
75.根据权利要求72所述的方法,其中提供所述阈值包括将所述阈值设置为高于背景噪声水平的预定间隔。
76.根据权利要求72所述的方法,其中提供所述阈值包括将所述阈值设置为高于背景噪声水平的间隔,所述间隔是所述背景噪声水平的预定百分比。
77.根据权利要求72所述的方法,进一步包括在识别所述一个或多个峰值之前将低通滤波器应用于存储于所述多个第一寄存器中的所述直方图。
78.根据权利要求72所述的方法,进一步包括在识别所述一个或多个峰值之前将匹配滤波器应用于存储于所述多个第一寄存器中的所述直方图,其中所述匹配滤波器对应于所述一个或多个脉冲串。
79.根据权利要求72所述的方法,其中所述一个或多个峰值包括对应于所述一个或多个脉冲串的反射的峰值和不对应于所述一个或多个脉冲串的反射的峰值。
80.根据权利要求72所述的方法,其中识别所述直方图中表示的所述一个或多个峰值仅使用通过所述多个第一寄存器的单次遍历。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962882907P | 2019-08-05 | 2019-08-05 | |
US62/882,907 | 2019-08-05 | ||
PCT/US2020/045016 WO2021026241A1 (en) | 2019-08-05 | 2020-08-05 | Processing system for lidar measurements |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114424086A true CN114424086A (zh) | 2022-04-29 |
Family
ID=74504173
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080066762.5A Pending CN114424086A (zh) | 2019-08-05 | 2020-08-05 | 用于lidar测量的处理*** |
Country Status (6)
Country | Link |
---|---|
US (2) | US20230176223A1 (zh) |
EP (1) | EP3990946A4 (zh) |
JP (1) | JP2022543389A (zh) |
KR (1) | KR20220042202A (zh) |
CN (1) | CN114424086A (zh) |
WO (1) | WO2021026241A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116540953A (zh) * | 2023-07-07 | 2023-08-04 | 苏州识光芯科技术有限公司 | 时差区间分布直方图数据生成方法、装置、芯片及设备 |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220069930A (ko) * | 2019-10-10 | 2022-05-27 | 아우스터, 인크. | 라이다 정확도를 위한 시계열 측정 처리 |
US11885915B2 (en) * | 2020-03-30 | 2024-01-30 | Stmicroelectronics (Research & Development) Limited | Time to digital converter |
WO2022200340A1 (en) * | 2021-03-23 | 2022-09-29 | Osram Gmbh | Detection system and method of performing a time measurement |
CN115144863A (zh) * | 2021-03-31 | 2022-10-04 | 上海禾赛科技有限公司 | 确定噪声水平的方法、激光雷达以及测距方法 |
US20220350025A1 (en) * | 2021-04-30 | 2022-11-03 | Waymo Llc | Method and System for a Threshold Noise Filter |
WO2022253676A1 (de) * | 2021-06-02 | 2022-12-08 | Ifm Electronic Gmbh | Lichtlaufzeitkamera mit einem spad-lichtlaufzeitsensor |
WO2023001363A1 (en) * | 2021-07-19 | 2023-01-26 | Huawei Technologies Co., Ltd. | Time-of-flight sensor |
CN115902835B (zh) * | 2021-09-30 | 2024-02-27 | 深圳市速腾聚创科技有限公司 | 一种雷达数据收发装置、测距方法及激光雷达 |
KR102488500B1 (ko) * | 2021-11-12 | 2023-01-13 | 주식회사 에스오에스랩 | 라이다 데이터 처리 방법 |
KR102488494B1 (ko) * | 2021-11-12 | 2023-01-13 | 주식회사 에스오에스랩 | 라이다 데이터 처리 방법 |
KR102505602B1 (ko) * | 2021-11-12 | 2023-03-03 | 주식회사 에스오에스랩 | 라이다 데이터 처리 방법 |
WO2023085466A1 (ko) * | 2021-11-12 | 2023-05-19 | 주식회사 에스오에스랩 | 라이다 데이터 처리 방법. |
US20230221419A1 (en) * | 2022-01-11 | 2023-07-13 | Samsung Electronics Co., Ltd. | Lidar adaptive single-pass histogramming for low power lidar system |
JP2023108937A (ja) * | 2022-01-26 | 2023-08-07 | ソニーセミコンダクタソリューションズ株式会社 | 測距装置および測距装置の制御方法 |
WO2024039237A1 (ko) * | 2022-08-18 | 2024-02-22 | 엘지이노텍 주식회사 | 센서 장치, 라이다 장치 및 이의 제어방법 |
KR20240030503A (ko) | 2022-08-31 | 2024-03-07 | 주식회사 솔리드뷰 | 거리 측정 장치 |
WO2024081230A1 (en) * | 2022-10-11 | 2024-04-18 | Zoox, Inc. | Lidar background noise detection and compensation |
KR102551930B1 (ko) * | 2022-12-15 | 2023-07-05 | 주식회사 에스오에스랩 | 고해상도 라이다 데이터 생성 방법 및 이를 이용하는 라이다 장치 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6737642B2 (en) * | 2002-03-18 | 2004-05-18 | Syagen Technology | High dynamic range analog-to-digital converter |
US8081922B2 (en) * | 2008-05-30 | 2011-12-20 | Qualcomm Incorporated | Methods and apparatuses for processing satellite positioning system signals |
GB2485995B (en) * | 2010-11-30 | 2014-01-01 | St Microelectronics Res & Dev | Improved proximity sensor and associated method, computer readable medium and firmware |
US10354849B2 (en) * | 2013-07-09 | 2019-07-16 | Micromass Uk Limited | Method of recording ADC saturation |
US10620300B2 (en) * | 2015-08-20 | 2020-04-14 | Apple Inc. | SPAD array with gated histogram construction |
EP3370079B1 (en) | 2017-03-01 | 2021-04-28 | STMicroelectronics (Grenoble 2) SAS | Range and parameter extraction using processed histograms generated from a time of flight sensor - pulse detection |
KR20230169420A (ko) | 2017-03-01 | 2023-12-15 | 아우스터, 인크. | 라이더를 위한 정확한 광검출기 측정 |
US10690773B2 (en) * | 2017-12-07 | 2020-06-23 | Velodyne Lidar, Inc. | Systems and methods for efficient multi-return light detectors |
-
2020
- 2020-08-05 JP JP2022506630A patent/JP2022543389A/ja active Pending
- 2020-08-05 EP EP20849369.2A patent/EP3990946A4/en active Pending
- 2020-08-05 CN CN202080066762.5A patent/CN114424086A/zh active Pending
- 2020-08-05 KR KR1020227007027A patent/KR20220042202A/ko unknown
- 2020-08-05 WO PCT/US2020/045016 patent/WO2021026241A1/en unknown
- 2020-08-05 US US17/496,583 patent/US20230176223A1/en active Pending
-
2023
- 2023-04-26 US US18/139,847 patent/US20230273320A1/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116540953A (zh) * | 2023-07-07 | 2023-08-04 | 苏州识光芯科技术有限公司 | 时差区间分布直方图数据生成方法、装置、芯片及设备 |
CN116540953B (zh) * | 2023-07-07 | 2023-09-29 | 苏州识光芯科技术有限公司 | 时差区间分布直方图数据生成方法、装置、芯片及设备 |
Also Published As
Publication number | Publication date |
---|---|
WO2021026241A1 (en) | 2021-02-11 |
US20230273320A1 (en) | 2023-08-31 |
EP3990946A4 (en) | 2023-08-09 |
EP3990946A1 (en) | 2022-05-04 |
JP2022543389A (ja) | 2022-10-12 |
US20230176223A1 (en) | 2023-06-08 |
KR20220042202A (ko) | 2022-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230273320A1 (en) | Processing system for lidar measurements | |
US20220043118A1 (en) | Processing time-series measurements for lidar accuracy | |
US11209544B2 (en) | Accurate photo detector measurements for LIDAR | |
US10317529B2 (en) | Accurate photo detector measurements for LIDAR | |
US20200341144A1 (en) | Independent per-pixel integration registers for lidar measurements | |
US11624835B2 (en) | Processing of LIDAR images | |
US20220043156A1 (en) | Configurable memory blocks for lidar measurements |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |