一种基于对象和分形的双目立体视频压缩编解码方法

文档序号:7763316阅读:424来源:国知局
专利名称:一种基于对象和分形的双目立体视频压缩编解码方法
技术领域
本发明属于视频压缩编码领域,涉及双目立体视频的压缩编码,特别涉及一种基 于对象和分形的视频压缩编码方法。在保证图像质量的前提下,一定程度上增大了压缩比, 而且大大加快了分形双目立体视频编码的速度,缩短了编码时间。
背景技术
基于对象(Object-Based,简称0B)编码的概念最早由MPEG-4标准提出,使用 基于对象的视频压缩编码方法使得每一帧视频的前景对象和背景对象得以独立的进行编 码,可以进一步提高压缩比,同时在解码端可以实现一些新的功能,比如针对每一个视频 对象的独立的传输和解码、对象和背景的替换、基于对象的视频检索、特别是相对于标准 的编码方法,在对象的边界上可以获得更好的图像质量,因为物体的边界通常和图像中的 边缘相重合,它是编码困难的部分。MPEG-4提出了基于对象的视频编码技术标准,在视 频分析中,以视频对象为基本单位,每一个视频事件和场景都可以视为由视频中所有语义 对象的静态属性(如形状、色彩、纹理)及其动态属性(运动强度、方向、节奏)组合而 成的。在以对象为基本分析单位的视频分析方法,符合人类的思维方式和视觉特点,排除 了视频中不重要的部分对视频分析的干扰(参见Liang Zhang. Object-basedMethod of important video clips Extraction[J]. Journal of Beijing Information Science andTechnology University,2009,24(4) 83-86), ( # B Bo Huang, Yujian Huang. A ScalableObject-based Wavelet Coder[J]. Radio Communications Technology,2009, 35(1) :35_38),(参见Kassim Ashraf a, Zhao L F. Rate-scalable object-based wavelet codec with implicitshape coding[J]. IEEE Transactions on Circuits and Systems for Video Technology, 2000,10 (7) :1068_1079)。基于对象的视频编码方法可以提高视频 压缩编码的性能并使其具有更多的灵活性。分形理论最初由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)方法中,为了保证起始帧经过自身的循环解码能够近似收敛到原来的图 像,压缩过程需要经过复杂变换、搜索和迭代等,压缩时间和图像质量难以达到要求。目前 典型的分形图像和视频压缩方法的运算量很大,编码速度较慢,并且解码的质量有待提高, 使得分形图像和视频压缩方法还需要进一步的改进和提高。随着多媒体技术的不断发展,多视点视频因其具有单目视频无法比拟的优越性 渐渐成为研究的热点。而双目立体视频是多视点视频中应用最为广泛的一种形式,它 增加了场景的深度信息,使欣赏到的图像有强烈的现实感和逼真感,可以应用于立体电 视,远程教育,远程工业控制,远程医学诊断和虚拟现实等众多领域(参见A Schertz. Sourcecoding of stereoscopic television pictures[C]. Proceedings of the IEEE InternationalConference on Image Processing and its Applications. Maastricht, The Netherlands, 1992,462-464.)。双目立体视频是利用人眼睛的双目视差原理,双目 各自独立地接收来自同一场景的特定摄像点的左右图像,左眼看偏左的图像,右眼看偏右 的图像,形成双目视差,大脑能得到图像的深度信息,使欣赏到的图像有强烈深度感、逼真 感,观众能欣赏到超强的立体视觉效果。但是相对于单目视频,双目立体视频系统必须传 输和存储翻番的数据量,所以必须对其进行有效地压缩。(参见Shigang Wang, Xuejun Wang,HexinChen. Stereoscopic video compression coding based on H. 264[J]. Chinese Journal ofStereology and Image Analysis,2008,13(1) : 11—16)在双目立体视频编码过程中,不但要考虑各通道内前后帧图像之间的时域相关性 和帧内图像的空域相关性,还要充分利用通道之间的空域相关性进行编码。前者可以利用 运动补偿预测(MCP)去除冗余,后者可以采用视差补偿预测(DCP)去除通道间冗余。DCP与MCP相比要复杂的多,其中的关键技术是视差匹配。Michael Ε. Lukaces是双目立体视 频编码的早期研究者,他探索了将视差补偿(DC-based)(指使用双目视差关系在两幅图像 之间建立对应)用于从双目立体视频序列中的一个视频序列预测另一个视频序列,并提出 了多种基于视差补偿的方法(参见 Lukacs M E, Predictive coding ofmulti-viewpoint image sets[C]. IEEE International Conference on Acoustics, Speech andSignal Processing,1986,521-524)。Perkins将基于视差补偿的方法归纳为一种条件编码方法,对 于无损编码来说是最优的,对于有损编码则是次优的(参见Perkins M G. Datacompression of stereo pairs[J]. IEEE Transactions on Communications,1992,40 (4) :684_696)。 Tzovaras等人提出了视差估计的分层块匹配以及运动视差双向补偿方法,称之为聚合估计 (参见Tzovaras D,Grammalidis N, Strintzis M G. Object-based codingof stereoscopic image sequences using joint 3D motion/disparity segmentation[C]. Proceedings of SPIE :Visual Communication and Image Processing,1995,1678-1689)。另夕卜 Franich 还提出了基于通用块匹配算法的视差估计方法,并引入一种平滑检测手段来评价视差匹 配好坏(参见 Franch REH, Lagendijk R L,Biemond J. Stereo-enhanceddisplacement estimation by genetic block matching[C]. Proceedings of SPIE :Volume2094-Visual Communications and Image Processing. Cambridge,MA, USA,1993,362-371)。Siram Sethuramn以及M. Siegel等人提出了基于视差和运动的可变块四叉树多分辨率分割方法, 针对基于MPEG视频编码标准的双目立体视频流的编码,按在解码端是否有合成中间视图 的需要,提出了两个双目立体视频流的混合分辨率编码方法(参见Sethuraman S,SiegelM W, Jordan A G.Segmentation based coding of stereoscopicimage sequences[C]. Proceedings of SPIE Volume 2668—Digital Video Compression :Algorithms and Technologies. San Jose, CA, USA,1996,420-429)。常用的双目立体视频编码方案有 独 AL MCP(Motion Compensated Prediction)编码,M fS] DCP(DisparityCompensated Prediction)编码和MCP与DCP相结合编码。其中在MCP与DCP相结合编码中,基本层采用 独立MCP编码,增强层采用MCP与DCP两种方式进行预测,从中选择误差较小的一种作为预 测结果。

发明内容
本发明提出了一种基于对象和分形的双目立体视频压缩与解压缩方法,在双目立 体视频编码中以左通道为基本层,右通道为增强层,左通道采用单独的运动补偿预测方式 (MCP)进行编码。首先利用视频分割方法获得视频对象分割平面即Alpha平面,对左目的起 始帧采用块DCT变换编码,对左目的非I帧进行块运动估计/补偿编码。然后利用Alpha平 面判别该图像块的区域属性,如果该块不在当前编码的视频对象区域内,则对该外部块不 做处理;如果该块全部都在当前编码的视频对象区域内,在内部块的前一帧即左目视频的 参考帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方法压缩迭 代函数系统系数;如果该块的部分像素在当前编码的视频对象区域内,部分像素不在当前 编码的视频对象区域内,则对该边界块需要单独处理。右通道采用MCP加视差补偿预测方 式(DCP)进行编码,MCP是与左目类似的处理,选择误差最小的作为预测结果。在进行DCP 编码方式时,又充分利用立体平行摄像结构中的偏振性和方向性。
8
一种基于对象和分形的双目立体视频压缩编码方法,包括以下步骤步骤一利用自动视频对象分割方法对视频序列进行自动分割,获取每一帧的视 频对象分割平面即Alpha平面,根据得到的视频对象分割平面确定要编码的视频对象区 域;把正在进行压缩的帧称为当前帧,把当前帧的已经编码并重建的前一帧称为参考帧;步骤二 对于左目,首先判断是否为I帧,若是I帧,则对该帧进行互不重叠的固定 大小的块划分,对每一个图像块分别采用基于块DCT变换的帧内图像压缩方法,对该帧图 像进行单独编码和解码,解码之后的像素若属于Alpha平面中待编码的视频对象则保留该 像素值,否则将像素值置零后转到步骤十四;所述I帧为视频序列起始帧或者视频序列中 只进行帧内编码的图像帧;所述将当前帧划分为固定大小的互不重叠的图像块称为宏块; 所述将当前宏块进行树状划分得到的块称为小块;所述当前帧所有块的集合称为子块域; 所述前一帧的所有块的集合称为父块域;所述块DCT变换中的块采用固定大小模式;对于 右目,转到步骤六;步骤三若左目为非I帧,用常规单目的运动补偿预测(MCP)编码,对当前帧进行 互不重叠的宏块划分,然后计算这些宏块以及经树状划分得到的小块的像素和、像素平方 和,以及左目前一帧重建图像即参考帧中,按照设定步长划分的所有宏块以及经树状划分 得到的小块的像素和、像素平方和;步骤四对当前正在处理的图像块即当前块,利用Alpha平面判别该图像块的区 域属性;如果该块不在当前编码的视频对象区域内,对该块不做处理;如果该块全部都在 当前编码的视频对象区域内,转入步骤五;如果该块的部分像素在当前编码的视频对象区 域内,部分像素不在当前编码的视频对象区域内,需要单独处理,转入步骤十三;如果所有 的宏块都已处理完毕,则转到步骤十四;所述不在当前编码的视频对象区域内的块称为外 部块,所述全部都在当前编码的视频对象区域内的块称为内部块,所述部分像素不在当前 编码的视频对象区域内的块为边界块;步骤五依次对当前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏 块进行块匹配;在进行子块与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块 的大小与子块的大小相同;如果匹配误差RMS小于开始设定的阈值Y,保存当前的迭代函 数系统系数即IFS系数,转入步骤五编码下一宏块;否则,依次按照树状结构对该块进行划 分,并对各个划分得到的小块分别计算匹配误差RMS,如果RMS小于设定阈值Y,停止划分 并记录该小块IFS系数,转入步骤五编码下一宏块;否则继续划分,直到将当前块划分为预 先设定的最小块,记录IFS系数;转入步骤五编码下一宏块;所述搜索窗为在参考帧中的矩 形搜索区域;所述IFS系数包括父块位置(X,y)和比例因子S、偏移因子ο ;如果当前帧所 有的宏块都已编码完毕,且是左目,则转到步骤十四,若是右目,则继续执行步骤七;步骤六对右目图像,首先进行互不重叠的宏块划分,然后计算这些宏块以及经树 状划分得到的小块的像素和、像素平方和,以及右目前一帧重建图像参考帧,按照设定步长 划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,以减少块匹配过程中 的重复计算,转到步骤五;步骤七计算左目中对应帧图像参考帧,按照设定步长划分的所有宏块以及经树 状划分得到的小块的像素和、像素平方和,转到步骤八;步骤八对当前正在处理的图像块即当前块,利用Alpha平面判别该图像块的区域属性;如果该块不在当前编码的视频对象区域内,对该块不做处理;如果该块全部都在 当前编码的视频对象区域内,转入步骤九;如果该块的部分像素在当前编码的视频对象区 域内,部分像素不在当前编码的视频对象区域内,需要单独处理,转入步骤十三;如果所有 的宏块都已处理完毕,则转到步骤十四;步骤九首先对与当前子块位置相同的父块进行块匹配,得到RMS,并保存迭代函 数系统系数,该系数包括父块与子块的相对位移矢量(X,y),比例因子S和偏移因子O;依 次对当前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏块进行块匹配;在进 行子块与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块的大小与子块的大 小相同并转入步骤十;如果所得的匹配误差RMS小于开始设定的阈值Y,保存当前的迭代 函数系统系数即IFS系数,转入步骤九编码下一宏块;否则,依次按照树状结构对该块进行 划分,并对各个划分得到的小块分别转入步骤十计算匹配误差RMS,如果RMS小于设定阈值 Y,停止划分并记录该小块IFS系数,转入步骤九编码下一宏块;否则继续划分,直到将当 前块划分为预先设定的最小块,转入步骤十计算RMS,记录IFS系数,转入步骤九编码下一 宏块;最后与步骤五所得结果比较,选择误差最小的作为预测结果;如果当前帧所有的宏 块都已编码完毕,则转到步骤十四;步骤十在垂直方向上先上下隔行搜索两个点;如果这两个点的RMS均大于偏振 线上点的RMS转到步骤十一,否则转到步骤十二 ;步骤十一只沿初始点的右侧进行搜索,在搜索过程中进行跳跃式搜索;向右间 隔两个点进行搜索,计算RMS,转入步骤十进行垂直方向搜索;如果当前点的RMS小于前一 点的RMS,将当前点作为新的起始搜索点,转回到步骤十一开始位置,继续水平搜索下一点; 否则说明当前点的RMS大于前一点的RMS,即最佳匹配点位于这两点之间,选择合适的小区 域进行全搜索,至此选择RMS最小的点作为最终匹配结果,结束DCP搜索过程,继续执行步 骤九;步骤十二 选择两点中RMS最小的点,在垂直方向上再搜索相邻两点之间的点,计 算其RMS,选择误差最小的点作为此垂直方向上的最佳匹配点,转入步骤十一继续沿偏振线 方向进行搜索;步骤十三该步骤单独处理边界块,当前帧的边界块只在父块中的属于边界块和 内部块中搜索匹配,当前块和父块的像素选取准则是在当前块中只计算位于当前编码的 视频对象区域内的像素值,只在参考帧的相同视频对象区域内进行块匹配;对于父块中,如 果与当前块的相对应位置的父块中的某一像素也属于该视频对象区域,则采用原像素值, 否则,用其它属于该视频对象区域像素的平均值代替;转到步骤五;步骤十四对所有IFS系数进行Huffman编码,降低IFS系数数据的统计冗余;判 断当前帧是否为最后一帧,如果是最后一帧结束编码;否则,返回步骤二继续处理下一帧图 像。所述一种基于对象和分形的双目立体视频压缩编码方法,处理的视频序列为YUV 格式,分别对3个分量中的每个采用上述十四个步骤进行处理。所述步骤五中对宏块采用树状划分,块匹配采用匹配误差准则;子块与父块的匹 配误差RMS为RMS: 二 N
N 0 Nn NN N
Σ rz+s(s Σ dZ-2 Σ r.d. + 2o Σ dz) + o(N-o-2 Σ r.)
=1
=1
=1
=1
=1
(1)
其中参数8和0分别为
NN NO = —[ Σ r -S Σ d ]
Ν i=\l ι=1 1其中,N为子块和父块像素的个数,r,为子块的像素值,Cli为父块的像素值;计算当前宏块在参考帧中的块匹配误差RMS,其中ri是子块的像素值,Cli是父块的 像素值;如果RMS小于预先设定的阈值Y,记录IFS系数,IFS系数包括匹配块的位移矢量 (X,y)和公式2,3中的s和0,处理下一宏块;否则,对当前宏块进行树状划分,计算划分后 小块的RMS,如果小于阈值Y,则停止划分,否则继续划分,直到子块达到预先设定的最小 块为止。所述步骤十中垂直方向的搜索方法运用了双目立体视频的偏振性,最佳匹配点位 于偏振线上即水平线上在立体平行摄像系统中,沿水平方向进行DCP搜索;两摄像机在同一时刻观看空间同一特征点P(x。,y。,ζ。),在左图像和右图像的坐标 分别为 Pleft — (Xleft,Yleft), Pright = (Xright,Yright);其中点P(x。,y。,z。)与两个光心所确定的 平面称为偏振平面,偏振平面与左右图像的交线称为偏振线;由几何关系得到
Xngk! 二 f
Zc
(Xc-B)
(4)
Y^f-
zC所述步骤十一中水平方向的搜索方法运用了双目立体视频的方向性;同一空间点
β
在两图像平面中的投影位置差矢量即视差D = IteA=/—;由此可知视差D是深度Z
zC
的函数,表示相对深度;对于同一特征点,其透视投影左图像是右图像沿水平负向的局部平 移,说同一空间点在右图像上的图像坐标比在左图像上的图像坐标偏右,在搜索时只需沿 一个方向进行。一种基于对象和分形的双目立体视频解压缩方法,其特征在于包含以下步骤步骤I 首先读入左目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量 和插入I帧的间隔;步骤II 判断解码帧是否为I帧,若是I帧转入步骤III,否则转入步骤IV ;步骤III 对于I帧,从压缩文件中读入码流,并读入该帧的Alpha平面,进行类似 于JPEG的解压缩方式进行解码,解码之后的文件包括基于不同对象的视频文件和完整的 视频文件,在基于对象的视频文件中,根据Alpha平面,判断对应的对象属性,属于该对象
11的像素保留,不属于该对象的像素置零,帧数加一转入步骤VII ;步骤IV 对于非I帧,计算左目前一帧中按照设定步长划分的所有宏块以及经树 状划分得到的小块的像素和、像素平方和;步骤V 读入右目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和插 入I帧的间隔;计算右目前一帧和左目对应帧中按照设定步长划分的所有宏块以及经树状 划分得到的小块的像素和、像素平方和,转入步骤VI ;步骤VI 从对应的压缩文件中读入块的划分信息和Huffman码流以及该帧的 Alpha平面,并根据以上的信息得到该帧所有宏块的划分方式和每一个小块的迭代函数系 统系数,利用Alpha平面判别该图像块的区域属性,将当前块分成内部块、外部块和边界 块;对于内部块,按照每一宏块进行分形解码;对于内部块,按照每一宏块进行分形解码; 外部块不用处理;边界块用均值代替,进行分形解码;步骤VII 判断此时所有帧是否都已解码,若都解码完毕,结束解码过程,否则转 入步骤II。对于每一个宏块进行解压缩时,首先判断该宏块在编码时的划分方式,对于每一 个子块,首先在父块域找到与该子块相对应的区域,然后利用下面的公式获得该子块的像
素值Γ = s · di+o(5)其中ri为待解码子块的像素值,d,为父块域中的像素值,s为比例因子,ο为偏移 因子。在基于对象的解码过程中,利用Alpha平面判别该图像块的区域属性,将当前块 分成内部块、外部块和边界块;当前块中只有属于该对象区域的像素,即内部块才进行解 码;在父块域中只利用属于同一对象区域的像素进行解码,假如父块域中的某个子块中部 分像素不属于该视频对象即边界块,这部分像素的值用该子块中属于该对象区域的像素的 平均值代替。在基于对象和分形的双目立体视频解码过程中,左目用常规单目的运动补偿预测 (MCP)编码,右目的每个图像块通过运动补偿预测(MCP)和视差补偿预测(DCP)两种方式进 行预测,从中选择误差较小的一种作为预测结果。处理的视频序列为YUV格式,分别对3个分量中的每个采用上述七个步骤进行处理。本发明所提出的一种基于对象和分形的双目立体视频压缩方法的优点在于(1)本方法中对起始帧采用帧内块DCT变换编码,相对于CPM/NCIM编码方案,不但 大幅度减少了压缩时间和块效应,而且提高了峰值信噪比。(2)本方法先将一帧图像划分为互不重叠的、由若干固定大小尺寸的宏块组成的 棋盘格式,然后根据匹配准则与设定阈值的关系,对宏块进行树状结构划分,相对于四叉树 划分准则,大大降低了计算复杂度,提高了编码速度。(3)本方法在进行子块的块匹配之前,计算当前帧互不重叠的宏块及其经树状划 分之后得到的小块的像素和与像素平方和;在参考帧中,按照匹配步长分别计算各宏块以 及经树状划分以后得到的小块的像素和与像素平方和;避免了在块匹配过程中出现重复计 算的弊端,大大节约了子块的匹配时间。
(4)本方法中,左目的编码方式与单目分形编码相同;右目中,除了采用前一帧作 为参考帧外,加入了左目对应的帧作为参考帧,选取误差最小的块作为父块,使得面向的范 围更广,实现更好的效果。(5)本方法引入了基于对象的视频编码方法,利用Alpha平面判别该图像块的区 域属性,将当前块分成内部块、外部块和边界块;基于对象的编码方法在非基于对象方法的 基础之上又进一步提高了分形压缩的性能,不但增加了压缩比和峰值信噪比,而且使得压 缩具有更大的灵活性。(6)本方法中,在进行DCP编码方式时,充分利用立体平行摄像结构中的偏振性和 方向性,对DCP搜索方式进行了简化运算,提出了一种新型快速搜索算法。


图Ia为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法的左目 MCP压缩流程图;图Ib为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法的右目 DCP压缩流程图;图Ic为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法的左目 MCP解压缩流程图;图Id为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法的右目 DCP解压缩流程图;图Ie为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法的DCP快 速算法流程图;图2a为标准测试视频序列“ion. cif ”的第2帧的左目图像;图2b为标准测试视频序列“ion. cif”的第2帧的右目图像;图2c为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法得到的标 准测试视频序列“ ion. cif”的第2帧左目的Alpha分割平面;图2d为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法得到的标 准测试视频序列“ion. cif”的第2帧右目的Alpha分割平面;图2e为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法单独解码 经本发明方法压缩编码以后的标准测试视频序列“ion. cif”的第2帧左目的前景视频对象 的结果图像;图2f为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法单独解码 经本发明方法压缩编码以后的标准测试视频序列“ion. ciff ”的第2帧的右目的前景视频 对象的结果图像;图3为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法的MCP和 DCP结构示意图;图4a为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法对宏块的 四种划分模式图;图4b为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法对宏块的 划分模式四进一步进行划分的四种划分模式13
图5为双目立体平行摄像系统成像原理图;图6为本发明一种基于对象和分形的双目立体视频视频压缩与解压缩方法的DCP 快速搜索模式图;图7a为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法对基于对 象的三种图像块的标记图;图7b为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法对边界块 属于不同视频对象区域的像素的标记图;图8a为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法与传统的 CPM/NCIM方法对标准测试视频序列“ion. cif ”右目的前5帧进行压缩的峰值信噪比的对比 图;图8b为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法与传统的 CPM/NCIM方法对标准测试视频序列“ion. cif”右目的前5帧进行压缩的压缩比的对比图;图8c为本发明一种基于对象和分形的双目立体视频压缩与解压缩方法与传统的 CPM/NCIM方法对标准测试视频序列“ion. cif ”右目的前5帧进行压缩的时间对比图。
具体实施例方式下面将结合附图对本发明方法作进一步的详细说明,仅以亮度分量Y为例,色差 分量U和V的压缩步骤与亮度分量相同。本发明提出了一种基于对象和分形的双目立体视频压缩与解压缩方法,在双目立 体视频编码中以左通道为基本层,右通道为增强层,左通道采用单独的运动补偿预测方式 (MCP)进行编码。首先利用视频分割方法获得视频对象分割平面即Alpha平面,对左目的起 始帧采用块DCT变换编码,对左目的非I帧进行块运动估计/补偿编码。然后利用Alpha平 面判别该图像块的区域属性,如果该块不在当前编码的视频对象区域内,则对该外部块不 做处理;如果该块全部都在当前编码的视频对象区域内,在内部块的前一帧即左目视频的 参考帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方法压缩迭 代函数系统系数;如果该块的部分像素在当前编码的视频对象区域内,部分像素不在当前 编码的视频对象区域内,则对该边界块需要单独处理。右通道采用MCP加视差补偿预测方 式(DCP)进行编码,MCP是与左目类似的处理,选择误差最小的作为预测结果。在进行DCP 编码方式时,又充分利用立体平行摄像结构中的偏振性和方向性。如附图Ia和图Ib所示,一种基于对象和分形的双目立体视频压缩编码方法,包括 以下步骤步骤一以标准测试视频序列“ion.cif”的前5帧为例。利用自动视频对象分割 方法对视频序列进行自动分割,获取Alpha平面。视频中的对象可以通过Alpha平面进行 定义,并且可以独立进行压缩编码。附图2b是标准测试视频序列“ion. cif”右目的第2 帧,附图2d为该帧的Alpha平面,前景用黑色表示,背景用白色表示。如附图2b所示,图像 中有两个视频对象,那么Alpha平面就可以是一个二值图像,用黑色代表前景,白色代表背 景。每个对象都可以独立地进行压缩,使得每个对象组成一个码流。所以在解压缩时,不需 要得到整幅图像,而是可以单独恢复和控制每个对象。单独解压缩前景视频对象的结果为 附图2f。引入基于对象的编码不但提高了压缩性能,而且增加了视频编码方法的灵活性。
步骤二 对于左目,首先判断是否为I帧,若是I帧,则对该帧进行互不重叠的固 定大小的块划分,对每一个图像块分别采用基于块DCT变换的I帧帧内图像压缩方法,对该 帧图像进行单独编码和解码,解码之后的像素若属于Alpha平面中待编码的视频对象则保 留该像素值,否则将像素值置零后转到步骤十四;所述I帧为视频序列起始帧或者视频序 列中只进行帧内编码的图像帧;所述将当前帧划分为固定大小的互不重叠的图像块称为宏 块;所述将当前宏块进行树状划分得到的块称为小块;所述当前帧为正在进行压缩的帧, 所述参考帧为当前帧的已经编码并重建的前一帧;所述当前帧所有块的集合称为子块域; 所述前一帧的所有块的集合称为父块域;所述块DCT变换中的块采用固定大小模式。对于 右目,转到步骤六;对视频序列“ ion. cif"起始帧,对每一个图像块分别采用基于块DCT变换的I帧 帧内图像压缩方法,将起始帧划分为8X8的互不重叠的子块,对每一子块分别进行DCT变 换。离散余弦变换将8X8的图像样本X,变换成8X8的系数矩阵Y。变换过程(包括反变 换)可以用变换矩阵A来表示。8X8样本块的正向DCT(FDCT)变换如下Y = AXAt(6)反向DCT(IDCT)如下X = AtYA(7)其中A是8X8的变换矩阵。A中的各个元素如下A..=C.COS{2j + l)m(8)
U ι 16其中C. =J- (i = 0) C.=- (i > 0)(9)
‘V8ι 2i,j分别为矩阵A的行和列。对变换系数进行量化和编码,转入步骤十四。附图3为双目立体视频编码的MCP 和DCP结构示意图。步骤三若左目为非I帧,用常规单目的运动补偿预测(MCP)编码,对当前非I帧 图像进行互不重叠的16 X 16宏块划分,分别计算当前帧互不重叠的16X16,16X8,8X16, 8X8,8X4,4X8,4X4的小块的像素和与像素的平方和。然后分别计算参考帧也就是前一 帧的解压缩图像中以1为步长的大小分别为16X16,16X8,8X16,8X8,8X4,4X8,4X4 的小块的像素和与像素的平方和,以减少块匹配过程中的重复计算。从第一个宏块开始处 理,依次对当前帧的所有16X16宏块进行编码,转入步骤四;步骤四在当前帧中按照互不重叠的16X16的宏块进行块匹配,利用Alpha平面 判别该图像块的区域属性;根据该宏块的类型,做出如下的选择,如果该宏块不在Alpha平 面内,对该块不做处理,继续处理下一宏块;如果该宏块全部位于Alpha平面内,转入步骤 五;如果该宏块部分位于Alpha平面内,转入步骤十三。如果当前帧宏块全部匹配完毕后, 转入步骤十四。所述不在当前编码的视频对象区域内的块称为外部块,所述全部都在当前 编码的视频对象区域内的块称为内部块,所述部分像素不在当前编码的视频对象区域内的 块为边界块。
步骤五依次对当前帧的所有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,即
权利要求
一种基于对象和分形的双目立体视频压缩编码方法,其特征在于具体步骤如下步骤一利用自动视频对象分割方法对视频序列进行自动分割,获取每一帧的视频对象分割平面即Alpha平面,根据得到的视频对象分割平面确定要编码的视频对象区域;把正在进行压缩的帧称为当前帧,把当前帧的已经编码并重建的前一帧称为参考帧;步骤二对于左目,首先判断是否为I帧,若是I帧,则对该帧进行互不重叠的固定大小的块划分,对每一个图像块分别采用基于块DCT变换的帧内图像压缩方法,对该帧图像进行单独编码和解码,解码之后的像素若属于Alpha平面中待编码的视频对象则保留该像素值,否则将像素值置零后转到步骤十四;所述I帧为视频序列起始帧或者视频序列中只进行帧内编码的图像帧;所述将当前帧划分为固定大小的互不重叠的图像块称为宏块;所述将当前宏块进行树状划分得到的块称为小块;所述当前帧所有块的集合称为子块域;所述前一帧的所有块的集合称为父块域;所述块DCT变换中的块采用固定大小模式;对于右目,转到步骤六;步骤三若左目为非I帧,用常规单目的运动补偿预测(MCP)编码,对当前帧进行互不重叠的宏块划分,然后计算这些宏块以及经树状划分得到的小块的像素和、像素平方和,以及左目前一帧重建图像即参考帧中,按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和;步骤四对当前正在处理的图像块即当前块,利用Alpha平面判别该图像块的区域属性;如果该块不在当前编码的视频对象区域内,对该块不做处理;如果该块全部都在当前编码的视频对象区域内,转入步骤五;如果该块的部分像素在当前编码的视频对象区域内,部分像素不在当前编码的视频对象区域内,需要单独处理,转入步骤十三;如果所有的宏块都已处理完毕,则转到步骤十四;所述不在当前编码的视频对象区域内的块称为外部块,所述全部都在当前编码的视频对象区域内的块称为内部块,所述部分像素不在当前编码的视频对象区域内的块为边界块;步骤五依次对当前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏块进行块匹配;在进行子块与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块的大小与子块的大小相同;如果匹配误差RMS小于开始设定的阈值γ,保存当前的迭代函数系统系数即IFS系数,转入步骤五编码下一宏块;否则,依次按照树状结构对该块进行划分,并对各个划分得到的小块分别计算匹配误差RMS,如果RMS小于设定阈值γ,停止划分并记录该小块IFS系数,转入步骤五编码下一宏块;否则继续划分,直到将当前块划分为预先设定的最小块,记录IFS系数;转入步骤五编码下一宏块;所述搜索窗为在参考帧中的矩形搜索区域;所述IFS系数包括父块位置(x,y)和比例因子s、偏移因子o;如果当前帧所有的宏块都已编码完毕,且是左目,则转到步骤十四,若是右目,则继续执行步骤七;步骤六对右目图像,首先进行互不重叠的宏块划分,然后计算这些宏块以及经树状划分得到的小块的像素和、像素平方和,以及右目前一帧重建图像参考帧,按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,以减少块匹配过程中的重复计算,转到步骤五;步骤七计算左目中对应帧图像参考帧,按照设定步长划分的所有宏块以及经树状划分得到的小块的像素和、像素平方和,转到步骤八;步骤八对当前正在处理的图像块即当前块,利用Alpha平面判别该图像块的区域属性;如果该块不在当前编码的视频对象区域内,对该块不做处理;如果该块全部都在当前编码的视频对象区域内,转入步骤九;如果该块的部分像素在当前编码的视频对象区域内,部分像素不在当前编码的视频对象区域内,需要单独处理,转入步骤十三;如果所有的宏块都已处理完毕,则转到步骤十四;步骤九首先对与当前子块位置相同的父块进行块匹配,得到RMS,并保存迭代函数系统系数,该系数包括父块与子块的相对位移矢量(x,y),比例因子s和偏移因子o;依次对当前帧的所有宏块进行编码,在父块域中的搜索窗内首先对该宏块进行块匹配;在进行子块与父块的匹配过程中,子块的位置作为父块的起始搜索点,父块的大小与子块的大小相同并转入步骤十;如果所得的匹配误差RMS小于开始设定的阈值γ,保存当前的迭代函数系统系数即IFS系数,转入步骤九编码下一宏块;否则,依次按照树状结构对该块进行划分,并对各个划分得到的小块分别转入步骤十计算匹配误差RMS,如果RMS小于设定阈值γ,停止划分并记录该小块IFS系数,转入步骤九编码下一宏块;否则继续划分,直到将当前块划分为预先设定的最小块,转入步骤十计算RMS,记录IFS系数,转入步骤九编码下一宏块;最后与步骤五所得结果比较,选择误差最小的作为预测结果;如果当前帧所有的宏块都已编码完毕,则转到步骤十四;步骤十在垂直方向上先上下隔行搜索两个点;如果这两个点的RMS均大于偏振线上点的RMS转到步骤十一,否则转到步骤十二;步骤十一只沿初始点的右侧进行搜索,在搜索过程中进行跳跃式搜索;向右间隔两个点进行搜索,计算RMS,转入步骤十进行垂直方向搜索;如果当前点的RMS小于前一点的RMS,将当前点作为新的起始搜索点,转回到步骤十一开始位置,继续水平搜索下一点;否则说明当前点的RMS大于前一点的RMS,即最佳匹配点位于这两点之间,选择合适的小区域进行全搜索,至此选择RMS最小的点作为最终匹配结果,结束DCP搜索过程,继续执行步骤九;步骤十二选择两点中RMS最小的点,在垂直方向上再搜索相邻两点之间的点,计算其RMS,选择误差最小的点作为此垂直方向上的最佳匹配点,转入步骤十一继续沿偏振线方向进行搜索;步骤十三该步骤单独处理边界块,当前帧的边界块只在父块中的属于边界块和内部块中搜索匹配,当前块和父块的像素选取准则是在当前块中只计算位于当前编码的视频对象区域内的像素值,只在参考帧的相同视频对象区域内进行块匹配;对于父块中,如果与当前块的相对应位置的父块中的某一像素也属于该视频对象区域,则采用原像素值,否则,用其它属于该视频对象区域像素的平均值代替;转到步骤五;步骤十四对所有IFS系数进行Huffman编码,降低IFS系数数据的统计冗余;判断当前帧是否为最后一帧,如果是最后一帧结束编码;否则,返回步骤二继续处理下一帧图像。
2.根据权利要求1所述一种基于对象和分形的双目立体视频压缩编码方法,其特征在 于处理的视频序列为YUV格式,分别对3个分量中的每个采用上述十四个步骤进行处理。
3.根据权利要求1所述一种基于对象和分形的双目立体视频压缩编码方法,其特征在 于所述步骤五中对宏块采用树状划分,块匹配采用匹配误差准则;子块与父块的匹配误 差RMS为
4.根据权利要求1所述一种基于分形的双目立体视频压缩编码方法,其特征在于所 述步骤十中垂直方向的搜索方法运用了双目立体视频的偏振性,最佳匹配点位于偏振线上 即水平线上在立体平行摄像系统中,沿水平方向进行DCP搜索;两摄像机在同一时刻观看空间同一特征点P(x。,y。,z。),在左图像和右图像的坐标分别 % Pleft = (Xleft'Yleft) 'Pright= OCrightJrigJ ;其中点 P U。,Y。,Z。)与两个光心所确定的平面 称为偏振平面,偏振平面与左右图像的交线称为偏振线;由几何关系得到
5.根据权利要求1所述一种基于分形的双目立体视频压缩编码方法,其特征在于所述步骤十一中水平方向的搜索方法运用了双目立体视频的方向性同一空间点在两图像平β面中的投影位置差矢量即视差D = Xkn -Xngh, = /—;视差D是深度Z的函数,表示相对深 度;对于同一特征点,其透视投影左图像是右图像沿水平负向的局部平移,同一空间点在右 图像上的图像坐标比在左图像上的图像坐标偏右,在搜索时沿一个方向进行。
6.一种基于对象和分形的双目立体视频解压缩方法,包含以下步骤步骤I 首先读入左目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和插 入I帧的间隔;步骤II 判断解码帧是否为I帧,若是I帧转入步骤III,否则转入步骤IV ; 步骤III 对于I帧,从压缩文件中读入码流,并读入该帧的Alpha平面,进行类似于 JPEG的解压缩方式进行解码,解码之后的文件包括基于不同对象的视频文件和完整的视频 文件,在基于对象的视频文件中,根据Alpha平面,判断对应的对象属性,属于该对象的像素保留,不属于该对象的像素置零,帧数加一转入步骤VII ;步骤IV 对于非I帧,计算左目前一帧中按照设定步长划分的所有宏块以及经树状划 分得到的小块的像素和、像素平方和;步骤V 读入右目压缩信息,包括压缩帧数,每帧图像的宽和高,I帧压缩质量和插入I 帧的间隔;计算右目前一帧和左目对应帧中按照设定步长划分的所有宏块以及经树状划分 得到的小块的像素和、像素平方和,转入步骤VI ;步骤VI 从对应的压缩文件中读入块的划分信息和Huffman码流以及该帧的Alpha平 面,并根据以上的信息得到该帧所有宏块的划分方式和每一个小块的迭代函数系统系数, 利用Alpha平面判别该图像块的区域属性,将当前块分成内部块、外部块和边界块;对于内 部块,按照每一宏块进行分形解码;外部块不用处理;边界块用均值代替,进行分形解码;步骤VII 判断此时所有帧是否都已解码,若都解码完毕,结束解码过程,否则转入步 骤II。
7.根据权利要求6所述一种基于对象和分形的双目立体视频解压缩方法,其特征在 于对于每一个宏块进行解压缩时,首先判断该宏块在编码时的划分方式,对于每一个子 块,首先在父块域找到与该子块相对应的区域,然后利用下面的公式获得该子块的像素值, Ti = s · di+o(5)其中A为待解码子块的像素值,di为父块域中的像素值,S为比例因子,O为偏移因子。
8.根据权利要求6所述一种基于对象和分形的双目立体视频解压缩方法,其特征在 于在基于分形的双目立体视频解码过程中,左目用常规单目的运动补偿预测(MCP)编码, 右目的每个图像块通过运动补偿预测(MCP)和视差补偿预测(DCP)两种方式进行预测,从 中选择误差较小的一种作为预测结果。
9.根据权利要求6所述一种基于对象和分形的双目立体视频解压缩方法,其特征在 于在基于对象的解码过程中,利用Alpha平面判别该图像块的区域属性,将当前块分成内 部块、外部块和边界块;当前块中只有属于该对象区域的像素,即内部块才进行解码,在父 块域中只利用属于同一对象区域的像素进行解码,假如父块域中的某个子块中部分像素不 属于该视频对象即边界块,这部分像素的值用该子块中属于该对象区域的像素的平均值代 替。
10.根据权利要求6所述一种基于对象和分形的双目立体视频解压缩方法,其特征在 于处理的视频序列为YUV格式,分别对3个分量中的每个采用上述七个步骤进行处理。
全文摘要
本发明提出了一种基于对象和分形的双目立体视频压缩与解压缩方法,在双目立体视频编码中以左通道为基本层,右通道为增强层,左通道采用单独的运动补偿预测方式(MCP)进行编码。首先利用视频分割方法获得视频对象分割平面即Alpha平面,对左目的起始帧采用块DCT变换编码,对左目的非I帧进行块运动估计/补偿编码。然后利用Alpha平面判别该图像块的区域属性,如果该块不在当前编码的视频对象区域内,则对该外部块不做处理;如果该块全部都在当前编码的视频对象区域内,在内部块的前一帧即左目视频的参考帧搜索窗中利用全搜索方法寻找最相似的匹配块,最后利用Huffman编码方法压缩迭代函数系统系数;如果该块的部分像素在当前编码的视频对象区域内,部分像素不在当前编码的视频对象区域内,则对该边界块需要单独处理。右通道采用MCP加视差补偿预测方式(DCP)进行编码,MCP是与左目类似的处理,选择误差最小的作为预测结果。在进行DCP编码方式时,又充分利用立体平行摄像结构中的偏振性和方向性。
文档编号H04N7/26GK101980537SQ20101052215
公开日2011年2月23日 申请日期2010年10月21日 优先权日2010年10月21日
发明者侯仰拴, 王再阔, 祝世平, 陈菊嫱 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1