CN102687511A - 运动信息的自适应编解码的方法和装置 - Google Patents

运动信息的自适应编解码的方法和装置 Download PDF

Info

Publication number
CN102687511A
CN102687511A CN2010800564771A CN201080056477A CN102687511A CN 102687511 A CN102687511 A CN 102687511A CN 2010800564771 A CN2010800564771 A CN 2010800564771A CN 201080056477 A CN201080056477 A CN 201080056477A CN 102687511 A CN102687511 A CN 102687511A
Authority
CN
China
Prior art keywords
motion vector
picture
precision
motion
functional block
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.)
Granted
Application number
CN2010800564771A
Other languages
English (en)
Other versions
CN102687511B (zh
Inventor
郭力伟
郑云飞
尹鹏
J.索尔
吕小安
许茜
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 CN102687511A publication Critical patent/CN102687511A/zh
Application granted granted Critical
Publication of CN102687511B publication Critical patent/CN102687511B/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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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

Landscapes

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

Abstract

本发明提供了运动信息的自适应编解码的方法和装置。一种装置包括使用运动矢量至少编码画面中的块的编码器(100)。将自适应运动矢量精度方案用于选择用于编码所述块的运动矢量的精度。选择运动矢量的精度的选择准则包含基于非率失真的准则。

Description

运动信息的自适应编解码的方法和装置
相关申请的交叉引用
本申请要求于2009年10月14日提交的美国临时申请序列号61/251,508的权益,其通过引用而被整体合并于此。
技术领域
本原理总地涉及视频编码和解码,并且更具体地涉及运动信息的自适应编解码的方法和装置。
背景技术
运动补偿是许多视频编码框架中的重要组成部分。运动补偿在将时间冗余度用于压缩目的的视频编码中起着关键作用。这是一种使用运动信息推断视频颜色数据的方式。
视频信号中的运动可以用许多方式表示。最流行的表示是基于位移表示的运动矢量。尽管运动矢量不足以精确表示所有类型的运动,但使用特征的简单性和容易性使运动矢量在许多视频相关应用中流行。为了在描述运动信息时达到更高精度,子像素精度运动矢量往往是优选的,以便消除由成像设备的有限空间和时间取样速率引起的混叠。
如果牵涉到子像素精度运动,则运动补偿的性能高度取决于运动矢量的精度和相关内插处理。
提高运动矢量的精度可以提高运动补偿的质量,但编码更高精度运动矢量的成本也提高了。因此,提高运动矢量精度以提高编码成本为代价,并且导致需要额外带宽来发送编码视频(或额外寄存器来存储编码视频)。在国际标准化组织/国际电工委员会(ISO/IEC)运动图像专家组4(MPEG-4)第10部分高级视频编码(AVC)标准/国际电信联盟,电信部门(ITU-T)H.264建议书(下文称为“MPEG-4AVC标准”),即,现有技术的视频编码标准中,运动矢量精确到四分之一像素,并且,由于它们的重要性,得到无损压缩。四分之一像素精度运动矢量是超过以前编码标准地提高编码效率的良好折衷。但是,大多数编码标准不考虑运动信息与视频内容之间的关系地使用统一运动矢量精度。例如,MPEG-4AVC标准将四分之一像素精度用于视频画面中的每个地方,视频序列中的每个画面,和所有视频序列。
通过利用具有四分之一像素精度的运动矢量,由于运动矢量精度提高了,所以可超过过去标准地取得更高编码增益。对于四分之一像素精度运动矢量,运动补偿处理取决于适当内插滤波器。在MPEG-4AVC标准中,在二分之一像素内插阶段应用6抽头线性滤波器,在四分之一像素阶段使用线性内插。为了进一步提高运动补偿的性能,将自适应内插滤波器(AIF)用于通过逐帧地为每个子像素位置更新内插滤波器来降低运动补偿误差。但是,所有这些方案只考虑了降低运动补偿误差,因此未降低具有四分之一像素精度的运动矢量的成本。
当真正的运动仅仅是整数精度时,编码四分之一像素精度运动矢量是多余的,并且浪费了许多位。因此,从率失真成本的意义上来讲,这样的统一精度方案远非最佳。
为了达到更好的编码性能,已经进行了一些降低运动矢量冗余度的工作。例如,在第一现有技术途径中,描述了允许有损压缩运动矢量来取代MPEG-4AVC标准中的无损方案的运动矢量量化方案。而且,该方案增添了与MPEG-4AVC标准的其它现有模式一起的称为QMV模式的附加编码模式。在QMV模式中,在熵编码之前量化分区的运动矢量。量化步骤Qv在各种宏块中可以是不同的,以便实现空间自适应。QMV模式可以在根据率失真以不同精度表示运动矢量方面达到自适应。花费在发送Qv值和QMV模式信息上的附加成本可能用尽运动矢量中的率节约带来的增益。
发明内容
现有技术的这些和其它缺陷和缺点通过本原理来解决,本原理针对运动信息的自适应编解码的方法和装置。
按照本原理的一个方面,提供了一种装置。所述装置包括使用运动矢量至少编码画面中的块的编码器。将自适应运动矢量精度方案用于选择用于编码所述块的运动矢量的精度。选择运动矢量的精度的选择准则包括基于非率失真的准则。
按照本原理的另一个方面,提供了一种在视频编码器中的方法。所述方法包括使用运动矢量至少编码画面中的块。将自适应运动矢量精度方案用于选择用于编码所述块的运动矢量的精度。选择运动矢量的精度的选择准则包括基于非率失真的准则。
按照本原理的又一个方面,提供了一种装置。所述装置包括使用运动矢量至少解码画面中的块的解码器。将自适应运动矢量精度方案用于选择用于解码所述块的运动矢量的精度。选择运动矢量的精度的选择准则包括基于非率失真的准则。
按照本原理的再一个方面,提供了一种在视频解码器中的方法。所述方法包括使用运动矢量至少解码画面中的块。将自适应运动矢量精度方案用于选择用于解码所述块的运动矢量的精度。选择运动矢量的精度的选择准则包括基于非率失真的准则。
从应当结合附图阅读的对示例实施例的以下详细描述中,本原理的这些和其它方面、特征和优点将变得清楚。
附图说明
依照以下示例附图,可以更好地理解本原理,在附图中:
图1是示出依照本原理的实施例、可以应用本原理的示例视频编码器的框图;
图2是示出依照本原理的实施例、可以应用本原理的示例视频解码器的框图;
图3是示出依照本原理的实施例、根据分区大小使用运动信息的自适应编解码来编码画面数据的一种示例方法的流程图;
图4是示出依照本原理的实施例、根据分区大小使用运动信息的自适应编解码来解码画面数据的一种示例方法的流程图;
图5是示出依照本原理的实施例、根据运动矢量方向使用运动信息的自适应编解码来编码画面数据的一种示例方法的流程图;
图6是示出依照本原理的实施例、根据运动矢量方向使用运动信息的自适应编解码来解码画面数据的一种示例方法的流程图;
图7是示出依照本原理的实施例、根据量化参数使用运动信息的自适应编解码来编码画面数据的一种示例方法的流程图;
图8是示出依照本原理的实施例、根据量化参数使用运动信息的自适应编解码来解码画面数据的一种示例方法的流程图;
图9是示出依照本原理的实施例、根据显性传信的视频内容使用运动信息的自适应编解码来编码画面数据的一种示例方法的流程图;
图10是示出依照本原理的实施例、根据显性传信的视频内容使用运动信息的自适应编解码来解码画面数据的一种示例方法的流程图;
图11是示出依照本原理的实施例、根据隐性传信的视频内容使用运动信息的自适应编解码来编码画面数据的一种示例方法的流程图;
图12是示出依照本原理的实施例、根据隐性传信的视频内容使用运动信息的自适应编解码来解码画面数据的一种示例方法的流程图;
图13是示出依照本原理的实施例、根据运动矢量幅度使用运动信息的自适应编解码来编码画面数据的一种示例方法的流程图;以及
图14是示出依照本原理的实施例、根据隐性传信的运动矢量幅度使用运动信息的自适应编解码来解码画面数据的一种示例方法的流程图。
具体实施方式
本原理针对运动信息的自适应编解码的方法和装置。
本描述说明本原理。因此,将认识到:本领域技术人员将能够设计出实施本原理并包括在本原理的精神和范围内的各种布置,尽管在这里没有明确地描述或示出所述布置。
在此叙述的所有示例和条件性语言意欲用于教导的目的以便帮助读者理解本原理以及由本发明人贡献以促进现有技术的构思,并且应该被解释为不限制这种具体叙述的示例和条件。
另外,在这里叙述本原理的原理、方面和实施例及其特定示例的所有陈述意欲包括其结构和功能等效物。另外,意图是:这样的等效物包括当前已知的等效物以及将来开发的等效物二者,即所开发的执行相同功能的任何元件,而不论其结构如何。
因此,例如,本领域技术人员将认识到:在此呈现的框图表示实施本原理的说明性电路的概念性视图。类似地,将认识到:任何流程图示(flow chart)、流程图(flow diagram)、状态转换图、伪代码等表示实质上可以表示在计算机可读介质中并因此由计算机或处理器执行的各种处理,而不管是否明确地示出这样的计算机或处理器。
可以通过使用专用硬件以及与适当的软件相关联的能够执行软件的硬件来提供图中示出的各种元件的功能。当利用处理器来提供所述功能时,可以利用单个专用处理器、利用单个共享处理器、或者利用其中一些可被共享的多个独立处理器来提供所述功能。另外,术语“处理器”或“控制器”的明确使用不应该被解释为排他性地指代能够执行软件的硬件,而是可以隐含地无限制地包括数字信号处理器(“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标准的扩展在内的其它视频编码标准、建议及其扩展,以及专有和未来标准或方案使用本原理,同时保持本原理的精神。
此外,如这里所使用,词汇“画面”和“图像”可交换使用,并且都指代来自视频序列的静止图像或画面。众所周知,一个画面可以是一个帧或一个半帧。
另外,如这里所使用,词汇“传信”指代向相应解码器指示某种东西。例如,编码器可以传信给定运动矢量精度,以便使解码器知道在编码器侧使用了哪种特定运动矢量精度。这样,在编码器侧和解码器侧双方都可以使用相同运动矢量精度。因此,例如,编码器可以将特定运动矢量精度发送给解码器,以便解码器可以使用相同的特定运动矢量精度,或如果除了别的以外,解码器已经拥有特定运动矢量精度,则可以使用传信(不用发送)简单地使解码器知道和选择特定运动矢量精度。通过避免发送任何实际运动矢量精度,可以实现位节约。应当认识到,传信可以以多种方式完成。例如,可以使用一个或多个语法元素、标志等向相应解码器传信信息。
此外,如这里所使用,短语“局部画面区”指代视频序列的子集信号。局部画面区可以是许多相继帧、单个帧、许多时间和/或空间相邻块、和/或许多时间和/或空间相邻像素。
此外,如这里所使用,短语“全局运动信息”指代“画面区”中的主导运动。如这里所使用,短语“画面区”指代属于相同场景的许多帧、单个帧和/或单个帧中的一部分。下面提供全局运动信息的一些示例。在一个示例中,我们为特定画面区中的每个块估计运动,全局运动信息是这些块中的最常见运动。在另一个示例中例子,我们为特定画面区中的每个块估计运动,全局运动信息是对所有这些块求平均的运动。在又一个示例中,我们为特定画面区中的每个块估计运动,全局运动信息是所有这些块当中的中间运动。
转到图1,用标号100总体表示可以应用本原理的示例视频编码器。视频编码器100包括具有与组合器185的非反相输入端信号通信的输出端的帧排序缓冲器110。组合器185的输出端被连接成与变换器和量化器125的第一输入端信号通信。变换器和量化器125的输出端被连接成与熵编码器145的第一输入端和逆变换器和逆量化器150的第一输入端信号通信。熵编码器145的输出端被连接成与组合器190的第一非反相输入端信号通信。组合器190的输出端被连接成与输出缓冲器135的第一输入端信号通信。
编码器控制器105的第一输出端被连接成与帧排序缓冲器110的第二输入端、逆变换器和逆量化器150的第二输入端、画面类型判定模块115的输入端、宏块类型(MB类型)判定模块120的第一输入端、帧内预测模块160的第二输入端、去块滤波器165的第二输入端、运动补偿器170的第一输入端、运动估计器175的第一输入端、和参考画面缓冲器180的第二输入端信号通信。
编码器控制器105的第二输出端被连接成与补充增强信息(S EI)插入器130的第一输入端、变换器和量化器125的第二输入端、熵编码器145的第二输入端、输出缓冲器135的第二输入端、和序列参数集(SPS)和画面参数集(PPS)插入器140的输入端信号通信。
S EI插入器130的输出端被连接成与组合器190的第二非反相输入端信号通信。
画面类型判定模块115的第一输出端被连接成与帧排序缓冲器110的第三输入端信号通信。画面类型判定模块115的第二输出端被连接成与宏块类型判定模块120的第二输入端信号通信。
序列参数集(SPS)和画面参数集(PPS)插入器140的输出端被连接成与组合器190的第三非反相输入端信号通信。
逆变换器和逆量化器150的输出端被连接成与组合器119的第一非反相输入端信号通信。组合器119的输出端被连接成与帧内预测模块160的第一输入端和去块滤波器165的第一输入端信号通信。去块滤波器165的输出端被连接成与参考画面缓冲器180的第一输入端信号通信。参考画面缓冲器180的输出端被连接成与运动估计器175的第二输入端和运动补偿器170的第三输入端信号通信。运动估计器175的第一输出端被连接成与运动补偿170的第二输入端信号通信。运动估计器175的第二输出端被连接成与熵编码器145的第三输入端信号通信。
运动补偿器170的输出端被连接成与开关197的第一输入端信号通信。帧内预测模块160的输出端被连接成与开关197的第二输入端信号通信。宏块类型判定模块120的输出端被连接成与开关197的第三输入端信号通信。开关197的第三输入端确定开关的“数据”输入(如与控制输入,即,第三输入相比)由运动补偿170提供还是由帧内预测模块160提供。开关197的输出端被连接成与组合器119的第二非反相输入端和组合器185的反相输入端信号通信。
帧排序缓冲器110的第一输入端和编码器控制器105的输入端可作为编码器100的输入端用于接收输入画面。此外,补充增强信息(SEI)插入器130的第二输入端可作为编码器100的输入端用于接收元数据。输出缓冲器135的输出端可作为编码器100的输出端用于输出位流。
转到图2,用标号200总体表示可以应用本原理的示例视频解码器。视频解码器200包括具有连接成与熵解码器245的第一输入端信号通信的输出端的输入缓冲器210。熵解码器245的第一输出端被连接成与逆变换器和逆量化器250的第一输入端信号通信。逆变换器和逆量化器250的输出端被连接成与组合器225的第二非反相输入端信号通信。组合器225的输出端被连接成与去块滤波器265的第二输入端和帧内预测模块260的第一输入端信号通信。去块滤波器265的第二输出端被连接成与参考画面缓冲器280的第一输入端信号通信。参考画面缓冲器280的输出端被连接成与运动补偿器270的第二输入端信号通信。
熵解码器245的第二输出端被连接成与运动补偿器270的第三输入端、去块滤波器265的第一输入端、和帧内预测器260的第三输入端信号通信。熵解码器245的第三输出端被连接成与解码器控制器205的输入端信号通信。解码器控制器205的第一输出端被连接成与熵解码器245的第二输入端信号通信。解码器控制器205的第二输出端被连接成与逆变换器和逆量化器250的第二输入端信号通信。解码器控制器205的第三输出端被连接成与去块滤波器265的第三输入端信号通信。解码器控制器205的第四输出端被连接成与帧内预测模块260的第二输入端、运动补偿器270的第一输入端、和参考画面缓冲器280的第二输入端信号通信。
运动补偿器270的输出端被连接成与开关297的第一输入端信号通信。帧内预测模块260的输出端被连接成与开关297的第二输入端信号通信。开关297的输出端被连接成与组合器225的第一非反相输入端信号通信。
输入缓冲器210的输入端可作为解码器200的输入端用于接收输入位流。去块滤波器265的第一输出端可作为解码器200的输出端用于输出输出画面。
如上所述,本原理针对运动信息的自适应编解码的方法和装置。因此,依照本原理,将自适应运动信息表示和压缩途径用于通过更好地利用运动信息与视频内容之间的关联性来提高视频编解码性能。该途径通过考虑运动场、视频内容、编解码模式、和编解码效率,自适应地以不同精度水平表示运动矢量,而不会因自适应而引起额外位开销(或至少限制了额外位开销)。分区大小自适应
在典型基于块的视频编解码方案中,将一个画面划分成众多非重叠块。最佳块形状和大小取决于视频内容和编解码方案。MPEG-4AVC标准支持16x16,16x8,8x16,8x8,8x4,4x8,和4x4块。正如我们看到的那样,较大块含有比较小块多的像素。运动补偿误差由来自每个像素的误差贡献。如果一个块包括多个像素,假设来自每个像素的误差是一样的,则那个块有相对较高的可能性具有较大补偿误差。因此,与较小块相比,我们偏向于将较高精度运动矢量用于较大块。因此,在一个实施例中,我们使运动矢量精度适应分区大小。
一般说来,我们可以将较高精度用于较大块的运动矢量,因为较大块覆盖视频中的较大面积,如果得不到正确补偿,有很大可能贡献大量失真。表1示出了依照本原理的实施例,将不同块大小分类成不同精度水平。当然,应该懂得,本原理不局限于前面的分类,因此,在保持本原理的精神的同时,也可以依照本原理的教导使用其它分类。
表1
  水平   分区大小   运动矢量精度
  0   16x16,16x8,8x16   1/8像素
  1   8x8   1/4像素
  2   8x4,4x8,4x4   1/2像素
每个块的运动矢量用那个水平的相应精度表示。根据已经发送的分区大小,没有花费在运动矢量精度自适应上的附加位速率。
转到图3,用标号300总体表示根据分区大小使用运动信息的自适应编解码来编码画面数据的一种示例方法。方法300包括将控制交给功能块310的开始块305。功能块310设置motion_accuracy_adaptive_flag=1,设置mv_accuracy_adaptation_mode=0,将motion_accuracy_adaptive_flag  和mv_accuracy_adaptation_mode写入位流中,并将控制交给循环限制块312。循环限制块312使用范围从1到块数#的变量I开始循环,并将控制交给功能块315。功能块315进行运动估计,并将控制交给功能块320。功能块320按如下根据分区大小量化来自运动估计(由功能块315进行)的所得运动矢量,此后将控制交给功能块325:16x16,16x8,和8x16分区大小使用1/8像素精度;8x8分区大小使用1/4像素精度;以及8x4,4x8,和4x4分区大小使用1/2像素精度。功能块325进行运动补偿,并将控制交给功能块330。功能块330进行熵编码,并将控制交给循环限制块332。循环限制块332结束循环,并将控制交给结束块399。
转到图4,用标号400总体表示根据分区大小使用运动信息的自适应编解码来解码画面数据的一种示例方法。方法400包括将控制交给功能块410的开始块405。功能块410解析motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode,并将控制交给循环限制块412。循环限制块412使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块413。功能块413解析运动矢量(MV)语法,并将控制交给判定块415。判定块415确定motion_accuracy_adaptive_flag==1和mv_accuracy_adaptation_mode==0是否成立。如果是,则将控制交给功能块420。否则,则将控制交给功能块417。功能块420按如下根据分区大小确定精度解码运动矢量,此后将控制交给功能块425:16x16,16x8,和8x16分区大小使用1/8像素精度;8x8分区大小使用1/4像素精度;以及8x4,4x8,和4x4分区大小使用1/2像素精度。功能块425进行运动补偿,并将控制交给循环限制块427。循环限制块427结束循环,并将控制交给结束块499。功能块417使用统一精度或其它自适应精度方法重构运动矢量,并将控制交给功能块425。
运动矢量方向自适应
在大多数运动矢量表示中,运动矢量是描述沿着水平和垂直方向两者的运动的二维矢量。通常,运动矢量在两个方向具有相同精度。但是,并不要求在不同方向具有相同精度,尤其当我们拥有一些有关运动的先验信息时。例如,如果视频具有主导的水平运动(像摄像机摇拍那样),则我们可以在水平方向提供较高精度,以便更好地表示运动信息。我们也可以利用整数运动幅度、分区形状、运动矢量预测量或全局运动信息,以便传信高精度运动方向。因此,在一个实施例中,我们使运动矢量精度适应运动矢量的一个或多个特定方向。
在一个实施例中,我们利用运动矢量预测量来导出主导运动方向。我们对主导运动方向指定较高运动矢量精度(与非主导运动方向相比)。运动矢量预测量mvp=[mvp_x,mvp_y]可以如MPEG-4AVC标准所述,通过检验相邻块的运动矢量获得。我们定义如下参数:
θ ( mvp ) = | mvp _ y | | mvp _ x | , | mvp _ x | ≠ 0 Inf . , | mvp _ x | = 0 - - - ( 1 )
通过检验θ(mvp),我们可以按如下判定哪个方向使用较高精度:
res ( mv _ y ) = 1 / 8 , res ( mv _ x ) = 1 / 4 , θ ( mvp ) ≥ th 1 res ( mv _ y ) = res ( mv _ x ) = 1 / 4 , th 1 > θ ( mvp ) > th 2 res ( mv _ y ) = 1 / 4 , res ( mv _ x ) = 1 / 8 , θ ( mvp ) ≤ th 2 , - - - ( 2 )
其中,res(mv_x)和res(mv_y)是mv_x和mv_y的各自分辨率(即,精度),以及th1和th2是在不同方向确定运动矢量的精度的两个阈值。
通过使用这种方案,我们可以不引起额外开销地使运动矢量的精度适应不同方向。
转到图5,用标号500总体表示根据运动矢量方向使用运动信息的自适应编解码来编码画面数据的一种示例方法。方法500包括将控制交给功能块510的开始块505。功能块510设置motion_accuracy_adaptive_flag=1,设置mv_accuracy_adaptation_mode=1,将motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode写入位流中,并将控制交给循环限制块512。循环限制块512使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块515。功能块515进行运动估计,并将控制交给功能块520。功能块520根据如下的一个或多个导出主导分量并设置res_x和res_y,此后将控制交给功能块525:运动矢量预测量;相邻运动矢量;分区形状;整数运动幅度;全局运动;和/或率失真成本。功能块525根据res_x和res_y量化运动矢量分量,并将控制交给功能块530。功能块530进行运动补偿,并将控制交给功能块535。功能块535进行熵编码,并将控制交给循环限制块537。循环限制块537结束循环,并将控制交给结束块599。
转到图6,用标号600总体表示根据运动矢量方向使用运动信息的自适应编解码来解码画面数据的一种示例方法。方法600包括将控制交给功能块610的开始块605。功能块610解析motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode,并将控制交给循环限制块612。循环限制块612使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块613。功能块613解析运动矢量(MV)语法,并将控制交给判定块615。判定块615确定motion_accuracy_adaptive_flag==1和mv_accuracy_adaptation_mode==1是否成立。如果是,则将控制交给功能块620。否则,则将控制交给功能块617。功能块620根据如下的一个或多个导出主导分量并设置res_x和res_y,此后将控制交给功能块625:运动矢量预测量;相邻运动矢量;分区形状;整数运动幅度;全局运动;和/或率失真成本。功能块625根据res_x和res_y解码运动矢量,并将控制交给功能块630。功能块630进行运动补偿,并将控制交给循环限制块632。循环限制块632结束循环,并将控制交给结束块699。功能块617使用统一精度或其它自适应精度方法重构运动矢量,并将控制交给功能块630。
QP自适应运动矢量精度
视频编码器使用量化参数QP来控制编码视频的质量。当量化参数大时,参考帧(前编码帧的重构)的质量就低。尤其,随着在编码处理中除去大多数细节,参考帧倾向于变平滑。因此,差异小的运动矢量可以给出非常相似的预测,并且高精度的运动矢量是没有必要的。因此,在一个实施例中,我们使运动矢量精度适应一个或多个量化参数。
在一个实施例中,使运动矢量精度适应编码量化参数(QP)或量化步长。让我们假设mv是通过运动估计找到的运动矢量,并且mvp是预测运动矢量。其差值表示成mvd,其中mvd=mv-mvp。设mvq是发送给解码器的量化mvd,其中mvd=Q(mvd,q_mv)并且其中Q是mvd量化处理,并且q-mv是量化步长(例如,q-mv=0.5意味着二分之一像素精度,q-mv=0.25意味着四分之一像素精度等等)。我们设运动矢量精度是编码QP的函数q-mv=f(QP)。例如,当QP小于阈值时,选择q-mv的小值。否则,当QP大于阈值时,选择q-mv的较大值。
转到图7,用标号700总体表示根据量化参数使用运动信息的自适应编解码来编码画面数据的一种示例方法。方法700包括将控制交给功能块710的开始块705。功能块710设置motion_accuracy_adaptive_flag=1,设置mv_accuracy_adaptation_mode=2,将motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode写入位流中,并将控制交给循环限制块712。循环限制块712使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块715。功能块715进行运动估计,并将控制交给功能块720。功能块720根据编码量化参数选择运动矢量精度,使用所选运动矢量精度量化来自运动估计(由功能块715进行)的所得运动矢量,并将控制交给功能块725。功能块725进行运动补偿,并将控制交给功能块730。功能块730进行熵编码,并将控制交给循环限制块732。循环限制块732结束循环,并将控制交给结束块799。
转到图8,用标号800总体表示根据量化参数使用运动信息的自适应编解码来解码画面数据的一种示例方法。方法800包括将控制交给功能块810的开始块805。功能块810解析motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode,并将控制交给循环限制块812。循环限制块812使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块813。功能块813解析运动矢量(MV)语法,并将控制交给判定块815。判定块815确定motion_accuracy_adaptive_flag==1和mv_accuracy_adaptation_mode==2是否成立。如果是,则将控制交给功能块820。否则,则将控制交给功能块817。功能块820从量化参数(QP)中获取运动矢量精度,从接收运动矢量指数中重构运动矢量,并将控制交给功能块825。功能块825进行运动补偿,并将控制交给循环限制块827。循环限制块827结束循环,并将控制交给结束块899。功能块817使用统一精度或其它自适应精度方法重构运动矢量,并将控制交给功能块825。
内容自适应运动矢量精度
对于视频信号中的平滑区,差异小的运动矢量可以提供非常相似的预测,并且因此从高精度运动矢量中获得的好处有限。另一方面,对于对象边缘和有纹理区域,预测值与当前信号的微小失配可以极大地扩大预测误差,因此精确的运动矢量是非常期望的。考虑到这种关系,在一个实施例中,我们使运动矢量精度适应画面(或序列)内容。
在一个实施例中,运动矢量精度是响应于画面内容自适应的。设S是视频序列的子集信号。S可以是许多相继帧,单个帧或许多相邻块。将h(S)定义成S的复杂函数。例如,h(S)可以是S中的像素的方差,重构残差的方差,或S中的边缘的取向和强度的方差。S的运动矢量精度q_mv的值根据h(S)来选择。例如,当内容具有高复杂性并且h(S)大时,则q_mv的值就小。另一方面,当内容具有低复杂性并且h(S)小时,则q_mv的值就大。对于这个实施例,q_mv可以由编码器发送(显性传信)或可以在解码器上推测(隐性传信)。
转到图9,用标号900总体表示根据显性传信的视频内容使用运动信息的自适应编解码来编码画面数据的一种示例方法。方法900包括将控制交给功能块910的开始块905。功能块910设置motion_accuracy_adaptive_flag=1,设置mv_accuracy_adaptation_mode=3,将motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode写入位流中,并将控制交给循环限制块912。循环限制块912使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块915。功能块915进行运动估计,并将控制交给功能块920。功能块920根据局部画面区的统计量,例如,像素方差、边缘取向、强度等选择运动矢量精度,并将控制交给功能块925。功能块925根据所选精度量化运动矢量,并将控制交给功能块930。功能块930发送运动矢量精度(例如,向相应解码器),并将控制交给功能块935。功能块935进行运动补偿,并将控制交给功能块940。功能块940进行熵编码,并将控制交给循环限制块942。循环限制块942结束循环,并将控制交给结束块999。
转到图10,用标号1000总体表示根据显性传信的视频内容使用运动信息的自适应编解码来解码画面数据的一种示例方法。方法1000包括将控制交给功能块1010的开始块1005。功能块1010解析motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode,并将控制交给循环限制块1012。循环限制块1012使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块1013。功能块1013解析运动矢量(MV)语法,并将控制交给判定块1015。判定块1015确定motion_accuracy_adaptive_flag==1和mv_accuracy_adaptation_mode==3是否成立。如果是,则将控制交给功能块1020。否则,则将控制交给功能块1017。功能块1020解析运动矢量精度,并将控制交给功能块1025。功能块1025从接收的运动矢量指数中重构运动矢量,并将控制交给功能块1030。功能块1030进行运动补偿,并将控制交给循环限制块1032。循环限制块1032结束循环,并将控制交给结束块1099。功能块1017使用统一精度或其它自适应精度方法重构运动矢量,并将控制交给功能块1030。
转到图11,用标号1100总体表示根据隐性传信的视频内容使用运动信息的自适应编解码来编码画面数据的一种示例方法。方法1100包括将控制交给功能块1110的开始块1105。功能块1110设置motion_accuracy_adaptive_flag=1,设置mv_accuracy_adaptation_mode=4,将motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode写入位流中,并将控制交给循环限制块1112。循环限制块1112使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块1115。功能块1115进行运动估计,并将控制交给功能块1120。功能块1120根据局部画面区的统计量,例如,重构画面方差等选择运动矢量精度,并将控制交给功能块1125。功能块1125根据所选精度量化运动矢量,并将控制交给功能块1130。功能块1130进行运动补偿,并将控制交给功能块1135。功能块1135进行熵编码,并将控制交给循环限制块1137。循环限制块1137结束循环,并将控制交给结束块1199。
转到图12,用标号1200总体表示根据隐性传信的视频内容使用运动信息的自适应编解码来解码画面数据的一种示例方法。方法1200包括将控制交给功能块1210的开始块1205。功能块1210解析motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode,并将控制交给循环限制块1212。循环限制块1212使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块1213。功能块1213解析运动矢量(MV)语法,并将控制交给判定块1215。判定块1215确定motion_accuracy_adaptive_flag==1和mv_accuracy_adaptation_mode==4是否成立。如果是,则将控制交给功能块1220。否则,则将控制交给功能块1217。功能块1220从局部画面区的统计量中获取运动矢量精度,并将控制交给功能块1225。功能块1225从接收的运动矢量指数中重构运动矢量,并将控制交给功能块1230。功能块1230进行运动补偿,并将控制交给循环限制块1232。循环限制块1232结束循环,并将控制交给结束块1299。功能块1217使用统一精度或其它自适应精度方法重构运动矢量,并将控制交给功能块1230。
运动矢量幅度自适应
在视频编解码中,编码搜索运动矢量与预测运动矢量之间的差值,在上面我们把它定义成mvd。对于通过视频编码器应用的有效运动估计,mvd的值多数时候都非常小。但是,当视频块对于运动搜索来说不具备好的特征时,则搜索的mv是不可靠的,呈现一些随机性。在这种情况下,mvd的幅度可以相当大。由于搜索的mv是不可靠的,所以用于mvd编码的太多位是不必要的。我们偏向于当mvd具有大幅度时,应该粗略(低运动矢量精度)地量化它,以便节约位。
在一个实施例中,运动矢量精度q_mv是运动矢量差mvd的幅度的函数,q_mv=f(|mvd|)。f的一个示例精度函数可以是:当x≤T时,f(x)=0.25;而当x>T时,f(x)=0.5,其中T是阈值。
在这个例子中,mvd的量化如下:
其中Idx_mvd是mvd的量化指数。
mvd的重构mvq如下:
转到图13,用标号1300总体表示根据运动矢量幅度使用运动信息的自适应编解码来编码画面数据的一种示例方法。方法1300包括将控制交给功能块1310的开始块1305。功能块1310设置motion_accuracy_adaptive_flag=1,并且设置mv_accuracy_adaptation_mode=5,并将控制交给循环限制块1312。循环限制块1312使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块1315。功能块1315进行运动估计,并将控制交给功能块1320。功能块1320根据运动矢量的幅度选择精度函数,并将控制交给功能块1325。功能块1325根据所选函数量化运动矢量分量,并将控制交给功能块1330。功能块1330进行运动补偿,并将控制交给功能块1335。功能块1335进行熵编码,并将控制交给循环限制块1337。循环限制块1337结束循环,并将控制交给结束块1399。
转到图14,用标号1400总体表示根据隐性传信的运动矢量幅度使用运动信息的自适应编解码来解码画面数据的一种示例方法。方法1400包括将控制交给功能块1410的开始块1405。功能块1410解析motion_accuracy_adaptive_flag和mv_accuracy_adaptation_mode,并将控制交给循环限制块1412。循环限制块1412使用范围从1到块数(#)的变量I开始循环,并将控制交给功能块1413。功能块1413解析运动矢量(MV)语法,并将控制交给判定块1415。判定块1415确定motion_accuracy_adaptive_flag==1和mv_accuracy_adaptation_mode==5是否成立。如果是,则将控制交给功能块1420。否则,则将控制交给功能块1417。功能块1420从接收运动矢量指数的数值中获取运动矢量精度,并将控制交给功能块1425。功能块1425重构运动矢量(从接收的运动矢量指数中),并将控制交给功能块1430。功能块1430进行运动补偿,并将控制交给循环限制块1432。循环限制块1432结束循环,并将控制交给结束块1499。功能块1417使用统一精度或其它自适应精度方法重构运动矢量,并将控制交给功能块1430。
语法
表2示出了依照本发明一个实施例的示例画面和切片首标语法。
表2
  picture_header(){   描述符
  ...
  motion_accuracy_adaptive_flag   u(1)
  ...
  }
  slice_header(){
  ...
  if(motion_accuracy_adaptive_flag){
  mv_accuracy_adaptation_mode   u(3)
  if(mv_accuracy_adaptation_mode!=1){
  q_mv_signaling   u(1)
  if(q_mv_signaling)
  q_mv   u(v)
  }
  if(mv_accuracy_adaptation_mode==1){
  res_mv_signaling   u(1)
  if(res_mv_signaling){
  res_x   u(2)
  res_y   u(2)
  }
  }
  }
  }
表2中的一些语法元素的语义如下:
motion_acccuracy_adaptive_flag规定运动矢量精度自适应是否用于画面。motion_acccuracy_adaptive_flag等于1指示在画面中使用运动矢量精度自适应方案;motion_acccuracy_adaptive_flag等于0指示在画面中不使用运动矢量精度自适应方案。
mv_acccuracy_adaptive_mode规定用于切片的运动矢量精度自适应途径。mv_acccuracy_adaptive_mode等于0指示启用基于分区大小的运动矢量精度自适应。mv_acccuracy_adaptive_mode等于1指示启用基于方向的运动矢量精度自适应。mv_acccuracy_adaptive_mode等于2指示启用基于QP的运动矢量精度自适应。mv_acccuracy_adaptive_mode等于3指示启用显性传信的基于内容的运动矢量精度自适应。mv_acccuracy_adaptive_mode等于4指示启用隐性传信的基于内容的运动矢量精度自适应。mv_acccuracy_adaptive_mode等于5指示启用基于幅度的运动矢量精度自适应。
q_mv规定除了默认量化步长之外,用于量化运动矢量的量化步长。
res_x规定运动矢量的水平分量的精度;
res_y规定运动矢量的垂直分量的精度;
q_mv_signaling规定显性传信或隐性传信。q_mv_signaling等于1指示显性传信q_mv。q_mv_signaling等于0指示不显性传信q_mv。
res_mv_signaling规定res_x和res_y的显性传信或隐性传信。res_mv_signaling等于1指示显性传信res_x和res_y。res_mv_signaling等于0指示不显性传信res_x和res_y。
现在对其中一些上面已经提及的本发明的许多附带优点/特征的一些加以描述。例如,一个优点/特征是含有视频编码器的装置,所述视频编码器使用运动矢量至少编码画面中的块。将自适应运动矢量精度方案用于选择用于编码所述块的运动矢量的精度。选择运动矢量的精度的选择准则包括基于非率失真的准则。
另一个优点/特征是如上所述的含有视频编码器的装置,其中所述选择准则包括运动补偿分区大小。
又一个优点/特征是如上所述的含有视频编码器的装置,其中所述选择准则包括运动矢量分量方向,用于编码所述块的运动矢量的精度被选择成与运动矢量的水平分量相比在垂直分量上是不同的,以及垂直分量和水平分量当中具有最大精度的分量被选为主导分量。
再一个优点/特征是如上所述的其中所述选择准则包括运动矢量分量方向,以及用于编码所述块的运动矢量的精度被选择成与运动矢量的水平分量相比在垂直分量上是不同的,以及垂直分量和水平分量当中具有最大精度的分量被选为主导分量的含有视频编码器的装置,其中主导分量响应于如下至少一种来确定:
(i)当运动矢量是整数运动矢量时,运动矢量的幅度;
(ii)所述块的运动补偿分区的形状;
(iii)所述块的预测运动矢量;
(iv)关于所述块的相邻块的运动矢量;以及
(v)与所述画面和一个或多个其它画面的至少一个有关的全局运动信息,所述画面和一个或多个其它画面包括在相同视频序列中。
又一个优点/特征是如上所述的含有视频编码器的装置,其中所述选择准则包括所述块的编码量化参数。
此外,另一个优点/特征是如上所述的含有视频编码器的装置,其中所述选择准则包括局部画面区的统计量,所述局部画面区对应于所述画面的一部分、所述画面、和一个或多个其它画面的至少一个,以及其中所述画面和一个或多个其它画面包括在相同视频序列中。
此外,另一个优点/特征是如上所述的含有视频编码器的装置,其中所述选择准则包括局部画面区的统计量,所述局部画面区对应于所述画面的一部分、所述画面、和一个或多个其它画面的至少一个,以及其中所述画面和一个或多个其它画面包括在相同视频序列中,其中所述局部画面区的统计量是从如下的至少一个中选择的:
(i)局部区域中的像素方差;
(ii)局部区域中的解码残差系数的方差;
(iii)局部区域中的边缘取向的方差;以及
(iv)局部区域中的边缘强度的方差。
另外,另一个优点/特征是如上所述的含有视频编码器的装置,其中所述选择准则包括搜索运动矢量的幅度。
此外,另一个优点/特征是如上所述的含有视频编码器的装置,其中在编码位流中显性传信用于编码所述块的运动矢量的精度。
并且,另一个优点/特征是如上所述的含有视频编码器的装置,其中从所述画面中或包括所述画面的序列中的前编码视频中推测用于编码所述块的运动矢量的精度。
基于这里的教导,相关领域的普通技术人员可以容易地确定本原理的这些和其它特征及优点。应当理解,可以以硬件、软件、固件、专用处理器或它们的组合的各种形式来实现本原理的教导。
最优选地,作为硬件和软件的组合来实现本原理的教导。此外,可以作为在程序存储单元上有形地包含的应用程序来实现所述软件。所述应用程序可以被上载到包括任何适当架构的机器并由其执行。优选地,在具有诸如一个或多个中央处理单元(“CPU”)、随机存取存储器(“RAM”)和输入/输出(“I/O”)接口之类的硬件的计算机平台上实现所述机器。该计算机平台还可以包括操作系统和微指令代码。在此描述的各种处理和功能可以是可由CPU执行的微指令代码的一部分或应用程序一部分或者它们的任何组合。此外,诸如附加的数据存储单元和打印单元之类的各种其它外围单元可以连接到该计算机平台。
还应当理解,因为优选地用软件来实现在附图中描绘的一些组成系统组件和方法,所以这些系统组件或处理功能块之间的实际连接可以根据本原理被编程的方式而不同。给出这里的教导,相关领域的普通技术人员将能够想到本原理的这些和类似的实现或配置。
尽管在这里参照附图描述了说明性实施例,但是应当理解,本原理不限于那些精确的实施例,并且相关领域的普通技术人员可以在其中进行各种改变和修改,而不背离本原理的范围或精神。所有这样的改变和修改都意欲被包括在如所附权利要求阐述的本原理的范围内。

Claims (23)

1.一种装置,包含:
使用运动矢量编码画面中的块的编码器(100),其中将自适应运动矢量精度方案用于选择用于编码所述块的运动矢量的精度,以及其中选择运动矢量的精度的选择准则包含基于非率失真的准则。
2.一种在视频编码器中的方法,其包含:
使用运动矢量编码画面中的块,其中将自适应运动矢量精度方案用于选择用于编码所述块的运动矢量的精度,以及其中选择运动矢量的精度的选择准则包含基于非率失真的准则(320,520,525,720,920,925,1120,1320,1325)。
3.如权利要求2所述的方法,其中所述选择准则包含运动补偿分区大小(320)。
4.如权利要求2所述的方法,其中所述选择准则包含运动矢量分量方向,以及用于编码所述块的运动矢量的精度被选择成与运动矢量的水平分量相比在垂直分量中是不同的,以及垂直分量和水平分量当中具有最大精度的分量被选为主导分量(520)。
5.如权利要求4所述的方法,其中所述主导分量响应于如下至少一种来确定:
(i)当运动矢量是整数运动矢量时,运动矢量的幅度(520);
(ii)所述块的运动补偿分区的形状(520);
(iii)所述块的预测运动矢量(520);
(iv)关于所述块的相邻块的运动矢量(520);以及
(v)与所述画面和一个或多个其它画面的至少一个有关的全局运动信息,所述画面和一个或多个其它画面包括在相同视频序列中(520)。
6.如权利要求2所述的方法,其中所述选择准则包含所述块的编码量化参数(720)。
7.如权利要求2所述的方法,其中所述选择准则包含局部画面区的统计量,所述局部画面区对应于所述画面的一部分、所述画面、和一个或多个其它画面的至少一个,以及其中所述画面和一个或多个其它画面包括在相同视频序列中(920,1120)。
8.如权利要求7所述的方法,其中所述局部画面区的统计量是从如下的至少一个中选择的:
(i)局部区域中的像素方差(920,1120);
(ii)局部区域中的解码残差系数的方差(920,1120);
(iii)局部区域中的边缘取向的方差(920,1120);以及
(iv)局部区域中的边缘强度的方差(920,1120)。
9.如权利要求2所述的方法,其中所述选择准则包括搜索运动矢量的幅度(1320)。
10.如权利要求2所述的方法,其中在编码位流中显性传信用于编码所述块的运动矢量的精度。
11.如权利要求2所述的方法,其中从所述画面中或包括所述画面的序列中的前解码视频中推测用于编码所述块的运动矢量的精度(1120)。
12.一种装置,包含:
使用运动矢量解码画面中的块的解码器(200),其中将自适应运动矢量精度方案用于选择用于解码所述块的运动矢量的精度,以及其中选择运动矢量的精度的选择准则包含基于非率失真的准则。
13.一种在视频解码器中的方法,包含:
使用运动矢量解码画面中的块,其中将自适应运动矢量精度方案用于选择用于解码所述块的运动矢量的精度,以及其中选择运动矢量的精度的选择准则包括基于非率失真的准则(420,620,625,820,1020,1025,1220,1225,1420,1425)。
14.如权利要求13所述的方法,其中所述选择准则包含运动补偿分区大小(420)。
15.如权利要求13所述的方法,其中所述选择准则包含运动矢量分量方向,用于解码所述块的运动矢量的精度被选择成与运动矢量的水平分量相比在垂直分量中是不同的,以及垂直分量和水平分量当中具有最大精度的分量被选为主导分量(620)。
16.如权利要求15所述的方法,其中所述主导分量响应于如下至少一种来确定:
(i)当运动矢量是整数运动矢量时,运动矢量的幅度(620);
(ii)所述块的运动补偿分区的形状(620);
(iii)所述块的预测运动矢量(620);
(iv)关于所述块的相邻块的运动矢量(620);以及
(v)与所述画面和一个或多个其它画面的至少一个有关的全局运动信息,所述画面和一个或多个其它画面包括在相同视频序列中(620)。
17.如权利要求13所述的方法,其中所述选择准则包含所述块的编码量化参数(820)。
18.如权利要求13所述的方法,其中所述选择准则包含局部画面区的统计量,所述局部画面区对应于所述画面的一部分、所述画面、和一个或多个其它画面的至少一个,以及其中所述画面和一个或多个其它画面包括在相同视频序列中(1220)。
19.如权利要求18所述的方法,其中所述局部画面区的统计量是从如下的至少一种中选择的:
(i)局部区域中的像素方差(1220);
(ii)局部区域中的解码残差系数的方差(1220);
(iii)局部区域中的边缘取向的方差(1220);以及
(iv)局部区域中的边缘强度的方差(1220)。
20.如权利要求13所述的方法,其中所述选择准则包括搜索运动矢量的幅度(1420)。
21.如权利要求13所述的方法,其中在编码位流中显性接收用于解码所述块的运动矢量的精度。
22.如权利要求13所述的方法,其中从所述画面中或包括所述画面的序列中的前解码视频中推测用于解码所述块的运动矢量的精度(1220)。
23.一种含有编码在上面的视频信号数据的计算机可读存储媒体,所述视频信号数据包含:
使用运动矢量编码的画面中的块,其中将自适应运动矢量精度方案用于选择用于编码所述块的运动矢量的精度,以及其中选择运动矢量的精度的选择准则包含基于非率失真的准则。
CN201080056477.1A 2009-10-14 2010-10-04 运动信息的自适应编解码的方法和装置 Active CN102687511B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US25150809P 2009-10-14 2009-10-14
US61/251,508 2009-10-14
PCT/US2010/002670 WO2011046587A1 (en) 2009-10-14 2010-10-04 Methods and apparatus for adaptive coding of motion information

Publications (2)

Publication Number Publication Date
CN102687511A true CN102687511A (zh) 2012-09-19
CN102687511B CN102687511B (zh) 2016-04-20

Family

ID=43302850

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201080056477.1A Active CN102687511B (zh) 2009-10-14 2010-10-04 运动信息的自适应编解码的方法和装置

Country Status (6)

Country Link
US (1) US20120201293A1 (zh)
EP (2) EP3633996A1 (zh)
JP (4) JP5922579B2 (zh)
KR (1) KR101792041B1 (zh)
CN (1) CN102687511B (zh)
WO (1) WO2011046587A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104661031A (zh) * 2015-02-16 2015-05-27 华为技术有限公司 用于视频图像编码和解码的方法、编码设备和解码设备
CN108141607A (zh) * 2015-07-03 2018-06-08 华为技术有限公司 视频编码和解码方法、视频编码和解码装置
WO2019001024A1 (zh) * 2017-06-30 2019-01-03 华为技术有限公司 一种确定运动矢量预测值的方法以及相关设备

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1991957A2 (en) * 2005-07-12 2008-11-19 Nxp B.V. Method and device for removing motion blur effects
EP3633996A1 (en) * 2009-10-14 2020-04-08 InterDigital Madison Patent Holdings Methods and apparatus for adaptive coding of motion information
US9237355B2 (en) * 2010-02-19 2016-01-12 Qualcomm Incorporated Adaptive motion resolution for video coding
US10327008B2 (en) 2010-10-13 2019-06-18 Qualcomm Incorporated Adaptive motion vector resolution signaling for video coding
GB2488817B (en) * 2011-03-09 2014-11-26 Canon Kk Video encoding and decoding
US20120230407A1 (en) 2011-03-11 2012-09-13 General Instrument Corporation Interpolation Filter Selection Using Prediction Index
WO2012178178A2 (en) * 2011-06-24 2012-12-27 General Instrument Corporation Selection of phase offsets for interpolation filters for motion compensation
WO2013002716A2 (en) * 2011-06-30 2013-01-03 Telefonaktiebolaget L M Ericsson (Publ) A method a decoder and encoder for processing a motion vector
KR101590736B1 (ko) 2011-07-01 2016-02-01 모토로라 모빌리티 엘엘씨 시간 예측을 위한 공동 서브 픽셀 보간 필터
US10536701B2 (en) 2011-07-01 2020-01-14 Qualcomm Incorporated Video coding using adaptive motion vector resolution
US9531990B1 (en) 2012-01-21 2016-12-27 Google Inc. Compound prediction using multiple sources or prediction modes
US8737824B1 (en) 2012-03-09 2014-05-27 Google Inc. Adaptively encoding a media stream with compound prediction
US9185414B1 (en) 2012-06-29 2015-11-10 Google Inc. Video encoding using variance
US9628790B1 (en) 2013-01-03 2017-04-18 Google Inc. Adaptive composite intra prediction for image and video compression
US9374578B1 (en) 2013-05-23 2016-06-21 Google Inc. Video coding using combined inter and intra predictors
US9609343B1 (en) 2013-12-20 2017-03-28 Google Inc. Video coding using compound prediction
US9749642B2 (en) 2014-01-08 2017-08-29 Microsoft Technology Licensing, Llc Selection of motion vector precision
US9942560B2 (en) 2014-01-08 2018-04-10 Microsoft Technology Licensing, Llc Encoding screen capture data
US9774881B2 (en) 2014-01-08 2017-09-26 Microsoft Technology Licensing, Llc Representing motion vectors in an encoded bitstream
BR112016017201B1 (pt) 2014-01-29 2023-09-26 Hfi Innovation Inc Método de codificação e decodificação para precisão adaptativa de vetor de movimento de um bloco de dados de vídeo
US10136133B2 (en) 2014-11-11 2018-11-20 Dolby Laboratories Licensing Corporation Rate control adaptation for high-dynamic range images
JP2018533298A (ja) * 2015-09-24 2018-11-08 エルジー エレクトロニクス インコーポレイティド 映像コーディングシステムにおけるamvrに基づく映像コーディング方法及び装置
US10009622B1 (en) 2015-12-15 2018-06-26 Google Llc Video coding with degradation of residuals
WO2018110203A1 (ja) * 2016-12-16 2018-06-21 シャープ株式会社 動画像復号装置、および動画像符号化装置
US10715819B2 (en) * 2017-04-26 2020-07-14 Canon Kabushiki Kaisha Method and apparatus for reducing flicker

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1396774A (zh) * 2002-07-12 2003-02-12 清华大学 基于预测方向校正/统计预判的快速亚象素运动估计方法
CN1679341A (zh) * 2002-09-06 2005-10-05 皇家飞利浦电子股份有限公司 用于提高效率和差错恢复能力的内容自适应多重描述运动补偿
CN1780401A (zh) * 2004-11-22 2006-05-31 株式会社日立制作所 译码装置及使计算机执行译码方法的程序

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2897763B2 (ja) * 1997-07-28 1999-05-31 日本ビクター株式会社 動き補償符号化装置、復号化装置、符号化方法及び復号化方法
US6968008B1 (en) * 1999-07-27 2005-11-22 Sharp Laboratories Of America, Inc. Methods for motion estimation with adaptive motion accuracy
US6707853B1 (en) * 2000-01-10 2004-03-16 Intel Corporation Interface for performing motion compensation
JP2003169338A (ja) * 2001-09-18 2003-06-13 Matsushita Electric Ind Co Ltd 動きベクトル検出方法及び装置並びに方法プログラムを記録した媒体
EP2373035B1 (en) * 2001-11-30 2015-11-25 NTT DoCoMo, Inc. Moving picture encoding device, moving picture decoding device, moving picture encoding method, moving picture decoding method, program, and computer readable recording medium storing program
CN101448162B (zh) * 2001-12-17 2013-01-02 微软公司 处理视频图像的方法
US8175159B2 (en) * 2002-01-24 2012-05-08 Hitachi, Ltd. Moving picture signal coding method, decoding method, coding apparatus, and decoding apparatus
CN1265649C (zh) * 2002-01-24 2006-07-19 株式会社日立制作所 运动图像的编码方法、解码方法、编码装置及解码装置
JP2003296724A (ja) * 2002-04-05 2003-10-17 Hitachi Ltd 画像処理システム及びその方式
JP4102973B2 (ja) * 2002-04-24 2008-06-18 日本電気株式会社 動画像の符号化方法および復号化方法、これを用いた装置とプログラム
JP4724351B2 (ja) * 2002-07-15 2011-07-13 三菱電機株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置
JP2004343451A (ja) * 2003-05-15 2004-12-02 Matsushita Electric Ind Co Ltd 動画像復号化方法および動画像復号化装置
US7317839B2 (en) * 2003-09-07 2008-01-08 Microsoft Corporation Chroma motion vector derivation for interlaced forward-predicted fields
US7620106B2 (en) * 2003-09-07 2009-11-17 Microsoft Corporation Joint coding and decoding of a reference field selection and differential motion vector information
JP4252916B2 (ja) * 2004-03-18 2009-04-08 富士通マイクロエレクトロニクス株式会社 動きベクトルの探索範囲を決定する方法
JP3880985B2 (ja) * 2004-08-05 2007-02-14 松下電器産業株式会社 動きベクトル検出装置および動きベクトル検出方法
JP2004328799A (ja) * 2004-08-09 2004-11-18 Toshiba Corp 動画像符号化装置および動画像符号化方法
US20060133507A1 (en) * 2004-12-06 2006-06-22 Matsushita Electric Industrial Co., Ltd. Picture information decoding method and picture information encoding method
JP4317814B2 (ja) * 2004-12-06 2009-08-19 株式会社ルネサステクノロジ 動画像情報の符号化装置及び符号化方法
JP2006313950A (ja) * 2005-05-06 2006-11-16 Hitachi Ltd 画像符号化装置、及び画像符号化方法
JP4401341B2 (ja) * 2005-09-27 2010-01-20 三洋電機株式会社 符号化方法
SG130962A1 (en) * 2005-09-16 2007-04-26 St Microelectronics Asia A method and system for adaptive pre-filtering for digital video signals
JP4804423B2 (ja) * 2006-08-08 2011-11-02 キヤノン株式会社 動きベクトル検出装置及び動きベクトル検出方法
US20080075165A1 (en) * 2006-09-26 2008-03-27 Nokia Corporation Adaptive interpolation filters for video coding
CN100551073C (zh) * 2006-12-05 2009-10-14 华为技术有限公司 编解码方法及装置、分像素插值处理方法及装置
KR101369746B1 (ko) * 2007-01-22 2014-03-07 삼성전자주식회사 적응적 보간 필터를 이용한 영상 부호화, 복호화 방법 및장치
JP2010524379A (ja) * 2007-04-09 2010-07-15 ノキア コーポレイション エンコーダ及びデコーダの低複雑度を伴うビデオ符号化のための高精度動きベクトル
JP5197630B2 (ja) * 2008-01-09 2013-05-15 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法、および画像復号方法
US20090257499A1 (en) * 2008-04-10 2009-10-15 Qualcomm Incorporated Advanced interpolation techniques for motion compensation in video coding
EP3633996A1 (en) * 2009-10-14 2020-04-08 InterDigital Madison Patent Holdings Methods and apparatus for adaptive coding of motion information

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1396774A (zh) * 2002-07-12 2003-02-12 清华大学 基于预测方向校正/统计预判的快速亚象素运动估计方法
CN1679341A (zh) * 2002-09-06 2005-10-05 皇家飞利浦电子股份有限公司 用于提高效率和差错恢复能力的内容自适应多重描述运动补偿
CN1780401A (zh) * 2004-11-22 2006-05-31 株式会社日立制作所 译码装置及使计算机执行译码方法的程序

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104661031A (zh) * 2015-02-16 2015-05-27 华为技术有限公司 用于视频图像编码和解码的方法、编码设备和解码设备
CN104661031B (zh) * 2015-02-16 2017-12-22 华为技术有限公司 用于视频图像编码和解码的方法、编码设备和解码设备
US10349079B2 (en) 2015-02-16 2019-07-09 Huawei Technologies Co., Ltd. Video image encoding method, video image decoding method, encoding device, and decoding device
CN108141607A (zh) * 2015-07-03 2018-06-08 华为技术有限公司 视频编码和解码方法、视频编码和解码装置
US10523965B2 (en) 2015-07-03 2019-12-31 Huawei Technologies Co., Ltd. Video coding method, video decoding method, video coding apparatus, and video decoding apparatus
WO2019001024A1 (zh) * 2017-06-30 2019-01-03 华为技术有限公司 一种确定运动矢量预测值的方法以及相关设备
CN109218733A (zh) * 2017-06-30 2019-01-15 华为技术有限公司 一种确定运动矢量预测值的方法以及相关设备
TWI684356B (zh) * 2017-06-30 2020-02-01 大陸商華為技術有限公司 確定運動矢量預測值的方法及設備、電腦可讀儲存介質
CN109218733B (zh) * 2017-06-30 2022-03-29 华为技术有限公司 一种确定预测运动矢量预测的方法以及相关设备

Also Published As

Publication number Publication date
JP7179037B2 (ja) 2022-11-28
US20120201293A1 (en) 2012-08-09
JP2013509020A (ja) 2013-03-07
JP2020188483A (ja) 2020-11-19
CN102687511B (zh) 2016-04-20
JP5922579B2 (ja) 2016-05-24
KR20120093288A (ko) 2012-08-22
EP3633996A1 (en) 2020-04-08
KR101792041B1 (ko) 2017-11-02
WO2011046587A1 (en) 2011-04-21
EP2489189A1 (en) 2012-08-22
JP2016167837A (ja) 2016-09-15
JP2018067949A (ja) 2018-04-26

Similar Documents

Publication Publication Date Title
CN102687511A (zh) 运动信息的自适应编解码的方法和装置
JP2022172145A (ja) ビデオ符号化およびビデオ復号における変換の選択のための方法および装置
CN102090062B (zh) 用于位移帧内预测和模板匹配的去块滤波
JP5882984B2 (ja) ビデオ符号化およびビデオ復号化のための暗示的適応型動きベクトル予測子選択の方法および装置
CN102067601B (zh) 视频编码和解码中模板匹配预测(tmp)的方法和装置
CN107079164A (zh) 用于视频编码的自适应运动向量分辨率的方法
CN101933329B (zh) 视频编码和解码中用于隐性块分割的方法与设备
CN108781284A (zh) 具有仿射运动补偿的视频编解码的方法及装置
CN109076237A (zh) 在视频和图像压缩中使用帧内预测滤波器的帧内预测模式的方法和装置
US20120269268A1 (en) Motion vector encoding/decoding method and device and image encoding/decoding method and device using same
CN102204254A (zh) 使用隐式运动预测进行预测精细化的方法及装置
CN101682769A (zh) 用于视频编码和解码的跳过-直接模式的取决于环境的合并的方法和装置
KR101906614B1 (ko) 모션 보상 예제 기반 초해상도를 사용하는 비디오 디코딩
CN102598667A (zh) 帧内预测模式的高效视频编码和解码的方法和装置
CN102804774A (zh) 用于视频编解码的降低了复杂度的模板匹配预测方法和装置
CN102668566A (zh) 将dc帧内预测模式用于视频编码和解码的方法和装置
EP3884667B1 (en) Video coding with triangular shape prediction units
KR20120039728A (ko) 비디오 인코딩 및 디코딩에서 적응적 변환 선택을 위한 방법들 및 장치
WO2020146553A1 (en) Video coding using cross-component linear model
WO2021056920A1 (zh) 视频编解码的方法和装置
CN117729335A (zh) 一种视频数据处理方法、装置、计算机设备及存储介质
CN112970252A (zh) 视频编解码的方法和装置
KR20170033474A (ko) 고효율 비디오 부호화를 위한 움직임 추정 단계의 율-왜곡 최적화 방법 및 장치

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190202

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: 20190202

Address after: I Si Eli Murli Nor, France

Patentee after: THOMSON LICENSING

Address before: I Si Eli Murli Nor, France

Patentee before: THOMSON LICENSING