一种基于模式跳过的视频编码方法和系统的制作方法

文档序号:7868945阅读:116来源:国知局
专利名称:一种基于模式跳过的视频编码方法和系统的制作方法
技术领域
本发明属于视频编解码领域,更具体地,涉及一种基于模式跳过的视频编码方法和系统。
背景技术
现在,人们对高质量和高清晰度的视频内容的需求日益增多,视频编码的标准也向着高压缩比和支持高清视频的方向发展。ITU-T视频图像专家组和IS0/IEC移动图像专家组联合组建了联合视频编码小组(Joint Collaborative Team on Video Coding,简称JCT-VC)来研究下一代视频编码标准,即高效视频编码(High Efficient Video Coding,简称HEVC)。主要针对分辨率从320x240到7680x4320的视频压缩,编码性能与H. 264/AVC的高级档次编码(High Profile)相比较,提高一倍的效率。然而,现有的HEVC编码方法存在一些缺点其预测模式相当多,虽然增加了预测的精度,但是却也增加了编码的复杂度。其帧间预测模式就有Inter2Nx2N、InterNx2N、Inter2NxN> InterNxN模式以及跳过模式,而其中的InterNx2N和Inter2NxN模式被采用的概率非常低,但是仍然与其他预测模式有着同等的复杂度
发明内容
针对现有技术的缺陷,本发明的目的在于提供一种基于模式跳过的视频编码方法,其能够提前跳过帧间InterNx2N和Inter2NxN模式的计算,降低编码的复杂度。为实现上述目的,本发明提供了一种基于模式提前跳过的视频编码方法,包括以下步骤( I)读取视频序列,其包括N帧图像;(2)设置编码帧数计数器i=l ;(3)对第i帧进行编码,具体包括以下子步骤(3-1)将第i帧划分成X个最大编码单元,其大小为64x64,其中X为正整数;(3-2)设置最大编码单元计数器j=l ;(3-3)设置编码深度计数器k=0 ;(3-4)判断第i帧的类型是关键帧(I帧)还是非关键帧(P帧),如果是关键帧,则转入步骤(3-14),如果是非关键帧,则转入步骤(3-5);(3-5)对深度为k的编码单元进行跳过模式和Inter2Nx2N、InterNxN模式的预测,以得到各种模式的代价;(3-6)对深度为k的编码单兀,获取其同位编码单兀的最大编码深度y,并判断是否存在y兰k,若存在则进入步骤(3-7);否则跳到步骤(3-13);(3-7)判断是否存在y=k,若存在则进入步骤(3-8);否则跳到步骤(3-9);(3-8)判断该同位编码单元的预测模式PredMode是Inter2NxN、InterNx2N或者其它,如果为Inter2NxN,则跳到步骤(3_11),如果为InterNx2N,则跳到步骤(3_12),如果是其它则跳到步骤(3-13);(3-9)获取该同位编码单元的四个子编码单元的最大编码深度z0、zl、z2、z3,并判断zO、zl、z2、z3是否均等于y+1,若是则进入步骤(3_10);否则跳到步骤(3_14);(3-10)判断同位编码单元为左右结构还是上下结构,如果是左右结构且非上下结构,则跳到步骤(3-12),如果是上下结构且非左右结构,则跳到步骤(3-11),否则,跳到步骤(3-13);(3-11)对深度为k的编码单元进行InterfNxN模式的预测,以得到该模式的代价,跳到步骤(3-14);(3-12)对深度为k的编码单元进行InterNx2N模式的预测,以得到该模式的代价,跳到步骤(3-14);(3-13)对深度为k的编码单元进行Inter2NxN和InterNx2N模式的预测,以得到各种模式的代价;(3-14)对深度为k的编码单元,进行帧内Intra2Nx2N和IntraNxN模式的预测,以得到各种模式的代价;(3-15)比较上述所有模式的代价,并从中选择代价最小的模式作为最佳预测模式,并保存该最佳模式的编码信息;(3-16)判断编码深度k是否小于最大编码深度3,如果小于,则设置k=k+l,并返回步骤(3-4)进行下一深度的编码,否则转入步骤(3-17);(3-17)判断是否有j〈X,如果是则设置j=j+l,并返回步骤(3-3)进行下一个最大编码单元的编码,否则转入步骤(4);(4)判断是否有i〈N,如果是则设置i=i+l,并返回步骤(3)对下一帧进行编码,否则过程结束。获取最大编码深度具体为,在前一帧图像编码完成以后,同位编码单元的编码深度会存储在一个数组中,其存储的是每个4x4大小的小块的编码深度,从数组中即可找到最大的编码深度。获取同位编码单元的预测模式具体为,在前一帧图像编码完成以后,同位编码单元的预测模式会存储在一个数组中,其存储的是每个4x4大小的小块的预测模式,取编码单元内的任何一个4x4大小的小块的预测模式即是该编码单元的预测模式。编码信息包括编码深度、预测模式和预测信息。预设的最大编码深度为3。通过本发明所构思的以上技术方案,与现有技术相比,本方法具有以下的有益效果(I)降低了编码的复杂度,由于在步骤(3-8)至(3-10)中提前跳过了不可能被采用的巾贞间InterNx2N或Inter2NxN预测模式的计算,所以节省了编码的时间。(2)降低复杂的同时保证了编码性能的不下降,因为在步骤(3-6)至(3-10)中利用了前一帧同一位置的编码信息来判断是否跳过帧间的InterNx2N和Inter2NxN预测模式,所以只会在很不可能选择该模式的情况下跳过。本发明的另一目的在于提供一种基于模式跳过的视频编码系统,其能够提前跳过中贞间InterNx2N和Inter2NxN模式的计算, 降低编码的复杂度。
为实现上述目的,本发明提供了一种基于模式跳过的视频编码系统,包括读取模块、计数器设置模块、编码模块和判断模块,读取模块用于读取视频序列,其包括N帧图像,计数器设置模块用于设置编码帧数计数器i=l,编码模块用于对第i帧进行编码,判断模块用于判断是否有i〈N,如果是则设置i=i+l,并返回编码模块对下一帧进行编码,否则过程结束,编码模块包括划分子模块、第一设置子模块、第二设置子模块、第一判断子模块、第一预测子模块、第二判断子模块、第三判断子模块、第四判断子模块、第五判断子模块、第六判断子模块、第二预测子模块、第三预测子模块、第四预测子模块、第五预测子模块、第一比较子模块、第七判断子模块、第八判断子模块,划分子模块用于将第i帧划分成X个最大编码单元,其大小为64x64,其中X为正整数,第一设置子模块用于设置最大编码单元计数器j=l,第二设置子模块用于设置编码深度计数器k=0,第一判断子模块用于判断第i帧的类型是关键帧还是非关键帧,如果是关键帧,则转入第五预测子模块,如果是非关键帧,则转入第一预测子模块,第一预测子模块用于对深度为k的编码单元进行跳过模式和Inter2Nx2N, InterNxN模式的预测,以得到各种模式的代价,第二判断子模块用于对深度为k的编码单元,获取其同位编码单元的最大编码深度y,并判断是否存在k = I且y>k,若存在则进入第三判断子模块,否则跳到第四预测子模块,第三判断子模块用判断是否存在y=k,若存在则进入第四判断子模块用;否则跳到第五判断子模块,第四判断子模块用于判断该同位编码单元的预测模式PredMode是Inter2NxN、InterNx2N或者其它,如果为Inter2NxN,则跳到第二预测子模块,如果为InterNd则跳到第三预测子模块,如果是其它则跳到第四预测子模块,第五判断子模块用于获取该同位编码单元的四个子编码单元的最大编码深度z0、zl、z2、z3,并判断z0、zl、z2、z3是否均等于y+1,若是则进入第六判断子模块;否则跳到第五预测子模块,第六判断子模块用于判断同位编码单元为左右结构还是上下结构,如果是左右结构且非上下结构,则跳到步骤第三预测子模块,如果是上下结构且非左右结构,则跳到第二预测子模块,否则,跳到第四预测子模块,第二预测子模块用于对深度为k的编码单元进行InterfNxN模式的预测,以得到该模式的代价,跳到第五预测子模块,第三预测子模块用于对深度为k的编码单元进行InterNx2N模式的预测,以得到该模式的代价,跳到第五预测子模块,第四预测子模块用于对深度为k的编码单元进行InterfNxN和InterNX2N模式的预测,以得到各种模式的代价,第五预测子模块用于对深度为k的编码单元,进行巾贞内Intra2Nx2N和IntraNxN模式的预测,以得到各种模式的代价,第一比较子模块用于比较上述所有模式的代价,并从中选择代价最小的模式作为最佳预测模式,并保存该最佳模式的编码信息, 第七判断子模块用于判断编码深度k是否小于最大编码深度3,如果小于,则设置k=k+l,并返回第一判断子模块进行下一深度的编码,否则转入第八判断子模块,第八判断子模块用于判断是否有j〈X,如果是则设置j=j+l,并返回第二设置子模块进行下一个最大编码单元的编码,否则转入判断模块。编码信息包括编码深度、预测模式和预测信息。预设的最大编码深度为3。通过本发明所构思的以上技术方案,与现有技术相比,本系统具有以下的有益效果(I)降低了编码的复杂度,由于第四判断子模块、第五判断子模块、第六判断子模块提前跳过了不可能被采用的巾贞间InterNx2N或Inter2NxN预测模式的计算,所以节省了编码的时间。(2)降低复杂的同时保证了编码性能的不下降,因为第二判断子模块、第三判断子模块、第四判断子模块、第五判断子模块、第六判断子模块利用了前一帧同一位置的编码信息来判断是否跳过帧间的InterNx2N和InterfNxN预测模式,所以只会在很不可能选择该模式的情况下跳过。


图1为四种典型预测单元的划分形式。图2为一个64x64的最大编码单元最终的划分结构及其对应的四叉树。图3为本发明基于模式跳过的视频编码方法的流程图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。以下首先对本发明的技术术语进行解释和说明。编码单元Coding Uint,简称⑶,视频编码的最基本单元,每个编码单元的大小可以是2Nx2N,其中N可为32、16、8、4。最大编码单元可以使用四叉树分割技术,递归划分成为众多大小不一的小编码单元。预测单元Prediction Unit,简称PU,是携带进行预测时所需相关信息的基本单元。预测单元与编码单元的关系是,一个编码单元可以包含一个或多个预测单元。图1给出了在编码单元确定情形下的 几种预测单元的划分形式,四叉树分割英文为Quadtree division,从最大编码单元(大小64x64)开始,可以向下依次划分成四个更小的编码单元,直到划分成最小的编码单元为止(大小8x8)。四叉树最大可以有四个深度0、1、2、3,其对应的编码单元大小为64x64、32x32、16xl6、8x8。图2表示了一个最大编码单元(64x64)最终的划分结构,对应的四叉树有四个深度,根表示最大的64x64的编码单元,叶子节点表示了一个预测单元。编码深度D^th of Coding Tree,四叉树的某一深度,编码深度O、1、2、3,其对应的编码单元大小为64x64、32x32、16xl6、8x8。关键帧又名I巾贞,使用帧内预测模式进行预测的帧非关键帧又名P帧,使用帧间预测和帧内预测模式进行预测的帧巾贞内预测模式IntraPrediction,只使用本巾贞的像素信息的预测模式,包括Intra2Nx2N和IntraNxN模式,Intra2Nx2N即是将一个2Nx2N编码单兀作为一个预测单兀进行帧内预测,IntraNxN即是将一个2Nx2N编码单元划分成四个NxN的预测单元进行帧内预测。如图1的第一幅和第四幅图所示。帧间预测模式Inter Prediction,使用前面某一帧作为参考帧的预测模式,包括Inter2Nx2N、InterNx2N、Inter2NxN、InterNxN 四种模式,对应的划分方法如图1。跳过模式Skip Mode,没有残差系数的预测单元,其运动参数(运动矢量、参考帧索引)可以从相邻的帧间预测模式的预测单元获得。
模式的代价每种预测模式都可以通过代价函数算出一个编码所需的代价,代价最小的模式作为最佳预测模式。进行模式选择的代价函数为Jfflode=SSE+Amode^Bmode其中SSE (英文为Sum of Square Error)表示两个同样大小块的均方误差和,Bnwde代表了该模式的编码所需的比特数,XnrodeS系数,λ mode的值与量化参数Qp成指数关系,当 Qp 为 32 时,Amode 的值为 360. 15632358170024。量化参数Quantization Parameter,简称Qp,量化参数表示了图像压缩的质量,其值越小表示量化越精细,图像的质量就越高,其值越大表示量化越粗糙,图像的质量就越低。Qp的范围可以从0-51。同位编码单元英文是Collocated Coding Unit,对当前巾贞中一个大小为2Nx2N的编码单元,其同位编码单元为前一帧中相同位置的同样大小的编码单元。左右结构对于一 个编码单元,如果其最终分割成四个子编码单元,如果左边两个子编码单元的预测模式相同或右边两个子编码单元的预测模式相同,则称该编码单元为左右结构。上下结构对于一个编码单元,如果其最终分割成四个子编码单元,如果上边两个子编码单元的预测模式相同或下边两个子编码单元的预测模式相同,则称该编码单元为上下结构。一个编码单元可以同时是左右结构和上下结构。如图3所示,本发明基于模式跳过的视频编码方法包括以下步骤如图1所示,本发明基于模式提前跳过的视频编码方法包括以下步骤( I)读取视频序列,其包括N帧图像;(2)设置编码帧数计数器i=l ;(3)对第i帧进行编码,具体包括以下子步骤(3-1)将第i帧划分成X个最大编码单元,其大小为64x64,其中X为正整数;(3-2)设置最大编码单元计数器j=l ;( 3-3 )设置编码深度计数器k=0 ;(3-4)判断第i帧的类型是关键帧(I帧)还是非关键帧(P帧),如果是关键帧,则转入步骤(3-14),如果是非关键帧,则转入步骤(3-5);(3-5)对深度为k的编码单元进行跳过模式和Inter2Nx2N、InterNxN模式的预测,以得到各种模式的代价;(3-6)对深度为k的编码单兀,获取其同位编码单兀的最大编码深度Y,并判断是否存在y兰k,若存在则进入步骤(3-7);否则跳到步骤(3-13);最大编码深度的 具体获取方法在前一帧图像编码完成以后,同位编码单元的编码深度会存储在一个数组中,其存储的是每个4x4大小的小块的编码深度,从数组中即可找到最大的编码深度。(3-7)判断是否存在y=k,若存在则进入步骤(3-8);否则跳到步骤(3_9);(3-8)判断该同位编码单元的预测模式PredMode是Inter2NxN、InterNx2N或者其它,如果为Inter2NxN,则跳到步骤(3_11),如果为InterNx2N,则跳到步骤(3_12),如果是其它则跳到步骤(3-13);同位编码单元的预测模式具体获取方法在前一帧图像编码完成以后,同位编码单元的预测模式会存储在一个数组中,其存储的是每个4x4大小的小块的预测模式,取编码单元内的任何一个4x4大小的小块的预测模式即是该编码单元的预测模式。(3-9)获取该同位编码单元的四个子编码单元的最大编码深度zO、zl、z2、z3,并判断zO、zl、z2、z3是否均等于y+1,若是则进入步骤(3_10);否则跳到步骤(3_14);(3-10)判断同位编码单元为左右结构还是上下结构,如果是左右结构且非上下结构,则跳到步骤(3-12),如果是上下结构且非左右结构,则跳到步骤(3-11),否则,跳到步骤(3-13);(3-11)对深度为k的编码单元进行InterfNxN模式的预测,以得到该模式的代价,跳到步骤(3-14);
(3-12)对深度为k的编码单元进行InterNx2N模式的预测,以得到该模式的代价,跳到步骤(3-14);(3-13)对深度为k的编码单元进行Inter2NxN和InterNx2N模式的预测,以得到各种模式的代价;(3-14)对深度为k的编码单元,进行帧内Intra2Nx2N和IntraNxN模式的预测,以得到各种模式的代价;(3-15)比较上述所有模式的代价,并从中选择代价最小的模式作为最佳预测模式,并保存该最佳模式的编码信息,包括编码深度、预测模式、预测信息;(3-16)判断编码深度k是否小于最大编码深度3,如果小于,则设置k=k+l,并返回步骤(3-4)进行下一深度的编码,否则转入步骤(3-17);(3-17)判断是否有j〈X,如果是则设置j=j+l,并返回步骤(3-3)进行下一个最大编码单元的编码,否则转入步骤(4);(4)判断是否有i〈N,如果是则设置i=i+l,并返回步骤(3)对下一帧进行编码,否则过程结束。本发明基于模式跳过的视频编码系统包括读取模块、计数器设置模块、编码模块、判断模块。读取模块用于读取视频序列,其包括N帧图像。计数器设置模块用于设置编码帧数计数器i=l。编码模块用于对第i帧进行编码。判断模块用于判断是否有i〈N,如果是则设置i=i+l,并返回编码模块对下一帧进行编码,否则过程结束。编码模块包括划分子模块、第一设置子模块、第二设置子模块、第一判断子模块、第一预测子模块、第二判断子模块、第三判断子模块、第四判断子模块、第五判断子模块、第六判断子模块、第二预测子模块、第三预测子模块、第四预测子模块、第五预测子模块、第一比较子模块、第七判断子模块、第八判断子模块。划分子模块用于将第i帧划分成X个最大编码单元,其大小为64x64,其中X为正整数。第一设置子模块用于设置最大编码单元计数器j=l。第二设置子模块用于设置编码深度计数器k=0。第一判断子模块用于判断第i帧的类型是关键帧还是非关键帧,如果是关键帧,则转入第五预测子模块,如果是非关键帧,则转入第一预测子模块。第一预测子模块用于对深度为k的编码单元进行跳过模式和Inter2Nx2N、InterNxN模式的预测,以得到各种模式的代价。第二判断子模块用于对深度为k的编码单元,获取其同位编码单元的最大编码深度y,并判断是否存在k = I且y>k,若存在则进入第三判断子模块,否则跳到第四预测子模块。第三判断子模块用判断是否存在y=k,若存在则进入第四判断子模块用。否则跳到第五判断子模块。第四判断子模块用于判断该同位编码单元的预测模式PredMode是Inter2NxN、InterNx2N或者其它,如果为Inter2NxN,则跳到第二预测子模块,如果为InterNx2N,则跳到第三预测子模块,如果是其它则跳到第四预测子模块。第五判断子模块用于获取该同位编码单元的四个子编码单元的最大编码深度zO、21、22、23,并判断20、21、22、23是否均等于7+1,若是则进入第六判断子模块。否则跳到第五预测子模块。第六判断子模块用于判断同位编码单元为左右结构还是上下结构,如果是左右结构且非上下结构,则跳到步骤第三预测子模块,如果是上下结构且非左右结构,则跳到第二预测子模块,否则,跳到第四预测子模块。第二预测子模块用于对深度为k的编码单元进行InterfNxN模式的预测,以得到该模式的代价,跳到第 五预测子模块。第三预测子模块用于对深度为k的编码单元进行InterNX2N模式的预测,以得到该模式的代价,跳到第五预测子模块。第四预测子模块用于对深度为k的编码单元进行Inter2NxN和InterNx2N模式的预测,以得到各种模式的代价。第五预测子模块用于对深度为k的编码单元,进行帧内Intra2Nx2N和IntraNxN模式的预测,以得到各种模式的代价。第一比较子模块用于比较上述所有模式的代价,并从中选择代价最小的模式作为最佳预测模式,并保存该最佳模式的编码信息。第七判断子模块用于判断编码深度k是否小于最大编码深度3,如果小于,则设置k=k+l,并返回第一判断子模块进行下一深度的编码,否则转入第八判断子模块。第八判断子模块用于判断是否有j〈X,如果是则设置j=j+l,并返回第二设置子模块进行下一个最大编码单元的编码,否则转入判断模块。实例为了验证本发明方法的可行性和有效性,在真实环境下验证本发明方法。实验测试条件为Windows 7操作系统,2. 8GHz主频的CPU,2G内存。测试序列如表I表I测试序列
权利要求
1.一种基于模式提前跳过的视频编码方法,其特征在于,包括以下步骤 (1)读取视频序列,其包括N帧图像; (2)设置编码帧数计数器i=l; (3)对第i帧进行编码,具体包括以下子步骤 (3-1)将第i帧划分成X个最大编码单元,其大小为64x64,其中X为正整数; (3-2)设置最大编码单元计数器j=l ; (3-3)设置编码深度计数器k=0 ; (3-4)判断第i帧的类型是关键帧(I帧)还是非关键帧(P帧),如果是关键帧,则转入步骤(3-14),如果是非关键帧,则转入步骤(3-5); (3-5)对深度为k的编码单元进行跳过模式和Inter2Nx2N、InterNxN模式的预测,以得到各种模式的代价; (3-6)对深度为k的编码单元,获取其同位编码单元的最大编码深度y,并判断是否存在y会k,若存在则进入步骤(3-7);否则跳到步骤(3-13); (3-7)判断是否存在y=k,若存在则进入步骤(3-8);否则跳到步骤(3-9); (3-8)判断该同位编码单元的预测模式PredMode是Inter2NxN、InterNx2N或者其它,如果为Inter2NxN,则跳到步骤(3-11),如果为InterNx2N,则跳到步骤(3-12),如果是其它则跳到步骤(3-13); (3-9)获取该同位编码单元的四个子编码单元的最大编码深度zO、zl、z2、z3,并判断20、21、22、23是否均等于7+1,若是则进入步骤(3-10);否则跳到步骤(3-14); (3-10)判断同位编码单元为左右结构还是上下结构,如果是左右结构且非上下结构,则跳到步骤(3-12),如果是上下结构且非左右结构,则跳到步骤(3-11),否则,跳到步骤(3-13); (3-11)对深度为k的编码单元进行InterfNxN模式的预测,以得到该模式的代价,跳到步骤(3-14); (3-12)对深度为k的编码单元进行InterNx2N模式的预测,以得到该模式的代价,跳到步骤(3-14); (3-13)对深度为k的编码单元进行Inter2NxN和InterNx2N模式的预测,以得到各种模式的代价; (3-14)对深度为k的编码单元,进行帧内Intra2Nx2N和IntraNxN模式的预测,以得到各种模式的代价; (3-15)比较上述所有模式的代价,并从中选择代价最小的模式作为最佳预测模式,并保存该最佳模式的编码信息; (3_16)判断编码深度k是否小于最大编码深度3,如果小于,则设置k=k+l,并返回步骤(3-4)进行下一深度的编码,否则转入步骤(3-17); (3-17)判断是否有j〈X,如果是则设置j=j+l,并返回步骤(3-3)进行下一个最大编码单元的编码,否则转入步骤(4); (4)判断是否有i〈N,如果是则设置i=i+l,并返回步骤(3)对下一帧进行编码,否则过程结束。
2.根据权利要求1所述的优化方法,其特征在于,获取最大编码深度具体为,在前一帧图像编码完成以后,同位编码单元的编码深度会存储在一个数组中,其存储的是每个4x4大小的小块的编码深度,从数组中即可找到最大的编码深度。
3.根据权利要求1所述的优化方法,其特征在于,获取同位编码单元的预测模式具体为,在前一帧图像编码完成以后,同位编码单元的预测模式会存储在一个数组中,其存储的是每个4x4大小的小块的预测模式,取编码单元内的任何一个4x4大小的小块的预测模式即是该编码单元的预测模式。
4.根据权利要求1所述的优化方法,其特征在于,编码信息包括编码深度、预测模式和预测信息。
5.根据权利要求1所述的优化方法,其特征在于,预设的最大编码深度为3。
6.一种基于模式跳过的视频编码系统,其特征在于, 包括读取模块、计数器设置模块、编码模块和判断模块; 读取模块用于读取视频序列,其包括N帧图像; 计数器设置模块用于设置编码帧数计数器i=l ; 编码模块用于对第i帧进行编码; 判断模块用于判断是否有i〈N,如果是则设置i=i+l,并返回编码模块对下一帧进行编码,否则过程结束; 编码模块包括划分子模块、第一设置子模块、第二设置子模块、第一判断子模块、第一预测子模块、第二判断子模块、第三判断子模块、第四判断子模块、第五判断子模块、第六判断子模块、第二预测子模块、第三预测子模块、第四预测子模块、第五预测子模块、第一比较子模块、第七判断子模块、第八判断子模块; 划分子模块用于将第i帧划分成X个最大编码单元,其大小为64x64,其中X为正整数; 第一设置子模块用于设置最大编码单元计数器j=l ; 第二设置子模块用于设置编码深度计数器k=0 ; 第一判断子模块用于判断第i帧的类型是关键帧还是非关键帧,如果是关键帧,则转入第五预测子模块,如果是非关键帧,则转入第一预测子模块; 第一预测子模块用于对深度为k的编码单元进行跳过模式和Inter2Nx2N、InterNxN模式的预测,以得到各种模式的代价; 第二判断子模块用于对深度为k的编码单元,获取其同位编码单元的最大编码深度y,并判断是否存在k = I且y>k,若存在则进入第三判断子模块,否则跳到第四预测子模块;第三判断子模块用判断是否存在y=k,若存在则进入第四判断子模块用;否则跳到第五判断子模块; 第四判断子模块用于判断该同位编码单元的预测模式PredMode是Inter2NxN、InterNx2N或者其它,如果为Inter2NxN,则跳到第二预测子模块,如果为InterNx2N,则跳到第三预测子模块,如果是其它则跳到第四预测子模块; 第五判断子模块用于获取该同位编码单元的四个子编码单元的最大编码深度zO、zl、z2、z3,并判断zO、zl、z2、z3是否均等于y+1,若是则进入第六判断子模块;否则跳到第五预测子模块; 第六判断子模块用于判断同位编码单元为左右结构还是上下结构,如果是左右结构且非上下结构,则跳到步骤第三预测子模块,如果是上下结构且非左右结构,则跳到第二预测子模块,否则,跳到第四预测子模块; 第二预测子模块用于对深度为k的编码单元进行InterfNxN模式的预测,以得到该模式的代价,跳到第五预测子模块; 第三预测子模块用于对深度为k的编码单元进行InterNx2N模式的预测,以得到该模式的代价,跳到第五预测子模块; 第四预测子模块用于对深度为k的编码单元进行Inter2NxN和InterNx2N模式的预测,以得到各种模式的代价; 第五预测子模块用于对深度为k的编码单元,进行巾贞内Intra2Nx2N和IntraNxN模式的预测,以得到各种模式的代价; 第一比较子模块用于比较上述所有模式的代价,并从中选择代价最小的模式作为最佳预测模式,并保存该最佳模式的编码信息; 第七判断子模块用于判断编码深度k是否小于最大编码深度3,如果小于,则设置k=k+l,并返回第一判断子模块进行下一深度的编码,否则转入第八判断子模块; 第八判断子模块用于判断是否有j〈X,如果是则设置j=j+l,并返回第二设置子模块进行下一个最大编码单元的编码,否则转入判断模块。
7.根据权利要求6所述的优化系统,其特征在于,编码信息包括编码深度、预测模式和预测信息。
8.根据权利要求6所述的优化系统,其特征在于,预设的最大编码深度为3。
全文摘要
本发明公开了一种基于模式跳过的视频编码方法,包括以下步骤读取视频序列,其包括N帧图像,设置编码帧数计数器i=1,对第i帧进行编码,判断是否有i<N,如果是则设置i=i+1,并对下一帧进行编码,否则过程结束。由于本发明跳过了不可能被采用的帧间InterNx2N或Inter2NxN预测模式的计算,所以节省了编码的时间,同时,由于利用了前一帧同一位置的编码信息来判断是否跳过帧间的InterNx2N和Inter2NxN预测模式,所以只会在很不可能选择该模式的情况下跳过。
文档编号H04N7/32GK103051896SQ20121054588
公开日2013年4月17日 申请日期2012年12月14日 优先权日2012年12月14日
发明者喻莉, 梅利健, 李乐, 冯慧, 邓惠萍 申请人:华中科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1