视频编码和解码方法

文档序号:7642159阅读:346来源:国知局
专利名称:视频编码和解码方法
技术领域
本发明涉及通过包含空间和时间滤波步骤的三维(3D)子带分解对帧序列进行编码的方法,将该空间和时间滤波步骤应用到与作为3D空间的所述帧序列相对应的3D空间与时间数据中,仅在每级的时间分解上在低频时间子带中对所述帧实施运动估计和补偿操作之后将所述分解应用于连续帧组中,补偿操作在滤波像素中产生了与在运动的过程中无覆盖的区域相对应的双连接像素。本发明还涉及对通过这种编码方法在前编码的信号进行解码的方法。
在这种3D法中,将帧的序列作为3D空间处理,由此通过应用可分离的变换例如通过滤波器组实施的子波或子波包变换将在图象编码中所使用的经典的子带分解延伸到3D空间与时间数据中。这在这种3D结构中存在各向异性,但需要通过在空间方向和时间方向上应用不同的滤波器组来考虑它(由于应用较长的滤波器的附加延迟是不希望的,所以通常应用Haar滤波器;此外,由于Haar滤波器是双抽头滤波器,因此它是仅有的不出现边界效应的理想的重构正交滤波器)。
在每个时间分解等级上在低频时间子带中通过执行运动估计/补偿来改善这种3D编码方案的编码效率。例如在J.R.Ohm的“Three-dimensional subband coding with motion compensation”(IEEETransactions on Image Processing,Vol.3,No5,September,pp.559-571)中显示,对于给定的比特率运动补偿3D子带编码产生了比经典的预测方案更好的图象和峰值信号噪声比(PSNR)的结果(在所述文献中,应用在时域中的Haar滤波器和在空间域中的2D离散子波变换或者DWT)能够执行全动补偿的3D子带分解)。
然而,如附

图1所示,运动分解造成了有些点滤波两次或根本没有滤波。在附图1的左边部分中,A和B分别表示先前帧和当前帧,(a1至a6),(b1至b6)分别是所述帧的像素(BBY=块边界)。附图1的右边部分所示为与块匹配相结合的运动补偿时间滤波的过程。当沿着运动轨迹对连接的像素进行滤波时,由于匹配的块与相邻的块叠加(除了在没有运动或平移运动以外),通常出现双连接和未连接的像素。
在所述文献中所采用的解决未连接的像素的策略如下对于在当前帧中的未连接的像素(比如b1),将原始像素值插入到时间低频(L)子带。在前帧中的未连接像素(比如a3和a4)被与相邻像素相同的运动矢量相关。在未连接的像素位置上使在运动方向进行高通滤波的结果进入时间高频(H)子带(在Haar滤波器的情况下,这表示移位帧差)。还提出了通过应用恰于先前帧之前的重构帧对在先前帧中的未连接的像素执行运动补偿预测的建议。由滤波得到的时间子带替换原始的帧时间低频(L)子带替代当前帧,时间高频(H)子带替代参考帧。
在S.J.Choi等人的“Motion-conpensated 3-D subband codingof video”(IEEE Transactions on Image Processing,Vol.8,No2,February,pp.155-167)中描述了解决未连接的像素的另一方法,如附图2所示。对于在先前帧中的未连接像素(比如a3和a4),将原始值插入到时间低频子带中,这比在第一次引用的文献中所描述的策略产生更好的视觉结果。对于在当前帧中的未连接像素(比如b1),采用DFD(移位帧差)值。通过使运动估计的方向与运动补偿相同,最佳可用的运动矢量用于这种DFD值,而不需要附加的运动估计。如附图2的右部所示,时间子带被不同地重新定位时间低频(L)子带代替参考帧,而时间高频(H)子带代替当前帧。在未连接的像素的情况下比第一次引用的文献的策略更适合,因为高频子带具有较小的能量,并且与用于未连接的像素的DFD值相容。
总之,应用如下的关系(1)至(3)(1)H[m,n]=12(B[m,n]-A~[m-dm,n-dn]),]]>(2)L[m-d‾m,n-d‾n]=12(B~[m-d‾m+dm+A[m-d‾m,n-d‾n])]]>用于连接的像素,以及(3)L[m,n]=2.A[m,n]]]>用于未连接的像素,这里(m,n)表示像素的位置,H[m,n],L[m,n]是时间高频和低频子带,A[m,n],B[m,n]是先前的和当前的帧,[dm,dn]是在两个所考虑的连续帧A和B之间估计的运动矢量的像素,dm,dn是dm,dn的最接近的整数,如果运动像素是子像素精度则 是插值。在多重连接的像素的情况下,应用相遇的第一对(A,B)计算A。
事实上,当在运动的过程中紧密地接近覆盖/未覆盖区的像素时就出现未连接和双连接像素的问题。实际中,当在时间T时在帧中具有共同部分的两个目标在时间T+1时分开时,通过运动补偿将在当前帧的两个区域对应到在参考帧中的相同区域这是未覆盖区域,在给出关系式(1)至(3)的先前的分析的情况中这种区域作为双连接出现。在附图3中示出了可能的情况,其中FA表示属于前景目标1的前景区,UR表示当所述区域变成清晰时(即它们并不重叠)背景目标2的未覆盖区。在第二次引用的文献中所描述的方法将在运动估计过程中所遇到的第一块关联到这些像素中。
为此,本发明涉及编码方法,比如在说明书的发明领域部分中所定义的编码方法,此外这种方法的特征还在于它包括如下的步骤(1)在先前参考帧A和当前帧B之间的运动补偿时间滤波步骤,所述步骤本身包括首先高频子带的计算子步骤,其后为仅应用参考帧A和先前计算的高频子带来计算低频子带的子步骤,所述计算根据如下的关系式执行H[m,n]=(B[m,n]-A~[m-dm,n-dn])/2,]]>L[m-d‾m,n-d‾n]=H~[m-d‾m+dm,n-d‾n+dn]+2A[m-d‾m,n-d‾n]]]>用于连接的像素,(c)L[m,n]=2.A[m,n]]]>用于未连接像素,这里(m,n)表示像素的位置,H[m,n],L[m,n]是时间高频和低频子带,A[m,n],B[m,n]是连续的先前帧和当前的帧,[dm,dn]是在两个所考虑的连续帧A和B之间估计的运动矢量的像素,dm,dn是dm,dn的最接近的整数,以及 是插值;(2)当与双连接像素相关时识别所述未覆盖区的步骤,这些像素导致在详细子带中的最小的能量;(3)判定步骤,在当前帧中选择用于参考帧的双连接像素的时间滤波的导致详细子带的最小能量的相应的像素。
如果在参考帧中两个目标1和2重叠(附图3的左部分),在这两个目标之中的一个目标中存在封闭区域,只有属于另一个目标的前景区域FA可用。如果在当前帧中这些目标分离(附图3的右边),运动估计算法将识别当前帧内的两个区域用于补偿。由于实际的运动对应于在目标1中的前景区,因此在目标2中的未覆盖区UA造成了详细子带的更高的能量,其代表在补偿参考帧和当前帧之间的差。实际上,如果真实运动对应于目标1,这种差在前景区的情况中将很小,但对于目标2的未覆盖区较高。根据本发明,应用这种观测来选择进行时间滤波过程的正确的像素。
本发明还涉及对通过这种方法先前编码的数字信号进行解码的方法,所述解码方法的特征在于通过基于在低频和高频子带中的相应的像素值的计算步骤重构参考帧和当前帧A和B的像素,根据如下的关系式进行所述计算A[m-d‾m,n-d‾n]=12(L[m-d‾m,n-d‾n]-H~[m-d‾m+dm,n-d‾n+dn])]]>(用于连接像素)A[m,n]=12.L[m,n]]]>(用于未连接像素)(c)B[m,n]=2H[m,n]+A~[m-dm,n-dn].]]>
附图1所示为未连接和双连接像素的问题并涉及用于解决所述问题的第一种策略。
附图2涉及解决这个问题的另一种策略。
附图3所示为未覆盖区的问题。
本发明的详细描述在描述本发明的基本原理中,首先通过不同地表述允许计算时间分析的详细子带和近似值给出运动补偿时间滤波的原始分析。然后说明,为执行这种计算,可以在连接到在参考子带中的相同像素的像素之间选择与真实运动相对应的一个像素。通过这些像素形成的区域使高频子带的能量最小。
实际上,对于连接的像素,关系式(2)可以重新写为如下的形式(4)L[m-d‾m,n-d‾n]=H~[m-d‾m+dm,n-d‾n+dn]+2A[m-d‾m,n-d‾n]]]>它允许首先应用关系式(1)计算高频子带,然后仅应用参考帧和先前计算高频子带计算低频子带,如关系式(4)所示。在涉及该分析部分的地方中,基于在低和高频子带中的相应像素值,很容易地应用关系式(1)、(4)和(3)来在参考帧和当前帧中获得完美的重构像素;(5)A[m-d‾m,n-d‾n]=12(L[m-d‾m,n-d‾n]-H~[m-d‾m+dm,n-d‾n+dn])]]>用于连接像素,以及(6)A[m,n]=12.L[m,n]]]>用于未连接像素。一旦得到在参考帧中的这些值,就可以计算当前帧的值(7)B[m,n]=2H[m,n]+A~[m-dm,n-dn].]]>在参考帧中在双连接的像素的情况下(例如在位置(p,q)上的像素),考虑在位置(m1,n1)和(m2,n2)上通过运动估计算法找到的两个像素,这意味着,如果两个相应的运动矢量为(dm1,dn1)和(dm2,dn2)m1-dm1=m2-dm2=p (8)n1-dn1=n2-dn2=q (9)然后将先前的关系式(1)和(4)应用到下述的两对像素的每一对像素中 和 应该注意的是,对于在当前帧中的两个像素在详细子带中的值不相同。因此,应用这两个值中的任一个值都可以计算在近似子带中的值。通过首先计算在参考帧中的值,然后利用关系式(7)计算在当前帧中的值,应用这两个值都能够进行完美的重构。
如上文所述,这两个区域中的一个区域对应于真实的目标运动,而由于相同的运动造成另一个目标成为未覆盖。第一种情况在高频子带中导致了最小的能量,未覆盖区具有在前景区中的不同的值。因此,选择正确的值的一种标准是使详细子带的能量最小。这导致L[p,q]=H~[m0-d‾m0+dm0,n0-d‾n0+dn0]+2A[p,q]---(14)]]>以致于||H~[m0-d‾m0+dm0,n0-d‾n0+dn0]|=]]>min(|H~[m-d‾m+dm,n-dn+dn]|,∀(m,n)∈P(p,q)---(15)]]>这里P(p,q)是在当前帧中连接到在参考帧中的像素(p,q)的所有的像素(m,n)的集合。
在实际中,通过将一标志与在低频子带中的每个像素关联起来来执行这种最小化当在所述子带中的像素再定位在先前帧中时,也将这个标志关联到在该帧A中的相应位置。如果在帧B中不存在连接到在帧A中所考虑的像素的像素,则该标志仍然保留在位置“0”。从当前帧的像素每次指向到在与该标志相关的参考帧中的位置时它递增。
如果该标志的值为“0”,则应用关系式(12)计算在高频子带中的值,而应用关系式(13)计算在低频子带中的值。如果标志不为“0”,在任何时候建立在A和B之间的连接,如前面所述应用关系式(12)计算在高频子带中的值,并将绝对值与已有的值进行比较。如果所述绝对值小于先前所计算的高频值的绝对值,则应用它来更新应用关系式(13)所计算的低频值。
本发明还涉及对通过如上文所描述的编码方法对数字信号进行解码的方法。在解码器侧中再现在编码侧所实施的操作顺序以便在帧B中找到连接到在帧A中所考虑的像素的像素并产生最小能量的高频子带。
权利要求
1.一种通过包括空间和时间滤波步骤的三维(3D)子带分解对帧序列进行编码的方法,将该空间和时间滤波步骤应用到与作为3D空间的所述帧序列相对应的3D空间与时间数据中,仅在每级的时间分解上在低频时间子带中对所述帧实施运动估计和补偿操作之后将所述分解应用于连续帧组中,补偿操作在滤波的像素中导致了与在运动期间变成无覆盖的区域相对应的双连接像素,所述方法进一步的特征在于它包括如下的步骤(1)在先前参考帧A和当前帧B之间的运动补偿时间滤波步骤,所述步骤本身包括首先计算高频子带的分步骤,其后为仅应用参考帧A和先前计算高频子带计算低频子带的分步骤,所述计算根据如下的关系式执行(a)H[m,n]=(B[m,n]-A~[m-dm,n-dn])/2,]]>(b)L[m-d‾m,n-d‾n]=H~[m-d‾m+dm,n-d‾n+dn]+2A[m-d‾m,n-d‾n]]]>用于连接像素,(c)L[m,n]=2.A[m,n]]]>用于未连接像素,这里(m,n)表示像素的位置,H[m,n],L[m,n]是时间高频和低频子带,A[m,n],B[m,n]是连续的先前帧和当前的帧,[dm,dn]是在两个所考虑的连续帧A和B之间估计的运动矢量的像素,dm,dn是dm,dn的最接近的整数,以及 是插值;(2)当与双连接像素相关时识别所述未覆盖区的步骤,这些像素在详细子带中导致最小的能量;(3)判定步骤,在当前帧中选择用于参考帧的双连接像素的时间滤波的导致详细子带的最小能量的相应的像素。
2.一种对根据权利要求1所述的编码方法已经编码的数字信号进行解码的方法,所述解码方法的特征在于通过基于在低频和高频子带中的相应的像素值的计算步骤获得参考帧和当前帧A和B的像素的重构,根据如下的关系式进行所述计算(a)A[m-d‾m,n-d‾n]=12(L[m-d‾m,n-d‾n]-H~[m-d‾m+dm,n-d‾n+dn])]]>(用于连接像素)(b)A[m,n]=12.L[m,n]]]>(用于未连接像素)(c)B[m,n]=2H[m,n]+A~[m-dm,n-dn].]]>
全文摘要
本发明涉及通过三维(3D)子带分解对帧序列进行编码的方法,这种子带分解包含将空间和时间滤波步骤。仅在每级的时间分解上在低频时间子带中对所述帧实施运动估计和补偿操作之后将所述分解应用于连续帧组中。在先前参考帧A和当前帧B之间的运动补偿时间滤波步骤包括首先计算高频子带的分步骤,之后为计算低频子带的分步骤。当涉及到双连接时,这个滤波步骤之后是在运动过程中未覆盖区的识别步骤,这个识别步骤之后为判定步骤,对于参考帧的双连接像素的时间滤波,该决定步骤用于在当前帧中选择产生详细子带的最小能量的相应的像素。本发明还涉及相应的解码方法。
文档编号H04N7/32GK1366777SQ01800889
公开日2002年8月28日 申请日期2001年3月30日 优先权日2000年4月11日
发明者B·佩斯奎特-波佩斯库 申请人:皇家菲利浦电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1