本发明涉及计算机科学技术领域,特别是涉及一种获取高精度深度图像的方法及系统。
背景技术:
基于结构光的深度相机是目前较为普遍的一种测量物体深度的设备。由于结构光深度相机有着较高的分辨率以及深度图片采集帧数,利用深度相机实现人机交互被认为是下一代人机交互技术。此外,利用深度相机还可以实现3D扫描、机器人室内环境重建、避障等应用。
结构光深度相机能够获取高速深度视频,但随着测量距离增加,其测量精度会有较为明显的下降。主要原因是随着距离的增加,导致结构光图像的对比度急剧下降,在进行图像匹配计算时,精度下降明显。解决该问题的方法之一是提高结构光投影仪的功率,然而提高功率会对人体有影响,另外使得深度相机的功耗增加,散热问题难以解决,因而目前还没有被采用。
已有技术中,参考图像是预先采集的距离深度相机某一平面上的结构光图像,平面的选取一般由深度相机的测量范围来决定的。通常位于测量范围的近端,这样的设置导致了目标深度相机在近距离时精度较高,而远距离测量误差则较大。
技术实现要素:
为了解决深度相机测量精度随着距离增加而明显下降的问题,本发明提出一种获取深度图像的方法。
本发明的技术问题通过以下的技术方案予以解决:一种获取深度图像的方法,包括以下步骤:S1:利用深度相机在至少两个平面上分别获取一副结构光图像作为参考图像;S2:选取一幅参考图像,计算出第一深度图像;S3:根据第一深度图像深度值选取参考图像,计算出第二深度图像。
具体地,在步骤S2中,包括步骤:利用所述选取的一幅参考图像与第一结构光图像计算出第一深度图像。
具体地,在步骤S3中,包括步骤:利用所述选取的参考图像与第一结构光图像或第二结构光图像计算出所述第二深度图像,所述第一结构光图像与所述第二结构光图像在时间上是先后邻近的关系。
具体地,在步骤S3中,所述选取的参考图像所在平面的位置在所述第一深度图像深度值所属的深度区域内。
具体地,在步骤S1中,所述选取的一幅参考图像为距离所述深度相机最近的参考图像,。
具体地,在步骤S1中,所述平面处于所述深度相机的测量范围之内,相邻的所述平面之间的间距包括等距或不等距。
具体地,所述结构光图像的获取步骤包括:
S11:利用所述深度相机的激光投影仪向目标空间或平面投射结构光图案;
S12:利用所述深度相机的图像采集相机采集目标空间中或平面上所述结构光图像。
具体地,所述第一深度图像或第二深度图像深度值的计算步骤包括:
T1:利用匹配算法计算出第一结构光图像或第二结构光图像相对于参考图像各像素的偏离值Δ;
T2:根据以下公式计算出各像素的深度值得到深度图像:
其中,B是激光投影仪与图像采集相机之间的距离,Z0为参考图像离深度相机的距离值,f为图像采集相机镜头的焦距。
本发明还提供了一种采用上述任一所述的获取深度图像的方法的系统,其特征在于,包括:激光投影仪,用于向空间投影结构光图案;图像采集相机,用于采集参考图像以及目标空间结构光图像,所述参考图像是在至少两个平面上采集的结构光图像;处理器,用于获取深度图像。
具体地,激光投影仪为红外光源激光投影仪,所述红外光源为红外边发射激光器或红外垂直腔面激光发射器,所述图像采集相机为红外相机,所述结构光图像为散斑颗粒图像。
本发明与现有技术对比的有益效果包括:在获取第一深度图像的基础上重新选取参考图像获取第二深度图像,减小了深度测量误差,提高了深度相机的测量精度,深度相机的测量精度随着距离的增加不会出现明显下降的情况。采用第二结构光图像计算第二深度图像,将第一深度图像重新选取的参考图像作为第二结构光图像对应的参考图像,减少了计算量,在保证测量精度高的同时,提高了深度图像的获取速度。
附图说明
图1是本发明提供的实施例1中获取深度图像的方法流程图。
图2是本发明提供的实施例2获取深度图像的方法流程图。
图3是本发明提供的示意图。
图4是本发明提供的实施例3中获取深度图像的系统示意图。
具体实施方式
下面对照附图并结合优选的实施方式对本发明作进一步说明。
以下将结合附图及具体实施例进行进一步说明。
需要说明的是,根据选取的平面划分出对应的深度区域,参考平面1对应深度区域a,参考平面2对应深度区域b,以此类推。第一结构光图像与第二结构光图像在时间上是先后邻近的结构光图像。
实施例1
一种获取深度图像的方法,如图1所示,包括以下步骤:
S1:利用深度相机在至少两个平面上分别获取一副结构光图像作为参考图像
Ri(i=1,...,n);
S2:选取一幅参考图像,计算出第一深度图像;
S3:根据第一深度图像深度值选取参考图像,计算出第二深度图像。
在本实施例中,步骤S2还包括:利用所述选取的一幅参考图像与第一结构光图像计算出第一深度图像。
在本实施例中,步骤S3还包括:利用所述选取的参考图像与第一结构光图像或第二结构光图像计算出所述第二深度图像,所述第一结构光图像与所述第二结构光图像在时间上是先后邻近的关系。
在本实施例中,步骤S3中,所述选取的参考图像所在平面与所述第一深度图像深度值对应。
在本实施例中,步骤S1中,所述选取的一幅参考图像为距离所述深度相机最近的参考图像。
在本实施例中,步骤S1中,所述平面处于所述深度相机的测量范围之内,相邻的所述平面之间的间距为等距,在某些实施例中也可以为不等距。
在本实施例中,所述结构光图像的获取步骤包括:
S11:利用所述深度相机的激光投影仪向目标空间或平面投射结构光图案;
S12:利用所述深度相机的图像采集相机采集目标空间或平面上所述结构光图像。
在本实施例中,所述第一深度图像或第二深度图像深度值的计算步骤包括:T1:利用匹配算法计算出第一结构光图像或第二结构光图像相对于参考图像各像素的偏离值Δ;
T2:根据以下公式计算出各像素的深度值得到深度图像:
在平面距离的选取上,在深度测量范围内可以每隔一个距离选取,总共选取3个等距的平面,在某些实施例中也可以进行不等距选取。
本实施例中,测量范围是0.6~6m,平面位置分别在0.9m、2.7m、4.5m处。
需要说明的是,由于距离越近参考图像对比度会越高,因而由参考图像带来的误差会较小,而距离越远则误差越大。因而平面之间的间隔距离可以随着距离的增加而减小,即平面距离深度相机越远则越密集。
具体地,参考图像的采集包括以下步骤:
D1:利用深度相机的激光投影仪向目标空间投射结构光图像;
D2:分别在空间中距离深度相机已知距离放置至少两个平面;
D3:利用深度相机的图像采集相机依次在各个平面上获取一幅结构光图像,并将其作为参考图像。
需要说明的是,由步骤S2得到的第一深度图像中,目标区域中靠近参考平面的物体所对应像素值将会具有更高的精度。在本实施例中,以参考平面1获取的结构光图像作为参考图像,位于区域1中的物体的深度信息精度将较高。主要原因是由于随着距离的增加,结构光图像的对比度下降,与参考图像会产生较大的差别,在进行偏离值计算时会存在较大的计算误差。
在本实施例中,由步骤S2得到的第一深度图像中,深度值距离参考平面距离相近时,深度值的精度较高。对于其它像素的深度值则误差较大,为了减少该误差,将采取以下步骤获取高精度的深度图像:
S31:根据第一深度图像中各个像素的深度值,选取与该深度值对应的参考图像;
S32:利用选取的参考图像计算出当前目标区域的第二深度图像。
需要说明的是,在本实施例中,针对第一深度图像中各像素对应的深度值,选取与各深度值距离最近的参考平面,并以该参考平面对应的参考图像作为该像素计算深度值时选用的参考图像。
在本实施例中,在S1步骤中根据选取的平面划分出对应的深度区域,参考平面1对应深度区域a,参考平面2对应深度区域b,以此类推。在本实施例中,若第一深度图像是依据参考图像1所计算得到的,那么第一深度图像中,深度值位于深度区域b、c的深度值则在本步骤中将选取参考图像2及参考图像3。
在本实施例中,步骤S31中所述深度值位于深度区域b、c的第一结构光图像的各个像素,将会根据步骤S2所述的算法进行深度值计算,由于所选取的参考图像距离实际的深度值相近,因而精度将得到提升。深度值位于深度区域1的像素则无需再进行一次额外的计算。
具体地,如图3所示,当前目标空间中的人物、沙发以及相框分别处在不同的距离上,分别对应于深度区域a、b、c。
首先,根据参考平面1对应的参考图像获取当前目标空间的第一深度图像,根据第一深度图像可以判断出人物位于距离参考平面1较近的深度区域a,因而人物的深度信息将较为精确。
其次,根据第一深度图像可以判断出沙发以及相框分别位于深度区域b、c。
最后,分别利用参考图像2及3分别对沙发以及相框的深度值进行重新计算,得到第二深度图像。
实施例2
本实施例获取深度图像的方法,如图2所示,与实施例1的区别在于第二深度图像的获取还需要利用到第二结构光图像。
需要说明的是,实施例1中所示的深度图像方法可以看成是两个步骤,一是深度图像的初步获取,二是对深度图像的修正。在实际使用中,考虑到深度视频的输出帧数,而实施例1的方法在是原有方法上增加了修正的步骤,导致第一帧的计算量增加,输出的帧率会下降。在本实施例所示的方法将会保证输出帧率不变的情况下减小深度测量误差,提高精度。主要思想是利用相邻帧对应的目标区域深度值变化不明显的特征。即将上一帧获取的深度图像作为下一帧中各像素对应的参考图像选取的依据,接下来结合图3进行说明。
本实施例获取深度图像的方法,包括以下步骤:
首先,获取第一帧结构光图像(即第一结构光图像),结合参考平面1对应的参考图像,可以计算出当前目标空间的第一深度图像,将该帧深度图像作为下一帧深度图像的粗略深度估计的参照对象。
其次,获取第二帧结构光图像(即第二结构光图像),根据第一深度图像可以判断出人物位于距离参考平面1较近的深度区域a,沙发以及相框分别位于深度区域b、c。
最后,对第二结构光图像中各像素及其对应的参考图像计算出第二深度图像。
实施例3
一种获取深度图像的系统,如图4所示,包括:激光投影仪1,用于向空间投影结构光图案;图像采集相机2,用于采集参考图像以及目标空间结构光图像,所述参考图像是在至少两个平面上获取的结构光图像;处理器3,用于获取深度图像。
具体地,激光投影仪1为红外光源激光投影仪,所述红外光源包括红外边发射激光器或红外垂直腔面激光发射器,所述图像采集相机2为红外相机,所述结构光图像为散斑颗粒图像。
本发明所述方法与系统主要针对基于结构光技术的深度相机,结构光技术的深度相机包含激光投影仪以及图像采集相机,具体地,激光投影仪为红外投影仪,用于向目标空间投射红外结构光散斑图案;图像采集相机则为红外相机,用于采集带有结构光图案的红外图像。该深度相机还包括处理器,将采集到的结构光图像与系统中存储的参考图像进行相关计算获取偏离值,再通过三角测量原理利用偏离值就可以获取目标空间的深度图像。
需要说明的是,参考图像是预先采集的距离深度相机某一平面上的结构光图像,平面的选取一般由深度相机的测量范围来决定的。通常位于测量范围的近端,这样的设置导致了目标深度相机在近距离时精度较高,而远距离测量误差则较大。在本实施例中,将通过采集处在不同距离的多个平面上的多幅参考图像,首先选取其中一幅作为参考图像进行深度计算,得到深度图像之后,根据深度信息再重新选取参考图像进行深度信息更新计算,从而得到更高精度的深度图像。