Press "Enter" to skip to content

TIP 2019开源论文:基于深度学习的HEVC多帧环路滤波方法

作者丨李天一

 

学校丨北京航空航天大学博士生

 

研究方向丨视频编码与深度学习

 

本文概述的是作者近期在 IEEE TIP 期刊上发表的论文: A Deep Learning Approach for Multi-Frame In-Loop Filter of HEVC ,主要思想是利用深度学习方法,发掘 HEVC 中连续多帧的图像信息,将其用于环路滤波器的设计,以显着提高滤波后的图像质量,进而提高 HEVC 编码效率。

 

此论文是北京航空航天大学博士生李天一,在导师徐迈的指导下,完成的一项工作。

 

论文链接:

 

https://ieeexplore.ieee.org/document/8736997

 

数据库和代码链接:

 

https://github.com/tianyili2017/HIF-Database

 

对视频编码的一些理解

 

由本文主要涉及的是视频编码与深度学习。介绍本文之前,先在这里写一下对视频编码的粗浅理解,已有了解的可以跳过这部分。

 

我们平时看到的视频,原始数据量往往非常庞大,尤其对高清视频而言,如果直接存储和传输原始信息,需要占用大量的空间和带宽(例如 [email protected]&24-bit,数据量高达 11.2GB/min)。

 

为解决这个问题,学术界和工业界制定出了多代视频编码标准,用于将原始视频数据压缩成体积较小的比特流。压缩,可以利用无损和有损的方式进行,但无损压缩的压缩比往往很有限,目前关注的绝大部分是有损压缩方式。这种方式允许压缩后恢复出的视频存在失真,但只要没有使视频质量明显降低,还能够被人眼接受,那幺这种有损压缩就是合理的。

 

不同的有损压缩方法(例如各种压缩标准之间、同一标准中的不同配置)性能一般不同,而在作 者看来,需要关注的性能, 主要在于“多快好省”的后三个字:

 

“快”: 编码时间。与视频播放时间无关,此指标是把原始视频编码成比特流所需的时间,即编码器的运行时间。编码时间越短,往往意味着消耗计算资源越少,说明这种编码方法越有希望得到广泛应用。

 

“好”: 压缩后的视频质量。最常用的,可以用所有帧平均 PSNR 来表示。或者用其他客观指标如 SSIM 等描述,也可用人的主观打分来衡量。

 

“省”: 压缩后的码率。即比特流体积与视频时间之比。

 

以上三项中,编码时间描述的是过程,视频质量和码率描述的是结果,显然,过程和结果都需要我们关注。 其中,形容结果的两项指标往往联合使用,因为单纯的高质量和单纯的低码率都很难说明编码性能如何,一般公认的是固定单一变量来对比另一个变量,例如相同视频质量下的码率变化率(BD-BR)或相同码率下的 PSNR 变化量(BD-PSNR)。 这种“好”和“省”,更科学地说,称为“率-失真性能”,即反映码率和失真两项指标的综合性能。

 

随着编码标准的发展,例如 H.264/AVC->H.265/HEVC->H.266/VVC,率失真性能在不断地优化,但代价是时间复杂度成倍提高,这主要因为后续的编码标准往往支持更灵活的分块/预测/变换等策略,使得编码器能在更广大的策略空间中搜索最优解,用更多的搜索时间换取率-失真性能。对于一种编码标准,研究者改进的目标也往往基于复杂度或率失真性能,因此,据本人有限了解,编码领域至少有以下几类研究:

 

1. 保证率-失真性能前提下,节省编码时间:可以理解为减小编码时间的均值(一阶性能);

 

2. 在编码时间可接受的前提下,优化率-失真性能:可以理解为优化BD-BR或BD-PSNR的均值(一阶性能);

 

3. 复杂度控制,减小编码时间复杂度的波动:即减小编码时间的方差(二阶性能);

 

4. 码率控制,减小编码过程中的码率波动:即减小码率的方差(二阶性能)。

 

对于不断发展的编码标准,提案/论文/专利等可以说是浩如烟海,但往往可以归结为对复杂度、码率与视频质量的追求,按照这个思路,就比较容易理解了。作者曾在 2018 年 TIP 中提出过 基于深度学习的 HEVC 复杂度优化方法 ,属于上表中比较基本的第 1 类研究;对本文而言,利用 HEVC 多帧信息进行环路滤波,则属于第 2 类研究。当然,第 3、4 类或者其他类型的工作,在作者所属的课题组,以及其他编码相关的课题组,也都有涉及,就暂不详细说明了。

 

研究背景

 

作为一种比较先进的视频压缩方法,HEVC 标准相比于上一代 AVC 标准,能够在相同质量下降低约 50% 码率,使编码效率进一步提高。但也需要考虑到,AVC、HEVC 等基于块的编码方法通常用于有损压缩而不是完全无损的,因此不可避免会带来了多种失真(如块失真、模糊和振铃效应等),尤其在低码率情况下,这些失真更为显着。

 

为了减轻编码过程中的失真,人们提出了多种滤波算法。尽管具体方法不同,这些滤波算法具有一个共同点:都对编码后的每帧视频进行质量增强,并且已经增强过的帧又作为参考帧,为后续帧的编码过程提供帧间预测信息。可见,这类滤波算法既作用于当前帧的输出,又作用于后续帧的输入,逻辑上形成一个闭环,因此统称为环路滤波。合理设计的环路滤波器,使得视频编码的效率可以进一步提高。

 

首先,HEVC 标准的制定过程涉及到三种环路滤波器,包括去块滤波器(Deblocking filter,DBF)、样本自适应偏移(Sample adaptive offset,SAO)滤波器以及自适应环路滤波器(Adaptive loop filter,ALF)。其中,DBF 首先用于消减压缩视频中的块效应;然后,SAO 滤波器通过对每个采样点叠加自适应的偏移量,来减少压缩失真;最后,ALF 则基于维纳滤波算法,进一步降低失真程度。最终,DBF 和 SAO 被纳入 HEVC 标准。

 

除了 HEVC 标准环路滤波器,另有 多种启发式的 和 基于深度学习的环路滤波方法 ,也被陆续提出。

 

启发式方法是根据一些先验特征(如纹理复杂度和相似视频块个数等)对压缩失真构建统计模型,再根据此模型设计滤波器,例如非局域均值(Non-local means,NLM)滤波器 [Matsumura, JCTVC-E206, 2011] 和基于图像块矩阵奇异值分解的滤波器 [Ma, MM 2016][Zhang, TCSVT 2017] 等。启发式方法能在一定程度上提高编码效率,但模型中的先验特征需要手动提取,这高度依赖于研究者的经验,并且难以利用多种特征进行准确建模,因此在一定程度上限制了滤波器的性能。

 

从 2016 年开始,基于深度学习的方法显着提高了环路滤波性能。此类方法一般通过构建卷积神经网络(convolutional neural network,CNN)来学习视频帧中的空间相关性。例如,文献 [Dai, MMM 2017] 设计了一种可变滤波器尺寸的残差 CNN(Variable-filter-size residue-CNN,VRCNN),以替换帧内模式中的标准 DBF 和 SAO。文献 [Zhang, TIP 2018] 则提出一种带有捷径的残差CNN(Residual highway CNN,RHCNN),用于帧内或帧间模式的标准 SAO 过程之后。

 

上述基于深度学习的方法有效发掘了单帧内容的空间相关性,然而却没有发掘多帧内容中的时间相关性。实际上,压缩视频一般存在明显的质量波动,而且其中的连续多帧往往包含相似的事物或场景。因此,低质量帧中的视频内容可以由临近的高质量帧推测得到,这即为本文的出发点:基于深度学习的 HEVC 多帧环路滤波。

 

数据分析

 

对于本文的环路滤波问题,首先构建一个大规模数据库,以便在设计算法之前进行必要分析,并为本文或后续的相关工作提供数据支撑。本数据库由182个无损视频组成,分别来自 http://Xiph.org 网站、视频质量专家组(Video quality experts group,VQEG)网站和作者所在的团队之前建立的人脸视频库 [Xu, JSTSP 2014],如下表所示:

 

 

▲  表1 环路滤波数据库构成

 

库中的 182 个视频包括训练集(120 个视频)、验证集(40 个视频)以及测试集(40 个视频)三个不重叠的部分。此外,JCT-VC 标准推荐的所有 18 个视频也参与测试,但因为版权不全开放,就没有计入本文构建的数据库中。所有 182 个开源视频都利用 HM 16.5 在 4 个 QP 下进行编码,并包含 LDP、LDB 和 RA 三种帧间配置。

 

在编码过程中,提取出所有的未滤波重建帧(Unfiltered reconstructed frame,URF)和对应的无损帧,作为神经网络的输入和输出信息。另外,考虑到 CTU 分割结构会显着影响压缩失真,所有帧的 CU 和 TU 分割情况也被提取出来,作为辅助信息。因此,数据库中的每个帧级别样本都包括四部分:一个 URF、对应的无损帧,以及表示 CU 和 TU 分割深度的两个矩阵。

 

最终,根据 3 种不同配置和 4 种不同 QP 值,总共构建出 12 个子数据库。完整的数据库共包含了约 60 万个帧级别样本,每个帧级别样本又可以拆分成多个块级别样本(取自视频帧中的任意位置),能够为数据分析和模型训练提供充足的数据支撑。

 

构建数据库后,利用其中的训练集和验证集上的 160 个视频,分析编码过程中的视频内容相似度和质量波动情况。首先,图 2 反应了不同帧间距离下的 Y、U、V 三通道内容相似度,用每个通道两帧矩阵之间的线性相关系数(CC)来衡量。

 

 

▲  图1 帧间内容相似度

 

总体上,随着帧间距离增大,以 CC 衡量的相似度逐渐减小。一般而言,距离 10 帧以内,每个通道的 CC 都大于 0.7,说明邻近帧的内容相似性较大,这是本文多帧环路滤波方法的前提。

 

另外,对于压缩视频的质量波动,可以用 PSNR 的标准差来衡量。下图以两个视频为例,表示出同一个视频中帧间 PSNR 存在显着变化,同样,其他视频中也存在相似的现象。

 

 

▲  图2 HEVC编码视频质量波动示例

 

 

▲  表2 PSNR波动与标准滤波器的PSNR增量

 

为更全面地衡量 HEVC 中的视频质量波动,表 2 进一步比较了所有视频 PSNR 的波动情况,和标准环路滤波器 DBF 和 SAO 所带来的 PSNR 增量。可见,在 LDP、LDB 和 RA 配置下,PSNR 的标准差平均为 0.891 dB、0.882 dB 和 0.929 dB,远高于由标准滤波器带来的提升(0.064 dB、0.048 dB和0.050 dB)。

 

这说明在 HEVC 的不同编码配置下,视频质量波动提供了设计多帧滤波器的潜力(用高质量帧补偿邻近的低质量帧),但标准环路滤波器没有有效地利用这种潜力。这也不难理解,因为标准滤波器没有直接利用多帧信息。本文则把握住这种潜力,设计出一个基于多帧信息的环路滤波器。

 

研究内容

 

方法框架

 

本文中多帧环路滤波器(Multi-frame in-loop filter, MIF)的框架如下图所示。

 

 

▲  图3 方法框架

 

图中上半部分是标准编码步骤:每个原始视频帧通过帧内或帧间预测、离散变换和量化等必要步骤进行编码。预测得到的帧与残差帧之和,构成一个未滤波的重建帧 URF。下半部分则是本文的贡献:利用每个 URF 及其临近帧的信息,增强 URF 的视觉质量。首先,由参考帧选择器(Reference frame selector, RFS)选出一些高质量且内容相似的帧,作为当前 URF 的参考帧。之后,根据参考帧的数量,在以下两种可能情况中选择一种,对 URF 进行增强。

 

模式1: MIF-Net。 设多帧增强方法需要 M 个参考帧。对于一个 URF,如果 RFS 选出了至少 M 个参考帧,当前 URF 将通过 MIF-Net 进行增强。在 MIF-Net 中,首先通过一个运动补偿网络,将每个参考帧的内容与 URF 对齐。之后,将 URF 和所有对齐后的参考帧通过一个质量增强网络,输出重建之后的帧。

 

模式2: IF-Net。 对于一个 URF,如果 RFS 未能选出 M 个参考帧,将利用 IF-Net 对 URF 进行质量增强。与 MIF-Net 不同,IF-Net 的输入只有 URF,无需考虑多帧信息。

 

最终,编码器比较 MIF-Net/IF-Net 与标准滤波器 DBF+SAO 的性能,并将 PSNR 最佳的方案作为实际的选择,以保证整体性能。

 

RFS的设计

 

RFS 为每个 URF 选取参考帧的原理如图。

 

 

▲  图4 RFS原理

 

假设当前帧 URF 是第 n 帧,RFS 将之前编码过最近的 N 帧做为参考帧池,即从第 (n-N) 帧到第 (n-1) 帧,都有可能作为第 n 帧的参考帧。对参考帧池中的每帧,计算出 6 个反映视频质量和内容相似度的指标,包括:

 

Y、U、V 三个通道上,参考帧相对于当前 URF 的 PSNR 增量;

 

Y、U、V 三个通道上,参考帧和当前 URF 内容的相关系数 CC。

 

对于某个参考帧,若至少在一个通道上,满足 PSNR 增量大于 0 且 CC 大于一个阈值,则认为此参考帧可能有潜力提高 URF 的质量,即该参考帧有效。否则,认为此参考帧无效。若有效的参考帧超过 M 个,则进一步将每个参考帧的6个指标组成一个 6 维向量,输入到一个两层全连接网络 RFS-Net 中,以求得一个输出标量,表示此参考帧对提升 URF 质量的潜力。之后,从有效参考帧中选取潜力最大的 M 帧,即为 RFS 的输出。

 

网络结构与训练过程

 

RFS 的运行结果,为绝大多数的 URF 选出了具有足够数量的参考帧;对于少数 URF,也存在参考帧不足的可能。本文核心内容在于,对以上两种情况(尤其是参考帧足够的情况),分别设计合适的深度神经网络,以显着增强 URF 的质量。首先会比较详细地介绍 MIF-Net 的结构及其训练方法,之后将指出 IF-Net 和 MIF-Net 的不同之处。

 

 

▲  图5 MIF-Net或IF-Net结构,由箭头型号区分代表两种网络

 

MIF-Net 的结构如上图所示。其输入包括一个 URF 和它的 M 个参考帧,输出为增强后的帧。

 

首先,MIF-Net 的输入端整合了来自 M 条平行支路 的信息,其中每条支路 处理其对应的一个参考帧中的信息。 在支路中,首先将参考帧的内容与 URF 进行对齐,得到一个运动补偿后的帧,即图中的 compensated frame。 然后,将 URF 和补偿后的帧,共同输入到由 CTU 分块信息所引导块适应卷积层(block-adaptive convolution)中,利用 CU 和 TU 分割情况,从不同来源的输入信息中提取较低层特征。 之后,考虑到 DenseNet 的高效性,将这些低层特征通过两个连续的密集单元(dense units)进行处理,以提取更加复杂的特征。 最后,来自 M 条支路的这些特征被连接到一起,再经过两个连续的 dense units,以获得一些高级特征,最终输出一个单通道特征图。

 

为训练方便,除了局部的dense units外,MIF-Net 也加入了全局捷径,将最终 dense unit 输出的单通道特征图视为一个残差帧,即: 所求的质量增强帧等于残差帧与输入的 URF 之和。 接下来,将阐述 MIF-Net 各个部分的结构。

 

 

▲  图6 运动补偿网络

 

运动补偿网络。MIF-Net 中的运动补偿网络,是基于文献 [Caballero, CVPR 2017] 中的空间变换运动补偿(Spatial transformer motion compensation,STMC)模型改进得到,以实现参考帧和 URF 的内容对齐,如图 6 所示。

 

若直接利用此文献的方法,则 STMC 的输入为参考帧和 URF,输出为一个运动补偿后的帧(图中的 )。 此文献中的 STMC 包含 ×4 和 ×2 两 条降采样支路,以预测不同精度的运动矢量(Motion vector,MV)图。 之后,将 ×2 降采样支路生成的 MV 图作用到参考帧上,即得到。 这种 STMC 适合在不同空间尺度上进行运动估计,然而,其中的降采样导致精度有限,而且 STMC 的结构还有一些可以改进之处。

 

对此,本文提出一种改进版运动补偿网络,与文献 [Caballero, CVPR 2017] 中的 STMC 具有如下区别:

 

在 ×4 和 ×2 降采样支路的基础上,增加一个原尺寸支路,以提升 MV 的估计精度;

 

受 ResNet 启发,在已有的卷积层旁边增加了 6 条捷径(图中 6 个加号附近),以提高网络容量并使网络更容易训练;

 

将原先所有的 ReLU 激活层替换成 PReLU,使网络可以学习激活函数负半轴的斜率。

 

进行上述改进之后,根据新增的原尺寸支路得到两个新的 MV 图,寻找补偿后的帧中每个像素在参考帧中的对应坐标,再根据双线性插值法,计算出运动补偿后的帧,即图中的。

 

块适应卷积层。 此层的输入由三个特征图相连得到,包括一个 URF、一个运动补偿后的帧和两者之差。 CU 和 TU 分割信息用两张特征图表示(图中的 和 ),其中的每张特征图都与 URF 的大小相同,各个像素的取值取决于 CTU 分割信息: CU 或 TU 边缘的像素赋值为 1,其余像素赋值为 -1。

 

而后,块适应卷积层的目标在于: 给定 3 个输入特征图,在另外 2 个引导特征图的作用下,生成一定数量的输出特征图。 为解决这一问题,我们提出一种带有引导信息的卷积运算,包括两个主要步骤: 生成中介图,以及利用中介图进行卷积。

 

首先,将引导特征图通过普通卷积层进行处理,生成若干个中介特征图。 在此步骤的处理中,需要保持特征图尺寸不变。

 

之后,在对输入特征图进行卷积的过程中,根据中介特征图来生成输出特征图。

 

图 7 给出一个例子,说明带有引导信息的卷积计算过程。 假设一种简单情况,输入、输出特征图的尺寸均为 3×2,卷积核大小为 3×3。 与普通卷积的区别,在于新增的中介特征图(图中的intermediate feature map)。 考虑引导信息,用原本的卷积核 3*3 权重,乘以中介特征图里各个像素周围 3*3 感受野中的数值,逐元素相乘,得到修改后的权重。 此时,各个像素对应的 3*3 权重都可能不同,即卷积核权重可以受到中介特征图控制。 之后的运算则与普通卷积类似,由输入特征图每个像素周围的 3*3 感受野,与对应的 3*3 权重做内积,得到输出特征图的对应像素值。

 

比较而言,考虑每个输入通道向每个输出通道做卷积的过程,传统卷积中的权重与位置无关,具有空间不变性; 带引导的卷积中,卷积核权重会受到中介特征图控制,即带有一定程度的空间相关性。 尽管这里的卷积核权重与位置相关,但并不会像全连接层那样完全随机,这是因为中介特征图也是通过卷积得到的,而不是杂乱无章。 并且,只需增加少量的可训练参数,即可实现带引导信息的卷积,不会导致明显的过拟合。 这些特点使得带有引导信息的卷积,可以利用更丰富的额外信息(如本文中的 CU 和 TU 分割情况),提高神经网络的建模能力。

 

 

▲  图7 带有引导信息的卷积示例

 

用于质量增强的密集单元。 作为普通 CNN 的改进版,文献 [Huang, CVPR 2017] 提出的 DenseNet 包含了多种长度的层间连接,能有效缓解梯度消失问题,并促进网络不同位置的参数共享。

 

考虑到这些优势,MIF-Net 中引入了 (2M+2) 个密集单元(dense units),包括每条支路中的 2 个 dense units,以及网络末端用来整合各路信息的 2 个 dense units。每个 dense unit 的结构如图 8 所示,可见,4 层的 dense unit 即包含 10 处帧间连接,远多于 4 层的普通 CNN 只包含 4 处帧间连接,这有利于发挥 dense unit 灵活拓补结构的优势。

 

 

▲  图8 dense unit 结构

 

MIF-Net 训练过程。 考虑到运动补偿和质量增强两大部分,MIF-Net 难以作为一个整体直接训练。因此,本文采用了中间监督方法,在不同步骤引入各自的代价函数,进行训练。首先,可以用 URF 和每个参考帧内容的差距来衡量运动补偿网络的性能,即基于 MSE loss 定义一个中间代价函数 。

 

接下来,可以用增强后的帧和无损帧之间的差距来衡量 MIF-Net 的整体性能,同样基于 MSE loss,定义全局代价函数 。 最终,训练 MIF-Net 所采用的代价函数为: 。 其中,α 和 β 是可以调节的正值参数。 考虑到质量增强网络的需要训练好的运动补偿网络作为支撑,训练之初,设置 α >> β ,以着重优化; 待收敛后,设置 β  >>  α ,以倾向于优化全局代价函数。

 

IF-Net和MIF-Net的区别

 

两个网络的区别在于 MIF-Net 的输入包含了 M 个参考帧,而 IF-Net 不包含。因此,在 IF-Net 中只存在质量增强部分的 1 条支路,而没有运动补偿部分,如图 5 中的粉红色箭头所示。MIF-Net 中用于整合 M 条支路信息的连接操作,在 IF-Net 中也不存在。尽管 IF-Net 的结构比较简单,但它仍然保留本文所提出的块适应卷积操作和 4 个 dense units,能够保证充足的网络容量。在训练方面,IF-Net 没有中间代价函数,因此直接优化全局代价函数即可。

 

实验结果

 

首先考虑环路滤波器的一种基本性能,即客观率失真性能,一般用 BD-BR 和 BD-PSNR 来衡量。利用 JCT-VC 标准推荐的所有 18 个视频来测试,包括 Class A~E,QP 设置为 22、27、32 和 37。在三种帧间模式中,以最接近实用的 RA 模式为例,下表给出了标准环路滤波器、两种对比算法和本文算法的性能。

 

 

▲  表3 RA模式率失真性能比较

 

表格中,所有数据都是和去掉环路滤波器的 HM-16.5 编码器相比的,例如,可以看出标准环路滤波器 DBF+SAO 带来了 5.031% 的码率节省,也代表相同码率下 0.162dB 的质量提升。表中的 [10] 和 [20] 代表一种基于图像块矩阵 SVD 分解的启发式算法 [Zhang, TCSVT 2017] 和一种基于高速残差 CNN 的深度学习算法 [Zhang, TIP 2018],与标准算法相比,性能都有所提高。表格右侧的多帧环路滤波算法,从 BD-BR 和 BD-PSNR 两项指标来看,都优于其他三种算法,证明了本文方法的客观率失真性能。

 

 

▲  图9 RA模式下主观质量对比

 

在主观质量方面,本文也进行了对比,例如图 9 中,多帧环路滤波相比于其他滤波方法,能观察到马尾边缘更清晰、行人和街道图像上的块效应更轻、人的手指更容易分辨,等等。这种质量提升,在一定程度上得益于高质量帧补偿低质量帧的思想,尤其在内容运动明显、质量波动剧烈的地方,优势更明显。限于篇幅,论文难以对比所有图像局部的主观质量,但本文方法在 18 个标准视频上所有的编码结果,已经上传到数据库网站 https://github.com/tianyili2017/HIF-Database,以便观察完整的主观质量。

 

为了进一步验证多帧环路滤波方法各个部分的作用,本文加入了溶解性实验,如图 10 所示。溶解性实验从完整方法(考虑多帧信息、网络中存在块适应卷积和 dense units)开始,每次去掉一个主要部分,测量这种情况的 BD-BR 和 BD-PSNR。

 

图 10 中,完整方法为配置 1,去掉多帧网络 MIF-Net 后成为配置 2,再去掉块适应卷积后成为配置 3,接着把 dense units 换成普通卷积层后成为配置 4(即深度学习方法的最简情况)。最终,不带深度学习的标准环路滤波器,为配置 5。可以看出,图中每对相邻的配置都只改变一个变量,构成一组对比实验,并且存在着明显的性能差别。这就验证了本文方法的各个主要成分,都起到了一定的作用,同时也说明了,多帧思想的引入和网络结构的改进,都有助于提升环路滤波器的性能。

 

 

▲  图10 溶解性分析

 

除了率失真性能,算法的复杂度也是需要考虑的因素,尤其对于深度学习方法而言,时间复杂度影响着算法的实用性。在表 4 中,本文以 RA 模式为例,在 Intel(R) Core (TM) i7-7700K CPU @4.2 GHz,Ubuntu 16.04 平台上,给出了标准编码器 HM16.5 在纯 CPU 模式下的每帧编码时间 ,同时比较了每种滤波算法额外引入的时间 ,以比值的形式评估时间复杂度。

 

表中的 [20],即 [Zhang, TIP 2018],是一种有代表性的深度学习方法。 本文方法与其对比,无论在纯 CPU 情况或是 GPU 支持的情况,复杂度均比较低(例如,GPU 支持下,滤波器平均运行时间仅为标准编码时间的 0.078 倍)。

 

可见,本方法为基于深度学习的环路滤波,提供了一种有效方案。 当然,时间复杂度上也存在优化的空间,后续可以通过一些网络剪裁算法,在保持滤波器性能的前提下,显着缩短运行时间。

 

 

▲  表4 RA模式时间复杂度分析

 

小结

 

本文主要贡献包括:

 

构建一个大规模的环路滤波数据库,为本方法提供足够的数据支撑,也可用于对 HEVC 环路滤波的后续研究。

 

根据视频内容和质量波动情况的分析,提出一种参考帧选择算法 RFS。

 

提出一种多帧环路滤波网络 MIF-Net,同时利用时间和空间信息,显着提升视频帧的质量。其中包含了本文新提出的块适应卷积、改进版运动补偿网络,以及引入 DenseNet 先进结构设计出的质量增强网络。

 

在作者看来,未来还可以做些进一步工作。例如,在基于深度学习的环路滤波器中,引入更多样的信息,如跳过模式(skip mode)、PU 分块信息、编码器估计出的运动矢量和残差帧信息等。另外,可以利用一些网络加速算法对深度神经网络进行简化,提高本方法或未来环路滤波方法的实用性,并促进硬件实现。

 

Be First to Comment

发表评论

电子邮件地址不会被公开。 必填项已用*标注