基于拟合平面插值的时域错误隐藏算法研究*
2017-06-01李玉峰陈瑞宁
李玉峰,陈瑞宁
(沈阳航空航天大学电子信息工程学院,沈阳 110136)
基于拟合平面插值的时域错误隐藏算法研究*
李玉峰*,陈瑞宁
(沈阳航空航天大学电子信息工程学院,沈阳 110136)
针对H.264/AVC压缩视频码流在无线信道传输过程中由于运动矢量失配导致图像重构质量下降的问题,提出了一种基于拟合平面插值的时域错误隐藏算法。该算法主要利用平面拟合算法对受损宏块运动矢量进行重建,同时采用外边界匹配算法选取最优运动矢量对受损图像进行恢复重建。实验表明,该算法不仅避免了原始算法产生的方块效应,而且在不同的RTP丢包概率下,该算法比自适应外边界匹配算法得到的峰值信噪比有0.2 dB~0.8 dB提升。
H.264/AVC;时域错误隐藏;拟合平面插值;运动矢量
H.264/AVC是由ITU-T的视频编码专家组VCEG(Video Coding Experts Group)与ISO/IEC的运动图像专家组MPEG(Moving Pictures Experts Group)大力发展研究,并于2003年由两个专家组组成的联合视频专家组JVT(Joint Video Team)制定的新的数字视频通信标准。视频通信标准具有:低码流、高质量、抗误码性能强以及网络适应性强等特点。但是在视频通信中,在获得较低的冗余量与高压缩比的的同时,视频码流抵抗差错的能力变得非常脆弱[1]。传输过程中一旦出现比特错误,预测编码和可变长编码的使用会使错误更快地在视频中扩散,使视频质量下降。根据视频图像传输的特点提出了3种方式来提高和改善视频的抗误码能力:第1,在编码端改变编码策略或添加冗余等方式;第2,在传输过程中,改善传输通道的质量或建立多传输通道;第3,在解码端根据图像信息对受损图像进行错误隐藏。错误隐藏算法又可以分为:帧内(Intra frame)错误隐藏[2],其主要利用丢失块正确相邻宏块来推测当前受损块的内容;帧间(Inter frame)错误隐藏[3-4],其主要利用图像序列的连续性,通过预测丢失块的运动矢量来进行错误隐藏。
在文献[5]中,Ali Radmehr提出了运动矢量高斯混合建模的粒子滤波进行错误隐藏,主要通过粒子滤波对受损宏块的运动矢量(Motion Vector)进行恢复,在文献[6]中,Hadi Asheritichul等提出了基于边缘检测的多方向插值算法MDI(Multi-Directional Interpolation),该算法利用相邻宏块的边缘信息,对受损宏块进行多方向加权插值,但是该算法对于纹理性较弱,边缘性较强的图像,恢复效果一般。在文献[8]中,提出了当P帧图像受损时,主要采用时域错误隐藏算法对其进行隐藏[8]。该算法主要通过对受损宏块重新建立运动向量,在通过对运动向量的估计找到前一帧或几帧的对应位置,并将宏块内容复制到受损宏块内最终得到隐藏的视频图像。综合研究表明,恢复运动矢量可以分为:第1种,零运动矢量,即直接将前一帧的视频图像宏块内容填充到当前受损视频图像中,该向量对于视频图像中没有明显运动或运动较为缓慢时,受损视频图像宏块能够有较好的恢复效果。第2种,均值运动矢量,即当P帧图像红快手损时利用受损宏块相邻正确接收宏块运动矢量的平均值作为当前受损宏块的运动向量;第3种,中值运动矢量,即当P帧图像红快手损时利用受损宏块相邻宏块正确接收运动矢量的中值作为当前受损宏块的运动向量[8]。
1 基于拟合平面插值的时域错误隐藏算法
时域错误隐藏算法[9],重点和难点都是重建受损宏块的运动矢量,传统的错误隐藏算法根据相邻宏块的运动矢量以及零运动矢量作为参考集利用边界匹配算法选取最优运动矢量并最终实现错误隐藏。
1.1 树状结构运动补偿
H.264视频图像帧间预测编码中采用树状结构运动补偿,每个宏块可以进行多种模式的分割,如图1所示。
图1 宏块分割模式选择
标号为0、1、2、3的子宏块,每个子宏块独立的运动补偿。在视频编码传输中,宏块的分割选择方式以及分割后每个子宏块的运动矢量(MV)都被编码压缩到比特流中。在新的编码标准中,宏块中平坦区域占绝大部分时采用较大尺寸的分割模式,而宏块中存在的图像信息丰富时采用较小尺寸的分割模式。需要补充说明的是同一像素宏块色度和亮度通常采用同一种分割模式。
1.2 拟合平面算法
在同一帧图像内,局部范围内像素通常具有相同的运动矢量,又根据相邻宏块间的相关性,通过相邻宏块运动矢量建立一个拟合平面来表示相邻宏块的运动矢量变化走向,再根据受损宏块的位置最后得出该受损宏块的运动矢量估计值,增加到运动矢量集中,为外边界匹配(OBMA)做好准备。
如图2所示,其中图2(a)表示受损宏块相邻宏块的运动矢量,图2(b)表示根据运动矢量拟合出的平面,可以通过空间坐标获得受损宏块坐标对应的运动矢量。
图2 拟合平面算法示意图
拟合平面具体算法如下面所示。
假设空间平面方程为:
Ax+By+Cz+D=0 (C≠0)
(1)
则
(2)
假定
瓮福集团和开磷集团尽管同为贵州省的大型磷化工企业,但是,它们在市场上却没有太多的“兄弟”情分,更多的是市场竞争关系。
(3)
则上式可以转变为
Z=a0x+a1y+a2
假设空间中需要拟合点的个数为m且m大于等于3。根据最小二乘法则要想拟合上述平面,需使式(4)中S值最小:
(4)
则
(5)
即
(6)
化简得到:
(7)
(8)
(9)
则平面方程可以表示为:
Z=a0x+a1y+a2
(10)
在重建受损宏块时,选取受损宏块的坐标位置(x,y),得到的z值为受损宏块的预测运动矢量,将其加入到最优运动矢量的集合中等待最优检测。
图3 外边界匹配算法示意图
2 外边界匹配算法(OBMA)
本文中采用改进的外边界匹配算法。该算法首先根据预测运动矢量在参考帧中找到受损宏块的估计宏块,然后计算受损宏块相邻宏块的边界像素值与参考帧中估计宏块相邻宏块中的边界像素值的差值,并选取差值较小的运动矢量作为最优运动矢量,如图3所示。图3中,右图为受损宏块,左图代表相邻帧中与受损宏块相同位置的宏块,黑色区域表示相邻宏块边界像素,灰色区域表示受损宏块的边界像素。该算法相对传统的边界错误以隐藏算法降低了由于边界匹配产生方块效应的问题,算法复杂度不高,且能够获得较为准确的运动矢量。
(11)
综上所述,基于拟合平面插值的时域错误隐藏算法研究,和空域错误隐藏算法一样,首先判断视频图像信息是否受损,若受损则判断是I帧还是P帧图像受损。假设受损图像为P帧,即时域错误隐藏。第1步,传统的运动矢量预测。第2步,利用拟合平面算法预测受损宏块运动向量。第3步,利用改进的外边缘匹配算法检测最优运动矢量。第4步,根据得到的运动矢量进行错误隐藏。
3 实验结果
实验选取了foreman_qcif(176像素×144像素),ICE(352像素×288像素),CITY(704像素×576像素)作为测试图片,使用LostRtp模拟丢包环境。foreman_qcif视频序列具有运动量较小或者静止的背景,而人脸在视频中运动量较大的特点,如图4(a)所示。ICE视频序列具有背景是运动量较小或静止的,而人在视频中运动量较大且视频像素较大的特点,如图5(a)所示。CITY视频序列具有较大运动量的视频帧且像素值最大,如图6(a)所示。首先利用LostRtp对图像进行模拟丢包,其中丢包后未处理图像分别如图4(b)、图5(b)、图6(b)所示。然后,分别应用均值加权算法、自适应外边界匹配时域错误隐藏算法、MDI算法和基于拟合平面插值的时域错误隐藏算法,仿真结果分别如图4~图6所示。
从仿真结果中图4(c)、图5(c)、图6(c)可以看出,均值加权算法能够使图像中受损块获得较好的平滑性,而对于具有丰富边缘信息的受损宏块,得到的图像边缘有模糊甚至出现虚假边缘现象。由图4(d)、图5(d)、图6(d)可以看出,自适应外边界错误隐藏算法能够使得到的背景图像能获得较好的效果,且视频图像中运动量较大的宏块效果一般尤其在下颚部分与帽檐部分都出现不同的方块效应。由图4(e)、图5(e)、图6(e)可以看出,MDI算法对受损宏块恢复效果一般,由foreman看出帽檐纹理性弱边缘性强的受损宏块恢复一般。由4(f)、图5(f)、图6(f)可以看出,相对自适应外边界错误隐藏算法而言,本文的自适应拟合平面插值时域错误隐藏算法对运动量较大的宏块效果恢复效果较好,图4(f)中的脸下颚部分和图5(f)中的帽檐部分以及图6(f)塔楼部分都有较好的恢复效果。综上所述,在主观方面基于拟合平面插值算法在一定程度上要优于MDI算法及自适应外边界匹配时域错误隐藏算法。分别对上述测试图片进行丢包,并进行错误隐藏,所得峰值信噪比[10](PeakSignaltoNoiseRatio,PSNR)数据如表1所示,算法仿真复杂度对比如表2所示。
图6 CITY仿真结果对比
图4 foreman_qcif仿真结果对比
图5 ICE仿真结果对比
图像序列尺寸信噪比PSNR/dB原始错误图片均值加权算法自适应错误隐藏算法MDI本文算法Foreman176×144176×1446.711611.775623.466229.129325.212433.702623.875730.985725.488434.0883ICE352×28813.695634.893134.702634.857435.2937CITY704×57617.476532.920935.195235.236735.9858
表2 时域错误隐藏算法复杂度对比
经过错误隐藏后的PSNR对比图,如图7所示,可以看出受损图像经过自适应外边界匹配算法重建后的图像峰值信噪比相对于均值加权算法重建后图像的峰值信噪比有很大的提升。而多方向插值算法(MDI)对边缘特性明显的Foreman_qcif和ICE视频图像重建的峰值信噪比相对于自适应外边界匹配算法较低,而对纹理信息丰富的CITY视频图像重建的峰值信噪比相对于自适应外边界算法较高。而经过本文算法重建视频图像的峰值信噪比相对于均值加权平均算法,自适应外边界匹配算法和MDI算法均有明显提升。同时,本文算法复杂度略高于均值加权算法,却低于自适应外边界匹配算法和MDI算法,如图8所示。
图7 算法仿真PSNR对比图
从客观比较结果来看,在同一图像下,丢包率越高,经同一算法恢复图像的信噪比越低。经过错误隐藏后的PSNR对比图,在同一图像并且丢包率相同的情况下,利用均值加权错误隐藏算法可以对图像质量恢复得到比较好的效果,自适应外边界匹配算法以及多方向插值算法利用图像边缘特性对受损宏块进行方向加权插值,对于边缘特性明显的图像重建后的PSNR值有很大的提升,而对于纹理特性复杂的图像重建效果较差。而通过本文的拟合平面插值错误隐藏算法恢复图像的PSNR值优于自适应外边界匹配错误隐藏算法,且图像重建后的PSNR值提升约0.2 dB~0.8 dB。
图8 算法复杂度对比图
4 结论
本文针对图像重建受损宏块运动矢量采用基于拟合平面插值的时域错误隐藏算法。此算法对边缘信息丰富的受损宏块,一定程度上提高了图像的恢复效果,优于均值加权算法,同时避免了自适应错误隐藏算法中人为设定边缘梯度阈值造成有意义边缘信息统计错误的缺点。本文算法,不仅保留了丢失块像素加权平均算法的优点,而且能够适合边缘信息强度不同的错误隐藏。实验结果较均值加权算法提高了0.4 dB~4.9 dB,较MDI算法提高了0.4 dB~3.1 dB,不论主观还是客观方面,都改善了受损图像的质量。
[1] Yongbing Z,Xinguang X,Debin Z. Packet Video Error Concealment With Auto Regressive Model[J]. IEEE Transactions on Circuits and Systems for Video Technology,2012,22(12):12-27.
[2] Bo Y,Hamid G,Bin H. Pixel Interlacing Based Video Transmission for Low-Complexity Intra-Frame Error Concealment[J]. IEEE Transactions on Broadcasting,2011,57(2):253-257.
[3] Jie Z,Bo Y,Hamid G. Efficient Motion Vector Interpolation for Error Concealment of H.264/AVC[J]. IEEE Transactions on Broadcasting,2011.57(1):75-80.
[4] Youjun X,Liangmou F,Shengli X. An Efficient Spatio-Temporal Boundary Matching Algorithm for Video Error Concealment[J]. Multimed Tools Appl,2011,52:91-103.
[5] Ali Radmehr Abdorasoul Ghasemi. Error Concealment Via Particle Filter by Gaussian Mixture Modeling of Motion Vectors for H.264/AVC[J]. Signal,Image and Video Processing,2016,10(2):311-318.
[6] Hadi A,Hamid R.Rabiee,Nima Pourdamghani.Multi-Directional Spatial Error Concealment Using Adaptive Edge Thresholding[J]. IEEE Transactions on Consumer Electronics,2012,58(3):880-885.
[7] Lie Wen-Nung,Lee Chang-Ming,Yeh Chuang-Hua,et al. Motion Vector Recovery for Video Error Concealment by Using Iterative Dynamic-Programming Optimization[J]. IEEE Transactions on Multimedia,2014,16(1):216-227.
[8] Evaggelia T,Lisimachos P,Aggelos K. Shape Error Concealment Based on a Shape-Preserving Boundary Approximation[J]. IEEE Transactions on Image Processing,2012,21(8):3573-3584.
[9] Xiao Xueming,Cui Hutao,Tian Yang. Robust Plane Fitting Algorithm for Landing Hazard Detection[J]. 2015,51(4):2864-2875.
[10] Hadi Asheri,Hamid Rabiee,Nima Pourdamghani. Multi-Directional Spatial Error Concealment Using Adaptive Edge Thresholding[J]. IEEE Transactions on Consumer Electronics,2012.58(3):880-885.
[11] 张会新,曹翱翔,胡海风. 基于FPGA和ADV212的图像实时压缩系统设计[J]. 电子器件,2016,39(2):483-486.
[12] 李玉峰,李广泽,龙科慧. 基于自适应边缘阈值及方向加权的空间错误隐藏算法[J]. 光学精密工程,2016(3):626-634.
Temporal Error Concealment Algorithm Based on Fitting Plane*
LIYufeng*,CHENRuining
(School of Electronics and Information Engineering,Shenyang Aerospace University,Shenyang 110136,China)
In a wireless transmission,H.264/AVC compressed video stream can result in lower quality of image reconstruction by the mismatch of motion vectors,a temporal error concealment algorithm based on the fitting plane interpolation algorithm is proposed. This algorithm reconstructs the motion vector of the damaged macro-block by the fitting plane algorithm,and uses the outer boundary matching algorithm to select the best motion vector to reconstruct the damaged images. This algorithm not only avoids the block effects that caused by the original algorithm,but also in different probability of RTP packet losing,the peak signal to noise ratio of the algorithm has improved 0.2 dB~0.8 dB compared to the adaptive boundary matching algorithm.
H.264/AVC;temporal error concealment;fitting plane interpolation;motion vector
项目来源:国家自然科学基金项目(61171081);辽宁省自然科学基金项目(2013024008)
2016-05-18 修改日期:2016-07-21
TN911.73
A
1005-9490(2017)03-0551-06
C:6140;6430H
10.3969/j.issn.1005-9490.2017.03.007