神经网络Inter:NEURAL NETWORK BASED INTER PREDICTION FOR HEVC

NEURAL NETWORK BASED INTER PREDICTION FOR HEVC

论文
HEVC中的Inter预测只使用了时域信息,没有参考空域信息。作者提出一种网络结构NNIP(neural network based inter prediction)使用时域和空域进行提高Inter的质量,包含两个网络,一个全连接网络(FCN),一个卷积网络(CNN)。时域信息和空域信息作为FCN的输入,FCN的输出和经过Inter预测后的块作为CNN的输入,输出加强后的预测块。实验结果显示集成到HM16.。9,在low delay P配置下,能达到平均1.7%(最高为8.6%)的码率减少。
网络结构:
网络结构

FCN

FCN的输入是时域临近像素T和空域临近像素S。如下图所示:
FCN输入
用Y表示FCN的输入,则网络表示如下图所示:
FCN网络
W是权重,B是bias,f是PReLU函数。第一层是 4 N L + 2 L 2 4NL+2L^{2} 维,最后一层是 N 2 N^{2} 维,隐藏层K维,N是当前块的大小。

CNN

CNN的输入是FCN的输出加上预测块P。CNN使用VRCNN网络(可以参考我另一篇博文https://blog.csdn.net/shayashi/article/details/86606106)结构。网络表示如下图所示:
CNN网络
W和B分别是权重和bias。VRCNN使用残差学习技术,所以,最后一层表示如下:
最后一层
参数配置和VRCNN相同,如下表所示:
参数配置
为了保证输入和输出相同,padding 0。

训练

训练数据生成
( x i , y i ) (x_{i},y_{i}) 表示训练样例, x i x_{i} 表示网络输入,包括S,T和P, y i y_{i} 表示P的label,即当前块的原始图像。为了生成数据,首先使用HM16.9在low delay P的配置下,压缩BasketballDrive, BQMall, and BlowingBubbles三个视频序列,分别使用QP22,27,32,37。然后从压缩序列中提取 x i x_{i} ,从原始视频序列中提取 y i y_{i}
损失函数
均方误差MSE
MSE
实现
使用Caffe,NVIDIA GeForce GTX 1080 GPU实现。使用Adam优化算法一阶梯度减少损失函数。批量大小是64。Adam的momentum设置为0.9,momentum2设置为0.99。FCN的d设置为4,K设置为输入的两倍。L设置为4。基本学习率设置为从0.1到0.001指数型衰减,没40周期改变一次,所以整个训练执行160周期。使用上述基本学习率训练QP=37的网络,其他QP值对应的网络使用37的微调,基本学习率为0.001。不同CU大小训练不同的模型,HEVC中CU大小为8x8到64x64,所以一共训练16个网络模型。

集成到HEVC中

NNIP用来提高inter预测质量,是在inter预测之后,结构如下图所示:
HEVCNNIP
只有亮度分量经过NNIP的处理。NNIP算法是适用inter/merge/skip 2Nx2N模式。但是如果Inter预测已经足够精确,则再经过NNIP优化会出现质量降低的现象。所以设置一个CU级别的flag,用来标志是否使用NNIP。

实验结果

编码性能
实验结果1
时间复杂度
实验结果2

发布了37 篇原创文章 · 获赞 66 · 访问量 6万+

猜你喜欢

转载自blog.csdn.net/shayashi/article/details/86633010