中国科学院大学电子电气与通信工程学院, 北京 101408
2017年05月04日 收稿; 2017年05月31日 收修改稿
基金项目: 国家自然科学基金(61571416,41776204)和中国科学院大学校所合作基金(Y65201GY00)资助
通信作者: 张灿, E-mail:czhang@ucas.ac.cn
摘要: 在计算和传输资源受限的智能手机上编码传输实时会话视频一直是引人关注的关键技术。在采用肤色、运动和纹理信息快速提取感兴趣区域并且使用丢包率修正感兴趣区域权重的基础上,提出一种HEVC会话视频容错编码方案。仿真结果表明,该方案在丢包率5%~20%的网络中编码传输时,会话视频的感兴趣区峰值信噪比PSNR比现存的随机帧内刷新方法至少提高0.7 dB,编码时间减少20%~40%。实际比特率符合目标比特率要求。
关键词: 会话视频传输感兴趣区高效率视频编码人类视觉系统
Region-of-interest based error resilient scheme for HEVC conversational video transmission
HE Zhitao, ZHANG Can, CHEN Deyuan
School of Electronic, Electrical and Communication Engineering, University of Chinese Academy of Sciences, Beijing 101408, China
Abstract: Conversational video coding and transmission on resource-constrained mobile phones has been a key technology. We propose a novel error resilient scheme for conversational video transmission in HEVC which is based on the fast extraction for region-of-interest (ROI) according to skin color, motion, and texture information and adjustments for the ROI weights using the packet-loss rate. The simulation results show that, compared to the random frame refresh method, the proposed scheme improves PSNR of the ROI by at least 0.7dB and reduces coding time by 20%-40% when the video coding and delivery is over the channel with the packet-loss rate of 5%-20%. At the same time the actual bitrate matches the target bitrate.
Key words: conversational video transmissionregion of interestHEVChuman visual system
随着移动通信系统快速发展以及智能手机在软硬件上取得突破,移动视频会话业务应用越来越普遍。新一代高效率视频编码标准HEVC(high efficient video coding)[1]比H.264/AVC视频编码标准在保持相同质量的情况下提高约一倍的压缩效率,同时也增加了编码的复杂度。由于移动设备电池续航能力的瓶颈受限以及移动信道的复杂性和不可预测性,移动视频会话业务在提高压缩效率的同时,要尽量降低编码的复杂度。因此,HEVC标准下提高感兴趣区的容错性能和减少编码的复杂度是移动视频会话在智能手机上实时应用的难题。
在现有的改善方法中,一类方法是估计端到端的失真来对视频编码进行率失真优化,增强传输过程中抗差错性能,如通过计算像素一阶矩和二阶矩估计端到端失真的ROPE算法[2],通过在编码端模拟多个信道与解码器估计端到端失真的方法[3],针对H.264/AVC标准中的端到端失真估计方法[4-5]以及使用HEVC中编码单元的大小估计端到端失真的方法[6]。这类方法虽然能有效提高视频在进行有差错传输时的容错性能,但需要估计端到端失真,难以满足受限资源的移动设备上实时会话视频的要求。另一类方法是通过特定的模式或者机制增加帧内编码块,抑制传输过程中的错误扩散,如用于H.264/AVC随机帧内刷新方法[7]、帧内距离系数加权法[8]等。这类方法虽然没有增加额外编码复杂度,但过多插入帧内模式使得视频压缩效率降低,容易造成视频图像内比特分配和视频质量分布不均,与人眼视觉系统(human visual system, HVS)的特性不匹配。为改进这些不足,另一些编码方案考虑了HVS,根据视频不同区域的感兴趣程度将视频图像分割为感兴趣区(region of interest, ROI)和非感兴趣区进行自适应码率分配编码。如分别对ROI和非ROI的进行端到端率失真代价函数加权[9]的方法,需要估计端到端失真,仍难以满足实时会话视频的要求。文献[10]根据接收端反馈ROI内的差错状况进行帧内刷新,增加了系统的延时,影响会话业务的实时性。Meddeb等[11]提出一种将ROI与HEVC的新特性Tiles相结合的算法,提高了ROI的抗差错性能。然而上述基于感兴趣区域的方法都没有考虑到在不同程度的传输错误发生时人眼对于画面中感兴趣的程度也是不同的。为解决这个不足,本文针对移动会话视频提出一种基于感兴趣区的HEVC容错编码方案。该方案联合信道的实时状态和感兴趣区的兴趣度量构造错误扩散因子,影响感兴趣的编码器的帧内帧间模式决策。由于本文方案采用ROI的编码方法,HEVC标准参考软件HM[12]中采用的基于R-λ模型的码率控制算法[13]已经不适用于本方案,所以本文同时给出相应的联合信源信道目标比特分配算法。实验结果表明该方案有效提高了会话视频中感兴趣区的错误抵抗能力,并且降低了编码时间复杂度,可用于移动通信网络中的实时会话视频业务。
1 感兴趣区的快速检测与分割最常见的移动会话视频场景即用户使用移动终端(如移动蜂窝电话、平板电脑等)进行视频聊天,对于此类设备拍摄的视频图像呈现出这样的特点:背景静止基本保持不变或者有快速轻微晃动,人脸位于视频中部区域,脸部有复杂的运动,含有丰富的细节(眼神、口型、神态等)。所以在移动会话视频中,人脸区域是会话者视觉关注的感兴趣区,人脸的检测成为首要的任务。尽管当前人脸识别技术已经取得突破,在准确度和检测速度上都取得了进展,但是仍然不能保证实时编码与传输。并且人脸检测的精确度不是重点,而是需要尽可能快速地检测人脸并用于后面资源消耗更大的编码过程中。针对这个特点本文提出一种简单快速的基于肤色检测和纹理复杂度的方法快速分割出感兴趣区,并给出以像素块为单位的兴趣度量,方便用于后续HEVC视频编码和传输。
给定大小为N×N的像素块,使用肤色检测算法[14]定义肤色因子s
$s = \frac{1}{{{N^2}}}\sum\limits_{i = 0}^N {\sum\limits_{j = 0}^N {p\left( {i,j} \right)} } ,$ | (1) |
$\begin{array}{*{20}{c}}{t = \frac{1}{{a{N^2}}}\sum\limits_{i = 0}^N {\sum\limits_{j = 0}^N {\left( {\left| {{G_x}\left( {i,j} \right)} \right| + } \right.} } }\\{\left. {\left| {{G_y}\left( {i,j} \right)} \right| + \left| {{G_t}\left( {i,j} \right)} \right|} \right),}\end{array}$ | (2) |
$\begin{array}{l}{G_x}\left( {i,j} \right) = {f_t}\left( {i,j} \right) - {f_t}\left( {i - 1,j} \right),\\{G_y}\left( {i,j} \right) = {f_t}\left( {i,j} \right) - {f_t}\left( {i,j - 1} \right),\\{G_t}\left( {i,j} \right) = {f_t}\left( {i,j} \right) - {f_{t - 1}}\left( {i,j} \right),\end{array}$ | (3) |
${i_{{\rm{block}}}} = \alpha s + \beta t,$ | (4) |
${I_{{\rm{block}}}} = \left\{ \begin{array}{l}{\theta _1},\;\;\;\;{i_{{\rm{block}}}} \ge {\theta _1}\\{\theta _2},\;\;\;\;{\theta _2} \le {i_{{\rm{block}}}} < {\theta _1}\\1,\;\;\;\;\;\;\;{i_{{\rm{block}}}} < {\theta _2}\end{array} \right..$ | (5) |
Fig. 1
Download: JPG larger image | |
图 1 感兴趣区的分割示例 Fig. 1 Examples of extraction for ROI 图 1 感兴趣区的分割示例 Fig. 1 Examples of extraction for ROI --> |
2 基于感兴趣区的容错编码方案经过HEVC编码的会话视频在容易发生差错的移动网络中传输,会产生错误扩散,严重降低视频传输的质量。为保证接收端视频的主观质量,需要在保证视频编码实时性的同时提高感兴趣区的抗差错性能,本节提出基于感兴趣区的容错编码方案。首先使用信道状况修正感兴趣区的兴趣度量值,然后为不同感兴趣区域内的树形编码单元划分模式进行限定以降低复杂度,接着阐述联合信道的帧内帧间模式选择方法,最后针对方案的特点讨论新的目标比特分配方法以满足本方案的码率控制要求。
2.1 联合信道的感兴趣区兴趣度量当信道状况变差时,人眼对于感兴趣区内的视频质量会比传输条件正常时更加敏感,因此本文针对不同的感兴趣区的兴趣度量自适应修正,将信道变化状态自适应与兴趣度量的变化匹配:
${{I'}_{{\rm{block}}}} = \left\{ \begin{array}{l}b{\theta _1}p,\;\;\;\;{\rm{block}} \in {\rm{RO}}{{\rm{I}}_1}\\{\theta _2},\;\;\;\;\;\;\;\;{\rm{block}} \in {\rm{RO}}{{\rm{I}}_2}\\1,\;\;\;\;\;\;\;\;\;\;{\rm{block}} \in {\rm{NROI}}\end{array} \right..$ | (6) |
2.2 基于感兴趣区的CTU划分模式为提升编码效率,HEVC引入树形编码单元(coding tree unit, CTU)作为最基本的编码单元。一幅图像被划分为若干个L×L大小的CTU,每个CTU可以当作一个编码单元(coding unit, CU), 同时也可以继续分割成4个子CU,此时划分深度为1,子CU可以接着再继续分割,直至到达所允许的最小CU尺寸,此时该CU具有最大划分深度,形成基于四叉树的循环分层结构。在各个CU的编码过程中,又可以进一步将CU分割成预测单元(prediction unit, PU)和变换单元(transform unit, TU)以进行帧内帧间模式预测、变换和量化等后续过程。若要获得最优的CTU划分方式,则需要遍历所有可能的模式,并取使拉格朗日代价函数最小的模式为最优模式。尽管能获得最优模式,但是可观的计算量使得该方法不可能用于移动视频实时会话业务中,所以CTU的划分与模式选择方法需要在计算复杂度与编码性能之间做出权衡。
考虑到在视频编码中,较大的编码块可以降低编码复杂度,但是较小的编码块又能使得图像的细节预测更加准确。所以为上节分割得出的不同区域设定CTU所允许的最大划分深度depthmax:
${\rm{dept}}{{\rm{h}}_{\max }} = \left\{ \begin{array}{l}3,\;\;\;\;{\rm{CTU}} \in {\rm{RO}}{{\rm{I}}_1}\\2,\;\;\;\;{\rm{CTU}} \in {\rm{RO}}{{\rm{I}}_2}\\1,\;\;\;\;\;{\rm{CTU}} \in {\rm{NROI}}\end{array} \right..$ | (7) |
2.3 联合信源信道帧内帧间模式选择方法HEVC编码过程中,为得到最优的帧内帧间模式,使用基于拉格朗日的率失真优化方法。通过最小化代价函数(8)得到最优的帧内或帧间预测模式
$J = {D_{{\rm{mode}}}} + {\lambda _{{\rm{mode}}}}{R_{{\rm{mode}}}},$ | (8) |
$J' = \omega {D_{{\rm{mode}}}} + \lambda {R_{{\rm{mode}}}},$ | (9) |
$\omega = \left\{ \begin{array}{l}1,\;\;\;\;\;\;\;\;\;\;\;{\rm{intramode}}\\n{{I'}_{{\rm{block}}}},\;\;\;\;{\rm{intermode}}\end{array} \right.,$ | (10) |
Fig. 2
Download: JPG larger image | |
图 2 预测块与不同距离系数块相重叠示例 Fig. 2 An example of the prediction unit which overlaps blocks with different weights 图 2 预测块与不同距离系数块相重叠示例 Fig. 2 An example of the prediction unit which overlaps blocks with different weights --> |
2.4 基于感兴趣区的联合信源信道目标比特分配方法HEVC标准参考软件HM16.7[12]中采用的基于R-λ模型的码率控制算法[13],分为两个步骤,首先根据目标码率分配目标比特数,接着确定不同编码单元的量化参数。为了将更多的编码比特分配与上文中分割的感兴趣区域相匹配,并且考虑信道状态对兴趣度量的影响,本文提出基于感兴趣区的图像级目标比特分配和CTU级目标比特分配方法代替原先码率控制算法中对应级别的比特分配方法。
2.4.1 图像级的目标比特分配方法给定图像组(Group of Pictures, GOP)的目标比特TGOP,且当前GOP内有NGOP幅图像,则当前图像i分配的比特数Tf(i)为
${T_{\rm{f}}}\left( i \right) = \frac{{{\omega _{\rm{f}}}\left( i \right)}}{{\sum\limits_{j = i}^{{N_{{\rm{GOP}}}}} {{\omega _{\rm{f}}}\left( j \right)} }} \cdot \left( {{T_{{\rm{GOP}}}} - {R_{{\rm{used}}}}} \right),$ | (11) |
${\omega _{\rm{f}}}\left( i \right) = \frac{{\beta {N_{{\rm{RO}}{{\rm{I}}_1}}} + {N_{{\rm{RO}}{{\rm{I}}_2}}}}}{{{N_{{\rm{CTU}}}}}},$ | (12) |
2.4.2 CTU级目标比特分配方法在计算出当前图像i给定的目标比特数Tf后,接着对该图像内每个CTU确定目标比特数。设当前图像包含有NCTU个CTU,第m个待编码的CTU的目标比特数TCTU(m)为
${T_{{\rm{CTU}}}}\left( m \right) = \frac{{{\omega _{\rm{c}}}\left( m \right)}}{{\sum\nolimits_{k = m}^{{N_{{\rm{CTU}}}}} {{\omega _{\rm{c}}}\left( k \right)} }} \cdot \left( {{T_{\rm{f}}} - {R_{\rm{H}}} - {R_{{\rm{used}}}}} \right),$ | (13) |
$\begin{array}{l}{\omega _{\rm{c}}}\left( m \right) = \frac{{{{I'}_{{\rm{CTU}}\left( m \right)}}}}{{\left( {\begin{array}{*{20}{c}}{\sum\nolimits_{{\rm{block}} \in {\rm{RO}}{{\rm{I}}_1}} {{{I'}_{{\rm{block}}}}} + \sum\nolimits_{{\rm{block}} \in {\rm{RO}}{{\rm{I}}_2}} {{{I'}_{{\rm{block}}}}} + }\\{\sum\nolimits_{{\rm{block}} \in {\rm{NROI}}} {{{I'}_{{\rm{block}}}}} }\end{array}} \right)}}\\\;\;\;\;\;\;\;\;\;\; = \frac{{{{I'}_{{\rm{CTU}}\left( m \right)}}}}{{{N_{{\rm{RO}}{{\rm{I}}_1}}}a{\theta _1}p + {N_{{\rm{RO}}{{\rm{I}}_2}}}{\theta _2} + {N_{{\rm{NROI}}}}}},\end{array}$ | (14) |
3 实验仿真与结果分析为验证本文提出的方案的性能,实验参考HEVC标准参考软件HM16.7[12]。使用Foreman和KristenAndSara测试序列,分辨率分别为352×288和1 280×720,帧率分别为30和60 fps,用于测试不同分辨率和码率下的算法性能。仿真实验的步骤为:序列使用不同方案编码150帧,编码后将输出的比特流按照MTU=1 500字节进行RTP/UDP/IP打包,进行传输实验丢包仿真。接收端进行拆包后得到损坏的比特流,解码器使用时域错误掩盖方法进行解码后得到重建视频,同一实验重复100次。编码器的参数设定基于HM16.7提供的标准encoder_lowdelay_P_main.cfg配置[12],使用6个CTU作为一个slice。
为比较本文算法和现有算法的性能,本文算法同随机帧内编码算法(RIR)[7]和使用帧内距离系数加权法(IDW)[8]进行仿真比较实验。采用RIR算法时,帧内刷新率通常设置为当前信道的丢包率p;而使用IDW算法时,设置加权系数K=5。为公平起见,使用IDW方法时采用和本方案相同的感兴趣区分割和CTU模式的划分方法。
图 3为Foreman和KristenAndSara序列编码经丢包率为15%的信道传输后感兴趣区的端到端率失真曲线。从实验结果中看出,在感兴趣区内对于低分辨率的Foreman序列来说,本文算法较IDW算法提升至少0.8 dB的率失真性能,较RIR至少提升1.7 dB的率失真性能。而对于高分辨率的KristenAndSara序列来说本文算法较IDW算法至少提升1.45 dB的率失真性能,较RIR则至少提升2.4 dB的率失真性能。实验结果表明在15%的丢包率的信道中传输时,本文算法对于不同分辨率的视频来说在感兴趣区内比另外2种算法具有更好的抗差错性能,更加符合HVS特性。
Fig. 3
Download: JPG larger image | |
图 3 信道丢包率为15%时感兴趣区域端到端率失真曲线 Fig. 3 ROI end-to-end rate-distortion curves at the packet-loss rate of 15% 图 3 信道丢包率为15%时感兴趣区域端到端率失真曲线 Fig. 3 ROI end-to-end rate-distortion curves at the packet-loss rate of 15% --> |
图 4为将2个序列分别以固定比特率进行编码,考察相同比特率在不同丢包率传输时的抗差错性能。图 4(a)为将Foreman序列使用不同算法以比特率150 Kb/s编码后,通过不同丢包率信道传输后感兴趣区重建质量的对照图。从图中可以看到采用本文算法的感兴趣区视频重建质量比RIR方法提高1.4~2.49 dB,比IDW方法提高0.74~0.85 dB。图 4(b)为将KristenAndSara序列使用不同算法以比特率1.5 Mb/s编码后,通过不同丢包率信道传输后感兴趣区和非感兴趣区重建质量的对照图。从图中可以看到采用本文算法的感兴趣区视频重建质量比RIR方法提高0.8~1.59 dB,比IDW方法提高1.35~1.75 dB。仿真结果说明本文方法在相同比特率的情况下,在不同丢包率的信道传输中均更好地保护了会话视频中的感兴趣区,具有更好的抵抗差错性能。
Fig. 4
Download: JPG larger image | |
图 4 不同丢包率下以固定比特率编码的算法性能比较 Fig. 4 ROI Y-PSNRs at different packet-loss rates with a fixed bitrate 图 4 不同丢包率下以固定比特率编码的算法性能比较 Fig. 4 ROI Y-PSNRs at different packet-loss rates with a fixed bitrate --> |
为了进一步验证本算法与RIR和IDW的编码计算复杂度,表 1给出不同算法的编码时间相对于HM16.7标准编码时间减少的百分比。从表中可以看到,本文方案采用的CTU划分模式方法使得Foreman序列编码时间减少20%左右,而KristenAndSara序列编码时间减少40%左右。
Table 1
表 1 丢包率为15%时编码时间复杂度比较Table 1 Comparison of coding time complexity at the packet-loss rate of 15%
| 表 1 丢包率为15%时编码时间复杂度比较Table 1 Comparison of coding time complexity at the packet-loss rate of 15% |
表 2给出本文方案中目标比特分配方法性能比较。由于RIR和IDW算法不涉及码率控制算法,所以本文中目标比特分配方法的性能使用编码实际比特率差错率Re和感兴趣区ROI在编码器端重建视频相对于标准HM16.7编码增加的PSNR来衡量,其中Re计算方法如下:
${R_{\rm{e}}} = \frac{{\left| {{R_{{\rm{target}}}} - {R_{{\rm{actual}}}}} \right|}}{{{R_{{\rm{target}}}}}} \times 100\% .$ |
表 2 目标比特分配方法性能Table 2 Performance of the target bit allocation method
| 表 2 目标比特分配方法性能Table 2 Performance of the target bit allocation method |
从表 2可看出,本文方案中的目标比特分配方法取得预期性能。在实际比特率与目标比特率保持基本一致的情况下,将更多比特分配给了感兴趣区域,使得Foreman序列的感兴趣区的重建质量提升1.5~2.86 dB,而KristenAndSara序列则提升1.17~2.78 dB。实验结果说明随着信道丢包率的增加,更多的比特被分配到感兴趣区域,感兴趣区的视频质量随之提高。
4 结论针对会话视频和HVS特点,本文提出基于感兴趣区的HEVC会话视频容错编码方案。在文中结合人眼特性对会话视频中的人脸区域进行快速分割,并且考虑到信道状况对人眼敏感度的影响修正了人眼兴趣度量,接着根据感兴趣区域简化编码中CTU的划分模式,结合信道状况给出基于感兴趣区的帧内帧间模式选择方法和目标比特分配方法。仿真结果表明,该方案在保持比特率基本不变的同时,能够提升感兴趣区内抗差错性能并且比标准编码节省20%~40%的编码时间。下一步的工作,将着重于搭建和实现基于此方案的移动会话视频系统,测试其在实际应用中的性能并加以改善。
参考文献
[1] | Sullivan G J, Ohm J, Han W, et al. Overview of the high efficiency video coding (HEVC) standard[J].IEEE Transactions on Circuits and Systems for Video Technology, 2012, 22(12):1649–1668.DOI:10.1109/TCSVT.2012.2221191 |
[2] | Zhang R, Regunathan S L, Rose K. Video coding with optimal inter/intra-mode switching for packet loss resilience[J].IEEE Journal on Selected Areas in Communications, 2000, 18(6):966–976.DOI:10.1109/49.848250 |
[3] | Stockhammer T, Hannuksela M M, Wiegand T. H.. 264/AVC in wireless environments[J].IEEE Transactions on Circuits and Systems for Video Technology, 2003, 13(7):657–673.DOI:10.1109/TCSVT.2003.815167 |
[4] | Yuan Z, Wen G, Yan L, et al. Joint source-channel rate-distortion optimization for H.264 video coding over error-prone networks[J].IEEE Transactions on Multimedia, 2007, 9(3):445–454.DOI:10.1109/TMM.2006.887989 |
[5] | Zhifeng C, Dapeng W. Prediction of transmission distortion for wireless video communication:analysis[J].IEEE Transactions on Image Processing, 2012, 21(3):1123–1137.DOI:10.1109/TIP.2011.2168411 |
[6] | Kulupana G, Talagala D S, Arachchi H K, et al. Error resilience aware motion estimation and mode selection for HEVC video transmission[C]//2016 IEEE International Conference on Consumer Electronics (ICCE): IEEE, 2016: 85-86. |
[7] | Joint Video Team(JVT) of ISO/IEC MPEG & ITU-T VCEG. H. 264 reference software JM[CP/OL]. (2016-07-15)[2017-04-20]. http://iphome.hhi.de/suehring/tml/. |
[8] | Nyamweno S, Satyan R, Labeau F. Intra-distance derived weighted distortion for error resilience[C]//200916th IEEE International Conference on Image Processing (ICIP): IEEE, 2009: 1057-1060. |
[9] | Chen Q, Chen Z, Gu X, et al. Attention-based adaptive intra refresh for error-prone video transmission[J].IEEE Communications Magazine, 2007, 45(1):52–60.DOI:10.1109/MCOM.2007.284538 |
[10] | Maung H M, Aramvith S, Miyanaga Y. Region-of-interest based error resilient method for HEVC video transmission[C]//201515th International Symposium on Communications and Information Technologies (ISCIT): IEEE, 2015: 241-244. |
[11] | Meddeb M, Cagnazzo M, Pesquet-Popescu B. ROI-based rate control using tiles for an HEVC encoded video stream over a lossy network[C]//2015 IEEE International Conference on Image Processing (ICIP): IEEE, 2015: 1389-1393. |
[12] | Joint Collaborative Team on Video Coding (JCT-VC). HEVC reference software HM(HEVC test model)[CP/OL]. (2013-04-01)[2016-07-15]. https://hevc.hhi.fraunhofer.de/. |
[13] | Li B, Li H, Li L, et al. λ domain rate control algorithm for high efficiency video coding[J].IEEE Transactions on Image Processing, 2014, 23(9):3841–3854.DOI:10.1109/TIP.2014.2336550 |
[14] | Hsu R L, Abdel-Mottaleb M, Jain A K. Face detection in color images[J].IEEE Transactions on Pattern Analysis and Machine Intelligence, 2002, 24(5):696–706.DOI:10.1109/34.1000242 |