本发明涉及数字图像处理、机器学习、计算机视觉领域,特别涉及基于双向递归卷积神经网络的图像超分辨率增强方法。
背景技术:
随着相机、手机等数字成像设备的普及,数字图像在人类接受信息的方式途径中扮演着越来越重要的角色。图像分辨率是指一幅数字图像中所包含的像素点的数目,越高的分辨率意味着图像中包含有越多的细节信息。然而受限于有限分辨率的成像硬件设备,人们无法获取到具有非常高分辨率的图像。因此如何提升已有低分辨率图像的分辨率具有巨大的实际应用价值。图像超分辨率增强是指根据输入的单幅或者多幅序列低分辨率图像生成一张高分辨率图像的过程。
传统的基于样本图像超分辨率算法中,基本流程均是针对输入的低分辨率图像块产生其对应的高分辨率图像块,在由高分辨率图像块融合生成高分辨率图像的过程中大都采用在相邻图像块重叠区域进行平均操作。简单的平均处理难以保持相邻图像块之间的连续性和一致性,也忽略了图像块之间潜在的空间位置关系,然而这种空间位置关系可以很好地被用来保持高分辨率图像中的边缘纹理信息,而且在生成高分辨率图像块的过程中同时利用相邻图像块的信息有利于生成更多更丰富的细节信息。双向递归卷积神经网络已经成功应用于诸多计算机视觉任务中,被证明为可以有效地对空间位置关系进行建模。因此本发明从利用双向卷积神经网络对相邻图像块空间关系进行建模入手,提出了一种基于双向递归卷积神经网络的图像超分辨率增强方法,很好地弥补了传统方法中忽略相邻图像块空间关系的缺陷,得到了一种包含有更多边缘纹理等细节信息的图像超分辨率增强结果。
技术实现要素:
本发明提出一种基于双向递归卷积神经网络的图像超分辨率增强方法,充分利用了双向递归卷积神经网络学习相邻图像块空间位置关系,进而得到包含有更多边缘纹理等细节信息的高分辨率图像。
本发明提出的基于双向递归卷积神经网络的图像超分辨率增强方法,包括模型训练和分辨率增强两部分;
模型训练:
步骤A1,获取多组包含有完全相同内容的高、低分辨率图像;对每张低分辨率图像通过滑动窗口的方法提取一组低分辨率图像块,同一张低分辨率图像中连续M个空间位置上依次相邻的低分辨率图像块组合形成一个训练样本;提取每张高分辨率图像中与低分辨率图像块位置对应的高分辨率图像块作为该训练样本的标签;
步骤A2,利用所述的训练样本和训练样本的标签进行双向递归卷积神经网络模型的训练;
分辨率增强:
步骤B1,将待处理低分辨率图像通过滑动窗口的方法分割成一组待处理低分辨率图像块,同一张待处理低分辨率图像中连续的空间位置上依次相邻的低分辨率图像块组合形成一个待处理样本序列,并保存每个低分辨率图像块在图像中的对应位置;
步骤B2,将所述待处理样本序列输入到步骤A2训练好的双向递归卷积神经网络模型中,输出待处理样本序列中各待处理低分辨率图像块对应的高分辨率图像块,将输出的高分辨率图像块按照对应低分辨率图像块在图像中的位置进行融合,从而生成高分辨率图像。
所述双向递归卷积神经网络模型进行训练的目标函数为
其中表示第i个训练样本中第j个低分辨率图像块,表示对应的真实高分辨率图像块,N为训练样本的个数,M为每个训练样本中空间上相邻的图像块的个数;θ表示双向递归卷积神经网络中隐节点之间的递归连接参数,负责对相邻图像块间的空间位置关系进行学习,根据学习的空间位置关系方向的不同该参数可以进一步表示为:θ=[θF,θB],其中θF表示为前向递归连接参数,θB表示后向递归连接参数;W表示双向递归卷积神经网络中输入低分辨率图像块到输出高分辨率图像块之间的连接参数,负责由低分辨率图像块到高分辨率图像块之间映射关系的学习;表示将低分辨率图像块输入到双向递归卷积神经网络生成的高分辨率图像块;
通过最小化目标函数E来求取参数θ,W的最优估计值
所述双向递归卷积神经网络模型生成高分辨率图像块的具体公式如下:
其中为第i个训练样本中空间上依次相邻的低分辨率图像块;表示利用与其之前的低分辨率图像块的信息生成的高分辨率图像块;表示利用与其之后的低分辨率图像块的信息生成的高分辨率图像块。
所述高分辨率图像块和的公示如下:
其中
其中
所述获取多组包含有完全相同内容的高、低分辨率图像的方法为:选取高分辨率图像构成训练原始数据,将训练原始数据中的高分辨率图像模拟生成低分辨率图像。
采用图像降质观测模型将高分辨率图像模拟生成低分辨率图像,具体为:
对高分辨率图像首先进行高斯模糊,接着利用双三次插值方法进行百分比缩放,然后对得到的缩小的低分辨率图像使用双三次插值的方式放大至对应的高分辨率图像的原有尺寸。
利用双三次插值方法进行两个或两个以上尺寸的百分比缩放得到多个缩小尺寸的低分辨率图像,基于一个高分辨率图像生成多个高、低分辨率图像组。
百分比缩放的尺寸可以为高分辨率图像的尺寸的二分之一或三分之一或四分之一。
本发明通过利用双向递归卷积神经网络,能够学习到高低分辨率图像之间更加准确的映射关系;通过双向递归卷积神经网络中递归的网络结构,能够明显提升高分辨率图像块生成过程中的感受野大小;通过双向递归卷积神经网络对相邻图像块空间位置关系的学习,能够充分利用相邻图像块之间的一致性约束,在结果高分辨率图像中的保留更多的细节信息。
附图说明
图1本发明技术方案流程框图;
图2双向递归卷积神经网络结构图。
具体实施方式
下面将结合附图对本发明加以详细说明,应指出的是,所描述的实施例仅旨在便于对本发明的理解,而对其不起任何限定作用。
本发明的思想要点是:1)本发明利用双向递归卷积神经网络对图像中相邻图像块空间位置关系进行学习,并以此来辅助高低分辨率图像间映射关系的学习;2)本发明利用双向递归卷积神经网络中的递归结构提升高分辨率图像块生成过程中的感受野大小,提升生成的高分辨率图像块的准确性;3)本发明有效利用相邻图像块之间的一致性约束,丰富结果高分辨率图像中的边缘纹理等细节信息。
本发明的技术方案流程框图如图1所示,包括模型训练和分辨率增强两部分
模型训练:
步骤A1,训练数据生成:获取多组包含有完全相同内容的高、低分辨率图像;对每张低分辨率图像通过滑动窗口的方法提取一组低分辨率图像块,同一张低分辨率图像中连续M个空间位置上依次相邻的低分辨率图像块组合形成一个训练样本;提取每张高分辨率图像中与低分辨率图像块位置对应的高分辨率图像块作为该训练样本的标签。
大规模的可用数据是采用深度学习的前提条件。本发明中采用的是包含有91张自然场景高分辨率图像的数据集。由于实际中无法同时收集到包含有完全相同内容的高低分辨率图像,因此,本发明选取高分辨率图像构成训练原始数据,采用图像降质观测模型将训练原始数据中的高分辨率图像模拟生成低分辨率图像,具体为:对训练原始数据中的高分辨率图像进行高斯模糊后利用双三次插值方法将其尺寸进行等比例缩小后作为对应的缩小的低分辨率图像,本实施例中等比例缩小的尺寸为原有尺寸的二分之一、三分之一、四分之一等,接着对得到的缩小的低分辨率图像使用双三次插值的方式放大至对应的高分辨率图像的原有尺寸;将得到的每张低分辨率图像与其对应的高分辨率图像构成高、低分辨率图像组,对每个高、低分辨率图像组中低分辨率图像和高分辨率图像以滑动窗口的方式产生对应的高、低分辨率图像块,具体为:对每张低分辨率图像通过滑动窗口的方法提取一组低分辨率图像块,同一张低分辨率图像中连续M个空间位置上依次相邻的低分辨率图像块组合形成一个训练样本;提取每张高分辨率图像中与低分辨率图像块位置对应的高分辨率图像块作为该训练样本的标签。
本发明中构造了不同缩放倍数下的训练数据并分别进行了训练,得到了针对不同放大倍数的双向递归卷积神经网络模型。
步骤A2,双向递归卷积神经网络的模型训练:利用所述的训练样本和训练样本的标签进行双向递归卷积神经网络模型的训练。
本发明中双向递归卷积神经网络模型进行训练的目标函数如公式(1)所示;
其中E为整个网络训练的目标损失函数,为第i个训练样本中第j个低分辨率图像块,为对应于的真实高分辨率图像块。N为训练样本的个数,M为每个训练样本中空间上相邻的图像块的个数。表示将低分辨率图像块输入到双向递归卷积神经网络生成的高分辨率图像块。θ表示双向递归卷积神经网络中隐节点之间的递归连接参数,负责对相邻图像块间的空间位置关系进行学习,根据学习的空间位置关系方向的不同该参数可以进一步表示为:θ=[θF,θB],其中θF表示前向递归连接参数,θB表示后向递归连接参数。W表示双向递归卷积神经网络中输入低分辨率图像块到输出高分辨率图像块之间的连接参数,负责由低分辨率图像块到高分辨率图像块之间映射关系的学习。
本发明中主要通过最小化网络生成的高分辨率图像块与真实高分辨率图像块之间的均方根误差对模型进行训练,即通过最小化目标函数E来求取参数θ,W的最优估计值如公式(2)所示
利用双向递归卷积神经网络模型生成高分辨率图像块时,充分利用了输入的低分辨率图像块及与其相邻的低分辨率图像块的信息进行高分辨率图像块的生成;生成的高分辨率图像块可以进一步表示为公式(3):
其中为第i个训练样本中空间上依次相邻的低分辨率图像块,如同一行中从左到右依次相邻的低分辨率图像块、同一列中从上到下依次相邻的低分辨率图像块等。表示利用与其之前的低分辨率图像块生成高分辨率图像块。表示利用与其之后的低分辨率图像块生成高分辨率图像块。公式(3)表明双向递归卷积神经网络利用输入低分辨率图像块前后两个方向上的相邻图像块的信息融合产生高分辨率图像块。
附图2显示了双向递归卷积神经网络的结构,图中下半部分为前向递归卷积神经网络,上半部分为后向递归卷积神经网络。图中为空间上依次相邻的输入低分辨率图像块,为对应的网络生成的高分辨率图像块,分别为对应于不同输入低分辨率图像块的隐节点。前向递归连接参数θF可以进一步表示为θF=[θF1,θF2],θF1表示前向网络中第一层隐节点之间的递归连接参数,θF2表示前向网络中第二层隐节点之间的递归连接参数,如图中所示。同理后向递归连接参数θB可以进一步表示为θB=[θB1,θB2],θB1表示后向网络中第一层隐节点之间的递归连接参数,θB2表示后向网络中第二层隐节点之间的递归连接参数。参数W可以进一步表示为W=[W1,W2,W3],W1表示输入低分辨率图像块到第一层隐节点之间的连接参数,W2表示第一层隐节点到第二层隐节点之间的连接参数,W3则表示第二层隐节点到输出高分辨率图像块之间的连接参数,如图中所示。
现以前向为例具体介绍递归卷积神经网络生成高分辨率图像块的过程:
1)隐节点计算如公式(4)所示:
其中σ为节点的非线性激励函数,*为卷积操作。
2)隐节点计算如公式(5)所示:
3)输出高分辨率图像块计算如公式(6)所示:
后向递归卷积神经网络生成高分辨率图像块过程类似,两者生成的高分辨率图像块加和平均生成最终的高分辨率图像块如公式(3)所示。
本实施例中,公式(3)中的高分辨率图像块和的计算如公式(7)、(8)所示:
其中
其中
分辨率增强:
步骤B1,低分辨率图像预处理:首先将输入的低分辨率图像的像素值归一化0到1区间,接着使用双三次插值的方式缩放到目标尺寸;将待处理低分辨率图像通过滑动窗口的方法分割成一组待处理低分辨率图像块,同一张待处理低分辨率图像中连续的空间位置上依次相邻的低分辨率图像块组合形成一个待处理样本序列,并保存每个低分辨率图像块在图像中的对应位置;
步骤B2,利用训练好的双向递归卷积神经网络模型生成高分辨率图像:将所述待处理样本序列输入到步骤A2训练好的双向递归卷积神经网络模型中,输出待处理样本序列中各待处理低分辨率图像块对应的高分辨率图像块,将输出的高分辨率图像块按照对应低分辨率图像块在图像中的位置进行融合,从而生成高分辨率图像。
本发明提出了一种新的基于双向递归卷积神经网络的图像超分辨率增强方法很好地利用了双向递归卷积神经网络对相邻图像块空间位置关系建模的能力,得到了具有更高峰值信噪比且包含有更多边缘纹理等细节信息的结果高分辨率图像,进而说明了相邻图像块空间位置关系对图像超分辨率的有效性。
以上所述,仅为本发明中的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉该技术的人在本发明所揭露的技术范围内,可理解想到的变换或替换,都应涵盖在本发明的包含范围之内,因此,本发明的保护范围应该以权利要求书的保护范围为准。