CN114503563A - 用于执行加权预测的图像编码/解码方法和装置及发送比特流的方法 - Google Patents

用于执行加权预测的图像编码/解码方法和装置及发送比特流的方法 Download PDF

Info

Publication number
CN114503563A
CN114503563A CN202080068734.7A CN202080068734A CN114503563A CN 114503563 A CN114503563 A CN 114503563A CN 202080068734 A CN202080068734 A CN 202080068734A CN 114503563 A CN114503563 A CN 114503563A
Authority
CN
China
Prior art keywords
current block
prediction
block
flag
information
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.)
Pending
Application number
CN202080068734.7A
Other languages
English (en)
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.)
LG Electronics Inc
Original Assignee
LG Electronics 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 LG Electronics Inc filed Critical LG Electronics Inc
Publication of CN114503563A publication Critical patent/CN114503563A/zh
Pending legal-status Critical Current

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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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/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/184Methods 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 bits, e.g. of the compressed video stream
    • 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/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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/124Quantisation
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/198Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including smoothing of a sequence of encoding parameters, e.g. by averaging, by choice of the maximum, minimum or median value
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

提供了一种图像编码/解码方法和装置。根据本公开的图像解码方法是由图像解码装置执行的图像解码方法,并且包括以下步骤:导出指示是否对当前块执行加权预测的第一标志以及对当前块的具有CU级别权重的双预测(BCW)的权重索引(BcwIdx);基于第一标志和BcwIdx确定对当前块执行默认加权预测还是明确加权预测;以及实现所确定的方法以生成当前块的预测块。

Description

用于执行加权预测的图像编码/解码方法和装置及发送比特 流的方法
技术领域
本公开涉及图像编码/解码方法和设备以及发送比特流的方法,更具体地,涉及一种用于考虑光流预测细化(PROF)来执行加权预测的图像编码/解码方法和设备以及发送通过本公开的图像编码方法/设备生成的比特流的方法。
背景技术
最近,各个领域对高分辨率和高质量图像,例如高清(HD)图像和超高清(UHD)图像的需求正在增加。随着图像数据的分辨率和质量的改进,与现有图像数据相比,传输的信息量或比特量相对增加。传输信息量或比特量的增加导致传输成本和存储成本的增加。
因此,需要高效的图像压缩技术来有效地传输、存储和再现关于高分辨率和高质量图像的信息。
发明内容
技术问题
本公开的目的是提供一种具有改进的编码/解码效率的图像编码/解码方法和设备。
本公开的另一个目的是提供一种用于执行加权预测的图像编码/解码方法和设备。
本公开的另一个目的是提供一种用于考虑PROF执行加权预测或具有CU级别权重的双预测(BCW)的图像编码/解码方法和设备。
本公开的另一个目的是提供一种发送由根据本公开的图像编码方法或设备生成的比特流的方法。
本公开的另一个目的是提供一种存储由根据本公开的图像编码方法或设备生成的比特流的记录介质。
本公开的另一个目的是提供一种记录介质,其存储由根据本公开的图像解码设备接收、解码并用于重构图像的比特流。
本公开所解决的技术问题不限于上述技术问题,本领域技术人员通过以下描述将清楚此处未描述的其它技术问题。
技术方案
根据本公开的一方面的图像解码方法可以包括:推导指定是否对当前块执行加权预测的第一标志以及对当前块的具有CU级别权重的双预测(BCW)的权重索引BcwIdx;基于第一标志和BcwIdx来确定对当前块执行默认加权预测还是明确加权预测;以及通过执行所确定的方法来生成当前块的预测块。
在根据本公开的图像解码方法中,第一标志可以基于当前块所属的当前切片的切片类型来不同地确定。
在根据本公开的图像解码方法中,基于当前切片的切片类型是P切片,第一标志可以被推导为在画面参数集(PPS)用信号通知的pps_weighted_pred_flag的值,并且基于当前切片的切片类型是B切片,第一标志可以被推导为在PPS用信号通知的pps_weighted_bipred_flag的值。
在根据本公开的图像解码方法中,可以基于通过比特流用信号通知的语法元素bcw_idx来推导BcwIdx,并且基于比特流中不存在bcw_idx,BcwIdx可被推导为0。
在根据本公开的图像解码方法中,可以基于当前块的参考画面的加权预测标志从比特流解析bcw_idx。
在根据本公开的图像解码方法中,基于当前块的参考画面的所有加权预测标志为0,可以从比特流解析bcw_idx。
在根据本公开的图像解码方法中,基于第一标志为0或BcwIdx不为0,可以对当前块执行默认加权预测。
在根据本公开的图像解码方法中,基于第一标志为1或BcwIdx为0,可以对当前块执行明确加权预测。
在根据本公开的图像解码方法中,默认加权预测可以基于BcwIdx执行BCW或平均和。
在根据本公开的图像解码方法中,基于BcwIdx为0,可以对当前块执行平均和,并且基于BcwIdx不为0,可以对当前块执行BCW。
在根据本公开的图像解码方法中,可以基于当前块的参考画面的加权参数(权重和偏移)来执行明确加权预测。
在根据本公开的图像解码方法中,可以通过比特流明确地用信号通知加权参数。
根据本公开的另一方面的图像解码设备可以包括存储器和至少一个处理器。所述至少一个处理器可以推导指定是否对当前块执行加权预测的第一标志以及对当前块的具有CU级别权重的双预测(BCW)的权重索引BcwIdx;基于第一标志和BcwIdx来确定对当前块执行默认加权预测还是明确加权预测;并且通过执行所确定的方法来生成当前块的预测块。
根据本公开的另一方面的图像编码方法可以包括:确定指定是否对当前块执行加权预测的第一标志以及对当前块的具有CU级别权重的双预测(BCW)的权重索引BcwIdx;基于第一标志和BcwIdx来确定对当前块执行默认加权预测还是明确加权预测;以及通过执行所确定的方法来生成当前块的预测块。
此外,根据本公开的另一方面的计算机可读记录介质可以存储由本公开的图像编码设备或图像编码方法生成的比特流。
以上关于本公开的简要概述的特征仅仅是本公开的以下详细描述的示例性方面,并不限制本公开的范围。
有益效果
根据本公开,能够提供一种具有改进的编码/解码效率的图像编码/解码方法和设备。
此外,根据本公开,能够提供一种用于执行加权预测的图像编码/解码方法和设备。
此外,根据本公开,能够提供一种用于考虑PROF执行加权预测或具有CU级别权重的双预测(BCW)的图像编码/解码方法和设备。
此外,根据本公开,能够提供一种发送由根据本公开的图像编码方法或设备生成的比特流的方法。
此外,根据本公开,能够提供一种存储由根据本公开的图像编码方法或设备生成的比特流的记录介质。
此外,根据本公开,能够提供一种记录介质,其存储由根据本公开的图像解码设备接收、解码并用于重构图像的比特流。
本领域的技术人员将理解,通过本公开可以实现的效果不限于上文已经具体描述的内容,并且将从详细描述中更清楚地理解本公开的其它优点。
附图说明
图1是示意性地例示本公开的实施方式适用于的视频编码系统的视图。
图2是示意性地例示本公开的实施方式适用于的图像编码设备的视图。
图3是示意性地例示本公开的实施方式适用于的图像解码设备的视图。
图4是例示基于帧间预测的视频/图像编码方法的流程图。
图5是例示根据本公开的帧间预测单元180的配置的视图。
图6是例示基于帧间预测的视频/图像解码方法的流程图。
图7是例示根据本公开的帧间预测单元260的配置的视图。
图8是例示可用作空间合并候选的邻近块的视图。
图9是示意性地例示根据本公开的示例的合并候选列表构建方法的视图。
图10是例示用于对空间候选执行的冗余检查的候选对的视图。
图11是例示缩放时间候选的运动向量的方法的视图。
图12是例示推导时间候选的位置的视图。
图13是示意性地例示根据本公开的示例的运动向量预测子候选列表配置方法的视图。
图14是例示仿射模式的参数模型的视图。
图15是例示生成仿射合并候选列表的方法的视图。
图16是例示从邻近块推导的CPMV的视图。
图17是例示用于推导构建仿射合并候选的邻近块的视图。
图18是例示生成仿射MVP候选列表的方法的视图。
图19是例示基于子块的TMVP模式的邻近块的视图。
图20是例示根据基于子块的TMVP模式来推导运动向量场的方法的视图。
图21是例示扩展以执行BDOF的CU的视图。
图22是例示Δv(i,j)、v(i,j)和子块运动向量之间的关系的视图。
图23是例示根据本公开的执行PROF、BCW、WP和/或平均和的示例的流程图。
图24是例示根据本公开的执行PROF、BCW、WP和/或平均和的另一示例的流程图。
图25是例示根据表7的方法执行BCW或WP的示例的流程图。
图26是例示根据表8的方法执行BCW或WP的示例的流程图。
图27是例示根据表9的方法执行BCW或WP的示例的流程图。
图28是例示根据表10的方法执行BCW或WP的示例的流程图。
图29是示出本公开的实施方式适用于的内容流系统的视图。
具体实施方式
以下,将结合附图对本公开的实施方式进行详细描述,以易于本领域技术人员实施。然而,本公开可以以各种不同的形式实施,并且不限于这里描述的实施方式。
在描述本公开时,如果确定相关已知功能或构造的详细描述使本公开的范围不必要地含糊不清,则将省略其详细描述。在附图中,省略了与本公开的描述无关的部分,并且相似的附图标记被赋予相似的部分。
在本公开中,当一个组件“连接”、“耦合”或“链接”到另一个组件时,它不仅可以包括直接连接关系,还可以包括中间组件存在的间接连接关系。另外,当一个组件“包括”或“具有”其它组件时,除非另有说明,否则是指还可以包括其它组件,而不是排除其它组件。
在本公开中,术语第一、第二等仅用于将一个组件与其它组件区分开的目的,并且不限制组件的顺序或重要性,除非另有说明。相应地,在本公开的范围内,一个实施方式中的第一组件在另一个实施方式中可以被称为第二组件,类似地,一个实施方式中的第二组件在另一个实施方式中可以被称为第一组件。
在本公开中,相互区分的组件旨在清楚地描述每个特征,并不意味着组件必须分开。即,多个组件可以集成在一个硬件或软件单元中实现,或者一个组件可以在多个硬件或软件单元中分布和实现。因此,即使没有特别说明,这些组件集成或分布式的实施方式也包括在本公开的范围内。
在本公开中,各个实施方式中所描述的组件并不一定是必不可少的组件,一些组件可以是可选的组件。因此,由实施方式中描述的组件的子集组成的实施方式也包括在本公开的范围内。此外,除了在各种实施方式中描述的组件之外还包括其它组件的实施方式包括在本公开的范围内。
本公开涉及图像的编码和解码,除非在本公开中重新定义,否则本公开中使用的术语可以具有本公开所属技术领域中常用的一般含义。
在本公开中,“画面”一般是指表示特定时间段内的一个图像的单元,而切片(slice)/拼块(tile)是构成画面的一部分的编码单元,一个画面可以由一个或更多个切片/拼块组成。此外,切片/拼块可以包括一个或更多个编码树单元(CTU)。
在本公开中,“像素”或“像元(pel)”可以意指构成一个画面(或图像)的最小单元。此外,“样本”可以用作对应于像素的术语。一个样本一般可以表示像素或像素的值,也可以仅表示亮度分量的像素/像素值或仅表示色度分量的像素/像素值。
在本公开中,“单元”可以表示图像处理的基本单元。该单元可以包括画面的特定区域和与该区域相关的信息中的至少一个。在某些情况下,该单元可以与诸如“样本阵列”、“块”或“区域”的术语互换使用。在一般情况下,M×N块可以包括M列N行的样本(或样本阵列)或变换系数的集合(或阵列)。
在本公开中,“当前块”可以意指“当前编码块”、“当前编码单元”、“编码目标块”、“解码目标块”或“处理目标块”中的一个。当执行预测时,“当前块”可以意指“当前预测块”或“预测目标块”。当执行变换(逆变换)/量化(解量化)时,“当前块”可以意指“当前变换块”或“变换目标块”。当执行滤波时,“当前块”可以意指“滤波目标块”。
在本公开中,术语“/”或“,”可以解释为指示“和/或”。例如,“A/B”和“A,B”可以意指“A和/或B”。此外,“A/B/C”和“A/B/C”可以意指“A、B和/或C中的至少一个”。
在本公开中,术语“或”应被解释以指示“和/或”。例如,表达“A或B”可以包括1)仅“A”,2)仅“B”,或3)“A和B”两者。换言之,在本公开中,“或”应被解释以指示“附加地或可替选地”。
视频编码系统的概述
图1是示意性地示出根据本公开的视频编码系统的视图。
根据实施方式的视频编码系统可以包括编码设备10和解码设备20。编码设备10可以将编码的视频和/或图像信息或数据以文件或流的形式经由数字存储介质或网络递送到解码设备20。
根据实施方式的编码设备10可以包括视频源生成器11、编码单元12和发送器13。根据实施方式的解码设备20可以包括接收器21、解码单元22和渲染器23。编码单元12可以称为视频/图像编码单元,解码单元22可以称为视频/图像解码单元。发送器13可以被包括在编码单元12中。接收器21可以被包括在解码单元22中。渲染器23可以包括显示器并且显示器可以被配置为单独的装置或外部组件。
视频源生成器11可以通过捕获、合成或生成视频/图像的过程来获取视频/图像。视频源生成器11可以包括视频/图像捕获装置和/或视频/图像生成装置。视频/图像捕获装置可以包括例如一个或更多个相机、包括先前捕获的视频/图像的视频/图像档案等。视频/图像生成装置可以包括例如计算机、平板计算机和智能电话,并且可以(以电子方式)生成视频/图像。例如,可以通过计算机等生成虚拟视频/图像。在这种情况下,视频/图像捕获过程可以被生成相关数据的过程代替。
编码单元12可以对输入视频/图像进行编码。为了压缩和编码效率,编码单元12可以执行一系列过程,例如预测、变换和量化。编码单元12可以以比特流的形式输出编码数据(编码视频/图像信息)。
发送器13可以通过数字存储介质或网络以文件或流的形式将以比特流的形式输出的编码视频/图像信息或数据传输到解码设备20的接收器21。数字存储介质可以包括各种存储介质,例如USB、SD、CD、DVD、蓝光、HDD、SSD等。发送器13可以包括用于通过预定文件格式生成媒体文件的元件并且可以包括用于通过广播/通信网络传输的元件。接收器21可以从存储介质或网络中提取/接收比特流并将比特流传输到解码单元22。
解码单元22可以通过执行与编码单元12的操作相对应的一系列过程,例如解量化、逆变换和预测来解码视频/图像。
渲染器23可以渲染解码的视频/图像。渲染的视频/图像可以通过显示器显示。
图像编码设备的概述
图2是示意性地示出本公开的实施方式可适用于的图像编码设备的视图。
如图2所示,图像编码设备100可以包括图像分割器110、减法器115、变换器120、量化器130、解量化器140、逆变换器150、加法器155、滤波器160、存储器170、帧间预测单元180、帧内预测单元185和熵编码器190。帧间预测单元180和帧内预测单元185可以统称为“预测单元”。变换器120、量化器130、解量化器140和逆变换器150可以被包括在残差处理器中。残差处理器还可以包括减法器115。
在一些实施方式中,配置图像编码设备100的多个组件中的全部或至少一些可以由一个硬件组件(例如,编码器或处理器)来配置。此外,存储器170可以包括解码画面缓冲器(DPB)并且可以由数字存储介质配置。
图像分割器110可将输入到图像编码设备100的输入图像(或画面或帧)分割成一个或更多个处理单元。例如,处理单元可以称为编码单元(CU)。可以通过根据四叉树二叉树三叉树(QT/BT/TT)结构递归地分割编码树单元(CTU)或最大编码单元(LCU)来获取编码单元。例如,可以基于四叉树结构、二叉树结构和/或三叉树结构将一个编码单元分割为更深深度的多个编码单元。对于编码单元的分割,可以首先应用四叉树结构,然后可以应用二叉树结构和/或三叉树结构。可以基于不再分割的最终编码单元来执行根据本公开的编码过程。可以将最大编码单元用作最终编码单元,也可以将通过分割最大编码单元获取的更深深度的编码单元用作最终编码单元。这里,编码过程可以包括稍后将描述的预测、变换和重构的过程。作为另一个示例,编码过程的处理单元可以是预测单元(PU)或变换单元(TU)。预测单元和变换单元可以从最终编码单元划分或分割。预测单元可以是样本预测单元,变换单元可以是用于推导变换系数的单元和/或用于从变换系数推导残差信号的单元。
预测单元(帧间预测单元180或帧内预测单元185)可以对要处理的块(当前块)执行预测,并且生成包括当前块的预测样本的预测块。预测单元可以在当前块或CU的基础上确定是应用帧内预测还是帧间预测。预测单元可以生成与当前块的预测有关的各种信息,并且将生成的信息传输到熵编码器190。关于预测的信息可以在熵编码器190中被编码并且以比特流的形式输出。
帧内预测单元185可以通过参考当前画面中的样本来预测当前块。根据帧内预测模式和/或帧内预测技术,参考样本可以位于当前块的邻居中或者可以被分开放置。帧内预测模式可以包括多个非定向模式和多个定向模式。非定向模式可以包括例如DC模式和平面模式。根据预测方向的详细程度,定向模式可以包括例如33个定向预测模式或65个定向预测模式。然而,这仅仅是示例,可以根据设置使用更多或更少的定向预测模式。帧内预测单元185可以通过使用应用于邻近块的预测模式来确定应用于当前块的预测模式。
帧间预测单元180可以基于由参考画面上的运动向量指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式中传输的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单元来预测运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测方向(L0预测、L1预测、双预测等)信息。在帧间预测的情况下,邻近块可以包括当前画面中存在的空间邻近块和参考画面中存在的时间邻近块。包括参考块的参考画面和包括时间邻近块的参考画面可以相同或不同。时间邻近块可以被称为并置参考块、并置CU(colCU)等。包括时间邻近块的参考画面可以被称为并置画面(colPic)。例如,帧间预测单元180可基于邻近块配置运动信息候选列表并生成指示使用哪个候选来推导当前块的运动向量和/或参考画面索引的信息。可以基于各种预测模式来执行帧间预测。例如,在跳过模式和合并模式的情况下,帧间预测单元180可以使用邻近块的运动信息作为当前块的运动信息。在跳过模式的情况下,与合并模式不同,可以不传输残差信号。在运动向量预测(MVP)模式的情况下,邻近块的运动向量可以用作运动向量预测子,并且当前块的运动向量可以通过编码运动向量差和运动向量预测子的指示符来用信号通知当前块的运动向量。运动向量差可以意指当前块的运动向量与运动向量预测子之间的差。
预测单元可以基于以下描述的各种预测方法和预测技术来生成预测信号。例如,预测单元不仅可以应用帧内预测或帧间预测,还可以同时应用帧内预测和帧间预测,以预测当前块。同时应用帧内预测和帧间预测两者来预测当前块的预测方法可以称为组合帧间和帧内预测(CIIP)。此外,预测单元可以执行帧内块复制(IBC)以预测当前块。帧内块复制可以用于游戏等的内容图像/视频编码,例如,屏幕内容编码(SCC)。IBC是一种在与当前块相隔预定距离的位置处使用当前画面中先前重构的参考块来预测当前画面的方法。当应用IBC时,参考块在当前画面中的位置可以被编码为对应于预定距离的向量(块向量)。
预测单元生成的预测信号可用于生成重构信号或生成残差信号。减法器115可以通过从输入图像信号(原始块或原始样本阵列)中减去从预测单元输出的预测信号(预测块或预测样本阵列)来生成残差信号(残差块或残差样本阵列)。生成的残差信号可以被传输到变换器120。
变换器120可以通过将变换技术应用于残差信号来生成变换系数。例如,变换技术可以包括离散余弦变换(DCT)、离散正弦变换(DST)、karhunen-loève变换(KLT)、基于图的变换(GBT)或条件非线性变换(CNT)中的至少一种。这里,GBT是指当像素之间的关系信息由图形表示时从图形获得的变换。CNT是指基于使用所有先前重构的像素生成的预测信号获取的变换。此外,变换处理可以应用于具有相同大小的正方形像素块或者可以应用于具有可变大小而不是正方形的块。
量化器130可以对变换系数进行量化并且将它们传输到熵编码器190。熵编码器190可以对量化的信号(关于量化的变换系数的信息)进行编码并且输出比特流。关于量化变换系数的信息可以被称为残差信息。量化器130可基于系数扫描顺序将块形式的量化变换系数重新排列为一维向量形式,并基于一维向量形式的量化变换系数生成关于量化变换系数的信息。
熵编码器190可以执行各种编码方法,例如指数哥伦布、上下文自适应可变长度编码(CAVLC)、上下文自适应二进制算术编码(CABAC)等。熵编码器190可以一起或单独地编码量化变换系数以外的视频/图像重构所需的信息(例如,语法元素的值等)。编码的信息(例如,编码的视频/图像信息)可以比特流的形式以网络抽象层(NAL)为单元进行传输或存储。视频/图像信息还可以包括关于各种参数集的信息,例如自适应参数集(APS)、画面参数集(PPS)、序列参数集(SPS)或视频参数集(VPS)。此外,视频/图像信息还可以包括通用约束信息。本公开中描述的用信号通知的信息、传输的信息和/或语法元素可以通过上述编码过程被编码并且被包括在比特流中。
比特流可以通过网络传输或者可以存储在数字存储介质中。网络可以包括广播网络和/或通信网络,数字存储介质可以包括USB、SD、CD、DVD、蓝光、HDD、SSD等各种存储介质。可以包括传输从熵编码器190输出的信号的发送器(未示出)和/或存储该信号的存储单元(未示出)作为图像编码设备100的内部/外部元件。另选地,可以提供发送器作为熵编码器190的组件。
从量化器130输出的量化变换系数可用于生成残差信号。例如,可以通过解量化器140和逆变换器150对量化变换系数应用解量化和逆变换来重构残差信号(残差块或残差样本)。
加法器155将重构残差信号与从帧间预测单元180或帧内预测单元185输出的预测信号相加,以生成重构信号(重构画面、重构块、重构样本阵列)。如果要处理的块没有残差,例如应用跳过模式的情况,则可以将预测块用作重构块。加法器155可以称为重构器或重构块生成器。生成的重构信号可以用于当前画面中要处理的下一个块的帧内预测,并且可以用于通过如下所述的滤波对下一个画面进行帧间预测。
此外,如下所述,亮度映射与色度缩放(LMCS)适用于画面编码处理。
滤波器160可以通过对重构信号应用滤波来提高主观/客观图像质量。例如,滤波器160可以通过对重构画面应用各种滤波方法来生成修改的重构画面,并将修改的重构画面存储在存储器170中,具体地,存储器170的DPB中。各种滤波方法可以包括例如去块滤波、样本自适应偏移、自适应环路滤波、双边滤波等。滤波器160可以生成与滤波有关的各种信息并将所生成的信息传输到熵编码器190,如稍后在每种滤波方法的描述中所描述的。与滤波相关的信息可以由熵编码器190编码并以比特流的形式输出。
传输到存储器170的修改的重构画面可以用作帧间预测单元180中的参考画面。当通过图像编码设备100应用帧间预测时,可以避免图像编码设备100和图像解码设备之间的预测失配并且可以提高编码效率。
存储器170的DPB可以存储修改的重构画面以用作帧间预测单元180中的参考画面。存储器170可以存储从其中推导(或编码)当前画面中的运动信息的块的运动信息和/或画面中已经重构的块的运动信息。存储的运动信息可以被传输到帧间预测单元180并用作空间邻近块的运动信息或时间邻近块的运动信息。存储器170可以存储当前画面中重构块的重构样本并且可以将重构样本传送到帧内预测单元185。
图像解码设备的概述
图3是示意性地示出本公开的实施方式可适用的图像解码设备的视图。
如图3所示,图像解码设备200可以包括熵解码器210、解量化器220、逆变换器230、加法器235、滤波器240、存储器250、帧间预测单元260和帧内预测单元265。帧间预测单元260和帧内预测单元265可以统称为“预测单元”。解量化器220和逆变换器230可以被包括在残差处理器中。
根据实施方式,配置图像解码设备200的多个组件中的全部或至少一些可以由硬件组件(例如,解码器或处理器)来配置。此外,存储器250可以包括解码画面缓冲器(DPB)或者可以由数字存储介质配置。
已经接收到包括视频/图像信息的比特流的图像解码设备200可以通过执行与由图2的图像编码设备100执行的处理相对应的处理来重构图像。例如,图像解码设备200可以使用在图像编码设备中应用的处理单元来执行解码。因此,解码的处理单元例如可以是编码单元。编码单元可以通过分割编码树单元或最大编码单元来获取。通过图像解码设备200解码和输出的重构图像信号可以通过再现设备(未示出)再现。
图像解码设备200可以接收以比特流的形式从图2的图像编码设备输出的信号。接收到的信号可以通过熵解码器210进行解码。例如,熵解码器210可以解析比特流以推导图像重构(或画面重构)所需的信息(例如,视频/图像信息)。视频/图像信息还可以包括关于各种参数集的信息,例如自适应参数集(APS)、画面参数集(PPS)、序列参数集(SPS)或视频参数集(VPS)。此外,视频/图像信息还可以包括通用约束信息。图像解码设备还可以基于关于参数集的信息和/或通用约束信息对画面进行解码。本公开中描述的用信号通知/接收的信息和/或语法元素可以通过解码过程被解码并从比特流中获得。例如,熵解码器210基于诸如指数哥伦布编码、CAVLC或CABAC的编码方法对比特流中的信息进行解码,并输出图像重构所需的语法元素的值和残差的变换系数的量化值。更具体地,CABAC熵解码方法可以接收与比特流中每个语法元素对应的bin,使用解码目标语法元素信息、邻近块和解码目标块的解码信息或前一阶段解码的符号/bin的信息来确定上下文模型,根据确定的上下文模型通过预测bin的出现概率来对bin执行算术解码,并且生成与每个语法元素的值对应的符号。在这种情况下,CABAC熵解码方法可以在确定上下文模型后,通过将解码的符号/bin的信息用于下一个符号/bin的上下文模型来更新上下文模型。由熵解码器210解码的信息中与预测相关的信息可以被提供给预测单元(帧间预测单元260和帧内预测单元265),并且在熵解码器210中对其执行熵解码的残差值,即,量化变换系数和相关的参数信息可以被输入到解量化器220。另外,可以将熵解码器210解码的信息当中关于滤波的信息提供给滤波器240。此外,用于接收从图像编码设备输出的信号的接收器(未示出)可以进一步被配置为图像解码设备200的内部/外部元件,或者接收器可以是熵解码器210的组件。
此外,根据本公开的图像解码设备可以被称为视频/图像/画面解码设备。图像解码设备可以分为信息解码器(视频/图像/画面信息解码器)和样本解码器(视频/图像/画面样本解码器)。信息解码器可以包括熵解码器210。样本解码器可以包括解量化器220、逆变换器230、加法器235、滤波器240、存储器250、帧间预测单元160或帧内预测单元265中的至少一个。
解量化器220可以对量化变换系数进行解量化并输出变换系数。解量化器220可以以二维块的形式重新排列量化变换系数。在这种情况下,可以基于在图像编码设备中执行的系数扫描顺序来执行重新排列。解量化器220可以通过使用量化参数(例如,量化步长信息)对量化变换系数执行解量化并获得变换系数。
逆变换器230可以对变换系数进行逆变换以获得残差信号(残差块、残差样本阵列)。
预测单元可以对当前块执行预测并生成包括当前块的预测样本的预测块。预测单元可以基于从熵解码器210输出的关于预测的信息来确定是将帧内预测还是帧间预测应用于当前块,并且可以确定特定帧内/帧间预测模式(预测技术)。
与在图像编码设备100的预测单元中描述的相同的是,预测单元可以基于稍后描述的各种预测方法(技术)来生成预测信号。
帧内预测单元265可以通过参考当前画面中的样本来预测当前块。帧内预测单元185的描述同样适用于帧内预测单元265。
帧间预测单元260可以基于参考画面上由运动向量指定的参考块(参考样本阵列)来推导当前块的预测块。在这种情况下,为了减少在帧间预测模式中传输的运动信息量,可以基于邻近块和当前块之间的运动信息的相关性以块、子块或样本为单元来预测运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测方向(L0预测、L1预测、双预测等)信息。在帧间预测的情况下,邻近块可以包括当前画面中存在的空间邻近块和参考画面中存在的时间邻近块。例如,帧间预测单元260可以基于邻近块配置运动信息候选列表,并且基于接收到的候选选择信息推导当前块的运动向量和/或参考画面索引。可以基于各种预测模式来执行帧间预测,并且关于预测的信息可以包括指示当前块的帧间预测模式的信息。
加法器235可以通过将获得的残差信号与从预测单元(包括帧间预测单元260和/或内预测单元265)输出的预测信号(预测块、预测样本阵列)相加生成重构信号(重构画面、重构块、重构样本阵列)。加法器155的描述同样适用于加法器235。
此外,如下所述,亮度映射与色度缩放(LMCS)适用于画面解码处理。
滤波器240可以通过对重构信号应用滤波来提高主观/客观图像质量。例如,滤波器240可以通过对重构画面应用各种滤波方法来生成修改的重构画面,并将修改的重构画面存储在存储器250中,具体地,存储器250的DPB中。各种滤波方法可以包括例如去块滤波、样本自适应偏移、自适应环路滤波、双边滤波等。
存储在存储器250的DPB中的(修改的)重构画面可以用作帧间预测单元260中的参考画面。存储器250可以存储从其中推导(或解码)当前画面中的运动信息的块的运动信息和/或画面中已经重构的块的运动信息。存储的运动信息可以被传输到帧间预测单元260,以用作空间邻近块的运动信息或时间邻近块的运动信息。存储器250可以存储当前画面中重构块的重构样本并将重构样本传送到帧内预测单元265。
在本公开中,在图像编码设备100的滤波器160、帧间预测单元180和帧内预测单元185中描述的实施方式可以同等地或对应地应用于图像解码设备200的滤波器240、帧间预测单元260和帧内预测单元265。
帧间预测的概述
图像编码设备/图像解码设备可以以块为单元执行帧间预测以推导预测样本。帧间预测可以意指以依赖于当前画面以外的画面的数据元素的方式推导的预测。当帧间预测应用于当前块时,可以基于参考画面上由运动向量指定的参考块来推导当前块的预测块。
在这种情况下,为了减少在帧间预测模式下发送的运动信息量,可以基于邻近块与当前块之间的运动信息的相关性来推导当前块的运动信息,并且可以以块、子块或样本为单元推导运动信息。运动信息可以包括运动向量和参考画面索引。运动信息还可以包括帧间预测类型信息。这里,帧间预测类型信息可以意指帧间预测的方向信息。帧间预测类型信息可以指示使用L0预测、L1预测或双预测之一来预测当前块。
当对当前块应用帧间预测时,当前块的邻近块可以包括存在于当前画面中的空间邻近块和存在于参考画面中的时间邻近块。包括当前块的参考块的参考画面和包括时间邻近块的参考画面可以是相同或不同的。时间邻近块可以被称为并置参考块或并置CU(colCU),并且包括时间邻近块的参考画面可以被称为并置画面(colPic)。
此外,可以基于当前块的邻近块来构建运动信息候选列表,并且在这种情况下,可以用信号通知指示使用哪个候选的标志或索引信息以便推导当前块的运动向量和/或参考画面索引。
根据帧间预测类型,运动信息可以包括L0运动信息和/或L1运动信息。L0方向上的运动向量可以被定义为L0运动向量或MVL0,L1方向上的运动向量可以被定义为L1运动向量或MVL1。基于L0运动向量的预测可以被定义为L0预测,基于L1运动向量的预测可以被定义为L1预测,基于L0运动向量和L1运动向量二者的预测可以被定义为双预测。这里,L0运动向量可以意指与参考画面列表L0关联的运动向量,L1运动向量可以意指与参考画面列表L1关联的运动向量。
参考画面列表L0可以包括按输出顺序在当前画面之前的画面作为参考画面,参考画面列表L1可以包括按输出顺序在当前画面之后的画面。先前画面可以被定义为前向(参考)画面,后续画面可以被定义为后向(参考)画面。此外,参考画面列表L0还可以包括按输出顺序在当前画面之后的画面作为参考画面。在这种情况下,在参考画面列表L0内,可以首先对先前画面进行索引,然后可以对后续画面进行索引。参考画面列表L1还可以包括按输出顺序在当前画面之前的画面作为参考画面。在这种情况下,在参考画面列表L1内,可以首先对后续画面进行索引,然后可以对先前画面进行索引。这里,输出顺序可以对应于画面顺序计数(POC)顺序。
图4是例示了基于帧间预测的视频/图像编码方法的流程图。
图5是例示了根据本公开的帧间预测器180的配置的视图。
图6的编码方法可以由图2的图像编码设备执行。具体地,步骤S410可以由帧间预测器180执行,并且步骤S420可以由残差处理器执行。具体地,步骤S420可以由减法器115执行。步骤S430可以由熵编码器190执行。步骤S630的预测信息可以由帧间预测器180推导,并且步骤S630的残差信息可以由残差处理器推导。残差信息是关于残差样本的信息。残差信息可以包括关于用于残差样本的量化变换系数的信息。如上所述,残差样本可以通过图像编码设备的变换器120被推导为变换系数,并且变换系数可以通过量化器130被推导为量化变换系数。关于量化变换系数的信息可以由熵编码器190通过残差编码过程来编码。
图像编码设备可以针对当前块执行帧间预测(S410)。图像编码设备可以推导当前块的帧间预测模式和运动信息并且生成当前块的预测样本。这里,可以同时地执行帧间预测模式确定、运动信息推导和预测样本生成过程或者可以在其它过程之前执行其任何一个。例如,如图5所示,图像编码设备的帧间预测单元180可以包括预测模式确定单元181、运动信息推导单元182和预测样本推导单元183。预测模式确定单元181可以确定当前块的预测模式,运动信息推导单元182可以推导当前块的运动信息,并且预测样本推导单元183可以推导当前块的预测样本。例如,图像编码设备的帧间预测单元180可以通过运动估计在参考画面的预定区域(搜索区域)内搜索与当前块相似的块,并且推导其与当前块的差等于或小于预定准则或最小值的参考块。基于此,可以推导指示参考块位于其中的参考画面的参考画面索引,并且可以基于参考块与当前块之间的位置差来推导运动向量。图像编码设备可以在各种帧间预测模式当中确定应用于当前块的模式。图像编码设备可以针对各种预测模式比较速率失真(RD)成本,并且确定当前块的最佳帧间预测模式。然而,由图像编码设备确定当前块的帧间预测模式的方法不限于上述示例,并且可以使用各种方法。
例如,当前块的帧间预测模式可以被确定为合并模式、合并跳过模式、运动向量预测(MVP)模式、对称运动向量差(SMVD)模式、仿射模式、基于子块的合并模式、自适应运动向量分辨率(AMVR)模式、基于历史的运动向量预测子(HMVP)模式、成对平均合并模式、以运动向量差的合并模式(MMVD)模式、解码器侧运动向量细化(DMVR)模式、组合帧间和帧内预测(CIIP)模式或几何分割模式(GPM)中的至少一种。
例如,当跳过模式或合并模式应用于当前块时,图像编码设备可以从当前块的邻近块推导合并候选,并且使用所推导的合并候选来构建合并候选列表。另外,图像编码设备可以在通过合并候选列表中包括的合并候选指示的参考块当中推导其与当前块的差等于或小于预定准则或最小值的参考块。在这种情况下,可以选择与所推导的参考块关联的合并候选,并且可以生成指示所选择的合并候选的合并索引信息并且将其用信号通知给图像解码设备。可以使用所选择的合并候选的运动信息来推导当前块的运动信息。
作为另一示例,当MVP模式应用于当前块时,图像编码设备可以从当前块的邻近块推导运动向量预测子(MVP)候选,并且使用所推导的MVP候选来构建MVP候选列表。另外,图像编码设备可以使用从MVP候选列表中包括的MVP候选当中选择的MVP候选的运动向量作为当前块的MVP。在这种情况下,例如,指示通过上述运动估计推导的参考块的运动向量可以被用作当前块的运动向量,在MVP候选当中具有与当前块的运动向量的差最小的运动向量的MVP候选可以是所选择的MVP候选。可以推导作为通过从当前块的运动向量减去MVP所获得的差的运动向量差(MVD)。在这种情况下,可以将指示所选择的MVP候选的索引信息和关于MVD的信息用信号通知给图像解码设备。另外,当应用MVP模式时,可以将参考画面索引的值构建为参考画面索引信息并且单独地用信号通知给图像解码设备。
图像编码设备可以基于预测样本来推导残差样本(S420)。图像编码设备可以通过当前块的原始样本与预测样本之间的比较来推导残差样本。例如,可以通过从原始样本减去对应的预测样本来推导残差样本。
图像编码设备可以对包括预测信息和残差信息的图像信息进行编码(S430)。图像编码设备可以以比特流的形式输出编码的图像信息。预测信息可以包括预测模式信息(例如,跳过标志、合并标志或模式索引等)和关于运动信息的信息作为与预测过程有关的信息。在预测模式信息当中,跳过标志指示跳过模式是否应用于当前块,而合并标志指示合并模式是否应用于当前块。另选地,预测模式信息可以指示多种预测模式中的一种,例如模式索引。当跳过标志和合并标志为0时,可以确定MVP模式应用于当前块。关于运动信息的信息可以包括作为用于推导运动向量的信息的候选选择信息(例如,合并索引、mvp标志或mvp索引)。在候选选择信息当中,合并索引可以在合并模式应用于当前块时用信号通知,并且可以是用于选择合并候选列表中包括的合并候选中的一个的信息。在候选选择信息当中,MVP标志或MVP索引可以在MVP模式应用于当前块时用信号通知,并且可以是用于选择MVP候选列表中的MVP候选中的一个的信息。具体地,MVP标志可以使用语法元素mvp_10_flag或mvp_11_flag来用信号通知。另外,关于运动信息的信息可以包括关于上述MVD的信息和/或参考画面索引信息。另外,关于运动信息的信息可以包括指示是应用L0预测、L1预测还是双预测的信息。残差信息是关于残差样本的信息。残差信息可以包括关于用于残差样本的量化变换系数的信息。
输出比特流可以被存储在(数字)存储介质中并且被发送到图像解码设备或者可以经由网络被发送到图像解码设备。
如上所述,图像编码设备可以基于参考样本和残差样本来生成重构画面(包括重构样本和重构块的画面)。这是为了图像编码设备推导与由图像解码设备执行的预测结果相同的预测结果,从而提高编码效率。因此,图像编码设备可以将重构画面(或重构样本和重构块)存储在存储器中并且将其用作用于帧间预测的参考画面。如上所述,环路内滤波过程还适用于重构画面。
图6是例示了基于帧间预测的视频/图像解码方法的流程图。
图7是例示了根据本公开的帧间预测单元260的配置的视图。
图像解码设备可以执行与由图像编码设备执行的操作对应的操作。图像解码设备可以基于接收到的预测信息来针对当前块执行预测并且推导预测样本。
图6的解码方法可以由图3的图像解码设备执行。步骤S610至S630可以由帧间预测单元260执行,并且步骤S610的预测信息和步骤S640的残差信息可以由熵解码器210从比特流获得。图像解码设备的残差处理器可以基于残差信息来推导当前块的残差样本(S640)。具体地,残差处理器的解量化器220可以基于根据残差信息而推导的量化变换系数来执行解量化以推导变换系数,并且残差处理器的逆变换器230可以针对变换系数执行逆变换以推导当前块的残差样本。步骤S650可以由加法器235或重构器执行。
具体地,图像解码设备可以基于所接收到的预测信息来确定当前块的预测模式(S610)。图像解码设备可以基于预测信息中的预测模式信息来确定哪种帧间预测模式应用于当前块。
例如,可以基于跳过标志来确定跳过模式是否应用于当前块。另外,可以基于合并标志来确定是合并模式还是MVP模式应用于当前块。另选地,可以基于模式索引来选择各种帧间预测模式候选中的一个。帧间预测模式候选可以包括跳过模式、合并模式和/或MVP模式或者可以包括将在下面描述的各种帧间预测模式。
图像解码设备可以基于所确定的帧间预测模式来推导当前块的运动信息(S620)。例如,当跳过模式或合并模式应用于当前块时,图像解码设备可以构建将在下面描述的合并候选列表,并且选择合并候选列表中包括的合并候选中的一个。可以基于上述候选选择信息(合并索引)来执行选择。可以使用所选择的合并候选的运动信息来推导当前块的运动信息。例如,可以将所选择的合并候选的运动信息用作当前块的运动信息。
作为另一示例,当MVP模式应用于当前块时,图像解码设备可以构建MVP候选列表,并且使用从MVP候选列表中包括的MVP候选当中选择的MVP候选的运动向量作为当前块的MVP。可以基于上述候选选择信息(mvp标志或mvp索引)来执行选择。在这种情况下,可以基于关于MVD的信息来推导当前块的MVD,并且可以基于当前块的MVP和MVD来推导当前块的运动向量。另外,可以基于参考画面索引信息来推导当前块的参考画面索引。可以将当前块的参考画面列表中通过参考画面索引指示的画面推导为被参考以进行当前块的帧间预测的参考画面。
图像解码设备可以基于当前块的运动信息来生成当前块的预测样本(S630)。在这种情况下,可以基于当前块的参考画面索引来推导参考画面,并且可以使用参考画面上通过当前块的运动向量指示的参考块的样本来推导当前块的预测样本。在一些情况下,还可以针对当前块的预测样本中的全部或一些执行预测样本滤波过程。
例如,如图7所示,图像解码设备的帧间预测单元260可以包括预测模式确定单元261、运动信息推导单元262和预测样本推导单元263。在图像解码设备的帧间预测单元260中,预测模式确定单元261可以基于所接收到的预测模式信息来确定当前块的预测模式,运动信息推导单元262可以基于所接收到的运动信息来推导当前块的运动信息(运动向量和/或参考画面索引等),并且预测样本推导单元263可以推导当前块的预测样本。
图像解码设备可以基于所接收到的残差信息来生成当前块的残差样本(S640)。图像解码设备可以基于预测样本和残差样本来生成当前块的重构样本并且基于此来生成重构画面(S650)。此后,环路内滤波过程适用于如上所述的重构画面。
如上所述,帧间预测过程可以包括确定帧间预测模式的步骤、根据所确定的预测模式来推导运动信息的步骤、以及基于所推导的运动信息来执行预测(生成预测样本)的步骤。如上所述,帧间预测过程可以由图像编码设备和图像解码设备执行。
在下文中,将更详细地描述根据预测模式来推导运动信息的步骤。
如上所述,可以使用当前块的运动信息来执行帧间预测。图像编码设备可以通过运动估计过程来推导当前块的最佳运动信息。例如,图像编码设备可以按分数像素单元使用当前块的原始画面中的原始块来在参考画面中在预定搜索范围内搜索具有高相关性的相似参考块,并且使用其来推导运动信息。可以基于当前块与参考块之间的绝对差之和(SAD)来计算块的相似度。在这种情况下,可以基于搜索区域中具有最小SAD的参考块来推导运动信息。可以根据基于帧间预测模式的各种方法将所推导的运动信息用信号通知给图像解码设备。
当合并模式应用于当前块时,不直接发送当前块的运动信息,并且使用邻近块的运动信息来推导当前块的运动信息。因此,可以通过发送指示合并模式被使用的标志信息和指示哪个邻近块被用作合并候选的候选选择信息(例如,合并索引)来指示当前预测块的运动信息。在本公开中,由于当前块是预测执行单元,所以当前块可以被用作与当前预测块相同的含义,并且邻近块可以被用作与邻近预测块相同的含义。
图像编码设备可以搜索用于推导当前块的运动信息的合并候选块以执行合并模式。例如,可以使用最多五个合并候选块,但不限于此。可以在切片头或拼块组头中发送合并候选块的最大数量,但不限于此。在找到合并候选块之后,图像编码设备可以生成合并候选列表并且选择具有最小RD成本的合并候选块作为最终合并候选块。
本公开提供针对配置合并候选列表的合并候选块的各种实施方式。合并候选列表可以使用例如五个合并候选块。例如,可以使用四个空间合并候选和一个时间合并候选。
图8是例示了可用作空间合并候选的邻近块的视图。
图9是示意性地例示了根据本公开的示例的合并候选列表构建方法的视图。
图像编码/解码设备可以将通过搜索当前块的空间邻近块推导的空间合并候选插入到合并候选列表中(S910)。例如,如图8所示,空间邻近块可以包括当前块的左下角邻近块A0、左邻近块A1、右上角邻近块B0、上邻近块B1和左上角邻近块B2。然而,这是示例,并且除了上述空间邻近块之外,诸如右邻近块、下邻近块和右下邻近块的附加邻近块可以被进一步用作空间邻近块。图像编码/解码设备可以通过基于优先级搜索空间邻近块来检测可用块,并且推导所检测到的块的运动信息作为空间合并候选。例如,图像编码/解码设备可以通过按A1、B1、B0、A0和B2的顺序搜索图8所示的五个块,并且依次对可用候选进行索引来构建合并候选列表。
图像编码/解码设备可以将通过搜索当前块的时间邻近块推导的时间合并候选插入到合并候选列表中(S920)。时间邻近块可以位于与当前块位于其中的当前画面不同的参考画面上。时间邻近块位于其中的参考画面可以被称为并置画面或col画面。可以按col画面上当前块的并置块的右下角邻近块和右下中心块的顺序搜索时间邻近块。此外,当应用运动数据压缩以便减少存储器负载时,可以将特定运动信息存储为col画面的每个预定存储单元的代表性运动信息。在这种情况下,不需要存储预定存储单元中的所有块的运动信息,从而获得运动数据压缩效果。在这种情况下,可以将预定存储单元预先确定为例如16×16样本单元或8×8样本单元,或者可以将预定存储单元的大小信息从图像编码设备用信号通知给图像解码设备。当应用运动数据压缩时,时间邻近块的运动信息可以用时间邻近块位于其中的预定存储单元的代表性运动信息替换。也就是说,在这种情况下,从实现方式的观点看,可以基于在基于时间邻近块的坐标(左上样本位置)算术右移了预定值之后覆盖算术左移位置的预测块(而不是位于时间邻近块的坐标上的预测块)的运动信息,来推导时间合并候选。例如,当预定存储单元是2n×2n样本单元并且时间邻近块的坐标是(xTnb,yTnb)时,位于修改后的位置((xTnb>>n)<<n),(yTnb>>n)<<n))处的预测块的运动信息可以被用于时间合并候选。具体地,例如,当预定存储单元是16×16样本单元并且时间邻近块的坐标是(xTnb,yTnb)时,位于修改后的位置((xTnb>>4)<<4),(yTnb>>4)<<4))处的预测块的运动信息可以被用于时间合并候选。另选地,例如,当预定存储单元是8×8样本单元并且时间邻近块的坐标是(xTnb,yTnb)时,位于修改后的位置((xTnb>>3)<<3),(yTnb>>3)<<3))处的预测块的运动信息可以被用于时间合并候选。
再次参照图9,图像编码/解码设备可以检查当前合并候选数量是否小于合并候选的最大数量(S930)。合并候选的最大数量可以被预定义或者从图像编码设备用信号通知给图像解码设备。例如,图像编码设备可以生成关于合并候选的最大数量的信息并对其进行编码,并且将编码的信息以比特流的形式发送到图像解码设备。当满足合并候选的最大数量时,可以不执行后续候选添加过程S940。
当作为步骤S930的检查结果当前合并候选数量小于合并候选的最大数量时,图像编码/解码设备可以根据预定方法来推导附加合并候选,然后将附加合并候选插入到合并候选列表(S940)。例如,附加合并候选可以包括基于历史的合并候选、成对平均合并候选、ATMVP、组合双预测合并候选(当当前切片/拼块组的切片/拼块组类型为B类型时)和/或零向量合并候选中的至少一个。
当作为步骤S930的检查结果当前合并候选数量不小于合并候选的最大数量时,图像编码/解码设备可以结束合并候选列表的构建。在这种情况下,图像编码设备可以从配置合并候选列表的合并候选当中选择最佳合并候选,并且将指示所选择的合并候选的候选选择信息(例如,合并候选索引或合并索引)用信号通知给图像解码设备。图像解码设备可以基于合并候选列表和候选选择信息来选择最佳合并候选。
如上所述,所选择的合并候选的运动信息可以被用作当前块的运动信息,并且可以基于当前块的运动信息来推导当前块的预测样本。图像编码设备可以基于预测样本来推导当前块的残差样本,并且将残差样本的残差信息用信号通知给图像解码设备。如上所述,图像解码设备可以基于根据残差信息和预测样本而推导的残差样本来生成重构样本,并且基于其来生成重构画面。
当对当前块应用跳过模式时,可以使用与应用合并模式的情况相同的方法来推导当前块的运动信息。然而,当应用跳过模式时,对应块的残差信号被省略,并且因此预测样本可以被直接用作重构样本。例如,当cu_skip_flag的值为1时,可应用上述跳过模式。
以下,将描述在合并模式和/或跳过模式下推导空间候选的方法。空间候选可以表示上述空间合并候选。
可以基于空间邻近块来执行空间候选的推导。例如,可以从存在于图8所示的位置处的候选块推导最多四个空间候选。推导空间候选的顺序可以是A1->B1->B0->A0->B2。然而,推导空间候选的顺序不限于上述顺序,可以是例如B1->A1->B0->A0->B2。当前四个位置(上述示例中的A1、B1、B0和A0)中的至少一个不可用时,可以考虑顺序中的最后位置(上述示例中的位置B2)。在这种情况下,不可用的预定位置处的块可以包括属于与当前块不同的切片或拼块的对应块或作为帧内预测块的对应块。当从顺序中的第一位置(上述示例中的A1或B1)推导空间候选时,可以对后续位置的空间候选执行冗余检查。例如,当后续空间候选的运动信息与合并候选列表中已经包括的空间候选的运动信息相同时,后续空间候选可不被包括在合并候选列表中,从而改进编码效率。对后续空间候选执行的冗余检查可以对一些候选对而非所有可能候选对执行,从而降低计算复杂度。
图10是例示用于对空间候选执行的冗余检查的候选对的视图。
在图10所示的示例中,可以仅对位置A0处的空间候选执行对位置B0处的空间候选的冗余检查。另外,可以仅对位置B0处的空间候选执行对位置B1处的空间候选的冗余检查。另外,可以仅对位置A0处的空间候选执行对位置A1处的空间候选的冗余检查。最后,可以仅对位置A0和位置B0处的空间候选执行对位置B2处的空间候选的冗余检查。
在图10所示的示例中,推导空间候选的顺序为A0->B0->B1->A1->B2。然而,本公开不限于此,即使推导空间候选的顺序改变,如图10所示的示例中,可以仅对一些候选对执行冗余检查。
以下,将描述在合并模式和/或跳过模式的情况下推导时间候选的方法。时间候选可以表示上述时间合并候选。另外,时间候选的运动向量可以对应于MVP模式的时间候选。
在时间候选的情况下,仅一个候选可以被包括在合并候选列表中。在推导时间候选的过程中,可以缩放时间候选的运动向量。例如,可以基于属于并置参考画面(colPic)(以下称为“col画面”)的并置块(CU)(以下称为“col块”)来执行缩放。可以在切片头中明确地用信号通知用于推导col块的参考画面列表。
图11是例示缩放时间候选的运动向量的方法的视图。
在图11中,curr_CU和curr_pic分别表示当前块和当前画面,col_CU和col_pic分别表示col块和col画面。另外,curr_ref表示当前块的参考画面,col_ref表示col块的参考画面。另外,tb表示当前块的参考画面与当前画面之间的距离,td表示col块的参考画面与col画面之间的距离。tb和td可以表示与画面之间的POC(画面顺序计数)的差对应的值。可以基于tb和td来执行时间候选的运动向量的缩放。另外,时间候选的参考画面索引可以被设定为0。
图12是例示推导时间候选的位置的视图。
在图12中,粗实线的块表示当前块。可以从col画面中与图12的位置C0(右下位置)或C1(中心位置)对应的块推导时间候选。首先,可以确定位置C0是否可用,并且当位置C0可用时,可以基于位置C0来推导时间候选。当位置C0不可用时,可以基于位置C1来推导时间候选。例如,当col画面中位置C0处的块是帧内预测块或者位于当前CTU行之外时,可以确定位置C0不可用。
如上所述,当应用运动数据压缩时,可以为各个预定单元块存储col块的运动向量。在这种情况下,为了推导覆盖位置C0或位置C1的块的运动向量,可以修改位置C0或位置C1。例如,当预定单元块为8×8块并且位置C0或位置C1为(xColCi,yColCi)时,用于推导时间候选的位置可以被修改为((xColCi>>3)<<3,(yColCi>>3)<<3)。
以下,将描述在合并模式和/或跳过模式的情况下推导基于历史的候选的方法。基于历史的候选可以由基于历史的合并候选表示。
在空间候选和时间候选被添加到合并候选列表之后,基于历史的候选可以被添加到合并候选列表。例如,先前编码/解码的块的运动信息可以被存储在表中并用作当前块的基于历史的候选。该表可以在编码/解码处理期间存储多个基于历史的候选。该表可以在新CTU行开始时被初始化。将表初始化可以意指通过删除存储在表中的所有基于历史的候选来清空对应表。每当存在帧间预测块时,相关运动信息可以作为最后条目被添加到表。在这种情况下,帧间预测块可能不是基于子块预测的块。添加到表的运动信息可以用作新的基于历史的候选。
基于历史的候选的表可以具有预定大小。例如,该大小可为5。在这种情况下,该表可以存储最多五个基于历史的候选。当新的候选被添加到表时,可应用检查表中是否存在相同候选的冗余检查的有限先入先出(FIFO)规则。如果表中已经存在相同候选,则可以从该表删除该相同候选并且所有后续基于历史的候选的位置可以前移。
可以在配置合并候选列表的过程中使用基于历史的候选。在这种情况下,最近包括在表中的基于历史的候选可以被依次检查并且位于合并候选列表的时间候选之后的位置。当基于历史的候选被包括在合并候选列表中时,可以执行与已经包括在合并候选列表中的空间候选或时间候选的冗余检查。如果已经包括在合并候选列表中的空间候选或时间候选与基于历史的候选交叠,则基于历史的候选可以不被包括在合并候选列表中。通过如下简化冗余检查,计算量可以减少。
用于生成合并候选列表的基于历史的候选的数量可以被设定为(N<=4)?M:(8-N)。在这种情况下,N可以表示已经包括在合并候选列表中的候选的数量,M可以表示包括在表中的可用的基于历史的候选的数量。即,当合并候选列表中包括4个或更少的候选时,用于生成合并候选列表的基于历史的候选的数量可为M,并且当合并候选列表中包括大于4的N个候选时,用于生成合并候选列表的基于历史的候选的数量可以被设定为(8-N)。
当可用合并候选的总数达到(合并候选的最大允许数量-1)时,使用基于历史的候选的合并候选列表的配置可以结束。
以下,将描述在合并模式和/或跳过模式的情况下推导成对平均候选的方法。成对平均候选可以由成对平均合并候选或成对候选表示。
可以通过从包括在合并候选列表中的候选获得预定义的候选对并对它们取平均来生成成对平均候选。预定义的候选对可以是{(0,1),(0,2),(1,2),(0,3),(1,3),(2,3)}并且配置各个候选对的数可以是合并候选列表的索引。即,预定义的候选对(0,1)可以意指合并候选列表的一对索引0候选和索引1候选,并且成对平均候选可以由索引0候选和索引1候选的平均生成。可以按预定义的候选对的顺序执行成对平均候选的推导。即,在推导候选对(0,1)的成对平均候选之后,可以按候选对(0,2)和候选对(1,2)的顺序执行推导成对平均候选的过程。可以执行成对平均候选推导过程直至合并候选列表的配置完成。例如,可以执行成对平均候选推导过程直至包括在合并候选列表中的合并候选的数量达到最大合并候选数量。
可以为各个参考画面列表单独地计算成对平均候选。当对于一个参考画面列表(L0列表或L1列表)两个运动向量可用时,可以计算两个运动向量的平均。在这种情况下,即使两个运动向量指示不同的参考画面,也可以执行两个运动向量的平均。如果对于一个参考画面列表仅一个运动向量可用,则可用运动向量可以用作成对平均候选的运动向量。如果对于一个参考画面列表两个运动向量均不可用,则可以确定参考画面列表无效。
当即使在成对平均候选被包括在合并候选列表中之后合并候选列表的配置仍未完成时,零向量可以被添加到合并候选列表直至达到最大合并候选数量。
当对当前块应用MVP模式时,可以使用重构的空间邻近块(例如,图8所示的邻近块)的运动向量和/或与时间邻近块(或Col块)对应的运动向量来生成运动向量预测子(mvp)候选列表。即,重构的空间邻近块的运动向量以及与时间邻近块对应的运动向量可以用作当前块的运动向量预测子候选。当应用双向预测时,单独地生成并使用用于L0运动信息推导的mvp候选列表和用于L1运动信息推导的mvp候选列表。当前块的预测信息(或关于预测的信息)可以包括指示从包括在mvp候选列表中的运动向量预测子候选当中选择的最佳运动向量预测子候选的候选选择信息(例如,MVP标志或MVP索引)。在这种情况下,预测单元可以使用候选选择信息从包括在mvp候选列表中的运动向量预测子候选当中选择当前块的运动向量预测子。图像编码设备的预测单元可以获得并编码当前块的运动向量与运动向量预测子之间的运动向量差(MVD)并以比特流的形式输出编码的MVD。即,可以通过从当前块的运动向量减去运动向量预测子来获得MVD。图像解码设备的预测单元可以获得包括在关于预测的信息中的运动向量差并通过运动向量差与运动向量预测子的相加来推导当前块的运动向量。图像解码设备的预测单元可以从关于预测的信息获得或推导指示参考画面的参考画面索引。
图13是示意性地例示了根据本公开的示例的运动向量预测子候选列表构建方法的视图。
首先,可以搜索当前块的空间候选块并且可以将可用候选块插入到MVP候选列表中(S1010)。此后,确定MVP候选列表中包括的MVP候选的数量是否小于2(S1020),并且当MVP候选的数量为2时,可以完成MVP候选列表的构建。
在步骤S1020中,当可用空间候选块的数量小于2时,可以搜索当前块的时间候选块并且可以将可用候选块插入到MVP候选列表中(S1030)。当时间候选块不可用时,可以将零运动向量插入到MVP候选列表中(S1040),从而完成MVP候选列表的构建。
此外,当应用mvp模式时,可以显式地用信号通知参考画面索引。在这种情况下,可以区别地用信号通知用于L0预测的参考画面索引refidxL0和用于L1预测的参考画面索引refidxL1。例如,当应用MVP模式并且应用双预测时,可以用信号通知关于refidxL0的信息和关于refidxL1的信息。
如上所述,当应用MVP模式时,可以将关于由图像编码设备推导的MVP的信息用信号通知给图像解码设备。例如,关于MVD的信息可以包括MVD绝对值以及为正负号(sign)指示x和y分量的信息。在这种情况下,当MVD绝对值大于0时,可以分步地用信号通知MVD绝对值是否大于1和指示MVD余数的信息。例如,只有当指示MVD绝对值是否大于0的标志信息的值为1时才可以用信号通知指示MVD绝对值是否大于1的信息。
仿射模式的概述
以下,将详细描述作为帧间预测模式的示例的仿射模式。在传统视频编码/解码系统中,仅使用一个运动向量来表达当前块的运动信息。然而,在此方法中,存在仅以块为单元来表达最佳运动信息,但是最佳运动信息无法以像素为单元来表达的问题。为了解决此问题,已提出了以像素为单元定义块的运动信息的仿射模式。根据仿射模式,可以使用与当前块关联的两个至四个运动向量来确定块的各个像素和/或子块单元的运动向量。
与使用像素值的平移运动(或位移)表达的现有运动信息相比,在仿射模式下,各个像素的运动信息可以使用平移运动、缩放、旋转或剪切中的至少一种来表达。在它们当中,使用位移、缩放或旋转来表达各个像素的运动信息的仿射模式可以是相似或简化仿射模式。以下描述中的仿射模式可以意指相似或简化仿射模式。
仿射模式下的运动信息可以使用两个或更多个控制点运动向量(CPMV)来表达。可以使用CPMV来推导当前块的特定像素位置的运动向量。在这种情况下,当前块的各个像素和/或子块的运动向量的集合可以被定义为仿射运动向量场(仿射MVF)。
图14是例示仿射模式的参数模型的视图。
当仿射模式应用于当前块时,可以使用4参数模型和6参数模型之一来推导仿射MVF。在这种情况下,4参数模型可以意指使用两个CPMV的模型类型,6参数模型可以意指使用三个CPMV的模型类型。图14的(a)和图14的(b)分别示出4参数模型和6参数模型中使用的CPMV。
当当前块的位置为(x,y)时,可以根据下式1或式2来推导根据像素位置的运动向量。例如,根据4参数模型的运动向量可以根据式1来推导,根据6参数模型的运动向量可以根据式2来推导。
[式1]
Figure BDA0003573405750000271
[式2]
Figure BDA0003573405750000272
在式1和式2中,mv0={mv_0x,mv_0y}可以是当前块的左上角位置处的CPMV,v1={mv_1x,mv_1y}可以是当前块的右上位置处的CPMV,mv2={mv_2x,mv_2y}可以是当前块的左下位置处的CPMV。在这种情况下,W和H分别对应于当前块的宽度和高度,mv={mv_x,mv_y}可以意指像素位置{x,y}的运动向量。
在编码/解码处理中,可以以像素和/或预定义子块为单元来确定仿射MVF。当以像素为单元来确定仿射MVF时,可以基于各个像素值来推导运动向量。此外,当以子块为单元来确定仿射MVF时,可以基于子块的中心像素值来推导对应块的运动向量。中心像素值可以意指存在于子块的中心的虚拟像素或存在于中心的四个像素当中的右下像素。另外,中心像素值可以是子块中的特定像素并且可以是表示子块的像素。在本公开中,将描述以4×4子块为单元确定仿射MVF的情况。然而,这仅是为了描述方便,子块的大小可以不同地改变。
即,当仿射预测可用时,适用于当前块的运动模型可以包括三个模型,即,平移运动模型、4参数仿射运动模型和6参数仿射运动模型。这里,平移运动模型可以表示由现有块单元运动向量使用的模型,4参数仿射运动模型可以表示由两个CPMV使用的模型,6参数仿射运动模型可以表示由三个CPMV使用的模型。仿射模式可以根据运动信息编码/解码方法被分成详细模式。例如,仿射模式可以被再分成仿射MVP模式和仿射合并模式。
当仿射合并模式应用于当前块时,可以从以仿射模式编码/解码的当前块的邻近块推导CPMV。当当前块的至少一个邻近块以仿射模式编码/解码时,仿射合并模式可以应用于当前块。即,当仿射合并模式应用于当前块时,当前块的CPMV可以使用邻近块的CPMV来推导。例如,邻近块的CPMV可以被确定为当前块的CPMV,或者可以基于邻近块的CPMV来推导当前块的CPMV。当基于邻近块的CPMV来推导当前块的CPMV时,可以使用当前块或邻近块的至少一个编码参数。例如,邻近块的CPMV可以基于邻近块的大小和当前块的大小来修改并用作当前块的CPMV。
此外,以子块为单元来推导MV的仿射合并可以被称为子块合并模式,其可以由具有第一值(例如,1)的merge_subblock_flag指定。在这种情况下,下面描述的仿射合并候选列表可以被称为子块合并候选列表。在这种情况下,被推导为下述SbTMVP的候选可以被进一步包括在子块合并候选列表中。在这种情况下,被推导为sbTMVP的候选可以用作子块合并候选列表的索引#0的候选。换言之,被推导为sbTMVP的候选可以位于子块合并候选列表中下面描述的继承仿射候选和构建仿射候选前面。
例如,可以定义指定仿射模式是否适用于当前块的仿射模式标志,其可以在当前块的至少一个更高级别(例如,序列、画面、切片、拼块、拼块组、图块等)用信号通知。例如,仿射模式标志可以命名为sps_affine_enabled_flag。
当应用仿射合并模式时,仿射合并候选列表可以被配置为推导当前块的CPMV。在这种情况下,仿射合并候选列表可以包括继承仿射合并候选、构建仿射合并候选或零合并候选中的至少一个。当当前块的邻近块以仿射模式编码/解码时,继承仿射合并候选可以意指使用邻近块的CPMV推导的候选。构建仿射合并候选可以意指基于各个控制点(CP)的邻近块的运动向量推导各个CPMV的候选。此外,零合并候选可以意指由大小为0的CPMV组成的候选。在以下描述中,CP可以意指用于推导CPMV的块的特定位置。例如,CP可以是块的各个顶点位置。
图15是例示生成仿射合并候选列表的方法的视图。
参照图15的流程图,可以按照继承仿射合并候选(S1210)、构建仿射合并候选(S1220)和零合并候选(S1230)的顺序将仿射合并候选添加到仿射合并候选列表。当即使所有继承仿射合并候选和构建仿射合并候选被添加到仿射合并候选列表,包括在候选列表中的候选的数量仍不满足最大候选数量时,可以添加零合并候选。在这种情况下,可以添加零合并候选直至仿射合并候选列表的候选数量满足最大候选数量。
图16是例示从邻近块推导的控制点运动向量(CPMV)的视图。
例如,可以推导最多两个继承仿射合并候选,其各自可以基于左邻近块和上邻近块中的至少一个来推导。将参照图8描述用于推导继承仿射合并模式的邻近块。基于左邻近块推导的继承仿射合并候选基于A0或A1中的至少一个来推导,基于上邻近块推导的继承仿射合并候选可以基于B0、B1或B2中的至少一个来推导。在这种情况下,邻近块的扫描顺序可为A0至A1和B0、B1和B2,但不限于此。对于左和上中的每一个,可以基于扫描顺序中可用的第一邻近块来推导继承仿射合并候选。在这种情况下,在从左邻近块和上邻近块推导的候选之间可以不执行冗余检查。
例如,如图16所示,当左邻近块A以仿射模式编码/解码时,可以推导与邻近块A的CP对应的运动向量v2、v3和v4中的至少一个。当邻近块A通过4参数仿射模型编码/解码时,继承仿射合并候选可以使用v2和v3来推导。相比之下,当邻近块A通过6参数仿射模型编码/解码时,继承仿射合并候选可以使用v2、v3和v4来推导。
图17是例示用于推导构建仿射合并候选的邻近块的视图。
构建仿射候选可以意指具有使用邻近块的一般运动信息的组合推导的CPMV的候选。各个CP的运动信息可以使用当前块的空间邻近块或时间邻近块来推导。在以下描述中,CPMVk可以意指表示第k CP的运动向量。例如,参照图17,CPMV1可以被确定为B2、B3和A2的运动向量中可用的第一运动向量,并且在这种情况下,扫描顺序可为B2、B3和A2。CPMV2可以被确定为B1和B0的运动向量中可用的第一运动向量,并且在这种情况下,扫描顺序可为B1和B0。CPMV3可以被确定为A1和A0的运动向量之一,并且在这种情况下,扫描顺序可为A1和A0。当TMVP适用于当前块时,CPMV4可以被确定为时间邻近块T的运动向量。
在推导各个CP的四个运动向量之后,可以基于此来推导构建仿射合并候选。可以通过包括从所推导的各个CP的四个运动向量当中选择的至少两个运动向量来配置构建仿射合并候选。例如,构建仿射合并候选可以由按此顺序的{CPMV1,CPMV2,CPMV3}、{CPMV1,CPMV2,CPMV4}、{CPMV1,CPMV3,CPMV4}、{CPMV2,CPMV3,CPMV4}、{CPMV1,CPMV2}或{CPMV1,CPMV3}中的至少一个组成。由三个运动向量组成的构建仿射候选可以是6参数仿射模型的候选。相比之下,由两个运动向量组成的构建仿射候选可以是4参数仿射模型的候选。为了避免运动向量的缩放过程,当CP的参考画面索引彼此不同时,相关CPMV的组合可以被忽略而不用于推导构建仿射候选。
当仿射MVP模式应用于当前块时,编码/解码设备可以推导当前块的两个或更多个CPMV预测子和CPMV并且基于它们来推导CPMV差。在这种情况下,可以将CPMV差从编码设备用信号通知给解码设备。图像解码设备可以推导当前块的CPMV预测子,重构用信号通知的CPMV差,然后基于CPMV预测子和CPMV差来推导当前块的CPMV。
此外,仅当仿射合并模式或基于子块的TMVP不应用于当前块时,仿射MVP模式才可以应用于当前块。此外,仿射MVP模式可以被表示为仿射CP MVP模式。
当仿射MVP应用于当前块时,仿射MVP候选列表可以被配置为推导当前块的CPMV。在这种情况下,仿射MVP候选列表可以包括继承仿射MVP候选、构建仿射MVP候选、平移运动仿射MVP候选或零MVP候选中的至少一个。
在这种情况下,继承仿射MVP候选可以意指当当前块的邻近块以仿射模式编码/解码时基于邻近块的CPMV推导的候选。构建仿射MVP候选可以意指通过基于CP邻近块的运动向量生成CPMV组合而推导的候选。零MVP候选可以意指由值为0的CPMV组成的候选。推导方法以及继承仿射MVP候选和构建仿射MVP候选的特性与上述继承仿射候选和构建仿射候选相同,因此将省略其描述。
当仿射MVP候选列表的最大候选数量为2时,当当前候选数量小于2时可以添加构建仿射MVP候选、平移运动仿射MVP候选和零MVP候选。具体地,平移运动仿射MVP候选可以按以下顺序来推导。
例如,当包括在仿射MVP候选列表中的候选数量小于2并且构建仿射MVP候选的CPMV0有效时,CPMV0可以用作仿射MVP候选。即,CP0、CP1、CP2的所有运动向量均为CPMV0的仿射MVP候选可以被添加到仿射MVP候选列表。
接下来,当仿射MVP候选列表的候选数量小于2并且构建仿射MVP候选的CPMV1有效时,CPMV1可以用作仿射MVP候选。即,CP0、CP1、CP2的所有运动向量均为CPMV1的仿射MVP候选可以被添加到仿射MVP候选列表。
接下来,当仿射MVP候选列表的候选数量小于2并且构建仿射MVP候选的CPMV2有效时,CPMV2可以用作仿射MVP候选。即,CP0、CP1、CP2的所有运动向量均为CPMV2的仿射MVP候选可以被添加到仿射MVP候选列表。
不管上述条件,当仿射MVP候选列表的候选数量小于2时,当前块的时间运动向量预测子(TMVP)可以被添加到仿射MVP候选列表。
不管平移运动仿射MVP候选的添加,当仿射MVP候选列表的候选数量小于2时,零MVP候选可以被添加到仿射MVP候选列表。
图18是例示生成仿射MVP候选列表的方法的视图。
参照图18的流程图,可以按照继承仿射MVP候选(S1610)、构建仿射MVP候选(S1620)、平移运动仿射MVP候选(S1630)和零MVP候选(S1640)的顺序将候选添加到仿射MVP候选列表。如上所述,步骤S1620至S1640可以根据在各个步骤中包括在仿射MVP候选列表中的候选数量是否小于2来执行。
继承仿射MVP候选的扫描顺序可以等于继承仿射合并候选的扫描顺序。然而,在继承仿射MVP候选的情况下,可以仅考虑参考与当前块的参考画面相同的参考画面的邻近块。当继承仿射MVP候选被添加到仿射MVP候选列表时,可以不执行冗余检查。
为了推导构建仿射MVP候选,可以仅考虑图17所示的空间邻近块。另外,构建仿射MVP候选的扫描顺序可以等于构建仿射合并候选的扫描顺序。另外,为了推导构建仿射MVP候选,可以检查邻近块的参考画面索引,并且在扫描顺序中,可以使用被帧间编码并参考与当前块的参考画面相同的参考画面的第一邻近块。
基于子块的TMVP(SbTMVP)模式的概述
以下,将详细描述作为帧间预测模式的示例的基于子块的TMVP模式。根据基于子块的TMVP模式,可以推导当前块的运动向量场(MVF)并且可以以子块为单元来推导运动向量。
与以编码单元为单元执行的传统TMVP模式不同,对于应用基于子块的TMVP模式的编码单元,运动向量可以以子编码单元为单元来编码/解码。另外,根据传统TMVP模式,可以从并置块来推导时间运动向量,但是在基于子块的TMVP模式下,可以从由从当前块的邻近块推导的运动向量指定的参考块来推导运动向量场。以下,从邻近块推导的运动向量可以被称为当前块的运动移位或代表性运动向量。
图19是例示基于子块的TMVP模式的邻近块的视图。
当基于子块的TMVP模式应用于当前块时,可以确定用于确定运动移位的邻近块。例如,可以按照图19的A1、B1、B0和A0的块的顺序对用于确定运动移位的邻近块执行扫描。作为另一示例,用于确定运动移位的邻近块可以被限制为当前块的特定邻近块。例如,用于确定运动移位的邻近块可以始终被确定为块A1。当邻近块具有参考col画面的运动向量时,对应运动向量可以被确定为运动移位。被确定为运动移位的运动向量可以被称为时间运动向量。此外,当无法从邻近块推导上述运动向量时,运动移位可以被设定为(0,0)。
图20是例示根据基于子块的TMVP模式来推导运动向量场的方法的视图。
接下来,可以确定运动移位所指定的并置画面上的参考块。例如,可以通过将运动移位与当前块的坐标相加来从col画面获得基于子块的运动信息(运动向量或参考画面索引)。在图20所示的示例中,假设运动移位是A1块的运动向量。通过对当前块应用运动移位,可以指定col画面中与配置当前块的各个子块对应的子块(col子块)。此后,使用col画面中的对应子块(col子块)的运动信息,可以推导当前块的各个子块的运动信息。例如,可以从对应子块的中心位置获得对应子块的运动信息。在这种情况下,中心位置可以是位于对应子块的中心的四个样本当中的右下样本的位置。当与当前块对应的col块的特定子块的运动信息不可用时,col块的中心子块的运动信息可以被确定为对应子块的运动信息。当推导对应子块的运动向量时,类似于上述TMVP过程,可以切换至参考画面索引和当前子块的运动向量。即,当推导基于子块的运动向量时,可以考虑参考块的参考画面的POC来执行运动向量的缩放。
如上所述,可以使用基于子块推导的当前块的的运动向量场或运动信息来推导当前块的基于子块的TMVP候选。
以下,以子块为单元配置的合并候选列表被定义为子块单元合并候选列表。上述仿射合并候选和基于子块的TMVP候选可以被合并以配置子块单元合并候选列表。
此外,可以定义指定基于子块的TMVP模式是否适用于当前块的基于子块的TMVP模式标志,其可以在当前块的较高级别(例如,序列、画面、切片、拼块、拼块组、图块等)当中的至少一个级别用信号通知。例如,基于子块的TMVP模式标志可以命名为sps_sbtmvp_enabled_flag。当基于子块的TMVP模式适用于当前块时,基于子块的TMVP候选可以首先被添加到子块单元合并候选列表,然后仿射合并候选可以被添加到子块单元合并候选列表。此外,可以用信号通知子块单元合并候选列表中可以包括的最大候选数量。例如,子块单元合并候选列表中可以包括的最大候选数量可为5。
用于推导子块单元合并候选列表的子块的大小可以用信号通知或预设为M×N。例如,M×N可为8×8。因此,仅当当前块的大小为8×8或更大时,仿射模式或基于子块的TMVP模式才适用于当前块。
以下,将描述本公开的预测执行方法的实施方式。可以在图4的步骤S410或图6的步骤S630中执行以下预测执行方法。
可以基于根据预测模式推导的运动信息来生成当前块的预测块。预测块(预测的块)可以包括当前块的预测样本(预测样本阵列)。当当前块的运动向量指定部分样本单元时,可以执行插值过程,并且由此,可以基于参考样本以参考画面内的部分样本为单元来推导当前块的预测样本。当仿射帧间预测应用于当前块时,可以基于样本/子块单元MV来生成预测样本。当应用双预测时,通过基于L0预测(即,使用MVL0和参考画面列表L0内的参考画面的预测)推导的预测样本和基于L1预测(即,使用MLV1和参考画面列表L1内的参考画面的预测)推导的预测样本的加权和或加权平均(根据相位)推导的预测样本可以用作当前块的预测样本。当应用双预测并且用于L0预测的参考画面和用于L1预测的参考画面相对于当前画面位于不同的时间方向上时(即,如果其对应于双预测和双向预测),这可被称为真双预测。
在图像解码设备中,可以基于推导的预测样本来生成重构样本和重构画面,然后可以执行环路内滤波过程。另外,在图像编码设备中,可以基于推导的预测样本来推导残差样本,并且可以执行包括预测信息和残差信息的图像信息的编码。
具有CU级别权重的双预测(BCW)
当双预测如上所述应用于当前块时,可以基于加权平均来推导预测样本。传统上,双预测信号(即,双预测样本)能够通过L0预测信号(L0预测样本)和L1预测信号(L1预测样本)的简单平均来推导。即,双预测样本通过基于L0参考画面和MVL0的L0预测样本与基于L1参考画面和MVL1的L1预测样本的平均来推导。然而,根据本公开,当应用双预测时,双预测信号(双预测样本)可以如下通过L0预测信号和L1预测信号的加权平均来推导。
[式3]
Pbi-pred=((8-w)*P0+w*P1+4)>>3
在上式3中,Pbi-pred表示通过加权平均推导的双预测信号(双预测块),P0和P1分别表示L0预测样本(L0预测块)和L1预测样本(L1预测块)。另外,(8-w)和w分别表示应用于P0和P1的权重。
在通过加权平均生成双预测信号时,可以允许五个权重。例如,权重w可以选自{-2,3,4,5,10}。对于各个双预测CU,权重w可以通过两种方法之一来确定。作为这两种方法中的第一种方法,当当前CU不是合并模式(非合并CU)时,权重索引可以连同运动向量差一起用信号通知。例如,比特流可以在关于运动向量差的信息之后包括关于权重索引的信息。作为这两种方法中的第二种方法,当当前CU是合并模式(合并CU)时,可以基于合并候选索引(合并索引)从邻近块推导权重索引。
通过加权平均生成双预测信号可以被限制为仅应用于具有包括256个或更多的样本(亮度分量样本)的大小的CU。即,可以仅针对当前块的宽度和高度的乘积为256或更大的CU执行通过加权平均的双预测。另外,权重w可以用作如上所述的五个权重之一,并且可以使用不同数量的权重之一。例如,根据当前图像的特性,五个权重可以用于低延迟画面,三个权重可以用于非低延迟画面。在这种情况下,三个权重可以是{3,4,5}。
通过应用快速搜索算法,图像编码设备可以确定权重索引而不显著增加复杂度。在这种情况下,快速搜索算法可以总结如下。以下,不等权重可以意指应用于P0和P1的权重不相等。另外,等权重可以意指应用于P0和P1的权重可以相等。
-在运动向量的分辨率自适应地改变的AMVR模式一起应用的情况下,当当前画面是低延迟画面时,可以仅为1像元运动向量分辨率和4像元运动向量分辨率中的每一个有条件地检查不等权重。
-在仿射模式一起应用并且仿射模式被选为当前块的最佳模式的情况下,图像编码设备可以针对各个不等权重执行仿射运动估计(ME)。
-当用于双预测的两个参考画面相等时,可以仅有条件地检查不等权重。
-当满足预定条件时,可以不检查不等权重。预定画面可以基于当前画面和参考画面之间的POC距离、量化参数(QP)、时间级别等。
BCW的权重索引可以使用一个上下文编码bin以及一个或更多个后续旁路编码bin来编码。第一上下文编码bin指定是否使用等权重。当使用不等权重时,附加bin可以被旁路编码并用信号通知。可以用信号通知附加bin以指定使用哪一权重。
加权预测(WP)是用于高效地编码包括褪色的图像的工具。根据加权预测,可以为包括在参考画面列表L0和L1中的每一个中的各个参考画面用信号通知加权参数(权重和偏移)。然后,当执行运动补偿时,权重和偏移可以应用于对应参考画面。加权预测和BCW可以用于不同类型的图像。为了避免加权预测和BCW之间的交互,对于使用加权预测的CU,可以不用信号通知BCW权重索引。在这种情况下,权重可以被推断为4。即,可以应用等权重。
在应用合并模式的CU的情况下,可以基于合并候选索引从邻近块推断权重索引。这可以应用于一般合并模式和继承仿射合并模式二者。
在构建仿射合并模式的情况下,可以基于最多三个块的运动信息来配置仿射运动信息。在这种情况下,对于使用构建仿射合并模式的CU,可以执行以下过程以推导BCW权重索引。
(1)首先,BCW权重索引{0,1,2,3,4}的范围可以被分成三个组{0}、{1,2,3}和{4}。当所有CP的BCW权重索引源自同一组时,可以通过下面的步骤(2)推导BCW权重索引。否则,BCW权重索引可以被设定为2。
(2)当至少两个CP具有相同的BCW权重索引时,相同的BCW权重索引可以被分配为构建仿射合并候选的权重索引。否则,构建仿射合并候选的权重索引可以被设定为2。
双向光流(BDOF)
根据本公开,BDOF可以用于细化双预测信号。BDOF是在双预测应用于当前块(例如,CU)时通过计算细化运动信息来生成预测样本。因此,通过应用BDOF来计算细化运动信息的处理可以被包括在上述运动信息推导步骤中。
例如,BDOF可以在4×4子块级别应用。即,可以在当前块内以4×4子块为单位执行BDOF。
例如,BODF可以应用于满足以下条件的CU。
1)CU的高度不为4并且CU的大小不为4×8
2)CU不处于仿射模式或ATMVP合并模式
3)CU以真正双预测模式编码,即,两个参考画面中的一个按时间顺序在当前画面之前,另一个按时间顺序在当前画面之后
另外,BDOF可以仅应用于亮度分量。然而,本公开不限于此,BDOF可以应用于色度分量或亮度分量和色度分量二者。
BDOF模式基于光流的概念。即,假设对象的运动平滑。当应用BDOF时,对于各个4×4子块,可以计算运动细化(vx,vy)。可以通过使L0预测样本与L1预测样本之间的差最小化来计算运动细化。运动细化可以用于调节4×4子块内的双预测样本值。
以下,将更详细地描述执行BDOF的处理。
首先,可以计算两个预测信号的水平梯度
Figure BDA0003573405750000351
和垂直梯度
Figure BDA0003573405750000352
在这种情况下,k可为0或1。可以如下式4所示通过直接计算两个相邻样本之间的差来计算梯度。
[式4]
Figure BDA0003573405750000361
Figure BDA0003573405750000362
在上式4中,I(k)(i,j)表示列表k(k=0,1)中的预测信号的坐标(i,j)的样本值。例如,I(0)(i,j)可以表示L0预测块中的位置(i,j)处的样本值,I(1)(i,j)可以表示L1预测块中的位置(i,j)处的样本值。
在上式4中,两个样本之间的差被右移4。然而,本公开不限于此,右移shift1可以基于亮度分量的比特深度来确定。例如,当亮度分量的比特深度为bitDepth时,shift1可以被确定为max(6,bitDepth-6),或者可以被简单地确定为固定值6。在上式4中,对于梯度计算,首先计算两个样本之间的差,然后对差应用右移操作。然而,本公开不限于此,可以通过对两个样本值应用右移操作,然后计算右移值之间的差来计算梯度。
如上所述,在计算梯度之后,可以如下计算梯度之间的自相关和互相关S1、S2、S3、S5和S6
[式5]
S1=∑(i,j)∈Ωψx(i,j)·ψx(i,j),S3=∑(i,j)∈Ωθ(i,j)·ψx(i,j)
Figure BDA0003573405750000363
Figure BDA0003573405750000364
其中
Figure BDA0003573405750000365
Figure BDA0003573405750000366
θ(i,j)=(I(1)(i,j)>>nb)-(I(0)(i,j)>>nb)
其中Ω是4×4子块周围的6×6窗口。
可以使用上述梯度之间的自相关和互相关如下推导运动细化(vx,vy)。
[式6]
Figure BDA0003573405750000371
Figure BDA0003573405750000372
其中
Figure BDA0003573405750000373
th′BIO=213-BD
Figure BDA0003573405750000374
是floor函数。
基于推导的运动细化和梯度,可以针对4×4子块中的各个样本执行以下调节。
[式7]
Figure BDA0003573405750000375
最后,可以通过如下调节CU的双预测样本来计算应用BDOF的CU的预测样本predBDOF
[式8]
predBDOF(x,y)=(I(0)(x,y)+I(1)(x,y)+b(x,y)+ooffset)>>shift
在上式中,na、nb和nS2可分别为3、6和12。可以选择这些值,使得在BDOF处理中乘数不超过15比特并且中间参数的比特宽度维持在32比特内。
为了推导梯度值,可以生成列表k(k=0,1)中存在于当前CU之外的预测样本I(k)(i,j)。图21是例示扩展以执行BDOF的CU的视图。
如图21所示,为了执行BDOF,可以使用围绕CU的边界延伸的行/列。为了控制生成边界之外的预测样本的计算复杂度,扩展区域(图21中的白色区域)中的预测样本可以使用双线性滤波器来生成,并且CU(图21中的灰色区域)中的预测样本可以使用正常8抽头运动补偿插值滤波器来生成。扩展位置处的样本值可以仅用于梯度计算。当需要位于CU边界之外的样本值和/或梯度值以执行BDOF处理的剩余步骤时,可以填充(重复)并使用最近邻近样本值和/或梯度值。
当CU的宽度和/或高度大于16个亮度样本时,对应CU可以被划分成具有16个亮度样本的宽度和/或高度的子块。可以在BDOF处理中以与上述CU边界相同的方式处理子块的边界。执行BDOF处理的最大单元大小可以被限制为16×16。
当BCW可用于当前块时,例如,当BCW权重索引指定不等权重时,可以不应用BDOF。类似地,当WP可用于当前块时,例如,当两个参考画面中的至少一个的luma_weight_lx_flag为1时,可以不应用BDOF。在这种情况下,luma_weight_lx_flag可以是指定比特流中是否存在lx预测(x为0或1)的亮度分量的WP的加权因子的信息或者指定是否对lx预测的亮度分量应用WP的信息。当CU以SMVD模式编码时,可以不应用BDOF。
光流预测细化(PROF)
以下,将描述通过应用光流来细化基于子块的仿射运动补偿预测块的方法。通过执行基于子块的仿射运动补偿而生成的预测样本可以基于由光流方程推导的差来细化。在本公开中这些预测样本的细化可以被称为光流预测细化(PROF)。通过PROF,可以实现像素级别粒度的帧间预测而无需增加存储器访问的带宽。
仿射运动模型的参数可以用于推导CU中的各个像素的运动向量。然而,由于基于像素的仿射运动补偿预测导致高复杂度以及存储器访问带宽的增加,所以可以执行基于子块的仿射运动补偿预测。当执行基于子块的仿射运动补偿预测时,CU可以被划分成4×4子块,并且可以为各个子块确定运动向量。在这种情况下,可以从CU的CPMV推导各个子块的运动向量。基于子块的仿射运动补偿在编码效率与复杂度和存储器访问带宽之间具有折衷关系。由于以子块为单位推导运动向量,所以复杂度和存储器访问带宽降低,但是预测准确性降低。
因此,可以通过对基于子块的仿射运动补偿预测应用光流来通过细化实现细化粒度的运动补偿。
如上所述,可以通过在执行基于子块的仿射运动补偿之后与由光流方程推导的差相加来细化亮度预测样本。更具体地,可以按以下四个步骤执行PROF。
步骤1)通过执行基于子块的仿射运动补偿来生成预测子块I(i,j)。
步骤2)在各个样本位置计算预测子块的空间梯度gx(i,j)和gy(i,j)。在这种情况下,可以使用3抽头滤波器,并且滤波器系数可为[-1,0,1]。例如,可如下计算空间梯度。
[式9]
gx(i,j)=I(i+1,j)-I(i-1,j)
gy(i,j)=I(i,j+1)-I(i,j-1)
为了计算梯度,预测子块可以在每一侧扩展一个像素。在这种情况下,为了降低存储器带宽和复杂度,扩展边界的像素可以从参考画面中的最近整数个像素复制。因此,可以跳过填充区域的附加插值。
步骤3)可以通过光流方程来计算亮度预测细化(ΔI(i,j))。例如,可以使用下式。
[式10]
ΔI(i,j)=gx(i,j)*Δvx(i,j)+gy(i,j)*Δvy(i,j)
在上式中,Δv(i,j)表示在样本位置(i,j)处计算的像素运动向量(像素MV,v(i,j))与样本(i,j)所属的子块的子块MV之间的差。
图22是例示Δv(i,j)、v(i,j)和子块运动向量之间的关系的视图。
在图22所示的示例中,例如,当前子块的左上样本位置处的运动向量v(i,j)与当前子块的运动向量vSB之间的差可以由粗虚线箭头表示,并且由粗虚线箭头表示的向量可以对应于Δv(i,j)。
从子块的中心的仿射模型参数和像素位置不改变。因此,Δv(i,j)可以仅针对第一子块计算并且可重用于同一CU中的其它子块。假设从像素位置到子块的中心的水平偏移和垂直偏移分别为x和y,Δv(x,y)可以如下推导。
[式11]
Figure BDA0003573405750000391
对于4参数仿射模型,
Figure BDA0003573405750000392
对于6参数仿射模型,
Figure BDA0003573405750000393
在上文中,(v0x,v0y)、(v1x,v1y)和(v2x,v2y)分别对应于左上CPMV、右上CPMV和左下CPMV,并且w和h分别表示CU的宽度和高度。
步骤4)最后,可以基于计算的亮度预测细化ΔI(i,j)和预测子块I(i,j)来生成最终预测块I’(i,j)。例如,最终预测块I’可以如下生成。
[式12]
I′(i,j)=I(i,j)+ΔI(i,j)
如上所述,通过在帧间预测处理中应用BDOF以在运动补偿处理中细化参考样本,可增加图像的压缩性能。可以在正常模式下执行BDOF。即,在仿射模式、GPM模式或CIIP模式的情况下不执行BDOF。
作为与BDOF类似的方法,可以对以仿射模式编码的块执行PROF。如上所述,通过经由PROF细化各个4×4子块中的参考样本,可增加图像的压缩性能。
由于PROF和BDOF二者均使用光流的特性,所以可以根据与BDOF的应用条件类似的条件来确定是否应用PROF。根据本公开,可以提供WP和BCW的各种实施方式。
在本公开中,将任何信息(例如,标志)设定或推导为真可以意指对应信息被推导为第一值(例如,“1”)。另外,当任何信息被设定为真时,可以指示执行由对应信息指定的处理(例如,BDOF、PROF、WP等)。相反,在本公开中,将任何信息(例如,标志)设定或推导为假可以意指对应信息被推导为第二值(例如,“0”)。另外,当任何信息被设定为假时,可以指示不执行由对应信息指定的处理。
当如下满足各种条件时,可以通过将bdofFlag设定为真在运动补偿处理中执行BDOF。
[表1]
Figure BDA0003573405750000401
Figure BDA0003573405750000411
上表1中描述的执行BDOF的条件可以如下表2中所描述。
[表2]
Figure BDA0003573405750000412
然而,执行BDOF的条件不限于上表1和表2的示例,可以省略一些条件。另外,可以另外考虑上述条件以外的条件。
当根据上述条件不对当前块应用BDOF时,例如,当当前块的预测模式是仿射模式时,PROF类似于BDOF适用。例如,当当前块的预测模式是仿射模式时,可以确定是否应用PROF(cbProfFlagLX),并且当cbProfFlagLX为真时,可以执行PROF。
在BDOF中,使用光流的特性来确定样本的偏移。因此,当参考画面的亮度值不同时,即,当应用BCW或加权预测(WP)时,不执行BDOF。然而,尽管使用光流的特性来推导样本的偏移,可以执行PROF而不考虑是否应用BCW或WP。
根据本公开的实施方式,从设计角度,为了在BDOF和PROF之间协调,可以不对应用BCW或WP的块应用PROF。例如,当BcwIdx不为0时,当luma_weight_l0_flag[refIdxL0]为1时,或者当luma_weight_l1_flag[refIdxL1]为1时,指定是否应用PROF的信息cbProfFlagLX可以被设定为假。BcwIdx不为0可以意指对当前块应用BCW,并且luma_weight_lX_flag[refIdxLX](X=0或1)为1可以意指对当前块应用WP。在本公开中,BcwIdx为0可以意指应用等权重,即,通过L0预测块和L1预测块的平均和来生成双预测块。因此,当设定cbProfFlagLX时,如果对当前块应用BCW或WP,则可以通过添加上述条件来执行控制以不应用PROF。
下表示出根据本公开设定cbProfFlagLX的示例,下划线部分示出添加的条件。
[表3]
Figure BDA0003573405750000413
Figure BDA0003573405750000421
下表示出根据本公开设定cbProfFlagLX的另一示例,下划线部分示出添加的条件。
[表4]
Figure BDA0003573405750000422
如上所述,可以确定是否对当前块应用PROF。例如,cbProfFlagLX(X=0或1)可以表示是否对L0预测方向或L1预测方向应用PROF,并且根据表3的方法,可以基于bcwIdx、luma_wighted_l0_flag和/或luma_wighted_l1_flag中的至少一个来确定cbProfFlagLX。作为另一示例,根据表4的方法,可以基于bcwIdx、slice_type、pps_weighted_pred_flag和/或pps_weighted_bipred_flag中的至少一个来确定cbProfFlagLX。slice_type指定当前画面所属的当前切片的切片类型,pps_weighted_pred_flag是指定是否对参考对应PPS的P切片应用WP的画面参数集(PPS)参数,pps_weighted_bipred_flag是指定是否对参考对应PPS的B切片应用WP的画面参数集(PPS)参数。
根据本公开的另一实施方式,当执行BCW或WP(明确加权预测)时可以应用PROF。
通常,仅当WP不可用时才用信号通知BCW权重索引(bcw_idx)。因此,不同时用信号通知bcw_idx和WP的权重因子。下表示出用于用信号通知bcw_idx的语法结构的示例。
[表5]
Figure BDA0003573405750000431
根据上表5,作为用信号通知bcw_idx的条件,检查由对应CU的参考画面索引(ref_idx_l0、ref_idx_l1)指定的参考画面的所有加权预测标志(例如,luma_weight_l0_flag、luma_weight_l1_flag、chroma_weight_l0_flag、chroma_weight_l1_flag)是否为0。因此,根据表5,即使在PPS处发送的WP应用标志(例如,pps_weighted_pred_flag和/或pps_weighted_bipred_flag)为真,当特定参考画面索引的加权预测标志为0时,可以用信号通知bcw_idx。即,根据表5的示例,即使应用WP,也可以用信号通知bcw_idx。
图23是例示根据本公开的执行PROF、BCW、WP和/或平均和的示例的流程图。
参照图23,首先,可以推导指定是否对当前块应用PROF的cbProfFlag(例如,cbProfFlagLX)(S2310)。cbProfFlag可以基于本公开的各种方法来推导。
此后,在步骤S2320中,可以检查cbProfFlag是否为真,并且如果为真,则可以在步骤S2330中对当前块执行PROF。可以根据上述方法执行PROF,并且作为执行PROF的结果可以获得当前块的细化预测样本。在步骤S2320中,当cbProfFlag为假时,可以跳过步骤S2330。
此后,在步骤S2340中,可以推导指定是否对当前块应用加权预测(WP)的weightedPredFlag,并且可以检查其值是否为真。推导weightedPredFlag的方法将稍后描述。当weightedPredFlag为真时,可以确定对当前块应用加权预测,并且可以对当前块执行加权预测(S2350)。对当前块的加权预测可以基于当前块的参考画面的加权参数(权重和偏移)来执行。如上所述,可以通过比特流明确地用信号通知参考画面的加权参数。
当weightedPredFlag为假时,可以确定不对当前块应用加权预测并且可以检查bcwIdx是否为0(S2360)。bcwIdx可以根据当前块的预测模式不同地推导。例如,当当前块的预测模式是跳过模式或合并模式时,当前块的bcwIdx可以被推导为由当前块的合并候选索引指定的合并候选的bcwIdx。当当前块的预测模式不是合并模式(例如,MVP模式)时,可以通过解析通过比特流用信号通知的语法元素bcw_idx来重构当前块的bcwIdx。如果没有通过比特流用信号通知bcw_idx,则bcwIdx的值可以被推断为0。当bcwIdx为0时,可以指定BCW可以不应用于当前块。如上所述,bcwIdx为0可以意指应用等权重,即,意指由L0预测块与L1预测块的平均和来生成双预测块。
在步骤S2360中,当bcwIdx不为0时,可以确定对当前块应用BCW,并且可以基于bcwIdx所指定的权重对当前块执行BCW(S2370)。在步骤S2360中,当bcwIdx为0时,可以确定不对当前块应用BCW并且可以对当前块执行平均和(S2380)。
表6示出根据本公开的推导weightedPredFlag并相应地执行WP或BCW的示例。
[表6]
Figure BDA0003573405750000441
根据表6的方法,可以基于当前块所属的当前切片的切片类型以及通过PPS用信号通知的WP应用标志(例如,pps_weighted_pred_flag、pps_weighted_bipred_flag)来推导weightedPredFlag。具体地,当当前块的切片类型为P切片时,weightedPredflag可以被确定为pps_weighted_pred_flag的值。另外,当当前块的切片类型为B切片时,weightedPredflag可以被确定为pps_weighted_bipred_flag的值。
根据表6的方法,当如上所述确定的weightedPredFlag为假时,执行默认加权预测,并且当bcwIdx不为0时,BCW,或者当bcwIdx为0时,可以执行平均和。另外,当weightedPredFlag为真时,可以基于用信号通知的加权参数执行明确加权预测。
根据表6的方法,weightedPredFlag仅由当前切片的切片类型和PPS信息而非各个参考画面的加权预测标志(例如,luma_weight_l0_flag、luma_weight_l1_flag、chroma_weight_l0_flag、chroma_weight_l1_flag)来确定,然而可以基于各个参考画面的加权预测标志(例如,luma_weight_l0_flag、luma_weight_l1_flag、chroma_weight_l0_flag、chroma_weight_l1_flag)用信号通知bcw_idx,如表5所示。
因此,即使当根据表6的方法将weightedPredFlag确定为真时,也可以用信号通知bcw_idx。在这种情况下,即使当bcw_idx不为0(默认)时,也始终执行WP(明确加权预测)。
参照图23以及表5和表6描述的实施方式具有即使bcw_idx不是默认时也执行WP的问题。以下,将描述用于解决上述问题的本公开的另一实施方式。
图24是例示根据本公开的执行PROF、BCW、WP和/或平均和的另一示例的流程图。
参照图24,首先,可以推导指定是否对当前块应用PROF的cbProfFlag(S2410)。cbProfFlag可以基于本公开的各种方法来推导。
此后,在步骤S2420中,可以检查cbProfFlag是否为真,并且当为真时,在步骤S2430中,可以对当前块执行PROF。可以根据上述方法执行PROF,并且作为执行PROF的结果可以获得当前块的细化预测样本。在步骤S2420中,当cbProfFlag为假时,可以跳过步骤S2430。
此后,在步骤S2440中,可以检查bcwIdx是否为0。可以根据当前块的预测模式不同地推导bcwIdx。例如,当当前块的预测模式是跳过模式或合并模式时,当前块的bcwIdx可以被推导为由当前块的合并候选索引指定的合并候选的bcwIdx。当当前块的预测模式不是合并模式(例如,MVP模式)时,可以通过解析通过比特流用信号通知的语法元素bcw_idx来重构当前块的bcwIdx。如果没有通过比特流用信号通知bcw_idx,则bcwIdx的值可以被推断为0。在步骤S2440中,当bcwIdx不为0时,可以确定对当前块应用BCW,并且可以基于bcwIdx所指定的权重对当前块执行BCW(S2450)。
在步骤S2440中,当bcwIdx为0时,可以确定不对当前块应用BCW,此后,在步骤S2460中,可以检查指定是否对当前块应用加权预测(WP)的weightedPredFlag为真。
在步骤S2460中,当weightedPredFlag为真时,可以确定对当前块应用加权预测,并且可以对当前块执行加权预测(S2470)。对当前块的加权预测可以基于当前块的参考画面的加权参数(权重和偏移)来执行。如上所述,可以通过比特流明确地用信号通知参考画面的加权参数。
当在步骤S2460中weightedPredFlag为假时,可以确定不对当前块应用加权预测,并且可以对当前块执行平均和(S2480)。
根据参照图24描述的实施方式,当明确加权预测(WP)和BCW二者适用于当前块时,可以优先应用BCW。
表7示出根据本公开的推导weightedPredFlag并相应地执行WP或BCW的另一示例。
[表7]
Figure BDA0003573405750000461
推导weightedPredFlag的方法与表6的方法和表7的方法相同,因此将省略其详细描述。根据表7的方法,当如上所述确定的weightedPredFlag为假或者bcwIdx不为0时,可以执行默认加权预测,并且可以根据bcwIdx的值执行BCW或平均和。另外,当weightedPredFlag为真并且bcwIdx为0时,可以基于用信号通知的加权参数来执行明确加权预测。
根据表7的方法,当weightedPredFlag为真并且bcwIdx不为0时,即,当明确加权预测(WP)和BCW二者适用于当前块时,可以优先应用BCW。
图25是例示根据表7的方法执行BCW或WP的示例的流程图。
首先,可以确定当前块所属的当前切片的切片类型(S2510)。当切片类型是P切片时,weightedPredFlag可以被推导为pps_weighted_pred_flag(S2520)。当切片类型是B切片时,weightedPredFlag可以被推导为pps_weighted_bipred_flag(S2530)。
此后,在步骤S2540中,可以确定weightedPredFlag是否为0或BcwIdx是否不为0。bcwIdx可以根据当前块的预测模式不同地推导。例如,当当前块的预测模式是跳过模式或合并模式时,当前块的bcwIdx可以被推导为由当前块的合并候选索引指定的合并候选的bcwIdx。当当前块的预测模式不是合并模式(例如,MVP模式)时,可以通过解析通过比特流用信号通知的语法元素bcw_idx来重构当前块的bcwIdx。如果没有通过比特流用信号通知bcw_idx,则bcwIdx的值可以被推断为0。
当weightedPredFlag为0时或者当BcwIdx不为0时,可以执行默认加权预测(S2550)。在这种情况下,当BcwIdx为0时,可以执行步骤S2380或S2480中描述的平均和。当BcwIdx不为0时,可以执行步骤S2370或步骤S2450中描述的BCW。
当weightedPredFlag不为0并且BcwIdx为0时,可以执行明确加权预测(S2560)。在这种情况下,可以执行步骤S2350或步骤S2470中描述的WP。
表8示出根据本公开的推导weightedPredFlag并相应地执行WP或BCW的另一示例。
[表8]
Figure BDA0003573405750000471
Figure BDA0003573405750000481
根据表8的方法,可以通过进一步考虑bcwIdx来推导weightedPredFlag。具体地,当当前块的bcwIdx不为0时,weightedPredFlag可以被推导为假。当当前块的bcwIdx为0时,可以根据表6的方法基于当前块所属的当前切片的切片类型以及通过PPS用信号通知的WP应用标志(例如,pps_weighted_pred_flag、pps_weighted_bipred_flag)来推导weightedPredFlag。根据表8的方法,当如上所述确定的weightedPredFlag为假(第二值,例如0)时,执行默认加权预测,并且可以根据bcwIdx的值执行BCW或平均和。另外,当weightedPredFlag为真(第一值,例如1)时,可以基于用信号通知的加权参数来执行明确加权预测。
根据表8的方法,当bcwIdx不为0时,通过将weightedPredFlag推导为假,当明确加权预测(WP)和BCW二者适用于当前块时,可以优先应用BCW。
图26是例示根据表8的方法执行BCW或WP的示例的流程图。
首先,可以确定BcwIdx是否不为0(S2610)。bcwIdx可以根据当前块的预测模式不同地推导。例如,当当前块的预测模式是跳过模式或合并模式时,当前块的bcwIdx可以被推导为由当前块的合并候选索引指定的合并候选的bcwIdx。当当前块的预测模式不是合并模式(例如,MVP模式)时,当前块的bcwIdx可以通过解析通过比特流用信号通知的语法元素bcw_idx来重构。如果没有通过比特流用信号通知bcw_idx,则bcwIdx的值可以被推断为0。
当BcwIdx不为0时,weightedPredFlag可以被推导为0(S2620)。此后,可以通过步骤S2660的确定来执行默认加权预测(S2670)。另选地,可以跳过步骤S2620和步骤S2660,并且可以立即执行步骤S2670。步骤S2670以与步骤S2550相同的方式执行,因此将省略其详细描述。
当BcwIdx为0时,可以确定当前块所属的当前切片的切片类型(S2630)。当切片类型为P切片时,weightedPredFlag可以被推导为pps_weighted_pred_flag(S2640)。当切片类型为B切片时,weightedPredFlag可以被推导为pps_weighted_bipred_flag(S2650)。
此后,在步骤S2660中,可以确定weightedPredFlag是否为0。
当weightedPredFlag为0时,可以执行默认加权预测(S2670)。当weightedPredFlag不为0时,可以执行明确加权预测(S2680)。步骤S2670和步骤S2680分别以与步骤S2550和步骤S2560相同的方式执行,因此将省略其详细描述。
表9示出根据本公开的推导weightedPredFlag并相应地执行WP或BCW的另一示例。
[表9]
Figure BDA0003573405750000491
根据表9的方法,可以考虑当前块所属的当前切片的切片类型以及由当前块的参考画面索引(ref_idx_l0、ref_idx_l1)指定的参考画面的加权预测标志(例如,luma_weight_l0_flag、luma_weight_l1_flag、chroma_weight_l0_flag、chroma_weight_l1_flag)来推导weightedPredFlag。具体地,当当前块所属的当前切片是P切片并且L0方向的两个加权预测标志(例如,luma_weight_l0_flag、chroma_weight_l0_flag)均为0时,weightedPredFlag可以被推导为0。另外,当当前块所属的当前切片是P切片并且L0方向的加权预测标志(例如,luma_weight_l0_flag、chroma_weight_l0_flag)中的至少一个不为0时,weightedPredFlag可以被推导为1。
当当前块所属的当前切片是B切片并且L0方向和L1方向的所有加权预测标志(例如,luma_weight_l0_flag、luma_weight_l1_flag、chroma_weight_l0_flag、chroma_weight_l1_flag)均为0时,weightedPredFlag可以被推导为0。另外,当当前块所属的当前切片是B切片并且L0方向和L1方向的加权预测标志(例如,luma_weight_l0_flag、luma_weight_l1_flag、chroma_weight_l0_flag、chroma_weight_l1_flag)中的至少一个不为0时,weightedPredFlag可以被推导为1。
根据表9的方法,当如上所述确定的weightedPredFlag为假(第二值,例如0)时,可以执行默认加权预测,并且可以根据bcwIdx的值执行BCW或平均和。另外,当weightedPredFlag为真(第一值,例如1)时,可以基于用信号通知的加权参数来执行明确加权预测。
根据表9的方法,基于用信号通知bcw_idx的条件来推导weightedPredFlag。即,当用信号通知bcw_idx时通过将weightedPredFlag推导为假,当明确加权预测(WP)和BCW二者适用于当前块时可以优先应用BCW。
图27是例示根据表9的方法执行BCW或WP的示例的流程图。
首先,可以确定当前块所属的当前切片的切片类型(S2710)。当切片类型是P切片时,可以基于如参照表9所描述的luma_weight_l0_flag和/或chroma_weight_l0_flag来推导weightedPredFlag(S2720)。当切片类型是B切片时,可以基于luma_weight_l0_flag、chroma_weight_l0_flag、luma_weight_l1_flag和/或chroma_weight_l1_flag来推导weightedPredFlag(S2730)。
此后,在步骤S2740中,可以确定weightedPredFlag是否为0。
当weightedPredFlag为0时,可以执行默认加权预测(S2750)。当weightedPredFlag不为0时,可以执行明确加权预测(S2760)。步骤S2750和步骤S2760分别以与步骤S2550和步骤S2560相同的方式执行,因此将省略其详细描述。
表10示出根据本公开的推导weightedPredFlag并相应地执行WP或BCW的另一示例。
[表10]
Figure BDA0003573405750000501
Figure BDA0003573405750000511
推导weightedPredFlag的方法与表9的方法和表10的方法相同,因此将省略其详细描述。根据表10的方法,当如上所述确定的weightedPredFlag为假(第二值,例如0)或者bcwIdx不为0时,可以执行默认加权预测,并且可以根据bcwIdx的值执行BCW或平均和。另外,当weightedPredFlag为真(第一值,例如1)并且bcwIdx为0时,可以基于用信号通知的加权参数执行明确加权预测。
根据表10的方法,基于用信号通知bcw_idx的条件来推导weightedPredFlag。即,当用信号通知bcw_idx时通过将weightedPredFlag推导为假,当明确加权预测(WP)和BCW二者适用于当前块时可以优先应用BCW。
另外,根据表10的方法,当weightedPredFlag为真并且bcwIdx不为0时,即,当明确加权预测(WP)和BCW二者适用于当前块时,可以优先应用BCW。
图28是例示根据表10的方法执行BCW或WP的示例的流程图。
图28的步骤S2810至步骤S2830分别与图27的步骤S2710至步骤S2730相同,因此将省略其详细描述。
参照图28,此后,在步骤S2840中,可以确定weightedPredFlag是否为0或BcwIdx是否不为0,并且可以基于确定结果执行步骤S2850的默认加权预测或步骤S2860的明确加权预测。图28的步骤S2840至步骤S2860分别与图25的步骤S2540至步骤S2560相同,因此将省略其详细描述。
如上所述,参照图23以及表5和表6描述的实施方式具有即使bcw_idx不是默认仍执行WP的问题。以下,将描述用于解决上述问题的本公开的另一实施方式。
即使当执行BCW或WP(明确加权预测)时,也可以应用PROF。通常,由于仅当WP不可用时才从比特流解析bcw_idx,所以BCW和WP不应同时存在。然而,如表5所示的语法结构中所示,为了从比特流解析bcw_idx,仅检查由当前块的参考画面索引指定的参考画面的加权预测标志(例如,luma_weight_l0_flag,、luma_weight_l1_flag、chroma_weight_l0_flag、chroma_weight_l1_flag)。另外,如表6所示,基于当前块所属的当前切片的切片类型以及通过PPS用信号通知的WP应用标志(例如,pps_weighted_pred_flag、pps_weighted_bipred_flag)来推导weightedPredFlag。因此,即使当WP应用标志为真时,如果特定参考画面的加权预测标志为0,则解析bcw_idx。结果,WP和BCW可以同时应用。
表11示出根据本公开的另一示例的解析bcw_idx的修改语法结构。
[表11]
Figure BDA0003573405750000521
在表11的语法结构中,由于考虑表6的weightedPredFlag的推导条件来修改bcw_idx的解析条件,所以通过在解析bcw_idx时将weightedPredFlag推导为假并且仅在不解析bcw_idx时将weightedPredFlag推导为真,可以消除WP和BCW同时应用的情况。例如,参照图23以及表5和表6描述的实施方式可以通过用表11替换表5来解决上述问题。
虽然为了描述的清楚起见,上述本公开的示例性方法被表示为一系列操作,但并不旨在限制执行步骤的顺序,并且必要时这些步骤可以同时或以不同的顺序来执行。为了实现根据本发明的方法,所描述的步骤可以进一步包括其它步骤,可以包括除了一些步骤之外的其余步骤,或者可以包括除了一些步骤之外的其它附加步骤。
在本公开中,执行预定操作(步骤)的图像编码装置或图像解码装置可以执行确认相应操作(步骤)的执行条件或情况的操作(步骤)。例如,如果描述了在满足预定条件时执行预定操作,则图像编码装置或图像解码装置可以在确定是否满足预定条件之后执行预定操作。
本公开的各种实施方式不是所有可能组合的列表并且旨在描述本公开的代表性方面,并且在各种实施方式中描述的事项可以独立地或以两个或更多个的组合应用。
本公开的各种实施方式可以以硬件、固件、软件或其组合来实现。在通过硬件实现本公开的情况下,本公开可以通过专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理器件(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、通用处理器、控制器、微控制器、微处理器等来实现。
此外,应用本公开的实施方式的图像解码设备和图像编码设备可以被包括在多媒体广播传送和接收装置、移动通信终端、家庭影院视频装置、数字影院视频装置、监控摄像头、视频聊天装置、诸如视频通信的实时通信装置、移动流传输装置、存储介质、摄像机、视频点播(VoD)服务提供装置、OTT视频(over the top video)装置、互联网流传输服务提供装置、三维(3D)视频装置、视频电话视频装置、医疗视频装置等中,并且可用于处理视频信号或数据信号。例如,OTT视频装置可以包括游戏机、蓝光播放器、互联网接入电视、家庭影院系统、智能电话、平板PC、数字录像机(DVR)等。
图29是示出可应用本公开的实施方式的内容流系统的视图。
如图29中所示,应用本公开的实施方式的内容流系统可以主要包括编码服务器、流服务器、网络服务器、媒体存储装置、用户装置和多媒体输入装置。
编码服务器将从诸如智能电话、相机、摄像机等多媒体输入装置输入的内容压缩成数字数据以生成比特流并将该比特流发送到流服务器。作为另一示例,当智能电话、相机、摄像机等多媒体输入装置直接生成比特流时,可以省略编码服务器。
比特流可以由应用本公开的实施方式的图像编码方法或图像编码设备产生,并且流服务器可以在发送或接收比特流的过程中暂时存储比特流。
流服务器基于用户通过网络服务器的请求将多媒体数据发送到用户装置,并且网络服务器用作向用户告知服务的媒介。当用户向网络服务器请求所需的服务时,网络服务器可以将其递送到流服务器,并且流服务器可以向用户发送多媒体数据。在这种情况下,内容流系统可以包括单独的控制服务器。在这种情况下,控制服务器用于控制内容流系统中的装置之间的命令/响应。
流服务器可以从媒体存储装置和/或编码服务器接收内容。例如,当从编码服务器接收内容时,可以实时接收内容。在这种情况下,为了提供平滑的流服务,流服务器可以在预定时间内存储比特流。
用户装置的示例可以包括移动电话、智能电话、膝上型计算机、数字广播终端、个人数字助理(PDA)、便携式多媒体播放器(PMP)、导航设备、石板PC、平板PC、超级本、可穿戴装置(例如,智能手表、智能眼镜、头戴式显示器)、数字电视、台式计算机、数字标牌等。
内容流系统中的各个服务器可以作为分布式服务器运行,在这种情况下,从各个服务器接收的数据可以被分布。
本公开的范围包括用于使根据各种实施方式的方法的操作能够在设备或计算机上执行的软件或机器可执行命令(例如,操作系统、应用、固件、程序等)、具有存储在其上并且可在设备或计算机上执行的此类软件或命令的非暂时性计算机可读介质。
工业实用性
本公开的实施方式可以被用于对图像进行编码或解码。

Claims (15)

1.一种由图像解码设备执行的图像解码方法,该图像解码方法包括以下步骤:
推导指定是否对当前块执行加权预测的第一标志以及对所述当前块的具有CU级别权重的双预测BCW的权重索引BcwIdx;
基于所述第一标志和BcwIdx来确定对所述当前块执行默认加权预测还是明确加权预测;以及
通过执行所确定的方法来生成所述当前块的预测块。
2.根据权利要求1所述的图像解码方法,其中,所述第一标志是基于所述当前块所属的当前切片的切片类型来不同地确定的。
3.根据权利要求2所述的图像解码方法,
其中,基于所述当前切片的所述切片类型是P切片,所述第一标志被推导为在画面参数集PPS用信号通知的pps_weighted_pred_flag的值,并且
其中,基于所述当前切片的所述切片类型是B切片,所述第一标志被推导为在所述PPS用信号通知的pps_weighted_bipred_flag的值。
4.根据权利要求1所述的图像解码方法,
其中,基于通过比特流用信号通知的语法元素bcw_idx来推导BcwIdx,并且
其中,基于所述比特流中不存在bcw_idx,BcwIdx被推导为0。
5.根据权利要求4所述的图像解码方法,其中,基于所述当前块的参考画面的加权预测标志从所述比特流解析bcw_idx。
6.根据权利要求4所述的图像解码方法,其中,基于所述当前块的参考画面的所有加权预测标志为0,从所述比特流解析bcw_idx。
7.根据权利要求1所述的图像解码方法,其中,基于所述第一标志为0或BcwIdx不为0,对所述当前块执行默认加权预测。
8.根据权利要求1所述的图像解码方法,其中,基于所述第一标志为1或BcwIdx为0,对所述当前块执行明确加权预测。
9.根据权利要求1所述的图像解码方法,其中,所述默认加权预测基于BcwIdx执行BCW或平均和。
10.根据权利要求9所述的图像解码方法,其中,基于BcwIdx为0,对所述当前块执行平均和,并且基于BcwIdx不为0,对所述当前块执行BCW。
11.根据权利要求1所述的图像解码方法,其中,基于所述当前块的参考画面的加权参数(权重和偏移)来执行所述明确加权预测。
12.根据权利要求11所述的图像解码方法,其中,通过比特流明确地用信号通知所述加权参数。
13.一种图像解码设备,该图像解码设备包括:
存储器;以及
至少一个处理器,
其中,所述至少一个处理器被配置为:
推导指定是否对当前块执行加权预测的第一标志以及对所述当前块的具有CU级别权重的双预测BCW的权重索引BcwIdx;
基于所述第一标志和BcwIdx来确定对所述当前块执行默认加权预测还是明确加权预测;并且
通过执行所确定的方法来生成所述当前块的预测块。
14.一种由图像编码设备执行的图像编码方法,该图像编码方法包括以下步骤:
确定指定是否对当前块执行加权预测的第一标志以及对所述当前块的具有CU级别权重的双预测BCW的权重索引BcwIdx;
基于所述第一标志和BcwIdx来确定对所述当前块执行默认加权预测还是明确加权预测;以及
通过执行所确定的方法来生成所述当前块的预测块。
15.一种发送通过根据权利要求14所述的图像编码方法生成的比特流的方法。
CN202080068734.7A 2019-08-22 2020-08-20 用于执行加权预测的图像编码/解码方法和装置及发送比特流的方法 Pending CN114503563A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962890573P 2019-08-22 2019-08-22
US62/890,573 2019-08-22
PCT/KR2020/011103 WO2021034123A1 (ko) 2019-08-22 2020-08-20 가중 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법

Publications (1)

Publication Number Publication Date
CN114503563A true CN114503563A (zh) 2022-05-13

Family

ID=74659742

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080068734.7A Pending CN114503563A (zh) 2019-08-22 2020-08-20 用于执行加权预测的图像编码/解码方法和装置及发送比特流的方法

Country Status (8)

Country Link
US (2) US11792419B2 (zh)
EP (1) EP4020992A4 (zh)
JP (2) JP2022544844A (zh)
KR (3) KR102679376B1 (zh)
CN (1) CN114503563A (zh)
AU (2) AU2020332224C1 (zh)
MX (1) MX2022002207A (zh)
WO (1) WO2021034123A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7004835B2 (ja) * 2018-09-14 2022-01-21 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 符号化装置、復号装置、符号化方法、および復号方法
CN113228681A (zh) * 2018-12-21 2021-08-06 韩国电子通信研究院 图像编码/解码方法和装置以及存储比特流的记录介质
US12063352B2 (en) * 2019-06-28 2024-08-13 Sk Telecom Co., Ltd. Method for deriving bidirectional prediction weight index and video decoding apparatus
KR102679376B1 (ko) 2019-08-22 2024-06-27 엘지전자 주식회사 가중 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
EP4018667A4 (en) * 2019-08-23 2023-07-05 Beijing Dajia Internet Information Technology Co., Ltd. METHODS AND APPARATUS FOR PREDICTION REFINEMENT WITH OPTICAL FLOW
KR20230026550A (ko) * 2019-09-17 2023-02-24 베이징 다지아 인터넷 인포메이션 테크놀로지 컴퍼니 리미티드 광학 흐름을 사용한 예측 미세조정을 위한 방법 및 장치
WO2021167757A1 (en) * 2020-02-19 2021-08-26 Bytedance Inc. Inferencing weight values for video components in a bitstream
US20230171405A1 (en) * 2021-11-30 2023-06-01 Tencent America LLC Scene transition detection based encoding methods for bcw

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9503720B2 (en) * 2012-03-16 2016-11-22 Qualcomm Incorporated Motion vector coding and bi-prediction in HEVC and its extensions
US10021419B2 (en) * 2013-07-12 2018-07-10 Qualcomm Incorported Rice parameter initialization for coefficient level coding in video coding process
EP3456049B1 (en) * 2016-05-13 2022-05-04 VID SCALE, Inc. Systems and methods for generalized multi-hypothesis prediction for video coding
US20180332298A1 (en) * 2017-05-10 2018-11-15 Futurewei Technologies, Inc. Bidirectional Prediction In Video Compression
US10904565B2 (en) 2017-06-23 2021-01-26 Qualcomm Incorporated Memory-bandwidth-efficient design for bi-directional optical flow (BIO)
CN118200534A (zh) * 2018-09-21 2024-06-14 夏普株式会社 图像解码装置
US11039150B2 (en) * 2019-04-19 2021-06-15 Tencent America LLC Method and apparatus for video coding
EP4221225B1 (en) * 2019-05-15 2024-05-29 Huawei Technologies Co., Ltd. Handling of bi-directional optical flow (bio) coding tool for reference picture resampling in video coding
US11223840B2 (en) * 2019-08-19 2022-01-11 Tencent America LLC Method and apparatus for video coding
KR102679376B1 (ko) 2019-08-22 2024-06-27 엘지전자 주식회사 가중 예측을 수행하는 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법

Also Published As

Publication number Publication date
AU2020332224C1 (en) 2024-05-30
MX2022002207A (es) 2022-04-07
KR102614946B1 (ko) 2023-12-15
WO2021034123A1 (ko) 2021-02-25
AU2024200767A1 (en) 2024-02-29
US20220239937A1 (en) 2022-07-28
KR102679376B1 (ko) 2024-06-27
AU2020332224B2 (en) 2023-12-14
KR20240104203A (ko) 2024-07-04
AU2020332224A1 (en) 2022-03-24
KR20230173226A (ko) 2023-12-26
JP2024040349A (ja) 2024-03-25
US11792419B2 (en) 2023-10-17
EP4020992A1 (en) 2022-06-29
JP2022544844A (ja) 2022-10-21
EP4020992A4 (en) 2023-06-21
US20230412830A1 (en) 2023-12-21
KR20220036962A (ko) 2022-03-23

Similar Documents

Publication Publication Date Title
AU2020332224B2 (en) Image encoding/decoding method and device for performing weighted prediction, and method for transmitting bitstream
CN114503564A (zh) 使用运动信息候选的视频编码/解码方法和设备及发送比特流的方法
US11917157B2 (en) Image encoding/decoding method and device for performing PROF, and method for transmitting bitstream
JP7531592B2 (ja) マージ候補の最大個数情報を含むシーケンスパラメータセットを用いた画像符号化/復号化方法及び装置、並びにビットストリームを伝送する方法
CN114342376B (zh) 用于推导合并候选的双向预测的权重索引的视频编码/解码方法和装置以及发送比特流的方法
JP2023165944A (ja) 同一位置ピクチャに関する情報を含むピクチャヘッダーに基づく画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
CN114450943A (zh) 用于基于子画面的图像编码/解码的方法和装置及发送比特流的方法
US11589053B2 (en) Image encoding/decoding method and device for performing PROF, and method for transmitting bitstream
US20220191535A1 (en) Image encoding/decoding method and apparatus for performing bi-directional prediction, and method for transmitting bitstream
CN114365485A (zh) 用于执行bdof的图像编码/解码方法和装置及用于发送比特流的方法
KR102634643B1 (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