CN102067601B - 视频编码和解码中模板匹配预测(tmp)的方法和装置 - Google Patents

视频编码和解码中模板匹配预测(tmp)的方法和装置 Download PDF

Info

Publication number
CN102067601B
CN102067601B CN200980122299.5A CN200980122299A CN102067601B CN 102067601 B CN102067601 B CN 102067601B CN 200980122299 A CN200980122299 A CN 200980122299A CN 102067601 B CN102067601 B CN 102067601B
Authority
CN
China
Prior art keywords
predictive
operator
prediction
reference sequences
predictive operator
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
CN200980122299.5A
Other languages
English (en)
Other versions
CN102067601A (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.)
Thomson Licensing SAS
International Digital Madison Patent Holding SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Publication of CN102067601A publication Critical patent/CN102067601A/zh
Application granted granted Critical
Publication of CN102067601B publication Critical patent/CN102067601B/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
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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/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/137Motion inside a coding unit, e.g. average field, frame or block difference
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/46Embedding additional information in the video signal during the compression process
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明提供了视频编码和解码中模板匹配预测的方法和装置。该装置包括编码器(300),用于通过确定目标块的至少一个预测算子并且分别将至少一个预测算子用作模板来搜索目标块的至少一个另外预测算子,编码画面中的目标块。

Description

视频编码和解码中模板匹配预测(TMP)的方法和装置
交叉参考相关申请
本申请要求通过引用全文并入本文中、2008年4月11日提交的美国临时申请第61/044,193号(专利代理人案号PU080048)的权益。
技术领域
本原理一般涉及视频编码和解码,尤其涉及视频编码和解码中模板匹配预测(TMP)的方法和装置。
背景技术
用在视频编码和解码中的模板匹配预测(TMP)通过避免运动向量/位移向量的传输,可以在帧间预测和/或帧内预测的编码效率方面获益。但是,模板匹配预测的预测性能高度依赖于目标块与它的相应模板之间的关联性。在技术上众所周知,如图1所示,使用在顶部和/或左侧围绕目标块的重构像素。转到图1,涉及模板匹配预测的隐性(implicit)运动估计方案的一个例子用标号100总体表示。隐性运动估计方案100涉及含有搜索区111的重构参考帧110,搜索区111内的预测112,和与预测112有关的邻居113。隐性运动估计方案100还涉及含有目标块151的当前帧150,与目标块151有关的模板152,和重构区153。但是,以这样的方式利用模板匹配预测降低了编码器和解码器性能,尤其当模板与目标信号之间具有较弱关联性时。
帧间预测
在视频编码中,帧间预测广泛应用于降低目标帧与参考帧之间的时间冗余。运动估计和补偿是帧间预测的组成部分。一般说来,我们可以将运动模型和相应运动估计技术分类成两类。第一类是所谓的显性(explicit)运动估计,或显性运动模型,其中显性地传输运动向量。第二类是所谓的隐性运动估计,其中根据重构像素估计运动信息,以便无需传输运动向量。
在像,例如,国际标准化组织/国际电工委员会(ISO/IEC)运动图形专家组4(MPEG-4)第10部分高级视频编码(AVC)标准/国际电信联盟,电信部门(ITU-T)H.264建议(下文称为“MPEG-4AVC标准”)那样的当前视频编码标准中很好地采用了如图2所示的基于块匹配技术的第一类。转到图2,涉及块匹配的显性运动估计方案的一个例子用标号200总体表示。显性运动估计方案200涉及含有搜索区201的重构参考帧210和搜索区201内的预测202。显性运动估计方案200还涉及含有目标块251和重构区252的当前帧250。运动向量MV用于表示目标块251与预测202之间的运动。第一类通常分两步进行。估计目标(当前)块与参考帧之间的运动向量。然后编码运动信息并显性地将其发送给解码器。在解码器上,解码运动信息并将其用于从在前解码重构参考帧中预测目标块。
第二类指的是在位流中不显性地编码运动信息的运动估计方法的类别。取而代之,在解码器上进行与在编码器上所进行相同的运动信息导出。一种实用的隐性运动估计方案是使用空时自回归模型,其中应用了最小二乘预测(LSP)。另一种常用的和流行的手段是使用像显示在图1中的模板匹配预测手段那样的基于小块(patch-based)模型。
一般说来,显性运动估计可以更精确,尤其对于快速和不自然运动,但以运动向量的编码位为代价。隐性运动估计更适用于缓慢的和自然的运动,但给解码器带来复杂性的负担,因为必须像编码器那样计算运动信息。
MPEG-4AVC标准帧间预测
MPEG-4AVC标准使用树结构分层宏块分区。帧间编码16×16像素宏块可以分解成尺寸为16×8、8×16或8×8的宏块分区。8×8像素的宏块分区也称为子宏块。子宏块也可以分解成尺寸为8×4、4×8和4×4的子宏块分区。编码器可以根据特定宏块的特性选择如何将宏块划分成分区和子宏块分区,以便使压缩效率和主观质量最高。
可以将多个参考画面用于帧间预测,参考画面索引被编码成指示使用多个参考画面的哪一个。对于P画面(或P切片),只使用单向预测,并在序列0中管理允许参考画面。在B画面(或B切片)中,管理参考画面的两个序列,即序列0和序列1。在B画面(或B切片)中,允许使用序列0或序列1任一个的单向预测,或允许使用序列0和序列1两者的双向预测。当使用双向预测时,一起对序列0和序列1的预测算子求平均以形成最终预测算子。
每个宏块分区可以具有独立的参考画面索引、预测类型(序列0,序列1,双向预测)、和独立的运动向量。每个子宏块分区可以具有独立的运动向量,但同一子宏块中的所有子宏块分区使用相同的参考画面索引和预测类型。
在MPEG-4AVC标准联合模型(JM)参考软件中,将率失真优化(RDO)框架用于模式决定。对于帧间模式,与模式决定分开考虑运动估计。首先对所有块类型的帧间模式进行运动估计,然后通过比较每种帧间模式和帧内模式的成本作出模式决定。选择成本最小的模式作为最佳模式。如下模式分别涉及P帧和B帧:
P帧: MODE ∈ INTRA 4 x 4 , INTRA 16 x 16 , SKIP , 16 x 16,16 x 8,8 x 16,8 x 8,8 x 4,4 x 8,4 x 4 ,
B帧: MODE ∈ INTRA 4 x 4 , INTRA 16 x 16 , DIRECT , 16 x 16 L 0,16 x 8 L 0,8 x 16 L 0,8 x 8 L 0,8 x 4 L 0 , 4 x 8 L 0,4 x 4 L 0,16 x 16 L 1,16 x 8 L 1,8 x 16 L 1 , 8 x 8 L 1,8 x 4 L 1,4 x 8 L 1,4 x 4 L 1,16 x 16 BI , 16 x 8 BI , 8 x 16 BI , 8 x 8 BI , 8 x 4 BI , 4 x 8 BI , 4 x 4 BI .
模板匹配
模板匹配预测是一种不发送运动向量地预测目标像素的方式。给定一帧的一个目标块,通过从一组参考样本中找出一个最佳像素确定该块中的目标像素,其中最佳像素的相邻像素与目标像素的那些相邻像素之间具有最高关联性。目标像素的那些相邻像素被叫做模板。现有技术表明,如图1所示,模板总是取自目标像素的重构周围像素。模板匹配预测可以应用于帧内预测和帧间预测两者。
在帧间预测的情况下,模板匹配过程可以看作解码器方的运动向量搜索。这里,与传统运动估计技术非常类似地进行模板匹配。通过对参考帧中的相应位移模板状区域计算成本函数估计运动向量。然后将模板的最佳运动向量用于预测目标区。对于搜索,只访问已经存在重构或至少存在预测信号的图像的那些区域。因此,解码器能够执行模板匹配过程,并且无需附加辅助信息地预测目标区。
模板匹配可以无需传输运动向量地预测目标块中的像素。如果目标块与它的模板之间的关联性高,预计模板匹配预测的预测性能与块匹配预测的预测性能相当。在现有技术中,模板总是取自目标像素的重构空间相邻像素。相邻像素有时与目标像素之间具有低关联性,因此,模板匹配预测的性能可以低于传统块匹配方案。
多假设运动补偿预测(MCP)
多假设是多个预测候选者的组合,以使目标块的预测信号更低噪,或与目标块更关联。双向预测是多假设的更常见情况。在现有技术中,多假设运动补偿预测可以与显性预测和隐性预测一道分类成两类,在第一类中,对于每个假设运动补偿预测,显性地传输所有运动向量。在第二类中,像模板匹配求平均那样,在位流中不嵌入运动向量。第一种手段的缺点是运动的位速率开销。第二种手段的缺点是因为匹配过程基于相邻像素,所以由可能涉及的***者(outlier)引起的不精确。
发明内容
现有技术的这些和其它缺陷和缺点通过以视频编码和解码中模板匹配预测(TMP)的方法和装置为目的的本原理来解决。
按照本原理的一个方面,提供了一种装置。所述装置包括编码器,用于通过确定目标块的至少一个预测算子并且分别将至少一个预测算子用作模板来搜索目标块的至少一个另外预测算子,编码画面中的目标块。
按照本原理的另一个方面,提供了一种方法。所述方法包括通过确定目标块的至少一个预测算子并且分别将至少一个预测算子用作模板来搜索目标块的至少一个另外预测算子,编码画面中的目标块。
按照本原理的又一个方面,提供了一种装置。所述装置包括解码器,用于通过确定目标块的至少一个预测算子并且分别将至少一个预测算子用作模板来搜索目标块的至少一个另外预测算子,解码画面中的目标块。
按照本原理的再一个方面,提供了一种方法。所述方法包括通过确定目标块的至少一个预测算子并且分别将至少一个预测算子用作模板来搜索目标块的至少一个另外预测算子,解码画面中的目标块。
本原理的这些和其它方面、特征和优点可以从要结合附图阅读的示范性实施例的如下详细描述中明显看出。
附图说明
可以依照如下示范性附图更好地理解本原理,在附图中:
图1是示出涉及模板匹配预测的隐性运动估计方案的一个例子的图形;
图2是示出涉及块匹配的显性运动估计方案的一个例子的图形;
图3是示出依照本原理一个实施例、可以应用本原理的示范性视频编码器的方块图;
图4是示出依照本原理一个实施例、可以应用本原理的示范性视频解码器的方块图;
图5是示出依照本原理一个实施例、结合单次预测(单预测(uni-predictor))的模板匹配预测(TMP)方案的一个例子的图形;
图6是示出依照本原理一个实施例、使用结合单次参考序列预测(单预测)的模板匹配预测的一种视频编码方法的流程图;
图7是示出依照本原理一个实施例、使用结合单次参考序列预测(单预测)的模板匹配预测的一种视频解码方法的流程图;
图8是示出依照本原理一个实施例、结合双预测的模板匹配预测的一个例子的图形;
图9是示出依照本原理一个实施例、使用结合双预测的模板匹配预测的一种视频编码方法的流程图;
图10是示出依照本原理一个实施例、使用结合双预测的模板匹配预测的一种视频解码方法的流程图;
图11是示出依照本原理一个实施例、使用结合双预测的模板匹配预测的另一种视频编码方法的流程图;
图12是示出依照本原理一个实施例、使用结合双预测的模板匹配预测的另一种视频解码方法的流程图;
图13是示出依照本原理一个实施例、结合多个参考画面的模板匹配预测的一个例子的图形;
图14是示出依照本原理一个实施例、使用结合多个参考画面的模板匹配预测的一种视频编码方法的流程图;
图15是示出依照本原理一个实施例、使用结合多个参考画面的模板匹配预测的一种视频解码方法的流程图;
图16是示出依照本原理一个实施例、将模板匹配预测用于帧内预测的另一种视频编码方法的流程图;以及
图17是示出依照本原理一个实施例、使用结合多个参考画面的模板匹配预测的另一种视频解码方法的流程图。
具体实施方式
本原理针对视频编码和解码中模板匹配预测(TMP)的方法和装置。
本描述将举例说明本原理。因此,应该懂得,本领域的普通技术人员能够设想出尽管未明确描述或显示在本文中,但体现本原理和包括在它的精神和范围之内的各种安排。
本文阐述的所有例子和条件语言都是以教授为目的,以帮助读者理解本原理以及本发明人为促进技术进步而贡献的概念,并且应该理解成不局限于这样的具体阐述例子和条件。
此外,本文阐述本原理的各个原理、方面和实施例及其特定例子的所有语句旨在包含其结构和功能等效物两者。另外,这样的等效物旨在包括当前已知的等效物以及未来开发的等效物,即与结构无关,开发出来执行相同功能的任何元件。
因此,例如,本领域的普通技术人员应该懂得,本文所表示的方块图代表体现本原理的例示性电路的概念图。类似地,应该懂得,任何过程图、流程图、状态转变图、伪码等代表基本上可以表示在计算机可读媒体中,因此可以由计算机或处理器执行的各种进程,无论这样的计算机或处理器是否明确显示出来。
显示在图中的各种元件的的功能可以通过使用专用硬件以及能够与适当软件相联系执行软件的硬件来提供。当通过处理器提供时,这些功能可以由单个专用处理器、由单个共享处理器、或由一些可以共享的多个单独处理器提供。此外,术语“处理器”或“控制器”的显性使用不应该理解成排他地指能够执行软件的硬件,而是可以隐性地包括,但不局限于,数字信号处理器(“DSP”)硬件、存储软件的只读存储器(“ROM”)、随机访问存储器(“RAM”)以及非易失性存储器。
也可以包括传统的和/或定制的其它硬件。类似地,显示在图中的开关只是概念性的。它们的功能可以通过程序逻辑的运算、通过专用逻辑、通过程序控制和专用逻辑的交互、或甚至人工地实现,正如从上下文中更具体了解到的那样,特定的技术可由实现者选择。
在其权利要求书中,表达成执行特定功能的装置的任何元件旨在包含执行那种功能的任何方式,例如,包括a)执行那种功能的电路元件的组合,或b)任何形式的软件,因此包括与执行那种软件的适当电路结合执行该功能的固件、微码等。如这样的权利要求书定义的本原理在于以权利要求书要求的方式组合和汇集各种所述装置提供的功能。因此,应该认为可以提供那些功能的任何装置都等效于本文所示的那些装置。
在说明书中提到本原理的“一个实施例”或“实施例”以及它的各种变体意味着结合该实施例所述的特征、结构、特性等包括在本原理的至少一个实施例中。因此,出现在整个说明书中的各个地方的措词“在一个实施例中”或“在实施例中”以及任何其它变体的出现未必都指同一实施例。
应该懂得,如下“/”、“和/或”、和“至少一个”的任何一种的使用,例如,在“A/B”、“A和/或B”、和“A和B的至少一个”的情况下,旨在包含只有第一所列选项(A)的选择,或只有第二所列选项(B)的选择,或两个选项(A和B)的选择。作为进一步的例子,在“A、B、和/或C”和“A、B、和C的至少一个”的情况下,这样的措词旨在包含只有第一所列选项(A)的选择,或只有第二所列选项(B)的选择,或只有第三所列选项(C)的选择,或只有第一和第二所列选项(A和B)的选择,或只有第一和第三所列选项(A和C)的选择,或只有第二和第三所列选项(B和C)的选择,或所有三个选项(A、B和C)的选择。本领域的普通技术人员容易明白,对于列出的许多项目,可以依此类推。
此外,应该懂得,虽然本文针对MPEG-4AVC标准来描述本原理的一个或多个实施例,但本原理不只局限于这种标准,因此,可以在保持本原理的精神的同时,针对其其它视频编码标准、建议和外延,包括MPEG-4AVC标准的外延,来使用本原理。
并且,应该懂得,术语“预测”、“预测算子”、和“假设”在本文中可交换使用。
此外,应该懂得,如本文使用的术语“块”指的是宏块、宏块分区、子宏块、和子宏块分区的任何一种。此外,术语“块”也可以指,例如,从宏块、宏块分区、子宏块、和子宏块分区的任何一种中分割出来的楔块(wedge)。
另外,应该懂得,措词“显性编码”和“显性解码”分别指进行编码或解码使得与编码或解码有关的相应语法包括在位流(例如,包括语法对应于的视频内容的位流或分立位流)中的情况。相反,措词“隐性编码”和“隐性解码”分别指进行编码或解码使得与编码或解码有关的相应语法不包括在位流(例如,包括语法对应于的视频内容的位流或分立位流)中的情况。更确切地,可以从其它语法等中推出相应语法,等。
转到图3,可以应用本原理的示范性视频编码器用标号300总体表示。
该视频编码器300包括帧排序缓冲器310,它含有与组合器385的非反相输入端信号通信的输出端。组合器385的输出端被连接成与变换和量化器325的第一输入端信号通信。变换和量化器325的输出端被连接成与熵编码器345的第一输入端和逆变换和逆量化器350的第一输入端信号通信。熵编码器345的输出端被连接成与组合器390的第一非反相输入端信号通信。组合器390的输出端被连接成与输出缓冲器335的第一输入端信号通信。
编码器控制器305的第一输出端被连接成与帧排序缓冲器310的第二输入端、逆变换和逆量化器350的第二输入端、画面类型判定模块315的输入端、宏块类型(MB类型)判定模块320的第一输入端、帧内预测模块360的第二输入端、分块滤波器365的第二输入端、运动补偿和模板匹配预测器370的第一输入端、运动估计器375的第一输入端、和参考画面缓冲器380的第二输入端信号通信。
编码器控制器305的第二输出端被连接成与补偿增强信息(SEI)***器330的第一输入端、变换和量化器325的第二输入端、熵编码器345的第二输入端、输出缓冲器335的第二输入端、以及序列参数组(SPS)和画面参数组(PPS)***器340的输入端信号通信。
SEI***器330的输出端被连接成与组合器390的第二非反相输入端信号通信。
画面类型判定模块315的第一输出端被连接成与帧排序缓冲器310的第三输入端信号通信。画面类型判定模块315的第二输出端被连接成与宏块类型判定模块320的第二输入端信号通信。
序列参数组(SPS)和画面参数组(PPS)***器340的输出端被连接成与组合器390的第三非反相输入端信号通信。
逆变换和逆量化器350的输出端被连接成与组合器319的第一非反相输入端信号通信。组合器319的输出端被连接成与帧内预测模块360的第一输入端和分块滤波器365的第一输入端信号通信。分块滤波器365的输出端被连接成与参考画面缓冲器380的第一输出端信号通信。参考画面缓冲器380的输出端被连接成运动估计器375的第二输入端、运动补偿和模板匹配预测器370的第三输入端、和模板搜索器344的第一输出端信号通信。模板搜索器344的输出端被连接成与运动补偿和模板匹配预测器370的第四输入端信号通信。运动估计器375的第一输出端被连接成与运动补偿和模板匹配预测器370的第二输入端信号通信。运动估计器375的第二输出端被连接成与熵编码器345的第三输入端信号通信。运动估计器375的第三输出端被连接成与模板搜索器344的第二输入端信号通信。编码器控制器305的第三输出端被连接成与模板搜索器344的第三输入端信号通信。
运动补偿和模板匹配预测器370的输出端被连接成与开关397的第一输入端信号通信。帧内预测模块360的输出端被连接成与开关397的第二输入端信号通信。宏块类型判定模块320的输出端被连接成与开关397的第三输入端信号通信。开关397的第三输入端确定开关的“数据”输入(如与控制输入,即,第三输入相比)由运动补偿和模板匹配预测器370提供还是由帧内预测模块360提供。开关397的输出端被连接成与组合器319的第二非反相输入端信号通信以及与组合器385的反相输入端信号通信。
帧排序缓冲器310的第一输入端和编码器控制器305的输入端可作为编码器100的输入端用于接收输入画面。此外,补充增强信息(SEI)***器330的第二输入端可作为编码器300的输入端用于接收元数据。输出缓冲器335的输出端可作为编码器300的输出端用于输出位流。
转到图4,可以应用本原理的示范性视频解码器用标号400总体表示。
该视频解码器400包括输入缓冲器410,它含有连接成与熵解码器445的第一输入端信号通信的输出端。熵解码器445的第一输出端被连接成与逆变换和逆量化器450的第一输入端信号通信。逆变换和逆量化器450的输出端被连接成与组合器425的第二非反相输入端信号通信。组合器425的输出端被连接成与分块滤波器465的第二输入端和帧内预测模块460的第一输入端信号通信。分块滤波器465的第二输出端被连接成与参考画面缓冲器480的第一输入端信号通信。参考画面缓冲器480的输出端被连接成与模板搜索器444的第一输入端信号通信。模板搜索器444的输出端被连接成与运动补偿和模板匹配预测器470的第二输入端信号通信。
熵解码器445的第二输出端被连接成与运动补偿和模板匹配预测器470的第三输入端、分块滤波器465的第一输入端、和模板搜索器444的第二输入端信号通信。熵解码器445的第三输出端被连接成与解码器控制器405的输入端信号通信。解码器控制器405的第一输出端被连接成与熵解码器445的第二输入端信号通信。解码器控制器405的第二输出端被连接成与逆变换和逆量化器450的第二输入端信号通信。解码器控制器405的第三输出端被连接成与分块滤波器465的第三输入端信号通信。解码器控制器405的第四输出端被连接成与帧内预测模块460的第二输入端、运动补偿和模板匹配预测器470的第一输入端、参考画面缓冲器480的第二输入端、和模板搜索器444的第三输入端信号通信。
运动补偿和模板匹配预测器470的输出端被连接成与开关497的第一输入端信号通信。帧内预测模块460的输出端被连接成与开关497的第二输入端信号通信。开关497的输出端被连接成与组合器425的第一非反相输入端信号通信。
输入缓冲器410的输入端可作为解码器400的输入端用于接收输入位流。分块滤波器465的第一输出端可作为解码器400的输出端用于输出输出画面。
如上所述,本原理针对视频编码和解码中模板匹配预测(TMP)的方法和装置。
此外,如上所述,模板匹配预测的预测性能高度依赖于目标块与它的相应模板之间的关联性。在技术上众所周知,如图1所示,使用在顶部和/或左侧围绕目标块的重构像素。但是,以这样的方式利用模板匹配预测降低了编码器和解码器性能,尤其当模板与目标信号之间具有较弱关联性时。
我们认识到了这种局限性,因此为隐性运动推算假定了模板匹配预测的改进方法。因此,我们将描述多假设帧内预测的新模板匹配技术,其中一些假设的运动信息通过模板匹配推出。这样,模板匹配预测和显性运动预测的协同组合是有效的。这减少了运动信息的位速率开销,因此提高了编码效率。应该懂得,虽然本文主要以帧间预测为背景描述本原理的实施例,但给定本文提供的本原理的教导,本领域的普通技术人员容易理解,本原理也可以应用于帧内预测。
因此,依照本原理,我们将描述解决模板匹配预测的局限性以及显性和隐性多假设运动补偿预测的局限性的方法和装置。此外,尤其,我们描述使用模板匹配预测进行联合隐性和显性预测来改善多假设运动补偿预测。在以前的解决方案中,模板取自目标像素/块的重构周围像素。周围像素有时无法代表目标像素,因此模板匹配预测的性能可以低于传统块匹配方案。但是,依照本原理的一个或多个实施例,我们描述如图5所示,模板可以是目标像素/块的预测的方法和装置。转到图5,结合单次预测(单预测)的模板匹配预测(TMP)方案的一个例子用标号500总体表示。结合单次预测的模板匹配预测方案500涉及当前帧510、序列0中的参考帧520、和序列1中的参考帧530。当前帧510包括目标块511。序列0中的参考帧520包括预测521(也指定为“P0”)。序列1中的参考帧530包括预测531(也指定为“P1”)。运动向量MV0用于表示目标块511与预测521之间的运动。如果预测P0非常接近目标块,根据预测P0生成模板可以使模板匹配预测的执行非常有效。在一个实施例中,模板可以是当前块的帧间预测。在第二实施例中,模板可以是当前块的帧内预测。我们可以发送一些辅助信息来指示我们使用的确切预测,或者,我们可以假定一些默认预测。例如,在第一实施例中,我们可以假定帧间预测总是被取作从运动向量预测算子推出的那个,或从跳跃或直接模式中推出的运动向量中推出的那个,或者,我们可以显性地发送预测的运动向量信息。在第二实施例中,我们可以总是假定使用DC帧内预测,或我们可以发送辅助信息来指示使用MPEG-4AVC标准下的哪个帧内预测。在第三实施例中,我们可以使用来自空间相邻像素的模板搜索来填充目标块的模板。使用模式匹配的多假设
在这种方案中,模板通过帧内预测和显性运动估计获得。运动向量可以从像在MPEG4-AVC标准中的运动向量预测算子中推出,或可以显性地在位流中发送。然后,我们可以使用模板来搜索可用参考画面,以获取更多运动补偿预测。这样,我们可以利用显性运动估计和隐性运动估计两者。由于我们可以不引起更多开销地从相同或不同参考画面中获取多个预测,因此我们可以利用这种方法实现任意个假设。
在下文中,我们将描述使用模板匹配预测来改善多假设运动补偿预测的四个不同实施例。前两个实施例把注意力集中在B帧上。第三个实施例从多个参考画面的角度来讨论。本原理也可应用于P帧。在第四实施例中,我们描述这种方法如何也可以用于帧内画面编码。
第1实施例:结合单次参考序列预测(单预测)的TMP
在这个实施例中,对一个参考序列进行显性运动估计,以获取目标块的预测数据(P0),然后将它用作模板在其它参考序列中搜索以获取预测数据(P1)。然后,最终预测(P)是P0和P1的加权平均。权重可以是简单平均(权重等于0.5)或基于一些失真测量、到当前画面的参考距离等的其它权重。该例子例示在图5中。
这种手段可以容易地与像,例如,但不局限于,模式M×NL0或M×NL1那样MPEG-4AVC标准中的单预测模式结合,其中,M,N=16,8,4,L0和L1代表分别来自序列0或序列1的预测。我们可以在宏块水平或子宏块水平上加上标志,以指示将单预测还是结合模板匹配预测的双预测用于这种模式。
bi_tmp_flag等于1规定应用使用单预测和模板匹配预测的双预测。bi_tmp_flag等于0规定应用单预测。
依照一个实施例的16×16L0的一个示范性编码过程例示如下:
(1)对参考序列0中的16×16宏块进行运动估计以获取P0,并对P0计算RDcost。
(2)将P0用作模板在参考序列1中搜索以获取P1,并对0.5(P0+P1)计算RDcost。
(3)比较来自(1)和(2)的RDcost并设置bi_tmp_flag。如果(2)的RDcost小于(1)的RDcost,那么设置bi_tmp_flag=1;否则,设置bi_tmp_flag=0。
依照一个实施例的16×16L0的相应解码过程例示如下:
(1)分析和解码bi_tmp_flag的语法以及16×16L0的运动向量;
(2)对参考序列0中的16×16宏块进行运动补偿以获取P0
(3)如果bi_tmp_flag=0,则停止;否则,
(4)将P0用作模板在参考序列1中搜索以获取P1,并获取像0.5(P0+P1)那样的最终预测。
我们应该注意到,对于模板搜索,模板尺寸可以不同于P0的尺寸。例如,我们可以取代16×16块尺寸,将8×8块尺寸用于具有16×16L0的P1的搜索来进行模板匹配预测。可替代地,我们可以使用我们可以通过并入P0的周围像素使模板的尺寸增大的20×20来进行模板匹配预测。
转到图6,使用结合单次参考序列预测(单预测)的模板匹配预测的一种视频编码方法用标号600总体表示。该方法600包括将控制交给判定块606的开始块603。判定块606确定当前模式是否是模板匹配预测(TMP)模式。如果是,则将控制交给判定块609。否则,将控制交给功能块663。
判定块609确定显性运动估计方向(向前L0还是向后L1)。如果显性运动估计方向是向后,则将控制交给功能块612。否则,将控制交给功能块627。
功能块612进行参考序列1中的运动估计,以获取预测P1和运动向量Mv,并将控制交给功能块615。功能块615根据P1进行参考序列0中的模板匹配以获取P0,并将控制交给功能块618。功能块618计算P=(P0+P1)/2,并将控制交给判定块621。判定块621确定P1的率失真成本,即Rd(P1)是否小于P的率失真成本,即Rd(P)。如果是,则将控制交给功能块624。否则,将控制交给功能块657。
功能块624设置bi_tmp_flag=0,设置Prediction=P1,并将控制交给功能块642。
功能块642计算残差,并将控制交给功能块645。功能块645计算预测的率失真,即Rd(Prediction),并将控制交给功能块648。功能块648进行模式选择,并将控制交给功能块651。功能块651编码运动向量Mv和其它语法,并将控制交给功能块654。功能块654编码残差,并将控制交给结束块699。
功能块657设置bi_tmp_flag=1,设置Prediction=P,并将控制交给功能块642。
功能块627进行参考序列0中的运动估计以获取预测P0和运动向量Mv,并将控制交给功能块630。功能块630根据P0进行参考序列1中的模板匹配,以获取P1,并将控制交给功能块633。功能块633计算P=(P0+P1)/2,并将控制交给判定块636。判定块636确定P0的率失真成本,即Rd(P0)是否小于P的率失真成本,即Rd(P)。如果是,则将控制交给功能块639。否则,将控制交给功能块660。
功能块639设置bi_tmp_flag=0,设置Prediction=P0,并将控制交给功能块642。
功能块660设置bi_tmp_flag=1,设置Prediction=P,并将控制交给功能块642。
功能块663使用非TMP模式编码,并将控制交给功能块648。
转到图7,使用结合单次参考序列预测(单预测)的模板匹配预测的一种视频解码方法用标号700总体表示。该方法700包括将控制交给功能块706的开始块703。功能块706分析语法,并将控制交给判定块709。判定块709确定当前模式是否是模板匹配预测(TMP)模式。如果是,则将控制交给功能块712。否则,将控制交给功能块751。
功能块712解码运动向量Mv、残差和bi_tmp_flag,并将控制交给判定块715。判定块715确定显示运动估计方向。如果显示运动估计方向是向后(BAK),则将控制交给功能块718。否则,将控制交给功能块730。
功能块718利用Mv获取参考序列1中的P1,并将控制交给判定块721。判定块721确定bi_tmp_flag=1是否成立。如果是,则将控制交给功能块724。否则,将控制交给功能块745。
功能块724根据P1进行参考序列0中的模板匹配以获取P0,并将控制交给功能块727。功能块727计算Prediction=(P0+P1)/2,并将控制交给功能块742。
功能块742将残差加入预测中,补偿当前块,并将控制交给结束块799。
功能块745设置Prediction=P0,并将控制交给功能块742。
功能块730利用Mv获取参考序列0中的P0,并将控制交给判定块733。判定块733确定bi_tmp_flag=1是否成立。如果是,则将控制交给功能块736。否则,将控制交给功能块748。
功能块736根据P0进行参考序列1中的模板匹配以获取P1,并将控制交给功能块739。功能块739计算Prediction=(P0+P1)/2,并将控制交给功能块742。
功能块748设置Prediction=P0,并将控制交给功能块742。
功能块751使用非TMP模式解码,并将控制交给结束块799。
第2实施例:结合双预测的TMP
在一个实施例中,进行传统双预测,然后针对一个参考序列中的每个预测,我们可以在其它参考序列中找到它的相应模板匹配预测。最终结束可以是3或4个假设预测。我们应该注意到,在这种手段中,当启用多个参考画面时,我们不将模板匹配预测限制在与用于显性预测的参考画面相同的参考画面。图8示出了这样的例子。转到图8,结合双预测的模板匹配预测的一个例子用标号800总体表示。结合双预测的模板匹配预测800涉及当前帧810、序列0中的参考帧1820、序列0中的参考帧0830、和序列1中的参考帧840。当前帧810包括目标块811,序列0中的参考帧1820包括预测821(也指定为“P3”),序列0中的参考帧0830包括预测831(也指定为“P3”)和预测832(也指定为“P0”),以及序列1中的参考帧840包括预测841(也指定为“P1”)和预测842(也指定为“P2”)。我们首先进行参考序列0中的运动估计以获取P0和参考序列1中的运动估计以获取P1,然后我们将P0用作模板在参考序列1中搜索以获取P2,并将P1用作模板在参考序列0中搜索以获取P3。当使用多个参考画面时,P3和P0无需处在同一参考画面中。运动向量MV0用于表示目标块811与预测832之间的运动,和运动向量MV1用于表示目标块811与预测841之间的运动。
这种手段可以容易地与像,例如,但不局限于,模式M×NBI或直接模式的MPEG-4AVC标准的双预测模式结合,其中,M,N=16,8,4,和BI代表双预测。我们可以在宏块水平或子宏块水平上加上标志,以规定当将模板匹配预测用于这种模式时进行多少种假设。
multi_tmp_mode等于0规定应用传统双预测。multi_tmp_mode等于1规定应用3种假设,并且进行传统双预测,以及将序列0的预测用作模板和在序列1中搜索的模板匹配预测。multi_tmp_mode等于2规定应用3种假设,并且进行传统双预测,以及将序列1的预测用作模板和在序列0中搜索的模板匹配预测。multi_tmp_mode等于3规定应用4种假设,并且进行传统双预测,以及将序列1的预测用作模板和在序列0中搜索的模板匹配预测、和将序列0的预测用作模板和在序列1中搜索的模板匹配预测。
依照一个实施例的16×16BI的一个示范性编码过程例示如下:
(1)对参考序列0中的16×16宏块进行运动估计以获取P0,对参考序列1中的16×16宏块进行运动估计以获取P1,并对(P0+P1)/2计算RDcost。
(2)将P0用作模板在参考序列1中搜索以获取P2,并对(P0+P1+P2)/3计算RDcost。
(3)将P1用作模板在参考序列0中搜索以获取P3,并对(P0+P1+P3)/3计算RDcost。
(4)对(P0+P1+P2+P3)/4计算RDcost。
(5)比较来自(1)、(2)、(3)和(4)的RDcost,
如果(1)的RDcost最小,则将multi_tmp_mode设置成0。
如果(2)的RDcost最小,则将multi_tmp_mode设置成1。
如果(3)的RDcost最小,则将multi_tmp_mode设置成2。
如果(4)的RDcost最小,则将multi_tmp_mode设置成3。
依照一个实施例的16×16BI的相应解码过程例示如下:
(1)分析和解码multi_tmp_mode的语法以及16×16BI的运动向量;
(2)对参考序列0中的16×16宏块进行运动补偿以获取P0,并且对参考序列1中的16×16宏块进行运动补偿以获取P1
(3)如果multi_tmp_mode=0,那么,最终预测是(P0+P1)/2;否则,
(4)如果multi_tmp_mode=1,那么,将P0用作模板在参考序列1中搜索以获取P2,并获取像(P0+P1+P2)/3那样的最终预测;
(5)如果multi_tmp_mode=2,那么,将P1用作模板在参考序列0中搜索以获取P3,并获取像(P0+P1+P3)/3那样的最终预测;以及
(6)否则,获取像(P0+P1+P2+P3)/4那样的最终预测。
转到图9,使用结合双预测的模板匹配预测的一种视频编码方法用标号900总体表示。该方法900包括将控制交给判定块906的开始块903。判定块906确定当前模式是否是模板匹配预测(TMP)模式。如果是,则将控制交给功能块909。否则,将控制交给功能块954。
功能块909进行参考序列0中的运动估计,以获取预测P0和运动向量Mv0,并将控制交给功能块912。功能块912进行参考序列1中的运动估计,以获取预测P1和运动向量Mv1,并将控制交给功能块915。功能块915根据P0进行参考序列1中的模板匹配以获取P2,并将控制交给功能块918。功能块918根据P1进行参考序列0中的模板匹配以获取P3,并将控制交给功能块921。功能块921计算Pred0=(P0+P1)/2,Pred1=(P0+P1+P2)/3,Pred2=(P0+P1+P3)/3和Pred3=(P0+P1+P2+P3)/4,并将控制交给判定块924。判定块924确定Pred0、Pred1、Pred2和Pred3当中的哪个预测提供最小率失真(Rd)。如果Pred0提供最小Rd,则将控制交给功能块927。如果Pred1提供最小Rd,则将控制交给功能块930。如果Pred2提供最小Rd,则将控制交给功能块933。如果Pred3提供最小Rd,则将控制交给功能块936。
功能块927设置Multi_TMP_Mode=0,并将控制交给功能块939。
功能块930设置Multi_TMP_Mode=1,并将控制交给功能块939。
功能块933设置Multi_TMP_Mode=2,并将控制交给功能块939。
功能块936设置Multi_TMP_Mode=3,并将控制交给功能块939。
功能块939计算残差,并将控制交给功能块942。功能块942计算预测的率失真成本,即Rd(Prediction),并将控制交给功能块945。功能块945进行模式选择,并将控制交给功能块948。功能块948编码运动向量和其它语法,并将控制交给功能块951。功能块951编码残差,并将控制交给结束块999。
功能块954使用非TMP模式编码,并将控制交给功能块945。
转到图10,使用结合双预测的模板匹配预测的一种视频解码方法用标号1000总体表示。该方法1000包括将控制交给功能块1006的开始块1003。功能块1006分析语法,并将控制交给判定块1009。判定块1009确定当前模式是否是模板匹配预测(TMP)模式。如果是,则将控制交给功能块1012。否则,将控制交给功能块1045。
功能块1012进行运动补偿以获取序列0中的P0和序列1中的P1,并将控制交给判定块1015。判定块1015确定哪一种Multi_TMP_Mode。如果Multi_TMP_Mode是模式0,则将控制交给功能块1018。如果Multi_TMP_Mode是模式1,则将控制交给功能块1021。如果Multi_TMP_Mode是模式2,则将控制交给功能块1027。如果Multi_TMP_Mode是模式3,则将控制交给功能块1033。
功能块1018计算Pred=(P0+P1)/2,并将控制交给功能块1042。
功能块1021根据P0进行参考序列1中的模板匹配以获取P2,并将控制交给功能块1024。功能块1024计算Pred=(P0+P1+P2)/2,并将控制交给功能块1042。
功能块1027根据P1进行参考序列0中的模板匹配以获取P3,并将控制交给功能块1030。功能块1030计算Pred=(P0+P1+P3)/2,并将控制交给功能块1042。
功能块1033根据P0进行参考序列1中的模板匹配以获取P2,并将控制交给功能块1036。功能块1036根据P1进行参考序列0中的模板匹配以获取P3,并将控制交给功能块1039。功能块1039计算Pred=(P0+P1+P2+P3)/2,并将控制交给功能块1042。
功能块1042将残差加入预测,补偿当前块,并将控制交给结束块1099。
功能块1045使用非TMP模式解码,并将控制交给结束块1099。
在另一个实施例中,我们仍然使用bi_tmp-flag,其中bi_tmp_flag等于1规定最大(多达4个)不同运动补偿预测的多假设运动补偿预测。
在又一个实施例中,我们推广来自第一实施例的概念,但我们将模板设置成两个预测算子的平均值P2=(P0+P1)/2,然后我们使用这个模板从两个序列中的参考画面中搜索模板匹配预测P3。最后,我们求模板和模板匹配预测的平均(P2+P3)/2。
转到图11,使用结合双预测的模板匹配预测的另一种视频编码方法用标号1100总体表示。该方法1100包括将控制交给判定块1106的开始块1103。判定块1106确定当前模式是否是模板匹配预测(TMP)模式。如果是,则将控制交给功能块1109。否则,将控制交给功能块1145。
功能块1109进行参考序列0中的运动估计,以获取预测P0和运动向量Mv0,并将控制交给功能块1112。功能块1112进行参考序列1中的运动估计,以获取预测P1和运动向量Mv1,并将控制交给功能块1115。功能块1115设置模板P2=(P0+P1)/2,进行两个参考序列中的模板匹配以获取P3,并将控制交给功能块1118。功能块1118计算Pred0=(P0+P1)/2和Pred1=(P2+P3)/2,并将控制交给判定块1121。判定块1121确定哪个预测提供最小率失真(Rd)。如果Pred0提供最小Rd,则将控制交给功能块1124。如果Pred1提供最小Rd,则将控制交给功能块1127。
功能块1124设置bi_tmp_flag=0,并将控制交给功能块1130。
功能块1130计算残差,并将控制交给功能块1133。功能块1133计算预测的率失真,即Rd(Prediction),并将控制交给功能块1136。功能块1136进行模式选择,并将控制交给功能块1139。功能块1139编码运动向量和其它语法,并将控制交给功能块1142。功能块1142编码残差,并将控制交给结束块1199。
功能块1127设置bi_tmp_flag=1,并将控制交给功能块1130。
功能块1145使用非TMP模式编码,并将控制交给功能块1136。
转到图12,使用结合双预测的模板匹配预测的另一种视频解码方法用标号1200总体表示。该方法包括将控制交给功能块1210的开始块1205。功能块1210分析语法,并将控制交给判定块1215。判定块1215确定当前模式是否是TMP模式。如果是,则将控制交给功能块1220。否则,将控制交给功能块1250。
功能块1220进行运动补偿以获取序列0中的P0和序列1中的P1,并将控制交给判定块1225。判定块1225确定bi_tmp_flag的当前值等于0还是1。如果bi_tmp_flag的当前值等于0,则将控制交给功能块1230。否则,将控制交给功能块1235。
功能块1230计算Pred=(P0+P1)/2,并将控制交给功能块1245。
功能块1245将残差加入预测中,补偿当前块,并将控制交给结束块1299。
功能块1235设置模板P2=(P0+P1)/2,进行两个参考序列中的模板匹配以获取P3,并将控制交给功能块1240。功能块1240计算Pred=(P2+P3)/2,并将控制交给功能块1245。
功能块1250使用非TMP模式解码,并将控制交给结束块1299。
类似地,我们可以利用这种方法获取一个或多个模板匹配预测。此外,在另一个实施例中,可以通过如下平均获取最终预测:(P0+P1+P3)/3。另外的实施例可以考虑N个与P2最相似的小块的平均,和除了其它可能性之外,最终预测算子可以是如下平均:(P2+P3+...+PN)/(N-1)或(P0+P1+P3+...+PN)/N。
我们应该注意到,在这个实施例中,如果模板匹配预测与运动补偿预测相同,我们无需多加任何模板匹配预测,即所有多假设运动补偿预测都应该不同。
第3实施例:结合多个参考画面的模板匹配预测
在MPEG-4AVC标准中,可以应用多个参考画面来进一步提高编码效率。因此,我们无需将本发明限制在上面针对第1实施例和第2实施例所述的不同参考序列上。我们可以从一个参考画面中获取模板,然后在同一参考画面或处在或未处在同一画面序列中的其它参考画面中进行模板匹配预测搜索。这可以使我们利用一个参考序列实现本发明。也可以使我们对任意个假设运动补偿预测实现本发明。转到图13,结合多个参考画面的模板匹配预测的一个例子用标号1300总体表示。结合多个参考画面的模板匹配预测1300涉及当前帧1310、序列0中的参考帧11320、和序列0中的参考帧01330。当前帧1310包括目标块1311,序列0中的参考帧11320包括预测1321(也指定为“P1”),以及序列0中的参考帧01330包括预测1331(也指定为“P0”)。运动向量1340用于表示目标块1311与预测1331之间的运动。我们首先进行运动估计以获取参考序列0中的参考帧0中的P0。然后我们将P0用作模板在参考序列0中的其它参考画面(参考帧1)中搜索以获取P1
当使用多个参考画面时,这种手段可以容易地与MPEG-4AVC标准的P画面中的预测模式结合。例如,该手段可以用于M×N模式或跳跃模式,其中,M或N可以等于16,8,的4的任何一个。我们可以在宏块水平或子宏块水平上加上标志,以指示当将模板匹配预测用于这种模式时进行多少种假设。
bi_tmp_flag等于1规定应用使用单预测和模板匹配预测的双预测。bi_tmp_flag等于0规定应用单预测。
依照一个实施例的16×16的一个示范性编码过程例示如下:
(1)对参考序列0中的16×16宏块进行运动估计以获取P0,并对P0计算RDcost。
(2)将P0用作模板在参考序列0的其它参考画面中搜索以获取P1,并对(P0+P1)/2计算RDcost。
(3)比较来自(1)和(2)的RDcost并设置bi_tmp_flag。如果(2)的RDcost小于(1)的RDcost,那么设置成bi_tmp_flag=1;否则,设置成bi_tmp_flag=0。
依照一个实施例的16×16的相应解码过程例示如下:
(1)分析和解码bi_tmp_fag的语法以及16×16的运动向量;
(2)对参考序列0中的16×16宏块进行运动补偿以获取P0
(3)如果bi_tmp_flag=0,则停止;否则,
(4)将P0用作模板在参考序列0的其它参考画面中搜索以获取P1,并获取像0.5(P0+P1)那样的最终预测。
转到图14,使用结合多个参考画面的模板匹配预测的一种视频编码方法用标号1400总体表示。该方法1400包括将控制交给判定块1410的开始块1405。判定块1410确定当前模式是否是TMP模式。如果是,则将控制交给功能块1415。否则,将控制交给功能块1470。
功能块1415进行参考序列0中的运动估计,以获取预测P0和运动向量Mv,并将控制交给功能块1420。功能块1420根据P0进行序列0的其它参考画面中的模板匹配以获取P1,并将控制交给功能块1425。功能块1425计算P=(P0+P1)/2,并将控制交给判定块1430。判定块1430确定预测P0的率失真成本是否小于预测P的率失真成本,即Rd(P0)<Rd(P)是否成立。如果是,则将控制交给功能块1435。否则,将控制交给功能块1465。
功能块1435设置bi_tmp_flag=0,设置Prediction=P0,并将控制交给功能块1440。
功能块1440计算残差,并将控制交给功能块1445。功能块1445计算Rd(Prediction),并将控制交给功能块1450。功能块1450进行模式选择,并将控制交给功能块1455。功能块1455编码运动向量Mv和其它语法,并将控制交给功能块1460。功能块1460编码残差,并将控制交给结束块1499。
功能块1465设置bi_tmp_flag=1,设置Prediction=P,并将控制交给功能块1440。
功能块1470使用非TMP模式编码,并将控制交给功能块1450。
转到图15,使用结合多个参考画面的模板匹配预测的一种视频解码方法用标号1500总体表示。该方法1500包括将控制交给功能块1510的开始块1505。功能块1510分析语法,并将控制交给判定块1515。判定块1515确定当前模式是否是TMP模式。如果是,则将控制交给功能块1520。否则,将控制交给功能块1555。
功能块1520解码运动向量Mv、残差和bi_tmp_flag,并将控制交给功能块1525。功能块1525利用运动向量Mv获取参考序列0中的P0,并将控制交给判定块1530。判定块1530确定Bi_TMP_Flag是否等于1。如果是,则将控制交给功能块1535。否则,将控制交给功能块1550。
功能块1535根据P0进行序列0的其它参考画面中的模板匹配以获取P1,并将控制交给功能块1540。功能块1540计算Prediction=(P0+P1)/2,并将控制交给功能块1545。
功能块1545将残差加入预测中,补偿当前块,并将控制交给结束块1599。
功能块1550设置Prediction=P0,并将控制交给功能块1545。
功能块1555使用非TMP模式解码,并将控制交给结束块1599。
第4实施例:对于帧内画面编码结合定向帧内预测或位移帧内预测的TMP
在这个实施例中,对于帧内画面编码,我们可以使用MPEG-4AVC标准中的定向帧内预测,或使用位移帧内预测(DIP)填充目标块的模板。然后,我们通过结合模板搜索预测和定向/位移帧内预测应用多假设预测。
转到图16,将模板匹配预测用于帧内预测的另一种视频编码方法用标号1600总体表示。该方法1600包括将控制交给判定块1610的开始块1605。判定块1610确定当前模式是否是TMP模式。如果是,则将控制交给判定块1615。否则,将控制交给功能块1675。
判定块1615确定是否允许定向/位移帧内预测(DIP)。如果是,则将控制交给功能块1620。否则,将控制交给功能块1680。
功能块1620进行帧内运动估计以获取P0,并将控制交给功能块1625。
功能块1625根据P0进行帧内模板匹配(即,从当前帧的重构区中搜索模板)以获取P1,并将控制交给功能块1630。功能块1630计算P=(P0+P1)/2,并将控制交给判定块1635。判定块1635确定预测P0的率失真成本是否小于预测P的率失真成本,即Rd(P0)<Rd(P)是否成立。如果是,则将控制交给功能块1640。否则,将控制交给功能块1670。
功能块1640设置bi_tmp_flag=0,设置Pred=P0,并将控制交给功能块1645。
功能块1645计算残差,并将控制交给功能块1650。功能块1650计算Rd(Pred),并将控制交给功能块1655。功能块1655进行模式选择,并将控制交给功能块1660。功能块1660编码预测模式、运动向量和其它语法,并将控制交给功能块1665。功能块1665编码残差,并将控制交给结束块1699。
功能块1670设置bi_tmp_flag=1,设置Pred=P,并将控制交给功能块1645。
功能块1675使用非TMP模式编码,并将控制交给功能块1655。
转到图17,使用结合多个参考画面的模板匹配预测的另一种视频解码方法用标号1700总体表示。该方法1700包括将控制交给功能块1710的开始块1705。功能块1710分析语法,并将控制交给判定块1715。判定块1715确定当前模式是否是TMP模式。如果是,则将控制交给功能块1720。否则,将控制交给功能块1760。
功能块1720确定是否启用定向/位移帧内预测(DIP)。如果是,则将控制交给功能块1725。否则,将控制交给功能块1750。
功能块1725进行帧内运动补偿以获取P0,并将控制交给判定块1730。
判定块1730确定bi_tmp_flag=1是否成立。如果是,则将控制交给功能块1735。否则,将控制交给功能块1755。
功能块1735根据P0进行帧内模板匹配以获取P1,并将控制交给功能块1740。功能块1740计算P=(P0+P1)/2,并将控制交给功能块1745。
功能块1745将残差加入P中,补偿当前块,并将控制交给结束块1799。
功能块1750进行帧内预测以获取P0,并将控制交给判定块1730。
功能块1755设置P=P0,并将控制交给功能块1745。
功能块1760使用非TMP模式帧内解码,并将控制交给结束块1799。模板搜索简化
依照本原理的一个实施例,在编码器和解码器两者上进行模板搜索。这种直截了当的方法是使用完全(强制)搜索。但是,这种方法的计算复杂性相当高。为了降低复杂性,我们将描述和建议几种简化搜索算法的方法。在一个这样的实施例中,我们使用像,例如,菱形搜索、对数搜索、增强预测带搜索(EPZS)等那样的快速搜索算法。在这样实施例的第二实施例中,假定运动是线性的,我们可以从模板使用的运动向量中推出模板搜索预测算子,并按照从参考画面到目标画面的距离和方向缩放模板搜索预测算子。然后,我们将这个预测算子用作中心并进行细小改进。
对其它编码块的影响
TMP的运动向量
在MPEG-4AVC标准中,从相邻块预测当前块的运动向量。因此,当前块的运动向量的值将影响将来相邻块。由于我们具有显性运动向量和模板搜索运动向量,所以在我们应该使用哪个运动向量方面引起了与模板搜索块有关的问题。在第一实施例中,在完成了模板搜索之后,我们可以检索该模板的显性运动向量。将这个运动向量用于将来运动向量预测。在第二实施例中,我们假定运动向量是像0,或当前块的中间预测算子那样的某预测算子。
分块滤波
对于分块滤波,在第一实施例中,我们可以与显性运动估计块相同地对待模板匹配预测块,并像上述那样将运动向量用于模板匹配预测。然后,不改变分块过程。在第二实施例中,由于模板匹配预测具有与显性运动估计块不同的特性,所以我们可以相应调整块长、滤波类型、和/或滤波长度。
独立分析
为了将分析与解码过程分开,我们不能在分析时进行模板搜索。因此,在分析过程中,对于模板匹配预测的运动向量推出,如果使用TMP的运动向量的第1实施例(如上所述),那么,我们可以将第2实施例用于涉及通过其运动向量预测算子设置第二运动向量的分析,并且将第1实施例用于真正解码。
表1示出了依照本原理一个实施例的示范性切片首标语法。表2示出了依照本原理一个实施例的示范性宏块层语法。
表1
slice_header(){ C 描述符
first_mb-in_slice 2 ue(v)
slice_type 2 ue(v)
pic_parameter_set_id 2 ue(v)
...
if(slice_type!=1)
tmp_enable_flag 2 u(1)
...
表2
Figure GSB00001039314800241
下文将更详细描述来自表1和2的一些语法元素的语义。
tmp_enable_flag等于1规定对切片启用模板匹配预测。tmp_enable_flag等于0规定不对切片启用模板匹配预测。
bi_tmp_flag等于0规定不对宏块启用模板匹配预测。bi_tmp_flag等于1规定对宏块启用模板匹配预测。当bi_tmp_flag等于1时,对单个(单)预测模式应用单预测和模板匹配预测,并且对双向预测模式应用最大(多达4个)不同运动补偿预测的多假设运动补偿预测。
现在描述本发明的许多附带优点/特征的一些附带优,点/特征,其中一些上面已经提及。例如,一个优点/特征是含有编码器的装置,所述编码器通过确定目标块的至少一个预测算子并且分别将至少一个预测算子用作模板来搜索目标块的至少一个另外预测算子,编码画面中的目标块。
另一个优点/特征是如上所述的含有编码器的装置,其中至少一个预测算子是帧内预测算子、帧间预测算子、或它们的组合。
又一个优点/特征是如上所述的其中至少一个预测算子是帧内预测算子、帧间预测算子、或它们的组合的含有编码器的装置,其中至少一个预测算子的辅助信息是隐性编码和显性编码的至少一种。
再一个优点/特征是如上所述的含有编码器的装置,其中使用模板匹配预测过程和多假设运动补偿预测过程获取至少一个另外预测算子。
此外,另一个优点/特征是如上所述的其中使用模板匹配预测过程和多假设运动补偿预测过程获取至少一个另外预测算子的含有编码器的装置,其中使用显性运动估计过程来确定至少一个预测算子,以及使用模板匹配预测过程对多个参考序列搜索至少一个另外预测算子。
并且,另一个优点/特征是如上所述的其中使用显性运动估计过程和模板匹配预测过程的含有编码器的装置,其中显性运动估计过程局限于多个参考序列的特定一个,和模板匹配预测过程局限于多个参考序列的不同一个。
此外,另一个优点/特征是如上所述的其中使用显性运动估计过程和模板匹配预测过程的含有编码器的装置,其中至少一个预测算子包括通过分别对多个参考序列当中的第一参考序列和第二参考序列应用显性运动估计过程和隐性运动估计过程而获取的第一预测算子和第二预测算子,和其中至少一个另外预测算子包括关于第二参考序列和第一参考序列在模板匹配预测过程中分别利用第一预测算子和第二预测算子而获取的第一另外预测算子和第二另外预测算子。
另外,另一个优点/特征是如上所述的其中至少一个预测算子包括第一预测算子和第二预测算子以及至少一个另外预测算子包括第一另外预测算子和第二另外预测算子的含有编码器的装置,其中第一预测算子和第二另外预测算子处在不同参考画面中。
此外,另一个优点/特征是如上所述的其中使用显性运动估计过程和模板匹配预测过程的含有编码器的装置,其中显性运动估计过程用在与多个参考序列的特定一个相对应的特定一个参考画面中,以及模板匹配预测过程用在特定一个参考画面或与多个参考序列的不同一个相对应的不同参考画面中。
并且,另一个优点/特征是如上所述的其中使用模板匹配预测过程和多假设运动补偿预测过程获取至少一个另外预测算子的含有编码器的装置,其中使用运动向量预测算子推出或估计至少一个预测。
本领域的普通技术人员可以根据本文的教导轻易地弄清本原理的这些和其它特征和优点。应该明白,本原理的教导可以以硬件、软件、固件、专用处理器、或它们的组合的各种形式实现。
最可取的是,将本原理的教导实现成硬件和软件的组合。此外,软件可以实现成有形地具体化在程序存储单元上的应用程序。应用程序可以上载到包含任何适用结构的机器上并由它执行。优选地,在含有像一个或多个中央处理单元(“CPU”)、随机访问存储器(“RAM”)、和输入/输出(“I/O”)接口那样的硬件的计算机平台上实现该机器。该计算机平台还可以包括操作***和微指令代码。本文所述的各种过程和功能可以是可由CPU执行的部分微指令代码或部分应用程序,或它们的任何组合。另外,像附加数据存储单元和打印单元那样的各种其它***单元可以与计算机平台连接。
还应该明白,因为描绘在附图中的一些组分***部件和方法最好用软件实现,所以***部件或过程功能块之间的实际连接可能随编程本原理的方式而异。给定本文的教导,本领域的普通技术人员能够设想出本原理的这些和类似实现或配置。
尽管本文参照附图描述了一些例示性实施例,但应该明白,本原理不局限于那些确切实施例,本领域的普通技术人员可以不偏离本原理的精神或范围地实施各种改变和修正。所有这样的改变和修正都要包括在如所附权利要求书所述的本原理的范围之内。

Claims (40)

1.一种用于视频编码的装置,包含:
编码器(300),用于通过确定目标块的多个预测算子并且分别将多个预测算子用作模板匹配预测过程中的模板来搜索目标块的多个另外预测算子,编码画面中的目标块,所述多个预测算子被包括在参考画面中,其中在多假设运动补偿预测过程中使用所述多个预测算子和所述另外预测算子来预测目标块。
2.如权利要求1所述的装置,其中至少一个预测算子是帧内预测算子、帧间预测算子、或它们的组合。
3.如权利要求2所述的装置,其中至少一个预测算子的辅助信息是隐性编码和显性编码的至少一种。
4.如权利要求1所述的装置,其中使用模板匹配预测过程和多假设运动补偿预测过程获取至少一个另外预测算子。
5.如权利要求4所述的装置,其中使用显性运动估计过程来确定至少一个预测算子,以及使用模板匹配预测过程对多个参考序列搜索至少一个另外预测算子。
6.如权利要求5所述的装置,其中显性运动估计过程局限于多个参考序列的特定一个,和模板匹配预测过程局限于多个参考序列的不同一个。
7.如权利要求5所述的装置,其中至少一个预测算子包含通过分别对多个参考序列当中的第一参考序列和第二参考序列应用显性运动估计过程和隐性运动估计过程而获取的第一预测算子和第二预测算子,和其中至少一个另外预测算子包含关于第二参考序列和第一参考序列在模板匹配预测过程中分别利用第一预测算子和第二预测算子而获取的第一另外预测算子和第二另外预测算子。
8.如权利要求7所述的装置,其中第一预测算子和第二另外预测算子处在不同参考画面中。
9.如权利要求5所述的装置,其中显性运动估计过程用在与多个参考序列的特定一个相对应的特定一个参考画面中,而模板匹配预测过程用在特定一个参考画面或与多个参考序列的不同一个相对应的不同参考画面中。
10.如权利要求4所述的装置,其中使用运动向量预测算子推出或估计至少一个预测。
11.一种用于视频编码的方法,包含:
通过确定目标块的多个预测算子并且分别将多个预测算子用作模板匹配预测过程中的模板来搜索(615,630,915,918,1115,1420,1625)目标块的另外预测算子,编码画面中的目标块,所述多个预测算子被包括在参考画面中,其中在多假设运动补偿预测过程中使用所述多个预测算子和所述另外预测算子来预测目标块。
12.如权利要求11所述的方法,其中至少一个预测算子是帧内预测算子(1620,1680)、帧间预测算子(612,627,909,912,1109,1112,1415)、或它们的组合(1115)。
13.如权利要求12所述的方法,其中至少一个预测算子的辅助信息是隐性编码和显性编码(651,948,1139,1455,1660)的至少一种。
14.如权利要求11所述的方法,其中使用模板匹配预测过程和多假设运动补偿预测过程(618,633,921,1118,1425,1630)获取至少一个另外预测算子。
15.如权利要求14所述的方法,其中使用显性运动估计过程(612,627,909,912,1109,1112,1415)来确定至少一个预测算子,以及使用模板匹配预测过程(615,630,915,918,1115,1420,1625)对多个参考序列搜索至少一个另外预测算子。
16.如权利要求15所述的方法,其中显性运动估计过程(612,627,909,912,1109,1112,1415)局限于多个参考序列的特定一个,和模板匹配预测过程(615,630,915,918,1115,1625)局限于多个参考序列的不同一个。
17.如权利要求15所述的方法,其中至少一个预测算子包含通过分别对多个参考序列当中的第一参考序列和第二参考序列应用显性运动估计过程(612,627,909,912,1109,1112,1415)和隐性运动估计过程(615,630,915,918,1115,1625)而获取的第一预测算子和第二预测算子,和其中至少一个另外预测算子包含关于第二参考序列和第一参考序列在模板匹配预测过程(615,630,915,918,1115,1625)中分别利用第一预测算子和第二预测算子而获取的第一另外预测算子和第二另外预测算子。
18.如权利要求17所述的方法,其中第一预测算子和第二另外预测算子处在不同参考画面(1420)中。
19.如权利要求15所述的方法,其中显性运动估计过程(612,627,909,912,1109,1112,1415)用在与多个参考序列的特定一个相对应的特定一个参考画面中,而模板匹配预测过程(615,630,915,918,1115,1420,1625)用在特定一个参考画面或与多个参考序列的不同一个相对应的不同参考画面中。
20.如权利要求14所述的方法,其中使用运动向量预测算子推出或估计至少一个预测。
21.一种用于视频解码的装置,包含:
解码器(400),用于通过确定目标块的多个预测算子并且分别将多个预测算子用作模板匹配预测过程中的模板来搜索目标块的多个另外预测算子,解码画面中的目标块,所述多个预测算子被包括在参考画面中,其中在多假设运动补偿预测过程中使用所述多个预测算子和所述另外预测算子来预测目标块。
22.如权利要求21所述的装置,其中至少一个预测算子是帧内预测算子、帧间预测算子、或它们的组合。
23.如权利要求22所述的装置,其中至少一个预测算子的辅助信息是推出和显性解码的至少一种。
24.如权利要求21所述的装置,其中使用模板匹配预测过程和多假设运动补偿预测过程获取至少一个另外预测算子。
25.如权利要求24所述的装置,其中使用显性运动估计过程来确定至少一个预测算子,以及使用模板匹配预测过程对多个参考序列搜索至少一个另外预测算子。
26.如权利要求25所述的装置,其中显性运动估计过程局限于多个参考序列的特定一个,和模板匹配预测过程局限于多个参考序列的不同一个。
27.如权利要求25所述的装置,其中至少一个预测算子包含通过分别对多个参考序列当中的第一参考序列和第二参考序列应用显性运动估计过程和隐性运动估计过程而获取的第一预测算子和第二预测算子,和其中至少一个另外预测算子包含关于第二参考序列和第一参考序列在模板匹配预测过程中分别利用第一预测算子和第二预测算子而获取的第一另外预测算子和第二另外预测算子。
28.如权利要求27所述的装置,其中第一预测算子和第二另外预测算子处在不同参考画面中。
29.如权利要求25所述的装置,其中显性运动估计过程用在与多个参考序列的特定一个相对应的特定一个参考画面中,而模板匹配预测过程用在特定一个参考画面或与多个参考序列的不同一个相对应的不同参考画面中。
30.如权利要求24所述的装置,其中使用运动向量预测算子推出或估计至少一个预测。
31.一种用于视频解码的方法,包含:
通过确定目标块的多个预测算子并且分别将多个预测算子用作模板匹配预测过程中的模板来搜索目标块的多个另外预测算子(724,736,1021,1027,1235,1535,1735),解码画面中的目标块,所述多个预测算子被包括在参考画面中,其中在多假设运动补偿预测过程中使用所述多个预测算子和所述另外预测算子来预测目标块。
32.如权利要求31所述的方法,其中至少一个预测算子是帧内预测算子(1725,1750)、帧间预测算子(718,730,1012,1220,1525)、或它们的组合。
33.如权利要求32所述的方法,其中至少一个预测算子的辅助信息是推出和显性解码(709,712,721,733,1009,1015,1215,1225,1515,1520,1715,1730)的至少一种。
34.如权利要求31所述的方法,其中使用模板匹配预测过程(724,736,1021,1027,1235,1535,1735)和多假设运动补偿预测过程(727,739,1018,1024,1030,1039,1230,1240,1540,1740)获取至少一个另外预测算子。
35.如权利要求34所述的方法,其中使用显性运动估计过程(718,730,1012,1220,1525)来确定至少一个预测算子,以及使用模板匹配预测过程(724,736,1021,1027,1235,1735)对多个参考序列搜索至少一个另外预测算子。
36.如权利要求35所述的方法,其中显性运动估计过程(718,730,1012,1220,1525)局限于多个参考序列的特定一个,和模板匹配预测过程(724,736,1021,1027,1235,1735)局限于多个参考序列的不同一个。
37.如权利要求35所述的方法,其中至少一个预测算子包含通过分别对多个参考序列当中的第一参考序列和第二参考序列应用显性运动估计过程(718,730,1012,1220,1525)和隐性运动估计过程(724,736,1021,1027,1235,1735)而获取的第一预测算子和第二预测算子,和其中至少一个另外预测算子包含关于第二参考序列和第一参考序列在模板匹配预测过程(724,736,1021,1027,1235,1735)中分别利用第一预测算子和第二预测算子而获取的第一另外预测算子和第二另外预测算子。
38.如权利要求37所述的方法,其中第一预测算子和第二另外预测算子处在不同参考画面(1535)中。
39.如权利要求35所述的方法,其中显性运动估计过程(718,730,1012,1220,1525)用在与多个参考序列的特定一个相对应的特定一个参考画面中,而模板匹配预测过程(724,736,1021,1027,1235,1535,1735)用在特定一个参考画面或与多个参考序列的不同一个相对应的不同参考画面中。
40.如权利要求34所述的方法,其中使用运动向量预测算子推出或估计至少一个预测。
CN200980122299.5A 2008-04-11 2009-04-07 视频编码和解码中模板匹配预测(tmp)的方法和装置 Active CN102067601B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US4419308P 2008-04-11 2008-04-11
US61/044,193 2008-04-11
PCT/US2009/002177 WO2009126260A1 (en) 2008-04-11 2009-04-07 Methods and apparatus for template matching prediction (tmp) in video encoding and decoding

Publications (2)

Publication Number Publication Date
CN102067601A CN102067601A (zh) 2011-05-18
CN102067601B true CN102067601B (zh) 2014-03-12

Family

ID=40934422

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200980122299.5A Active CN102067601B (zh) 2008-04-11 2009-04-07 视频编码和解码中模板匹配预测(tmp)的方法和装置

Country Status (7)

Country Link
US (1) US20110261882A1 (zh)
EP (1) EP2269379B1 (zh)
JP (1) JP5452584B2 (zh)
KR (1) KR101691199B1 (zh)
CN (1) CN102067601B (zh)
BR (1) BRPI0910477A2 (zh)
WO (1) WO2009126260A1 (zh)

Families Citing this family (84)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6765964B1 (en) 2000-12-06 2004-07-20 Realnetworks, Inc. System and method for intracoding video data
US8254469B2 (en) * 2008-05-07 2012-08-28 Kiu Sha Management Liability Company Error concealment for frame loss in multiple description coding
BRPI0918478A2 (pt) * 2008-09-04 2015-12-01 Thomson Licensing métodos e aparelho para refinamento de previsão usando previsão de movimento implícito
CN102160381A (zh) * 2008-09-24 2011-08-17 索尼公司 图像处理设备和方法
CN101686393B (zh) * 2008-09-28 2012-10-17 华为技术有限公司 应用于模板匹配的快速运动搜索方法及装置
US9247268B2 (en) 2009-03-06 2016-01-26 Thomson Licensing Method for predicting a block of image data by verifying condition relating temporal variation between image data of reference block and prediction block of previous reference block, decoding and coding devices implementing said method
CN102883160B (zh) * 2009-06-26 2016-06-29 华为技术有限公司 视频图像运动信息获取方法、装置及设备、模板构造方法
US8873626B2 (en) * 2009-07-02 2014-10-28 Qualcomm Incorporated Template matching for video coding
US9654792B2 (en) 2009-07-03 2017-05-16 Intel Corporation Methods and systems for motion vector derivation at a video decoder
US8917769B2 (en) * 2009-07-03 2014-12-23 Intel Corporation Methods and systems to estimate motion based on reconstructed reference frames at a video decoder
US8462852B2 (en) 2009-10-20 2013-06-11 Intel Corporation Methods and apparatus for adaptively choosing a search range for motion estimation
US20110002387A1 (en) * 2009-07-03 2011-01-06 Yi-Jen Chiu Techniques for motion estimation
US9781446B2 (en) * 2009-12-10 2017-10-03 Thomson Licensing Dtv Method for coding and method for decoding a block of an image and corresponding coding and decoding devices
KR20110068792A (ko) * 2009-12-16 2011-06-22 한국전자통신연구원 적응적 영상 부호화 장치 및 방법
KR101607948B1 (ko) * 2009-12-28 2016-04-01 삼성전자주식회사 영상 처리 장치 및 방법
KR101522850B1 (ko) * 2010-01-14 2015-05-26 삼성전자주식회사 움직임 벡터를 부호화, 복호화하는 방법 및 장치
AU2013202014A1 (en) * 2010-01-14 2013-04-18 Samsung Electronics Co., Ltd Method and apparatus for encoding and decoding motion vector
US8837592B2 (en) * 2010-04-14 2014-09-16 Mediatek Inc. Method for performing local motion vector derivation during video coding of a coding unit, and associated apparatus
JP2011259230A (ja) * 2010-06-09 2011-12-22 Jvc Kenwood Corp 動画像復号装置、動画像復号方法及び動画像復号プログラム
WO2011155171A1 (ja) * 2010-06-09 2011-12-15 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム、ならびに動画像復号装置、動画像復号方法及び動画像復号プログラム
JP2011259229A (ja) * 2010-06-09 2011-12-22 Jvc Kenwood Corp 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム
JP5711514B2 (ja) * 2010-12-14 2015-04-30 日本電信電話株式会社 符号化装置、復号装置、符号化方法、復号方法、符号化プログラム及び復号プログラム
KR101422422B1 (ko) 2010-12-21 2014-07-23 인텔 코오퍼레이션 Dmvd 처리 향상을 위한 시스템 및 방법
WO2012090425A1 (ja) * 2010-12-27 2012-07-05 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム、並びに動画像復号装置、動画像復号方法及び動画像復号プログラム
US9749657B2 (en) 2011-01-21 2017-08-29 Sharp Kabushiki Kaisha Buffer compression for motion vector competition
US9532050B2 (en) 2011-01-25 2016-12-27 Sun Patent Trust Moving picture coding method and moving picture decoding method
JP5982734B2 (ja) 2011-03-11 2016-08-31 ソニー株式会社 画像処理装置および方法
JP2012209706A (ja) * 2011-03-29 2012-10-25 Jvc Kenwood Corp 画像復号装置、画像復号方法及び画像復号プログラム
JP2012209705A (ja) * 2011-03-29 2012-10-25 Jvc Kenwood Corp 画像符号化装置、画像符号化方法及び画像符号化プログラム
WO2012140821A1 (ja) 2011-04-12 2012-10-18 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号化方法、動画像復号化装置、および動画像符号化復号化装置
EP3337172B1 (en) 2011-05-24 2020-09-09 Velos Media International Limited Image encoding method, image encoding apparatus
EP4213483A1 (en) 2011-05-27 2023-07-19 Sun Patent Trust Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
US8989271B2 (en) 2011-05-31 2015-03-24 Panasonic Intellectual Property Corporation Of America Decoding method and apparatus with candidate motion vectors
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
KR20120140592A (ko) 2011-06-21 2012-12-31 한국전자통신연구원 움직임 보상의 계산 복잡도 감소 및 부호화 효율을 증가시키는 방법 및 장치
WO2012177052A2 (ko) 2011-06-21 2012-12-27 한국전자통신연구원 인터 예측 방법 및 그 장치
PL2728878T3 (pl) 2011-06-30 2020-06-15 Sun Patent Trust Sposób dekodowania obrazów, sposób kodowania obrazów, urządzenie do dekodowania obrazów, urządzenie do kodowania obrazów oraz urządzenie do kodowania/dekodowania obrazów
JP5824148B2 (ja) * 2011-07-01 2015-11-25 サムスン エレクトロニクス カンパニー リミテッド 単一化された参照可能性確認過程を介してイントラ予測を伴うビデオ符号化方法及びその装置、ビデオ復号化方法及びその装置
MX2014000159A (es) 2011-07-02 2014-02-19 Samsung Electronics Co Ltd Metodo y aparato para la codificacion de video, y metodo y aparato para la decodificacion de video acompañada por inter prediccion utilizando imagen co-localizada.
MX341415B (es) 2011-08-03 2016-08-19 Panasonic Ip Corp America Metodo de codificacion de video, aparato de codificacion de video, metodo de decodificacion de video, aparato de decodificacion de video y aparato de codificacion/decodificacion de video.
CN108881903B (zh) 2011-10-19 2022-01-04 太阳专利托管公司 图像编码方法及装置、图像解码方法及装置、编解码装置
JP5485969B2 (ja) * 2011-11-07 2014-05-07 株式会社Nttドコモ 動画像予測符号化装置、動画像予測符号化方法、動画像予測符号化プログラム、動画像予測復号装置、動画像予測復号方法及び動画像予測復号プログラム
JP2013115583A (ja) * 2011-11-28 2013-06-10 Canon Inc 動画像符号化装置及びその制御方法並びにプログラム
WO2013095322A1 (en) * 2011-12-19 2013-06-27 Intel Corporation Exhaustive sub-macroblock shape candidate save and restore protocol for motion estimation
EP2615832A1 (en) * 2012-01-13 2013-07-17 Thomson Licensing Method and device for encoding a block of an image and corresponding reconstructing method and device
EP2615834A1 (en) 2012-01-16 2013-07-17 Thomson Licensing Dealiasing method and device for 3D view synthesis
KR101418096B1 (ko) * 2012-01-20 2014-07-16 에스케이 텔레콤주식회사 가중치예측을 이용한 영상 부호화/복호화 방법 및 장치
US9451288B2 (en) 2012-06-08 2016-09-20 Apple Inc. Inferred key frames for fast initiation of video coding sessions
US9635356B2 (en) * 2012-08-07 2017-04-25 Qualcomm Incorporated Multi-hypothesis motion compensation for scalable video coding and 3D video coding
US9547915B2 (en) * 2013-03-19 2017-01-17 Thomson Licensing Inter-image prediction method and device and corresponding coding method and apparatus
US9491460B2 (en) * 2013-03-29 2016-11-08 Qualcomm Incorporated Bandwidth reduction for video coding prediction
US10003818B2 (en) 2013-10-11 2018-06-19 Sony Corporation Video coding system with intra prediction mechanism and method of operation thereof
US10009629B2 (en) 2013-10-11 2018-06-26 Sony Corporation Video coding system with search range and method of operation thereof
JP2015082714A (ja) * 2013-10-22 2015-04-27 ソニー株式会社 画像処理装置及び画像処理方法
RU2690439C2 (ru) 2014-06-20 2019-06-03 Сони Корпорейшн Устройство и способ кодирования изображений и устройство и способ декодирования изображений
JP5922281B2 (ja) * 2015-04-17 2016-05-24 株式会社Nttドコモ 動画像予測符号化装置、動画像予測符号化方法、動画像予測復号装置及び動画像予測復号方法
WO2017121549A1 (en) * 2016-01-12 2017-07-20 Telefonaktiebolaget Lm Ericsson (Publ) Frequency based prediction
US10230961B2 (en) 2016-06-03 2019-03-12 Mediatek Inc. Method and apparatus for template-based intra prediction in image and video coding
US10397569B2 (en) * 2016-06-03 2019-08-27 Mediatek Inc. Method and apparatus for template-based intra prediction in image and video coding
WO2018021585A1 (ko) * 2016-07-26 2018-02-01 엘지전자 주식회사 영상 코딩 시스템에서 인트라 예측 방법 및 장치
CN106375764B (zh) * 2016-08-31 2018-04-10 中国科学技术大学 一种结合方向预测和块复制预测的视频帧内编码方法
JP6968228B2 (ja) * 2016-09-30 2021-11-17 華為技術有限公司Huawei Technologies Co., Ltd. インター予測を介する画像符号化および復号のための方法および装置
JP6700489B2 (ja) * 2016-09-30 2020-05-27 華為技術有限公司Huawei Technologies Co.,Ltd. インター予測を介する画像符号化および復号のための方法および装置
US10750190B2 (en) * 2016-10-11 2020-08-18 Lg Electronics Inc. Video decoding method and device in video coding system
WO2018120290A1 (zh) * 2016-12-26 2018-07-05 华为技术有限公司 一种基于模板匹配的预测方法及装置
CN109891882B (zh) * 2016-12-26 2021-05-11 华为技术有限公司 一种基于模板匹配的编解码方法及装置
WO2018120420A1 (zh) * 2016-12-26 2018-07-05 华为技术有限公司 一种基于模板匹配的预测方法及装置
EP3349451A1 (en) * 2017-01-11 2018-07-18 Thomson Licensing Method and apparatus for selecting a coding mode used for encoding/decoding a residual block
US10701366B2 (en) 2017-02-21 2020-06-30 Qualcomm Incorporated Deriving motion vector information at a video decoder
US10362332B2 (en) * 2017-03-14 2019-07-23 Google Llc Multi-level compound prediction
CN110832859B (zh) * 2017-07-11 2022-02-25 华为技术有限公司 一种基于模板匹配的解码方法及装置
CN113300877B (zh) * 2017-09-27 2022-07-22 华为技术有限公司 一种网络切片管理方法及设备
EP3777176A4 (en) * 2018-03-30 2022-08-17 Hulu, LLC TEMPLATE REFINED BI PREDICTION FOR VIDEO CODING
CN110337810B (zh) * 2018-04-02 2022-01-14 北京大学 用于视频处理的方法和设备
US11477474B2 (en) * 2018-06-08 2022-10-18 Mediatek Inc. Methods and apparatus for multi-hypothesis mode reference and constraints
CN112544082B (zh) * 2018-07-18 2023-12-15 寰发股份有限公司 一种视频编解码的帧间预测方法及装置
CN111050177B (zh) 2018-10-15 2021-07-20 腾讯科技(深圳)有限公司 视频编码、视频解码方法、装置、计算机设备和存储介质
BR112021007509A2 (pt) * 2018-10-27 2021-07-27 Huawei Technologies Co., Ltd. lista de mesclagem separada para candidatos de mesclagem de sub-bloco e harmonização de técnicas intra-inter para codificação de vídeo
WO2023020589A1 (en) * 2021-08-19 2023-02-23 Mediatek Singapore Pte. Ltd. Using template matching for refining candidate selection
US20230093043A1 (en) * 2021-09-22 2023-03-23 Tencent America LLC Method and apparatus for adaptive reordering for reference frames
WO2023090613A1 (ko) * 2021-11-19 2023-05-25 현대자동차주식회사 템플릿 매칭 기반의 인트라 예측을 사용하는 비디오 코딩을 위한 방법 및 장치
US20240022763A1 (en) * 2022-07-13 2024-01-18 Tencent America LLC Intra block copy (ibc) candidate list construction with motion information of intra template-matching prediction
WO2024122864A1 (ko) * 2022-12-06 2024-06-13 현대자동차주식회사 변위 부호 예측을 위한 템플릿 조정을 이용하는 비디오 코딩방법 및 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999026416A2 (en) * 1997-11-17 1999-05-27 Koninklijke Philips Electronics N.V. Motion-compensated predictive image encoding and decoding
CN101156452A (zh) * 2005-04-13 2008-04-02 汤姆逊许可公司 利用公共预测器的亮度和色度解码

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040001546A1 (en) * 2002-06-03 2004-01-01 Alexandros Tourapis Spatiotemporal prediction for bidirectionally predictive (B) pictures and motion vector prediction for multi-picture reference motion compensation
JP4213646B2 (ja) * 2003-12-26 2009-01-21 株式会社エヌ・ティ・ティ・ドコモ 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、及び画像復号プログラム。
US8085846B2 (en) * 2004-08-24 2011-12-27 Thomson Licensing Method and apparatus for decoding hybrid intra-inter coded blocks
JP4480156B2 (ja) * 2005-02-02 2010-06-16 キヤノン株式会社 画像処理装置及び方法
EP2453657A1 (en) * 2006-04-28 2012-05-16 NTT DoCoMo, Inc. Image predictive decoding device
JP5271271B2 (ja) * 2006-11-03 2013-08-21 サムスン エレクトロニクス カンパニー リミテッド 動きベクトル・トラッキングを利用した映像の符号化、復号化方法及び装置
KR20090095012A (ko) * 2008-03-04 2009-09-09 삼성전자주식회사 연속적인 움직임 추정을 이용한 영상 부호화, 복호화 방법및 장치

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1999026416A2 (en) * 1997-11-17 1999-05-27 Koninklijke Philips Electronics N.V. Motion-compensated predictive image encoding and decoding
CN101156452A (zh) * 2005-04-13 2008-04-02 汤姆逊许可公司 利用公共预测器的亮度和色度解码
CN101160972A (zh) * 2005-04-13 2008-04-09 汤姆逊许可公司 利用公共预测器的亮度和色度编码

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Decoder Side Motion Vector Derivation with Multiple Reference Pictures;Steffen Kamp et all;《STUDY GROUP 16 Question 6 Video Coding Experts Group (VCEG) 34th Meeting》;20080113;正文第1页第1段至第6页第1段、图1-图2 *
Mei-Juan Chen et all.Temporal Error Concealment Algorithm by Recursive Block-Matching Principle.《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》.2005,第15卷(第11期),
Steffen Kamp et all.Decoder Side Motion Vector Derivation with Multiple Reference Pictures.《STUDY GROUP 16 Question 6 Video Coding Experts Group (VCEG) 34th Meeting》.2008,
Temporal Error Concealment Algorithm by Recursive Block-Matching Principle;Mei-Juan Chen et all;《IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY》;20051130;第15卷(第11期);第1385-1393页 *

Also Published As

Publication number Publication date
KR20110009141A (ko) 2011-01-27
KR101691199B1 (ko) 2016-12-30
JP2011517227A (ja) 2011-05-26
CN102067601A (zh) 2011-05-18
US20110261882A1 (en) 2011-10-27
WO2009126260A1 (en) 2009-10-15
BRPI0910477A2 (pt) 2015-09-29
EP2269379A1 (en) 2011-01-05
JP5452584B2 (ja) 2014-03-26
EP2269379B1 (en) 2019-02-27

Similar Documents

Publication Publication Date Title
CN102067601B (zh) 视频编码和解码中模板匹配预测(tmp)的方法和装置
CN102098517B (zh) 用于确定解码视频块中的期望失真的方法及设备
CN101379835B (zh) 使用组合参考双向预测进行运动估计的方法和设备
CN105072449B (zh) 对图像进行解码的装置
CN102598667B (zh) 帧内预测模式的高效视频编码和解码的方法和装置
CN102687511B (zh) 运动信息的自适应编解码的方法和装置
CN102090062B (zh) 用于位移帧内预测和模板匹配的去块滤波
CN101390401B (zh) 借助伪影评价的提高的图像/视频质量
CN102204254B (zh) 使用隐式运动预测进行预测精细化的方法及装置
CN101023673B (zh) 具有利用局部亮度变化的加权预测的视频编解码器
CN102668566B (zh) 将dc帧内预测模式用于视频编码和解码的方法和装置
CN101953166B (zh) 被划分为像素块的图像或图像序列的编码和解码
CN101933329B (zh) 视频编码和解码中用于隐性块分割的方法与设备
CN102428702B (zh) 用于针对视频编码和解码的改进量化舍入偏移调节的方法和设备
CN105284117B (zh) 根据运动信息压缩方案通过层间运动信息预测对图像进行编码或解码的方法和设备
US20120269268A1 (en) Motion vector encoding/decoding method and device and image encoding/decoding method and device using same
CN101911708A (zh) 帧内预测视频的照明补偿方法和装置
CN105791823A (zh) 视频编码和解码的自适应模版匹配预测的方法和装置
CN104754355A (zh) 对运动矢量进行编码和解码的方法和设备
CN105306945A (zh) 一种监控视频的可伸缩浓缩编码方法和装置
CN102804774A (zh) 用于视频编解码的降低了复杂度的模板匹配预测方法和装置
CN101529912A (zh) 用于在多通路编码器中高效地进行第一通路编码的方法和设备
CN101573985A (zh) 用于视频预测编码的方法和装置以及用于视频预测解码的方法和装置
CN102893606A (zh) 帧内编码将像素指定给各组的块的方法和装置
CN109688411B (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20190130

Address after: Paris France

Patentee after: International Digital Madison Patent Holding Co.

Address before: I Si Eli Murli Nor, France

Patentee before: THOMSON LICENSING

Effective date of registration: 20190130

Address after: I Si Eli Murli Nor, France

Patentee after: THOMSON LICENSING

Address before: I Si Eli Murli Nor, France

Patentee before: THOMSON LICENSING

TR01 Transfer of patent right