一种基于分形的多目立体视频压缩编解码方法

文档序号:7763317阅读:380来源:国知局
专利名称:一种基于分形的多目立体视频压缩编解码方法
技术领域
本发明属于视频压缩编码领域,涉及多目立体视频的压缩编码,为立体视频编码 的实时性应用奠定了基础,进一步提高了分形多目立体视频压缩编码的性能,使其更加具 有实用性和推广性。
背景技术
分形理论最初由Mandelbrot于上世纪70年代提出(参见Benoit B. Mandelbrot. TheFractal Geometry ofNature[Μ]. New York H. Freeman and Company,1982.)。分 形编码的数学基础是迭代函数系统(IFS)理论。Barnsley首先将分形编码用于交互 式图像压缩(参见 Michael F. Barns ley, Alan D. Sloan. A better way to compress image [J]. ByteMagazine, 1988,13 (1) :215_233.)。Jacqain 提出了 全自动的分形图像压 缩方法(参见 Arnaud E. Jacquin. A novel fractal blocking-coding technique for digital image[C]. IEEEInternational Conference on Acoustics,Speech and Signal Processing, 1990,4 2225~2228.),(参见 Arnaud Ε.Jacquin. Fractal image coding a review[J]. Proceeding of the IEEE,1993,81 (10) :1451_1465·),该方法釆用基于 图像分块的方式以局部的仿射变换代替全局的仿射变换。之后,Fisher利用四叉树改 进了这一方法(参见 Y. Fisher. Fractal ImageCompression [J]. Fractals,1994,2 (3) 347-361.),(参 JAL Y. Fisher,Ε. W. Jacobs. Imagecompression :A study the iterated transform method[J]. Signal Processing,1992,29 (3),251-263.),(参见 Y.Fisher. Fractal Image Compression :Theory and application to digital images[M]. New York Spring-Verlag, 1995,55-77.),大大提高了编码效率,并成为目前分形图像编码中的主流 方法。在此基础之上,一些学者和研究人员把分形图像压缩的方法应用到视频序列的 压缩上。Meiqing Wang等提出了综合基于数据立方体和基于帧的分形视频压缩方法(参 见 Meiqing Wang, Choi-Hong Lai. A hybrid fractal video compression method[J]. Computers Mathematics with Applications,2005,50 (3-4) :611_62L),(参见 Meiqing Wang,ZhehuangHuang,Choi—Hong Lai. Matching search in fractal video compression and its parallelimplementation in distributed computing environments[J]. Applied Mathematical Modeling,2006,30(8) :677-687. ), ( # B Meiqing Wang, Rong Liu, Choi-Hong Lai. Adaptive partitionand hybrid method in fractal video compression[J]. Computers & Mathematics withApplications,2006,51(11) 1715-1726.) ο 其中最为经典和影响较大的参见(C.S.Kim,R.C.Kim,S. U. Lee. Fractal coding of video sequence using circular prediction mapping andnoncontractive interframe mapping[J]. IEEE Transactions on Image Processing,1998,7(4) 601-605.)。该方法采用类似于标准视频编码方法所采用的运动估计/补偿技术,该方法利 用了相邻帧之间的时间强相关性,对视频序列压缩取得了较好的效果。在CPM和NCIM中,子块域中的每个图像块都由来自相邻帧相同大小的父块域通过运动补偿得到。CPM和NCIM 两者间最大的不同在于CPM在解码的过程中需要具备收敛性,而NCIM不需要。但是在循 环预测编码(CPM)方法中,为了保证起始帧经过自身的循环解码能够近似收敛到原来的图 像,压缩过程需要经过复杂变换、搜索和迭代等,压缩时间和图像质量难以达到要求。目前 典型的分形图像和视频压缩方法的运算量很大,编码速度较慢,并且解码的质量有待提高, 使得分形图像和视频压缩方法还需要进一步的改进和提高。多视点视频(Multi-view Video)是一种新型的具有立体感和交互操作功能的视 频,通过在场景中放置多台摄像机,记录下多个视点数据,提供给用户以视点选择和场景漫 游的交互能力。多视点视频将在自由视点视频、立体电视、立体视频会议、多视点视频点播 等数字娱乐领域有着非常广泛的应用前景。随着相机数目的增加,多视点视频的数据量也 成倍增加(参见 Chun Li,Lini MA. A Study of Multi-view Video Coding Technology [J], Computers & Moderns,2009,1 :104-108.)。拍摄场景不同角度的视频信息,利用其中的 一个或多个视点信息可以合成任意视点的信息,达到自由视点显示和自由切换任意视点 的目的(参见 IS0/IEC JTC 1/SC29/WG IllCall for Evidence on Multi-View Video Coding. DOC. N6720, Palma de Mallorca, Spain, 2004.),(参见 ISO IEC JTC 1/SC29/ WGlll Surveyof Algorithms used for Multi-view Video Coding (MVC). DOC 1. N6909, Hong Kong,China,2005.),(参见 IS0/IEC JTC1/SC29/WG111 Requirements on Multi-view Video Coding 4. DOC. N7282, Poznan, Poland, 2005.)。

发明内容
本发明提出了一种基于分形的多目立体视频压缩与解压缩方法,在多目立体视频 编码中,选取中间目作为参考目,使用MCP原理压缩,其它目使用基于DCP+MCP的原理压缩。 以三目视频为例,中间目作为参考目,采用单独的运动补偿预测方式(MCP)进行编码,首先 对起始帧采用块DCT变换编码,对非I帧进行块运动估计/补偿编码,然后在前一帧即中间 目视频的参考帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方 法压缩迭代函数系统系数。左目和右目分别采用MCP加视差补偿预测方式(DCP)进行编码, 在进行DCP编码方式时,充分利用立体平行摄像结构中的偏振性和方向性。对应的解压缩 过程为首先对I帧采用反DCT变换的方式解码,对非I帧进行Huffman解码获得迭代函数 系统系数,然后进行基于宏块的解码,对于中间目,计算前一帧中的父块域相关子块的像素 和与像素平方和;对于左目和右目,分别计算其前一帧和中间目对应帧的父块域相关子块 的像素和与像素平方和。一种基于分形的多目立体视频压缩编码方法,包括以下步骤步骤一对于中间目,首先判断是否为I帧,若是I帧,则对该帧进行互不重叠的固 定大小的块划分,对每一个图像块分别采用基于块DCT变换的I帧帧内图像压缩方法,对图 像进行单独编码和解码,转到步骤九;所述I帧为视频序列起始帧或者视频序列中只进行 帧内编码的图像帧;所述将当前帧划分为固定大小的互不重叠的图像块称为宏块;所述将 当前宏块进行树状划分得到的块称为小块;所述当前帧为正在进行压缩的帧,所述参考帧 为当前帧的已经编码并重建的前一帧;所述当前帧所有块的集合称为子块域;所述前一帧 的所有块的集合称为父块域;所述块DCT变换中的块采用固定大小模式;对于左目转到步骤四;对于右目转到步骤八;步骤二 若中间目为非I帧,用常规单目的运动补偿预测(MCP)编码,对该帧进行 互不重叠的宏块划分,然后计算这些宏块以及经树状划分得到的小块的像素和、像素平方 和,以及中间目前一帧重建图像即参考帧中,按照设定步长划分的所有宏块以及经树状划 分得到的小块的像素和、像素平方和;步骤三依次对当前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏 块进行块匹配;在进行子块与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块 的大小与子块的大小相同;如果匹配误差RMS小于开始设定的阈值Y,保存当前的迭代函 数系统系数即IFS系数,转入步骤三编码下一宏块;否则,依次按照树状结构对该块进行划 分,并对各个划分得到的小块分别计算匹配误差RMS,如果RMS小于设定阈值Y,停止划分 并记录该小块IFS系数,转入步骤三编码下一宏块;否则继续划分,直到将当前块划分为预 先设定的最小块,记录IFS系数;转入步骤三编码下一宏块;所述搜索窗为在参考帧中的矩 形搜索区域;所述IFS系数包括父块位置(X,y)和比例因子S、偏移因子ο ;如果当前帧所 有的宏块都已编码完毕,且是中间目,则转到步骤九;若是左目或右目,则转到步骤五;步骤四对左目图像,首先进行互不重叠的宏块划分,然后计算这些宏块以及经树 状划分得到的小块的像素和、像素平方和,以及左目前一帧重建图像参考帧,按照设定步长 划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,以减少块匹配过程中 的重复计算,转到步骤三;步骤五计算中间目中对应帧图像参考帧,按照设定步长划分的所有宏块以及经 树状划分得到的小块的像素和、像素平方和,以减少块匹配过程中的重复计算,转到步骤 六;步骤六首先对与当前子块位置相同的父块进行块匹配,得到RMS,并保存迭代函 数系统系数,该系数包括父块与子块的相对位移矢量(X,y),比例因子S和偏移因子O;依 次对当前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏块进行块匹配;在进 行子块与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块的大小与子块的大 小相同并转入步骤七;如果所得的匹配误差RMS小于开始设定的阈值Y,保存当前的迭代 函数系统系数即IFS系数,转入步骤六编码下一宏块;否则,依次按照树状结构对该块进行 划分,并对各个划分得到的小块分别转入步骤七计算匹配误差RMS,如果RMS小于设定阈值 Y,停止划分并记录该小块IFS系数,转入步骤六编码下一宏块;否则继续划分,直到将当 前块划分为预先设定的最小块,转入步骤七计算RMS,记录IFS系数,转入步骤六编码下一 宏块;最后与步骤三所得结果比较,选择误差最小的作为预测结果;所述搜索窗为在参考 帧中的矩形搜索区域;所述IFS系数包括父块位置(X,y)和比例因子s、偏移因子ο ;如果 当前帧所有的宏块都已编码完毕,则转到步骤九;步骤七利用DCP快速方法,得到匹配误差RMS,继续执行步骤六;步骤八对于右目图像,首先进行互不重叠的宏块划分,然后计算这些宏块以及经 树状划分得到的小块的像素和、像素平方和,以及右目前一帧重建图像参考帧,按照设定步 长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,以减少块匹配过程 中的重复计算,转到步骤三;步骤九对所有IFS系数进行Huffman编码,降低IFS系数数据的统计冗余;判断当前帧是否为最后一帧,如果是最后一帧结束编码;否则,返回步骤一继续处理下一帧图 像。对于中间目,设多目立体视频总目数为N,这里N为奇数,则中间目指第(N+l)/2 目,它左边的所有目都称为左目,右边的所有目都称为右目。例如,第1目、N目禾Π (N+l)/2 目构成三目,同样第2目、N-I目和(N+l)/2目构成三目,依次类推,分别进行三目的相应处 理,并且每个处理中彼此独立,左目内部或右目内部之间都没有对应联系。所述一种基于分形的多目立体视频压缩编码方法,处理的视频序列为YUV格式, 分别对3个分量中的每个采用上述九个步骤进行处理。所述步骤三和步骤六中对宏块采用树状划分,块匹配采用匹配误差准则;子块与 父块的匹配误差RMS为
一 N , N^ NN ,N
N其中参数s和ο分别为
RMS丄
N1 N1NN 0N
Σ rz+s(s Σ -2 Σ r.d.+2o Σ dz) + o{N-o-2 Σ r.) '.=I1 i = l 1 i = I1 1 / = Iii = ll
(1)
㈣ U",]
c 一 /=1_<=1 /=1
Λ — NNKzJ
/=1 ;=1 I N N
Σ r ~s Σ d ](3)
N z-1 i=\其中,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帧,从压缩文件中读入码流,进行类似于JPEG的解压缩方式进行 解码,帧数加一转入步骤VII ;步骤IV 对于非I帧,计算中间目前一帧中按照设定步长划分的所有宏块以及经 树状划分得到的小块的像素和、像素平方和;步骤V 读入左目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和插 入I帧的间隔;计算左目前一帧和中间目对应帧中按照设定步长划分的所有宏块以及经树 状划分得到的小块的像素和、像素平方和;步骤VI 读入右目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和 插入I帧的间隔;计算右目前一帧和中间目对应帧中按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和;步骤VII 从对应的压缩文件中读入块的划分信息和Huffman码流,并根据以上的 信息得到该帧所有宏块的划分方式和每一个小块的迭代函数系统系数,按照每一宏块进行 解码;转入步骤VIII ;步骤VIII 判断此时所有帧是否都已解码,若都解码完毕,结束解码过程,否则转 入步骤II。对于每一个宏块进行解压缩时,首先判断该宏块在编码时的划分方式,对于每一 个子块,首先在父块域找到与该子块相对应的区域,然后利用下面的公式获得该子块的像
素值rj = s · di+o(4)其中ri为待解码子块的像素值,d,为父块域中的像素值,s为比例因子,ο为偏移 因子。在基于分形的多目立体视频解码过程中,中间目用常规单目的运动补偿预测 (MCP)编码,左目和右目的每个图像块通过运动补偿预测(MCP)和视差补偿预测(DCP)两种 方式进行预测,从中选择误差较小的一种作为预测结果。处理的视频序列为YUV格式,分别对3个分量中的每个采用上述八个步骤进行处理。本发明所提出的分形多目立体视频压缩方法的优点在于(1)本方法中对起始帧采用帧内块DCT变换编码,相对于CPM/NCIM编码方案,不但 大幅度减少了压缩时间和块效应,而且提高了峰值信噪比。(2)本方法先将一帧图像划分为互不重叠的、由若干固定大小尺寸的宏块组成的 棋盘格式;然后根据匹配准则与设定阈值的关系,对宏块进行树状结构划分;相对于四叉 树划分准则,大大降低了计算复杂度,提高了编码速度。(3)本方法在进行子块的块匹配之前,计算当前帧互不重叠的宏块及其经树状划 分之后得到的小块的像素和与像素平方和;在参考帧中,按照匹配步长分别计算各宏块以 及经树状划分以后得到的小块的像素和与像素平方和;避免了在块匹配过程中出现重复计 算的弊端,大大节约了子块的匹配时间。(4)本方法中,中间目的编码方式与单目分形编码相同;左目和右目中,除了采用 前一帧作为参考帧外,加入了中间目对应的帧共同作为参考帧,选取误差最小的块作为父 块,使得面向的范围更广,实现更好的效果。(5)本方法中,在进行DCP编码方式时,充分利用平行摄像结构中的偏振性和方向 性,对DCP搜索方式进行了简化运算,提出了 一种新型快速搜索算法。


图Ia为本发明一种基于分形的多目立体视频压缩与解压缩方法的左目压缩流程 图;图Ib为本发明一种基于分形的多目立体视频压缩与解压缩方法的中间目压缩流 程图;图Ic为本发明一种基于分形的多目立体视频压缩与解压缩方法的右目压缩流程图;图Id为本发明一种基于分形的多目立体视频压缩与解压缩方法的左目解压缩流 程图;图Ie为本发明一种基于分形的多目立体视频压缩与解压缩方法的中间目解压缩 流程图;图If为本发明一种基于分形的多目立体视频压缩与解压缩方法的右目解压缩流 程图;图Ig为本发明一种基于分形的多目立体视频压缩与解压缩方法的DCP快速算法 流程图;图2a为本发明一种基于分形的多目立体视频压缩与解压缩方法对宏块的四种划 分模式图;图2b为本发明一种基于分形的多目立体视频压缩与解压缩方法对宏块的划分模 式四进一步进行划分的四种划分模式图;图3为本发明一种基于分形的多目立体视频压缩与解压缩方法的MCP和DCP结构 示意图;图4a为本发明一种基于分形的多目立体视频压缩与解压缩方法“arme. cif ”多目 立体视频序列的中间目第一帧图像;图4b为本发明一种基于分形的多目立体视频压缩与解压缩方法“arme. cif ”多目 立体视频序列的左目第一帧图像;图4c为本发明一种基于分形的多目立体视频压缩与解压缩方法“arme. cif ”多目 立体视频序列的右目第一帧图像;图5a为本发明一种基于分形的多目立体视频压缩与解压缩方法的DCP快速算法 与传统的全搜索方法分别对“anne. cif"多目立体视频序列的前5帧进行压缩的压缩比的 对比图。图5b为本发明一种基于分形的多目立体视频压缩与解压缩方法的DCP快速算法 与传统的全搜索方法分别对“anne. cif”多目立体视频序列的前5帧进行压缩的PSNR的对 比图。图5c本发明一种基于分形的多目立体视频压缩与解压缩方法的DCP快速算法与 传统的全搜索方法分别对“anne. cif”多目视频序列的前5帧进行压缩的压缩时间的对比 图。
具体实施例方式下面将结合附图对本发明方法作进一步的详细说明,仅以亮度分量Y为例,色差 分量U和V的压缩步骤与亮度分量相同。本发明提出了一种基于分形的多目立体视频压缩与解压缩方法,在多目立体视频 编码中,选取中间目作为参考目,使用MCP原理压缩,其他目使用基于DCP+MCP的原理压缩。 以三目视频为例,中间目作为参考目,采用单独的运动补偿预测方式(MCP)进行编码,首先 对起始帧采用块DCT变换编码,对非I帧进行块运动估计/补偿编码,然后在前一帧即中间 目视频的参考帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方法压缩迭代函数系统系数。左目和右目分别采用MCP加视差补偿预测方式(DCP)进行编码, 在进行DCP编码方式时,充分利用立体平行摄像结构中的偏振性和方向性。对应的解压缩 过程为首先对I帧采用反DCT变换的方式解码,对非I帧进行Huffman解码获得迭代函数 系统系数,然后进行基于宏块的解码,对于中间目,计算前一帧中的父块域相关子块的像素 和与像素平方和;对于左目和右目,分别计算其前一帧和中间目对应帧的父块域相关子块 的像素和与像素平方和。如附图la、图Ib和图Ic所示,一种基于分形的多目立体视频压缩编码方法,包括 以下步骤步骤一以多目立体视频序列“arme. cif”的前5帧为例。所述I帧为视频序列起 始帧或者视频序列中只进行帧内编码的图像帧;所述将当前帧划分为固定大小的互不重叠 的图像块称为宏块;所述将当前宏块进行树状划分得到的块称为小块;所述当前帧为正在 进行压缩的帧,所述参考帧为当前帧的已经编码并重建的前一帧;所述当前帧所有块的集 合称为子块域;所述前一帧的所有块的集合称为父块域;所述块DCT变换中的块采用固定 大小模式。对于左目转到步骤四;对于右目转到步骤八。对视频序列“arme. cif ”中间目的起始巾贞,设多目立体视频总目数为N,这里N为奇 数,则中间目指第(N+l)/2目,它左边的所有目都称为左目,右边的所有目都称为右目。例 如,第1目、N目和(N+l)/2目构成三目,同样第2目、N-I目和(N+l)/2目构成三目,依次类 推,分别进行三目的相应处理,并且每个处理中彼此独立,左目内部或右目内部之间都没有 对应联系。对每一个图像块分别采用基于块DCT变换的I帧帧内图像压缩方法,将起始帧 划分为8X8的互不重叠的子块,对每一子块分别进行DCT变换。离散余弦变换将8X8的 图像样本X,变换成8X8的系数矩阵Y。变换过程(包括反变换)可以用变换矩阵A来表不。8X8样本块的正向DCT(FDCT)变换如下Y = AXAt(5)反向DCT(IDCT)如下X = AtYA(6)其中A是8X8的变换矩阵。A中的各个元素如下丄=C.cos^^(7) 1J 1 16其中C. =J-(I = O) C.=-(i>0)(8)
‘V8ι 2i,j分别为矩阵A的行和列。对变换系数进行量化和编码,转入步骤九。步骤二 若中间目为非I帧,用常规单目的运动补偿预测(MCP)编码,对图像进 行互不重叠的16X16宏块划分,分别计算当前帧互不重叠的16X 16,16X8,8X 16,8X8, 8X4,4X8,4X4的小块的像素和与像素的平方和。然后分别计算参考帧也就是前一帧的解 压缩图像中以1为步长的大小分别为16X16,16X8,8X16,8X8,8X4,4X8,4X4的小块 的像素和与像素的平方和。从第一个宏块开始处理,依次对当前帧的所有16X16宏块进行编码;步骤三依次对当前帧的所有16X16宏块进行编码,在父块域中的搜索窗内对整 个宏块进行块运动估计/补偿。匹配的依据是分形迭代函数系统原理,简要介绍一下分形 图像压缩的数学基础-迭代函数系统(IFS =Iterative Function System)理论。设D是 Rn欧氏空间的子集,ω为D — D的映射,如果存在一个实数C,0 < C < 1,使得对于Rn上的 度量d,满足对任意x,y eD,有d(co(x),ω (y)) < C(d(x,y)),则称ω为压缩映射,实数 C称为ω的压缩因子。完备的度量空间(X,d)以及η个压缩映射—Χ(其压缩因子 分别为C1, C2, ...Cn) —起,就组成一个迭代函数系统(Iterated Function System),简称 IFS,记作{X = GJ1, ω2,. . .,ωη}。C = max (CijC2,. . .,Cn)称为 IFS 的压缩因子。因此{R2 CO1, ω2, ω3}就是一个 IFS。分形图像压缩中,一般的匹配准则是RMS,即RMS =去[Xrf + sisf^df -2坌^dl + 2of^df) + ο(Ν·ο-2^。)]
N /=1/=1/=1/=1M其中s,ο分别为
NN NS = ~^——iVid~
/=I1=1
I NN0 = — [Σ r -S Σ d ]
N i = l 1其中,N为子块和父块像素的个数,r,为子块的像素值,Cli为父块的像素值。首先设定子块的匹配误差阈值Y =t0lXt0lXn0,其中tol根据不同的子块大小 而改变,大的子块tol就越大,小的子块tol就小。在本例中,我们取16X16宏块的tol为 10. 0,8X8子块的tol为8. 0,4X4子块的tol为6. Ο,ηο为当前子块属于该视频对象区域 的像素个数。首先设定16X 16宏块的匹配误差阈值Y16= 10. OX 10. OXno,在参考帧的父块域 中以当前子块的位置开始在15X15的搜索窗内对整个宏块进行块匹配,如果匹配误差RMS 小于开始设定的阈值Y16,保存当前的IFS系数包括比例因子s,偏移0,父块相对于当前子 块的坐标偏移X,1,返回步骤三,继续下一宏块的匹配。否则,按照树状结构对该宏块进行划分,对宏块的划分有四种模式,如附图2a,模 式一为一个16 X 16小块,模式二为两个8 X 16的小块,模式三为两个16X8的小块,模式四 为四个8X8的小块。1、首先按模式二的划分计算,若模式二中两个小块都满足RMS < Y16,保存当前的 IFS系数包括比例因子s,偏移0,以及父块相对于当前子块的坐标偏移X,y,并停止块的划 分,转到5;2、否则按模式三划分,若模式三中两个小块都满足RMS < γ 16,保存当前的IFS系 数包括比例因子s,偏移0,以及父块相对于当前子块的坐标偏移χ,y,并停止块的划分,转 到5;3、否则按照模式四对当前宏块进行划分,此时匹配误差阈值设置为Y8 =
128. 0X8. OXno,如果模式四中的4个小块都满足RMS < Y8,保存当前的IFS系数包括比例 因子s,偏移0,以及父块相对于当前子块的坐标偏移X,y,并停止块的划分,转到5 ;4、否则对模式四中的每一个小块按照附图2b中的模式划分顺序进行划分,可依 次划分为1个8 X 8的小块,2个4X 8的小块,2个8 X 4的小块,4个4X 4的小块。这里只 对第一个8 X 8小块的匹配过程进行阐述,其它3个8 X 8小块的匹配过程与第一个相同,不 再赘述。首先按照2个4X8的小块划分,进行块匹配,如果两个子块的匹配误差RMS全部 小于、8时,保存当前的IFS系数包括比例因子s,偏移0,以及父块相对于当前子块的坐标 偏移x,y,并停止块的划分。否则,按照2个8X4的划分方式进行块的划分,对这两个子块 进行块匹配,如果两个子块的匹配误差RMS全部小于γ 8时,保存当前的IFS系数包括比例 因子s,偏移0,以及父块相对于当前子块的坐标偏移X,y,并停止块的划分。否则,对该子 块划分为4个4X4的小块,同时匹配误差阈值设为Y4 = 6. 0X6. ΟΧηο,对四个小块分别 进行块匹配,并分别记录每个子块的IFS系数包括比例因子s,偏移0,以及父块相对于当前 子块的坐标偏移X,y,并停止块的划分,转到5 ;5、返回步骤三,继续下一宏块的编码。如果当前帧所有的宏块都已编码完毕,且是中间目,则转到步骤九;若是左目或右 目,则转到步骤五;步骤四对于左目,首先进行互不重叠的16X16宏块划分,分别计算当前帧互 不重叠的16X16,16X8,8X16,8X8,8X4,4X8,4X4的小块的像素和与像素的平方和。 然后计算参考帧也就是前一帧的解压缩图像中以1为步长的大小分别为16X16,16X8, 8 X 16,8 X 8,8 X 4,4X 8,4X 4的小块的像素和与像素的平方和,以减少块匹配过程中的重 复计算。附图3为多目立体视频编码的MCP和DCP结构示意图,左目和右目中,每个宏块使 用DCP从中间目中预测,使用MCP从左目和右目的前一帧预测。编码器首先在左目和右目 的前一帧中搜索,选择最匹配的D块;从第一个宏块开始处理,依次对当前帧的所有16X16 宏块进行编码,转入步骤三;步骤五然后计算中间目中对应帧的解压缩图像中以1为步长的大小分别为 16X16,16X8,8X16,8X8,8X4,4X8,4X4的小块的像素和与像素的平方和,进行搜索选 择最匹配的D块。从第一个宏块开始处理,依次对当前帧的所有16 X 16宏块进行编码,转 入步骤六;附图4(a)为三目立体视频序列“arme.cif”中间目第1帧图像,附图4(b)为三 目立体视频序列“arme. cif”左目第1帧图像,附图4(c)为三目立体视频序列“arme. cif” 右目第1帧图像。步骤六对与当前子块位置相同的父块进行块匹配,得到RMS,并保存迭代函数系 统系数,该系数包括父块与子块的相对位移矢量(x,y),比例因子s和偏移因子ο ;依次对当 前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏块进行块匹配;在进行子块 与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块的大小与子块的大小相同 并转入步骤七;如果所得的匹配误差RMS小于开始设定的阈值Y,保存当前的迭代函数系 统系数即IFS系数,转入步骤六编码下一宏块;否则,依次按照树状结构对该块进行划分, 并对各个划分得到的小块分别转入步骤七计算匹配误差RMS,如果RMS小于设定阈值γ,停 止划分并记录该小块IFS系数,转入步骤六编码下一宏块;否则继续划分,直到将当前块划 分为预先设定的最小块,转入步骤七计算RMS,记录IFS系数,转入步骤六编码下一宏块;最后与步骤三所得结果比较,选择误差最小的作为预测结果;所述搜索窗为在参考帧中的矩 形搜索区域;所述IFS系数包括父块位置(X,y)和比例因子S、偏移因子ο ;如果当前帧所 有的宏块都已编码完毕,则转到步骤九;步骤七利用DCP快速方法,得到匹配误差RMS,继续执行步骤六;步骤八对于右目图像,首先进行互不重叠的宏块划分,然后计算这些宏块以及经 树状划分得到的小块的像素和、像素平方和,以及右目前一帧重建图像参考帧,按照设定步 长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,以减少块匹配过程 中的重复计算,转到步骤三;步骤九对所有IFS系数进行Huffman编码,Huffman编码是根据出现的概率将每 个符号映射到一个变长码字的集合(VLC)上,降低IFS系数数据的统计冗余。判断当前帧 是否为最后一帧,如果是最后一帧结束编码,否则,返回步骤一继续处理下一帧图像。如附图Id、图Ie和图If所示,一种基于分形的多目立体视频解压缩方法,包括以 下步骤步骤I 首先读入中间目压缩信息,包括压缩帧数,每帧的宽和高,I帧重建质量, 插入I帧的间隔;步骤II 判断解码帧是否为I帧,若是I帧转入步骤III,否则转入步骤IV ;步骤III 对于I帧,从压缩文件中读入码流,进行类似于JPEG的解压缩方式进行 解码,进行反DCT变换,得到每一个8X8的块的像素值,帧数加一转入步骤VII ;步骤IV 对于非I帧,计算中间目前一帧即参考帧中按照设定步长划分的所有宏 块以及经树状划分得到的小块的像素和、像素平方和;步骤V 读入左目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和插 入I帧的间隔;计算左目前一帧和中间目对应帧即参考帧中按照设定步长划分的所有宏块 以及经树状划分得到的小块的像素和、像素平方和;步骤VI 读入右目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和 插入I帧的间隔;计算右目前一帧和中间目对应帧中按照设定步长划分的所有宏块以及经 树状划分得到的小块的像素和、像素平方和,转入步骤VII ;步骤VII 从压缩文件中读入块的划分信息和Huffman码流,并根据以上的信息得 到该帧所有宏块的划分方式和每一个小块的迭代函数系统系数,按照每一宏块进行解码, 对于每一个宏块进行解压缩时,首先判断该宏块在编码时的划分方式,对于每一个子块,首 先在父块域找到与该子块相对应的区域,然后利用下面的公式获得该子块的像素值,Γi = s · di+o其中ri为待解码子块的像素值,d,为父块域中的像素值,s为比例因子,ο为偏移 因子。步骤VIII 判断此时所有帧是否都已解码,若都解码完毕,结束解码过程,否则转 入步骤II。处理的立体视频序列为YUV格式,分别对3个分量中的每个采用上述八个步骤进 行处理。本方法选择Vi sual C++6. 0作为所述方法的实现语言,CPU为InteI Core 2DuoT8300,2. 4GHz主频,内存大小为2G,对标准测试视频序列“arme. cif”进行了基于分形的多目立体视频编码实验。 表1为在同等条件下,利用本发明方法与CPM/NCIM方法对标准测试序列“anne. cif”中间目起始帧的对比实验结果。
权利要求
一种基于分形的多目立体视频压缩编码方法,其特征在于具体步骤如下步骤一对于中间目,首先判断是否为I帧,若是I帧,则对该帧进行互不重叠的固定大小的块划分,对每一个图像块分别采用基于块DCT变换的I帧帧内图像压缩方法,对图像进行单独编码和解码,转到步骤九;所述I帧为视频序列起始帧或者视频序列中只进行帧内编码的图像帧;所述将当前帧划分为固定大小的互不重叠的图像块称为宏块;所述将当前宏块进行树状划分得到的块称为小块;所述当前帧为正在进行压缩的帧,所述参考帧为当前帧的已经编码并重建的前一帧;所述当前帧所有块的集合称为子块域;所述前一帧的所有块的集合称为父块域;所述块DCT变换中的块采用固定大小模式;对于左目转到步骤四;对于右目转到步骤八;步骤二若中间目为非I帧,用常规单目的运动补偿预测(MCP)编码,对该帧进行互不重叠的宏块划分,然后计算这些宏块以及经树状划分得到的小块的像素和、像素平方和,以及中间目前一帧重建图像即参考帧中,按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和;步骤三依次对当前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏块进行块匹配;在进行子块与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块的大小与子块的大小相同;如果匹配误差RMS小于开始设定的阈值γ,保存当前的迭代函数系统系数即IFS系数,转入步骤三编码下一宏块;否则,依次按照树状结构对该块进行划分,并对各个划分得到的小块分别计算匹配误差RMS,如果RMS小于设定阈值γ,停止划分并记录该小块IFS系数,转入步骤三编码下一宏块;否则继续划分,直到将当前块划分为预先设定的最小块,记录IFS系数;转入步骤三编码下一宏块;所述搜索窗为在参考帧中的矩形搜索区域;所述IFS系数包括父块位置(x,y)和比例因子s、偏移因子o;如果当前帧所有的宏块都已编码完毕,且是中间目,则转到步骤九;若是左目或右目,则转到步骤五;步骤四对左目图像,首先进行互不重叠的宏块划分,然后计算这些宏块以及经树状划分得到的小块的像素和、像素平方和,以及左目前一帧重建图像参考帧,按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,以减少块匹配过程中的重复计算,转到步骤三;步骤五计算中间目中对应帧图像参考帧,按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,以减少块匹配过程中的重复计算,转到步骤六;步骤六首先对与当前子块位置相同的父块进行块匹配,得到RMS,并保存迭代函数系统系数,该系数包括父块与子块的相对位移矢量(x,y),比例因子s和偏移因子o;依次对当前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏块进行块匹配;在进行子块与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块的大小与子块的大小相同并转入步骤七;如果所得的匹配误差RMS小于开始设定的阈值γ,保存当前的迭代函数系统系数即IFS系数,转入步骤六编码下一宏块;否则,依次按照树状结构对该块进行划分,并对各个划分得到的小块分别转入步骤七计算匹配误差RMS,如果RMS小于设定阈值γ,停止划分并记录该小块IFS系数,转入步骤六编码下一宏块;否则继续划分,直到将当前块划分为预先设定的最小块,转入步骤七计算RMS,记录IFS系数,转入步骤六编码下一宏块;最后与步骤三所得结果比较,选择误差最小的作为预测结果;所述搜索窗为在参考帧中的矩形搜索区域;所述IFS系数包括父块位置(x,y)和比例因子s、偏移因子o;如果当前帧所有的宏块都已编码完毕,则转到步骤九;步骤七利用DCP快速方法,得到匹配误差RMS,继续执行步骤六;步骤八对于右目图像,首先进行互不重叠的宏块划分,然后计算这些宏块以及经树状划分得到的小块的像素和、像素平方和,以及右目前一帧重建图像参考帧,按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,以减少块匹配过程中的重复计算,转到步骤三;步骤九对所有IFS系数进行Huffman编码,降低IFS系数数据的统计冗余;判断当前帧是否为最后一帧,如果是最后一帧结束编码;否则,返回步骤一继续处理下一帧图像。
2.根据权利要求1所述一种基于分形的多目立体视频压缩编码方法,其特征在于对 于中间目,设多目立体视频总目数为N,这里N为奇数,则中间目指第(N+l)/2目,它左边的 所有目都称为左目,右边的所有目都称为右目。和中间目等距的左右目构成三目,进行相应 的MCP+DCP处理,并且每个处理中彼此独立,左目内部或右目内部之间都没有对应联系。
3.根据权利要求1所述一种基于分形的多目立体视频压缩编码方法,其特征在于处 理的视频序列为YUV格式,分别对3个分量中的每个采用上述九个步骤进行处理。
4.根据权利要求1所述一种基于分形的多目立体视频压缩编码方法,其特征在于所 述步骤三和步骤六中对宏块采用树状划分,块匹配采用匹配误差准则;子块与父块的匹配 误差RMS为其中,N为子块和父块像素的个数,r,为子块的像素值,Cli为父块的像素值; 计算当前宏块在参考帧中的块匹配误差RMS,其中ri是子块的像素值,Cli是父块的像素 值;如果RMS小于预先设定的阈值Y,记录IFS系数,IFS系数包括匹配块的位移矢量(X,y) 和公式2,3中的s和0,处理下一宏块;否则,对当前宏块进行树状划分,计算划分后小块的 RMS,如果小于阈值Y,则停止划分,否则继续划分,直到子块达到预先设定的最小块为止。
5. 一种基于分形的多目立体视频解压缩方法,包含以下步骤 步骤I 首先读入中间目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和 插入I帧的间隔;步骤II 判断解码帧是否为I帧,若是I帧转入步骤III,否则转入步骤IV ; 步骤III 对于I帧,从压缩文件中读入码流,进行类似于JPEG的解压缩方式进行解 码,帧数加一转入步骤VII ;步骤IV 对于非I帧,计算中间目前一帧中按照设定步长划分的所有宏块以及经树状 划分得到的小块的像素和、像素平方和;步骤V 读入左目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和插入I 帧的间隔;计算左目前一帧和中间目对应帧中按照设定步长划分的所有宏块以及经树状划 分得到的小块的像素和、像素平方和;步骤VI 读入右目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和插入I 帧的间隔;计算右目前一帧和中间目对应帧中按照设定步长划分的所有宏块以及经树状划 分得到的小块的像素和、像素平方和;步骤VII 从对应的压缩文件中读入块的划分信息和Huffman码流,并根据以上的信 息得到该帧所有宏块的划分方式和每一个小块的迭代函数系统系数,按照每一宏块进行解 码;转入步骤VIII ;步骤VIII 判断此时所有帧是否都已解码,若都解码完毕,结束解码过程,否则转入步 骤II。
6.根据权利要求5所述一种基于分形的多目立体视频解压缩方法,其特征在于对于 每一个宏块进行解压缩时,首先判断该宏块在编码时的划分方式,对于每一个子块,首先在 父块域找到与该子块相对应的区域,然后利用下面的公式获得该子块的像素值,Ti = s · di+o(4)其中A为待解码子块的像素值,di为父块域中的像素值,S为比例因子,O为偏移因子。
7.根据权利要求5所述一种基于分形的多目立体视频解压缩方法,其特征在于在基 于分形的立体视频解码过程中,中间目用常规单目的运动补偿预测(MCP)编码,左目和右 目的每个图像块通过运动补偿预测(MCP)和视差补偿预测(DCP)两种方式进行预测,从中 选择误差较小的一种作为预测结果。
8.根据权利要求5所述一种基于分形的多目立体视频解压缩方法,其特征在于处理 的视频序列为YUV格式,分别对3个分量中的每个采用上述八个步骤进行处理。
全文摘要
本发明提出了一种基于分形的多目立体视频压缩与解压缩方法,在多目立体视频编码中,选取中间目作为参考目,使用MCP原理压缩,其它目都使用基于DCP+MCP的原理压缩。以三目视频为例,中间目作为参考目,采用单独的运动补偿预测方式(MCP)进行编码,首先对起始帧采用块DCT变换编码,对非I帧进行块运动估计/补偿编码,然后在前一帧即中间目视频的参考帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方法压缩迭代函数系统系数。左目和右目分别采用MCP加视差补偿预测方式(DCP)进行编码,在进行DCP编码方式时,充分利用立体平行摄像结构中的偏振性和方向性。对应的解压缩过程为首先对I帧采用反DCT变换的方式解码,对非I帧进行Huffman解码获得迭代函数系统系数,然后进行基于宏块的解码,对于中间目,计算前一帧中的父块域相关子块的像素和与像素平方和;对于左目和右目,分别计算其前一帧和中间目对应帧的父块域相关子块的像素和与像素平方和。
文档编号H04N13/00GK101980539SQ20101052216
公开日2011年2月23日 申请日期2010年10月21日 优先权日2010年10月21日
发明者侯仰拴, 王再阔, 祝世平, 陈菊嫱 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1