一种基于对象的分形视频压缩与解压缩方法

文档序号:7748277阅读:146来源:国知局

专利名称::一种基于对象的分形视频压缩与解压缩方法
技术领域
:本发明属于视频压缩编码领域,涉及分形视频压缩编码,特别涉及一种基于对象的分形视频压缩编码方法。
背景技术
:基于对象(Object-Based,简称0B)编码的概念最早由MPEG-4标准提出,使用基于对象的视频压缩编码方法使得每一帧视频的前景对象和背景对象得以独立的进行编码,可以进一步提高压缩比,同时在解码端可以实现一些新的功能,比如针对每一个视频对象的独立的传输和解码、对象和背景的替换、基于对象的视频检索、特别是相对于标准的编码方法,在对象的边界上可以获得更好的图像质量,因为物体的边界通常和图像中的边缘相重合是编码困难的部分。基于对象的视频编码方法可以提高视频压缩编码的性能并使其具有更多的灵活性。分形理论最初由Mandelbrot于上世纪70年代提出(参见BenoHB.Mandelbrot.TheFractalGeometryofNature[Μ].NewYorkH.FreemanandCompany,1982.)。分形编码的数学基础是迭代函数系统(IFS)理论。Barnsley首先将分形编码用于交互式图像压缩(参见MichaelF.BarnsleyiAlanD.Sloan.Abetterwaytocompressimage[J].ByteMagazine,1988,13(1):215_233·)。Jacqain提出了全自动的分形图像压缩方法(参见ArnaudE.Jacquin.Anovelfractalblocking-codingtechniquefordigitalimage[C].IEEEInternationalConferenceonAcoustics,SpeechandSignalProcessing,1990,42225~2228.),(参见ArnaudΕ.Jacquin.Fractalimagecodingareview[J].ProceedingoftheIEEE,1993,81(10):1451_1465.),该方法釆用基于图像分块的方式以局部的仿射变换代替全局的仿射变换。之后,Fisher利用四叉树改进了这一方法(参见Y.Fisher.FractalImageCompression[J].Fractals,1994,2(3)347-361.),(参JALY.Fisher,E.W.Jacobs.Imagecompression:Astudytheiteratedtransformmethod[J].SignalProcessing,1992,29(3),251-263.),(参见Y.Fisher.FractalImageCompression:Theoryandapplicationtodigitalimages[M].NewYorkSpring-Verlag,1995,55-77.),大大提高了编码效率,并成为目前分形图像编码中的主流方法。在此基础之上,一些学者和研究人员把分形图像压缩的方法应用到视频序列的压缩上。MeiqingWang等提出了结合基于数据立方体和基于帧的分形视频压缩方法(参见MeiqingWang,Choi-HongLai.Ahybridfractalvideocompressionmethod[J].Computers&MathematicswithApplications,2005,50(3-4):611_62L),(参见MeiqingWang,ZhehuangHuang,Choi-HongLai.Matchingsearchinfractalvideocompressionanditsparallelimplementationindistributedcomputingenvironments[J].AppliedMathematicalModeling,2006,30(8):677-687.),(#BMeiqingWang,RongLiu,Choi-HongLai.Adaptivepartitionandhybridmethodinfractalvideocompression[J].Computers&MathematicswithApplications,2006,51(11)1715-1726.)ο其中最为经典和影响较大的参见(C.S.Kim,R.C.Kim,S.U.Lee.Fractalcodingofvideosequenceusingcircularpredictionmappingandnoncontractiveinterframemapping[J].IEEETransactionsonImageProcessing,1998,7(4)601-605.)。该方法采用类似于标准视频编码方法所采用的运动估计/补偿技术,该方法利用了相邻帧之间的时间强相关性,对视频序列压缩取得了较好的效果。在CPM和NCIM中,子块域中的每个图像块都由来自相邻帧相同大小的父块域通过运动补偿得到。CPM和NCIM两者间最大的不同在于CPM在解码的过程中需要具备收敛性,而NCIM不需要。但是在循环预测编码(CPM)方法中,为了保证起始帧经过自身的循环解码能够近似收敛到原来的图像,压缩过程需要经过复杂变换、搜索和迭代等,压缩时间和图像质量难以达到要求。目前典型的分形图像和视频压缩方法的运算量很大,编码速度较慢,并且解码的质量有待提高,使得分形图像和视频压缩方法还需要进一步的改进和提高。
发明内容本发明提出了一种基于对象的分形视频压缩与解压缩方法,该方法是基于视频内容,利用分形迭代原理进行视频编码的一种新型视频压缩编码方法。首先利用视频分割方法获得视频对象分割平面即Alpha平面,对起始帧采用块DCT变换编码,对非I帧进行块运动估计/补偿编码,首先计算与子块域和父块域相关子块的像素和与像素平方和,然后在前一帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方法压缩迭代函数系统系数。对应的解压缩过程为对I帧采用反DCT变换的方式解码,对非I帧进行Huffman反编码获得迭代函数系统系数,然后进行基于宏块的解码,首先计算父块域相关子块的像素和与像素平方和,然后依次对当前帧中的每一个宏块进行解码。本方法引入了基于对象编码的方法并改进了传统分形视频压缩方法,不但大大提高了压缩比和峰值信噪比,而且提高了编码速度,进一步提高了分形视频压缩编码的性能,使其更加具有灵活性和实用性。一种基于对象的分形视频压缩方法,包括以下步骤步骤一利用自动视频对象分割方法对视频序列进行自动分割,获取每一帧的视频对象分割平面即Alpha平面,根据得到的视频对象分割平面确定要编码的视频对象区域把正在进行压缩的帧称为当前帧,把当前帧的已经编码并重建的前一帧称为参考帧;步骤二若当前帧为I帧,则采用基于块DCT变换的I帧帧内图像压缩方法,对其进行单独编码和解码,解码之后的像素若属于Alpha平面中待编码的视频对象则保留该像素值,否则置零;转入步骤七;所述I帧为视频序列的起始帧或者视频序列中只进行帧内编码的图像帧;所述块DCT变换中的块采用固定大小模式;步骤三若当前帧为非I帧,在进行块匹配之前,则首先对当前帧进行互不重叠的宏块划分,然后计算这些宏块及其经树状划分得到的小块的像素和与像素平方和,以及前一帧重建图像即参考帧中按照设定步长划分的所有宏块及其经树状划分得到的小块的像素和与像素平方和,以减少块匹配过程中的重复计算;转到步骤四,即从第一个宏块开始处理;所述宏块为将当前帧划分为固定大小的互不重叠的图像块;所述小块为将当前宏块进行树状划分得到的块;所述当前帧的所有块的集合称为子块域,所述前一帧的所有块的集合称为父块域;步骤四对当前正在处理的图像块即当前块,利用Alpha平面判别该图像块的区域属性;如果该块不在当前编码的视频对象区域内,对该块不做处理;如果该块全部都在当前编码的视频对象区域内,转入步骤五;如果该块的部分像素在当前编码的视频对象区域内,部分像素不在当前编码的视频对象区域内,需要单独处理,转入步骤六;如果所有的宏块都已处理完毕,则转到步骤七;所述不在当前编码的视频对象区域内的块称为外部块,所述全部都在当前编码的视频对象区域内的块称为内部块,所述部分像素不在当前编码的视频对象区域内的块为边界块;步骤五在父块域中的搜索窗口内首先对当前块进行块匹配,如果匹配误差RMS小于开始设定的阈值Y,保存当前的迭代函数系统系数即IFS系数,返回步骤四,进行下一宏块的匹配;否则,依次按照树状结构对该块进行划分,并对各个划分得到的小块分别计算匹配误差RMS,如果RMS小于设定阈值Y,停止划分并记录该小块IFS系数,返回步骤四,进行下一宏块的匹配;否则继续划分,直到将当前块划分为预先设定的最小块,记录IFS系数;返回步骤四,进行下一宏块的匹配;步骤六该步骤单独处理边界块,当前帧的边界块只在父块中的属于边界块和内部块中搜索匹配,当前块和父块的像素选取准则是在当前块中只计算位于当前编码的视频对象区域内的像素值,只在参考帧的相同视频对象区域内进行块匹配;对于父块中,如果与当前块的相对应位置的父块中的某一像素也属于该视频对象区域,则采用原像素值,否贝U,用其它属于该视频对象区域像素的平均值代替;按照所述当前块和父块的像素选取准则确定当前块和父块的像素值后,计算子块与父块的匹配误差RMS,如果RMS小于阈值γ,则保存当前所得系数,否则将当前的边界块划分为小块,对每个小块分别返回步骤四进行处理;步骤七对所有IFS系数进行Huffman编码,降低IFS系数数据的统计冗余;判断当前帧是否为最后一帧,如果是最后一帧结束编码;否则,返回步骤二继续处理下一帧图像。所述一种基于对象的分形视频压缩方法,处理的视频序列为YUV格式,分别对3个分量中的每个采用上述七个步骤进行处理。所述步骤五中对宏块采用树状划分,块匹配采用匹配误差准则;子块与父块的匹配误差RMS为<formula>formulaseeoriginaldocumentpage7</formula>其中参数8和0分别为<formula>formulaseeoriginaldocumentpage7</formula>其中,N为子块和父块像素的个数,r,为子块的像素值,Cli为父块的像素值;计算当前宏块在参考帧中的块匹配误差RMS,其中ri是子块的像素值,Cli是父块的像素值;如果RMS小于预先设定的阈值Y,记录IFS系数,IFS系数包括匹配块的位移矢量(X,y)和公式2,3中的s和0,处理下一宏块;否则,对当前宏块进行树状划分,计算划分后小块的RMS,如果小于阈值Y,则停止划分,否则继续划分,直到子块达到预先设定的最小块为止。一种基于对象的分形视频解压缩方法,包括以下步骤步骤I首先从压缩文件中读入压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量,插入I帧数量和搜索范围;步骤II由读入压缩信息和当前待解码帧号判断该待解码帧是否为I帧,若是I帧转入步骤III,否则转入步骤IV;步骤III对于I帧,从压缩文件中读入码流,并读入该帧的Alpha平面,采用基于块DCT变换的I帧帧内图像解压缩方法进行解码,解码之后的文件包括基于不同对象的视频文件和完整的视频文件,在基于对象的视频文件中,根据Alpha平面,属于该对象的像素保留,不属于该对象的像素置零,帧数加一转入步骤V;步骤IV对于非I帧,首先计算参考帧中按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,然后从压缩文件中读入块的划分信息和Huffman码流以及该帧的Alpha平面,并根据块的划分信息和Huffman码流以及该帧的Alpha平面得到该帧所有宏块的划分方式和每一个小块的迭代函数系统系数,按照每一宏块进行解码;步骤V判断此时所有帧是否都已解码,若都已解码完毕,则结束解码过程,否则转入步骤II。对于每一个宏块进行解码时,首先判断该宏块在编码时的划分方式,对于每一个子块,首先在父块域找到与该子块相对应的区域,然后利用下面的公式获得该子块的像素值,T1=s^di+o其中ri为待解码子块的像素值,d,为父块域中的像素值,s为比例因子,ο为偏移因子。在基于对象的解码过程中,当前块中只有属于该对象区域的像素才进行解码,同样,在父块域中只利用属于同一对象区域的像素进行解码,假如父块域中的某个子块中部分像素不属于该视频对象,那么这部分像素的值用该子块中属于该对象区域的像素的平均值代替。处理的视频序列为YUV格式,分别对3个分量中的每个采用上述五个步骤进行处理。本发明所提出的一种基于对象的分形视频压缩方法的优点在于(1)本方法中对起始帧采用帧内块DCT变换编码,相对于CPM/NCIM编码方案,不但大幅度减少了压缩时间和块效应,而且提高了峰值信噪比。(2)本方法先将一帧图像划分为互不重叠的、由若干固定大小尺寸的宏块组成的棋盘格式,然后根据匹配准则与设定阈值的关系,对宏块进行树状结构划分,相对于四叉树划分准则,大大降低了计算复杂度,提高了编码速度。(3)本方法在进行子块的块匹配之前,计算当前帧互不重叠的宏块及其经树状划分之后得到的小块的像素和与像素平方和。在参考帧中,按照匹配步长分别计算各宏块以及经树状划分以后得到的小块的像素和与像素平方和。这样就避免了在块匹配过程中出现重复计算的弊端,大大节约了子块的匹配时间。(4)本方法引入了基于对象的视频编码方法,基于对象的编码方法在非基于对象方法的基础之上又进一步提高了分形压缩的性能,不但增加了压缩比和峰值信噪比,而且使得压缩具有更大的灵活性。图Ia为本发明一种基于对象的分形视频压缩与解压缩方法的压缩流程图;图Ib为本发明一种基于对象的分形视频压缩与解压缩方法的解压缩流程图;图2a为标准测试视频序列“foreman,cif”的第9帧;图2b为本发明一种基于对象的分形视频压缩与解压缩方法得到的标准测试视频序列“foreman,cif”的第9帧的Alpha分割平面;图2c为本发明一种基于对象的分形视频压缩与解压缩方法单独解码经本发明方法压缩编码以后的标准测试视频序列“foreman,cif”的第9帧的前景视频对象的结果图像;图2d为本发明一种基于对象的分形视频压缩与解压缩方法单独解码经本发明方法压缩编码以后的标准测试视频序列“foreman,cif”的第9帧的背景视频对象的结果图像;图2e为本发明一种基于对象的分形视频压缩与解压缩方法解码经本发明方法压缩编码以后的标准测试视频序列“foreman,cif”的第9帧全部视频对象的结果图像;图3a为标准测试视频序列“foreman,cif”的起始帧图像;图3b为本发明一种基于对象的分形视频压缩与解压缩方法解码经本发明方法压缩编码以后的标准测试视频序列“foreman,cif”第1帧的结果图像;图4a为本发明一种基于对象的分形视频压缩与解压缩方法对宏块的四种划分模式图;图4b为本发明一种基于对象的分形视频压缩与解压缩方法对宏块的划分模式四进一步进行划分的四种划分模式图;图5为本发明一种基于对象的分形视频压缩与解压缩方法对边界块属于不同视频对象区域的像素的标记图;图6为本发明一种基于对象的分形视频压缩与解压缩方法子块与父块的像素匹配映射图;图7a为本发明一种基于对象的分形视频压缩与解压缩方法对标准测试视频序列"foreman,cif"的前15帧分别基于对象1,基于对象2和非基于对象进行压缩的峰值信噪比的对比图;图7b为本发明一种基于对象的分形视频压缩与解压缩方法对标准测试视频序列"foreman,cif"的前15帧分别基于对象1,基于对象2和非基于对象进行压缩的压缩比的对比图;图7c为本发明一种基于对象的分形视频压缩与解压缩方法对标准测试视频序列"foreman,cif"的前15帧分别基于对象1,基于对象2和非基于对象进行压缩的压缩时间的对比图;图8a为本发明一种基于对象的分形视频压缩与解压缩方法与传统的CPM/NCIM方法对标准测试视频序列“foreman,cif”的前15帧进行压缩的峰值信噪比的对比图;图8b为本发明一种基于对象的分形视频压缩与解压缩方法与传统的CPM/NCIM方法对标准测试视频序列“foreman,cif”的前15帧进行压缩的压缩比的对比图;图8c为本发明一种基于对象的分形视频压缩与解压缩方法与传统的CPM/NCIM方法对标准测试视频序列“foreman,cif”的前15帧进行压缩的压缩时间的对比图。图8d为本发明一种基于对象的分形视频压缩与解压缩方法与传统的CPM/NCIM方法对标准测试视频序列“foreman,cif”的前15帧进行解压缩时间的对比图。具体实施例方式下面将结合附图对本发明方法作进一步的详细说明,仅以亮度分量Y为例,色差分量U和V的压缩步骤与亮度分量相同。本发明提出了一种基于对象的分形视频压缩与解压缩方法,该方法是基于视频内容,利用分形迭代原理进行视频编码的一种新型视频压缩编码方法。首先利用视频分割方法获得视频对象分割平面即Alpha平面,对起始帧采用块DCT变换编码,对非I帧进行块运动估计/补偿编码,首先计算与子块域和父块域相关子块的像素和与像素平方和,然后在前一帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方法压缩迭代函数系统系数。对应的解压缩过程为对I帧采用反DCT变换的方式解码,对非I帧进行Huffman反编码获得迭代函数系统系数,然后进行基于宏块的解码,首先计算父块域相关子块的像素和与像素平方和,然后依次对当前帧中的每一个宏块进行解码。本方法引入了基于对象编码的方法并改进了传统分形视频压缩方法,不但大大提高了压缩比和峰值信噪比,而且提高了编码速度,进一步提高了分形视频压缩编码的性能,使其更加具有灵活性和实用性。如附图Ia所示,一种基于对象的分形视频压缩方法,包括以下步骤步骤一以标准测试视频序列“foreman,cif”的前15帧为例,利用自动视频对象分割方法对视频序列进行自动分割,获取Alpha平面。视频中的对象可以通过Alpha平面进行定义,并且可以独立进行压缩编码。附图2a是标准测试视频序列“foreman,cif”的第9帧,附图2b为该帧的Alpha平面,前景用白色表示,背景用黑色表示。如附图2a所示,图像中有两个视频对象,那么Alpha平面就可以是一个二值图像,用白色代表前景,黑色代表背景。每个对象都可以独立地进行压缩,使得每个对象组成一个码流。所以在解压缩时,不需要得到整幅图像,而是可以单独恢复和控制每个对象。单独解压缩前景视频对象的结果为附图2c,单独解压缩背景视频对象的结果为附图2d,整帧解压缩的结果为附图2e。引入基于对象的编码不但提高了压缩性能,而且增加了视频编码方法的灵活性。所述把正在进行压缩的帧称为当前帧,所述把当前帧的已经压缩并重建的前一帧称为参考帧。步骤二若当前帧为I帧,则采用基于块DCT变换的I帧帧内图像压缩方法,对其进行单独编码和解码,解码之后的像素若属于Alpha平面中待编码的视频对象则保留该像素值,否则置零;转入步骤七;所述I帧为视频序列的起始帧或者视频序列中只进行帧内编码的图像帧;所述块DCT变换中的块采用固定大小模式。例如,对视频序列“foreman,cif”起始帧采用基于块DCT变换的I帧帧内图像压缩方法,将起始帧划分为8X8的互不重叠的小块,对每一小块分别进行DCT变换。离散余弦变换将8X8的图像样本X,变换成8X8的系数矩阵Y。变换过程(包括反变换)可以用变换矩阵A来表示。8X8样本块的正向DCT(FDCT)变换如下Y=AXAT(3)反向DCT(IDCT)如下X=AtYA(4)其中A是8X8的变换矩阵。A中的各个元素如下<formula>formulaseeoriginaldocumentpage11</formula>其中<formula>formulaseeoriginaldocumentpage11</formula>i,j分别为矩阵A的行和列。对变换系数进行量化和编码。附图3a为标准测试视频序列“foreman,cif”的起始帧,利用本方法解压缩DCT变换编码之后的解压缩图像为附图3b。转入步骤七。步骤三对当前非I帧图像进行互不重叠的16X16宏块划分,分别计算当前帧互不重叠的16X16,16X8,8X16,8X8,8X4,4X8,4X4的小块的像素和与像素的平方和。然后分别计算参考帧也就是前一帧的解压缩图像中以1为步长的大小分别为16X16,16X8,8X16,8X8,8X4,4X8,4X4的小块的像素和与像素的平方和,以减少块匹配过程中的重复计算。转到步骤四,即从第一个宏块开始处理。所述当前帧的所有块的集合称为子块域,所述前一帧的所有块的集合称为父块域;所述宏块为将当前帧划分为固定大小的互不重叠的图像块;所述小块为将当前宏块进行树状划分得到的块。步骤四在当前帧中按照互不重叠的16X16的宏块进行块匹配,根据该宏块的类型,做出如下的选择,如果该宏块不在Alpha平面内,对该块不做处理,继续处理下一宏块;如果该宏块全部位于Alpha平面内,转入步骤五;如果该宏块部分位于Alpha平面内,转入步骤六。如果当前帧宏块全部匹配完毕后,转入步骤七。所述不在当前编码的视频对象区域内的块称为外部块,所述全部都在当前编码的视频对象区域内的块称为内部块,所述部分像素不在当前编码的视频对象区域内的块为边界块。步骤五在父块域中的搜索窗口内对整个宏块进行块运动估计/补偿。匹配的依据是分形迭代函数系统原理,简要介绍一下分形图像压缩的数学基础一迭代函数系统(IFS=IterativeFunctionSystem)理论。设D是Rn欧氏空间的子集,ω为D—D的映射,如果存在一个实数C,0<C<1,使得对于Rn上的度量d,满足对任意X,yeD,有d(ω(χ),ω(γ))^C(d(x,y)),则称ω为压缩映射,实数C称为ω的压缩因子。完备的度量空间(X,d)以及η个压缩映射Coi:Χ—Χ(其压缩因子分别为C1,C2,...Cn)—起,就组成一个迭代函数系统(IteratedFunctionSystem),简称IFS,记作{Χ:ω”ω2,···,ωJ。C=max(C1,C2,...,Cn)称为IFS的压缩因子。因此{R2=Q1,ω2,ω3}就是一个IFS。分形图像压缩中,一般的匹配准则是RMS,即<formula>formulaseeoriginaldocumentpage12</formula>其中s,ο分别为<formula>formulaseeoriginaldocumentpage12</formula><formula>formulaseeoriginaldocumentpage12</formula>其中,N为子块和父块像素的个数,r,为子块的像素值,Cli为父块的像素值。首先设定子块的匹配误差阈值Y=t0lXt0lXn0,其中tol根据不同的子块大小而改变,大的子块tol就越大,小的子块tol就小。在本例中,我们取16X16宏块的tol为10.0,8X8子块的tol为8.0,4X4子块的tol为6.Ο,ηο为当前子块属于该视频对象区域的像素个数。首先设定16X16宏块的匹配误差阈值Y16=10.OX10.ΟΧηο,在参考帧的父块域中以当前子块的位置开始在15X15的搜索窗口内对整个宏块进行块匹配,如果匹配误差RMS小于开始设定的阈值Y16,保存当前的IFS系数包括比例因子s,偏移0,父块相对于当前子块的坐标偏移X,y,返回步骤四,继续下一宏块的匹配;否则,按照树状结构对该宏块进行划分,对宏块的划分有四种模式,如附图4a,模式一为一个16X16小块,模式二为两个8X16的小块,模式三为两个16X8的小块,模式四为四个8X8的小块。1、首先按模式二的划分计算,若模式二中两个小块都满足RMS<Y16,保存当前的IFS系数包括比例因子s,偏移0,以及父块相对于当前子块的坐标偏移X,y,并停止块的划分,转到5;2、否则按模式三划分,若模式三中两个小块都满足RMS<γ16,保存当前的IFS系数包括比例因子s,偏移0,以及父块相对于当前子块的坐标偏移χ,y,并停止块的划分,转到5;3、否则按照模式四对当前宏块进行划分,此时匹配误差阈值设置为Y8=8.0X8.ΟΧηο,如果模式四中的4个小块都满足RMS<Y8,保存当前的IFS系数包括比例因子s,偏移0,以及父块相对于当前子块的坐标偏移X,y,并停止块的划分,转到5;4、否则对模式四中的每一个小块按照附图4b中的模式划分顺序进行划分,可依次划分为1个8X8的小块,2个4X8的小块,2个8X4的小块,4个4X4的小块。这里只对第一个8X8小块的匹配过程进行阐述,其它三个8X8小块的匹配过程与第一个相同,不再赘述。首先按照两个4X8的小块划分,进行块匹配,如果两个子块的匹配误差RMS全部小于Y8时,保存当前的IFS系数包括比例因子s,偏移0,以及父块相对于当前子块的坐标偏移x,y,并停止块的划分。否则,按照两个8X4的划分方式进行块的划分,对这两个子块进行块匹配,如果两个子块的匹配误差RMS全部小于γ8时,保存当前的IFS系数包括比例因子s,偏移0,以及父块相对于当前子块的坐标偏移X,y,并停止块的划分。否则,对该子块划分为四个4X4的小块,同时匹配误差阈值设为Y4=6.0X6.ΟΧηο,对四个小块分别进行块匹配,并分别记录每个子块的IFS系数包括比例因子s,偏移0,以及父块相对于当前子块的坐标偏移X,y,并停止块的划分,转到5;5、返回步骤四,继续下一宏块的编码。如果所有的宏块都已编码完毕,则转到步骤七;步骤六为了在匹配子块与父块时,避免将属于不同对象的像素相混淆,对每一个像素在Alpha平面中做一个标记,标明被标记的像素是属于哪一对象的,如附图5a所示,此边界块的像素被标记为Sl和S2两个部分。边界块的具体压缩方法假设当前压缩的是对象1(压缩对象2时,方法相同),即Sl所在的对象。对于与子块相关的量,只计算在Sl区域内的像素值,而S2区域内的像素不予以考虑;对于与父块有关的量,若与子块相对应的位置的父块中的某一像素Cli也属于Sl区域,则使用Cli的原像素值,否则,按照特定的计算值来代替屯,本发明中使用的是父块中属于Sl区域的像素均值来代替屯。匹配映射效果如附图6所示。需要说明的是,匹配映射只在同类块之间进行,即子块和父块必须同时是边界块或者同时是内部块(外部块)。按照所述当前块和父块的像素选取准则确定当前块和父块的像素值后,计算匹配误差RMS,如果RMS小于阈值Y,则保存当前所得系数,否则将当前的边界块划分为小块,对每个小块分别返回步骤四进行处理;步骤七对所有IFS系数进行huffman编码,huffman编码是根据出现的概率将每个符号映射到一个变长码字的集合(VLC)上,降低IFS系数数据的统计冗余。判断当前帧是否为最后一帧,如果是最后一帧结束编码,否则,转入步骤二继续处理下一帧图像。如附图Ib所示,一种基于对象的分形视频解压缩方法,包括以下步骤步骤I首先从压缩文件中读入压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量,插入I帧数量和搜索范围;步骤II由读入压缩信息和当前待解码帧号判断该待解码帧是否为I帧,若是I帧转入步骤III,否则转入步骤IV;步骤III对于I帧,从压缩文件中读入解码该帧所需码流,并读入该帧的Alpha平面,采用基于块DCT变换的I帧帧内图像解压缩方法进行解码,进行反DCT变换,得到每一个8X8的块的像素值,解码之后的文件包括基于不同对象的视频文件和完整的视频文件,在基于对象的视频文件中,根据Alpha平面,属于该对象的像素保留,不属于该对象的像素置零,帧数加一转入步骤V;步骤IV对于非I帧,首先计算参考帧中按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,然后从压缩文件中读入块的划分信息和Huffman码流,并根据块划分信息和Huffman码流得到该帧所有宏块的划分方式和每一个小块的迭代函数系统系数,按照每一宏块进行解码。对于每一个宏块进行解压缩时,首先判断该宏块在编码时的划分方式,对于每一个子块,首先在父块域找到与该子块相对应的区域,然后利用下面的公式获得该子块的像素值,T1=s^di+o其中ri为待解码子块的像素值,Cli为父块域中的像素值,s为比例因子,ο为偏移因子。在基于对象的解码过程中,当前块中只有属于该对象区域的像素才进行解码,同样,在父块域中只利用属于同一对象区域的像素进行解码,假如父块域中的某个子块中部分像素不属于该视频对象,那么这部分像素的值用该子块中属于该对象区域的像素的平均值代替;步骤V:判断此时所有帧是否都已解码,若都已解码完毕,则结束解码过程,否则转入步骤II。本发明选择VisualC++6.0作为所述方法的实现语言,CPU为IntelCore2DuoT8300,2.4GHz主频,内存大小为2G,对标准测试视频序列“foreman,cif”分别进行了基于对象1即前景对象,基于对象2即背景对象和非基于对象的编码实验。表1为在同等条件下,利用CPM/NCIM方法和本发明方法对标准测试视频序列"foreman,cif”的起始帧的压缩对比实验结果。<table>tableseeoriginaldocumentpage14</column></row><table>表1CPM/NCIM方法和本发明方法的起始帧压缩结果对比表2为基于对象1,对象2及非基于对象的前15帧压缩的平均峰值信噪比、平均压缩比、平均压缩时间和平均解码时间的比较。利用本方法对“foreman,cif”的前15帧分别基于对象1、基于对象2、以及非基于对象压缩的峰值信噪比的对比如附图7a所示;利用本方法对“foreman,cif”的前15帧分别基于对象1、基于对象2、以及非基于对象压缩的压缩比的对比如附图7b所示;利用本方法对“foreman,cif”的前15帧分别基于对象1、基于对象2、以及非基于对象压缩的压缩时间的对比如附图7c所示。<table>tableseeoriginaldocumentpage14</column></row><table>表2"foreman,cif”的非基于对象压缩与基于对象压缩的性能对比由于基于对象的压缩在边界块的划分更为细致以致匹配结果好于非基于对像的对应块。并且对象2的PSNR高于对象1,因为对象2是背景,图像的变化不大,故重建的图像质量好。由以上实验结果说明基于对象的压缩编码方法相对于非基于对象的压缩编码方法,不但提高了峰值信噪比和压缩比,同时减少了压缩时间。分别采用传统的CPM/NCIM方法和本发明方法对“foreman,cif”的前15帧进行压缩编码的峰值信噪比的对比图如附图8a所示;分别采用传统的CPM/NCIM方法和本发明方法对“foreman,cif”的前15帧进行压缩编码的压缩比的对比图如附图8b所示;分别采用传统的CPM/NCIM方法和本发明方法对“foreman,cif”的前15帧进行压缩编码的压缩时间的对比图如附图8c所示;分别采用传统的CPM/NCIM方法和本发明方法对“foreman,cif"的前15帧进行解压缩的时间的对比图如附图8d所示。从附图8可以看出,本发明方法与传统的CPM/NCIM方法相比,不但增加了峰值信噪比和压缩比,而且减少了压缩时间。对5个典型的视频序列“foreman.cif","news,cif”,“paris.cif","bus.cif","bridge-far.cif"(图像尺寸为352X288像素的CIF格式,取15帧图像),宏块尺寸为16X16像素,最小分块尺寸为4X4像素。采用的对比方法如下,CPM/NCIM方法中CPM帧数取为2。压缩和解压缩性能对比结果如表3所示,各项指标均为15帧的均值。本发明提出的方法明显好于传统的CPM/NCIM方法,如PSNR值提高了3_5dB,压缩比提高了近4倍,压缩时间却减少为原来的1/10。这是因为本发明方法利用了编码帧和参考帧之间的强互相似性,能够准确快速地找到最佳匹配块,结果表现为解压缩图像质量高、压缩比高以及压缩所用时间少等。本方法可以根据应用目的的不同来选择匹配误差阈值,在低比特率的条件下,可以选择大的匹配阈值,使分块的数目减少,从而增加压缩比。在对解压缩视频图像要求较高的情况下,可以减小匹配误差阈值,增加分块的数目,使块的匹配更加准确,从而保证视频质量。并且可以根据需要选择特定的视频对象进行压缩编码,不但提高了压缩比、峰值信噪比和压缩速度,而且增加了编码的灵活性。<table>tableseeoriginaldocumentpage15</column></row><table>表3CPM/NCIM方法和本发明方法对5个视频序列压缩和解压缩性能均值对比。权利要求一种基于对象的分形视频压缩方法,其特征在于用宏块划分规则替代传统的四叉树划分规则;简化了块的搜索策略和范围,极大的提高了计算速度;使用了H.264标准中的I帧方法;减少重复计算;提出了一种在分形视频压缩方法中的基于对象压缩的实现方法,所述在分形视频压缩方法中的基于对象压缩的实现方法可以对任意一个对象单独进行压缩编码,能极大的提高压缩比和压缩速度,降低比特率并节省数据传输时的带宽;该基于对象的分形视频压缩方法的具体步骤如下步骤一利用自动视频对象分割方法对视频序列进行自动分割,获取每一帧的视频对象分割平面即Alpha平面,根据得到的视频对象分割平面确定要编码的视频对象区域;把正在进行压缩的帧称为当前帧,把当前帧的已经编码并重建的前一帧称为参考帧;步骤二若当前帧为I帧,则采用基于块DCT变换的I帧帧内图像压缩方法,对其进行单独编码和解码,解码之后的像素若属于Alpha平面中待编码的视频对象则保留该像素值,否则置零;转入步骤七;所述I帧为视频序列的起始帧或者视频序列中只进行帧内编码的图像帧;所述块DCT变换中的块采用固定大小模式;步骤三若当前帧为非I帧,在进行块匹配之前,则首先对当前帧进行互不重叠的宏块划分,然后计算这些宏块及其经树状划分得到的小块的像素和与像素平方和,以及前一帧重建图像即参考帧中按照设定步长划分的所有宏块及其经树状划分得到的小块的像素和与像素平方和,以减少块匹配过程中的重复计算;转到步骤四,即从第一个宏块开始处理;所述宏块为将当前帧划分为固定大小的互不重叠的图像块;所述小块为将当前宏块进行树状划分得到的块;所述当前帧的所有块的集合称为子块域,所述前一帧的所有块的集合称为父块域;步骤四对当前正在处理的图像块即当前块,利用Alpha平面判别该图像块的区域属性;如果该块不在当前编码的视频对象区域内,对该块不做处理;如果该块全部都在当前编码的视频对象区域内,转入步骤五;如果该块的部分像素在当前编码的视频对象区域内,部分像素不在当前编码的视频对象区域内,需要单独处理,转入步骤六;如果所有的宏块都已处理完毕,则转到步骤七;所述不在当前编码的视频对象区域内的块称为外部块,所述全部都在当前编码的视频对象区域内的块称为内部块,所述部分像素不在当前编码的视频对象区域内的块为边界块;步骤五在父块域中的搜索窗口内首先对当前块进行块匹配,如果匹配误差RMS小于开始设定的阈值γ,保存当前的迭代函数系统系数即IFS系数,返回步骤四,进行下一宏块的匹配;否则,依次按照树状结构对该块进行划分,并对各个划分得到的小块分别计算匹配误差RMS,如果RMS小于设定阈值γ,停止划分并记录该小块IFS系数,返回步骤四,进行下一宏块的匹配;否则继续划分,直到将当前块划分为预先设定的最小块,记录IFS系数;返回步骤四,进行下一宏块的匹配;步骤六该步骤单独处理边界块,当前帧的边界块只在父块中的属于边界块和内部块中搜索匹配,当前块和父块的像素选取准则是在当前块中只计算位于当前编码的视频对象区域内的像素值,只在参考帧的相同视频对象区域内进行块匹配;对于父块中,如果与当前块的相对应位置的父块中的某一像素也属于该视频对象区域,则采用原像素值,否则,用其它属于该视频对象区域像素的平均值代替;按照所述当前块和父块的像素选取准则确定当前块和父块的像素值后,计算子块与父块的匹配误差RMS,如果RMS小于阈值γ,则保存当前所得系数,否则将当前的边界块划分为小块,对每个小块分别返回步骤四进行处理;步骤七对所有IFS系数进行Huffman编码,降低IFS系数数据的统计冗余;判断当前帧是否为最后一帧,如果是最后一帧结束编码;否则,返回步骤二继续处理下一帧图像。2.根据权利要求1所述一种基于对象的分形视频压缩方法,其特征在于处理的视频序列为YUV格式,分别对3个分量中的每个采用上述七个步骤进行处理。3.根据权利要求1所述一种基于对象的分形视频压缩方法,其特征在于所述步骤五中对宏块采用树状划分,块匹配采用匹配误差准则;子块与父块的匹配误差RMS为<formula>formulaseeoriginaldocumentpage3</formula>其中参数8和0分别为二^^——“1⑵<formula>formulaseeoriginaldocumentpage3</formula>其中,N为子块和父块像素的个数,r,为子块的像素值,屯为父块的像素值;计算当前宏块在参考帧中的块匹配误差RMS,其中ri是子块的像素值,屯是父块的像素值;如果RMS小于预先设定的阈值、,记录IFS系数,IFS系数包括匹配块的位移矢量(x,y)和公式2,3中的s和0,处理下一宏块;否则,对当前宏块进行树状划分,计算划分后小块的RMS,如果小于阈值Y,则停止划分,否则继续划分,直到子块达到预先设定的最小块为止。4.一种基于对象的分形视频解压缩方法,其特征在于包含以下步骤步骤I首先从压缩文件中读入压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量,插入I帧数量和搜索范围;步骤II由读入压缩信息和当前待解码帧号判断该待解码帧是否为I帧,若是I帧转入步骤III,否则转入步骤IV;步骤III对于I帧,从压缩文件中读入码流,并读入该帧的Alpha平面,采用基于块DCT变换的I帧帧内图像解压缩方法进行解码,解码之后的文件包括基于不同对象的视频文件和完整的视频文件,在基于对象的视频文件中,根据Alpha平面,属于该对象的像素保留,不属于该对象的像素置零,帧数加一转入步骤V;步骤IV对于非I帧,首先计算参考帧中按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,然后从压缩文件中读入块的划分信息和Huffman码流以及该帧的Alpha平面,并根据块的划分信息和Huffman码流以及该帧的Alpha平面得到该帧所有宏块的划分方式和每一个小块的迭代函数系统系数,按照每一宏块进行解码;步骤V判断此时所有帧是否都已解码,若都已解码完毕,则结束解码过程,否则转入步骤II。5.根据权利要求4所述一种基于对象的分形视频解压缩方法,其特征在于对于每一个宏块进行解码时,首先判断该宏块在编码时的划分方式,对于每一个子块,首先在父块域找到与该子块相对应的区域,然后利用下面的公式获得该子块的像素值,A=其中巧为待解码子块的像素值,di为父块域中的像素值,S为比例因子,0为偏移因子。6.根据权利要求4所述一种基于对象的分形视频解压缩方法,其特征在于在基于对象的解码过程中,当前块中只有属于该对象区域的像素才进行解码,同样,在父块域中只利用属于同一对象区域的像素进行解码,假如父块域中的某个子块中部分像素不属于该视频对象,那么这部分像素的值用该子块中属于该对象区域的像素的平均值代替。7.根据权利要求4所述一种基于对象的分形视频解压缩方法,其特征在于处理的视频序列为YUV格式,分别对3个分量中的每个采用上述五个步骤进行处理。全文摘要本发明提出了一种基于对象的分形视频压缩与解压缩方法,该方法是基于视频内容,利用分形迭代原理进行视频编码的一种新型视频压缩编码方法。首先利用视频分割方法获得视频对象分割平面即Alpha平面,对起始帧采用块DCT变换编码,对非I帧进行块运动估计/补偿编码,首先计算与子块域和父块域相关子块的像素和与像素平方和,然后在前一帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方法压缩迭代函数系统系数。对应的解压缩过程为对I帧采用反DCT变换的方式解码,对非I帧进行Huffman反编码获得迭代函数系统系数,然后进行基于宏块的解码,首先计算父块域相关子块的像素和与像素平方和,然后依次对当前帧中的每一个宏块进行解码。本方法引入了基于对象编码的方法并改进了传统分形视频压缩方法,不但大大提高了压缩比和峰值信噪比,而且提高了编码速度,进一步提高了分形视频压缩编码的性能,使其更加具有灵活性和实用性。文档编号H04N7/26GK101827268SQ20101016723公开日2010年9月8日申请日期2010年4月30日优先权日2010年4月30日发明者候仰拴,王再阔,祝世平申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1