卷积神经网络训练方法、图像重建方法、装置和介质与流程

文档序号:23848511发布日期:2021-02-05 13:27阅读:72来源:国知局
卷积神经网络训练方法、图像重建方法、装置和介质与流程

[0001]
本发明涉及图像处理技术领域,尤其是一种卷积神经网络训练方法、图像重建方法、装置和存储介质。


背景技术:

[0002]
在图像获取和传输等的过程中,由于噪声等干扰,图像的质量受损,导致图像的分辨率降低。用过插值和重构等方法,可以实现图像的超分辨率重建,从而将低分辨率图像转换成高分辨率图像。但是,现有技术难以重建图像中高频信息等细节,而一些新近出现的基于深度学习的图像超分辨率技术,面临模型表征冗余大、表征能力低等缺点,为了获得较优的重建效果,需要消耗较多的资源。


技术实现要素:

[0003]
针对上述至少一个技术问题,本发明的目的在于提供一种卷积神经网络训练方法、图像重建方法、装置和存储介质。
[0004]
一方面,本发明实施例包括一种卷积神经网络训练方法,包括:
[0005]
获取卷积神经网络;
[0006]
获取训练集;
[0007]
设定训练参数和损失函数;
[0008]
使用所述训练集作为所述卷积神经网络的输入和/或期待输出,调整所述卷积神经网络的参数直至所述损失函数满足预设条件;
[0009]
所述卷积神经网络包括特征提取模块、非线性映射模块和图像重建模块;所述特征提取模块用于从低分辨率图像中提取特征信息,所述非线性映射模块用于对所述特征信息进行非线性映射,所述图像重建模块用于将经过非线性映射的所述特征信息重建为高分辨率图像;
[0010]
所述非线性映射模块包括多个依次连接的连接组和一个第一加权通道级联单元,所述第一加权通道级联单元用于将各所述连接组输出的信息加权整合后输出;
[0011]
所述连接组包括多个依次连接的连接单元和一个第二加权通道级联单元,所述第二加权通道级联单元用于将同一连接组中输入至第一个连接单元中的信息与最后一个连接单元输出的信息加权整合后输出;
[0012]
所述连接单元用于对所接收的信息执行卷积运算。
[0013]
进一步地,所述连接单元包括依次连接的卷积层和第三加权通道级联单元,所述卷积层为conv-relu-conv结构,所述第三加权通道级联单元用于将同一连接单元中输入至所述卷积层中的信息与所述卷积层输出的信息加权整合后输出。
[0014]
进一步地,所述第一加权通道级联单元对各所述连接组输出的信息的加权权重互不相同,所述第二加权通道级联单元对第一个连接单元中的信息与最后一个连接单元输出的信息的加权权重互不相同;所述第三加权通道级联单元对输入至所述卷积层中的信息与
所述卷积层输出的信息的加权权重互不相同。
[0015]
进一步地,所述特征提取模块包括3
×
3卷积核;所述图像重建模块包括依次连接的espcnn upscale module和3
×
3卷积核。
[0016]
进一步地,所述训练集包括:
[0017]
原始图像;所述原始图像选取自div2k数据集;
[0018]
扩充图像;所述扩充图像由所述原始图像经过翻转和/或旋转得到。
[0019]
进一步地,所述训练参数包括学习率、衰减率和训练次数;所述学习率为[8.1
×
10-5
,7.3
×
10-5
,6.6
×
10-5
,5.9
×
10-5
,5.3
×
10-5
],所述学习率的区间为[20000,40000,60000,80000];所述损失函数为
[0020]
进一步地,所述调整所述卷积神经网络的参数直至所述损失函数满足预设条件,包括:
[0021]
使用随机梯度下降算法调整所述卷积神经网络的参数,直至所述损失函数最小化。
[0022]
另一方面,本发明实施例还包括一种图像重建方法,包括:
[0023]
将低分辨率图像输入至卷积神经网络;所述卷积神经网络经过实施例中的卷积神经网络训练方法的训练;
[0024]
获取所述卷积神经网络输出的高分辨率图像。
[0025]
另一方面,本发明实施例还包括一种计算机装置,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行实施例所述方法。
[0026]
另一方面,本发明实施例还包括一种存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行实施例所述方法。
[0027]
本发明的有益效果是:通过利用第二加权通道级联单元和多个连接单元组成连接组,利用第一加权通道级联单元和多个连接组,在深度卷积神经网络模型基础上,采用全通道级联深度卷积神经网络,抛弃广泛使用的残差学习和残差网络结构,将网络层次中的所有跳跃连接使用加权通道级联方式,对特征图通道赋予不同的权重,增加通道之间的差异性,实现将后接卷积层整合局部特征,提升了卷积神经网络的表示能力,改善了现有技术中模型表征冗余大、表征能力低等缺点,实现了在同样的重建效果下所需的资源较少的效果。
附图说明
[0028]
图1为实施例中卷积神经网络训练方法的流程图;
[0029]
图2为实施例中卷积神经网络的结构示意图;
[0030]
图3为实施例中连接组的结构示意图;
[0031]
图4为实施例中连接单元的结构示意图。
具体实施方式
[0032]
本实施例中,参照图1,卷积神经网络训练方法包括以下步骤:
[0033]
s1.获取卷积神经网络;
[0034]
s2.获取训练集;
[0035]
s3.设定训练参数和损失函数;
[0036]
s4.使用所述训练集作为所述卷积神经网络的输入和/或期待输出,调整所述卷积神经网络的参数直至所述损失函数满足预设条件,从而完成对卷积神经网络的训练。
[0037]
本实施例中,参照图2,步骤s1所获取的卷积神经网络包括特征提取模块、非线性映射模块和图像重建模块。其中,特征提取模块、非线性映射模块和图像重建模块依次连接,即输入到卷积神经网络中的信息由特征提取模块接收,本实施例中,参照图2,特征提取模块是一个尺寸为3
×
3的卷积核,通过该卷积核,特征提取模块可以接收低分辨率图像并从低分辨率图像中提取特征信息。
[0038]
非线性映射模块获取特征提取模块提取出的特征信息,非线性映射模块对特征信息进行非线性映射,其结果由图像重建模块接收。图像重建模块将经过非线性映射的特征信息重建为高分辨率图像,作为卷积神经网络的输出结果进行输出。本实施例中,参照图2,图像重建模块包括一个espcnn模型中的upscale module以及一个尺寸为3
×
3的卷积核,经过非线性映射的特征信息依次经过upscale module和的卷积核的处理,得到重建后的高分辨率图像。
[0039]
本实施例中,参照图2,非线性映射模块包括多个依次连接的连接组(concat group,cg)和一个第一加权通道级联单元。其中,第一加权通道级联单元是wcc结构,其包括一个尺寸为1
×
1的卷积核和一个尺寸为3
×
3的卷积核。参照图2,第一加权通道级联单元用于将各连接组输出的信息加权整合后,作为非线性映射模块的输出数据输出到图像重建模块。
[0040]
本实施例中,每个连接组cg的结构如图3所示,每个连接组cg包括多个依次连接的连接单元(concat block,cb)和一个第二加权通道级联单元。其中,第二加权通道级联单元是wcc结构,其包括一个尺寸为1
×
1的卷积核。参照图3,第二加权通道级联单元用于将同一连接组中,输入至第一个连接单元中的信息与最后一个连接单元输出的信息加权整合后,作为该连接组的输出数据输出到下一连接组或者第一加权通道级联单元。
[0041]
本实施例中,每个连接单元cb的结构如图4所示,每个连接单元cb包括conv-relu-conv结构的卷积层以及与该卷积层连接的第三加权通道级联单元。具体地,conv-relu-conv结构的卷积层包括依次连接的为3
×
3卷积核、relu激活函数和3
×
3卷积核;第三加权通道级联单元是wcc结构,其包括一个尺寸为1
×
1的卷积核。参照图4,第三加权通道级联单元用于将同一连接单元中,输入至conv-relu-conv结构卷积层中的信息与conv-relu-conv结构卷积层输出的信息加权整合后,作为该连接单元的输出数据输出至下一连接单元或者第二加权通道级联单元。
[0042]
本实施例中,图4中的第三加权通道级联单元的功能可以表示为x
t+1
=l([λ1x
t
,λ2f(x
t
)])。其中,x
t
为cb模块的输入,x
t+1
为cb模块的输出,l(
·
)为1
×
1卷积核的卷积运算,λ1和λ2是第三加权通道级联单元中的加权通道连接相应的权重因子,而[...]则表示图像通道维度串联方式。
[0043]
本实施例中,图3中的连接组由m个连接单元和一个第二加权通道级联单元堆叠组成。其中,x
i-1
=x
i-1,0
表示第i个连接组中的第一个连接单元的输入,得到局部特征的表达式
为x
i-1,j
=h
i,j
(x
i-1,j-1
),j=1,2,...,m,h
i,j
(
·
)表示第i个连接组中的第j个连接单元对应的函数。由于一个连接组含有m个连接单元,与整体非线性映射类似,则有x
i-1,m
=h
i,m
[h
i,m-1
(

h
i,1
(x
i-1,0
)

)]。此外,为了促进神经网络整体信息流整合,进一步采用第二加权通道单元整合连接组中的第一个连接单元的输入和最后一个连接单元的输出,如图3所示,可以将这一过程表示为x
i
=l
i
([λ
i-1,0
x
i-1,0

i-1,m
x
i-1,m
]),其中l(
·
)为第i个连接组的1
×
1卷积层的卷积运算,λ
i-1,0
和λ
i-1,m
是第二加权通道级联单元连接相应的权重因子,而[...]则表示图像通道维度串联方式。这里的操作类似于连接单元中的运算操作,第二加权通道级联单元中是后接卷积核大小为1
×
1卷积层,达到简化局部特征学习,将线性和非线性特征进行融合。
[0044]
本实施例中,参照图2,对于特征提取模块,通过单个卷积核大小为3
×
3的卷积层进行特征提取,即x0=f
ε
(x),x0是特征提取模块提取出来的特征图,f
ε
(
·
)表示卷积核大小为3
×
3的卷积层运算操作。对于非线性映射模块,将x0作为非线性映射模块的输入,利用非线性映射模块网络结构中进行非线性运算,产生深层次的特征信息,即x
n+1
=f
n
(x0),x
n+1
表示生成的深层次特征信息,f
n
(
·
)表示整个非线性映射。最后,对于图像重建模块,采用espcnn模型中的upscale module和卷积核大小为3
×
3的卷积层来进行图像重建,输出重建后的高分辨率图像。
[0045]
本实施例中,第一加权通道级联单元对各连接组输出的信息的加权权重互不相同,第二加权通道级联单元对第一个连接单元中的信息与最后一个连接单元输出的信息的加权权重互不相同;第三加权通道级联单元对输入至卷积层中的信息与卷积层输出的信息的加权权重互不相同。例如,λ1和λ2不相同,λ
i-1,0
和λ
i-1,m
不相同,这样可以实现注意力机制,增加通道之间的差异性。
[0046]
在执行步骤s1构建得到卷积神经网络后,执行步骤s2,以获取训练集。本实施例中,选取div2k数据集的部分图像作为训练集,通过随机的水平方向和垂直方向的翻转、90度旋转等方式来对训练集进行数据扩充。
[0047]
本实施例中,执行步骤s3设定的训练参数包括学习率、衰减率和训练次数。其中,学习率方面选取分段常数衰减的方法,将区间间隔大小定为20000,即每隔20000次训练,学习率更新一次。因而学习率区间为[20000,40000,60000,80000],对应的学习率为[8.1*10-5
,7.3*10-5
,6.6*10-5
,5.9*10-5
,5.3*10-5
],其它训练次数所对应的学习率以此类推。
[0048]
本实施例中,执行步骤s3设定的损失函数smooth l1函数,其表达式为关于损失函数的选取,也可以有其他选择,例如超分辨率重建领域常见的损失函数距离的l1和l2范数。考虑l1损失函数在0处的导数不唯一,可能影响收敛,当预测值和真实值差距甚远时,l2损失函数会将这种差距变得更大。
[0049]
本实施例中,选执行步骤s4,当训练集中包括样本以及对样本的标签,则以样本作为卷积神经网络的输入,以相应的标签作为卷积神经网络的期望输出,通过调整卷积神经网络的参数,使得卷积神经网络的实际输出趋近期望输出。具体地,使用随机梯度下降算法,最小化步骤s3中设定的损失函数,当损失函数收敛到最小值时便完成对卷积神经网络的训练。
[0050]
本实施例中,优化网络结构的算法选用的是adam,其中adam优化方法是梯度下降算法的一个改进版。引入了可变的学习率和衰减量。其方式是,每时间步长迭代一次,计算一次平均梯度和平均梯度的平方根衰减量。因此能够一定程度地表面梯度下降法收敛于局部最优解的缺陷。其中初始化权值的算法采用了msra,避免了因为卷积核尺寸不一样而导致的收敛慢问题。使得生成的权值足够随机,从而更能在一定范围内收敛到最接近全局最优的解。
[0051]
本实施例中,通过利用第二加权通道级联单元和多个连接单元组成连接组,利用第一加权通道级联单元和多个连接组,在深度卷积神经网络模型基础上,采用全通道级联深度卷积神经网络,抛弃广泛使用的残差学习和残差网络结构,将网络层次中的所有跳跃连接使用加权通道级联(weighted channel concatenation,wcc)方式,对特征图通道赋予不同的权重,增加通道之间的差异性,实现将后接卷积层整合局部特征,提升了卷积神经网络的表示能力,改善了现有技术中模型表征冗余大、表征能力低等缺点,实现了在同样的重建效果下所需的资源较少的效果。实验结果表明,本发明基于wcc结构的全通道级联深度卷积神经网络在不使用残差学习的前提下,模型参数小于10m,神经网络深度仍可以超过400层,且实验性能优于其它深度学习图像超分辨率重建模型。
[0052]
本实施例中,基于执行步骤s1-s4训练所得的卷积神经网络,执行图像重建方法,图像重建方法包括以下步骤:
[0053]
a1.将低分辨率图像输入至卷积神经网络;
[0054]
a2.获取卷积神经网络输出的高分辨率图像。
[0055]
本实施例中,经过步骤s1-s4训练的卷积神经网络具有较优的表示能力,能够对低分辨率图像执行图像重建,改善因成像硬件性能和环境噪声等不确定因素导致的图像质量下降,从而输出高分辨率图像。
[0056]
本实施例中,“低分辨率图像”和“高分辨率图像”中的“高”和“低”是相对而言的,也可以根据需要设定阈值,将分辨率低于该阈值的图像称为低分辨率图像,将分辨率高于该阈值的图像称为高分辨率图像。
[0057]
本实施例中,一种计算机装置,包括存储器和处理器,所述存储器用于存储至少一个程序,所述处理器用于加载所述至少一个程序以执行实施例中的卷积神经网络训练方法或图像重建方法,实现与实施例所述的相同的技术效果。
[0058]
本实施例中,一种存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于执行实施例中的卷积神经网络训练方法或图像重建方法,实现与实施例所述的相同的技术效果。
[0059]
需要说明的是,如无特殊说明,当某一特征被称为“固定”、“连接”在另一个特征,它可以直接固定、连接在另一个特征上,也可以间接地固定、连接在另一个特征上。此外,本公开中所使用的上、下、左、右等描述仅仅是相对于附图中本公开各组成部分的相互位置关系来说的。在本公开中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本实施例所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本实施例说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本发明。本实施例所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
[0060]
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种元件,但这些元件不应限于这些术语。这些术语仅用来将同一类型的元件彼此区分开。例如,在不脱离本公开范围的情况下,第一元件也可以被称为第二元件,类似地,第二元件也可以被称为第一元件。本实施例所提供的任何以及所有实例或示例性语言(“例如”、“如”等)的使用仅意图更好地说明本发明的实施例,并且除非另外要求,否则不会对本发明的范围施加限制。
[0061]
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性计算机可读存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术-包括配置有计算机程序的非暂时性计算机可读存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作——根据在具体实施例中描述的方法和附图。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。
[0062]
此外,可按任何合适的顺序来执行本实施例描述的过程的操作,除非本实施例另外指示或以其他方式明显地与上下文矛盾。本实施例描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
[0063]
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、ram、rom等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本实施例所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
[0064]
计算机程序能够应用于输入数据以执行本实施例所述的功能,从而转换输入数据以生成存储至非易失性存储器的输出数据。输出信息还可以应用于一个或多个输出设备如显示器。在本发明优选的实施例中,转换的数据表示物理和有形的对象,包括显示器上产生的物理和有形对象的特定视觉描绘。
[0065]
以上所述,只是本发明的较佳实施例而已,本发明并不局限于上述实施方式,只要其以相同的手段达到本发明的技术效果,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。在本发明的保护范围内其技术方案和/或实施方式可以有各种不同的修改和变化。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1