dToF相机测距方法、系统、存储介质及dToF相机与流程

摘要: 本发明属于距离测量的,涉及一种dtof相机测距方法、系统、存储介质及dtof相机。背景技术:1、直接飞行时间(directtime-of-flight,dtof...
dToF相机测距方法、系统、存储介质及dToF相机与流程

本发明属于距离测量的,涉及一种dtof相机测距方法、系统、存储介质及dtof相机。

背景技术:

1、直接飞行时间(direct time-of-flight,dtof)主要采用单光子雪崩二极管(single-photon avalanche diode,spad)作为探测器,通过直接测量激光脉冲从发射到接收的飞行时间来探测距离,具有高测量精度以及强背景光抑制等优点,广泛应用在扫描建图、避障等应用场景中。

2、通常dtof相机单个深度测量像素叫宏像素(macro pixel)。一个macro pixel通常由多个spad组成,以达到较好的测距能力以及精度要求,但对于远距离以及强环境光下存在测远能力不足以及信噪比差的问题。多个宏像素累加成一个像素的方式也称为深度像素合并(binning)。通常为了达到更好的测远能力以及精度需求,通过binning方式将多个宏像素累加到一起进行测距,但是这种方式会带来深度分辨率下降以及对于物体边缘区域由于一个像素可能会存在前后景物体,会存在深度粘连等影响。

3、此外,现有技术中通过计算空间像素的点间的相关性决定是否对宏像素进行binning。由于通过检测相邻物体的直方图回波位置以及底噪水平,需要额外的缓存对直方图进行缓存以判断空间像素的相关性,导致需要较大的硬件资源代价,且容易造成深度信息的模糊,丢失高频信息,导致精度下降。

技术实现思路

1、本发明的目的在于提供一种dtof相机测距方法、系统、存储介质及dtof相机,能够有效提高dtof相机的深度分辨率和精度,减少硬件资源的开销。

2、第一方面,本发明提供一种dtof相机测距方法,所述方法包括以下步骤:获取每个spad的直方图;通过对多个spad的直方图累加计算,得到对应的宏像素的直方图;基于每个宏像素的直方图,计算得到每个宏像素的灰度值和底噪;基于当前宏像素的灰度值和底噪,计算当前宏像素和相邻两个宏像素的灰度值和底噪的差值绝对值,通过差值绝对值与权重的关系表,查找得到前一个宏像素的灰度权重为n1,底噪权重为n2,查找得到后一个宏像素的灰度权重为m1,底噪权重为m2,通过计算得到前一个宏像素权重w1为n1和n2的乘积,后一个宏像素的权重w3为m1和m2的乘积,当前宏像素的权重w2为1;将前一个宏像素的直方图与w1相乘的积、当前宏像素的直方图、后一个宏像素的直方图与w3相乘的积,三者相加,得到新的当前宏像素的直方图;基于新的当前宏像素的直方图,计算得到所述新的当前宏像素探测到的距离。

3、在第一方面的一种实现方式中,所述前一个宏像素,是指在当前宏像素的左边位置的、或上边位置的前一个宏像素;所述后一个宏像素,是指在当前宏像素的右边位置的、或下边位置的后一个宏像素。

4、在第一方面的一种实现方式中,通过对多个spad的直方图累加计算,得到一个宏像素的直方图,具体包括:

5、将3*3个spad的直方图累加计算,得到一个宏像素的直方图。

6、在第一方面的一种实现方式中,基于所述宏像素的直方图,计算得到每个所述宏像素的灰度值和底噪,具体包括:

7、基于所述宏像素的直方图,在整个时间箱范围内,将每个时间箱对应的灰度值进行累加,得到一个所述宏像素的灰度值;

8、基于所述宏像素的直方图,将整个时间箱划分为n段,在第i段时间箱范围内,将对应的灰度值进行累加,得到第i段时间箱的灰度值;

9、比较所述n段时间箱的灰度值,将最小的灰度值作为所述宏像素的底噪。

10、在第一方面的一种实现方式中,所述差值绝对值与权重的关系表包括灰度值权重表和底噪权重表;

11、所述灰度值权重表为:

12、

13、其中,是当前宏像素与前一个或后一个宏像素的灰度值的差值绝对值,是灰度值权重;

14、所述底噪权重表为:

15、

16、其中,是当前宏像素与前一个或后一个宏像素的底噪的差值绝对值,是底噪权重。

17、在第一方面的一种实现方式中,还包括对w1、w2、w3进行归一化,以基于归一化后的w1、w2、w3计算新的当前宏像素的直方图;其中对w1、w2、w3进行归一化,得到归一化后的前一个宏像素权重w1=w1/(w1+w2+w3);得到归一化后的当前宏像素权重w2=w2/(w1+w2+w3);得到归一化后的后一个宏像素权重w3=w3/(w1+w2+w3) ,其中w1+w2+w3=1,w2=1。

18、在第一方面的一种实现方式中,将前一个宏像素的直方图与w1相乘的积、当前宏像素的直方图、后一个宏像素的直方图与w3相乘的积,三者相加,得到新的当前宏像素的直方图,具体包括:

19、将前一个宏像素的直方图与w1相乘的积、当前宏像素的直方图与w2相乘的积、后一个宏像素的直方图与w3相乘的积,三者相加,得到新的当前宏像素的直方图。

20、在第一方面的一种实现方式中,如果相邻像素位于当前宏像素的上下位置,而当前宏像素在第一行,则前一个宏像素的权重w1为0;当前宏像素在最后一行,则后一个宏像素的权重w3为0;

21、如果相邻像素位于当前宏像素的左右位置,而当前宏像素在第一列,则前一个宏像素的权重w1为0;当前宏像素在最后一列,则后一个宏像素的权重w3为0。

22、在第一方面的一种实现方式中,所述基于新的当前宏像素的直方图,计算得到所述新的当前宏像素探测到的距离,具体包括:

23、基于新的当前宏像素的直方图,根据寻找最大峰值法或质心法,得到所述新的当前宏像素的深度值;

24、通过深度值,计算得到所述新的当前宏像素探测到的距离。

25、第二方面,本发明提供一种dtof相机测距系统,所述系统包括获取模块、第一计算模块、第二计算模块、第三计算模块、第四计算模块和测距模块;

26、所述获取模块用于获取每个spad的直方图;

27、所述第一计算模块用于通过对多个spad的直方图累加计算,得到对应的宏像素的直方图;

28、所述第二计算模块用于基于每个宏像素的直方图,计算得到每个宏像素的灰度值和底噪;

29、所述第三计算模块用于基于当前宏像素的灰度值和底噪,计算当前宏像素和相邻两个宏像素的灰度值和底噪的差值绝对值,通过差值绝对值与权重的关系表,查找得到前一个宏像素的灰度权重为n1,底噪权重为n2,查找得到后一个宏像素的灰度权重为m1,底噪权重为m2,通过计算得到前一个宏像素权重w1为n1和n2的乘积,后一个宏像素的权重w3为m1和m2的乘积,当前宏像素的权重w2为1;

30、所述第四计算模块用于将前一个宏像素的直方图与w1相乘的积、当前宏像素的直方图、后一个宏像素的直方图与w3相乘的积,三者相加,得到新的当前宏像素的直方图;

31、所述测距模块用于基于新的当前宏像素的直方图,计算得到所述新的当前宏像素探测到的距离。

32、第三方面,本发明提供一种dtof相机,所述dtof相机包括:处理器和存储器;

33、所述存储器用于存储计算机程序;

34、所述处理器用于执行所述存储器存储的计算机程序,以使所述dtof相机执行上述的dtof相机测距方法。

35、第四方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该程序被dtof相机执行时实现上述的dtof相机测距方法。

36、如上所述,本发明所述的dtof相机测距方法、系统、存储介质及dtof相机,具有以下有益效果:

37、(1)通过灰度图以及直方图底噪对相邻宏像素进行合并,在保证提高测远能力以及精度的同时,不会造成深度分辨率的降低;

38、(2)通过灰度图以及直方图底噪作为输入,在直方图寻峰之前决定了像素合并的权重,有效减少硬件资源的开销;

39、(3)基于灰度图以及直方图底噪的差异构建相邻像素的权重查找表,有效降低相邻像素融合后深度模糊问题。