本发明属于图像处理技术领域,更进一步是一种图像超分辨率重建方法,可用于天气状况预测、公安部门刑侦破案、电视显示器清晰度提升。
背景技术:
受成像系统的自身条件及外界环境因素的限制和影响,现有数字成像系统获得的图像分辨率低,难以满足人们的需要。而单帧图像超分辨率重建技术,可以从一幅低分辨率图像中重建出高分辨率图像,从而有效克服这一限制。
目前,关于图像超分辨率重建方面的论文和专利非常多,从采取的技术路线来看,这些方法在图像预处理,特征选择与提取等方面各不相同。有的是基于插值的单帧图像超分辨率重建方法,有的通过找寻并确定图像降质模型,推导图像降质的逆过程来将图像还原成原始的高分辨率图像。还有一些基于稀疏表示,利用字典学习来实现单帧图像的超分辨率重建。这些传统方法范畴,由于主要依赖于人工设计算法进行特征提取和选择,导致图像超分辨率重建的效果不好。
近年来,深度学习在各个领域的发展如火如荼,这种技术已经在目标检测、人脸识别、图像复原等方面取得了较好的效果,在单帧图像超分辨领域也取得了十分优异的成绩。
广州高清视信数码科技股份有限公司在其申请的专利“一种基于组稀疏表示的单帧图像超分辨率重建方法”(专利申请号:201510703242.1,申请公开号:cn105225215a)中提出了一种基于组稀疏表示的单帧图像超分辨率重建方法。该方法首先构建高分辨图像的训练样本库,然后采用正交匹配追踪法求解训练样本的稀疏系数矩阵,进而得到训练样本的组稀疏字典,最后根据训练样本的组稀疏字典组对低分辨率图像进行超分辨率图像重建,得到超分辨率图像。该方法存在的不足之处是,当训练样本数目较多、图像尺寸大时,计算复杂度明显增大,导致计算时间长,实时性差。
厦门大学在其申请的专利“基于深度置信网络的图像超分辨率重建方法”(专利申请号:201510501171.7,申请公开号:cn105069825a)中提出了一种基于深度置信网络的单帧图像超分辨率重建方法。该方法首先用重复分块采样的方法获取低分辨率的图像,并将其插值放大到所需尺寸;然后输入低分辨率图像块,用预先训练好的深度置信网络预测高分辨率的图像块,再将得到的拟合结果进行邻域正则化优化求解;最后将所有的高分辨亮度图像块组合得到高分辨率亮度图像。该方法存在的不足之处是,由于网络输入的图片需要进行双三次插值预处理,导致计算量呈几何倍数提升,实时性较差;而且,利用一个浅层的深度置信网络无法充分提取低分辨图片中边缘、纹理等不同类型的特征,导致图像超分辨率重建的效果不好。
技术实现要素:
本发明的目的是针对上述现有技术存在的不足,提出一种基于浅层密集连接卷积网络的图像超分辨率重建方法,以使重建后的高分辨图片边缘更清晰,纹理细节更加丰富,且超分辨率重建的速度更快。
实现本发明目的的技术方案如下:
(1)搭建一个密集连接块,其内部结构为4个卷积层,且将第一个卷积层的输入与第一个卷积层的输出并联,作为第二个卷积层的输入;将第二个卷积层的输出作为第三个卷积层的输入;将第三个卷积层的输入与第三个卷积层的输出并联,作为第四个卷积层的输入;最终将第一个卷积层的输入与第四个卷积层的输出相加;
(2)搭建一个包含两个卷积层、一个反卷积层和两个密集连接块的浅层密集连接网络,其结构依次为:输入图像→第1个卷积层→第1个密集连接块→第2个密集连接块→第1个反卷积层→第2个卷积层→输出图像;
(3)对公知数据集中的图像进行预处理,得到训练数据集和测试数据集:
(3a)将公知数据集中的图像从rgb彩色空间转换到ycbcr彩色空间,对图像的亮度通道y进行单独提取,并分别存储在图像矩阵中,将每个图像矩阵的元素值归一化到[0,1]之间,得到归一化的高分辨图像矩阵,并将该矩阵下采样两倍,得到低分辨图像矩阵;
(3b)对(3a)中得到的低分辨率图像矩阵使用32×32的滑动窗口取得小图像块
(4)利用训练集训练浅层密集连接网络:
(4a)用上述训练集中低分辨率图像块
(4b)设训练更新网络参数的迭代次数阈值t=12000,输入16个低分辨率图像块
(5)图像超分辨率重建:
(5a)将测试集中低分辨率图像块xj作为输入,利用步骤(4)训练好的浅层密集连接网络预测对应的高分辨率图像块yj;
(5b)将蓝色偏量cb、红色偏量cr两个通道进行上采样到目标尺寸,然后将上采样后的这两通道数值与高分辨率图像块yj中的亮度通道y一同合并为ycbcr三通道的结果,并将该结果转换到rgb空间,得到最终的彩色高分辨图像块yj;
(5c)将最终的彩色高分辨图像块yj按图像内容组合,得到最终的彩色高分辨率图像y。
本发明与现有技术相比具有以下优点:
第一、由于本发明采用浅层密集连接网络,通过跨层级联的方式更加有效地利用了特征图并提高网络中所有层之间的信息流,在充分利用了网络所提取到输入图像隐层信息的同时,还能减少网络训练过程中会出现的梯度消失和梯度弥散而导致收敛困难的问题,克服了现有基于深度网络方法中特征图利用不充分,图像超分辨率重建质量不高缺陷,提高了重建高分辨率图像的清晰度,保留有更丰富的图像细节和更清晰地边缘轮廓。
第二、由于本发明采用的网络层数较浅,且网络后半段利用了反卷积层,使得超分辨率重建过程中的计算量呈几何倍下降,克服了现有技术中利用图像空间特性设计算法,导致速度慢,实时性差的问题。
附图说明
图1是本发明的实现流程图。
具体实施方式
下面结合附图对本发明做进一步的描述。
参照图1,本发明实现的具体步骤如下:
步骤1,构造浅层密集连接网络。
(1a)搭建一个密集连接块:
该密集连接块的内部结构为4个卷积层,且将第一个卷积层的输入与第一个卷积层的输出并联,作为第二个卷积层的输入;将第二个卷积层的输出作为第三个卷积层的输入;将第三个卷积层的输入与第三个卷积层的输出并联,作为第四个卷积层的输入;最终将第一个卷积层的输入与第四个卷积层的输出相加;
(1b)搭建一个包含两个卷积层、一个反卷积层和两个密集连接块的浅层密集连接网络,其结构依次为:输入图像→第1个卷积层→第1个密集连接块→第2个密集连接块→第1个反卷积层→第2个卷积层→输出图像;
(1c)设置网络参数:
设第1个卷积层特征映射图总数为64,卷积核大小为3×3,卷积运算的步长为1;
设第1个密集连接块中第一个卷积层和第三个卷积层的特征映射图总数为64,卷积核大小为3×3,卷积运算的步长为1;第二个卷积层和第四个卷积层的特征映射图总数为128,卷积核大小为3×3,卷积运算的步长为1;
第2个密集连接块的参数设置与第1个密集连接块相同;
设第1个反卷积层特征映射图数目设置为64,卷积核大小为4×4,卷积运算的步长为2;
设第2个卷积层的特征映射图总数为1,卷积核大小为3×3,卷积运算的步长为1。
步骤2,构建训练集与测试集。
(2a)对公知数据集中的图像进行预处理:
将公知数据集中的图像从rgb彩色空间转换到ycbcr彩色空间,对图像的亮度通道y进行单独提取,并分别存储在图像矩阵中。将每个图像矩阵的元素值归一化到[0,1]之间,得到归一化的高分辨率图像矩阵;
(2b)由高分辨图像矩阵得到对应低分辨图像矩阵:
对高分辨率图像矩阵4×4邻域内的16个点(am,bn)进行双立方插值下采样,得到对应位置低分辨率图像下采样点(a,b)的像素值,其公式如下:
其中,f(a,b)代表点(a,b)的像素值,式中w(x)表示高斯核函数,表示为:
式中,x具体表示为低分辨图像像素点(a,b)位置与高分辨图像像素点(am,bn)位置在水平方向上的偏差a-am和竖直方向上的偏差b-bn,c取值为0.5;
将高分辨率图像中所有像素点遍历一遍,得到最终下采样后的低分辨率图像矩阵;
(2c)获得训练数据集和测试数据集:
对(2b)中得到的低分辨率图像矩阵使用32×32的滑动窗口取得小图像块
步骤3,利用训练数据集训练密集连接网络。
(3a)将低分辨率训练图像块
(3b)用随机梯度下降法和误差的反向传播法微调参数wi和bi,具体操作如下所示:
(3b1)输入一批有标签的训练数据;
(3b2)计算网络的输出与所输入的训练数据的标签之间的差距,将该差距作为网络损失值e,计算如下:
其中,n表示单次参与训练的所有低分辨与对应高分辨图像块的个数,i表示网络生成的高分辨图像,
(3b3)依照下式,调整网络中的每个参数:
θ′k=θk-α×gk
其中,θ′k表示网络调整参数后的第k个参数,θk表示网络调整参数前的第k个参数,α表示调整参数时的学习率,α∈[0,1],gk表示网络损失值对网络调整参数前的第k个参数的偏导数;
(3b4)将(3b1)输入的训练数据输入到调整参数后的网络中,计算调整参数后网络的输出与所输入的训练数据的标签之间的差距,将该差距作为调整参数后网络的损失值;
(3b5)判断调整参数后网络的损失值e是否小于阈值p,若是,则得到训练好的网络,否则,返回(3b1);
所述阈值,为一个根据对网络的训练精度的不同要求而从[0,+∞]范围选取的数值,选取的数值越大,网络的训练精度越低,选取的数值越小,网络的训练精度越高,直到损失值e<30或者迭代次数t>12000。最终得到最终训练好的密集连接网络,本实例取阈值p=30。
步骤4,重建超分辨率图像。
(4a)将测试集中待测试图像的低分辨率图像块xj作为输入,利用步骤3训练好的密集连接网络来预测,得到对应的高分辨率图像块yj;
(4b)将蓝色偏量cb、红色偏量cr两个通道进行上采样到目标尺寸,然后将上采样后的这两通道数值与高分辨率图像块yj中的亮度通道y一同合并为ycbcr三通道的结果,并将该结果转换到rgb空间,得到最终的彩色高分辨图像块yj;
(4c)将最终的彩色高分辨图像块yj按图像内容组合,得到最终的彩色高分辨率图像y。
下面结合仿真实验对本发明的效果做进一步的描述。
1、仿真实验条件:
仿真实验采用单帧图像超分辨率重建公知数据库,其中包含风景、花鸟、人物等自然图像,选取图像大小为64×64像素,具体数据分布如表1。硬件平台为:intelcorei5-8400cpu@2.80ghz、8gbram、gtx1080tigpu,软件平台:matlab,pytorch。
表1.单帧图像超分辨率重建实验数据分布
2、实验内容与结果:
用本发明方法与现有三种方法,即基于双三次插值的超分辨率重建方法(bicubic)、基于稀疏编码的超分辨率重建方法(sc)、基于深度学习cnn模型的超分辨率重建方法,分别对测试集进行图像超分辨率重建,计算各种方法的峰值信噪比psnr和结构相似度ssim,并对比了生成一张图像的时间,实验结果如表2所示。
表2.测试集图像超分辨率结果
从表2中可见,本发明由于融合了不同层之间的特征,显著提高了模型的表征能力,使得模型相较于其他几种方法,能够在客观评价指标psnr和ssim取得较高的数值,且模型重构图像的速度要比传统的稀疏编码方法快很多。