程 宇 黄治华 袁林锋
(1.海军驻武汉地区通信军事代表室 武汉 430079)(2.中船重工集团公司第七二二研究所 武汉 430079)
一种适用于无线视频通信的时域错误掩盖算法*
程 宇1黄治华2袁林锋2
(1.海军驻武汉地区通信军事代表室 武汉 430079)(2.中船重工集团公司第七二二研究所 武汉 430079)
针对无线视频通信中因视频数据丢失或误码导致重建图像质量急剧下降的问题,提出了一种基于空间坐标位置关系的时域错误掩盖算法。对于受损4×4子块,将与其直接相邻子块的运动矢量定义为三维坐标点,并构建经过坐标点的平面以表征受损子块邻域内运动矢量的变化趋势,据此通过计算受损子块的空间坐标恢复受损的运动矢量,从而实现受损数据的错误掩盖。仿真结果表明,对不同视频序列和不同宏块丢失率,该算法均可比传统算法获得更好的重建图像质量。
无线视频通信; 错误掩盖; 时域替换; 边界匹配算法; 运动矢量恢复
Class Number TN92
在无线视频通信中,由于无线信道的多径时延扩展、多普勒频移、衰落以及环境噪声等特性[1],使得无线信道随时域和空域的变化而变化,表现出较大的不稳定性,导致视频传输时数据容易产生丢包或误码。当接收的码流存在丢包或误码时,解码端重建的视频信号会产生失真,特别是在基于块的混合编码框架[2]中,由于使用了帧间、帧内预测以及熵编码技术,解码错误会在时间和空间上扩散,严重降低视觉效果。因此,在解码端引入错误掩盖技术[3],利用视频信号的相关性,对丢失或误码的信号进行恢复,以提高受损图像的重建质量。
由于利用了图像的时域相关性,帧间编码能够获得较高的压缩效率,但同时帧间编码数据的丢失或误码对重建图像的影响也将更大。当帧间数据受损时,一般使用时域错误掩盖算法,其关键是运动矢量的恢复。基本的运动矢量恢复算法包括: 1) 运动矢量置零,即时域替换(Temporal Replacement,TR)算法[4]; 2) 使用前一帧对应块的运动矢量; 3) 使用邻域块运动矢量的中值。这些算法适用于运动平滑的视频序列,但在物体运动剧烈处会带来明显的掩盖痕迹。文献[5]提出的边界匹配算法(Boundary Matching Algorithm,BMA)以边界失真最小为准则,从多个候选运动矢量中选择最佳运动矢量,该算法已被H.264参考软件JM所采用。文献[6]根据邻域块运动信息构造拉格朗日插值多项式,以此多项式恢复受损的运动矢量。文献[7]通过建立基于运动矢量变化趋势的二次多项式来恢复运动矢量,文献[8]通过比较与插值的方法恢复受损的运动矢量。这些算法利用了运动矢量的空域相关性,但当受损块与邻域块具有不同的运动趋势时,掩盖效果较差。文献[9]提出的基于错误跟踪的掩盖算法由于运算复杂,不适合实时应用的要求。文献[10]提出的运动域插值算法由于要恢复每个受损像素的运动适量,运算量较大,也不适合实时应用的要求。
为此,本文针对H.264的编码特点,提出一种基于空间坐标位置关系的运动矢量估算方法。该方法将与受损子块直接相邻子块的运动矢量定义为三维空间点,并构建空间平面以表征受损子块邻域内运动矢量的变化趋势,据此通过计算受损子块的空间坐标恢复其运动矢量,从而实现受损数据的错误掩盖。
H.264相比于以往视频压缩标准的一个重要特性是改进的运动估计过程,在其运动估计中,一个帧间编码宏块可被划分为16×16、16×8、8×16、8×8、8×4、4×8以及4×4子块,具有1~16个运动矢量[11]。由于子块的尺寸更小和1/4像素矢量精度,相邻子块的相关性更强,运动矢量更接近,且分块越细,小范围内的块运动矢量相似性越强,因此本文以4×4子块为单位恢复受损的运动矢量。
受损宏块与邻域宏块的位置关系如图1所示。
图1中,MB为受损宏块,MBdir为其邻域宏块,dir∈{LT、T、RT、L、R、LB、B、RB}。相应的4×4子块标记为MBdir(m,n),其中,m和n指示4×4子块在宏块中的位置,m,n∈{0,1,2,3}。
对于受损4×4子块,当对其进行错误掩盖时,其LT、T、L方向的邻域子块已完成解码,如对于MB(0,0),其LT、T、L方向的邻域子块分别为MBLT(3,3)、MBT(0,3)和MBL(3,0),对于MB(2,2),其LT、T、L方向的邻域子块分别为MB(1,1)、MB(2,1)和MB(1,2)。因此,本文根据受损子块LT、T、L方向邻域子块的运动矢量进行错误掩盖。
图1 受损宏块与邻域宏块位置关系示意图
以受损宏块的中心为原点,子块与原点间的横向距离(以4×4子块为单位)为X轴,子块与原点间的纵向距离(以4×4子块为单位)为Y轴,子块运动矢量的水平分量为Z轴建立三维坐标系,将受损子块LT、T、L方向邻域子块对应到此三维坐标系中。假定受损子块与原点间横向距离、纵向距离以及运动矢量水平分量分别为xa、ya,zax,则受损子块在三维空间中有一坐标点A(xa,ya,zax)与之对应。同理,对于受损子块LT、T、L方向邻域子块,它们在坐标系中的坐标点分别为B(xb,yb,zbx)、C(xc,yc,zcx)和D(xd,yd,zdx)。坐标点空间位置关系如图2所示。
图2 坐标点空间位置关系示意图
由图可见,B、C和D将构成一个平面P,此平面表征了受损邻域内运动矢量的变化趋势,根据受损区域运动矢量具有相似性的特点,受损子块对应坐标点A应落在此平面上。根据此原理,可通过B(xb,yb,zbx)、C(xc,yc,zcx)和D(xd,yd,zdx)得到平面P的表达式,然后依据xa和ya计算得到zax。
令待求的平面P的表达式为
z=ax+by+c
(1)
将B(xb,yb,zbx)、C(xc,yc,zcx)和D(xd,yd,zdx)代入式(1),可得如下关于a、b和c的方程组:
(2)
求解上述方程组,可得a、b和c。a、b和c的计算公式为
(3)
将xa、ya代入式(1)可得zax。
此外,以受损宏块的中心为原点,子块与原点间的横向距离(以4×4子块为单位)为X轴,子块与原点间的纵向距离(以4×4子块为单位)为Y轴,子块运动矢量的垂直分量为Z轴建立三维坐标系。将受损子块以及其LT、T、L方向邻域子块对应到此坐标系中,得到对应坐标点A′(xa,ya,zay)、B′(xb,yb,zby)、C′(xc,yc,zcy)、D′(xd,yd,zdy)以及经过点B′(xb,yb,zby)、C′(xc,yc,zcy)和D′(xd,yd,zdy)的平面P′。同理可求得zay,(zax,zay)即为恢复的的运动矢量。
得到4×4子块运动矢量后,在参考帧中寻找相应的数据进行补偿替代,从而完成受损数据的错误掩盖。
本文选取Foreman、Suzie和Tempete作为测试序列,序列长度均为120帧,图像尺寸为QCIF。在仿真试验中,采用H.264参考软件JM作为测试平台,帧结构为“IPP…IPP…IPP…”,关键帧间隔为40。I帧和P帧的量化参数为28,参考帧数目为1,最大搜索窗口为16,1/4像素运动矢量精度,使用全部七种不同大小的块进行运动估计。I帧没有宏块丢失,P帧的宏块丢失率分别为10%和20%。
采用四种算法进行性能比较:本文提出的算法、TR算法、BMA算法和拉格朗日插值法(简称为LGRG算法)。所比较的均为亮度分量(Y分量)的峰值信噪比YPSNR,比较结果如表1~表3所示。
表1 Foreman序列在不同宏块丢失率下的峰值信噪比
表2 Suzie序列在不同宏块丢失率下的峰值信噪比
表3 Tempete序列在不同宏块丢失率下的峰值信噪比
三个序列具有不同的运动特性,其中Foreman序列存在背景的抖动和变化,Suzie序列具有中等程度的运动,Tempete序列运动较为剧烈。仿真结果表明,对于不同运动特性的序列和不同的宏块丢失率,本文算法均优于TR算法、BMA算法和LGRG算法,重建图像的PSNR相比TR算法提升3.1dB~4.8dB,相比BMA算法提升0.8dB~2.9dB,相比LGRG算法提升0.7~1.2dB,是一种鲁棒性较强的算法。
下面以Foreman序列第42帧为例,从主观视觉效果对本文算法、TR算法、BMA算法和LGRG算法进行比较,重建图像如图3所示。
图3 Foreman序列在10%宏块丢失率下,各算法重建的第42帧图像效果
从图3中可见,TR算法重建的图像在人物的脖子和下巴处存在切线、人物面部存在方块效应;BMA算法重建的图像在人物鼻梁处存在阴影、在人物脖子处存在割裂痕迹;LGRG算法重建的图像在人物的鼻梁处存在阴影;本文算法消除了上述不足,掩盖后的视觉效果较好。
本文根据运动的空域相关性,提出了一种基于空间坐标位置关系的运动矢量恢复算法。具体为,将邻域子块的运动矢量对应到三维坐标系中,并构建经过运动矢量坐标点的平面以表征邻域运动矢量的变化趋势,据此恢复受损的运动矢量。仿真结果表明,与TR算法、BMA算法和LGRG算法相比,本文算法对不同视频序列和不同宏块丢失率均能恢复出更高质量的图像,具有较强的鲁棒性。
[1] 蔡跃明,吴启晖,田华等.现代移动通信[M].北京:机械工业出版社,2007:14-15.
[2] 王瑶,奥斯特曼,张亚琴.视频信号处理与通信[M].北京:清华大学出版社,2003:227-228.
[3] Wang Y, Zhu Q F. Error Control and Concealment for Video Communication: A Review[J]. Proceedings of the IEEE,1998,86(5):974-997.
[4] 马宇峰,魏维,杨科利.视频通信中的错误隐藏技术[M].北京:国防工业出版社,2007:96-97.
[5] Wang Y K, Hannuksela M M, Varsa V, et al. The Error Concealment Feature in the H.26L Test Model[C]//Proc ICIP. Rochester, NY: IEEE,2002:729-732.
[6] Zheng J H, Chau L P. A Motion Vector Recovery Algorithm for Digital Video Using Lagrange Interpolation[J]. IEEE Trans on Broadcasting,2003,49(4):383-389.
[7] Zheng J H, Chau L P. Efficient Motion Vector Recovery Algorithm for H.264 Based on a Polynomial Model[J]. IEEE Trans on Multimedia,2005,7(3):507-513.
[8] 周杰.视频传输的错误隐藏技术研究[D].上海:复旦大学,2012.
[9] Kung W Y, Kim C S, Kuo C C. Spatial and Temporal Error Concealment Techniques for Video Transmission over Noisy Channels[J]. IEEE Trans on Circuits Systems Video Technology,2006,16(7):789-802.
[10] Chen B N, Lin Y. Temporal Error Concealment Using Selective Motion Field Interpolation[J]. Electronics Letters,2006,42(24):1390-1391.
[11] 陈靖,刘京,曹喜信.深入理解视频编解码技术:基于H.264标准及参考模型[M].北京:北京航空航天大学出版社,2012:89-92.
An Efficient Error Concealment Algorithm in Wireless Video Communication
CHEN Yu1HUANG Zhihua2YUAN Linfeng2
(1. Navy Representative Office of Communication in Wuhan, Wuhan 430079) (2. No. 722 Research Institute of CSIC, Wuhan 430079)
To overcome the degradation of video quality caused by compressed data loss or error in wireless video communication, a novel temporal error concealment algorithm based on location relationship of coordinate is proposed. For a lost 4×4 block, the blocks surrounding the lost block are first projected to points in 3D space. Then, according to these points a plane is constituted which presents the motion vector changing tendency. Finally, the recovery motion vector is obtained by calculating the coordinate of the lost block in the plane. The simulation results show that compared with the traditional algorithms, the proposed algorithm can obtain better reconstruction quality in different video sequences and different rates of lost block.
wireless video communication, error concealment, temporal replacement, boundary matching algorithm, motion vector recovery
2015年2月3日,
2015年3月27日
程宇,男,工程师,研究方向:无线通信、信号处理。黄治华,男,博士,高级工程师,研究方向:通信网络、信号处理。袁林锋,男,博士,高级工程师,研究方向:通信网络、信号处理。
TN92
10.3969/j.issn1672-9730.2015.08.011