视频编码器的快速内模式预测的制作方法

文档序号:7949397阅读:357来源:国知局
专利名称:视频编码器的快速内模式预测的制作方法
技术领域
本发明总的涉及视频编码,具体涉及一种用于视频编码器的快速内模式预测的方法和装置。
背景技术
内模式预测用于内帧和间帧。在内帧中,所有的宏块以内模式编码。对于间帧(P和B帧),在H.264标准中(又称为JVT和MPEG-4AVC)使用间和内预测这两者。每个单独的宏块要么被编码为内,即,仅使用空间相关性,要么被编码为间,即,使用来自之前编码的帧的时间相关性。通常,编码器基于编码效率和主观质量考虑,可以对每个宏块作出间/内编码判决。间编码典型地用于从之前画面良好预测的宏块,而内编码典型地用于从之前画面未良好预测的宏块、和/或具有低空间活动性的宏块。
在H.264标准中,间编码允许使用各种块划分(例如,对于宏块16×16、16×8、8×16和8×8,以及对于8×8子宏块划分8×8、8×4、4×8、4×4)以及多个参考画面来预测16×16宏块。此外,JVT还支持SKIP和DIRECT模式。
对于内预测,支持下面两种块类型INTRA 4×4;以及INTRA 16×16。
转到图1A,INTRA 4×4预测模式用附图标记100总的表示。INTRA 4×4预测模式100包括垂直模式0、水平模式1、DC模式2、对角-下/左模式3、对角-下/右模式4、垂直-右模式5、水平-下模式6、垂直-左模式7和水平-上模式8。
转到图7B,INTRA 16×16预测模式用附图标记150总的表示。INTRA 16×16预测模式150包括垂直模式0、水平模式1、DC模式2和PLANE模式3。
在现有技术中,率失真优化(rate distortion optimization,RDO)框架用于模式判决。对于内模式,将运动估计与模式判决分开考虑。首先对内模式的所有块类型执行运动估计,然后通过比较每个间模式与内模式的成本来作出模式判决。选择具有最小成本的模式作为最佳模式。
在内编码的(I)画面中编码一个宏块s的传统过程总结如下。该过程下面称为“传统宏块编码过程”。
在传统宏块编码过程的第一步骤中,提供以下最后解码的画面、拉格朗日乘子λMODE、λMOTION以及宏块量化器QP。
在传统宏块编码过程的第二步骤中,通过当变化MODE时给定QP和λMODE最小化J(s,c,MODE|QP,λMODE)=SSD(s,c,MODE|QP)+λMODE·R(s,c,MODE|QP)来选择宏块内预测模式。符号c代表重构的宏块。符号SSD代表原始信号与重构的信号之间的平方差之和。符号R(s,c,MODE)代表与选择MODE相关的位数,包括宏块头和所有DCT系数的位。符号MODE代表可能的宏块模式集合当中的模式MODE∈{INTRA4×4,INTRA16×16}INTRA 4×4模式包括 INTRA 16×16模式包括MODE∈{垂直,水平,DC,平面}为了在间编码的(P或B)画面中编码一个宏块s,采用下面两个额外步骤。
第一额外步骤包括通过对每个参考画面和可能的宏块模式的运动向量最小化J(REF,m(REF)|λMOTION)=SAD(s,c(REF,m(REF)))+λMOTION·(R(m(REF)-p(REF))+R(REF))来执行运动估计和参考画面选择。在该等式中,m代表正考虑的当前运动向量,REF代表参考画面,p代表在运动向量编码期间用于预测的运动向量,R(m-p)代表用于编码该运动向量的位,并且R(REF)代表用于编码参考画面的位。SAD代表原始信号与通过运动向量预测的参考信号之间的绝对差之和。
第二额外步骤包括通过当变化MODE时给定QP和λMODE最小化J(s,c,MODE|QP,λMODE)=SSD(s,c,MODE|QP)+λMODE·R(s,c,MODE|QP)来选择宏块预测模式。R(s,c,MODE)包括用于宏块头、运动和所有DCT系数的位。MODE代表可能的宏块模式的集合当中的模式P-帧MODE∈INTRA4x4,INTRA16x16,SKIP,16x16,16x8,8x16,8x8,8x4,4x8,4x4,]]>B-帧:MODE∈INTRA4x4,INTRA16x16,BIDIRECT,DIRECT,FWD16x16,FWD16x8,FWD8x16,FWD8x8,FWD8x4,FWD4x8,FWD4x4,BAK16x16,BAK16x8,BAK8x16,BAK8x8,BAK8x4,BAK4x8,BAK4x4]]>应当理解,对于I画面,采用传统宏块编码过程的第二步骤代替前面第二额外步骤。
在现有技术中,特别是,对于上述的传统宏块编码过程,首先使用图2A和图2B中的边缘检测来分析画面。只检查取向与主要边缘方向较近的模式。
转到图2A,用于使用边缘信息对INTRA 16×16亮度(luma)采样执行模式判决的方法用附图标记200总的表示。方法200包括开始方框202,将控制转交给功能方框205。功能方框205获得边缘方向直方图,并且将控制转交给功能方框210。功能方框210检查边缘方向直方图中具有最大幅度的模式以及两个相邻模式,并且将控制转交给判决方框215。判决方框215确定是否(具有最大幅度的模式和两个相邻模式的)所有幅度是相似的。如果所有的幅度不是相似的,则控制转交给功能方框220。否则,如果所有的幅度是相似的,则控制转交给功能方框230。
功能方框220选择所测试模式中的最佳INTRA 16×16(亮度)预测模式,并且将控制转交给结束方框225。
判决方框230检查DC模式,并且将控制转交给功能方框220。
转到图2B,用于使用边缘信息对INTRA 4×4采样执行模式判决的方法用附图标记250总的表示。
方法250包括开始方框252,将控制转交给功能方框255。功能方框255获得边缘方向直方图,并且将控制转交给功能方框260。功能方框260检查边缘方向直方图中具有最大幅度的模式,并且将控制转交给判决方框265。即,功能方框260检查在一个方向上的最大幅度,然后检查其他方向上的幅度,以结合判决方框265确定我们是否想要检查DC模式。判决方框265确定是否所有幅度是相似的。如果所有的幅度不是相似的,则控制转交给功能方框270。否则,如果所有的幅度是相似的,则控制转交给功能方框280。
功能方框270选择所测试模式中的最佳INTRA 4×4预测模式,并且将控制转交给结束方框275。
判决方框280检查DC模式,并且将控制转交给功能方框270。
关于另一种现有技术途径,对于间帧,首先检查SKIP模式和16×16模式。如果失真足够小(SKIP模式或16×16模式对于该宏块已经是好的模式),则不需要测试INTRA 4×4的所有子模式。因此,在对质量没有多大影响的情况下可以更快地终止搜索。因此,该途径通过使用来自间编码的信息降低了内模式判决的复杂度。参照图3示出和描述了该途径。
转到图3,混合内-间模式判决的方法用附图标记300总的表示。方法300包括开始模块302,将控制转交给功能方框304。功能方框304检查SKIP模式和16×16模式,并且将控制转交给判决方框306。判决方框306确定是否MC2>T1,其中MC2=min(J(SKIP),J(16×16)),SKIP模式与16×16模式之间的最小失真,并且T1是第一阈值。如果MC2<=T1,则控制转交给判决方框308。否则,如果MC2=min(J(SKIP),J(16×16)>T1,则控制转交给功能方框310和功能方框312。
判决方框308确定MC2是否大于T2(第二阈值)。如果MC2不大于T2,则控制转交给功能方框310和功能方框312。否则,如果MC2大于T2,则控制转交给功能方框318。
功能方框310检查其他间模式,并且将控制转交给功能方框312。功能方框312检查其他未测试的内模式,并且将控制转交给功能方框314。功能方框314从评估的模式当中选择最佳模式,并且将控制转交给结束方框316。结束方框316结束宏块编码。
功能方框318检查INTRA 4×4DC,并且将控制转交给判决方框320。判决方框320确定J(INTRA 4×4DC)是否小于a*MC2+b,其中a和b是常数。如果J(INTRA 4×4DC)不小于a*MC2+b,则控制转交给功能方框310和功能方框312。否则,如果J(INTRA 4×4DC)小于a*MC2+b,则控制转交给功能方框312。
因此,希望能有一种克服现有技术的上述问题的、用于视频编码器的快速内模式预测的方法和装置,这将是非常有益的。

发明内容
本发明解决现有技术的这些和其他不足和缺点,它指向一种用于视频编码器的快速内模式预测的方法和装置。
根据本发明的一个方面,提供一种用于编码可分成宏块的图像的视频数据的视频编码器。该视频编码器包括编码器,当编码当前宏块时,通过测试内模式的子集S1计算率失真(RD)成本,并且利用RD成本来确定对于当前宏块是否终止内模式选择以及要检查哪些额外的内模式(如果有的话),从而执行内模式选择。
根据本发明的另一方面,提供一种用于编码图像的视频数据的视频编码器。该视频编码器包括编码器,基于最佳间模式的块类型划分来执行内预测方向。
根据本发明的再一方面,提供一种用于编码图像的视频数据的视频编码器。该视频编码器包括编码器,基于INTRA 16×16的最佳子模式来执行INTRA 4×4预测方向。
根据本发明的再一方面,提供一种用于编码可分成宏块的图像的视频数据的方法。该方法包括步骤当编码当前宏块时执行内模式选择。所述执行步骤包括步骤测试内模式的子集S1来计算率失真(RD)成本。所述执行步骤还包括步骤利用所述率失真成本来确定对于当前宏块是否终止内模式选择以及要检查哪些额外的内模式(如果有的话)。
根据本发明的再一方面,提供一种用于编码图像的视频数据的方法。该方法包括步骤基于最佳间模式的块类型划分来执行内预测方向。
根据本发明的再一方面,提供一种用于编码图像的视频数据的方法。该方法包括步骤基于INTRA 16×16的最佳子模式来执行INTRA 4×4预测方向。
通过下面结合附图对示例性实施例的详细描述,本发明的这些和其他方面、特征和优点将变得清楚。


根据下面示例性附图可以更好地理解本发明,其中图1A示出可以应用本发明的INTRA 4×4预测模式;图1B示出可以应用本发明的INTRA 16×16预测模式;图2A示出根据现有技术、使用边缘信息对INTRA 16×16亮度采样执行模式判决的方法的流程图;图2B示出根据现有技术、使用边缘信息对INTRA 4×4采样执行模式判决的方法的流程图;图3示出根据现有技术、混合间-内模式判决的方法的流程图;图4示出根据本发明原理的视频编码器的流程图;图5示出根据本发明原理、对INTRA 16×16模式判决的方法的流程图;图6示出根据本发明原理、使用从INTRA 16×16模式判决获得的信息对INTRA 4×4模式判决的方法的流程图;图7示出根据本发明原理、对INTRA 4×4模式判决的另一方法的流程图;图8示出根据本发明原理、基于内模式划分的快速内模式判决方法的流程图;以及图9示出根据本发明原理、基于INTRA 16×16模式的快速INTRA 4×4模式判决方法的流程图。
具体实施例方式
本发明指向一种用于视频编码器的快速内模式预测的方法和装置。与现有技术的快速内模式预测方法相比,本发明的有益之处是,降低内模式预测的复杂度,同时保持编码效率。
本描述说明本发明的原理。因此应当理解,本领域技术人员应当能够设计出尽管这里没有明确描述或显示、但却实现本发明原理且包含在其宗旨和范围内的各种配置。
这里陈述的所有示例和条件性语言都是出于教学目的,以帮助读者理解发明者为了改进现有技术而贡献的本发明的原理和概念,因此应当被认为并非是对这些专门陈述的示例和条件的限制。
此外,这里陈述本发明原理、方面和实施例以及其特定示例的所有语句都意图包含其结构和功能等效物。此外,这些等效物意图包括当前已知的等效物以及将来开发的等效物,即,开发来执行相同功能的任何元件,而不管结构如何。
因此,例如,本领域技术人员应当理解,这里显示的框图表示实现本发明原理的说明性电路的概念图。类似地,应当理解,任何程序图、流程图、状态转移图、伪代码等表示实质上可以在计算机可读介质中表示并由计算机或处理器执行的各种处理,而不管是否明确显示了这些计算机或处理器。
附图中所示的功能和各个元件可以通过使用专用硬件以及与适当软件相关的、能够执行软件的硬件来提供。当通过处理器提供时,这些功能可以通过单个专用处理器、通过单个共享处理器或者多个单独处理器(其中一些可以共享)来提供。此外,显式使用术语“处理器”或者“控制器”应当认为是专指能够执行软件的硬件,并且可以隐式地包括而不限于数字信号处理器(“DSP”)硬件、用于存储软件的只读存储器(“ROM”)、随机存取存储器(“RAM”)和非易失性存储设备。
也可以包括其他常规和/或定制的硬件。类似地,附图中所示的任何开关仅仅是概念上的。它们的功能可以通过编程逻辑、通过专用逻辑、通过编程控制和专用逻辑的交互或者甚至通过手动来实现,从上下文中可以具体理解,实施者可选择的具体技术。
在权利要求书中,表示为用于执行指定功能的部件的任何元件意图包括任何执行该功能的方式,包括例如,a)执行该功能的电路元件的组合或者b)任何形式的软件,包括固件、微代码等,与执行该软件的适当电路组合来执行该功能。由该权利要求书限定的本发明在于,各种所述部件所提供的功能被按照权利要求书所要求的方式组合和集合。因此认为可以提供这些功能的任何部件等效于这里所示的这些。
本发明提供一种快速内模式预测的方法和装置。本发明有益之处在于降低了模式判决的复杂度。与图3的通过使用来自间编码的信息降低内模式判决的复杂度的方法相比,本发明可以与图3的方法组合来有益地使用来自内编码的信息降低内模式判决的复杂度。即,使用来自INTRA 16×16和INTRA4×4预测的信息来降低复杂度。因此,利用在内编码期间的中间信息来代替增加计算开销的内容分析,来降低模式判决的复杂度。在本发明的示例性实施例中,在INTRA 4×4之前检查INTRA 16×16模式。当然,给出了这里提供的本发明的教学,本领域和相关领域普通技术人员将在保持本发明范围的同时,构思出根据本发明原理使用的其他检查顺序和相应模式。
转到图4,视频编码器用附图标记400总的表示。
到视频编码器400的输入以信号通信与编码器控制器404的输入、求和节点402的非反相输入、和运动估计器414的第一输入相连。编码器控制器404的第一输出以信号通信与熵编码器408的第一输入相连。编码器控制器404的第二输出以信号通信与帧内预测器418的第一输入相连。编码器控制器404的第三输出以信号通信与运动补偿器416的第一输入相连。编码器控制器404的第四输出以信号通信与运动估计器414的第一输入相连。编码器控制器404的第五输出以信号通信与缩放器/反变换器410的第一输入相连。编码器控制器404的第六输出以信号通信与去块滤波器412的第一输入相连。
求和节点402的输出以信号通信与整数变换器/缩放器/量化器406的输入相连。整数变换器/缩放器/量化器406的输出以信号通信与熵编码器408的第二输入以及缩放器/反变换器410的第二输入相连。缩放器/反变换器410的输出以信号通信与求和节点420的第一输入相连。求和节点420的输出以信号通信与去块滤波器412的第二输入以及帧内预测器418的第二输入相连。去块滤波器412的输出以信号通信与运动补偿器416的第二输入以及运动估计器414的第二输入相连,还可用作编码器400的视频输出。熵编码器408的输出可用作编码器400的输出,用于输出一输出比特流。运动估计器414的输出以信号通信与熵编码器408的第三输入以及运动补偿器416的第三输入相连。运动补偿器416的输出或帧内预测器418的输出以信号通信与求和节点402的反相输入以及求和节点420的第二输入相连。
编码器400包括解码器450,后者进而由缩放器/反变换器410、求和节点420、去块滤波器412、运动补偿器416和帧内预测器418组成。
转到图5,INTRA 16×16的模式判决方法用附图标记500总的表示。方法500包括开始方框505,将控制转交给功能方框510。功能方框510检查DC预测模式(DC_PRED),并且将控制转交给判决方框515。判决方框515确定DC预测模式的率失真成本rdcost(DC_PRED)是否小于阈值TDC16。如果rdcost(DC_PRED)不小于阈值TDC16,则控制转交给功能方框520。否则,如果rdcost(DC_PRED)小于阈值TDC16,则控制转交给结束方框525。
功能方框520检查HOR_PRED和VERT_PRED,并且将控制转交给结束方框525。
如图5所示,在1NTRA 16×16模式内,在垂直和水平模式之前测试DC模式。当J(s,c,MODE|QP,λI16×16,DC_PRED)小于阈值TDC16时,终止模式判决处理,并且对INTRA 16×16使用DC模式。否则,将测试垂直和水平模式。
转到图6,使用从INTRA 16×16模式判决获得的信息对INTRA 4×4模式判决的方法用附图标记600总的表示。方法600包括开始方框605,将控制转交给功能方框610。功能方框610检查INTRA 16×16模式,并且将控制转交给判决方框615。判决方框615确定INTRA 16×16模式的率失真成本rdcost(I16×16)是否小于阈值T1。如果rdcost(I16×16)不小于阈值T1,则控制转交给功能方框620。否则,如果rdcost(I16×16)小于阈值T1,则控制转交给功能方框635。
功能方框620检查所有其他模式,并且将控制转交给功能方框625。功能方框625在测试的模式当中选择最佳INTRA 16×16模式,并且将控制转交给结束模块630。
功能方框635检查DC模式、水平预测模式(HOR_PRED)和垂直预测模式(VERT_PRED),并且将控制转交给结束模块630。
如图6所示,在检查了INTRA 16×16之后,如果从传统宏块编码过程的(对于I-画面的)步骤2的J(s,c,MODE|QP,λ16×16)小于阈值T1,则将对INTRA4×4仅测试3个模式(DC、垂直和水平)。否则,将对INTRA 4×4测试所有9个可能的模式。
在INTRA 4×4模式内,检查9个模式的顺序从{垂直、水平、DC、对角-下/左、对角-下/右、垂直-右、水平-下、垂直-左、水平-上}改变到{DC、垂直、水平、对角-下/左、对角-下/右、垂直-右、水平-下、垂直-左、水平-上}。为了本发明的目的,将{垂直、对角-下/右、垂直-右、垂直-左}定义为垂直取向的模式,并且将{水平、水平-上、水平-下、对角-下/右}定义为水平取向的模式。要注意,对角-下/右被两个集合所覆盖。在检查DC模式之后,如果J(s,c,MODE|QP,λI4×4,DC_PRED)小于阈值TDC4,则可以终止搜索,并且选择DC作为INTRA 4×4的最佳子模式。否则,检查垂直和水平模式,并且如果垂直模式在这三个子模式中具有最小的J(s,c,MODE|QP,λI4×4)(即,该块趋于垂直取向),则将测试其他三个垂直取向的子模式{对角-下/右、垂直-右、垂直-左}。类似地,如果水平模式在这三个子模式中具有最小的J(s,c,MODE|QP,λI4×4)(即,该块趋于水平取向),则将测试其他三个水平取向的子模式{水平-上、水平-下、对角-下/右}。这也在图7中进行说明。
转到图7,对INTRA 4×4模式判决的方法用附图标记700总的表示。方法700包括开始方框705,将控制转交给功能方框710。功能方框710检查DC预测模式(DC_PRED),并且将控制转交给判决方框715。判决方框715确定DC预测模式的率失真成本rdcost(DC_PRED)是否小于阈值TDC4。如果rdcost(DC_PRED)不小于阈值TDC4,则控制转交给功能方框720。否则,如果rdcost(DC_PRED)小于阈值TDC4,则控制转交给结束方框760。
功能方框720检查水平预测模式(HOR_PRED)和垂直预测模式(VERT_PRED),并且将控制转交给功能方框725、功能方框730和功能方框735。功能方框725确定DC预测模式的率失真成本rdcost(DC_PRED)是否最小,并且将控制转交给功能方框740。功能方框730确定水平预测模式的率失真成本rdcost(HOR_PRED)是否最小,并且将控制转交给功能方框745。功能方框735确定垂直预测模式的率失真成本rdcost(VER_PRED)是否最小,并且将控制转交给功能方框750。
功能方框740检查所有其他模式,并且将控制转交给功能方框755。
功能方框745检查水平-上预测模式(HOR_UP_PRED)、水平-下预测模式(HOR_DOWN_PRED)和对角-下/右预测模式(DIAG_DOWN_RIGHT),并且将控制转交给功能方框755。
功能方框750检查对角-下/右预测模式(DIAG_DOWN_RIGHT)、垂直-右预测模式(VERT_RIGHT)和垂直-左预测模式(VERT_LEFT_PRED),并且将控制转交给功能方框755。
功能方框755从测试的模式当中选择最佳I4×4模式,并且将控制转交给结束方框760。
应当理解,在内模式判决处理中可以考虑其他信息,如最佳内模式。例如,如果最佳模式是16×8或8×4,则宏块更可能水平取向,因此仅仅测试水平取向的那些内模式和DC模式。然而,如果最佳模式是8×16或4×8,则宏块更可能垂直取向,因此仅仅测试垂直取向的那些内模式和DC模式。此外,对于INTRA 4×4,可以使用来自INTRA 16×16的最佳子模式来确定要测试哪个子集。例如,如果来自INTRA 16×16的最佳模式是垂直模式,则对INTRA 4×4仅仅测试垂直取向的子模式和DC模式。然而,如果来自INTRA 16×16的最佳模式是水平模式,则对INTRA 4×4仅仅测试水平取向的子模式和DC模式。
根据统计,对色度INTRA 8×8仅考虑DC模式并且从INTRA 16×16预测中去掉平面模式,这可以大大节省计算,而不损失多少编码效率。因此,对色度INTRA 8×8仅考虑DC模式并且从INTRA 16×16中去掉平面模式。
转到图8,基于间模式划分的快速内模式判决的示例性方法用附图标记800总的表示。
开始方框802将控制转交给功能方框805。功能方框805检查间模式,并且将控制转交给判决方框810。判决方框810确定最佳间模式是否为16×8或8×4。如果最佳间模式不是16×8或8×4,则控制转交给判决方框820。否则,如果最佳间模式是16×8或8×4,则控制转交给判决方框815。
判决方框820确定最佳间模式是否为8×16或4×8。如果最佳间模式不是8×16或4×8,则控制转交给功能方框830。否则,如果最佳间模式是8×16或4×8,则控制转交给功能方框825。
功能方框815检查水平取向的内模式和DC内模式,并且将控制转交给功能方框835。功能方框825检查垂直取向的内模式和DC内模式,并将控制转交给功能方框835。
功能方框830检查所有的内模式,并且将控制转交给功能方框835。功能方框835从测试的模式当中选择最佳模式,并且将控制转交给结束方框840。
转到图9,基于INTRA 16×16模式的快速INTRA 4×4模式判决的示例性方法用附图标记900总的表示。开始方框905将控制转交给功能方框810。功能方框810检查INTRA 16×16,并且将控制转交给功能方框915、功能方框925和功能方框935。
判决方框915确定最佳INTRA 16×16模式是否为DC或PLANE,并且将控制转交给功能方框920。功能方框920检查所有其他模式,并且将控制转交给功能方框945。
功能方框925确定最佳INTRA 16×16模式是否为HOR_PRED,并且将控制转交给功能方框930。功能方框930检查DC、HOR_UP_PRED、HOR_DOWN_PRED和DIAG_DOWN_RIGHT模式,并且将控制转交给功能方框945。
功能方框935确定最佳INTRA 16×16模式是否为VERT_PRED,并且将控制转交给功能方框940。功能方框940检查DC、DIAG_DOWN_RIGHT、VERT_RIGHT和VERT_LEFT_PRED模式,并且将控制转交给功能方框945。
功能方框945从测试的模式当中选择最佳INTRA 4×4模式,并且将控制转交给功能方框950。功能方框950从测试的模式当中选择最佳内模式,并且将控制转交给结束方框955。
现在将给出对本发明的许多附带优点/特征中的一些的描述。例如,一个优点/特征是一种执行内模式选择的视频编码器,当编码宏块时,通过测试内模式的子集S1来计算率失真(RD)成本、并且利用RD成本来判断是早期终止还是测试额外的模式。另一优点/特征是一种如上所述的视频编码器,其中内模式的子集包括{DC、垂直、水平}。再一个优点/特征是一种如上所述的视频编码器,其中基于S1的内模式中具有最低成本的模式,选择其余内模式的另一子集S2来测试。此外,另一优点/特征是一种具有上述其余内模式的另一子集S2的视频编码器,其中,成本可以是平方差值之和。此外,另一优点/特征是一种具有上述其余内模式的另一子集S2的视频编码器,其中当垂直模式在子集S1中具有最小RD成本时,其余内模式的另一子集S2包括{对角-下/右、垂直-右、垂直-左}模式,当水平模式在子集S1中具有最小RD成本时,其余内模式的另一子集S2包括{水平-上、水平-下、对角-下/右}模式。此外,另一优点/特征是一种视频编码器,其中内预测模式是基于最佳间模式的块类型划分。此外,另一优点/特征是一种具有上述内预测方向的视频编码器,其中当最佳间模式是16×8或8×4时,内预测仅测试水平取向模式和DC模式,并且当最佳间模式是8×16或4×8时,内预测仅测试垂直取向模式和DC模式。此外,另一优点/特征是一种视频编码器,其中INTRA 4×4预测方向是基于INTRA 16×16的最佳子模式。此外,另一优点/特征是一种具有上述INTRA4×4预测方向的视频编码器,其中当最佳INTRA 16×16子模式是水平时,INTRA 4×4预测仅测试水平取向模式和DC模式,并且当最佳INTRA 16×16子模式是垂直时,INTRA 4×4预测仅测试垂直取向模式和DC模式。
基于这里的教学,相关领域普通技术人员可以容易地确定本发明的这些和其他特征和优点。应当理解,本发明的教学可以以硬件、软件、固件、专用处理器或者其组合的各种形式实现。
最好,本发明的教学实现为硬件和软件的组合。此外,该软件最好实现为程序存储单元上有形具体化的应用程序。应用程序可以被上载到包括任何适合架构的机器上并执行。最好,该机器在具有诸如一个或多个中央处理单元(“CPU”)、随机存取存储器(“RAM”)和输入/输出(“I/O”)接口之类的硬件的计算机平台上实现。该计算机平台还可以包括操作系统和微指令代码。这里所述的各种处理和功能可以是可由CPU执行的微指令代码的一部分或者应用程序的一部分或者其任何组合。此外,各个其他外围单元可以连接到计算机平台,如额外的数据存储单元和打印单元。
还应当理解,因为附图中绘出的一些构成系统组件和方法最好以软件实现,所以系统组件或处理功能方框之间的实际连接可能根据本发明被编程的方式而不同。这里给出了教学,相关领域普通技术人员将能够构思本发明的这些和类似的实现或配置。
尽管这里结合附图描述了说明性实施例,但应当理解,本发明不限于这些具体实施例,并且相关领域普通技术人员在不背离本发明宗旨和范围的前提下可以进行各种改变和修改。所有这些改变和修改都意图被包括在权利要求书所阐述的本发明范围以内。
权利要求
1.一种用于编码可分成宏块的图像的视频数据的装置,包括编码器(400),通过测试内模式的第一子集计算率失真成本,来执行内模式选择,其中,率失真成本用于确定是否终止内模式选择。
2.如权利要求1所述的装置,其中率失真成本还用于确定要检查哪些额外的内模式,如果有的话。
3.如权利要求1所述的装置,其中,内模式的第一子集包括{DC,垂直,和水平}模式。
4.如权利要求1所述的装置,其中,基于第一子集的内模式中具有最低成本的模式,选择其余内模式的第二子集来测试。
5.如权利要求4所述的装置,其中,最低成本是平方差值之和。
6.如权利要求4所述的装置,其中,基于第一子集的内模式中具有最低成本的模式,选择其余内模式的第二子集来测试,并且当垂直模式在第一子集中具有最小率失真成本时,第二子集包括{对角-下/右、垂直-右、和垂直-左}模式,当水平模式在第一子集中具有最小率失真成本时,第二子集包括{水平-上、水平-下、和对角-下/右}模式。
7.一种用于编码图像的视频数据的装置,包括编码器(400),基于最佳间模式的块类型划分来执行内预测方向。
8.如权利要求7所述的装置,其中,当最佳间模式是16×8或8×4时,内预测仅测试水平取向模式和DC模式,并且当最佳间模式是8×16或4×8时,内预测仅测试垂直取向模式和DC模式。
9.一种用于编码图像的视频数据的装置,包括编码器(400),通过基于INTRA 16×16的最佳子模式确定INTRA 4×4预测方向,来执行INTRA 4×4预测。
10.如权利要求9所述的装置,其中,当最佳INTRA 16×16子模式是水平时,INTRA 4×4预测仅测试水平取向模式和DC模式,并且当最佳INTRA16×16子模式是垂直时,INTRA 4×4预测仅测试垂直取向模式和DC模式。
11.一种用于编码可分成宏块的图像的视频数据的方法,包括步骤当编码当前宏块时执行内模式选择,其中所述执行步骤包括步骤测试(715)内模式的第一子集来计算率失真成本;和响应于所述率失真成本,确定(730、735)是否终止内模式选择。
12.如权利要求11所述的方法,其中,内模式的第一子集包括{DC、垂直、和水平}模式。
13.如权利要求11所述的方法,还包括步骤基于第一子集的内模式中具有最低成本的模式,选择(740、745、750)其余内模式的另一第二子集来测试。
14.如权利要求13所述的方法,其中,基于第一子集的内模式中具有最低成本的模式,选择其余内模式的第二子集来测试。
15.如权利要求14所述的方法,其中最低成本是平方差值之和。
16.如权利要求13所述的方法,其中,基于第一子集的内模式中具有最低成本的模式,选择其余内模式的第二子集来测试,并且当垂直模式在第一子集中具有最小率失真成本时,第二子集包括{对角-下/右、垂直-右、和垂直-左}模式,当水平模式在第一子集中具有最小率失真成本时,第二子集包括{水平-上、水平-下、和对角-下/右}模式。
17.如权利要求11所述的方法,其中率失真成本还用于确定要检查哪些额外的内模式,如果有的话。
18.一种用于编码图像的视频数据的方法,包括步骤基于最佳间模式的块类型划分来执行(800)内预测方向。
19.如权利要求18所述的方法,其中,当最佳间模式是16×8或8×4时,内预测仅测试水平取向模式和DC模式,并且当最佳间模式是8×16或4×8时,内预测仅测试垂直取向模式和DC模式。
20.一种用于编码图像的视频数据的方法,包括步骤通过基于INTRA16×16的最佳子模式确定INTRA 4×4预测方向,来执行(900)INTRA 4×4预测。
21.如权利要求20所述的方法,其中,当最佳INTRA 16×16子模式是水平时,INTRA 4×4预测仅测试水平取向模式和DC模式,并且当最佳INTRA16×16子模式是垂直时,INTRA 4×4预测仅测试垂直取向模式和DC模式。
全文摘要
提供用于编码可分成宏块的图像的视频数据的视频编码器和相应的方法。视频编码器包括编码器(400),当编码当前宏块时,通过测试内模式的第一子集计算率失真成本,并且利用率失真成本来确定对于当前宏块是否终止内模式选择以及要检查哪些额外的内模式(如果有的话),从而执行内模式选择。最佳间模式也可以用于执行内预测。
文档编号H04N7/36GK101053259SQ200580037721
公开日2007年10月10日 申请日期2005年10月19日 优先权日2004年11月4日
发明者陆晓安, 尹澎, 吉尔·M·博伊斯 申请人:汤姆森特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1