[go: up one dir, main page]

CN103430545B - 用于高效视频编码的内容适应性运动补偿滤波 - Google Patents

用于高效视频编码的内容适应性运动补偿滤波 Download PDF

Info

Publication number
CN103430545B
CN103430545B CN201180061602.2A CN201180061602A CN103430545B CN 103430545 B CN103430545 B CN 103430545B CN 201180061602 A CN201180061602 A CN 201180061602A CN 103430545 B CN103430545 B CN 103430545B
Authority
CN
China
Prior art keywords
filter
motion
sub
frame
compensated
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
CN201180061602.2A
Other languages
English (en)
Other versions
CN103430545A (zh
Inventor
A·普瑞
D·索塞克
C-K·崔
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.)
Intel Corp
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of CN103430545A publication Critical patent/CN103430545A/zh
Application granted granted Critical
Publication of CN103430545B publication Critical patent/CN103430545B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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
    • H04N19/615Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding using motion compensated temporal filtering [MCTF]
    • 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • 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/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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

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

Abstract

描述一种用于适应性运动滤波以改进帧间运动补偿视频编码的子像素运动预测效率的系统和方法。该技术使用在搜索复杂性方面十分高效的码本方法,该方法从运动滤波器系数集的预计算码本查找最佳运动滤波器集。在一些实施例中,搜索复杂性通过将完整码本分区成小基础码本和大虚拟码本来进一步降低,使得对搜索的主要计算仅仅需要对基础码本执行。

Description

用于高效视频编码的内容适应性运动补偿滤波
技术领域
本公开涉及视频信号的编码和解码,尤其涉及用于运动补偿预测的适应性滤波器的基于码本的编码和解码。
背景
数字多媒体(诸如数字图像、语音/音频、图形和视频)的出现因其相对便利,而大大改善了各种应用并且广泛开辟了新的应用,这种便利实现了内容的可靠存储、通信、传输以及搜索和访问。总体而言,数字多媒体应用已有很多,涵盖包括娱乐、信息、医药和安全的广泛范围,并且已经通过多种方式造福社会。由诸如相机和话筒之类的传感器所捕捉的多媒体通常是模拟的,以脉冲编码调制(PCM)形式数字化的过程将其呈现为数字形式。但是,就在数字化之后,所得数据的量可能非常巨大,因为其对由扬声器和/或TV显示器所需的模拟表示的重建而言是必需的。因此,大量数字多媒体内容的有效通信、存储或传输要求从原始PCM形式压缩成压缩表示,因此许多用于多媒体压缩的技术被发明出来。多年来,视频压缩技术已经成熟到允许达到在10到100之间的高压缩系数同时保持高神经性视觉质量(通常类似于非压缩数字视频)。
至今在视频压缩领域和科技中已经取得极大进步(如过多的标准团体驱动的视频编码标准(诸如MPEG-1、MPEG-2、H.263、MPEG-4第2部分、MPEG-4AVC/H.264、MPEG-4SVC和MVC)以及工业驱动的私有标准(诸如Windows Media Video、RealVideo、On2VP等等)所呈现的),客户对可以随时随地访问的更高质量、更高分辨率以及现场3D(立体声)视频日益增长的嗜好需要经由各种手段(诸如DVD/BD、空中广播、缆线/卫星、有线和移动网络)向广泛的客户设备(诸如PC/膝上型计算机、TV、机顶盒、游戏控制台、便携式媒体播放器/设备和智能电话)进行传送,这刺激了对更高视频压缩水平的需求。在标准团体驱动的标准中,ISOMPEG最近开始的在高效视频编码(HEVC)方面的努力证明了这一点,期望该努力能将新技术贡献与来源于ITU-T标准委员会近些年对H.265视频压缩的探索性工作的技术相结合。所有上述标准都采用通用帧间预测编码框架,该框架涉及通过首先将帧分成诸个块并向待编码帧的每个块分配运动向量(或多个运动向量)来相对于过往解码帧补偿视频帧(或视频场)之间的运动,进而减小时间冗余;这些运动向量随后被发送到解码器并被用于生成运动补偿预测帧,该运动补偿预测帧与过往解码帧和编码块通常经由转换编码诸个块的方式相区分。为了更高的编码效率,已经意识到运动向量应该具有比整数像素更高的精度,因此MPEG-1和MPEG-2允许1/2像素准确度同时最近标准(诸如MPEG-4第2部分(第2版)视频和H.264)使用1/4像素准确度运动补偿。然而,由于帧的实际像素仅在整数像素精度下可用,需要特殊滤波器如生成运动补偿预测所需地将先前帧的块内插到子像素(subpel)位置。H.264标准指定能够用于生成1/4像素内插所需的全部16个相的可分离滤波器的固定滤波器集。该固定滤波器集是理论上最佳的,因为它是针对最大收益从Weiner理论导出的;然而,固定滤波器集中的一些滤波器限于6抽头,而对于其它滤波器,允许多达9抽头。此外,由于精度限制,在整数化过程中准确度有一些损失。当该类预测通常对平均值进行工作时,对于具体图片或场景,该单个固定滤波器或任何其它单个固定滤波器可能与内容的特征失配,因此还存在改进空间。
近年来,在1/4像素运动补偿的滤波领域中已有大量研究,导致适应性运动滤波的发展。在适应性滤波中,系数并不固定,并因此并非先验已知;即,系数是从内容自身计算得到并随时间改变。用于计算滤波器系数的数学过程基于Wiener Hopf方程。
当Wiener Hopf数学过程可以计算最佳滤波器系数集时,该方法在视频编码系统中的实际结合存在显著问题。因此在H.265和/或HEVC发展的情形中,已有多种提案来解决各种缺点并增加适应性以获得改进的编码增益。这些提案可以简要列举如下。
不可分离与可分离滤波器之间的选择-不可分离滤波器的计算可能更加计算密集,但是理论上,不可分离滤波器可以得到更高的质量。然而,不可分离滤波器也需要可分离滤波器系数数量的两倍,因此不可分离滤波器的编码开销可能较高。
总体而言,对于运动滤波,可分离滤波器能够提供合理的编码增益,因此提供总体上更好的折衷。
迭代次数与每次迭代的增益的折衷-Wiener Hopf方程的迭代解采用多次迭代来收敛以给出好的结果。所需的迭代次数依赖于(最初用于首次迭代的)默认滤波器集距最佳结果多远。如果它们较近,通常多达4次迭代可能足够,但是如果它们十分不同,则可能需要16至20次迭代。如果默认滤波器与最佳滤波器之间的差异很大,在4次迭代处停止不会得到大部分增益。
用于位成本最佳折衷的各系数的准确度相对于质量-通过将滤波器集中特定系数保持低准确度,可以得到一些位节省。实际上,滤波器系数的最大精度可被限于8位,且在一些例外情形中,所用精度可被限于10位。
用于向解码器的传输的系数位成本降低(实际值、差分、更新限制)-要向解码器发送的系数数量必需受限,因为例如,典型的不可分离滤波器集可能要求发送多达120个系数(每帧650-950位的位成本)而即便是可分离滤波器集也可能要求发送45-60个系数(每帧400-550位的位成本)。采用差分编码(当前帧的编码滤波器集与先前帧滤波器集或相对于默认滤波器集差分地进行)或通过对更新设置限制,该位计数可或多或少地减少,但是伴随一些质量损失。
图片内的多滤波器集以改进总体增益-当即便每帧计算的一个Wiener滤波器集可以给出由于例如H.264标准滤波器集的增益时,通过提供帧内(诸如基于块或片)的多滤波器集的选择可以得到更高的增益。然而,一个问题是与附加增益相比,即便每帧2个滤波器集的位成本都可能过多。因此当使用多滤波器集时,管理滤波器系数的位成本是必需的。
率失真优化(RDO)复杂性,由于它可能原本涉及滤波器切换地图上的多次迭代以导出最佳结果-当使用多个滤波器以获得高增益时,通常必需以迭代方式来使用率失真优化以获得用于滤波器选择的正确块尺寸,该滤波器选择提供在滤波器切换频率与增益之间的良好折衷。
当使用多个滤波器时的块地图开销位成本-当使用多个滤波器(包括在标准滤波器与所计算滤波器之间切换的情形)时,切换地图成本可能相当大。例如,如果在对宏块使用1位而在宏块的基础上在两个滤波器之间切换,则对于通用中间格式(CIF)序列,除了可能发送两个滤波器集的位成本之外,应该添加396位额外开销。
通过使用整数位置滤波器以及具有偏移的滤波器所获得的附加增益-已经做出一些尝试来通过在最佳1/4像素位置是整数位置的情形中对整数位置计算滤波器以挤压增益。此外,已经使用具有偏移的滤波器进行一些实验以获得更高增益。两种情形都需要附加的开销位。
如上所述,已经提出许多计数和变型,当前方法(即便在差分编码之后)的系数位计数开销过高。此外,现有技术由于需要在系数集的很多次迭代上进行计算,因此在计算上相当复杂。此外,当前系统的适应性强的唯一方法是通过对多切换滤波器广泛使用RDO,这意味着额外开销和复杂性。
与适应性运动补偿滤波相关的附加信息可在以下参考文献中找到,每个参考文献都出于全部目的通过引用完全结合于此:
·T.Wedi,"Adaptive Interpolation Filter For Motion CompensatedPrediction(用于运动补偿预测的适应性内插滤波器)"图像处理国际会议(ICIP)文集,509-511页,2002。
·V.Vatis等人,"Coding of Coefficients of two-dimensional non-separable Adapive Wiener Interpolation Filter(两维不可分离适应性Wiener内插滤波器的系数的编码)"SPIE视觉通信和图像处理(VCIP)文集,2005年7月。
·V.Vatis和Joern Ostermann,"Locally Adaptive Non-SeparableInterpolaion Filter for H.264/AVC(用于H.264/AVC的本地适应性不可分离内插滤波器)"图像处理国际会议(ICIP)文集,2006年10月。
·S.Wittmann和T.Wedi,"Separable Adaptive Interpolation Filter forVideo Coding(用于视频编码的可分离适应性内插滤波器)",图像处理国际会议(ICIP)文集,2500-2503页,2008。
附图简述
图1示出采用使用固定运动滤波的运动补偿预测的现有技术帧间解码器的一般框图。
图2示出与现有技术编码器对应并与编码器处的本地解码回路类似地工作的现有技术解码器。
图3示出被组织成像素栅格的视频帧的部分,其中运动补偿预测块被计算,该像素栅格进一步被化分成子像素栅格。
图4a-o示出对于每个子像素位置的6/9抽头到6x6滤波器矩阵的映射。
图5示出采用使用通用化适应性运动滤波的运动补偿预测器的现有技术帧间解码器的框图。
图6示出采用使用通用化适应性运动滤波的运动补偿预测器的现有技术帧间解码器的框图。
图7a-f示出用于划分图片的多种分区模式。
图8示出根据一个实施例的采用使用运动滤波码本编码器的运动补偿预测器的帧间编码器的框图。
图9示出根据一个实施例的采用使用运动滤波码本解码器的运动补偿预测器的帧间解码器的框图。
图10示出用于生成运动滤波器码本或用于子像素和整数像素位置的码本的‘离线’例程。
图11示出根据一个实施例的用于针对运动滤波器集而搜索码本的‘在线’例程。
图12示出根据多种运动补偿码本滤波器编码器和解码器并在本文中不同描述的示例性位流句法。
图13a-b示出根据不同实施例的视频流内的图片或帧序列。
图14示出根据一个实施例的示例性视频编码/解码系统。
图15示出根据一个实施例的示例性编码设备的若干组件。
图16示出根据一个实施例的示例性解码设备的若干组件。
图17示出根据一个实施例的码本运动补偿滤波视频编码例程,诸如该例程可以由编码设备来执行。
图18示出根据一个实施例的用于获得码本的子例程。
图19示出根据一个实施例的用于从码本选择运动补偿滤波器子集的子例程。
图20示出根据一个实施例的用于确定用于图片一部分的整数位置运动补偿滤波器的子例程。
图21示出根据一个实施例的码本运动补偿滤波视频解码例程,诸如该例程可以由解码设备来执行。
详细描述
以下详细描述大部分以常规计算机组件的过程和操作的符号表示来呈现,这些计算机组件包括处理器、用于处理器的存储设备、连接的显示设备和输入设备。此外,这些过程和操作可以利用异类分布式计算回路境中的常规计算机组件,包括远程文件服务器、计算机服务器和存储设备。
这些常规的分布式计算组件的每一个可由处理器经由通信网络访问。
短语“在一个实施例中”、“在多个实施例中”、“在一些实施例中”等等可以重复使用。这些术语不一定指代相同实施例。术语“包括”、“具有”和“包含”是同义词,除非上下文另行说明。
概述
描述用于帧间视频编码的运动滤波的系统和方法的多个实施例。这些实施例中的一些可以提供比现有方案降低的计算复杂性,因为代替在编码期间采用许多迭代来迭代地计算滤波器系数,运动滤波器集从运动滤波器系数集的预计算码本进行查找。
在一些实施例中,搜索复杂性可以通过将完整码本分区成小“基础”码本和较大“虚拟”码本来进一步降低,这使得用于搜索的主要计算仅需要对基础码本进行。这些实施例可以通过以下来降低存储:(a)仅存储基础码本和用于合成剩余码本的算法;(b)对每个滤波器集存储,根据运动子像素滤波位置存储具有适当数量的抽头的滤波器;以及(c)仅存储所需的每系数的位精度。
在多个实施例中,所述运动滤波器码本技术可被运用于图片、片组、块地图、合并的块地图、或适应性分区(诸如二叉树、四叉树)或内容依赖分区等等。与仅有率失真优化(RDO)驱动的其它技术相比,本技术用于内容依赖分区的能力也降低复杂性并改进准确度。多个实施例可以仅用于子像素滤波、仅用于整数位置滤波或者用于两者。此外,码本可以易于替换或扩展以使其适应内容的特性。
描述滤波器码本设计和码本高效搜索的细节。通过码本设计的所述方法并且对于所提出的码本尺寸,该技术可以得到良好的运动滤波性能,潜在地提高广泛视频内容的精度效率。
在多个实施例中,所述技术可以是位高效的,因为可能仅需要到码本的索引以标识所选子像素滤波器集或整数像素滤波器。在许多情形中,编码索引可以比编码实际系数或发送差分编码的滤波器系数来的更加高效。当所发送的实际索引数量依赖于分区数量时,与使用同类分区的现有技术相比,所述基于码本的技术在位率方面更加高效。
多个实施例可以用于使用由I-、P-、B-图片编码构成的常规图片结构的典型视频编码。其它实施例可以用于代替I-和P-图片或作为其附加的其它结构,诸如分级B-图片、单向B-图片或其它B-图片替换方案。
现在详细参照如附图所示的实施例的描述。当结合附图和相关描述来描述实施例时,不旨在将范围限制在本文所述实施例中。相反,旨在覆盖所有替换、修改和等同方案。在替换实施例中,附加设备或所述设备的组合可以在不将范围限制在本文所述实施例的情况下被添加或组合。
图1示出采用使用固定运动滤波的运动补偿预测的现有技术帧间编码器100的一般框图。一个或多个视频帧(vidfrms)被块分度器划分成块(blh)。块(blh)被每次一个地输入差分器133并与相应的预测信号块(pred)差分,并且残差(res)被转换器135前向转换,得到系数块(tcof),该系数块被发送给量化器138,得到量化系数块(tcofq),该量化系数块被发送给熵编码器118和反量化器140。反量化器140将去量化的系数块(tcof)发送给反转换器143。在加法器145处,来自运动补偿回路的预测块(pred)被加至反转换器143输出处的去量化残差块(res’)。在加法器145处,来自运动补偿回路的预测块(pred)被加至反转换器743的输出处的去量化残差块(res’)。加法器745输出本地解码块(rec),该本地解码块被发送给帧汇编器和降低块属性的解块滤波器处理器148。
在帧汇编器和解块滤波处理器148输出处的块(reed)形成帧,该帧被用作为运动估计器128和运动补偿预测器130的参考帧。
运动估计器128计算原始帧的块(blh)相对于重建帧(reed)的运动向量(mv)。运动向量计算的过程包括计算每块的整数像素向量,之后使用子像素内插器129计算子像素向量(sv)(例如到1/4像素分辨率)。通常,子像素内插器129包含在运动估计器128自身中,但是为了描述清楚,它被分开示出和引用。运动估计器128搜索最佳匹配以及因此的最佳运动向量(mv),其中运动补偿预测器130使用该运动向量(mv)来生成运动补偿预测器块(pred)。运动补偿器130也使用与子像素内插器129类似的子像素(例如1/4像素分辨率)内插器131。子像素内插器129和131使用的滤波器集(fmf)被预指定并因此是固定的。熵编码器118编码量化转换系数(未示出)、差分运动向量(dmv)和开销数据(未示出),生成压缩位流128。
图2示出与现有技术编码器100对应并类似于编码器100处的本地解码回路155而工作的现有技术解码器200。具体而言,待解码的压缩位流201输入到熵解码器203,该熵解码器解码量化系数块(tcofq)、差分运动向量(dmv)以及开销数据(未示出)。量化系数块(tcofq)随后被反量化器203反量化,得到去量化系数(tcof),该去量化系数随后被反转换器215反转换,得到解码残差块(res’’)。在加法器223处,去量化系数(tcof)被加至在运动补偿预测器230处通过使用相应的运动向量(mv)、使用由子像素内插器229计算的子像素向量(sv)(例如1/4像素分辨率)而获得的运动补偿预测块(pred)。
所得的解码视频(rec)在帧汇编器和解块滤波器225中解块,并且如同在编码器100处一样,解块视频(reed)被用作参考帧。解码器200处的运动补偿预测器230与编码器100处的运动补偿预测器130类似地工作,诸如运动补偿预测器230使用如编码器100所使用的具有相同固定运动滤波器(fmf)的类似子像素内插器229。
图3示出被组织成像素栅格的视频帧的部分300,其中运动补偿预测块被计算,该像素栅格被进一步划分成子像素栅格。整数像素位置被示为A1-A6、B1-B6、C1-C6、D1-D6、E1-E6和F1-F6。C3-C4和D3-D4之间的1/4像素位置由位置{a,b,c,d,e,f,g,h,k,1,m,n,o}示出,使得每个块可以在这些四分之一像素位置之一处被补偿。图3还示出在位置aa、bb、cc、dd、ee、ff、gg、hh、ii和jj处的若干1/2像素位置。
用于子像素位置{a,b,c,d,e,f,g,h,k,1,m,n,o}的滤波器集的计算通过使用6抽头或9抽头滤波器来执行。滤波器系数被映射到用于从6x6周围像素邻居(A1-F6)计算子像素值的6x6矩阵。
图4a-o示出对于每个子像素位置,6/9抽头到6x6滤波器矩阵的映射。
图4a示出滤波器系数以及这些系数应用其上以直接计算子像素位置{a}处的滤波内插块的像素;该位置要求6个滤波器系数。
图4b示出滤波器系数以及这些系数应用其上以直接计算子像素位置{b}处的滤波内插块的像素;该位置对应于水平一半像素位置,并由于对称性而仅要求3个滤波器系数。
图4c示出滤波器系数以及这些系数应用其上以直接计算子像素位置{c}处的滤波内插块的像素;该位置要求6个滤波器系数。
图4d示出滤波器系数以及这些系数应用其上以直接计算子像素位置{d}处的滤波内插块的像素;该位置要求6个滤波器系数。
图4e示出滤波器系数以及这些系数应用其上以直接计算子像素位置{e}处的滤波内插块的像素;该位置要求6个滤波器系数。
图4f示出滤波器系数以及这些系数应用其上以直接计算子像素位置{f}处的滤波内插块的像素;该位置要求9个滤波器系数。
图4g示出滤波器系数以及这些系数应用其上以直接计算子像素位置{g}处的滤波内插块的像素;该位置要求6个滤波器系数。
图4h示出滤波器系数以及这些系数应用其上以直接计算子像素位置{h}处的滤波内插块的像素;该位置对应于垂直一半像素位置,并由于对称性而仅要求3个滤波器系数。
图4i示出滤波器系数以及这些系数应用其上以直接计算子像素位置{i}处的滤波内插块的像素;该位置要求9个滤波器系数。
图4j示出滤波器系数以及这些系数应用其上以直接计算子像素位置{j}处的滤波内插块的像素;该位置要求9个滤波器系数。
图4k示出滤波器系数以及这些系数应用其上以直接计算子像素位置{k}处的滤波内插块的像素;该位置要求9个滤波器系数。
图4l示出滤波器系数以及这些系数应用其上以直接计算子像素位置{l}处的滤波内插块的像素;该位置要求6个滤波器系数。
图4m示出滤波器系数以及这些系数应用其上以直接计算子像素位置{m}处的滤波内插块的像素;该位置要求6个滤波器系数。
图4n示出滤波器系数以及这些系数应用其上以直接计算子像素位置{n}处的滤波内插块的像素;该位置要求9个滤波器系数。
图4o示出滤波器系数以及这些系数应用其上以直接计算子像素位置{o}处的滤波内插块的像素;该位置要求6个滤波器系数。
适应性Wiener滤波
在讨论图5的细节之前,简要讨论最佳滤波理论,因为这是使用Wiener滤波方法的适应性滤波器设计的基础。
对于每个子像素位置,交叉相关和自相关矩阵被累加,由此可以通过求解如下的Weiner Hopf方程来计算最优Wiener滤波器集。
设x(n)是输入信号,y(n)是输出,且h(n)标识滤波器系数。
滤波器输出:
误差信号:e(n)=d(n)-y(n)
均方差:J=E[e2(n)]
以向量形式:
and
y(n)=hTx(n)=x(n)Th
其中Pd是标量。
交叉相关行向量:Rdx=E[d(n)x(n)T]
自相关矩阵:Rxx=E[x(n)x(n)T]
为了寻找最小值,如下求导数并将其设为零:
现在求解h,Wiener Hopf方程如下:
Wiener Hopf方程确定以均方差形式的最优滤波器系数,且所得滤波器被称为“wiener”滤波器。
在以上方程中,h是滤波器系数向量(通常6或9系数),Rxx是自相关矩阵(对于参考帧的块数据)且Rdx是交叉相关矩阵/行向量(在源帧与参考帧块数据之间)。对于每个子像素位置,单独累加矩阵,因此h可以通过对每个子像素位置求解上述方程来计算,由此获得16滤波器的适应滤波器集(对于1/4像素位置)。
图5示出采用使用通用化适应性运动滤波的运动补偿预测器的现有技术帧间编码器500的框图。块分度器501、前向转换535、量化器538、反量化器540、反转换543、帧汇编器和解块滤波处理器548以及熵编码器518以与如图1所示和以上讨论的编码器100相应组件相同的方式工作,其描述再次无需赘述。
类似地,运动估计器528和运动补偿器530以与以上所述的运动估计器128和运动补偿器130相同的方式工作,除了它们使用的滤波器之外。在此,关注运动滤波,且仅详细讨论该子系统。
与使用固定滤波器集的H.265不同,编码器500从数据计算滤波器集。该计算使用以上讨论的Wiener Hopf方程在子像素(wiener)迭代滤波器集计算器558中进行。该过程通过使用默认滤波器集对每个块计算最低的绝对差之和(SAD)开始,其反应了最佳匹配的子像素匹配位置。在下一迭代中,使用这些子像素位置,新滤波器集被计算,该滤波器集在被使用时提供更新的子像素位置。该过程是迭代的,并因此该过程可能需要若干次迭代(4-20)来收敛。由于每次迭代中评估的复杂性,该过程是计算密集的。在一些情形中,有可能限制迭代次数,为性能而折衷复杂度。所计算的适应性运动滤波器集(amf)被提供给在运动补偿预测器530处的子像素内插器531。该滤波器集(amf)也需要被编码并仅有位流发送至解码器。由于滤波器集(amf)可能使用多达99个滤波器系数,滤波器集的高效编码非常重要。典型的技术涵盖发送用于最重要位置的滤波器集、系数的差分编码(dmf)(由差分器560生成)、压制从上次发送以来未改变的系数等等。
假设滤波器系数能被高效编码,为了在两个或更多滤波器集之间选择以获得更高效率的目的,可以对每个图片发送多滤波器集;该操作在空间分区器和分区编码器505中执行,该空间分区器和分区编码器505生成分区地图(ptmap)。率失真优化器508通常用于确保及时在使用多滤波器和相关开销时仍能得到增益。
图6示出采用使用通用化适应性运动滤波的运动补偿预测器的现有技术帧间解码器600的框图。熵解码器603、反转换器615、反量化器613以及帧汇编器和解块滤波处理器625以与图2所示和以上讨论的解码器200相应组件相同的方式工作,其描述在此无需赘述。
类似地,运动补偿预测器630以与以上讨论的运动补偿预测器230相同的方式工作,除了所使用的滤波器集之外。在此,关注运动滤波,且仅详细讨论该子系统。
熵解码器603对码字(dmj)进行解码,该码字解码了运动滤波器的差分值,在加法器631处表示预测的滤波器集被加至该差分值,得到系数滤波器集(amf)。该滤波器集(amf)被提供给运动补偿预测器630中的子像素内插器629。此外,在使用多滤波器的情形中,分区地图(ptmap)可被解码使得滤波器(amf)可被应用于图片的正确部分。
图7a-f示出用于划分图片的多个分区模式。例如,图7a表示基于图片的分区,其中滤波器编码仅在逐图片的基础上进行切换。图7b示出基于片或片组的分区,使得第一滤波器集应用在片组A上,且第二滤波器集应用在片组B上。图7c表示标识哪个滤波器用于块类型A且哪个滤波器用于块类型B的块地图。图7d示出将图片划分成瓦片并进一步将瓦片划分成二叉树分区,使得基于率失真优化(RDO)的多个二叉树切割被标记为A或B,指示它们可能相应地使用第一或第二滤波器集。类似地,图7e示出将图片分区成瓦片,并进一步将瓦片分区成标记为A或B的两类四叉树分区,使得它们可以相应地使用第一或第二滤波器集。最后,图7f示出从片合并或块合并或二叉树合并或四叉树分区合并或单纯地通过空间分段而得到的区域。
图8示出根据一个实施例的采用使用运动滤波码本编码器的运动补偿预测器的帧间编码器800的框图。块分度器801、前向转换器835、量化器838、反量化器840、反转换器843、帧汇编器和解块滤波处理器848以及熵编码器818以与图1所示和以上讨论的编码器100相应组件相同的方式工作,其描述在此无需赘述。类似地,运动估计器828和运动补偿器830以与以上所述的运动估计器128和运动补偿器130相同的方式工作,除了它们使用的滤波器集之外。在此,关注运动滤波,且仅详细讨论该子系统。
与现有适应性运动滤波编码器相比,基于码本的运动滤波编码器800从现有码本选择滤波器集,以代替明确计算运动滤波器。在一个实施例中,使用两类码本,一类存储子像素滤波器集860且另一类存储整数位置滤波器863。MC滤波器集码本搜索处理器858允许高效搜索相应码本,提供相应地涉及子像素滤波器集(mcfs)和整数位置滤波器(mcfi)的子像素和整数位置码本索引。
在多个实施例中,子像素滤波器集(mcfs)和整数位置滤波器(mcfi)可以在图片(仅一次)或在空间分区(每图片多次)基础上发送。在多个实施例中,可以使用任何类型的空间分区,诸如片、可变块尺寸、块、二叉树、四叉树、区域、瓦片等等(参见图7a-f)。该分区由空间分区器和分区编码器805执行。分区的细节(诸如待发送的分区数量)是基于由位率/失真折衷分析器808和场景内容分析器803的率失真分析来确定的。在位流中向解码器发送最佳匹配的子像素滤波器集和整数像素滤波器集。子像素滤波器集(mcfs)和整数位置滤波器(mcfi)被提供给MC滤波处理器865以在运动估计器/运动补偿预测器828处生成运动补偿预测。在一些实施例中,该过程可以在搜索以及由索引标识滤波器/滤波器集的位成本方面是高效的。
图9示出根据一个实施例的采用使用运动滤波码本解码器的运动补偿预测器的帧间解码器900的框图。熵解码器903、反转换器915、反量化器913以及帧汇编器和解块滤波处理器925以与图2所示和以上讨论的解码器200相应组件相同的方式工作,其描述在此不再赘述。类似地,运动补偿预测器930以与以上讨论的运动补偿预测器230相同的方式工作,除了所使用的滤波器集之外。在此,关注运动滤波,且仅详细讨论该子系统。
熵解码器903对位流901进行熵解码以获得码本子像素运动滤波器索引(mcfsi)和/或整数位置运动滤波器索引(mcfii)。这些索引(mcfsi)和(mcfii)被用于从子像素码本933和/或整数位置码本935访问所需的子像素滤波器集(mcfs)和/或整数位置滤波器(mcfii)。所得的子像素滤波器集mcfs和/或整数像素滤波器mcfii被提供给MC滤波处理器929,该处理器执行子像素内插和/或整数像素滤波以生成运动补偿预测(pred)。在一些实施例中,标志(filt senf)和(intfilt senf)可进一步被熵解码器903解码,指示位流901是否分别包括子像素运动滤波器索引(mcfsi)和整数位置运动滤波器索引(mcfii)。
表1示出来自示例性子像素“基础”码本的两个样本滤波器集(id=0和id=l)。在一个实施例中,子像素“基础”码本可以包括16个“基础”子像素滤波器集(在1/4像素滤波的情形中,每个包括15或16个子像素位置滤波器)。
来自16个“基础”子像素滤波器集的单独子像素位置滤波器可被用于不同的预确定组合以创建“虚拟”码本。在一个实施例中,“虚拟”码本可以包括256个子像素滤波器集。在其他实施例中,“基础”和“虚拟”码本可以包括更多或更少的滤波器集。
表1
示例性滤波器集在表1中示出,滤波器集id=0对应于清晰场景,滤波器集id=1对应于模糊场景。
在一些实施例中,子像素码本(诸如图1所示(部分)的码本)可被等效地表征为包括多个运动补偿滤波器,该多个运动补偿滤波器被分组成分别对应于多个子像素位置的多个子像素位置组,多个子像素位置组的每一个包括适于在多个子像素位置的相应一个处内插图片块的多个运动补偿滤波器。例如,表1所示的码本可被表征成包括对应于子像素位置{a-o}的15或16组运动补偿滤波器,例如:
子像素位置{a}组:{a0,a1,a2..a15};
子像素位置{b}组:{b0,bl,b2..b15};…
子像素位置{o}组:{o0,ol,o2..o15}。
码本可被进一步表征为包括若干(例如256)运动补偿滤波器的预定子集,每个子像素位置组一个,例如:
·子集id=0:{a0,b0,c0,d0,e0,f0,g0,h0,i0,j0,k0,l0,m0,n0,o0};
·子集id=1:{a1,b1,c1,d1,e1,f1,g1,h1,i1, j1,k1,l1,m1,n1,o1};…
·子集id=15:{a15,b15,c15,d15,e15,f15,g15,h15,i15,j15,k15,l15,m15,n15,o15};
·子集id=16:{a0,b5,c7,d9,e4,f4,g12,h6,i7,j2,k4,l11,m8,n0,o10};…
·子集id=255:{a10,b6,c12,d9,e2,f2,g3,h10,i3,j5,k1,l8,m11,n6,o10}.
在一些实施例中,码本还进一步包括整数位置滤波器组,例如整数位置滤波器组{0}:{00,01,02..015}。在这些实施例中,运动补偿滤波器的预定子集还可以包括整数位置滤波器,例如:子集id=0:{00,a0,b0,c0,d0,e0,f0,g0,h0,i0,j0,k0,l0,m0,n0,o0};子集id=1:{01,a1,b1,c1,d1,e1,f1,g1,h1,i1,j1,k1,l1,m1,n1,o1};等等。
在一些实施例中,整数位置滤波器可以被包括在整数位置码本中。表2示出来自示例性整数位置码本的两个样本整数位置滤波器(id=0和id=l)。在一个实施例中,整数位置码本可以包括48个整数位置滤波器。在其它实施例中,整数位置码本可以包括更多或更少的滤波器。在一些实施例中,整数位置滤波器还可以被包括在子像素滤波器码本的子像素滤波器集内,以代替整数位置码本或作为整数位置码本的附加。
表2
图10示出用于生成用于子像素和整数像素位置的运动滤波器码本或多个码本的“离线”例程1000。在框1005,例程1000获得包括一个或多个样本视频序列的测试集。在一些实施例中,视频序列被选择成具有不同程度的运动和几乎均匀纹理的变化的组合。在一个实施例中,测试序列被选择使得它们包含类似纹理的区域,这通常需要更精细的滤波以便实现所需编码增益。在一个实施例中,多个标准CIF序列可用作样本视频序列。
在开始回路框1010开始,例程1000处理测试集中的每个视频序列。在开始回路框1015开始,例程1000处理当前视频序列的一个或多个单独图片或帧。在框1020,例程1000应用基于Wiener滤波器的适应性运动滤波以计算当前图片或帧的完全适应滤波器集。在一些实施例中,为了导出更好的滤波器集,可以执行两次或更多次迭代,这意味着滤波器系数的计算和子像素位置的更新可以迭代地执行两次或更多次(在第一次,子像素校验可被设为标准滤波器结果,在每次后续迭代中,位置被设为通过先前计算的滤波器集获得的那些)。在1/4像素实施例中,由于滤波器是对每个1/4像素位置计算的,由此生成的滤波器集包括16个滤波器。在一个实施例中,所生成的滤波器集中的每个单独滤波器依据1/4像素位置而具有6或9抽头。
在结束回路框1025,例程1000迭代回框1015以处理当前视频序列(如果有)的另一单独图片或帧。在框1030,例程从所生成的滤波器集选择当前视频序列的表示滤波器集。在一个实施例中,选择表示滤波器集可包括向视频序列的每个图片或帧应用全部所计算的滤波器集,并且选择具有高(或最高)编码增益(即具有低SAD或最低SAD)的滤波器集。在一些实施例中,表示集可根据当前视频序列的图片或帧的子集(例如前N帧)来选择。
在结束回路框1035,例程100迭代回框1010以处理测试集中的下一视频序列(如果有)。在一个实施例中,在所有视频序列被处理之后,多达100个或更多的表示滤波器集可被生成或选择。在框1038,例程1000可任选地精炼表示滤波器集的集合。例如,在一个实施例中,随机漫步算法(或类似优化算法)可被用于在一些或全部视频序列上测试滤波器的随机组合以通过数小时或甚至数天的过程上进一步改进由精炼滤波器集的集合提供的总体编码增益。
在框1040,例程在可任选地精炼的滤波器集的集合中选择具有高或最高编码增益的子像素滤波器集的“基础”组。在框1045,例程1000将所选的滤波器集的“基础”组存储在子像素码本中。
在框1050,例程1000从来自所选的滤波器集的“基础”组的各个滤波器导出“虚拟”码本。在一个实施例中,随机漫步算法(或类似优化算法)可被用于测试来自所选的滤波器集的“基础”组的各个滤波器的各种组合。在一个实施例中,可以从所选的滤波器集的“基础”组导出256个不同滤波器组合。所导出的组合可被存储以创建能够从所选的滤波器集的“基础”组的滤波器导出的“虚拟”码本。
在框1055,从可任选地精炼的滤波器集的集合选择整数位置滤波器组。在一个实施例中,整数位置滤波器可被选择成具有高编码增益并彼此不同。在一个实施例中,可为该组选择48个整数位置滤波器。在框1060,所选整数位置滤波器组被存储在整数位置码本中。已生成并存储子像素码本和整数位置码本,例程1000在框1099结束。
图11示出根据一个实施例的用于搜索码本以寻找运动滤波器集的“在线”例程1100。在框1103,例程1100获得视频序列的图片或帧。在开回路框1105开始,例程1100处理图片的图片内容的每个块。
在框1108,例程1100确定图片内容当前块的整数位置运动估计。在一个实施例中,整数位置运动向量通过使用给定运动搜索尺寸的完全或简化搜索来计算。在框1110,例程1100对所确定的整数位置运动估计计算编码增益(例如,确定SAD)。
在框1113,例程1100使用默认滤波器集(例如H.264固定滤波器集或任何其它用作参考的滤波器集)来确定子像素运动估计。搜索内插的子像素位置以定位具有最高编码增益(最低SAD)的位置。换言之,将默认滤波器集应用于图片内容块,并选择产生最小SAD的位置。滤波器集所对应的位置被用作所估计的子像素运动向量。在框1115,例程1100保存(至少暂时地)用于默认滤波器的总体编码增益。
在框1116,例程1100加载包括例如16个滤波器集的“基础”子像素码本,每个滤波器集包括例如15个子像素位置滤波器(每个子像素位置一个)。
在框1118开始,例程1100处理每个滤波器集。在框1120,例程1100计算用于当前滤波器集的编码增益。使用整数位置运动估计作为偏移,例程1100使用来自当前滤波器集的相应子像素位置滤波器确来定每个子像素位置的SAD。在结束回路框1023,例程100迭代回框1118以处理下一滤波器集(如果有的话)。
在框1023,例程1100使用每个滤波器集中的各个子像素位置滤波器的所计算编码增益,来汇编N(例如256)个“虚拟”滤波器集的编码增益。在一个实施例中,“虚拟“滤波器集包括来自“基础”子像素码本的滤波器集的各个子像素位置滤波器的各种组合。因此,每个“虚拟”滤波器集的编码增益可以使用已经计算(在框1120)的各个子像素位置滤波器编码增益来汇编。
在框1128,例程1100迭代回框1105以处理图片的图片内容的下一块(如果有)。
在框1133,例程1100设置空间分区模式。依据操作模式,可以使用基于帧、基于片、基于块、基于片段、或类似图片划分。在开回路框1135开始,例程1100处理图片的每个空间分区。在框1138,例程1100为当前分区从N个“虚拟”子像素滤波器集选择具有高编码增益的子像素滤波器集。在一个实施例中,选择最佳滤波器集是考虑最小SAD/最大编码增益。在一些实施例中,最低操作模式使用基于帧的划分。下两个模式使用片。最低片模式将帧划分成四个相等的水平条/片(其中依据帧尺寸,最后一片尺寸可以较小)。另一方面,最高片模式使用12x4、16x16块片(再次地,由于帧尺寸,底部处且到右边界的片可以较小)。剩余模式使用从将块合并成的块组(其中相同滤波器集产生低SAD)而导出的片段/区域。在某种意义上,这些区域对应于运动分区。存在用于该过程的两个阈值,并且每个模式具有可以产生更少或更多片段/区域的不同阈值选择。帧首先被分割成块/超瓦片。第一阈值用于确定如何将64x64超瓦片分割成32x32瓦片,而第二阈值用于确定何时跨超瓦片边界来合并瓦片块。在两种情形中,如果所考虑的两个块/对象的SAD差低于或高于给定阈值,则达成合并或分割决定。超瓦片向瓦片的分割被编码成2x2图案。不同操作模式支持基本的3个或扩展的7个图案。基本的3个图案可以是实心、水平分割和垂直分割,而扩展集包括四个3路分割。这样,该过程的下一阶段是如果存在导致足够小的SAD(基于应用第二阈值)的通用滤波器集,则合并通过超瓦片边界与邻居触碰的瓦片。除了图案可变长度码(VLC)之外,将合并位编码到位流中,使得解码器能够完全恢复相同的空间片段。
已对当前分区选择具有高编码增益的子像素滤波器集,在框1140中,例程1100向位流编码与所选子像素滤波器集相对应的索引或其它代码(例如subpelfilt代码)。在多个实施例中,固定VLC表、适应性Huffman编码表等可以用于编码索引或其它代码。如果使用适应性Huffman,在一个实施例中,基于来自先前帧的索引频率来计算编码,因为在实验中观察到,存在时间冗余且相同滤波器集趋于在邻近帧中出现。
在框1141,例程1100加载包括多个(例如48)整数位置滤波器的整数位置码本。在判定框1143,例程1100确定整数运动(在框1108所确定)是否提供比所选子像素滤波器集更高的编码增益(较低的SAD)。如果否,例程1100前进到结束回路框1153,其中例程1100迭代回框1135以处理下一空间分区(如果有)。
然而,如果整数运动估计(在框1108所确定)提供比所选子像素滤波器集更高的编码增益(较低的SAD),则在框1145,例程1100从整数位置码本为当前空间分区选择具有高(或最高)编码增益的整数位置滤波器。在判定框1148,例程1100确定所选整数位置滤波器是否提供最高编码增益(最小SAD)。如果是,则在框1150,例程1100向位流编码与所述整数位置滤波器相对应的索引或其它代码(例如intpelfilt代码)。在一些实施例中,也可将标志或其它1位头部编码到位流以指示来自整数位置码本的所选整数位置滤波器产生了比标准整数位置滤波器更高的编码增益。
在结束回路框1153,例程1100迭代回框1135以处理下一空间分区(如果有的话)。一旦所有空间分区被处理,则例程1100在框1199结束。在多个实施例中,所讨论的方法可以逐图片地且一滤波器集一个索引地对整个图片、区域或片段、片组、对帧或瓦片的每个四叉树或二叉树分区、在帧的组块上、在瓦片上或在瓦片的分段上应用。
图12示出根据多个运动补偿码本滤波器编码器和解码器并在本文中不同地描述的示例性位流句法1200。位流句法1200以3位头部mfc hdr1201开始。1位pict_only标志1202指示是否采取基于图片的滤波。如果是,则随后的可任选句法元素numpt1203被跳过,如果否,则3位numpt代码1203被发送。
可任选的3位numpt字段1203指示分区数量(多至8)。
可任选1位map_sent标志1204指示是否发送分区地图以指示是否应用滤波器或者在多个滤波器之间切换。可任选的n位ptmap字段1205包括分区地图(如果有的话)。
1位filt_sent标志1206指示子像素滤波器代码是否包括在位流中。如果标志1206被设置,则8位subpelfilt_code1208被发送以标识要使用的子像素滤波器集;否则,不发送subpelfilt_code1208。
标志intfilt_sent120指示整数位置滤波器代码是否包括在位流中。当被设为1时,intfilt_sent1210指示6位intpelfilt_code1211被发送以标识要被使用的整数位置滤波器。否则,不发送intpelfilt_code1211。
仅当仅使用1分区(仅图片)模式时,码序列filt_sent1206、subpelfilt_code1208、intfilt_sent1210、和intpelfilt_code1211发生仅仅一次;否则,该序列重复numpt1203次。
图13a示出视频流内的图片或帧序列1301-1308,包括I帧1301、1308(独立编码的图片)、P帧1304、1306(单向预测编码图片);以及B帧1302-1303、1305、1307(双向预测编码图片),如MPEG标准中任一个的典型视频编码中的那样。所示图片结构还示出可变数量的B帧,但是该事实本身对我们的运动滤波讨论并不关键。更相关地,I图片1301、1308不需要运动滤波器集信息,P图片1304、1306需要一个或多个滤波器集,而B图片1302-1303、1305、1307需要两个(由于双向参考)或更多滤波器集。
表3指示根据多个实施例的用于根据图片类型和分区数量(numpt)的多个组合来编码运动补偿码本滤波器的示例性编码位成本,包括用于P和B图片类型的运动滤波模式(例如“子像素”、“整数和子像素”)。为了减小用于B图片的位成本,引入2个附加模式(例如“图片子像素”和“图片整数像素”)。
总体而言,可以看出,对于P图片,信令子像素滤波器集仅占据13到43位之间(对于多至4个分区),信令整数和子像素滤波器两者仅占据19到67位,且对于B图片,对于子像素在22到79位之间,对于整数和子像素在34到127位之间。(表3所示的示例性编码位成本排除空间分区地图(例如区域、片、瓦片或瓦片分段、图片二叉树或四叉树、瓦片二叉树或四叉树和/或合并的块)的位成本。)
表3
图13b示出视频流内图片或帧序列1301-1308,包括被分区成三个示例性分区(numpt=3)的I帧1301、1308,被分区成三个示例性分区(numpt=3)的P帧1304、1306,以及被分区成两个示例性分区(numpt=2)的B帧1302-1303、1305、1307。如图13b所示,用于运动滤波的分区可以是完全适应性的并且在图片的基础上能够在任一模式(图片、区域、片、瓦片、瓦片的合并片段、图片二叉树或瓦片合并的二叉树、图片四叉树或瓦片合并的四叉树、合并块等等)中操作。例如,图13b示出第一P图片1304包括3个片,而第二B图片1303是二叉树编码的并包括2个分区。此外,第二P图片1306被分区成3x3的大瓦片阵列,而第三B帧1305通过二叉树分割来编码。伴随图13b的示例,对于码本运动滤波的情形,在所述图片结构中每个图片的运动滤波器位计数可被计算。
图14示出根据一个实施例的示例性视频编码/解码系统1400,该系统1400包括未编码视频源1415、编码设备1500(参见图15,以下描述)、具有可任选的外部显示器1425的解码设备1600(参见图16,以下描述)以及可任选编码视频源1420。在一些实施例中,编码设备1500和/或解码设备1600之一或两者可以连接到网络1450。在一些实施例中,解码设备1600和编码设备1500可以包括单个设备。在一些实施例中,可以存在不止一个编码设备1500,例如一个编码设备可以执行“离线”码本生成过程,而另一编码设备可以执行“在线”编码过程,如本公开所讨论的。
在一些实施例中,其它服务器和/或设备(未示出)也可以出现。例如,在一些实施例中,分配服务器(未示出)可以经由网络1450向解码设备1600分配经编码的视频。
在一些实施例中,编码设备1500可以经由网络1450、存储区域网络(SAN)、高速串行总线、和/或经由其它适当的通信技术与未编码视频源1415通信。类似地,在一些实施例中,解码设备1600可以经由网络1450、存储区域网络(SAN)、高速串行总线、和/或经由其它适当的通信技术与已编码视频源1420通信。在一些实施例中,编码设备1500、解码设备1600、已编码视频源1420和/或未编码视频源1415可以包括一个或多个复制的和/或分布式物理或逻辑设备。
在多个实施例中,网络1450可以包括因特网、局域网(LAN)、广域网(WAN)、蜂窝数据网络和/或其它数据网络。在许多实施例中,可能有比所示出的更多的编码设备1500、解码设备1600、已编码视频源1420和/或未编码视频源1415。
图15示出根据一个实施例的示例性编码设备1500的若干组件。图15示出示例性编码设备1500的若干组件。在一些实施例中,编码设备1500可以包括比图15所示更多的组件。然而,不一定为了公开说明性实施例而示出所有这些通常常规的组件。如图15所示,编码设备1500包括用于可任选地连接到网络1450的可任选网络接口1530。
编码设备1500还包括至少一个处理单元1510(例如通用中央处理单元、嵌入式处理单元、专用视频处理单元等等)、存储器1550、可任选的输出设备和/或显示器1540、以及可任选的输入设备1570(例如键盘、鼠标、遥控、操纵杆等等),这些全部经由总线1520与可任选网络接口1530互连。存储器1550通常包括随机存取存储器(RAM)、只读存储器(ROM)、以及永久大容量存储设备(诸如盘驱动器)。存储器1550存储具有码本运动补偿滤波800(参见图8,以上所述)的视频编码器、运动补偿子像素滤波器集码本1565和运动补偿整数位置滤波器码本1570之一或两者、生成例程1000(参见图10,以上所述)的可任选“离线”码本、运动补偿滤波器码本搜索例程1100(参见图11,以上所述)、以及码本运动补偿滤波视频编码例程(参见图17,以下所述)。此外,存储器1550还存储操作系统1555。在一些实施例中,这些软件组件可以通过使用与非瞬态计算机可读存储介质1595关联的驱动机构(未示出)(诸如软盘、带、DVD/CD-ROM驱动器、存储卡等)从计算机可读存储介质1595加载到编码设备1500的存储器1550中。在一些实施例中,软件组件还可以经由可任选的网络接口1530、而不是经由计算机可读存储介质1595来加载。
在一些实施例中,编码设备1500还可以包括用于与未编码视频源1415通信的专用接口1535,诸如高速串行总线等。在一些实施例中,编码设备1500可以经由网络接口1530与未编码视频源1415通信。在其他实施例中,未编码视频源1415可以驻留在存储器1550中。
虽然示例性编码设备1500被描述成通常遵循常规的通用计算设备,但是编码设备1500可以是能够编码视频的大量设备中的任一个,诸如:视频记录设备、视频协处理器和/或加速器、个人计算机、游戏操纵台、机顶盒、手持式计算机、蜂窝电话、或任何其它适当设备。
图16示出根据一个实施例的示例性解码设备1600的若干组件。在一些实施例中,解码设备1600可以包括比图16所示更多的组件。然而,不一定为了公开说明性实施例而示出所有这些通常常规的组件。如图16所示,解码设备1600包括用于可任选地连接到网络1450的可任选网络接口1630。
解码设备1600还包括至少一个处理单元1610(例如通用中央处理单元、嵌入式处理单元、专用视频处理单元等等)、存储器1650、可任选的输出设备和/或显示器1640、以及可任选的输入设备1670(例如键盘、鼠标、遥控、操纵杆等等),这些全部经由总线1620与可任选网络接口1630互连。存储器1650通常包括随机存取存储器(RAM)、只读存储器(ROM)、以及永久大容量存储设备(诸如盘驱动器)。存储器1650存储用于具有码本运动补偿滤波(参见图9,以上所述)的视频解码器900的程序代码、运动补偿子像素滤波器集码本1665和运动补偿整数位置滤波器码本1670之一或两者、以及码本运动补偿滤波视频解码例程(参见图21,以下所述)。此外,存储器1650还存储操作系统1655。在一些实施例中,这些软件组件可以通过使用与非瞬态计算机可读存储介质1695关联的驱动机构(未示出)(诸如软盘、带、DVD/CD-ROM驱动器、存储卡等)从计算机可读存储介质1695加载到解码设备1600的存储器1650中。在一些实施例中,软件组件还可以经由可任选的网络接口1630、而不是经由计算机可读存储介质1695来加载。
在一些实施例中,解码设备1600还可以包括用于与已编码视频源1420通信的专用接口1635,诸如高速串行总线等。在一些实施例中,解码设备1600可以经由网络接口1630与已编码视频源1420通信。在其他实施例中,已编码视频源1415可以驻留在存储器1650中。
虽然示例性解码设备1600被描述成通常遵循常规的通用计算设备,但是解码设备1600可以是能够解码视频的大量设备中的任一个,诸如:视频播放设备、个人计算机、游戏操纵台、机顶盒、手持式计算机、蜂窝电话、或任何其它适当设备。
图17示出根据一个实施例的码本运动补偿滤波视频编码例程1700,诸如可由编码设备1500执行。在子例程框1800(参见图18,以下所述),例程1700获得包括多个运动补偿滤波器的码本,该多个运动补偿滤波器被分组成分别对应于多个子像素位置的多个子像素位置组,多个子像素位置组的每一个包括适于在多个子像素位置的相应一个处内插图片的诸个块的多个运动补偿滤波器。例如,如上参照表1所述,码本可以包括被分组成子像素位置组的多个运动补偿滤波器(例如a0..15,b0..15...o0..15),诸如以下:
子像素位置{a}组:{a0,a1,a2..15};
子像素位置{b}组:{b0,bl,b2..15};…
子像素位置{o}组:{o0,ol,o2..15}。
在框1705,例程1700获得视频的未编码帧或图片用于编码。在一些情形中,视频的未编码帧或图片可被确定为包括多个不同部分(参见例如图7a-f,示出用于将图片划分成部分的多个分区模式)。在其他情形中,视频的整个未编码帧或图片可以被作为单个部分对待。
在未编码帧或图片的编码期间,例程1700在开始回路框1710开始处理未编码帧或图片的一个或多个部分中的每一个。在子例程框1900(参见图19,如下所述),例程1700从码本选择良好适应视频帧或图片的当前部分的多个运动补偿滤波器的子集,所选子集包括从多个子像素位置组的每个中选一个。例如,如上参照表1所述,码本可以进一步被表征为包括多个(例如256个)预定运动补偿滤波器子集,每个子像素位置组一个,例如:
·子集id=0:{a0,b0,c0,d0,e0,f0,g0,h0,i0,j0,k0,l0,m0,n0,o0};
·子集id=1:{a1,b1,c1,d1,e1,f1,g1,h1,i1,j1,k1,l1,m1,n1,o1};…
·子集id=15:{a15,b15,c15,d15,e15,f15,g15,h15,i15,j15,k15,l15,m15,n15,o15};
·子集id=16:{a0,b5,c7,d9,e4,f4,g12,h6,i7,j2,k4,l11,m8,n0,o10};
·子集id=255:{a10,b6,c12,d9,e2,f2,g3,h10,i3,j5,k1,l8,m11,n6,o10}.
子例程框1900返回filterset_sent标志以及(如果filterset_sent标志==1)标识码本内多个运动补偿滤波器的所选子集的子像素滤波器集代码。例如,在一个实施例中,子像素滤波器集代码可以是“子集id”或到码本中的其它索引(或可以从其导出)。在框1720,例程1700将所返回的filterset_sent标志和子像素滤波器集代码(如果由filterset_sent标志指示)写入到正由例程1700生成的已编码位流。
在子例程框2000,例程1700可任选地确定用于未编码帧或图片的当前部分的整数位置运动补偿滤波器(参见图20,如下所述)。在结束回路框1730,例程1700迭代回框1710以处理未编码帧或图片的下一部分(如果有)。由此已至少将运动补偿滤波器集编码到位流,例程1700在框1799结束。在许多情形中,可以连续地对视频的多个帧执行例程1700,例程1700是更大的视频编码过程的一部分。
图18示出根据一个实施例的用于获得码本的子例程1800。在一些实施例中,用于生成码本的过程可以十分冗长(花费数小时或甚至数天),因此码本可以仅生成一次(或至少不经常地生成),并被存储以备重新使用。在判定框1805,例程1800确定先前生成的码本是否被存储以备重新使用。如果是,则在框1810,例程1800读取所存储的码本并将其返回结束框1899。
然而,如果先前生成的码本未被存储以备重新使用,则子例程1800开始生成码本的过程。在一些实施例中,框1815-1865可以单独执行,作为“离线”码本生成例程。框1815-1865可以被理解成与以上详细讨论的图10的框1005-1050所示的过程类似的替换示图或替换特征。为了简洁起见,以上相关于图10讨论的主题在以下对图18的讨论中不再赘述。
在开始回路框1815中开始,子例程1800处理多个子像素位置(例如如图3所示、如上所述的a-o)中的每一个。
在框1820,子例程1800确定用于当前子像素位置的默认运动补偿滤波器。例如,在一个实施例中,子例程1800可以使用固定子像素运动补偿滤波器,诸如来自H.264固定滤波器集或任何其它合适的默认滤波器集。
在框1825,子例程1800迭代地精炼所确定的默认运动补偿滤波器以生成用于当前子像素位置的多个精炼运动补偿滤波器。例如,在一个实施例中,子例程1800可以采用随机漫步算法(或类似的优化算法)来迭代地精炼所确定的默认运动补偿滤波器以生成多个精炼运动补偿滤波器。
在开始回路框1830开始,子例程1800处理精炼的多个精炼运动补偿滤波器中的每一个。在框1835,子例程1800确定当前精炼运动补偿滤波器的编码增益(例如SAD量度)。在框1840,子例程1800迭代返回框1830以处理下一精炼运动补偿滤波器(如果有)。
在框1845,子例程1800使用所确定的编码增益来选择用于当前子像素位置的性能良好的精炼运动补偿滤波器组(例如具有高编码增益/低SAD的滤波器组)。在框1850,子例程1800存储用于当前子像素位置的所选的性能良好的精炼运动补偿滤波器组。在结束回路框1855,子例程1800迭代回框1815以处理下一子像素位置(如果有)。在一些实施例中,所选的性能良好的精炼运动补偿滤波器组可被视为当前子像素位置的“基础”滤波器(如上所述),与其它子像素位置的“基础”滤波器一起形成“基础”码本或“基础”滤波器集组。
在框1860,子例程1800使用性能良好的精炼运动补偿滤波器组(每个子像素位置一组)来迭代地确定多个滤波器集,每个滤波器集包括滤波器的不同组合,每个子像素位置一个滤波器。(在本公开的一些上下文中,“滤波器集”也被称为“运动补偿滤波器“子集”,例如{a0,b5,c7,d9,e4,f4,g12,h6,i7,j2,k4,l11,m8,n0,o10}。)在一些实施例中,子例程1800可以使用随机漫步算法(或类似的优化算法)来迭代地确定多个滤波器集/子集。在框1865,子例程1800指示码本中所确定的滤波器集/子集,使得所确定的滤波器集/子集的每一个能够被寻址、选择、索引或以其它方式在码本中标识。例如在一个实施例中,子例程1800可以向所确定的滤波器集/子集中的每一个分配“id”号或索引。
在框1870,子例程1800存储所生成的以备后续重复使用的码本。在框1899,子例程1800结束,返回码本。
图19示出根据一个实施例的用于从码本选择运动补偿滤波器子集的子例程1900。图19可以被理解成与以上详细讨论的图11所示的过程类似的替换示图或替换特征。为了简洁起见,以上相关于图11讨论的主题在以下对图19的讨论中不再赘述。
在框1903,子例程1900获得图片的至少部分(参见例如图7a-f,示出用于将图片划分成分区的多个分区模式),图片的该部分包括多个图片内容块。在开始回路框1905开始,子例程1900处理图片部分的图片内容的每个块。在开始回路框1908中开始,子例程1900处理多个子像素位置(例如如图3所示、如上所述的a-o)中的每一个。
在框1910,子例程1900获得用于当前子像素位置(例如a0、a1、a2、…a15)的多个“基础”运动补偿滤波器。在开始回路框1913开始,子例程1900处理用于当前子像素位置的“基础”运动补偿滤波器中的每一个。在框1915,子例程1900确定用于当前子像素位置(例如a0)的当前“基础”运动补偿滤波器的单独编码增益(例如通过计算SAD)。在结束回路框1918,子例程1900迭代回框1913以处理当前子像素位置的下一“基础”运动补偿滤波器(如果有)。
确定了当前子像素位置的“基础”运动补偿滤波器中每一个的编码增益,在框1920,子例程1900确定“默认”运动补偿滤波器的编码增益,这作为默认运动补偿滤波器集的一部分。例如,在一个实施例中,子例程1900可以确定用于当前子像素位置的固定运动补偿滤波器(诸如来自H.264中使用的固定运动补偿滤波器集或其它合适的“默认”运动补偿滤波器集的滤波器之一)的编码增益。
在结束回路框1923,子例程1900迭代回框1908以处理下一子像素位置(如果有)。在结束回路框1925,子例程1900迭代回框1905以处理图片部分的下一图片内容块(如果有)。
在框1928,子例程1900获得多个适应性滤波器集,每个滤波器集包括用于每个子像素位置的“基础”运动补偿滤波器之一。例如在一个实施例中,子例程1900可以获得包括诸如以下的多个适应性滤波器集的码本:
·集id=0:{a0,b0,c0,d0,e0,f0,g0,h0,i0,j0,k0,l0,m0,n0,o0};
·集id=1:{a1,b1,c1,d1,e1,f1,g1,h1,i1,j1,k1,l1,m1,n1,o1};…
·集id=15:{a15,b15,c15,d15,e15,f15,g15,h15,i15,j15,k15,l15,m15,n15,o15};
·集id=16:{a0,b5,c7,d9,e4,f4,g12,h6,i7,j2,k4,l11,m8,n0,o10};…
·集id=255:{a10,b6,c12,d9,e2,f2,g3,h10,i3,j5,k1,l8,m11,n6,o10}.
在开始回路框1930开始,子例程1900处理所获得的适应性滤波器集中的每一个。在框1933,子例程1900确定当前适应性滤波器集的合计编码增益。例如在一个实施例中,确定合计编码增益可以包括对当前适应性滤波器集的组成滤波器的单独编码增益(如框1915所确定的)求和。在结束回路框1935,子例程1900迭代回框1930以处理下一适应性滤波器集(如果有)。
确定了适应性滤波器集中每一个的合计编码增益,在框1938,子例程1900使用以上讨论的在框1920中确定的单独“默认”编码增益来确定“默认”滤波器集(例如来自H.264的固定滤波器集或其它合适的滤波器集)的“默认”合计编码增益。
在框1940,使用在框1933中确定的合计编码增益,子例程1900为在框1903中所获得的图片部分选择具有有利合计编码增益的适应性滤波器集。在一些实施例中,所选的适应性滤波器集可以是具有最高所确定合计编码增益的适应性滤波器集。
在判定框1943,子例程1900将在框1938中确定的“默认”合计编码增益与所选的有利适应性滤波器集的合计编码增益相比较。如果“默认”滤波器集提供更高的编码增益(更低的SAD),则在框1950,子例程1900将filterset_sent标志设为0或否(NO),并在结束框1999返回该filterset_sent标志。
然而,如果适应性滤波器集提供更高的编码增益(更低的SAD),则在框1945,子例程1900将filterset_sent标志设为1或是(YES),并在框1948,子例程1900确定标识所选适应性滤波器集的子像素滤波器集代码。例如,在一个实施例中,子像素滤波器集代码可以是“子集id”号或到码本中的其它索引(或可以从其导出)。子例程1900在框1999返回filterset_sent标志和所确定的子像素滤波器集代码。
图20示出根据一个实施例的用于确定用于图片的部分的整数位置运动补偿滤波器的子例程2000。在框2005,子例程2000获得图片的至少部分(参见例如图7a-f,示出用于将图片划分成分区的多个分区模式),图片的该部分包括多个图片内容块。在开始回路框2010开始,子例程2000处理图片部分的图片内容的每个块。
在框2015,子例程200获得多个整数位置运动补偿滤波器,例如00、01、02、…047。例如,在一个实施例中,子例程2000可以获得整数位置码本,诸如以上表2部分示出的。在其他实施例中,多个整数位置运动补偿滤波器可以被包括在还包括子像素位置滤波器的码本中。
在开始回路框2020开始,子例程2000处理多个整数位置运动补偿滤波器中的每一个。在框2025,子例程2000确定当前整数位置运动补偿滤波器的单独编码增益(例如通过计算SAD)。在结束回路框2030,子例程2000迭代回框2020以处理下一整数位置运动补偿滤波器(如果有)。在结束回路路框2035,子例程2000迭代回框2010以处理图片部分的下一图片内容块(如果有)。
一旦已对每个整数位置运动补偿滤波器和图片部分的每个图片内容块确定了编码增益,在框2040,子例程2000选择多个整数位置运动补偿滤波器中具有用于当前图片部分的有利编码增益(低SAD)的一个。
在判定框2045,子例程2000将所选的有利整数位置运动补偿滤波器的编码增益与同样为相同图片部分选择的子像素滤波器集的编码增益(参见以上图20中框2040的讨论)相比较。如果子像素滤波器集提供更高的编码增益(更低的SAD),则在框2060,子例程2000将位流中的intfilt_sent标志设为0或否(NO),并在结束框2099返回该intfilt_sent标志。
然而,如果有利的整数位置运动补偿滤波器提供更高的编码增益(更低的SAD),则在框2050,子例程2000将intfilt_sent标志设为1或是(YES),并且在框2055,子例程2000将标识所选的有利整数位置运动补偿滤波器的整数位置滤波器代码写入位流。例如,在一个实施例中,整数位置滤波器代码可以是“id”号或到码本中的其它索引(或可以从其导出)。子例程2000在结束框2099返回。
图21示出根据一个实施例的码本运动补偿滤波视频解码例程2100,诸如可由解码设备1600执行。在框2105,例程2100从已编码视频源获得已编码位流,该已编码位流包括一个或多个视频图片或帧。在开始回路框2110,例程2100处理已编码的视频图片或帧的每一个。在框2115,例程2100从位流读取标识当前已编码图片或帧的一个或多个图片部分(例如图7a-f,示出用于将图片划分成部分的多个分区模式)的一个或多个图片部分代码。例如,在一个实施例中,例程2100可以读取一些或全部代码,诸如图12所示并且以上讨论的pict_only1202、numpt1203、map_sent1204和/或ptmap1205。
在开始回路框2120,例程2100处理当前已编码视频图片或帧的一个或多个图片部分的每一个。
在判定框2125,例程2100确定已编码位流是否包括用于当前已编码视频图片或帧的当前图片部分的整数位置滤波器代码。例如,在一个实施例中,例程2100可以确定已编码位流是否包括intfilt_sent标志1210,如图12所示且如上讨论。
如果例程2100确定已编码位流包括该整数位置滤波器代码,则在框2130,例程2100从位流读取整数位置滤波器代码。例如,在一个实施例中,例程2100可以从位流读取intpelfilt代码1211,如图12所示且如上讨论。
在框2135,子例程200获得多个整数位置运动补偿滤波器,例如00、01、02、…047。例如,在一个实施例中,子例程2000可以获得整数位置码本,诸如以上表2部分示出的。在其他实施例中,多个整数位置运动补偿滤波器可以被包括在还包括子像素位置滤波器的码本中。通常,例程2100可以从可由例程2100访问的存储器读取多个整数位置运动补偿滤波器的先前存储副本。
在框2140,例程2100选择由在框2130中从位流读取的整数位置滤波器代码(例如intpelfilt代码1211)所指示的多个整数位置运动补偿滤波器之一。子例程2100随后在框2170使用所选的整数位置运动补偿滤波器来预测当前已编码视频图片或帧的当前图片部分的块。
然而,如果在判定框2125,例程2100确定已编码位流不包括整数位置滤波器代码,则在判定框2145,例程2100确定已编码位流是否包括用于当前已编码视频图片或帧的当前图片部分的子像素滤波器集代码。例如,在一个实施例中,例程2100可以确定已编码位流是否包括filt_sent标志1206,如图12所示且如上讨论。如果否,则在框2165,例程2100选择默认子像素运动补偿滤波器集(例如在H.264中使用的固定子像素滤波器集或任何合适的默认滤波器集)。子例程2100随后在框2170使用默认子像素运动补偿滤波器集来预测当前已编码视频图片或帧的当前图片部分的块。
然而,如果例程2100在判定框2145确定已编码位流包括用于当前已编码视频图片或帧的当前图片部分的子像素滤波器集代码,则在框2150,例程2100从位流读取子像素滤波器集代码。例如,在一个实施例中,例程2100可以从位流读取subpelfilt代码1208,如图12所示且如上讨论。
在框2155,例程2100获得子像素运动补偿码本,诸如表1部分所示、如上讨论的码本。通常,例程2100可以从可由例程2100所访问的存储器读取子像素运动补偿码本的先前存储副本。
在框2140,例程2100选择由在框2150中从位流读取的子像素滤波器集代码(例如subpelfilt代码1208)所指示的多个子像素运动补偿滤波器集之一。子例程2100随后在框2170中使用所选的子像素运动补偿滤波器集来预测当前已编码视频图片或帧的当前图片部分的块。
在结束回路框2175,例程2100迭代返回框2120以处理当前已编码视频图片或帧的下一图片部分(如果有)。
在框2180,例程2100根据在框2170的不同迭代中所预测的一个或多个图片部分的预测块,生成已解码的图片。在框2185,例程2100将所生成的图片呈现给与执行例程2100的设备相关联的显示器。
在结束回路框2190,例程2100迭代返回框2110以处理下一已编码视频图片或帧(如果有)。例程2100在框2199结束。
尽管在这里已示出和描述了多个具体实施例,然而本领域内技术人员应当理解,替代和/或等效实现可取代所示和所描述的具体实施例而不脱离本公开的实施例的范围。本申请旨在覆盖本文所讨论的实施例的任何调整或者变化。

Claims (14)

1.一种用于编码用于多个子像素位置的适应性运动补偿滤波器集以便预测已编码视频帧中的部分的视频编码器设备实现的方法,所述方法包括:
由视频编码器设备获得包括多个运动补偿滤波器的码本,所述多个运动补偿滤波器被分组成分别对应于多个子像素位置的多个子像素位置组,所述多个子像素位置组的每一个包括适于在所述多个子像素位置的相应一个处对图片的部分进行内插的多个运动补偿滤波器,所述多个运动补偿滤波器包括滤波器集的基础码本和滤波器集的虚拟码本,滤波器集的虚拟码本包括从滤波器集的基础码本选择的滤波器的组合;
由所述视频编码器设备获得未编码视频帧以供所述视频编码器设备进行编码;
根据分区模式将视频帧的部分选择作为图片分区;
由所述视频编码器设备将所选择的图片分区编码到位流;以及
在编码所述图片分区期间,所述视频编码器设备:
从所述码本选择良好适应预测所述图片分区的所述多个运动补偿滤波器的子集,所选子集包括所述多个子像素位置组的每个中的一个;以及
在所述位流中包括标识所述分区模式的代码和在所述码本内标识所述多个运动补偿滤波器的所选子集的子像素滤波器代码。
2.如权利要求1所述的方法,其特征在于,选择所述多个运动补偿滤波器的子集包括选择所述多个运动补偿滤波器的多个预定子集之一。
3.如权利要求2所述的方法,其特征在于,包括在所述位流中的标识所述分区模式的所述代码包括在所述多个预定子集中标识所选子集的索引。
4.如权利要求2所述的方法,其特征在于,选择所述多个运动补偿滤波器的所述多个预定子集之一包括:
对于所述图片分区,分别确定所述多个运动补偿滤波器的多个单独编码增 益;
使用所确定的多个单独编码增益,确定应用于所述图片分区的所述多个运动补偿滤波器的所述多个预定子集中每一个的合计编码增益;以及
选择对所述多个图片内容块具有有利合计编码增益的所述多个预定子集之一,
确定应用于所述图片分区的默认滤波器集的默认合计编码增益,默认滤波器集包括分别对应于所述多个子像素位置的多个默认子像素运动补偿滤波器;以及
确定所述有利合计编码增益比所述默认合计编码增益更有利,
其中所述默认滤波器集是滤波器集的基础码本。
5.如权利要求1所述的方法,其特征在于,还包括:
获得多个整数位置运动补偿滤波器;
在编码至少所述图片分区期间,所述视频编码器设备选择良好适于预测所述图片分区的所述多个整数位置运动补偿滤波器之一。
6.如权利要求5所述的方法,其特征在于,还包括:
确定所述多个整数位置运动补偿滤波器的所选之一提供比所述多个运动补偿滤波器的所选子集更好的编码增益;以及
在由所述视频编码器设备生成的所述位流中包括:
整数滤波器代码,标识所述多个整数位置运动补偿滤波器中所选之一;以及
整数滤波器标志,标识所述整数滤波器代码被包含在用于所述视频帧的至少部分的所述位流中。
7.如权利要求5所述的方法,其特征在于,所述码本还包括多个整数位置运动补偿滤波器,或者获得所述多个整数位置运动补偿滤波器包括获得整数位置码本。
8.如权利要求1所述的方法,其特征在于,获得所述码本包括:
获得分别对应于所述多个子像素位置的多个基础运动补偿滤波器;
通过对所述多个子像素位置的每一个执行至少步骤(i)、(ii)和(iii),生成分别对应于所述多个子像素位置的多个虚拟子像素位置组滤波器:
(i)从所述基础运动补偿滤波器选择滤波器的组合以生成对应于当前子像素位置的多个精炼运动补偿滤波器;
(ii)确定分别对应于所述基础运动补偿滤波器的编码增益并且合成所述多个精炼运动补偿滤波器的编码增益;
(iii)根据所确定和所合成的编码增益,从所生成的多个精炼运动补偿滤波器选择对应于当前子像素位置的性能良好的运动补偿滤波器子像素位置组作为虚拟码本滤波器集,并且还包括选择多个性能良好运动补偿滤波器子集,每个子集包括从所述多个子像素位置组的每一个所选择的一个性能良好运动补偿滤波器。
9.一种用于解码用于多个子像素位置的适应性运动补偿滤波器集以便预测已编码视频帧中的部分的视频解码器设备实现的方法,所述方法包括:
由所述视频解码器设备获得包括多个运动补偿滤波器的码本,所述多个运动补偿滤波器被分组成分别对应于多个子像素位置的多个子像素位置组,所述多个子像素位置组的每一个包括适于在所述多个子像素位置的相应一个处对图片的部分进行内插的多个运动补偿滤波器,所述多个运动补偿滤波器包括滤波器集的基础码本和滤波器集的虚拟码本,滤波器集的虚拟码本包括从滤波器集的基础码本选择的滤波器的组合;
获得已编码位流,所述已编码位流包括已编码视频帧,已编码视频帧包括根据分区模式选择的部分,并且已编码位流还包括标识所述分区模式的代码以及在所述码本中标识所述适应性运动补偿滤波器集的子像素滤波器代码,所述适应性运动补偿滤波器集包括分别对应于所述多个子像素位置的所述多个运动补偿滤波器;
在解码所述已编码视频帧期间,所述视频解码器设备从所述码本选择由所述子像素滤波器代码所标识的适应性运动补偿滤波器集;
使用所述适应性运动补偿滤波器集,预测多个图片内容部分,所述多个部分对应于已编码图片帧的至少部分;
至少根据所预测的多个图片内容部分来生成已解码图片;以及
向与所述视频解码器设备相关联的显示器呈现所生成的已解码图片。
10.如权利要求9所述的方法,其特征在于,所述已编码位流还包括:
第二子像素滤波器代码,在所述码本中标识第二适应性运动补偿滤波器集;以及
至少一个部分标识代码,使得所述视频解码器设备能够标识已编码图片帧的所述部分以及已编码图片帧的第二部分,以及
在解码所述已编码视频帧期间,所述视频解码器设备从所述码本选择由所述第二子像素滤波器代码所标识的第二适应性运动补偿滤波器集;
使用所述第二适应性运动补偿滤波器集,预测第二多个图片内容部分,所述第二多个部分对应于已编码图片帧的至少第二部分;
其中所述已解码图片是进一步根据所预测的第二多个图片内容部分来生成的。
11.如权利要求9所述的方法,其特征在于,还包括获得多个整数位置运动补偿滤波器,其中所述码本还包括所述多个整数位置运动补偿滤波器。
12.如权利要求11所述的方法,其特征在于,所述已编码位流还包括:
至少一个部分标识代码,使得所述视频解码器设备能够标识已编码图片帧的所述部分以及已编码图片帧的第二部分;
整数滤波器代码,标识所述多个整数位置运动补偿滤波器之一;以及
整数滤波器标志,指示所述整数滤波器代码被包含在用于所述视频帧的至少第二部分的所述位流中,并且在解码所述已编码视频帧期间:
读取所述整数滤波器标志并相应地从所述多个整数位置运动补偿滤波器选择由所述整数滤波器代码所标识的整数位置运动补偿滤波器;
使用所选的整数位置运动补偿滤波器,预测第二多个图片内容部分,所述 第二多个部分对应于已编码图片帧的至少第二部分;以及
其中所述已解码图片是进一步根据所预测的第二多个图片内容部分来生成的。
13.如权利要求9所述的方法,其特征在于,所述码本还包括多个整数位置运动补偿滤波器,或者获得所述多个整数位置运动补偿滤波器包括获得整数位置码本。
14.一种视频编码装置,包括处理器和存储介质,所述存储介质存储在由处理器执行时执行如权利要求1所述的方法的指令;或者一种视频编码装置,包括处理器和存储介质,所述存储介质存储在由处理器执行时执行如权利要求9所述的方法的指令。
CN201180061602.2A 2010-12-21 2011-12-21 用于高效视频编码的内容适应性运动补偿滤波 Active CN103430545B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/974,940 2010-12-21
US12/974,940 US8761245B2 (en) 2010-12-21 2010-12-21 Content adaptive motion compensation filtering for high efficiency video coding
PCT/US2011/066666 WO2012088357A2 (en) 2010-12-21 2011-12-21 Content adaptive motion compensation filtering for high efficiency video coding

Publications (2)

Publication Number Publication Date
CN103430545A CN103430545A (zh) 2013-12-04
CN103430545B true CN103430545B (zh) 2017-03-01

Family

ID=46234397

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180061602.2A Active CN103430545B (zh) 2010-12-21 2011-12-21 用于高效视频编码的内容适应性运动补偿滤波

Country Status (9)

Country Link
US (2) US8761245B2 (zh)
EP (2) EP2656611B1 (zh)
JP (1) JP5648183B2 (zh)
KR (1) KR101535734B1 (zh)
CN (1) CN103430545B (zh)
ES (1) ES2845728T3 (zh)
HU (1) HUE051906T2 (zh)
PL (1) PL2656611T3 (zh)
WO (1) WO2012088357A2 (zh)

Families Citing this family (56)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2360669A1 (en) * 2010-01-22 2011-08-24 Advanced Digital Broadcast S.A. A digital video signal, a method for encoding of a digital video signal and a digital video signal encoder
US8761245B2 (en) 2010-12-21 2014-06-24 Intel Corporation Content adaptive motion compensation filtering for high efficiency video coding
US20120183064A1 (en) * 2011-01-14 2012-07-19 Sony Corporation Codeword assignment for intra chroma mode signaling for hevc
US9232227B2 (en) 2011-01-14 2016-01-05 Sony Corporation Codeword space reduction for intra chroma mode signaling for HEVC
JP5670226B2 (ja) * 2011-03-04 2015-02-18 Kddi株式会社 動画像符号化装置、動画像符号化方法、およびプログラム
PL2690870T3 (pl) 2011-03-21 2020-07-27 Lg Electronics Inc. Sposób wyboru predyktora wektora ruchu i urządzenie go stosujące
US8767824B2 (en) 2011-07-11 2014-07-01 Sharp Kabushiki Kaisha Video decoder parallelization for tiles
US20130142251A1 (en) * 2011-12-06 2013-06-06 Sony Corporation Syntax extension of adaptive loop filter in hevc
US9918017B2 (en) 2012-09-04 2018-03-13 Duelight Llc Image sensor apparatus and method for obtaining multiple exposures with zero interframe time
US9137455B1 (en) * 2014-11-05 2015-09-15 Duelight Llc Image sensor apparatus and method for obtaining multiple exposures with zero interframe time
US9179062B1 (en) 2014-11-06 2015-11-03 Duelight Llc Systems and methods for performing operations on pixel data
US8976264B2 (en) 2012-09-04 2015-03-10 Duelight Llc Color balance in digital photography
US9179085B1 (en) 2014-11-06 2015-11-03 Duelight Llc Image sensor apparatus and method for obtaining low-noise, high-speed captures of a photographic scene
US9167169B1 (en) 2014-11-05 2015-10-20 Duelight Llc Image sensor apparatus and method for simultaneously capturing multiple images
US9154708B1 (en) 2014-11-06 2015-10-06 Duelight Llc Image sensor apparatus and method for simultaneously capturing flash and ambient illuminated images
US9167174B1 (en) 2014-11-05 2015-10-20 Duelight Llc Systems and methods for high-dynamic range images
US9160936B1 (en) 2014-11-07 2015-10-13 Duelight Llc Systems and methods for generating a high-dynamic range (HDR) pixel stream
US9531961B2 (en) 2015-05-01 2016-12-27 Duelight Llc Systems and methods for generating a digital image using separate color and intensity data
EP2920962A4 (en) * 2012-11-13 2016-07-20 Intel Corp ADAPTIVE TRANSFORMATION ENCODING OF CONTENT FOR NEXT GENERATION VIDEO
WO2014120367A1 (en) 2013-01-30 2014-08-07 Intel Corporation Content adaptive parametric transforms for coding for next generation video
US9596481B2 (en) * 2013-01-30 2017-03-14 Ati Technologies Ulc Apparatus and method for video data processing
US10558848B2 (en) 2017-10-05 2020-02-11 Duelight Llc System, method, and computer program for capturing an image with correct skin tone exposure
US9807322B2 (en) 2013-03-15 2017-10-31 Duelight Llc Systems and methods for a digital image sensor
US9819849B1 (en) 2016-07-01 2017-11-14 Duelight Llc Systems and methods for capturing digital images
FR3016764B1 (fr) * 2014-01-17 2016-02-26 Sagemcom Broadband Sas Procede et dispositif de transcodage de donnees video de h.264 vers h.265
US20160050442A1 (en) * 2014-08-15 2016-02-18 Samsung Electronics Co., Ltd. In-loop filtering in video coding
US10924688B2 (en) 2014-11-06 2021-02-16 Duelight Llc Image sensor apparatus and method for obtaining low-noise, high-speed captures of a photographic scene
US11463630B2 (en) 2014-11-07 2022-10-04 Duelight Llc Systems and methods for generating a high-dynamic range (HDR) pixel stream
US9560330B2 (en) * 2015-01-09 2017-01-31 Vixs Systems, Inc. Dynamic range converter with reconfigurable architecture and methods for use therewith
US9860504B2 (en) 2015-01-09 2018-01-02 Vixs Systems, Inc. Color gamut mapper for dynamic range conversion and methods for use therewith
US9544560B2 (en) * 2015-01-09 2017-01-10 Vixs Systems, Inc. Dynamic range converter with generic architecture and methods for use therewith
US9558538B2 (en) * 2015-01-09 2017-01-31 Vixs Systems, Inc. Dynamic range converter with frame by frame adaptation and methods for use therewith
US9589313B2 (en) * 2015-01-09 2017-03-07 Vixs Systems, Inc. Dynamic range converter with pipelined architecture and methods for use therewith
US10609419B2 (en) 2015-06-24 2020-03-31 Sony Corporation Encoding apparatus, decoding apparatus and transmission control method
CN106331722B (zh) * 2015-07-03 2019-04-26 华为技术有限公司 图像预测方法和相关设备
BR112018006041A2 (pt) 2015-09-25 2018-10-09 Huawei Tech Co Ltd codificador de vídeo, decodificador de vídeo e métodos para codificação e decodificação preditiva
RU2696309C1 (ru) 2015-09-25 2019-08-01 Хуавэй Текнолоджиз Ко., Лтд. Устройство и способ компенсации движения видео
WO2017052405A1 (en) 2015-09-25 2017-03-30 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation
JP2018530244A (ja) 2015-09-25 2018-10-11 華為技術有限公司Huawei Technologies Co.,Ltd. 選択可能な補間フィルタを用いるビデオ動き補償のための装置および方法
AU2015410095C1 (en) 2015-09-25 2020-01-16 Huawei Technologies Co., Ltd. Adaptive sharpening filter for predictive coding
US10602141B2 (en) * 2015-10-16 2020-03-24 Lg Electronics Inc. Filtering method and apparatus for improving prediction in image coding system
US10602176B2 (en) 2016-04-15 2020-03-24 Google Llc Coding interpolation filter type
US10270958B2 (en) 2016-09-01 2019-04-23 Duelight Llc Systems and methods for adjusting focus based on focus target information
KR20200062365A (ko) * 2016-10-04 2020-06-03 김기백 영상 데이터 부호화/복호화 방법 및 장치
EP3562152A4 (en) * 2016-12-26 2020-01-15 Nec Corporation IMAGE CODING METHOD, IMAGE DECODING METHOD, IMAGE CODING DEVICE, IMAGE DECODING DEVICE AND PROGRAM
RU2018131580A (ru) * 2016-12-26 2021-01-26 Нек Корпорейшн Способ кодирования видео, способ декодирования видео, устройство кодирования видео, устройство декодирования видео и программа
US10455253B1 (en) * 2017-02-28 2019-10-22 Google Llc Single direction long interpolation filter
CN109040758A (zh) * 2017-06-09 2018-12-18 晨星半导体股份有限公司 视频压缩方法及视频压缩装置
CN112806007A (zh) 2018-07-12 2021-05-14 华为技术有限公司 视频译码中的边界块分割
CN118413683A (zh) 2018-09-03 2024-07-30 华为技术有限公司 一种对码流进行编码的方法、编码的装置、传输码流的设备以及流媒体系统
CN112640470A (zh) 2018-09-03 2021-04-09 华为技术有限公司 视频编码器、视频解码器及对应方法
CN118972574A (zh) * 2018-12-07 2024-11-15 三星电子株式会社 使用并行块和条带的视频编码方法和解码方法以及使用并行块和条带的视频编码装置和解码装置
CN113796073A (zh) * 2019-03-11 2021-12-14 瑞典爱立信有限公司 涉及基于gop的时间过滤的视频译码
WO2021126017A2 (en) * 2020-04-29 2021-06-24 Huawei Technologies Co., Ltd. Method and apparatus of subsample interpolation filtering
CN113727106B (zh) * 2020-05-25 2024-03-26 腾讯科技(深圳)有限公司 视频编码、解码方法、装置、电子设备及存储介质
JP2024519258A (ja) * 2021-03-29 2024-05-10 アルコン インコーポレイティド ディスパリティ及び鮮鋭度制御自動焦点合わせモードを有する立体視撮像プラットフォーム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6529634B1 (en) * 1999-11-08 2003-03-04 Qualcomm, Inc. Contrast sensitive variance based adaptive block size DCT image compression
JP2008536414A (ja) 2005-04-13 2008-09-04 ゴットフリート・ヴィルヘルム・ライプニッツ・ウニヴェルジテート・ハノーヴァー ビデオの拡張された符号化方法及び装置
US8208564B2 (en) * 2005-06-24 2012-06-26 Ntt Docomo, Inc. Method and apparatus for video encoding and decoding using adaptive interpolation
JP4516088B2 (ja) * 2007-03-19 2010-08-04 日本電信電話株式会社 動き探索方法、動き探索装置、動き探索プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体
EP2048886A1 (en) 2007-10-11 2009-04-15 Panasonic Corporation Coding of adaptive interpolation filter coefficients
US9077971B2 (en) * 2008-04-10 2015-07-07 Qualcomm Incorporated Interpolation-like filtering of integer-pixel positions in video coding
US8705622B2 (en) * 2008-04-10 2014-04-22 Qualcomm Incorporated Interpolation filter support for sub-pixel resolution in video coding
US8811484B2 (en) * 2008-07-07 2014-08-19 Qualcomm Incorporated Video encoding by filter selection
EP2157799A1 (en) 2008-08-18 2010-02-24 Panasonic Corporation Interpolation filter with local adaptation based on block edges in the reference frame
US8325796B2 (en) * 2008-09-11 2012-12-04 Google Inc. System and method for video coding using adaptive segmentation
US9078007B2 (en) * 2008-10-03 2015-07-07 Qualcomm Incorporated Digital video coding with interpolation filters and offsets
EP2262267A1 (en) * 2009-06-10 2010-12-15 Panasonic Corporation Filter coefficient coding scheme for video coding
US20120008686A1 (en) * 2010-07-06 2012-01-12 Apple Inc. Motion compensation using vector quantized interpolation filters
US9628821B2 (en) * 2010-10-01 2017-04-18 Apple Inc. Motion compensation using decoder-defined vector quantized interpolation filters
US8761245B2 (en) 2010-12-21 2014-06-24 Intel Corporation Content adaptive motion compensation filtering for high efficiency video coding

Also Published As

Publication number Publication date
EP2656611B1 (en) 2020-12-02
PL2656611T3 (pl) 2021-06-14
WO2012088357A3 (en) 2012-12-27
US8761245B2 (en) 2014-06-24
CN103430545A (zh) 2013-12-04
US20150078448A1 (en) 2015-03-19
KR20130141630A (ko) 2013-12-26
JP2014504098A (ja) 2014-02-13
KR101535734B1 (ko) 2015-07-24
EP3285487A1 (en) 2018-02-21
US9100662B2 (en) 2015-08-04
HUE051906T2 (hu) 2021-04-28
ES2845728T3 (es) 2021-07-27
US20120155533A1 (en) 2012-06-21
EP2656611A4 (en) 2016-07-06
WO2012088357A2 (en) 2012-06-28
EP2656611A2 (en) 2013-10-30
JP5648183B2 (ja) 2015-01-07

Similar Documents

Publication Publication Date Title
CN103430545B (zh) 用于高效视频编码的内容适应性运动补偿滤波
JP6675289B2 (ja) 画像復号装置、画像復号方法、画像符号化装置及び画像符号化方法
CN104320666B (zh) 图像处理设备和方法
KR101677406B1 (ko) 차세대 비디오용 비디오 코덱 아키텍처
JP7574393B2 (ja) ビデオ信号符号化/復号方法及び前記方法に用いられる機器
KR101684209B1 (ko) 동화상 복호 장치, 동화상 부호화 장치, 동화상 복호 방법, 및 동화상 부호화 방법
JP7634734B2 (ja) ビデオ信号符号化/復号方法及びその機器
JP7005854B2 (ja) ビデオ符号化のためのインター予測装置の補間フィルタ及び方法
TW201729595A (zh) 針對視訊寫碼使用與位置相關之預測組合之改良視訊幀內預測
WO2011054879A2 (en) Hybrid video coding
JP5795525B2 (ja) 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラムおよび画像復号プログラム
KR20150055005A (ko) 수정된 참조를 가진 차세대 비디오 코딩용 콘텐츠 적응적 예측 및 기능적 예측 픽처
CN102187668B (zh) 编码图像或图像序列的方法和装置及其解码方法和装置
TW202315408A (zh) 以區塊為基礎之預測技術
JP2023531010A (ja) 符号化・復号方法、装置及びその機器
KR20170125154A (ko) 곡선 화면 내 예측을 사용하는 비디오 복호화 방법 및 장치
TW202332274A (zh) 在4:4:4色度格式及單一樹狀結構情況下針對所有通道之基於矩陣的內部預測技術
KR20110126075A (ko) 확장 블록 필터링을 이용한 비디오 부호화, 복호화 방법 및 장치
KR20200134302A (ko) 이미지 처리 장치 및 방법
JP2015080002A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
JP2013098713A (ja) 動画像符号化装置、動画像復号装置、動画像符号化方法及び動画像復号方法
CN105933709B (zh) 运动图像编码方法、装置以及运动图像解码方法、装置
CN119697376A (zh) 基于预测增强的视频编解码方法及装置
CN111510727A (zh) 一种运动估计方法及装置
KR20170113947A (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
GR01 Patent grant
GR01 Patent grant