摘 要: 码率控制是视频编码中的关键技术,目标码率分配作为码率控制模型输入,对码率控制参数估计起到重要作用。新一代编码标准 HEVC 中的码率控制采用R-λ模型,通过分配且动态更新目标码率 R 计算拉格朗日乘数λ,以此对码率进行控制。监控视频具有数据量大、传输稳定度要求高、前背景划分明显等性质,对码率控制提出了更高的要求。在 HEVC 标准中提出基于前背景信息的监控视频码率分配算法,使得码率分配更加符合监控视频性质,进而提高码率控制参数估计准确度。提出的算法保证了监控视频码率控制性能,平均码率控制误差为 0.1%。同时使前景编码质量得到提高,峰值信噪比相比于 HEVC码率控制中3种码率分配算法分别提高 0.36 dB、0.76 dB 和 0.82 dB。
关键词: HEVC; 码率控制; 码率分配; 监控视频; 前背景信息
中图分类号: TP39 文献标志码: A
Foreground-Background Information Based Bit Allocation
Algorithm for Surveillance Video on HEVC
LI Xiujuan
(School of Information Engineering, Urumqi Vocational University, Urumqi 830002)
Abstract: Rate control is a key technique in video coding, and the target bit allocation plays an important role in model parameter estimation of rate control for it is the input of the rate control model. The new generation video coding standard HEVC adopts the R-λ model in rate control, which controls the rate by allocating and dynamically updating the rate R to calculate the Lagrange multiplier λ. The surveillance video has features such as capturing data in large scale, high demand for stable transmission, easy to be divided into foreground and background parts and so on. These all require higher rate control performance. This paper proposes a bit allocation algorithm based on foreground-background information in HEVC, which can make the bit allocation more suitable for surveillance video features and, thus, increases the rate control accuracy. The proposed algorithm maintains the rate control performance, obtaining a rate control error of 0.1%. Besides, the coding quality of foreground is increased by 0.36 dB, 0.76 dB and 0.82 dB in PSNR compared with the three existing bit allocation algorithms in the rate control method of HEVC.
Key words: HEVC; Rate control; Bit allocation; Surveillance video; Foreground-background Information
0 引言
碼率控制在视频编码技术中十分重要,保障了视频的稳定传输与高效解码。随着视频标准的不断发展,码率控制技术性能随之改进,TM5[1]、TMN8[2]、VM8[3]等主流码率控制算法被不断应用到编码标准参考软件中。HEVC作为新一代视频编码标准,其码率控制采用的R-λ模型使编码码率得到更加准确的控制,同时使编码性能得到提升。在该模型中,初始目标码率分配作为模型输入,对于模型准确计算起到重要作用,直接影响码率控制性能。 监控视频拍摄与传输不间断,对传输稳定性要求高,具有明显的前背景划分等性质,且前景区域为感兴趣区域,表达更多信息。因此对于监控视频码率控制,目标是在保持编码达到目标码率的前提下,保持码率稳定;同时在编码效率不受影响的前提下,前景区域得到更高质量的编码。结合上述特点,本文提出了一种基于前背景信息的监控视频码率分配算法,以提高监控视频码率控制性能。本文第2节对码率控制相关研究进行综述,第3节对本文研究的问题进行分析,第4节阐述本文所提出的算法,第5节展示并分析实验结果,第6节对本文进行总结。
1 相关研究
在视频编码标准的发展过程中,研究人员提出了多种码率控制算法,并不断对算法进行改进,应用到已有的视频编码标准当中。
2.1 主流视频编码标准中的码率控制算法
MPEG-2 采用了TM5码率控制算法,该算法基于宏块复杂度和缓冲区充盈度的自适应量化参数调整来控制码率。H.263采用TMN8 码率控制算法,该算法认为变换系数符合拉普拉斯分布,进而建立率失真模型并通过调整量化参数进行码率控制。MPEG-4 采用VM8算法,该算法基于R-Q模型,利用目标比特数R及图像复杂度计算量化参数Q,以此进行码率控制。H.264采用MAD-QP模型[4],利用平均绝对差 MAD 对量化参数QP进行调整。然而 MAD 需通过率失真决策进行计算,因此需预知QP,MAD与QP出现决定悖论,因此MAD-QP模型对MAD采用近似方法计算。
2.2 新一代视频编码标准 HEVC 中的码率控制算法
HEVC采用基于R-λ关系的码率控制模型[5-7],即根据目标码率R与缓冲区情况动态估计拉格朗日乘数λ,以此进行码率控制,具体算法如下:
(1) 确定以R-λ模型进行码率控制。HEVC参考软件通过实验验证了更加符合编码序列率失真性质的率失真模型,如式(1)。D(R)=cR-k
(1)其中 R 为编码码率,D 为失真,c 、 K 为常数。由于拉格朗日决策中的率失真方程为式(2)。J=λR+D
(2) 因此拉格朗日乘数λ计算如式(3)。λ=-DR=KcR-k-1=αRβ
(3)其中α为正常数,β为负常数,数值取决于视频内容。由上述推导确定 HEVC 采用R-λ码率控制模型。
(2) 计算目标码率。
i) 在 GOP 级,首先计算每帧的期望平均比特数RpicAvg为式(4)。RpicAvg=Rtargetfreq
(4)其中Rtarget为目标码率,freq为频率。接下来根据缓冲区情况计算每帧的目标平均比特数TpicAvg为式(5)。TpicAvg=RpicAvg·(Ncoded+SW)-RcodedSW
(5)其中Ncoded为已编码帧数,SW用以平缓地对缓冲区进行调整,Rcoded为已编码比特数。最后计算该 GOP 内的目标比特数为式(6)。TGOP=TpicAvg·NGOP
(6)其中,TGOP为GOP包含的帧数。由此根据目标码率及缓冲区情况计算出GOP 的目标比特数。
ii) 在帧级,根据 GOP 的目标比特数及缓冲区情况计算当前帧的目标比特数Tpic为式(7)。Tpic=TGOP-RcodedGOP∑lasti=currωi·ωcurr
(7)其中RcodedGOP为该 GOP 内已编码比特数,ωi为该GOP内第i帧的初始目标码率分配权重,curr 为当前帧标识,last为该 GOP 内的最后一帧标识。该计算方法表示对于GOP内的当前帧,目标比特数为该GOP内剩余的比特数按剩余帧的初始目标码率分配权重进行加权分配。
iii)在最大编码单元(Largest Coding Unit,LCU)级,根据当前帧的目标比 特数以及缓冲区情况计算目标比特数TLCU为式(8)。TLCU=Tpic-Rheader-Rcodedpic∑lasti=currωi·ωcurr
(8)其中Rheader为该帧头信息所占用的比特数,Rcodedpic为该帧内已编码的比特数,ωi为第i个 LCU的初始目标码率分配权重,curr为当前 LCU 标识,last为该帧最后一个LCU标识。即对于帧内的当前 LCU,目标比特数为该帧剩余的比特数按剩余 LCU 的初始目标码率分配权重进行加权分配。
(3) 计算拉格朗日乘数λ。通过目标比特数用公式(3)计算拉格朗日乘数λ。其中,在LCU级计算得出的λ用以进行编码中的率失真决策;在帧级计算得出的λ用以对LCU级计算得出的λ进行截断处理。
(4) 計算量化参数 QP。根据λ计算量化参数QP,并以该量化参数对编码中得到的变换系数进行量化。计算方法如下,其中γ和δ为常数为式(9)。QP=γln λ+δ
(9) (5) 更新α和β。在当前 LCU 或当前帧编码完成后,在 LCU 级或帧级对R-λ 模型中的参数α和β动态更新,使得模型符合当前序列的率失真性质,以更加准确地计算λ。首先使用实际编码得到的比特数Rreal根据当前模型计算对照拉格朗日乘数λcomp为式(10)。λcom=α·Rβreal
(10)接下来对α和β进行更新为式(11)、式(12)。αnew=α+εα(ln λ-ln λcomp)·α
(11)
βnew=β+εβ(ln λ-ln λcomp)·β
(12)其中εα和εβ为系数,以此对α和β进行动态更新。
通过上述算法,HEVC通过R-λ模型实现了码率控制。该算法有效地改进了H.264中利用MAD对QP进行计算的决定悖论,可有效地估计编码参数。此外,该算法动态更新模型参数,使模型自适应地符合不同编码序列的率失真性质。
2 问题分析
在HEVC码率控制过程中,初始目标码率分配对于λ计算起到了重要作用,因此码率分配应更加符合当前帧和当前LCU的预期编码比特数。HEVC当前的码率控制算法中,在初始目标码率分配上采用了平均码率分配、固定比例码率分配和自适应码率分配三种模式。平均码率分配在帧级和 LCU 级平均分配目标比特数。固定比列码率分配在帧级和 LCU 级按照设定的权重分别对GOP内的帧和帧内的 LCU 进行目标比特数分配。在自适应码率分配中,以不采用码率控制编码下GOP内各帧的层级所决定的λ比例作为输入,在GOP码率确定的情况下,通过R-λ模型反向计算各帧目标比特数,在LCU级采取同理的码率分配方法。
然而对于监控视频,前景和背景的编码结果有明显差异。在国家音视频编解码标准(AVS)监控视频标准测试序列[8]上进行前背景码率统计实验,所选序列为室外场景,包括静态的道路与房屋背景、动态的行人与车辆前景,场景内容丰富。本实验对 LCU 按其前景所占比例进行分类,对不同前景比例类别下的 LCU编码比特数进行统计,实验数据如图1所示。
由图1可以看出,在监控视频中,对于LCU,随着前景比例的升高,其平均码率随之增加。因此,在进行初始目标码率分配时,根据视频前背景信息进行码率分配可以更加合理地计算λ,进而使分配码率更准确地接近实际编码码率,从而提高码率控制效率。
此外,监控视频的前景包含了主要的感兴趣信息,背景变化缓慢因而包含的信息量小。因此对于监控视频编码,在码率一定的前提下,应增加前景区域编码质量,使得在码率得到有效控制的同时提高感兴趣区域编码质量,使监控视频更有效地发挥其表达前景信息的作用。
3 基于前背景信息码率分配算法
针对上述实验与分析,对于监控视频码率控制,本文提出了基于前背景信息码率分配算法(Forground-Background Information based Bit Allocation Algorithm, FBIBA)。
4.1 算法整体框架
本文提出的FBIBA算法整体框架如图2所示。首先通过输入序列训练背景模型。然后通过该背景模型,以GOP为基本单位,编码帧中的LCU被划分为前景LCU(FLCU)和背景LCU(BLCU)。接下来进行码率分配,在帧级码率分配上,根据 GOP 中各帧所包含的 FLCU 比例关系对各帧进行码率分配;在 LCU 级码率分配上,根据 LCU 所属类别进行码率分配。最后根据 LCU 所属类别对量化参数进行调整,从而在码率控制前提下提高前景编码质量。
4.2 LCU 分类
在LCU分类算法中,首先建立背景参考图像。本文采用滑动平均算法[9]建立背景参考图像,该算法使用均值和当前像素的权重进行建模,复杂度低且性能良好。
通过该背景参考图像,LCU 被分成FLCU和BLCU两类。具体实现方式为,将当前帧按8×8块进行划分,计算每个8×8块与背景参考图像对应位置块的绝对差值和(SAD),通过将SAD同设定的阈值比较将该8×8块划分成前景块或背景块。对于LCU,其包含的前景块数目定义为Nf。定义LCU划分阈值为T,定义方法如下:T=ε·W8·H8
(13)其中W为LCU宽度,H为LCU高度,ε为比例常数。该阈值代表了LCU在固定比例ε下8×8块的数量。最后通过比较Nf与T的关系对LCU进行分类,
当Nf>T时,该LCU分类为FLCU;当Nf 4.3 帧级码率分配算法
在GOP内,对每帧进行基于前背景信息的目标码率分配。每个GOP包含的帧数为n。首先计算第i帧包含的FLCU数目,以此作为该帧在码率分配中的权重,用ωi表示,该权重代表了该帧在初始目标码率分配中得到的比特数在GOP总比特数中的比例:ωi=∑NLCUindex=1Bindex
Bindex=1,LCUindex∈FLCU
0,LCUindex∈FLCU
(14)即GOP内每帧的初始权重由其包含的FLCU数目决定,FLCU 数目越大,该帧在此GOP内的初始目标比特数越大。结合缓冲区情况,GOP内的当前帧目标比特数为: Tpic=TGOP-RcodedGO∑nindes=iωindes·ωi
(15)其中TGOP为当前 GOP 的目标码率,RcodedGOP为该GOP已编码比特数。
4.4 LCU 级码率分配算法
在帧内,对LCU的目标码率分配,根据其前背景分类设置其权重,代表其初始目标码率分配中得到的比特数在当前帧总比特数中的比例: ωi=ω1,LCUi∈FLCU
ω2,LCUi∈FLCU
(16)其中ε1和ε2为常数,且ε1为FLCU的权重,ε2为 BLCU的权重。根據本文第3节分析得出,ε1大于ε2,即FLCU比BLCU分配到更多的目标比特数。对于LCU,在码率分配基础上,调整其量化参数QP以提高 FLCU编码质量且不影响当前帧整体编码效率,调整方法如下:QP=QPorg-δ1,LCUi∈FLCU
QPorg-δ2,LCUi∈BLCU
(17)QPorg为调整前根据拉格朗日乘数λ计算所得QP,δ1和δ2为调整常数,即将FLCU量化参数减小δ1以提高编码质量,将BLCU量化参数增加δ2以保持当前帧整体编码效率不受影响。
通过上述算法,实现了基于视频前背景信息的初始码率分配算法,使其更加符合监控视频码率分布特性;同时增大前景区域编码质量,使其更加准确地表达前景信息。
4 实验
4.1 实验设置
本文在 HEVC参考软件HM-15.0上进行实验,配 置文件为encoder_lowdelay_ main.cfg,码率控制点为标清3 000 kb/s,高清12 000 kb/s。本实验以HEVC参考软件中码率控制的平均码率分配、固定比例码率分配和自适应码率分配算法作为对照,以测试本文提出的FBIBA算法性能。实验序列选用AVS监控视频通用测试序列,测试帧数为100帧。该序列集分辨率包括标清(sd,720×576)、高清(hd,1 920×1 080),场景包含室内、室外等多种场景,光照包括明亮、黑暗,前景包括大前景、小前景,前景运动有快有慢,比较全面地表现出了监控视频性质。测试序列场景如图3所示。
Bank(SD) Campus(SD) Classover(SD) Crossroad(SD)
Office(SD) Overbridge(SD) Intersection(HD) Mainroad(HD)
本实验以码率控制准确度、码率波动及前景编码质量作为算法性能衡量标准。在码率控制准确度上,本实验以实际编码码率同目标码率的误差作为测试标准,误差越小则码率控制越准确。在码率波动上,以各帧比特数波动作为衡量标准,波动越小则码率越稳定。在前景编码质量上,统计前景 LCU 的平均峰值信噪比(PSNR),值越大表示前景编码质量越高。
4.2 实验结果
在码率控制准确度上,本文提出的 FBIBA 算法与对照算法实验数据如表1所示。其中,实验结果中平均误差为各序列码率误差绝对值的平均值。
由实验数据得出,HEVC 参考软件中码率控制采用平均码率分配算法、固定比例码率分配算法、自适应码率分配算法的平均误差均为 0.01%,本文所提出的FBIBA 算法平均误差为 0.01%。四种算法的码率控制准确度相同,因此本文提出的算法在准确度上达到了较高性能,比 HEVC 对照算法未有明显变化。 在此基础上,本文提出的算法同对照算法在码率波动上性能如图 4 所示(以Crossroad 序列为例)。
由图4可以看出,在码率波动性能上,本文所提算法同平均码率分配算法接近,无较大波动。同固定比例码率分配和自适应码率分配相比,本文提出的算法波动更小,码率更加稳定。
在前景编码质量上,本文提出的算法与对照算法前景PSNR如表2所示。
由表2可以得出,本文提出的算法在前景编码质量上PSNR平均达到39.65 dB,平均码率分配算法为 39.29 dB,固定比例码率分配算法为 38.89 dB,自适应码率分配算法为 38.83 dB。本文提出的算法在前景质量上性能最好,比平均码率分配算法提高了 0.36 dB,比固定比例码率分配算法提高了 0.76 dB,比自适应码率分配算法提高了 0.82 dB。因此,本文提出的算法提高了监控视频前景信息表达能力。
由上述实验结果可以得出,本文所提出的 FBIBA 算法同 HEVC 对照算法相比,在码率控制准确度上达到了较高性能,减小了码率波动,使码率更加稳定,同时前景编码质量得到大幅提高。因此本文所提出的 FBIBA 算法提高了 HEVC码率控制算法在监控视频码率控制上的性能。
5 结论
为使码率控制中的码率分配更加适合监控视频,且提高监控视频中前景质量以更加精确地表达前景信息,本文提出了基于前背景信息码率分配算法(FBIBA)。该算法利用监控视频的前背景信息进行帧级和 LCU 级初始目标码率分配,使码率分配更加符合监控视频性质,同时提高了监控视频前景编码质量。实验表明,本文提出的算法达到了较高的码率控制准确度,减小了码率波动,同时提高了前景编码质量。相比于平均码率分配、固定比例码率分配和自适应码率分配算法,前景编码质量提高 0.36 dB、0.76 dB 和 0.82 dB。
在未来的工作中,将致力于提高码率控制准确性,且使码率更加平稳;同时针对前景编码质量进一步优化,使前景信息表达更加准确。
参考文献
[1] Z. He, S. K. Mitra. Optimum bit allocation and accurate rate control for video coding via ρ-domain source modeling[J]. IEEE Transactions on Circuits and Systems for Video Technology. 2002, 12(10): 840-849.
[2] B. Li, H. Li, L. Li. Rate control by R-lambda model for HEVC[C].JCTVC 11th Meeting, Shanghai, CN, 2012:3841-3854.
[3] B. Li, H. Li, L. Li. Adaptive bit allocation for R-lambda model rate control in HM[C]. JCTVC 13th Meeting, Incheon, Korea, 2013.
[4] J. Si, S. Ma, W. Gao. Efficient bit allocation and CTU level rate control for High Efficiency Video Coding[C]. Proceedings of IEEE Picture Coding Symposium (PCS), San Jose, USA, Dec. 8-11, 2013, pp. 89-92.
[5] Y. Tan, C. Yeo, Z. Li. Single-pass rate control with texture and non\u0002texture rate-distortion models[J]. IEEE Transactions on Circuits and Systems for Video Technology,2012, 22(8):1236-1245.
[6] H. Sun, C. Zhang, S. Gao. LCU-Level bit allocation for rate control in High Efficiency Video Coding[C]. IEEE China Summit & International Conference on Signal and Information Processing(ChinaSIP). IEEE, 2014: 354- 358.
[7] H. Sun, S. Gao, C. Zhang. Adaptive bit allocation scheme for rate control in high efficiency video coding with initial quantization parameter determination[M]. Signal Processing: Image Communication, 2014, 29(10):1029-1045.
[8] X. Zhang, Y. Tian, T. Huang, et al.Low-complexity and high-efficiency background modeling for surveillance video coding[C]. Visual Communications and Image Processing, IEEE,2012: 1-6.
[9] L. Zhao, X. Zhang, Y. Tian, et al.. A background proportion adaptive Lagrange multiplier selection method for surveillance video on HEVC[C]. 2013IEEE International Conference on Multimedia and Expo.2013: 1-6.
(收稿日期: 2019.08.28)
基金项目:教育部科学基金项目(15YJC880028)。
作者简介:李秀娟(1981-),女,硕士研究生,副教授,研究方向:數字媒体技术、动漫技术。文章编号:1007-757X(2020)02-0027-04