训练数据获取、神经网络训练及图像校正方法及装置与流程

文档序号:24337717发布日期:2021-03-19 12:18阅读:92来源:国知局
训练数据获取、神经网络训练及图像校正方法及装置与流程

本公开涉及网络技术领域,尤其涉及一种训练数据获取、神经网络训练及图像校正方法及装置。



背景技术:

模糊图像的校正,能够得到校正后的清晰图像。清晰图像的锐度高于模糊图像的锐度;清晰图像的解析力高于模糊图像的解析力。

相关技术中通常仅能够对模糊图像进行均匀校正,但是对于模糊程度分布不均的模糊图像而言,这种均匀校正会引入图像的更多的畸变,虽然一定程度上清晰化了图像但是会到导致图像失真度增加。



技术实现要素:

本公开提供一种训练数据获取、神经网络训练及图像校正方法及装置、移动终端及存储介质。

根据本公开实施例第一方面提供一种训练数据获取方法,包括:

通过图像采集模组获取第一图像,其中,所述第一图像不具有预设模糊;所述预设模糊为均匀模糊以外的不均模糊;

根据所述预设模糊的模糊分布规律,处理所述第一图像得到具有所述预设模糊的第二图像;

基于所述第一图像和所述第二图像,构建神经网络的训练数据。

根据本公开实施例第二方面提供一种神经网络的训练方法,包括:

利用第一方面提供的方法构建的训练数据训练预设网络,得到能够校预设模糊的神经网络。

根据本公开实施例第三方面提供一种图像校正方法,所述方法包括:

获取具有预设模糊的第三图像,其中,所述预设模糊为均匀模糊以外的不均模糊;

将所述第三图像输入神经网络,得到所述神经网络输出的第四图像;

其中,所述神经网络为采用:第一方面方面形成的训练数据训练得到的;或者,采用第二方面方法训练得到的神经网络。

根据本公开实施例第四方面提供一种训练数据获取装置,包括:

第一获取模块,用于通过图像采集模组获取第一图像,其中,所述第一图像不具有预设模糊;所述预设模糊为均匀模糊以外的不均模糊;

模糊模块,用于根据所述预设模糊的模糊分布规律,处理所述第一图像得到具有所述预设模糊的第二图像;

构建模块,用于基于所述第一图像和所述第二图像,构建神经网络的训练数据。

根据本公开实施例第五方面提供一种神经网络的训练方法,包括:

训练模块,用于利用第一方面所提供方法构建的训练数据训练预设网络,得到能够校预设模糊的神经网络。

根据本公开实施例第六方面提供一种图像校正装置,所述装置包括:

第二获取模块,用于获取具有预设模糊的第三图像,其中,所述预设模糊为均匀模糊以外的不均模糊;

校正模块,用于将所述第三图像输入神经网络,得到所述神经网络输出的第四图像;

其中,所述神经网络为采用:第一方面方法提供的训练数据训练得到的;或者,采用第二方面方法训练得到的神经网络。

根据本公开实施例的第七方面提供一种移动终端,包括:

用于存储处理器可执行指令的存储器;

处理器,与所述存储器连接;

其中,所述处理器被配置为执行如上训练数据获取方法、神经网络训练方法及图像校正方法。

根据本公开实施例的第八方面提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由计算机的处理器执行时,使得计算机能够执行如上训练数据获取方法、神经网络训练方法及图像校正方法。

本公开的实施例提供的技术方案可以包括以下有益效果:

由上述实施例可知,本公开提供的技术方案,通过特定方法构建出,能够用于训练神经网络的训练数据;如此,就可以采用这些训练数据训练神经网络;使得神经网络对图像进行模糊不均进行校正,从而在进行图像的去模糊(锐化或清晰化)处理过程中,根据图像中不同模糊程度有针对性的去模糊处理,如此校正的图像,不仅提升了图像的清晰度,而且抑制了清晰程度较高的图像区域的不必要校正导致的图像畸变;从而提升了图像的校正质量。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1是根据一示例性实施例示出的训练数据获取方法的流程示意图;

图2是根据一示例性实施例示出的第二图像的生成流程示意图;

图3是根据一示例性实施例示出的神经网络训练方法的流程示意图;

图4是根据一示例性实施例示出的神经网络训练方法的流程示意图;

图5是根据一示例性实施例示出的神经网络训练方法的示意示意图;

图6是根据一示例性实施例示出的图像校正方法的流程示意图;

图7是根据一示例性实施例示出的图像校正方法的流程示意图;

图8是根据一示例性实施例示出的校正前后的图像清晰度比对的示意图;

图9是根据一示例性实施例示出的训练数据获取装置的结构示意图;

图10是根据一示例性实施例示出的神经网络训练装置的结构示意图;

图11是根据一示例性实施例示出的图像校正装置的结构示意图;

图12是根据一示例性实施例示出的移动终端的结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置的例子。

如图1所示,本公开实施例提供一种训练数据获取方法,包括:

s110:通过图像采集模组获取第一图像,其中,所述第一图像不具有预设模糊;所述预设模糊为均匀模糊以外的不均模糊;

s120:根据所述预设模糊的模糊分布规律,处理所述第一图像得到具有所述预设模糊的第二图像;

s130:基于所述第一图像和所述第二图像,构建神经网络的训练数据。

在本公开实施例中获取的所述第一图像可为:高清图像,例如,清晰度大于预设值的图像,该第一图像不存在模糊不均的现象。在另一些实施例中,所述第一图像可为整体清晰度所述第二图像的且不具有预设模糊的图像。

在本公开实施例中的预设模糊可为:均匀模糊以外的任意模糊。

在本公开实施例中,针对这种不均模糊的预设模糊,会获取到该预设模糊的模糊分布规律,并根据模糊分布规律处理清晰的第一图像,从而就能够得到像素之间的模糊程度满足该模糊分布规律的第二图像。

示例性地,这种模糊分布规律可包括:从图像的中心区域向边缘区域逐步增强、从图像的边缘区域向图像的中间区域逐步增强等。

实例性地,这种模糊分布规律还可包括:在图像的对角线上模糊比较强,其他的地方比较弱。

当然以上仅是对这种预设模糊的模糊分布规律的举例,具体实现时不局限上述任意一一种模糊分布规律。

如此第一图像和第二图像,就可以作为神经网络的训练数据,训练得到能够进行预设模糊校正的神经网络。

示例性地,以第二图像作为样本图像,输入到一个待训练的网络中,训练网络的权重;然后以第一图像及训练后的图像的输出图像进行损失值计算,若损失值小于预设阈值,则说明当前完成了训练,训练后的神经网络就能过实现具有预设模糊的图像的模糊校正,从而生成校正后的高清图像。

在一个实施例中,所述s120可包括:

基于体现所述模糊分布规律的预设函数,处理所述第一图像得到所述第二图像。

在本公开实施例中找到体现所述模糊分布规律的预设函数,处理第一图像得到第二图像。

示例性地说,若一个预设函数的函数曲线与模糊分布规律的规律曲线一种,则该预设函数可以处理第一图像,从而得到第二图像。

例如,所述预设模糊为场曲像差对应的模糊;则预设模糊对应的模糊分布规律为:中心区域无场曲像差的模糊;在中心区域以外的边缘区域,从中心区域到边缘区域的模糊逐步增强。中心区域可为:以图像中心点为中心扩散的一个或多个像素构成的区域。

场曲(fieldcurvature)像差,亦即“像场弯曲的像差”,是数字图像差的一种,也是不均模糊的一种。场曲像差是一种非常普遍的像差,是当前光学成像系统的固有缺陷。场曲形成的原因是:平面物体通过透镜系统的聚焦点,并没有汇聚成一个理想中的平面,而是聚集成一个弯曲的像面,但当前成像系统的像面,通常是一个平面,这就使得无论将数码相机的像平面选取在任何位置,除了中心区域外,图像的其他位置都无法呈现清晰的像。场曲不同于畸变,即场曲带来的并不是成像的形状畸变,而是一种从图像中心向边缘清晰度渐变的效果。在数码相机中可能会采用硬件或软件的方法试图减弱场曲,但仍无法完全消除,在近距离平面场景下,这种像差仍尤为突出,从图像的中心到边缘,解析力退化的现象影响了图片的一致性。

再例如,所述预设模糊包括但不限于:离焦模糊复和/或由深度不同造成的模糊。

所述基于体现所述模糊分布规律的预设函数,处理所述第一图像得到所述第二图像,包括:

以像素坐标作为预设函数的因变量输入到预设函数,得到每一个像素对应的函数值,该函数值可为对应像素的模糊权重;

基于所述模糊权重,处理所述第一图像得到所述第二图像。

在一个实施例中,各像素对应的模糊权重可为任意0到1之间的自然数,例如,0.3、0.5或者0.6等取值。

在一些实施例中,若所述预设模糊为场曲像差对应的模糊,则所述预设函数包括以下之一:指数函数;反正切函数。

实例性地,所述指数函数可为二次指数函数。

在一个实施例中,如图2所示,所述s120可包括:

s121:根据所述预设函数,生成模糊图像,其中,所述模糊图像内各像素值之间的分布规律,与所述模糊分布规律一致;

s122:均匀模糊所述第一图像得到中间图像;

s123:根据所述模糊图像,确定所述中间图像中各像素的融合权重;

s124:基于所述融合权重进行所述中间图像和所述第一图像的逐像素融合,得到所述第二图像。

例如,以所述预设模块为:场曲像差对应的模糊为例,所述模糊图像的中心区域的像素值为第一取值;所述模糊图像的边缘区域的像素值,从所述中心区域向外逐步增大到第二取值;在所述模糊图像中,所述边缘区域位于所述中心区域外围。

所述中间图像由于是对第一图像进行均值滤波得到的,相对于第一图像而言是经过一次模糊处理的图像。

在本公开实施例提供的均值滤波包括但不限于以下至少之一:

均值滤波;

中值滤波;

双边滤波;

导向滤波。

当然以上仅是对均匀模糊所述第一图像得到所述中间图像的举例说明,具体实现时不局限于上述任意一个举例。

所述s124可包括:按照公式进行以所述模糊图像作为所述中间图像的模糊权值与所述第一图像逐个像素融合,得到第二图像。

为所述中间图像中坐标为(x,y)的像素的像素值,所述w(x,y)为所述坐标为(x,y)像素的模糊权值,也即模糊图像中坐标为(x,y)的像素的像素值;为所述第一图像中坐标为(x,y)的像素的像素值;为所述第二图像中坐标为(x,y)的像素的像素值。

在一个实施例中,所述基于体现所述模糊分布规律的预设函数,处理所述第一图像得到所述第二图像,包括:

根据所述预设函数,构建所述第一图像内各像素的卷积核;

基于所述卷积核,对所述第一图像进行逐像素滤波得到所述第二图像。

在本公开实施例中该卷积核包括但不限于:高斯模糊卷积核。

通过高速模糊算法对第一图像内的各个像素进行卷积操作,通过卷积操作实现图像的模糊。例如,针对场曲像差对应的模糊,则所述第一图像内各像素的卷积核对应的模糊强度,从所述中心区域向外逐步增强。场景像差导致的预设模糊,可以是以图像的中心坐标对称分布,也可以是非对称分布。

卷积核与其对应的模糊强度之间具有预设的非线性转换关系,例如,该非线性转换关系包括但不限于:二维的指数函数和/或反正切函数。

通过卷积核,直接就能够对第一图像中的像素进行逐个像素模糊得到具有预设模糊的第二图像。

采用这种方式可以直接从第一图像得到第二图像。

在一些实施例中,训练神经网络时可能除了第一图像和第二图像以外,还需要第二图像的一些参数,例如,第二图像的模糊参数。这些模糊参数可以是图像级别的,也可以是像素级别的。例如,图像级别的模糊参数可包括:预设模糊的模糊分布规律;若是像素级别的,则可以是第一图像和第二图像之间逐个像素的模糊权值等。

在一个实施例中为了使得训练后的神经网络高质量进行具有预设模糊的图像的锐化校正,所述方法还包括:

对所述第二图像中各像素的所述卷积核对应的模糊强度进行归一化处理,得到所述第二图像的模糊图像。

一个卷积核可对应于一个模糊强度,一个模糊强度为模糊图像中一个像素的像素值。

由于第二图像每一个像素对应一个卷积核。卷积核通常为一个矩阵。通过非线性变换,可以将一个为矩阵的卷积核转换为模糊强度。此处的非线性变换可以由非线性函数来体现,非线性函数包括但不限于:二维的指数函数和/或反正切函数。

此处的归一化处理可以采用各种归一化算法,例如,包括但不限于:最大最小归一化算法。通过归一化,使得模糊图像中的像素值都为0到1之间的自然数。例如,将第二图像中各像素的卷积核所对应的模糊强度比上第二图像所有像素中对应的最大模糊强度,得到0到1之间的比值,各个像素对应的比值则是模糊图像中对应像素的像素值。

在一些实施例中,所述基于所述第一图像和所述第二图像,构建神经网络的训练数据,包括:

基于所述第一图像、所述第二图像和所述模糊图像,构建所述神经网络的训练数据。

此处训练数据包含三类数据:第一类为第一图像、第二类为与第一图像对应的第二图像;第三类为:与第二图像对应的模糊图像。模糊图像可为进行神经网络训练的中间参数。训练完后的神经网络可不输出对应的模糊图像,也可以输出对应的模糊图像。

在一些实施例中,所述通过图像采集模组获取第一图像,包括以下至少之一:

截取第四图像的无所述预设模糊的部分,得到无所述预设模糊的所述第一图像;

基于图像合成技术,合成无所述预设模糊的所述第一图像;

基于截屏技术,截屏获取无所述预设模糊的所述第一图像。

若直接采用相机进行图像采集,可能由于硬件等原因采集的图像就是具有预设模糊的图像。在本公开实施例中,通过截图技术、截屏技术和/或合成技术等,获得不具有预设模糊的第一图像。

假设此处的预设模糊为场曲像差对应的模糊,则所述截取第四图像的中心区域,得到无所述预设模糊的所述第一图像。

采用上述技术可以获取到无预设模糊的第一图像。

如图3所示,本公开实施例提供一种神经网络的训练方法,包括:

s200:利前述任意技术方案提供的方法构建的训练数据训练预设网络,得到能够校预设模糊的神经网络。

前述实施例提供了一种具有不均匀模糊校正的训练数据的方法,采用上述方法就能够得到能够训练数据。利用这些数据对神经网络进行训练,如此,训练后的神经网络就能够校正预设模糊,从而实现不均模糊的不同模糊程度的校正,使得校正后的图像清晰度提高了,且具有校正过程中引入的图像失真小的特点。

在一个实施例中,s200中训练的神经网络可为一个端到端的神经网络,整个神经网络仅具有一个编码分支和一个位于编码分支之后的解码分支。

但是在另一些实施例中,所述预设网络包括:预测子网络和位于所述预测子网络的输出端的重构子网络;

如图4所示,所述s200包括:

s201:以所述训练数据中的第二图像作为训练输入并所述训练数据中的模糊图像作为训练标签,训练所述预测子网络;

s202:以所述训练数据中的第二图像及所述模糊图像作为训练输入,并以所述第一图像作为训练标签,训练所述重构子网络;

其中,训练后的所述预测子网络,用于基于具有模糊不均的输入图像,得到与所述输入图像对应的模糊图像;

训练后的所述重构子网络,用于基于具有场景相差的输入图像和所述预测子网络输出的模糊图像,生成无场曲像差的输出图像。

预测子网络和重构子网络可对应了不同的网络架构,且预测子网络和重构子网络都有各自的编码分支和解码分支。

例如,在一些实施例中,所述预测子网络和重构子网络可均为v型网络或者u型网络。

在本公开实施例中,所述重构子网络是生成高清图像的生成网络;预测子网络可为提取出输入的模糊图像的模糊分布规律的子网络。此处的模糊分布规律可以由模糊图像来体现。

在一些实施例中,s201和s202可以并行执行,也可以是s202在s201之后执行。

在本公开实施例中,参考图5所示,神经网络的网络架构包括:预测子网络和重构子网络,由于分成了两个子网络而非一个大型网络,一方面可以加速训练效率,另一方面可以减少在实际计算中的计算量。这种包含预测子网络和重构子网络的神经网络,相对于一个端到端的神经网络而言,在模型体量上有更大概率的更小,实现神经网络的轻量化。

可以理解地,所述s200还包括:

将所述第二图像输入到所述预测子网络,得到所述预测子网络的预测图像;

基于所述预测输出图像和所述第二图像对应的所述模糊图像之间的差异,得到所述预预测子网络的损失值;其中,所述述预预测子网络的损失值,用于确定所述预设网络是否停止训练。

可以理解地,所述s200还可包括:

将所述第二图像和所述第二图像对应的模糊图像输入所述重构子网络,得到所述重构子网络的重构图像;

基于所述重构图像与所述第一图像之间的差异,得到所述重构子网络的损失值;其中,所述重构子网络的损失值,用于确定所述预设网络是否停止训练。

在一个实施例中,预测子网络和重构子网络可以分别计算各自的损失值,然后基于各自的损失值确定是否停止预测子网络和重构子网络的训练。

在另一个实施例中,所述s200还包括:

s203:基于所述预测子网络的损失值及所述重构子网络的损失值,得到所述预设网络的损失值;

s204:在所述预设网络的损失值小于预设值时,停止所述预设网络的训练得到训练后的所述神经网络。

在本公开实施例中,会结合预测子网络和重构子网络的损失值,计算这个预设网络的损失值,只有在整个预设网络的损失值都小于预设值时,才停止预设网络的训练;否则继续训练预设网络。

例如,在训练过程中可以根据损失值进行反向传播,进而调整神重构子网络和/或预测子网络内一个或多个网络节点的权值。

采用这种方式判定是否停止预设网络的训练,减少分别独立确定预测子网络和重构子网络是否停止训练,减少训练后的神经网络在应用过程中预测子网络和重构子网络因为单独判定是否停止训练导致的最大损失值的累积,从而提升了训练后的神经网络的校正精度。

图5所示就是包含预测子网络和重构子网络的一个训练示意图。预测子网络会输出一个模糊图像作为重构子网络的输入,重构子网络的输入包括:模糊图像及第二图像l_i;确以第一图像h_i作为训练标签计算损失值loss_2。而预测子网络则以第二图像为输入,以模糊图像作为标签,计算损失值loss_1。

如图6所示,本公开实施例中提供一种图像校正方法,所述方法包括:

s310:获取具有预设模糊的第三图像,其中,所述预设模糊为均匀模糊以外的不均模糊;

s320:将所述第三图像输入神经网络,得到所述神经网络输出的第四图像。

在一个实施例中,所述神经网络为采用:前述任意技术方案提供的训练数据获取方法得到的训练数据训练得到的;或者,采用前述任意技术方案提供的神经网络训练方法训练得到的神经网络。

在另一个实施例中,该神经网络同样可为采用其他方式训练得到能够校正预设模糊的神经网络。

本公开实施例中提供的神经网络能够,基于不均模糊的模糊分布规律校正不均模糊,得到模糊校正效果好的高清图像。

在一个实施例中,所述神经网络可以为一个端到端神经网络。

在另一个实施例中,所述神经网络可以由多个子网络构成,例如,神经网络可包括:预测子网络和位于预测子网络后端的重构子网络。

例如,如图7所示,所述s320可包括:

s321:将所述第三图像输入到所述神经网络的预测子网络,得到所述预设子网络的输出图像;

s322:将所述输出图像和所述第三图像输入到所述神经网络的重构子网络,得到所述重构子网络输出的所述第四图像。

在步骤s321中预设子网络的输出图像可对应于前述任意实施例提到的模糊图像,即第三图像的模糊图像。模糊图像中的像素值为第三图像中对应位置像素的模糊权重。

在s322中重构子网络会接收预设子网络的输出图像,并接收原始的第三图像;基于预测子网络的输出图像校正第三图像,会得到预设模糊被校正后的高清的第四图像。

在本公开实施例中提到的预测子网络和重构子网络的网络结构都可以v型网络或者u型网络。

在本公开实施例中,所述预设模糊至少包括但不限于:场曲像差对应的模糊。

图8所示为一个第三图像中一个切片(模糊区域)被校正前后的模糊程度(或称清晰度)的比对效果示意图。图8中左图片是校正前的效果,右图片是校正后的效果。

如图9所示,本公开实施例提供一种训练数据获取装置,包括:

第一获取模块110,用于通过图像采集模组获取第一图像,其中,所述第一图像不具有预设模糊;所述预设模糊为均匀模糊以外的不均模糊;

模糊模块120,用于根据所述预设模糊的模糊分布规律,处理所述第一图像得到具有所述预设模糊的第二图像;

构建模块130,用于基于所述第一图像和所述第二图像,构建神经网络的训练数据。

在一些实施例中,所述第一获取模块110、模糊模块120及构建模块130可为纯软件模块;所述纯软件模块被处理器执行之后,能够将不具有预设模糊的第一图像转换为具有预设模糊的第二图像。

在一些实施例中,所述第一获取模块110、模糊模块120及构建模块130可为软硬结合模块;软硬结合模块包括但不限于可编程阵列;可编程阵列包括但不限于:现场可编程阵列或复杂可编程阵列。

在还有一些实施例中,所述第一获取模块110、模糊模块120及构建模块130可为纯硬件模块;纯硬件模块包括但不限于:专用集成电路。

在一些实施例中,所述模糊模块120,具体用于基于体现所述模糊分布规律的预设函数,处理所述第一图像得到所述第二图像。

在一些实施例中,所述预设模糊为:场曲像差对应的模糊;所述预设函数包括以下之一:

指数函数;

反正切函数。

在一些实施例中,所述模糊模块120,用于根据所述预设函数,生成模糊图像,其中,所述模糊图像内各像素值之间的分布规律,与所述模糊分布规律一致;均匀模糊所述第一图像得到中间图像;根据所述模糊图像,确定所述中间图像中各像素的融合权重;基于所述融合权重进行所述中间图像和所述第一图像的逐像素融合,得到所述第二图像。

在一些实施例中,所述模糊模块120,用于根据所述预设函数,构建所述第一图像内各像素的卷积核;其中,所述第一图像内各像素的卷积核对应的模糊强度,从所述中心区域向外逐步增强;基于所述卷积核,对所述第一图像进行逐像素滤波得到所述第二图像。

在一些实施例中,所述装置还包括:

归一化模块,用于对所述第二图像中各像素的所述卷积核对应的模糊强度进行归一化处理,得到所述第二图像的模糊图像。

在一些实施例中,所述构建模块130,用于基于所述第一图像、所述第二图像和所述模糊图像,构建所述神经网络的训练数据。

在一些实施例中,所述第一获取模块110,具体用于执行以下至少之一:

截取第四图像的无所述预设模糊的部分,得到无所述预设模糊的所述第一图像;

基于图像合成技术,合成无所述预设模糊的所述第一图像;

基于截屏技术,截屏获取无所述预设模糊的所述第一图像。

如图10所示,本公开实施例提供一种神经网络的训练装置,包括:

训练模块200,用于利用前述任意技术方案提供的训练数据获取方法构建的训练数据训练预设网络,得到能够校预设模糊的神经网络。

在一些实施例中,所述训练模块200可为纯软件模块;所述纯软件模块被处理器执行之后,能够训练得到能够校正预设模糊的神经网络。

在一些实施例中,所述训练模块200可为软硬结合模块;软硬结合模块包括但不限于可编程阵列;可编程阵列包括但不限于:现场可编程阵列或复杂可编程阵列。

在还有一些实施例中,所述训练模块200可为纯硬件模块;纯硬件模块包括但不限于:专用集成电路。

在一些实施例中,所述预设网络包括:预测子网络和位于所述预测子网络的输出端的重构子网络;

所述训练模块200,包括:

第一训练单元201,用于以所述训练数据中的第二图像作为训练输入并所述训练数据中的模糊图像作为训练标签,训练所述预测子网络;

第二训练单元202,用于以所述训练数据中的第二图像及所述模糊图像作为训练输入,并以所述第一图像作为训练标签,训练所述重构子网络;

其中,训练后的所述预测子网络,用于基于具有模糊不均的输入图像,得到与所述输入图像对应的模糊图像;

训练后的所述重构子网络,用于基于具有场景相差的输入图像和所述预测子网络输出的模糊图像,生成无场曲像差的输出图像。

在一些实施例中,所述第一训练单元201,具体用于将所述第二图像输入到所述预测子网络,得到所述预测子网络的预测图像;基于所述预测输出图像和所述第二图像对应的所述模糊图像之间的差异,得到所述预预测子网络的损失值;其中,所述述预预测子网络的损失值,用于确定所述预设网络是否停止训练。

在一些实施例中,所述第二训练单元202,具体用于将所述第二图像和所述第二图像对应的模糊图像输入所述重构子网络,得到所述重构子网络的重构图像;基于所述重构图像与所述第一图像之间的差异,得到所述重构子网络的损失值;其中,所述重构子网络的损失值,用于确定所述预设网络是否停止训练。

在一些实施例中,所述训练模块200,还包括:

损失单元203,用于基于所述预测子网络的损失值及所述重构子网络的损失值,得到所述预设网络的损失值;

停止单元204,用于在所述预设网络的损失值小于预设值时,停止所述预设网络的训练得到训练后的所述神经网络。

如图11所示,本公开实施例提供一种图像校正装置,所述装置包括:

第二获取模块310,用于获取具有预设模糊的第三图像,其中,所述预设模糊为均匀模糊以外的不均模糊;

校正模块320,用于将所述第三图像输入神经网络,得到所述神经网络输出的第四图像;

其中,所述神经网络为采用:前述任意技术方案提供的训练数据获取方法训练数据训练得到的;或者,采用前述神经网络训练方法训练得到的神经网络。

在一些实施例中,所述第二获取模块310及所述校正模块320可为纯软件模块;所述纯软件模块被处理器执行之后,能够训练得到能够校正预设模糊的神经网络。

在一些实施例中,所述第二获取模块310及所述校正模块320可为软硬结合模块;软硬结合模块包括但不限于可编程阵列;可编程阵列包括但不限于:现场可编程阵列或复杂可编程阵列。

在还有一些实施例中,所述第二获取模块310及所述校正模块320可为纯硬件模块;纯硬件模块包括但不限于:专用集成电路。

在一些实施例中,所述校正模块320,具体用于将所述第三图像输入到所述神经网络的预测子网络,得到所述预设子网络的输出图像;将所述输出图像和所述第三图像输入到所述神经网络的重构子网络,得到所述重构子网络输出的所述第四图像。

本公开实施例提供一种训练数据获取方法、神经网络训练方法及图像校正方法,具体可如下:

深度神经网络的训练,需要大量成对的训练数据,例如,没有解析力掉落的完美图像与匹配的有解析力掉落的待处理的图像对。而这样的图像对是无法获取的,因此本公开实施例提出了一种制作场曲像差图像训练集的方法,能够基于没有解析力掉落的正常图像,批量产生模拟不同硬件点扩散函数造成的解析力退化图像,它们具有不同的模糊方法,模糊半径和模糊强度,能够用于深度神经网络的训练中来解决场曲像差的问题。

本文提出的场曲像差校正的神经网络,能够自动估计出全局渐变的模糊核(即前述卷积核的一种),用来指导网络做场曲像差校正,所提出的方案在不同设备的成片上具有很好的泛化性,能够很好地提升图像中心区域外的锐化水平和解析力,缓解场曲像差带来的图像从中心到四周逐渐模糊的问题,提升图像的一致性。

本实施例提供一种神经网络的训练方法,包括:

步骤1:准备没有解析力掉落的高清数据集,记为h_i。

步骤2:基于步骤1的高清图像,制作成对的训练输入图片,制作出的训练输入图片具有从中心到四周逐渐模糊的特质,记为l_i,同时获得对应的模糊权重图,记为blurmap。

步骤3:训练神经网络。将步骤二得到的l_i作为网络输入,blurmap约束网络训练得到模糊权重,h_i约束网络训练输出最终校正了像差的清晰图片。

步骤4:使用步骤3训练好的神经网络权重,任意输入一张具有场曲像差的图片,经网络前向传播得到四周与中心一致的清晰输出图片o_i。

具体详细步骤结果示意如下:

没有解析力掉落的高清数据集可以通过裁剪高质量的单反照片的中心区域,搜集仿真图片、合成图片或屏图片等获得高清图像。此处的高清图像即为前述的第一图像,可用h_i表示。

以高清图像作为深度神经网络的对照标签(groundtruth,gt),并以此制作与之相应的具有从中心到四周逐渐模糊的特质的图片作为输入图片。这种输入图像为前述的第二图像,可用l-i表示。

该步骤有两种技术方案:

方案一如下:

步骤一:定义模糊图像(blurmap),模糊图像的像素值介于0~1之间,从图像中心,按照距中心的位置从0渐变到1,模糊图像中的像素值代表模糊程度。模糊值是像素点距中心位置的非线性函数,该非线性函数包括但不限于:指数函数,反正切函数等;模糊图像可以是对称的或非对称的。

步骤二:对高清图像做全图一致模糊,此处的一致模糊即为前述的均匀模糊,且该一致模糊包括但不限于:均值滤波、中值滤波、双边滤波、导向滤波等方式对高清图像做处理得到一致模糊。

在具体的实现时,可以随机选取模糊方式和模糊值,对所有高清图像做滤波。此处的随机选取的模糊方式可为上述举例的方式,也可以上述举例以外的方式。

步骤三:将步骤2得到的模糊图像与原图按照步骤1得到的模糊图像进行加权融合,得到渐变模糊的输入图l_i。

方案二如下:

步骤一:为高清图像设计全图渐变的模糊核,遍历每个像素,使每像素位置的模糊半径呈现从中心到四周逐渐增强的趋势,模糊半径是像素点距中心位置的非线性函数。该非线性函数包括但不限于指数函数,反正切函数等;整的图模糊核可以是关于中心位置对称的或不对称的。此处的模糊半径与模糊强度相关,通常模糊半径与模糊强度正相关。

步骤二:对高清图遍历每个像素位置,对每个像素按照步骤1所设计的模糊核,进行逐像素滤波,得到从图像中心到四周逐渐模糊的图像l_i。

步骤三:对步骤1所设计的逐像素模糊核进行非线性变化得到模糊强度,并对模糊强度进行正规化(即归一化),得到整图的模糊图像。

参考图5所示,训练深度神经网络。网络的输入为l_i(可为rgb空间或yuv空间),子网络的gt为模糊图像,重构子网络的gt为h_i。预测子网络的损失值记为loss_1,重构子网络的损失值记为loss_2。训练时,可先训练模糊图像预测子网络,然后固定子网络的参数训练重构子网络;也可联合训练模糊图像预测子网络与重构子网络,神经网络的总损失值为loss_1和loss_2的加权。

网络结构:模糊图像预测子网络和重构子网络都采用但不限于u_net形网络,通过多次降采样来增大感受野,提高预测和重构全局模糊图像以及最终输出的准确性。

在一些实施例中,将l_i与重构子网络的输出相加,重构的部分只计算残差,可以使得重构子网络快速收敛。

优化神经网络的训练效率等优化算法:包括但不限于adam算法或者批量梯度下降算法(batchgradientdescent,sgd)等。

输入待校正的图,利用训练好的神经网络,取重构子网络的输出为校正后的图。

该技术方案对场曲像差创造性地使用深度学习的方法进行校正,不仅能够对输入图的模糊权重进行正确估计,且能利用估计到的模糊权重,与原图联合,进行高清输出的重构。训练集模糊核的多样性,模糊尺度和程度的多样性,使得网络对不同的设备拍摄的具有四周解析力退化的图像具有很好的泛化性。模糊权重图的引入,很好地指导了网络集中注意在模糊权重较高的区域,从而能够精准地避免对原图中心区域造成过度锐化。

通过神经网络处理前后的图像模糊程度效果可如图8所示,图8中的左图片为原图边角区域的切片,右图片为输出图边角区域的切片.

总之,利用深度学习的方法校正数字图像场曲像差,所提出的网络,能够利用模糊图像子网络预测出输入图模糊的区域和程度,进而指导重构子网络精准恢复高清边角区域,而不至于对中心区域过度锐化。

提出了两种模拟数字图像场曲像差的方案,能够批量制作具有不同退化特性的边角渐变模糊图像与其高清图像配对的数据集。解决的是全局不一致的模糊核预测和高清图重构问题,除了适用于数字图像的场曲校正,还适用于其他具有全局不一致模糊核图像的高清图恢复问题,如离焦模糊复原及由深度不同造成的模糊复原。

本公开实施例提供一种移动终端,包括:

用于存储处理器可执行指令的存储器;

处理器,与存储器连接;

其中,处理器被配置为执行前述任意技术方案提供的训练数据获取方法、神经网络训练方法及图像校正方法。

处理器可包括各种类型的存储介质,该存储介质为非临时性计算机存储介质,在通信设备掉电之后能够继续记忆存储其上的信息。

这里,通信设备包括基站或用户设备。

处理器可以通过总线等与存储器连接,用于读取存储器上存储的可执行程序,例如,能够执行如图1至图4及图6-图7任意所示方法的至少其中之一。

图12是根据一示例性实施例示出的一种移动终端800的框图。例如,移动终端800可以是移动电话,移动电脑等。

参照图10,移动终端800可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件810,输入/输出(i/o)的接口812,传感器组件814,以及通信组件816。

处理组件802通常控制移动终端800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。

存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在移动终端800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。

电源组件806为移动终端800的各种组件提供电力。电力组件806可以包括电源管理系统,一个或多个电源,及其他与为移动终端800生成、管理和分配电力相关联的组件。

多媒体组件808包括在移动终端800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作状态,如拍摄状态或视频状态时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。

音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(mic),当移动终端800处于操作状态,如呼叫状态、记录状态和语音识别状态时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。

i/o接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。

传感器组件814包括一个或多个传感器,用于为移动终端800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如组件为移动终端800的显示器和小键盘,传感器组件814还可以检测移动终端800或移动终端800一个组件的位置改变,用户与移动终端800接触的存在或不存在,移动终端800方位或加速/减速和移动终端800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。

通信组件816被配置为便于移动终端800和其他设备之间有线或无线方式的通信。移动终端800可以接入基于通信标准的无线网络,如wi-fi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件816还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。

在示例性实施例中,移动终端800可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。

在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由移动终端800的处理器820执行以完成上述方法。例如,非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。

本公开实施例提供一种非临时性计算机可读存储介质,当存储介质中的指令由ue的处理器执行时,使得ue能够执行前述任意实施例提供的训练数据获取方法、神经网络训练方法及图像校正方法,能够执行如图1至图4及图6-图7任意所示方法的至少其中之一。

该训练数据获取方法包括:通过图像采集模组获取第一图像,其中,所述第一图像不具有预设模糊;所述预设模糊为均匀模糊以外的不均模糊;根据所述预设模糊的模糊分布规律,处理所述第一图像得到具有所述预设模糊的第二图像;基于所述第一图像和所述第二图像,构建神经网络的训练数据。

可以解释地,所述根据所述预设模糊的模糊分布规律,处理所述第一图像得到具有所述预设模糊的第二图像,包括:基于体现所述模糊分布规律的预设函数,处理所述第一图像得到所述第二图像。

可以解释地,所述预设模糊为:场曲像差对应的模糊,所述预设函数包括以下之一:指数函数;反正切函数。

可以解释地,所述基于体现所述模糊分布规律的预设函数,处理所述第一图像得到所述第二图像,包括:根据所述预设函数,生成模糊图像,其中,所述模糊图像内各像素值之间的分布规律,与所述模糊分布规律一致;均匀模糊所述第一图像得到中间图像;根据所述模糊图像,确定所述中间图像中各像素的融合权重;基于所述融合权重进行所述中间图像和所述第一图像的逐像素融合,得到所述第二图像。

可以解释地,所述基于体现所述模糊分布规律的预设函数,处理所述第一图像得到所述第二图像,包括:根据所述预设函数,构建所述第一图像内各像素的卷积核;其中,不同像素的所述卷积核对应的模糊强度之间的分布规律,与所述模糊分布规律一致;基于所述卷积核,对所述第一图像进行逐像素滤波得到所述第二图像。

可以解释地,所述方法还包括:对所述第二图像中各像素的所述卷积核对应的模糊强度进行归一化处理,得到所述第二图像的模糊图像。

可以解释地,所述基于所述第一图像和所述第二图像,构建神经网络的训练数据,包括:基于所述第一图像、所述第二图像和所述模糊图像,构建所述神经网络的训练数据。

可以解释地,所述通过图像采集模组获取第一图像,,包括以下至少之一:截取第四图像的无所述预设模糊的部分,得到无所述预设模糊的所述第一图像;基于图像合成技术,合成无所述预设模糊的所述第一图像;基于截屏技术,截屏获取无所述预设模糊的所述第一图像。

前述神经网络训练方法可包括:利用前述任意技术方案提供训练数据获取方法构建的训练数据训练预设网络,得到能够校预设模糊的神经网络。

可以解释地,所述预设网络包括:预测子网络和位于所述预测子网络的输出端的重构子网络;

可以解释地,该训练方法具体可包括:以所述训练数据中的第二图像作为训练输入并所述训练数据中的模糊图像作为训练标签,训练所述预测子网络;以所述训练数据中的第二图像及所述模糊图像作为训练输入,并以所述第一图像作为训练标签,训练所述重构子网络;其中,训练后的所述预测子网络,用于基于具有模糊不均的输入图像,得到与所述输入图像对应的模糊图像;训练后的所述重构子网络,用于基于具有场景相差的输入图像和所述预测子网络输出的模糊图像,生成无场曲像差的输出图像。

可以解释地,所述以所述训练数据中的第二图像作为训练输入并所述训练数据中的模糊图像作为训练标签,训练所述预测子网络,包括:将所述第二图像输入到所述预测子网络,得到所述预测子网络的预测图像;基于所述预测输出图像和所述第二图像对应的所述模糊图像之间的差异,得到所述预预测子网络的损失值;其中,所述述预预测子网络的损失值,用于确定所述预设网络是否停止训练。

可以解释地,所述以所述训练数据中的第二图像及所述模糊图像作为训练输入,并以所述第一图像作为训练标签,训练所述重构子网络,包括:将所述第二图像和所述第二图像对应的模糊图像输入所述重构子网络,得到所述重构子网络的重构图像;基于所述重构图像与所述第一图像之间的差异,得到所述重构子网络的损失值;其中,所述重构子网络的损失值,用于确定所述预设网络是否停止训练。

可以理解地,该训练方法具体包括:基于所述预测子网络的损失值及所述重构子网络的损失值,得到所述预设网络的损失值;在所述预设网络的损失值小于预设值时,停止所述预设网络的训练得到训练后的所述神经网络。

前述图像校正方法,包括:获取具有预设模糊的第三图像,其中,所述预设模糊为均匀模糊以外的不均模糊;将所述第三图像输入神经网络,得到所述神经网络输出的第四图像;此处的神经网络可为前述任意一个神经网络。

可以理解地,所述将所述第三图像输入神经网络,得到所述神经网络输出的第四图像,包括:将所述第三图像输入到所述神经网络的预测子网络,得到所述预设子网络的输出图像;将所述输出图像和所述第三图像输入到所述神经网络的重构子网络,得到所述重构子网络输出的所述第四图像。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。

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