CN110637462B - 视频编解码的方法及装置 - Google Patents

视频编解码的方法及装置 Download PDF

Info

Publication number
CN110637462B
CN110637462B CN201880032597.4A CN201880032597A CN110637462B CN 110637462 B CN110637462 B CN 110637462B CN 201880032597 A CN201880032597 A CN 201880032597A CN 110637462 B CN110637462 B CN 110637462B
Authority
CN
China
Prior art keywords
motion vectors
motion vector
candidate motion
current block
initial
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
CN201880032597.4A
Other languages
English (en)
Other versions
CN110637462A (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.)
MediaTek Inc
Original Assignee
MediaTek Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by MediaTek Inc filed Critical MediaTek Inc
Publication of CN110637462A publication Critical patent/CN110637462A/zh
Application granted granted Critical
Publication of CN110637462B publication Critical patent/CN110637462B/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/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • 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

本发明的各方面包括:包含处理电路的视频解码设备。处理电路被配置为接收与目前影像帧的目前区块相关联的已编码视频数据,确定目前区块的候选运动向量集合,基于编码的视频数据确定选择索引,并基于选择索引选择候选运动向量集合中的一个。处理电路还被配置为当所选择的候选运动向量满足预定条件时,将所选择的候选运动向量细化成为重建运动向量,并且生成用于输出的目前影像帧的影像,包括基于重建运动向量生成目前区块的重建影像。

Description

视频编解码的方法及装置
交叉申请
本发明主张在2017年05月19日提出申请的申请号为62/508,463,名称为“Methodsand apparatus of advance motion vector prediction”的美国临时专利申请的优先权。上述申请的内容以引用方式并入本文中。
技术领域
本发明涉及视频编解码技术。具体而言,本发明涉及帧间预测。
背景技术
这里提供的背景叙述是为了在总体上呈现本发明的背景。在本背景技术部分中描述的工作的范围,目前所述发明人的工作,以及在提交时可能不具有作为现有技术的资格的描述的方面,既非以明示或暗示而适格为本发明之先前技术。
许多视频编解码标准将输入视频的影像帧划分为对应至影像帧的亮度或色度分量的一个或多个编码单元(或区块)。当对区块的原始影像进行编码时,可以根据预定的视频编解码标准将区块的原始影像划分为可预测部分(也称为预测子)和区块的残余部分。当对区块进行解码时,区块的重建影像可以透过根据相同的预定视频编解码标准生成和组合区块的预测子和残余部分来获得。
在一些应用中,区块的预测子可以基于根据一个或多个运动向量参考的其他区块和/或其他帧的影像来生成预测子。这种预测架构可以减少已编码视频数据中的时间冗余,并且也称为帧间预测。在一些应用中,区块的预测子可以透过基于多个预定预测模式中的所选择的一个来外推相邻像素的样本来生成预测子。这种预测架构可以减少已编码视频数据中的空间冗余,并且也称为帧内预测。
发明内容
本发明的各方面提供了一种包括处理电路的视频解码设备。处理电路被配置为接收与目前影像帧的目前区块相关联的已编码视频数据,确定目前区块的候选运动向量集合,基于编码的视频数据确定选择索引,并基于选择索引选择所述候选运动向量集合中的一个。处理电路并进一步被配置为在所选择的候选运动向量满足预定条件时,将所选择的候选运动向量细化成为重建运动向量,并且生成用于输出的目前影像帧的影像,包括基于重建运动向量生成目前区块的重建影像。
在一个实施例中,所述候选运动向量集合包括对应至两个或更多个相应索引的两个或更多个相同候选运动向量,且处理电路进一步被配置为在选择索引对应至两个或更多个相同候选运动向量的两个或更多个索引中的预定序数等级(ordinal rank)时,将所选择的候选运动向量细化成为重建运动向量。
在一个实施例中,预定序数等级对应至两个或更多个相同候选运动向量的两个或更多个索引中的最小索引。在一个实施例中,预定序数等级对应至两个或更多个相同候选运动向量的两个或更多个索引中的第二最小索引。
在一个实施例中,处理电路更进一步被配置为当选择索引未对应至预定序数等级时,跳过细化所选择的候选运动向量。
在一个实施例中,处理电路被配置为当所选择的候选运动向量不同于所述候选运动向量集合中的任何其他运动向量时,将所选择的候选运动向量细化成为重建运动向量。
在一个实施例中,处理电路被配置为基于目前区块的至少一个空间相邻区块和/或至少一个时间相邻区块的运动信息来确定目前区块的候选运动向量集合。在一个实施例中,所述候选运动向量集合包括至多两个候选运动向量。
在一个实施例中,处理电路被配置为使用菱形搜索(diamond search)模式或十字搜索(cross search)模式基于所选择的候选运动向量来识别样本运动向量,对所识别的样本运动向量执行模板评估,并基于模板评估选择所识别的样本运动向量之一作为所选择的候选运动向量的细化,来细化所选择的候选运动向量。
在一个实施例中,所识别的样本运动向量指示参考影像中的参考位置,所述参考位置位于所选择的候选运动向量指示的参考位置的预定搜索范围内。
本发明的各方面可提供一种视频解码方法,其包括接收与目前影像帧的目前区块相关联的已编码视频数据,确定目前区块的候选运动向量集合,基于所述已编码视频数据确定选择索引,并基于选择索引选择候选运动向量集合中的一个。所述方法并进一步包括:当所选择的候选运动向量满足预定条件时,透过处理电路将所选择的候选运动向量细化成为重建运动向量,并且由处理电路生成用于输出的目前影像帧的影像,包括基于重建运动向量生成目前区块的重建影像。
在一个实施例中,所述候选运动向量集合包括对应至两个或更多个相应索引的两个或更多个相同候选运动向量,并且所述方法还进一步包括在选择索引对应至两个或更多个相同候选运动向量的两个或更多个索引中的预定序数等级时,透过处理电路将所选择的候选运动向量细化成为重建运动向量。
本发明的各方面提供了一种包括处理电路的视频编码设备。所述处理电路被配置为接收包括目前区块的目前影像帧,确定目前区块的初始运动向量集合,并基于所述初始运动向量集合来确定目前区块的候选运动向量集合,包括将满足预定条件的一个或多个初始运动向量细化成为一个或多个相应的候选运动向量。处理电路还被进一步配置为从目前区块的候选运动向量集合中选择候选运动向量,并对目前影像帧进行编码以用于输出,包括基于所选择的候选运动向量对目前区块的影像进行编码。
在一个实施例中,所述初始运动向量集合包括对应至两个或更多个相应索引的两个或更多个相同的初始运动向量,且处理电路还进一步被配置为细化对应至两个或更多个相同候选运动向量的两个或更多个索引中的预定序数等级的两个或更多个相同的初始运动向量中的一个,并跳过细化两个或更多个相同初始运动向量中的至少另一个。
在一个实施例中,预定序数等级对应至两个或更多个相同初始运动向量的两个或更多个索引中的最小索引。在一个实施例中,预定序数等级对应至两个或更多个相同的初始运动向量的两个或更多个索引中的第二最小的索引。
在一个实施例中,处理电路还更进一步被配置为在所有一个或多个初始运动向量不同时,细化每个初始运动向量。
在一个实施例中,处理电路被配置为基于目前区块的至少一个空间相邻区块和/或至少一个时间相邻区块的运动信息来确定目前区块的初始运动向量集合。在一个实施例中,所述初始运动向量集合包括至多两个初始运动向量。
在一个实施例中,处理电路被配置为透过使用菱形搜索模型或十字搜索模型基于特定初始运动向量来识别样本运动向量,对所识别的样本运动向量执行模板评估,并基于模板评估来选择所识别的样本运动向量之一作为特定初始运动向量的细化,来细化特定初始运动向量。
在一个实施例中,所识别的样本运动向量指示参考影像中的参考位置,所述参考位置位于所选择的候选运动向量指示的参考位置的预定搜索范围内。
本发明的各方面可提供一种视频编码方法,所述方法包括接收包括目前区块的目前影像帧,确定目前区块的初始运动向量集合,以及由处理电路基于所述初始运动向量集合确定目前区块的候选运动向量集合,包括将满足预定条件的一个或多个初始运动向量细化成为一个或多个相应的候选运动向量。所述方法还包括从目前区块的候选运动向量集合中选择候选运动向量,并由处理电路对目前影像帧进行编码以用于输出,包括基于所选择的候选运动向量对目前区块的影像进行编码。
在一个实施例中,所述初始运动向量集合包括对应至两个或更多个相应索引的两个或更多个相同的初始运动向量,且所述方法还包括由处理电路细化两个或更多个相同的初始运动向量中的一个,所述运动向量对应至两个或更多个相同候选运动向量的两个或更多个索引中的预定序数等级,并跳过细化两个或更多个相同初始运动向量中的至少另一个。
附图说明
本发明所提出作为范例的各种实施例将参考以下附图详细描述,其中同类的附图标记表示同类的组件,其中:
图1为根据本发明实施例的视频编解码系统的范例性功能方块图;
图2为根据本发明的范例性实施例的细化运动向量之示意图;
图3A和图3B为根据本发明的范例性实施例的用于细化运动向量的两个范例性搜索模型之示意图;
图4为根据本发明实施例的用于图1中的视频编解码系统中的视频解码的处理电路的范例性功能方块图;
图5为根据本发明实施例的用于图1中的视频编解码系统中的视频编码的处理电路的范例性功能方块图;
图6为根据本发明的实施例的使用处理电路的视频解码(如图4中的处理电路) 的范例性视频解码处理流程图;以及
图7为根据本发明的实施例的使用处理电路的视频编码(如图5中的处理电路) 的范例性视频编码处理流程图。
具体实施方式
根据本发明的一些范例,当使用帧间预测对目前区块进行编码时,候选运动向量集合可以基于细化初始运动向量集合的一部分或全部来确定。而且,当使用帧间预测对目前区块进行解码时,运动向量细化可以仅应用于所选择的候选运动向量。根据本发明的一些范例,可以透过使用细化的运动向量来提高目前区块的整体编解码效率。而且,根据本发明的一些范例,可以减少用于解码目前区块的计算复杂度,因为至多一个运动向量会经历运动向量细化。
图1为根据本发明实施例的视频编解码系统100的范例性功能方块图。视频编码系统100包括用于视频解码的处理电路(即解码电路)110以及用于视频编码的处理电路(即编码电路)120。编码电路120接收输入帧106作为输入数据,并透过对输入帧106进行编码来生成已编码视频数据102。解码电路110接收已编码视频数据102 作为输入数据,并透过对已编码视频数据102进行解码来生成输出帧104。视频编码系统100可以透过一个或多个视频编码装置来实现,所述装置可以包括解码电路110、编码电路120、或者解码电路110和编码电路120两者兼具。
解码电路110可以包括至少帧间预测模块112和解码控制器116。帧间预测模块112可以基于区块(如目前区块)的重建运动向量生成影像帧中的区块的预测子。解码控制器116可以监视已编码视频数据102的解码,包括确定是否使用帧间预测模块 112来解码目前区块。
解码控制器116包括运动向量选择和细化(MV S+R)模块118,其被配置为确定目前区块的候选运动向量集合,基于选择索引选择所述候选运动向量集合中的一个,并且当所选择的候选运动向量满足预定条件时细化所选择的候选运动向量。在一个范例中,当所选择的候选运动向量不同于所述候选运动向量集合中的任何其他运动向量时,MV S+R模块118可以细化所选择的候选运动向量。
在操作中,解码控制器116接收与目前区块相关联的已编码视频数据102,并从中提取关于是否使用帧间预测模块112的信息和/或用于重建目前区块的运动向量的信息。在一些范例中,用于重建目前区块的运动向量的信息包括指示如何获得目前区块的重建运动向量的模式指示符号。在一些范例中,透过基于来自空间相邻和/或时间相邻区块的运动信息确定候选运动向量集合来获得目前区块的重建运动向量,而为目前区块重建运动向量的信息包括选择索引,所述选择索引指示候选运动向量集合中的哪个运动向量系被用于决定目前区块之重建运动向量。在至少一个范例中,模式指示符和/或选择索引可以由解码控制器116导出,而不需在已编码视频数据102中明确地包括模式指示符和/或选择索引。
基于已编码视频数据102,MV S+R模块118可根据预定运动向量预测流程(如高级运动向量预测(AMVP)模式、合并模式、或任何其他合适的运动向量预测流程) 来确定候选运动向量集合。在一些范例中,根据预定视频编解码标准,预定运动向量预测流程是基于来自空间相邻和/或时间相邻的区块的运动信息来执行,运动信息可以包括未细化运动向量、细化运动向量、或两者皆有。在一些范例中,预定运动向量预测流程包括修剪流程(pruningprocess)以移除重复的候选运动向量,或移除在预定临界值内的两个候选运动向量中的一者。在一些范例中,预定运动向量包括默认添加流程,以将零运动向量或默认运动向量添加到候选运动向量集合。在至少一个范例中,候选运动向量集合包括至多两个候选运动向量。
此外,基于已编码视频数据102,MV S+R模块118解码或导出用于从候选运动向量集合中选择候选运动向量的选择索引。MV S+R模块118还可以基于所选择的候选运动向量确定目前区块的重建运动向量,包括在满足预定条件时细化所选择的候选运动向量。
在一个范例中,MV S+R模块118可以被配置为始终将所选择的候选运动向量细化成为重建运动向量。在另一范例中,MV S+R模块118可以被配置为在所选择的候选运动向量不同于所述候选运动向量集合中的任何其他运动向量时,细化所选择的候选运动向量。
在候选运动向量集合包括对应至两个或更多个相应索引的两个或更多个相同候选运动向量的情况下,MV S+R模块118可被配置为在选择索引对应至两个或更多个相同候选运动向量的两个或更多个索引中的预定序数等级时,细化所选择的候选运动向量。在一些范例中,预定序数等级对应至两个或更多个相同候选运动向量的两个或更多个索引中的最小索引。在一些范例中,预定序数等级对应至两个或更多个相同候选运动向量的两个或更多个索引中的第二最小索引。在一些其他范例中,候选运动向量集合的预定部分可以根据已编码视频数据102所遵守的预定视频编解码标准进行细化或不进行细化。
举例而言,根据范例性视频编解码标准,MV S+R模块118可以创建包括两个候选运动向量的候选运动向量集合:与索引0相关联的MVP0和与索引1相关联的MVP1。当候选运动向量MVP0和MVP1不同时,根据范例性视频编解码标准,MV S+R模块 118可以将所选择的候选运动向量细化成为重建运动向量。当候选运动向量MVP0和 MVP1相同时,根据范例性视频编解码标准,当选择的候选运动向量是MVP0和MVP1 中预定的一个时,MV S+R模块118可以将所选择的候选运动向量细化成为目前区块的重建运动向量。举例而言,MV S+R模块118可以被配置为:如果选择索引是0,则选择候选运动向量MVP0并将其细化成为重建运动向量;如果选择索引是1,则选择候选运动向量MVP1并将其作为重建运动向量输出而不进行细化。当然,MV S+R 模块118可以被替换地配置,使得如果选择索引是1,则选择候选运动向量MVP1并将其细化成为重建运动向量;如果选择索引为0,则选择候选运动向量MVP0并将其作为重建运动向量输出而不进行细化。
此外,当所选候选运动向量被细化成为重建运动向量时,MV S+R模块118可透过使用具有预定步长的预定搜索模型基于所选的候选运动向量识别样本运动向量,来细化所选的候选运动向量。预定搜索模型可以是菱形搜索模型或十字搜索模型。预定步长可以以像素间距为单位测量,在一些范例中,像素间距可以是目前区块的像素间距的整数或分数。MVS+R模块118可以对所识别的样本运动向量执行模板评估,然后基于模板评估选择所识别的样本运动向量之一作为所选择的候选运动向量的细化。在一些范例中,MV S+R模块118可以在预定次数的迭代中使用不同的搜索模型来细化所选择的候选运动向量。当细化是使用分数像素间距的步长执行时,样本运动向量和对应的模板可以透过内插获得。此外,在一些范例中,所识别的样本运动向量限于那些指示参考影像中的参考位置的样本运动向量,所述参考位置位于所选择的候选运动向量所指示的参考位置的预定搜索范围内。在一些范例中,搜索范围可以被限制为目前影像的8个像素间距或者对应至目前影像的亮度影像的8个像素间距。
举例而言,根据范例性视频编解码标准,MV S+R模块118可以透过用预定步长根据菱形搜索模型执行模板配对,然后根据十字搜索模型执行另一模板配对,然后用减小的步长以预定次数的迭代使用这些搜索模型重复进行模板配对,来细化所选择的候选运动向量。在另一范例中,根据另一范例性视频编解码标准,MV S+R模块118可透过用整数像素间距的步长(例如一个或两个像素间距)根据菱形搜索模型执行模板配对,然后根据十字搜索模型执行模板配对,来细化所选择的候选运动向量。在另一范例中,根据另一范例性视频编解码标准,MV S+R模块118可透过用分数像素间距的步长(例如像素间距的四分之一或一半)根据菱形搜索模型执行模板配对,然后根据十字搜索模型执行模板配对,来细化所选择的候选运动向量。当然,所选择的候选运动向量也可以基于其他运动向量细化方法来细化。
在MV S+R模块118确定目前区块的重建运动向量之后,帧间预测模块112根据重建运动向量生成目前区块的预测子,而解码控制器116控制解码电路110的操作,以至少基于目前区块的预测子解码和生成输出帧104。
编码电路120可以至少包括帧间估计模块121、帧间预测模块122和编码控制器126。帧间估计模块121可以分析输入帧106,并使用基于候选运动向量集合和预定成本函数的帧间预测来确定用于编码影像帧中区块(或者目前区块)的预测参数。在一些范例中,预测参数包括从由编码控制器126提供的候选运动向量集合中所选择的运动向量。在一些范例中,预定成本函数包括比特率-失真优化分析。帧间预测模块122可以基于由帧间估计模块121或编码控制器126提供的区块的所选择的候选运动向量,来生成目前区块的预测子。编码控制器126可以监视目前区块的编码,包括确定是否使用帧间估计模块121和帧间预测模块122,来对于目前区块进行编码和/ 或控制帧间估计模块121和帧间预测模块122的操作。
编码控制器126包括运动向量细化和选择(MV R+S)模块128,其被配置为确定目前区块的初始运动向量集合,并基于所述初始运动向量集合确定用于所述目前区块的候选运动向量集合,包括将满足预定条件的一个或多个初始运动向量细化成为一个或多个相应的候选运动向量。在一个范例中,MV R+S模块128可以将初始运动向量集合中彼此不同的初始运动向量,细化成为一个或多个相应的候选运动向量。
在操作中,编码控制器126可以透过包括关于是否使用帧间预测的信息和/或用于重建目前区块的运动向量的信息,来生成与目前区块相关联的已编码视频数据102。在一些范例中,用于重建目前区块的运动向量的信息包括模式指示符号和/或选择索引,用于在解码时获得目前区块的重建运动向量。
基于预定的视频编解码标准,MV R+S模块128可以根据预定的运动向量预测流程来确定初始运动向量集合,如高级运动向量预测(AMVP)模式、合并模式、或任何其他合适的运动向量预测流程。在一些范例中,根据预定视频编解码标准,预定运动向量预测流程是基于来自空间相邻和/或时间相邻的区块的运动信息来执行,运动信息可以包括未细化运动向量、细化运动向量、或两者皆有。在一些范例中,预定运动向量预测流程包括修剪流程,以去除重复的初始运动向量,或者去除在预定临界值内的两个初始运动向量中的一个。在一些范例中,预定运动向量包括默认添加流程,以将零运动向量或默认运动向量添加到所述初始运动向量集合。在至少一个范例中,所述初始运动向量集合包括至多两个初始运动向量。
MV R+S模块128可以进一步将初始运动向量集合转换成为候选运动向量集合。在一些范例中,MV R+S模块128透过细化满足预定条件的初始运动向量集合的一部分或全部,来生成候选运动向量集合。
在一个范例中,MV R+S模块128可以配置为将所有初始运动向量细化成为候选运动向量集合。在另一范例中,MV R+S模块128可以被配置为将彼此不同的一个或多个初始运动向量细化成为一个或多个相应的候选运动向量,同时将其他初始运动向量保持在候选运动向量集合中而不进行细化。
在初始运动向量集合包括对应至两个或更多个相应索引的两个或更多个相同初始运动向量的情况下,MV R+S模块128可被配置为将对应至两个或更多个相同的初始运动向量的两个或更多个索引中的预定序数等级的两个或更多个相同初始运动向量中的一个进行细化,并跳过细化两个或更多个相同的初始运动向量中的至少另一个。在一些范例中,预定序数等级对应至两个或更多个相同的初始运动向量的两个或更多个索引中的最小索引。在一些范例中,预定序数等级对应至两个或更多个相同初始运动向量的两个或更多个索引中的第二最小索引。在另一些其他范例中,根据用于生成已编码视频数据102的预定视频编解码标准,可以对所述集合的初始运动向量的预定部分进行细化或不进行细化。
举例而言,根据范例性视频编解码标准,MV R+S模块128可以创建包括两个初始运动向量的初始运动向量集合:与索引0相关联的MVP0和与索引1相关联的MVP1。当初始运动向量MVP0和MVP1不同时,根据范例性视频编解码标准,MV R+S模块 128可以将两个初始候选运动向量细化成为MVP0'和MVP1'的候选运动向量集合。 MVP0'和MVP1'分别是初始运动向量MVP0和MVP1的细化对应物。当初始运动向量MVP0 和MVP1相同时,根据范例性视频编解码标准,MV R+S模块128可以仅细化初始运动向量中的一个。举例而言,MV R+S模块128可以被配置为细化具有索引0的初始候选运动向量,而所得到的候选运动向量集合将包括MVP0'和MVP1。当然,MV R+ S模块128可以替代地配置为细化具有索引1的初始候选运动向量,而所得到的候选运动向量集合将包括MVP0和MVP1'。
此外,为了细化特定初始运动向量,MV R+S模块128可以使用预定搜索模型以预定步长基于特定初始运动向量来识别样本运动向量,以细化特定初始运动向量,其方式类似于上面所示的MV S+R模块118的执行方式,可参考图2、图3A和图3B 的进一步说明。当然,可以基于其他运动向量细化方法来细化特定的初始运动向量。
在MV R+S模块128确定目前区块的候选运动向量集合后,帧间估计模块121 可以从候选运动向量集合中选择一个候选运动向量,且帧间预测模块122可以使用所选择的候选运动向量生成目前区块的对应预测子。在一些范例中,当候选运动向量集合中的细化运动向量与候选运动向量集合中的未细化运动向量相同时,帧间估计模块 121可以避免使用在候选运动向量集合中的细化运动向量。帧间预测子可以进一步用于生成目前区块的残差信息。残差信息和运动向量选择信息可以由编码控制器126 编码,并包括在已编码视频数据102中。
图2为根据本发明的范例性实施例的细化运动向量210的示意图。运动向量210 可以对应至如参考解码电路110所示的所选择的、要经过细化的选候运动向量,或者如参考编码电路120所示的要经过细化的特定初始运动向量。
在图2中,目前影像220包括目前区块222。用于目前区块222的运动向量210 识别参考影像260中的参考区块262。在此范例中,运动向量210透过指向参考区块 262的特定位置,如参考区块262的左上角,来识别参考区块262。
此外,根据预定的视频编解码标准,可以确定与目前区块222相关联的两个模板区域224和226。模板区域224可以被定义为在目前影像220中紧邻目前区块222的上边缘的M行(row)像素。模板区域226可以被定义为在目前影像220中紧邻目前区块的左边缘的N列(column)像素。M和N是根据预定视频编解码标准定义的整数。类似地,可以确定与参考区块262相关联的两个模板区域264和266。模板区域264 可以被定义为在参考影像260中与参考区块262的上边缘紧邻的M行像素。模板区域 266可以被定义为在参考影像260中紧邻参考区块262的左边缘的N列像素。
此外,多个样本运动向量可以使用预定搜索模型来识别。样本运动向量指示样本区块270的对应左上角。样本区块270的每个样本区块的样本模板区域,可以透过类似于参考区块262的模板区域264和266之方式确定。在一些范例中,参考区块262 是样本区块270中的一者。在一些范例中,影像220和260是不同的影像。在至少一个范例中,影像220和260可以参考相同的影像。
为了细化运动向量210,可以基于确定对应模板区域的模板成本值,来执行所识别的样本运动向量的模板评估,其中模板成本值可用于测量与目前区块222相关联的模板区域224和226与由特定样本运动向量指示的各自样本区块相关联的对应模板区域之间的差异。对应至最小模板成本值的样本运动向量可以被选择作为运动向量210 的细化,其可以作为重建运动向量或候选运动向量输出,或者可以作为运动向量细化的下一迭代的基本运动向量。
图3A为根据本发明的范例性实施例的被称为十字搜索模型的范例性搜索模型的示意图。图3A中的每个未填充的点对应至如参考图2所示的样本区块的可能的左上角。填充的点310对应至由要被细化的运动向量指示的参考区块的左上角,如参考图 2所示的参考区块262的左上角。
如图3A所示,样本运动向量或相应的样本运动区块可以基于具有被定义为远离参考区块的左上角310的一个步长(1n)的角的方形图案来选择,例如,假设左上角 310的坐标是(0,0),样本322的(0,1)、样本324的(1,0)、样本326的(0,-1)、以及样本328的(-1,0)。步长n可以以目前影像或参考影像的像素间距为单位来定义。在一些范例中,步长n对应至整数像素间距,例如一个或两个像素间距。在一些范例中,步长n对应至分数像素间距,例如像素间距的四分之一或一半。
图3B为根据本发明的范例性实施例的被称为菱形搜索模型的范例性搜索模型的示意图。类似于参考图3A所示的范例,图3B中的每个未填充的点对应至如参考图2 所示的样本区块的可能的左上角。填充的点330对应至要被细化的运动向量指示的参考区块的左上角,如参考图2所示的参考区块262的左上角。
如图3B所示,样本运动向量或相应的样本运动区块可以基于具有被定义为远离参考区块的左上角330的两个步长(2n)的角的方形图案来选择,举例而言,假设左上角330的坐标是(0,0),角样本包括样本(0,2)341、样本(2,0)343、样本(0, -2)345和样本(-2,0)347等、以及侧边样本包括样本(1,1)342、样本(1,-1) 344、样本(-1,-1)346和样本(-1,1)348等。步长n可以以目前影像或参考影像的像素间距为单位来定义。在一些范例中,步长n对应至整数像素间距,如一个或两个像素间距。在一些范例中,步长n对应至分数像素间距,如像素间距的四分之一或一半。
图4为根据本发明的实施例的用于视频编解码系统(如图1中的视频编码系统100)中的视频解码410的处理电路的范例性功能方块图。图4是解码电路410的简化图标,因此可能未示出解码电路410的所有细节和变化。
解码电路410包括帧间预测模块412和具有运动向量选择和细化(MV S+R)模块418的解码控制器416,其可以分别对应至图1中的帧间预测模块112、解码控制器116、以及MV S+R模块118。如果解码控制器416确定目前区块的预测子是使用帧间预测生成,则帧间预测模块412可以基于由参考图1描述的MV S+R模块418 提供的重建运动向量,来生成目前区块的帧间预测子。
解码电路410还包括帧内预测模块432、加法器442、残差解码器444、输出滤波器446、存储器450和处理器460。当目前区块要使用帧内预测来解码时,帧内预测模块432可以基于指定或导出的帧内预测模式,来生成目前区块的帧内预测子。此外,残差解码器444可以根据来自解码控制器416的残差信息,来生成目前区块的残余部分。加法器442可以透过添加来自残差解码器444的目前区块的残余部分、来自帧间预测模块412的目前区块的帧间预测子、和/或来自帧内预测模块432的目前区块的帧内预测子,来生成目前区块的解码影像(即解码区块)。
输出滤波器446可以将来自加法器442的解码区块组合成影像帧,根据预定的滤波流程处理影像帧,并将滤波后的影像帧输出为输出帧404。存储器450可以储存来自输出滤波器446的滤波后的影像帧,和/或来自预测模块412或432的目前帧的先前解码的区块,其可进一步被预测模块412或432用于检索参考样本。
解码控制器416接收并分析已编码视频数据402,并提取目前区块的残差信息和预测参数。解码控制器416可以将残差信息提供给残差解码器444,并将预测参数提供给帧间预测模块412或帧内预测模块432,以便重建目前区块的影像。具体而言,当要使用帧间预测对目前区块进行解码时,解码控制器416的MV S+R模块418可以确定候选运动向量集合,根据选择索引选择候选运动向量中的一个,并且当满足预定条件时,将所选择的候选运动向量细化成为重建运动向量,如参考图1-图3B所示。
在操作中,当要解码目前区块时,解码控制器416接收与目前区块相关联的已编码视频数据402,并提取关于目前区块是否使用帧间预测或帧内预测来解码的信息。当解码控制器416确定要使用帧间预测解码目前区块时,解码控制器416的MV S+R 模块418确定如上所述的重建运动向量,并转发目前区块的解码预测参数(包括重建运动向量)至帧间预测模块412。帧间预测模块412可以根据来自MV S+R模块418 的重建运动向量来生成目前区块的帧间预测子。
解码控制器416也将残差信息转发到残差解码器444,其即为生成目前区块的残余部分的地方。现在可以透过在加法器442处添加来自帧间预测模块412的帧间预测子和来自残差解码器444的目前区块的残余部分来解码目前区块。
存储器450可用于储存程序指令、对应至预测参数的信息、先前解码的区块、输出帧和/或用于执行解码电路410的各种功能的中间数据。在一些范例中,存储器450 包括非暂时性计算机可读媒介,例如半导体或固态存储器、随机存取存储器(RAM)、只读存储器(ROM)、硬盘、光盘或其他合适的储存媒介。在一些实施例中,存储器 450包括上面列出的两个或更多个非暂时性计算机可读媒介的组合。
此外,如图4所示,处理器460与存储器450电耦合,并且可以被配置为执行储存在存储器450中的程序指令以执行各种功能。处理器460可包括单个或多个处理核心。解码电路410的各种组件,如解码控制器416、MV S+R模块418、帧间预测模块412、帧内预测模块432、加法器442、残差解码器444和/或输出滤波器446,可以全部或部分地由硬件组件、处理器460执行程序指令或其组合来实行。当然,处理器460还可以执行程序指令,来控制已编码视频数据402的接收和输出帧404的输出或显示。在一些范例中,处理器460可以执行程序指令,来执行可能不是直接与解码已编码视频数据402有关的功能。
图5为根据本发明实施例的用于视频编解码系统(如图1中的视频编解码系统100)中的视频编码520的处理电路的范例性功能方块图。图5是编码电路520的简化图标,因此可能未示出编码电路520的所有细节和变化。
编码电路520包括帧间估计模块521、帧间预测模块522、以及具有运动向量细化和选择(MV R+S)模块528的编码控制器526,其可以分别对应至图1中的帧间估计模块121、帧间预测模块122、编码控制器126和运动向量细化和选择(MV R+S) 模块128。编码电路520还包括帧内估计模块531、帧内预测模块532、加法器542、残差编码器544、重建模块548、存储器550和处理器560。
编码控制器526监督帧间估计模块521、帧间预测模块522、帧内估计模块531 和帧内预测模块532的操作。编码控制器526可将每个输入帧划分为区块,并指示帧间估计模块521和/或帧内估计模块531来确定每个区块的预测架构、预测模式和/ 或每个区块对应的预测参数。编码控制器526可以选择帧间预测模块522或帧内预测模块532中的一个,来将目前区块对应的最终预测子输出到加法器542。加法器542 接收目前区块的原始影像和目前区块的最后预测子,并透过从目前区块的原始影像中减去最终预测子,来输出目前区块的残余部分。残差编码器544接收并编码目前区块的残余部分。编码控制器526可以基于来自帧间估计模块521和/或帧内估计模块531 的预测参数、以及来自残差编码器544的输出,来生成已编码视频数据502。
帧间预测模块522和帧内预测模块532可以分别从帧间估计模块521和帧内估计模块531接收预测参数,并可以用类似于图4所示的帧间预测模块412和帧内预测模块432的操作方式,来生成目前区块相应的最终预测子。帧间预测模块522和/或帧内预测模块532可以分别用类似于帧间预测模块412和帧内预测模块432的操作方式,来生成最终预测子。因此,省略其详细描述。
在一些范例中,编码控制器526可以控制帧间估计模块521、帧内估计模块531、帧间预测模块522、帧内预测模块532和/或残差编码器544,基于不同预测架构和参数来对目前区块进行编码,然后可以选择编码架构和参数的最佳组合来编码目前区块。
在一些范例中,在使用帧间估计模块521确定可能的预测参数时,编码控制器 526的MV R+S模块528可确定目前区块的初始运动向量,以及透过细化满足预定条件的初始运动向量来确定的目前区块的候选运动向量集合,如参考图1-图3B所示。
重建模块548可以从帧间预测模块522或帧内预测模块532来接收最终预测子,并且从残余编码器544接收目前区块的重建残余部分。基于这样的信息,重建模块 548可以用与图4中的加法器442和输出滤波器446的操作类似的方式,来生成目前区块的重建影像和/或重建帧。重建的区块和/或帧可以储存在存储器550中,并且可以透过以下模块存取:帧间预测模块522、帧内预测模块532、帧间估计模块521和/ 或帧内估计模块531,用于估计目前区块或下一区块的预测参数。
在操作中,当如编码控制器526所指示的那样使用帧间预测来编码目前区块时,帧间估计模块521从输入帧506接收目前区块的原始影像。帧间估计模块521可以与编码控制器526的MV R+S模块528一起工作,来确定合适的预测参数,如接收由MV R+S模块528确定的候选运动向量集合,并根据预定的视频编解码标准,从所述候选运动向量集合中选择目前区块的运动向量。帧间预测模块522可基于由帧间估计模块521提供的预测参数(如所选之运动向量)来产生目前区块的帧间预测子。
加法器542可以基于目前区块的原始影像和最终预测子,来输出目前区块的残余部分,并对残余部分进行编码。编码控制器526可以收集编码的残差信息和来自帧间估计模块521和/或帧内估计模块531的预测参数,并确定所选择的目前区块的编解码架构是否为可接受。
存储器550可用于储存程序指令、对应至预测参数的信息、重建区块、输入帧和 /或用于执行编码电路520的各种功能的中间数据。在一些范例中,存储器550包括非暂时性计算机可读媒介,如半导体或固态存储器、随机存取存储器(RAM)、只读存储器(ROM)、硬盘、光盘或其他合适的储存媒介。在一些实施例中,存储器550包括上面列出的两个或更多个非暂时性计算机可读媒介的组合。
此外,如图5所示,处理器560与存储器550电耦合,且可以被配置为执行储存在存储器550中的程序指令,以执行各种功能。处理器560可包括单个或多个处理核心。编码电路520的各种组件,如编码控制器526、MV R+S模块528、帧间预测模块522、帧间估计模块521、帧内预测模块532、帧内估计模块531、加法器542、残差编码器544和/或重建模块548,可以全部或部分地由硬件组件、处理器560执行程序指令或其组合来实现。当然,处理器560还可以执行程序指令,来控制输入帧 506的接收和已编码视频数据502的输出。在一些范例中,处理器560可以执行程序指令,来执行可能与编码已编码视频数据502不直接相关的功能。
此外,图4中的解码电路410和图5中的编码电路520可以在同一电子设备中实现,并且可以共享或重新使用解码电路410和编码电路520的各种组件。举例而言,解码电路410中的存储器450、处理器460、MV S+R模块418、帧间预测模块412、帧内预测模块432和输出滤波器546中的一个或多个,也可以分别用作在图5中所示的存储器550、处理器560、帧间预测模块522、帧内预测模块532、MV R+S模块 518和重建模块548。
图6为根据本发明的实施例的使用视频解码处理电路(如图4中的处理电路410)的范例性视频解码处理流程600。应理解的是,可以在图6中描述的流程600之前、期间和/或之后执行附加操作。流程600开始于S601,并进行到S610。
在S610,接收与影像帧中目前区块相关联的已编码视频数据作为输入数据。举例而言,解码控制器416可以接收已编码视频数据402,已编码视频数据402包括与目前区块相关联的输入数据。
在S620,当使用帧间预测对目前区块进行编码时,确定目前区块的候选运动向量集合。举例而言,MV S+R模块418可以基于目前区块的至少一个空间相邻区块和/或至少一个时间相邻区块,来确定候选运动向量集合。MV S+R模块418可以根据预定的运动向量预测流程,如高级运动向量预测(AMVP)模式或合并模式、或任何其他合适的运动向量预测流程,来确定候选运动向量集合。
在S630,基于选择索引来选择候选运动向量其中之一。在一些范例中,在接收的已编码视频数据中明确地提供选择索引。在一些范例中,可以导出选择索引,因此不必在接收的已编码视频数据中明确地提供选择索引。举例而言,解码控制器416 可以确定选择索引,并根据选择索引选择候选运动向量集合中的一个。
在S640,基于所选择的候选运动向量是否满足预定条件,来确定所选择的候选运动向量是否进行进一步细化。如果要细化所选择的候选运动向量,则进入流程S650;否则,进入流程S655。
在一些范例中,候选运动向量集合包括对应至两个或更多个相应索引的两个或更多个相同候选运动向量。当选择索引对应至两个或更多个相同候选运动向量的两个或更多个索引中的预定序数等级时,可以确定将所选择的候选运动向量进行进一步细化。在一些范例中,预定序数等级对应至两个或更多个相同候选运动向量的两个或更多个索引中的最小索引。在一些范例中,预定序数等级对应至两个或更多个相同候选运动向量的两个或更多个索引中的第二最小索引。
在另一些范例中,可以始终细化所选择的候选运动向量。在这种情况下,所述流程可以直接从S630进行到S650,并且可以省略S640和S655。
举例而言,MV S+R模块118或418可以确定所选择的候选运动向量是否进行进一步细化,如参考图1-图4所示。
在S650,将所选运动向量细化成为目前区块的重建运动向量。在一些范例中,细化所选运动向量包括使用菱形搜索模型或十字搜索模型基于所选候选运动向量来识别样本运动向量,对所识别的样本运动向量执行模板评估,并且基于模板评估选择所识别的样本运动向量中的一个以作为所选候选运动向量的细化。在一些范例中,所识别的样本运动向量指示参考影像中的参考位置,所述参考位置位于从所选候选运动向量指示的参考位置开始的预定搜索范围内。举例而言,MV S+R模块118或418 可以细化所选择的候选运动向量,如参考图1-图4所示。
在S655,所选择的候选运动向量可以作为重建运动向量而无需细化。
在S660,生成目前帧的影像用于输出,包括基于在S650或S655确定的重建运动向量,来生成目前区块的重建影像。举例而言,解码控制器416可以控制残差解码器444来生成目前区块的残余部分,控制帧间预测模块412基于重建运动向量来生成目前区块的预测子,并控制加法器442来组合预测子和残余部分来生成目前区块的重建影像。解码控制器416可以控制已编码视频数据的解码来生成输出帧,如参考图 1-图4所示。
在S660之后,流程进行到S699并终止。
图7为根据本发明的实施例的使用视频编码处理电路(如图5中的处理电路520)的范例性视频编码处理流程700。应理解的是,可以在图7中描绘的流程700之前、期间和/或之后执行附加操作。流程700在S701开始并且进行到S710。
在S710,接收输入影像帧作为输入数据,输入影像帧包括要使用帧间预测进行编码的目前区块。举例而言,处理电路520可以接收包括具有目前区块的影像帧的输入帧506。
在S720,确定目前区块的一组初始运动向量。举例而言,MV R+S模块528可以基于目前区块的至少一个空间相邻区块和/或至少一个时间相邻区块来确定初始运动向量集合。MV R+S模块528可以根据预定的运动向量预测流程,如高级运动向量预测(AMVP)模式或合并模式、或任何其他合适的运动向量预测流程,确定初始运动向量集合。
在S730,对于每个初始运动向量,基于初始候选运动向量是否满足预定条件,来确定初始候选运动向量是否进行进一步细化。如果要细化初始候选运动向量,则进行流程S740;否则,进行流程S745。
在一些范例中,初始运动向量集合包含对应至两个或两个以上相应索引的两个或两个以上相同候选运动向量。当索引对应至两个或更多个相同的初始运动向量的两个或更多个索引中的预定序数等级时,可以确定对于初始候选运动向量进行进一步细化。在一些范例中,预定序数等级对应至两个或更多个相同候选运动向量的两个或更多个索引中的最小索引。在一些范例中,预定序数等级对应至两个或更多个相同候选运动向量的两个或更多个索引中的第二最小索引。
在另一些范例中,可以始终细化初始候选运动向量。在这种情况下,所述流程可以直接从S720进行到S740,并且可以省略S730和S745。
举例而言,MV R+S模块128或528可以确定所选择的候选运动向量是否进行进一步细化,如参考图1-图3B和图5所示。
在S740,将初始运动向量细化成为目前区块的对应候选运动向量,所述对应候选运动向量与目前处理的初始运动向量相同的选择索引相关联。在一些范例中,细化初始运动向量包括使用菱形搜索模型或十字搜索模型基于初始运动向量来识别样本运动向量,对识别的样本运动向量执行模板评估,并且基于模板评估选择所识别的样本运动向量之一作为初始运动向量的细化。在一些范例中,所识别的样本运动向量指示参考影像中的参考位置,所述参考位置位于自初始运动向量指示的参考位置开始的预定搜索范围内。举例而言,MV R+S模块128或528可以细化初始运动向量,如参考图1-图3B和图5所示。
在S745,初始运动向量可以作为对应的候选运动向量,而没有细化,所述对应的候选运动向量与目前处理的初始运动向量相同的选择索引相关联。
在S750,确定是否处理了所有初始运动向量。如果已根据S730、S740和/或S745 处理了所有初始运动向量,则进行流程S760;否则,进行流程S730,或者在省略S730 的情况下进行流程S740。
在S760,选择候选运动向量的一个,来使用帧间预测对目前区块进行编码。举例而言,编码控制器526和/或帧间估计模块521可以确定要为目前区块选择哪个候选运动向量。可以识别对应的选择索引来进行进一步的编码处理。
在S770,对目前影像帧进行编码以用于输出,包括基于所选择的候选运动向量对目前区块的影像进行编码。在一些范例中,可以将目前区块的影像划分为要使用所选择的候选运动向量进行编码的帧间预测子和残余部分。编码控制器还可以将用于指示所选择的候选运动向量的选择索引包括到已编码视频数据中。
举例而言,编码控制器526可以控制帧间预测模块522以生成目前区块的帧间预测子,控制加法器542基于从目前区块的原始影像中减去帧间预测子来生成目前区块的残余部分,以及控制残差编码器544来对残余部分进行编码。编码控制器526可以收集选择索引和编码的残余部分,并根据预定的视频编解码标准将这些信息合并到已编码视频数据中,如参考图1-图3B和图5所示。
在S760之后,流程进行到S799并终止。
虽然已经结合作为范例提出的本发明的特定实施例描述了本发明的各方面,但是可以对范例进行替换、修改和变化。因此,这里阐述的实施例旨在是说明性的而非限制性的。在不脱离下述权利要求的范围的情况下,可以进行改变。

Claims (19)

1.一种视频解码设备,包括:
处理电路与帧间预测模块,其中所述处理电路配置为:
接收与目前影像帧的目前区块相关联的已编码视频数据;
确定所述目前区块的候选运动向量集合;
基于所述已编码视频数据确定选择索引;
根据所述选择索引选择所述候选运动向量集合中的一个;
当所选择的所述候选运动向量满足预定条件时,将所选择的所述候选运动向量细化成为重建运动向量;其中所述候选运动向量集合包括两个或更多个相同的候选运动向量,所述候选运动向量对应至两个或更多个相应的索引,当所述选择索引对应至所述两个或更多个相同候选运动向量的所述两个或更多个索引中的预定序数等级时,将所选择的所述候选运动向量细化成重建运动向量;以及
生成用于输出的所述目前影像帧的影像,包括基于所述重建运动向量生成所述目前区块的重建影像;以及
所述帧间预测模块根据所述重建运动向量生成所述目前区块的预测子,所述目前区块的预测子用于生成所述目前区块的所述重建影像。
2.根据权利要求1所述的视频解码设备,其特征在于,所述预定序数等级对应至所述两个或更多个相同候选运动向量的所述两个或更多个索引中的最小索引。
3.根据权利要求1所述的视频解码设备,其特征在于,所述预定序数等级对应至所述两个或更多个相同候选运动向量的所述两个或更多个索引中的第二最小索引。
4.根据权利要求1所述的视频解码设备,其特征在于,所述处理电路还被配置为:
当所述选择索引不对应至所述预定序数等级时,跳过细化所选择的所述候选运动向量。
5.根据权利要求1所述的视频解码设备,其特征在于,所述处理电路被配置为当所选择的所述候选运动向量不同于所述候选运动向量集合中的任何其他运动向量时,将所选择的所述候选运动向量细化成为所述重建运动向量。
6.根据权利要求1所述的视频解码设备,其特征在于,所述处理电路被配置为基于所述目前区块的至少一个空间相邻区块和/或至少一个时间相邻的区块的运动信息来确定所述目前区块的所述候选运动向量集合。
7.根据权利要求1所述的视频解码设备,其特征在于,所述候选运动向量集合包括至多两个候选运动向量。
8.根据权利要求1所述的视频解码设备,其特征在于,所述处理电路被配置为透过使用菱形搜索模型或十字搜索模型基于所选择的所述候选运动向量识别多个样本运动向量,对所识别的所述样本运动向量执行模板评估,并基于所述模板评估选择所识别的所述样本运动向量其中之一作为所选择的所述候选运动向量的细化,来细化所选择的所述候选运动向量。
9.根据权利要求8所述的视频解码设备,其特征在于,所识别的所述样本运动向量指示参考影像中的多个参考位置,所述参考位置位于自所选择的所述候选运动向量所指示的参考位置开始的预定搜索范围内。
10.一种视频解码方法,包括:
接收与目前影像帧的目前区块相关联的已编码视频数据;
确定所述目前区块的候选运动向量集合;
基于所述已编码视频数据确定选择索引;
基于所述选择索引选择所述候选运动向量集合中的一个;
当所选择的所述候选运动向量满足预定条件时,透过处理电路将所选择的所述候选运动向量细化成为重建运动向量,所述候选运动向量集合包括两个或更多个相同的候选运动向量,所述候选运动向量对应至两个或更多个相应的索引,当所述选择索引对应至所述两个或更多个相同候选运动向量的所述两个或更多个索引中的预定序数等级时,透过所述处理电路将所选择的所述候选运动向量细化成所述重建运动向量;以及
透过处理电路生成所述目前影像帧的影像以用于输出,包括基于所述重建运动向量生成所述目前区块的重建影像。
11.一种视频编码设备,包括:
处理电路与帧间预测模块,所述处理电路被配置为:
接收包括目前区块的目前影像帧;
确定所述目前区块的初始运动向量集合;
其中所述初始运动向量集合包括对应至两个或更多个相应的索引的两个或更多个相同的初始运动向量;
细化所述两个或更多个相同的初始运动向量中的一个,细化的所述初始运动向量对应至所述两个或更多个相同候选运动向量的所述两个或更多个索引中的预定序数等级;
跳过细化所述两个或更多个相同的初始运动向量中的至少另一个;
从所述目前区块的所述候选运动向量集合中选择候选运动向量;以及
编码所述目前影像帧以用于输出,包括基于所选择的所述候选运动向量对所述目前区块的影像进行编码;以及
所述帧间预测模块根据所选择的所述候选运动向量生成所述目前区块的预测子,所述目前区块的预测子用于对所述目前区块的影像进行编码。
12.根据权利要求11所述的视频编码设备,其特征在于,所述预定序数等级对应至所述两个或更多个相同初始运动向量的所述两个或更多个索引中的最小索引。
13.根据权利要求11所述的视频编码设备,其特征在于,所述预定序数等级对应至所述两个或更多个相同初始运动向量的所述两个或更多个索引中的第二最小索引。
14.根据权利要求11所述的视频编码设备,其特征在于,所述处理电路还被配置为:
当所述一个或多个初始运动向量均不同时,细化每个初始运动向量。
15.根据权利要求11所述的视频编码设备,其特征在于,所述处理电路被配置为基于所述目前区块的至少一个空间相邻区块和/或至少一个时间相邻区块的运动信息来确定所述目前区块的所述初始运动向量集合。
16.根据权利要求15所述的视频编码设备,其特征在于,所述初始运动向量集合包括至多两个初始运动向量。
17.根据权利要求11所述的视频编码设备,其特征在于,所述处理电路被配置为透过使用菱形搜索模型或十字搜索模型基于特定初始运动向量识别多个样本运动向量,对所识别的所述样本运动向量执行模板评估,并基于所述模板评估选择所识别的所述样本运动向量其中之一作为所述特定初始运动向量的细化,来细化所述特定初始运动向量。
18.根据权利要求17所述的视频编码设备,其特征在于,所识别的所述样本运动向量指示参考影像中的多个参考位置,所述参考位置位于自所选择的所述候选运动向量所指示的参考位置开始的预定搜索范围内。
19.一种视频编码方法,包括:
接收包括目前区块的目前影像帧;
确定所述目前区块的初始运动向量集合;
透过处理电路基于所述初始运动向量集合确定所述目前区块的候选运动向量集合,包括将满足预定条件的一个或多个初始运动向量细化成为一个或多个相应的候选运动向量,其中所述初始运动向量集合包括对应至两个或更多个相应的索引的两个或更多个相同的初始运动向量,透过所述处理电路细化对应至所述两个或更多个相同候选运动向量的所述两个或更多个索引中的预定序数等级的所述两个或更多个相同的初始运动向量中的一个,并且跳过细化所述两个或更多个相同的初始运动向量中的至少另一个;
从所述目前区块的所述候选运动向量集合中选择候选运动向量;以及
透过所述处理电路编码所述目前影像帧以用于输出,包括基于所选择的所述候选运动向量对所述目前区块的影像进行编码。
CN201880032597.4A 2017-05-19 2018-05-08 视频编解码的方法及装置 Active CN110637462B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762508463P 2017-05-19 2017-05-19
US62/508,463 2017-05-19
US15/966,570 2018-04-30
US15/966,570 US10735761B2 (en) 2017-05-19 2018-04-30 Method and apparatus of video coding
PCT/CN2018/085932 WO2018210154A1 (en) 2017-05-19 2018-05-08 Method and apparatus of video coding

Publications (2)

Publication Number Publication Date
CN110637462A CN110637462A (zh) 2019-12-31
CN110637462B true CN110637462B (zh) 2021-12-28

Family

ID=64272184

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880032597.4A Active CN110637462B (zh) 2017-05-19 2018-05-08 视频编解码的方法及装置

Country Status (4)

Country Link
US (1) US10735761B2 (zh)
CN (1) CN110637462B (zh)
TW (1) TWI688257B (zh)
WO (1) WO2018210154A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220150511A1 (en) * 2018-12-21 2022-05-12 Electronics And Telecommunications Research Institute Image encoding/decoding method and device, and recording medium having bitstream stored therein
MX2021008911A (es) * 2019-02-01 2021-08-24 Beijing Bytedance Network Tech Co Ltd Se?alizacion de informacion de reformacion en bucle utilizando conjuntos de parametros.
WO2020156529A1 (en) 2019-02-01 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Signaling of in-loop reshaping information using parameter sets
CN113574889B (zh) 2019-03-14 2024-01-12 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
WO2020192612A1 (en) 2019-03-23 2020-10-01 Beijing Bytedance Network Technology Co., Ltd. Default in-loop reshaping parameters
TWI749676B (zh) * 2020-08-03 2021-12-11 緯創資通股份有限公司 影像品質評估裝置及其影像品質評估方法
CN112764635B (zh) * 2021-01-27 2022-07-08 浙江大华技术股份有限公司 一种显示方法、装置、计算机设备及存储介质
US11936899B2 (en) 2021-03-12 2024-03-19 Lemon Inc. Methods and systems for motion candidate derivation
US20220295090A1 (en) * 2021-03-12 2022-09-15 Lemon Inc. Motion candidate derivation
WO2022253320A1 (en) * 2021-06-04 2022-12-08 Beijing Bytedance Network Technology Co., Ltd. Method, device, and medium for video processing

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102113327A (zh) * 2009-06-01 2011-06-29 松下电器产业株式会社 图像编码装置、方法、集成电路、程序
CN103314593A (zh) * 2011-01-12 2013-09-18 佳能株式会社 错误恢复改进的视频编码和解码

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1484922A (zh) * 2001-11-06 2004-03-24 松下电器产业株式会社 运动图像编码方法及运动图像解码方法
WO2004006586A1 (ja) * 2002-07-02 2004-01-15 Matsushita Electric Industrial Co., Ltd. 画像符号化方法および画像復号化方法
US8913660B2 (en) * 2005-04-14 2014-12-16 Fastvdo, Llc Device and method for fast block-matching motion estimation in video encoders
RU2579665C9 (ru) * 2011-12-28 2016-12-27 ДжейВиСи КЕНВУД КОРПОРЕЙШН Устройство кодирования движущегося изображения, способ кодирования движущегося изображения и программа кодирования движущегося изображения, а также устройство декодирования движущегося изображения, способ декодирования движущегося изображения и программа декодирования движущегося изображения
US10123036B2 (en) 2014-06-27 2018-11-06 Microsoft Technology Licensing, Llc Motion vector selection for video encoding
US11330284B2 (en) * 2015-03-27 2022-05-10 Qualcomm Incorporated Deriving motion information for sub-blocks in video coding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102113327A (zh) * 2009-06-01 2011-06-29 松下电器产业株式会社 图像编码装置、方法、集成电路、程序
CN103314593A (zh) * 2011-01-12 2013-09-18 佳能株式会社 错误恢复改进的视频编码和解码

Also Published As

Publication number Publication date
TW201902213A (zh) 2019-01-01
TWI688257B (zh) 2020-03-11
CN110637462A (zh) 2019-12-31
US10735761B2 (en) 2020-08-04
US20180338154A1 (en) 2018-11-22
WO2018210154A1 (en) 2018-11-22

Similar Documents

Publication Publication Date Title
CN110637462B (zh) 视频编解码的方法及装置
US11178404B2 (en) Method and apparatus of video coding
JP6977068B2 (ja) マルチリファレンス予測のための動きベクトルの精密化
TWI720532B (zh) 在視訊編解碼系統中視訊處理的方法以及裝置
WO2017148345A1 (en) Method and apparatus of video coding with affine motion compensation
US20170251213A1 (en) Method and apparatus of video coding
JP4213646B2 (ja) 画像符号化装置、画像符号化方法、画像符号化プログラム、画像復号装置、画像復号方法、及び画像復号プログラム。
JP2021529471A (ja) 動きベクトル精密化および動き補償のためのメモリアクセスウィンドウおよびパディング
JP7330243B2 (ja) 低減されたメモリアクセスを用いてfrucモードでビデオデータを符号化又は復号する方法及び装置
CN110870316B (zh) 视频编码和解码中低复杂度双向帧内预测的方法和装置
JP2020537424A (ja) 動きベクトルの改善のための制限されたメモリアクセスウィンドウ
KR20130138301A (ko) 저 메모리 액세스 모션 벡터 유도
US10931965B2 (en) Devices and methods for video coding using segmentation based partitioning of video coding blocks
KR20080069069A (ko) 인트라/인터 예측 방법 및 장치
TW202044840A (zh) 視訊編碼中具有運動精化的雙向預測視訊處理方法和裝置
US11528485B2 (en) Encoding apparatus and program
CN110691247B (zh) 一种解码、编码方法和设备
KR102356317B1 (ko) 화면 내 예측 부호화 또는 복호화 방법 및 장치

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant