《电子技术应用》
您所在的位置:首页 > 其他 > 业界动态 > 一种适用于时域错误隐藏的边界匹配算法

一种适用于时域错误隐藏的边界匹配算法

2008-07-25
作者:韩合民,郭宝龙,赵连凤

    摘 要: 针对错误隐藏过程中传统边界匹配算法" title="边界匹配算法">边界匹配算法对边缘匹配的局限性,提出一种基于时域与空域平滑性的边界匹配算法。该算法引入加权的边界匹配误差:时域误差用于衡量时域的连续性;空域误差则反映边缘的连续性。实验结果表明,该算法有效解决了存在多方向" title="多方向">多方向边缘穿越受损区域情况下最优矢量的选择问题,使得恢复后的图像在边界处具有较好的连续性。
    关键词: 错误隐藏;运动矢量;边界匹配算法;边缘匹配

 

    在视频通信中,当视频码流在传输过程中丢失或受到破坏时,势必影响传输图像的质量,导致解码器端重建的视频信号的失真。在混合编码框架中,由于帧间、帧内预测以及熵编码等技术的采用,解码错误会在时间和空间上扩散,不仅破坏当前解码帧,而且会影响到后续帧,严重降低主观视觉效果[1-2]。在这种情况下, 可在解码器端对受损宏块" title="宏块">宏块进行错误隐藏,从而在不产生网络拥塞和延时问题的同时大幅提高重建图像的质量[3]
    当帧间图像发生错误时,一般采用时域错误隐藏方法,即利用图像序列的连续性,恢复受损块的运动矢量并用其运动补偿块来代替受损块进行错误隐藏。其中,恢复运动矢量主要利用运动矢量的空间和时间的相关性。参考文献[4]列举了一系列运动矢量恢复方法,如采用零矢量、参考帧相应宏块运动矢量、邻域宏块运动矢量的均值、邻域宏块运动矢量的中值等。为了获得最优的运动矢量,参考文献[5]提出更为精确的边界匹配算法BMA(Boundary Matching Algorithm),通过计算补偿块的内外边界像素变化差值来选择候选集中最优的运动矢量用于受损块重建,这一方法由于其简单、易实现等优点已被H.26L的验证模型所采纳[6]
    然而,基于BMA的错误隐藏算法仅着重于空域平滑性的利用,且在存在倾斜边缘穿越受损块的情况下对最优矢量的选择并不十分有效。针对这一问题,本文提出一种结合时域与空域平滑性的边界匹配算法。边界误差的衡量分为两部分:时域误差定义为当前帧受损块与参考帧补偿块外边界相应像素绝对差值和;空域误差则基于边缘的连续性,定义为边界区域范围内边缘的平均变化。实验结果表明,该算法较好地适用于相邻宏块间存在多方向边缘的情况,从而使得恢复后的图像在边界处具有较好的连续性。
1 边界匹配算法(BMA)
    边界匹配算法[5]用于在运动矢量候选集中选择最优的运动矢量用于受损块的重建,具体边界匹配关系如图1所示。

 

 

    首先,使用每一个候选矢量进行运动补偿,然后检查重建宏块内外边界的变化,使变化最小的候选运动矢量被确定为最终的预测。边界匹配函数如下:

   

式中,x0、y0为当前受损块左上角像素坐标,MVx、MVy分别为当前预测矢量的两个分量,Pc与Pr分别为当前帧与参考帧像素。式(1)适用于在邻域块均可用且无损接收的情况下,对于其他情况,对应的边界匹配函数应进行相应调整。
    由图1可以看出,BMA主要基于空域的平滑特征,当边界处发生像素值跃变时,将使匹配误差增大。因此,对于有垂直或水平边缘穿越受损块的情况,BMA可以有效地选择最优的预测矢量,但当存在其他方向边缘时,BMA所选择的矢量获得的补偿效果并不是最佳的,如图2所示。

 

 

2 基于时空域平滑性的边界匹配算法
    为了从预测矢量候选集中选择最佳的运动矢量,要求匹配准则" title="匹配准则">匹配准则能够准确地将最佳的矢量与其他矢量区分开来,因此,本文在匹配准则中引入了加权的边界匹配误差。基于时空域平滑特征,将边界误差的衡量分为两部分:

   

式中,α为加权因子且其值介于0~1之间。costtemporal(i)为采用第i个预测矢量时的时域误差,表示为当前帧受损块与参考帧补偿块外边界相应像素(图1)的绝对差值和:

    时域误差用于衡量当前预测矢量下时域的连续性。costspatial(i)为采用第i个预测矢量时的空域误差,表示为受损块恢复后边界区域范围内边缘的平均变化:

   

式中,M为重建块边界区域内经Sobel算子所检测出的边缘点数,为第j个边缘点的边缘方向。

   

    如图3所示,通过Sobel算子在受损块内部边界三像素宽的像素条上移动并在每个位置计算对应中心像素的梯度值,可以得到受损块边界各像素的水平与垂直梯度:Gx(x,y)、Gy(x,y),相应梯度矢量的幅度和方向角为:

   

    设定阈值T,当|G(x,y)|大于T时,像素(x,y)为边缘点。边缘方向与梯度方向垂直,其斜率表达式为:

   

对边缘点外围三点进行局部边缘点检测,重复上一步操作,再次对当前边缘点外围三点进行局部边缘点检测,由于充分考虑了边缘的特征,沿边缘走向来衡量当前恢复区域的平滑性,本文算法可以有效克服BMA对边缘匹配的局限性。

 

 

    与BMA算法相同,本文提出的匹配函数应视邻域块的可用性进行相应调整。预测矢量候选集包括:零矢量、参考帧相应宏块运动矢量、邻域可用预测运动矢量、邻域可用预测运动矢量均值、邻域可用预测运动矢量中值,候选集中所得匹配误差最小的预测矢量即为恢复出的受损块的运动矢量。
3 仿真实验
    本文实验采用JVT的JM90[7]作为测试平台" title="测试平台">测试平台,分别对QCIF格式的Foreman、Carphone、Salesman序列进行测试,编码序列采用IPPP的帧结构,测试序列长度均为50帧。为了验证本算法的有效性,选取BMA与本文算法分别在网络丢包率为5%、10%、15%的环境下进行效果比较。
    图4所示为宏块丢失率为10%时分别采用两种方法对Foreman第5帧的隐藏效果。采用BMA会造成边缘明显的不连续,但对于相对平滑的部分恢复效果比较好(图4(c))。本文算法由于充分利用了时空域的平滑特性,引入了加权的边界匹配误差并以边缘的连续性为依据,增强了对边缘匹配的适应性(图4(d))。如图4(e)所示的局部隐藏效果,本文算法较之BMA恢复后的边缘更加平滑。

 


    表1给出了测试序列在不同丢包率情况下的PSNR值比较,其中PSNRBMA为采用BMA所得的PSNR值,PSNRPRO为采用本文算法所得的PSNR值。如表中数据所示,在测试中对于不同运动类型的序列和不同的网络丢包率环境,本文提出的算法性能均优于BMA算法,是一种鲁棒性很强的算法。

 


    本文针对BMA在选择最优预测矢量时所存在的局限性,提出一种基于时域与空域平滑性的边界匹配算法。该算法引入了加权的边界匹配误差并通过对受损块内部边缘特性的分析,保证恢复后的图像边缘的连续性。实验结果表明,本文算法有效解决了存在多方向边缘穿越受损区域情况下最优矢量的选择问题,对不同类型的视频序列及在不同网络丢包率环境下均有较好的主观和客观重建图像质量。
参考文献
[1] WANG Y,WENGER S.Error resilient video coding techniques[J].IEEE Signal Processing Magazine,2000,17(4):61-82.
[2] Wenger S H.264/AVC over IP[J].IEEE Transactions on Circuits and Systems for Video Technology,2003,13(7):645-656.
[3] 马国强,郭宝龙,冯宗哲.传输图像的子波域插值恢复算法[J].电子学报,2002,30(4):552-555.
[4] HASKELL P,MESSERSCHMITT D.Resynchronization of motion compensated video affected by ATM cell loss[A].Proc ICASSP′92[C].San Francisco,CA:IEEE,1992,3:545-548.
[5] LAM W M,REILBMAN A R,LIU B.Recovery of lost or erroneously received motion vectors[A].Proc ICASSP′93[C].Minneapdis:IEEE,1993:417-420.
[6] WANG Y K,HANNUKSELA M M,VSRSA V,et al.The error concealment feature in the H.26L test model[A].Proc ICIP[C].Rochester,NY:IEEE,2002:729-732.
[7] JVT.JM90[CP].http://iphome.hhi.de/suehring/tml/download/old_jm/jm90.zip,2005.

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。