基于时空自适应预测的无损视频压缩方法

文档序号:7590412阅读:304来源:国知局
专利名称:基于时空自适应预测的无损视频压缩方法
技术领域
本发明属视频压缩技术领域,具体涉及一种基于时空自适应预测的无损视频压缩方法。
背景技术
近年来,数字图像和视频压缩在JPEG,MPEG1,MPEG2标准的基础上有了进一步的研究,出现了许多新的标准如JPEG2000,MPEG4,MPEG7。但是这些工作主要集中在有损压缩上。在很多实际的应用中,无损数字图像和视频压缩显得非常重要,例如在医学图像和遥感图像中,如果使用有损压缩,将会遗漏重要的病症和重要的目标,但是对海量的医学和遥感图像必须进行压缩以节省储存空间,提高传播效率。
视频最重要的冗余性是空间、时间和颜色空间的冗余性。空间的冗余性主要是因为帧内像素之间值的相关性,这在连续灰度的自然图像中特别明显,有很多算法都可以去除空间的冗余性,有的算法已经用于无损图像的压缩中,例如,LOCO-I,这已经成为JPEG-LS国际标准。时间冗余性主要是因为时间上很靠近的帧之间的相关性,在一些有损的视频压缩算法,例如MPEG1,MPEG2主要就是依靠有效的去除了时间上的相关性。这种相关性不仅存在于相连的帧之间,也存在于时间上比较靠近的帧之间。最后,还有另一种冗余性,这种冗余性主要是因为彩色图像各个颜色成分之间的相关性。
现有的无损图像的压缩方法,主要有基于MED预测器的LOCO-I[8],基于整数小波变换的JPEG2000[9],基于上下文的自适应预测编码(CALIC)[2][3]。在无损视频压缩方面,Memon等人1996年提出了一种时间域和空间域混合的压缩方法[6]。1998年,X.Wu.等人提出了带间的CALIC算法[7],2002年,Elias Carotti等提出了帧间邻域后向自适应预测器和帧内空间域预测器[1]。这些压缩算法的压缩率根据视频流的不同一般在2-3倍之间。如果把JPEG-LS和CALIC直接用于无损视频的压缩,由于没有考虑视频在时间上的相关性,所以压缩率不高。在[7]中的算法虽然考虑了时间和空间预测的融合,但是没有采用自适应的方法,所以压缩率提高不多,[1]中的算法使用了新的时间域预测器,降低了算法复杂度,但是也降低了预测的性能。2001年,G.C.K.Abhayaratne分析了对运动补偿以后的残差图像的小波变换不能有效的降低熵,也就不能进行有效的压缩[5]。
参考文献1.Elias Carotti,Juan Carlo De Martin,Angelo Raffaele Meo Backward-adaptivelossless compression of video sequences.General Dynamics Decision Systems,2002,P.1817.
2.Wu,X.and Memon,N.D.Context-based adaptive lossless image coding.IEEETransaction in Communication,1997,Vol.45,P.437-444.
3.Nasir Meno,Xiaolin Wu,Recent development in context-based predictivetechniques for lossless image compression.The Computer Journal,1997,Vol.40,No.2/3.
4.Ali Bilgin,George Zweig,and Michael W.Marcellin,Three-dimensional imagecompression with integer wavelet transforms.Applied optic,2000,Vol.39,No.11.
5.G.C.K.Abhayaratne,D.M.Monro,Embedded to lossless coding of motioncompensated prediction residuals in lossless video coding.Proceeding of Spie,2001,Vol.4310.P.175-1856.N.D.Memon and K.sayood,lossless compression fo video sequences,IEEETransaction on Communications,1996,vol.44,no.10,P.1340-1345.
7.X.Wu.W.Choi,N.Memon,”lossless interframe Image compression via ContextModeling,”in Proceedings of Data Compression conference,1998,P.378-387.
8.Weinberger,M.J.,Seroussi,G.and Sapiro,G.LOCO-Ia low complexity losslessimage compression algorithm.ISO Working Document(1995)ISO/IEC JTC1/SC29/WG1N203.
9.M.D.Adams and F.Kossentini,Reversible Integer-To-Integer Wavelet TtansformsFor Image CompressionPerformance Evaluation And Analysis,IEEE Trans.ImageProcessing,2000,Vol.9,No.6,pp.1010-1024.
10.Y.Huang,H.M.Dreizen and N.P.Galatsanos,Prioritized DCT for compression andprogressive tansmission of Images,IEEE trans.On Image Proc.(IP),Vol.2,No.4,pp.477-487,1992。

发明内容
本发明的目的在于提出一种压缩效果好的基于时空自适应预测的无损视频压缩方法。
本发明提出的基于时空自适应预测的无损视频压缩方法,其步骤如下在帧内利用GALIC中的GAP预测方法,进行空间域预测,在帧间利用运动估计的时间域预测方法,进行时间域预测,然后用自适应的融合方法得到融合的预测结果;再根据时间域和空间域的预测结果得到编码上下文,最后利用编码上下文对预测误差进行熵编码。下面分别介绍各个步骤。
1空间域上的预测空间域的预测是采用与CALIC中相同的GAP预测器,这一步的目的是去除帧内的相关性。
CALIC[2]在无损图像压缩中具有优越的性能,很大一部分原因是因为采用了GAP(梯度自适应预测)预测器,它使用当前像素的邻域信息对该像素进行十分精确的预测,使预测的误差尽可能小,然后进行熵编码,编码效率大大提高。其当前像素点P(i,j)的邻域如图1所示。
GAP是用图中给出的邻域N,W,NW,NN,NE,NNE预测当前像素的值,它是一种梯度自调整预测器,这种预测器根据局部梯度调整预测值,提供了比一般线性预测器更加好的性能。GAP根据邻域的梯度预测当前像素值P(i,j)。其水平和垂直梯度分别为dh=|W-WW|+|N-NW|+|N-NE| (1)dv=|W-NW+|N-NN|+|NE-NNE|(2)然后通过下面的步骤得到P(i,j)预测值 如果dv-dh>T1,则P^l(i,j)=W,]]>否则,如果dv-dh<-T1,则P^l(i,j)=N,]]>否则P^1(i,j)=(N+W)/2+(NE-NW)/4,]]>如果dv-dh>T2,则P^1(i,j)=(P^1(i,j)+W)/2,]]>否则,如果dv-dh>T3,则P^1(i,j)=(3P^1(i,j)+W)/4,]]>否则,如果dv-dh<-T2,则P^1(i,j)=(3P^1(i,j)+N)/2,]]>否则,如果dv-dh<-T3,则P^1(i,j)=(3P^1(i,j)+N)/4.]]>其中T1,T2,T3是预测过程中使用的阈值。在我们的实验中是采用了[2]中提出的一组实验值T1=80,T2=32,T3=8,这些值是根据大量的实验得到的,在特定的应用中可以根据图像的分辨率和图像的特征进行调整。
2时间域上的预测时间域的预测是与视频压缩MPEG标准中普遍采用的方法相同,采用运动估计的方法,它是以16×16的宏块为单元,把当前宏块看作前一帧的某一个宏块的位移而得到的,通过搜索使下列的代价函数最小而找到了前一帧的匹配宏块,代价函数如下所示DFD(β)=Σ(x,y)∈Nβ|Pr(x,y)-P1(x+vx,y+vy)|---(3)]]>其中Pr(x,y)和Pl(x,y)分别代表当前帧和前一帧宏块在(x,y)上的灰度值,Nβ表示宏块β中的各个像素点,(vx,vy)为运动矢量。当DFD(β)达到最小的时候(vx*,vy*)=arg(minDFD(β))]]>其中(vx*,vy*)为最优的运动矢量,则时间域预测可以表示为P^2(i,j)=P1(x+vx*,y+vy*)---(4)]]>这里的 表示当前帧的宏块在(i,j)上的灰度值,可用前一帧的Pl(x+vx*,y+vy*)]]>宏块上在相应位置上的灰度预测。
3预测的融合前面两步中,我们分别得到空间域和时间域的预测,记空间域的预测是 记时间域的预测是 我们用下面的公式对时间域预测和空间域预测进行融合,记融合以后的预测是 P^(i,j)=a(i,j)×P^1(i,j)+b(i,j)×P^2(i,j)]]>其中a(i,j),b(i,j)是融合用的系数,是根据前面一些点的预测估计出来的,各个像素的a(i,j),b(i,j)是自适应调整的。a(i,j),b(i,j)用下面的公式得到ERR1(i,j)=|P(i-1,j)-P^1(i-1,j)|+|P(i,j-1)-P^1(i,j-1)|---(5)]]>ERR2(i,j)=|P(i-1,j)-P^2(i-1,j)|+|P(i,j-1)-P^2(i,j-1)|---(6)]]>a(i,j)=ERR2(i,j)ERR1(i,j)+ERR2(i,j),]]>b(i,j)=ERR1(i,j)ERR1(i,j)+ERR2(i,j)---(7)]]>其中P(i,j)为(i,j)点的像素灰度的真实值,a(i,j),b(i,j)的意义可以这样理解,a(i,j)+b(i,j)=1,a(i,j)是预测器 的权重,b(i,j)是预测器 的权重,我们先计算得到当前像素点(i,j)的左边一点(i-1,j)和上面一点((i,j-1)的空间域的预测误差的绝对值的和ERR1(i,j),以及当前像素点(i,j)的左边一点(i-1,j)和上面一点(i,j-1)的时间域预测误差的绝对值的和ERR2(i,j)。空间预测或时间预测中误差小的其权值就大,这样我们就得到a(i,j)b(i,j)的公式。因为a(i,j),b(i,j)是根据图像的位置而自适应变化的,而且a(i,j),b(i,j)的值是根据当前点的上面一点和左边一点的真实值和预测值算出来的,在解码时候也可以用相同的方法计算出a(i,j),b(i,j)的值,这样在编码的时候就不必要保存a(i,j),b(i,j)的值4编码上下文通过时间域和空间域的融合预测,视频流还是没有达到最佳的编码效率,采用基于上下文的编码,可以进一步提高压缩率。基于上下文的编码是指对要编码的误差图像,根据不同的上下文分成不同的子集,对每个不同的子集分别进行编码。这种分类以后进行编码的理论基础是,可以通过把一组源分成不同的几组非空并且不相交的子源来减小这组源的平均熵[10]。这个原理表示如下把源Xi分成M个不同的子源序列Xik,其中1≤k≤M。
定义原来源的平均熵H(Xi)=Σr=1R-Prlog2Pr---(8)]]>其中,R表示原来源的符号的个数,Pr表示原来源中第r个符号在原来源中出现的概率,定义子源的平均熵H‾(Xik)=Σk=1MH(Xik)=Σk=1MLkN{Σr=1R-Prklog2Prk}---(9)]]>其中Prk表示第k个子源中第r个符号在这个子源中出现的概率,Lk表示第k个子源的样本数目,N表示原来源中符号的总样本数。
有下面的定理[10]H‾(Xik)≤H(Xi)---(10)]]>根据上面的理论,我们对误差图像根据一定的上下文进行分类,然后进行编码,这就是基于上下文的编码。在基于上下文的编码中,会碰到一个问题,也就是上下文数目的选择,在图像中,可以选择的上下文的数目是非常大的,这样就会导致一个问题,在有些上下文中,样本的数目非常少,这样熵编码就会产生问题。所以基于上下文的编码中一个非常关键的一个问题是减少上下文的数目。
在这里,我们采用时间域预测和空间域预测之差的绝对值C作为编码的上下文。
C=|P^1(i,j)-P^2(i,j)|---(11)]]>对C进行6级量化。量化系数是q1=4,q2=8,q3=16,q4=32,q5=64,这些值都是实验数据,在实际应用中可以进行优化设计。也可以采用更多级的量化,但是提高的压缩率不太明显。
5.熵编码,最后利用编码上下文对预测误差进行熵编码,这是常规方法,这里不作重复。
本发明的优点本发明提出了一种时间预测和空间预测相结合的编码方案,配合自适应的融合技术,然后采用基于上下文的熵编码技术,对视频序列进行无损压缩,使无损视频压缩的效果比起用JPEG-LS或者CALIC进行压缩平均优10%。


图1、两维邻域的预测模板。
图2、ATSVC-LS的框图。
图3、children运动序列的第20帧(a)和第21帧(b)。
图4、运动补偿的预测误差(a)和GAP预测的预测误差(b)。
图5、融合预测的预测误差。
具体实施例方式
用176×144像素的children运动序列对本发明提出的算法进行了模拟。第20帧和第21帧图片的原图如图3所示。我们给出三种不同的预测方法的预测误差作为对比,为了比较我们的方法和其他的方法的性能,我们用预测以后的误差图像的熵进行比较,熵越小,在做无损熵编码时压缩率也越高。
使用运动估计方法进行预测,运动估计的预测误差如图4左,误差图像的熵是2.81用GAP进行预测,得到的预测误差如图4右,误差图像的熵是5.09。对这两个预测结果进行融合,得到的预测误差如图5,预测误差的熵是2.48,用上面的方法根据编码上下文求得预测误差的条件熵是2.21。根据图4和图5可以看出,用时间域和频率域融合预测的方法使预测结果更加准确,所以有效的降低了预测误差的熵。同时,使用基于上下文的编码方法,进一步减小熵,从而提高了压缩效率。
最后我们用claire,salesman,miss,children运动序列的第1帧到第100帧共100帧,对我们的算法进行了测试,并和无损JPEG,CALIC和GAP预测等方法进行比较,其结果如表1。

*ATSVC-LS本文的方案表1 测试结果本发明提出的基于时空自适应预测的无损视频压缩方法(ATSVC-LS),很好的利用了时间域和空间域的预测,采用了自适应的融合方法,提高了预测的准确度,同时利用基于上下文的条件编码技术。所以大大的提高了压缩性能。根据实验结果,我们的方法比采用JPEG-LS或者CALIC的算法对视频进行无损压缩其压缩率提高近10%。
权利要求
1.一种基于时空自适应预测的无损视频压缩方法,其特征在于具体步骤如下在帧内利用GALIC中的GAP预测方法,进行空间域预测,在帧间利用运动估计的时间域预测方法,进行时间域预测,然后用自适应的融合方法得到融合的预测结果;再根据时间域和空间域的预测结果得到编码上下文,最后利用编码上下文对预测误差进行熵编码。
2.根据权利要求1所述的无损视频压缩方法,其特征在于时间域预测为P^2(i,j)=P1(x+vx*,y+vy*)---(4)]]>这里(vx,*vy*)=arg(minDFD(β))]]>而DFD(β)=Σ(x,y)∈Nβ|Pr(x,y)-Pl(x+vx,y+vy)|---(3)]]>其中Pr(x,y)和Pl(x,y)分别代表当前帧和前一帧宏块在(x,y)上的灰度值,Nβ表示宏块β中的各个像素点,(vx,vy)为运动矢量。
3.根据权利要求1所述的无损视频压缩方法,其特征在于融合后的预测为 P^(i,j)=a(i,j)×P^1(i,j)+b(i,j)×P^2(i,j)]]>这里, 为空间域上的预测, 为时间域上的预测,a(i,j),b(i,j)由下式得到a(i,j)=ERR2(i,j)ERR1(i,j)+ERR2(i,j),]]>b(i,j)=ERR1(i,j)ERR1(i,j)+ERR2(i,j)---(7)]]>其中ERR1(i,j)=|(P(i-1,j)-P^1(i-1,j)|+|(P(i,j-1)-P^1(i,j-1)|---(5)]]>ERR2(i,j)=|(P(i-1,j)-P^2(i-1,j)|+|(P(i,j-1)-P^2(i,j-1)|---(6)]]>P(i,j)为(i,j)点的像素灰度的真实值。
4.根据权利要求1所述的无损视频压缩方法,其特征在于采用时间域预测和空间域预测之差的绝对值C作为编码的上下文C=|P^1(i,j)-P^2(i,j)|---(11)]]> 的含义同上。
全文摘要
本发明为一种基于时空自适应预测的无损视频压缩方法。该方法把时间预测和空间预测相结合,配合自适应的融合技术,然后采用基于上下文的熵编码技术,对视频序列进行无损压缩。本发明方法的压缩的效率比现有的无损视频压缩方法提高10%。
文档编号H04N7/32GK1585486SQ20041002471
公开日2005年2月23日 申请日期2004年5月27日 优先权日2004年5月27日
发明者张明锋, 张立明, 胡波 申请人:复旦大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1