图像处理方法和装置、电子设备与流程

文档序号:16791937发布日期:2019-02-01 19:40阅读:159来源:国知局
图像处理方法和装置、电子设备与流程

本申请涉及计算机视觉技术,尤其是一种图像处理方法和装置、电子设备。



背景技术:

深度估计技术是计算机视觉领域的重要问题。准确的深度估计技术在许多领域,例如自动驾驶、也是很多如三维(3d)场景重建、即时定位与地图构建(slam)、增强现实(ar)、虚拟现实(vr)等应用领域,有着重要的利用价值。



技术实现要素:

本申请实施例提供一种图像处理技术方案。

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

对待处理图像进行深度预测,得到所述图像中场景的初始深度预测信息;

基于所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息。

可选地,在本申请各方法实施例中,还包括:

获取所述稀疏深度信息。

可选地,在本申请各方法实施例中,所述获取所述稀疏深度信息,包括:

利用深度传感器获取所述场景的稀疏深度信息;或者,

通过几何方法获取所述场景的稀疏深度信息。

可选地,在本申请各方法实施例中,所述通过几何方法获取所述场景的稀疏深度信息,包括:

对双目相机采集到的双目图像或单目相机采集到的相邻帧图像进行匹配处理,得到所述场景的稀疏深度信息。

可选地,在本申请各方法实施例中,所述待处理图像为所述双目相机采集的双目图像中的一张图像;或者,

所述待处理图像为所述单目相机采集的图像。

可选地,在本申请各方法实施例中,所述基于所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息,包括:基于所述图像、所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息。

可选地,在本申请各方法实施例中,所述基于所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息,包括:

基于所述初始深度预测信息,将所述稀疏深度信息映射到尺度残差域,得到稀疏尺度信息;

基于所述初始深度预测信息和所述稀疏尺度信息,得到所述场景的稠密尺度信息;

基于所述初始深度预测信息和所述稠密尺度信息,得到所述场景的深度信息。

可选地,在本申请各方法实施例中,所述基于所述初始深度预测信息,将所述稀疏深度信息映射到尺度残差域,得到稀疏尺度信息,包括:将所述稀疏深度信息与所述初始深度预测信息进行逐像素点相除,得到所述稀疏尺度信息;和/或

所述基于所述初始深度预测信息和所述稠密尺度信息,得到所述场景的深度信息,包括:将所述初始深度预测信息和所述稠密尺度信息进行逐像素点相乘,得到所述场景的深度信息。

可选地,在本申请各方法实施例中,所述基于所述初始深度预测信息和所述稀疏尺度信息,得到所述场景的稠密尺度信息,包括:

将所述图像、所述初始深度预测信息和所述稀疏尺度信息进行连接,得到第一连接信息;

基于所述第一连接信息,得到所述场景的稠密尺度信息。

可选地,在本申请各方法实施例中,所述得到所述场景的深度信息之后,还包括:

基于所述场景的深度信息进行三维场景重建。

可选地,在本申请各方法实施例中,所述得到所述场景的深度信息之后,还包括:

基于所述场景的深度信息和基于即时定位与地图构建slam系统获取的深度信息进行定位与地图构建。

可选地,在本申请各方法实施例中,所述得到所述场景的深度信息之后,还包括:

基于所述场景的深度信息确定增强现实系统和/或虚拟现实系统中的遮挡关系。

可选地,在本申请各方法实施例中,所述得到所述场景的深度信息之后,还包括:

基于所述场景的深度信息对当前行驶对象周围的障碍物进行识别。

可选地,在本申请各方法实施例中,所述基于所述场景的深度信息对当前行驶对象进行周围的障碍物进行识别之后,还包括:

基于障碍物的识别结果对当前行驶对象进行碰撞预警和/或驾驶控制。

可选地,在本申请各方法实施例中,所述对待处理图像进行深度预测,得到所述图像中场景的初始深度预测信息,包括:利用第一神经网络,对待处理图像进行深度预测,得到所述图像中场景的初始深度预测信息;

所述基于所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息,包括:利用第二神经网络,基于所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息;

所述方法还包括:

利用样本图像,对所述第一神经网络和/或所述第二神经网络进行训练。

可选地,在本申请各方法实施例中,所述利用样本图像,对所述第二神经网络进行训练,包括:

利用所述第二神经网络,基于输入的所述样本图像、所述样本图像中样本场景的初始深度预测信息和所述样本场景的稀疏深度样本信息,得到所述样本场景的深度估计信息;

基于条件信息,利用第三神经网络确定待判别对象的预测类别为真实或合成,所述条件信息包括所述样本图像、所述样本场景的初始深度预测信息和所述稀疏深度样本信息中的至少一项,所述待判别对象包括所述深度估计信息或者所述样本场景的深度标注信息;

基于所述深度估计信息和所述待判别对象的预测类别,对所述第二神经网络和所述第三神经网络的网络参数进行调整处理。

可选地,在本申请各方法实施例中,所述利用样本图像,对所述第二神经网络进行训练,包括:

基于输入的所述样本图像中样本场景的初始深度预测信息,将输入的所述样本场景的稀疏深度样本信息映射到尺度残差域,得到稀疏尺度样本信息;

利用所述第二神经网络,基于所述样本图像、所述样本场景的初始深度预测信息和所述稀疏尺度样本信息,得到所述样本场景的稠密尺度预测信息;

基于条件信息,利用第三神经网络确定待判别对象的预测类别为真实或合成,所述条件信息包括所述样本图像、所述样本场景的初始深度预测信息和所述稀疏尺度样本信息中的至少一项,所述待判别对象包括所述稠密尺度预测信息或者所述稠密尺度标注信息;

基于所述稠密尺度预测信息和所述待判别对象的预测类别,对所述第二神经网络和所述第三神经网络的网络参数进行调整处理。

可选地,在本申请各方法实施例中,所述基于输入的所述样本图像中样本场景的初始深度预测信息,将输入的所述样本场景的稀疏深度样本信息映射到尺度残差域,得到稀疏尺度样本信息,包括:

将所述稀疏深度样本信息与所述样本场景的初始深度预测信息进行逐像素点相除,得到所述稀疏尺度样本信息。

可选地,在本申请各方法实施例中,所述利用所述第二神经网络,基于所述样本图像、所述样本场景的初始深度预测信息和所述稀疏尺度样本信息,得到所述样本场景的稠密尺度预测信息,包括:

将所述样本图像、所述样本场景的初始深度预测信息和所述稀疏尺度样本信息进行连接,得到第二连接信息;

利用第二神经网络,基于所述第二连接信息,得到所述稠密尺度预测信息。

可选地,在本申请各方法实施例中,所述基于条件信息,利用第三神经网络确定待判别对象的预测类别为真实或合成,包括:

利用所述第三神经网络,对所述待判别对象和所述条件信息进行至少一级有效特征提取处理,得到有效特征;

利用所述第三神经网络,基于所述有效特征,确定所述待判别对象的预测类别为真实或合成。

可选地,在本申请各方法实施例中,所述利用所述第三神经网络,对所述待判别对象和所述条件信息进行至少一级有效特征提取处理,得到有效特征,包括:

利用所述第三神经网络和预设掩膜,对所述待判别对象和所述条件信息进行至少一级有效特征提取处理,得到有效特征。

可选地,在本申请各方法实施例中,所述利用样本图像,对所述第一神经网络进行训练,包括:

利用第一神经网络,基于所述样本图像进行深度预测,得到所述样本图像中样本场景的初始深度预测信息;

确定所述样本场景的初始深度预测信息与所述样本场景的深度标注信息之间的第一差异;

基于所述第一差异对所述第一神经网络的网络参数进行调整处理。

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

第一深度预测模块,用于对待处理图像进行深度预测,得到所述图像中场景的初始深度预测信息;

第二深度预测模块,用于基于所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息。

可选地,在本申请各装置实施例中,还包括:

第一获取模块,用于获取所述稀疏深度信息。

可选地,在本申请各装置实施例中,所述第一获取模块包括:

深度传感器,用于获取所述场景的稀疏深度信息;或者,

几何装置,用于获取所述场景的稀疏深度信息。

可选地,在本申请各装置实施例中,所述几何装置,具体用于:对双目相机采集到的双目图像或单目相机采集到的相邻帧图像进行匹配处理,得到所述场景的稀疏深度信息。

可选地,在本申请各装置实施例中,所述待处理图像为所述双目相机采集的双目图像中的一张图像;或者,所述待处理图像为所述单目相机采集的图像。

可选地,在本申请各装置实施例中,所述第二深度预测模块包括:

第一获取单元,用于基于所述初始深度预测信息,将所述稀疏深度信息映射到尺度残差域,得到稀疏尺度信息;

第二获取单元,用于基于所述初始深度预测信息和所述稀疏尺度信息,得到所述场景的稠密尺度信息;

第三获取单元,用于基于所述初始深度预测信息和所述稠密尺度信息,得到所述场景的深度信息。

可选地,在本申请各装置实施例中,所述第一获取单元,具体用于将所述稀疏深度信息与所述初始深度预测信息进行逐像素点相除,得到所述稀疏尺度信息;

所述第三获取单元,具体用于将所述初始深度预测信息和所述稠密尺度信息进行逐像素点相乘,得到所述场景的深度信息。

可选地,在本申请各装置实施例中,所述第二获取单元,具体用于将所述图像、所述初始深度预测信息和所述稀疏尺度信息进行连接,得到第一连接信息,以及基于所述第一连接信息,得到所述场景的稠密尺度信息。

可选地,在本申请各装置实施例中,还包括:

场景重建模块,用于基于所述场景的深度信息进行三维场景重建。

可选地,在本申请各装置实施例中,还包括:

定位与地图构建模块,用于基于所述场景的深度信息和基于即时定位与地图构建slam系统获取的深度信息进行定位与地图构建。

可选地,在本申请各装置实施例中,还包括:

确定模块,用于基于所述场景的深度信息确定增强现实系统和/或虚拟现实系统中的遮挡关系。

可选地,在本申请各装置实施例中,还包括:

识别模块,用于基于所述场景的深度信息对当前行驶对象周围的障碍物进行识别。

可选地,在本申请各装置实施例中,还包括:

预警模块,用于基于障碍物的识别结果对当前行驶对象进行碰撞预警;和/或,

控制模块,用于基于障碍物的识别结果对当前行驶对象进行驾驶控制。

可选地,在本申请各装置实施例中,所述第一深度预测模块包括:第一神经网络;

所述第二深度预测模块包括:第二神经网络;

所述装置还包括:

训练模块,用于利用样本图像,对所述第一神经网络和/或所述第二神经网络进行训练。

可选地,在本申请各装置实施例中,所述第二神经网络,还用于基于输入的所述样本图像、所述样本图像中样本场景的初始深度预测信息和所述样本场景的稀疏深度样本信息,得到所述样本场景的深度估计信息;

所述装置还包括:第三神经网络,用于基于条件信息,确定待判别对象的预测类别为真实或合成,所述条件信息包括所述样本图像、所述样本场景的初始深度预测信息和所述稀疏深度样本信息中的至少一项,所述待判别对象包括所述深度估计信息或者所述样本场景的深度标注信息;

所述训练模块利用样本图像,对所述第二神经网络进行训练时,具体用于基于所述深度估计信息和所述待判别对象的预测类别,对所述第二神经网络和所述第三神经网络的网络参数进行调整处理。

可选地,在本申请各装置实施例中,所述第二深度预测模块还包括:

第一获取单元,用于基于输入的所述样本图像中样本场景的初始深度预测信息,将输入的所述样本场景的稀疏深度样本信息映射到尺度残差域,得到稀疏尺度样本信息;

所述第二神经网络,具体用于基于所述样本图像、所述样本场景的初始深度预测信息和所述稀疏尺度样本信息,得到所述样本场景的稠密尺度预测信息;

所述装置还包括:第三神经网络,用于基于条件信息,确定待判别对象的预测类别为真实或合成,所述条件信息包括所述样本图像、所述样本场景的初始深度预测信息和所述稀疏尺度样本信息,所述待判别对象包括所述稠密尺度预测信息或者所述稠密尺度标注信息中的至少一项;

所述训练模块利用样本图像,对所述第二神经网络进行训练时,具体用于基于所述稠密尺度预测信息和所述待判别对象的预测类别,对所述第二神经网络和所述第三神经网络的网络参数进行调整处理。

可选地,在本申请各装置实施例中,所述第一获取单元,具体用于将所述稀疏深度样本信息与所述样本场景的初始深度预测信息进行逐像素点相除,得到所述稀疏尺度样本信息。

可选地,在本申请各装置实施例中,所述第二神经网络,具体用于:将所述样本图像、所述样本场景的初始深度预测信息和所述稀疏尺度样本信息进行连接,得到第二连接信息;利用第二神经网络,基于所述第二连接信息,得到所述稠密尺度预测信息。

可选地,在本申请各装置实施例中,所述第三神经网络,具体用于:对所述待判别对象和所述条件信息进行至少一级有效特征提取处理,得到有效特征;基于所述有效特征,确定所述待判别对象的预测类别为真实或合成。

可选地,在本申请各装置实施例中,所述第三神经网络对所述待判别对象和所述条件信息进行至少一级有效特征提取处理时,具体用于利用预设掩膜,对所述待判别对象和所述条件信息进行至少一级有效特征提取处理。

可选地,在本申请各装置实施例中,所述第一神经网络,还用于基于所述样本图像进行深度预测,得到所述样本图像中样本场景的初始深度预测信息;

所述训练模块利用样本图像,对所述第一神经网络进行训练时,具体用于:确定所述样本场景的初始深度预测信息与所述样本场景的深度标注信息之间的第一差异;基于所述第一差异对所述第一神经网络的网络参数进行调整处理。

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

存储器,用于存储计算机程序;

处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现本申请上述任一实施例所述的图像处理方法。

根据本申请实施例的再一个方面,提供的一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现本申请上述任一实施例所述的图像处理方法。

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

根据本申请实施例的再一个方面,提供的一种计算机程序产品,用于存储计算机可读指令,所述指令被执行时使得计算机执行上述任一可能的实现方式中所述的图像处理方法。

在一个可选实施方式中,所述计算机程序产品具体为计算机存储介质,在另一个可选实施方式中,所述计算机程序产品具体为软件产品,例如软件开发包(softwaredevelopmentkit,sdk),等等。

基于本申请上述实施例提供的图像处理方法和装置、电子设备、程序和介质,对待处理图像进行深度预测,得到初始深度预测信息,再基于初始深度预测信息和稀疏深度信息,得到场景的深度信息。本申请实施例由待处理图像预测得到初始深度预测信息,为后续获取场景的深度信息提供了基础,有助于提升最终的深度信息结果的准确率和稳定性;基于初始深度预测信息和稀疏深度信息,获取场景的深度信息,提高了图像处理结果的准确性。

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

附图说明

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

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

图1为本申请一个实施例的图像处理方法的流程图。

图2为本申请另一个实施例的图像处理方法的流程图。

图3为本申请实施例中用于进行神经网络训练的一个网络示意图。

图4为本申请一个实施例中对第二神经网络进行训练的一个流程图。

图5为本申请另一个实施例中对第二神经网络进行训练的一个流程图。

图6为本申请一个实施例中对待判别对象和条件信息进行一级有效特征提取处理的示意图。

图7为本申请一个实施例的图像处理装置的结构示意图。

图8为本申请另一个实施例的图像处理装置的结构示意图。

图9为本申请再一个实施例的图像处理装置的结构示意图。

图10为本申请电子设备一个应用实施例的结构示意图。

具体实施方式

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

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

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

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

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

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

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

在本申请各实施例中:

稀疏深度信息,是指场景中至少一个像素点的深度信息,是与场景的完整的深度信息相对而言的,即稀疏深度信息仅对应于图像中部分像素点的深度信息;

稠密深度信息,是指场景的至少大部分像素点的深度信息,其中,包括了场景中所有像素点的深度信息或大部分像素点的深度信息;

稀疏尺度信息,是指将场景的稀疏深度信息映射到尺度残差域得到的信息,可以是场景的稀疏深度信息与参考深度信息之间的比值,其中该参考深度信息例如可以是场景的初始深度预测信息或其他深度信息;

稠密尺度信息,是指将场景的稠密深度信息映射到尺度残差域得到的信息,可以是场景的稠密深度信息与参考深度信息之间的比值。

图1为本申请一个实施例的图像处理方法的流程图。如图1所示,该实施例的图像处理方法包括:

102,对待处理图像进行深度预测,得到该图像中场景的初始深度预测信息。

在其中一些实施方式中,该操作102可以通过一个神经网络(可以称为:第一神经网络)实现。其中,该第一神经网络为预先训练好的神经网络,可以基于输入的图像进行深度预测,并输出该图像中场景的初始深度预测信息。本申请实施例不限制该第一神经网络的训练方法,可以采用任意的训练方法,例如本申请以下实施例记载的训练方法对该第一神经网络进行训练。

104,基于初始深度预测信息和场景的稀疏深度信息,得到上述场景的深度信息。

其中,上述场景的稀疏深度信息是指场景中至少一个点的深度信息,是与场景的完整的深度信息相对而言的,即稀疏深度信息仅对应于图像中部分像素点的深度信息。

在其中一些实施方式中,该操作104可以通过一个神经网络(可以称为:第二神经网络)实现。其中,该第二神经网络为预先训练好的神经网络,可以将初始深度预测信息和场景的稀疏深度信息直接输入到第二神经网络,或者也可以对初始深度预测信息和场景的稀疏深度信息进行一项或多项处理,并将处理得到的结果输入到第二神经网络,例如可以连接初始深度预测信息和场景的稀疏深度信息,例如拼接或融合初始深度预测信息和场景的稀疏深度信息,得到连接信息,并将连接信息输入到第二神经网络,等等,第二神经网络可以对输入信息进行处理,输出场景的深度信息。本申请实施例不限制该第二神经网络的训练方法和其具体实现,可以采用任意的训练方法,例如本申请以下实施例记载的训练方法对该第二神经网络进行训练。

在一些实施方式中,也可以通过其他方式对初始深度预测信息和场景的稀疏深度信息进行处理,得到场景的深度信息,本申请实施例对此不做限定。

在一些可选实施例中,可以基于待处理图像、初始深度预测信息和场景的稀疏深度信息,得到待处理图像中场景的深度信息,本公开实施例不限于此。

在其中一些实施方式中,上述待处理图像可以为采用任意方式采集的单张图像,例如,可以为双目相机采集的双目图像中的一张图像,或者,也可以为单目相机采集的图像。在上述待处理图像为单张图像时,操作102中通过第一神经网络获取的是不太精确的初始深度预测信息,操作104第二神经网络基于上述图像、初始深度预测信息和场景的稀疏深度信息,可以获取到上述场景精确的深度信息,因此,可以将通过第一神经网络获取初始深度预测信息的过程称为初始深度预测阶段,将第二神经网络基于上述图像、初始深度预测信息和场景的稀疏深度信息得到上述场景精确的深度信息的过程称为深度信息求精阶段。

基于本申请上述实施例提供的图像处理方法,对待处理图像进行深度预测,得到初始深度预测信息,再基于初始深度预测信息和稀疏深度信息,得到场景的深度信息。本申请实施例由待处理图像预测得到初始深度预测信息,为后续获取场景的深度信息提供了基础,有助于提升最终的深度信息结果的准确率和稳定性;基于初始深度预测信息和稀疏深度信息,获取场景的深度信息,提高了图像处理结果的准确性。

在另一个实施例的图像处理方法中,还可以包括获取上述稀疏深度信息的操作。本申请实施例中,可以采用任意方法获取上述稀疏深度信息,均可应用于本申请实施例,从而结合本申请实施例对稀疏深度信息的获取方式不进行限制。

例如,在其中一些实施方式中,可以利用深度传感器,例如激光雷达或其他传感器等,获取上述场景的稀疏深度信息。

又例如,在另一些实施方式中,可以通过几何方法获取上述场景的稀疏深度信息,例如,对双目相机采集到的双目图像或单目相机采集到的相邻帧图像进行匹配处理,得到上述场景的稀疏深度信息。

例如,在一个可选示例中,可以通过双目立体匹配方法,对双目相机采集的双目图像进行双目立体匹配,获取上述场景较为准确的稀疏深度信息。又例如,在另一个可选示例中,可以通过对单目相机采集到的相邻帧图像进行匹配处理,得到上述场景较为准确的稀疏深度信息。

可选地,通过双目立体匹配方法,对双目相机采集的双目图像进行双目立体匹配,获取场景的稀疏深度信息时,可以通过双目相机进行图像采集,得到双目图像,包括左图和右图,获取左图和右图的视差图,基于该视差图便可以获取场景的稀疏深度信息。

在本申请上述实施例中,通过双目相机进行图像采集时,可以从双目相机采集的双目图像中选取一张图像作为上述待处理图像。或者,也可以采用单目相机进行图像采集,并从单目相机采集的图像中选取一张图像作为上述待处理图像。

示例性地,选取待处理图像时,可以按照随机选取的方式从双目图像或单目相机采集的图像中随机选取一张图像作为上述待处理图像。另外,为了提高深度信息结果的准确性,也可以按照预设选取标准,例如清晰度、曝光度等,从双目图像或单目相机采集的图像中选取一张质量较高的图像作为上述待处理图像。此时,在其中一些实施方式中,上述操作102中,可以采用基于深度学习的单目深度估计技术,基于待处理图像进行深度预测,得到该图像中场景的初始深度预测信息。

由于通过深度传感器或者几何方法通常仅能获取到场景的稀疏深度信息而无法获取完整的深度信息,本实施例基于深度学习的单目深度估计技术可以预测到该场景完整的初始深度预测信息,进一步结合稀疏深度信息和图像实现多种信息的融合输入,基于深度学习的方式便可以获取到场景的完整的高精度深度信息。

图2为本申请另一个实施例的图像处理方法的流程图。如图2所示,该实施例的图像处理方法包括:

202,利用第一神经网络,对待处理图像进行深度预测,得到该图像中场景的初始深度预测信息。

在其中一些实施方式中,可以采用一个端到端的u-型深度神经网络作为第一神经网络,基于深度学习的单目深度预测方法,由单张rgb(红绿蓝)图像作为输入进行深度预测,得到初始深度预测信息。基于该初始深度预测,为后续的深度结果的求精缩小了搜索范围,有助于提升最终深度结果的准确率和稳定性。

204,基于上述初始深度预测信息,将上述场景的稀疏深度信息映射到尺度残差域,得到稀疏尺度信息。

在一些实施方式中,上述初始深度预测信息可以表示为初始深度预测矩阵或者初始深度预测图或其他形式。其中,初始深度预测矩阵中各元素的取值表示该元素对应的场景中位置的初始深度预测值;初始深度预测图中各像素点的取值表示该像素点对应的场景中位置的初始深度预测值。

类似地,上述场景的稀疏深度信息可以表示为稀疏深度矩阵或者稀疏深度图或其他形式。其中,稀疏深度矩阵中各元素的取值表示该元素对应的场景中位置的深度值;稀疏深度图中各像素点的取值表示对应的场景中位置的深度值。

在一些实施方式中,初始深度预测信息表示为初始深度预测图、场景的稀疏深度信息表示为稀疏深度图时,可以通过将稀疏深度信息与初始深度预测信息进行逐元素点相除(也称为逐像素点相除,element-wisedivision)的方式,得到稀疏尺度信息。或者,初始深度预测信息表示为初始深度预测矩阵、场景的稀疏深度信息表示为稀疏深度矩阵时,可以通过将稀疏尺度信息与初始深度预测信息进行逐元素点相除的方式,得到稀疏尺度信息。

例如,假设初始深度预测信息表示为dc,稀疏深度信息表示为d(s),则可以通过如下方式得到稀疏尺度信息其中表示逐元素点相除(element-wisedivision)。稀疏深度信息中缺失的像素点部分的深度信息可以设置为0。

206,利用第二神经网络,基于上述初始深度预测信息和稀疏尺度信息,得到上述场景的稠密尺度信息。

在一些可选的实施方式中,可以将初始深度预测信息和稀疏尺度信息进行连接,例如,在通道维度上进行叠加,得到连接信息后输入第二神经网络进行处理,得到上述场景的稠密尺度信息。

在一些可选的实现方式中,可以基于待处理图像、初始深度预测信息和稀疏尺度信息,得到场景的稠密尺度信息。

在一些例子中,可以将上述图像、初始深度预测信息和稀疏尺度信息进行连接,例如,在通道维度上进行叠加,得到第一连接信息后输入第二神经网络,由第二神经网络,基于该第一连接信息,得到上述场景的稠密尺度信息。例如,第二神经网络可以基于该第一连接信息预测上述稀疏尺度信息中缺失的像素点部分的尺度信息,并基于预测得到的缺失的像素点部分的尺度信息和上述稀疏尺度信息,获取场景的稠密尺度信息。

其中,图像包括长、宽、通道三个维度,该图像为rgb图像时,其通道包括rgb三个通道。初始深度预测信息为初始深度预测图、稀疏尺度信息为稀疏尺度图时,由于初始深度预测图和稀疏尺度图为二维图,其在长、宽维度上与上述图像基于像素点对应,另具有深度或者尺度一个通道维度。将上述图像、初始深度预测图和稀疏尺度图进行连接时,可以将三者基于长、宽维度对应,在通道维度上叠加,但本公开实施例对连接的具体实现不作限定。

基于本实施例,实现了对稀疏尺度信息中缺失的像素点部分的尺度信息的完善,从而可以获得场景的稠密尺度信息,即:该场景中完整的位置对应的尺度信息、该场景的图像中完整的像素点对应的尺度信息。

在其中一些实施方式中,可以采用一个端到端的u-型深度神经网络作为第二神经网络,基于多模信息(图像、初始深度预测信息和稀疏尺度信息)作为输入,从而输出精确的稠密尺度信息,以便后续获取准确的深度结果。

208,基于上述初始深度预测信息和稠密尺度信息,获取上述场景的深度信息。

与上述操作204对应地,上述初始深度预测信息可以表示为一个初始深度预测矩阵或者初始深度预测图或其他形式,稠密尺度信息也可以表示为一个稠密尺度矩阵或者稠密尺度图或其他形式。

在一些实施方式中,初始深度预测信息表示为初始深度预测图、稠密尺度信息表示为稠密尺度图时,可以通过将初始深度预测图和稠密尺度图进行逐像素点相乘(也称为逐像素点乘,element-wisemultiplication)的方式,得到场景的深度信息。或者,初始深度预测信息表示为初始深度预测矩阵、稠密尺度信息表示为稠密尺度矩阵时,可以通过将初始深度预测矩阵和稠密尺度矩阵进行逐像素点相乘的方式,得到场景的深度信息。

例如,假设初始深度预测信息表示为dc,稠密尺度信息表示为sr,则可以通过如下方式得到场景的深度信息dr:其中表示逐元素点相乘(element-wisemultiplication)。稀疏深度信息中缺失的像素点部分的深度信息可以设置为0。

稀疏深度信息中各像素点或元素的深度值的分布范围较大,可能为[0,inf),基于本申请上述各实施例,基于初始深度预测信息将稀疏深度信息映射到尺度残差域,相对于稀疏深度信息缩小了数值分布范围,得到稀疏尺度信息后,再利用第二神经网络,基于上述图像、初始深度预测信息和稀疏尺度信息获取上述场景的稠密尺度信息,再基于上述初始深度预测信息和稠密尺度信息,获取上述场景的深度信息,有利于第二神经网络快速获取到场景的深度信息,在保证深度结果的精确性的同时,提高了图像处理的速度和效率。

本申请实施例,利用第二神经网络对不同来源的信息(上述图像、初始深度预测信息和稀疏尺度信息)进行融合,可以获取到更准确的深度结果。

本申请实施例中,第一神经网络和第二神经网络可以采用任意的深度神经网络(例如卷积神经网络)来实现,二者可以采用相同的结构,也可以采用不同的结构。例如,第一神经网络和第二神经网络都可以采用一个端到端的u-型结构的深度神经网络实现,u-型结构的深度神经网络中,编码部分的网络层和解码部分的网络层(encoder+decoder)分别包括至少一个卷积层,其中,编码部分的网络层的输出维度从大到小依次递减,解码部分的网络层的输出维度从小到大依次递增,可以从多个不同的视野域有效捕捉图像中的全局信息和局部细节信息,并且由于编码部分和解码部分的网络结构类似,可以减少网络参数并且提高预测速度。

可选地,第一神经网络和/或第二神经网络中,卷积层后还可以设置批处理归一化(batchnormalization,bn)层和激活函数(activationfunction)层,其中,bn层用于对卷积层的输出对象进行归一化处理;激活函数层用于保证神经网络的非线性,该激活函数层采用的激活函数例如可以包括线性修正单元(relu)、双曲正切函数(tanh)或激励函数(sigmoid)等。

在本申请实施例的一些实施方式中,第二神经网络在针对输入对象进行处理并输出处理结果(例如本申请实施例中的深度信息、稠密尺度信息等)前的最后一个激活层,可以采用如下的k双曲正切函数(k_tanh)实现:

其中,k的取值为一个预先设置的常数,x表示该激活层的输入对象。

激活层采用tanh实现时,可以将输入对象的值域调整为(-1,+1),由于第二神经网络输入的初始深度预测信息不是很精确,在对第二神经网络进行训练时,将输入对象的值域限定为(-1,+1)限制了输出结果的值域范围和第二神经网络的学习速度,本申请实施例第二神经网络在输出处理结果前的最后一个激活层采用修正后的tanh(即k_tanh层),可以在保持图像中各位置梯度的同时扩大输出结果的值域范围,从而提高第二神经网络的学习速度。

基于本申请上述各实施例,可以得到精确的场景的深度信息,可以应用于三维场景重建、slam、ar、vr、自动驾驶等应用领域。

则在又一些实施例中,获取场景的深度信息之后,还可以包括:基于场景的深度信息进行三维场景重建,得到三维空间场景。

或者,在又一些实施例中,获取场景的深度信息之后,还可以包括:基于场景的深度信息和基于slam系统获取的深度信息进行定位与地图构建,获得当前位置的准确定位和构建的地图。一些slam系统采用传统的立体匹配方法进行图像处理,存在图像质量易受光照影响、弱纹理区域不稳定等导致图像处理结果不准确,本申请实施例可以得到更鲁棒的深度结果,从而提高了slam定位和建图的准确度,反过来也可以提高slam相机追踪的稳定性。

或者,在又一些实施例中,获取场景的深度信息之后,还可以包括:基于场景的深度信息确定ar系统和/或vr系统中的遮挡关系。由于本申请实施例可以获取到更精确的稠密的深度信息,提高了ar系统和/或vr系统中的遮挡关系的准确性。

或者,在又一些实施例中,获取场景的深度信息之后,还可以包括:基于场景的深度信息对当前行驶对象周围的障碍物进行识别。另外,还可以进一步基于障碍物的识别结果对当前行驶对象进行碰撞预警和/或驾驶控制。例如,可以通过但不限于听觉形式、视觉形式等进行碰撞预警。其中,在听觉形式下,例如可以通过蜂鸣器发出声音等方式进行碰撞预警;在视觉形式下,例如可以通过指示灯闪烁等方式进行碰撞预警。其中的驾驶控制,指的是用于改变当前行驶对象的运动状态和/或运动方向的控制动作,例如可以包括:对当前行驶对象进行加速、制动减速、改变行驶方向等可以改变当前行驶对象的运动方向和/或运动状态的控制动作。

另外,在本申请上述各实施例之前,还可以包括:利用样本图像,对第一神经网络和/或第二神经网络进行训练,即,可以分别对第一神经网络、第二神经网络进行训练,也可以对第一神经网络和第二神经网络进行联合训练。

在其中一个实施例中,利用样本图像,对第一神经网络进行训练,可以包括:利用第一神经网络,基于样本图像进行深度预测,得到样本图像中样本场景的初始深度预测信息;确定该样本场景的初始深度预测信息与该样本场景的深度标注信息之间的第一差异;基于该第一差异对第一神经网络进行训练,即:对该第一神经网络的网络参数进行调整处理,直至满足第一预设训练完成条件,该第一预设训练完成条件例如可以包括以下任意一项或多项:对第一神经网络的训练次数达到第一预设次数阈值,上述第一差异小于第一预设阈值,等等。

在其中一个实施例中,利用样本图像,对第二神经网络进行训练,可以包括:利用第二神经网络,基于输入的样本图像、该样本图像中样本场景的初始深度预测信息和该样本场景的稀疏深度样本信息,得到该样本场景的深度估计信息;确定该深度估计信息与上述样本场景的深度标注信息之间的第二差异;基于该第二差异对第二神经网络进行训练,即:对该第二神经网络的网络参数进行调整处理,直至满足第二预设训练完成条件,该第二预设训练完成条件例如可以包括以下任意一项或多项:对第二神经网络的训练次数达到第二预设次数阈值,上述第二差异小于第二预设阈值,等等。

其中,可以设置第二预设阈值小于第一预设阈值,即,要求第二神经网络输出的深度估计信息与深度标注信息之间的第二差异小于第一神经网络输出的初始深度预测信息与深度标注信息之间的第一差异,以便第二神经网络训练完成后的性能更好,可以获取到更精确的获取场景的深度信息。

图3为本申请实施例中用于进行神经网络训练的一个网络示意图。如图3所示,对应于上述实施例的图像处理方法,该用于进行神经网络训练的一个网络分为两个部分:第一部分对应于上述图像处理方法实施例中的初始深度预测阶段,第二部分对应于上述图像处理方法实施例中的深度信息求精阶段。

在另一个实施例中,利用样本图像,对第二神经网络进行训练,可以包括:

利用第二神经网络(也称为生成网络或者生成器),基于输入的样本图像、该样本图像中样本场景的初始深度预测信息和该样本场景的稀疏深度样本信息,获取该样本场景的深度估计信息;

基于输入条件信息,利用第三神经网络(也称为判别网络或者判别器)确定待判别对象的预测类别为真实(即:样本场景的深度标注信息)或者合成(即:第二神经网络得到的深度估计信息)。其中的条件信息包括上述样本图像、样本场景的初始深度预测信息和稀疏深度样本信息中的至少一项,待判别对象包括上述深度估计信息或者样本场景的深度标注信息;确定待判别对象的预测类别可以表示为确定结果矩阵或者确定结果图,其中各元素或者像素点的取值可以根据各元素或者像素点被确定为深度估计信息或者深度标注信息为0或者1;

基于上述深度估计信息和待判别对象的预测类别,对第二神经网络和/或第三神经网络进行训练,即对第二神经网络和/或第三神经网络的网络参数进行调整处理。

在其中一些实施方式中,基于上述深度估计信息和待判别对象的预测类别对第二神经网络和/或第三神经网络进行训练,可以包括:根据深度估计信息与深度标注信息之间的差异、以及表示待判别对象的预测类别与标准结果之间的差异,对第二神经网络和/或第三神经网络进行训练。其中的标准结果为人工针对待判别对象标注的、用于表示待判别对象为深度估计信息或者深度标注信息的正确结果。

在另一些实施方式中,基于上述深度估计信息和待判别对象的预测类别对第二神经网络和/或第三神经网络进行训练,可以包括:根据稀疏深度样本信息与对应的样本场景中位置的深度标注信息之间的差异、深度估计信息与深度标注信息之间的差异、以及待判别对象的预测类别与标准结果之间的差异,对第二神经网络和/或第三神经网络进行训练。

具体地,可以迭代执行上述利用样本图像,对第二神经网络进行训练包括的操作,直至满足第三预设训练完成条件,该第三预设训练完成条件例如可以包括以下任意一项或多项:第二神经网络输出的深度估计信息足够精确、接近深度标注信息,以至于第三神经网络无法确定待判别对象为深度估计信息或者深度标注信息;或者,对第二神经网络和/或第三神经网络的训练次数达到第三预设次数阈值;或者,深度估计信息与深度标注信息之间的第二差异小于第二预设阈值,等等。

如图3所示,可以将第二神经网络(生成网络或者生成器)和第三神经网络(判别网络或者判别器)形成的网络称为生成对抗网络。通过对生成对抗网络的训练,第二神经网络(生成网络或者生成器)基于由输入生成尽可能精确的输出信息,而第三神经网络(判别网络或者判别器)尽可能准确地识别出待判别对象是第二神经网络的输出信息还是相应的标准信息(即:待判别对象的预测类别为合成或真实),第二神经网络与第三神经网络相互对抗、并各自进化提高能力,即:第三神经网络识别输入的信息是真实或合成,并且通过训练逐步提高识别能力;同时,第二神经网络与第三神经网络竞争逐步提高输出信息的精确性以趋向于真实,使第三神经网络无法正确识别,通过迭代训练交替往复上述相互对抗、相互提高性能的过程,最终使得可以获取到更为准确的场景的深度信息。

图4为本申请一个实施例中对第二神经网络进行训练的一个流程图。如图3和图4所示,在该实施例中,利用样本图像,对第二神经网络进行训练,可以包括:

302,基于输入的样本图像中样本场景的初始深度预测信息,将输入的样本场景的稀疏深度样本信息映射到尺度残差域,得到稀疏尺度样本信息。

304,利用第二神经网络,基于上述样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息,得到该样本场景的稠密尺度预测信息。

306,基于条件信息,利用第三神经网络确定待判别对象的预测类别为真实或合成。

其中,条件信息包括上述样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息中的至少一项,待判别对象包括稠密尺度预测信息或者稠密尺度标注信息,该稠密尺度标注信息可以将样本图像的深度标注信息映射到尺度残差域得到,例如可以采用本申请上述实施例记载的方法,对样本图像的深度标注信息与初始深度预测信息进行逐元素点相除得到。其中,待判别对象的预测类别为真实,表示第三神经网络确定该待判别对象为稠密尺度标注信息;待判别对象的预测类别为合成,表示第三神经网络确定该待判别对象为第二神经网络得到的稠密尺度预测信息。

可选地,该待判别对象的预测类别可以表示为确定结果矩阵或者确定结果图,其中各元素或者像素点的取值可以根据各元素或者像素点被确定为稠密尺度预测信息或者稠密尺度标注信息为0或者1。

308,基于稠密尺度预测信息和待判别对象的预测类别对第二神经网络和/或第三神经网络进行训练,即对第二神经网络和/或第三神经网络的网络参数进行调整处理。

在其中一些实施方式中,该操作308中,可以根据该稠密尺度预测信息与稠密尺度标注信息之间的差异、以及待判别对象的预测类别与标准结果之间的差异,对第二神经网络和/或第三神经网络进行训练。其中,稠密尺度标注信息为人工标注的、稠密尺度预测信息对应的准确稠密尺度信息。

在另一些实施方式中,该操作308中,可以根据稀疏深度样本信息与对应的样本场景中位置的深度标注信息之间的差异、稠密尺度预测信息与稠密尺度标注信息之间的差异、以及待判别对象的预测类别与标准结果之间的差异,对第二神经网络和/或第三神经网络进行训练。

可以迭代执行上述操作302-308,直至满足第三预设训练完成条件,该第三预设训练完成条件例如可以包括以下任意一项或多项:第二神经网络输出的稠密尺度预测信息足够精确、接近稠密尺度标注信息,以至于第三神经网络无法确定待判别对象为稠密尺度预测信息或者稠密尺度标注信息;或者,对第二神经网络和/或第三神经网络的训练次数达到第三预设次数阈值;或者,稠密尺度预测信息或者稠密尺度标注信息之间的第三差异小于第三预设阈值,等等。

稀疏深度样本信息中各像素点或元素的深度值的分布范围较大,可能为[0,inf),基于本申请上述各实施例,基于输入的样本图像中样本场景的初始深度预测信息,将输入的样本场景的稀疏深度样本信息映射到尺度残差域,得到的稀疏尺度样本信息相对于稀疏深度样本信息中的深度值缩小了数值分布范围,有利于第二神经网络的快速学习和训练,提高了第二神经网络的训练速度。

图5为本申请另一个实施例中对第二神经网络进行训练的一个流程图。如图3和图5所示,在该实施例中,利用样本图像,对第一神经网络和第二神经网络进行训练,可以包括:

402,利用第一神经网络,基于样本图像进行深度预测,得到该样本图像中样本场景的初始深度预测信息;并获取该样本场景的初始深度预测信息与样本场景的深度标注信息之间的第一差异。

404,基于输入的样本图像中样本场景的初始深度预测信息,将输入的样本场景的稀疏深度样本信息映射到尺度残差域,得到稀疏尺度样本信息。

406,利用第二神经网络,基于上述样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息,得到该样本场景的稠密尺度预测信息。

408,基于条件信息,利用第三神经网络,确定待判别对象的预测类别为真实或合成。

其中,条件信息包括上述样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息中的至少一项,待判别对象包括稠密尺度预测信息或者稠密尺度标注信息,该稠密尺度标注信息可以将样本图像的深度标注信息映射到尺度残差域得到,例如可以采用本申请上述实施例记载的方法,对样本图像的深度标注信息与初始深度预测信息进行逐元素点相除得到。其中,待判别对象的预测类别为真实,表示第三神经网络确定该待判别对象为稠密尺度标注信息;待判别对象的预测类别为合成,表示第三神经网络确定该待判别对象为第二神经网络得到的稠密尺度预测信息。

其中,该待判别对象的预测类别可以表示为确定结果矩阵或者确定结果图,其中各元素或者像素点的取值可以根据各元素或者像素点被确定为稠密尺度预测信息或者稠密尺度标注信息为0或者1。

410,基于上述第一差异、稀疏尺度样本信息和待判别对象的预测类别对第一神经网络、第二神经网络和/或第三神经网络进行训练,即对第一神经网络、第二神经网络和/或第三神经网络的网络参数进行调整处理。

在其中一些实施方式中,该操作410包括:根据第一差异、稀疏尺度预测信息与稀疏尺度标注信息之间的差异、以及待判别对象的预测类别与标准结果之间的差异,对第二神经网络和/或第三神经网络进行训练。其中,稀疏尺度标注信息为人工标注的、稀疏尺度预测信息对应的准确稀疏尺度信息。

在另一些实施方式中,该操作410包括:根据第一差异、稀疏深度样本信息与对应的样本场景中位置的深度标注信息之间的差异、稀疏尺度预测信息与稀疏尺度标注信息之间的差异、以及待判别对象的预测类别与标准结果之间的差异,对第二神经网络和/或第三神经网络进行训练。

可以迭代执行上述操作402-410,直至满足第三预设训练完成条件,该第三预设训练完成条件例如可以包括以下任意一项或多项:第二神经网络输出的稠密尺度预测信息足够精确、接近稠密尺度标注信息,以至于第三神经网络无法确定待判别对象为合成或真实(即:稠密尺度预测信息或者稠密尺度标注信息);或者,对第二神经网络和/或第三神经网络的训练次数达到第三预设次数阈值;或者,稠密尺度预测信息或者稠密尺度标注信息之间的第三差异小于第三预设阈值;或者,上述第一差异小于第一预设阈值,等等。

稀疏深度样本信息中各像素点或元素的深度值的分布范围较大,可能为[0,inf),基于本申请上述各实施例,基于输入的样本图像中样本场景的初始深度预测信息,将输入的样本场景的稀疏深度样本信息映射到尺度残差域,得到的稀疏尺度样本信息相对于稀疏深度样本信息中的深度值缩小了数值分布范围,有利于第二神经网络的快速学习和训练,提高了第二神经网络的训练速度。

其中,在上述各实施例的一些实施方式中,基于输入的样本图像中样本场景的初始深度预测信息,将输入的样本场景的稀疏深度样本信息映射到尺度残差域,得到稀疏尺度样本信息,可以包括:将稀疏深度样本信息与样本场景的初始深度预测信息进行逐像素点相除,得到稀疏尺度样本信息。

其中,在上述各实施例的一些实施方式中,利用第二神经网络,基于样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息,得到样本场景的稠密尺度预测信息,可以包括:

将样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息进行连接,得到第二连接信息;

利用第二神经网络,基于上述第二连接信息,得到稠密尺度预测信息。例如,第二神经网络可以基于上述第二连接信息预测稀疏尺度样本信息中缺失的像素点部分的尺度信息,并利用预测得到的缺失的像素点部分的尺度信息和稀疏尺度样本信息,获取稠密尺度预测信息。

其中,样本图像包括长、宽、通道三个维度,样本图像为rgb图像时,其通道包括rgb三个通道。初始深度预测信息为初始深度预测图、稀疏尺度样本信息为稀疏尺度样本图时,由于初始深度预测图和稀疏尺度样本图为二维图,其在长、宽维度上与上述样本图像基于像素点对应,另具有深度或者尺度一个通道维度。将上述图像、初始深度预测图和稀疏尺度样本图进行连接时,可以将三者基于长、宽维度对应,在通道维度上连接。

在本申请上述各实施例中,对第二神经网络进行训练之前,还可以包括:获取稀疏深度样本信息。

在其中一些实施方式中,可以通过如下方式获取稀疏深度样本信息:获取样本场景的稠密深度样本信息;利用第一预设掩模(mask)从样本场景的稠密深度样本信息中获取稀疏深度样本信息。例如,假设稠密深度样本信息标识为矩阵d,第一预设掩模表示为掩膜矩阵m,可以通过即将矩阵d和掩膜矩阵m逐元素点乘的方式获取稀疏深度样本信息d(s)。其中,掩膜矩阵m中各元素的取值可以根据实际需求预先设定。

例如,在一种可能的实现方式中,可以利用深度传感器(例如激光雷达等)获取样本场景的稠密深度样本信息,基于预设选取概率对稠密深度样本信息进行采样,得到稀疏深度样本信息。即,针对利用深度传感器方式获取的样本场景的稠密深度样本信息,可以基于预设选取概率确定掩模矩阵m中各元素点的取值,基于该预设选取概率被选中的元素点的取值为1,否则取值为0。

又例如,在另一种可能的实现方式中,可以通过几何方法获取样本场景的稠密深度样本信息,基于随机梯度阈值对稠密深度样本信息进行采样,得到稀疏深度样本信息。即,针对通过几何方法获取的样本场景的稠密深度样本信息,可以基于随机梯度阈值确定掩模矩阵m中各元素点的取值,例如,若稠密深度样本信息中对应于某个像素点的梯度大于随机选取的梯度阈值,对应的掩模矩阵m中元素点的取值为1,否则取值为0。

另外,在本申请又一个实施例中,利用样本图像,对第一神经网络和第二神经网络进行训练,可以包括:

利用第一神经网络,基于样本图像进行深度预测,得到该样本图像中样本场景的初始深度预测信息;并获取样本场景的初始深度预测信息与样本场景的深度标注信息之间的第一差异;

利用第二神经网络,基于输入的样本图像、样本图像中样本场景的初始深度预测信息和样本场景的稀疏深度样本信息,获取样本场景的深度估计信息;并获取深度估计信息与样本场景的深度标注信息之间的第二差异;

基于第一差异和第二差异对第一神经网络和第二神经网络进行训练,即对第一神经网络和第二神经网络的网络参数进行调整处理。

具体地,可以迭代执行上述实施例,直至满足第四预设训练完成条件,该第四预设训练完成条件例如可以包括以下任意一项或多项:对第一神经网络和/或第二神经网络的训练次数达到第四预设次数阈值;或者,第一差异和第二差异之和小于第四预设阈值;或者,上述第二差异小于第二预设阈值,等等。

另外,在本申请再一个实施例中,利用样本图像,对第一神经网络和第二神经网络进行训练,可以包括:

利用第一神经网络,基于样本图像进行深度预测,得到样本图像中样本场景的初始深度预测信息;并获取样本场景的初始深度预测信息与样本场景的深度标注信息之间的第一差异;

利用第二神经网络,基于输入的样本图像、该样本图像中样本场景的初始深度预测信息和样本场景的稀疏深度样本信息,得到样本场景的深度估计信息;基于条件信息,利用第三神经网络输入确定待判别对象的预测类别为真实或合成,其中,条件信息包括样本图像、样本场景的初始深度预测信息和稀疏深度样本信息中的至少一项,待判别对象包括深度估计信息或者样本场景的深度标注信息;

基于第一差异、深度估计信息和待判别对象的预测类别对第一神经网络、第二神经网络和/或第三神经网络进行训练,即对第一神经网络、第二神经网络和/或第三神经网络的网络参数进行调整处理。

在其中一些实施方式中,基于第一差异、深度估计信息和待判别对象的预测类别对第一神经网络、第二神经网络和/或第三神经网络进行训练,可以包括:根据第一差异、深度估计信息与深度标注信息之间的差异、以及待判别对象的预测类别与标准结果之间的差异,对第二神经网络和/或第三神经网络进行训练,即对第二神经网络和/或第三神经网络的网络参数进行调整处理。

在其中一些实施方式中,基于第一差异、深度估计信息和待判别对象的预测类别对第一神经网络、第二神经网络和/或第三神经网络进行训练,可以包括:根据第一差异、稀疏深度样本信息与对应的样本场景中位置的深度标注信息之间的差异、深度估计信息与深度标注信息之间的差异、以及待判别对象的预测类别与标准结果之间的差异,对第二神经网络和/或第三神经网络进行训练,即对第二神经网络和/或第三神经网络的网络参数进行调整处理。

具体地,可以迭代执行上述利用样本图像,对第一神经网络和第二神经网络进行训练实施例的流程,直至满足第五预设训练完成条件,该第五预设训练完成条件例如可以包括以下任意一项或多项:对第一神经网络、第二神经网络和/或第三神经网络的训练次数达到第五预设次数阈值;或者,第一差异小于第一预设阈值,等等。

另外,在本申请上述各实施例中,上述基于条件信息,利用第三神经网络,确定待判别对象的预测类别为真实或合成,可以包括:

利用第三神经网络,对上述待判别对象和条件信息进行至少一级有效特征提取处理,得到有效特征;

利用第三神经网络,基于上述有效特征,确定待判别对象的预测类别为真实或合成。

在其中一些可选示例中,可以利用第三神经网络和第二预设掩膜(mask),对待判别对象和条件信息进行至少一级有效特征提取处理,即,可以根据实际需求对待判别对象和条件信息进行一级或任意多级有效特征提取处理,得到有效特征。

图6为本申请一个实施例中对待判别对象和条件信息进行其中一级有效特征提取处理的一个示例性示意图。如图6所示,在其中一个可选示例中,第三神经网络接收到待判别对象和条件信息后,通过一个卷积层对该待判别对象和条件信息进行特征提取,之后依次通过后续的各卷积层对该特征进行提取,其中的各卷积层对该特征进行提取,可以是采用任意的卷积特征提取的方式对输入的特征进行特征提取处理,也可以采用本申请记载的有效特征提取的方式对输入的特征进行有效特征提取处理。其中,参见图6,本申请一个可选示例中,采用有效特征提取的方式对输入的特征进行有效特征提取处理包括:

基于第二预设掩膜对输入的特征进行逐像素点相乘(501),其中,第二预设掩膜也可以称为深度有效性矩阵,用于表示样本图像中像素点对应的深度信息是否有效,即:是否获取到样本图像中各像素点对应的深度信息,可以预设获取到样本图像中各像素点对应的深度信息时深度有效性矩阵中相应元素的值为1,未获取到样本图像中各像素点对应的深度信息时深度有效性矩阵中相应元素的值为0;例如采用3x3的卷积核对操作501的输出结果进行卷积(502);

对第二预设掩膜进行归一化(normalization)处理(503),并获取归一化处理的倒数(504);

将操作504输出的归一化处理的倒数与操作502的卷积结果进行逐像素点相乘(505),之后对操作505输出的点乘结果进行偏置(bias)处理(506),输出有效特征,以作为第三神经网络中下一卷积层的输入或者用于确定待判别对象的预测类别为真实或合成;

对第二预设掩膜进行最大池化(max-pooling)处理(507),得到的结果可以作为下一卷积层的第二预设掩膜进行有效特征提取处理。

基于上述各实施例对第二神经网络的训练完成后,可以去除上述第三神经网络,得到训练好的网络(包括但不限于第一神经网络和第二神经网络),用于实现本申请上述各实施例的图像处理方法。

本申请实施例提供的任一种图像处理方法可以由任意适当的具有数据处理能力的设备执行,包括但不限于:终端设备和服务器等。或者,本申请实施例提供的任一种图像处理方法可以由处理器执行,如处理器通过调用存储器存储的相应指令来执行本申请实施例提及的任一种图像处理方法。下文不再赘述。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

图7为本申请一个实施例的图像处理装置的结构示意图。该实施例的图像处理装置可用于实现本申请上述各实施例的图像处理方法。如图7所示,该实施例的图像处理装置包括:第一深度预测模块和第二深度预测模块。其中:

第一深度预测模块,用于对待处理图像进行深度预测,得到该图像中场景的初始深度预测信息。

第二深度预测模块,用于基于上述初始深度预测信息和场景的稀疏深度信息,得到场景的深度信息。

基于本申请上述实施例提供的图像处理装置,对待处理图像进行深度预测,得到初始深度预测信息,再基于上述初始深度预测信息和稀疏深度信息,得到场景的深度信息。本申请实施例由待处理图像预测得到初始深度预测信息,为后续获取场景的深度信息提供了基础,有助于提升最终的深度信息结果的准确率和稳定性;基于上述初始深度预测信息和稀疏深度信息,获取场景的深度信息,提高了图像处理结果的准确性。

图8为本申请另一个实施例的图像处理装置的结构示意图。如图8所示,与图7所示的实施例相比,该实施例的图像处理装置还包括:第一获取模块,用于获取上述稀疏深度信息。

在其中一些实施方式中,该第一获取模块可以包括:用于获取场景的稀疏深度信息的深度传感器或者几何装置。

在其中一些可选示例中,几何装置具体用于:对双目相机采集到的双目图像或单目相机采集到的相邻帧图像进行匹配处理,得到场景的稀疏深度信息。相应地,上述待处理图像为双目相机采集的双目图像中的一张图像;或者,上述待处理图像为单目相机采集的图像。

再参见图8,在其中一些实施方式中,第二深度预测模块可以包括:第一获取单元,用于基于初始深度预测信息,将稀疏深度信息映射到尺度残差域,得到稀疏尺度信息;第二获取单元,用于基于初始深度预测信息和稀疏尺度信息,得到场景的稠密尺度信息;第三获取单元,用于基于初始深度预测信息和稠密尺度信息,得到场景的深度信息。

在其中一些可选示例中,第一获取单元具体用于将稀疏深度信息与初始深度预测信息进行逐像素点相除,得到稀疏尺度信息;第三获取单元,具体用于将初始深度预测信息和稠密尺度信息进行逐像素点相乘,得到场景的深度信息。

在其中一些可选示例中,第二获取单元,具体用于将图像、初始深度预测信息和稀疏尺度信息进行连接,得到第一连接信息,以及基于该第一连接信息,得到场景的稠密尺度信息。

另外,再参见图8,在本申请又一个实施例的图像处理装置中,还可以包括:场景重建模块,用于基于场景的深度信息进行三维场景重建。

或者,再参见图8,在本申请又一个实施例的图像处理装置中,还可以包括:定位与地图构建模块,用于基于场景的深度信息和基于slam系统获取的深度信息进行定位与地图构建。

或者,再参见图8,在本申请又一个实施例的图像处理装置中,还可以包括:确定模块,用于基于场景的深度信息确定增强现实系统和/或虚拟现实系统中的遮挡关系。

或者,再参见图8,在本申请又一个实施例的图像处理装置中,还可以包括:识别模块,用于基于场景的深度信息对当前行驶对象周围的障碍物进行识别。

另外,再参见图8,可选地,还可以进一步包括:预警模块和/或控制模块。其中:预警模块,用于基于障碍物的识别结果对当前行驶对象进行碰撞预警。控制模块,用于基于障碍物的识别结果对当前行驶对象进行驾驶控制。

在本申请上述各实施例中,第一深度预测模块可以包括:利用第一神经网络;第二深度预测模块可以包括:第二神经网络。图9为本申请再一个实施例的图像处理装置的结构示意图。如图9所示,与上述图7或图8所示的实施例相比,该实施例的图像处理装置还包括:训练模块,用于利用样本图像,对第一神经网络和/或第二神经网络进行训练。

可选地,在本申请又一个实施例的图像处理装置中,第二神经网络还可用于基于输入的样本图像、样本图像中样本场景的初始深度预测信息和样本场景的稀疏深度样本信息,得到样本场景的深度估计信息。再参见图9,该实施例的图像处理装置还包括:第三神经网络,用于基于条件信息,确定待判别对象的预测类别为真实或合成,其中的条件信息包括样本图像、样本场景的初始深度预测信息和稀疏深度样本信息中的至少一项,待判别对象包括深度估计信息或者所述样本场景的深度标注信息。相应地,该实施例中,训练模块利用样本图像,对第二神经网络进行训练时,具体用于基于深度估计信息的预测类别,对第二神经网络和第三神经网络的网络参数进行调整处理。

另外,再参见图9,在本申请又一个实施例的图像处理装置中,第二深度预测模块还可以包括:第一获取单元,用于基于输入的样本图像中样本场景的初始深度预测信息,将输入的样本场景的稀疏深度样本信息映射到尺度残差域,得到稀疏尺度样本信息。在其中一些实施方式中,第一获取单元具体用于将稀疏深度样本信息与样本场景的初始深度预测信息进行逐像素点相除,得到稀疏尺度样本信息。相应地,该实施例中,第二神经网络,具体用于基于样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息,得到样本场景的稠密尺度预测信息。在其中一些实施方式中,第二神经网络,具体用于:将样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息进行连接,得到第二连接信息;利用第二神经网络,基于第二连接信息,得到稠密尺度预测信息。该实施例的图像处理装置还包括:第三神经网络,用于基于条件信息,确定待判别对象的预测类别为真实或合成,其中的条件信息包括样本图像、样本场景的初始深度预测信息和稀疏尺度样本信息中的至少一项,待判别对象包括稠密尺度预测信息或者所述稠密尺度标注信息。相应地,该实施例中,训练模块利用样本图像,对第二神经网络进行训练时,具体用于基于稠密尺度预测信息的预测类别,对第二神经网络和第三神经网络的网络参数进行调整处理。

在其中一些实施方式中,第三神经网络,具体用于:对待判别对象和条件信息进行至少一级有效特征提取处理,例如,利用预设掩膜,对待判别对象和条件信息进行至少一级有效特征提取处理,得到有效特征;以及基于有效特征,确定待判别对象的预测类别为真实或合成。

另外,在图9所示的各实施例的图像处理装置中,第一神经网络,还可用于基于样本图像进行深度预测,得到样本图像中样本场景的初始深度预测信息。相应地,该实施例中,训练模块利用样本图像,对第一神经网络进行训练时,具体用于:确定样本场景的初始深度预测信息与样本场景的深度标注信息之间的第一差异;以及基于第一差异对第一神经网络的网络参数进行调整处理。

另外,本申请实施例提供的另一种电子设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行存储器中存储的计算机程序,且计算机程序被执行时,实现本申请上述任一实施例的图像处理方法。

图10为本申请电子设备一个应用实施例的结构示意图。下面参考图10,其示出了适于用来实现本申请实施例的终端设备或服务器的电子设备的结构示意图。如图10所示,该电子设备包括一个或多个处理器、通信部等,所述一个或多个处理器例如:一个或多个中央处理单元(cpu),和/或一个或多个图像处理器(gpu)等,处理器可以根据存储在只读存储器(rom)中的可执行指令或者从存储部分加载到随机访问存储器(ram)中的可执行指令而执行各种适当的动作和处理。通信部可包括但不限于网卡,所述网卡可包括但不限于ib(infiniband)网卡,处理器可与只读存储器和/或随机访问存储器中通信以执行可执行指令,通过总线与通信部相连、并经通信部与其他目标设备通信,从而完成本申请实施例提供的任一图像处理方法对应的操作,例如,对待处理图像进行深度预测,得到所述图像中场景的初始深度预测信息;基于所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息。

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

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

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

特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本申请任一实施例提供的图像处理方法步骤对应的指令。在这样的实施例中,该计算机程序可以通过通信部分从网络上被下载和安装,和/或从可拆卸介质被安装。在该计算机程序被cpu执行时,执行本申请的方法中限定的上述功能。

另外,本申请实施例还提供了一种计算机程序,包括计算机指令,当计算机指令在设备的处理器中运行时,实现本申请上述任一实施例的图像处理方法。

在一个可选实施方式中,所述计算机程序具体为软件产品,例如软件开发包(softwaredevelopmentkit,sdk),等等。

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

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

在一个或多个可选实施方式中,本发明实施例还提供了一种图像处理方法及其对应的装置和电子设备、计算机存储介质、计算机程序以及计算机程序产品,其中,该方法包括:第一装置向第二装置发送图像处理指示,该指示使得第二装置执行上述任一可能的实施例中的图像处理方法;第一装置接收第二装置发送的深度信息。

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

特别地,根据本发明实施例的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明实施例的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行流程图所示的方法的程序代码,程序代码可包括对应执行本发明实施例提供的图像处理方法步骤对应的指令,例如,对待处理图像进行深度预测,得到所述图像中场景的初始深度预测信息的指令;基于所述初始深度预测信息和所述场景的稀疏深度信息,得到所述场景的深度信息的指令。

另外,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现本申请上述任一实施例的图像处理方法。

本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

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

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

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