作者简介:周 莺(1982—),女(汉族),江苏省苏州市人,深圳大学博士研究生.E-mail:zhouying722@163.com
中文责编:英 子; 英文责编:雨 辰
1)深圳大学信息工程学院,深圳 518060; 2)深圳信息职业技术学院, 可视媒体处理与传输深圳市重点实验室,深圳 518172
数据处理; 视频传输; 拥塞控制; 主动队列管理; 自适应随机早期检测; 率失真; 运动特性; 队列长度; 视频播出质量
Zhou Ying1, 2, Zhang Jihong1, Liang Yongsheng2, and Liu Wei21)College of Information Engineering, Shenzhen University, Shenzhen 518060, P.R.China2)Shenzhen Institute of Information Technology, Shenzhen Key Laboratory of Visual Media Processing and Transmission, Shenzhen 518172, P.R.China
data processing; video transmission; congestion control; active queue management(AQM); adaptive random early detection(ARED); rate-distortion; motion characteristic; queue length; video broadcast quality
DOI: 10.3724/SP.J.1249.2014.04352
为解决异构网络因采用主动队列管理进行拥塞控制,无法区分视频流中不同结构和内容的数据包,难以提高视频播出质量的问题,提出一种结合视觉运动特性的可分级视频拥塞控制机制.该机制基于视觉运动特性的视频数据包重要性标记方法,根据当前队列长度及丢包率与队列长度的非线性关系,改进已有的自适应随机早期检测.当网络发生拥塞时,能根据网络状况和数据包的重要性调整丢包策略.以视频质量分析仪PQA600的注意力加权峰值信噪比、差异平均主观评分和注意加权差异平均主观评分作为评价指标.NS-2仿真实验结果表明,该方法能降低丢包率,提高网络吞吐量,改善视频播出质量.
In current heterogeneous network video transmissions, the active queue management cannot consider the effects of different structures and content packets on the quality of video broadcast. A new visual motion characteristics-based scalable video congestion control mechanism is proposed to solve this problem. This mechanism presents a vision motion characteristics-based video packet importance marking method and improves existing adaptive random early detection according to the current queue length and the nonlinear relationship between the packet loss rate and queue length. When congestion occurs, the packet loss policy is adjusted according to network conditions and the importance of video packets. Attention weighted peak signal to noise ratio(AW-PSNR), difference in mean opinion score(DMOS)and attention weighted difference in mean opinion score(ADMOS)of PQA600 are used as video quality assessment values. Results from NS-2 simulation platform have shown that the packet loss rate is reduced; both the network throughput and the video broadcast quality are improved in this mechanism.
近年来,随着多媒体和移动互联网技术的迅猛发展,实时访问流媒体已成为互联网中的重要业务.与其他普通业务流相比,多媒体视频流需要传输的数据量更大,对延时更敏感.然而,IP网络本身的“尽力而为”特性,以及网络拓扑、传输介质和终端设备等方面的异构性,使视频流在传输时因网络延时、抖动和丢包等影响,导致播出质量下降.为满足用户对流媒体播出质量日益增长的需求,解决有限带宽资源下传输海量数据的问题,有学者提出可分级视频编码和分层传输控制方案[1].
在异构网络中,多个用户同时发出视频业务请求时,这些数据流只能在一条共享链路上传输,当带宽受限时,便会产生拥塞.为同时满足多个用户的视频业务需求,并达到带宽利用率最大和传输时延最小的目标,还需在传输链路上进行拥塞控制.主动队列管理(active queue management,AQM)是一种端到端拥塞控制方法,通过调整丢包概率来控制路由队列[2].然而,视频流根据编码结构和内容,每个数据包的重要度都不同.AQM将视频流作为普通数据流处理,忽略了不同视频数据包对人眼视觉感知的影响,虽降低了丢包率,但对视频播出质量的提高效果不明显.
本研究提出一种结合视觉运动特性的可分级视频拥塞控制机制.该方法结合人眼视觉感知和率失真模型对视频数据包进行重要性标记,并在此基础上实施拥塞控制,不但考虑时延、丢包率和吞吐量等网络服务性能,亦考虑不同重要性的数据包对视频播出质量的影响.这种基于视频内容的可标记数据包的视频流拥塞控制方法,可在提高网络性能的同时改善视频播出质量.
待传输的视频流首先被封装成适合网络传输的实时传输协议(realtime transport protocol,RTP)包,再进入缓存队列等待传输.当需要转发的数据包不断增加,而网络资源(如缓冲区大小、链路带宽等)有限时,就会发生拥塞.本研究首先对数据包重要性进行标记,在进行拥塞控制时,就可根据数据包重要性决定丢弃策略.
已有关于数据包重要性标记的大量研究.Lou等[3]根据编码结构,给出I、P和B帧数据的权重表达式.Liu等[4- 6]考虑了分层码流的率失真特性,其中,文献[6]还把截止时间作为排列数据包优先级的因素之一.以上方法仅考虑了视频数据的结构和率失真特性,并未考虑人眼的主观感受.李子诺等[7]用运动矢量和信道均方误差失真值之间的变化相关性评估视频帧重要性,但对于运动特性的描述过于简单.
AQM可以在队列满之前就按照一定的策略决定何时丢弃多少数据包,使路由器在链路缓存溢出前作出响应,有效减少和避免网络拥塞的发生[8].自Floyd等提出随机早期检测(random early detection,RED)算法以来,它已成为IETF(Internet Engineering Task Force)推荐的唯一AQM候选策略.RED算法通过平均队列调整丢弃概率.由于RED在参数设置方面的不足,国内外许多研究学者对其进行了改进,如自适应随机早期检测(adaptive random early detection,ARED)[9]、Gentle-RED[10]、self-RED[11]和new ARED[12]等.此外,张燕平等[13-15]在ARED基础上修改丢包率的非线性函数使其更加与平均队列长度相匹配.曹志波等[16-17]通过修改ARED中的最大丢弃概率来避免拥塞.Nakamura等[18-20]通过修改队列长度的计算方法来减小队列振荡.
利用AQM进行拥塞控制时,需根据视频数据包的重要性决定丢弃策略.Lin等[21]提出基于不同类型数据包的丢弃策略.裴畅姣等[22]结合视频数据包的结构重要度,提出加权超期丢包率的概念,主动丢弃超期数据包.Liu等[23]提出了跨层滤波算法,考虑数据包重要性的基础上移除传输中的冗余帧来避免网络拥塞.以上方法虽然在进行拥塞控制时考虑了数据包重要性,但都是基于视频数据编码结构的重要度,没有考虑人眼主观感受对其重要度的影响.
视频基本层用于保证基本视频质量,基本层丢失将导致该帧无法解码.本研究在满足基本层无差错传输要求下,对质量增强层的码流处理方法进行了探究.
人眼观察视频序列时,存在“视觉感兴趣区域”[24],只对视频中运动变化的对象感兴趣. 人眼的视觉特性对视频的模糊失真会产生掩盖效应,当出现相同数量的模糊失真时,人眼的感知随运动速率的不同而变化.实际的运动场景主要有3种:① 背景无变化或变化不大,只有前景变化.此时,人眼主要关注运动变化的对象; ② 背景运动剧烈.若该帧运动矢量总长度很大,则人眼更注重相对变化较小的对象. 若大部分物体变化不是非常剧烈,则人眼对高速运动的部分较敏感; ③ 整个场景都剧烈运动,则人眼很难分辨视频中的细节,更关心场景中运动不明显的对象.视频的动态性越大,说明该数据包的运动信息越丰富,丢失该包将对人眼视觉感知产生的影响也越大,需重点保护.
本研究提出基于视觉运动特性的视频数据包重要性标记方法(visual motion characteristics based packet importance marking method,VMCPIM).该方法在编码结构和率失真的基础上,结合人眼视觉模型对不同运动特性视频的感知,对数据包进行重要性标记.首先根据编码结构判断重要性:I帧作为参考帧,重要性等级最高,非参考图像的P帧和B帧划为非重要数据; 然后根据率失真模型,标记P帧和B帧数据包的优先级并对P帧和B帧进行排序; 最后计算非关键帧运动感知信息,按照由小到大的顺序从队尾逆序排列,遇到P帧则根据率失真优先级排序P帧,直到画面组(group of picture,GOP)内所有帧排序完[24].算法流程图如图1.
数据包的优先级可表示为
P(i,k)=[PD(i,k)]α×[PV(i,k)]β(1)
其中,(i,k)为第i帧的第k个数据包; PD(i,k)为根据率失真计算出的优先级; PV(i,k)为根据人眼对于不同视频内容变化的敏感程度计算出的优先级; α和β分别为算法控制参数,且α, β∈[0,1].
当传输带宽为CB时,按照失真最小化的排序方法得到的码流为
ZminB1,B2,…,BN ∑Nk=1Dk(Bk)
s.t. ∑Nk=1Bk≤CB}(2)
其中,Bk为第k个数据包的码流; Dk(Bk)为Bk对应的失真,由重建失真Dreck(Bk)和漂移失真Ddrak(Bk)两部分组成,即
Dk(Bk)=Dreck(Bk)+Ddrak(Bk)(3)
这里,Dreck(Bk)是由于丢失该数据包而导致的解码失真.设F(i, k, m)和F(i-1, k, m)分别为i帧和i-1帧中第k个数据包的第m个重建宏块,则
Dreck(Bk)=E[F(i,k,m)-
F(i-1,k,m)]2(4)
其中, E[]2为相邻两帧的均方误差.
Ddrak(Bk)是由于丢失该数据包而导致同一GOP中其他帧的错误扩散而产生的失真.设F ^(i,k,m)为丢失m宏块后的重建帧,则
Ddrak(Bk)=∑li=nE[F(i,k,m)-
F ^(i,k,m)]2(5)
利用拉格朗日乘子法,式(2)中带约束条件的优化问题可转变为无约束优化问题,即
minB1,B2,…,BN ∑Nk=1Dk(Bk)+λ(∑Nk=1Bk≤CB)(6)
式(6)可变成
Z(dDk(Bk))/(dBk)=-λ, k=1,2,…,N,
∑Nk=1Bk=CB}(7)
其中,λ为映射率失真优先级标识PD(i,k).
本研究对视频前景和背景的运动信息赋予不同权重,并根据视频内容动态调整权重,描述视频的运动特性,进而反映人眼对不同视频内容变化的敏感程度[24].
定义视频的动态性为背景运动矢量强度和对象运动矢量强度的加权和,权重分别用来描述视频序列内运动及场景变化对视觉效果的影响程度
Mk=ωBMkB+ωOMkO(8)
其中,Mk、 MkB和MkO分别为第k帧的运动矢量强度、背景运动矢量强度和对象运动矢量强度; ωB和ωO分别为背景运动矢量强度和对象运动矢量强度的权重,满足ωB,ωO∈[0,1], 且ωB+ωO=1. Mk便映射为内容感知优先级标识PV(i,k).
该帧的背景运动矢量强度为
MkB=(∑n∑m(v2xkB(m,n)+v2ykB(m,n))1/2)/(VmaxNkB)(9)
其中,(vxkB,vykB)为宏块(m,n)当前帧的背景运动矢量强度值; Vmax为该帧运动矢量的最大值,用于做归一化处理; NkB为背景非零运动矢量的宏块数.
对应该帧的前景运动矢量强度值为
MkO=(∑n∑m(v2xkO(m,n)+v2ykO(m,n))1/2)/(VmaxNkO)(10)
其中,(vxkO,vykO)为宏块(m,n)当前帧的前景运动矢量强度值; NkO为前景非零运动矢量的宏块数.
权重则根据视频运动特性动态调节,同时考虑运动的空域分布ω1、运动强度ω2和运动复杂度ω3这3个因素,令
ωB=ω1+ω2+ω3(11)
ω1=(NkB)/(N(s))(12)
其中,N(s)为该帧的宏块数; ω2为运动能量的大小,其值越大说明运动信息越丰富,其值为
ω2=(∑NkBi=1(=vx=+=vy=))/(∑N(s)i=1(=vx=+=vy=))(13)
这里,vx和vy分别为横、纵坐标上的运动矢量.
ω3=(-[∑mi=1(N(si))/(N(s))×lg((N(si))/(N(s)))])/(lg(36))(14)
其中,si是运动矢量方向直方图中各非空的维度; N(si)是各维度内运动矢量非零的宏块数, i≤36, 通过信息熵求得各宏块运动矢量在各维度的分布.
RED算法可描述为[9]:
如式(15),指数加权滑动平均计算平均队列长度为
Qavg=(1-ωq)Qavg_old+ωqq(t)(15)
其中,ωq为权重; q(t)为当前队列长度; Qavg_old为上一循环所得平均队列长度.
当Qavg<Tmin时(Tmin为门限阈值),数据包全部进入缓存队列; 当Qavg>Tmax时,直接丢弃到达的数据包; 当Tmin<Qavg<Tmax时,以线性关系计算丢弃概率为
Pb={0, Qavg≤Tmin
Pmax×(Qavg-Tmin)/(Tmax-Tmin), Tmin<Qavg<Tmax
1, Qavg≥Tmax(16)
其中,Pmax为最大丢弃概率.
丢包率Pa与丢弃概率Pb关系为
Pa=(Pb)/(1-NsPb)(17)
其中,Ns为连续成功传输的分组数.
由文献[13,25]可知,丢弃概率P和平均队列长度L并非线性关系,而是如式(18)的指数关系.
P=1/(1+1/L)N[1/(1+L)](18)
当Qavg在Tmin附近振荡时,说明队列较空闲,丢弃数据包的速率应较缓慢,从而增加网络吞吐量; 当Qavg在Tmin和Tmax之间振荡时,说明缓存队列接近拥塞的程度还很低,可让丢包率以一种平滑的方式增长,提高网络利用率; 当Qavg>Tmax时,说明队列较拥塞,资源利用率接近上限,应迅速并平稳地丢弃数据包以保证队列的稳定.为满足丢包率与队列长度之间的非线性关系,保证Pb平稳增长,及时响应突变网络状态引起的平均队列长度的变化,提高算法的鲁棒性,本研究提出一种基于队列长度的非线性ARED算法(queue length based non-linear ARED,QnLARED),该算法结合Gentle-RED和new RED算法,并做进一步改进.算法步骤具体描述如图2.
其中,RTT是往返传输时间; Td是传输时延; Sq为当前队列长度; Sb为缓存器大小; BO越大,说明当前队列中待转发的数据包越多,引起拥塞的可能性就越大; target是Qavg的目标范围,target ∈[Tmin+0.4×(Tmax-Tmin),Tmin +0.6×(Tmax-Tmin)]; δ和γ为控制Pmax变化幅度的变量.
QnLARED算法丢包率与平均队列长度Qavg的关系如图3.
图3 QnLARED算法丢弃概率与Qavg的关系
Fig.3 The relationship between packet loss rate and Qavg of QnLARED
QnLARED根据当前队列长度占缓存的多少修改Pmax和ωq,使得ARED对于突变的网络状态反应更敏感,避免全局同步; 根据丢包率和平均队列长度之间的非线性关系修改Pb,使其根据队列长度平滑增长,提高网络利用率,保证队列的稳定性.
本研究提出结合视觉运动特性的视频主动队列管理算法(visual motion characteristics based video active queue management,VMCVAQM).该算法在进行拥塞控制时考虑结合视觉运动特性的视频数据包重要性,利用基于队列长度的非线性主动队列管理,在降低丢包率,提高吞吐量的同时,视频播出服务质量较其他方法有明显提升.
视频数据包在传输时都有解码截止时间,该时间指解码一帧所需的数据包在该帧播出之前,全部到达解码缓冲器的时间,所以,超过该时间的数据包对于解码该帧无意义.在发送端预先丢弃超过解码截止时间的数据包,可减少网络负载,节省带宽资源.设tw为数据包在缓存队列中等待传输的时间,tB为数据包在网络中的传输时间,tD为所允许的最大时延,则满足式(19)的数据包才会被传输.
tw+tB≤tD(19)
设待传输视频数据包为L={l1,l2,…,lN}, 其中L={l1,l2,…,lm}为进入缓存队列中的数据包, L={lm+1,lm+2,…,lN}为即将进入缓存队列的数据包, m由队列管理算法决定; 发送时间为t={t1,t2,…,tN}. 算法描述为
1)初始化,即设L={l1,l2,…,lN}, li=i, t={t1,t2,…,tN}=;
2)对属于同一GOP中的G个数据包L={l1,l2,…,lG}, 利用VMCPIM进行重新排序,并生成L={ll1,ll2,…,llG}使得重要性ll1>ll2>…>llG;
3)对数据包lli(i=1,2,…,G), 若tli>tD, 则丢弃lli; 否则,进行4);
4)计算Qavg,并根据QnLARED进行拥塞控制,若Tmin<Qavg<2Tmax, 需增加如下判别: ① 若lm和lm+1属于同一GOP,则比较lm和lm+1的重要性,以概率Pa丢弃重要性较低的数据包; ② 若lm,lm+1不属于同一GOP,则以概率Pa丢弃lm.
本研究基于NS-2仿真平台,采用哑铃状结构进行仿真,网络拓扑如图4.
发送端S1,S2,…,Sn分别传输视频数据流,T1,T2,…,Tm分别产生固定码率(constant bitrate,CBR)数据流作为干扰,经中间节点R1和R2将n条视频数据流和m条CBR数据流分别传输至接收端D1,D2,…,Dn和Q1,Q2,…,Qm.R1和R2之间为带宽瓶颈.参数设置为:Tmin=5,Tmax=15,δ=0.1,γ=9,每个封包大小为1.5 kbit,缓冲区最大长度为25个封包,n=m=1, 仿真时间为20 s.假设主干网无差错但吞吐量时变,则丢包主要发生在传输缓存队列中.
实验采用H.264/SVC标准测试序列中的Foreman、News和Mobile序列(CIF格式)来分别代表前景剧烈运动、背景剧烈运动及整个场景剧烈运动3种典型的视频运动场景.输入帧率25 帧/s,GOP大小为8,基本层量化参数为50,增强层量化参数为30.S1到R1带宽为5 Mbit,延时为2 ms; T1到R1带宽为5 Mbit,延时为3 ms; R2到D1带宽为5 Mbit,延时为4 ms; R2到Q2带宽为5 Mbit,延时为5 ms; R1到R2延时为20 ms.通过改变R1到R2带宽,可模拟不同网络拥塞状态下的传输情况.
由于本研究以提高人眼主观感受为数据包调度依据,峰值信噪比(peak signal to noise ratio,PSNR)无法很好地衡量视频主观质量,故在接收端利用泰克公司的视频质量分析仪PQA600测试视频质量,分析整体视觉效果.评价参数包括注意力加权峰值信噪比(attention weighted PSNR,AW-PSNR)、差异平均主观评分(difference mean opinion score,DMOS)和注意力加权差异平均主观评分(attention weighted DMOS,ADMOS),DMOS和ADMOS值越低越好,AW-PSNR值越高越好.
仿真实验分两部分:
第一部分,验证结合视觉运动特性的视频数据包重要性标记排序的正确性.比较本研究提出的VMCPIM算法与最早截止时间优先调度算法(earlist deadline first,EDF)和基于率失真模型的贪婪算法(greedy algorithm,GA),这2种方法在数据包排序方面最具有代表性,大量学者在这2种基本算法的基础上进行了算法改进和完善.视频编码帧数为65,R1到R2采用DropTail队列管理方法.3序列经信道传输在不同丢包率下以及不经信道传输直接解码压缩源文件的视频质量实验结果如表1至表3.
从表1至表3可见,随着丢包率的增加,视频质量不断下降,因此3种算法的DMOS和ADMOS值越来越大,AW-PSNR值越来越小.相同丢包率下,VMCPIM算法各项指标均优于EDF和GA算法,且接近于未经传输丢包而直接解码的视频质量.说明按照VMCPIM算法对数据包进行重要性标记,符合视频主观评价和人眼视觉感受.
图5 3序列丢包率结果比较
Fig.5 Packet loss rate comparison of Foreman sequence、News sequence and Mobile sequence
第二部分,验证结合视觉运动特性的可分级视频主动队列管理算法(VMCVAQM)的有效性.待传输视频流是按照VMCPIM算法排序后的码流,视频编码帧数150,R1到R2分别采用Gentle-RED+new ARED及VMCVAQM算法进行拥塞控制.图5为3序列在不同拥塞状态下分别采用这2种算法所得的丢包率.
由图5可见,随着R1到R2带宽的减小,网络拥塞逐渐加剧,丢包率不断增大,VMCVAQM算法较Gentle-RED+new ARED更能降低丢包率.
由于Mobile序列的运动复杂度大于Foreman和News序列,因此以Mobile序列为例,计算瓶颈带宽为3.7 Mbit时,VMCVAQM、Gentle-RED+new ARED及Drop Tail这3种队列管理算法得到的视频数据包的吞吐量,结果如图6.
由图6可见,MCVAQM算法可在降低视频丢包率的同时,提高其网络吞吐量,从而提高视频播出质量.
目前的网络拥塞控制以AQM为主,当传输视频时,AQM将视频数据包当做普通业务的数据流处理,忽略了视频数据包在结构和内容方面的特性,因而无法有效提高视频播出质量.为此,本研究针提出结合视觉运动特性的可分级视频拥塞控制机制.该机制结合视频编码结构、率失真模型和视频运动特性对数据包进行重要性标记,在拥塞控制时根据网络状况和视频数据包重要性决定丢包策略.NS-2平台上的仿真结果表明,VMCVAQM算法较传统的RED改进算法及DropTail算法,能在降低丢包率,提升吞吐量的同时,提高视频播出质量.
深圳大学学报理工版
JOURNAL OF SHENZHEN UNIVERSITY SCIENCE AND ENGINEERING
(1984年创刊 双月刊)
主 管 深圳大学
主 办 深圳大学
编辑出版 深圳大学学报理工版编辑部
主 编 阮双琛
国内发行 深圳市邮电局
国外发行 中国国际图书贸易集团有限公司(北京399信箱)
地 址 北京东黄城根北街16号
邮 编 100717
电 话 0755-26732266
0755-26538306
Email journal@szu.edu.cn
标准刊号 ISSN 1000-2618
CN 44-1401/N