CN101945279B - 对编码视频图像的像素组选择预测模式的方法和设备 - Google Patents

对编码视频图像的像素组选择预测模式的方法和设备 Download PDF

Info

Publication number
CN101945279B
CN101945279B CN2010102865366A CN201010286536A CN101945279B CN 101945279 B CN101945279 B CN 101945279B CN 2010102865366 A CN2010102865366 A CN 2010102865366A CN 201010286536 A CN201010286536 A CN 201010286536A CN 101945279 B CN101945279 B CN 101945279B
Authority
CN
China
Prior art keywords
group
coding
coding mode
neighborhood pixels
cost
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2010102865366A
Other languages
English (en)
Other versions
CN101945279A (zh
Inventor
童歆
聂小春
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Computer Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN101945279A publication Critical patent/CN101945279A/zh
Application granted granted Critical
Publication of CN101945279B publication Critical patent/CN101945279B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/57Motion estimation characterised by a search window with variable size or shape
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Abstract

本发明涉及对编码视频数据选择编码类型和预测模式。在本发明中,提供了一种用于确定视频帧的宏块的编码类型和预测模式的方法。在一些实施方式中,一般的方法1)基于容易计算的宏块的属性利用编码类型选择算法选择最初为宏块考虑的编码类型,即16×16或4×4,2)如果在步骤1选择了16×16编码类型,则基于失真阈值,利用传统的方法或者改进的16×16预测模式搜索算法,考虑可以用在宏块上的四种16×16预测模式,3)如果在步骤1中选择了4×4编码类型,则基于预测模式之间的位置关系,利用传统的方法或者改进的4×4预测模式搜索算法,选择4×4预测模式用于宏块的16个4×4模块的每个。

Description

对编码视频图像的像素组选择预测模式的方法和设备
本发明是申请号为200510079996.0、申请日为2005年6月27日、发明名称为“对编码视频数据选择编码类型和预测模式”的申请的分案申请。 
技术领域
本发明涉及对于编码视频数据选择编码类型和预测模式。 
背景技术
视频流是由一列视频帧所组成的,其中每帧由多个宏块组成。每个宏块典型地是16×16的像素阵列,尽管其它大小的宏块也是可能的。视频编解码器(压缩器-解压缩器)是压缩算法的软件、硬件或者软件和硬件结合的实现,其中所述的压缩算法用来编码/压缩以及解码/解压缩视频数据流以减小流的大小,为了能更快地传输以及更小的存储空间。虽然有损耗,在压缩视频流的二进制数据的同时,视频编解码器试图保持图像的质量。普通的视频编解码器的实例包括WMV、RealVideo以及压缩标准,诸如MPEG-2、MPEG-4、H.261、H.263和H.264的实现。 
在H.264压缩标准下,视频帧的宏块可以在内部编码为16×16的像素阵列,该阵列的像素值是利用以前编码的宏块计算的值预测的。16×16的宏块也可以内部编码为16个4×4的像素阵列,其中每个4×4的阵列中的像素值是利用以前编码的4×4的阵列计算的值预测的。存在4种可能的16×16阵列(亮度(luma)模块)内部预测模式以及9种可能的4×4阵列(亮度模块)内部预测模式。 
同样,在编码宏块中,必需做出两个决定(选择):1)是否该宏块将被编码为16×16阵列(称作16×16编码)或者被编码为16个4×4 阵列(称作4×4编码),以及2)用于编码宏块的预测模式。例如,如果决定将宏块编码为16×16阵列,也必须决定将使用16×16阵列的四个预测模式中的哪一个。如果决定将宏块编码为16个4×4阵列,也必须决定对于16个4×4阵列的每个,将使用4×4阵列的9个预测模式中的哪一个。在这里步骤1称作编码类型选择,并且步骤2称作预测模式选择。 
利用成本函数来做出编码类型选择以及预测模式选择。例如,成本函数典型地用于决定是否将宏块编码为16×16阵列或编码为16个4×4阵列,其中选择具有最低成本的编码的类型(16×16或4×4编码)。成本典型地等于失真或者失真的加权平均加上由预测模式生成的比特的数量的估计,其中失真和/或比特数量的增加会增加成本。失真反映了原始像素值和预测的(或编码的)值之间的差异,并且失真可以以不同的方法来测量。例如,失真可以测量为原始像素值和预测的(或编码的)值之间的绝对差值的和。 
选择宏块的最优编码类型(16×16或4×4编码)以及最优预测模式的穷举搜索方法包括确定宏块中所有4个16×16预测模式的以及16个4×4模块的9种4×4预测模式的所有组合的成本,其中选定成本最低的16×16预测模式或4×4预测模式的特定组合。对于每个宏块,穷举搜索方法需要考虑4×4预测模式的9^16不同的组合,使得穷举搜索方法实际上不可实行。 
同样,典型地执行下列的操作以确定宏块的编码类型和预测模式: 
1)计算所有4种可能16×16预测模式的成本。 
2)对于每个16个4×4模块,选择具有最小成本的预测模式(在9种预测模式中),然后计算结果的组合的总成本(例如,16种确定的成本的和)。 
3)将在步骤1确定的成本与在步骤2确定的成本进行对比,并选择最低的一个。该选择提供了编码的类型选择以及预测模式选择。 
然而传统的方法依然包括确定4×4预测模式的9×16种不同的组 合的成本加上4个16×16预测模式的成本。 
发明内容
在一些实施方式中,提供了一种更有效的方法来确定视频帧中宏块的编码类型的选择以及预测模式的选择。在一些实施方式中,一般的方法1)利用编码类型选择算法(基于容易计算的宏块的属性)选择最初为宏块考虑的编码类型(16×16或4×4),2)如果在步骤1选择了16×16编码类型,则基于失真阂值,利用传统的方法或者改进的16×16预测模式搜索算法,考虑可以用在宏块上的四种16×16预测模式,3)如果在步骤1中选择了4×4编码类型,基于预测模式之间的位置关系,利用传统的方法或者改进的4×4预测模式搜索算法,选择用于宏块的16个4×4模块的每个的4×4预测模式。 
附图说明
图1是选择像素宏块的编码类型和预测模式的一般方法的流程图。 
图2是用于选择像素宏块的编码类型的编码类型选择方法的流程图。 
图3是用于选择16×16像素宏块的预测模式的预测模式搜索方法的流程图。 
图4描述4×4阵列的9种预测模式之间的逻辑/位置关系的概念图表。 
图5是用于选择宏块4×4阵列的预测模式的4×4预测模式搜索方法的流程图。 
图6是用于选择宏块4×4阵列的预测模式的可替换的4×4预测模式搜索方法的流程图。 
图7表示计算机系统,利用该计算机系统实施本发明的一些实施方式。 
具体实施方式
序列号为60/583447,于2004年6月27日公开的美国临时专利申请“编码和解码图像”在此通过引用清楚地结合。 
在以下的描述中,为了解释,阐述了多个细节。但是,本领域的普通技术人员将理解不用这些特定的细节也可以实现本发明。在其它的实例中,为了不使不必要的细节描述模糊本发明的说明,已知的结构和设备以框图的形式表示。 
在一些实施方式中,本发明提供了一种更有效的方法来确定视频帧中宏块的编码类型的选择以及预测模式的选择。在一些实施方式中,一般的搜索算法执行以下操作 
1)利用编码类型选择算法(基于容易计算的宏块的属性)选择最初为宏块考虑的编码类型(16×16或4×4)。编码类型选择算法在下面部分I中进行讨论。 
2)如果在步骤1选择了16×16编码模式,基于失真阈值,利用传统的方法或者改进的16×16预测模式搜索算法,考虑(即,测试)可以用在宏块上的四种16×16预测模式。注意在16×16预测模式搜索算法的一种特定情形中,也可以选择4×4编码类型。该步骤在以下部分II中进行讨论。 
3)如果在步骤1中选择了4×4编码类型,基于预测模式之间的位置关系(在以下部分III中对其进行讨论),利用传统的方法或者改进的4×4预测模式搜索算法,选择4×4预测模式用于宏块的每个16个4×4模块。 
注意在搜索算法的步骤1中,如果编码类型选择算法选择16×16编码类型用于初始考虑,最终选择的编码类型可以是16×16编码类型或4×4编码类型。相反,如果编码类型选择算法选择4×4编码类型用于初始考虑,则将4×4编码类型有效地选择为宏块的编码类型。如果选择16×16编码类型用于初始考虑,传统的方法或者改进的16×16预测模式搜索算法用于确定宏块的预测模式。如果选择4×4编码类型用于初始考虑,则传统的方法或者改进的4×4预测模式搜索算法用于确 定宏块的预测模式。同样,根据由搜索算法选择的用于初始考虑的编码类型,使用不同的搜索算法(传统的或改进的)来确定预测模式。 
图1是选择像素宏块的编码类型和预测模式的一般方法100的流程图。在一些实施方式中,通过设置来编码视频帧的软件和/或硬件实现一般方法100。当其接收(在102)像素宏块时,该方法开始。在一些实施方式中,宏块是16×16像素阵列,而在其它的实施方式中,该宏块是不同尺寸的像素阵列。在一些实施方式中,将该宏块分成4个8×8阵列或16个4×4阵列,而在其它的实施方式中,将宏块分成不同尺寸的块/阵列。 
利用编码类型选择方法200(以下参照附图2进行讨论),该方法然后选择(在105)最初为宏块考虑的编码类型(16×16或4×4)。该方法然后确定(在110)是否已经选择了4×4编码类型。如果是,则该方法随后利用传统的方法、改进的4×4预测模式搜索方法500(以下参照附图5进行讨论),或者可选4×4预测模式搜索方法600(以下参照附图6进行讨论),选择(在115)宏块的16个4×4模块的每个的预测模式。 
如果该方法确定(在110-否)没有选择4×4编码类型,则该方法选择(在120)16×16预测模式(利用传统的方法或改进的16×16预测模式搜索方法300,以下将参照附图3进行讨论)或4×4编码类型。该方法然后确定(在125)是否已经选择了4×4编码类型(在120)。如果是,该方法继续步骤115,其中在步骤115选择宏块的16个4×4模块的每个的预测模式。如果该方法确定(在125-否)没有选择4×4编码类型,这表示已经选择了特定的16×16预测模式。然后该方法结束。 
部分I:编码类型选择算法 
该部分描述了一般搜索算法的步骤1的编码类型选择算法。编码类型选择算法选择最初为宏块考虑的编码类型(16×16或4×4)并从而确定哪个预测模式(16×16模式或4×4模式)是最初为宏块考虑的。编码类型选择算法利用易于确定的宏块的属性。 
编码类型选择算法执行下列操作: 
1)将宏块分成4个8×8模块。 
2)计算每个8×8模块的方差,并将其与预定的阂值进行对比。例如,可以将预定的阈值设置成等于帧中所有的8×8模块平均方差,在所述帧中包括宏块。可以确定8×8模块的方差,例如通过a)确定模块中的所有像素值的平均值,b)为模块中的每个像素确定:(像素值-平均值)^2,以及c)对在步骤b确定的所有值求和(即,对模块中的所有像素的确定的值求和)。 
3)确定宏块中具有低于预定阈值的方差的8×8模块的数量(其中方差是用于确定是否将宏块编码为16×16模块或4×4模块的属性)。 
4)如果所有的4个8×8模块具有低于预定阈值的方差,则为初始考虑选择16×16编码类型。注意,如果16×16编码类型被选择为初始考虑,则最终选择的编码类型可以是16×16编码类型或4×4编码类型。可以利用传统的方法或改进的16×16预测模式搜索算法(如以下部分II中所述),选择用在宏块上的16×16预测模式。 
5)如果4个8×8模块的任一个具有超过预定阈值的方差,则选择4×4编码类型。同样,利用传统的方法或者改进的4×4预测模式搜索算法(如以下部分II所述),来确定将用在宏块的16个4×4模块的每个上的4×4预测模式。 
注意当用在编码进程的量化步骤中使用的量化参数值相对高时(例如,高于34),编码类型选择算法的操作稍微偏离上述的说明。在这些实施方式中,预定的阈值由取决于量化参数值(QP)的因子来依比例确定,使得当量化参数值增加时,预定的阂值就增加。在一些实施方式中,定比的因子由以定比的方程的形式确定:(1+k(QP-34)),其中k是常量。在其它的实例中,定比的因子由另÷个定比方程确定。预定的阈值乘以被确定的定比因子以生成成比例的阈值。 
在这些实施方式中,如果4个8×8模块的任一个具有超过成比例的阂值的方差,则将宏块编码为16个4×4模块。可以利用传统的方法或本发明的方法(诸如改进的4×4预测模式搜索算法)来做出选择。 然而,如果确定宏块的所有的4个8×8模块具有低于成比例的阈值的方差,可以将宏块编码为16×16模块或编码为16个4×4模块。可以利用传统的方法或改进的16×16预测模式搜索算法(如以下部分II所述),选择16×16预测模式用在宏块上。如果选择4×4编码类型优于已选定的16×16预测模式,则可以利用传统的方法或本发明的方法(诸如改进的4×4预测模式搜索算法)来选择4×4预测模式。 
附图2是用于选择像素宏块的编码类型的编码类型选择方法200的流程图。在一些实施方式中,方法200是由设计用来编码视频帧的软件和/硬件来实现的。在一些实施方式中,编码类型选择方法200包括附图1的步骤105。方法200从确定宏块的阈值方差(在205)开始。在一些实施方式中,将阈值方差设置成等于帧中的所有8×8模块的平均方差,在所述的帧中包括有宏块(如上所述)。在另外的实施方式中,当用在编码进程的量化步骤的量化参数值相对高时,预定的阈值方差由取决于量化参数值的因子来依比例确定(如上所述)。 
该方法然后将宏块分成4个8×8模块(在210)并且确定4个8×8模块的每个的方差(在215)。该方法然后确定是否所有的4个8×8模块的方差低于阈值方差(在220)。如果是,则该方法选择宏块的16×16编码类型(在225),并且结束。如果不是,则该方法选择宏块的4×4编码类型(在230),并且结束。 
部分II:16×16预测模式搜索算法 
在一般的搜索算法的步骤1之后,如果16×16编码类型已被选择为初始考虑,则然后对16×16预测模式进行测试。该选择描述了一般搜索算法的步骤2。在H.264编解码标准下,存在四个可能的16×16内部预测模式来从:DC、V(垂直)、H(水平)以及P(平面的)中选择。在一些实施方式中,使用传统的方法来选择16×16预测模式(例如,通过确定4个16×16预测模式的每个的成本并选择最低成本的模式)。在其它的实施方式中,基于由预测模式导致的失真,·使用改进的16×16预测模式搜索算法来考虑(即测试)宏块的16×16预测模式。 
在一些实施方式中,16×16预测模式搜索算法使用传统的方法来确定由特定的预测模式导致的失真,所述的特定的预测模式用在了当前处理的宏块中。在传统的方法下,失真的确定是由:1)从邻接的以前编码的宏块检索像素值,2)从检索到的像素值获得新的值,3)利用获得的值计算当前处理的宏块的预测值,以及4)确定当前处理的宏块的原始像素值和计算的预测值之间的失真。利用传统的方法来确定失真是耗费时间的。 
在其它的实施方式中,16×16预测模式搜索算法利用更快的估计方法来确定由特定的预测模式导致的失真,所述的特定的预测模式用在了当前处理的宏块中。该估计方法提供对预测值的估计(评估)并且然后确定被估计的预测值的失真,其中所述的预测值是由特定的预测模式生成的。 
在估计方法下,利用来自于当前处理的宏块自身的像素值来确定预测值,假定当前处理的宏块在边界处的像素值与邻接的宏块的邻近的像素值相似。由于所使用的来自于当前处理宏块的像素值不同于来自于其它宏块的像素值,这减小了检索的时间,所以利用估计方法确定失真耗费的时间较少。利用估计方法显著减小了需要确定精度损失较低的失真值的时间。 
在一些实施方式中,估计方法的伪码如下: 
choosel6×16mode() 
   { 
   stepl: 
       //DC预测 
         pred=当前宏块的左列和上排的像素平均 
         foreach 4×4 block 
         { 
                 SAD_DC=sad(4×4block,pred); 
                 if(SAD_DC>T) 
                 { 
                     bail and goto step2; 
                 } 
      } 
      choose 16×16 DC mode and return 
step2: 
      //垂直预测 
      foreach 4×4block 
      { 
              SAD_V=0; 
              foreach column in the 4×4 block 
              { 
                 pred=当前宏块的该列的上排的像素值 
                 SAD_V+=sad(4×4 block column,pred); 
              } 
              SAD_V>>=4; 
              if(SAD_V>T) 
              { 
                  bail and goto step3; 
              } 
      } 
      choose 16×16V and return 
Step3: 
      //水平预测 
    toreach 4×4block 
    { 
           SAD_H=0; 
           foreach row in the 4×4 block 
           { 
             pred=当前宏块的该排的左列的像素值 
             SAD_H+=sad(4×4 block row,pred); 
           } 
           SAD_H>>=4; 
           if(SAD_H>T) 
           { 
              choose 16×16 planar and 4×4 modes and return 
           } 
    } 
    choose 16×16 H and return 
不论用什么方法计算特定预测模式的失真,16×16预测模式搜索算法执行下列操作: 
1)测试16×16DC预测模式: 
a)确定由16×16DC预测模式导致的宏块的每个4×4模块中的失真。 
b)如果每个4×4模块中的失真低于预定的阈值,则选择16×16DC预测模式作为该宏块的预测模式,并且16×16预测模式搜索算法结束。 
c)如果任一个4×4模块中的失真超过预定的阈值,则16×16预测模式搜索算法继续到步骤2。 
2)测试16×16V预测模式: 
a)确定由16×16V预测模式导致的宏块的每个4×4模块中的失真。 
b)如果每个4×4模块中的失真低于预定的阈值,则选择 16×16V预测模式作为该宏块的预测模式,并且16×16预测模式搜索算法结束。 
c)如果任一个4×4模块中的失真超过预定的阈值,则16×16预测模式搜索算法继续到步骤3。 
3)测试16×16H预测模式: 
a)确定由16×16H预测模式导致的宏块中每个4×4模块的失真。 
b)如果每个4×4模块的失真低于预定的阈值,则选择16×16H预测模式作为该宏块的预测模式,并且16×16预测模式搜索算法结束。 
c)如果任一个4×4模块中的失真超过预定的阈值,则16×16预测模式搜索算法考虑16×16P预测模式以及4×4编码类型。在一些实施方式中,通过利用4×4预测模式搜索算法(在以下部分III讨论),使得两个上述选项之间的选择变得容易。在其它的实施方式中,利用传统的方法(例如通过确定16×16P预测模式的成本和利用4×4编码类型得到的最低成本并且选择具有最低成本的选项)来在两个上述选项之间做出选择。 
图3是16×16预测模式搜索方法300的流程图,用于选择16×16像素宏块的预测模式。在一些实施方式中,该方法300是由设置来编码视频帧的软件和/或硬件来实现的。在一些实施方式中,编码类型选择方法300包括图1的步骤120。在一些实施方式中,16×16预测模式搜索方法利用传统的方法或改进的估计方法来确定宏块中由特定的预测模式(如上所述)导致的4×4模块的失真。 
方法300从确定由16×16DC预测模式导致的宏块的16个4×4模块中的每个的失真开始(在305)。该方法然后确定由16×16DC预测模式导致的所有4×4模块中的失真是否低于预定的阈值失真(在310)。如果是,就选择16×16DC预测模式作为宏块的预测模式(在315),并且该方法结束。 
如果该方法300确定由16×16DC预测模式导致的任一个4×4模 块中的失真不低于预定的阈值失真(在310-否),则该方法确定由16×16V预测模式导致的宏块的16个4×4模块的每个中的失真(在320)。该方法然后确定由16×16V预测模式导致的所有4×4模块中的失真是否低于预定的阈值失真(在325)。如果是,就选择16×16V预测模式作为宏块的预测模式(在330),并且该方法结束。 
如果方法300确定由16×16V预测模式导致的任一4×4模块中的失真不低于预定的阈值失真(在325-否),则该方法确定由16×16H预测模式导致的宏块的16个4×4模块中每个的失真(在335)。该方法然后确定由16×16H预测模式导致的所有4×4模块中的失真是否低于预定的阈值失真(在340)。如果是,就选择16×16H预测模式作为宏块的预测模式(在345),并且该方法结束。 
如果方法300确定由16×16H预测模式导致的任一4×4模块中的失真不低于预定的阈值失真(在340-否),则该方法在设置16×16P预测模式作为宏块的预测模式或者为宏块设置4×4编码类型之间做出选择(在350)。在一些实施方式中,通过使用4×4预测模式搜索方法500(以下参照附图5讨论),可使上述的两个选项之间的选择变得容易。在其它的实施方式中,利用传统的方法(如上所述)在上述的两个选项之间做出选择。然后该方法结束。 
部分III:4×4预测模式搜索算法 
在一般的搜索算法的步骤1之后,如果4×4编码类型已选择为初始考虑,则然后为宏块的16个4×4模块的每个选择4×4预测模式。该部分描述一般搜速算法的步骤3。在一些实施方式中,使用传统的方法来选择每个4×4模块的4×4预测模式(例如,通过确定9个预测模式中每个模式的成本并且选择最低成本的模式)。在其它的实施方式中,改进的4×4预测模式搜索算法用于选择4×4模块的4×4预测模式。 
如上所述,视频流由一列视频帧所组成,其中每个帧由多个宏块组成。宏块典型地是16×16的像素阵列(尽管其它尺寸的宏块也是可能的)并被分成分区(诸如4×4的像素阵列的分区)。在H.264编解 码标准下,当内部编码帧时,存在9种不同的方法来编码4×4阵列(即,存在9种内部4×4预测模式)。这9种模式是: 
1.内部_4×4_水平 
2.内部_4×4_垂直 
3.内部_4×4_斜_下_左 
4.内部4×4_斜_下_右 
5.内部_4×4_垂直_右 
6.内部_4×4_水平_下 
7.内部_4×4_垂直_左 
8.内部_4×4_水平_上 
每个4×4阵列只以一种预测模式来编码。典型地,将会选择导致最低成本的预测模式。成本典型地等于失真(其中失真反映了原始像素值和编码的预测值之间的差异)或者失真的加权平均和由预测模式生成的比特数(其中失真和/或比特数的增加会增加成本)。可以在所有9个预测模式中执行穷举搜索,以确定具有最低成本的最优的预测模式(选定的预测模式)。然而,典型地,在所有9个预测模式中的穷举搜索并不是有效的(耗费太多的时间和处理资源)。 
在一些实施方式中,使用了一种更有效的方法来确定像素阵列的预测模式。在一些实施方式中,使用一种搜索算法,该算法在确定像素阵列的预测模式中考虑减小数量的预测模式。该搜索算法更有效并且产生相对低的精度损失。 
该搜索算法是基于4×4阵列的9种可能的预测模式之间的逻辑/位置关系。图4示出4×4阵列的9种预测模式之间的逻辑/位置关系的概念图表。如图4所示,8种预测模式(0、l、3、4、5、6、7和8)围绕圆环设置,其中一个预测模式(2)放置在圆环的中央,预测模式由节点表示。圆环上的两个预测模式相互越接近,两个预测模式之间的逻辑/位置关系就越强。.同样,圆环上两个预测模式之间彼此相距越远,两个预测模式之间的逻辑/位置关系就越弱。例如,由于预测模式0和5在圆环上相互邻接,所以这表示这两个预测模式之间存在较 强的逻辑/位置关系。作为又一个实例,由于预测模式0和1是在圆环上相对的位置,这表示这两个预测模式之间存在较弱的逻辑/位置关系。预测模式2位于圆环的中央,表示它与其它任何一个预测模式都没有逻辑/位置关系。 
图4的概念图表是基于内部编码4×4阵列的H.264编解码标准。对于当前处理的4×4阵列,H.264标准下的预测模式表示另外一个4×4阵列(在此称作预测阵列)的位置(相对于当前处理的4×4阵列),其是基于对当前处理的阵列编码的预测信息。例如,预测模式0(垂直)表示当前处理的阵列的预测阵列是位于当前处理的阵列之上,预测模式1(水平)表示当前处理的阵列的预测阵列是位于当前处理的阵列左侧。 
同样,可以访问预测模式之间的逻辑/位置关系的强弱(基于由与当前处理的4×4阵列有关的预测模式表示的位置关系)。例如,由于位于当前处理的阵列之上的预测阵列(由预测模式0表示)与位于当前处理的阵列左侧的预测阵列(由预测模式1表示)之间具有弱的逻辑/位置关系,所以预测模式0与预测模式1之间具有弱的逻辑/位置关系。弱的逻辑位置关系反映在了附图4中,其中预测模式0和1在圆环上相对的部分。相反,由于位于当前处理的阵列之上的预测阵列(由预测模式0表示)与位于当前处理的阵列上方和右侧的预测阵列(由预测模式5表示)之间具有强的逻辑/位置关系,所以预测模式0与预测模式5之间具有强的逻辑/位置关系。强的逻辑/位置关系反映在了附图4中,其中预测模式0和5在圆环上相邻。 
围绕圆环设置的8个预测模式(0、1、3、4、5、6、7和8)可以分为4组逻辑/位置相关的预测模式: 
1.7、0和5(垂直左,垂直,和垂直右) 
2.8、1和6(水平上,水平,和水平下) 
3.7、3和8(垂直左,斜下左,和水平上) 
4.5、4和6(垂直右,斜下右,和水平下) 
相同组内的预测模式相互之间具有强的逻辑/位置关系。在一些 实施方式中,搜索算法最初确定每个组中的一个预测模式的成本,连同预测模式2的成本。搜索算法然后确定具有最低成本的该组预测模式中的预测模式。如果具有最低成本的预测模式是在特定组的预测模式中,则存在非常大的可能性是所有9个可能的预测模式的最低成本就在该特定的组中。同样,该搜索算法然后确定在该特定的组中具有最低成本的预测模式,具有最低成本的预测模式被选作阵列的最优的预测模式。 
例如,在一些实施方式中,搜索算法最初确定预测模式0、1、2、3和4的成本,其中预测模式0、1、3和4分别来自不同的组。如果在预测模式的组(0,1,2,3,4)中预测模式0、1、3或4具有最低的成本,则搜索算法随后确定预测模式的组中最低的成本,其中包括以前确定的预测模式。例如,如果搜索算法确定在预测模式的组(0,1,2,3,4)中,预测模式1具有最低的成本,则搜索算法然后确定预测模式组(8,1,6)的最低成本,具有最低成本的预测模式被选为最优的预测模式。 
在一些实施方式中,搜索算法最初考虑并比较预定的预测模式组的成本,该组包括一些但并不是全部的9种可能的预测模式。在一些实施方式中,预测模式的预定的组包括一个预测模式,该一个预测模式是来自于4个预测模式组的每个(如上参照附图4所述)。在以下所述的实施方式中,预测模式的预定的组包括预测模式0、1、2、3和4。然而在其它的实施方式中,预测模式的预定组包括其它的预测模式。搜索算法确定了组中每个预测模式的成本,其中C0、C1、C2、C3和C4分别是预测模式0、1、2、3和4的预先确定的成本。可以利用本领域已知的方法确定每个预测模式的成本。搜索算法然后确定具有最低成本的预测模式的序数(0,1,2,3或4),其中变量n用于表示确定的序数。这些操作可以由如下的等式来表示: 
n=GetInlOfMinCost(0,1,2,3,4) 
其中GetIn1OfMinCost是函数,其确定预测模式组中(例如,0,1,2,3,和4)每个预测模式的成本,并且确定组中具有最低成本的 预测模式的序数。 
搜索算法然后执行下列操作: 
Ifn==2 
        x=2 
Else If n==0 
        x==GetInlOfMinCost(7,0,5) 
Else If n==1 
        x==GetInlOfMinCost(8,1,6) 
Else If n==3 
        x==GetInlOfMinCost(7,3,8) 
Else If n==4 
        x==GetInlOfMinCost(5,4,6) 
其中x是最终选定为像素阵列的最优预测模式(选定的预测模式)的预测模式的序号。 
同样,搜索算法确定n是否等于2。如果是,选定的搜索模式就是预测模式2。如果n不等于2,搜索算法然后确定n是否等于0。如果是,选定的预测模式就是具有预测模式组(7,0,5)的最低成本的预测模式。如果n不等于0,搜索算法然后确定n是否等于1。如果是,选定的预测模式就是具有预测模式组(8,1,6)的最低成本的预测模式。如果n不等于1,搜索算法然后确定n是否等于3。如果是,选定的预测模式就是具有预测模式组(7,3,8)的最低成本的预测模式。如果n不等于3,搜索算法然后确定n是否等于4。如果是,选定的预测模式就是具有预测模式组(5,4,6)的最低成本的预测模式。 
图5是4×4预测模式搜索方法500的流程图,该方法选择宏块的4×4阵列的预测模式。在一些实施方式中,方法500是由设置用来编码视频帧的软件和/或硬件来实现的。在一些实施方式中,4×4预测模式搜索方法500包括图1的步骤115。 
方法500从将宏块分成16个4×4阵列开始(在505)。该方法然后将第一个4×4阵列设置成用于处理的当前的4×4阵列(在510)。对于当前的4×4阵列,方法500然后确定每个预测模式0、1、2、3 和4的成本(在515)。该方法确定具有最低成本的预测模式是2。如果是,该方法将预测模式2设置为当前的4×4阵列的预测模式(在525)。该方法然后确定是否在宏块中存在多个4×4阵列需要处理(在585)。如果是,该方法将下一个4×4阵列设置为当前的4×4阵列(在590),并且继续步骤515。如果不是,该方法结束。 
如果该方法确定具有最低成本的预测模式不是预测模式2(在520-否),则该方法然后确定具有最低成本的预测模式是否是预测模式0(在530)。如果是,该方法随后确定每个预测模式7、0和5的成本(在535)。该方法然后将(预测模式7、0和5中)具有最低成本的预测模式设置为(在540)当前4×4阵列的预测模式。该方法然后继续步骤585。 
如果该方法确定具有最低成本的预测模式不是预测模式0(在530-否),则该方法然后确定具有最低成本的预测模式是否是预测模式1(在545)。如果是,该方法然后确定每个预测模式8、1和6的成本(在550)。该方法然后将(预测模式8、1和6中)具有最低成本的预测模式设置为当前4×4阵列的预测模式(在555)。该方法然后继续步骤585。 
如果该方法确定具有最低成本的预测模式不是预测模式1(在545-否),则该方法然后确定具有最低成本的预测模式是否是预测模式3(在560)。如果是,则该方法确定每个预测模式7、3和8的成本(在565)。该方法然后将(预测模式7、3和8中)具有最低成本的预测模式设置为当前4×4阵列的预测模式(在570)。该方法然后继续步骤585。 
如果该方法确定具有最低成本的预测模式不是预测模式3(在560-否),则表示具有最低成本的预测模式是预测模式4。该方法然后确定每个预测模式5、4和6的成本(在575)。该方法然后将(预测模式5、4和6中)具有最低成本的预测模式设置为当前4×4阵列的预测模式(在580)。该方法然后继续步骤585。 
在一些实施方式中,方法500选择宏块的4×4阵列的预测模式, 其中每个4×4阵列的预测模式选择取决于宏块中一个或多个其它4×4阵列的前一个预测模式的选择。在这些实施方式中,宏块的每个4×4阵列的预测模式的选择取决于其上方和左侧相邻4×4阵列的编码值(以及从而选定的预测模式)。因此,在这些实施方式中,方法500选择从左上部的4×4阵列开始的预测模式,接下来是右侧的,然后是向下的。给出以前选定的上方和左侧的相邻的4×4阵列的预测模式,方法500随后选择当前正在处理的4×4阵列的具有最低成本的预测模式(在9种预测模式中)。为了这样做,方法500例如可以计算最后得到的组合的总体成本(即16种确定的成本的成本和)。 
A:可选的预测模式搜索算法 
在可选的实施方式中,可选的预测模式搜索算法执行另外一组操作。最初,可选的搜索算法确定预测模式组(0,1,3和4)中具有最低的成本的预测模式的序数,其中变量a用于表示确定的序数。可选的搜索算法也确定预测模式组(0,1,3和4)中具有次最低的成本的预测模式的序数,其中b用于表示确定的序数。而且,可选的搜索算法确定预测模式组(0,1,2,3和4)中具有最低的成本的预测模式的序数,其中变量n用于表示确定的序数。 
这些操作可以由以下的等式来表达。 
a=GetInlOfMinCost_a(0,1,3,4) 
b=GetInlOfSecondMinCost_b(0,1,3,4) 
n=GetInlOfMinCost(0,1,2,3,4) 
其中GetIn1OfSecondMinCost是函数,其确定预测模式组中(例如,0,1,3和4)中每个预测模式的成本,并且确定组中的具有次最低成本的预测模式的序数。 
搜索算法然后执行下列操作: 
Ifn==2 
       x=2 
Else If (a,b)==(0,4)or(4,0) 
       x==GetInlOfMinCost(0,5,4) 
Else If (a,b)==(4,1)or(1,4) 
       x==GetInlOfMinCost(4,6,1) 
Else If (a,b)==(1,3)or(3,1) 
       x==GetInlOfMinCost(1,8,3) 
Else If (a,b)==(3,0)or(0,3) 
       x==GetInlOfMinCost(3,7,0) 
Else 
       x==n 
其中x是最终选定为像素阵列的最优预测模式(选定的预测模式)的预测模式的序号。 
同样,可选的搜索算法确定n是否等于2。如果是,选定的搜索模式就是预测模式2。如果n不等于2,可选的搜索算法然后确定是否a等于0并且b等于4或者反之亦然(即是否a等于4并且b等于0)。如果是,选定的预测模式就是具有预测模式组(0,5,4)的最低成本的预测模式。 
如果a等于0并且b等于4或者反之亦然都不是真的,可选的搜索算法然后确定是否a等于4并且b等于1或者反之亦然。如果是,选定的预测模式就是具有预测模式组(4,6,1)的最低成本的预测模式。 
如果a等于4并且b等于l或者反之亦然都不是真的,可选的搜索算法然后确定是否a等于1并且b等于3或者反之亦然。如果是,选定的预测模式就是具有预测模式组(1,8,3)的最低成本的预测模式。 
如果a等于1并且b等于3或者反之亦然不是真的,可选的搜索算法然后确定是否a等于3并且b等于0或者反之亦然。如果是,选定的预测模式就是具有预测模式组(3,7,0)的最低成本的预测模式。 
图6是可选的4×4预测模式搜索方法600的流程图,其中所述的方法选定宏块的4×4阵列的预测模式。在一些实施方式中,4×4预测模式搜索方法600包括图1的步骤115。 
方法600从将宏块分成16个4×4阵列开始(在605)。该方法然后将第一个4×4阵列设置成用于处理的当前的4×4阵列(在610)。对于当前的4×4阵列,方法600然后确定每个预测模式0、1、2、3和4的成本(在615)。该方法将变量a设置成等于具有预测模式0、1、3和4中最低成本的预测模式的预测指数(在616)。该方法将变量b设置成等于具有预测模式0、l、3和4中次最低成本的预测模式的预测模式指数(在617)。该方法将变量n设置成等于具有预测模式0、1、2、3和4中最低成本的预测模式的预测模式指数(在618)。 
该方法确定n是否等于2(在620)。如果是,则该方法将预测模式2设置成当前4×4阵列的预测模式(在625)。该方法然后确定是否在宏块中存在多个将被处理的4×4阵列(在685)。如果是,则该方法将下一个4×4阵列设置成当前的4×4阵列(在690),并继续步骤615。否则,该方法结束。 
如果该方法确定n不等于2(在620-否),则该方法然后确定条件是否(a等于0并且b等于4或者反之亦然)为真(在630)。如果是,则该方法然后确定预测模式0、5和4的每个的成本(在635)。该方法然后将(预测模式0、5和4中)具有最低成本的预测模式设置成当前4×4阵列的预测模式(在640)。该方法然后继续到步骤685。 
如果该方法确定条件(a等于0并且b等于4或者反之亦然)非真(在630-否),则该方法确定条件(a等于4并且b等于1或者反之亦然)是否为真(在645)。如果是,该方法然后确定每个预测模式4、6和1的成本(在650)。该方法然后将(预测模式4、6和1中)具有最低成本的预测模式设置成当前4×4阵列的预测模式(在655)。该方法然后继续到步骤685。 
如果该方法确定条件(a等于4并且b等于1或者反之亦然)非真(在645-否),则该方法确定条件(a等于1并且b等于3或者反 之亦然)是否为真(在660)。如果是,该方法然后确定每个预测模式1、8和3的成本(在665)。该方法然后将(预测模式l、8和3中)具有最低成本的预测模式设置成当前4×4阵列的预测模式(在670)。该方法然后继续到步骤685。 
如果该方法确定条件(a等于1并且b等于3或者反之亦然)非真(在660-否),则该方法确定条件(a等于3并且b等于0或者反之亦然)是否为真(在672)。如果是,则该方法然后确定每个预测模式3、7和0的成本(在675)。该方法然后将(预测模式3、7和0中)具有最低成本的预测模式设置成当前4×4阵列的预测模式(在680)。该方法然后继续到步骤685。如果该方法确定条件(a等于3并且b等于0或者反之亦然)非真(在672-否),该方法然后将该预测模式设置成等于由变量n(在步骤618确定)所指示的预测模式(在673),即预测模式0、1、2、3和4中具有最低成本的预测模式。该方法然后继续到步骤685。 
图7表示计算机系统700,利用该计算机系统实施本发明的一些实施方式。计算机系统700包括总线705、处理器710、系统存储器715、只读存储器720、永久存储设备725、输入设备730以及输出设备735。 
总线705总体来说表示所有的系统、外围设备以及芯片组总线,其可通信地连接计算机系统700的多个内部设备。例如,总线705可通信地将处理器710与只读存储器720、系统存储器715以及永久存储设备725相连接。 
只读存储器(ROM)720存储由处理器710和计算机系统的其它模块所需要的静态数据和指令。另一方面,永久存储设备725是读写存储设备。该设备是非易失性存储器单元,即使计算机系统700关闭时其也存储有指令和数据。一些实施方式利用海量存储设备(诸如磁盘或光盘及其相应的磁盘驱动器)作为永久存储设备725。其它的实施方式利用可移动的存储设备(诸如软盘或 
Figure BSA00000276789800211
盘,及其相应的磁盘驱动器)作为永久存储设备。 
和永久存储设备725类似,系统存储器715是读写存储设备。然而与存储设备725不同的是,系统存储器是易失性读写存储器,诸如随机存取存储器(RAM)。该系统存储器存储处理器在运行期间所需的一些指令和数据。 
实现一些实施方式所必需的指令和/或数据存储在系统存储器715、永久存储设备725、只读存储器720或者三者的任意组合中。例如,不同的存储器单元可以包含用于根据一些实施方式编码或解码视频数据流的指令,和/或包括视频数据。为了执行一些实施方式的处理,处理器710从这些不同的存储器单元检索执行的指令和处理的数据。为了执行一些实施方式的处理,处理器710从这些不同的存储器单元检索执行的指令和处理的数据。 
总线705也连接到输入和输出设备730和735。输入设备730可以使得用户传递信息并选择给计算机系统700的命令。输入设备730包括字母数字键盘和光标控制器。输出设备735显示由计算机系统700生成的图像。输出设备包括打印机和显示设备,诸如阴极射线管(CRT)或液晶显示器(LCD)。 
最后,如图7所示,例如通过网络适配器(未示出),总线705也将计算机系统700连接到网络765。以这种方式,计算机系统700可以是计算机网络(诸如局域网(“LAN”)、广域网(“WAN”)或者企业内部互联网)或者一种网络(诸如因特网)的一部分。计算机系统700的任何或所有部件可以结合一些实施方式一起使用。然而,本领域的普通技术人员将理解任何其它的系统配置也可以用在其它的实施方式中。 
根据多个特定的细节对本发明进行了说明,本领域的普通技术人员将认识到在不背离本发明的精神的情况下,可以以其它特定的形式来实现本发明。例如,以上通过参照宏块对本发明的多个实施方式进行了描述。本领域的普通技术人员将认识到这些实施方式可以用在任何其它的像素阵列中。 

Claims (48)

1.一种用于编码视频图像中的像素组的方法,所述方法包括:
将多个编码模式分组成多组编码模式,每个编码模式是引用所述视频图像中的多个邻接像素的内部预测编码模式,每组编码模式是基于所述多个邻接像素之间的邻近关系而识别的;
从所述多组编码模式中的每一组中选择一个编码模式,所选择的编码模式中的每一个都仅属于一组编码模式;
计算与所选择的编码模式相关联的成本值;
基于与所选择的编码模式相关联的所计算的成本值,从所述多组编码模式识别一组编码模式,所识别的编码模式组包括具有计算出的最低成本值的所选择的编码模式;
通过在所识别的编码模式组中识别具有最低成本值的编码模式,来从所识别的编码模式组中选择编码模式;以及
使用从所识别的编码模式组中选择的编码模式来编码所述像素组。
2.根据权利要求1所述的方法,其中,所述多组编码模式中的每一组编码模式包括所述多个编码模式中的一些但不是全部编码模式。
3.根据权利要求1所述的方法,其中,所述多个编码模式中的第一编码模式与第二编码模式之间的邻近关系基于第一编码模式与第二编码模式之间的逻辑或位置关系的强度。
4.根据权利要求1所述的方法,其中,与特定编码模式相关联的计算出的成本值是利用该特定编码模式编码所述像素组的失真值成本。
5.根据权利要求1所述的方法,其中,同一组编码模式中的两个编码模式的邻近关系强于不在同一组编码模式中的两个编码模式的邻近关系。
6.一种用于使用与视频图片中的特定像素组邻近的多个邻近像素组对所述视频图片中的该特定像素组进行内部预测编码的方法,该方法包括:
识别所述视频图片中的第一多个邻近像素组,所述第一多个邻近像素组中的每一个邻近像素组与所述第一多个邻近像素组中的其他邻近像素组具有位置关系;
针对所述第一多个邻近像素组中的每一个邻近像素组,计算基于所述第一多个邻近像素组中的邻近像素组对所述特定像素组进行内部预测编码的第一成本;
识别所述第一多个邻近像素组中的具有最低计算出的第一成本的一个邻近像素组;
识别所述视频图片中的第二多个邻近像素组,所述第二多个邻近像素组包括所述第一多个邻近像素组中的所述识别出的邻近像素组,其中,相比于所述第一多个邻近像素组中的邻近像素组彼此的位置关系,所述第二多个邻近像素组中的邻近像素组彼此的位置关系更强,从而相比于所述第一多个邻近像素组中的邻近像素组,所述第二多个邻近像素组中的邻近像素组彼此位置更靠近;
针对所述第二多个邻近像素组中的每一个邻近像素组,计算基于所述第二多个邻近像素组中的邻近像素组对所述特定像素组进行内部预测编码的第二成本;
识别所述第二多个邻近像素组中的具有最低计算出的第二成本的一个邻近像素组;以及
使用所述第二多个邻近像素组中的所述识别出的邻近像素组来编码所述特定像素组。
7.根据权利要求6所述的方法,其中,所述第一多个邻近像素组中的每一个邻近像素组与所述第一多个邻近像素组中的所有其他邻近像素组具有逻辑关系,其中,相比于所述第一多个邻近像素组中的邻近像素组之间的逻辑关系中的每一个,所述第二多个邻近像素组中的每个邻近像素组与所述第一多个邻近像素组中的所述识别出的邻近像素组具有更近的逻辑关系。
8.根据权利要求6所述的方法,其中,所述特定像素组是宏块的分区。
9.根据权利要求6所述的方法,其中,所述计算出的第一成本和第二成本基于由于对所述特定像素组进行内部预测编码而导致的失真。
10.根据权利要求6所述的方法,其中,相比于所述第一多个邻近像素组中的邻近像素组之间的位置关系,所述第二多个邻近像素组中的每一个邻近像素组与所述第一多个邻近像素组中的所述识别出的邻近像素组具有更强的位置关系。
11.根据权利要求6所述的方法,其中,所述多个邻近像素组对应于多个内部预测编码模式。
12.根据权利要求11所述的方法,其中,所述多个内部预测编码模式包括以下中的至少一个:内部4×4垂直预测模式、内部4×4水平预测模式、内部4×4DC预测模式、内部4×4斜下左预测模式、内部4×4斜下右预测模式、内部4×4垂直右预测模式、内部4×4水平下预测模式、内部4×4垂直左预测模式、以及内部4×4水平上预测模式。
13.根据权利要求6所述的方法,还包括:
使用DC内部预测编码模式来确定对所述特定像素组进行编码的成本;以及
当相比于所述第一多个邻近像素组中的每一个邻近像素组的所述计算出的第一成本中的每一个,使用所述DC内部预测编码模式来对所述特定像素组进行内部预测编码具有更低的编码成本时,选择所述DC内部预测编码模式来对所述特定像素组进行编码。
14.一种用于编码视频图像中的像素组的方法,该方法包括:
根据多个编码模式中的不同编码模式之间的关系,从所述多个编码模式中识别一组编码模式,其中所述多个编码模式中的每一个是引用与所述视频图像中的所述像素组邻接的多个像素的内部预测编码模式;
计算与所述组编码模式中的每一个相关联的成本值;
识别所述组编码模式中具有最低计算出的成本值的第一编码模式;
识别所述组编码模式中具有第二最低计算出的成本值的第二编码模式;
识别相比于所述多个编码模式中的任何其他编码模式与所述第一和第二编码模式具有更近的位置关系的第三编码模式;
计算与所述第三编码模式相关联的成本值;
选择所述第一编码模式、所述第二编码模式以及所述第三编码模式之中最低成本的编码模式;以及
使用所选择的最低成本的编码模式来对所述视频图像中的所述像素组进行编码。
15.根据权利要求14所述的方法,其中,所述组编码模式是基于用于编码4×4阵列的在H.264编解码标准下指定的9种预测模式之间的位置关系来识别的。
16.根据权利要求14所述的方法,其中,所述不同编码模式之间的关系是由与所述不同编码模式相关联的不同预测阵列之间的位置和逻辑关系来定义的。
17.根据权利要求14所述的方法,其中,与特定编码模式相关联的特定成本值是用于使用该特定编码模式编码所述像素组的失真成本值。
18.根据权利要求14所述的方法,其中,所述组编码模式包括DC编码模式,所述方法还包括:当所述DC编码模式是所述组编码模式中具有最低计算出的成本值的编码模式时,使用所述DC编码模式来编码所述像素组。
19.一种用于编码视频图像中的像素组的设备,所述设备包括:
用于将多个编码模式分组成多组编码模式的装置,每个编码模式是引用所述视频图像中的多个邻接像素的内部预测编码模式,每组编码模式是基于所述多个邻接像素之间的邻近关系而识别的;
用于从所述多组编码模式中的每一组中选择一个编码模式的装置,所选择的编码模式中的每一个都仅属于一组编码模式;
用于计算与所选择的编码模式相关联的成本值的装置;
用于基于与所选择的编码模式相关联的所计算的成本值,从所述多组编码模式识别一组编码模式的装置,所识别的编码模式组包括具有计算出的最低成本值的所选择的编码模式;
用于通过在所识别的编码模式组中识别具有最低成本值的编码模式,来从所识别的编码模式组中选择编码模式的装置;以及
用于使用从所识别的编码模式组中选择的编码模式来编码所述像素组的装置。
20.根据权利要求19所述的设备,其中,所述多组编码模式中的每一组编码模式包括所述多个编码模式中的一些但不是全部编码模式。
21.根据权利要求19所述的设备,其中,所述多个编码模式中的第一编码模式与第二编码模式之间的邻近关系基于第一编码模式与第二编码模式之间的逻辑或位置关系的强度。
22.根据权利要求19所述的设备,其中,与特定编码模式相关联的计算出的成本值是利用该特定编码模式编码所述像素组的失真值成本。
23.根据权利要求19所述的设备,其中,同一组编码模式中的两个编码模式的邻近关系强于不在同一组编码模式中的两个编码模式的邻近关系。
24.一种用于使用与视频图片中的特定像素组邻近的多个邻近像素组对所述视频图片中的该特定像素组进行内部预测编码的设备,该设备包括:
用于识别所述视频图片中的第一多个邻近像素组的装置,所述第一多个邻近像素组中的每一个邻近像素组与所述第一多个邻近像素组中的其他邻近像素组具有位置关系;
用于针对所述第一多个邻近像素组中的每一个邻近像素组,计算基于所述第一多个邻近像素组中的邻近像素组对所述特定像素组进行内部预测编码的第一成本的装置;
用于识别所述第一多个邻近像素组中的具有计算出的最低的第一成本的一个邻近像素组的装置;
用于识别所述视频图片中的第二多个邻近像素组的装置,所述第二多个邻近像素组包括所述第一多个邻近像素组中的所述识别出的邻近像素组,其中,相比于所述第一多个邻近像素组中的邻近像素组彼此的位置关系,所述第二多个邻近像素组中的邻近像素组彼此的位置关系更强,从而相比于所述第一多个邻近像素组中的邻近像素组,所述第二多个邻近像素组中的邻近像素组彼此位置更靠近;
用于针对所述第二多个邻近像素组中的每一个邻近像素组,计算基于所述第二多个邻近像素组中的邻近像素组对所述特定像素组进行内部预测编码的第二成本的装置;
用于基于所述第二多个邻近像素组的所述计算出的第二成本,识别所述第二多个邻近像素组中的具有计算出的最低的第二成本的一个邻近像素组的装置;以及
用于使用所述第二多个邻近像素组中的所述识别出的邻近像素组来编码所述特定像素组的装置。
25.根据权利要求24所述的设备,其中,所述第一多个邻近像素组中的每一个邻近像素组与所述第一多个邻近像素组中的所有其他邻近像素组具有逻辑关系,其中,相比于所述第一多个邻近像素组中的邻近像素组之间的逻辑关系中的每一个,所述第二多个邻近像素组中的每个邻近像素组与所述第一多个邻近像素组中的所述识别出的邻近像素组具有更近的逻辑关系。
26.根据权利要求24所述的设备,其中,所述特定像素组是宏块的分区。
27.根据权利要求24所述的设备,其中,所述计算出的第一成本和第二成本基于由于对所述特定像素组进行内部预测编码而导致的失真。
28.根据权利要求24所述的设备,其中,相比于所述第一多个邻近像素组中的邻近像素组之间的位置关系,所述第二多个邻近像素组中的每一个邻近像素组与所述第一多个邻近像素组中的所述识别出的邻近像素组具有更强的位置关系。
29.根据权利要求24所述的设备,其中,所述多个邻近像素组对应于多个内部预测编码模式。
30.根据权利要求29所述的设备,其中,所述多个内部预测编码模式包括以下中的至少一个:内部4×4垂直预测模式、内部4×4水平预测模式、内部4×4DC预测模式、内部4×4斜下左预测模式、内部4×4斜下右预测模式、内部4×4垂直右预测模式、内部4×4水平下预测模式、内部4×4垂直左预测模式、以及内部4×4水平上预测模式。
31.根据权利要求24所述的设备,还包括:
用于使用DC内部预测编码模式来确定对所述特定像素组进行编码的成本的装置;以及
用于当相比于所述第一多个邻近像素组中的每一个邻近像素组的所述计算出的第一成本中的每一个,使用所述DC内部预测编码模式来对所述特定像素组进行内部预测编码具有更低的编码成本时,选择所述DC内部预测编码模式来对所述特定像素组进行编码的装置。
32.一种用于编码视频图像中的像素组的设备,该设备包括:
用于根据多个编码模式中的不同编码模式之间的关系,从所述多个编码模式中识别一组编码模式的装置,其中所述多个编码模式中的每一个是引用与所述视频图像中的所述像素组邻接的多个像素的内部预测编码模式;
用于计算与所述组编码模式中的每一个相关联的成本值的装置;
用于识别所述组编码模式中具有最低计算出的成本值的第一编码模式的装置;
用于识别所述组编码模式中具有第二最低计算出的成本值的第二编码模式的装置;
用于识别相比于所述多个编码模式中的任何其他编码模式与所述第一和第二编码模式具有更近的位置关系的第三编码模式的装置;
用于计算与所述第三编码模式相关联的成本值的装置;
用于选择所述第一编码模式、所述第二编码模式以及所述第三编码模式之中最低成本的编码模式的装置;以及
用于使用所选择的最低成本的编码模式来对所述视频图像中的所述像素组进行编码的装置。
33.根据权利要求32所述的设备,其中,所述组编码模式是基于用于编码4×4阵列的在H.264编解码标准下指定的9种预测模式之间的位置关系来识别的。
34.根据权利要求32所述的设备,其中,所述不同编码模式之间的关系是由与所述不同编码模式相关联的不同预测阵列之间的位置和逻辑关系来定义的。
35.根据权利要求32所述的设备,其中,与特定编码模式相关联的特定成本值是用于使用该特定编码模式编码所述像素组的失真成本值。
36.根据权利要求32所述的设备,其中,所述组编码模式包括DC编码模式,所述设备还包括:用于当所述DC编码模式是所述组编码模式中具有最低计算出的成本值的编码模式时,使用所述DC编码模式来编码所述像素组的装置。
37.一种从多个编码模式中选择用于对视频图像的像素块进行编码的编码模式的方法,每个编码模式是引用所述视频图像中的多个邻接像素的内部预测编码模式,所述方法包括:
从所述多个编码模式中识别第一编码模式组,所述第一编码模式组包括基于所述多个编码模式之间的邻近关系而识别的编码模式;
计算所述编码模式组中的每一个编码模式对所述像素块进行编码的成本;
从所述第一编码模式组中识别具有所述第一编码模式组中的最低成本的第一编码模式;
基于所述邻近关系和所识别的第一编码模式,从所述多个编码模式识别第二编码模式组,该第二组中的编码模式具有比第一组中的编码模式更近的邻近关系;
计算所述第二编码模式组中的每一个编码模式对所述像素块进行编码的成本;
从所述第二编码模式组中选择成本最低的编码模式作为第二编码模式;以及
使用所选择的第二编码模式对所述像素块进行编码。
38.根据权利要求37所述的方法,其中所述第一编码模式组包括优选编码模式,其中选择所述第二编码模式包括当所识别的第一编码模式是优选编码模式时选择该优选编码模式。
39.根据权利要求38所述的方法,其中所述优选编码模式是DC预测模式。
40.根据权利要求37所述的方法,其中计算每一个编码模式对所述像素块进行编码的成本包括计算反映所述像素块的原始像素值与预测值之间的差值的失真值。
41.根据权利要求37所述的方法,其中所述多个编码模式包括以下中的至少一个:内部4×4垂直预测模式、内部4×4水平预测模式、内部4×4DC预测模式、内部4×4斜下左预测模式、内部4×4斜下右预测模式、内部4×4垂直右预测模式、内部4×4水平下预测模式、内部4×4垂直左预测模式、以及内部4×4水平上预测模式。
42.根据权利要求37所述的方法,其中所述第一编码模式组中的两个编码模式的邻近关系弱于不在所述编码模式组中的两个编码模式的邻近关系。
43.一种从多个编码模式中选择用于对视频图像的像素块进行编码的编码模式的设备,每个编码模式是引用所述视频图像中的多个邻接像素的内部预测编码模式,所述设备包括:
用于从所述多个编码模式中识别第一编码模式组的装置,所述第一编码模式组包括基于所述多个编码模式之间的邻近关系而识别的编码模式;
用于计算所述编码模式组中的每一个编码模式对所述像素块进行编码的成本的装置;
用于从所述第一编码模式组中识别具有所述第一编码模式组中的最低成本的第一编码模式的装置;
用于基于所述邻近关系和所识别的第一编码模式,从所述多个编码模式识别第二编码模式组的装置,该第二组中的编码模式具有比第一组中的编码模式更近的邻近关系;
用于计算所述第二编码模式组中的每一个编码模式对所述像素块进行编码的成本的装置;
用于从所述第二编码模式组中选择成本最低的编码模式作为第二编码模式的装置;以及
用于使用所选择的第二编码模式对所述像素块进行编码的装置。
44.根据权利要求43所述的设备,其中所述第一编码模式组包括优选编码模式,其中用于选择所述第二编码模式的装置包括用于在所识别的第一编码模式是优选编码模式时选择该优选编码模式的装置。
45.根据权利要求44所述的设备,其中所述优选编码模式是DC预测模式。
46.根据权利要求43所述的设备,其中用于计算每一个编码模式对所述像素块进行编码的成本的装置包括用于计算反映所述像素块的原始像素值与预测值之间的差值的失真值的装置。
47.根据权利要求43所述的设备,其中所述多个编码模式包括以下中的至少一个:内部4×4垂直预测模式、内部4×4水平预测模式、内部4×4DC预测模式、内部4×4斜下左预测模式、内部4×4斜下右预测模式、内部4×4垂直右预测模式、内部4×4水平下预测模式、内部4×4垂直左预测模式、以及内部4×4水平上预测模式。
48.根据权利要求43所述的设备,其中所述第一编码模式组中的两个编码模式的邻近关系弱于不在所述编码模式组中的两个编码模式的邻近关系。
CN2010102865366A 2004-06-27 2005-06-27 对编码视频图像的像素组选择预测模式的方法和设备 Active CN101945279B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US58344704P 2004-06-27 2004-06-27
US60/583,447 2004-06-27
US11/070,778 2005-03-01
US11/070,778 US7792188B2 (en) 2004-06-27 2005-03-01 Selecting encoding types and predictive modes for encoding video data

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN 200510079996 Division CN1809161B (zh) 2004-06-27 2005-06-27 对编码视频数据选择编码类型和预测模式

Publications (2)

Publication Number Publication Date
CN101945279A CN101945279A (zh) 2011-01-12
CN101945279B true CN101945279B (zh) 2012-09-05

Family

ID=34942454

Family Applications (2)

Application Number Title Priority Date Filing Date
CN2010102865385A Active CN101945280B (zh) 2004-06-27 2005-06-27 对编码视频数据选择编码类型和预测模式的方法和设备
CN2010102865366A Active CN101945279B (zh) 2004-06-27 2005-06-27 对编码视频图像的像素组选择预测模式的方法和设备

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN2010102865385A Active CN101945280B (zh) 2004-06-27 2005-06-27 对编码视频数据选择编码类型和预测模式的方法和设备

Country Status (6)

Country Link
US (3) US7792188B2 (zh)
EP (1) EP1610563A3 (zh)
JP (4) JP4949647B2 (zh)
KR (3) KR101155767B1 (zh)
CN (2) CN101945280B (zh)
TW (1) TWI350697B (zh)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7742525B1 (en) 2002-07-14 2010-06-22 Apple Inc. Adaptive motion estimation
US9330060B1 (en) 2003-04-15 2016-05-03 Nvidia Corporation Method and device for encoding and decoding video image data
US8660182B2 (en) 2003-06-09 2014-02-25 Nvidia Corporation MPEG motion estimation based on dual start points
EP1605706A2 (en) * 2004-06-09 2005-12-14 Broadcom Corporation Advanced video coding (AVC) intra prediction scheme
US8111752B2 (en) 2004-06-27 2012-02-07 Apple Inc. Encoding mode pruning during video encoding
US20050286777A1 (en) * 2004-06-27 2005-12-29 Roger Kumar Encoding and decoding images
US7792188B2 (en) 2004-06-27 2010-09-07 Apple Inc. Selecting encoding types and predictive modes for encoding video data
TWI243600B (en) * 2004-09-17 2005-11-11 Primax Electronics Ltd Selected area comparison method with high-operational efficient
WO2006052399A1 (en) * 2004-11-04 2006-05-18 Thomson Licensing Fast intra mode prediction for a video encoder
US8731071B1 (en) 2005-12-15 2014-05-20 Nvidia Corporation System for performing finite input response (FIR) filtering in motion estimation
JP2007251923A (ja) * 2006-02-15 2007-09-27 Mitsubishi Electric Corp 画像符号化装置および画像符号化方法
US8724702B1 (en) 2006-03-29 2014-05-13 Nvidia Corporation Methods and systems for motion estimation used in video coding
US8295349B2 (en) * 2006-05-23 2012-10-23 Flextronics Ap, Llc Methods and apparatuses for video compression intra prediction mode determination
JP4690966B2 (ja) * 2006-08-11 2011-06-01 株式会社東芝 動画像符号化装置
US8660380B2 (en) 2006-08-25 2014-02-25 Nvidia Corporation Method and system for performing two-dimensional transform on data value array with reduced power consumption
TWI386064B (zh) * 2006-10-10 2013-02-11 Nippon Telegraph & Telephone 內部預測編碼控制方法及裝置,其程式,以及記錄有程式之記憶媒體
KR100856223B1 (ko) * 2006-10-19 2008-09-03 삼성전자주식회사 H.264 인코더의 적응적 인코딩 모드 결정 장치 및결정 방법
US8355438B2 (en) 2006-10-30 2013-01-15 Nippon Telegraph And Telephone Corporation Predicted reference information generating method, video encoding and decoding methods, apparatuses therefor, programs therefor, and storage media which store the programs
KR100845644B1 (ko) * 2006-12-14 2008-07-10 한국정보통신대학교 산학협력단 고속 움직임 모드 결정 방법
KR100842558B1 (ko) 2007-01-26 2008-07-01 삼성전자주식회사 동영상 부호화를 위한 블록 모드 결정 방법 및 그 장치
JP4921239B2 (ja) * 2007-05-09 2012-04-25 キヤノン株式会社 画像処理装置およびその方法
US8756482B2 (en) 2007-05-25 2014-06-17 Nvidia Corporation Efficient encoding/decoding of a sequence of data frames
US9118927B2 (en) 2007-06-13 2015-08-25 Nvidia Corporation Sub-pixel interpolation and its application in motion compensated encoding of a video signal
US20090016631A1 (en) * 2007-07-10 2009-01-15 Texas Instruments Incorporated Video Coding Rate Control
US8873625B2 (en) * 2007-07-18 2014-10-28 Nvidia Corporation Enhanced compression in representing non-frame-edge blocks of image frames
KR100905059B1 (ko) * 2007-08-16 2009-06-30 한국전자통신연구원 동영상 부호화에 있어서 비트 발생 가능성 예측을 이용한블록 모드 결정 방법 및 장치
US8023562B2 (en) 2007-09-07 2011-09-20 Vanguard Software Solutions, Inc. Real-time video coding/decoding
KR101505195B1 (ko) * 2008-02-20 2015-03-24 삼성전자주식회사 직접 모드 부호화 및 복호화 방법
KR101353301B1 (ko) * 2008-04-11 2014-01-21 에스케이 텔레콤주식회사 인트라 예측 모드 결정 방법 및 그 장치와 이를 이용한영상 부호화/복호화 방법 및 그 장치
US20090274211A1 (en) * 2008-04-30 2009-11-05 Omnivision Technologies, Inc. Apparatus and method for high quality intra mode prediction in a video coder
US8503527B2 (en) 2008-10-03 2013-08-06 Qualcomm Incorporated Video coding with large macroblocks
US8259801B2 (en) * 2008-10-12 2012-09-04 Mediatek Inc. Methods for coding digital media data with prediction information and prediction error information being respectively carried by different bit stream sections
US8666181B2 (en) 2008-12-10 2014-03-04 Nvidia Corporation Adaptive multiple engine image motion detection system and method
CN101854538B (zh) * 2009-04-03 2012-06-27 联咏科技股份有限公司 运动图像处理方法及运动图像处理器
JP5554831B2 (ja) * 2009-04-28 2014-07-23 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 歪みの重み付け
JP2011151682A (ja) * 2010-01-22 2011-08-04 Sony Corp 画像処理装置および方法
US8526488B2 (en) * 2010-02-09 2013-09-03 Vanguard Software Solutions, Inc. Video sequence encoding system and algorithms
PL3849194T3 (pl) * 2010-09-27 2022-10-31 Lg Electronics, Inc. Sposób podziału bloku oraz urządzenie do dekodowania
US8842184B2 (en) * 2010-11-18 2014-09-23 Thomson Licensing Method for determining a quality measure for a video image and apparatus for determining a quality measure for a video image
FR2969456A1 (fr) 2010-12-15 2012-06-22 France Telecom Procedes et dispositifs de codage et de decodage d'au moins une image mettant en œuvre une selection des pixels a predire, programme d'ordinateur correspondant
KR101246119B1 (ko) * 2011-02-08 2013-03-21 연세대학교 산학협력단 인트라 예측 모드 결정 방법 및 장치
TR201819237T4 (tr) * 2011-09-14 2019-01-21 Samsung Electronics Co Ltd Boyutuna Bağlı Olarak Bir Tahmin Birimi (TB) Kod Çözme Usulü
US20130089136A1 (en) * 2011-10-10 2013-04-11 Texas Instruments Incorporated Spatial Intra Prediction Estimation Based on Mode Suppression in Macroblocks of a Video Frame
WO2013074964A1 (en) 2011-11-16 2013-05-23 Vanguard Software Solutions, Inc. Video compression for high efficiency video coding
US8811758B2 (en) * 2011-12-18 2014-08-19 Numerica Corporation Lossy compression of data points using point-wise error constraints
US9503719B2 (en) * 2012-06-26 2016-11-22 Intel Corporation Inter-layer coding unit quadtree pattern prediction
US9258389B2 (en) 2012-08-13 2016-02-09 Gurulogic Microsystems Oy Encoder and method
US8675731B2 (en) * 2012-08-13 2014-03-18 Gurulogic Microsystems Oy Encoder and method
US10333547B2 (en) 2012-08-13 2019-06-25 Gurologic Microsystems Oy Encoder and method for encoding input data using a plurality of different transformations or combinations of transformations
US9665572B2 (en) * 2012-09-12 2017-05-30 Oracle International Corporation Optimal data representation and auxiliary structures for in-memory database query processing
TW201419863A (zh) * 2012-11-13 2014-05-16 Hon Hai Prec Ind Co Ltd 影像切割系統及方法
TW201419864A (zh) * 2012-11-13 2014-05-16 Hon Hai Prec Ind Co Ltd 影像切割系統及方法
TW201419862A (zh) * 2012-11-13 2014-05-16 Hon Hai Prec Ind Co Ltd 影像切割系統及方法
TW201419865A (zh) * 2012-11-13 2014-05-16 Hon Hai Prec Ind Co Ltd 影像切割系統及方法
US9106922B2 (en) 2012-12-19 2015-08-11 Vanguard Software Solutions, Inc. Motion estimation engine for video encoding
JP6212890B2 (ja) * 2013-03-22 2017-10-18 富士通株式会社 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
WO2014193631A1 (en) * 2013-05-31 2014-12-04 Intel Corporation Adjustment of intra-frame encoding distortion metrics for video encoding
US10148954B2 (en) 2013-07-29 2018-12-04 Riversilica Technologies Pvt Ltd Method and system for determining intra mode decision in H.264 video coding
JP6221704B2 (ja) * 2013-12-05 2017-11-01 Nttエレクトロニクス株式会社 符号化装置及びブロックサイズ選択方法
KR102294830B1 (ko) 2014-01-03 2021-08-31 삼성전자주식회사 디스플레이 구동 장치 및 이미지 데이터 처리 장치의 동작 방법
JP5759588B1 (ja) * 2014-03-19 2015-08-05 日本電信電話株式会社 イントラ予測方向決定方法及びイントラ予測方向決定プログラム
US9392272B1 (en) * 2014-06-02 2016-07-12 Google Inc. Video coding using adaptive source variance based partitioning
CN106464880B (zh) * 2014-06-26 2019-05-10 华为技术有限公司 用于减少高效率视频编码中的计算负荷的方法和设备
US9704066B2 (en) 2015-03-20 2017-07-11 Microsoft Technology Licensing, Llc Multi-stage image classification
US9955186B2 (en) * 2016-01-11 2018-04-24 Qualcomm Incorporated Block size decision for video coding
US11252440B2 (en) * 2019-11-07 2022-02-15 Comcast Cable Communications, Llc Pixel filtering for content
CN112153385B (zh) * 2020-11-25 2021-03-02 腾讯科技(深圳)有限公司 编码处理方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1127578A (zh) * 1993-07-19 1996-07-24 英国电讯有限公司 视频图象中的错误检测
CN1131877A (zh) * 1995-03-20 1996-09-25 大宇电子株式会社 利用基于特征点的运动估算编码视频信号的方法
US6529634B1 (en) * 1999-11-08 2003-03-04 Qualcomm, Inc. Contrast sensitive variance based adaptive block size DCT image compression

Family Cites Families (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5060285A (en) 1989-05-19 1991-10-22 Gte Laboratories Incorporated Hierarchical variable block size address-vector quantization using inter-block correlation
US5200820A (en) * 1991-04-26 1993-04-06 Bell Communications Research, Inc. Block-matching motion estimator for video coder
JP3315132B2 (ja) * 1991-08-29 2002-08-19 株式会社東芝 画像符号化装置、画像復号化装置、及び画像符号化方法
JP2636622B2 (ja) * 1992-03-13 1997-07-30 松下電器産業株式会社 ビデオ信号の符号化方法及び復号化方法ならびにビデオ信号の符号化装置及び復号化装置
AU6099594A (en) * 1993-02-03 1994-08-29 Qualcomm Incorporated Interframe video encoding and decoding system
US5508744A (en) 1993-03-12 1996-04-16 Thomson Consumer Electronics, Inc. Video signal compression with removal of non-correlated motion vectors
FR2719398B1 (fr) 1994-04-27 1996-07-19 Sgs Thomson Microelectronics Dispositif et procédé d'adressage d'une mémoire cache d'un circuit de compression d'images mobiles.
US5706059A (en) * 1994-11-30 1998-01-06 National Semiconductor Corp. Motion estimation using a hierarchical search
JPH08205140A (ja) * 1995-01-31 1996-08-09 Canon Inc 画像圧縮装置
US5757668A (en) * 1995-05-24 1998-05-26 Motorola Inc. Device, method and digital video encoder of complexity scalable block-matching motion estimation utilizing adaptive threshold termination
US5731850A (en) * 1995-06-07 1998-03-24 Maturi; Gregory V. Hybrid hierarchial/full-search MPEG encoder motion estimation
US5577181A (en) 1995-06-07 1996-11-19 E-Systems, Inc. Method for autonomous determination of tie points in imagery
US5929940A (en) * 1995-10-25 1999-07-27 U.S. Philips Corporation Method and device for estimating motion between images, system for encoding segmented images
US6192081B1 (en) 1995-10-26 2001-02-20 Sarnoff Corporation Apparatus and method for selecting a coding mode in a block-based coding system
JP3994445B2 (ja) * 1995-12-05 2007-10-17 ソニー株式会社 動きベクトル検出装置及び動きベクトル検出方法
US6212237B1 (en) * 1997-06-17 2001-04-03 Nippon Telegraph And Telephone Corporation Motion vector search methods, motion vector search apparatus, and storage media storing a motion vector search program
DE69803639T2 (de) 1997-08-07 2002-08-08 Matsushita Electric Ind Co Ltd Vorrichtung und Verfahren zur Detektion eines Bewegungsvektors
US6014181A (en) 1997-10-13 2000-01-11 Sharp Laboratories Of America, Inc. Adaptive step-size motion estimation based on statistical sum of absolute differences
JPH11182444A (ja) 1997-10-17 1999-07-06 Takumina:Kk ソレノイド駆動ポンプの制御回路
CN1166215C (zh) * 1998-02-13 2004-09-08 皇家菲利浦电子有限公司 视频编码方法和装置
KR100325253B1 (ko) * 1998-05-19 2002-03-04 미야즈 준이치롯 움직임벡터 검색방법 및 장치
US6128047A (en) * 1998-05-20 2000-10-03 Sony Corporation Motion estimation process and system using sparse search block-matching and integral projection
US6591015B1 (en) * 1998-07-29 2003-07-08 Matsushita Electric Industrial Co., Ltd. Video coding method and apparatus with motion compensation and motion vector estimator
US6081209A (en) 1998-11-12 2000-06-27 Hewlett-Packard Company Search system for use in compression
US6363117B1 (en) * 1998-12-31 2002-03-26 Sony Corporation Video compression using fast block motion estimation
GB2348559B (en) 1999-03-31 2001-06-06 Samsung Electronics Co Ltd High speed motion estimating method for real time moving image coding and apparatus therefor
JP2001251632A (ja) 1999-12-27 2001-09-14 Toshiba Corp 動きベクトル検出方法および装置並びに動きベクトル検出プログラム
US6483876B1 (en) * 1999-12-28 2002-11-19 Sony Corporation Methods and apparatus for reduction of prediction modes in motion estimation
KR100619377B1 (ko) * 2000-02-22 2006-09-08 주식회사 팬택앤큐리텔 움직임 추정 방법 및 장치
EP1134981A1 (en) 2000-03-17 2001-09-19 STMicroelectronics S.r.l. Automatic setting of optimal search window dimensions for motion estimation
US6567469B1 (en) * 2000-03-23 2003-05-20 Koninklijke Philips Electronics N.V. Motion estimation algorithm suitable for H.261 videoconferencing applications
US6876703B2 (en) * 2000-05-11 2005-04-05 Ub Video Inc. Method and apparatus for video coding
US6700996B1 (en) 2000-06-07 2004-03-02 Intel Corporation Adaptive early exit techniques in image correlation
US6842483B1 (en) * 2000-09-11 2005-01-11 The Hong Kong University Of Science And Technology Device, method and digital video encoder for block-matching motion estimation
KR100727910B1 (ko) * 2000-10-11 2007-06-13 삼성전자주식회사 하이브리드형 고속 움직임 추정 방법 및 그 장치
US6668020B2 (en) * 2000-11-04 2003-12-23 Vivotek Inc. Method for motion estimation in video coding
US20020131500A1 (en) * 2001-02-01 2002-09-19 Gandhi Bhavan R. Method for determining a motion vector for a video signal
US6687301B2 (en) 2001-03-19 2004-02-03 Fulvio Moschetti Method for block matching motion estimation in digital video sequences
US6813315B1 (en) 2001-04-24 2004-11-02 Vweb Corporation Motion estimation using multiple search windows
US6650784B2 (en) 2001-07-02 2003-11-18 Qualcomm, Incorporated Lossless intraframe encoding using Golomb-Rice
EP1294194B8 (en) 2001-09-10 2010-08-04 Texas Instruments Incorporated Apparatus and method for motion vector estimation
WO2003045069A2 (en) * 2001-11-16 2003-05-30 Qualcomm Incorporated Block size assignment using local contrast ratio
CN102316320B (zh) 2001-12-17 2014-07-09 微软公司 处理视频图像的方法
KR100833228B1 (ko) 2002-02-21 2008-05-28 삼성전자주식회사 고정 연산량을 갖는 동영상 부호화 방법 및 그 장치
KR100492127B1 (ko) * 2002-02-23 2005-06-01 삼성전자주식회사 적응형 움직임 추정장치 및 추정 방법
US7532808B2 (en) 2002-03-15 2009-05-12 Nokia Corporation Method for coding motion in a video sequence
JP4120301B2 (ja) 2002-04-25 2008-07-16 ソニー株式会社 画像処理装置およびその方法
JP2003319394A (ja) * 2002-04-26 2003-11-07 Sony Corp 符号化装置および方法、復号装置および方法、記録媒体、並びにプログラム
US7170937B2 (en) 2002-05-01 2007-01-30 Texas Instruments Incorporated Complexity-scalable intra-frame prediction technique
ES2532326T3 (es) 2002-05-28 2015-03-26 Sharp Kabushiki Kaisha Método y sistemas para la estimación, comunicación y organización de modos de intra-predicción de imágenes
US7289674B2 (en) 2002-06-11 2007-10-30 Nokia Corporation Spatial prediction based intra coding
CN100380984C (zh) * 2002-06-11 2008-04-09 诺基亚有限公司 基于空间预测的帧内编码
US7742525B1 (en) 2002-07-14 2010-06-22 Apple Inc. Adaptive motion estimation
US7239721B1 (en) * 2002-07-14 2007-07-03 Apple Inc. Adaptive motion estimation
FR2844131B1 (fr) 2002-09-03 2004-11-12 St Microelectronics Sa Procede et dispositif d'interpolation d'images avec compensation du mouvement
JP3977716B2 (ja) 2002-09-20 2007-09-19 株式会社東芝 動画像符号化/復号化方法及び装置
US6646578B1 (en) * 2002-11-22 2003-11-11 Ub Video Inc. Context adaptive variable length decoding system and method
GB2395778A (en) 2002-11-29 2004-06-02 Sony Uk Ltd Face detection
HUP0301368A3 (en) * 2003-05-20 2005-09-28 Amt Advanced Multimedia Techno Method and equipment for compressing motion picture data
US7280597B2 (en) 2003-06-24 2007-10-09 Mitsubishi Electric Research Laboratories, Inc. System and method for determining coding modes, DCT types and quantizers for video coding
JP2005020294A (ja) 2003-06-25 2005-01-20 Sony Corp ブロック歪低減装置
US7646437B1 (en) 2003-09-03 2010-01-12 Apple Inc. Look-ahead system and method for pan and zoom detection in video sequences
KR100595616B1 (ko) 2003-11-24 2006-06-30 엘지전자 주식회사 디지털 동영상 트랜스코딩을 위한 움직임 추정 방법
KR100596706B1 (ko) * 2003-12-01 2006-07-04 삼성전자주식회사 스케일러블 비디오 코딩 및 디코딩 방법, 이를 위한 장치
KR20050061762A (ko) * 2003-12-18 2005-06-23 학교법인 대양학원 부호화 모드 결정방법, 움직임 추정방법 및 부호화 장치
JP4127818B2 (ja) * 2003-12-24 2008-07-30 株式会社東芝 動画像符号化方法及びその装置
US7469070B2 (en) 2004-02-09 2008-12-23 Lsi Corporation Method for selection of contexts for arithmetic coding of reference picture and motion vector residual bitstream syntax elements
JP4383240B2 (ja) * 2004-04-30 2009-12-16 日本放送協会 画面内予測符号化装置、その方法及びそのプログラム
US8467447B2 (en) * 2004-05-07 2013-06-18 International Business Machines Corporation Method and apparatus to determine prediction modes to achieve fast video encoding
JP2005348280A (ja) * 2004-06-07 2005-12-15 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法、画像符号化装置、画像符号化プログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体
US20050286777A1 (en) * 2004-06-27 2005-12-29 Roger Kumar Encoding and decoding images
US8111752B2 (en) * 2004-06-27 2012-02-07 Apple Inc. Encoding mode pruning during video encoding
US7792188B2 (en) 2004-06-27 2010-09-07 Apple Inc. Selecting encoding types and predictive modes for encoding video data

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1127578A (zh) * 1993-07-19 1996-07-24 英国电讯有限公司 视频图象中的错误检测
CN1131877A (zh) * 1995-03-20 1996-09-25 大宇电子株式会社 利用基于特征点的运动估算编码视频信号的方法
US6529634B1 (en) * 1999-11-08 2003-03-04 Qualcomm, Inc. Contrast sensitive variance based adaptive block size DCT image compression

Also Published As

Publication number Publication date
KR20100038335A (ko) 2010-04-14
JP2013153515A (ja) 2013-08-08
EP1610563A3 (en) 2010-07-28
KR101155767B1 (ko) 2012-06-12
CN101945280A (zh) 2011-01-12
JP5711405B2 (ja) 2015-04-30
US8018994B2 (en) 2011-09-13
US20100290526A1 (en) 2010-11-18
US20050286630A1 (en) 2005-12-29
JP2006014342A (ja) 2006-01-12
JP5318159B2 (ja) 2013-10-16
KR101208863B1 (ko) 2012-12-05
JP4949647B2 (ja) 2012-06-13
TWI350697B (en) 2011-10-11
TW200623885A (en) 2006-07-01
CN101945279A (zh) 2011-01-12
JP5559900B2 (ja) 2014-07-23
JP2011239443A (ja) 2011-11-24
JP2014161094A (ja) 2014-09-04
KR20120004370A (ko) 2012-01-12
US20110286522A1 (en) 2011-11-24
US7792188B2 (en) 2010-09-07
US8472516B2 (en) 2013-06-25
KR101152576B1 (ko) 2012-06-01
CN101945280B (zh) 2012-09-05
EP1610563A2 (en) 2005-12-28
KR20060092813A (ko) 2006-08-23

Similar Documents

Publication Publication Date Title
CN101945279B (zh) 对编码视频图像的像素组选择预测模式的方法和设备
CN101540912B (zh) 对编码视频数据选择编码类型和预测模式
RU2624448C2 (ru) Устройство кодирования изображения, способ кодирования изображения, устройство декодирования изображения, способ декодирования изображения, программа и запоминающий носитель
CN101682774B (zh) 视频编码方法和解码方法、视频编码装置和解码装置
CN103348651B (zh) 具有降低复杂性的变换单元分割的方法及装置
KR101530284B1 (ko) 영상의 인트라 예측 부호화, 복호화 방법 및 장치
RU2493601C1 (ru) Способ автоматического формирования процедуры генерации прогнозируемого значения пикселя, способ кодирования изображений, способ декодирования изображений, соответствующее устройство, соответствующие программы и носители информации, которые хранят программы
CN104768007A (zh) 编码/解码高分辨率图像的方法和执行该方法的装置
CN102144393A (zh) 图像编码方法及装置以及其解码方法及装置
KR20070005848A (ko) 인트라 예측 모드 결정 방법 및 장치
CN111314698A (zh) 一种图像编码处理方法及装置
CN100542287C (zh) 用于手持设备的编码的方法
CN102215392B (zh) 用于估计像素值的帧内预测方法或装置
KR20110067539A (ko) 화면 내 예측 부호화/복호화 방법 및 장치
CN102067602B (zh) 通过预先确定基准像素族而进行的图像预测、使用这样的预测的编码和解码
AU2021103378A4 (en) A self-adaptive n-depth context tree weighting method
CN110446048B (zh) 帧内预测场景中预测模式的选取方法及装置
EP4144083A1 (en) Methods and systems for combined lossless and lossy coding
CN111836043A (zh) 码块的预测、解码方法及装置
CN111918059A (zh) 硬件友好的基于回归树的帧内预测模式决策方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant