视频编解码中的环路滤波方法、装置、设备及存储介质转让专利
申请号 : CN202010486518.6
文献号 : CN113766249B
文献日 : 2022-05-13
发明人 : 朱晗 , 许晓中 , 刘杉
申请人 : 腾讯科技(深圳)有限公司
摘要 :
权利要求 :
1.一种视频编解码中的环路滤波方法,其特征在于,所述方法包括:获取视频中当前帧对应的重建帧以及生成所述重建帧所使用的量化参数;
对所述量化参数进行变换处理,得到变换后的量化参数;
基于目标图像和所述变换后的量化参数,生成融合量化参数的目标图像;其中,所述目标图像包括所述重建帧或者所述当前帧对应的量化后残差图像;
基于所述重建帧和所述融合量化参数的目标图像,生成环路滤波模型的输入数据;
通过所述环路滤波模型对所述输入数据进行滤波处理,得到滤波后的重建帧。
2.根据权利要求1所述的方法,其特征在于,所述对所述量化参数进行变换处理,得到变换后的量化参数,包括:
对所述量化参数进行线性变换处理,得到所述变换后的量化参数;
或者,
对所述量化参数进行非线性变换处理,得到所述变换后的量化参数。
3.根据权利要求1所述的方法,其特征在于,所述获取视频中当前帧对应的重建帧以及生成所述重建帧所使用的量化参数之后,还包括:根据所述量化参数生成与所述重建帧的长和宽均相等的量化参数图像;
其中,所述量化参数图像中与所述重建帧中的目标像素对应位置处的像素值,等于所述目标像素量化所采用的QP值,所述量化参数图像用于进行所述变换处理。
4.根据权利要求1所述的方法,其特征在于,所述基于所述重建帧和所述融合量化参数的目标图像,生成环路滤波模型的输入数据,包括:对所述重建帧和所述融合量化参数的目标图像进行通道融合处理,生成所述环路滤波模型的输入数据。
5.根据权利要求1所述的方法,其特征在于,所述基于所述重建帧和所述融合量化参数的目标图像,生成环路滤波模型的输入数据,包括:提取所述重建帧对应的第一特征图;
提取所述融合量化参数的目标图像对应的第二特征图;
对所述第一特征图和所述第二特征图进行通道融合处理,生成所述环路滤波模型的输入数据。
6.根据权利要求1所述的方法,其特征在于,所述基于目标图像和所述变换后的量化参数,生成融合量化参数的目标图像,包括:将所述目标图像和所述变换后的量化参数的对应位置处的像素值进行乘法运算,生成所述融合量化参数的目标图像。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述基于目标图像和所述变换后的量化参数,生成融合量化参数的目标图像之前,还包括:对所述目标图像进行映射处理,得到处理后的目标图像;
其中,所述映射处理用于将所述目标图像中的像素值映射至设定取值范围之内,所述处理后的目标图像用于与所述变换后的量化参数生成所述融合量化参数的目标图像。
8.一种环路滤波模型的训练方法,其特征在于,所述方法包括:获取训练样本,所述训练样本的样本数据包括样本图像对应的重建图像以及生成所述重建图像所使用的量化参数,所述训练样本的标签数据包括所述样本图像;
对所述量化参数进行变换处理,得到变换后的量化参数;
基于目标图像和所述变换后的量化参数,生成融合量化参数的目标图像;其中,所述目标图像包括所述重建图像或者所述样本图像对应的量化后残差图像;
基于所述重建图像和所述融合量化参数的目标图像,生成所述训练样本对应的模型输入数据;
采用所述训练样本对环路滤波模型进行训练。
9.一种视频编解码中的环路滤波装置,其特征在于,所述装置包括:数据获取模块,用于获取视频中当前帧对应的重建帧以及生成所述重建帧所使用的量化参数;
变换处理模块,用于对所述量化参数进行变换处理,得到变换后的量化参数;
第一融合处理模块,用于基于目标图像和所述变换后的量化参数,生成融合量化参数的目标图像;其中,所述目标图像包括所述重建帧或者所述当前帧对应的量化后残差图像;
第二融合处理模块,用于基于所述重建帧和所述融合量化参数的目标图像,生成环路滤波模型的输入数据;
滤波处理模块,用于通过所述环路滤波模型对所述输入数据进行滤波处理,得到滤波后的重建帧。
10.一种环路滤波模型的训练装置,其特征在于,所述装置包括:样本获取模块,用于获取训练样本,所述训练样本的样本数据包括样本图像对应的重建图像以及生成所述重建图像所使用的量化参数,所述训练样本的标签数据包括所述样本图像;
变换处理模块,用于对所述量化参数进行变换处理,得到变换后的量化参数;
第一融合处理模块,用于基于目标图像和所述变换后的量化参数,生成融合量化参数的目标图像;其中,所述目标图像包括所述重建图像或者所述样本图像对应的量化后残差图像;
第二融合处理模块,用于基于所述重建图像和所述融合量化参数的目标图像,生成所述训练样本对应的模型输入数据;
滤波模型训练模块,用于采用所述训练样本对环路滤波模型进行训练。
11.一种计算机设备,其特征在于,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至7任一项所述的方法,或者实现如权利要求8所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至7任一项所述的方法,或者实现如权利要求8所述的方法。
说明书 :
视频编解码中的环路滤波方法、装置、设备及存储介质
技术领域
背景技术
波工具上,相比于传统滤波工具能明显提升编码性能。基于深度学习的环路滤波工具主要
思路是通过神经网络学习重建图像到原始图像的映射关系,通常用来替换或帮助传统滤波
工具修复有损编码带来的信息损失、抑制编码噪声,从而提升重建帧质量。
码精度支持的QP范围为‑16~63,量化的精细程度通常由QP来决定,QP值相差越大带来的图
像损失程度也可能越大,相应的重建帧质量差距也就越大。为了能使环路滤波模型能用于
恢复大范围内不同大小的QP值带来的不同程度的信息损失,相关技术采用的方案是训练多
个环路滤波模型。例如,根据帧类型和QP值划分数据集,训练多个环路滤波模型,测试时根
据当前帧的类型和QP值选择相应的模型进行滤波。又例如,将滤波器支持的QP值划分成Low
QP、Mid QP和High QP三个QP段分别训练模型。
果依赖于训练数据与实际测试数据的相似性。
发明内容
述技术方案如下:
图像;
样本图像;
残差图像;
条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述视
频编解码中的环路滤波方法。
条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述环
路滤波模型的训练方法。
少一段程序、所述代码集或指令集由处理器加载并执行以实现上述视频编解码中的环路滤
波方法。
少一段程序、所述代码集或指令集由处理器加载并执行以实现上述环路滤波模型的训练方
法。
后再将该融合量化参数的目标图像与重建帧进行二次融合处理,生成环路滤波模型的输入
数据,最后通过环路滤波模型对输入数据进行滤波处理,得到滤波后的重建帧;实现了在输
入的重建帧中加入QP信息,来增强损失程度与量化参数之间的关系在输入像素值上的区分
度,从而使得模型在训练过程中能更好的学习量化参数与损失程度之间的关系,提升环路
滤波模型在量化参数上的泛化能力。这样,就可以不用对整个QP段进行划分来训练多个模
型,由于模型在量化参数上的泛化能力得到提升,因此通过单个模型即可在整个QP段上具
有较好的滤波性能,且有助于减轻编解码器的存储压力。
附图说明
具体实施方式
号的获取方式来看,可以分为摄像机拍摄到的以及计算机生成的两种方式。由于统计特性
的不同,其对应的压缩编码方式也可能有所区别。
(Audio Video coding Standard,音视频编码标准)(如AVS3)中,采用了混合编码框架,对
输入的原始视频信号进行如下一系列的操作和处理:
Unit,编码树单元),或者LCU(Large Coding Unit,最大编码单元)。CTU再往下,可以继续进
行更加精细的划分,得到一个或多个基本编码的单元,称之为CU(Coding Unit,编码单元)。
每个CU是一个编码环节中最基本的元素。以下描述的是对每一个CU可能采用的各种编码方
式。
在众多可能的预测编码模式中,选择最适合的一种,并告知解码端。其中,帧内预测是指预
测的信号来自于同一图像内已经编码重建过的区域。帧间预测是指预测的信号来自已经编
码过的,不同于当前图像的其他图像(称之为参考图像)。
等变换操作,将信号转换到变换域中,称之为变换系数。在变换域中的信号,进一步进行有
损的量化操作,丢失掉一定的信息,使得量化后的信号有利于压缩表达。在一些视频编码标
准中,可能有多于一种变换方式可以选择,因此,编码端也需要为当前CU选择其中的一种变
换,并告知解码端。量化的精细程度通常由量化参数来决定。QP取值较大,表示更大取值范
围的系数将被量化为同一个输出,因此通常会带来更大的失真,及较低的码率;相反,QP取
值较小,表示较小取值范围的系数将被量化为同一个输出,因此通常会带来较小的失真,同
时对应较高的码率。
信息,例如选择的模式、运动矢量等,也需要进行熵编码以降低码率。统计编码是一种无损
编码方式,可以有效的降低表达同样的信号所需要的码率。常见的统计编码方式有变长编
码(Variable Length Coding,简称VLC)或者基于上下文的二值化算术编码(Content
Adaptive Binary Arithmetic Coding,简称CABAC)。
存在量化的影响,部分信息与原始图像有所不同,产生失真(distortion)。对重建图像进行
滤波操作,例如去块效应滤波(deblocking),SAO(Sample Adaptive Offset,样本自适应偏
移量)或者ALF(Adaptive Lattice Filter,自适应格型滤波器)等滤波器,可以有效的降低
量化所产生的失真程度。由于这些经过滤波后的重建图像,将作为后续编码图像的参考,用
于对将来的信号进行预测,所以上述的滤波操作也被称为环路滤波,及在编码环路内的滤
波操作。
到残差信号。另一方面,根据已知的编码模式信息,可获得该CU对应的预测信号,两者相加
之后,即可得到重建信号。最后,解码图像的重建值,需要经过环路滤波的操作,产生最终的
输出信号。
模型输入(重建帧或其他编码信息,如编码残差等)做融合处理,来增强信息损失程度与QP
值之间的关系在输入像素值上的区分度,从而使得网络在训练过程中能更好的学习量化参
数与损失程度之间的关系,提升滤波工具的泛化能力。该方法能减少滤波性能对训练数据
集的依赖,即无需要求测试中取到的QP必须用来生成训练集,充分提升了滤波工具实际应
用能力。除此以外,该方法同样可用于分组训练滤波器的方案中,能提升分组滤波器的泛化
能力从而提升滤波性能。另外,该方法由于仅改变环路滤波模型的输入,不改变网络结构,
因此适用于于不同的滤波网络,可以应用到使用了基于深度学习的环路滤波模型的视频编
解码器或视频压缩的后处理产品中。
过网络250互连的第一设备210和第二设备220。在图2的实施例中,第一设备210和第二设备
220执行单向数据传输。举例来说,第一设备210可对视频数据例如由第一设备210采集的视
频图片流进行编码以通过网络250传输到第二设备220。已编码的视频数据以一个或多个已
编码视频码流形式传输。第二设备220可从网络250接收已编码视频数据,对已编码视频数
据进行解码以恢复视频数据,并根据恢复的视频数据显示视频图片。单向数据传输在媒体
服务等应用中是较常见的。
备230和第四设备240中的每个设备可对视频数据(例如由设备采集的视频图片流)进行编
码,以通过网络250传输到第三设备230和第四设备240中的另一设备。第三设备230和第四
设备240中的每个设备还可接收由第三设备230和第四设备240中的另一设备传输的已编码
视频数据,且可对所述已编码视频数据进行解码以恢复视频数据,且可根据恢复的视频数
据在可访问的显示装置上显示视频图片。
施例适用于PC(Personal Computer,个人计算机)、手机、平板电脑、媒体播放器和/或专用
视频会议设备。网络250表示在第一设备210、第二设备220、第三设备230和第四设备240之
间传送已编码视频数据的任何数目的网络,包括例如有线连线的和/或无线通信网络。通信
网络250可在电路交换和/或分组交换信道中交换数据。该网络可包括电信网络、局域网、广
域网和/或互联网。出于本申请的目的,除非在下文中有所解释,否则网络250的架构和拓扑
对于本申请公开的操作来说可能是无关紧要的。
在包括CD(Compact Disc,光盘)、DVD(Digital Versatile Disc,数字通用光盘)、存储棒等
的数字介质上存储压缩视频等等。
机拍摄的样本。相较于已编码的视频数据304(或已编码的视频码流),视频图片流302被描
绘为粗线以强调高数据量的视频图片流,视频图片流302可由电子装置320处理,所述电子
装置320包括耦接到视频源301的视频编码器303。视频编码器303可包括硬件、软件或软硬
件组合以实现或实施如下文更详细地描述的所公开主题的各方面。相较于视频图片流302,
已编码的视频数据304(或已编码的视频码流304)被描绘为细线以强调较低数据量的已编
码的视频数据304(或已编码的视频码流304),其可存储在流式传输服务器305上以供将来
使用。一个或多个流式传输客户端子系统,例如图3中的客户端子系统306和客户端子系统
308,可访问流式传输服务器305以检索已编码的视频数据304的副本307和副本309。客户端
子系统306可包括例如电子装置330中的视频解码器310。视频解码器310对已编码的视频数
据的传入副本307进行解码,且产生可在显示器312(例如显示屏)或另一呈现装置(未描绘)
上呈现的输出视频图片流311。在一些流式传输系统中,可根据某些视频编码/压缩标准对
已编码的视频数据304、视频数据307和视频数据309(例如视频码流)进行编码。
频解码器用于对接收到的已编码视频数据进行解码;视频编码器用于对视频数据进行编
码。
定。
都可以采用本申请实施例提供的技术方案,对视频中的重建帧进行环路滤波处理。解码端
设备和编码端设备均可以是计算机设备,该计算机设备是指具备数据计算、处理和存储能
力的电子设备,如PC、手机、平板电脑、媒体播放器、专用视频会议设备、服务器等等。
来实现。下面,通过几个实施例对本申请技术方案进行介绍说明。
如下几个步骤(401~405):
得到压缩处理后的当前帧;然后对该压缩处理后的当前帧进行重建(也即解码处理,包括反
量化、反变换、重构残差、重构图像等处理),得到当前帧对应的重建帧。
的宽可以等于重建帧的宽。可选地,上述当前帧对应的重建帧、残差图像和量化参数的长相
等且宽也相等。例如,重建帧、残差图像和量化参数的长均与当前帧的长相同,重建帧、残差
图像和量化参数的宽均与当前帧的宽相同。
标像素量化所采用的QP值。例如,量化参数图像中坐标为(x,y)的像素值,等于重建帧中坐
标为(x,y)的像素量化所采用的QP值。另外,量化参数图像用于进行下面步骤中的变换处
理。
素对应的QP值相同;如图5中的(b)部分所示,如果在生成重建帧时采用了Delta QP,则QP
map中各个像素对应的QP值可以以CTU为单位进行灵活设定,例如QP map中各CTU对应的QP
值可以相同,也可以不同。
与重建帧和残差图像进行融合处理,相比于直接采用原始的量化参数与重建帧和残差图像
进行融合处理,可以通过变换处理调节不同类型的数据(即重建帧像素值、残差值和QP值)
在进行数据融合时的影响比重,提升数据融合处理时的灵活性和准确性。
n
f(x)=ax+b,其中,x表示原始的量化参数,f(x)表示变换后的量化参数,a、b、n为预设常
数。
化参数中坐标为(x,y)的像素点的变换后的QP值相乘,得到的乘积作为融合量化参数的目
标图像中坐标为(x,y)的像素点的值。当然,除了乘法运算之外,还可以采用其他方式(如除
法运算等)生成融合量化参数的目标图像,本申请实施例对此不作限定。
当前帧和当前帧对应的预测图像生成的,如计算当前帧与其预测图像中对应位置的像素值
的差值,得到残差图像(该残差图像也可以称为量化前残差图像)。量化后残差图像是对上
述残差图像(也即量化前残差图像)进行量化和反量化处理后得到的图像。
图像Ires和变换后的量化参数IQP′,生成融合量化参数的残差图像Ires′。其中,融合量化参数
的残差图像Ires′的长与量化后残差图像为Ires的长相等,融合量化参数的残差图像Ires′的
宽与量化后残差图像为Ires的宽相等。
值和IQP′中坐标为(x,y)的像素点的变换后的QP值相乘,得到的乘积作为Ires′中坐标为(x,
y)的像素点的值。当然,除了乘法运算之外,还可以采用其他方式(如除法运算等)生成融合
量化参数的残差图像,本申请实施例对此不作限定。
IQP′,生成融合量化参数的重建帧Irec′。其中,融合量化参数的重建帧Irec′的长与重建帧为
Irec的长相等,融合量化参数的重建帧Irec′的宽与重建帧为Irec的宽相等。
坐标为(x,y)的像素点的变换后的QP值相乘,得到的乘积作为Irec′中坐标为(x,y)的像素点
的值。当然,除了乘法运算之外,还可以采用其他方式(如除法运算等)生成融合量化参数的
重建帧,本申请实施例对此不作限定。
数学运算或者其他数据处理方式,对上述两方面数据进行融合处理。
标图像进行卷积处理,得到对应的第二特征图。用于对重建帧进行特征提取处理和用于对
融合量化参数的目标图像进行特征提取处理的两个神经网络,其结构可以相同也可以不
同,网络参数可以各自独立设定。另外,上述步骤404b和步骤404c可以同时执行,也可以先
后执行,本申请实施例对此不作限定。
生成环路滤波模型的输入数据。
成环路滤波模型的输入数据。
理的机器学习模型,在本申请实施例中,对环路滤波模型的网络结构不作限定,例如可以是
CNN(Convolutional Neural Network,卷积神经网络)或者其他神经网络结构。
变换后的量化参数进行融合处理。可选地,对目标图像进行映射处理,得到处理后的目标图
像。该映射处理用于将目标图像中的像素值映射至设定取值范围之内。处理后的目标图像
用于与变换后的量化参数生成融合量化参数的目标图像。上述映射处理包括但不限于归一
化处理、标准化处理、正则化处理中的至少一项,本申请实施例对此不作限定。通过对目标
图像进行映射处理,使得目标图像中的像素值集中在某一个合适的取值范围之内,从而调
节不同类型的数据在进行数据融合时的影响比重,提升数据融合处理时的灵活性和准确
性。并且,在训练过程中有助于提升模型的收敛速度,缩短模型的训练耗时。
融合处理生成重合量化参数的目标图像,之后再将该融合量化参数的目标图像与重建帧进
行二次融合处理,生成环路滤波模型的输入数据,最后通过环路滤波模型对输入数据进行
滤波处理,得到滤波后的重建帧;实现了在输入的重建帧中加入QP信息,来增强损失程度与
量化参数之间的关系在输入像素值上的区分度,从而使得模型在训练过程中能更好的学习
量化参数与损失程度之间的关系,提升环路滤波模型在量化参数上的泛化能力。这样,就可
以不用对整个QP段进行划分来训练多个模型,由于模型在量化参数上的泛化能力得到提
升,因此通过单个模型即可在整个QP段上具有较好的滤波性能,且有助于减轻编解码器的
存储压力。
三个分量分别对应一个模型(单个模型大小几乎不变),充分减轻了编解码器的存储负担。
经实验发现,对于通测以外的QP值,尤其是偏离较多的QP值,滤波效果有所提升。
理,相比于直接采用原始的量化参数与重建帧和残差图像进行融合处理,可以通过变换处
理调节不同类型的数据(即重建帧像素值、残差值和QP值)在进行数据融合时的影响比重,
提升数据融合处理时的灵活性和准确性。
括如下几个步骤(1201~1204):
IQP′的对应位置处的像素值进行乘法运算,得到环路滤波模型的输入数据。
通道级联处理,得到环路滤波模型的输入数据。又例如,还可以分别提取重建帧和变换后的
量化参数的特征图,然后对上述两部分特征图进行通道级联处理,得到环路滤波模型的输
入数据。
减少运算量。但是,上述图4实施例综合考虑了重建帧、残差图像和量化参数三方面信息,使
得模型在滤波时考虑了更多维度的信息,有助于提升模型的滤波性能。
的电子设备。该方法可以包括如下几个步骤(1401~1405):
样本图像本身。在一些实施例中,样本数据还包括样本图像对应的量化后残差图像。有关重
建图像(也即重建帧)、量化后残差图像和量化参数的介绍说明可参见上文实施例,此处不
再赘述。
再赘述。
签数据之间的差异,构建环路滤波模型的损失函数,通过不断调整环路滤波模型的参数,以
最小化该损失函数的值,从而得到完成训练的环路滤波模型。
实施例对此不作限定。
络(如卷积神经网络)进行训练。
力的电子设备。该方法可以包括如下几个步骤(1501~1504):
需对重建帧和变换后的量化参数进行一步融合处理,这有助于减少运算量。
件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的计算机设备,也可以
设置在计算机设备上。该装置1600可以包括:数据获取模块1610、变换处理模块1620、第一
融合处理模块1630、第二融合处理模块1640和滤波处理模块1650。
残差图像。
变换后的量化参数。
述重建帧中的目标像素对应位置处的像素值,等于所述目标像素量化所采用的QP值,所述
量化参数图像用于进行所述变换处理。
述第二特征图进行通道融合处理,生成所述环路滤波模型的输入数据。
像。
映射至设定取值范围之内,所述处理后的目标图像用于与所述变换后的量化参数生成所述
融合量化参数的目标图像。
融合处理生成重合量化参数的目标图像,之后再将该融合量化参数的目标图像与重建帧进
行二次融合处理,生成环路滤波模型的输入数据,最后通过环路滤波模型对输入数据进行
滤波处理,得到滤波后的重建帧;实现了在输入的重建帧中加入QP信息,来增强损失程度与
量化参数之间的关系在输入像素值上的区分度,从而使得模型在训练过程中能更好的学习
量化参数与损失程度之间的关系,提升环路滤波模型在量化参数上的泛化能力。这样,就可
以不用对整个QP段进行划分来训练多个模型,由于模型在量化参数上的泛化能力得到提
升,因此通过单个模型即可在整个QP段上具有较好的滤波性能,且有助于减轻编解码器的
存储压力。
也可以由硬件执行相应的软件实现。该装置可以是上文介绍的计算机设备,也可以设置在
计算机设备上。该装置1700可以包括:样本获取模块1710、变换处理模块1720、第一融合处
理模块1730、第二融合处理模块1740和滤波模型训练模块1750。
所述样本图像。
化后残差图像。
即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,
上述实施例提供的装置与方法实施例属于同一构思,其具体实现过程详见方法实施例,这
里不再赘述。
绍的用于训练环路滤波模型的设备。该计算机设备150可以包括:处理器151、存储器152、通
信接口153、编码器/解码器154和总线155。
Erasable Programmable Read‑Only Memory,电可擦除可编程只读存储器),EPROM
(Erasable Programmable Read‑Only Memory,可擦除可编程只读存储器),SRAM(Static
Random‑Access Memory,静态随时存取存储器),ROM(Read‑Only Memory,只读存储器),磁
存储器,快闪存储器,PROM(Programmable read‑only memory,可编程只读存储器)。
一段程序、所述代码集或所述指令集在被处理器执行时实现上述视频编解码中的环路滤波
方法。
一段程序、所述代码集或指令集由处理器加载并执行以实现上述环路滤波模型的训练方
法。
和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。