本申请涉及距离感测技术领域,具体涉及一种基于直接飞行时间测量距离的感测装置。
背景技术:
飞行时间(time-of-flight,tof)成像技术在多个应用场景有广泛应用,例如激光探测及测距(light-detection-and-ranging,lidar)系统,3d成像,深度映射和基于单光子雪崩二极管(single-photonavalanchediode,spad)的传感设备。tof成像技术的原理是用光脉冲照射物体并检测从物体反射的一些脉冲。检测器和物体之间的距离可以通过测量发射和探测之间的相位变化来间接测量,也称为间接tof(indirecttof,itof),或者可以通过计算出射脉冲的发射时间与从物体上的相应点所反射的辐射的到达时间之间的差来测量飞行时间从而直接测量距离,也称为直接tof(directtof,dtof)。因为光功率以行进距离的平方速度减小并且反射导致损耗,所以反射光辐射的强度明显低于出射光的强度,从而对检测这种低强度的反射光辐射提出了挑战。同时,由于产品安全考量和功耗限制,输出的光脉冲的强度不能无限增加。因此,反射光辐射必须保持非常低的强度,从而容易受到背景噪声或干扰(例如环境光或阳光)的影响。
因此,需要一种技术方案能减少背景噪声对检测结果的影响从而提高基于直接tof的测距效率和精度。
技术实现要素:
第一方面,本申请实施例提供了一种感测装置。所述感测装置包括:发射器,其中,所述发射器被配置成向目标发射光脉冲序列,第一时间值序列指示所述光脉冲序列的相应发射时间;检测器,其中,所述检测器被配置成接收从所述目标反射的光学辐射并且输出第二时间值序列,所述第二时间值序列指示所接收光学辐射的相应到达时间;以及控制器。其中,所述控制器被配置成执行以下操作:按照时延平移所述第一时间值序列以获得修改后的第一时间值序列,其中,所述时延根据所述第一时间值序列和所述第二时间值序列之间的匹配确定;根据所述修改后的第一时间值序列和所述第二时间值序列之间的比较,选择所述第二时间值序列的一部分;计算所选择的第二时间值序列的一部分的总数与所述第一时间值序列的总数之间的第一差值;以及当确定所述第一差值不超过第一阈值时,利用所选择的第二时间值序列的一部分来计算所述光脉冲序列向所述目标前进并返回的公共飞行时间。
第一方面所描述的技术方案,通过使用第二时间值序列的所选择部分来计算公共飞行时间,从而实现了减少背景噪声影响及提高基于直接tof的测距效率和精度的技术效果。
根据第一方面,在一种可能的实现方式中,所述光脉冲序列具有相等的时间间隔。
如此,可以用于当发射的光脉冲具有相等时间间隔的应用场景。
根据第一方面,在一种可能的实现方式中,所述光脉冲序列具有规律变化的时间间隔,所述时间间隔从多个预定时间间隔中选择一个。
如此,可以用于当发射的光脉冲具有规律变化的时间间隔的应用场景。
根据第一方面,在一种可能的实现方式中,根据所述修改后的第一时间值序列和所述第二时间值序列之间的比较,选择所述第二时间值序列的一部分,包括,分别针对所述第二时间值序列的每一个:识别所述第二时间值序列中的一个的顺序位置;识别对应于所述顺序位置的所述修改后的第一时间值序列中的一个或者多个;将所述第二时间值序列中的一个跟所述修改后的第一时间值序列中的一个或者多个进行比较以获得第二差值;以及当确定所述第二差值不超过第二阈值时,确定所选择的第二时间值序列的一部分包括所述第二时间值序列中的一个。
如此,通过将第二时间值序列中的一个与修改后的第一时间值序列的一个或多个进行比较,从而实现了选择有效信号并滤出无效信号。
根据第一方面,在一种可能的实现方式中,所述修改后的第一时间值序列中的一个或者多个从所述修改后的第一时间值序列中的顺序位置开始顺序排列,所述修改后的第一时间值序列中的顺序位置与所述第二时间值序列中的一个的顺序位置相同,其中,将所述第二时间值序列中的一个跟所述修改后的第一时间值序列中的一个或者多个进行比较以获得所述第二差值,包括:将所述第二时间值序列中的一个跟所述修改后的第一时间值序列中的一个或者多个的每一个分别进行比较从而选择最小值作为所述第二差值。
如此,通过分别比较第二时间值序列中的一个与修改后的第一时间值序列中的一个或多个的每一个,从而实现了更大的灵活性。
根据第一方面,在一种可能的实现方式中,所述控制器可调整所述第二阈值。
如此,通过提供可由控制器调节的第二阈值,可以实现更大的灵活性。
根据第一方面,在一种可能的实现方式中,所述目标包括多个像素,其中,所述多个像素的每个像素分别对应所接收光学辐射的一部分。
如此,可以用于当目标具有多个像素的应用场景。
根据第一方面,在一种可能的实现方式中,所述检测器包括多个单光子雪崩二极管spad和耦合到所述多个spad的多个时间数字转换器tdc;所述多个spad包括多组spad,其中,每组spad包括至少一个spad并且被配置成响应于对应所述目标的一个像素的所接收光学辐射的一个相应部分而产生数字脉冲;所述多个tdc被配置成生成多个第二时间值序列,其中,所述多个第二时间值序列的每一个分别对应一组spad所生成的数字脉冲;所述控制器被配置成根据所述第一时间值序列和所述多个第二时间值序列中的相应的一个,计算所述光脉冲序列向所述目标的一个像素前进并返回的公共飞行时间。
如此,通过部署多个spad和多个tdc来计算与目标的不同像素对应的飞行时间,从而有利于实现深度映射。
根据第一方面,在一种可能的实现方式中,所述第一时间值序列和所述第二时间值序列之间的匹配包括在第一模式和第二模式之间的关联,其中,所述第一模式指示所述第一时间值序列的时间值之间的差,所述第二模式指示所述第二时间值序列的时间值之间的差。
如此,通过将第一模式与第二模式相关联,而使得匹配集中在时间值之间的差异上而不是时间值本身,从而提高了效率。
第二方面,本申请实施例提供了一种基于直接tof的距离测量方法。所述方法包括:向目标发射光脉冲序列,其中,第一时间值序列指示所述光脉冲序列的相应发射时间;接收从所述目标反射的光学辐射,其中,第二时间值序列指示所接收光学辐射的相应到达时间;按照时延平移所述第一时间值序列以获得修改后的第一时间值序列,其中,所述时延根据所述第一时间值序列和所述第二时间值序列之间的匹配确定;根据所述修改后的第一时间值序列和所述第二时间值序列之间的比较,选择所述第二时间值序列的一部分;计算所选择的第二时间值序列的一部分的总数与所述第一时间值序列的总数之间的第一差值;以及当确定所述第一差值不超过第一阈值时,利用所选择的第二时间值序列的一部分来计算所述光脉冲序列向所述目标前进并返回的公共飞行时间。
第二方面所描述的技术方案,通过使用第二时间值序列的所选择部分来计算公共飞行时间,从而实现了减少背景噪声影响及提高基于直接tof的测距效率和精度的技术效果。
根据第二方面,在一种可能的实现方式中,所述光脉冲序列具有相等的时间间隔。
如此,可以用于当发射的光脉冲具有相等时间间隔的应用场景。
根据第二方面,在一种可能的实现方式中,所述光脉冲序列具有规律变化的时间间隔,所述时间间隔从多个预定时间间隔中选择一个。
如此,可以用于当发射的光脉冲具有规律变化的时间间隔的应用场景。
根据第二方面,在一种可能的实现方式中,根据所述修改后的第一时间值序列和所述第二时间值序列之间的比较,选择所述第二时间值序列的一部分,包括,分别针对所述第二时间值序列的每一个:识别所述第二时间值序列中的一个的顺序位置;识别对应于所述顺序位置的所述修改后的第一时间值序列中的一个或者多个;将所述第二时间值序列中的一个跟所述修改后的第一时间值序列中的一个或者多个进行比较以获得第二差值;以及当确定所述第二差值不超过第二阈值时,确定所选择的第二时间值序列的一部分包括所述第二时间值序列中的一个。
如此,通过将第二时间值序列中的一个与修改后的第一时间值序列的一个或多个进行比较,从而实现了选择有效信号并滤出无效信号。
根据第二方面,在一种可能的实现方式中,所述修改后的第一时间值序列中的一个或者多个从所述修改后的第一时间值序列中的顺序位置开始顺序排列,所述修改后的第一时间值序列中的顺序位置与所述第二时间值序列中的一个的顺序位置相同,其中,将所述第二时间值序列中的一个跟所述修改后的第一时间值序列中的一个或者多个进行比较以获得所述第二差值,包括:将所述第二时间值序列中的一个跟所述修改后的第一时间值序列中的一个或者多个的每一个进行比较从而选择最小值作为所述第二差值。
如此,通过分别比较第二时间值序列中的一个与修改后的第一时间值序列中的一个或多个的每一个,从而实现了更大的灵活性。
根据第二方面,在一种可能的实现方式中,所述第二阈值可调整。
如此,通过提供可调整的第二阈值,可以实现更大的灵活性。
根据第二方面,在一种可能的实现方式中,所述第一时间值序列和所述第二时间值序列之间的匹配包括在第一模式和第二模式之间的关联,其中,所述第一模式指示所述第一时间值序列的时间值之间的差,所述第二模式指示所述第二时间值序列的时间值之间的差。
如此,通过将第一模式与第二模式相关联,而使得匹配集中在时间值之间的差异上而不是时间值本身,从而提高了效率。
第三方面,本申请实施例提供了一种基于直接tof的激光探测及测距lidar系统。所述lidar系统包括:激光器,其中,所述激光器被配置成向目标发射光脉冲序列,第一时间值序列指示所述光脉冲序列的相应发射时间;感测元件阵列,其中,所述感测元件阵列的每个感测元件包括至少一个spad并被配置成输出第二时间值序列,所述第二时间值序列指示由所述目标反射并由对应的感测元件接收的光学辐射的相应到达时间;其中,分别针对每个感测元件:根据所述第二时间值序列与所述第一时间值序列之间的比较而选择所述第二时间值序列的一部分,利用所选择的第二时间值序列的一部分来计算所述光脉冲序列向所述目标前进并返回的公共飞行时间;其中,基于所述感测元件阵列的所有计算出的飞行时间的组合来生成所述目标的深度图。
第二方面所描述的技术方案,通过使用第二时间值序列的所选择部分来计算公共飞行时间,从而实现了减少背景噪声影响及提高基于直接tof的测距效率和精度的技术效果。
根据第三方面,在一种可能的实现方式中,所述感测元件阵列包括spad像素的二维矩阵。
如此,可以用于当感测元件阵列是二维矩阵的应用场景。
根据第三方面,在一种可能的实现方式中,所述第二时间值序列与所述第一时间值序列之间的比较,包括将第一模式与第二模式关联,其中,所述第一模式指示所述第一时间值序列的时间值之间的差,所述第二模式指示所述第二时间值序列的时间值之间的差。
如此,通过将第一模式与第二模式相关联,而使得比较集中在时间值之间的差异上而不是时间值本身,从而提高了效率。
根据第三方面,在一种可能的实现方式中,所述第二时间值序列与所述第一时间值序列之间的比较,包括:按照时延平移所述第一时间值序列以获得修改后的第一时间值序列,其中,所述时延根据所述第一时间值序列和所述第二时间值序列之间的匹配确定;将所述修改后的第一时间值序列与所述第二时间值序列比较。
如此,通过将第二时间值序列与修改后的第一时间值序列进行比较,从而实现了选择有效信号并滤出无效信号。
附图说明
为了说明本申请实施例或背景技术中的技术方案,下面将对本申请实施例或背景技术中所需要使用的附图进行说明。
图1为本申请实施例提供的感测装置的结构框图。
图2示出了图1所示的感测装置所发射的tx脉冲序列及所接收的rx脉冲序列。
图3为本申请实施例提供的距离测量方法的流程示意图。
具体实施方式
本申请实施例提供了一种感测装置。该感测装置包括:发射器,其中,所述发射器被配置成向目标发射光脉冲序列,第一时间值序列指示所述光脉冲序列的相应发射时间;检测器,其中,所述检测器被配置成接收从所述目标反射的光学辐射并且输出第二时间值序列,所述第二时间值序列指示所接收光学辐射的相应到达时间;以及控制器。其中,所述控制器被配置成执行以下操作:按照时延平移所述第一时间值序列以获得修改后的第一时间值序列,其中,所述时延根据所述第一时间值序列和所述第二时间值序列之间的匹配确定;根据所述修改后的第一时间值序列和所述第二时间值序列之间的比较,选择所述第二时间值序列的一部分;计算所选择的第二时间值序列的一部分的总数与所述第一时间值序列的总数之间的第一差值;以及当确定所述第一差值不超过第一阈值时,利用所选择的第二时间值序列的一部分来计算所述光脉冲序列向所述目标前进并返回的公共飞行时间。因此,本发明提供的技术方案,达到了减少背景噪声的影响,提高基于直接tof的测距效率和精度的技术效果。
本申请实施例可用于以下应用场景,包括但不限于:lidar系统,3d成像,深度映射和基于spad的感测设备。
本申请实施例可以依据具体应用环境进行调整和改进,此处不做具体限定。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请的实施例进行描述。
请参阅图1,图1为本申请实施例提供的感测装置的结构框图。如图1所示,感测装置100包括脉冲激光器101,光学发射器102,光学接收器104,spad检测器105,时间数字转换器(time-to-digitalconverter,tdc)106,以及控制器130。脉冲激光器101以一定的时间模式指定的时间间隔生成多个激光脉冲111。光学发射器102耦合到脉冲激光器101以接收所产生的激光脉冲111,并向目标103发射一系列光脉冲,称之为tx脉冲112。目标103通常具有多个点或者像素,这些点或者像素能将发射的光脉冲反射回去感测装置100。应当理解的是,目标103和感测装置100之间的相对距离在光脉冲发射和反射的期间保持不变。如此,tx脉冲112从感测装置100的光学发射器102发射并向着同一个目的地前进,这些tx脉冲112的每一个在感测期间有着相同的传播距离。光学接收器104检测到从目标103反射的光学辐射113。因为向着目标103发射tx脉冲112和通过光学接收器104检测到从目标103反射的光学辐射113,这些都发生在目标103相对于感测装置100保持不动的感测期间,所以tx脉冲112的每一个向目标103前进并返回的传播时间是相同的并能用来计算感测装置100和目标103之间的距离。如果目标103的一些点或者像素的相对于感测装置100的距离与其它点或者像素相对于感测装置100的距离不同,这就意味着,目标103上的多个点或者像素有非一致的深度分布,而与目标103的部分像素对应的传播时间可能跟与其它像素对应的传播时间不一样。光学发射器102可以使用分频器或准直器或其他合适的光学装置来获得用于tx脉冲112的大体平面波。脉冲激光器101可以使用一个或多个垂直腔表面发射激光器(vertical-cavitysurface-emittinglaser,vcsel)。这样,朝向目标103的不同像素发射的tx脉冲112共享相同的时间模式,并且可以将目标103的各个像素的反射的光学辐射113与相同的tx脉冲112和相同的时间模式进行比较以生成目标103的深度映射。
请继续参阅图1,光学接收器104耦合到spad检测器105。spad检测器105包括多个spad,其中每个spad被配置成输出指示单个光子在spad检测器105上的入射的信号。由于光学接收器104接收包括背景噪声的所有反射的光学辐射113并将反射的光学辐射113的光子传输到spad检测器105,因此spad检测器105响应于接收到的包括背景噪声的光学辐射113而输出多个spad信号114。spad检测器105耦合到时间数字转换器106,而时间数字转换器106基于spad信号114生成具有定时信息的数字化脉冲。在一些示例性实施例中,时间数字转换器106被配置成响应于多个spad信号114而增加spad检测器105上光子入射的各个时间的计数。换句话说,时间数字转换器106提供多个spad信号114的定时和相应计数的统计结果。在一些示例性实施例中,时间数字转换器106基于所述spad检测器105上光子入射的各个时间的计数而生成多个直方图。其中,每个直方图对应于tx脉冲112的一个的反射的重新建立。每个直方图包括多个定时和相应计数,并且选择一个峰值来代表该直方图及用于计算相应的tx脉冲112的一个的最终飞行时间。换句话说,时间数字转换器106将基于直方图的滤波应用于多个spad信号114的定时和相应计数的统计结果。spad检测器105可以具有多组spad传感器。其中,每组spad传感器具有一个或多个spad传感器。一组spad传感器对应于目标103的特定像素或点,因此由一组spad传感器产生的spad信号114对应于由目标103的特定像素或点反射的光学辐射的一部分。spad检测器105也可以为spad传感器的二维阵列。
请继续参阅图1,由时间数字转换器106产生的数字化脉冲,无论是否经过基于直方图的滤波,都作为rx脉冲115被发送到控制器130。因为rx脉冲115是由时间数字转换器106基于多个spad信号114而生成,而这些多个spad信号114是由spad检测器105响应于接收到的包括背景噪声的光学辐射113而生成,因此rx脉冲115就像反射的光学辐射113一样,也包含可能受背景噪声影响的某些部分。控制器130具有各种模块以识别和滤除受背景噪声影响的rx脉冲115的一部分,并控制和操作感测装置100。其中,控制器130具有同步模块131。同步模块131用于提供全局定时或者参考时间,以便根据相同的全局定时或参考时间来记录tx脉冲112和rx脉冲115。控制器130还具有定时计数模块132。定时计数模块132与同步模块131协作以记录tx脉冲112和rx脉冲115的相应计数。控制器130向脉冲激光器101发送控制信号110以驱动脉冲激光器101来根据tx脉冲112之间的指定时间间隔产生激光脉冲111,作为同步模块131和定时计数模块132之间的协作的结果。控制器130还具有存储器133。存储器133用于存储关于tx脉冲112和rx脉冲115的定时和计数有关的信息,以及存储用于操作感测装置100的指令。控制器130还具有控制模块134。控制模块134用于提供必要的控制电路和功能以执行诸如驱动脉冲激光器101和记录rx脉冲115的定时和计数等操作。控制器130可选地可以具有直方图模块135用于将基于直方图的滤波应用于由时间数字转换器106提供的多个spad信号114的定时和相应计数的统计结果,假设时间数字转换器106不具有相似的组件或功能。控制器130还具有处理器136。处理器136用于处理存储在存储器133中的指令并提供各种操作。应当理解的是,控制器130的各个组件的结构和功能仅用于说明目的,并且在一些示例性实施例中,控制器130可以具有不同的架构或组件的组合。
请参阅图2,图2示出了图1所示的感测装置所发射的tx脉冲序列及所接收的rx脉冲序列。如图2所示,tx脉冲200对应于图1中所示的tx脉冲112,并总共具有n个脉冲,而发射每个tx脉冲200的时间为tx1,tx2,tx3,tx4,…txn-1和txn。其中,txi表示发射第i个tx脉冲的时间(在tx脉冲200中位于第i个顺序位置),并且i是不大于n的正整数。rx脉冲210对应于图1中所示的rx脉冲115,并总共具有n个脉冲,而每个rx脉冲210的到达时间是rx1,rx2,rx3,rx4,…rxn-1和rxn。这里n是正整数。其中,rxi表示第i个rx脉冲的到达时间(在rx脉冲210中位于第i个顺序位置),并且i是不大于n的正整数。请同时参阅图1和图2,可以将序列tx1,tx2,tx3,tx4,…txn-1和txn称为第一时间值序列(也称作tx序列),第一时间值序列或者tx序列指示向目标发射的光脉冲序列(也就是tx脉冲112)的相应发射时间。tx序列或第一时间值序列可以由控制器130产生,该控制器130将控制信号110发送到脉冲激光器101以驱动脉冲激光器101来遵循tx序列产生激光脉冲111。在一些示例性实施例中,tx序列或第一时间值序列可在连续脉冲之间具有等于预定值的时间间隔。例如,tx1和tx2之间的时间间隔,tx2和tx3之间的时间间隔,tx3和tx4之间的时间间隔,以及其他连续脉冲之间的时间间隔,都等于100纳秒(nanosecond,以下简称ns)。在一些示例性实施例中,tx序列或第一时间值序列的连续脉冲之间的时间间隔可以交替地在第一值和第二值之间切换。例如,tx1和tx2之间的时间间隔,tx3和tx4之间的时间间隔,tx5和tx6之间的时间间隔是100ns,而tx2和tx3之间的时间间隔,tx4和tx5之间的时间间隔是200ns,因此时间间隔可以在100ns和200ns之间交替切换。在一些示例性实施例中,tx序列或第一时间值序列具有规律变化的时间间隔。而时间间隔从多个预定时间间隔中选择一个。例如,tx1和tx2之间的时间间隔,tx2和tx3之间的时间间隔,以及tx3和tx4之间的时间间隔可以分别为100ns,120ns和140ns。关于tx序列或第一时间值序列的的连续脉冲之间的时间间隔的上述各种实施例可以表示成用于发射光脉冲序列的特定时间模式。例如,可以以相等的时间间隔产生激光脉冲111,并且在0ns,100ns,200ns,300ns等时刻依次发射tx脉冲112。又例如,tx脉冲112在0ns,100ns,300ns,400ns,600ns等时刻依次发射。因此,与tx序列中第i个位置相对应的第i个tx脉冲,既指示第i个tx脉冲的发射时间又指示tx序列中第i个脉冲与(i-1)个脉冲以及第i个脉冲与第(i+1)个脉冲之间的时间间隔。为了便于描述,将第(i-1)个脉冲理解为相对于第i个脉冲的紧邻在前脉冲,将第(i+1)个脉冲理解为相对于第i个脉冲的紧邻在后脉冲。
请继续参阅图2,如果与tx序列相对应的tx脉冲朝着相同目的地往返发射,则tx序列共享共同的传播时间,因此理想情况下tx脉冲200的反射具有共同的时间延迟并且维持相同的特定时间模式。其中,由于背景噪声的影响,rx脉冲210并不完全遵循tx脉冲200的特定时间模式。具体地,一些tx脉冲在反射后可能会因为强度太低而在检测中无法与背景噪声区别开来,从而被视为浸入背景噪声,并且因此不会在rx脉冲210的预计位置出现,或者定时的记录可能会受到干扰。因此,相对于第一时间值序列或tx序列,序列rx1,rx2,rx3,rx4,…rxn-1和rxn可以称为第二时间值序列(rx序列),并且必须分析rx序列以根据tx序列确定rx序列的每一个是否有效。应当理解的是,虽然图2示出了在tx序列中总共有n个脉冲并且在rx序列中总共有n个脉冲,但是由于背景噪声和抖动引起的干扰等因素,rx序列的总数可能小于n。
请参阅图3,图3为本申请实施例提供的距离测量方法的流程示意图。第一时间值序列,也就是tx序列300,指示向目标发射光脉冲序列的相应时间;第二时间值序列,也就是rx序列302,指示来自目标的反射的光学辐射到达的相应时间。应当理解的是,为了便于描述,第一时间值序列和第二时间值序列分别用于表示tx序列300和rx序列302。tx序列300表示为tx1,tx2,tx3,…txn-1和txn,其中,n是一个正整数也是tx序列300中脉冲的总数。rx序列302表示为rx1,rx2,rx3,…rxm-1和rxm,其中,m是一个正整数也是rx序列302中脉冲的总数。txi和rxi分别表示tx序列300和rx序列302中第i个顺序位置的相应脉冲。例如,tx3和rx3都表示各自序列中的第三个脉冲。为了便于描述,将第(i-1)个脉冲理解为相对于第i个脉冲的紧邻在前脉冲,将第(i+1)个脉冲理解为相对于第i个脉冲的紧邻在后脉冲。例如,tx4是相对于tx3的紧邻在后脉冲,tx2是相对于tx3的紧邻在前脉冲。请同时参阅图1和图3,tx序列300对应于图1中所示的tx脉冲112,而rx序列302对应于图1中所示的rx脉冲115。图3所示的方法包括以下步骤:
步骤s310:向目标发射光脉冲序列,其中,第一时间值序列,tx序列300,指示所述光脉冲序列的相应发射时间。
其中,在步骤s310,第一时间值序列,或者tx序列300(tx1,tx2,tx3,…txn-1和txn)指示向目标发射光脉冲序列的相应发射时间。光脉冲的发射可以通过多种光学设备例如使用准直器或棱镜或其他合适的光学装置。
步骤s320:接收从所述目标反射的光学辐射,其中,第二时间值序列,rx序列302,指示所接收光学辐射的相应到达时间。
其中,在步骤s320,第二时间值序列,或者rx序列302(rx1,rx2,rx3,…rxm-1和rxm)指示所接收光学辐射的相应到达时间。光学辐射的接收可以通过多种合适的光学装置例如使用棱镜。
步骤s330:按照时延tshift平移所述第一时间值序列以获得修改后的第一时间值序列,txs序列304,其中,所述时延tshift根据所述第一时间值序列tx序列300和所述第二时间值序列rx序列302之间的匹配确定。
其中,在步骤s330,修改后的第一时间值序列,txs序列304,通过将特定的时延tshift应用到tx序列300的每一个时间值从而平移tx序列300得到。txs序列304可以表示成:txs1,txs2,txs3,…txsn-1,以及txsn。其中,txsi对应于将tx序列300的txi平移后得到。tx序列300和txs序列304之间的关系遵循公式(1):
在公式(1)中,txi代表tx序列300的第i个顺序位置的时间值,txsi代表txs序列304的第i个顺序位置的时间值,tshift代表时延,以及n代表tx序列300中的脉冲总数。
在一些示例性实施例中,时延tshift可以被设置成第二时间值序列的第一个与第一时间值序列的第一个之间的差,即rx1和tx1之间的差。也可以通过从数值列表中进行选择来确定时延tshift,或者可以基于统计方法来确定时延tshift。示例性的统计方法可以是计算rx序列302和tx序列300之间的整体时间延迟。
在一些示例性实施例中,第一时间值序列(tx序列300)和第二时间值序列(rx序列302)之间的匹配可以包括第一模式和第二模式之间的关联。其中,第一模式指定tx序列300的时间值之间的差,第二模式指定rx序列302的时间值之间的差。例如,当tx序列300的连续脉冲之间的时间间隔等于100ns时,rx序列302的第二模式可以推定应遵循相同的相等时间间隔。然而,由于背景噪声的影响,反射之后的tx序列300的一些脉冲可能未被检测到,因此在rx序列302中留下了一些空的位置,使得某些脉冲对之间的间隔明显长于100ns。例如,如果与tx序列300的tx2相对应的光脉冲在反射后丢失,则该光脉冲可能不存在于rx序列302中,然而被记录为rx序列302的第二脉冲也即rx2并不是对应于tx2的反射,而大概对应于tx3的反射。这样,虽然tx1和tx2之间的差为100ns,但rx1和rx2之间的差不是100ns,而是200ns。这样,tx3和rx2之间的差可以用于识别适当的时延tshift。如此,通过将tx序列300的第一模式与rx序列302的第二模式进行关联,可以识别适当的时延tshift。
在一些示例性实施例中,在步骤330之前,可以通过计算第一时间值序列tx序列300的总数n与第二时间值序列rx序列302的总数m之间的差来执行初步检查。当rx序列302的总数m小于tx序列300的总数n时,这表明背景噪声可能引起某种干扰,从而使检测设备无法检测到由目标反射回来的光子的入射次数。如果m与n的差异太大,则意味着rx序列302可能由于背景噪声而丢失了很多信号,则整个rx序列302可能不适合进一步处理。
步骤s340:根据所述修改后的第一时间值序列txs序列304和所述第二时间值序列rx序列302之间的比较,选择所述第二时间值序列的一部分。
其中,在步骤s340,将txs序列304与rx序列302进行比较,以选择rx序列302的一部分作为有效信号。未被选择的rx序列302的部分被认为是由于背景噪声的影响而损失。在一些示例性实施例中,可以通过将rx序列302的每一个与相应的txs序列304中的一个进行比较来实现。以特定的rxi为例,识别与rxi具有相同顺序位置i的txsi。例如,将rx1与txs1比较,将rx2与txs2比较,以及将rx3与txs3比较,依此类推。差值d1是指rxi与txsi之间的差的绝对值。尽管rxi可能比txi大,但将txi按照时延平移后得到的txsi可能变得比rxi大。差值d1根据公式(2)计算:
在公式(2)中,rxi代表rx序列302的第i个顺序位置的时间值,txsi代表txs序列304的第i个顺序位置的时间值,d1代表差值,m代表rx序列302中的脉冲总数。
在计算出差值d1之后,将d1与第一阈值td1进行比较;如果d1小于td1,则确定rxi有效;如果d1大于td1,则确定rxi无效。第一阈值td1被设计为用于滤除受背景噪声和其他干扰影响的rx序列302的部分内容的滤波器。换句话说,当将rx序列302的rxi与txs序列304的txsi进行比较时,如果rxi落在基于第一阈值td1所确定的以txsi为中心的范围之外,即d1大于td1,则确定rxi为无效信号或由于背景噪声而丢失的信号。另外,由于txs序列304是从tx序列300线性移位得到,所以tx序列300的特定时间模式保持在txs序列304中。特别地,由于tx序列300中的连续脉冲的时间间隔是属于相对意义上的定义,所以在txs序列304中保持了指定tx序列300中的时间间隔如何改变的方式的时间模式。这意味着txs序列304的时间间隔以相同的方式改变,而不管线性移位多少。如此,通过将差值d1与第一阈值td1进行比较,增加了一个滤除受背景噪声影响的信号的层次。具体地,第一阈值td1可以根据系统要求或特定的次应用环境而调整。例如,在环境光强烈并因此导致背景噪声强烈的环境中,可以将第一阈值td1设置为比通常更小的值,以施加用于滤除背景噪声的更严格的标准。
在一些示例性实施例中,相对于选择单个txsi,可以从顺序位置i开始顺序地选择修改后的第一时间值序列txs序列304的多个时间值,而差值d1是将第二时间值序列的rxi跟所选择的修改后的第一时间值序列中的每一个分别进行比较后从而选择的最小值。例如,相对于仅仅选择txsi,可以选择总共四个时间值为txsi,txsi+1,txsi+2和txsi+3。差值d1为rxi与txsi,txsi+1,txsi+2和txsi+3中每一个的各自差值中的最小值。当rx序列302的总数m小于tx序列300的总数n时,rxi的顺序位置i可能没有指向适当的相应txsi。如此,通过扩展比较的范围以覆盖围绕txsi的多个脉冲,可以定位最接近rxi的txs序列304中的脉冲。
步骤s350:计算所选择的第二时间值序列的一部分的总数与所述第一时间值序列的总数之间的差值;以及当确定所述差值不超过阈值时,利用所选择的第二时间值序列的一部分来计算所述光脉冲序列向所述目标前进并返回的公共飞行时间。
其中,在步骤s350,经过在步骤340确定每个rx序列302是否有效之后,可以定义被确定为有效的rx序列302的时间值的总数,并且将该总数与总数n进行比较以计算差值d2,以及确定差值d2是否超过第二阈值td2。如果差值d2超过第二阈值td2,则表明背景噪声可能影响rx序列302并导致太多信号被确定为无效,因此意味着rx序列302总体上不适合进一步处理。另一方面,当差值d3不超过第二阈值td2时,这意味着存在足够的有效信号用于计算飞行时间。如此,可以大幅降低背景噪声的影响,并且提高测量飞行时间以及相关的感测装置与目标之间的距离的效率和精度。具体地,第二阈值td2可以根据系统要求或特定的应用环境而调整。例如,在环境光强烈且导致背景噪声强烈的环境中,第二阈值td2可以被设置为比通常更小的值,以便施加用于滤除背景噪声的更严格的标准。在滤除背景噪声的影响之后,计算tx序列300向目标前进并返回的共同飞行时间。可以采用多种方法来计算公共飞行时间。例如,可以计算每个有效rxi和对应的txi之间的差的平均值,或者可以选择中值,或者可以应用统计方法。总体而言,由于通过包含多层过滤的方案减少了背景噪声的影响,因此计算出的公共飞行时间具有更高的效率和精度。
请参阅图1,在一些示例性实施例中,spad检测器105可以包括多个spad和耦合到所述多个spad的多个时间数字转换器tdc。所述多个spad包括多组spad。其中,每组spad包括至少一个spad并且被配置成响应于对应所述目标103的一个像素的所接收光学辐射的一个相应部分而产生数字脉冲。所述多个tdc被配置成生成多个第二时间值序列。其中,所述多个第二时间值序列的每一个分别对应一组spad所生成的数字脉冲。控制器130被配置成根据所述第一时间值序列和所述多个第二时间值序列中的相应的一个,计算所述光脉冲序列向所述目标的一个像素前进并返回的公共飞行时间。
本申请实施例还提供了一种基于直接tof的激光探测及测距lidar系统。所述lidar系统包括:激光器,其中,所述激光器被配置成向目标发射光脉冲序列,第一时间值序列指示所述光脉冲序列的相应发射时间;感测元件阵列,其中,所述感测元件阵列的每个感测元件包括至少一个spad并被配置成输出第二时间值序列,所述第二时间值序列指示由所述目标反射并由对应的感测元件接收的光学辐射的相应到达时间;其中,分别针对每个感测元件:根据所述第二时间值序列与所述第一时间值序列之间的比较而选择所述第二时间值序列的一部分,利用所选择的第二时间值序列的一部分来计算所述光脉冲序列向所述目标前进并返回的公共飞行时间;其中,基于所述感测元件阵列的所有计算出的飞行时间的组合来生成所述目标的深度图。在一些示例性实施例中,所述感测元件阵列包括spad像素的二维矩阵。另外,所述第二时间值序列与所述第一时间值序列之间的比较可能通过将第一模式与第二模式关联而实现。其中,所述第一模式指示所述第一时间值序列的时间值之间的差,所述第二模式指示所述第二时间值序列的时间值之间的差。可选地,所述第二时间值序列与所述第一时间值序列之间的比较,包括:按照时延平移所述第一时间值序列以获得修改后的第一时间值序列,其中,所述时延根据所述第一时间值序列和所述第二时间值序列之间的匹配确定;和将所述修改后的第一时间值序列与所述第二时间值序列比较。
本申请提供的具体实施例可以用硬件,软件,固件或固态逻辑电路中的任何一种或组合来实现,并且可以结合信号处理,控制和/或专用电路来实现。本申请具体实施例提供的设备或装置可以包括一个或多个处理器(例如,微处理器,控制器,数字信号处理器(dsp),专用集成电路(asic),现场可编程门阵列(fpga)等),这些处理器处理各种计算机可执行指令从而控制设备或装置的操作。本申请具体实施例提供的设备或装置可以包括将各个组件耦合在一起的系统总线或数据传输系统。系统总线可以包括不同总线结构中的任何一种或不同总线结构的组合,例如存储器总线或存储器控制器,外围总线,通用串行总线和/或利用多种总线体系结构中的任何一种的处理器或本地总线。本申请具体实施例提供的设备或装置可以是单独提供,也可以是系统的一部分,也可以是其它设备或装置的一部分。
本申请提供的具体实施例可以包括计算机可读存储介质或与计算机可读存储介质相结合,例如能够提供非暂时性数据存储的一个或多个存储设备。计算机可读存储介质/存储设备可以被配置为保存数据,程序器和/或指令,这些数据,程序器和/或指令在由本申请具体实施例提供的设备或装置的处理器执行时使这些设备或装置实现有关操作。计算机可读存储介质/存储设备可以包括以下一个或多个特征:易失性,非易失性,动态,静态,可读/写,只读,随机访问,顺序访问,位置可寻址性,文件可寻址性和内容可寻址性。在一个或多个示例性实施例中,计算机可读存储介质/存储设备可以被集成到本申请具体实施例提供的设备或装置中或属于公共系统。计算机可读存储介质/存储设备可以包括光存储设备,半导体存储设备和/或磁存储设备等等,也可以包括随机存取存储器(ram),闪存,只读存储器(rom),可擦可编程只读存储器(eprom),电可擦可编程只读存储器(eeprom),寄存器,硬盘,可移动磁盘,可记录和/或可重写光盘(cd),数字多功能光盘(dvd),大容量存储介质设备或任何其他形式的合适存储介质。
以上是本申请实施例的实施方式,应当指出,本申请具体实施例描述的方法中的步骤可以根据实际需要进行顺序调整、合并和删减。在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。可以理解的是,本申请实施例以及附图所示的结构并不构成对有关装置或系统的具体限定。在本申请另一些实施例中,有关装置或系统可以包括比具体实施例和附图更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者具有不同的部件布置。本领域技术人员将理解,在不脱离本申请具体实施例的精神和范围的情况下,可以对具体实施例记载的方法和设备的布置,操作和细节进行各种修改或变化;在不脱离本申请实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本申请的保护范围。