帧内块复制与解码器侧运动矢量细化的交互

文档序号:1712142 发布日期:2019-12-13 浏览:25次 >En<

阅读说明:本技术 帧内块复制与解码器侧运动矢量细化的交互 (interaction of intra block copy with decoder-side motion vector refinement ) 是由 张凯 张莉 刘鸿彬 王悦 于 2019-06-05 设计创作,主要内容包括:描述了在视频编码中应用帧内块复制(IBC)的设备、系统和方法。总体来说,描述了将IBC与用于视频编码和解码的现有运动补偿算法相结合的方法。在一个典型的方面,一种使用IBC进行视频编码的方法,包括:确定是否使用运动补偿算法对当前图片的当前块进行编码;以及基于该确定,通过将帧内块复制选择性地应用到当前块对当前块进行编码。在一个典型的方面,另一种使用IBC进行视频编码方法,包括:确定是否使用帧内块复制对当前图片的当前块进行编码;以及基于该确定,通过将运动补偿算法选择性地应用到当前块对当前块进行编码。(Apparatus, systems, and methods are described that apply Intra Block Copy (IBC) in video coding. In general, methods are described that combine IBC with existing motion compensation algorithms for video encoding and decoding. In one exemplary aspect, a method for video encoding using IBC includes: determining whether a current block of a current picture is encoded using a motion compensation algorithm; and encoding the current block by selectively applying intra block copy to the current block based on the determination. In one exemplary aspect, another method for video encoding using IBC includes: determining whether to encode a current block of a current picture using intra block copy; and encoding the current block by selectively applying a motion compensation algorithm to the current block based on the determination.)

帧内块复制与解码器侧运动矢量细化的交互

相关申请的交叉引用

根据适用的专利法和/或《巴黎公约》的规定,本申请及时要求于2018年6月5日提交的国际专利申请号PCT/CN2018/089920的优先权和利益。根据美国法律,将国际专利申请号PCT/CN2018/089920的全部公开以引用方式并入本文,作为本申请公开的一部分。

技术领域

一般来说,本专利文件涉及视频编码技术。

背景技术

运动补偿是视频处理中的一种技术,其通过考虑相机和/或视频中的对象的运动,给定先前帧和/或将来帧来预测视频中的帧。运动补偿可以用于视频数据的编码和解码中以实现视频压缩。

发明内容

描述了与用于运动补偿的帧内块复制相关的设备、系统和方法。

在一个典型的方面,可以使用所公开的技术来提供使用帧内块复制的视频编码方法。该方法包括:确定是否使用运动补偿算法对当前图片的当前块进行编码;以及基于该确定,通过将帧内块复制选择性地应用到当前块对当前块进行编码。

在另一典型的方面,可以使用所公开的技术来提供使用帧内块复制的视频编码的另一种方法。该方法包括:确定是否使用帧内块复制对当前图片的当前块进行编码;以及基于该确定,通过将运动补偿算法选择性地应用到当前块对当前块进行编码。

在又一典型的方面,可以使用所公开的技术来提供使用帧内块复制的视频解码方法。该方法包括:确定是否使用运动补偿算法对当前图片的当前块进行解码;以及基于该确定,通过将帧内块复制选择性地应用到当前块对当前块进行解码。

在又一典型的方面,可以使用所公开的技术来提供使用帧内块复制的视频解码的另一种方法。该方法包括:确定是否使用帧内块复制对当前图片的当前块进行解码;以及基于该确定,通过将运动补偿算法选择性地应用到当前块对当前块进行解码。

在另一示例方面,公开了一种视频处理的方法。该方法包括:从编码表示确定表示所述视觉信息的一部分的正被解码的块是使用第一编码技术进行编码的;以及通过使用对应于所述第一编码技术的第一解码技术并通过排除对应于第二编码技术的第二解码技术的使用来对所述编码表示进行解码;其中两个技术中的一个对应于使用同一视频图片作为参考图片对所述正被解码的块进行编码的编码技术,并且所述两个编码技术中的另一个对应于使用与所述视觉信息相关联的参考图片来细化用于对所述正被解码的块进行编码的运动信息的帧速率上转换(FRUC)技术。

在另一示例方面,公开了一种视频处理的方法。该方法包括:从编码表示确定表示所述视觉信息的一部分的正被解码的块是使用第一编码技术进行编码的;以及通过使用对应于所述第一编码技术的第一解码技术并通过排除对应于第二编码技术的第二解码技术的使用来对所述编码表示进行解码;其中两个技术中的一个对应于使用同一视频图片作为参考图片对所述正被解码的块进行编码的编码技术,并且两个编码技术中的另一个对应于使用与所述视觉信息相关联的第一参考图片的第一参考块和和与视觉信息相关联的第二参考图片的第二参考块来推导用于对所述正被解码的块进行编码的运动信息的解码器侧运动矢量细化(DMVR)技术。

在另一示例方面中,公开了一种视频处理方法。该方法包括:通过使用第一编码技术并通过排除第二编码技术的使用来对所述视觉信息的图片的正被编码的块进行编码;以及其中两个技术中的一个对应于使用同一视频图片作为参考图片对所述正被编码的块进行编码的编码技术,并且所述两个编码技术中的另一个对应于使用与所述视觉信息相关联的参考图片来细化用于对所述正被编码的块进行编码的运动信息的帧速率上转换(FRUC)技术。

在另一示例方面,公开了一种视频处理方法。该方法包括:通过使用第一编码技术并通过排除第二编码技术的使用来对所述视觉信息的图片的正被编码的块进行编码;以及其中两个技术中的一个对应于使用同一视频图片作为参考图片对所述正被编码的块进行编码的编码技术,并且所述两个编码技术中的另一个对应于使用与所述视觉信息相关联的第一参考图片的第一参考块和和与视觉信息相关联的第二参考图片的第二参考块来推导用于对所述正被编码的块进行编码的运动信息的解码器侧运动矢量细化(DMVR)技术。在又一典型的方面,上述方法以处理器可执行代码的形式实施,并且存储在计算机可读的程序介质中。

在又一典型的方面,公开了一种设备,其被配置为或可操作以执行上述方法。该设备可以包括被编程以实现该方法的处理器。

在又一典型的方面,可以实现如本文中所述方法的视频解码器装置。

在附图、说明书和权利要求书中更详细地描述了所公开技术的上述方面、以及其他方面和特征。

附图说明

图1示出了帧内块复制技术的示例。

图2示出了帧速率上转换(FRUC)算法中的双边匹配的示例。

图3示出了FRUC算法中的模板匹配的示例。

图4示出了FRUC算法中的单边运动估计的示例。

图5示出了基于双边模板匹配的解码器侧运动矢量细化(DMVR)算法的示例。

图6示出了根据所公开的技术使用帧内块复制进行视频编码的示例方法的流程图。

图7示出了根据所公开的技术使用帧内块复制进行视频编码的另一示例方法的流程图。

图8示出了根据所公开的技术使用帧内块复制进行视频解码的示例方法的流程图。

图9示出了根据所公开的技术使用帧内块复制进行视频解码的另一示例方法的流程图。

图10是说明可用于实现本公开技术的各个部分的计算机系统或其他控制设备的结构示例的框图。

图11示出了可用于实现本公开技术的各个部分的移动设备的示例实施例的框图。

图12是视频处理的示例方法的流程图。

图13是另一示例视频处理方法的流程图。

具体实施方式

为了便于理解,本文中使用了章节标题,并且不将各章节中讨论的技术和实施例的范围仅局限于该章节。

由于对诸如视频、图片、三维场景等高分辨率视觉信息的需求日益增加,视频编码方法和技术在现代技术中无所不在。本申请所述的技术可以应用于各种视觉信息,包括视频、图片、三维场景等。视觉信息的图片可以是视频中的帧、图片的一部分、三维场景中的对象、三维场景的一部分等。块可以是视觉信息图片的一部分,诸如编码单元(CU)、最大编码单元(LCU)、样本、预测单元(PU)等,如本申请中所述。视觉信息的子块可以是PU,诸如子CU、样本等。PU可以是视觉信息的像素、体素或最小分辨量子。视频编解码器通常包括压缩或解压缩数字视频的电子电路或软件,并且不断地被改进以提供更高的编码效率。视频编解码器将未压缩的视频转换为压缩格式,或反之亦然。视频质量、用于表示视频的数据量(由比特率决定)、编码和解码算法的复杂度、对数据丢失和错误的敏感度、易于编辑、随机访问和端到端延迟(延迟)之间存在复杂的关系。压缩格式通常符合标准视频压缩规范,例如,高效视频编码(HEVC)标准(也称为H.265或MPEG-H第2部分)、待最终确定的通用视频编码标准或其他当前和/或未来的视频编码标准。

所公开技术的实施例可以应用于现有的视频编码标准(例如,HEVC、H.265)和未来的标准,以提高运行时间性能。在本文件中,使用章节标题来提高描述的可读性,并且不以任何方式将讨论或实施例(和/或实现)仅限于各自的章节。

1.参考图片和参考图片列表的示例

在HEVC中,存在短期和长期两种参考图片。当参考图片不再需要用于预测参考时,可以将其标记为“不用于参考”。HEVC引入了一种全新的参考图片管理方法,被称为参考图片集(RPS)或缓冲描述。

使用RPS概念完成将图片标记为“用于短期参考”、“用于长期参考”或“不用于参考”的处理。RPS是一组图片指示器,其在每个条带(slice)报头中发出信号,并且由一组短期图片和一组长期图片组成。在对图片的第一个条带报头进行解码后,DPB中的图片将按RPS的指定进行标记。在DPB中被RPS的短期图片部分指示的图片被保持为短期图片。在DPB中被RPS的长期图片部分指示的短期或长期图片被转换为或保持为长期图片。最后,DPB中在RPS中没有指示器的图片被标记为不用于参考。因此,所有可能被用作任何后续图片解码顺序预测的参考的已解码的图片必须包含在RPS中。

RPS由一组用于识别DPB中图片的图片顺序计数(POC)值组成。除了对POC信息发信号外,RPS还为每个图片发送一个标志。每个标志指示当前图片是否有对应图片是否可用或不可用于参考。应当注意的是,即使参考图片被发信号为对当前图片不可用,它仍被保留在DPB中,并且可能稍后可用于参考,并用于解码未来图片。

从POC信息和可用性标志,可以创建表1所示的五个参考图片列表。列表RefPicSetStCurrBefore由可供当前图片参考且POC值低于当前图片的POC值的短期图片组成。RefPicSetStCurrAfter由POC值高于当前图片的POC值的可用短期图片组成。RefPicSetStFoll是包含当前图片不可用、但可以用作按解码顺序解码后续图片的参考图片的所有短期图片的列表。最后,列表RefPicSetLtCurr和RefPicSetLtFoll分别包含可供当前图片参考和不可供当前图片参考的长期图片。

表1参考图片列表的清单

1.1短期和长期参考图片示例

通用序列参数集的语法如下示出:

通用条带段报头的语法如下示出:

上述语法表中使用的语义定义如下:

num_short_term_ref_pic_sets指定SPS中包含的st_ref_pic_set()语法结构的数目。num_short_term_ref_pic_sets的值应在0到64之间(包括0和64)。

在一些实施例中,解码器可以为num_short_term_ref_pic_sets+1st_ref_pic_set()语法结构的总数目分配存储器,因为在当前图片的条带报头中可能直接发出一个st_ref_pic_set()语法结构的信号。直接在当前图片的条带报头中发出信号的st_-ref_-pic_set()语法结构具有等于num_-short_-term_-ref_-pic_set的索引。

long_term_ref_pics_present_flag等于0指定CVS中的任何编码图片的帧间预测不使用长期参考图片。long_term_ref_pics_present_flag等于1指定CVS中的一个或多个编码图片的帧间预测可以使用长期参考图片。

num_long_term_ref_pics_sps指定在SPS中指定的候选长期参考图片的数量。num_long_term_ref_pics_sps的值应在0到32之间(包括0和32)。

lt_ref_pic_poc_lsb_sps[i]指定SPS中的第i个候选长期参考图片的图片顺序计数模块MaxPicOrderCntLsb。用于表示lt_ref_pic_poc_lsb_sps[i]的位数等于log2_max_pic_order_cnt_lsb_minus4+4。

used_by_curr_pic_lt_sps_flag[i]等于0指定在SPS中指定的第i个候选长期参考图片不被其长期参考图片集(RPS)中包含在SPS中指定的其第i个候选长期参考图片的图片用于参考。

short_term_ref_pic_set_sps_flag等于1指定当前图片的短期RPS是基于活动SPS中的一个st_ref_pic_set()语法结构导出的,该活动SPS由条带报头中的语法元素short_term_ref_pic_set_idx标识。short_term_ref_pic_set_sps_flag等于0指定当前图片的短期RPS是基于直接包含在当前图片条带报头中的st_ref_pic_set()语法结构导出的。当num_short_term_ref_pic_sets等于0时,short_term_ref_pic_set_sps_flag的值应等于0。

short_term_ref_pic_set_idx将用于导出当前图片的短期RPS的语法结构st_ref_pic_set()的索引指定给活动SPS中包含的语法结构st_ref_pic_set()的列表。语法元素short_term_ref_pic_set_idx由Ceil(log2(num_short_term_ref_pic_set))位表示。当不存在时,short_term_ref_pic_set_idx的值被推断为等于0。short_term_ref_pic_set_idx的值应在0至num_short_term_ref_pic_sets–1的范围内(包含0和num_short_term_ref_pic_sets-1)。

在一些实施例中,变量CurrRpsIdx导出如下:

--如果short_term_ref_pic_set_sps_flag等于1,则将CurrRpsIdx设置为等于short_term_ref_pic_set_idx。

--否则,将CurrRpsIdx设置为等于num_short_term_ref_pic_sets。

num_long_term_sps指定当前图片的长期RPS中的条目的数量,该当前图片是基于活动SPS中指定的候选长期参考图片导出的。num_long_term_sps的值应在0到num_long_term_ref_pics_sps的范围内(包括0和num_long_term_ref_pics_sps)。当不存在时,num_long_term_sps的值被推断为等于0。

num_long_term_pics指定直接在条带报头发出信号的当前图片的长期RPS中条目的数量。当不存在时,num_long_term_pics的值被推断为等于0。

在一些实施例中,当nuh_layer_id等于0时,num_long_term_pics的值应小于或等于sps_max_dec_pic_buffering_minus1[TemporalId]-NumNegativePics[CurrRpsIdx]-NumPositivePics[CurrRpsIdx]-num_long_term_sps–TwoVersionsOfCurrDecPicFlag。

lt_idx_sps[i]将当前图片的长期RPS中第i个条目的索引指定给活动SPS中指定的候选长期参考图片的列表。用于表示lt_idx_sps[i]的位数等于Ceil(Log2(num_long_term_ref_pics_sps))。当不存在时,lt_idx_sps[i]的值被推断为等于0。lt_idx_sps[i]的值应在0到num_long_term_ref_pics_sps-1的范围内(包括0和num_long_term_ref_pics_sps-1)。

poc_lsb_lt[i]指定当前图片的长期RPS中第i个条目的图片顺序计数模块MaxPicOrderCntLsb的值。poc_lsb_lt[i]语法元素的长度为log2_max_pic_order_cnt_lsb_minus4+4位。

used_by_curr_pic_lt_flag[i]等于0指定当前图片的长期RPS中的第i个条目不被当前图片用于参考。

在一些实施例中,变量PocLsbLt[i]和UsedByCurrPicLt[i]导出如下:

--如果i小于num_long_term_sps,则将PocLsbLt[i]设置为等于lt_ref_pic_poc_lsb_sps[lt_idx_sps[i]],并且将UsedByCurrPicLt[i]设置为等于used_by_curr_pic_lt_sps_flag[lt_idx_sps[i]]。

--否则,将PocLsbLt[i]设置为等于poc_lsb_lt[i],并且将UsedByCurrPicLt[i]设置为等于used_by_curr_pic_lt_flag[i]。

delta_poc_msb_present_flag[i]等于1指delta_poc_msb_cycle_lt[i]存在。delta_poc_msb_present_flag[i]等于0指定delta_poc_msb_cycle_lt[i]不存在。

在一些实施例中,让prevTid0Pic作为以解码顺序的前一图片,其具有TemporalId等于0并且不是RASL、RADL或SLNR图片。让setOfPrevPocVals作为包含以下的集合:

--prevTid0Pic的PicOrderCntVal,

--prevTid0Pic的RPS中每个图片的PicOrderCntVal,

--以解码顺序在prevTid0Pic之后且以解码顺序在当前图片之前的每个图片的PicOrderCntVal。

在一些实施例中,当setOfPrevPocVals中有多于一个值时(其中值模块MaxPicOrderCntLsb等于PocLsbLt[i]),delta_poc_msb_present_flag[i]应等于1。

delta_poc_msb_cycle_lt[i]被用于确定当前图片长期RPS中第i个条目的图片顺序计数值的最有效位的值。当delta_poc_msb_cycle_lt[i]不存在时,推断其等于0。

在一些实施例中,变量DeltaPocMsbCycleLt[i]导出如下:

如果(i==0||i==num_long_term_sps)

DeltaPocMsbCycleLt[i]=delta_poc_msb_cycle_lt[i]

否则DeltaPocMsbCycleLt[i]=delta_poc_msb_cycle_lt[i]+DeltaPocMsbCycleLt[i-1]

1.2短期和长期参考图片之间的运动矢量预测(MVP)示例

在一些实施例中,仅当目标参考图片类型和预测参考图片类型相同时,才允许进行运动矢量预测。换句话说,当类型不同时,不允许进行运动矢量预测。

高级运动矢量预测(AMVP)是包含现有实现的运动矢量预测的示例。现有AMVP实施的相关部分如下所述。

运动矢量mvLXA和可用性标志availableFlagLXA按以下顺序步骤导出:

(1)样本位置(xNbA0,yNbA0)被设置为等于(xPb-1,yPb+nPbH),样本位置(xNbA1,yNbA1)被设置为等于(xNbA0,yNbA0-1)。

(7)当availableFlagLXA等于0时,以下适用于(xNbAk,yNbAk),从(xNbA0,yNbA0)到(xNbA1,yNbA1)或直到availableFlagLXA等于1:

--当availableAk等于TRUE且availableFlagLXA等于0时,以下内容适用:

如果PredFlagLX[xNbAk][yNbAk]等于1且LongTermRefPic(currPic,currPb,refIdxLX,RefPicListX)等于LongTermRefPic(currPic,currPb,RefIdxLX[xNbAk][yNbAk],RefPicListX),则将availableFlagLXA设置为1,并做出以下分配:

mvLXA=MvLX[xNbAk][yNbAk]

refIdxA=RefIdxLX[xNbAk][yNbAk]

refPicListA=RefPicListX

否则,当PredFlagLY[xNbAk][yNbAk](其中Y=!X)等于1且LongTermRefPic(currPic,currPb,refIdxLX,RefPicListX)等于LongTermRefPic(currPic,currPb,RefIdxLY[xNbAk][yNbAk],RefPicListY)时,将availableFlagLXA设置为1。

运动矢量mvLXB和可用性标志availableFlagLXB按以下顺序步骤导出:

(1)样本位置(xNbB0,yNbB0),(xNbB1,yNbB1)和(xNbB2,yNbB2)分别设置为(xPb+nPbW,yPb-1),(xPb+nPbW-1,yPb-1)和(xPb-1,yPb-1)。

(5)当IsScaledFlagLx等于0时,availableFlagLXB设置为0,并且以下适用于(xNbBk,yNbBk),从(xNbB0,yNbB0)到(xNbB2,yNbB2)或直到availableFlagLXB等于1:

--用亮度位置(xCb,yCb)、当前亮度编码块大小nCbS、亮度位置(xPb,yPb)、亮度预测块宽度nPbW、亮度预测块高度nPbH、亮度位置(xNbY,yNbY)设置等于(xNbBk,yNbBk)、以及分区索引partIdx作为输入调用第6.4.2条中规定的预测块的可用性推导过程,,并将输出分配给预测块可用性标志availableBk。

--当availableBk等于TRUE且availableFlagLXB等于0时,以下内容适用:

如果PredFlagLX[xNbBk][yNbBk]等于1且LongTermRefPic(currPic,currPb,refIdxLX,RefPicListX)等于LongTermRefPic(currPic,currPb,RefIdxLX[xNbBk][yNbBk],RefPicListX),则将availableFlagLXB设为等于1,并做出以下分配:

mvLXB=MvLX[xNbBk][yNbBk]

refIdxB=RefIdxLX[xNbBk][yNbBk]

refPicListB=RefPicListX

否则,当PredFlagLY[xNbBk][yNbBk](其中Y=!X)等于1且LongTermRefPic(currPic,currPbrefIdxLX,RefPicListX)等于LongTermRefPic(currPic,currPb,RefIdxLY[xNbBk][yNbBk],RefPicListY),则将availableFlagLXB设为等于1,并进行以下分配:

mvLXB=MvLY[xNbBk][yNbBk]。

时间运动矢量预测(TMVP)是包含现有实现的运动矢量预测的另一个示例。现有TMVP实施的相关部分如下所述。

变量mvLXCol和availableFlagLXCol导出如下:

如果LongTermRefPic(currPic,currPb,refIdxLX,LX)不等于LongTermRefPic(ColPic,colPb,refIdxCol,listCol),则将mvLXCol的两个分量都设为等于0且将availableFlagLXCol设为等于0.

否则,将变量availableFlagLXCol设置为1,refPicListCol[refIdxCol]设置为ColPic指定的并置图片中包含预测块colPb的条带的参考图片列表listCol中的参考索引为refIdxCol的图片。

2.帧内块复制(IBC)的示例实施例

帧内块复制(IBC)将运动补偿的概念从帧间编码扩展到帧内编码。如图1所示,当应用IBC时,通过同一图片中的参考块预测当前块。在对当前块进行编码或解码之前,必须已重建参考块中的样本。虽然IBC对于大多数相机捕获的序列不是这样有效,但它显示出了对屏幕内容的显著编码增益。原因是在屏幕内容图片中有许多重复的模式,诸如图标和文本字符。IBC可以有效地消除这些重叠模式之间的冗余。

在HEVC-SCC中,如果选择当前图片作为参考图片,则可以使用内部编码编码单元(CU)。在这种情况下,MV被重命名为块矢量(BV),并且BV始终具有整数像素的精度。为了与主要规格HEVC相兼容,当前图片在解码图片缓冲区(DPB)中被标记为“长期”参考图片。应注意的是,类似地,在多视图/3D视频编码标准中,视图间参考图片也被标记为“长期”参考图片。

2.1启用IBC时图片标记的实施例

PPS中与IBC相关的语义。pps_curr_pic_ref_enabled_flag等于1指定引用PPS的图片可能包含在图片本身条带的参考图片列表中。pps_curr_pic_ref_enabled_flag等于0指定引用PPS的图片从不包含在图片条带的参考图片列表中。当不出现时,pps_curr_pic_ref_enabled_flag的值被推断为等于0。

当sps_curr_pic_ref_enabled_flag等于0时pps_curr_pic_ref_enabled_flag的值应等于0是比特流一致性的要求。

变量TwoVersionsOfCurrDecPicFlag推导如下:

TwoVersionsOfCurrDecPicFlag=pps_curr_pic_ref_enabled_flag&&(sample_adaptive_offset_enabled_flag||!pps_deblocking_filter_disabled_flag||deblocking_filter_override_enabled_flag)

当sps_max_dec_pic_buffering_minus1[TemporalId]等于0时TwoVersionsOfCurrDecPicFlag的值应当等于0.

解码过程。在调用循环过滤进程后,当前解码的图片被存储在DPB中的空图片存储缓冲区中,DPB的充满度增加1,此图片被标记为“用于短期参考”。

当TwoVersionsOfCurrDecPicFlag等于1时,按照第F.8.7[1]条规定的循环内过滤进程调用前的当前解码图片被存储在DPB中的空图片存储缓冲区中,DPB的充满度增加1,此图片标记为“用于长期参考”。

3.联合探索模型(JEM)示例

在一些实施例中,使用名为联合探索模型(JEM)的参考软件来探索未来的视频编码技术。在JEM中,基于子块的预测被用于多种编码工具中,诸如仿射预测、可选时域运动矢量预测(ATMVP)、空时运动矢量预测(STMVP)、双向光流(BIO)、帧速率上转换(FRUC)、局部自适应运动矢量分辨率(LAMVR)、重叠块运动补偿(OBMC)、局部照明补偿(LIC)和译码器侧运动矢量优化(DMVR)。

3.1帧速率上转换(FRUC)的示例

当CU的Merge标志为真时,可以向CU发信号通知FRUC标志。当FRUC标志为假时,可以发信号通知Merge索引并使用常规Merge模式。当FRUC标志为真时,可以发信号通知额外的FRUC模式标志以指示将使用哪种方法(例如,双边匹配或模板匹配)来推导该块的运动信息。

在编码器侧,关于是否对CU使用FRUC Merge模式的决定是基于对正常Merge候选所做的RD成本选择。例如,通过使用RD成本选择来校验CU的多种匹配模式(例如,双边匹配和模板匹配)。导致最小成本的那个匹配模式与其他CU模式进一步比较。如果FRUC匹配模式是最有效的模式,则对于CU将FRUC标志设置为真,并且使用相关的匹配模式。

典型地,FRUC Merge模式中的运动推导过程有两个步骤:首先执行CU级运动搜索,然后进行子CU级运动细化。在CU级,基于双边匹配或模板匹配,推导整个CU的初始运动矢量。首先,生成MV候选列表,并且选择导致最小匹配成本的候选作为进一步CU级细化的起点。然后,在起点附近执行基于的双边匹配或模板匹配的局部搜索。将最小匹配成本的MV结果作为整个CU的MV。随后,以推导的CU运动矢量作为起点,进一步在子CU级细化运动信息。

例如,对于W×H CU运动信息推导执行以下推导过程。在第一阶段,推导出了整个W×H CU的MV。在第二阶段,该CU进一步被划分成M×M子CU。M值的计算方法如(3)所示,D是预定义的划分深度,在JEM中默认设置为3。然后推导每个子CU的MV。

图2示出了在帧速率上转换(FRUC)方法中使用的双边匹配的示例。通过在两个不同参考图片(1010,1011)中沿当前CU(1000)的运动轨迹找到两个块之间的最接近匹配,使用双边匹配来推导当前CU的运动信息。在连续运动轨迹的假设下,指向两个参考块的运动矢量MV0(1001)和MV1(1002)与当前图片和两个参考图片之间的时间距离(例如,TD0(1003)和TD1(1004))成正比。在一些实施例中,当当前图片1000在时间上在两个参考图片(1010,1011)之间并且从当前图片到两个参考图片的时间距离相同时,双边匹配成为基于镜像的双向MV。

图3示出了在帧速率上转换(FRUC)方法中使用模板匹配的示例。模板匹配可以用于通过找到当前图片中的模板(例如,当前CU的顶部和/或左侧相邻块)与参考图片1110的块(例如,与模板的大小相同)之间的最接近匹配来推导当前CU的运动信息。除了上述FRUCMerge模式之外,模板匹配也可以应用于AMVP模式。在JEM和HEVC两者中,AMVP有两个候选。可以通过模板匹配方法推导新的候选。如果通过模板匹配新推导的候选与第一现有AMVP候选不同,则将其***AMVP候选列表的最开始处,然后将列表大小设置为2(例如,通过移除第二现有AMVP候选)。当应用于AMVP模式时,仅应用CU级搜索。

在CU级设置的MV候选包括以下:(1)如果当前CU处于AMVP模式,则为原始AMVP候选,(2)所有Merge候选,(3)插值的MV场中的几个MV(稍后描述),以及顶部和左侧相邻运动矢量。

当使用双边匹配时,可以将Merge候选的每个有效MV用作输入,以生成假设为双边匹配的MV对。例如,在参考列表A中,Merge候选的一个有效MV是(MVa,refa)。然后,在其他参考列表B中找到其配对的双边MV的参考图片refb,使得refa和refb在时间上位于当前图片的不同侧。如果这样的refb在参考列表B中不可用,则refb被确定为与refa不同的参考,并且其到当前图片的时间距离是列表B中的最小值。在确定refb之后,通过基于当前图片refa和refb之间的时间距离缩放MVa来推导MVb。

在一些实现中,来自插值的MV场的四个MV也被添加到CU级候选列表。更具体地,添加当前CU的位置(0,0),(W/2,0),(0,H/2)和(W/2,H/2)处的插值MV。当FRUC应用于AMVP模式时,原始AMVP候选也被添加到CU级MV候选集。在一些实现中,在CU级,对于AMVP CU,最多将15个MV添加到候选列表,对于Merge CU,最多将13个MV添加到候选列表。

在子CU级设置的MV候选包括:(1)从CU级搜索确定的MV,(2)顶部、左侧、左上角和右上角的相邻MV,(3)来自参考图片的并置MV的缩放版本,(4)一个或多个ATMVP候选(最多四个),(5)一个或多个STMVP候选(最多四个)。来自参考图片的缩放MV如下推导。遍历两个列表中的参考图片。参考图片中的子CU的并置位置处的MV被缩放到起始CU级MV的参考。ATMVP和STMVP候选可以是前四个。在子CU级,将一个或多个MV(最多17个)添加到候选列表中。

插值MV场的生成。在对帧进行编码之前,基于单边ME为整个图片生成插值的运动场。然后,运动场可以稍后用作CU级或子CU级MV候选。

在一些实施例中,两个参考列表中的每个参考图片的运动场以4×4块级遍历。图4示出了FRUC方法中的单边运动估计(ME)1200的示例。对于每个4×4块,如果与块相关联的运动通过当前图片中的4×4块并且块未被分配任何插值运动,则参考块的运动根据时间距离TD0和TD1(与HEVC中的TMVP的MV缩放的方式相同的方式)被缩放到当前图片,并且将缩放的运动分配给当前帧中的块。如果没有将缩放的MV分配给4×4块,则在插值的运动场中将块的运动标记为不可用。

插值和匹配成本。当运动矢量指向分数样本位置时,需要运动补偿插值。为了降低复杂度,替代常规8抽头HEVC插值,可以将双线性插值用于双边匹配和模板匹配。

匹配成本的计算在不同步骤有点不同。当从CU级的候选集中选择候选时,匹配成本可以是双边匹配或模板匹配的绝对和差(SAD)。在确定起始MV之后,子CU级搜索的双边匹配的匹配成本计算如下:

这里,w是加权因子。在一些实施例中,w可以根据经验设置为4,MV和MVs分别指示当前MV和起始MV。SAD可以仍用作子CU级搜索的模板匹配的匹配成本。

在FRUC模式中,仅通过使用亮度样本来推导MV。推导的运动将用于MC帧间预测的亮度和色度。在确定MV之后,使用用于亮度的8抽头插值滤波器和用于色度的4抽头插值滤波器来执行最终MC。

MV细化是基于模式的MV搜索,以双边匹配成本或模板匹配成本为标准。在JEM中,支持两种搜索模式—无限制中心偏置菱形搜索(UCBDS)和自适应交叉搜索,分别在CU级和子CU级进行MV细化。对于CU和子CU级MV细化,以四分之一亮度样本MV精度直接搜索MV,并且接着是八分之一亮度样本MV细化。将用于CU和子CU步骤的MV细化的搜索范围设置为等于8个亮度样本。

在双边匹配Merge模式中,应用双向预测,因为CU的运动信息是基于在两个不同的参考图片中沿着当前CU运动轨迹的两个块之间的最近匹配推导的。在模板匹配Merge模式中,编码器可以从列表0中的单向预测、列表1中的单向预测或双向预测为CU做出选择。选择可以基于如下的模板匹配成本:

如果costBi<=factor*min(cost0,cost1)

则使用双向预测;

否则,如果cost0<=cost1

则使用列表0中的单向预测;

否则,

使用列表1中的单向预测;

这里,cost0是列表0模板匹配的SAD,cost1是列表1模板匹配的SAD,costBi是双向预测模板匹配的SAD。例如,当factor的值等于1.25,这意味着选择过程偏向于双向预测。帧间预测方向选择仅应用于CU级模板匹配过程。

3.2解码器侧运动矢量细化(DMVR)的示例

在双向预测操作中,对于一个块区域的预测,将分别使用list0的运动矢量(MV)和list1的MV形成的两个预测块进行组合以形成单个预测信号。在解码器侧运动矢量细化(DMVR)方法中,通过双边模板匹配过程进一步细化双向预测的两个运动矢量。双边模板匹配应用在解码器中,以在双边模板和在参考图片中的重建样本之间执行基于失真的搜索,以便获得细化的MV而无需传输额外运动信息。

在DMVR中,分别从列表0的初始MV0和列表1的MV1,将双边模板生成为两个预测块的加权组合(即平均),如图5所示。模板匹配操作包括计算所生成的模板与参考图片中的样本区域(在初始预测块周围)之间的成本度量。对于两个参考图片中的每个,将产生最小模板成本的MV考虑为该列表的更新MV以替换原始MV。在JEM中,对每个列表搜索九个MV候选。九个MV候选包括原始MV和8个与原始MV在水平或垂直方向上或两个方向上具有一个亮度样本偏移的环绕的MV。最后,将两个新的MV,即如图5中所示的MV0'和MV1',用于生成最终的双向预测结果。将绝对差之和(SAD)用作成本度量。

将DMVR应用于双向预测的Merge模式,其中一个MV来自过去的参考图片,另一MV来自未来的参考图片,而无需传输额外的语法元素。在JEM中,当对CU启用LIC、仿射运动、FRUC或子CU Merge候选时,不应用DMVR。

4.视频编码中IBC的示例方法

图6示出使用帧内块复制进行视频编码的示例性方法的流程图。方法1600包括在步骤1610处,确定是否使用运动补偿算法对当前图片的当前块进行编码。方法1600包括在步骤1620处,基于该确定,通过选择性地将帧内块复制应用于当前块对当前块进行编码。更一般来说,是否将帧内块复制应用到当前块是基于是否使用特定的运动补偿算法对当前块进行编码。

图7示出了使用帧内块复制进行视频编码的另一个示例方法的流程图。方法1700包括在步骤1710处,确定是否使用帧内块复制对当前图片的当前块进行编码。方法1700包括在步骤1720处,基于该确定,通过选择性地将运动补偿算法应用于当前块对当前块进行编码。更一般来说,是否使用运动补偿算法对当前块进行编码是基于是否使用帧内块复制对当前块进行编码。

图8示出了使用帧内块复制进行视频解码的示例性方法的流程图。该方法1800包括在步骤1810处,确定是否使用运动补偿算法对当前图片的当前块进行解码。方法1800包括在步骤1820处,基于该确定,通过选择性地将帧内块复制应用于当前块来对当前块进行解码。更一般来说,是否将帧内块复制应用到当前块是基于是否使用特定的运动补偿算法对当前块进行解码。

图9示出了使用帧内块复制进行视频解码的另一个示例性方法的流程图。方法1900包括在步骤1910处,确定是否使用帧内块复制对当前图片的当前块进行解码。方法1900包括在步骤1920处,基于该确定,通过选择性地将运动补偿算法应用于当前块对当前块进行解码。更一般来说,是否使用运动补偿算法对当前块进行解码是基于是否使用帧内块复制对当前块进行解码。

在图6至图9的上下文中所述的方法1600、1700、1800和1900可以进一步包括确定运动补偿算法是否与帧内块复制兼容的步骤。在下面的示例中说明了对于不同的特定运动补偿算法,帧内块复制和运动补偿算法的兼容性。

示例1.如果存在与参考列表中的当前图片相同的至少一个参考图片,则提出FRUC中的双边匹配无效。在这种情况下,当FRUC标志为1时,不发信号通知FRUC模式标志。总是将FRUC模式推断为模板匹配。

示例2.如果参考图片是当前图片,则提出FRUC中的模板匹配仅搜索整数像素而不搜索子像素。

示例3.提出DMVR不能应用于IBC编码块。在一个示例中,如果当前块的至少一个参考图片是当前图片,则不在当前块中进行DMVR。

5.公开技术的示例实施例

图10是说明可用于实现本公开技术的各个部分的计算机系统或其他控制设备2000的结构示例的框图,包括(但不限于)方法1600、1700、1800和1900。在图10中,计算机系统2000包括通过互连2025连接的一个或多个处理器2005和存储器2010。互连2025可以表示由适当的桥、适配器或控制器连接的任何一条或多条单独的物理总线、点对点连接或两者。因此,互连2025可以包括例如系统总线、***组件互连(PCI)总线、超传输或行业标准体系结构(ISA)总线、小型计算机系统接口(SCSI)总线、通用串行总线(USB)、IIC(I2C)总线或电气与电子工程师协会(IEEE)标准674总线(有时被称为“火线”)。

处理器2005可以包括中央处理单元(CPU),来控制例如主机的整体操作。在一些实施例中,处理器2005通过执行存储在存储器2010中的软件或固件来实现这一点。处理器2005可以是或可以包括一个或多个可编程通用或专用微处理器、数字信号处理器(DSP)、可编程控制器、专用集成电路(ASIC)、可编程逻辑器件(PLD)等,或这些器件的组合。

存储器2010可以是或包括计算机系统的主存储器。存储器2010代表任何适当形式的随机存取存储器(RAM)、只读存储器(ROM)、闪存等,或这些设备的组合。在使用中,存储器2010除其他外可包含一组机器指令,当处理器2005执行该指令时,使处理器2005执行操作以实现本公开技术的实施例。

通过互连2025连接到处理器2005的还有(可选的)网络适配器2015。网络适配器2015为计算机系统2000提供与远程设备(诸如存储客户机和/或其他存储服务器)通信的能力,并且可以是例如以太网适配器或光纤通道适配器。

图11示出了可以用于实施本公开技术的各个部分的移动设备2100的示例实施例的框图,包括(但不限于)方法1600、1700、1800和1900。移动设备2100可以是笔记本电脑、智能手机、平板电脑、相机或其他能够处理视频的设备。移动设备2100包括处理器或控制器2101来处理数据,以及与处理器2101通信的存储器2102来存储和/或缓冲数据。例如,处理器2101可以包括中央处理单元(CPU)或微控制器单元(MCU)。在一些实现中,处理器2101可以包括现场可编程门阵列(FPGA)。在一些实现中,移动设备2100包括或与图形处理单元(GPU)、视频处理单元(VPU)和/或无线通信单元通信,以实现智能手机设备的各种视觉和/或通信数据处理功能。例如,存储器2102可以包括并存储处理器可执行代码,当处理器2101执行该代码时,将移动设备2100配置为执行各种操作,例如,接收信息、命令和/或数据、处理信息和数据,以及将处理过的信息/数据发送或提供给另一个设备,诸如执行器或外部显示器。

为了支持移动设备2100的各种功能,存储器2102可以存储信息和数据,例如指令、软件、值、图片以及处理器2101处理或引用的其他数据。例如,可以使用各种类型的随机存取存储器(RAM)设备、只读存储器(ROM)设备、闪存设备和其他合适的存储介质来实现存储器2102的存储功能。在一些实施例中,移动设备2100包括输入/输出(I/O)单元2103,以将处理器2101和/或存储器2102与其他模块、单元或设备进行接口。例如,I/O单元2103可以与处理器2101和内存2102进行接口,以利用与典型数据通信标准兼容的各种无线接口,例如,在云中的一台或多台计算机和用户设备之间。在一些实现中,移动设备2100可以通过I/O单元2103使用有线连接与其他设备进行接口。移动设备2100还可以与其他外部接口(例如,数据存储器)和/或可视或音频显示设备2104进行接口,以检索和传输可由处理器处理、存储在存储器中或显示在显示设备2104或外部设备的输出单元上的数据和信息。例如,显示设备2104可以显示包括块(CU,PU或TU)的视频帧,该块基于是否使用运动补偿算法并且根据所公开的技术应用帧内块复制。

下面列出的是本申请中所述技术的一些示例。本申请中使用的块可以是像素、体素、子像素和/或子体素的连续或非连续集合。例如,块可以是直线围成的,诸如4x 4正方形、6x 4矩形,或者由曲线围成的,诸如椭圆。

本申请中使用的视觉信息的一部分可以是视觉信息的子集。本申请中使用的编码表示可以是表示已使用本申请中描述的技术之一编码的可视信息的位流。本申请中使用的指示可以是编码表示中的标志或字段,也可以是多个单独的标志或字段。

本申请中使用的解码技术可由解码器应用,并且可以在硬件或软件中实现。解码技术可以以相反的顺序撤消编码器所做的一切。当适当的解码技术应用到编码表示时,结果是可以获得视觉信息。

本申请中所用的多个块中的初始块是出现在编码表示中第一块之前的块。

如在本说明书中所使用的,成本度量可以是绝对差之和(SAD)用作成本度量。样本区域可以包括每个列表中的九个运动矢量(MV)候选。九个MV候选包括原始MV和八个周围的MV,其中一个亮度样本在水平或垂直方向上偏移到原始MV,或者在水平和垂直方向两者上偏移到原始MV。

1.一种对视觉信息进行解码的方法(例如,如图12中描述的方法1200),包括:从编码表示确定(1202)表示所述视觉信息的一部分的正被解码的块是使用第一编码技术进行编码的;以及通过使用对应于所述第一编码技术的第一解码技术,并通过排除对应于第二编码技术的第二解码技术的使用,对所述编码表示进行解码(1204);其中两个技术中的一个对应于使用同一视频图片作为参考图片对所述正被解码的块进行编码的编码技术,并且所述两个编码技术中的另一个对应于使用与所述视觉信息相关联的参考图片来细化用于对所述正被解码的块进行编码的运动信息的帧速率上转换(FRUC)技术。

2.如权利要求1所述的方法,包括通过以下方式使用FRUC解码技术对第二块进行解码:获得包含正被编码的块的多个块、指示使用FRUC Merge模式来对所述正被解码的块进行编码的Merge标志、以及指示是否使用双边匹配或模板匹配来对所述正被解码的块进行编码的FRUC模式标志;以及基于所述FRUC模式标志,使用所述双边匹配或所述模板匹配来对所述正被解码的块进行解码。

3.如权利要求1-2中任一项所述的方法,包括:获得指示使用FRUCMerge模式来对所述正被解码的块进行编码的Merge标志;以及当至少一个参考图片与包含所述正被解码的块的图片相同时,推断使用模板匹配来对所述正被解码的块进行解码。

4.如权利要求1-3中任一项所述的方法,包括:当参考图片是包含所述正被解码的块的图片时,通过仅搜索整数像素而不搜索子像素来对使用所述模板匹配的所述FRUC技术进行解码。

5.一种对视觉信息进行解码的方法(例如,如图13中描述的方法1300),包括:从编码表示确定(1302)表示所述视觉信息的一部分的正被解码的块是使用第一编码技术进行编码的;以及通过使用对应于所述第一编码技术的第一解码技术,并通过排除对应于第二编码技术的第二解码技术的使用,对所述编码表示进行解码(1304);其中两个技术中的一个对应于使用同一视频图片作为参考图片对所述正被解码的块进行编码的编码技术,并且两个编码技术中的另一个对应于解码器侧运动矢量细化(DMVR)技术,所述DMVR技术使用与所述视觉信息相关联的第一参考图片的第一参考块和与视觉信息相关联的第二参考图片的第二参考块来推导用于对所述正被解码的块进行编码的运动信息。

6.如权利要求1或5所述的方法,包括:基于所述确定,决定所述编码表示排除对所述块使用第二编码技术的指示符。

7.如权利要求1或5所述的方法,其中使用同一视频图片作为参考图片对所述正被解码的块进行编码的所述编码技术包括帧内块复制(IBC)。

8.如权利要求1或5所述的方法,其中所述第一编码技术对应于将同一视频图片的第二块用于对所述正被解码的块进行编码的帧内块复制(IBC)。

9.如权利要求1或5所述的方法,包括通过以下方式对使用所述IBC技术进行编码的第一块进行解码:获得表示所述第一图片的第一多个编码块;对所述第一多个编码块中的初始块进行解码;以及在对所述初始块进行解码时,基于所述初始块对所述第一多个编码块中的第一块进行解码。

10.如权利要求5至8中任一项所述的方法,包括通过以下方式对使用所述DMVR技术进行编码的第二图片的第二块进行解码:从编码表示中对所述第一参考块和所述第二参考块进行解码;应用基于所述第一参考块和所述第二参考块的双边模板匹配,以获得与所述第二块相关联的细化的运动矢量。

11.如权利要求1至10中任一项所述的方法,包括:当所述第一参考图片和所述第二参考图片中的至少一个是所述第二图片时,排除使用所述DMVR技术对所述正被解码的块进行解码。

12.一种用于对视觉信息进行编码的方法,包括:通过使用第一编码技术并通过排除第二编码技术的使用来对所述视觉信息的图片的正被编码的块进行编码;以及其中两个技术中的一个对应于使用同一视频图片作为参考图片对所述正被编码的块进行编码的编码技术,并且所述两个编码技术中的另一个对应于使用与所述视觉信息相关联的参考图片来细化用于对所述正被编码的块进行编码的运动信息的帧速率上转换(FRUC)技术。

13.如权利要求12所述的方法,包括通过以下方式使用所述FRUC技术对所述正被编码的块进行编码:将所述图片划分为包含所述正被编码的块的多个块;确定所述正被编码的块的Merge标志是否指示使用包括常规Merge模式或FRUC Merge模式的Merge模式,其中FRUC Merge模式包括双边匹配或模板匹配;基于与每个Merge模式相关联的计算成本,决定是否使用常规Merge模式、所述双边匹配或所述模板匹配;以及在所述决定执行FRUCMerge模式时,对指示FRUC Merge模式用于对所述正被编码的块进行编码的FRUC指示符和指示是否使用所述双边匹配或所述模板匹配的FRUC模式标志进行编码。

14.如权利要求12-13所述的方法,包括:当至少一个参考图片与所述图片相同并且Merge标志指示使用FRUC Merge模式时,排除用信号通知FRUC模式标志,从而期望解码器推断出Merge标志指示使用所述模板匹配。

15.如权利要求12至14中任一项所述的方法,包括:当所述参考图片是所述图片时,通过仅搜索整数像素而不搜索子像素来在FRUC中执行所述模板匹配。

16.一种用于对视觉信息进行编码的方法,包括:通过使用第一编码技术并通过排除第二编码技术的使用来对所述视觉信息的图片的正被编码的块进行编码;以及其中两个技术中的一个对应于使用同一视频图片作为参考图片对所述正被编码的块进行编码的编码技术,并且所述两个编码技术中的另一个对应于解码器侧运动矢量细化(DMVR)技术,所述DMVR技术使用与所述视觉信息相关联的第一参考图片的第一参考块和与视觉信息相关联的第二参考图片的第二参考块来推导用于对所述正被编码的块进行编码的运动信息。

17.如权利要求12或16中任一项所述的方法,其中,使用同一视频图片作为参考图片对所述正被编码的块进行编码的所述编码技术包括所述帧内块复制(IBC)。

18.如权利要求12和16中任一项所述的方法,包括通过以下方式使用所述IBC技术对所述正被编码的块进行编码:将所述第一图片划分为第一多个块;对所述第一多个块中的初始块进行编码;以及在对所述初始块进行编码时,基于所述初始块对在所述第一多个块中的所述正被编码的块进行编码。

19.根据权利要求16至18中任一项所述的方法,包括通过以下方式使用所述DMVR技术对正被编码的第二块进行编码:获得与所述第一参考块相关联的第一运动矢量和与所述第二参考块相关联的第二运动矢量;以及利用所述第一运动矢量和第二运动矢量从编码表示中对所述第一参考块和所述第二参考块进行解码;应用基于所述第一参考块和所述第二参考块的双边模板匹配,以在不在编码器和解码器之间传输附加运动信息的情况下获得与第所述二块相关联的细化的运动矢量。

20.如权利要求16-19中任一项所述的方法,包括:避免使用所述DMVR技术对所述正被编码的块进行编码。

21.根据权利要求16至20中任一项所述的方法,包括:当所述第一参考图片和所述第二参考图片中的至少一个是所述图片时,排除使用所述DMVR技术对所述正被编码的块进行编码。

22.一种视频处理装置,包括处理器,被配置为实现权利要求1至21中任一项所述的方法。

23.一种计算机可读介质,其上存储有代码,所述代码在运行时使处理器实现权利要求1至22中任一项所述的方法。

在一些实施例中,视频解码器装置可以实现视频解码方法,其中,如本文所述的帧内块复制被用于视频解码。该方法可以类似于上述方法1200、1300、1600、1700、1800和1900。

在一些实施例中,视频解码的解码器端方法可以使用帧内块复制,通过使用运动补偿算法确定当前图片的当前块是否要解码来提高视频质量,并且基于该确定,通过选择性地将帧内块复制应用于当前块来对当前块进行解码。

在其他实施例中,视频解码的解码器端方法可以使用帧内块复制,通过确定是否使用帧内块复制对当前图片的当前块进行解码来提高视频质量,并且基于该确定,通过选择性地将运动补偿算法应用于当前块来对当前块进行解码。

在一些实施例中,视频解码方法可以使用在硬件平台上实现的解码装置来实现,如图10和图11所述。

下面是通过将IBC合并到VTM-1.0中所测量到的改进,VTM-1.0是名为通用视频编码(VVC)的视频编码标准的参考软件。VTM代表VVC测试模型。

在上表中,“Y”、“U”、“V”代表YUV颜色编码系统中的颜色,YUV颜色编码系统在考虑人类感知的情况下对颜色图片或视频进行编码。EncT和DecT分别表示使用IBC的编码和解码时间与不使用IBC的编码和解码时间之比。具体来说,

EncT=测试编码时间(TestEncodingTime)/(锚编码时间)anchorEncodingTime

DecT=测试编码时间(TestDecodingTime)/(锚编码时间)anchorDecodingTime

各种类别(诸如A1、A2等)代表一组用于测试各种视频编码技术性能的标准视频序列。“Y”、“U”、“V”列下的负百分比表示将IBC添加到VTM-1.0时的比特率节省。EncT和DecT列下的超过100%的百分比表示使用IBC进行编码/解码比不使用IBC进行编码/解码慢多少。例如,150%意味着使用IBC进行编码/解码比不使用IBC进行编码/解码慢50%。低于100%的百分比表示使用IBC进行编码/解码比不使用IBC进行编码/解码快多少。上表中显示的两个类(F类和SCC类)表明比特率节省超过3%。

从上述来看,应当理解的是,为了便于说明,本发明公开的技术的具体实施例已经在本文中进行了描述,但是可以在不偏离本发明范围的情况下进行各种修改。因此,除了权利要求限定的之外,本发明公开的技术不受限制。

本专利文件中描述的主题的实施和功能操作可以在各种系统、数字电子电路、或计算机软件、固件或硬件中实现,包括本说明书中所公开的结构及其结构等效体,或其中一个或多个的组合。本说明书中描述的主题的实施可以实现为一个或多个计算机程序产品,即一个或多个编码在有形的和非易失的计算机可读介质上的计算机程序指令的模块,以供数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质组成或其中一个或多个的组合。术语“数据处理单元”或“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多处理器或计算机组。除硬件外,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理系统、操作系统或其中一个或多个的组合。

计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译语言或解释语言)编写,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或其他适合在计算环境中使用的单元。计算机程序不一定与文件系统中的文件对应。程序可以存储在保存其他程序或数据的文件的部分中(例如,存储在标记语言文档中的一个或多个脚本)、专用于该程序的单个文件中、或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以部署在一台或多台计算机上来执行,这些计算机位于一个站点上或分布在多个站点上,并通过通信网络互连。

本说明书中描述的处理和逻辑流可以通过一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,通过在输入数据上操作并生成输出来执行功能。处理和逻辑流也可以通过特殊用途的逻辑电路来执行,并且装置也可以实现为特殊用途的逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。

例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型数字计算机的任何一个或多个。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是执行指令的处理器和存储指令和数据的一个或多个存储设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如,磁盘、磁光盘或光盘,或通过操作耦合到一个或多个大容量存储设备来从其接收数据或将数据传输到一个或多个大容量存储设备,或两者兼有。然而,计算机不一定具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备。处理器和存储器可以由专用逻辑电路来补充,或合并到专用逻辑电路中。

本说明书和附图仅意在被视为示例性的,其中示例性是指示例。如本文所用,除非上下文另有明确说明,否则单数形式“a”、“an”和“the”也应包括复数形式。此外,“或”的使用旨在包括“和/或”,除非上下文另有明确说明。

虽然本专利文件包含许多细节,但不应将其解释为对任何发明或权利要求范围的限制,而应解释为对特定发明的特定实施例的特征的描述。本专利文件在单独实施例的上下文描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种功能也可以在多个实施例中单独实施,或在任何合适的子组合中实施。此外,尽管上述特征可以描述为在某些组合中起作用,甚至最初要求是这样,但在某些情况下,可以从组合中删除权利要求组合中的一个或多个特征,并且权利要求的组合可以指向子组合或子组合的变体。

同样,尽管附图中以特定顺序描述了操作,但这不应理解为要获得想要的结果必须按照所示的特定顺序或顺序执行此类操作,或执行所有说明的操作。此外,本专利文件所述实施例中各种系统组件的分离不应理解为在所有实施例中都需要这样的分离。

仅描述了一些实现和示例,其他实现、增强和变体可以基于本专利文件中所描述和说明的做出。

37页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:帧内块复制和双向光流的交互

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类