基于时空预测模型的视频码率控制算法
2021-08-10李汶隆刘念林柳春青
李汶隆,刘念林,柳春青
(1.四川科瑞软件有限责任公司,四川 成都 610041;2.四川湖山电器股份有限公司,四川 成都 610041)
0 引 言
在实际视频应用过程中,视频需要在各种复杂条件下采集与传输,如无人机动态视频采集与无线传输。因此,针对视频内容变换频繁的应用场景,进行低码率或码率波动较小的的视频流传输是当前的研究热点。在当前主流视频编码过程中,编码比特率主要由输入的视频内容特性及编码策略等因素共同决定。对于细节丰富、内容跳变频繁的视频图像,编码所占用的比特数就较多;对于视频内容单一、运动量不大的视频图像,编码所占用的比特数就较小。因此,当前业内研究热点是:恒定码率条件下,尽可能降低码率波动;可变码率条件下,在保障图像质量的情况下,尽可能使编码的码率较低。
当前主流视频编码算法主要通过视频待处理单元的像素绝对误差均值(以下简称MAD值)来表征待处理单元的“运动”剧烈程度,MAD值越大,表明当前处理单元和前一帧图像相比“运动”剧烈,则需要为当前处理单元分配更多的编码比特数来表征细节,即为量化参数(以下简称QP)值要小;MAD值越小,表明当前处理单元和前一帧相比,“运动”不剧烈,可以采用较大的QP值,用较少的编码比特来表征细节。
从上述描述可以看出,MAD值和QP值关系到编码比特数的分配,与视频图像质量和传输带宽等指标等息息相关。由于QP值将作为参数用于码率控制与率失真优化(Rate Distortion Optimation,RDO),其中,RDO的计算需要MAD值与QP值作为输入参数,而视频图像帧的待处理单元的MAD需要通过RDO来计算。为了解决上述难题,传统方法主要通过线性模型对即将处理的图像单元的MAD进行线性预测,预测出当前待处理图像单元的运动复杂度,之后通过二次RD模型计算得到QP值,从而为该图像处理单元进行编码比特的分配。
1 相关研究
主流的视频编码处理都是在率失真理论指导下进行视频压缩处理,即在特定的码率下能达到的最小期望失真或者在一定的失真限制条件下,能够用最小的码率来尽可能多的信息表示。在率失真理论的支撑下,视频编码根据实际输出码流的特点,业内码率控制方法主要分为固定码率控制方法(Constant Bit Rate,CBR)和变长码率控制方法(Variable Bit Rate,VBR)。
1.1 率失真理论
香农于1948年在论文《通信的数学理论》中首次提到了信息率-失真函数的概念,证明了信息是可以被量化的,并阐述了如何在保证准确率的前提下用数字编码对信息进行压缩和传输。率失真理论正是在这一基础上进行理论定义:对于确定的信源和失真度量,在规定的码率条件下,能够使得失真度最小;或者在一定的失真限制情况下,使得码率尽可能小。在视频图像处理领域,率失真理论是码率控制算法的基础,描述了编码码率与失真度之间的关系。
1.2 传统的码率控制算法
当前主流视频编码标准仅对视频压缩的过程和码流的比特代表的含义等有明确的要求。为了促进视频处理技术的发展,未对码率控制方法进行定义,在率失真理论的支撑下,让各个机构根据实际应用场景的侧重点进行码率控制的研制,这也促进了视频技术的大力发展。业内比较经典的码率控制算法主要有应用于H.261的RM8模型算法、应用于MPEG2的TM5模型算法、应用于MPEG-4的VM8模型算法以及应用于H.263的TMN8模型算法。以上算法能够较好地针对普通视频应用场景进行码率控制,但仍然存在应用场景缺陷,主要表现如下。
(1)针对视频内容突变带来的问题没有较好地解决。当视频内容发生突变时,由于视频帧间编码采用前面参考帧进行编码压缩,因此,在这种情况下,帧间编码的参考帧与待编码帧存在较大差异,由此计算出来的估计值不准确。
(2)同一帧视频图像中,相邻视频图像处理区域有明显块效应。由于视频编码过程中,量化参数(QP)决定了视频图像的编码质量,但视频帧中各个量化参数可能差异较大,从而造成同一帧视频图像在编码后有方块效应,影响人眼视觉主观感受。
1.3 本文码率控制算法
H.261、AVS、H.264及H.265等国际国内压缩标准对视频编码最终形成的码流信息语法结构进行了定义,对码率控制采用的方式没有做明确的限制,开发人员可以结合各自行业特点,采用不同的编码策略来满足各自需求。随着基于视频应用的行业的大力发展,视频编码过程中码率控制算法在不断地演进与更新[3]。
1.3.1 基本思想
主流的码率控制算法主要基于率失真理论,在失真与信息表示之间得到最优解。通过对当前待处理区域分配的比特数及帧间像素绝对误差均值进行估计,基于线性算法模型,计算得到当前待处理区域的量化参数QP值。该方法能较好地解决“蛋鸡悖论”,但适应场景有局限性,如已编码帧与当前帧视频内容差别较大的情况和视频内容中有剧烈运动的情况,就不能很好地预测出待处理区域的MAD值[4]。在实际视频应用场景中,视频内容剧烈变化的情况时有发生。因此,针对场景变换的视频场景,如何准确地进行MAD值的预测至关重要。
1.3.2 算法建模
参考文献[1]针对视频图像产生的白噪声,通过MAD的方差来表征视频图像在时间通道中的内容变化情况。本文针对视频内容的突变,在时空网络场景中对视频内容的动静属性相对关系进行建模,得到视频帧中在时空通道中的视频变化因子表征值。主要过程如下。
(1)根据视频序列在时空通道中的关系属性,计算视频运动属性因子,并通过运动属性因子来判断视频内容是静止还是运动。运动属性因子的选择直接影响到当前待处理视频序列在时空网络中的收敛速度及效果,因此,选择一种适合的方式是本文需要解决的关键问题。
假设在一定时间区间内,视频采集镜头没有发生角度变化且未引入噪声,图像间的差异主要由视频中的运动内容产生,则有:
式中:Yx,y(t)表示视频图像内容值;Bx,y表示背景图像的内容值,是定值;M(t)表示当前视频内容中的运动部分,是变化值。则时空信息中帧间差分图像定义为:
式中:Diffx,y(t)代表t时刻前后帧图像的差分值。假设在时空网络中视频采集镜头没有进行切换且没有引入噪声,则计算差分图像相临3个处理区域块都大于运动属性因子TH或都小于运动属性因子TH的概率,计算公式为:
式中:u代表区间(TH,+∞)变数,相临3个处理区域块大于阈值的概率为:
参考文献[1]通过概率方式对δ及TH的取值进行了论证,本文也采用类似的取值思路。考虑到实际视频序列的特征,本文取动静属性因子TH为。
(2)对待处理区域MAD值进行基于动静趋势属性进行矫正。参考文献[2]中,作者提出了一种基于空间相关性的MAD预测模型的改进算法,能够较好地对原线形预测模型进行矫正。本文在考虑时空属性的基础上提出空间关联因子与时间关联因子。
空间关联因子为:
MADcb-1和MADRcb-1分别为前一基本单元的预测MAD和实际MAD。时间关联因子为:
当MADcb大于动静属性阈值,表征视频内容发生运动,进行空间属性预测补偿,得到补偿后的最终 MAD 值MADc。
当MADcb小于动静属性阈值,表征视频内容未发生运动和镜头切换等,进行时间属性预测补偿,得到补偿后的最终MAD值MADc。
1.3.3 算法分析
和传统码率控制算法相比,本文将方差物理特性基础理论与视频图像在时间与空间的关联属性特征相结合,对视频图像在时空网络中的运动属性因子进行计算,用帧间图像像素的绝对误差均值的方差来表征视频序列在时间网络信息中的运动状态[5]。在码率控制的过程中,在时空网络中建立时空预测模型,通过视频动静属性因子来表征视频图像运动和静止属性,分别对待处理区域的MAD值进行基于时空维度的补偿矫正。本文通过视频图像帧间像素MAD的方差来表征视频运动属性因子,对视频序列在时间通道中的运动情况进行动态分析,使得动静属性因子能根据视频的应用场景动态调整。
本文采用的码率控制算法在实际工程应用中能有效解决传统算法在视频图像发生内容突变时码率较高、码率抖动剧烈以及视频质量不好的问题,对后续基于视频图像的挖掘分析应用具有较好的实际意义。
1.3.4 实验分析
在H.264测试模型JM上对传统码率控制算法及本文提出的基于时空预测模型的视频码率控制算法在不同码率要求及不同视频内容情况下进行比较分析和讨论。其中,码率控制模式为CBR与VBR;测试序列选用标准测试序列blue_sky与dinner。结果如表1和表2所示。
表1 原测试模型与本文模型算法对比(1 024 kb·s-1)
表2 原测试模型与本文模型算法对比(2 048 kb·s-1)
可以看出,本文所采用算法在CBR码率控制模式下,在代表图像质量的图像峰值信噪比PNSR值不降低的情况下,码率偏移及码率峰值波动更小;在VBR码率控制模式下,图像峰值信噪比PNSR基本不变化的情况下,所用到的视频编码码率更低。
2 结 语
本文重点阐述了利用时间和空间网络对视频图像进行内容理解,基于方差物理特性,结合视频时空特征,分析视频图像序列在时间通道中的运动情况,对运动趋势用方差进行表达、动态分析及识别。本文基本思想在于,在时空通道中,以视频帧间图像的像素绝对误差均值(MAD)来表征视频图像运动趋势,用MAD的方差来计算动静属性因子,并对待处理区域进行动静状态分类,建立预测MAD的补偿模型。在实际工程应用中,特别是对于视频场景切换频繁、对网络抖动要求严格这一业内较难处理的应用场景,本文提出的算法可动态、快速地完成收敛,具有较好的场景适应性。本文采用的基于时空预测模型的基本思想也可应用于其他视频图像处理场景。