美文网首页
Learning a Virtual Codec Based o

Learning a Virtual Codec Based o

作者: 学号叁拾 | 来源:发表于2019-10-25 10:50 被阅读0次

论文地址:https://arxiv.org/abs/1712.05969
作者来自北京交通大学。

摘要

因为传统编码器量化不可微分,在编码之前用卷积神经网络会导致误差不能反向传播。所以这篇文章提出了一个端到端图像压缩框架主要解决了标准编码器中量化函数不可微分的问题。

  • 特征描述神经网络:根据真实图像可到一个低维空间的有效描述,这样可以节省存储和传输的空间。在图像的有效描述之后,利用JPEG等标准图像编解码器进一步压缩图像,导致图像产生严重的失真和压缩伪影,特别是阻塞伪影、细节丢失、模糊和振铃伪影。
  • 后处理神经网络:移除伪影。
  • 直接学习用于卷积神经网络的编解码器的非线性函数是由挑战性的,提出了一种虚拟编解码器神经网络来近似有效描述图像到后处理压缩图像的投影,以便在训练过程中有效地将梯度从后处理神经网络反向传播到特征描述神经网络。同时提出了一种先进的学习算法。

Introduction

压缩图像的后处理技术可以显式地嵌入到编解码器中,提高编码效率,减少粗糙量化带来的伪影。
介绍部分大篇幅的用来讲解了去除压缩伪影的内容。
最后:提出了一种新的端到端神经网络框架,通过学习虚拟编解码器神经网络(VCNN)来压缩图像。首先,利用特征描述神经网络(FDNN)在低维空间对真实图像进行有效的描述,从而大大减少了图像数据量。在对图像进行有效描述后,利用JPEG等标准图像编解码器对图像进行进一步压缩,导致图像产生较大的失真和压缩伪影。最后,我们使用后处理神经网络(PPNN)来去除这些压缩伪影。实验结果验证了该方法的有效性,特别是在低比特率的情况下。论文贡献如下:
1)为了在训练过程中有效地将梯度从PPNN网络反向传播到FDNN网络,提出了VCNN网络对有效特征描述图像到后处理压缩图像的投影进行最优近似。
2)由于直接对整个框架进行一次训练比较困难,因此在我们的框架中,三个卷积神经网络的学习可以分解为三个子问题学习。虽然在训练中使用了三个卷积神经网络,但是在测试中只使用了两个卷积神经网络。
3)显然,我们的框架是与标准编解码器兼容的,因此不需要更改标准编解码器中的任何部分。同时,我们的学习策略可以很容易地扩展到这些基于卷积神经网络的编解码器中。

The Methodology

这篇论文提出了一种新的方法来解决经典编解码器(如JPEG)中使用卷积神经网络和传统编解码器以极低的比特率压缩图像时,经过块变换后的量化函数不可微的问题。该方法是学习一种虚拟编解码器神经网络,使特征描述图像与后处理压缩图像之间的映射最优近似。
论文框架由一个标准编解码器以及三个卷积神经网络组成:FDNN,PPNN以及VCNN。


为了减少图像的存储和传输的数据量,在图像压缩之前,现根据大小为MN大小的真实图像X利用FDNN网络得到一个低维的图像有效描述Y。通俗点讲,FDNN网络被视为一个非线性函数f(X,α),α是设置FDNN网络的参数。标准编码解码器的压缩过程被视为一个映射函数:Z=g(Y,β),β是编解码器的参数。PPNN网络是后处理函数:h(Z,γ),从图像Z到图像X去噪,移除由分块变换后的粗量化引起的伪影,振铃以及块伪影等。γ为PPNN网络的参数。
为了将标准编解码器与卷积神经网络相结合用于图像压缩,又学习了一个神经网络用来近似编解码的压缩过程.尽管CNN用于近似非线性函数是一个很好的工具,但是用于模拟图像压缩的过程同样也是非常困难的.原因就是因为DCT转化之后,量化操作容易导致每一块的转换区域分离,从而引起严重的块伪影以及编码失真.与压缩图像Z相比,经过后处理的压缩图像I失真较小,因为图像I丢失了一些细节信息,但没有明显的伪影和阻塞伪影。因此,由两个连续的过程(编解码器进程:g (Y,β)和后处理过程h (Z,γ))组成的函数h (g (Y,β)、γ)可以由VCNN网络表示。为了确保梯度能够正确的从PPNN反向传播至FDNN网络,VCNN网络学习了一个投影函数:v(Y,θ),从有效特征描述Y到PPNN的最终输出图像I.θ是VCNN网络的参数.投影进程合理近似了两个连续的过程:标准编码解码压缩过程以及基于CNN的后处理过程.训练完VCNN网络之后,可以用该网络监督FDNN网络的训练.
A. Objective function
整体的目标函数如下:

s(·) 是线性上采样操作,因此s(Y ) and X 有着相同的尺寸大小.为了确保最终的输出图像I与X一致,L()损失函数包含了L1内容损失函数Lcontent以及L1梯度差异损失函数Lgradient,用于FDNN网络训练的正则化:

||·||1 是L1范式,在监督CNN训练时L1范式比L2范式表现更好.
正则化是为了减小测试误差.如果网络模型比较复杂,可能会出现过拟合现象(训练表现好而测试较差),会导致模型泛化能力下降,此时加入正则化降低模型复杂度.
由于PPNN网络和FDNN网络之间存在标准编解码器这一较大的障碍,使得两者之间的梯度很难反向传播。因此,如果没有PPNN网络的监督,直接训练FDNN网络也具有挑战性.为了解决这个问题,在VCNN网络中学习了一个从Y到I的非线性函数.同样利用了L1内容损失函数Lcontent以及L1梯度差异损失函数Lgradient:

进一步的,特征描述信息的结构信息要与真实图像的一致,利用SSIM损失进一步监督FDNN网络的学习:

SSIM是可微分损失函数.
B. Proposed Network

在FDNN网络中用了8层卷积层,目的是从真实图像X中提取有效特征Y,第一层和最后一层的卷积核大小为9
9,能够是CNN的接受域足够的大.除此以外,其余6层都使用了33大小的卷积核用来进一步扩大接受域.当ReLU激活这些卷积隐含层的输出特征时,这些卷积层用来增加网络的非线性。1-7层卷积层的feature map数量为128个,为了与 X保持一致,最后一层只有一个feature map。每个卷积层以1的步幅操作,除了第二层使用2步长用来进行下采样,从而在低分辨率空间中执行卷积运算,以减少从第三卷积层到第8卷积层的计算复杂度。除了最后一个卷积层外,所有的卷积层后面都有一个ReLU函数的激活层。
在PPNN网络中,利用了7层卷积层提取特征,并且每一层都利用了ReLU函数激活.第一层卷积大小为9
9其余6层都使用了3*3.而feature map的输出通道在这些卷积层中都用了128个.在这些层之后,使用大小为9x9、步幅为2的反卷积层将feature map从低分辨率提升到高分辨率,使输出图像的大小与真实图像相匹配。
VCNN网络结构与PPNN的结构一致,因为它们都属于低级图像处理问题的同一类.VCNN网络使有效的特征描述图像Y进一步成为经过后处理的压缩的高分辨率图像I。相反的是,PPNN网络的功能是提高压缩特征描述图像Z的质量,能够使得用户收到一个经过PPNN网络处理之后没有块伪影的高质量图像I.
C. Learning Algorithm
由于直接对整个框架进行一次训练的困难,我们将框架中三个卷积神经网络的学习分解为三个子问题学习。第一,我们初始化所有的参数组β(codec)、α(FDNN)、γ(PPNN)、θ(VCNN)。同时,我们使用双三次、最近邻、线性、Area和LANCZOS4插值方法得到真实图像X的初始特征描述图像Y,然后用JPEG编解码器压缩,作为训练数据集的输入。接下来,第一个子问题学习是根据公式(2-3)通过更新参数γ来训练PPNN网络。从真实图像X得到的压缩图像Z及其后处理压缩PPNN网络预测的图像I被用于第二子问题的VCNN学习,基于公式(4 - 5)更新参数θ。VCNN网络学习后,通过固定参数θ,进行第三子问题学习,根据公式(2-3)以及(6-7)更新参数α训练FDNN网络。经过FDNN网络的学习,下一个迭代开始训练PPNN网络,更新后的描述图像经过标准编解码器压缩。整个训练过程总结在算法-1中:

值得注意的是,VCNN网络的作用是弥补FDNN和PPNN之间的误差。因此,一旦整个框架的训练完成后,VCNN网络不再使用,也就是说,只有FDNN网络的参数α、PPNN的γ在测试期间使用。
算法中:K=3,p=60,q=30,m=20

Experimental results

论文与6种方法做了对比:JPEG,四种图像去块去伪影的方法以及基础End-to-end CNN 压缩论文。
A.Training deatils
整个框架在Tensor flow上搭建完成的。数据集是去噪专用数据集:The See in the Dark(SID),其中包含400张大小为180*180的图像。通过剪切、旋转和翻转图像来增加这些数据来构建训练数据集:大小为160x160的图像patch,总数为3200 (n=3200)。下面八张图像用于测试:


使用Adam的优化方法训练模型,β1=0.9, β2=0.999。
训练3个卷积神经网络的初始学习率为0.0001,当训练步长达到总步长3/5时,学习率衰减为初始学习率的一半。当训练步长达到总步数的4/5时,则减少到初始步数的1/4。
B. The quality comparison of different methods
所提方法与其基础方法的JPEG的质量因子设置为:5,10,20,40;
其他四种方法的质量因子设置为:2,3,4,5,10;
PSNR以及SSIM作为客观质量评价标准,所提出的方法在两个标准下面都有很好的表现。
实验结果可以具体看论文

相关文章

网友评论

      本文标题:Learning a Virtual Codec Based o

      本文链接:https://www.haomeiwen.com/subject/ohitvctx.html