基于ROI的直播视频传输中码率控制策略

来源:优秀文章 发布时间:2023-02-15 点击:

李文龙 李兴广 徐 晨 卫飞龙 胡冉冉

1(吉林交通职业技术学院交通信息学院 吉林 长春 130012) 2(长春理工大学电子信息工程学院 吉林 长春 130022)

随着在线教学、视频会议等视频直播需求的激增,导致视频传输受限,影响视频效果。根据中国互联网络信息中心(CNNIC)截至2019年2月发布的统计报告,中国网络直播用户已达3.97亿,其规模占到总网民规模的47.9%[1]。而目前这一数据已变得更加庞大。海量的在线视频传输数据量对于网络的承载能力提出了巨大的挑战。通信技术和大规模硬件集成电路的发展[2],虽然能够提升硬盘的存储容量以及增加传输信道的带宽,但同时也会造成成本增加以及噪声变大,因而网络存储空间和传输带宽都是有限的。高质量的视频传输需要更高标准的视频编码解决方案。与H.264/AVC相比,HEVC引入了更先进的编码技术,使得其与H.264/AVC在具备相同视频图像质量的条件下,可节省50%以上的编码比特流[3]。更加灵活的编码结构和工具也对码率控制和比特分配技术带来了更大的挑战。其中,根据人类视觉选择注意机制(VSAM)[4],对场景中不同敏感程度的区域分配不同的比特资源[5],优先考虑将更多的比特数分配给感兴趣区域(ROI),是近年来码率控制领域研究的热点和重点。

相关学者对基于ROI的码率控制算法已有研究并取得了许多有参考价值的研究成果。如Liu等[6]第一次提出基于ROI的资源分配方案,通过ROI控制比特资源的优化分配,提升ROI编码质量。Kim等[7]对运动中的视频实现实时的ROI(足球)跟踪,为不同区域分配不同的量化参数(QP),以实现视频的自适应压缩。Grois等[8]提出了一种复杂度感知的自适应ROI视频处理方法,通过对图像分级处理,提升了视频的主观质量。Zhou等[9]基于视觉显著性,提出了一种自适应、快速地确定帧内编码尺寸的编码方案。Delhaye等[10]针对有限带宽的传输条件,提出一种基于ROI的视频传输方法,为远程医疗提供了一种解决方案。上述方法在提升编码质量和重建视频的质量方面有明显的效果。然而,这些算法都是基于先前的编码标准开发的,而最新的视频压缩标准HEVC采用灵活的图像划分等新技术,导致上述码率控制技术不再适用。基于HEVC标准,朱威等[11]的基于智能目标检测的HEVC感兴趣区域编码方案中,通过对ROI和非ROI区域的CTU按纹理感知权重值分别进行下调编码量化参数和DCT频率系数分级压制,虽然取得了明显的效果,但是其ROI检测部分使用了基于深度卷积网络的方法,给系统带来了一定的复杂度。Zhang等[12]提出的ROI编码模式码率控制方案,虽然对于具有显著ROI的测试序列性能尤为可观,然而该算法的速率-失真模型的准确度和效率仍有待优化。随后,Zhang等[13]又为在有限带宽和时变信道状态条件下优化视频传输延迟,提出一种基于ROI编码模式的视频传输框架,采取了基于深度学习的方法用于信道状态预测。Sun等[14]在HEVC中首次使用深度卷积网络提高视频显著区域(ROI)的质量,在不降低视频主观质量的前提下减少带宽的利用率,尤其适用于视频会话和视频监控场景。然而,基于深度学习的方法中存在较高的算法复杂度,对于直播视频场景的应用能力仍有待提升。

上述基于ROI的码率控制方法基本都是对图像进行ROI和非ROI区域的两级划分,这在对直播视频处理时会导致视频图像不平滑,严重影响视频的主观质量。因此,受Grois等的启发,基于文献[15],提出一种适用于直播视频传输中的基于ROI的HEVC码率控制方案,主要用于目前主流的较高分辨率和帧频的直播视频压缩传输。首先,根据VSAM,将视频图像划分为三级(ROI区域、非ROI区域、两个区域之间的过渡区域),形成感兴趣区域图(ROI map),并利用ROI map实现帧级和编码单元级的比特分配。在对帧层进行比特分配时,根据每帧图片的权重为图片组中的每一帧分配码率,每帧图片的权重依据帧级的ROI map衡量;
在对编码单元层比特分配时,根据ROI map,将不同数量的比特数动态地分配到各个最大编码单元(LCU)中。最后,通过R-λ模型计算每一个最大编码单元编码时所需的QP,实现压缩编码。

1.1 码率控制方法

码率控制对于更好地利用有限的存储空间和带宽的处理环节上有着非常重要的作用[16]。通常,码率控制主要包括比特分配和编码参数获取两部分。具体地说,比特分配是对每一个图片组(GOP)、每一帧图片、每一个基本编码单元或者更细的单元分配最合适的比特数;
编码参数的获取由选择合适的率失真模型得到,以此实现在比特分配阶段分配目标比特数[17]。码率控制的过程如图1所示。

图1 码率控制过程

衡量码率控制技术的指标如下:

(1) 失真:对于率失真函数,失真D相对于码率R是递减的,码率控制算法即在限定的带宽范围内使失真最小。

(2) 率失真性能:峰值信噪比(PSNR)是通用的衡量失真度的标准,计算公式如下:

(1)

(2)

式中:MSE是宏块均方差;
N是图片中像素总数;
Reci和Orgi分别是重建图片和原始图片像素值。

(3) 码率控制误差:码率控制误差越小,则表明算法的码率控制能力越好。定义为:

(3)

式中:Rtar代表设置的初始码率;
Ract代表编码以后的实际输出码率。

(4) 缓冲区的状态:缓冲区的占用程度反映了码率控制的调节控制能力。一般来说,较大的缓冲区有利于平稳每帧消耗比特数目的波动从而获取稳定的码流。然而,过大的缓冲区势必会带来较大的编码延时。因此,要合理地调节缓冲区的状态。

1.2 率失真模型

R-ρ模型、R-Q模型和R-λ模型是目前三种典型的率失真模型[12]。R-ρ模型中,由于ρ与码率呈线性关系,从而简化了整个码率控制机制。ρ域的码率控制方案在HEVC中有良好的性能,然而,对于基于ROI的编码模式并不是最有效的方法。对于R-Q模型,速率和失真可以分别表示为QP的函数,但R-Q模型的前提是假设了码率R主要是由量化参数QP来决定的,HEVC引入的新编码技术使视频编码变得更复杂,而且编码模式信息和运动信息等信息所占的非残差比特并不能够被量化,因此即便调整QP也很难达到精确的目标码率。随着HEVC的发展,Li等[18]意识到视频编码器将会变得越来越复杂,R-ρ模型和R-Q模型不能精确地描述非残差信息所占的码率的缺点更加突出,提出了拉格朗日乘数λ才是影响视频编码码率最关键的因素,证明了基于R-λ模型的码率控制方案能够非常精准地分配目标码率。通过大量实验发现,R-λ模型具备更强的鲁棒性。因此,后续也将通过R-λ模型获取量化参数。

2.1 ROI提取

ROI部分的检测有两种方法,基于机器视觉的自动检测和基于人机交互的手动检测,可以根据需要具体选择。ROI的提取主要也有两种方法。一种是在视频输入HEVC编码器之前将ROI部分提取出来,另一种是在视频编码过程中对ROI部分进行提取。通过实验发现,方法一可以直接根据视频图像的自身性质进行提取,如游戏直播中的人物作为ROI,可以预先标记。它不需要考虑视频帧之间的关系,从而节约编码时间。此外,可以利用ROI的掩膜信息实现码率控制,即控制比特的分配。因此,采用第一种方法对ROI区域进行提取。结构框图如图2所示。

图2 ROI提取过程

2.2 算法流程

首先,从被编码的视频中检测和提取出视频序列的ROI,利用提取出的ROI形成ROI map;
随后,码率控制算法利用形成的ROI map分别完成对帧层和编码单元层的比特分配。最后,通过R-λ模型求取QP值及相关参数。算法框架如图3所示。

图3 算法框架

获取到视频画面中的ROI以后,传统算法则直接对ROI区域分配较多的编码比特,以保证该区域的视频质量,背景区域的编码比特则相对较少。对于直播视频来讲,由于VSAM的参与作用,单纯地将视频图像进行两级分化处理(ROI和非ROI),势必会导致重建图像中ROI和非ROI的质量变化明显,给人以割裂感,不能达到视觉系统对于平滑舒适的高质量画面的需求。因此,在ROI和非ROI之间设定了过渡区域,主要是为了平滑视频质量,在实现节能视频传输的同时,保证直播视频受众的观感质量。具体方案是将较多的比特分配给ROI,以最小的比特数目分配到非ROI,在过渡区域分配适当数量的中间比特数目,使ROI和非ROI区域平滑相接,以确保视频质量。图4是视频图像分类状态的示意图。

图4 图片分级状态

获得ROI后,ROI区域的所有像素值设为α,过渡区域的像素值设置为λα。其中,λ根据实际需求进行设置,取值范围为λ∈(0,1),非ROI的像素值统一设置为1,随后得到每帧图像的像素级ROI map,以此作为比特分配权重。数学表达式如式(4)所示。

(4)

ROI map的长度和宽度与原始的视频图像相同,(w,h)代表视频图像中像素点所处的位置。随后将生成的ROI map发送至HEVC编码器输入端,以使比特分配更加合理。此外,ROI map权重值α可动态调节。对于某些画面中某些重点目标,即所需的ROI质量较高时,可以通过增大权重值α来实现,反之亦然。

2.3 帧层比特分配

视频编码方案中,经典的JCTVC-K0103码率控制算法对每一帧图像分配比特时,主要是由图片中比特每像素(bpp)这个值决定[19]。该值受帧频、信道带宽、图像的分辨率等客观因素的影响。对于需要传输的直播视频而言,为了满足直播视频受众的主观需求,采取该值作为权重来进行帧层的比特分配是不合理的。因此,通过视频帧间的ROI map比值作为权重进行比特分配。帧层ROI map通过式(5)求得。

(5)

式中:Fmi是帧层的ROI map,同时也作为GOP中为各帧分配比特时的权重;
NROI,i是目前编码帧的所有像素中含有ROI的像素;
Mtr是目前编码帧的所有像素中包含过渡区域的像素;
W和H代表视频图像像素的宽和高。码率控制算法中,把每帧的ROI map作为当前编码帧的权重进行比特分配。当前时刻的GOP中第i帧比特分配计算如下:

(6)

式中:Fmcurr是分配给当前编码帧的比特权重;
Fmleft是当前GOP中未进行编码的帧所占的总权重;
TGOP,left为当前GOP中剩余未被编码的帧所占的剩余比特数。

2.4 编码单元层比特分配

JCTVC-K0103提案码率控制算法在编码单元层的分配是以预测得到的平均绝对差值(MAD)作为权重来执行的。对于实时运动型直播场景来说,视频存在剧烈运动、快速变化等特点,导致当前编码帧的LCU已区别于已编码帧相对位置的LCU。因而,MAD作为标准来衡量视频复杂度的精确性已大大下降。对此,利用当前LCU中所包含的ROI信息的比重实现对LCU实行比特分配,避免当前编码帧对已完成编码帧的过度依赖。LCU层ROI map通过式(7)求得。

(7)

式中:Lm[i,j]是LCU层的ROI map,它是对第i帧中第j个LCU分配比特时的权重;
aj和bj分别代表第i帧中第j个LCU块左上角的横纵坐标;
W[j]和H[j]是第j个LCU块的宽和高;
NROI[i,j]是当前LCU的所有像素中所包含的ROI的像素数;
Mtr是当前LCU的所有像素中所包含的过渡区域的像素数。对于当前LCU编码时,依据ROI map的大小为其分配比特数目。ROI map的值越大,表明当前LCU所占的权重越大,获得的比特数目越多。通过对ROI中权重α的调节可以适当地控制当前编码图像中ROI的比特数,藉此实现对于ROI质量的调整。

对当前GOP中的第i帧完成比特分配后,通过LCU级的ROI map为第i帧中的第j个LCU分配比特数目计算如下:

(8)

式中:TL[i,j]是分配到的比特数目;
Lmleft是当前编码帧中所有未被编码的LCU所占的权重之和;
Tf,left是当前编码帧中所有未被编码的LCU所占的比特数目。每一次编码完成一个LCU后,Tf,left通过式(9)进行更新。

Tf,left=Tf,left-Bact,j

(9)

式中:Bact,j代表对当前图像进行编码时的第j个LCU块实际消耗的比特数目。Tf,left初始值为:

Tf,left=Tf[i]-Bheader

(10)

式中:Bheader是当前正在编码的帧的头信息所占的比特数目,它的值依据已编码完成的帧所占的头信息预测得出。

2.5 求取QP

通过以上步骤求得预先分配给LCU的比特数以后,由R-λ模型,求得λ:

(11)

式中:μ和ν的初始值[20]分别为3.200 3和-1.367。每次对一帧图片编码完成后,由最小二乘回归法获得μ和ν的值。随后,QP值由式(12)求得。

QPcurrLCU=4.200 5×ln(λcurrLCU)+13.712 2

(12)

3.1 实验设置

为了验证上述方法的有效性,基于VS2010,在HEVC官方参考软件HM16.7平台上进行仿真实验。根据评价码率控制性能的指标对本文方法进行测试。实验中,以HEVC参考软件HM16.7中的算法作为参考,将所提的码率控制方法添加到HM16.7中与之对比。编码器的主要设置如表1所示。

实验采用HEVC标准的通用影像传输格式(CIF)测试序列(最接近于当前普遍应用的直播视频的分辨率),测试序列均为YUV格式。序列信息如表2所示。为验证算法在不同带宽条件下的适用性,2 560×1 600和1 920×1 080分辨率的视频序列目标码率分别设置为:4 Mbit/s,2 Mbit/s,1 Mbit/s,512 kbit/s,256 kbit/s。1 280×720和832×480分辨率的视频序列目标码率分别设置为:2 Mbit/s,1 Mbit/s,512 kbit/s,256 kbit/s,128 kbit/s。

表2 编码测试序列

3.2 率失真性能

在率失真性能对比实验中,采用低延时的P帧编码模式。实验中,在不同的目标码率下,测试序列分别由HEVC中原码率控制算法和本文的码率控制算法在参考软件HM16.7中进行编码仿真对比测试实验。视频失真通常由YUV格式的视频序列中Y分量的PSNR表示,即Y-PSNR代表视频失真,其值越大,表示失真越小,率失真性能越好。表3给出了本文的码率控制方法相比于HEVC原有的码率控制算法所得的相对PSNR结果(ΔY-PSNR)。图5给出了对比实验得到的数据仿真结果。表3和图5中,Whole代表重建视频的总体平均Y-PSNR,ROI是重建视频ROI的Y-PSNR,Non-ROI代表重建视频的非ROI的Y-PSNR。

表3 相对HM16.7的率失真(ΔY-PSNR) 单位:dB

(a) POS, 2 560×1 600, 30 Hz

(b) T, 2 560×1 600, 30 Hz

(c) BD, 1 920×1 080, 50 Hz

(d) PS, 1 920×1 080, 24 Hz

(e) J, 1 280×720, 60 Hz

(f) FP, 1 280×720, 60 Hz

(g) RH, 832×480, 30 Hz

(h) F, 832×480, 50 Hz图5 率失真曲线

从表3和图5可以看出,本文算法在重建视频中的ROI具备较高的率失真性能(Y-PSNR)。非ROI的率失真性能略低于HM16.7中原有算法,这是因为部分比特分配到了过渡区域。整幅图像的率失真(Whole)并没有明显降低。这证明了本文方法在有限带宽下能够实现视频的高质量传输。

3.3 码率控制误差

表4显示了在不同的目标码率下,用给定的方法、HM16.7中的初始算法和文献[12]中的方法对8个标准测试视频序列进行编码所获得的实际码率。实际码率和目标码率之间的误差通过式(3)来计算。结果表明,本文算法的误差相对于HM16.7和文献[12]分别降低了0.226百分点和0.055百分点,即在信道带宽一定的情况下,本文方法能保证微小的误码率。

表4 码率控制误差对比结果(%)

3.4 缓冲区的状态

为验证本文方法对于缓冲区状态的影响,在每次完成一帧图像的编码以后,记录当前缓冲区的占用量。图6是所记录的缓冲区状态。

图6 缓冲区状态

仿真实验中,缓冲区的大小设置为1.25R/f,下溢值设置为0,分别对应图6中两条水平虚线。图6中本文方法的结果曲线起始点较低,说明缓冲区刚开始时溢出较小,而且能够将缓冲器占用率保持在缓冲器上限和下限内之间的相对稳定的范围内。此外,相比于HM16.7中的方法,本文方法在缓冲区的状态更为稳定。

3.5 图像客观质量

当像素权重α分别为4和8时,对测试序列进行编码,同时以文献[12]中的方法作为对比实验,记录不同区域的PSNR值。以通过HM16.7编码获得的PSNR值作为参考,获得相对于原始HM16.7算法的图像质量增益(IQG)。三种方法在目标码率设置为1 000 kbit/s时进行对比实验。

图7 选取的ROI的PSNR增长对比

图7中,自上而下三条线分别对应本文方法α=8,α=4、文献[12]中方法所获得的结果。可以看出,相比于文献[12]中稳定的IQG值,本文的IQG是可变的,随α值的不同而不同。较大的α对应于较高的IQG,即通过调节像素权重α,可以自由地控制ROI的质量。

3.6 图像主观质量

为直观地衡量本文算法得到的重建视频的主观质量,分别使用本文、HM16.7和文献[12]三种算法对一些HEVC标准测试序列进行了比对测试,部分示例如图8所示。

(a) HM16.7 (b) 文献[12] (c) 本文

(d) HM16.7 (e) 文献[12] (f) 本文图8 主观质量对比

图8是在三种不同码率控制算法下分别编码两个测试序列之后的结果比较。(目标码率为512 kbit/s)。可以看出,本文方法的重建视频质量相对最佳,图像的主观观感也更为平滑。为了进一步的比较,对两帧图像中的一些细节进行了放大处理和分析。将图片的ROI和非ROI分别放大比较,如图9所示。

(a) ROI放大对比

(b) 非ROI放大对比图9 局部放大对比

图9选取的是重建视频质量较好的文献[12]和本文算法处理结果中的ROI和非ROI区域的局部细节来进行对比。可以看出本文算法对于ROI分配了更合适的比特数目,而非ROI图像质量较为不佳,即在非ROI分配了更少的比特数目,但是本文算法得到的重建视频图像的整体质量稍好。此外,通过码流分析软件Elecard HEVC Analyzer查看到图9的QP值进行对比,发现本文算法处理后的ROI的QP值均小于文献[12],非ROI的QP值均大于文献[12],说明本文算法确实在ROI区域增多了比特分配数目而非ROI区域减少了比特分配数目,图像质量又相对平滑,进一步证明了本文算法的可行性。

为了在有限的带宽下传输高质量的直播视频信息,提出一种改进的基于ROI的码率控制方法。通过对整帧图像进行分层处理,得到像素级的ROI,并形成ROI map。根据ROI map再分别为帧层和LCU层进行比特分配,最后根据R-λ模型获得QP来实现压缩编码。通过编码仿真实验,分析和比较了本文方法和其他两种方法的对比实验结果。在整帧图像质量PSNR相对稳定的情况下,该方案可以显著提高ROI的率失真性能和重建视频的整体质量。不仅实现了视频有效的压缩传输,而且考虑了视觉的主观因素,为处理海量高清实时直播视频的传输提供了思路。尽管本文方法取得了可观的成果,但仍有一定的改进空间,例如,本文直接采用R-λ模型求取QP仍存在一定的局限性,在今后的工作中,我们将对R-λ模型进行改进,以求进一步完善。

猜你喜欢 码率比特分配 移动视频源m3u8多码率节目源终端自动适配技术电子测试(2022年4期)2022-03-17一种基于HEVC 和AVC 改进的码率控制算法科学技术创新(2021年2期)2021-01-21应答器THR和TFFR分配及SIL等级探讨铁道通信信号(2020年9期)2020-02-06遗产的分配数学大王·趣味逻辑(2019年5期)2019-06-13一种分配十分不均的财富小学科学(学生版)(2019年5期)2019-05-21基于状态机的视频码率自适应算法计算机应用(2018年7期)2018-08-27比特币还能投资吗海峡姐妹(2017年10期)2017-12-19比特币分裂三联生活周刊(2017年33期)2017-08-11比特币一年涨135%重回5530元银行家(2017年1期)2017-02-15多光谱图像压缩的联合码率分配—码率控制方法宇航学报(2014年2期)2014-12-15推荐访问:传输 直播 策略
上一篇:基于深度学习的制造工艺过程自动生成方法研究
下一篇:水果味电子烟10月1日起正式禁售,执意生产、销售伪劣产品或被追刑责

Copyright @ 2013 - 2018 优秀啊教育网 All Rights Reserved

优秀啊教育网 版权所有