掌桥专利:专业的专利平台
掌桥专利
首页

神经网络的生成、图像处理方法、装置、电子设备及介质

文献发布时间:2023-06-19 12:07:15


神经网络的生成、图像处理方法、装置、电子设备及介质

技术领域

本公开涉及图像处理技术领域,具体而言,涉及一种神经网络的生成、图像处理方法、装置、电子设备及介质。

背景技术

目标检测和语义分割是计算机视觉中的两种重要图像处理任务。目标检测能够对图像中的目标对象进行检测,得到目标对象在图像中的具体位置;语义分割能够在像素维度上对图像中的像素点进行语义的分类。

对图像进行处理方法,得到目标检测结果、或语义分割结果存在精度较低的问题。

发明内容

本公开实施例至少提供一种神经网络的生成、图像处理方法、装置、电子设备及介质。

第一方面,本公开实施例提供了一种神经网络的生成方法,包括:对样本图像进行形变矫正变换,得到样本图像对应的矫正图像;利用样本图像对应的矫正图像训练待训练神经网络,得到目标神经网络。

这样,通过对样本图像进行矫正变换,然后利用得到的矫正图像来训练待训练神经网络,从而能够降低目标对象在图像中的形变对神经网络的训练结果造成的影响,提升目标神经网络的精度。

一种可能的实施方式中,确定对所述样本图像进行形变矫正变换得到的矫正图像中的第一像素点;针对所述矫正图像中的各个第一像素点、以及所述样本图像和对应矫正图像之间的矫正变换关系信息,确定与该第一像素点对应的位于所述样本图像中的第二像素点;其中,所述矫正变换关系包括:焦距、第一像素点在矫正图像中的位置、第二像素点在样本图像中的位置之间的关系;基于与该第一像素点对应的第二像素点的像素值,确定该第一像素点的像素值;基于各个第一像素点的像素值,生成所述矫正图像。

一种可能的实施方式中,所述确定对所述样本图像进行形变矫正变换得到的矫正图像中的第一像素点,包括:基于所述样本图像中的角点像素点在样本图像中的位置信息、以及所述矫正变换关系信息,确定矫正图像中的角点像素点在矫正图像中的位置信息;基于所述矫正图像中的角点像素点在所述矫正图像中的位置信息,确定位于所述矫正图像中的第一像素点。

一种可能的实施方式中,还包括:采用下述方式生成所述矫正变换关系信息:构建以相机的焦点为原点的直角坐标系;以及,建立以相机的光心为原点、以相机的焦距为半径的球面坐标系;基于目标对象相对于相机的光轴的入射角,确定目标对象在直角坐标系中的第一投影点,以及在球面坐标系中的第二投影点;基于第一投影点在直角坐标系中的第一坐标值,以及第二投影点在球面坐标系中的第二坐标值,生成第一投影点和第二投影点之间的转换关系信息,作为所述矫正变换关系信息。

一种可能的实施方式中,所述样本图像包括源域样本图像和目标域样本图像;对样本图像进行形变矫正变换,得到样本图像对应的矫正图像,包括:对源域样本图像和目标域样本图像分别进行形变矫正变换,得到源域矫正图像和目标域矫正图像。

这样,对源域样本图像和目标域样本图像分别进行形变矫正变换,利用形变矫正变换的结果训练神经网络,从而减小目标对象投影至图像时所产生的形变对源域和目标域之间的特征对齐精度造成的影响,提升神经网络的精度。

一种可能的实施方式中,所述方法还包括:对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息。

一种可能的实施方式中,针对所述标注信息包括源域样本图像中各个像素点的语义信息的情况,所述对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息,包括:基于所述源域样本图像中各个像素点的语义信息,生成标注图像;对所述标注图像进行形变矫正变换,得到所述标注图像的矫正标注图像;基于所述矫正标注图像,得到所述矫正标注信息。

一种可能的实施方式中,针对所述标注信息包括目标对象在所述源域样本图像中的位置信息的情况,所述位置信息包括:目标对象的检测框的角点在所述源域样本图像中的坐标值;所述对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息,包括:基于所述目标对象的检测框的角点在所述源域原本图像中的坐标值、以及矫正变换关系信息,确定所述检测框的角点在所述源域矫正图像中的坐标值;基于所述检测框的角点在所述源域矫正图像中的坐标值,得到所述矫正标注信息。

一种可能的实施方式中,利用样本图像对应的矫正图像训练待训练神经网络,得到目标神经网络,包括:利用所述源域矫正图像、所述目标域矫正图像、以及所述矫正标注信息,训练待训练神经网络,得到目标神经网络;所述利用所述源域矫正图像、所述目标域矫正图像、以及所述矫正标注信息,训练待训练神经网络,得到目标神经网络,包括:利用待训练的神经网络对所述源域矫正图像、以及所述目标域矫正图像进行处理,得到所述源域矫正图像对应的第一结果、以及所述目标域矫正图像对应的第二结果;基于所述第一结果、所述第二结果、所述矫正标注信息、以及所述源域矫正图像中各个第一像素点对应的权重值,确定模型损失;利用所述模型损失训练所述待训练神经网络,得到所述目标神经网络。

一种可能的实施方式中,还包括:针对所述源域矫正图像中的各个第一像素点,基于该第一像素点对应的第二像素点在所述源域样本图像中的坐标值,以及该第一像素点的相邻第一像素点对应的第二像素点在所述源域样本图像中的坐标值,确定该第一像素点的权重值。

第二方面,本公开实施例还提供一种图像处理方法,包括:获取待处理图像;对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像;利用如第一方面任一项所述的神经网络的生成方法生成的目标神经网络对所述目标矫正图像进行处理,得到所述目标矫正图像的中间处理结果;基于所述中间处理结果,得到所述待处理图像的目标处理结果。

一种可能的实施方式中,所述对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像,包括:确定对所述待处理图像进行形变矫正变换得到的目标矫正图像中的第一目标像素点;针对所述目标矫正图像中的各个第一目标像素点、以及所述待处理图像和对应目标矫正图像之间的矫正变换关系信息,确定与该目标像素点对应的位于所述待处理图像中的第二目标像素点;基于与该第一目标像素点对应的第二目标像素点的像素值,确定该第一目标像素点的像素值;基于各个第一目标像素点的像素值,生成所述目标矫正图像。

一种可能的实施方式中,所述确定对所述待处理图像进行形变矫正变换得到的目标矫正图像中的第一目标像素点,包括:基于所述待处理图像中的角点像素点在待处理图像中的位置信息、以及所述矫正变换关系信息,确定所述目标矫正图像中的角点像素点在所述目标矫正图像中的位置信息;基于所述目标矫正图像中的角点像素点在所述目标矫正图像中的位置信息,确定位于所述目标矫正图像中的第一目标像素点。

一种可能的实施方式中,所述基于所述中间处理结果,得到所述待处理图像的目标处理结果,包括:对所述中间处理结果,进行逆形变矫正变换,得到所述待处理图像的目标处理结果。

一种可能的实施方式中,所述目标处理结果,包括:所述待处理图像的语义分割结果,和/或所述待处理图像的目标检测结果。

第三方面,本公开实施例还提供一种神经网络的生成装置,包括:第一变换模块,用于对样本图像进行形变矫正变换,得到样本图像对应的矫正图像;训练模块,用于利用样本图像对应的矫正图像训练待训练神经网络,得到目标神经网络。

一种可能的实施方式中,第一变换模块,在对样本图像进行形变矫正变换时,用于:确定对所述样本图像进行形变矫正变换得到的矫正图像中的第一像素点;针对所述矫正图像中的各个第一像素点、以及所述样本图像和对应矫正图像之间的矫正变换关系信息,确定与该第一像素点对应的位于所述样本图像中的第二像素点;基于与该第一像素点对应的第二像素点的像素值,确定该第一像素点的像素值;基于各个第一像素点的像素值,生成所述矫正图像。

一种可能的实施方式中,第一变换模块,在确定对所述样本图像进行形变矫正变换得到的矫正图像中的第一像素点时,用于:基于所述样本图像中的角点像素点在样本图像中的位置信息、以及所述矫正变换关系信息,确定矫正图像中的角点像素点在矫正图像中的位置信息;基于所述矫正图像中的角点像素点在所述矫正图像中的位置信息,确定位于所述矫正图像中的第一像素点。

一种可能的实施方式中,还包括:关系确定模块,用于采用下述方式生成所述矫正变换关系信息:构建以相机的焦点为原点的直角坐标系;以及,建立以相机的光心为原点、以相机的焦距为半径的球面坐标系;基于目标对象相对于相机的光轴的入射角,确定目标对象在直角坐标系中的第一投影点,以及在球面坐标系中的第二投影点;基于第一投影点在直角坐标系中的第一坐标值,以及第二投影点在球面坐标系中的第二坐标值,生成第一投影点和第二投影点之间的转换关系信息;将第一投影点和第二投影点之间的转换关系信息,作为所述矫正变换关系信息。

一种可能的实施方式中,所述样本图像包括源域样本图像和目标域样本图像;所述第一变换模块,在对样本图像进行形变矫正变换,得到样本图像对应的矫正图像时,用于:

对源域样本图像和目标域样本图像分别进行形变矫正变换,得到源域矫正图像和目标域矫正图像。

一种可能的实施方式中,所述第一变换模块,还用于:对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息。

一种可能的实施方式中,针对所述标注信息包括:源域样本图像中各个像素点的语义信息的情况,所述第一变换模块,在对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息时,用于:基于所述源域样本图像中各个像素点的语义信息,生成标注图像;对所述标注图像进行形变矫正变换,得到所述标注图像的矫正标注图像;基于所述矫正标注图像,得到所述矫正标注信息。

一种可能的实施方式中,针对所述标注信息包括:目标对象在所述源域样本图像中的位置信息的情况,所述位置信息包括:目标对象的检测框的角点在所述源域样本图像中的坐标值;所述第一变换模块,在对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息时,用于:基于所述目标对象的检测框的角点在所述源域原本图像中的坐标值、以及矫正变换关系信息,确定所述检测框的角点在所述源域矫正图像中的坐标值;基于所述检测框的角点在所述源域矫正图像中的坐标值,得到所述矫正标注信息。

一种可能的实施方式中,所述训练模块,在利用样本图像对应的矫正图像训练待训练神经网络,得到目标神经网络时,用于:利用所述源域矫正图像、所述目标域矫正图像、以及所述矫正标注信息,训练待训练神经网络,得到目标神经网络;所述训练模块,在所述利用所述源域矫正图像、所述目标域矫正图像、以及所述矫正标注信息,训练待训练神经网络,得到目标神经网络时,用于:利用待训练的神经网络对所述源域矫正图像、以及所述目标域矫正图像进行处理,得到所述源域矫正图像对应的第一结果、以及所述目标域矫正图像对应的第二结果;基于所述第一结果、所述第二结果、所述矫正标注信息、以及所述源域矫正图像中各个第一像素点对应的权重值,确定模型损失;利用所述模型损失训练所述待训练神经网络,得到所述目标神经网络。

一种可能的实施方式中,所述训练模块,还用于:针对所述源域矫正图像中的各个第一像素点,基于该第一像素点对应的第二像素点在所述源域样本图像中的坐标值,以及该第一像素点的相邻第一像素点对应的第二像素点在所述源域样本图像中的坐标值,确定该第一像素点的权重值。

第四方面,本公开实施例还提供一种图像处理装置,包括:获取模块,用于获取待处理图像;第二变换模块,用于对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像;处理模块,用于利用如第一方面任一项所述的神经网络的生成方法生成的目标神经网络对所述目标矫正图像进行处理,得到所述目标矫正图像的中间处理结果;第三变换模块,用于基于所述中间处理结果,得到所述待处理图像的目标处理结果。

一种可能的实施方式中,所述第二变换模块,在对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像时,用于:确定对所述待处理图像进行形变矫正变换得到的目标矫正图像中的第一目标像素点;针对所述目标矫正图像中的各个第一目标像素点、以及所述待处理图像和对应目标矫正图像之间的矫正变换关系信息,确定与该第一目标像素点对应的位于所述待处理图像中的第二目标像素点;基于与该第一目标像素点对应的第二目标像素点的像素值,确定该第一目标像素点的像素值;基于各个第一目标像素点的像素值,生成所述目标矫正图像。

一种可能的实施方式中,所述第二变换模块,在基于所述待处理图像,确定对所述待处理图像进行形变矫正变换得到的目标矫正图像中的第一目标像素点时,用于:基于所述待处理图像中的角点像素点在待处理图像中的位置信息、以及所述矫正变换关系信息,确定所述目标矫正图像中的角点像素点在所述目标矫正图像中的位置信息;基于所述目标矫正图像中的角点像素点在所述目标矫正图像中的位置信息,确定位于所述目标矫正图像中的第一目标像素点。

一种可能的实施方式中,所述第三变换模块,在基于所述中间处理结果,得到所述待处理图像的目标处理结果时,用于:对所述中间处理结果,进行逆形变矫正变换,得到所述待处理图像的目标处理结果。

一种可能的实施方式中,所述目标处理结果,包括:所述待处理图像的语义分割结果,和/或所述待处理图像的目标检测结果。

第五方面,本公开可选实现方式还提供一种电子设备,处理器、存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述处理器用于执行所述存储器中存储的机器可读指令,所述机器可读指令被所述处理器执行时,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤;

或者执行上述第二方面,或第二方面中任一种可能的实施方式中的步骤。

第六方面,本公开可选实现方式还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤;

或者执行上述第二方面,或第二方面中任一种可能的实施方式中的步骤。

关于上述神经网络的生成装置、图像处理装置、电子设备、及计算机可读存储介质的效果描述参见上述神经网络的生成方法和图像处理方法的说明,这里不再赘述。

为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本公开实施例所提供的一种神经网络的训练方法的流程图;

图2示出了本公开实施例所提供的对样本图像进行形变矫正变换的具体方法的流程图;

图3示出了本公开实施例所提供的目标对象在图像坐标系进行投影后发生形变的示意图;

图4示出了本公开实施例所提供的一种目标对象在图像坐标系、和球面坐标系分别进行投影后的投影示意图;

图5示出了本公开实施例所提供的对样本图像进行形变矫正变换的示例;

图6示出了本公开实施例所提供的对标注信息进行形变矫正变换的示例;

图7示出了本公开实施例所提供的对待训练的神经网络进行训练的示例;

图8示出了本公开实施例所提供的一种图像处理方法的流程图;

图9示出了本公开实施例所提供的一种神经网络的生成装置的示意图;

图10示出了本公开实施例所提供的一种图像处理装置的示意图;

图11示出了本公开实施例所提供的一种电子设备的示意图。

具体实施方式

为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。

经研究发现,在利用神经网络执行图像中的目标检测任务或者语义分割任务时,需要先采用大量的带有精细标注信息的样本图像对神经网络进行训练;然而样本图像的获取较为费力,为了解决该问题,当前通常采用无监督域适应的方式来训练神经网络。在采用无监督域适应的方式训练神经网络时,需要利用具有标注信息的源域图像和无标注信息的目标域图像对神经网路进行训练;在训练神经网络时,通过将源域图像和目标域图像进行特征混淆、或通过约束域差异度量的方式,来对源域和目标域的特征分布进行对齐,以在目标域上提供隐式或显式的监督信号。在将源域和目标域的特征分布进行对齐时,通常会考虑到由于背景、光照、天气等外在因素导致的域差异。然而,对于同一目标对象而言,拍摄的外部因素相同,拍摄的相机的不同,目标对象在不同相机拍摄的图像的成像会发生不同程度的形变,导致该目标对象在不同相机拍摄的图像中的成像有所区别,进而造成了源域和目标域之间的特征对齐较差,导致得到的神经网络的精度也较差的问题。

基于上述研究,本公开提供了一种神经网络的生成方法,通过对样本图像进行矫正变换,然后利用得到的矫正图像来训练待训练神经网络,从而能够降低目标对象在图像中的形变对神经网络的训练结果造成的影响,提升目标神经网络的精度。

针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本公开针对上述问题所提出的解决方案,都应该是发明人在本公开过程中对本公开做出的贡献。

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

为便于对本实施例进行理解,首先对本公开实施例所公开的一种神经网络的生成方法进行详细介绍,本公开实施例所提供的神经网络的生成方法的执行主体一般为具有一定计算能力的电子设备,该电子设备例如包括:终端设备或服务器或其它处理设备,终端设备可以为用户设备(User Equipment,UE)、移动设备、用户终端、终端、蜂窝电话、无绳电话、个人数字助理(Personal Digital Assistant,PDA)、手持设备、计算设备、车载设备、可穿戴设备等。在一些可能的实现方式中,该神经网络的生成方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。

下面以对本公开实施例提供的神经网络的生成方法加以说明。

参见图1示,为本公开实施例提供的神经网络的生成方法的流程图,所述方法包括步骤S101~S102,其中:

S101:对样本图像进行形变矫正变换,得到样本图像对应的矫正图像;

S102:利用样本图像对应的矫正图像训练待训练神经网络,得到目标神经网络。

本公开实施例通过对样本图像进行矫正变换,然后利用得到的矫正图像来训练待训练神经网络,从而能够降低目标对象在图像中的形变对神经网络的训练结果造成的影响,提升目标神经网络的精度。

下面对上述S101~S102分别加以详细说明。

针对上述S101,样本图像可以全部具有标注信息,通过样本图像进行矫正变换,能够降低目标对象在样本图像中的形变程度,从而能够降低由于目标对象的形变对神经网络的训练过程造成的影响,提升得到的目标神经网络的精度。

另一实施例中,在利用样本图像对待训练的神经网络进行有监督训练时,样本图像还对应有标注信息;在对样本图像进行形变矫正变换的同时,还可以对样本图像的标注信息进行形变矫正变换。具体对样本图像的标注信息进行形变矫正变换的方式,与下述实施例中对源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息的方式类似,在此不再赘述。

另一种实施例中,样本图像还可以包括源域样本图像和目标域样本图像。

源域样本图像包括多张具有标注信息的样本图像;目标域样本图像包括多张未标注的样本图像。目标神经网络执行的图像处理任务不同,对应的标注信息有所区别。

示例性的,若目标神经网络用于对图像执行目标检测任务,则标注信息包括目标对象在源域样本图像中的位置信息和类别信息;该位置信息例如为目标对象的包围框的顶点对应的像素点在源域样本图像中的坐标值;该类别信息例如包括:目标对象的所属类别;若目标神经网络用于对图像执行语义分割处理,则标注信息包括源域样本图像中各个像素点的语义信息。

这样,通过对源域样本图像和目标域样本图像分别进行形变矫正变换,得到源域矫正图像和目标域矫正图像,并对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息,然后利用源域矫正图像、目标域矫正图像、以及矫正标注信息,训练待训练神经网络,得到目标神经网络,从而减小目标对象投影至图像时所产生的形变对源域和目标域之间的特征对齐造成的影响,提升神经网络的精度。

参见图2所示,本公开实施例提供一种对样本图像进行形变矫正变换的具体方法,包括:

S201:确定对所述样本图像进行形变矫正变换得到的矫正图像中的第一像素点。

在具体实施中,在基于样本图像,确定对样本图像进行形变矫正变换得到的矫正图像中的第一像素点时,例如可以基于所述样本图像中的角点像素点在样本图像中的位置信息、以及样本图像和矫正图像之间的矫正变换关系信息,确定矫正图像中的角点像素点在矫正图像中的位置信息;基于所述矫正图像中的角点像素点在所述矫正图像中的位置信息,确定位于所述矫正图像中的第一像素点。

在确定位于矫正图像中的第一像素点时,可以将矫正图像中的角点像素点作为矫正图像中最边缘位置的第一像素点,进而基于矫正图像中的角点像素点在矫正图像中的位置信息,得到第一像素点的坐标值在u轴上的取值范围和v轴上的取值范围,并利用上述u轴上的取值范围和v轴上的取值范围,确定位于矫正图像中的第一像素点。

由于不同的样本图像是利用具有不同内参的相机获取的,例如相机的焦距、主点、图像传感器格式等不同,都会导致在同一拍摄角度对相同目标对象进行拍摄获取的图像中,目标对象也会产生不同的程度的形变,对于内参不同的相机而言,目标对象会在成像的图像中产生不同程度的形变。

对于同一相机而言,同一目标对象与相机光轴之间的角度不同,也会造成不同该目标对象在图像中的投影发生不同程度的形变。

如图3中a和图3中b所示,15个相同的目标对象构成一个球面阵列,所有的目标对象与相机的距离相等,但是分别位于相对于相机A的不同位置,但15个目标对象在图像平面的成像会产生明显的形变,且不同位置的目标对象产生的形变有所区别。如图3中c所示,是对图3中b进行形变矫正后得到的,可以看到,在对图像进行了形变矫正变换后,目标对象的形变程度有所缓解,有利于后续的特征对齐。

为了对目标对象在图像平面投影时发生的形变进行校正,本公开示例提供一种建立样本图像和对应的校正图像之间的校正变换关系信息的具体方式,根据该矫正变换关系信息,对样本图像进行形变矫正变换,从而在一定程度上矫正由于目标对象的投影形变。在对待训练神经网络进行训练时,利用矫正图像对待训练神经网络进行训练,以降低由于投影形变对神经网络的精度造成的影响。

具体地,例如可以采用下述方式生成矫正变换关系信息:

构建以相机的焦点为原点的直角坐标系;其中直角坐标系包括x、y以及z轴,其中,z轴为相机光轴所在的直线。

以及,建立以相机的光心为原点、以相机的焦距为半径的球面坐标系;其中,球面坐标系包括u轴、v轴;

基于目标对象相对于相机的光轴的入射角,确定目标对象在直角坐标系中的第一投影点,以及在球面坐标系中的第二投影点;

基于第一投影点在直角坐标系中的第一坐标值(X,Y),以及第二投影点在球面坐标系中的第二坐标值(U,V),生成第一投影点和第二投影点之间的转换关系信息;

将第一投影点和第二投影点之间的转换关系信息,作为所述矫正变换关系信息。

在具体实施中,如图4中a所示,示出了目标对象与相机光轴的角度的变化导致目标对象在图像中的成像发生形变的具体示例,其中,l、m、n为结构相似的物体,它们与相机光轴之间的相对位置不同,也即相对于相机的光轴的入射角不同,且与相机的光学中心O的距离相同,投影至相机的成像平面(也即基于相机的焦点建立的直角坐标系)后,它们的成像l′、m′、n′的长度有明显的不同。从图4中a可见,随着目标对象的入射角的增大,其成像宽度和成像高度越大,造成了位于不同位置的目标对象在图像平面的投影发生形变程度也有所不同,这种形变会影响源域样本图像和目标域样本图像之间特征对齐,导致基于源域样本图像和目标域样本图像训练的神经网络存在精度较差的问题。而在将l、m、n投影至球面坐标系后,它们的成像l″、m″、n″的长度相同。

因此,如图4中b所示,本公开实施例建立以相机的焦点F为原点的直角坐标系xFy,并建立以相机的光心为原点,以相机的焦距为半径的球面坐标系uv,对于位于相机拍摄视野范围内的某个目标对象而言,若其在直角坐标系中第一投影点的第一坐标值为(X,Y),在球面坐标系中的第二投影点的第二坐标值为(U,V),参见图4中c和图4中d所示,该第一投影点和第二投影点之间满足下述公式(1)~(3):

M′[U,V]=M[X,Y] (3)

其中,(U,V)表示第二投影点在球面坐标系中的坐标值;(X(U),Y(V))表示与第二投影点对应的第一投影点在直角坐标系中的坐标值。

f表示相机的焦距,

从上述公式(1)~(2)可见,目标对象与相机的光轴在x轴方向之间的入射角α越大,则目标对象在x轴方向的形变越大;入射角α越小,则目标对象在x轴方向的形变越小。且,目标对象与相机的光轴在y轴方向之间的入射角β越大,则目标对象在y轴方向的形变越大;入射角β越小,则目标对象在y轴方向的形变越小。

将上述公式(1)~(2)作为矫正变换关系信息。

在基于样本图像,在基于所述样本图像中的角点像素点在样本图像中的位置信息、以及样本图像和矫正图像之间的矫正变换关系信息,确定矫正图像中的角点像素点在矫正图像中的位置信息时样本图像中的角点像素点例如包括:P

根据上述公式(1)和公式(2),能够得到矫正图像中的角点像素点P

S202:针对所述矫正图像中的各个第一像素点、以及矫正变换关系信息,确定与该第一像素点对应的第二像素点。

S203:基于与该第一像素点对应的第二像素点的像素值,确定该第一像素点的像素值。

S204:基于各个第一像素点的像素值,生成所述矫正图像。

此处,在确定了各个第一像素点后,也即确定了各个第一像素点在矫正图像中的第一坐标值;然后按照上述公式(1)和公式(2),得到与第一像素点对应的第二像素点在样本图像中的第二坐标值,然后基于第二像素点在样本图像中的第二坐标值,确定对应的第二像素点。

在确定了第二像素点后,也即能够确定第二像素点的像素值,将第二像素点的像素值,确定为第一像素点的像素值。

在确定了所有第一像素点的像素值后,基于各个第一像素点的像素值、以及各个第一像素点在矫正样本图像中的坐标值,得到矫正图像。

如图5所示,本公开实施例提供一种将样本图像a进行形变矫正变换后,得到矫正图像b的具体示例。

在本公开另一实施例中,在样本图像包括上述源域样本图像、和目标域样本图像的情况下,也即,源域样本图像和目标域样本图像均可以通过图2所示的方法进行形变矫正变换,得到对应的矫正图像。其中,采用图2所示的实施例对源域样本图像进行形变矫正变换,得到源域矫正图像;采用图2所示的实施例对目标域样本图像进行形变矫正变换,得到目标域矫正图像。

另外,由于源域样本图像的标注信息是在源域图像的基础之上进行标注的,在对源域样本图像进行了形变矫正变换后,为了保持源域样本图像和标注信息之间的一致性,还要将源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息。

其中,对标注信息进行形变矫正变换时,由于源域样本图像的标注信息与神经网络的图像处理任务相关,例如若神经网络的图像处理任务为语义分割,则标注信息为源域样本图像中各个像素点的语义信息,则可以基于所述源域样本图像中各个像素点的语义信息,生成标注图像;对所述标注图像进行形变矫正变换,得到所述标注图像的矫正标注图像;基于所述矫正标注图像,得到所述矫正标注信息。

此处,对标注图像进行形变矫正变换的方式,与对样本图像进行形变矫正变换的方式相似,在此不再赘述。

另外,由于标注图像中的像素点和源域样本图像中的像素点存在一一对应关系,因此,也可以在对源域样本图像进行形变矫正变换的时候,在确定源域矫正图像中第一像素点对应的第二像素点的过程中,将第二像素点的语义信息,作为第一像素点在矫正标注图像中对应的标注像素点的语义信息,得到矫正标注图像。

又例如,针对神经网络的处理任务为目标检测,则源域样本图像的标注信息包括:目标对象在所述源域样本图像中的位置信息,所述位置信息包括:目标对象的检测框的角点在所述源域样本图像中的坐标值;

所述对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息,包括:

基于所述目标对象的检测框的角点在所述源域原本图像中的坐标值、以及矫正变换关系信息,确定所述检测框的角点在所述源域矫正图像中的坐标值;

基于所述检测框的角点在所述源域矫正图像中的坐标值,得到所述矫正标注信息。

另外,在有些情况中,目标对象在所述源域样本图像中的位置信息还可以表示为目标对象的中心点在源域样本图像中的坐标值、以及目标对象的检测框的角点相对于目标对象的中心点的偏移量,在该种情况下,可以首先根据上述中心点在源域样本图像中的坐标值、以及偏移量,得到检测框的角点在源域样本图像中的坐标值,然后再进行形变矫正变换。

参见图6所示,本公开实施例提供一种将源域样本图像a的标注图像b进行形变矫正变换后,得到矫正标注图像c的具体示例。

针对上述S102,在利用样本图像对应的矫正图像训练待训练神经网络时,例如可以利用待训练的神经网络对样本图像进行处理,然后利用处理结果得到模型损失,并模型损失对待训练的神经网络进行训练,得到目标神经网络。

另一实施例中,还可以利用所述源域矫正图像、所述目标域矫正图像、以及所述矫正标注信息,训练待训练神经网络,得到目标神经网络。

在利用源域样本图像对应的源域矫正图像、目标域样本图像对应的目标域矫正图像,并得到矫正标注信息后,可以利用待训练神经网络对源域矫正图像和目标域矫正图像分别进行处理,得到源域矫正图像对应的第一结果、以及目标域矫正图像对应的第二结果。

然后基于所述第一结果、所述第二结果、所述矫正标注信息、以及所述源域矫正图像中各个第一像素点对应的权重值,确定模型损失,并利用模型损失训练待训练神经网络,得到目标神经网络。

此处,模型损失例如满足下述公式(4):

其中,L

其中,源域矫正图像中各个第一像素点对应的权重值例如可以采用下述方式确定:

针对所述源域矫正图像中的各个第一像素点,基于该第一像素点对应的第二像素点在所述源域样本图像中的坐标值,以及该第一像素点的相邻第一像素点对应的第二像素点在所述源域样本图像中的坐标值,确定该第一像素点的权重值。

此处,由于在将样本图像进行形变矫正变换时,得到的矫正图像中第一像素点的信息,被用来表征样本图像中一个区域的第二像素点的信息,且随着第一像素点与矫正图像对应的球面坐标系uv的中心距离越远,第一像素点对应的在样本图像中的区域也就越大,也即对应区域损失的信息也就越多,因此,会根据与第一像素点的相邻第一像素点对应的第二像素点在源域样本图像中的坐标值,确定第一像素点的权重值,且随着第一像素点与矫正图像对应的球面坐标系uv的中心距离越远,该第一像素点对应的权重值越大,从而使得待训练神经网络能够更多的学习到损失信息较多区域的特征,降低由于对样本图像中形变矫正变换导致的信息损失较多对待训练神经网络的训练过程影响,提升得到的目标神经网络的精度。

示例性的,假设源域矫正图像中的第一像素点为(U,V),其权重值w

w

其中,

(|U+1|,|V+1|)表示该第一像素点(U,V)对应的相邻第一像素点的坐标值。

基于上述公式(5)能够得到源域矫正图像中各个第一像素点的权重值。

在得到源域矫正图像中各个第一像素点的权重值后,即可以基于由各个第一像素点的权重值构成的权重矩阵,得到模型损失,进而训练待训练神经网络。

参见图7所示,本公开实施例还提供一种训练待训练神经网络的具体示例,包括:

对源域图像进行形变矫正变换,得到源域矫正图像。

对目标域样本图像进行形变矫正变换,得到目标域矫正图像。

对标注信息进行形变矫正变换,得到矫正标注信息。

利用待训练神经网络对源域矫正图像进行处理,得到第一结果。

利用待训练神经网络对目标域矫正图像进行处理,得到第二结果。

利用权重矩阵作为监督,基于矫正标注信息、第一结果和第二结果得到模型损失,对待训练神经网络进行训练,得到神经网络。

经过上述训练过程,得到的神经网络具有更高的精度。

参见图8所示,本公开实施例还提供一种图像处理方法,包括:

S801:获取待处理图像;

S802:对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像;

S803:利用如本公开任一实施例所述的神经网络的生成方法生成的目标神经网络对所述目标矫正图像进行处理,得到所述目标矫正图像的中间处理结果;

S804:基于所述中间处理结果,得到所述待处理图像的目标处理结果。

本公开实施例通过对待处理图像进行形变矫正变换,得到待处理图像的目标矫正图像,由于目标神经网络是利用经过形变矫正变换后的样本图像训练得到的,具有更高的精度,因而对于目标矫正图像进行处理时,得到的中间处理结果具有更高的精度;基于中间处理结果得到待处理图像的目标处理结果也具有更高的精度。

具体地,目标矫正图像的中间处理结果,也即利用目标神经网络对目标矫正图像进行处理的结果。

由于目标矫正图像进行了形变矫正变换后,尺寸上发生了变化,因此,无法直接将目标神经网络对目标矫正图像进行处理的结果直接作为待处理图像的结果,因此在得到目标矫正图像的中间处理结果后,需要基于中间处理结果,得到所述待处理图像的目标处理结果。具体基于中间处理结果,得到所述待处理图像的目标处理结果的方式参见下述实施例所述,在此不再赘述。

一种可能的实施方式中,所述对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像,包括:

基于所述待处理图像,确定对所述待处理图像进行形变矫正变换得到的目标矫正图像中的第一目标像素点;

针对所述目标矫正图像中的各个第一目标像素点、以及所述待处理图像和对应目标矫正图像之间的矫正变换关系信息,确定与该目标像素点对应的位于所述待处理图像中的第二目标像素点;

基于与该第一目标像素点对应的第二目标像素点的像素值,确定该第一目标像素点的像素值;

基于各个第一目标像素点的像素值,生成所述目标矫正图像。

一种可能的实施方式中,所述基于所述待处理图像,确定对所述待处理图像进行形变矫正变换得到的目标矫正图像中的第一目标像素点,包括:

基于所述待处理图像中的角点像素点在待处理图像中的位置信息、以及所述矫正变换关系信息,确定所述目标矫正图像中的角点像素点在所述目标矫正图像中的位置信息;

基于所述目标矫正图像中的角点像素点在所述目标矫正图像中的位置信息,确定位于所述目标矫正图像中的第一目标像素点。

这里,矫正变换关系的获取方式,与上述图1对应的实施例中矫正变换关系的获取方式相似,在此不再赘述。

一种可能的实施方式中,所述基于所述中间处理结果,得到所述待处理图像的目标处理结果,包括:

对所述中间处理结果,进行逆形变矫正变换,得到所述待处理图像的目标处理结果。

这里,对中间处理结果进行逆形变矫正变换,例如是基于上述公式(1)、(2),已知公式(1)和(2)中的U、V、和f,求X和Y的过程,具体不再赘述。

一种可能的实施方式中,所述目标处理结果,包括:所述待处理图像的语义分割结果,和/或所述待处理图像的目标检测结果。

本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。

基于同一发明构思,本公开实施例中还提供了与神经网络的生成方法对应的神经网络的生成装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述神经网络的生成方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。

参照图9所示,为本公开实施例提供的一种神经网络的生成装置的示意图,所述装置包括:

第一变换模块91,用于对样本图像进行形变矫正变换,得到样本图像对应的矫正图像;

训练模块92,用于利用样本图像对应的矫正图像训练待训练神经网络,得到目标神经网络。

一种可能的实施方式中,第一变换模块91,在对样本图像进行形变矫正变换时,用于:确定对所述样本图像进行形变矫正变换得到的矫正图像中的第一像素点;针对所述矫正图像中的各个第一像素点、以及所述样本图像和对应矫正图像之间的矫正变换关系信息,确定与该第一像素点对应的位于所述样本图像中的第二像素点;基于与该第一像素点对应的第二像素点的像素值,确定该第一像素点的像素值;基于各个第一像素点的像素值,生成所述矫正图像。

一种可能的实施方式中,第一变换模块91,在确定对所述样本图像进行形变矫正变换得到的矫正图像中的第一像素点时,用于:基于所述样本图像中的角点像素点在样本图像中的位置信息、以及所述矫正变换关系信息,确定矫正图像中的角点像素点在矫正图像中的位置信息;基于所述矫正图像中的角点像素点在所述矫正图像中的位置信息,确定位于所述矫正图像中的第一像素点。

一种可能的实施方式中,还包括:关系确定模块93,用于采用下述方式生成所述矫正变换关系信息:

构建以相机的焦点为原点的直角坐标系;以及,建立以相机的光心为原点、以相机的焦距为半径的球面坐标系;

基于目标对象相对于相机的光轴的入射角,确定目标对象在直角坐标系中的第一投影点,以及在球面坐标系中的第二投影点;

基于第一投影点在直角坐标系中的第一坐标值,以及第二投影点在球面坐标系中的第二坐标值,生成第一投影点和第二投影点之间的转换关系信息;

将第一投影点和第二投影点之间的转换关系信息,作为所述矫正变换关系信息。

一种可能的实施方式中,所述样本图像包括源域样本图像和目标域样本图像;所述第一变换模块91,在对样本图像进行形变矫正变换,得到样本图像对应的矫正图像时,用于:

对源域样本图像和目标域样本图像分别进行形变矫正变换,得到源域矫正图像和目标域矫正图像。

一种可能的实施方式中,所述第一变换模块91,还用于:对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息。

一种可能的实施方式中,针对所述标注信息包括:源域样本图像中各个像素点的语义信息的情况,所述第一变换模块91,在对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息时,用于:

基于所述源域样本图像中各个像素点的语义信息,生成标注图像;

对所述标注图像进行形变矫正变换,得到所述标注图像的矫正标注图像;

基于所述矫正标注图像,得到所述矫正标注信息。

一种可能的实施方式中,针对所述标注信息包括:目标对象在所述源域样本图像中的位置信息的情况,所述位置信息包括:目标对象的检测框的角点在所述源域样本图像中的坐标值;

所述第一变换模块91,在对所述源域样本图像对应的标注信息进行形变矫正变换,得到矫正标注信息时,用于:

基于所述目标对象的检测框的角点在所述源域原本图像中的坐标值、以及矫正变换关系信息,确定所述检测框的角点在所述源域矫正图像中的坐标值;

基于所述检测框的角点在所述源域矫正图像中的坐标值,得到所述矫正标注信息。

一种可能的实施方式中,所述训练模块92,在利用样本图像对应的矫正图像训练待训练神经网络,得到目标神经网络时,用于:利用所述源域矫正图像、所述目标域矫正图像、以及所述矫正标注信息,训练待训练神经网络,得到目标神经网络;所述训练模块92,在所述利用所述源域矫正图像、所述目标域矫正图像、以及所述矫正标注信息,训练待训练神经网络,得到目标神经网络时,用于:利用待训练的神经网络对所述源域矫正图像、以及所述目标域矫正图像进行处理,得到所述源域矫正图像对应的第一结果、以及所述目标域矫正图像对应的第二结果;基于所述第一结果、所述第二结果、所述矫正标注信息、以及所述源域矫正图像中各个第一像素点对应的权重值,确定模型损失;利用所述模型损失训练所述待训练神经网络,得到所述目标神经网络。

一种可能的实施方式中,所述训练模块92,还用于:

针对所述源域矫正图像中的各个第一像素点,基于该第一像素点对应的第二像素点在所述源域样本图像中的坐标值,以及该第一像素点的相邻第一像素点对应的第二像素点在所述源域样本图像中的坐标值,确定该第一像素点的权重值。

关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述神经网络的生成方法实施例中的相关说明,这里不再详述。

参见图10所示,本公开实施例还提供一种图像处理装置,包括:

获取模块101,用于获取待处理图像;

第二变换模块102,用于对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像;

处理模块103,用于利用如本公开任一实施例所述的神经网络的生成方法生成的目标神经网络对所述目标矫正图像进行处理,得到所述目标矫正图像的中间处理结果;

第三变换模块104,用于基于所述中间处理结果,得到所述待处理图像的目标处理结果。

一种可能的实施方式中,所述第二变换模块102,在对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像时,用于:

基于所述待处理图像,确定对所述待处理图像进行形变矫正变换得到的目标矫正图像中的第一目标像素点;

针对所述目标矫正图像中的各个第一目标像素点、以及所述待处理图像和对应目标矫正图像之间的矫正变换关系信息,确定与该第一目标像素点对应的位于所述待处理图像中的第二目标像素点;

基于与该第一目标像素点对应的第二目标像素点的像素值,确定该第一目标像素点的像素值;

基于各个第一目标像素点的像素值,生成所述目标矫正图像。

一种可能的实施方式中,所述第二变换模块102,在基于所述待处理图像,确定对所述待处理图像进行形变矫正变换得到的目标矫正图像中的第一目标像素点时,用于:

基于所述待处理图像中的角点像素点在待处理图像中的位置信息、以及所述矫正变换关系信息,确定所述目标矫正图像中的角点像素点在所述目标矫正图像中的位置信息;

基于所述目标矫正图像中的角点像素点在所述目标矫正图像中的位置信息,确定位于所述目标矫正图像中的第一目标像素点。

一种可能的实施方式中,所述第三变换模块104,在基于所述中间处理结果,得到所述待处理图像的目标处理结果时,用于:

对所述中间处理结果,进行逆形变矫正变换,得到所述待处理图像的目标处理结果。

一种可能的实施方式中,所述目标处理结果,包括:所述待处理图像的语义分割结果,和/或所述待处理图像的目标检测结果。

关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述图像处理方法实施例中的相关说明,这里不再详述。

本公开实施例还提供了一种电子设备,如图11所示,为本公开实施例提供的电子设备结构示意图,包括:

处理器111和存储器112;所述存储器112存储有处理器111可执行的机器可读指令,处理器111用于执行存储器112中存储的机器可读指令,所述机器可读指令被处理器111执行时,处理器111执行下述步骤:

对样本图像进行形变矫正变换,得到样本图像对应的矫正图像;利用样本图像对应的矫正图像训练待训练神经网络,得到目标神经网络。

或执行下述步骤:

获取待处理图像;

对所述待处理图像进行形变矫正变换,得到所述待处理图像的目标矫正图像;

利用本公开任一实施所述的神经网络的生成方法生成的目标神经网络对所述目标矫正图像进行处理,得到所述目标矫正图像的中间处理结果;

基于所述中间处理结果,得到所述待处理图像的目标处理结果。

上述存储器112包括内存1121和外部存储器1122;这里的内存1121也称内存储器,用于暂时存放处理器111中的运算数据,以及与硬盘等外部存储器1122交换的数据,处理器111通过内存1121与外部存储器1122进行数据交换。

上述指令的具体执行过程可以参考本公开实施例中所述的神经网络的生成方法或图像处理方法的步骤,此处不再赘述。

本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的神经网络的生成方法的步骤,或执行上述方法实施例中所述的图像处理方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。

本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的神经网络的生成方法的步骤、或图像处理方法的步骤,具体可参见上述方法实施例,在此不再赘述。

其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。

相关技术
  • 神经网络的生成、图像处理方法、装置、电子设备及介质
  • 神经网络系统生成方法和装置、图像处理方法和电子设备
技术分类

06120113175758