数据处理方法和装置、电子设备和计算机存储介质与流程

文档序号:17997597发布日期:2019-06-22 01:24阅读:137来源:国知局
数据处理方法和装置、电子设备和计算机存储介质与流程

本申请涉及计算机视觉技术,尤其是一种数据处理方法和装置、电子设备和计算机存储介质。



背景技术:

双目立体匹配是计算机视觉技术一个非常热门的研究领域,在深度估计、身份认证、图像虚化和三维重建等领域应用非常广泛。双目立体匹配通常是以左右视图的匹配代价计算作为基础得到最后的视差图,其中,匹配代价计算主要是用来确定左右视图中匹配像素与待匹配像素之间的相关性,因此匹配代价计算的结果将影响双目立体匹配的精度。

然而,现有的匹配代价计算方式难以全面反映匹配像素与待匹配像素之间的相关性,相关性的表达能力不足,使得双目立体匹配的精度的提高受到限制。



技术实现要素:

本申请实施例提供一种数据处理的技术方案。

根据本申请实施例的一个方面,提供一种数据处理方法,包括:

根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据,其中,所述多维度匹配代价数据是基于至少二种方式确定的匹配代价数据得到的;

基于所述多维度匹配代价数据,生成所述至再少二个视图图像的视差图。

可选地,在本申请上述方法实施例中,所述根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据,包括:

对所述至少二个视图图像进行处理,得到其中每个视图图像的特征数据;

根据所述至少二个视图图像的特征数据,得到所述多维度匹配代价数据。

可选地,在本申请上述任一方法实施例中,所述根据所述至少二个视图图像的特征数据,得到所述多维度匹配代价数据,包括:

根据所述至少二个视图图像的特征数据,分别通过至少二种方式确定对应的匹配代价数据,得到不同维度的匹配代价数据;

对所述不同维度的匹配代价数据进行融合,得到所述多维度匹配代价数据。

可选地,在本申请上述任一方法实施例中,所述对所述不同维度的匹配代价数据进行融合,得到所述多维度匹配代价数据之前,还包括:

基于每个像素的邻域中的像素的相关性,对所述不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合;

所述对所述不同维度的匹配代价数据进行融合,得到所述多维度匹配代价数据,包括:

对所述整合后的不同维度的匹配代价数据价进行融合,得到所述多维度匹配代价数据。

可选地,在本申请上述任一方法实施例中,所述基于每个像素的邻域中的像素的相关性,对所述不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合,包括:

通过多分支神经网络中的各分支分别对所述不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合。

可选地,在本申请上述任一方法实施例中,所述对所述不同维度的匹配代价数据进行融合,得到所述多维度匹配代价数据,包括:

对所述不同维度的匹配代价数据基于通道进行叠加,得到所述多维度匹配代价数据。

可选地,在本申请上述任一方法实施例中,所述对所述至少二个视图图像进行处理,得到其中每个视图图像的特征数据,包括:

通过第一神经网络分别对所述至少二个视图图像进行处理,得到其中每个视图图像的特征数据。

可选地,在本申请上述任一方法实施例中,所述基于所述多维度匹配代价数据,生成所述至少二个视图图像的视差图,包括:

基于所述多维度匹配代价数据,通过第二神经网络生成所述至少二个视图图像的视差图。

可选地,在本申请上述任一方法实施例中,所述根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据之前,还包括:

采集所述关于同一场景不同视角的至少二个视图图像。

可选地,在本申请上述任一方法实施例中,所述关于同一场景不同视角的至少二个视图图像包括:左视图图像和右视图图像,或,上视图图像和下视图图像。

可选地,在本申请上述任一方法实施例中,确定匹配代价数据的方式包括基于滑窗结合的方式、二阶点乘方式、一维相关系数方式和神经网络方式中的至少二种。

根据本申请实施例的另一个方面,提供一种数据处理装置,包括:

匹配代价计算模块,用于根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据,其中,所述多维度匹配代价数据是基于至少二种方式确定的匹配代价数据得到的;

视差图生成模块,用于基于所述多维度匹配代价数据,生成所述至再少二个视图图像的视差图。

可选地,在本申请上述装置实施例中,所述匹配代价计算模块包括:

特征数据获取单元,用于对所述至少二个视图图像进行处理,得到其中每个视图图像的特征数据;

匹配代价计算单元,用于根据所述至少二个视图图像的特征数据,得到所述多维度匹配代价数据。

可选地,在本申请上述任一装置实施例中,所述匹配代价计算单元包括:

匹配代价计算子单元,用于根据所述至少二个视图图像的特征数据,分别通过至少二种方式确定对应的匹配代价数据,得到不同维度的匹配代价数据;

匹配代价融合子单元,用于对所述不同维度的匹配代价数据进行融合,得到所述多维度匹配代价数据。

可选地,在本申请上述任一装置实施例中,还包括:

匹配代价整合子单元,用于基于每个像素的邻域中的像素的相关性,对所述不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合;

所述匹配代价融合子单元,用于对所述整合后的不同维度的匹配代价数据价进行融合,得到所述多维度匹配代价数据。

可选地,在本申请上述任一装置实施例中,所述匹配代价整合子单元,用于通过多分支神经网络中的各分支分别对所述不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合。

可选地,在本申请上述任一装置实施例中,所述匹配代价融合子单元,用于对所述不同维度的匹配代价数据基于通道进行叠加,得到所述多维度匹配代价数据。

可选地,在本申请上述任一装置实施例中,所述特征数据获取单元,用于通过第一神经网络分别对所述至少二个视图图像进行处理,得到其中每个视图图像的特征数据。

可选地,在本申请上述任一装置实施例中,所述视差图生成模块,用于基于所述多维度匹配代价数据,通过第二神经网络生成所述至少二个视图图像的视差图。

可选地,在本申请上述任一装置实施例中,还包括:

至少二个图像采集模块,用于分别采集所述关于同一场景不同视角的至少二个视图图像。

可选地,在本申请上述任一装置实施例中,所述关于同一场景不同视角的至少二个视图图像包括:左视图图像和右视图图像,或,上视图图像和下视图图像。

可选地,在本申请上述任一装置实施例中,确定匹配代价数据的方式包括基于滑窗结合的方式、二阶点乘方式、一维相关系数方式和神经网络方式中的至少二种。

根据本申请实施例的再一个方面,提供的一种电子设备,包括上述任一实施例所述的装置。

根据本申请实施例的再一个方面,提供的一种电子设备,包括:

存储器,用于存储可执行指令;以及

处理器,用于执行所述可执行指令从而完成上述任一实施例所述的方法。

根据本申请实施例的再一个方面,提供的一种计算机程序,包括计算机可读代码,当所述计算机可读代码在设备上运行时,所述设备中的处理器执行用于实现上述任一实施例所述方法的指令。

根据本申请实施例的再一个方面,提供的一种计算机存储介质,用于存储计算机可读指令,所述指令被执行时实现上述任一实施例所述的方法。

基于本申请上述实施例提供的数据处理方法和装置、电子设备和计算机存储介质,通过根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据,并基于多维度匹配代价数据,生成至少二个视图图像的视差图,利用由基于至少二种方式确定的匹配代价数据得到的多维度匹配代价数据,可以更加全面的反映至少二个视图图像中匹配像素与待匹配像素之间的相关性,极大地增强相关性的表达能力,当应用于双目立体匹配时,可以提高双目立体匹配的精度。

下面通过附图和实施例,对本申请的技术方案做进一步的详细描述。

附图说明

构成说明书的一部分的附图描述了本申请的实施例,并且连同描述一起用于解释本申请的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本申请,其中:

图1为本申请一些实施例的数据处理方法的流程图;

图2为本申请一些实施例根据至少二个视图图像确定多维度匹配代价数据的流程图;

图3为本申请一些实施例根据特征数据得到多维度匹配代价数据的流程图;

图4为本申请一些实施例对至少二个视图图像进行处理得到其中每个视图图像的特征数据的示意图;

图5为本申请一些实施例对不同维度的匹配代价数据进行融合得到多维度匹配代价数据的示意图;

图6为本申请一些实施例的数据处理装置的结构示意图;

图7为本申请一些实施例的匹配代价计算模块的结构示意图;

图8为本申请一些实施例的匹配代价计算单元的结构示意图;

图9为本申请另一些实施例的匹配代价计算单元的结构示意图;

图10为本申请一些实施例提供的电子设备的结构示意图。

具体实施方式

现在将参照附图来详细描述本申请的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本申请的范围。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本申请及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

本申请实施例可以应用于计算机系统/服务器,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与计算机系统/服务器一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。

计算机系统/服务器可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、第三程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。

图1为本申请一些实施例的数据处理方法的流程图。该方法可以由终端设备或服务器执行,例如:照相机、摄像机、手机、平板电脑、车载电脑、智能穿戴设备等终端设备。

102,根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据。

在本申请实施例中,关于同一场景不同视角的至少二个视图图像可以为从图像采集设备获得,例如,针对同一场景成不同角度设置的至少二个图像采集设备,该场景例如为安防监控场景或人脸支付场景等,或者,在同一移动设备中的不同位置设置的至少二个图像采集设备,该移动设备例如为机器人或汽车等,本申请实施例对图像采集设备的设置方式不作限定。可选地,该图像采集设备可以为摄像头、摄像机、照相机、摄像模块、照相单元等中的至少一种,本申请实施例对图像采集设备的类型不作限定。在一个可选的例子中,关于同一场景不同视角的至少二个视图图像为二个视图图像,例如,关于同一场景的左视图图像和右视图图像,或者关于同一场景的上视图图像和下视图图像,本申请实施例对视图图像的类型和数量不作限定。

在本申请实施例中,多维度匹配代价数据是基于至少二种方式确定的匹配代价数据得到的,其中每一种方式确定的匹配代价数据从一个维度上反应了至少二个视图图像中匹配像素和待匹配像素之间的相关性,例如,可以利用图像中像素的灰度、颜色和梯度等信息中的一种进行匹配,可以采用绝对差值、相关函数和相关系数等方式中的一种确定匹配代价数据,本申请实施例对确定匹配代价数据的方式不作限定。可选地,可以通过对至少二个视图图像的像素逐像素进行匹配,得到每一维度的匹配代价数据,也可以通过对至少二个视图图像的特征逐像素进行匹配,得到每一维度的匹配代价数据,本申请实施例对此不作限定。

104,基于多维度匹配代价数据,生成至少二个视图图像的视差图。

在本申请实施例中,在得到多维度匹配代价数据后,可以利用多维度匹配代价数据以至少二个视图图像中预先选定的视图图像为基准生成视差图,例如,当至少二个视图图像为左视图图像和右视图图像时,可以将左视图图像作为预先选定的视图图像,则利用多维度匹配代价数据可以生成以左视图图像为基准的视差图,本申请实施例对预先选定的视图图像不作限定,在另一个例子中,也可以将右视图图像作为预先选定的视图图像,利用多维度匹配代价数据可以生成以右视图图像为基准的视差图,或者,可以同时将左视图图像和右视图图像作为预先选定的视图图像,则利用多维度匹配代价数据可以生成以左视图图像为基准的视差图和以右视图图像为基准的视差图。

可选地,可以将多维度匹配代价数据和预先选定的视图图像输入神经网络,通过神经网络生成以预先选定视图图像为基准的视差图,但本申请实施例对基于多维度匹配代价数据生成视差图的方式不作限定。其中,用于生成视差图的神经网络可以为预先训练好的神经网络,例如,可以采用卷积神经网络(convolutionalneuralnetworks,cnn)或者深度神经网络(deepneuralnetworks,dnn),本申请实施例对用于生成视差图的神经网络的结构不作限定。

基于本申请实施例提供的数据处理方法,通过根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据,并基于多维度匹配代价数据,生成至少二个视图图像的视差图,利用由基于至少二种方式确定的匹配代价数据得到的多维度匹配代价数据,可以更加全面的反映至少二个视图图像中匹配像素与待匹配像素之间的相关性,极大地增强相关性的表达能力,当应用于双目立体匹配时,可以提高双目立体匹配的精度。

下面将结合图2所示的例子,详细描述根据至少二个视图图像确定多维度匹配代价数据的流程。

202,对至少二个视图图像进行处理,得到其中每个视图图像的特征数据。

可选地,可以通过神经网络分别对至少二个视图图像进行处理,得到其中每个视图图像的特征数据,例如,可以通过神经网络分别对至少二个视图图像进行特征提取处理,得到其中每个视图图像的特征数据。在一个可选的例子中,可以采用孪生神经网络(siamesenetwork),利用孪生神经网络中共享权值的二个或更多个子网络分别对至少二个视图图像中的每个视图图像进行处理,得到其中每个视图图像的特征数据。在本申请中,特征数据可以包括至少一个特征向量、至少一个特征图或其他形式。

如图4所示,图4为本申请一些实施例对至少二个视图图像进行处理得到其中每个视图图像的特征数据的示意图。其中,关于同一场景不同视角的二个视图图像为左视图图像和右视图图像,在从图像处理设备获得左视图图像和右视图图像后,分别将左视图图像和右视图图像输入具有两个子网络的孪生卷积神经网络的两个子网络,通过孪生卷积神经网络的两个子网络分别对左视图图像和右视图图像进行特征提取处理,输出对应的左视图特征图和右视图特征图。

204,根据至少二个视图图像的特征数据,得到多维度匹配代价数据。

可选地,可以根据至少二个视图图像的特征数据,通过至少二种方式计算对应的匹配代价数据,作为一个维度的匹配代价数据,然后根据至少二种方式计算得到的匹配代价数据,得到多维度匹配代价数据。

本申请实施例通过获得关于同一个场景不同视角的至少二个视图图像的特征数据,根据特征数据确定多维度匹配代价数据,可以在保证匹配代价数据计算精度的基础上,减小计算的数据量,提高匹配代价数据计算的效率。

下面将结合图3所示的例子,详细描述根据特征数据得到多维度匹配代价数据的流程。

302,根据至少二个视图图像的特征数据,分别通过至少二种方式确定对应的匹配代价数据,得到不同维度的匹配代价数据。

在一个可选的例子中,根据特征数据确定匹配代价数据的方式可以包括但不限于基于滑窗结合的方式、二阶点乘方式、一维相关系数方式和神经网络方式中的至少二种。

其中,基于滑窗结合的方式是通过将至少二个视图图像的特征数据在通道上叠加,得到匹配代价数据。例如,当至少二个视图图像为左视图图像和右视图图像时,根据左视图图像和右视图图像得到的特征图分别为x1和xr,各特征图的大小为h×w×c,其中,h为特征图的高度,w为特征图的宽度,c为特征图的通道数,取最大视差为d,滑窗移动的步长为d,则基于滑窗结合的方式得到的匹配代价数据xcat的大小为h×w×2c×d,其计算公式如下:

xcat(0:h,d:w,0:c,d)=xl(0:h,d:w,0:c)(公式1)

xcat(0:h,d:w,0:2c,d)=xr(0:h,0:w-d,0:c)(公式2)

二阶点乘方式是通过将至少二个视图图像的特征图进行内积运算,得到匹配代价数据。例如,当至少二个视图图像为左视图图像和右视图图像时,根据左视图图像和右视图图像得到的特征图分别为xl和xr,各特征图的大小为h×w×c,其中,h为特征图的高度,w为特征图的宽度,c为特征图的通道数,取最大视差为d,滑窗移动的步长为d,则二阶点乘方式得到的匹配代价数据xmul的大小为h×w×c×d,其计算公式如下:

xmul(0:h,d:w,0:c,d)=xl(0:h,d:w,0:c)*xr(0:h,0:w-d,0:c)(公式3)

一维相关系数方式是通过将至少二个视图图像的特征图进行内积运算,并对通道进行均值化处理,得到匹配代价数据。例如,当至少二个视图图像为左视图图像和右视图图像时,根据左视图图像和右视图图像得到的特征图分别为xl和xr,各特征图的大小为h×w×c,其中,h为特征图的高度,w为特征图的宽度,c为特征图的通道数,取最大视差为d,滑窗移动的步长为d,则二阶点乘方式得到的匹配代价数据xcorr的大小为h×w×d,其计算公式如下:

xcorr(0:h,d:w,d)=mean(xl(0:h,d:w,0:c)*xr(0:h,0:w-d,0:c),axis=2)(公式4)

神经网络方式是通过将至少二个视图图像的特征图在通道上叠加,并通过神经网络进行处理,得到匹配代价数据。例如,当至少二个视图图像为左视图图像和右视图图像时,根据左视图图像和右视图图像得到的特征图分别为xl和xr,各特征图的大小为h×w×c,其中,h为特征图的高度,w为特征图的宽度,c为特征图的通道数,取最大视差为d,滑窗移动的步长为d,神经网络为f,其网络通道数为c0,则神经网络方式得到的匹配代价数据xdeep的大小为h×w×c0×d,其计算公式如下:

xcat(0:h,d:w,0:c,d)=xl(0:h,d:w,0:c)(公式1)

xcat(0:h,d:w,0:2c,d)=xr(0:h,0:w-d,0:c)(公式2)

xdeep=f(xcat)(公式5)

304,对不同维度的匹配代价数据进行融合,得到多维度匹配代价数据。

可选地,可以对不同维度的匹配代价数据基于通道进行叠加,得到多维度匹配代价数据,实现对不同维度的匹配代价数据的融合,但本申请实施例对不同维度的匹配代价数据进行融合的实现方式不作限定。在一个可选的例子中,在对不同维度的匹配代价数据进行融合之前,还可以基于每个像素的邻域中的像素的相关性,对不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合,通过对整合后的不同维度的匹配代价数据价进行融合,得到多维度匹配代价数据,例如,通过多分支神经网络中的各分支分别对不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合,但本申请实施例对匹配代价数据进行整合的实现方式不作限定。由于匹配代价数据这种像素级别的相关性往往是局部最优的,利用每个像素的邻域中的像素的相关性对每个像素的相关性进行整合,可以使得匹配代价更加真实,进而使所得到的视差图更加光滑。

如图5所示,图5为本申请一些实施例对不同维度的匹配代价数据进行融合得到多维度匹配代价数据的示意图。其中,将基于滑窗结合的方式、二阶点乘方式、一维相关系数方式和神经网络方式得到的匹配代价数据xcat、xmul、xcorr和xdeep,分别输入多分支卷积神经网络中的各分支,利用各分支分别对各匹配代价数据进行整合,将整合后的各匹配代价数据基于通道进行叠加,得到多维度匹配代价数据。

在一个可选的例子中,可以根据至少二个视图图像的特征数据,得到第一级匹配代价数据,例如:通过基于滑窗结合的方式和/或二阶点乘方式得到第一级匹配代价数据;然后对第一级匹配代价数据进行处理,得到第二级匹配代价数据,例如:通过对基于滑窗结合的方式得到的第一级匹配代价数据通过神经网络进行处理,得到第二级匹配代价数据,即相当于直接通过神经网络方式得到的匹配代价数据,通过对二阶点乘方式得到的第一级匹配代价数据的通道进行均值化处理,得到第二级匹配代价数据,即相当于直接通过一维相关系数方式得到的匹配代价数据;根据第一级匹配代价数据和第二级匹配代价数据得到多维度匹配代价数据。

本申请实施例通过对不同维度的匹配代价数据进行融合,得到一个多维度匹配代价数据,不但可以更加全面的反映图像之间的相关性,还可以减小匹配代价数据在后续应用中的计算量。

在上述各实施例中,在根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据之前,还可以通过预先设置的图像采集设备采集关于同一场景不同视角的至少二个视图图像,在得到关于同一场景不同视角的至少二个视图图像后,通常需要对图像采集设备采集到的图像进行校准,来去除图像中的畸变,并将图像对齐,以提高后续处理的准确性。可选地,可以通过获取图像采集设备的内外参数,对图像采集设备采集到的图像进行标定,以实现对图像采集设备采集到的图像的校准。

在上述各实施例中,在得到视差图后,还可以根据视差图得到深度图,例如,基于视差与深度之间的关系,根据视差图得到深度图。可选地,在得到深度图后,还可以根据深度图执行与景深相关的图像处理,例如:根据深度图对至少二个视图图像中选定的视图图像进行前景与背景图像分割处理;根据深度图对至少二个视图图像中选定的视图图像进行图像虚化处理;根据深度图确定至少二个视图图像中选定的视图图像的点云数据,并根据点云数据对相应的场景进行三维建模;根据深度图对至少二个视图图像中选定的视图图像执行增强现实处理,本申请实施例对此不作限定。

图6为本申请一些实施例的数据处理装置的结构示意图。该装置可以用来执行上述任一实施例的数据处理方法。如图6所示,该装置包括:匹配代价计算模块610和视差图生成模块620。其中,

匹配代价计算模块610,用于根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据。

在本申请实施例中,关于同一场景不同视角的至少二个视图图像可以为从图像采集设备获得,例如,针对同一场景成不同角度设置的至少二个图像采集设备,该场景例如为安防监控场景或人脸支付场景等,或者,在同一移动设备中的不同位置设置的至少二个图像采集设备,该移动设备例如为机器人或汽车等,本申请实施例对图像采集设备的设置方式不作限定。可选地,该图像采集设备可以为摄像头、摄像机、照相机、摄像模块、照相单元等中的至少一种,本申请实施例对图像采集设备的类型不作限定。在一个可选的例子中,关于同一场景不同视角的至少二个视图图像为二个视图图像,例如,关于同一场景的左视图图像和右视图图像,或者关于同一场景的上视图图像和下视图图像,本申请实施例对视图图像的类型和数量不作限定。

在本申请实施例中,多维度匹配代价数据是基于至少二种方式确定的匹配代价数据得到的,其中每一种方式确定的匹配代价数据从一个维度上反应了至少二个视图图像中匹配像素和待匹配像素之间的相关性,例如,匹配代价计算模块610可以利用图像中像素的灰度、颜色和梯度等信息中的一种进行匹配,可以采用绝对差值、相关函数和相关系数等方式中的一种确定匹配代价数据,本申请实施例对确定匹配代价数据的方式不作限定。可选地,匹配代价计算模块610可以通过对至少二个视图图像的像素逐像素进行匹配,得到每一维度的匹配代价数据,也可以通过对至少二个视图图像的特征逐像素进行匹配,得到每一维度的匹配代价数据,本申请实施例对此不作限定。

视差图生成模块620,用于基于多维度匹配代价数据,生成至少二个视图图像的视差图。

在本申请实施例中,在得到多维度匹配代价数据后,视差图生成模块620可以利用多维度匹配代价数据以至少二个视图图像中预先选定的视图图像为基准生成视差图,例如,当至少二个视图图像为左视图图像和右视图图像时,可以将左视图图像作为预先选定的视图图像,则利用多维度匹配代价数据可以生成以左视图图像为基准的视差图,本申请实施例对预先选定的视图图像不作限定,在另一个例子中,也可以将右视图图像作为预先选定的视图图像,利用多维度匹配代价数据可以生成以右视图图像为基准的视差图,或者,可以同时将左视图图像和右视图图像作为预先选定的视图图像,则利用多维度匹配代价数据可以生成以左视图图像为基准的视差图和以右视图图像为基准的视差图。

可选地,视差图生成模块620可以将多维度匹配代价数据和预先选定的视图图像输入神经网络,通过神经网络生成以预先选定视图图像为基准的视差图,但本申请实施例对基于多维度匹配代价数据生成视差图的方式不作限定。其中,用于生成视差图的神经网络可以为预先训练好的神经网络,例如,可以采用卷积神经网络或者深度神经网络,本申请实施例对用于生成视差图的神经网络的结构不作限定。

基于本申请实施例提供的数据处理装置,通过根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据,并基于多维度匹配代价数据,生成至少二个视图图像的视差图,利用由基于至少二种方式确定的匹配代价数据得到的多维度匹配代价数据,可以更加全面的反映至少二个视图图像中匹配像素与待匹配像素之间的相关性,极大地增强相关性的表达能力,当应用于双目立体匹配时,可以提高双目立体匹配的精度。

图7为本申请一些实施例的匹配代价计算模块的结构示意图。如图7所示,匹配代价计算模块包括:特征数据获取单元710和匹配代价计算单元720。其中,

特征数据获取单元710,用于对至少二个视图图像进行处理,得到其中每个视图图像的特征数据。

可选地,特征数据获取单元710可以通过神经网络分别对至少二个视图图像进行处理,得到其中每个视图图像的特征数据,例如,可以通过神经网络分别对至少二个视图图像进行特征提取处理,得到其中每个视图图像的特征数据。在一个可选的例子中,可以采用孪生神经网络,利用孪生神经网络中共享权值的二个或更多个子网络分别对至少二个视图图像中的每个视图图像进行处理,得到其中每个视图图像的特征数据。在本申请中,特征数据可以包括至少一个特征向量、至少一个特征图或其他形式。

匹配代价计算单元720,用于根据至少二个视图图像的特征数据,得到多维度匹配代价数据。

可选地,匹配代价计算单元720可以根据至少二个视图图像的特征数据,通过至少二种方式计算对应的匹配代价数据,作为一个维度的匹配代价数据,然后根据至少二种方式计算得到的匹配代价数据,得到多维度匹配代价数据。

本申请实施例通过获得关于同一个场景不同视角的至少二个视图图像的特征数据,根据特征数据确定多维度匹配代价数据,可以在保证匹配代价数据计算精度的基础上,减小计算的数据量,提高匹配代价数据计算的效率。

图8为本申请一些实施例的匹配代价计算单元的结构示意图。如图8所示,匹配代价计算单元包括:匹配代价计算子单元810和匹配代价融合子单元820。其中,

匹配代价计算子单元810,用于根据至少二个视图图像的特征数据,分别通过至少二种方式确定对应的匹配代价数据,得到不同维度的匹配代价数据。

在一个可选的例子中,匹配代价计算子单元810根据特征数据确定匹配代价数据的方式可以包括但不限于基于滑窗结合的方式、二阶点乘方式、一维相关系数方式和神经网络方式中的至少二种。

匹配代价融合子单元820,用于对不同维度的匹配代价数据进行融合,得到多维度匹配代价数据。

可选地,匹配代价融合子单元820可以对不同维度的匹配代价数据基于通道进行叠加,得到多维度匹配代价数据,实现对不同维度的匹配代价数据的融合,但本申请实施例对不同维度的匹配代价数据进行融合的实现方式不作限定。

在一个可选的例子中,在通过匹配代价融合子单元820对不同维度的匹配代价数据进行融合之前,如图9所示,匹配代价计算单元还包括:匹配代价整合子单元830,用于基于每个像素的邻域中的像素的相关性,对不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合,匹配代价融合子单元820通过对整合后的不同维度的匹配代价数据价进行融合,得到多维度匹配代价数据,例如,匹配代价整合子单元830通过多分支神经网络中的各分支分别对不同维度的匹配代价数据中的每一维度的匹配代价数据进行整合,但本申请实施例对匹配代价数据进行整合的实现方式不作限定。由于匹配代价数据这种像素级别的相关性往往是局部最优的,利用每个像素的邻域中的像素的相关性对每个像素的相关性进行整合,可以使得匹配代价更加真实,进而使所得到的视差图更加光滑。

本申请实施例还提供了一种电子设备,例如可以是移动终端、个人计算机(pc)、平板电脑、服务器等。下面参考图10,其示出了适于用来实现本申请实施例的终端设备或服务器的电子设备1000的结构示意图:如图10所示,电子设备1000包括一个或多个处理器、通信部等,所述一个或多个处理器例如:一个或多个中央处理单元(cpu)1001,和/或一个或多个加速单元1013等,加速单元1013可包括但不限于gpu、fpga、其他类型的专用处理器等,处理器可以根据存储在只读存储器(rom)1002中的可执行指令或者从存储部分1008加载到随机访问存储器(ram)1003中的可执行指令而执行各种适当的动作和处理。通信部1012可包括但不限于网卡,所述网卡可包括但不限于ib(infiniband)网卡,处理器可与只读存储器1002和/或随机访问存储器1003中通信以执行可执行指令,通过总线1004与通信部1012相连、并经通信部1012与其他目标设备通信,从而完成本申请实施例提供的任一项方法对应的操作,例如,根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据,其中,所述多维度匹配代价数据是基于至少二种方式确定的匹配代价数据得到的;基于所述多维度匹配代价数据,生成所述至再少二个视图图像的视差图。

此外,在ram1003中,还可存储有装置操作所需的各种程序和数据。cpu1001、rom1002以及ram1003通过总线1004彼此相连。在有ram1003的情况下,rom1002为可选模块。ram1003存储可执行指令,或在运行时向rom1002中写入可执行指令,可执行指令使中央处理单元1001执行上述通信方法对应的操作。输入/输出(i/o)接口1005也连接至总线1004。通信部1012可以集成设置,也可以设置为具有多个子模块(例如多个ib网卡),并在总线链接上。

以下部件连接至i/o接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至i/o接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。

需要说明的,如图10所示的架构仅为一种可选实现方式,在具体实践过程中,可根据实际需要对上述图10的部件数量和类型进行选择、删减、增加或替换;在不同功能部件设置上,也可采用分离设置或集成设置等实现方式,例如加速单元1013和cpu1001可分离设置或者可将加速单元1013集成在cpu1001上,通信部1009可分离设置,也可集成设置在cpu1001或加速单元1013上,等等。这些可替换的实施方式均落入本申请公开的保护范围。

特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本申请实施例提供的方法步骤对应的指令,例如,根据关于同一场景不同视角的至少二个视图图像,确定对应的多维度匹配代价数据,其中,所述多维度匹配代价数据是基于至少二种方式确定的匹配代价数据得到的;基于所述多维度匹配代价数据,生成所述至再少二个视图图像的视差图。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(cpu)1001执行时,执行本申请的方法中限定的上述功能。

在一个或多个可选实施方式中,本申请实施例还提供了一种计算机程序产品,用于存储计算机可读指令,该指令被执行时使得计算机执行上述任一可能的实现方式中的数据处理方法。

该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选例子中,该计算机程序产品具体体现为计算机存储介质,在另一个可选例子中,该计算机程序产品具体体现为软件产品,例如软件开发包(softwaredevelopmentkit,sdk)等等。

在一个或多个可选实施方式中,本申请实施例还提供了一种数据处理方法及其对应的装置和电子设备、计算机存储介质、计算机程序以及计算机程序产品。

在一些实施例中,该数据处理指示可以具体为调用指令,第一装置可以通过调用的方式指示第二装置执行数据处理,相应地,响应于接收到调用指令,第二装置可以执行上述数据处理方法中的任意实施例中的步骤和/或流程。

应理解,本申请实施例中的“第一”、“第二”等术语仅仅是为了区分,而不应理解成对本申请实施例的限定。

还应理解,在本申请中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。

还应理解,对于本申请中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。

还应理解,本申请对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。

可能以许多方式来实现本申请的方法和装置、设备。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本申请的方法和装置、设备。用于方法的步骤的上述顺序仅是为了进行说明,本申请的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本申请实施为记录在记录介质中的程序,这些程序包括用于实现根据本申请的方法的机器可读指令。因而,本申请还覆盖存储用于执行根据本申请的方法的程序的记录介质。

本申请的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本申请限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本申请的原理和实际应用,并且使本领域的普通技术人员能够理解本申请从而设计适于特定用途的带有各种修改的各种实施例。

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