一种结构光测距方法、装置及计算机可读存储介质与流程

文档序号:18664919发布日期:2019-09-13 19:58阅读:112来源:国知局
一种结构光测距方法、装置及计算机可读存储介质与流程

本发明涉及测距技术领域,尤其涉及一种结构光测距方法、装置及计算机可读存储介质。



背景技术:

目前,在一些汽车倒车监控、或3d重建等场景中,常常采用多个深度相机(例如结构光深度相机)进行拍摄图像,然后将多个相机拍摄的图像进行拼接处理以得到全景图像。具体地是,获取至少两个深度相机中的每一深度相机采集的包括深度信息和可见光的图像信息;根据每一深度相机采集的图像信息拼接全景深度图。

然而,目前结构光深度相机也面临着重大的考验,由于环境光的强度与投影出的结构光图像强度相当甚至会超过结构光图像强度,因而会严重影响采集到的结构光图像的准确度,进而影响深度图像的计算。与此同时,相邻设置的深度相机之间也会对彼此结构光图像的采集产生影响,从而可能会影响后续的深度计算。



技术实现要素:

本发明为了解决现有的问题,提供一种结构光测距方法、装置及计算机可读存储介质。

为了解决上述问题,本发明采用的技术方案如下所述:

一种结构光测距方法,包括如下步骤:以预设投影频率和采集频率,向待测空间投射结构光并采集多帧图像,所述多帧图像至少包括第一图像和第二图像,所述第一图像包括环境光信息,所述第二图像包括环境光信息和结构光信息;将所述第一图像像素的第一灰度值与所述第二图像像素的第二灰度值进行比较;当所述第一灰度值大于或等于所述第二灰度值时,将所述第二图像像素与所述第一图像像素进行差分处理并获取差值,同时将所述差值作为当前第二图像像素的灰度值;当所述第一灰度值小于所述第二灰度值时,将所述第二灰度值作为所述当前第二图像像素的灰度值;计算所述当前第二图像的深度信息。

在本发明的一种实施例中,结构光测距方法还包括步骤:遍历并计算所述第一图像各个像素的多个第一灰度值与所述第二图像同一像素的多个第二灰度值,并将所述多个第一灰度值与所述多个对应的第二灰度值逐个进行比较;进一步的,还包括步骤:将所述第一灰度值和/或所述第二灰度值与预设第一灰度值阈值进行比较;当所述第一灰度值和/或所述第二灰度值大于所述第一灰度值阈值时,对当前采集的图像进行负曝光补偿;在进一步的,还包括步骤:将所述第一灰度值和/或所述第二灰度值与预设第二灰度值阈值进行比较;当所述第一灰度值和/或所述第二灰度值小于所述预设第二灰度值阈值时,对当前采集的图像进行正曝光补偿;其中,所述投影频率与所述采集频率比值范围包括[1/2,1)。

本发明还提供一种结构光测距装置,包括:投影模组:以预设投影频率向待测空间投射多帧图像,其中,所述多帧图像至少包括第一图像和第二图像,所述第一图像包括环境光信息,所述第二图像包括环境光信息和结构光信息;采集模组:以预设采集频率采集所述多帧图像;处理器:分别与所述投影模组和所述采集模组连接,用于控制所述投影模组和所述采集模组的正常工作,以及用于接收所述第一图像与所述第二图像,并将所述第一图像像素的第一灰度值与所述第二图像像素的第二灰度值进行比较;用于当所述第一灰度值大于或等于所述第二灰度值时,将所述第二图像像素与所述第一图像像素进行差分处理并获取差值,同时将所述差值作为当前第二图像像素的灰度值;当所述第一灰度值小于所述第二灰度值时,将所述第二灰度值作为所述当前第二图像像素的灰度值;用于计算所述当前第二图像的深度信息。

在本发明的一种实施例中,所述处理器还用于遍历并计算所述第一图像各个像素的多个第一灰度值与所述第二图像同一像素的多个第二灰度值,并将所述多个第一灰度值与所述多个对应的第二灰度值逐个进行比较;所述处理器还用于将所述第一灰度值和/或所述第二灰度值与预设第一灰度值阈值进行比较;当所述第一灰度值和/或所述第二灰度值大于所述第一灰度值阈值时,对当前采集的图像进行负曝光补偿。所述处理器还用于将所述第一灰度值和/或所述第二灰度值与预设第二灰度值阈值进行比较;当所述第一灰度值和/或所述第二灰度值小于所述预设第二灰度值阈值时,对当前采集的图像进行正曝光补偿。

本发明又提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上任一所述方法的步骤。

本发明的有益效果为:提供一种结构光测距方法、装置及计算机可读存储介质,通过对投影频率和采集频率进行控制,二者不再一一对应,使得采集的多帧图像中至少包括第一图像和第二图像,其中第一图像仅包含环境光信息,第二图像则包含环境光信息和结构光信息,通过对第一图像和第二图像进行对比分析,从而可以有效去除环境光的影响,提高了采集的结构光图像的精度,进而可以测量到较精确的深度值。

附图说明

图1是本发明实施例提供的结构光测距装置的结构示意图。

图2是本发明实施例提供的结构光测距方法的流程示意图。

其中,10-结构光测距装置,100-投影模组,110-采集模组,120-处理器。

具体实施方式

为了使本发明实施例所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

需要说明的是,当元件被称为“固定于”或“设置于”另一个元件,它可以直接在另一个元件上或者间接在该另一个元件上。当一个元件被称为是“连接于”另一个元件,它可以是直接连接到另一个元件或间接连接至该另一个元件上。另外,连接即可以是用于固定作用也可以是用于电路连通作用。

需要理解的是,术语“长度”、“宽度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明实施例和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多该特征。在本发明实施例的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

图1为本实施例提供的一种结构光测距装置10的结构示意图,如图所示,包括投影模组100、采集模组110,以及分别与所述投影模组100和所述采集模组110连接的处理器120。

其中,投影模组100在处理器120的控制下以预设投影频率f1向待测空间投射多帧图像,其中,所述多帧图像至少包括第一图像i1和第二图像i2,所述第一图像包括环境光信息,所述第二图像包括环境光信息和结构光信息。

在一个实施例中,投影模组100包括:光源(未示出),用于发射结构光光束;衍射光学元件(未示出),用于接收所述结构光光束并向所述待测空间投射结构光图像。其中,在一个投影周期1/f1(t1)内,光源具有预定的点亮时段t11和关闭时段t12(t1=t11+t12),光源在关闭时段t12内不会投射结构光,在点亮时段t11内可以向待测空间投射结构光。可以理解的是,光源在处理器120的控制下被点亮或关闭。

可以理解的是,投影模组100可以支持不同类型光源产生的结构光模式,如可见光、红外、紫外、不可见光等,也支持不同图案组成的编码投射方案,如散斑状、块状、十字状、条纹状、特定符号等图案。

采集模组110在处理器120的控制下以预设采集频率f2(帧周期1/f2(t2))同步或异步采集所述多帧图像并将其传输给处理器120。其中,在光源被点亮时段t11内,采集模组110采集第二图像i2,其中第二图像i2包含投影模组100投影的结构光信息以及环境光信息。在光源被关闭时段t12内,采集模组110采集第一图像i1,第一图像i1包含环境光信息。为了使得采集模组110采集到足够多的结构光光束,光源的点亮时段t11、关闭时段t12至少应该大于或等于采集摸组110的帧周期t2。可以理解的是,采集模组110在采集第一图像i1和第二图像i2时应设置相同的曝光参数,以避免采集模组110本身对采集图像的亮度造成影响。曝光参数包括快门速度、光圈数和/或感光度等。

采集模组110可以是相机,例如,在一个实施例中,当投影模组110投影出红外散斑图像时,采集模组110可以是红外相机。可以理解的是,采集模组110采集的光束的频率应该与投影模组100投影的光束的频率相等,当两者不相等时,可以在采集模组110上增加相应的滤光片(例如红外滤光片等)以允许投影模组100投影的光束通过。

在一个实施例中,投影模组100的投影频率f1与采集模组110的采集频率f2的比值范围为:1/2≤f1/f2<1。例如,投影模组100的投影频率f1为采集模组110的采集频率f2的一半(f1/f2=1/2),投影频率f1为30fps(framepersecond,每秒显示帧数),采集频率f2即为60fps。在采集模组110采集到的图像中,第一图像i1包含环境光信息,第二图像i2至少包含环境光信息和投影模组100投影的结构光信息。再如,投影频率f1也可以大于采集频率f2的一半,考虑投影频率f1为40fps,采集频率f2为60fps。在采集模组110采集到的图像中,i1对应环境光图像,i2和i3对应包含环境光的结构光图像,此时第二图像i2和第三图像i3中的结构光图像分别为i20=i2-i1,i30=i3-i1。这里将第一帧的环境光信息作为连续两帧图像中的环境光信息来考虑,可以有效提升深度图像的帧率。当然,投影频率f1和采集频率f2也可以为其他值,并不仅限于上述的情形,即在投影频率和采集频率下获取包含环境光信息的图像和包含环境光的结构光图像。

处理器120分别与所述投影模组100和所述采集模组110连接,用于控制所述投影模组100和所述采集模组110的正常工作,且接收所述第一图像i1与所述第二图像i2。理想情况下,第一图像i1仅包含环境光信息ib,此时i1=ib;第二图像中仅包含投影模组100投影的结构光信息is以及环境光信息,此时i2=ib+is。此时,要得到仅包含投影模组100投影的结构光信息is,只需要将第二图像与第一图像进行差分处理,即i2—i1=(ib+is)—ib=is,就可以实现上述目的。

然而,在实际情况下,对于存在多个结构光深度相机同时应用时,第一图像i1和第二图像i2都可能包含其他相机投影的结构光光束is1,即存在如下几种情形:

a:在投影模组110关闭和打开的期间,其它相机都投影出结构光光束is1,此时,i1=ib+is1,i2=ib+is+is1,此时将第二图像与第一图像进行差分处理,即i2—i1=(b+is+is1)—(ib+is1)=is,可以得到仅包含投影模组100投影的结构光信息;

b:在投影模组110关闭和打开的期间,其它相机未投影出结构光光束,此时即为前面所述的理想情况,第一图像i1仅包含环境光信息,即i1=ib,第二图像中仅包含投影模组100投影的结构光信息is以及环境光信息,即i2=ib+is;此时,要得到仅包含投影模组100投影的结构光信息is,只需要将第二图像与第一图像进行差分处理,即i2—i1=(ib+is)—ib=is;

c:在投影模组110关闭期间,其它相机投影出结构光光束is1,在投影模组110点亮期间,其它相机未投影出结构光光束,此时,第一图像i1包括环境光信息和其它相机投影出结构光光束is1,即i1=ib+is1;第二图像中仅包含投影模组100投影的结构光信息(is)以及环境光信息,即i2=ib+is,此时将第二图像与第一图像进行差分处理,即i2—i1=(ib+is)—(ib+is1)=is—is1,无法得到仅包含投影模组100投影的结构光信息;

d:在投影模组110关闭期间,其它相机未投影出结构光光束,在投影模组110点亮期间,其它相机投影出结构光光束is1,此时,第一图像i1仅包含环境光信息ib,即i1=ib;第二图像中包含投影模组100投影的结构光信息is、环境光信息以及其它相机投影出结构光光束is1,即i2=ib+is+is1,此时将第二图像与第一图像进行差分处理,即i2—i1=(ib+is+is1)—(ib)=is+is1,也无法得到仅包含投影模组100投影的结构光信息;

由上述a-d情形可知,在将上述叙述的情况c中,若其它相机投影的结构光光束与投影模组110投影的结构光光束的强度相等时,直接将第二图像与第一图像进行差分处理,可能会出现差值为0的情况,进而无法计算后续的深度值。

因此,本发明提供一种解决方法,即在处理器120在接收了上述第一图像与第二图像之后,将所述第一图像像素的第一灰度值与所述第二图像像素的第二灰度值进行比较。可以理解的是,每个图像都包含多个像素,因此处理器120还用于遍历并计算所述第一图像各个像素的多个第一灰度值与所述第二图像同一像素的多个第二灰度值,并将所述多个第一灰度值与所述多个对应的第二灰度值逐个进行比较。

当所述第一灰度值大于或等于所述第二灰度值时,将所述第二图像像素与所述第一图像像素进行差分处理并获取差值,同时将所述差值作为当前第二图像像素的灰度值,即此时,ic2=i2-i1;当所述第一灰度值小于所述第二灰度值时,将所述第二灰度值作为所述当前第二图像像素的灰度值,即ic2=i2,其中ic2代表当前的第二图像。

可以理解的是,如果投影模组110投影的为不可见光结构光图像,例如,在一个实施例中,当投影模组110投影出红外散斑图像时,采集模组110采集到的图像就是灰度图像(8位灰度图像),它的像素值就是它的灰度值。如果投影模组投影的是可见光结构光图像,例如是彩色结构光图像,则它的灰度值需要经过函数映射来得到。可以理解的是,灰度图像是由纯黑和纯白来过渡得到的,在黑色中加入白色就得到灰色,纯黑和纯白按不同的比例来混合就得到不同的灰度值。

处理器120在对第二图像i2进行上述处理后,可获取比较精确的结构光图像,即为当前的第二图像ic2。可以理解的是,结构光图像的每个像素点的灰度值可用于表征场景中某一点距离采集模组110的远近。因此,处理器120还可以进一步根据所述当前的第二图像ic2计算深度信息。获取深度信息的原理是将采集到的不可见光图像与系统中存取的参考图像进行匹配计算获取像素偏离值,再通过三角测量原理利用像素偏离值与实际深度值的一一对应关系就可以获取目标空间的深度图像。这里的参考图像是通过采集距离采集模组110已知深度值的平面上的不可见光图像而获取的。处理器120还包括存储器,用于存储参考图像以及采集的图像。

可以理解的是,在一个实施例中,在采集模组110采集第一图像和第二图像的过程中,都可能受到其它深度相机投影的结构光束的影响,因此,第一图像与第二图像都可能出现过曝的现象。因此处理器120可以将第一图像的灰度值(所有像素灰度值的平均值)和第二图像的灰度值((所有像素灰度值的平均值))与预设第一灰度值阈值(例如可以设为180)进行比较,当第一图像和/或第二图像的灰度值大于所述预设第一灰度值阈值时,对当前采集的图像进行负向曝光补偿(例如-1ev),具体的,可通过调整采集模组110的曝光参数:例如通过降低光圈值和/或提高快门速度等方法,将当前图像的曝光量调小(曝光值ev+1)。

可以理解的是,在采集模组110采集第一图像和第二图像的过程中,也有可能出现欠曝光的现象,此时处理器因此处理器120可以将第一图像的灰度值(所有像素灰度值的平均值)与第二图像的灰度值(所有像素灰度值的平均值)与第二预设灰度值阈值(例如可以设为50)进行比较,当第一图像和/或第二图像的灰度值小于上述所述第二预设灰度值阈值时,对当前采集的图像进行正向曝光补偿(例如+1ev),具体的,可通过调整采集模组110的曝光参数:例如,可以通过增加光圈值和/或降低快门速度等方法,将当前图像的曝光量调大(例如曝光值ev-1)。

需要说明的是,ev是反映曝光多少的一个量,其最初定义为:当感光度为iso100、光圈系数为f1、曝光时间为1秒时,曝光量定义为0,曝光量减少一档(快门时间减少一半或者光圈缩小一档),ev值增加1。曝光值每增加1将改变一挡曝光,也就是将曝光量减半,比如将曝光时间或光圈面积减半。明亮的环境或是较高的感光度应当对应于较大的曝光值。

上述结构光测距装置通过对投影频率和采集频率进行控制,二者不再一一对应,使得采集的多帧图像中至少包括第一图像和第二图像,其中第一图像仅包含环境光信息,第二图像则包含环境光信息和结构光信息,通过对第一图像和第二图像进行对比分析,从而可以有效去除环境光的影响,提高了采集的结构光图像的精度,进而可以测量到较精确的深度值。

参阅图2,本发明还提供一种结构光测距方法,包括如下步骤:

s210:以预设投影频率和预设采集频率向待测空间投射结构光并采集图像,所述图像至少包括第一图像和第二图像,所述第一图像包括环境光信息,所述第二图像包括环境光信息和结构光信息;

s220:将所述第一图像像素的第一灰度值与所述第二图像像素的第二灰度值进行比较;

s230:当所述第一灰度值大于或等于所述第二灰度值时,将所述第二图像像素与所述第一图像像素进行差分处理并获取差值,将所述差值作为当前第二图像像素的灰度值;当所述第一灰度值小于所述第二灰度值时,将所述第二灰度值作为所述当前第二图像像素的灰度值;

s240:计算所述当前第二图像的深度信息。

可以理解的是,上述实施方式中各种方法的全部或部分功能可以通过硬件的方式实现,也可以通过计算机程序的方式实现。因此本发明还提供一种非易失性计算机可读存储介质,当上述实施方式中全部或部分功能通过计算机程序的方式实现时,该程序可以存储于一非易失性计算机可读存储介质中,其可包括:只读存储器、随机存储器、磁盘、光盘、硬盘等,通过计算机执行该程序以实现上述功能。例如,将程序存储在设备的存储器中,当通过处理器执行存储器中程序,即可实现上述全部或部分功能。另外,当上述实施方式中全部或部分功能通过计算机程序的方式实现以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。

以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的技术人员来说,在不脱离本发明构思的前提下,还可以做出若干等同替代或明显变型,而且性能或用途相同,都应当视为属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1