CN101641959B - 帧内预测/帧间预测方法和设备 - Google Patents

帧内预测/帧间预测方法和设备 Download PDF

Info

Publication number
CN101641959B
CN101641959B CN2008800093634A CN200880009363A CN101641959B CN 101641959 B CN101641959 B CN 101641959B CN 2008800093634 A CN2008800093634 A CN 2008800093634A CN 200880009363 A CN200880009363 A CN 200880009363A CN 101641959 B CN101641959 B CN 101641959B
Authority
CN
China
Prior art keywords
predicted value
block
processing unit
sub
many sub
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.)
Expired - Fee Related
Application number
CN2008800093634A
Other languages
English (en)
Other versions
CN101641959A (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN101641959A publication Critical patent/CN101641959A/zh
Application granted granted Critical
Publication of CN101641959B publication Critical patent/CN101641959B/zh
Expired - Fee Related 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
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • H04N19/194Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive involving only two passes
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • 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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Abstract

提供一种帧内预测/帧间预测方法和设备。在对当前画面的图像处理单元进行帧内预测的方法中,通过使用邻近每个子块的像素对每个子块进行帧内预测来产生包括多个子块的图像处理单元的第一预测值。通过使用与包括在第一预测值中的每个子块邻近的像素对每个子块进行帧内预测来产生图像处理单元的第二预测值。因此,可更精确的获得帧内预测值或帧内预测运动矢量,从而提高了图像编码的压缩率。

Description

帧内预测/帧间预测方法和设备
技术领域
本发明涉及一种帧内预测/帧间预测方法和设备,更具体地,涉及一种通过对包括多个子块的图像处理单元执行更精确的帧内预测/帧间预测对图像进行编码和解码的方法和设备。 
背景技术
在图像压缩技术(诸如MPEG-1、MPEG-2、MPEG-4和H.264/MPEG-4高级视频编码(AVC))中,为了对图像进行编码,将画面划分为预定的图像处理单元(例如,划分为宏块)。通过帧间预测和帧内预测对宏块进行编码。随后,考虑到编码的宏块的数据的大小和原始宏块的失真度,选择最优的编码模式。 
在帧内预测中,为了对当前画面的每个块进行编码,不参照参考画面,而是参照空间上与将被编码的每个块相邻的像素的值。首先,通过参照与当前块相邻的像素的值来计算将被编码的当前块的预测像素值。随后,仅对与当前块的预测像素值和实际像素值之间的差相应的残差进行编码。将帧内预测模式粗略地划分为对于亮度的帧内预测模式(诸如4×4帧内预测模式、8×8帧内预测模式和16×16帧内预测模式)和对于色度的帧内预测模式。 
图1A和图1B示出传统的帧内预测模式。 
图1A示出传统的16×16帧内预测模式。参照图1A,存在总计4个传统的16×16帧内预测模式,即,垂直模式、水平模式、DC(直流)模式和平面模式。 
图1B示出传统的4×4帧内预测模式。参照图1B,存在总计9个传统的4×4帧内预测模式,即,垂直模式、水平模式、DC模式、对角线左下模式、对角线右下模式、垂直向右模式、垂直向左模式、水平向上模式和水平向下模式。 
在根据H.264标准的图像编码中,以包括4×4帧内预测模式和16×16帧内预测模式的总计13种模式对当前宏块进行编码,从而以13种模式中的最优模式来执行帧内预测编码。考虑到原始块和预测块之间的残差和失真,选择最优模式。
帧间预测是通过去除画面间的时间相关性来对图像进行压缩的技术。帧间预测中有代表性的是运动估计编码技术。运动估计编码是通过在逐块的基础上参照至少一个参考画面来估计当前画面的运动,并且对估计的运动进行补偿来对图像进行编码的技术。 
在运动估计编码中,通过使用预定的估计函数在参考画面的预定范围内搜索与当前块最相似的块。当找到最相似的块时,仅发送从参考画面中找到的最相似的块和当前块之间的残差,从而提高数据的压缩率。这里,可使用各种大小(诸如,16×16、8×16和8×8)的块作为块。 
图2A到图2D示出传统的帧间预测中执行的运动矢量预测。在图2A到图2D中,示出根据H.264标准来预测当前块210的运动矢量的方法。 
图2A示出当前块210和邻近块221到223具有相同大小的情况。在这种情况下,在H.264标准中,根据预测运动矢量与中值mvA、mvB和mvC相等的关系来确定与当前块210的运动矢量的预测值相应的预测运动矢量。由于邻近块很可能具有相似性,所以将当前块210的运动矢量确定为邻近块221到223的运动矢量的中值mvA、mvB和mvC。 
图2B示出当前块210和邻近块231到233具有不同大小的情况。在这种情况下,如图2B所示,将在邻近当前块210左边的块中位于最上边位置的块231的中心值mvA、在邻近当前块210上边的块中位于最左边位置的块232的中心值mvB和在邻近当前块210右上边的块中位于最左边位置的块233的中心值mvC确定为当前块210的预测运动矢量。 
图2C示出当前块211或212不是正方形(即,当前块211或212是8×16块)的情况。 
在当前块是与块212一起形成正方形的块211时,将当前块211的左边的块241的运动矢量确定为当前块211的预测运动矢量。另一方面,在当前块是块212时,将当前块212的右上边的块242的运动矢量确定为当前块212的预测运动矢量。 
图2D示出当前块213或214不是正方形(即,当前块213或214是16×8块)的情况。 
在当前块是与块214一起形成正方形的块213时,将当前块213的左边的块251的运动矢量确定为当前块213的预测运动矢量。另一方面,在当前块是块214时,将当前块214的上边的块252的运动矢量确定为当前块214的预测运动矢量。 
当确定了当前块的预测运动矢量时,对当前块的预测运动矢量和实际运动矢量之间的差值进行编码并将其插入比特流中。不发送不改变的关于当前块的运动矢量的信息,而是将所述差值进行编码并发送编码的差值。从而,提高图像数据的压缩率。 
在示于图1A和图1B的帧内预测中,当更精确地对当前块的像素值进行预测时,当前块的残差被降低,从而提高图像编码的压缩率。在示于图2A到图2D的帧间预测中,当获得与当前块的运动矢量的预测值相应的更精确地预测的运动矢量时,当前块的实际运动矢量和预测运动矢量之间的差值被减小,从而图像编码的压缩率被提高。 
因此,需要在帧内预测中可更精确地预测当前块的像素值,并且可获得当前块的更精确地预测的运动矢量的图像编码/解码方法。 
发明内容
技术方案 
本发明提供一种能够更精确地预测当前块的帧内预测值和运动矢量的帧内预测/帧间预测方法和设备,以及记录有用于执行帧内预测/帧间预测方法的程序的计算机可读记录介质。 
有益效果 
在本发明中,可更精确地执行关于预定图像处理单元的帧内预测,从而提高图像编码的压缩率。 
此外,可更精确地产生包括在图像处理单元中的子块的预测运动矢量,从而提高图像编码的压缩率。 
可将根据本发明的系统实现为计算机可读记录介质或传输介质上的计算机可读代码。所述计算机可读记录介质是可存储之后可由计算机系统读取的数据的任何数据存储装置。计算机可读记录介质的示例包括只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光学数据存储装置。传输介质的示例包括载波和通过互联网的数据传输。所述计算机可读记录介质也可分布于网络耦合计算机系统,从而以分布式方式存储和执行计 算机可读代码。 
虽然参照示例性实施例详细地显示和描述了本发明,但是本领域普通技术人员应该理解,在不脱离由权利要求限定的本发明的精神和范围的情况下,可对其进行形式和细节上的各种改变。 
附图说明
通过下面结合附图进行的对示例性实施例的详细描述,本发明的上述和其他特点将会变得更加清楚,其中: 
图1A和图1B示出传统的帧内预测模式; 
图2A到图2D示出传统的帧间预测中执行的运动矢量预测; 
图3是根据本发明示例性实施例的图像编码设备的框图; 
图4是图3所示的图像编码设备的帧内预测单元的框图; 
图5A是图4所示的帧内预测单元的第一帧内预测执行单元的框图; 
图5B是图4所示的帧内预测单元的第二帧内预测执行单元的框图; 
图6示出根据本发明示例性实施例的产生第一预测值的方法; 
图7示出根据本发明示例性实施例的产生第二预测值的方法; 
图8是根据本发明示例性实施例的帧内预测编码方法的流程图; 
图9是图3所示的图像编码设备的运动估计单元的框图; 
图10A是图9所示的运动估计单元的第一帧间预测执行单元的框图; 
图10B是图9所示的运动估计单元的第二帧间预测执行单元的框图; 
图11是根据本发明示例性实施例的帧间预测编码方法的流程图; 
图12是根据本发明示例性实施例的图像解码设备的框图; 
图13是图12所示的图像解码设备的帧内预测单元的框图; 
图14是根据本发明示例性实施例的帧内预测解码方法的流程图; 
图15是图12所示的图像解码设备的运动补偿单元的框图;以及 
图16是根据本发明示例性实施例的帧间预测解码方法的流程图。 
最佳模式 
根据本发明的一方面,提供一种对当前画面的图像处理单元进行帧内预测的方法,所述图像处理单元包括多个子块,所述方法包括的操作有:通过使用邻近每个子块的像素对每个子块进行帧内预测来产生图像处理单元的第 一预测值;以及通过使用与包括在第一预测值中的每个子块邻近的像素对每个子块进行帧内预测来产生图像处理单元的第二预测值。 
所述帧内预测方法包括的操作还有:通过将第二预测值设置为初始值并执行至少一次产生图像处理单元的下个预测值的操作来产生图像处理单元的最终的预测值,其中,通过使用与先前预测值的每个子块相邻的像素对图像处理单元的子块进行帧内预测来产生所述图像处理单元的下个预测值。 
根据本发明的另一方面,提供一种对当前画面的图像处理单元进行帧内预测的设备,所述图像处理单元包括多个子块,所述设备包括:第一帧内预测执行单元,通过使用邻近每个子块的像素对每个子块进行帧内预测来产生图像处理单元的第一预测值;以及第二帧内预测执行单元,通过使用与包括在第一预测值中的每个子块邻近的像素对每个子块进行帧内预测来产生图像处理单元的第二预测值。 
所述第二帧内预测执行单元可通过将第二预测值设置为初始值并执行至少一次产生图像处理单元的下个预测值的操作来产生图像处理单元的最终的预测值,其中,通过使用与先前预测值的每个子块相邻的像素对图像处理单元的子块进行帧内预测来产生所述图像处理单元的下个预测值。 
根据本发明的另一方面,提供一种对当前画面的图像处理单元进行帧间预测的方法,所述图像处理单元包括多个子块,所述方法包括的操作有:通过使用邻近每个子块的像素对每个子块进行帧间预测来产生图像处理单元的第一预测值;以及通过使用与包括在第一预测值中的每个子块邻近的像素对每个子块进行帧间预测来产生图像处理单元的第二预测值。 
所述帧间预测方法包括的操作还有:通过将第二预测值设置为初始值并执行至少一次产生图像处理单元的下个预测值的操作来产生图像处理单元的最终的预测值,其中,通过使用与先前预测值的每个子块相邻的像素对图像处理单元的子块进行帧间预测来产生所述图像处理单元的下个预测值。 
根据本发明的另一方面,提供一种对当前画面的图像处理单元进行帧间预测的设备,所述图像处理单元包括多个子块,所述设备包括:第一帧间预测执行单元,通过使用邻近每个子块的像素对每个子块进行帧间预测来产生图像处理单元的第一预测值;以及第二帧间预测执行单元,通过使用与包括在第一预测值中的每个子块邻近的像素对每个子块进行帧间预测来产生图像处理单元的第二预测值。 
所述第二帧间预测执行单元可通过将第二预测值设置为初始值并执行至少一次产生图像处理单元的下个预测值的操作来产生图像处理单元的最终的预测值,其中,通过使用与先前预测值的每个子块相邻的像素对图像处理单元的子块进行帧间预测来产生所述图像处理单元的下个预测值。 
根据本发明的另一方面,提供一种记录有用于执行帧内预测方法和/或帧间预测方法的计算机程序的计算机可读记录介质。 
具体实施方式
以下,参照示出本发明的示例性实施例的附图来更全面地描述本发明。 
图3是根据本发明示例性实施例的图像编码设备300的框图。将描述基于H.264标准的应用了根据本发明的帧内预测/帧间预测设备的图像编码设备。然而,本领域普通技术人员应该容易地理解,根据本发明的帧内预测/帧间预测设备可以被应用于基于帧内预测/帧间预测的不同类型的图像编码设备。 
参照图3,图像编码设备300包括帧内预测单元310、编码单元320、运动估计单元330、运动补偿单元340、帧存储器350、滤波器360和恢复单元370。帧内预测单元310和运动估计单元330与根据本发明的帧内预测/帧间预测设备相应。 
首先,将描述帧内预测编码。帧内预测单元310执行帧内预测以在当前画面中搜索将被编码的块的预测值。具体地,为了对处理图像的预定单元(以下,称为预定图像处理单元)进行编码,帧内预测单元310通过使用与包括在预定图像处理单元中的每个子块邻近的像素来预测子块的预测值。帧内预测单元310还通过重复上述帧内预测来对子块产生更精确的预测值。将参照图4更详细地描述帧内预测单元310。 
图4是图像编码设备300的帧内预测单元310的框图。参照图4,帧内预测单元310包括第一帧内预测执行单元410和第二帧内预测执行单元420。 
第一帧内预测执行单元410通过使用与预定图像处理单元的每个子块邻近的像素对子块进行帧内预测来执行产生预定图像处理单元的第一预测值的第一帧内预测。所述预定图像处理单元可以是16×16宏块。对如何执行帧内预测没有限制,可使用利用示于图1A和图1B中的帧内预测方向的帧内预测。 
图5A是帧内预测单元310的第一帧内预测执行单元410的框图。参照 图5A,第一帧内预测执行单元410包括第一帧内搜索单元412和第一预测值产生单元414。 
第一帧内搜索单元412通过使用与子块邻近的像素对存储在帧存储器350中的当前画面的已编码区域进行搜索。将参照图6更详细地描述第一帧内搜索操作。 
图6示出根据本发明示例性实施例的产生当前图像处理单元630的第一预测值的方法。参照图6,将当前画面划分为在当前图像处理单元630被编码之前已编码的区域610和未编码的区域620。为了产生当前图像处理单元630的第一预测值,第一帧内搜索单元412使用与包括在当前图像处理单元630中的子块631到636邻近的多个像素637到多个像素639。 
第一帧内搜索单元412在从与当前图像处理单元630的左上部分相应的子块开始的向右的方向上执行预测。当完成对子块631到634的一行的预测时,对子块635和636的下一行进行预测。 
为了对与当前图像处理单元630的左上部分相应的子块631进行预测,第一帧内搜索单元412使用包括在已编码的区域610的像素中的与子块631相邻的多个像素637执行搜索,已编码的区域610在对当前画面进行编码前已经被编码。在本示例性实施例中,使用与子块631的左边和上边相邻的像素来执行搜索。 
为了找到与邻近的多个像素637相似的像素(即,找到具有小的残差的像素),使用邻近的多个像素637对在当前画面被编码前已经被编码的已编码的区域610进行搜索。 
现在将描述对子块632的预测。与子块632相邻的像素中可被用于帧内预测的像素仅是包括在先前编码区域610中的像素中的与子块632的上部相邻的像素,以及与子块632的左边相邻的包括在先前预测的子块631中的像素。因此,为了对当前子块632执行帧内预测,第一帧内搜索单元412使用包括在当前画面的先前编码区域610中的像素中与当前子块632相邻的像素和包括在图像处理单元630的先前预测的子块631中的像素来执行搜索。如对于初始被帧内预测的子块631的预测一样,使用与子块632相邻的像素来搜索当前画面的先前编码区域610。 
以与子块631和632的预测相同的方式对第一行中的其他子块633和634进行预测。 
当对第二行中的子块进行预测时,如子块的第一行的预测中一样使用与每个子块的左边和上边相邻的像素来执行搜索。然而,第二行中的子块636的预测与子块的第一行的预测的不同在于:用于子块636的预测的邻近像素全部包括在当前图像处理单元630的先前预测的子块中。如图6所示,可用于子块636的预测的像素仅是包括在当前图像处理单元630的先前预测的子块631、632和635中的像素。 
因此,第一帧内搜索单元412通过使用包括在先前预测的子块631、632和635中的多个像素639来对当前画面的先前编码区域610进行搜索。 
当对当前画面的当前图像处理单元的当前子块执行帧内预测时,不使用包括在当前子块中的像素来执行搜索,而是仅使用与当前子块邻近的像素来执行搜索。另外,由于邻近像素是包括在对当前子块进行编码之前被编码的当前画面的区域中的像素,和/或包括在对当前子块进行预测之前被预测的当前图像处理单元的子块中的像素,所以不需要指定通过搜索操作找到的将被用于对当前子块进行预测的子块的信息。换句话说,在解码时,甚至可不利用关于用于当前子块的帧内预测的子块的特定信息而产生当前子块的帧内预测值。 
再参照图5A,第一预测值产生单元414根据由第一帧内搜索单元412执行的搜索的结果来产生当前图像处理单元的预测值。所述预测值是当前图像处理单元的初始产生的预测值,因此被设置为当前图像处理单元的第一预测值。 
当第一帧内搜索单元412通过使用邻近当前图像处理单元的每个子块的像素来搜索当前画面的编码区域时,从当前画面的编码区域找到与邻近像素相似的像素。第一预测值产生单元414将与找到的相似像素相邻的子块的像素值确定为当前图像处理单元的子块的预测值,从而产生当前图像处理单元的第一预测值。 
再参照图4,第一帧内预测执行单元410通过对当前图像处理单元630进行帧内预测来产生第一预测值640(示于图7)。第二帧内预测执行单元420通过使用与包括在第一预测值640中的每个子块相邻的像素对当前图像处理单元630的每个子块进行帧内预测来产生当前图像处理单元630的第二预测值710(示于图7)。优选地,可在第二预测值的基础上产生当前图像处理单元630的第三预测值,在第三预测值的基础上产生第四预测值。通过这种方式,这样的预测值产生可重复预定次数。
当搜索当前画面的先前编码区域610以执行帧内预测时,第一帧内预测执行单元410仅使用所有与每个子块相邻的像素中的与每个子块的左边和上边相邻的像素。然而,因为第二帧内预测执行单元420在当前图像处理单元的由第一帧内预测执行单元410产生的第一预测值640的基础上执行搜索,所以当对当前子块进行帧内预测时,第二帧内预测执行单元420可使用所有邻近像素(换句话说,甚至是位于当前子块的右边和下边的像素)。稍后将参照图7详细描述由第二帧内预测执行单元420执行的搜索。 
图5B是帧内预测单元310的第二帧内预测执行单元420的框图。 
参照图5B,第二帧内预测执行单元420包括第二帧内搜索单元422、第二预测值产生单元424和预测值存储单元426。 
第二帧内搜索单元422通过使用与包括在当前图像处理单元的第一预测值中的每个子块邻近的像素来搜索当前画面的先前编码区域610。如上所述,由于第二帧内搜索单元422在当前图像处理单元630的由第一帧内预测执行单元410产生的第一预测值640的基础上执行搜索,所以第二帧内搜索单元422可使用邻近每个子块的所有像素。 
图7示出根据本发明示例性实施例的产生当前图像处理单元630的第二预测值710的方法。图7中,在由第一帧内预测执行单元410产生的第一预测值(即,第一预测值640)的基础上产生第二预测值710。 
参照图7,第二帧内搜索单元422使用第一预测值640以产生第二预测值710。当第一帧内预测执行单元410根据示于图6的方法来产生第一预测值640时,第一帧内预测执行单元410仅可使用包括在当前画面的先前编码区域610中的与像素中每个子块相邻的像素,和/或包括在当前图像处理单元630中的先前已预测的子块中的像素。 
然而,当产生第二预测值710时,因为在第一预测值640的基础上执行预测,所以第二帧内搜索单元422可使用邻近每个子块的所有先前已预测的像素。 
为了产生位于第二预测值710的左上部分的子块的预测值711,第二帧内搜索单元422可使用与位于第一预测值640的左上部分的子块641邻近的所有像素713。第二帧内搜索单元422使用邻近的多个像素713搜索当前画面的先前编码区域610,从而产生预测值711。 
邻近的多个像素713的左边像素和上边像素是包括在当前画面的先前编码区域610中的像素,右边像素和下边像素是由第一帧内预测执行单元410预测的像素。 
为了产生位于第二预测值710的右上部分的子块的预测值712,第二帧内搜索单元422使用位于第一预测值640的右上部分的子块644的邻近的多个像素714。第二帧内搜索单元422通过使用邻近的多个像素714来搜索当前画面的先前编码区域610,从而产生预测值712。 
邻近的多个像素714的上边像素是包括在当前画面的先前编码区域610中的像素,左边像素和下边像素是由第一帧内预测执行单元410预测的像素。 
再参照图5B,第二预测值产生单元424根据由第二帧内搜索单元422执行的搜索的结果来产生当前图像处理单元的第二预测值。 
当第二帧内搜索单元422通过使用与当前图像处理单元的第一预测值的每个子块邻近的像素来搜索当前画面的先前编码区域时,从当前画面的先前编码区域找到与邻近像素相似的像素。第二预测值产生单元424将与找到的相似像素相邻的子块确定为当前图像处理单元的子块的预测值,从而产生当前图像处理单元的第二预测值。 
或者,第二帧内预测执行单元420可通过将第二帧内预测值设置为初始值,在图像处理单元的先前预测值的基础上执行至少一次产生图像处理单元的下个预测值的操作。因此,通过将这样的预测值产生重复预定次数获取的预测值是最终的预测值,该预测值将被设置为当前图像处理单元的预测值。 
在最后的预测值的产生中,可找到对于邻近的多个像素具有小的残差(即,差值)的多个(即,M个)像素。在当前画面的先前编码区域610内搜索对于与每个子块邻近的多个像素(例如,邻近的多个像素713和714)具有小的残差的M个像素。因此,可将与找到的M个像素相邻的M个块用于产生每个子块的最后的预测值。 
例如,找到预测图7中示出的子块711所需的M个块,基于M个块中的至少一个来产生最后的预测值。对于其他子块(例如,子块712),在当前画面的先前编码区域内找到预测每个子块所需的M个块,基于M个块中的至少一个来产生最后的预测值。M个块中对于将被预测的原始子块具有最小的残差的块被直接地用作原始子块的预测值。或者,通过将M个块中的多个块进行组合来获得原始子块的预测值。 
当将M个子块用于预测每个子块时,指定M个块中用于产生每个子块的最后的预测值的块的信息需要在编码单元320中被编码并被插入到比特流中。 
预测值存储单元426存储由第二预测值产生单元424产生的预测值。第二帧内预测执行单元420可将帧内预测操作重复预定次数,其中,基于当前子块的先前预测值来产生当前子块的下个预测值。为了完成上述操作,可将先前预测值存储在预测值存储单元426中,并由第二帧内搜索单元422重新使用所述先前预测值。 
帧内预测重复的次数没有限制。当帧内预测重复的次数增加时,将获得当前图像处理单元的更精确的预测值。当前图像处理单元的帧内预测值越精确,当前图像处理单元的帧内预测值和实际值之间的残差(即,差值)越小。因此,提高了图像编码的压缩率。 
编码单元320将由帧内预测单元310获得的当前图像处理单元的最后的预测值和当前图像处理单元的实际值之间的残差进行编码,产生包括被编码的残差的比特流。将残差转换到频域、进行量化并进行熵编码从而产生包括关于当前图像处理单元的数据的比特流。优选地,在比特流的开销区域包括关于指示当前图像处理单元已经过帧内预测编码的帧内预测模式的信息。关于帧内预测模式的信息可包括第二帧内预测执行单元420重复执行帧内预测的次数。 
关于编码的当前图像处理单元的信息由恢复单元370恢复为原始的图像当前单元、由滤波器360进行解块,并随后被存储在帧存储器350中。存储在帧存储器350中的关于当前图像处理单元的数据被用作当前画面的先前编码区域,当对下个图像处理单元进行编码时将搜索所述先前编码区域。 
图8是根据本发明示例性实施例的帧内预测编码方法的流程图。 
操作810中,根据本发明示例性实施例的帧内预测编码设备通过使用与包括在图像处理单元中的子块邻近的像素对子块进行帧内预测来产生当前画面中包括的当前图像处理单元的第一预测值。根据示于图6的方法来产生当前图像处理单元的第一预测值。优选地,通过使用邻近每个子块的像素搜索当前画面的先前编码区域来对每个子块进行帧内预测。邻近每个子块的像素可以是包括在当前画面的先前编码区域中的像素和包括在当前图像处理单元的先前已预测子块中的像素。或者,邻近每个子块的像素可以仅是包括在当前画面的先前编码区域中的像素。或者,邻近每个子块的像素可以仅是包括在当前图像处理单元的先前已预测子块中的像素。
操作820中,帧内预测编码设备通过使用与操作810中产生的第一预测值的每个子块邻近的像素对每个子块进行帧内预测来产生当前图像处理单元的第二预测值。 
更具体地,使用与包括在第一预测值中的每个子块邻近的像素来搜索当前画面的先前编码区域,在搜索的结果的基础上产生当前图像处理单元的第二预测值。邻近像素可以是与每个子块的上边、下边、左边和右边中的至少一个相邻的像素。 
操作830中,将操作820中产生的第二预测值设置为初始值,帧内预测编码设备通过使用与包括在先前预测值中的每个子块邻近的像素对当前图像处理单元的每个子块进行帧内预测来执行至少一次产生当前图像处理单元的下个预测值的操作。当将产生下个预测值的操作重复预定次数时,产生最终的预测值。 
在最后的预测值的产生中,可找到对于邻近的多个像素具有小的残差(即,差值)的多个(即,M个)像素。在当前画面的先前编码区域610内搜索与每个子块邻近的对于多个像素(例如,邻近的多个像素713和714)具有小的残差的M个像素。因此,可将与找到的M个像素相邻的M个块用于产生每个子块的最后的预测值。 
操作840中,帧内预测编码设备在操作830中产生的最终的预测值的基础上对当前图像处理单元进行编码。如果在操作830中重复进行帧内预测,则可获得更精确的预测值。基于精确的预测值对当前图像处理单元进行编码。在这种情况下,由于预测值是精确的,所以当前图像处理单元的预测值和实际值之间的残差(即,差值)降低。因此,提高了图像编码的压缩率。 
下面将描述帧间预测编码。 
再参照图3,运动估计单元330和运动补偿单元340执行在参考画面中搜索将被编码的块的预测值的帧间预测。更具体地,为了对预定图像处理单元进行编码,运动估计单元330通过使用与包括在预定图像处理单元中的每个子块邻近的像素来获得子块的预测值。运动估计单元330通过重复进行产生预测值的帧间预测处理来获得子块的更精确的预测值。当通过重复进行产生预测值的操作来产生最终的预测值时,产生预测运动矢量,所述预测运动 矢量是子块的运动矢量的预测值。下面将参照图9更详细地描述上述操作。 
图9是图3所示的图像编码设备300的运动估计单元330的框图。参照图9,运动估计单元330包括第一帧间预测执行单元910、第二帧间预测执行单元920、运动矢量预测单元930、运动矢量产生单元940和差值单元950。 
第一帧间预测执行单元910执行第一帧间预测,所述第一帧间预测通过使用与图像处理单元的子块邻近的像素对子块进行帧间预测来产生图像处理单元的第一预测值。图像处理单元可以是16×16的宏块。 
图10A是运动估计单元330的第一帧间预测执行单元910的框图。 
包括在第一帧间预测执行单元910中的第一帧间搜索单元912通过使用与当前图像处理单元的每个子块邻近的像素搜索存储在帧存储器350中的参考画面。 
使用上述参照图6描述的方法来执行所述搜索。换句话说,使用包括在当前画面的先前编码区域中的并且与当前图像处理单元的子块邻近的像素和包括在当前图像处理单元的先前已预测的子块中的像素来执行所述搜索。或者,使用以前的或者后面的像素来执行所述搜索。图6中,搜索当前画面的先前编码区域610以执行帧内预测。然而,第一帧内预测执行单元910搜索参考画面以执行帧间预测。 
包括在第一帧间预测执行单元910中的第一预测值产生单元914根据第一帧间搜索单元912执行的搜索的结果来产生当前图像处理单元的预测值。所述产生的预测值是初始产生的预测值,因此被设置为当前图像处理单元的第一预测值。 
当第一帧间搜索单元912通过使用与当前图像处理单元包括的子块邻近的像素来执行搜索时,在参考画面中搜索与邻近像素相似的像素。第一预测值产生单元914将与找到的相似像素相邻的块确定为每个子块的预测值,以产生当前图像处理单元的第一预测值。 
再参照图9,第二帧间预测执行单元920通过使用与第一预测值640中包括的当前图像处理单元630的每个子块邻近的像素对每个子块进行帧间预测来产生当前图像处理单元630的第二预测值。或者,可在第二预测值的基础上产生当前图像处理单元的第三预测值,在第三预测值的基础上产生当前图像处理单元的第四预测值。以这种方法,可将所述产生预测值的操作重复预定次数。 
当搜索参考画面以执行帧间预测时,第一帧间预测执行单元910可仅使用与每个子块的所有四个边相邻的像素中的与每个子块的左边和上边相邻的像素。然而,第二帧间预测执行单元920基于在先前步骤中预测的当前图像处理单元的第一预测值执行搜索。因此,当对当前子块进行帧间预测时,可使用与当前子块的右、左、上、下边相邻的所有像素。 
图10B是运动估计单元330的第二帧间预测执行单元920的框图。参照图10B,第二帧间预测执行单元920包括第二帧间搜索单元922,第二预测值产生单元924和预测值存储单元926。 
第二帧间搜索单元922通过使用与包括在第一预测值中的每个子块相邻的像素搜索参考画面。根据图7示出的方法执行搜索。第二帧间搜索单元922执行的搜索与图7中示出的用于帧内预测而执行的搜索之间的唯一区别在于搜索参考画面而不是当前画面的先前编码区域610。如上参考图7所述,第二帧间搜索单元922在当前图像处理单元的先前已产生的预测值的基础上执行搜索,从而可使用邻近当前子块的所有像素。 
第二预测值产生单元924根据第二帧间搜索单元922执行的搜索的结果产生当前图像处理单元的预测值。 
当第二帧间搜索单元922通过使用与包括在当前图像处理单元中的每个子块邻近的像素执行搜索时,在参考画面内搜索与邻近像素相似的像素。第二预测值产生单元924将与找到的像素相邻的块确定为子块的预测值,从而产生当前图像处理单元的第二预测值。 
或者,第二帧间预测执行单元920可执行至少一次以下操作:在将第二帧内预测值设置为初始值的情况下,在图像处理单元的先前预测值的基础上产生图像处理单元的下个预测值。因此,通过将产生预测值的操作重复预定次数获得的预测值是最终预测值,所述最终预测值被设置为当前图像处理单元的预测值。 
预测值存储单元926存储由第二预测值产生单元924产生的第二预测值。第二帧间预测执行单元920将帧间预测操作重复预定次数,在所述操作中,基于当前子块的先前预测值产生当前子块的下个预测值。为此,先前预测值可被存储在预测值存储单元926中,并被第二帧间搜索单元922重新使用。 
再参照图9,运动矢量预测单元930在第二帧间预测执行单元920产生的最终预测值的基础上,产生包括在当前图像处理单元中的每个子块的预测 运动矢量。更具体地,运动矢量预测单元930计算用于产生最终预测值的参考画面的块与当前画面的当前图像处理单元的子块之间的相对运动,从而产生当前图像处理单元的每个子块的预测运动矢量。 
运动矢量产生单元940通过使用当前图像处理单元的子块的实际值来搜索参考画面,从而产生每个子块的实际运动矢量。更具体地,运动矢量产生单元940通过使用包括在子块中的像素而不是使用与子块相邻的像素来搜索参考画面,找到与子块相似的块,并计算子块与找到的相似块之间的相对运动,从而产生子块的运动矢量。运动矢量产生单元940产生的运动矢量被发送到运动补偿单元340并在当前图像处理单元的运动补偿中被使用。 
差值单元960产生由运动矢量预测单元930使用最终预测值所产生的预测运动矢量与运动矢量产生单元940所产生的实际运动矢量之间的差。实际运动矢量没有被编码和发送,而仅对预测运动矢量与实际运动矢量之间的差进行编码和发送。这提高了图像编码的压缩率。所述差被发送到编码单元320并被插入比特流。 
运动补偿单元340在运动估计单元330产生的实际运动矢量的基础上对当前图像处理单元执行运动补偿。运动补偿单元340产生当前图像处理单元的预测值,该值与第二帧间预测执行单元920产生的最终预测值不同。第二帧间预测执行单元920产生的最终预测值用于产生当前图像处理单元的预测运动矢量,而运动补偿单元340产生的预测值用于产生当前图像处理单元的残差。 
编码单元320对残差编码并产生包括编码的残差的比特流,所述残差也就是运动补偿单元340产生的预测值与当前图像处理单元的实际值之间的差。残差被转换到频域、被量化和熵编码,从而产生比特流。由恢复单元370将编码的残差恢复为其原始状态、由滤波器360进行解块,并随后被存储在帧存储器350中。编码单元350还将关于帧间预测模式的信息插入比特流的开销区域(所述帧间预测模式指示当前图像处理单元已被帧间预测编码),从而完成比特流。关于帧间预测模式的信息可包括根据本发明的帧间预测被重复的次数。 
帧存储器350不仅存储上述的用于帧内预测的关于当前画面的先前编码区域的数据,还存储用于帧间预测的关于参考画面的数据。 
图11是根据本发明示例性实施例的帧间预测编码方法的流程图。 
操作1110中,根据本发明的帧间预测编码设备执行第一帧间预测,其中,通过使用与包括在图像处理单元中的子块邻近的像素对子块进行帧间预测来产生包括在当前画面中的当前图像处理单元的第一预测值。优选地,通过使用邻近每个子块的像素搜索参考画面来对每个子块进行帧间预测。邻近每个子块的像素可以是包括在当前画面的先前编码区域中的像素和包括在当前图像处理单元的先前预测子块中的像素。或者,邻近每个子块的像素可以仅是包括在当前画面的先前编码区域中的像素。或者,邻近每个子块的像素可以仅是包括在当前图像处理单元的先前预测子块中的像素。 
操作1120中,帧间预测编码设备通过使用与操作1110中产生的第一预测值的每个子块邻近的像素来对每个子块进行帧间预测,从而产生当前图像处理单元的第二预测值。 
更具体地,使用与包括在第一预测值中的每个子块邻近的像素来搜索参考画面,并在搜索的结果的基础上产生当前图像处理单元的第二预测值。相邻像素可以是与每个子块的上、下、左和右边中的至少一个相邻的像素。 
操作1130中,操作1120中产生的第二预测值被设置为初始值,帧间预测编码设备执行至少一次以下操作:通过使用与在当前图像处理单元中的先前预测值中包括的每个子块邻近的像素来对每个子块进行帧间预测,从而产生当前图像处理单元的下个预测值。当将产生下个预测值的操作重复预定次数时,产生了最终预测值。 
在操作1140,帧间预测编码设备在操作1130中产生的最终预测值的基础上产生当前图像处理单元的子块的预测运动矢量。 
更具体地,通过计算用于产生最终预测值的参考画面的块与当前画面的当前图像处理单元的子块之间的相对运动来产生当前图像处理单元的每个子块的预测运动矢量。 
如果在操作1130重复进行帧间预测,则可获得更精确的预测值。基于更精确的预测值产生子块的预测运动矢量。在这种情况下,由于预测矢量是精确的,因此预测运动矢量与实际运动矢量之间的差减小。因此,提高了图像编码的压缩率。 
操作1150中,帧间预测编码设备在操作1140中产生的预测运动矢量的基础上对当前图像处理单元进行编码。 
更具体地,计算实际运动矢量,并对计算的实际运动矢量与预测运动矢量之间的差进行编码。在实际运动矢量的基础上执行对于当前图像处理单元的运动补偿。运动补偿产生的预测值与当前图像处理单元的实际值之间的残差被编码。 
图3至图11示出了以宏块(即,图像处理的单元)为单位的执行帧内预测/帧间预测的方法和设备。然而,本发明所属领域的普通技术人员应该容易地理解的是,执行帧内预测/帧间预测的单元不受限制。例如,可在逐画面的基础上执行帧内预测/帧间预测。 
图12是根据本发明示例性实施例的图像解码设备1200的框图。现在将描述基于H.264标准的图像解码设备,在该设备中应用了根据本发明的帧内预测/帧间预测的设备。然而,本发明所属领域的普通技术人员应该容易理解地是,根据本发明的帧内预测/帧间预测设备可应用于不同类型的基于帧内预测/帧间预测的图像解码设备。 
参照图12,图像解码设备1200包括解码单元1210、帧内预测单元1220、运动补偿单元1230、滤波器1240和帧存储器1250。帧内预测单元1220和运动补偿单元1230与根据本发明的帧内预测/帧间预测设备相应。 
解码单元1210接收比特流,所述比特流包括与基于根据本发明的帧内预测/帧间预测被编码的当前图像处理单元有关的数据。与当前图像处理单元有关的数据包括与当前图像处理单元的残差有关的数据。 
解码单元1210还从接收的比特流提取关于帧内预测/帧间预测模式的信息。关于帧内预测/帧间预测模式的信息包括关于对当前图像处理单元执行的帧间/帧内预测的次数的信息。 
现在将描述帧内预测解码。帧内预测单元1220在关于从解码单元1210提取的帧内预测模式的信息的基础上对当前图像处理单元进行帧内预测。 
图13是图12示出的图像解码设备1200的帧内预测单元1220的框图。参照图13,帧内预测单元1220包括第一帧内预测执行单元1310和第二帧内预测执行单元1320。根据与执行帧内预测编码的方法对称地相同的方法执行帧内预测解码。 
因此,第一帧内预测执行单元1310通过使用与包括在当前图像处理单元中的每个子块邻近的像素对子块进行帧内预测,从而产生当前图像处理单元的第一预测值。优选地,通过使用与每个子块邻近的像素搜索当前画面的先前解码区域来对每个子块进行帧内预测。与每个子块邻近的像素可以是包括 在当前画面的先前解码区域中的像素和包括在当前图像处理单元的先前预测子块中的像素。或者,与每个子块邻近的像素可以仅是包括在当前画面的先前解码区域中的像素。或者,与每个子块邻近的像素可以仅是包括在当前图像处理单元的先前预测子块中的像素。 
除了搜索当前画面的先前解码区域而不是当帧内预测编码时搜索当前画面的先前编码区域610之外,所述帧内预测与参照图6描述的帧内预测相同。 
第二帧内预测执行单元1320通过使用与第一预测值的每个子块邻近的像素对当前图像处理单元的每个子块进行帧内预测,从而产生当前图像处理单元的第二预测值。优选地,通过搜索当前画面的先前解码区域来对每个子块进行帧内预测。在第二预测值被设置为初始值的情况下,第二帧内预测执行单元1320可执行至少一次以下操作:在当前图像处理单元的先前预测值的基础上产生当前图像处理单元的下个预测值。当将产生下个预测值的操作重复预定次数时,产生了最终预测值。 
除了搜索当前画面的先前解码区域而不是当进行帧内预测编码时搜索当前画面的先前编码区域610之外,所述帧内预测与参照图7描述的帧内预测相同。 
将作为帧内预测的结果而产生的最终预测值加入到解码单元1210提取的残差中。滤波器1240对总和进行解块和恢复。恢复的当前图像处理单元被存储在帧存储器1250中并在下个图像处理单元的帧内预测时用作当前画面的先前编码区域。 
图14是根据本发明示例性实施例的帧内预测解码方法的流程图。参照图14,操作1410中,根据本发明示例性实施例的帧内预测解码设备接收比特流,所述比特流包括与根据本发明示例性实施例的帧内预测编码方法编码的图像处理单元有关的数据。 
操作1420中,帧内预测解码设备从操作1410中接收的比特流提取关于当前图像处理单元的帧内预测模式的信息。关于帧内预测模式的信息包括帧内预测被执行以对当前图像处理单元进行编码的次数。 
操作1430中,帧内预测解码设备在操作1420中提取的关于帧内预测模式的信息的基础上对当前图像处理单元进行帧内预测。除了搜索当前画面的先前解码区域而不是进行帧内预测编码时搜索当前画面的先前编码区域610之外,所述帧内预测与进行帧内预测编码时使用的帧内预测相同。 
现在将描述帧间预测解码。再参照图12,运动补偿单元1230在解码单元1210提取的关于帧间预测模式的信息的基础上对当前图像处理单元执行帧间预测。 
图15是图12中示出的图像解码设备1200的运动补偿单元1230的框图。参照图15,运动补偿单元1230包括第一帧间预测执行单元1510、第二帧间预测执行单元1520、运动矢量预测单元1530、运动矢量产生单元1540和运动补偿执行单元1550。与帧内预测解码相同,根据与执行帧间预测编码的方法对称地相同的方法执行帧间预测解码。 
因此,第一帧间预测执行单元1510通过使用与包括在当前图像处理单元中的每个子块邻近的像素对子块进行帧间预测来产生当前图像处理单元的第一预测值。优选地,通过使用与每个子块邻近的像素搜索参考画面来对每个子块进行帧间预测。与每个子块相邻的像素可以是包括在当前画面的先前解码区域中的像素和包括在当前图像处理单元的先前预测子块中的像素。或者,与每个子块邻近的像素可以仅是包括在当前画面的先前解码区域中的像素。或者,与每个子块邻近的像素可以仅是包括在当前图像处理单元的先前预测子块中的像素。 
所述帧间预测与参照图像编码设备300的运动估计单元330描述的帧间预测相同。 
第二帧间预测执行单元1520通过使用与由第一帧间预测执行单元1510产生的第一预测值的每个子块邻近的像素对当前图像处理单元的每个子块进行帧间预测,从而产生当前图像处理单元的第二预测值。第二帧间预测执行单元1520可执行至少一次以下操作:在当前图像处理单元的先前预测值的基础上产生当前图像处理单元的下个预测值。当将产生下个预测值的操作重复预定次数时,产生了最终预测值。 
所述帧间预测与参照图像编码设备300的运动估计单元330描述的帧间预测相同。 
运动矢量预测单元1530在第二帧间预测执行单元1520产生的最终预测值的基础上,产生包括在当前图像处理单元中的每个子块的预测运动矢量。更具体地,运动矢量预测单元1530计算用于产生最终预测值的参考画面的块与当前画面的当前图像处理单元的子块之间的相对运动,从而产生当前图像处理单元的每个子块的预测运动矢量。 
运动矢量产生单元1540在由运动矢量预测单元1530产生的预测运动矢量,以及预测运动矢量和由解码单元1210提取的实际运动矢量的差的基础上产生运动矢量。 
运动补偿执行单元1550通过在由运动矢量产生单元1540产生的运动矢量的基础上搜索参考画面来产生当前图像处理单元的预测值。 
将产生的预测值加入到解码单元1210提取的当前图像处理单元的残差中。滤波器1240对总和进行解块和恢复。恢复的当前图像处理单元被存储在帧存储器1250中并在下个画面的解码时使用。 
图16是根据本发明示例性实施例的帧间预测解码方法的流程图。参照图16,操作1610中,根据本发明示例性实施例的帧间预测解码设备接收比特流,所述比特流包括与根据本发明示例性实施例的帧间预测编码方法编码的图像处理单元有关的数据。 
操作1620中,帧间预测解码设备从操作1610中接收的比特流提取关于当前图像处理单元的帧间预测模式的信息。关于帧间预测模式的信息包括帧间预测被执行以对当前图像处理单元进行编码的次数。 
操作1630中,帧间预测解码设备在操作1620中提取的关于帧间预测模式的信息的基础上对当前图像处理单元进行帧间预测。所述帧间预测与进行帧间预测编码时使用的帧间预测相同。 

Claims (34)

1.一种对当前画面的图像处理单元进行帧内预测的方法,所述图像处理单元包括多个子块,所述方法包括:
通过使用与所述多个子块的每一个邻近的像素对所述多个子块的每一个进行帧内预测来产生图像处理单元的第一预测值;以及
通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素对所述多个子块的每一个进行帧内预测来产生图像处理单元的第二预测值。
2.如权利要求1所述的方法,其中,产生第一预测值的步骤包括:
通过使用包括在先前编码区域中并与所述多个子块的每一个邻近的一组像素和包括在图像处理单元的先前预测子块中的一组像素中的至少一组来搜索当前画面的先前编码区域;以及
根据搜索的结果对所述多个子块进行帧内预测来产生第一预测值。
3.如权利要求1所述的方法,其中,产生第二预测值的步骤包括:
通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素来搜索当前画面的先前编码区域;以及
根据搜索的结果对所述多个子块进行帧内预测来产生第二预测值。
4.如权利要求3所述的方法,其中,所述邻近的像素是与用于产生第一预测值的所述多个子块的每一个子块的上边、下边、左边和右边中的至少一个相邻的像素。
5.如权利要求1所述的方法,其中,产生第一预测值的步骤包括:
通过使用包括在先前解码区域中并与所述多个子块的每一个邻近的一组像素和包括在图像处理单元的先前预测子块中的一组像素中的至少一组来搜索当前画面的先前解码区域;以及
根据搜索的结果对所述多个子块进行帧内预测来产生第一预测值。
6.如权利要求1所述的方法,其中,产生第二预测值的步骤包括:
通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素来搜索当前画面的先前解码区域;以及
根据搜索的结果对所述多个子块进行帧内预测来产生第二预测值。
7.如权利要求6所述的方法,其中,邻近像素是与用于产生第一预测值的所述多个子块的每一个块的上边、下边、左边和右边中的至少一个相邻的像素。
8.如权利要求1所述的方法,还包括:
通过将第二预测值设置为初始值并执行至少一次产生图像处理单元的下个预测值的操作来产生图像处理单元的最终的预测值,其中通过使用与先前预测值的所述多个子块的每一个相邻的像素对图像处理单元的所述多个子块进行帧内预测来产生所述图像处理单元的下个预测值。
9.如权利要求8所述的方法,其中,通过以下步骤产生所述最终的预测值:在当前画面的先前编码区域中搜索以找到M个块,所述M个块与对于先前预测值的所述多个子块的每一个的相邻像素具有小的残差的像素相邻,以及
基于找到的M个块中的至少一个预测所述多个子块的每一个。
10.如权利要求8所述的方法,其中,产生所述最终的预测值的步骤包括:在当前画面的先前解码区域中搜索以找到M个块,所述M个块与对于先前预测值的所述多个子块的每一个的相邻像素具有小的残差的像素相邻,以及
基于找到的M个块中的至少一个预测所述多个子块的每一个。
11.一种对当前画面的图像处理单元进行帧内预测的设备,所述图像处理单元包括多个子块,所述设备包括:
第一帧内预测执行单元,通过使用与所述多个子块的每一个邻近的像素对所述多个子块的每一个进行帧内预测来产生图像处理单元的第一预测值;以及
第二帧内预测执行单元,通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素对所述多个子块的每一个进行帧内预测来产生图像处理单元的第二预测值。
12.如权利要求11所述的设备,其中,第一帧内预测执行单元包括:
第一帧内搜索单元,通过使用包括在先前编码区域中并与所述所述多个子块的每一个邻近的一组像素和包括在图像处理单元的先前预测子块中的一组像素中的至少一组,在一次搜索中搜索当前画面的先前编码区域;以及
第一预测值产生单元,根据搜索的结果对所述多个子块进行帧内预测来产生第一预测值。
13.如权利要求11所述的设备,其中,第二帧内预测执行单元包括:
第二帧内搜索单元,通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素,在一次搜索中搜索当前画面的先前编码区域;以及
第二预测值产生单元,根据搜索的结果对所述多个子块进行帧内预测来产生第二预测值。
14.如权利要求13所述的设备,其中,所述邻近的像素是与用于产生第一预测值的所述多个子块的每一个子块的上边、下边、左边和右边中的至少一个相邻的像素。
15.如权利要求11所述的设备,其中,第一帧内预测执行单元包括:
第一帧内搜索单元,通过使用包括在先前解码区域中并与所述多个子块的每一个邻近的一组像素和包括在图像处理单元的先前预测子块中的一组像素中的至少一组,在一次搜索中搜索当前画面的先前解码区域;以及
第一预测值产生单元,根据搜索的结果对所述多个子块进行帧内预测来产生第一预测值。
16.如权利要求11所述的设备,其中,第二帧内预测执行单元包括:
第二帧内搜索单元,通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素,在一次搜索中搜索当前画面的先前解码区域;以及
第二预测值产生单元,根据搜索的结果对第一预测值的所述多个子块进行帧内预测来产生第二预测值。
17.如权利要求16所述的设备,其中,所述邻近的像素是与用于产生第一预测值的所述多个子块的每一个子块的上边、下边、左边和右边中的至少一个相邻的像素。
18.如权利要求11所述的设备,其中,第二帧内预测执行单元通过将第二预测值设置为初始值并执行至少一次产生图像处理单元的下个预测值的操作来产生图像处理单元的最终的预测值,其中,通过使用与先前预测值的所述多个子块的每一个相邻的像素对图像处理单元的所述多个子块进行帧内预测来产生所述图像处理单元的下个预测值。
19.如权利要求18所述的设备,其中,通过以下步骤产生所述最终的预测值:在当前画面的先前编码区域中搜索以找到M个块,所述M个块与对于先前预测值的所述多个子块的每一个的相邻像素具有小的残差的像素相邻,以及
基于找到的M个块中的至少一个预测所述多个子块的每一个。
20.如权利要求18所述的设备,其中,通过以下步骤产生所述最终的预测值:在当前画面的先前解码区域中搜索以找到M个块,所述M个块与对于先前预测值的所述多个子块的每一个的相邻像素具有小的残差的像素相邻,以及
基于找到的M个块中的至少一个预测所述多个子块的每一个。
21.一种对当前画面的图像处理单元进行帧间预测的方法,所述图像处理单元包括多个子块,所述方法包括:
通过使用与多个子块的每一个邻近的像素对所述多个子块的每一个进行帧间预测来产生图像处理单元的第一预测值;以及
通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素对所述多个子块的每一个进行帧间预测来产生图像处理单元的第二预测值。
22.如权利要求21所述的方法,其中,通过帧间预测产生第一预测值的步骤包括:
通过使用包括在先前编码区域中并与所述多个子块的每一个邻近的一组像素和包括在图像处理单元的先前预测子块中的一组像素中的至少一组,在一次搜索中搜索参考画面;以及
根据搜索的结果对所述多个子块进行帧间预测来产生第一预测值。
23.如权利要求21所述的方法,其中,通过帧间预测产生第一预测值的步骤包括:
通过使用包括在先前解码区域中并与所述多个子块的每一个邻近的一组像素和包括在图像处理单元的先前预测子块中的一组像素中的至少一组,在一次搜索中搜索参考画面;以及
根据搜索的结果对所述多个子块进行帧间预测来产生第一预测值。
24.如权利要求21所述的方法,其中,通过帧间预测产生第二预测值的步骤包括:
通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素,在一次搜索中搜索参考画面;以及
根据搜索的结果对所述多个子块进行帧间预测来产生第二预测值。
25.如权利要求24所述的方法,其中,所述邻近的像素是与用于产生第一预测值的所述多个子块的每一个子块的上边、下边、左边和右边中的至少一个相邻的像素。
26.如权利要求21所述的方法,还包括:通过将第二预测值设置为初始值并执行至少一次产生图像处理单元的下个预测值的操作来产生图像处理单元的最终的预测值,其中,通过使用与先前预测值的所述多个子块的每一个相邻的像素对图像处理单元的所述多个子块进行帧间预测来产生所述图像处理单元的下个预测值。
27.如权利要求26所述的方法,还包括:基于最终的预测值产生图像处理单元的所述多个子块的预测运动矢量。
28.一种对当前画面的图像处理单元进行帧间预测的设备,所述图像处理单元包括多个子块,所述设备包括:
第一帧间预测执行单元,通过使用与多个子块的每一个邻近的像素对所述多个子块的每一个进行帧间预测来产生图像处理单元的第一预测值;以及
第二帧间预测执行单元,通过使用与包括在第一预测值中的所述多个子块的每一个邻近的像素对所述多个子块的每一个进行帧间预测来产生图像处理单元的第二预测值。
29.如权利要求28所述的设备,其中,第一帧间预测执行单元包括:
第一帧间搜索单元,通过使用包括在先前编码区域中并与所述多个子块的每一个邻近的一组像素和包括在图像处理单元的先前预测子块中的一组像素中的至少一组,在一次搜索中搜索参考画面;以及
第一预测值产生单元,根据搜索的结果对所述多个子块进行帧间预测来产生第一预测值。
30.如权利要求28所述的设备,其中,所述第一帧间预测执行单元包括:
第一帧间搜索单元,通过使用包括在先前解码区域中并与所述多个子块的每一个邻近的一组像素和包括在图像处理单元的先前预测子块中的一组像素中的至少一组来搜索参考画面;以及
第一预测值产生单元,根据搜索的结果对所述多个子块进行帧间预测来产生第一预测值。
31.如权利要求28所述的设备,其中,第二帧间预测执行单元包括:
第二帧间搜索单元,通过使用与包括在当前图像处理单元的第一预测值的所述多个子块的每一个邻近的像素,在一次搜索中搜索参考画面;以及
第二预测值产生单元,根据搜索的结果对所述多个子块进行帧间预测来产生第二预测值。
32.如权利要求31所述的设备,其中,所述邻近的像素是与用于产生第一预测值的所述多个子块的每一个子块的上边、下边、左边和右边中的至少一个相邻的像素。
33.如权利要求28所述的设备,其中,所述第二帧间预测执行单元通过将第二预测值设置为初始值并执行至少一次产生图像处理单元的下个预测值的操作来产生图像处理单元的最终的预测值,其中,通过使用与先前预测值的所述多个子块的每一个相邻的像素对图像处理单元的所述多个子块进行帧间预测来产生所述图像处理单元的下个预测值。
34.如权利要求33所述的设备,还包括:运动矢量预测单元,基于最终的预测值产生图像处理单元的所述多个子块的预测运动矢量。
CN2008800093634A 2007-01-22 2008-01-15 帧内预测/帧间预测方法和设备 Expired - Fee Related CN101641959B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR1020070006695 2007-01-22
KR10-2007-0006695 2007-01-22
KR1020070006695A KR101411315B1 (ko) 2007-01-22 2007-01-22 인트라/인터 예측 방법 및 장치
PCT/KR2008/000231 WO2008091071A1 (en) 2007-01-22 2008-01-15 Intraprediction/interprediction method and apparatus

Publications (2)

Publication Number Publication Date
CN101641959A CN101641959A (zh) 2010-02-03
CN101641959B true CN101641959B (zh) 2012-12-19

Family

ID=39641279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008800093634A Expired - Fee Related CN101641959B (zh) 2007-01-22 2008-01-15 帧内预测/帧间预测方法和设备

Country Status (5)

Country Link
US (1) US8639047B2 (zh)
EP (1) EP2127397A4 (zh)
KR (1) KR101411315B1 (zh)
CN (1) CN101641959B (zh)
WO (1) WO2008091071A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101263090B1 (ko) * 2010-11-08 2013-05-09 성균관대학교산학협력단 다단계 예측을 이용한 영상 부/복호화 방법 및 이러한 방법을 사용하는 부/복호화 장치
MX2014000171A (es) * 2011-06-28 2014-02-19 Samsung Electronics Co Ltd Metodo y aparato para codificar y decodificar imagenes utilizando intra-prediccion.
KR101540510B1 (ko) * 2013-05-28 2015-07-31 한양대학교 산학협력단 추가적 예측 후보를 이용한 인트라 예측 방법 및 그 장치
US9667965B2 (en) 2012-06-25 2017-05-30 Industry-University Cooperation Foundation Hanyang University Video encoding and decoding method
KR101629999B1 (ko) * 2012-06-25 2016-06-13 한양대학교 산학협력단 무손실 비디오 부호화/복호화 방법 및 장치
US9509998B1 (en) * 2013-04-04 2016-11-29 Google Inc. Conditional predictive multi-symbol run-length coding
KR101464944B1 (ko) * 2014-04-08 2014-11-27 에스케이텔레콤 주식회사 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치
KR101464949B1 (ko) * 2014-04-08 2014-11-27 에스케이텔레콤 주식회사 서브블록 내 임의 화소를 이용한 영상 부호화/복호화 방법 및 장치
CN116016911A (zh) * 2016-01-27 2023-04-25 韩国电子通信研究院 通过使用预测对视频进行编码和解码的方法和装置
KR20170108367A (ko) 2016-03-17 2017-09-27 세종대학교산학협력단 인트라 예측 기반의 비디오 신호 처리 방법 및 장치
US10841617B2 (en) 2018-11-27 2020-11-17 Semiconductor Components Industries, Llc Methods and apparatus for successive intra block prediction
CN111385572B (zh) * 2018-12-27 2023-06-02 华为技术有限公司 预测模式确定方法、装置及编码设备和解码设备
CN116260979A (zh) * 2019-02-15 2023-06-13 华为技术有限公司 从帧内子划分译码模式工具限制子分区的尺寸的编码器、解码器、及对应方法
CN110881125B (zh) * 2019-12-10 2021-10-29 中国科学院深圳先进技术研究院 帧内预测方法、视频编码、解码方法及相关设备

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6104439A (en) * 1992-02-08 2000-08-15 Samsung Electronics Co., Ltd. Method and apparatus for motion estimation
CN1183769C (zh) * 1996-05-28 2005-01-05 松下电器产业株式会社 图像预测编码/解码装置和方法以及记录媒体
US6950469B2 (en) * 2001-09-17 2005-09-27 Nokia Corporation Method for sub-pixel value interpolation
US7289672B2 (en) * 2002-05-28 2007-10-30 Sharp Laboratories Of America, Inc. Methods and systems for image intra-prediction mode estimation
US7289674B2 (en) * 2002-06-11 2007-10-30 Nokia Corporation Spatial prediction based intra coding
KR101000926B1 (ko) * 2004-03-11 2010-12-13 삼성전자주식회사 영상의 불연속성을 제거하기 위한 필터 및 필터링 방법
JP4074868B2 (ja) 2004-12-22 2008-04-16 株式会社東芝 画像符号化制御方法及びその装置
KR20060105352A (ko) * 2005-04-04 2006-10-11 삼성전자주식회사 인트라 예측 방법 및 그 장치
KR20060123939A (ko) * 2005-05-30 2006-12-05 삼성전자주식회사 영상의 복부호화 방법 및 장치
KR100716999B1 (ko) * 2005-06-03 2007-05-10 삼성전자주식회사 영상의 대칭성을 이용한 인트라 예측 방법, 이를 이용한영상의 복호화, 부호화 방법 및 장치
KR100813963B1 (ko) * 2005-09-16 2008-03-14 세종대학교산학협력단 동영상의 무손실 부호화, 복호화 방법 및 장치
KR100727988B1 (ko) * 2005-10-01 2007-06-13 삼성전자주식회사 변환 영역에서의 dc 계수 예측 방법 및 장치
KR100750136B1 (ko) * 2005-11-02 2007-08-21 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치
KR101266168B1 (ko) * 2006-08-16 2013-05-21 삼성전자주식회사 영상의 부호화, 복호화 방법 및 장치

Also Published As

Publication number Publication date
KR101411315B1 (ko) 2014-06-26
US20080175492A1 (en) 2008-07-24
EP2127397A4 (en) 2011-01-12
US8639047B2 (en) 2014-01-28
WO2008091071A1 (en) 2008-07-31
CN101641959A (zh) 2010-02-03
EP2127397A1 (en) 2009-12-02
KR20080069069A (ko) 2008-07-25

Similar Documents

Publication Publication Date Title
CN101641959B (zh) 帧内预测/帧间预测方法和设备
TWI737971B (zh) 圖像解碼方法
TWI625053B (zh) 合併模式中視訊資料的編碼方法
CN101584219B (zh) 基于帧内预测进行编码和解码的方法和设备
KR100727972B1 (ko) 영상의 인트라 예측 부호화, 복호화 방법 및 장치
KR100739714B1 (ko) 인트라 예측 모드 결정 방법 및 장치
CN100574446C (zh) 视频编码/解码的装置和方法及其记录介质
CN101536530B (zh) 基于运动估计进行视频编码和解码的方法和设备
TWI711297B (zh) 利用量化係數分量與圖框間預測資訊解碼視訊資料的方法
CN103096073A (zh) 构造合并列表的方法
TWI679881B (zh) 動態影像預測解碼方法
KR102081945B1 (ko) 비디오 신호 처리 방법 및 장치
CN103636214B (zh) 图像处理设备及图像处理方法
CN101569201B (zh) 基于帧内预测进行编码和解码的方法和装置
KR20110068792A (ko) 적응적 영상 부호화 장치 및 방법
CN103096069A (zh) 推导帧内预测模式的方法和设备
CN103139565A (zh) 用于对色度图像解码的方法
JP2010016454A (ja) 画像符号化装置および方法、画像復号装置および方法、並びにプログラム
JP2010035137A (ja) 画像処理装置および方法、並びにプログラム
TW201440501A (zh) 圖像處理裝置及方法、程式以及記錄媒體
CN104601993A (zh) 一种视频编码方法及装置
CN101888546B (zh) 一种运动估计的方法及装置
JP4577778B2 (ja) 動画像の符号化および復号化方法
CN101554058B (zh) 基于帧内预测进行编码和解码的方法和装置
JP2022526276A (ja) 画像エンコーディングおよびデコーディングのための方法およびデバイス

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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20121219

Termination date: 20200115