本发明涉及人工智能技术领域,特别涉及一种基于特征相关性的图像超分辨方法、存储介质及终端设备。
背景技术:
图像分辨率是衡量图像质量的一项重要指标,分辨率越高,细节越精细,质量越佳,图像包含的信息量越丰富。因此具有更高分辨率的图像在各种计算机视觉任务,如军事安全,卫星监控,交通监管,刑事调查等应用中都有着重要的应用价值及研究前景。但由于成本问题,通常在实际情况中的图像采集、存储、传输过程会不可避免受到外在条件限制或其它干扰,导致其存在不同程度的质量退化。
超分辨率是一种提高原有图像分辨率的技术,通过一系列低分辨率图像来得到一张高分辨率图像的过程就是超分辨率重建。图像超分辨可以基于插值的方法,基于模型的方法以及基于卷积神经网络的方法。早期的基于插值的方法,比如双线性插值,双三次插值等,由于超分是一种不适定问题,每个像素从低分辨率图像到高分辨率图像的映射上有许多解,并且这类方法仅使用低分辨率图像的信息,因此很难模拟真实图像的视觉复杂性。基于模型的方法主要利用了图像强大的先验信息,例如非局部先验和稀疏先验等,但是基于模型的方法一般需要复杂度较高的模型优化过程,图像信息与先验偏差较大时性能退化严重。
今年来,卷积神经网络在图像超分辨中取得了很好的效果,例如,dong等首次引入了三层的卷积神经网络(srcnn)用于图像超分辨,并在当时取得了最好的性能。接着,kim等设计了更深的基于残差学习的vdsr(16层)和drcn。为了进一步提升性能,lim等通过堆叠改动的残差块(residualblocks)提出了一个非常深的edsr网络。随着卷积神经网络在超分领域实现不断提升的效果,当前的研究更关注于对卷积神经网络进行深度或宽度上的扩展。但是,更深更宽的卷积神经网络加大了难度,同时还忽视了特征之间的相关性,从而使得处理效果提升出现瓶颈。
因而现有技术还有待改进和提高。
技术实现要素:
本发明要解决的技术问题在于,针对现有技术的不足,提供一种基于特征相关性的图像超分辨方法、存储介质及终端设备,通过残差块注意力模块对特征图像进行空间和通道特征相关性学习,增强了特征图像的表达能力,从而提高了图像超分辨的效果。
为了解决上述技术问题,本发明所采用的技术方案如下:
一种基于特征相关性的图像超分辨方法,其中,所述图像超分率方法应用预设的超分辨网络,所述超分辨网络包括特征提取模块、残差块注意力模块以及图像重构模块;所述方法包括:
将低分辨率图像输入至特征提取模块,通过特征提取模块输出所述低分辨率图像的浅层特征图;
将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,以得到所述低分辨率图像的深度特征图;
将所述深度特征图输入至图像重构模块,通过所述图像重构模块输出所述低分辨率图像对应的高分辨率图像。
所述基于特征相关性的图像超分辨方法,其中,所述残差块注意力模块包括若干残差块注意力组,所述若干残差块注意力组依次堆叠,各残差块注意力组的输出端连接至位于其后方的残差块注意力组上。
所述基于特征相关性的图像超分辨方法,其中,所述将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,以得到所述低分辨率图像的深度特征图具体包括:
将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,得到所述低分辨率图像的输出深度特征图;
将所述深度特征图与所述浅层特征图进行残差学习,以得到所述低分辨率图像的深度特征图。
所述基于特征相关性的图像超分辨方法,其中,所述残差块注意力组包括若干残差块注意力单元,所述若干残差块注意力单元依次堆叠,各残差块注意力单元的输出端连接至位于其后方的残差块注意力单元上。
所述基于特征相关性的图像超分辨方法,其中,所述若干残差块注意力单元中最后残差块注意力单元的输出项与残差块注意力组的输入项进行残差学习。
所述基于特征相关性的图像超分辨方法,其中,所述残差块注意力单元包括用于输出空间注意力图的空间注意力模块和用于输出通道注意力图的通道注意力模块;所述空间注意力模块的输出端与所述通道注意力模块连接。
所述基于特征相关性的图像超分辨方法,其中,所述空间注意力模块包括若干卷积层,所述若干卷积层依次连接,且位最后一个卷积层的输出项与空间注意力模块的输入项相乘。
所述基于特征相关性的图像超分辨方法,其中,所述通道注意力模块包括一个池化层和若干卷积层,所述池化层和若干卷积层依次连接,且位最后一个卷积层的输出项与通道注意力模块的输入项相乘。
一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上任一所述的基于特征相关性的图像超分辨方法中的步骤。
一种终端设备,其包括:处理器、存储器及通信总线;所述存储器上存储有可被所述处理器执行的计算机可读程序;
所述通信总线实现处理器和存储器之间的连接通信;
所述处理器执行所述计算机可读程序时实现如上任一所述的基于特征相关性的图像超分辨方法中的步骤。
有益效果:与现有技术相比,本发明提供了一种基于特征相关性的图像超分辨方法、存储介质及终端设备,所述图像超分辨方法应用预设的超分辨网络,所述超分辨网络包括特征提取模块、残差块注意力模块以及图像重构模块;所述方法通过将低分辨率图像输入至特征提取模块,通过特征提取模块输出所述低分辨率图像的浅层特征图;在将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,以得到所述低分辨率图像的深度特征图;将所述深度特征图输入至图像重构模块,通过所述图像重构模块输出所述低分辨率图像对应的高分辨率图像。本发明通过残差块注意力模块对特征图像进行空间和通道特征相关性学习,增强了特征图像的表达能力,从而提高了图像超分辨的效果。
附图说明
图1为本发明提供的基于特征相关性的图像超分辨方法的流程图。
图2为本发明提供的基于特征相关性的图像超分辨方法中超分辨网络的结构原理图。
图3为本发明提供的基于特征相关性的图像超分辨方法中超分辨网络中残差块注意力单元的结构原理图。
图4为本发明提供的终端设备的结构原理图。
具体实施方式
本发明提供一种基于特征相关性的图像超分辨方法、存储介质及终端设备,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
下面结合附图,通过对实施例的描述,对发明内容作进一步说明。
本实施提供了一种基于特征相关性的图像超分辨方法,所述图像超分率方法应用预设的超分辨网络,如图2所示,所述超分辨网络包括特征提取模块、残差块注意力模块以及图像重构模块。所述超分辨网络为基于预设的训练样本训练得到,预设的训练样本包括若干图像内容互不相同的训练图像组,每组训练图像组包括低分辨图像以及低分辨图像对应的高分辨率图像,在每一次训练中,可以采用一组训练图像组作为训练样本,即将训练图像组中的低分辨率图像输入至超分辨网络,通过超分辨网络得到生成高分辨率图像,再根据生成高分辨率图像和高分辨率图像对所述超分辨网络的网络参数进行修正,直至训练满足预设要求。其中,所述超分辨率网络的损失函数可以选择l1-范数,网络参数可以采用是随机梯度下降算法进行修正。
在本实施例中,如图1所示,所述基于特征相关性的图像超分辨方法包括:
s10、将低分辨率图像输入至特征提取模块,通过特征提取模块输出所述低分辨率图像的浅层特征图。
具体地,所述低分辨图像可以是通过成像系统拍摄,也可以是外部设备发送的,还可以是网上(例如,百度等)下载的。所述特征提取模块用于提取低分辨率图像的浅层特征图,所述特征提取模块可以包括用于提取低分辨率图像的浅层特征图的卷积层,所述卷积层的输入项为低分辨率图像,输出项为浅层特征图,即通过所述卷积层可以识别到低分辨率图像的浅层特征图。当然,在实际应用中,所述特征提取模块可以包括多个卷积层,多个卷积层依次相连接,并且前一个卷积层的输出为后一个卷积层的输入。其中,多个卷积层均可以保持其输出图像与对应输入图像的图像尺寸一致。相应的,所述将低分辨率图像输入至特征提取模块,通过特征提取模块输出所述低分辨率图像的浅层特征图可以为将所述低分辨率图输入卷积层,通过所述卷积层输出所述低分辨率图的浅层特征图;当卷积层为多个时,将低分辨率图像输入第一卷积层,生成第一浅层特征图;将第一浅层特征图输出至第二卷积层,依次类推直至最后卷积层以得到所述低分辨率图像的浅层特征图。
s20、将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,以得到所述低分辨率图像的深度特征图。
具体地,如图2所示,所述残差块注意力模块与所述特征提取模块相连接,所述特征提取模块的输出为所述残差块注意力模块的输入,从而在通过特征提取模块输出浅层特征图像后,该浅层特征图像作为残差块注意力模块的输入项,输出至残差块注意力模块。所述残差块注意力模块用于对浅层特征图像进行空间特征和通道特征进行学习,以得到分辨率图像的深度特征图,所述深度特征图携带所述低分辨率图像的空间特征和通道特征的相关性,以根据所述深度特征图重建得到的高分辨率图像的图像效果。
进一步,所述残差块注意力模块包括若干残差块注意力组,所述若干残差块注意力组依次堆叠,各残差块注意力组的输出端连接至位于其后方的残差块注意力组上。例如,所述残差块注意力模块包括g个残差块注意力组,g个残差块注意力组中按照堆叠顺序位于最前的第一残差块注意力组的输入项为浅层特征图,该第一残差块注意力组输出的第一特征图像为位于其后的第二残差块注意力组的输入项,所述第二残差块注意力组输出的第二特征图像为位于其后的第三残差块注意力组的输入项,依次类推直至最后残差块注意力组。
在本实施例的一个实现方式中,所述将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,以得到所述低分辨率图像的深度特征图具体为:将所述浅层特征图输入残差块注意力模块的第一残差块注意力组,通过第一残差块注意力组输出第一特征图像;将所述第一特征图像输入至残差块注意力模块的第二残差块注意力组,通过第二残差块注意力组输出第二特征图像;依次类推直至最后残差块注意力组,以通过最后残差块注意力组输出深度特征图像。这样通过若干残差块注意力组进行空间特征和通道特征相关性进行学习,可以提高深度特征图像的特征精确性,从而可以提高根据深度特征图重建得到的高分辨率图像的图像效果。
进一步,在本实施例的一个实现方式中,为了使得超分辨网络训练更加稳定,在残差块注意力模块中引入残差学习。相应的,所述将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,以得到所述低分辨率图像的深度特征图具体包括:
s21、将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,得到所述低分辨率图像的输出深度特征图;
s22、将所述深度特征图与所述浅层特征图进行残差学习,以得到所述低分辨率图像的深度特征图。
具体地,所述残差学习为将残差块注意力模块中最后残差块注意力组输出的特征图像与输入所述残差块注意力模块中第一残差块注意力组的浅层特征图进行残差学习。例如,对于每个残差块注意力组,采用fg=hg(fg-1)来表示残差块注意力组的映射关系,其中,hg表示第g个残差块注意力组rag表征的函数,fg为第g个残差块注意力组的输出项,fg-1为第g个残差块注意力组的输入项,且为第g-1个残差块注意力组的输出项,g为大于等于1且小于等于g的正整数,g为残差块注意力组的数量,那么在引入残差学习后,最后一个残差块注意力组的映射关系可以为fdf=f0+fg,其中,f0为输入第一残差块注意力组的浅层特征图。
进一步,在本实施例的一个实现方式中,如图2所示,所述残差块注意力组包括若干残差块注意力单元,所述若干残差块注意力单元依次堆叠,各残差块注意力单元的输出端连接至位于其后方的残差块注意力单元上。例如,如图3所示,所述残差块注意力组包括m个残差块注意力单元,所述m个残差块注意力单元按照堆叠顺序位于最前的第一残差块注意力单元的输出的第三特征图像为位于其后的第二残差块注意力单元的输入项,所述第二残差块注意力组输出的第四特征图像为位于其后的第三残差块注意力单元的输入项,依次类推直至最后残差块注意力单元。
进一步,为了说明各残差块注意力组的工作过程,这样以残差块注意力组为例加以说明。所述第一残差块注意力组的工作过程可以为:将所述浅层特征图输入第一残差块注意力组的第一残差块注意力单元,通过第一残差块注意力单元输出第三特征图像;将所述第三特征图像输入至第一残差块注意力组的第二残差块注意力单元,通过第二残差块注意力单元输出第四特征图像;依次类推直至最后残差块注意力单元,以通过最后残差块注意力组输出所述第一残差注意力组输出的第一特征图像。这样通过若干残差块注意力单元进一步对空间特征和通道特征相关性进行学习,可以提高深度特征图像的特征精确性,从而可以提高根据深度特征图重建得到的高分辨率图像的图像效果。
同时在本实施例中,为了使得超分辨网络专注于低分辨率图像中富含信息的特征,每个残差块注意力组均引入残差学习,通过残差学习可以过滤低频信息,保留富含信息的特征。例如,对于第g个残差块注意力组rag的第m个残差块注意力单元rbam的映射关系可以表示为:fg,m=hg,m(fg,m-1),其中,hg,m表示第g个残差块注意力组rag的第m个残差块注意力单元rbam表征的函数,fg,m为第g个残差块注意力组rag的第m个残差块注意力单元rbam的输出项,fg,m-1为第g个残差块注意力组rag的第m个残差块注意力单元rbam的输入项,且为第g个残差块注意力组rag的第m-1个残差块注意力单元rbam的输出项,g为大于等于1且小于等于g的正整数,g为残差块注意力组的数量,m为大于等于1且小于等于m的正整数,m为残差块注意力单元的数量,那么在引入残差学习后,最后一个残差块注意力单元的映射关系可以为fg=fg-1+fg,m,其中,fg-1为输入第一残差块注意力单元的特征图像。此外在本实施例中,各残差块注意力组包含的残差注意力单元的数量可以相同。当然,在实际应用中,各残差块注意力组包含的残差注意力单元的数量也可以不同。
进一步,在实施例的一个实现方式中,所述残差块注意力单元包括空间注意力模块和通道注意力模块,所述空间注意力模块用于输出空注意力图,所述通道注意力模块通过输出通道注意力图,所述空间注意力模块与所述通道注意力模块相连接,所述空间注意力模块的输出项为所述通道注意力模块的输入项。其中,如图3所示,空间注意力模块sa表征的函数记为ms,那么所述空间注意力模块的输出项为ms(f),其中,f为空间注意力模块的输入项。通道注意力模块ca表征的函数记为mc,那么通道注意力模块的输出项为mc(fs),其中,fs为通道注意力模块的输入项。此外,所述通道注意力模块的输入项为空间注意力模块的输出项与空间注意力模块的输入项对应元素位置相乘得到,即所述fs=ms(f)×f。在所述通道注意力模块得到输出项后,将通道注意力模块的输出项mc(fs)与通道注意力模块的输出项fs对应元素位置相乘,并将相乘得到结果与空间注意力模块的输入项进行残差学习,以得到残差块注意力单元的输出项,即残差块注意力单元的输出项fsc=mc(fs)×fs+f。
进一步,在本实施例的一个实现方式中,所述空间注意力模块包括若干卷积层,所述若干卷积层依次连接,且位最后一个卷积层的输出项与空间注意力模块的输入项相乘。例如,如图3所示,所述空间注意力模块包括4个卷积层,所述空间注意力模块表征的函数可以为:
进一步,所述通道注意力模块包括一个池化层和若干卷积层,所述池化层和若干卷积层依次连接,且位最后一个卷积层的输出项与通道注意力模块的输入项相乘。例如,如图3所示,所述通道注意力模块包括一个池化层和两个卷积层,所述空间注意力模块表征的函数可以为:mc(fs)=f(w1(w0avgpool(fs))),其中,w1和w0表示卷积过程,mc(fs)∈r1×1×c。
s30、将所述深度特征图输入至图像重构模块,通过所述图像重构模块输出所述低分辨率图像对应的高分辨率图像。
具体地,所述图像重构模块用于根据残差块注意力模块输出的深度特征图像恢复低分辨率图像的高频细节内容,以重构得到具有更高质量的高分辨率图像。所述图像重构模块可以包括上采样层和重建层,所述上采样层与所述重建层依次连接,残差块注意力模块输出的深度特征图先经过上采样层进行上采样,上采样得到的特征图像输入重建层,通过重建层输出高分辨率图像。在本实施例中,所述图像重构模块的公式可以表示为:isr=hr(hup(fdf)),其中,hup表示上采样层,hr表示重建层。
综上,本实施例提供了一种基于特征相关性的图像超分辨方法,所述图像超分辨方法应用预设的超分辨网络,所述超分辨网络包括特征提取模块、残差块注意力模块以及图像重构模块;所述方法通过将低分辨率图像输入至特征提取模块,通过特征提取模块输出所述低分辨率图像的浅层特征图;在将所述浅层特征图输入至残差块注意力模块,通过所述残差块注意力模块进行空间和通道特征相关性学习,以得到所述低分辨率图像的深度特征图;将所述深度特征图输入至图像重构模块,通过所述图像重构模块输出所述低分辨率图像对应的高分辨率图像。本实施例采用的超分辨网络是采用有残差块注意力组堆叠的残差块,可以保证超分辨网络的深度,同时通过残差学习使得丰富的低频信息被过滤,使得我们网络更关注高频信息,以及通过空间注意力模块和通道注意力模块从空间和通道两方面对特征的相关性进行学习,提高了网络的特征表达能力,从而通过采用该超分辨网络可以提高得到的高分辨率图像的图像质量。
基于上述基于特征相关性的图像超分辨方法,本实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上述实施例所述的基于特征相关性的图像超分辨方法中的步骤。
基于上述基于特征相关性的图像超分辨方法,本发明还提供了一种终端设备,如图4所示,其包括至少一个处理器(processor)20;显示屏21;以及存储器(memory)22,还可以包括通信接口(communicationsinterface)23和总线24。其中,处理器20、显示屏21、存储器22和通信接口23可以通过总线24完成相互间的通信。显示屏21设置为显示初始设置模式中预设的用户引导界面。通信接口23可以传输信息。处理器20可以调用存储器22中的逻辑指令,以执行上述实施例中的方法。
此外,上述的存储器22中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
存储器22作为一种计算机可读存储介质,可设置为存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令或模块。处理器20通过运行存储在存储器22中的软件程序、指令或模块,从而执行功能应用以及数据处理,即实现上述实施例中的方法。
存储器22可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器22可以包括高速随机存取存储器,还可以包括非易失性存储器。例如,u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等多种可以存储程序代码的介质,也可以是暂态存储介质。
此外,上述存储介质以及终端设备中的多条指令处理器加载并执行的具体过程在上述方法中已经详细说明,在这里就不再一一陈述。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。