一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

TOF直方图动态范围拓展方法及其应用与流程

2023-01-17 12:33:08 来源:中国专利 TAG:

tof直方图动态范围拓展方法及其应用
技术领域
1.本技术涉及光学技术领域,特别是一种涉及tof直方图动态范围拓展方法及其应用。


背景技术:

2.近年来,激光测距领域处于蓬勃发展时期,基于单光子雪崩二极管和精密计时器件的tof激光测距技术作为一种相对成熟的测距方案,具有测量距离远、精度高,且数据处理快,避免了时间延迟。tof三维测距技术使用激光作为主动光源,记录激光从发射到抵达目标物体以及从目标物体反射回来抵达探测器的时间,通过光脉冲来回的飞行时间计算得到目标物体的距离信息。该方案利用精密计时器件tdc记录多个激光窄脉冲的发射时间与光电敏感器件spad被入射光子出发的时间差。在多次重复测量中,环境光的干扰通常表现为时间上的随机分布;而从特定目标反射回来的激光脉冲信号,由于飞行时间相同,则体现出则应该体现出时间上的相关性。由此可以通过多次测量,将出现做多的时间点作为实际目标距离对应的激光飞行时间,并由此反演出目标距离。
3.然而现有技术的缺陷在于如果将测量得到的原始直方图视为一个二维数组的话,直方图原始数据的规模由以下两点决定:1.时间轴的量化长度,就是把整个时间量程分成多少个时间片段来计量,代表了图1环境光直方图中横轴的长度m;2.直方图每个时间片段hi,(i∈m)内的计数器的量程n,则整个直方图二位数组的大小为m*n。无论噪声还是信号的光子事件数,都会随着脉冲积分周期数量m的增加二成比例增加。由于直方图的数据量大,实时性要求高,通常在芯片内部通过数字电路实现,数字电路的规模和算力、功耗等需求很大程度上取决于直方图原始数据的规模。所以在实际使用中希望通过有限的直方图数据量来尽量表征尽可能大的信号动态范围。
4.因此首先脉冲积分周期数量m应该满足如下的最小要求:任意时间片段内,计数器数值的大小和该时间片段内能收到的光信号强弱对应。在光源不变的情况下,目标越远反射的回波到达传感器的能量越小。此时,脉冲积分周期数量m要足够多,否则在远距离处,噪声和信号间,或者不同反射率目标间,在能量差距较小的情况下,量化级数不够会导致难以精确分辨。(图1,m大-n大,量化级数高;图2,m小-n小,量化级数相应低)同时回波信号的强度是随着距离r的变化呈现r2增长的,同样目标在近距离对应的事件数会远高于远距离时(如图3,从左到右表示距离由近到远),则需要计数器量程n要足够大,才不会导致直方图被饱和截断,无法完整记录回波的信号峰,以致失去距离测量的能力。(如图4所示,如果计数器的量程n设置为450的话,则实际测量中,当对应时间片的内实际光子事件数大于40的信息就会丢失(标记1部分),从获得的直方图数据中(标记2部分)将无法还原真实的峰值位置。)如此,以上情况就决定了记录原始直方图的数组m*n不能太小。而且主要是有近距离条件下较强的信号回波,和随距离接近逐渐增加的噪声底噪约束的。引申到在芯片设计
中,直方图数据过大,会成比例的提高对存储空间大小的需求,同时还加大了对运算时间和运算量的需求,增大了芯片面积和功耗。
5.为了满足在各种条件下有效测距的要求,计数器量程需要能在系统设计工作条件下,满足满极端远、近距离,和高、低反目标等情况下有效记录光强信号的要求。由于时间相关单光子计数直接飞行时间测量法的原理限制,在环境光条件下通常会造成时间轴前方的直方图堆积,如图5所示,右边有效信号峰的强度实际上小于左边的噪声堆积,此时不能简单地直接通过极大值去定位峰值位置,这就对通过简单算法直接寻找信号峰位置带来了麻烦。增加了信号处理的复杂度和相应的功耗与时间开销。
6.综上,以上问题均会对激光信号飞行时间的准确测量带来干扰,从而无法在有限的直方图数据中获得待测目标距离,或者严重影响测量结果的精确性。现有的采用不同参考像素的做法,无法从根本上避免像素间的不一致性,实际上也引入了更多的测量通道,从而增加了芯片面积,提高了成本。同时,上述方法还不能解决强环境光条件下计数器饱和带来的一系列问题如果单纯提高时间相关单光子计数算法的计数器的位宽(量程),会直接增加算法复杂度,增大芯片所需的数据存储空间和芯片面积。


技术实现要素:

7.本技术实施例提供了tof直方图动态范围拓展方法及其应用,针对目前技术存在的芯片面积大且成本高等问题。
8.本发明核心技术主要是提供一种直方图光子事件计数方法,可以在同等事件计数器位宽(量程)下,提高该类型计数器适用的回波光强动态范围,以便适配更远的测距量程或者高低反目标。
9.第一方面,本技术提供了tof直方图动态范围拓展方法,所述方法包括以下步骤:s00、将整个时间轴分段,形成多个区间,并设定每个区间对应的左右边界;s10、为每个区间分配对应不同的量化级数,每个区间包含多个时间片段,且同一区间内的每个时间片段均设有一同样大小的累加器;s20、当每个脉冲周期输入时间值信号时,将对应时间片段的累加器计数加1,直至多次测量累加器翻转清零后,将对应时间片段的直方图数组位计数加1;s30、循环s20步骤,直至输入所有信号,完成直方图构建。
10.进一步地,还包括s40步骤,具体为:寻峰时,若峰位在任意边界的一半时间片段数量的范围内,则对该边界左右两边各时间片段数量范围内的直方图做量化归一化处理,以还原局部直方图;再对该局部直方图进行寻峰,以定位峰位;其中,时间片段数量为当前信号峰的宽度。
11.进一步地,s10步骤中,对近距离和远距离的事件数压缩量化级数,近距离的事件数的压缩程度大于远距离的事件数的压缩程度。
12.进一步地,s10步骤中,量化级数的最大压缩程度根据信号和噪声以及不同反射率目标反射回波计算得到。
13.进一步地,s10步骤中,同一区间左端的噪声计数值低于最右端的最小回波信号叠加该区间噪声后的计数值。
14.进一步地,s40步骤中,量化归一化处理具体为:将分属两个不同量化级数区间的数据分别还原成同样量化级数的数据。
15.第二方面,本技术提供了一种tof直方图动态范围拓展装置,包括:输入模块,用于输入每个脉冲周期的信号;分段模块,用于将整个时间轴分段,形成多个区间,并设定每个区间对应的左右边界;分配模块,用于为每个区间分配对应不同的量化级数,每个区间包含多个时间片段,且同一区间内的每个时间片段均设有一同样大小的累加器;处理模块,用于当每个脉冲周期输入时间值信号时,将对应时间片段的累加器计数加1,直至多次测量累加器翻转清零后,将对应时间片段的直方图数组位计数加1;构建模块,用于循环处理模块的处理步骤,直至输入所有信号,完成直方图构建;还原模块,用于在寻峰时,若峰位在任意边界的一半时间片段数量的范围内,则对该边界左右两边各时间片段数量范围内的直方图做量化归一化处理,以还原局部直方图;寻峰模块,用于直方图和局部直方图进行寻峰,以定位峰位。
16.第三方面,本技术提供了一种电子装置,包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为运行计算机程序以执行上述的tof直方图动态范围拓展方法。
17.第四方面,本技术提供了一种可读存储介质,可读存储介质中存储有计算机程序,计算机程序包括用于控制过程以执行过程的程序代码,过程包括根据上述的tof直方图动态范围拓展方法。
18.本发明的主要贡献和创新点如下:1、与现有技术相比,本技术通过控制spad传感器直方图数据大小,从而控制数字电路面积和功耗的条件下,提高了全量程下适配的高低反射率目标和最大信号光强,扩大了系统的动态范围;2、与现有技术相比,本技术通过时间段分区量化计数,抑制了计数器饱和,避免了峰位丢失无法寻峰的情况。如此在不增加算法和电路复杂度的前提下,改善了时间轴前方事件数堆积造成信号光所在时间片段事件数低于前方噪声事件数的情况下,简单通过幅值简单寻峰的问题。也解决了针对现有分段技术量化级数造成的信号峰截断问题的解决办法。
19.本技术的一个或多个实施例的细节在以下附图和描述中提出,以使本技术的其他特征、目的和优点更加简明易懂。
附图说明
20.此处所说明的附图用来提供对本技术的进一步理解,构成本技术的一部分,本技术的示意性实施例及其说明用于解释本技术,并不构成对本技术的不当限定。在附图中:图1是现有技术的环境光直方图一;图2是现有技术的环境光直方图二;图3是现有技术的环境光直方图三;图4是现有技术的环境光直方图四;图5是现有技术的环境光直方图五;图6是根据本技术实施例的tof直方图动态范围拓展方法的流程;
图7是根据本技术实施例的直方图分段前的示意图;图8是根据本技术实施例的直方图分段后的一种效果示意图;图9是根据本技术实施例的直方图分段后的另一种效果示意图;图10是根据本技术实施例的局部还原效果示意图;图11是根据本技术实施例的电子装置的硬件结构示意图。
具体实施方式
21.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书一个或多个实施例相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书一个或多个实施例的一些方面相一致的装置和方法的例子。
22.需要说明的是:在其他实施例中并不一定按照本说明书示出和描述的顺序来执行相应方法的步骤。在一些其他实施例中,其方法所包括的步骤可以比本说明书所描述的更多或更少。此外,本说明书中所描述的单个步骤,在其他实施例中可能被分解为多个步骤进行描述;而本说明书中所描述的多个步骤,在其他实施例中也可能被合并为单个步骤进行描述。
23.现有技术由于各种原因(见背景技术)导致无法从根本上避免像素间的不一致性,实际上也引入了更多的测量通道,从而增加了芯片面积,提高了成本。同时,上述方法还不能解决强环境光条件下计数器饱和带来的一系列问题如果单纯提高时间相关单光子计数算法的计数器的位宽(量程),会直接增加算法复杂度,增大芯片所需的数据存储空间和芯片面积。
24.直方图记录了整个测量范围内,回波信号和噪声信号的时间分布。根据目前系统的光机设计和电路设计可以确定,设计工作条件下,噪声信号对应的噪声事件数和信号事件数。在整个测量时间范围内,需要保证噪声和回波峰值事件数之间的量化是可分辨的,简单说,在多次重复测量时,回波的事件数目要和噪声的事件数有显著差异。但是对于远距离目标,光强是随着距离r的变化呈r2后,回波的事件数目和噪声的事件数也会同时增大,相互间的差异也会增大,实际上是大于相互分辨的差异需求的。这意味着主要受近距离条件限制的计数器最小值n实际上存在浪费。
25.基于此,本发明基于控制spad传感器直方图数据大小,通过时间段分区量化计数来解决现有技术存在的问题。
26.实施例一本技术旨在提出tof直方图动态范围拓展方法,通过控制spad传感器直方图数据大小和时间段分区量化计数,可以在有限的直方图数据量下情况下,拓展可适配的光信号强度动态范围,缓解直方图饱和对距离测量的影响,并改善时间轴前部直方图堆积的问题,改善实际使用时的直方图寻峰复杂度。从而最终减小对芯片设计的面积和功耗需求,具体地,参考图6,本技术的方法包括:s00、将整个时间轴分段,形成多个s0...sh区间,并设定每个区间对应的左右边界;s10、为每个区间分配对应不同的量化级数,每个区间包含多个时间片段,且同一
区间内的每个时间片段均设有一同样大小的累加器;优选地,在实现上是对不同区间内的时间片段分配不同位宽的累加器,按不同的量化级数,分成几个不同的区间,每个区间是包含多个时间片段,同一区间内的每个时间片段都各自有一个大小一样的累加器。例如右端i级量化的区间,则内部所有时间片段都分配大小为j的累加器。
27.在本实施例中,对近距离和远距离的事件数压缩量化级数,近距离的事件数的压缩程度大于远距离的事件数的压缩程度。如图7所示,如果对直方图的时间轴进行分段,对近距离的事件数调整(降低)量化级数。则所需要的直方图事件计数器量程得到显著降低(从800多降低到接近300,如图7-8所示),同时信号峰和底噪(环境光噪声)之间依然是可分辨的。远距离则采用较低的量化级数(近距离的量化级数更低(降低程度更高),远距离的量化级数更高)就降低了直方图整体对计数值量程的需求,在有限的数组大小m*n下,提高了能够响应的信号动态范围。量化级数是手段,目的是减小所需的计数器量程,减小数据量。
28.其中,上述的底噪就是图8中越往右边越小的噪声,而尖峰是信号。图7和图8比,在横轴100位置,图7的噪声在250左右,信号在800左右,是可以显著分辨的。图8降低量化级数,噪声在接近100,信号在接近300,虽然噪声和信号的差异从800-250变成300-100,但是仍然是可以比较显著地识别出信号的。
29.在本实施例中,量化级数的最大压缩程度根据信号和噪声以及不同反射率目标反射回波计算得到。因为区间的分段和量化级数是存在依赖关系的,量化级数的制定要保证该区间内(指的任意同一量化级数的区间内。例如图8的左边标记3的一段)信号和噪声之间、以及不同反射率目标反射回波之间在压缩量化后要保证区分度。例如在该区间内,原始直方图噪声和低反目标间的最小计数值差距在64,而信号算法要求的分辨阈值在8,则该区间仅能采用不高于3级(64/8=8《=23)的量化压缩.在本实施例中,同一区间左端的噪声计数值低于最右端的最小回波信号叠加该区间噪声后的计数值。这是实现简单寻峰的关键。如图9所示,整个时间轴被分为整个多个等长或不等长的区间,每个区段采用了不同的量化级数,此时各区间的底噪计数值在相互接近的范围,信号峰的计数值在任何的时间片段内都显著高于噪声。
30.如此,通过以上办法,本技术采用量程在250以内的计数器量程就可以表征原来需要900以上计数器量程才能完整表征的测量系统直方图。
31.s20、当每个脉冲周期输入时间值信号时,将对应时间片段的累加器计数加1,直至多次测量累加器翻转清零后,将对应时间片段的直方图数组位计数加1;在本实施例中,每个脉冲周期的输入时间值信号的,先对对应时间片段的累加器 1,直到多次测量累加器翻转后,才在对应之间片段的直方图数组位 1,即有一个数组h[m,n]是直方图数组,m个时间片段分为几个不同区间对应不同的量化级数。
[0032]
如果以最简单的情况为例,把时间片段按一半一半分成两个区间。远距离对应的区间量化级数不压缩,近距离的压缩一倍。那么就是每收到一个时间信息的信号,如果信号落在远距离区间的第i个时间片段,那个就在h[m,n]上对应时间的h[i,]元素上加一,如果落在近距离区间的第j个时间片段,那个就要先在j个时间片段对应的长度为2的累加器上加一,再判断这个累加器是不是满了(等于2),再判断如果累加器满了才在h[j,]上加1然后清零累加器,等待下一个时间信号。
[0033]
s30、循环s20步骤,直至输入所有信号,完成直方图构建;如此,寻峰时不再受到时间轴前端噪声堆积的困扰(可以更加方便地找到峰值),直方图上简单寻峰的最大值,就是回波峰值位置,极大简化了为了对抗环境光干扰而设计的寻峰算法。
[0034]
s40、如图10所示,寻峰时,若峰位在任意边界的一半时间片段数量的范围内,则对该边界左右两边各时间片段数量范围内的直方图做量化归一化处理(将分属两个不同量化级数区间的数据分别还原成同样量化级数的数据),以还原局部直方图;再对该局部直方图进行寻峰,以定位峰位;其中,时间片段数量为当前信号峰的宽度。
[0035]
由于在实际使用中,会出现实际信号峰的包络正好跨越两个区间边界的情况,容易造成峰位的误判,所以还需要做出特殊处理。例如已知信号峰的宽度约为w个时间片段(100),在简单寻峰中,如果峰位在任意边界的为 /-w/2距离( /-50)内,则对该边界左右两边各一定范围(w)内的直方图做量化归一化(归一化就是把分属两个不同量化级数区间的数据分别还原成同样量化级数的数据。这样才不会出现寻峰错误),该范围要符合信号峰宽度并增加一定冗余。
[0036]
然后将边界左右两侧的局部直方图做量化级数的归一化,以便复原局部直方图,再对该局部直方图寻峰,确认峰位具体位置。
[0037]
比如图10中上图的阴影部分,左边的区间量化级数比右边小一倍。如果简单寻峰,就找到挨着区间边界位置,属于右边区间的那个最大值。但是如果把左边区间的数据乘以二,还原成和右边区间一样的量化级数,如图10中下图随时就可以看到,图10中上图上的最大值其实是在峰腰上,真正原始直方图的峰值是图10中上图的左区间内最大值对应的时间片段上。
[0038]
实施例二基于相同的构思,本技术还提出了一种tof直方图动态范围拓展装置,包括:输入模块,用于输入每个脉冲周期的信号;分段模块,用于将整个时间轴分段,形成多个区间,并设定每个区间对应的左右边界;分配模块,用于为每个区间分配对应不同的量化级数,每个区间包含多个时间片段,且同一区间内的每个时间片段均设有一同样大小的累加器;处理模块,用于当每个脉冲周期输入时间值信号时,将对应时间片段的累加器计数加1,直至多次测量累加器翻转清零后,将对应时间片段的直方图数组位计数加1;构建模块,用于循环处理模块的处理步骤,直至输入所有信号,完成直方图构建;还原模块,用于在寻峰时,若峰位在任意边界的一半时间片段数量的范围内,则对该边界左右两边各时间片段数量范围内的直方图做量化归一化处理,以还原局部直方图;寻峰模块,用于直方图和局部直方图进行寻峰,以定位峰位。
[0039]
实施例三本实施例还提供了一种电子装置,参考图11,包括存储器404和处理器402,该存储器404中存储有计算机程序,该处理器402被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
[0040]
具体地,上述处理器402可以包括中央处理器(cpu),或者特定集成电路(applicationspecificintegratedcircuit,简称为asic),或者可以被配置成实施本技术实施例的一个或多个集成电路。
[0041]
其中,存储器404可以包括用于数据或指令的大容量存储器404。举例来说而非限制,存储器404可包括硬盘驱动器(harddiskdrive,简称为hdd)、软盘驱动器、固态驱动器(solidstatedrive,简称为ssd)、闪存、光盘、磁光盘、磁带或通用串行总线(universalserialbus,简称为usb)驱动器或者两个或更多个这些的组合。在合适的情况下,存储器404可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器404可在数据处理装置的内部或外部。在特定实施例中,存储器404是非易失性(non-volatile)存储器。在特定实施例中,存储器404包括只读存储器(read-onlymemory,简称为rom)和随机存取存储器(randomaccessmemory,简称为ram)。在合适的情况下,该rom可以是掩模编程的rom、可编程rom(programmableread-onlymemory,简称为prom)、可擦除prom(erasableprogrammableread-onlymemory,简称为eprom)、电可擦除prom(electricallyerasableprogrammableread-onlymemory,简称为eeprom)、电可改写rom(electricallyalterableread-onlymemory,简称为earom)或闪存(flash)或者两个或更多个这些的组合。在合适的情况下,该ram可以是静态随机存取存储器(staticrandom-accessmemory,简称为sram)或动态随机存取存储器(dynamicrandomaccessmemory,简称为dram),其中,dram可以是快速页模式动态随机存取存储器404(fastpagemodedynamicrandomaccessmemory,简称为fpmdram)、扩展数据输出动态随机存取存储器(extendeddateoutdynamicrandomaccessmemory,简称为edodram)、同步动态随机存取内存(synchronousdynamicrandom-accessmemory,简称sdram)等。
[0042]
存储器404可以用来存储或者缓存需要处理和/或通信使用的各种数据文件,以及处理器402所执行的可能的计算机程序指令。
[0043]
处理器402通过读取并执行存储器404中存储的计算机程序指令,以实现上述实施例中的任意tof直方图动态范围拓展方法。
[0044]
可选地,上述电子装置还可以包括传输设备406以及输入输出设备408,其中,该传输设备406和上述处理器402连接,该输入输出设备408和上述处理器402连接。
[0045]
传输设备406可以用来经由一个网络接收或者发送数据。上述的网络具体实例可包括电子装置的通信供应商提供的有线或无线网络。在一个实例中,传输设备包括一个网络适配器(network interface controller,简称为nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备406可以为射频(radio frequency,简称为rf)模块,其用于通过无线方式与互联网进行通讯。
[0046]
输入输出设备408用于输入或输出信息。在本实施例中,输入的信息可以是信号等,输出的信息可以是峰位具体位置等。
[0047]
实施例四本实施例还提供了一种可读存储介质,可读存储介质中存储有计算机程序,计算机程序包括用于控制过程以执行过程的程序代码,过程包括根据实施例一的tof直方图动态范围拓展方法。
[0048]
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所
描述的示例,本实施例在此不再赘述。
[0049]
通常,各种实施例可以以硬件或专用电路、软件、逻辑或其任何组合来实现。本发明的一些方面可以以硬件来实现,而其他方面可以由控制器、微处理器或其他计算设备执行的固件或软件来实现,但是本发明不限于此。尽管本发明的各个方面可以被示出和描述为框图、流程图或使用一些其他图形表示,但是应当理解,作为非限制性示例,本文中描述的这些框、装置、系统、技术或方法可以以硬件、软件、固件、专用电路或逻辑、通用硬件或控制器或其他计算设备或其某种组合来实现。
[0050]
本发明的实施例可以由计算机软件来实现,该计算机软件由移动设备的数据处理器诸如在处理器实体中可执行,或者由硬件来实现,或者由软件和硬件的组合来实现。包括软件例程、小程序和/或宏的计算机软件或程序(也称为程序产品)可以存储在任何装置可读数据存储介质中,并且它们包括用于执行特定任务的程序指令。计算机程序产品可以包括当程序运行时被配置为执行实施例的一个或多个计算机可执行组件。一个或多个计算机可执行组件可以是至少一个软件代码或其一部分。另外,在这一点上,应当注意,如图中的逻辑流程的任何框可以表示程序步骤、或者互连的逻辑电路、框和功能、或者程序步骤和逻辑电路、框和功能的组合。软件可以存储在诸如存储器芯片或在处理器内实现的存储块等物理介质、诸如硬盘或软盘等磁性介质、以及诸如例如dvd及其数据变体、cd等光学介质上。物理介质是非瞬态介质。
[0051]
本领域的技术人员应该明白,以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0052]
以上实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术的保护范围应以所附权利要求为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献