CN117501693A - 用于帧间预测的重叠块运动补偿的方法和设备 - Google Patents

用于帧间预测的重叠块运动补偿的方法和设备 Download PDF

Info

Publication number
CN117501693A
CN117501693A CN202280037933.0A CN202280037933A CN117501693A CN 117501693 A CN117501693 A CN 117501693A CN 202280037933 A CN202280037933 A CN 202280037933A CN 117501693 A CN117501693 A CN 117501693A
Authority
CN
China
Prior art keywords
block
obmc
chroma
blocks
encoded
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
CN202280037933.0A
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.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
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 Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Publication of CN117501693A publication Critical patent/CN117501693A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding 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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/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/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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • 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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
    • 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/583Motion compensation with overlapping blocks
    • 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/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

提供了用于视频解码的方法和设备。该方法可以包括:获得视频帧内的多个编码块,其中多个编码块可以包括至少一个色度编码块和多个亮度编码块。进一步,该方法可以包括:响应于确定局部色度树分割被应用到多个编码块,确定是否将OBMC应用到至少一个色度编码块和多个亮度编码块以生成用于视频帧的预测样点。

Description

用于帧间预测的重叠块运动补偿的方法和设备
相关申请的交叉引用
本申请基于2021年5月24日提交的临时申请No.63/192,422并且要求该临时申请的优先权,出于所有目的,该临时申请的全部内容通过引用合并于此。
技术领域
本公开涉及视频编解码(coding)和压缩,具体地但不限于,用于帧间预测的重叠块运动补偿(OBMC)的方法和装置。
背景技术
各种不同的视频编解码技术可以用来压缩视频数据。视频编解码是依照一种或多种视频编解码标准来进行的。例如,如今,一些知名的视频编解码标准包括由ISO/IEC MPEG和ITU-T VECG联合开发的通用视频编解码(VVC)、高效视频编解码(HEVC,也称为H.265或者MPEG-H第2部分)和高级视频编解码(AVC,也称为H.264或MPEG-4第10部分)。AOMedia视频1(AV1)由开放媒体联盟(AOM)开发,作为其之前的标准VP9的续版。涉及数字音频和数字视频压缩标准的音视频编解码(AVS)是由中国音视频编解码标准工作组开发的另一种视频压缩标准。大多数现有的视频编解码标准建立在著名的混合视频编解码框架之上,即,使用基于块的预测方法(例如帧间预测、帧内预测)以降低视频图像或序列中存在的冗余,并且使用变换编解码以压缩预测误差的能量。视频编解码技术的一个重要目的是将视频数据压缩成使用较低的比特率同时避免或者最小化视频质量的下降的形式。
发明内容
本公开提供了涉及提高编解码效率和简化OBMC的复杂度的技术示例。
依照本公开的第一方面,提供了一种用于视频解码的方法。该方法可以包括:获得视频帧内的多个编码块,其中该多个编码块可以包括至少一个色度编码块和多个亮度编码块。该方法可以包括:响应于确定局部色度树分割被应用到该多个编码块,确定是否将OBMC应用到该至少一个色度编码块和该多个亮度编码块以生成用于视频帧的预测样点。
依照本公开的第二方面,提供了一种用于视频解码的装置。该装置可以包括:一个或多个处理器以及存储器,该存储器被配置为存储能够由该一个或多个处理器执行的指令。进一步,当执行指令时,该一个或多个处理器被配置为执行动作,这些动作包括:获得视频帧内的多个编码块,其中该多个编码块可以包括至少一个色度编码块和多个亮度编码块;以及响应于确定局部色度树分割被应用到该多个编码块,确定是否将OBMC应用到该至少一个色度编码块和该多个亮度编码块以生成用于视频帧的预测样点。
依照本公开的第三方面,提供了一种存储计算机可执行指令的非暂时性计算机可读存储介质。当被一个或多个计算机处理器执行时,这些计算机可执行指令可以使得该一个或多个计算机处理器执行动作,这些动作包括:获得视频帧内的多个编码块,其中该多个编码块可以包括至少一个色度编码块和多个亮度编码块;以及响应于确定局部色度树分割被应用到该多个编码块,确定是否将OBMC应用到该至少一个色度编码块和该多个亮度编码块以生成用于视频帧的预测样点。
附图说明
通过参考附图中图示出的特定示例,将呈现本公开的示例的更具体的描述。考虑到这些附图仅仅描绘了一些示例并且因此不被认为限制了范围,这些示例将通过使用这些附图以附加的具体性和细节加以描述和解释。
图1为依照本公开一些实现方式的图示出一种基于块的视频编码器的框图。
图2A为依照本公开一些实现方式的图示出四元分割树拆分模式的示意图。
图2B为依照本公开一些实现方式的图示出垂直二元分割树拆分模式的示意图。
图2C为依照本公开一些实现方式的图示出水平二元分割树拆分模式的示意图。
图2D为依照本公开一些实现方式的图示出垂直三元分割树拆分模式的示意图。
图2E为依照本公开一些实现方式的图示出水平三元分割树拆分模式的示意图。
图3为依照本公开一些实现方式的图示出一种基于块的视频解码器的框图。
图4图示出依照本公开一些实现方式的基于子块的时间运动矢量预测(SbTMVP)的子块级别运动推导的示意图。
图5图示出依照本公开一些实现方式的四参数仿射模型的示意图。
图6图示出依照本公开一些实现方式的六参数仿射模型的示意图。
图7A图示出依照本公开一些实现方式的左下方向上的运动矢量角度预测(MVAP)模式的示意图。
图7B图示出依照本公开一些实现方式的左边方向上的MVAP模式的示意图。
图7C图示出依照本公开一些实现方式的左上方向上的MVAP模式的示意图。
图7D图示出依照本公开一些实现方式的上边方向上的MVAP模式的示意图。
图7E图示出依照本公开一些实现方式的右上方向上的MVAP模式的示意图。
图8图示出依照本公开一些实现方式的用于在没有子块运动补偿的情况下被编解码的CU的OBMC过程的示意图。
图9图示出依照本公开一些实现方式的用于通过子块模式被编解码的CU的OBMC过程的示意图。
图10图示出依照本公开一个或多个方面的允许的GPM分区的示意图。
图11A图示出依照本公开一些实现方式的使用顶部邻居的MV的OBMC方案的示意图。
图11B图示出依照本公开一些实现方式的使用左边邻居的MV的OBMC方案的示意图。
图12图示出依照本公开一些实现方式的当针对SbTMVP和MVAP的子块边界禁用OBMC时的OBMC过程的流程图,图示出使用顶部邻居的MV的OBMC方案的示意图。
图13图示出依照本公开一些实现方式的将OBMC和ASP联合应用到一个仿射CU。
图14A图示出依照本公开一些实现方式的将OBMC应用到亮度和色度样点二者。
图14B图示出依照本公开一些实现方式的将OBMC仅仅应用到亮度样点。
图14C图示出依照本公开一些实现方式的针对亮度和色度样点二者都禁用OBMC。
图15图示出依照本公开一些实现方式的图示出一种用于视频解码的装置的框图。
图16图示出依照本公开一些实现方式的图示出一种用于视频解码的过程的流程图。
具体实施方式
现在,将详细地参考特定的实现方式,其示例在附图中图示出。在以下详细描述中,阐明了许多非限制性的特定细节以便帮助理解本文给出的主题。但是,本领域普通技术人员将清楚明白的是,可以使用各种不同的替代方案。例如,本领域普通技术人员将清楚明白的是,本文给出的主题可以在具有数字视频能力的许多类型的电子设备上实现。
贯穿整个本说明书,对于“一个实施例”、“一实施例”、“一示例”、“一些实施例”、“一些示例”或者类似语言的引用意味着所描述的具体的特征、结构或特性包括在至少一个实施例或示例中。除非另有明确说明,关于一个或一些实施例描述的特征、结构、元素或特性也可适用于其他实施例。
在整个本公开中,除非另有明确说明,术语“第一”、“第二”、“第三”等等全部用作仅仅用于对有关元素,例如设备、部件、组成、步骤等的引用的命名,并不暗示任何空间或时间顺序。例如,“第一设备”和“第二设备”可以指两个单独形成的设备,或者同一设备的两个部分、部件或操作状态,并且可以任意命名。
术语“模块”、“子模块”、“电路”、“子电路”、“电路系统”、“子电路系统”、“单元”或“子单元”可以包括存储可以被一个或多个处理器执行的代码或指令的存储器(共享的、专用的或者群组)。模块可以包括具有或者没有存储的代码或指令的一个或多个电路。该模块或电路可以包括直接或间接连接的一个或多个部件。这些部件可以或者可以不彼此物理附接或者彼此邻近。
当在本文中使用时,术语“如果”或者“当……时”取决于上下文可以被理解为表示“一……就”或者“响应于”。如果出现在权利要求中,这些术语可以不指示有关的限制或特征是有条件的或者可选的。例如,一种方法可以包括以下步骤:i)当条件X存在时或者如果条件X存在,执行功能或动作X’,以及ii)当条件Y存在时或者如果条件Y存在,执行功能或动作Y’。该方法可以被实现为具有执行功能或动作X’的能力和执行功能或动作Y’的能力二者。这样,功能X’和Y’二者都可以在该方法的多次执行中在不同的时间被执行。
单元或模块可以纯粹通过软件、纯粹通过硬件或者通过硬件和软件的组合实现。在一种纯软件实现方式中,例如,单元或模块可以包括直接或间接链接在一起以便执行具体功能的功能上相关的代码块或软件组件。
HEVC标准的第一版于2013年10月定稿,其与上一代视频编解码标准H.264/MPEGAVC相比提供了大约50%的比特率节省或者同等的感知质量。尽管HEVC标准与其以前的标准相比提供了显著的编解码改进,但是有证据表明,利用附加的编解码工具可以实现相对于HEVC更优越的编解码效率。基于此,VCEG和MPEG都启动了用于未来视频编解码标准化的新编解码技术的探索工作。一个联合视频探索团队(JVET)于2015年10月由ITU-T VECG和ISO/IEC MPEG成立,以开始对能够实现编解码效率的大幅提高的先进技术进行重大研究。JVET通过在HEVC测试模型(HM)之上集成几个额外的编解码工具而主张一种称为联合探索模型(JEM)的参考软件。
ITU-T和ISO/IEC发布了关于具有超越HEVC的能力的视频压缩的联合提案征集(CfP)。2018年4月,在第10届JVET会议上,收到并评估了23份CfP响应,其展现出比HEVC高约40%的压缩效率增益。基于这样的评估结果,JVET启动了一个新项目来开发新一代视频编解码标准,该标准被命名为通用视频编解码(VVC)。同月,建立了一个称为VVC测试模型(VTM)的参考软件代码库,用于展现VVC标准的参考实现方式。
第一代AVS标准包括中国国家标准“信息技术,高级音视频编解码,第2部分:视频”(称为AVS1)和“信息技术,高级音视频编解码第16部分:广播电视视频”(称为AVS+)。与MPEG-2标准相比,它可以在相同的感知质量下提供大约50%的比特率节省。AVS1标准视频部分于2006年2月颁布为中国国家标准。第二代AVS标准包括中国国家标准系列“信息技术,高效多媒体编解码”(称为AVS2),其主要针对额外高清晰度电视节目的传输。AVS2的编解码效率是AVS+的两倍。2016年5月,AVS2作为中国国家标准发布。同时,AVS2标准视频部分由电气和电子工程师协会(IEEE)作为一种国际应用标准提交。AVS3标准是一种用于UHD视频应用的新一代视频编解码标准,旨在超越最新国际标准HEVC的编解码效率。2019年3月,在第68次AVS会议上,AVS3-P2基线已完成,其相对于HEVC标准提供了大约30%的比特率节省。目前,存在一种称为高性能模型(HPM)的参考软件,由AVS组维护以演示AVS3标准的一种参考实现方式。
像诸如HEVC之类的在先标准一样,VVC和AVS3二者都建立在基于块的混合视频编解码框架之上。图1为依照本公开一些实现方式的图示出一种基于块的视频编码器的框图。输入视频信号被逐块(称为编码单元(CU))处理。一个CU可以高达128x128像素。然而,不同于仅仅基于四叉树来分割块的HEVC的是,在VVC中,一个编码树单元(CTU)基于四叉/二叉/三叉树被拆分成若干CU以适应变化的局部特性。此外,HEVC中的多分区单元类型的概念被去除,即,VVC中不再存在CU、预测单元(PU)和变换单元(TU)的分离;取而代之地,每个CU总是用作预测和变换二者的基本单元,没有进一步的分区。在多类型树结构中,一个CTU首先被四叉树结构分割。然后,每个四叉树叶节点可以进一步被二叉和三叉树结构分割。
如图2A-2E所示,存在五种拆分类型,即四元分割、水平二元分割、垂直二元分割、水平三元分割和垂直三元分割。在图1中,可以(例如经由运动补偿101、运动估计102、帧内/帧间模式决策103、帧内预测104)执行空间预测和/或时间预测。空间预测(或者“帧内预测”)使用来自相同视频图片/条带中的已经编码的相邻块的样点(称为参考样点)的像素预测当前视频块。空间预测降低了视频信号中固有的空间冗余。时间预测(也称为“帧间预测”或者“经过运动补偿的预测”)使用来自已经编码的视频图片的重建像素来预测当前视频块。时间预测降低了视频信号中固有的时间冗余。用于给定CU的时间预测信号通常由一个或多个运动矢量(MV)发出信号,所述MV指示当前CU与其时间参考之间的运动的量和方向。再者,如果支持多幅参考图片,那么附加地发送一个参考图片索引,其用来标识时间预测信号来自参考图片存储库(例如存储器105、图片缓冲器106)中的哪幅参考图片。在空间和/或时间预测之后,编码器中的模式决策块(例如帧内/帧间模式决策103)例如基于率失真优化方法选取最佳的预测模式。接着,从当前视频块中减去预测块;并且(例如经由变换108、量化109)使用变换和量化对预测残差去相关。量化的残差系数经反量化和逆变换以形成重建的残差(例如经由反量化111、逆变换112),其随后加回到预测块以形成CU的重建信号。进一步,在将重建的CU置于参考图片存储库中并用于对未来的视频块编码之前,可以对其应用诸如去块滤波器、样点自适应偏移(SAO)和自适应环路滤波器(ALF)之类的环路滤波(例如环路滤波器107)。为了形成输出视频比特流,将编码模式(帧间或帧内)、预测模式信息、运动信息和量化残差系数全部发送到熵编码单元(例如熵编码110),以便进一步压缩和打包以形成比特流。
图3为依照本公开一些实现方式的图示出一种基于块的视频解码器的框图。首先,在熵解码单元(例如熵解码301)处对视频比特流进行熵解码。将编码模式和预测信息发送至空间预测单元(如果进行了帧内编码)(例如帧内预测308)或者时间预测单元(如果进行了帧间编码)(例如运动补偿307)以形成预测块。将残差变换系数发送至反量化单元(例如反量化302)和逆变换单元(例如逆变换303)以重建残差块。接着,将预测块和残差块相加到一起(例如通过帧内/帧间模式选择309和/或存储在存储器304中)。所述重建的块在其存储到参考图片存储库(例如图片缓冲器306)中之前可以进一步经过环路滤波。接着,参考图片存储库中的重建视频被发送出去以驱动显示设备,以及用来预测未来的视频块。
通常,除了若干模块被进一步扩展和/或增强之外,VVC和AVS3中应用的基本帧间预测技术保持与HEVC的相同。例如,基于块匹配的运动补偿(MC)仍然用作VVC帧间编解码框架的主干,其中一个编码块在该编码块被单向预测时只能与一个单一MV关联,或者在该编码块被双向预测时可以与两个MV关联。尽管基于块的MC处理均匀平移运动是高效的,但是由于照相机的复杂运动和运动对象的不规则性的原因,它仍然不足以捕捉时间域中图片之间的真实相关性。相应地,这样的不精确运动经常导致重建视频信号的块伪影。OBMC是一种方法,其被证明是一种克服了常规的基于块的MC的缺点的高效方法。OBMC的基本思想是使用来自相邻块的MV对当前块执行运动补偿,并且使用相邻MV组合多个预测信号以生成当前块的最终预测信号。这可以大大降低预测误差并且减轻预测阶段的块伪影。本公开的主要焦点是进一步提高现有OBMC模式的编解码效率。此外,还提出一些方法来降低OBMC计算复杂度并且使得它对于实际的硬件实现更为友好。为了便于下文的描述,简要地回顾一下与本公开中所提出的技术密切相关的当前VVC和AVS标准中的一些现有编解码工具的主要技术方面。
基于子块的运动补偿
在HEVC及其前驱中,每个编码块最多具有一个MV用于一个预测方向。相对比而言,在VVC和AVS3二者中都采用了若干子块级别运动补偿技术以通过增大MV推导的粒度而提高运动补偿效率。具体地,当应用那些子块模式中的任何一种时,一个编码块被进一步拆分成多个小子块,并且用于每个子块的运动信息(即MV和关联参考图片)单独地被导出。然后,子块运动信息被用来在运动补偿阶段生成每个子块(以及最终所述块)的预测信号。在下文中,概述了VVC和AVS3中采用的一些主要的子块帧间编码模式。
基于子块的时间运动矢量预测
VVC支持基于子块的时间运动矢量预测(SbTMVP)方法。类似于HEVC中的时间运动矢量预测(TMVP),SbTMVP使用同位图片中的运动场来提高当前图片中的帧间CU的MV精度。
图4中图示出SbTMVP模式的子块级别运动推导。具体地,SbTMVP通过两个步骤预测当前CU内部的子块的MV。在第一步骤中,首先,从当前块的空间相邻块的运动信息中标识用来取回子块的运动的同位块。具体地,在当前ATMVP设计中,考虑了图4中的空间邻居A1。如果A1拥有一个MV(L0或L1),其使用同位图片(它在比特流中被用信号发送)作为其参考图片,则选择块A1的相应MV以标识同位图片中的同位块。同位图片中的同位块的位点(location)通过将块A1的MV与当前块的坐标相加而确定。在第二步骤中,对于当前块中的每个子块,从它在同位块中的相应小块中导出其运动信息。具体地,在标识了同位块中的每个小块的运动信息(如箭头401、411所指示的)之后,以与其中可以应用时间运动矢量缩放的HEVC中的现有时间运动矢量预测(TMVP)相同的方式将它转换成当前块中的相应子块的运动信息(如箭头402、412所指示的)。
在AVS3标准中,一种称为增强时间运动矢量预测(ETMVP)的类似工具也被采用,其遵循SbTMVP的相同设计精神,但是在某些设计细节方面具有微小的差异。
仿射模式
在常规的MC技术中,只有平移运动模型被应用于运动补偿预测。而在真实世界中,存在许多种类的运动,例如放大/缩小、旋转、透视运动和其他不规则运动。在VVC和AVS3标准中,通过以下方式来应用仿射运动补偿预测:对于每个帧间CU用信号发送一个标志,以指示是平移运动模型还是仿射运动模型被应用于帧间预测。在当前的仿射设计中,对于一个仿射编码块支持两种仿射模式,包括四参数仿射模式和六参数仿射模式。
四参数仿射模型具有以下参数:分别用于水平和垂直方向上的平移运动的两个参数,用于缩放运动的一个参数,以及用于两个方向上的旋转运动的一个参数。水平缩放参数等于垂直缩放参数。水平旋转参数等于垂直旋转参数。为了实现更好地调和运动矢量和仿射参数,将那些仿射参数转化成位于当前块的左上角和右上角的两个MV(这两个MV也称为控制点运动矢量(CPMV))。图5图示出依照本公开一些实现方式的四参数仿射模型的示意图。如图5所示,块的仿射运动场通过两个控制点MV(V0,V1)来描述。基于控制点运动,一个仿射编码块的运动场(vx,vy)被描述为:
六参数仿射模式具有以下参数:分别用于水平和垂直方向上的平移运动的两个参数,用于水平方向上的缩放运动的一个参数和用于水平方向上的旋转运动的一个参数,用于垂直方向上的缩放运动的一个参数和用于垂直方向上的旋转运动的一个参数。六参数仿射运动模型利用三个CPMV处的三个MV而被编解码。如图6所示,一个六参数仿射块的三个控制点位于块的左上角、右上角和左下角。左上控制点处的运动与平移运动有关,右上控制点处的运动与水平方向上的旋转和缩放运动有关,并且左下控制点处的运动与垂直方向上的旋转和缩放运动有关。与四参数仿射运动模型相比,六参数的水平方向上的旋转和缩放运动可以与垂直方向上的那些运动不相同。假设(V0,V1,V2)为图6中的当前块的左上角、右上角和左下角的MV,每个子块的运动矢量(vx,vy)使用控制点处的三个MV被导出为:
为了简化仿射预测的计算复杂度,应用基于子块的MC以导出仿射模式的预测样点。具体地,给定仿射CU的选定CPMV,CU内部每个4x4子块的MV基于式(1)和(2)使用该子块的中心作为目标坐标(即(1)和(2)中的x和y)而导出。假设子块内的所有样点都共享相同的MV;相应地,计算的MV将被用来使用现有的运动补偿插值滤波(MC-IF)过程生成子块的预测样点。
仿射二次预测
(如控制点运动矢量所指示的)仿射模型可以被用来导出一个仿射CU内的每个样点位置处的一个特定的运动。然而,这需要大量的计算和存储器带宽消耗,这二者对于硬件/软件编解码器实现都是非常昂贵的。因此,在VVC和AVS两种标准中,一种基于子块的MC方法被应用于仿射模式,其中首先将一个仿射CU划分成8x8/4x4子块,并且子块内的样点被分配一个相同的MV,该MV在子块的中心处被导出。显然,考虑到导出的子块级别MV不能反映一个仿射CU内部每个样点位置处的真实仿射运动,这样的设计可能导致预测效率的不可忽视的损失。为了进一步提高仿射预测的质量,一种称为仿射二次预测(ASP)的方法被应用来在仿射模式的现有预测样点之上提供逐样点预测细化。具体地,该方法在从基于子块的运动补偿中生成的预测样点之上应用一个3x3滤波器。此外,每个样点位置处应用的滤波器系数基于每个样点位置处计算的真实MV与样点所在的子块的MV之间的MV差异而被导出。具体地,ASP模式的预测样点通过以下步骤而被导出:
1)基于子块的MC:基于子块的仿射运动补偿被执行来在每个样点位点(i,j)处生成预测样点I(i,j)。
2)MV差异计算:在每个样点位点(i,j)处将一个MV差异Δv(i,j)计算为:
Δvx(i,j)=c*Δx+d*Δy
Δvy(i,j)=e*Δx+f*Δy
其中c、d、e和f为基于四/六参数仿射模型导出的参数,Δx和Δy为从样点位点(i,j)到用来计算用于包含该样点位点(i,j)的子块的子块MC的MV的相应样点位点的水平和垂直偏移。具体地,基于当前CU内的子块的位置,Δx和Δy的值如下导出:
·对于左上子块,Δx=i,Δy=j。
·对于右上子块,Δx=(i-subwidth+1),Δy=j。
·对于左下子块,当应用六参数仿射模型时,Δx=i,Δt=(j-subheight+1);并且当应用四参数仿射模型时,Δx=(i-(subwidth>>1)-0.5),Δy=(j-(subheight>>1)-0.5)。
·对于其他子块,Δx=(i-(subwidth>>1)-0.5),Δy=(j-(subheight>>1)-0.5)。
3)二次预测滤波:首先,将变量和/>计算为:
然后,通过依照以下条件应用附加的滤波操作而进一步调节基于子块的MC的预测样点:
a.如果并且/>
-Δvx-Δvy -(Δvy<<3) Δvx-Δvy
-(Δvx<<3) 16 Δvx<<3
-Δvx+Δvy Δvy<<3 Δvx+Δvy
b.否则,如果并且/>
-Δvx 2 Δvx
c.否则,如果并且/>
-Δvy
2
Δvy
其中threshvx和threshvy为预定义常量阈值。此外,当用于滤波操作的预测样点的位置处于当前CU的边界外部时,它们通过将CU边界上的预测样点扩展到扩展区域而被填充。
运动矢量角度预测
为了进一步提高帧间预测效率,在AVS3中应用了另一种称为运动矢量角度预测(MVAP)的子块运动预测模式。类似于SbTMVP和仿射模式,MVAP在子块级别上进行运动补偿预测,其中每个子块的MV从当前CU的相邻重建块的相应MV中生成。图7A-7E分别图示出依照本公开一些实现方式的左下方向、左边方向、左上方向、上边方向和右上方向上的运动矢量角度预测(MVAP)模式的示意图。如图7A-7E所示,一个MVAP CU内部的子块的MV依照一个特定的投影方向从相邻MV投影到当前CU的顶部和左边边界上。在当前MVAP设计中,总共存在5个不同的MV预测方向,包括左下、左边、左上、上边和右上。对于每个特定的预测方向,如下计算每个子块的相应MV:
1)左下方向:
pMV[x][u]=refMV[-1][x+y+1] (3)
2)左边方向:
pMV[x][y]=refMV[-1][y] (4)
3)左上方向:
4)上边方向:
pMV[x][y]=refMV[x][-1] (6)
5)右上方向:
pMV[x][y]=refMV[x+y+1][-1] (7)
其中refMV表示相邻块的MV,并且pMV表示当前CU内部的子块的MV;x和y表示当前CU的左上角作为原点的情况下一个子块的坐标。
此外,在一个相邻MV不可用(例如相邻子块无效或者被帧内模式编解码)的情况下,相应MV通过将最近邻居的可用MV复制到该子块而生成。
重叠块运动补偿
OBMC在JEM中被应用来去除MC阶段的块伪影。如前面所说明的,OBMC的基本思想是使用来自相邻块的MV对当前块执行运动补偿,并且使用相邻MV组合多个预测信号以生成CU的最终预测信号。在JEM中,针对当前CU的顶部和左边边界执行OBMC。此外,当以一种子块模式对一个视频块进行编解码时,还在每个子块的所有内边界(即顶部、左边、底部和右边边界)上执行OBMC。图8图示出在没有子块级别运动补偿的情况下被应用到CU的OBMC过程。如图8所示,B1至B7分别为当前CU的顶部和左边边界上的子块,并且N1至N8为当前CU上方和左边的因果相邻子块。当将OBMC应用到一个子块(例如图9中的子块A)时,除了一个子块的左边和顶部邻居之外,当前子块的右边和底部的相邻子块的MV也用来导出预测信号;然后,对四个预测块进行平均以生成当前子块的最终预测信号。
图9图示出依照本公开一些实现方式的用于通过子块模式被编解码的CU的OBMC过程的示意图。如图9所示,OBMC使用来自所有四个相邻块(例如阴影子CU块a、b、c、d)的MV而被应用到所有子CU块(例如子CU块A)。
加权平均被用于OBMC中,以生成一个子块的预测信号。将使用一个相邻子块的运动矢量的预测信号表示为PN,并且将使用当前子块的运动矢量的预测信号表示为PC。当应用OBMC时,PN的前/后四行/列的样点与PC中的相同位置处的样点进行加权平均。对其应用加权平均的样点基于相应相邻子块的位点而被确定。具体地,当相邻子块是顶部邻居(例如图9中的子块b)时,调节当前子块的前四行的样点;当相邻子块是底部邻居(例如图9中的子块d)时,调节当前子块的后四行的样点;当相邻子块是左边邻居(例如图9中的子块a)时,调节当前块的前四列的样点;当相邻子块是右边邻居时,调节当前子块的后四列的样点。当不以子块模式对当前块进行编解码时,加权因子{1/4,1/8,1/16,1/32}用于PN的前四行/列,并且加权因子{3/4,7/8,15/16,31/32}用于PC的前四行/列。当以子块模式对当前块进行编解码时,那么仅仅对PN和PC的前两行/列进行平均。在这种情况下,加权因子{1/4,1/8}用于PN,并且加权因子{3/4,7/8}用于PC。
几何分割模式
在VVC中,针对帧间预测支持几何分割模式。几何分割模式通过一个CU级别标志作为一种特殊合并模式而被用信号发送。在当前的GPM设计中,GPM模式对于宽度和高度都不小于8且不大于64,排除8x64和64x8的每个可能的CU尺寸支持总共64个分区。
当使用该模式时,通过如图10所示的几何定位直线将CU拆分成两部分。拆分线的定位在数学上从特定分区的角度和偏移参数导出。CU中的几何分区的每个部分使用其自身的运动进行帧间预测;对于每个分区只允许单向预测,即,每个部分具有一个运动矢量和一个参考索引。单向预测运动约束被应用来确保与常规的双向预测一样,对于每个CU只需两个运动补偿预测。如果几何分割模式用于当前CU,那么进一步用信号发送指示几何分区的分割模式的几何分区索引(角度和偏移)和两个合并索引(每个分区一个)。最大GPM候选尺寸的数量在序列级别下显式地用信号发送。在AVS3中,该工具也称为角度加权预测(AWP),其遵循GPM模式的类似设计,具有诸如不同拆分方向和偏移、生成单向预测MV的方式等等之类的一些微小差异。
帧间预测滤波器
为了进一步提高预测效率,在AVS3标准中应用了组合一个CU的基于合并模式的帧间预测和帧内预测的帧间预测滤波器(InterPF)。具体地,对于每个合并CU,用信号发送一个附加标志以指示是否对于当前CU启用InterPF模式。当该标志为假时,禁用InterPF,并且应用常规帧间预测以生成当前CU的预测样点;当第一标志为真时,将InterPF应用到当前CU,并且用信号发送另一个标志以进一步指示使用了两种InterPF模式中的哪一种模式。这两种InterPF模式描述如下:
InterPF模式1:将组合预测样点导出为帧间预测样点和来自左边、右边、上方、下方的五个相邻重建样点的加权平均:
Pred(x,y)=(Pred_inter(x,y)*5+Pred_Q(x,y)*3)>>3
Pred_Q(x,y)=(Pred_V(x,y)+Pred_H(x,y)+1)>>2 (8)
Pred_V(x,y)=((h-1-y)*Rec(x,-1)+(y+1)*Rec(-1,h)+(h>>1))>>log2(h)
Pred_H(x,y)=((w-1-x)*Rec(-1,y)+(x+1)*Rec(w,-1)+(w>>1))>>log2(w)
InterPF模式2:将组合预测样点导出为帧间预测样点和来自左边、上方的三个相邻重建样点的加权平均:
P′(x,y)=f(x)·P(-1,y)+f(y)·P(x,-1)+(1-f(x)-f(y))·P(x,y) (9)
在式(9)中,权重参数f(x)和f(y)被预定义为一个查找表(LUT),其基于当前CU的尺寸和帧内预测方向而被确定。
局部色度分割树
在实际的硬件编解码器设计中,由于相邻帧内块之间的样点处理数据依赖性的原因,当图片具有大量小的帧内块时,处理吞吐量变得更差。帧内块的预测器生成需要来自相邻块的顶部和左边边界重建样点。因此,帧内预测必须顺序地逐块处理。在HEVC中,最小的帧内CU为8x8亮度样点。最小帧内CU的亮度分量可以进一步被拆分成四个4x4亮度帧内预测单元,但是最小帧内CU的色度分量不能进一步被拆分。因此,当处理4x4色度帧内块或者4x4亮度帧内块时,出现最坏情况硬件处理吞吐量。
在VVC中,为了改进最坏情况吞吐量,引入局部色度分割树的概念以不允许出现小于16个色度样点的色度帧内编码块(尺寸2x2、4x2和2x4)以及宽度小于4个色度样点的色度帧内编解码(尺寸2xN)。具体地,在单一编码树中,将最小色度帧内预测单元(SCIPU)定义为这样的编码树节点——其色度块尺寸大于或等于16个色度样点并且具有小于64个亮度样点的至少一个子亮度块,或者定义为这样的编码树节点——其色度块尺寸不为2xN并且具有至少一个子亮度块4xN亮度样点。要求在每个SCIPU中,所有编码块或者为帧间的或者为非帧间的,即要么帧内要么帧内块复制(IBC)。在非帧间SCIPU的情况下,进一步要求非帧间SCIPU的色度不应当被进一步拆分,并且允许SCIPU的亮度被进一步拆分。通过这种方式,去除了尺寸小于16个色度样点或者尺寸为2xN的小色度帧内CB。此外,在非帧间SCIPU的情况下,不应用色度缩放。
在AVS中,类似的局部色度分割树的概念也被应用来不允许出现宽度或高度小于4个色度样点(即尺寸为2xN和Nx2)的色度编码块。具体地,对于包含至少一个亮度编码块的一个单一编码树(该亮度编码块包含4xN或者Nx4个亮度样点),则要求该编码树中的色度样点不应当被进一步拆分,而该编码树的亮度样点可以被进一步分割。
尽管现有的OBMC可以高效地减少运动补偿阶段的块伪影,但是其性能仍然可以提高。特别地,在当前设计中,其中应用周围块的MV以修改当前CU的预测样点的重叠区域是固定的。这样的设计对于其中可以通过不同的QT/BT/TT组合实现可变块尺寸的VVC/AVS3的高级块分区结构来说是不合适的。另一方面,当前的OBMC设计也给编码器和解码器设计二者都引入显著的复杂度。特别地,考虑到相同的OBMC需要重复多次(每次针对一个单独的子块)以修改一个CU内的所有子块的预测信号,当在基于子块的MC之上应用OBMC时,这样的复杂度问题可能变得严重。这可能不仅导致计算复杂度和存储器带宽的显著增加,而且也导致硬件编码器/解码器处潜在地复杂化管道设计和并行处理。
在本公开中,提出了提高OBMC的编解码效率并且简化现有的OBMC设计以促进其用于硬件编解码器的实现的方法。特别地,为了最大化OBMC的编解码增益,特别注意更好地使OBMC适应VVC和AVS3标准的当前可变块分区结构。总的说来,本公开的所提出的技术的主要方面可以总结如下。
首先,为了提高编解码效率,提出了一种自适应OBMC方案。与其中在4x4单元上固定地应用OBMC的现有方法相比,所提出的算法自适应地调节应用OBMC的区域。此外,为了适应相邻MV之间的变化的相关性,也可以自适应地改变被应用来组合当前CU的空间邻居及当前CU的运动补偿预测的权重。
此外,为了降低OBMC的最坏情况复杂度,提出了针对其中需要多个假设以生成当前CU的预测样点的编码模式禁用OBMC的约束。首先,提出一种基于单向预测的OBMC约束,其中仅允许OBMC被应用于从一个单一预测方向预测(即单向预测)的帧间块。其次,提出针对其中引入附加的帧内/混合操作以生成最终预测样点的CIIP/InterPF和GPM/AWP禁用OBMC。
第三,为了简化OBMC的计算复杂度,提出仅仅对一个CU与其因果邻居(即顶部和左边)之间的边界上的预测样点启用OBMC。对于以任何子块模式编解码的CU,OBMC在其内部子块边界上总是被禁用的。
具有可变应用区域和自适应混合的改进的OBMC
如上面所讨论的,不管块尺寸和编码模式如何不同,其中一个当前CU的预测样点与其空间邻居的预测样点混合的重叠区域在现有的OBMC设计中保持不变。然而,在现代视频编解码标准(诸如VVC和AVS3)中,可变块尺寸分区结构被应用来适应不同视频的局部统计数据/相关性。相应地,就OBMC方案的编解码效率和编码/解码复杂度而言,总是使用固定尺寸的样点混合可能不是最优的。首先,选取大的混合尺寸具有以下缺陷,即使用相邻MV生成的预测样点趋向于远离相应的相邻块。因此,使用当前MV与相邻MV生成的预测样点之间的相关性可能是不足的。此外,考虑到在OBMC过程期间需要生成更多预测样点,大的混合区域也导致计算复杂度增加。另一方面,大的混合尺寸在以下意义上也可能是有利的:它在存在噪声(即视频捕捉噪声和编解码过程造成的噪声)的情况下可能产生更可靠的预测信号。因此,重要的是针对不同块尺寸和编码模式选择最优的混合区域,这能够在提供对于编解码噪声的足够抵抗力的同时最大化利用不同MV生成的多个预测之间的相关性。
基于上面的考虑,在本节中提出一种改进的OBMC方案。与现有的OBMC相比,提出的算法具有两个主要区别:1)基于当前CU的块尺寸和编码模式自适应地调节一个CU/子块的每个边界上的OBMC混合区域;2)基于预测样点之间的相关性自适应地确定被应用来组合多个OBMC预测样点的最优权重因子。此外,为了避免复杂的二维(2-D)混合操作,类似于现有的设计,所提出的OBMC被划分成具有1-D混合的多个步骤:在第一步骤中,只有当前CU/子块上方的相邻块的MV被用来与靠近当前CU/子块的顶部边界的预测样点组合;在第二步骤中,只有当前CU/子块左边的相邻块的MV被用来与当前CU/子块的左边边界附近的预测样点组合;进一步,当当前CU被一种子块分割模式(例如仿射、SbTMVP和MVAP)编解码时,第三和第四步骤被应用到每个子块,其中当前子块下方和右边的相邻子块的MV被用来修改靠近该子块的底部和右边边界的预测样点。
为了便于描述,在下文中,没有子块分割的常规帧间预测被用作示例以说明所提出的算法。具体地,令Pobmc(x,y)表示将当前CU的预测信号与基于其空间邻居的MV的多个预测信号组合之后坐标(x,y)处的混合预测样点;Pcur(x,y)表示使用其相应的MV的当前CU的坐标(x,y)处的预测样点;Ptop(x,y)和Pleft(x,y)分别表示除了使用当前CU的左边和右边邻居的MV之外的该CU的相同位置处的预测样点。
基于上面的符号,当前CU的边界预测样点使用其顶部和左边因果邻居的MV逐步被更新。如图11A-11B所示,首先检查当前块之上的块A。如果块A是一个帧间块,那么它的MV将被分配给当前块以在当前块的同位位置处生成预测信号Ptop(x,y)。此后,Pcur和Ptop中的当前块的顶部边界下面的一定数量的行(如图11A中的阴影区域所指示的)被混合以生成相应的OBMC预测信号Pobmc。被应用来组合两个预测信号的加权参数根据一个预定义函数计算,其中K是应用混合的行数,并且l=0,1,…,K-1。具体地,在应用OBMC之后,当前块的顶部边界上的更新的预测样点被计算为:
接下来,通过遵循相同的过程,所提出的方案继续通过以下方式更新当前块的左边边界上的预测样点:1)使用左边空间邻居(即块B和C)的MV生成当前块的同位预测样点pleft(x,y);2)将Pleft(x,y)与如(10)中的现有预测信号混合以将最终OBMC预测信号生成为:
为了适应使用当前块及其相邻块的MV生成的预测样点之间的变化的相关性,不同的函数可以被用来生成用于OBMC混合的加权因子。在本公开的一个实施例中,提出使用下面的余弦函数将相关函数公式化为:
其中ω*为用来控制被应用的权重值的总体范围的控制参数。对于熟练掌握现代视频编解码技术的人员而言,其他公式化函数(诸如升余弦/正弦、指数函数、高阶多项式函数等等)也可以被应用来生成权重。在实践中,可以依照编解码的视频的特定特性应用不同的ω*值。在一个实施例中,提出使用一个固定权重值(例如0.5);相应地,通过这样的方法,无需将该权重值从编码器用信号发送至解码器。在另一个实施例中,提出确定一组预定义权重值(例如0.125和0.875),并且允许它不时改变且将选定的权重值用信号发送至解码器。在又一个实施例中,提出给予编码器在运行中导出任意权重值并且在比特流中用信号发送它的自由。在这样的情况下,选取允许的权重的值是完全灵活的,即,最大化编码器灵活性。同时,当应用任意上面的基于信令的方案时,可以在不同的编解码级别下,例如序列参数集(SPS)、图片参数集(PPS)、图片/条带级别或者甚至CTU/CU级别下用信号发送相应的权重值。
在图11A-11B中,当应用垂直/水平OBMC时,预测样点的全部行/列的一半被混合。如上面所提到的,对于实际编解码器实现而言,不同的混合尺寸可以导致不同的编解码性能/复杂度折中。在一个实施例中,提出针对所有帧间块使用一个固定混合尺寸(例如沿着一个CU/子块的顶部/左边边界的4行/列)。在另一个实施例中,提出基于当前CU的特定尺寸和分割方法自适应调节混合区域。例如,对于常规CU(即没有子块分区的CU)而言,提出基于CU的尺寸确定混合区域。具体地,对于垂直OBMC(即来自顶部邻居的OBMC)被启用,混合仅仅被应用到靠近CU顶部边界的预测样点的M%的行;否则,当水平OBMC(即来自左边邻居的OBMC)被启用时,混合仅仅被应用到靠近CU左边边界的预测样点的M%的列。另一方面,当当前CU被一种子块分割模式(例如仿射、SbTMVP和MVAP)编解码时,相应的混合尺寸(例如M%的行/列)基于相应的子块尺寸而不是CU尺寸来确定。在一个示例中,提出设置M等于50,即,一半的行/列可应用到OBMC(如图11A-11B所示)。在另一个实施例中,提出当OBMC被应用时让编码器决定混合尺寸并且将该值用信号发送至解码器。
基于单向预测的OBMC
如上面所分析的,当针对一个帧间CU启用OBMC时,需要执行多个运动补偿以沿着CU和子块边界二者生成预测样点。增加的运动补偿不仅由于附加的插值运算的原因而增加了计算复杂度,而且也引入存储器带宽消耗的不可忽略的增加。为了解决上面的复杂度问题,在本节中,提出一种有约束OBMC方案,其中仅仅允许OBMC被应用于从一个单一预测方向预测(即单向预测)的帧间块。同时,当双向预测用来生成当前块的OBMC预测样点的一个相邻块时,仅仅选择来自一个方向的MV。具体地,如果单向预测一个相邻块,则相应的MV将直接被应用来产生用于OBMC的预测样点。否则(即双向预测相邻块),基于来自一个预测列表(L0或L1)的单向预测生成OBMC使用的帧间预测样点。为了选择预测列表,可以应用不同的方法。在第一方法中,提出针对通过两幅参考图片预测的任何相邻块总是选择第一预测(即列表L0)。在第二方法中,提出针对通过两幅参考图片预测的任何相邻块总是选择第二预测(即列表L1)。在第三方法中,应用一种自适应方法,其中选择与离当前图片的图片顺序计数(POC)距离更小的一幅参考图片关联的预测列表。在两幅参考图片具有到当前图片相等的POC距离的情况下,选择具有更小而更好质量的参考图片。为了决定哪幅参考图片具有更好的重建质量,可以应用两种方法。在第一方法中,可以将被应用来对相应参考图片/块进行编解码的QP参数用作准则,并且具有小QP的参考图片将用于OBMC。在另一种方法中,层id可以用作另一个准则,并且可以选择当前预测结构(例如层次B结构)中具有小的层id的参考图片/块。
此外,如上面所提到的,GPM/AWP模式需要两个单独的运动补偿以及一个加权平均运算,其计算复杂度已经大于常规的双向预测。因此,如果OBMC进一步被应用到GPM/AWP模式,它将潜在地超过帧间预测的现有的最坏情况复杂度。基于这样的考虑,在一个实施例中,提出针对被GPM/AWP模式编解码的CU禁用OBMC。
类似于GPM/AWP,CIIP/InterPF模式还引入预测操作以外的操作以生成最终预测信号,包括一个运动补偿(其在当前CU被双向预测时可以是双向预测)、一个帧内预测和一个加权平均。因此,为了控制OBMC总体复杂度,作为本公开的一个实施例,提出当当前CU被CIIP/InterPF模式编解码时禁用OBMC。
针对子块边界禁用OBMC
如上面所讨论的,一个CU(其被一种子块模式编解码)的子块的内部边界之间的OBMC动机是减少子块边界处存在的块伪影。这通过将使用相邻MV的多个预测信号与一个子块的预测信号组合来完成。如先前所指出的,由于需要为OBMC执行的大量运动补偿的原因,这可能对于实际的硬件/软件编解码器设计造成严重的复杂度问题。这可能不仅导致显著的复杂度增加,而且潜在地使编码器和解码器二者的管道设计和并行处理复杂化。另一方面,现有子块模式的运动参数根据其空间/时间相邻运动而导出。例如,SbTMVP的运动场根据时间邻居导出,并且仿射模式的运动场根据基于线性模式的关键空间相邻运动导出。因此,这导致大多数子块模式的运动场相对稳定或一致。这意味着通过用于子块边界的内部OBMC过程实现的附加性能改进应当非常有限。基于这样的分析,对于其中应用了子块分割(例如仿射、SbTMVP和MVAP)的CU,提出针对沿着不同子块之间的边界的所有预测样点禁用OBMC,而沿着CU边界的OBMC仍然被应用。在另一个实施例中,提出针对仿射模式的子块边界启用OBMC,但是针对SbTMVP和MVAP模式的子块边界禁用OBMC。在另一个实施例中,提出针对仿射模式的子块边界禁用OBMC,但是针对SbTMVP和MVAP模式的子块边界启用OBMC。图12示出了图示出当应用上面的方法时的OBMC过程的一个流程图。
解决OBMC与ASP之间的交互
如“仿射二次预测”一节中所讨论的,ASP在当前AVS3标准中被应用来进一步提高仿射模式的预测质量,其在从仿射模式的缺省的基于子块的运动补偿生成的预测样点之上进一步应用一个滤波器。在本节中,在下文中提出不同的方法以处理将OBMC和ASP应用于仿射模式时的交互。
首先,为了实现最佳的编解码性能,提出将OBMC和ASP应用到一个仿射CU。此外,当两种编解码工具都被启用时,可能存在不同的应用顺序。在一种方法中,提出首先应用ASP,接着是OBMC,以调节CU顶部和左边边界上的子块的预测样点。具体地,通过这样的方法,对于沿着CU顶部和左边边界的子块,首先在现有的基于子块的运动补偿样点之上应用基于ASP的样点细化。接着,通过将ASP的细化预测样点与使用相应的相邻块的运动生成的预测样点组合而应用OBMC。另一方面,对于CU内部的子块(即非边界子块),仅仅应用ASP。在第二方法中,提出对于沿着CU顶部和左边边界的子块首先应用OBMC,接着是ASP。更具体地,当应用该方法时,首先应用OBMC以基于其空间相邻运动修改CU边界子块的预测样点。此后,进一步将ASP应用到从OBMC输出的修改的预测样点。类似于第一方法,对于CU内部的子块,仅仅应用ASP。
其次,为了降低总体计算复杂度,提出针对仿射模式禁用OBMC,而不管是否对于一个仿射CU启用ASP模式。在另一种方法中,提出当应用ASP时针对仿射CU禁用OBMC。当ASP模式不被应用到一个CU(例如,ASP模式被“仿射二次预测”中提到的MV差异准则绕过)时,仍然应用OBMC。
第三,为了实现一个更好的性能/复杂度折中,提出针对沿着CU边界的子块启用OBMC并且禁用ASP。同时,针对CU内部的子块,仅仅应用ASP。图13图示出当这样的方法被应用时将OBMC和ASP应用到哪些子块。图13图示出依照本公开一些实现方式的将OBMC和ASP联合应用到一个仿射CU 1301。如图13所示,仿射CU 1301包括有阴影的顶部和左边边界上的多个子块,并且OBMC被应用到这些阴影子块。除了这些阴影子块以外,仿射CU 1301包括图13中没有阴影的多个子块,并且ASP被应用到这些无阴影子块。
OBMC与局部色度树之间的交互
如先前所提到的,在AVS中,局部色度分割树被应用来针对实际的编解码器设计控制最坏情况编解码吞吐量,其不允许出现宽度或高度小于4个色度样点(即尺寸2xN和Nx2)的色度编码块。具体地,对于包含至少一个亮度编码块的一个单一编码树(该亮度编码块包含4xN或者Nx4个亮度样点),则要求该编码树中的色度样点不应当被进一步拆分,而该编码树的亮度样点可以被进一步分割。为了解决不同的复杂度/性能折中,提出三种不同的方法以处理OBMC与局部色度树之间的交互。
在第一方法中,提出将OBMC应用到其中局部色度树被应用的一个单一编码树下面的亮度和色度编码块二者。如图14A所示,当应用这样的方案时,OBMC被应用来增强(如图案化样点所指示的)编码树下面的所有亮度编码块和单一色度编码块的边界预测样点。如图14A所示,边界预测样点被阴影化。在第二方法中,当局部色度树分割被应用来分割一个单一编码树时,提出仅仅将OBMC应用到编码树下面的亮度编码块,而OBMC总是被禁用于生成编码树中的色度编码块的预测样点。图14B图示出当应用这样的方案时的一个示例。如图14B所示,亮度编码块的边界预测样点被阴影化。在第三方法中,当应用局部色度分割树时,提出针对编码树下面的亮度和色度样点二者都禁用OBMC。图14C图示出当应用这样的方案时的一个示例。
图15为依照本公开一些实现方式的图示出一种用于视频压缩感测的装置的框图。装置1500可以是一个终端,诸如移动电话、平板计算机、数字广播终端、平板设备或者个人数字助理。
如图15所示,装置1500可以包括以下部件中的一个或多个:处理部件1502,存储器1504,电源部件1506,多媒体部件1508,音频部件1510,输入/输出(I/O)接口1512,传感器部件1514和通信部件1516。
处理部件1502通常控制装置1500的总体操作,诸如与显示、电话、数据通信、照相机操作和记录操作有关的操作。处理部件1502可以包括用于执行指令以完成上述方法的所有或部分步骤的一个或多个处理器1520。进一步,处理部件1502可以包括促进处理部件1502与其他部件之间的交互的一个或多个模块。例如,处理部件1502可以包括促进多媒体部件1508与处理部件1502之间的交互的多媒体模块。
存储器1504被配置为存储支持装置1500的操作的不同类型的数据。这样的数据的示例包括用于在装置1500上运行的任何应用程序或方法的指令、联系人数据、电话簿数据、消息、图片、视频等等。存储器1504可以通过任何类型的易失性或非易失性存储设备或者其组合实现,并且存储器1504可以是静态随机存取存储器(SRAM)、电可擦除可编程只读存储器(EEPROM)、可擦除可编程只读存储器(EPROM)、可编程只读存储器(PROM)、只读存储器(ROM)、磁性存储器、闪存、磁盘或者致密盘。
电源部件1506为装置1500的不同部件供电。电源部件1506可以包括电源管理系统、一个或多个电源以及与为装置1500生成、管理和分配电力关联的其他部件。
多媒体部件1508包括提供装置1500与用户之间的输出接口的屏幕。在一些示例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,则屏幕可以实现为接收来自用户的输入信号的触摸屏。触摸面板可以包括用于感测触摸面板上的触摸、滑动和手势的一个或多个触摸传感器。触摸传感器可以不仅感测触摸或滑动动作的边界,而且检测与触摸或滑动操作有关的持续时间和压力。在一些示例中,多媒体部件1508可以包括前置照相机和/或后置照相机。当装置1500处于诸如拍摄模式或视频模式之类的操作模式下时,前置照相机和/或后置照相机可以接收外部多媒体数据。
音频部件1510被配置为输出和/或输入音频信号。例如,音频部件1510包括麦克风(MIC)。当装置1500处于诸如呼叫模式、记录模式和语音识别模式之类的操作模式下时,麦克风被配置为接收外部音频信号。接收的音频信号可以进一步存储在存储器1504中或者经由通信部件1516发送。在一些示例中,音频部件1510进一步包括用于输出音频信号的扬声器。
I/O接口1512提供处理部件1502与外围接口模块之间的接口。上述外围接口模块可以是键盘、点击轮、按钮等等。这些按钮可以包括但不限于主页按钮、音量按钮、开始按钮和锁定按钮。
传感器部件1514包括用于为装置1500提供不同方面的状态评估的一个或多个传感器。例如,传感器部件1514可以检测装置1500的打开/关闭状态和部件的相对定位。例如,这些部件为装置1500的显示器和键盘。传感器部件1514也可以检测装置1500或装置1500的部件的位置变化、用户在装置1500上的接触的存在或不存在、装置1500的取向或者加速度/减速度以及装置1500的温度变化。传感器部件1514可以包括被配置为在没有任何物理触摸的情况下检测附近对象的存在的接近传感器。传感器部件1514可以进一步包括光学传感器,诸如成像应用中使用的CMOS或CCD图像传感器。在一些示例中,传感器部件1514可以进一步包括加速度传感器、陀螺仪传感器、磁传感器、压力传感器或者温度传感器。
通信部件1516被配置为促进装置1500与其他设备之间的有线或无线通信。装置1500可以基于诸如WiFi、4G或者其组合之类的通信标准访问无线网络。在一个示例中,通信部件1516经由广播信道从外部广播管理系统接收广播信号或者广播相关信息。在一个示例中,通信部件1516可以进一步包括用于促进短距离通信的近场通信(NFC)模块。例如,NFC模块可以基于射频识别(RFID)技术、红外数据关联(IrDA)技术、超宽带(UWB)技术、蓝牙(BT)技术和其他技术而实现。
在一个示例中,装置1500可以通过执行上述方法的专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或者其他电子元件中的一个或多个实现。一种非暂时性计算机可读存储介质可以是例如硬盘驱动器(HDD)、固态驱动器(SSD)、闪存、混合驱动器或固态混合驱动器(SSHD)、只读存储器(ROM)、致密盘只读存储器(CD-ROM)、磁带、软盘等等。
图16图示出依照本公开一些实现方式的图示出一种用于视频解码的过程的流程图。
在步骤1601中,一个或多个处理器1520获得视频帧内的多个编码块。
在一些示例中,多个编码块可以包括至少一个色度编码块和多个亮度编码块。例如,至少一个色度编码块可以包括如“OBMC与局部色度树之间的交互”一节中所讨论的单一色度编码块。
在步骤1602中,一个或多个处理器1520响应于确定局部色度树分割被应用到多个编码块,确定是否将OBMC应用到至少一个色度编码块和多个亮度编码块以生成用于视频帧的预测样点。
在一些示例中,确定局部色度树分割被应用到多个编码块可以包括确定多个编码块在同一个编码树下。
在一些示例中,一个或多个处理器1520可以响应于确定局部色度树分割被应用到多个编码块,将OBMC应用到多个亮度编码块以生成用于视频帧的预测样点并且针对至少一个色度编码块禁用OBMC。
例如,如图14B所示,当局部色度树分割被应用来分割一个单一编码树时,仅仅将OBMC应用到编码树下面的亮度编码块,而OBMC总是被禁用于生成编码树中的色度编码块的预测样点。
在一些示例中,一个或多个处理器1520可以响应于确定局部色度树分割被应用到多个编码块,将OBMC应用到多个亮度编码块和至少一个色度编码块二者以生成用于视频帧的预测样点。
例如,如图14A所示,当应用这样的方案时,OBMC被应用来增强(如图案化样点所指示的)编码树下面的所有亮度编码块和单一色度编码块的边界预测样点。
在一些示例中,一个或多个处理器1520可以响应于确定局部色度树分割被应用到多个编码块,针对多个亮度编码块和至少一个色度编码块二者都禁用OBMC。
例如,当应用局部色度分割树时,提出针对编码树下面的亮度和色度样点二者都禁用OBMC。
在一些其他示例中,提供了一种非暂时性计算机可读存储介质1504,其中存储了指令。当这些指令被一个或多个处理器1520执行时,这些指令使得处理器执行如图16和上文中所描述的任何方法。
已出于说明的目的给出了本公开的描述,其并不预期是详尽无遗的或者限于本公开。许多修改、变型和替代实现方式对于受益于前面描述和关联附图中给出的教导的本领域普通技术人员来说将是清楚明白的。
示例被选择和描述以便解释本公开的原理,并且使得本领域技术人员能够就各种不同的实现方式理解本公开且最佳地利用潜在的原理和适合设想的特定用途的具有不同修改的不同实现方式。因此,应当理解,本公开的范围不应当限于所公开的实现方式的具体示例,并且修改和其他实现方式预期包括在本公开的范围之内。

Claims (18)

1.一种用于视频解码的方法,包括:
获得视频帧内的多个编码块,其中所述多个编码块包括至少一个色度编码块和多个亮度编码块;以及
响应于确定局部色度树分割被应用到所述多个编码块,确定是否将重叠块运动补偿(OBMC)应用到所述至少一个色度编码块和所述多个亮度编码块以生成用于所述视频帧的预测样点。
2.根据权利要求1的方法,其中确定所述局部色度树分割被应用到所述多个编码块包括:
确定所述多个编码块在同一个编码树下。
3.根据权利要求1的方法,进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,将OBMC应用到所述多个亮度编码块以生成用于所述视频帧的预测样点并且针对所述至少一个色度编码块禁用OBMC。
4.根据权利要求3的方法,其中将OBMC应用到所述多个亮度编码块包括:
将OBMC应用到所述多个亮度编码块的边界预测样点。
5.根据权利要求1的方法,进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,将OBMC应用到所述多个亮度编码块和所述至少一个色度编码块二者以生成用于所述视频帧的预测样点。
6.根据权利要求1的方法,进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,针对所述多个亮度编码块和所述至少一个色度编码块二者都禁用OBMC。
7.一种用于视频解码的装置,包括:
一个或多个处理器;以及
存储器,该存储器被配置为存储能够由所述一个或多个处理器执行的指令,
其中当执行所述指令时,所述一个或多个处理器被配置为执行动作,这些动作包括:
获得视频帧内的多个编码块,其中所述多个编码块包括至少一个色度编码块和多个亮度编码块;以及
响应于确定局部色度树分割被应用到所述多个编码块,确定是否将重叠块运动补偿(OBMC)应用到所述至少一个色度编码块和所述多个亮度编码块以生成用于所述视频帧的预测样点。
8.根据权利要求7的装置,其中确定所述局部色度树分割被应用到所述多个编码块包括:
确定所述多个编码块在同一个编码树下。
9.根据权利要求7的装置,其中所述一个或多个处理器被配置为执行动作,这些动作进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,将OBMC应用到所述多个亮度编码块以生成用于所述视频帧的预测样点并且针对所述至少一个色度编码块禁用OBMC。
10.根据权利要求9的装置,其中将OBMC应用到所述多个亮度编码块包括:
将OBMC应用到所述多个亮度编码块的边界预测样点。
11.根据权利要求7的装置,其中所述一个或多个处理器被配置为执行动作,这些动作进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,将OBMC应用到所述多个亮度编码块和所述至少一个色度编码块二者以生成用于所述视频帧的预测样点。
12.根据权利要求7的装置,其中所述一个或多个处理器被配置为执行动作,这些动作进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,针对所述多个亮度编码块和所述至少一个色度编码块二者都禁用OBMC。
13.一种非暂时性计算机可读存储介质,存储了计算机可执行指令,当被一个或多个计算机处理器执行时,这些计算机可执行指令使得所述一个或多个计算机处理器执行动作,这些动作包括:
获得视频帧内的多个编码块,其中所述多个编码块包括至少一个色度编码块和多个亮度编码块;以及
响应于确定局部色度树分割被应用到所述多个编码块,确定是否将重叠块运动补偿(OBMC)应用到所述至少一个色度编码块和所述多个亮度编码块以生成用于所述视频帧的预测样点。
14.根据权利要求13的非暂时性计算机可读存储介质,其中确定所述局部色度树分割被应用到所述多个编码块包括:
确定所述多个编码块在同一个编码树下。
15.根据权利要求13的非暂时性计算机可读存储介质,其中所述计算机可执行指令使得所述一个或多个计算机处理器执行动作,这些动作进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,将OBMC应用到所述多个亮度编码块以生成用于所述视频帧的预测样点并且针对所述至少一个色度编码块禁用OBMC。
16.根据权利要求15的非暂时性计算机可读存储介质,其中将OBMC应用到所述多个亮度编码块包括:
将OBMC应用到所述多个亮度编码块的边界预测样点。
17.根据权利要求13的非暂时性计算机可读存储介质,其中所述计算机可执行指令使得所述一个或多个计算机处理器执行动作,这些动作进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,将OBMC应用到所述多个亮度编码块和所述至少一个色度编码块二者以生成用于所述视频帧的预测样点。
18.根据权利要求13的非暂时性计算机可读存储介质,其中所述计算机可执行指令使得所述一个或多个计算机处理器执行动作,这些动作进一步包括:
响应于确定所述局部色度树分割被应用到所述多个编码块,针对所述多个亮度编码块和所述至少一个色度编码块二者都禁用OBMC。
CN202280037933.0A 2021-05-24 2022-05-24 用于帧间预测的重叠块运动补偿的方法和设备 Pending CN117501693A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163192422P 2021-05-24 2021-05-24
US63/192422 2021-05-24
PCT/US2022/030719 WO2022251211A1 (en) 2021-05-24 2022-05-24 Methods and devices for overlapped block motion compensation for inter prediction

Publications (1)

Publication Number Publication Date
CN117501693A true CN117501693A (zh) 2024-02-02

Family

ID=84229092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280037933.0A Pending CN117501693A (zh) 2021-05-24 2022-05-24 用于帧间预测的重叠块运动补偿的方法和设备

Country Status (4)

Country Link
US (1) US20240098290A1 (zh)
EP (1) EP4349017A1 (zh)
CN (1) CN117501693A (zh)
WO (1) WO2022251211A1 (zh)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11223852B2 (en) * 2016-03-21 2022-01-11 Qualcomm Incorporated Coding video data using a two-level multi-type-tree framework
WO2019174594A1 (en) * 2018-03-14 2019-09-19 Mediatek Inc. Method and apparatus of optimized splitting structure for video coding
WO2020039407A1 (en) * 2018-08-24 2020-02-27 Beijing Bytedance Network Technology Co., Ltd. Overlapped block motion compensation using spatial neighbors
US20220038681A1 (en) * 2018-11-05 2022-02-03 Interdigital Vc Holdings, Inc. Video encoding or decoding using block extension for overlapped block motion compensation
CN114641997A (zh) * 2019-10-28 2022-06-17 北京字节跳动网络技术有限公司 基于颜色分量的语法信令通知和解析

Also Published As

Publication number Publication date
US20240098290A1 (en) 2024-03-21
EP4349017A1 (en) 2024-04-10
WO2022251211A1 (en) 2022-12-01

Similar Documents

Publication Publication Date Title
CN116506609B (zh) 用于在视频编码中用信号发送合并模式的方法和装置
EP3915254B1 (en) Video coding for geometric inter partition prediction
US20240146952A1 (en) Methods and apparatuses for decoder-side motion vector refinement in video coding
WO2021188598A1 (en) Methods and devices for affine motion-compensated prediction refinement
WO2021030502A1 (en) Methods and apparatuses for adaptive motion vector resolution in video coding
WO2022032028A1 (en) Methods and apparatuses for affine motion-compensated prediction refinement
WO2022081878A1 (en) Methods and apparatuses for affine motion-compensated prediction refinement
CN117501693A (zh) 用于帧间预测的重叠块运动补偿的方法和设备
CN114342390B (zh) 用于仿射运动补偿的预测细化的方法和装置
CN117083861A (zh) 用于帧间预测的重叠块运动补偿
CN116916026B (zh) 用于视频编解码中的解码器侧运动矢量细化的方法和装置
CN114080807A (zh) 利用三角分区进行视频编解码的方法和装置
WO2023205185A1 (en) Methods and devices for candidate derivation for affine merge mode in video coding
CN115361550A (zh) 用于帧间预测的改进重叠块运动补偿
WO2023101990A1 (en) Motion compensation considering out-of-boundary conditions in video coding

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