CN113170188A - 在视频编码中用于执行帧间预测的系统和方法 - Google Patents

在视频编码中用于执行帧间预测的系统和方法 Download PDF

Info

Publication number
CN113170188A
CN113170188A CN201980082131.XA CN201980082131A CN113170188A CN 113170188 A CN113170188 A CN 113170188A CN 201980082131 A CN201980082131 A CN 201980082131A CN 113170188 A CN113170188 A CN 113170188A
Authority
CN
China
Prior art keywords
flag
prediction
merge
video
motion vector
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
CN201980082131.XA
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.)
FG Innovation Co Ltd
Sharp Corp
Original Assignee
FG Innovation Co Ltd
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by FG Innovation Co Ltd, Sharp Corp filed Critical FG Innovation Co Ltd
Publication of CN113170188A publication Critical patent/CN113170188A/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/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/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/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/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/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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

Landscapes

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

Abstract

本公开涉及视频编码,并且更具体地涉及用于执行帧间预测的技术。根据本发明的一个方面,如果合并子块标记的值等于零并且运动向量差标记的值等于一,则对运动向量差合并标记进行解码,其中所述运动向量差标记指定是否启用具有运动向量差的合并模式。

Description

在视频编码中用于执行帧间预测的系统和方法
技术领域
本公开涉及视频编码,并且更具体地涉及用于执行帧间预测的技术。
背景技术
数字视频功能可以结合到各种设备中,包括数字电视、笔记本电脑或台式电脑、平板电脑、数字录音设备、数字媒体播放器、视频游戏设备、蜂窝电话(包括所谓的智能电话)、医学成像设备等。可以根据视频编码标准对数字视频进行编码。视频编码标准可以结合视频压缩技术。视频编码标准的示例包括ISO/IEC MPEG-4 Visual和ITU-T H.264(也被称为ISO/IEC MPEG-4AVC)和高效视频编码(HEVC)。HEVC在2016年12月的ITU-T H.265建议书的高效视频编码(HEVC)中有所描述,该文献以引用方式并入本文,并且在本文中被称为ITU-TH.265。目前正在考虑对ITU-T H.265进行扩展和改进以开发下一代视频编码标准。例如:ITU-T视频编码专家组(VCEG)和ISO/IEC活动图像专家组(MPEG)(被统称为联合视频研究组(JVET))正在研究压缩能力显著超过当前HEVC标准的未来视频编码技术的标准化的潜在需求。以引用方式并入本文的联合探索模型7(JEM 7)、联合探索测试模型7(JEM 7)的算法描述、ISO/IEC JTC1/SC29/WG11文档:JVET-G1001(2017年7月,意大利,都灵)描述了由JVET在联合测试模型研究下的编码特征,该技术是超越ITU-T H.265功能的潜在增强视频编码技术。应当指出的是,JEM 7的编码特征在JEM参考软件中实现。如本文所用,术语JEM可统称包括在JEM 7中的算法以及JEM参考软件的具体实施。此外,响应于由VCEG和MPEG联合发布的"Joint Call for Proposals on Video Compression with Capabilities beyond HEVC",在2018年4月16日至20日,在加利福尼亚州圣地亚哥的ISO/IEC JTC1/SC29/WG11的第10次会议上各种组提出了多种视频编码描述并对其作出了响应。作为多种视频编码描述的结果,视频编码规范的草案文本在以引用方式并入本文的″通用视频编码(VVC)(草案1)″,在2018年4月16日至20日,在加利福尼亚州圣地亚哥的ISO/IEC JTC1/SC29/WG11的第10次会议的文档JVET-J1001-v2中有所描述,该文档以引用方式并入本文并且称为JVET-J1001。″通用视频编码(草案2)″,在2018年7月10日至18日,在斯洛文尼亚卢布尔雅那的ISO/IECJTC1/SC29/WG11的第11次会议的文档JVET-K1001-v7,该文档以引用方式并入本文并且称为JVET-K1001,是对JVET-J1001的更新。2018年10月3日至12日在中国澳门(Macao,CN)举行的ISO/IEC JTC1/SC29/WG11第12次会议中的″通用视频编码(草案3)″即文档JVET-L1001-v6,该文档以引用方式并入本文并且被称为JVET-L1001,是JVET-K1001的更新。
视频压缩技术可减少存储和传输视频数据的数据需求。视频压缩技术可通过利用视频序列中固有的冗余来减少数据需求。视频压缩技术可将视频序列再分成连续较小的部分(例如:视频序列内的帧组、帧组内的帧、帧内的区域、区域内的视频块、视频块内的子块等)。可以使用帧内预测编码技术(例如:图片内(空间))和帧间预测技术(即图片间(时间))来生成待编码的视频数据单元与视频数据的参考单元之间的差值。该差值可被称为残差数据。残差数据可被编码为量化变换系数。语法元素可以涉及残差数据和参考编码单元(例如:帧内预测模式索引、运动向量和块向量)。可以对残差数据和语法元素进行熵编码。熵编码的残差数据和语法元素可以包括在兼容比特流中。可以根据数据结构来格式化兼容比特流和相关联的元数据。
发明内容
在一个示例中,一种对视频数据进行解码的方法,该方法包括:对合并子块标记进行解码,该合并子块标记指定是否从相邻块推断出编码单元的基于子块的帧间预测参数;以及如果所述合并子块标记的值等于零并且运动向量差标记的值等于一,则对运动向量差合并标记进行解码,其中所述运动向量差合并标记指定使用具有运动向量差的预测参数,以及
所述运动向量差标记指定是否启用具有运动向量差的合并模式。
在一个示例中,一种对视频数据进行编码的方法,该方法包括:对合并子块标记进行编码,该合并子块标记指定是否从相邻块推断出编码单元的基于子块的帧间预测参数;以及如果合并子块标记的值等于零并且运动向量差标记的值等于一,则对运动向量差合并标记进行编码,其中运动向量差合并标记指定使用具有运动向量差的预测参数,并且运动向量差标记指定是否启用具有运动向量差的合并模式。
附图说明
图1是示出根据本公开的一种或多种技术的根据四叉树多叉树划分进行编码的一组图片的示例的概念图。
图2A是示出根据本公开的一种或多种技术的对视频数据块进行编码的示例的概念图。
图2B是示出根据本公开的一种或多种技术的对视频数据块进行编码的示例的概念图。
图3是示出根据本公开的一种或多种技术的用于包含在预测运动向量的一组候选中的相邻视频块的位置的概念图。
图4是示出根据本公开的一种或多种技术的用于包含在一组候选预测运动向量中的位置相邻视频块的概念图。
图5是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码和解码的系统的示例的框图。
图6是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码的视频编码器的示例的框图。
图7是示出根据本公开的一种或多种技术的可以被配置为对视频数据进行解码的视频解码器的示例的框图。
具体实施方式
一般来讲,本公开描述了用于对视频数据进行编码的各种技术。具体而言,本公开描述了在视频编码中用于帧间预测的技术。具体地讲,本公开描述了用于指示是启用还是禁用对视频进行编码的各种帧间预测工具额技术。根据本文所述的技术指示是启用还是禁用各种帧间预测工具可能对于有效地发送信号通知用于对当前视频块进行编码的预测技术特别有用。应当指出的是,虽然本公开的技术是关于ITU-T H.264、ITU-T H.265、JVET-J1001、JVET-K1001和JVET-L1001描述的,但是本公开的技术可普遍应用于视频编码。例如:本文所述的编码技术可结合到视频编码系统(包括基于未来视频编码标准的视频编码系统)中,包括块结构、帧内预测技术、帧间预测技术、变换技术、滤波技术和/或熵编码技术,不同于ITU-T H.265中包括的那些技术。因此,对ITU-T H.264、ITU-T H.265、JVET-J1001、JVET-K1001和JVET-L1001的参考是出于描述性目的,并且不应被解释为限制本文所述技术的范围。此外,应当指出的是,将文献以引用方式并入本文不应被解释为限制或产生关于本文所用术语的歧义。例如:在某个并入的参考文献中提供的对某个术语的定义不同于另一个并入的参考文献和/或如本文所用的该术语的情况下,则该术语应以广泛地包括每个相应定义的方式和/或以包括替代方案中每个特定定义的方式来解释。
在一个示例中,一种执行用于对视频数据进行编码的帧间预测的方法包括:确定是否从相邻块推断出当前视频块的基于子块的帧间预测参数,发送信号通知指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记的值来有条件地发送信号通知指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记。
在一个示例中,一种设备包括一个或多个处理器,该一个或多个处理器被配置为:确定是否从相邻块推断出当前视频块的基于子块的帧间预测参数,发送信号通知指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记的值来有条件地发送信号通知指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记。
在一个示例中,一种非暂态计算机可读存储介质包括存储在其上的指令,这些指令在被执行时使得设备的一个或多个处理器:确定是否从相邻块推断出当前视频块的基于子块的帧间预测参数,发送信号通知指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记的值来有条件地发送信号通知指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记。
在一个示例中,一种装置包括:用于确定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的装置,用于发送信号通知指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记的装置,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记的值而用于有条件地发送信号通知指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记的装置。
在一个示例中,一种执行用于对视频数据进行编码的帧间预测的方法包括:解析指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的所解析标记的值来有条件地解析指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记。
在一个示例中,一种设备包括一个或多个处理器,该一个或多个处理器被配置为:解析指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的所解析标记的值来有条件地解析指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记。
在一个示例中,一种非暂态计算机可读存储介质包括存储在其上的指令,这些指令在被执行时使得设备的一个或多个处理器:解析指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的所解析标记的值来有条件地解析指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记。
在一个示例中,一种装置包括:用于解析指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记的装置,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的所解析标记的值而用于有条件地解析指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记的装置。
在以下附图和描述中阐述了一个或多个示例的细节。其他特征、目的和优点将从描述和附图以及权利要求书中显而易见。
视频内容通常包括由一系列帧(或图片)组成的视频序列。一系列帧也可以被称为一组图片(GOP)。每个视频帧或图片可划分成一个或多个区域。可以根据基本单元(例如:视频块)和限定区域的规则集(例如:区域必须是布置成矩形的整数个视频块)来限定区域。如本文所用,术语″视频块″通常可以指图片的区域,或者可以更具体地指可以被预测性地编码的样本值的最大阵列、其子分区和/或对应结构。此外,术语″当前视频块″可以指正被编码或解码的图片的区域。视频块可被定义为可被预测性地编码的样本值的阵列。应当指出的是,在一些情况下,像素值可被描述为包括视频数据的相应分量的样本值,其也可被称为颜色分量(例如:亮度(Y)和色度(Cb和Cr)分量或红色、绿色和蓝色分量)。应当指出的是,在一些情况下,术语″像素值″和″样本值″可互换使用。此外,在一些情况下,像素或样本可称为pel。视频采样格式(也可以被称为色度格式)可以相对于视频块中包括的亮度样本的数量来定义视频块中包括的色度样本的数量。例如:对于4∶2∶0采样格式,亮度分量的采样率是水平和垂直两个方向的色度分量的采样率的两倍。因此,对于根据4∶2∶0格式格式化的视频块,用于亮度分量的样本阵列的宽度和高度是用于色度分量的每个样本阵列的宽度和高度的两倍。对于根据4∶2∶2格式格式化的视频块,亮度分量的样本阵列的宽度是每个色度分量的样本阵列的宽度的两倍,但是亮度分量的样本阵列的高度等于每个色度分量的样本阵列的高度。此外,对于根据4∶4∶4格式格式化的视频块,亮度分量的样本阵列具有与每个色度分量的样本阵列相同的宽度和高度。
视频块可以根据扫描模式(例如:光栅扫描)在图片和/或区域内排序。视频编码器可对视频块和其子分区执行预测编码。视频块和其子分区可以被称为节点。ITU-T H.264规定了包括16×16亮度样本的宏块。也就是说,在ITU-T H.264中,图片被分割成宏块。ITU-TH.265指定了类似的编码树单元(CTU)结构(也称为最大编码单元(LCU))。在ITU-T H.265中,图片被分割成CTU。在ITU-T H.265中,对于图片,CTU尺寸可被设定为包括16×16、32×32或64×64亮度样本。在ITU-T H.265中,CTU由视频数据的每个分量(例如:亮度(Y)和色度(Cb和Cr))的相应编码树块(CTB)组成。此外,在ITU-T H.265中,可根据四叉树(QT)划分结构来划分CTU,这使得CTU的CTB被划分为编码块(CB)。也就是说,在ITU-T H.265中,CTU可被划分为四叉树叶节点。根据ITU-T H.265,一个亮度CB连同两个对应的色度CB和相关联的语法元素被称为编码单元(CU)。在ITU-T H.265中,可以发送信号通知CB的最小允许大小。在ITU-T H.265中,亮度CB的最小允许最小大小是8×8亮度样本。在ITU-TH.265中,使用帧内预测或帧间预测对图片区域进行编码的决定在CU级进行。
在ITU-T H.265中,CU与在CU处具有其根的预测单元(PU)结构相关联。在ITU-TH.265中,PU结构允许分割亮度CB和色度CB以生成对应的参考样本。也就是说,在ITU-TH.265中,可将亮度CB和色度CB分割成相应的亮度和色度预测块(PB),其中PB包括应用了相同预测的样本值的块。在ITU-T H.265中,可将CB划分为1个、2个或4个PB。ITU-T H.265支持从64×64样本向下至4×4样本的PB大小。在ITU-T H.265中,支持正方形PB来进行帧内预测,其中CB可形成PB,或者CB可被分割成四个正方形PB(即,帧内预测PB类型包括M×M或M/2×M/2,其中M为正方形CB的高度和宽度)。在ITU-T H.265中,除了正方形PB之外,还支持矩形PB来进行帧间预测,其中CB可垂直地或水平地减半以形成PB(即,帧间预测PB类型包括M×M、M/2×M/2、M/2×M或M×M/2)。此外,应当指出的是,在ITU-T H.265中,对于帧间预测,支持四个非对称PB划分,其中CB在CB的高度(顶部或底部)或宽度(左侧或右侧)的四分之一处被划分为两个PB(即,非对称划分包括M/4×M左、M/4×M右、M×M/4顶部和M×M/4底部)。对应于PB的帧内预测数据(例如:帧内预测模式语法元素)或帧间预测数据(例如:运动数据语法元素)用于生成PB的参考和/或预测样本值。
如上所述,每个视频帧或图片可划分成一个或多个区域。例如:根据ITU-T H.265,每个视频帧或图片可以被划分为包括一个或多个片段,并且进一步被划分为包括一个或多个图块,其中每个片段包括CTU序列(例如:以光栅扫描顺序排列),并且其中图块是对应于图片的矩形区域的CTU序列。应当指出的是,在ITU-T H.265中片段是从独立片段分段开始并包含同一访问单元内的下一个独立片段分段(如果有的话)之前的所有后续从属片段分段(如果有的话)的一个或多个片段分段的序列。片段分段(如片段)是CTU序列。因此,在一些情况下,术语″片段″和″片段分段″可互换使用以指示CTU序列。此外,在ITU-T H.265中,图块可以由包含在不止一个片段中的CTU组成,并且片段可以由包含在不止一个图块中的CTU组成。然而,ITU-T H.265规定应满足以下一个或两个条件:(1)片段中的所有CTU属于同一个图块;以及(2)图块中的所有CTU属于同一个片段。相对于JVET-L1001,片段需要由整数个完整图块组成,而不是仅需要由整数个完整CTU组成。因此,在一些视频编码技术中,可以支持或可以不支持包括不形成图片的矩形区域的一组CTU的片段。此外,需要由整数个完整图块组成的片段称为图块组。本文所述的技术可适用于片段、图块和/或图块组。图1是示出包括图块组的图片组的示例的概念图。在图1所示的示例中,图片3被示出为包括两个图块组(即,图块组1和图块组2)。应当指出的是,在一些情况下,图块组1和图块组2可被分类为片段和/或图块,只要每一者均满足片段和图块的要求。
JEM规定了具有最大大小的256×256亮度样本的CTU。JEM指定了四叉树加二叉树(QTBT)块结构。在JEM中,QTBT结构允许由二叉树(BT)结构进一步划分四叉树叶节点。也就是说,在JEM中,二叉树结构允许将四叉树叶节点垂直或水平递归划分。在JVET-L1001中,CTU根据QTMT(quadtree plus multi-type tree,四叉树加多类型树)结构划分。JVET-L1001中的QTMT类似于JEM中的QTBT。然而,在JVET-L1001中,除了指示二元分割之外,多类型树还可指示所谓的三元(或TT(triple tree,三叉树))分割。三元分割将块竖直地或水平地划分成三个块。在竖直TT分割的情况下,从左边缘在其宽度的四分之一处和从右边缘在其宽度的四分之一处划分块,并且在水平TT分割的情况下,从顶部边缘在其高度的四分之一处和从底部边缘在其高度的四分之一处划分块。再次参考图1,图1示出了将CTU划分为四叉树叶节点并且根据BT分割或TT分割将四叉树叶节点进一步划分的示例。也就是说,在图1中,虚线指示四叉树中的附加二元和三元划分。
如上所述,帧内预测数据或帧间预测数据用于产生当前视频块的参考样本值。根据参考样本值生成的预测中包括的样本值和当前视频块之间的差异可以称为残差数据。残差数据可以包括对应于视频数据的每个分量的相应差值阵列。残差数据可能在像素域中。可对差值阵列应用变换诸如:离散余弦变换(DCT)、离散正弦变换(DST)、整数变换、小波变换或概念上类似的变换,以生成变换系数。应当指出的是,在ITU-T H.265和中JVET-L1001,CU与在CU级具有其根的TU(transform unit,变换单元)结构相关联。也就是说,为了生成变换系数,可以对差值的阵列进行划分(例如:可以将四个8×8变换应用于16×16残差值阵列)。对于视频数据的每个分量,差值的此类再分可被称为变换块(TB)。应当指出的是,在一些情况下,可以(在视频编码器中)应用核心变换和后续二次变换来生成变换系数。对于视频解码器,变换的顺序是相反的。
可以对变换系数执行量化处理。量化实质上对变换系数进行缩放以便改变表示一组变换系数所需的数据量。量化可包括将变换系数除以量化缩放因子和任何相关联的取整函数(例如:取整为最接近的整数)。量化的变换系数可以被称为系数位阶值。逆量化(或″去量化″)可以包括将系数位阶值与量化缩放因子相乘。应当指出的是,如本文所用,术语量化程序在一些情况下可指除以缩放因子以生成位阶值,并且在一些情况下可指乘以缩放因子以恢复变换系数。也就是说,量化程序在一些情况下可以指量化,而在一些情况下可以指逆量化。
图2A至图2B是示出对视频数据块进行编码的示例的概念图。如图2A所示,通过从视频数据的当前块中减去一组预测值生成残差、对残差执行变换并且将变换系数量化来生成位阶值,对视频数据的当前块进行编码。如图2B中所示,通过对位阶值执行逆量化,执行逆变换,并且将一组预测值加上所得残差来对当前视频数据块进行解码。应当指出的是,在图2A至图2B的示例中,重构块的样本值不同于被编码的当前视频块的样本值。这样,编码可被认为是有损的。然而,对于重构视频的观看者,样本值的差值可被认为是可接受的和/或不可察觉的。另外,如图2A至图2B所示,使用缩放因子阵列执行缩放。
如图2A所示,量化的变换系数被编码成比特流。可根据熵编码技术对量化的变换系数和语法元素(例如:指示视频块的编码结构的语法元素)进行熵编码。熵编码技术的示例包括内容自适应可变长度编码(CAVLC)、上下文自适应二进制算术编码(CABAC)、概率区间划分熵编码(PIPE)等。熵编码的量化变换系数和对应的熵编码的语法元素可形成可用于在视频解码器处再现视频数据的兼容比特流。熵编码程序可包括对语法元素进行二值化。二值化是指将语法值的值转换为一个或多个位的序列的程序。这些位可以被称为″二进制位″。二值化是一个无损程序,并且可以包括以下编码技术中的一种或组合:固定长度编码、一元编码、截断一元编码、截断Rice编码、Golomb编码、k阶指数Golomb编码和Golomb-Rice编码。例如:二值化可包括使用8位固定长度二值化技术将语法元素的整数值5表示为00000101,或者使用一元编码二值化技术将整数值5表示为11110。如本文所用,术语固定长度编码、一元编码、截断一元编码、截断Rice编码、Golomb编码、k阶指数Golomb编码和Golomb-Rice编码中的每一个可以指这些技术的一般实现和/或这些编码技术的更具体实现。例如:可以根据视频编码标准(例如:ITU-T H.265)具体地定义Golomb-Rice编码实现。
熵编码程序还包括使用无损数据压缩算法对箱值进行编码。在CABAC的示例中,对于特定箱,可从与该箱相关联的一组可用上下文模型中选择一个上下文模型。在一些示例中,可以基于先前的箱和/或先前语法元素的值来选择上下文模型。上下文模型可以识别某个箱具有特定值的概率。例如:上下文模型可以指示对0值箱进行编码的概率为0.7。在选择可用的上下文模型之后,CABAC熵编码器可以基于所识别的上下文模型对箱进行算术编码。可以基于已编码的箱的值来更新上下文模型。可基于与上下文一起存储的相关联的变量例如:适应窗口大小、使用上下文的已编码的箱的数量,来更新上下文模型。应当指出的是,可以实现CABAC熵编码器,使得可以使用算术编码对一些语法元素进行熵编码而不使用明确指定的上下文模型,此类编码可以被称为旁路编码。
如上所述,帧内预测数据或帧间预测数据指示如何为当前视频块生成预测。对于帧内预测编码,帧内预测模式可指定用于生成预测的图片内的参考样本的位置。在ITU-TH.265中,已定义的可能的帧内预测模式包括平面(即,表面拟合)预测模式(predMode:0)、DC(即平坦的整体平均)预测模式(predMode:1),以及33个角度预测模式(predMode:2-34)。在JVET-L1001中,已定义的可能的针对亮度的帧内预测模式包括平面预测模式(predMode:0)、DC预测模式(predMode:1),以及65个角度预测模式(predMode:2-66)。应当指出的是,平面预测模式和DC预测模式可以被称为无方向预测模式,并且角度预测模式可以被称为方向预测模式。此外,可能存在可以基于亮度分量的帧内预测模式导出色度分量的帧内预测模式的各种方式。应当指出的是,无论已定义的可能预测模式的数量如何,本文描述的技术可以是普遍适用的。
对于帧间预测编码,确定一个或多个先前解码的图片,即,确定参考图片,并且MV(motion vector,运动向量)识别参考图片中用于生成当前视频块的预测的样本。例如:可以使用位于一个或多个先前编码的图片中的参考样本值来预测当前视频块,并且使用运动向量来指示参考块相对于当前视频块的位置。运动向量可描述例如:运动向量的水平位移分量(即,MVx)、运动向量的竖直位移分量(即,MVy)和运动向量的分辨率(例如:四分之一像素精度、二分之一像素精度、一像素精度、二像素精度、四像素精度)。先前解码的图片(其可包括在当前图片之前或之后输出的图片)可被组织进一个或多个参考图片列表,并且使用参考图片索引值来进行识别。此外,在帧间预测编码中,单预测是指使用来自单个参考图片的样本值来生成预测,双预测是指使用来自两个参考图片的相应样本值来生成预测。也就是说,在单预测中,单个参考图片和对应的运动向量用于生成当前视频块的预测,并且在双预测中,第一参考图片和对应的第一运动向量以及第二参考图片和对应的第二运动向量用于生成当前视频块的预测。在双预测中,将相应的样本值进行组合(例如:相加、舍入和剪辑,或加权平均)以生成预测。图片及其区域可基于哪些类型的预测模式可用于对其视频块进行编码来进行分类。也就是说,对于具有B类型的区域(例如:B片段),可以利用双预测、单预测和帧内预测模式,对于具有P类型的区域(例如:P片段),可以利用单预测和帧内预测模式,并且对于具有I类型的区域(例如:I片段),可以利用仅帧内预测模式。如上所述,通过参考索引识别参考图片。在ITU-T H.265中,对于P片段,存在单个参考图片列表RefPicList0,并且对于B片段,除了RefPicList0之外,还存在第二独立参考图片列表RefPicList1。应当注意,对于B片段中的单预测,可以使用RefPicList0或RefPicList1中的一者来生成预测。此外,需注意,在ITU-T H.265中,在解码程序期间,在开始对图片进行解码时,从存储在DPB(decoded picture buffer,解码图片缓冲器)中的先前解码图片生成参考图片列表。
此外,编码标准可支持各种运动向量预测模式。运动向量预测使能够基于另一运动向量来导出该运动向量的值。运动向量预测的示例包括高级运动向量预测(AMVP)、时间运动向量预测(TMVP)、所谓的″合并″模式,以及″跳过″和″直接″运动推理。此外,运动向量预测的其他示例包括高级时间运动向量预测(ATMVP)和空间-时间运动向量预测(STMVP)。ITU-T H.265支持用于运动向量预测的两种模式:合并模式和所谓的高级运动向量预测(AMVP)。在ITU-T H.265中,对于当前PB的合并模式和AMVP两者,导出一组候选块。视频编码器和视频解码器两者执行相同的程序以导出一组候选。因此,对于当前视频块,在编码和解码期间生成相同组的候选。候选块包括具有相关联的运动信息的视频块,从该相关联的运动信息可导出用于生成当前视频块的预测的运动信息。对于ITU-T H.265中的合并模式,与所选择的候选相关联的所有运动信息(即运动向量位移值、参考图片索引和参考图片列表)被继承作为当前PB的运动信息。也就是说,在视频编码器处,从导出组的候选中选择候选块,并且包括在比特流中的索引值指示所选择的候选,并因此指示当前PB的运动信息。对于ITU-T H.265中的AMVP,用于所选择的候选的运动向量信息被用作当前PB的运动向量的预测运动向量(MVP)。也就是说,在视频编码器处,从导出组的候选中选择候选块,并且指示所选择的候选的索引值和指示预测运动向量与当前PB的运动向量之间的差值的增量值(即,运动向量增量(MVD))包括在比特流中。此外,对于ITU-T H.265中的AMVP,标识参考图片的语法元素包括在比特流中。
在ITU-T H.265中,可从空间相邻块和时间块导出一组候选块。此外,所生成的(或默认的)运动信息可用于运动向量预测。在ITU-T H.265中,用于当前PB的运动向量预测的运动信息是否包括与空间相邻块相关联的运动信息、与时间块相关联的运动信息,或者所生成的运动信息取决于要包括在组中的候选的数量、是否启用时间运动向量预测、块的可用性和/或与块相关联的运动信息是否冗余。
对于ITU-T H.265中的合并模式,可包括在一组候选块中的候选的最大数量可由视频编码器设置并用信号发送,并且最多可以是五个。此外,视频编码器可禁用时间运动向量候选的使用(例如:以便减少在视频解码器处存储运动信息所需的存储器资源的量),并且用信号发送是对图片启用还是禁用时间运动向量候选的使用。图3示出了可包括在ITU-TH.265中的合并模式的一组候选块中的空间相邻块和时间块的位置。ITU-T H.265中用于合并模式的候选组的导出包括确定A1、B1、B0、A0和B2的可用性。应当指出的是,如果块是帧内预测的(即不具有对应的运动信息)或不包括在当前片段(或图块)中,则该块被认为是不可用的。在确定A1、B1、B0、A0和B2的可用性之后,执行一组比较(如图3中的虚线箭头所示)以从候选组中移除冗余的条目。例如:将B2与B1进行比较,并且如果B1具有与B2相等的相关联运动信息,则将其从候选组中移除。从一组候选中移除条目可称为修剪程序。应当指出的是,在图3中,为了降低复杂性,不执行对候选的完整比较(例如:不将A0与B0进行比较),并且因此冗余的条目可能包括在候选组中。
再次参考图3,标记为Temp的虚线块是指可包括在候选组中的时间候选。在用于合并模式的ITU-T H.265中,对于时间候选,定义了包括在参考图片中的空间并置PU,并且该时间候选包括具有恰好位于并置PU(如果可用)的右下角外部的位置的块,或者位于并置PU的中心位置的块。如上所述,设置可包括在一组候选块中的候选的最大数量。如果将最大候选数量设置为N,则在可用空间候选(在修剪之后)和时间候选的数量大于或等于N的情况下,在集合中包括N-1个空间候选和时间候选。在可用空间候选(在修剪之后)和时间候选的数量小于N的情况下,在集合中包括所生成的运动信息以便填充集合。
对于ITU-T H.265中的AMVP,参考图4,候选组的导出包括基于A0、A1、B0、B1、B2的可用性将A0或A1(即左候选)中的一者和B0、B1或B2(上述候选)中的一者添加到组中。也就是说,将第一可用左候选和第一可用上述候选添加到该组中。当左候选和上述候选具有冗余的运动向量分量时,从该组中移除一个冗余的候选。如果包括在该组中的候选的数量小于两个,并且启用时间运动向量预测,则时间候选(温度)包括在该组中。在该组中包括的可用空间候选(修剪后)和时间候选的数量小于两个的情况下,该组中包括零值运动向量以便填充该组。
关于本文所用的公式,可使用以下算术运算符:
+加法
-减法
*乘法,包括矩阵乘法
xy 求幂。将x指定为y的幂。在其他上下文中,此类符号用于上标而非旨在用于解释为求幂。
/将结果向着零截断的整数除法。例如:将7/4和-7/-4截断为1,将-7/4和7/-4截断为-1。
÷在不旨在进行截断或舍入情况下用于表示数学公式中的除法。
Figure BDA0003111297180000161
在不旨在进行截断或舍入情况下用于表示数学公式中的除法。
x%y 模量。x除以y的余数,仅针对x≥0且y>0的整数x和y定义。
此外,可使用以下数学函数:
Log2(x),以2为底的x的对数;
Figure BDA0003111297180000162
Figure BDA0003111297180000163
Ceil(x),大于或等于x的最小整数。
Figure BDA0003111297180000164
Figure BDA0003111297180000165
Figure BDA0003111297180000166
此外,可使用以下逻辑运算符:
x&&y x和y的布尔逻辑″和″
x||y x和y的布尔逻辑″或″
!布尔逻辑″否″
x?y:z如果x为TRUE或不等于0,则求值为y;否则,求值为z。
此外,可使用以下关系运算符:
>大于
>= 大于或等于
<小于
<= 小于或等于
==等于
!=不等于
此外,可使用以下逐位运算符:
&逐位″与″。当对整型变量进行运算时,对整数值的二进制补码表示进行运算。当对包含比另一变量更少位的二进制变量进行运算时,通过添加等于0的更多有效位来扩展较短变量。
|逐位″或″。当对整型变量进行运算时,对整数值的二进制补码表示进行运算。当对包含比另一变量更少位的二进制变量进行运算时,通过添加等于0的更多有效位来扩展较短变量。
^逐位″异或″。当对整型变量进行运算时,对整数值的二进制补码表示进行运算。当对包含比另一变量更少位的二进制变量进行运算时,通过添加等于0的更多有效位来扩展较短变量。
x>>y x的二进制补码整数表示算术右移y个二进制位。该函数仅针对y的非负整数值定义。由于右移而移位到最高有效位(MSB)中的位的值等于移位运算之前的x的MSB。
x<<y x的二进制补码整数表示算术左移y个二进制位。该函数仅针对y的非负整数值定义。由于左移而移位到最低有效位(LSB)中的位的值等于0。
JVET-L1001包括基于ITU-T H.265中定义的合并模式的合并模式和基于ITU-TH.256中定义的AMVP的AMVP模式。如上所述,在ITU-H.265中,对当前PB执行运动向量预测,这可以由对CU的进一步划分引起。此外,如上所述,在JVET-L1001中,QTMT用于将CTU划分成CU。在一些情况下,在JVET-L1001中,可以通过逐个CU导出运动信息来生成当前CU的预测(例如:对于每个CB,导出单个运动向量或单个运动向量对并用于生成预测)。在其他情况下,可以通过导出CU内的子块的运动信息来生成当前CU的预测。例如:可以将32×32CU分成64个4x4子块,并且可以针对每个子块导出运动信息,并且可以使用每个子块的相应运动信息来生成CU的预测。使用子块来生成CU的预测可以称为子块帧间预测。子块帧间预测的示例包括JVET-L1001中描述的所谓仿射模式。运动向量预测技术可用于子块帧间预测技术。在一些情况下,此类技术可称为基于子块的运动向量预测。因此,在JVET-L1001中,存在可以执行帧间预测以便生成当前CU的预测的各种方式。可以执行帧间预测以便生成当前CU的预测的各种方式可以称为帧间预测工具。
表1示出了JVET-L1001中提供的CU级语法,其用于指示如何使用特定帧间预测工具来生成当前CU的预测。
Figure BDA0003111297180000191
Figure BDA0003111297180000201
Figure BDA0003111297180000211
Figure BDA0003111297180000221
表1
参考表1,JVET-L1001为相应语法元素提供以下定义:cu_skip_flag[x0][y0]等于1指定对于当前编码单元,当对P片段或B片段进行解码时,在cu_skip_flag[x0][y0]之后,不解析更多语法元素,除了合并加MVD标记mmvd_flag[x0][y0]、合并加MVD索引mmvd_merge_fag[x0][y0]、合并加MVD距离索引mmvd distance_idx[x0][y0]、合并加MVD方向索引mmvd_direction_idx[x0][y0]、合并候选索引merge_idx[x0][y0]、基于子块的合并标记merge_subblock_flag[x0][y0]和基于子块的合并候选索引merge_subblock_idx[x0][y0]。cu_skip_flag[x0][y0]等于0指定不跳过编码单元。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当cu_skip_flag[x0][y0]不存在时,推断其等于0。
pred mode flag等于0指定在帧间预测模式下对当前编码单元进行编码。
pred_mode_flag等于1指定在帧内预测模式下对当前编码单元进行编码。对于x=x0..x0+cbWidth-1并且y=y0..y0+cbHeight-1,变量CuPredMode[x][y]如下导出:
-如果pred_mode_flag等于0,则CuPredMode[x][y]被设置为等于MODE_INTER。
-否则(pred_mode_flag等于1),CuPredMode[x][y]被设置为等于MODE_INTRA。
当pred_mode_flag不存在时,对于x=x0..x0+cbWidth-1并且y=y0..y0+cbHeight-1,推断变量CuPredModef x][y]等于MODE_INTRA。
mmvd_flag[x0][y0]等于1指定使用具有运动向量差的合并模式来生成当前编码单元的帧间预测参数。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当mmvd_flag[x0][y0]不存在时,推断其等于0。
mmvd_merge_flag[x0][y0]指定合并候选列表中的第一(0)候选还是第二(1)候选者与从mmvd_distance_idx[x0][y0]和mmvd_direction_idx[x0][y0]导出的运动向量差一起使用。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
mmvd distance_idx[x0][y0]指定用于导出MmvdDistance[x0][y0]的索引,如表2中所指定。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
mmvd_distance_idx[x0][y0] MmvdDistance[x0][y0]
0 1
1 2
2 4
3 8
4 16
5 32
6 64
7 128
表2
mmvd_direction_idx[x0][y0]指定用于导出MmvdSign[x0][y0]的索引,如表3中所指定。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
mmvd_direction_idx[x0][y0] MmvdSign[x0][y0][0] MmvdSign[x0][y0][1]
0 +1 0
1 -1 0
2 0 +1
3 0 -1
表3
合并加MVD偏移MmvdOffset[x0][y0]的两个分量如下导出:
MmvdOffset[x0][y0][0]=(MmvdDistance[x0][y0]<<2)*MmvdSign[x0][y0][0]
MmvdOffset[x0][y0][1]=(MmvdDistance[x0][y0]<<2)*MmvdSign[x0][y0][1]
merge_subblock_flag[x0][y0]指定是否从相邻块推断出当前编码单元的基于子块的帧间预测参数。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。当merge_subblock_flag[x0][y0]不存在时,推断其等于0。
merge_idx[x0][y0]指定合并候选列表的合并候选索引,其中x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当merge_idx[x0][y0]不存在时,推断如下:
-如果mmvd_flag[x0][y0]等于1,则推断merge_idx[x0][y0]等于mmvd_mergeflag[x0][y0]。
-否则(mmvd_flag[x0][y0]等于0),推断merge_idx[x0][y0]等于0。
merge_subblock_idx[x0][y0]指定基于子块的合并候选列表的合并候选索引,其中x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当merge_subblock_idx[x0][y0]不存在时,推断其等于0。
merge_flag[x0][y0]指定是否从相邻帧间预测分区推断出当前编码单元的帧间预测参数。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当merge_flag[x0][y0]不存在时,推断如下:
-如果cu_skip_flag[x0][y0]等于1,则推断merge_flag[x0][y0]等于1。
-否则,推断merge_flag[x0][y0]等于0。
mh_intra_flag[x0][y0]指定是否将组合的图片间合并和图片内预测应用于当前编码单元。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当mh_intra_flag[x0][y0]不存在时,推断其等于0。
语法元素mh_intra_luma_mpm_flag[x0][y0]和mh_intra_luma_mpm_idx[x0][y0]指定在组合的图片间合并和图片内预测中使用的亮度样本的帧内预测模式。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。根据JVET-L1001中提供的技术来导出帧内预测模式。
inter_pred_idc[x0][y0]根据表4指定对于当前编码单元是使用list0、list1还是双预测。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
Figure BDA0003111297180000261
表4
当inter_pred_idc[x0][y0]不存在时,推断其等于PRED_L0。
inter_affine_flag[x0][y0]等于1指定对于当前编码单元,当对P片段或B片段进行解码时,使用基于仿射模型的运动补偿来生成当前编码单元的预测样本。
inter_affine_flag[x0][y0]等于0指定基于编码单元不由仿射模型的运动补偿进行预测。当inter_affine_flag[x0][y0]不存在时,推断其等于0。
cu_affine_type_flag[x0][y0]等于1指定对于当前编码单元,当对P片段或B片段进行解码时,使用基于6参数仿射模型的运动补偿来生成当前编码单元的预测样本。cu_affine_type_flag[x0][y0]等于0指定使用基于4参数仿射模型的运动补偿来生成当前编码单元的预测样本。
MotionModelIdc[x][y]表示编码单元的运动模型,如表5所示。阵列索引x、y指定相对于图片的左上亮度样本的亮度样本位置(x,y)。
对于x=x0..x0+cbWidth-1并且y=y0..y0+cbHeight-1,变量MotionModelIdc[x][y]如下导出:
-如果merge_fag[x0][y0]等于1,则以下适用:
MotionModelIdcf x][y]=merge_subblock_flag[x0][y0]
-否则(merge_flag[x0][y0]等于0),以下适用:
MotionModelIdc[x][y]=inter_affine_flag[x0][y0]+cu_affine_type_flag[x0][y0]
MotionModelIdc[x][y] 用于运动补偿的运动模型
0 平移运动
1 4参数仿射运动
2 6参数仿射运动
表5
ref_idx_10[x0][y0]指定当前编码单元的列表0参考图片索引。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当ref_idx_10[x0][y0]不存在时,推断其等于0。
ref_idx_11[x0][y0]具有与ref_idx_10相同的语义,其中10和列表0分别被替换为11和列表1。
mvp_10_fag[x0][y0]指定列表0的运动向量预测器索引,其中x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当mvp_10_flag[x0][y0]不存在时,推断其等于0。
mvp_11_flag[x0][y0]具有与mvp_10_flag相同的语义,其中10和列表0分别被替换为11和列表1。
amvr_mode[x0][y0]指定运动向量差的分辨率。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
当amvr_mode[x0][y0]不存在时,推断其等于0。
变量MvShift被设置为等于amvr_mode[x0][y0]<<1,并且变量MvdL0[x0][y0][0]、MvdL0[x0][y0][1]、MvdL1[x0][y0][0]、MvdL1[x0][y0][1]被修改如下:
MvdL0[x0][y0][0]=MvdL0[x0][y0][0]<<(MvShift+2)
MvdL0[x0][y0][1]=MvdL0[x0][y0][1]<<(MvShift+2)
MvdL1[x0][y0][0]=MvdL1[x0][y0][0]<<(MvShift+2)
MvdL1[x0][y0][1]=MvdL1[x0][y0][1]<<(MvShift+2)
gbi_idx[x0][y0]利用CU权重来指定双预测的权重索引。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。当gbi_idx[x0][y0]不存在时,推断其等于0。
cu_cbf等于1指定对于当前编码单元,存在transform_tree()语法结构。cu_cbf等于0指定对于当前编码单元,不存在transform_tree()语法结构。
当cu_cbf不存在时,推断如下:
-如果cu_skip_flag[x0][y0]等于1,则推断cu_cbf等于0。
-否则,推断cu_cbf等于1。
JVET-L1001中提供的用于指示如何使用特定帧间预测工具来生成当前CU的预测的CU级语法可能不太理想。例如:一些帧间预测工具彼此互斥。因此例如:如果一个工具被发送信号通知为ON(启用),则发送信号通知与另一个互斥的帧间预测工具相关联的语法元素可能是低效的。
参考JVET-L1001,已经提出相对于可用于生成当前CU的预测的帧间预测工具的修改。具体地讲,表6示出了与VVC测试模型3(VTM3)算法中实施的技术相关联的CU级语法,其用于指示如何使用特定帧间预测工具来生成当前CU的预测。
Figure BDA0003111297180000291
Figure BDA0003111297180000301
Figure BDA0003111297180000311
Figure BDA0003111297180000321
表6
相对于表6,相应语法元素的定义可以如上文和下文所提供:
triangle_mode_flag[x0][y0]指定对于当前编码块,是否使用三角模式预测(如″CE10.3.1.b:三角预测单元模式″中所述,2018年10月3日至12日在中国澳门(Macao,CN)举行的ISO/IEC JTC1/SC29/WG11第12次会议的文档JVET-L0124-v2,其在本文中被称为JVET-L0124)。阵列索引x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。当triangle_mode_flag[x0][y0]不存在时,推断其等于0。
triangle_merge_idx[x0][y0]指定三角模式合并候选列表的合并候选索引,其中x0、y0指定所考虑编码块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。当triangle_merge_idx[x0][y0]不存在时,推断其等于0。
因此,表6中所示的语法支持三角模式预测的帧间预测工具。类似于JVET-L1001中提供的CU级语法,对应于VTM3算法的CU级语法可能不太理想。
图5是示出根据本公开的一种或多种技术的可以被配置为对视频数据进行编码(例如:编码和/或解码)的系统的示例的框图。系统100表示可根据本公开的一个或多个示例使用运动向量预测技术执行视频编码的系统的示例。如图5所示,系统100包括源设备102、通信介质110和目标设备120。在图5所示的示例中,源设备102可以包括被配置为对视频数据进行编码并将编码的视频数据传输到通信介质110的任何设备。目标设备120可包括被配置为经由通信介质110接收编码视频数据并且对编码视频数据进行解码的任何设备。源设备102和/或目标设备120可包括配备用于进行有线和/或无线通信的计算设备,并且可以包括机顶盒、数字视频录像机、电视机、台式电脑、膝上型电脑或平板电脑、游戏控制台、移动设备包括例如:″智能″电话、蜂窝电话、个人游戏设备和医学成像设备。
通信介质110可以包括无线和有线通信介质和/或存储设备的任意组合。通信介质110可以包括同轴电缆、光纤电缆、双绞线电缆、无线发射器和接收器、路由器、交换机、中继器、基站或可用于促进各种设备和站点之间的通信的任何其他设备。通信介质110可以包括一个或多个网络。例如:通信介质110可以包括被配置为允许访问万维网例如:互联网的网络。网络可以根据一个或多个电信协议的组合来运营。电信协议可以包括专有方面和/或可以包括标准化电信协议。标准化电信协议的示例包括数字视频广播(DVB)标准、高级电视系统委员会(ATSC)标准、综合服务数字广播(ISDB)标准、有线数据业务接口规范(DOCSIS)标准、全球移动通信系统(GSM)标准、码分多址(CDMA)标准、第3代合作伙伴计划(3GPP)标准、欧洲电信标准协会(ETSI)标准、互联网协议(IP)标准、无线应用协议(WAP)标准以及电气与电子工程师协会(IEEE)标准。
存储设备可以包括能够存储数据的任何类型的设备或存储介质。存储介质可以包括有形或非暂态计算机可读介质。计算机可读介质可以包括光盘、闪存、磁存储器或任何其他合适的数字存储介质。在一些示例中,存储器设备或其部分可以被描述为非易失性存储器,并且在其他示例中,存储器设备的部分可以被描述为易失性存储器。易失性存储器的示例可以包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)。非易失性存储器的示例可以包括磁性硬盘、光盘、软盘、闪存或电可编程存储器(EPROM)或电可擦除和可编程(EEPROM)存储器的形式。一个或多个存储设备可以包括存储卡(例如:安全数字(SD)存储卡)、内部/外部硬盘驱动器和/或内部/外部固态驱动器。数据可以根据定义的文件格式存储在存储设备上。
再次参考图5,源设备102包括视频源104、视频编码器106和接口108。视频源104可包括被配置为捕获和/或存储视频数据的任何设备。例如:视频源104可以包括摄像机和可操作地与其耦接的存储设备。视频编码器106可包括被配置为接收视频数据并生成表示视频数据的兼容比特流的任何设备。兼容比特流可以指视频解码器可以从其接收和再现视频数据的比特流。兼容比特流的各方面可根据视频编码标准来定义。当生成兼容比特流时,视频编码器106可以压缩视频数据。压缩可能是有损的(可觉察的或不可觉察的)或无损的。接口108可以包括被配置为接收兼容视频比特流并且将该兼容视频比特流传输和/或存储到通信介质的任何设备。接口108可以包括网络接口卡诸如:以太网卡,并且可以包括光收发器、射频收发器或者可以发送和/或接收信息的任何其他类型的设备。此外,接口108可以包括计算机系统接口,该计算机系统接口可以允许兼容视频比特流存储在存储设备上。例如:接口108可以包括支持外围部件互连(PCI)和高速外围部件互连(PCIe)总线协议、专用总线协议、通用串行总线(USB)协议、I2C的芯片组、或可用于互连对等设备的任何其他逻辑和物理结构。
再次参考图5,目标设备120包括接口122、视频解码器124和显示器126。接口122可以包括被配置为从通信介质接收兼容视频比特流的任何设备。接口108可以包括网络接口卡诸如:以太网卡,并且可以包括光收发器、射频收发器或者可接收和/或发送信息的任何其他类型的设备。此外,接口122可以包括允许从存储设备检索兼容视频比特流的计算机系统接口。例如:接口122可以包括支持PCI和PCIe总线协议、专用总线协议、USB协议、I2C的芯片组,或者可用于互连对等设备的任何其他逻辑和物理结构。视频解码器124可包括被配置为接收兼容比特流和/或其可接受变体,并且从其再现视频数据的任何设备。显示器126可以包括被配置为显示视频数据的任何设备。显示器126可以包括各种显示设备诸如:液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另外的类型的显示器中的一种。显示器126可以包括高清显示器或超高清显示器。应当指出的是,虽然在图5所示的示例中,视频解码器124被描述为将数据输出到显示器126,但视频解码器124可被配置为将视频数据输出到各种类型的设备和/或其子部件。例如:视频解码器124可被配置为将视频数据输出到任何通信介质,如本文所述。
图6是示出可实现本文所述的用于对视频数据进行编码的技术的视频编码器200的示例的框图。应当指出的是,尽管示例性视频编码器200被示出为具有不同的功能块,但此类图示旨在用于描述目的,并且不将视频编码器200和/或其子部件限制为特定的硬件或软件架构。可使用硬件、固件和/或软件具体实施的任何组合来实现视频编码器200的功能。在一个示例中,视频编码器200可被配置为根据本文描述的技术对视频数据进行编码。视频编码器200可执行图片区域的帧内预测编码和帧间预测编码,并且因此可被称为混合视频编码器。在图6所示的示例中,视频编码器200接收源视频块。在一些示例中,源视频块可以包括已经根据编码结构划分的图片区域。例如:源视频数据可包括宏块、CTU、CB、其子分区和/或另外的等效编码单元。在一些示例中,视频编码器200可被配置为执行源视频块的额外再分。应当指出的是,本文所述的一些技术可普遍适用于视频编码,无论在编码之前和/或期间如何划分源视频数据。在图6所示的示例中,视频编码器200包括求和器202、变换系数生成器204、系数量化单元206、逆量化/变换处理单元208、求和器210、帧内预测处理单元212、帧间预测处理单元214、滤波器单元216和熵编码单元218。
如图6所示,视频编码器200接收源视频块并输出比特流。视频编码器200可通过从源视频块中减去预测视频块来生成残差数据。求和器202表示被配置为执行该减法运算的部件。在一个示例中,在像素域中发生视频块的减去。变换系数生成器204将变换,诸如:离散余弦变换(Discrete Cosine Transform,DCT)、离散正弦变换(Discrete SineTransform,DST)或概念上类似的变换,应用到其残余块或子分区(例如:可以将四个8×8变换应用于16×16残差值阵列)以生成一组残差变换系数。变换系数生成器204可以被配置为执行离散三角变换系列中包括的变换的任意和全部组合。变换系数生成器204可将变换系数输出到系数量化单元206。系数量化单元206可被配置为执行变换系数的量化。如上所述,可以通过调整量化参数来修改量化程度。系数量化单元206可进一步被配置为确定量化参数(QP)并且输出QP数据(例如:用于确定量化组尺寸和/M增量QP值的数据),视频解码器可使用该QP数据来重构量化参数以在视频解码期间执行逆量化。应当注意的是,在其他示例中,可以使用一个或多个附加或另选的参数来确定量化位阶(例如:缩放因子)。本文所述的技术通常可应用于基于对应于视频数据的某一分量的变换系数的量化位阶,确定对应于视频数据的另一分量的变换系数的量化位阶。
如图6所示,量化的变换系数被输出到逆量化/变换处理单元208。逆量化/变换处理单元208可被配置为应用逆量化和逆变换来生成重构的残差数据。如图6所示,在求和器210处,重构的残差数据可以被添加到预测视频块。这样,可以重构编码的视频块,并且可以使用所得重构的视频块来评估给定的预测、变换和/或量化的编码质量。视频编码器200可被配置为执行多个编码回合(例如:在改变预测、变换参数和量化参数中的一个或多个的同时执行编码)。比特流的率失真或其他系统参数可以基于重构的视频块的评估来优化。此外,重构的视频块可被存储并用作预测后续块的参考。
如上所述,可使用帧内预测模式对视频块进行编码。帧内预测处理单元212可被配置为针对当前视频块选择帧内预测模式。帧内预测处理单元212可被配置为评估帧和/或其区域并且确定用以对当前块进行编码的帧内预测模式。如图6所示,帧内预测处理单元212将帧内预测数据(例如:语法元素)输出到熵编码单元218和变换系数生成器204。如上所述,可能的帧内预测模式可以包括平面预测模式、DC预测模式和角度预测模式。帧间预测处理单元214可被配置为针对当前视频块执行帧间预测编码。帧间预测处理单元214可被配置为接收源视频块并且计算视频块的PU的运动信息。运动向量可以指示当前视频帧内的视频块的PU(或类似的编码结构)相对于参考帧内的预测块的位移。帧间预测编码可以使用一个或多个参考图片。例如:帧间预测处理单元214可定位帧缓冲器内的预测视频块(图6中未示出)。需注意,帧间预测处理单元214可以进一步被配置为将一个或多个内插滤波器应用于重构的残差块,以计算用于运动估计的子整数像素值。此外,运动预测可以是单向预测(使用一个运动向量)或双向预测(使用两个运动向量)。帧间预测处理单元214可被配置为通过计算由例如:绝对差之和(SAD)、平方差之和(SSD)或其他差值度量确定的像素差来选择预测块。帧间预测处理单元214可将所计算的运动向量的运动预测数据输出到熵编码单元218。
如上所述,可根据运动向量预测技术来确定和指定运动信息。帧间预测处理单元214可被配置为执行运动向量预测技术,包括例如:如上所述的那些技术。此外,帧间预测处理单元214可被配置为根据如上所述的技术来执行运动向量预测。具体地,帧间预测处理单元214可被配置为执行基于子块的运动向量预测。
如上所述,JVET-L1001中的CU级语法和对应于VTM3算法的CU级语法可能不太理想。在一个示例中,根据本文的技术,仅在选择非子PU合并模式的情况下(即,当merge_subblock_flag为0时),才发送信号通知mmvd_merge_flag。表7示出了根据本文的技术,仅在选择非子PU合并模式的情况下,才发送信号通知mmvd_merge_flag的示例。如表7的语法所示,与表1中的语法相比,发送信号通知mmvd_merge_flag移动到接收merge_subblock_flag以下。
Figure BDA0003111297180000381
Figure BDA0003111297180000391
表7
相对于表7,相应语法元素的定义可以如上文所提供。
表8示出了根据本文的技术,仅在选择非子PU合并模式的情况下,才发送信号通知mmvd_merge_flag的示例。如表8的语法所示,与表6中的语法相比,发送信号通知mmvd_merge_flag移动到接收merge_subblock_flag以下。
Figure BDA0003111297180000401
Figure BDA0003111297180000411
表8
相对于表8,相应语法元素的定义可以如上文所提供。
在一个示例中,根据本文的技术,在if(cu_skip_flag[x0][y0]){...}分支中对组合的图片间合并和图片内预测信令进行镜像。这允许在使用跳过模式时使用多假设预测,这可改善编码效率。表9示出了与表1中的语法相比,在if(cu_skip_flag[x0][y0]){...}分支中对组合的图片间合并和图片内预测信令进行镜像的示例。表10示出了与表6中的语法相比,在if(cu_skip_flag[x0][y0]){...}分支中对组合的图片间合并和图片内预测信令进行镜像的示例。
Figure BDA0003111297180000421
Figure BDA0003111297180000431
表9
Figure BDA0003111297180000441
Figure BDA0003111297180000451
表10
相对于表9和表10,相应语法元素的定义可以如上文所提供。
在一个示例中,根据本文的技术,用于发送信号通知组合的图片间合并和图片内预测(即,多假设预测)信令的以下条件:
if(mmvd_flag[x0][y0]==0&&merge_subblock_flag[x0][y0]==0&&(cbWidth*cbHeight)>=64&&cbWidth<128&&cbHeight<128){
可进一步以高层级标记(即,比CU级更高层级的标记)为条件,该高层级标记如下所述:
if(sps_mh_intra_flag&&mmvd_flag[x0][y0]==0&&merge_subblock_flag[x0][y0]==0&&(cbWidth*cbHeight)>=64&&cbWidth 128&&cbHeight<128){
此外,在一个示例中,根据本文的技术,高层级标记可指示是否发送信号通知多假设预测信令或三角模式信令中的一者。即,以下条件:
if(mmvd_flag[x0][y0]==0&&merge_subblock_flag[x0][y0]==0&&(cbWidth*cbHeight)>=64&&cbWidth<128&&cbHeight<128){
AND
if(sps_triangle_-mode flag&&slice type==B&&cbWidth*cbHeight>=64&&merge_subblock_flag[x0][y0]==0&&mmvd_flag[x0][y0]==0&&mh_intra_flag[x0][y0]==0)
可如下修改:
if(use_mh_or_triangle_flag==MH&&mmvd_flag[x0][y0]==0&&merge_subblock_flag[x0][y0]==0&&(cbWidth*cbHeight)>=64&&cbWidth<128&&cbHeight<128){
AND
if(use_mh_or_triangle_flag==TRIANGLE&&slice_type==B&&cbWidth*cbHeight>=64&&merge_subblock_flag[x0][y0]==0&&mmvd_flag[x0][y0]==0&&mh_intra_flag[x0][y0]==0)
其中,
use_mh_or_triangle_flag可以等于MH或TRIANGLE中的一者。
在一个示例中,根据本文的技术,在非跳过/非合并分支中对三角模式信令进行镜像。这允许在使用非跳过/非合并模式时使用三角预测,这可改善编码效率。应当指出的是,非跳过/非合并也可称为AMVP分支。表11示出了与表6中的语法相比,在非跳过/非合并分支中对三角模式信令进行镜像的示例。
Figure BDA0003111297180000481
Figure BDA0003111297180000491
Figure BDA0003111297180000501
表11
相对于表11,相应语法元素的定义可以如上文所提供。
相对于表6,目前三角合并列表构建程序独立于子块合并列表构建程序和非子块合并列表构建程序。在一个示例中,根据本文的技术,非子块合并列表可以用作三角模式的合并列表。在进行这种选择的情况下,可以接受使三角合并索引二值化与其他(例如:非子块)合并索引二值化相同。当二值化相同时,在一个示例中,选择用于对三角合并索引进行熵编码的上下文可以与非子块合并索引的上下文不同。在一个示例中,非子块合并索引是指语法元素merge_idx[x0][y0]。在一个示例中,三角合并索引是指语法元素triangle_merge_idx[x0][y0]。
在一个示例中,根据本文的技术,语法可被修改为,当triangle_mode_flag[x0][y0]等于0时在标记triangle_mode_flag[x0][y0]之后发送信号通知标记mh_intra_flag[x0][y0],并且当triangle_mode_flag[x0][y0]等于1时在标记triangle mode_flag[x0][y0]之后不发送信号通知标记mh_intra_flag[x0][y0]。在一个示例中,当多假设标记不存在时,推断其值等于0。表12示出了在标记triangle_mode_flag[x0][y0]之后有条件地存在标记mh_intra_flag[x0][y0]的示例。
Figure BDA0003111297180000511
表12
相对于表12,相应语法元素的定义可以如上文所提供。
在一个示例中,根据本文的技术,可使用triangle_mode_flag[x0][y0]来指示在三角模式处理中要使用的运动信息(例如:(MV0,refldx0)、(MV1,refldx1)、InterDir和MMVD数据)。相对于表6,目前三角模式利用合并列表中的运动信息。在一个示例中,通过添加MMVD,可进一步修改合并列表中的运动信息。在一个示例中,使三角模式使用该修改的运动信息而不是直接来自合并列表的运动信息可能是有效的。这将有效地允许工具一起工作。在一个示例中,为了启用此类方法,三角模式将不具有其自身的合并列表,而是使用非子块模式的合并列表和MMVD信令。根据本文的技术,表13示出了三角模式将不具有其自身的合并列表,而是使用非子块模式的合并列表和MMVD信令的示例。
Figure BDA0003111297180000521
表13
相对于表13,相应语法元素的定义可以如上文所提供。
再次参考图6,如图6所示,帧间预测处理单元214可经由滤波器单元216接收重构的视频块,该滤波器单元可以是环路内滤波处理的一部分。滤波器单元216可被配置为执行解块和/或样本自适应偏移(SAO)滤波。解块是指平滑化重构视频块边界的程序(例如:使观察者不易察觉到边界)。SAO滤波是一种可用于通过向重构的视频数据添加偏移以改善重构的非线性振幅映射。熵编码单元218接收量化的变换系数和预测语法数据(即帧内预测数据、运动预测数据和QP数据等)。熵编码单元218可被配置为根据本文中所描述的技术中的一个或多个执行熵编码。熵编码单元218可被配置为输出兼容比特流(即视频解码器可从其接收和再现视频数据的比特流)。这样,视频编码器200表示设备的示例,该设备被配置为:确定是否从相邻块推断出当前视频块的基于子块的帧间预测参数,发送信号通知指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记的值来有条件地发送信号通知指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记。
图7是示出根据本公开的一种或多种技术的可以被配置为对视频数据进行解码的视频解码器的示例的框图。在一个示例中,视频解码器300可被配置为基于上文所述的技术中的一种或多种来重构视频数据。也就是说,视频解码器300可以与上述视频编码器200互逆的方式操作。视频解码器300可被配置为执行帧内预测解码和帧间预测解码,并且因此可被称为混合解码器。在图7所示的示例中,视频解码器300包括熵解码单元302、逆量化单元304、逆变换处理单元306、帧内预测处理单元308、帧间预测处理单元310、求和器312、滤波器单元314和参考缓冲器316。视频解码器300可被配置为以与视频编码系统一致的方式对视频数据进行解码,该视频编码系统可以实现视频编码标准的一个或多个方面。应当指出的是,尽管示出的示例性视频解码器300具有不同的功能块,但此类图示旨在用于描述目的,并且不将视频解码器300和/或其子部件限制为特定的硬件或软件架构。可使用硬件、固件和/或软件具体实施的任何组合来实现视频解码器300的功能。
如图7所示,熵解码单元302接收熵编码的比特流。熵解码单元302可被配置为根据与熵编码程序互逆的程序对来自比特流的量化语法元素和量化系数进行解码。熵解码单元302可以被配置为根据上文所述的任何熵编码技术来执行熵解码。熵解码单元302可以以与视频编码标准一致的方式解析编码的比特流。视频解码器300可被配置为解析编码的比特流,其中该编码的比特流基于上述技术生成。逆量化单元304从熵解码单元302接收量化变换系数(即,位阶值)和量化参数数据。量化参数数据可包括上述增量QP值和/或量化组大小值等的任意和全部组合。视频解码器300和/或逆量化单元304可被配置为基于由视频编码器发送信号通知的值和/或通过视频属性和/或编码参数来确定用于逆量化的QP值。也就是说,逆量化单元304可以以与上述系数量化单元206互逆的方式操作。逆量化单元304可以被配置为应用逆量化。逆变换处理单元306可被配置为执行逆变换以生成重构的残差数据。由逆量化单元304和逆变换处理单元306分别执行的技术可类似于由上述逆量化/变换处理单元208执行的技术。逆变换处理单元306可以被配置为应用逆DCT、逆DST、逆整数变换、不可分二次变换(NSST)或概念上类似的逆变换程序来变换系数,以便产生像素域中的残差块。此外,如上所述,是否执行特定变换(或特定变换的类型)可以取决于帧内预测模式。如图7所示,可以将重构的残差数据提供给求和器312。求和器312可以将重构的残差数据添加到预测视频块并且生成重构的视频数据。
如上所述,可根据预测视频技术(即帧内预测和帧间预测)确定预测视频块。帧内预测处理单元308可以被配置为接收帧内预测语法元素并且从参考缓冲器316检索预测视频块。参考缓冲器316可以包括被配置为存储一个或多个视频数据帧的存储器设备。帧内预测语法元素可识别帧内预测模式,诸如:上述的帧内预测模式。在一个示例中,帧内预测处理单元308可以使用根据本文所述的帧内预测编码技术中的一种或多种来重构视频块。帧间预测处理单元310可以接收帧间预测语法元素并生成运动向量,以识别存储在参考缓冲器316中的一个或多个参考帧中的预测块。帧间预测处理单元310可以生成运动补偿块,可能基于内插滤波器执行内插。用于具有子像素精度的运动估计的内插滤波器的标识符可以被包括在语法元素中。帧间预测处理单元310可以使用内插滤波器来计算参考块的子整数像素的内插值。
如上所述,视频解码器300可解析编码的比特流,其中该编码的比特流基于上述技术而生成,并且如上所述,视频编码器200可根据上述运动向量预测技术生成比特流。因此,视频解码器300可被配置为根据上述技术执行运动向量预测。这样,视频解码器300表示设备的示例,该设备被配置为:解析指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的标记,以及基于指定是否从相邻块推断出当前视频块的基于子块的帧间预测参数的所解析标记的值来有条件地解析指定是否使用具有运动向量差值的合并模式来生成当前视频块的帧间预测参数的标记。
再次参考图7,滤波器单元314可被配置为对重构的视频数据执行滤波。例如:滤波器单元314可被配置为执行解块和/或SAO滤波,如上面关于滤波器单元216所描述的。此外,应当指出的是,在一些示例中,滤波器单元314可被配置为执行专用的任意滤波(例如:视觉增强)。如图7所示,视频解码器300可输出重构的视频块。
在一个或多个示例中,所述功能可以通过硬件、软件、固件或其任何组合来实现。如果以软件实现,则可将功能作为一个或多个指令或代码存储在计算机可读介质上或经由计算机可读介质上传输,并且由基于硬件的处理单元执行。计算机可读介质可包括对应于有形介质诸如:数据存储介质的计算机可读存储介质,或者包括例如:根据通信协议促进计算机程序从一个地方传输到另一个地方的任何介质的传播介质。这样,计算机可读介质通常可以对应于:(1)非暂态的有形计算机可读存储介质,或者(2)通信介质诸如:信号或载波。数据存储介质可以是可以由一个或多个计算机或一个或多个处理器访问以检索用于实现本公开中所述的技术的指令、代码和/或数据结构的任何可用介质。计算机程序产品可以包括计算机可读介质。
以举例而非限制的方式,此类计算机可读存储介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储设备、磁盘存储设备或其他磁存储设备、闪存存储器、或者可用于存储指令或数据结构形式的所需程序代码并且可由计算机访问的任何其他介质。而且,任何连接都被适当地称为计算机可读介质。例如:如果使用同轴电缆、光纤电缆、双绞线、数字用户线路(DSL)或无线技术诸如:红外线、无线电和微波从网站、服务器或其他远程源传输指令,则同轴电缆、光纤电缆、双绞线、DSL或无线技术诸如:红外线、无线电和微波都包含在介质的定义中。然而,应当理解,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其他暂态介质,而是针对非暂态有形存储介质。如本文所用,磁盘和光盘包括压缩光盘(CD)、激光盘、光学光盘、数字通用光盘(DVD)、软磁盘及Blu-ray光盘,其中磁盘通常以磁性方式复制数据,而光盘则利用激光以光学方式复制数据。上述的组合也应该包括在计算机可读介质的范围内。
可以由一个或多个处理器诸如:一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其他等效集成或离散逻辑电路执行指令。因此,如本文所用的术语″处理器″可以指任何前述结构或适用于实现本文所描述的技术的任何其他结构。此外,在一些方面中,可以在被配置用于编码和解码的专用硬件和/或软件模块内提供本文所述的功能,或者将其结合到组合编解码器中。而且,这些技术可以完全在一个或多个电路或逻辑元件中实现。
本公开的技术可以在各种设备或装置包括无线手机、集成电路(IC)或一组IC(例如:芯片组)中实现。在本公开中描述了各种部件、模块或单元,以强调被配置为执行所公开的技术的设备的功能方面,但是不一定需要通过不同的硬件单元来实现。相反,如上所述,可以将各种单元组合在编解码器硬件单元中,或者通过互操作硬件单元包括如上所述的一个或多个处理器的集合,结合合适的软件和/或固件来提供各种单元。
此外,每个上述实施方案中所使用的基站设备和终端设备的每个功能块或各种特征可通过电路(通常为一个集成电路或多个集成电路)实施或执行。被设计为执行本说明书中所述的功能的电路可包括通用处理器、数字信号处理器(DSP)、专用或通用集成电路(ASIC)、现场可编程门阵列(FPGA),或其他可编程逻辑设备、分立栅极或晶体管逻辑器、或分立硬件部件、或它们的组合。通用处理器可为微处理器,或另选地,该处理器可为常规处理器、控制器、微控制器或状态机。通用处理器或上述每种电路可由数字电路进行配置,或可由模拟电路进行配置。此外,当由于半导体技术的进步而出现制成取代当前集成电路的集成电路的技术时,也能够使用通过该技术生产的集成电路。
已经描述了各种示例。这些示例和其他示例在以下权利要求的范围内。
<交叉引用>
该非临时申请根据35 U.S.C.§119,要求2018年12月21日提交的临时申请62/784,014的优先权,该临时申请的全部内容据此以引用方式并入。

Claims (4)

1.一种对视频数据进行解码的方法,所述方法包括:
对合并子块标记进行解码,所述合并子块标记指定是否从相邻块推断出编码单元的基于子块的帧间预测参数;以及
如果所述合并子块标记的值等于零并且运动向量差标记的值等于一,则对运动向量差合并标记进行解码,
其中
所述运动向量差合并标记指定使用具有运动向量差的预测参数,并且
所述运动向量差标记指定是否启用具有运动向量差的合并模式。
2.一种对视频数据进行编码的方法,所述方法包括:
对合并子块标记进行编码,所述合并子块标记指定是否从相邻块推断出编码单元的基于子块的帧间预测参数;以及
如果所述合并子块标记的值等于零并且运动向量差标记的值等于一,则对运动向量差合并标记进行编码,
其中
所述运动向量差合并标记指定使用具有运动向量差的预测参数,并且
所述运动向量差标记指定是否启用具有运动向量差的合并模式。
3.一种设备,所述设备包括被配置为执行权利要求1至2中所述的步骤的任意和全部组合的一个或多个处理器。
4.根据权利要求1所述的方法,还包括:
通过使用所述合并子块标记以及用于组合的图片间合并和图片内预测的标记,对组合标记进行解码,所述组合标记指定是否将所述组合的图片间合并和图片内预测应用于编码单元。
CN201980082131.XA 2018-12-21 2019-12-17 在视频编码中用于执行帧间预测的系统和方法 Pending CN113170188A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862784014P 2018-12-21 2018-12-21
US62/784014 2018-12-21
PCT/JP2019/049315 WO2020129950A1 (en) 2018-12-21 2019-12-17 Systems and methods for performing inter prediction in video coding

Publications (1)

Publication Number Publication Date
CN113170188A true CN113170188A (zh) 2021-07-23

Family

ID=71101760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980082131.XA Pending CN113170188A (zh) 2018-12-21 2019-12-17 在视频编码中用于执行帧间预测的系统和方法

Country Status (6)

Country Link
US (2) US11706437B2 (zh)
EP (1) EP3900354A4 (zh)
KR (1) KR20210099129A (zh)
CN (1) CN113170188A (zh)
BR (1) BR112021012163A2 (zh)
WO (1) WO2020129950A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11611759B2 (en) * 2019-05-24 2023-03-21 Qualcomm Incorporated Merge mode coding for video coding
WO2021136747A1 (en) * 2019-12-30 2021-07-08 Interdigital Vc Holdings France Merge mode, adaptive motion vector precision, and transform skip syntax
CN113298147B (zh) * 2021-05-25 2022-10-25 长春大学 基于区域能量和直觉模糊集的图像融合方法及装置
WO2023249468A1 (ko) * 2022-06-24 2023-12-28 주식회사 케이티 영상 부호화/복호화 방법 및 비트스트림을 저장하는 기록 매체
US20240015305A1 (en) * 2022-07-07 2024-01-11 Tencent America LLC Subblock intra and inter coding

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150023422A1 (en) * 2013-07-16 2015-01-22 Qualcomm Incorporated Processing illumination compensation for video coding
WO2015142057A1 (ko) * 2014-03-21 2015-09-24 주식회사 케이티 다시점 비디오 신호 처리 방법 및 장치
CN105493505A (zh) * 2014-06-19 2016-04-13 微软技术许可有限责任公司 统一的帧内块复制和帧间预测模式
CN105637870A (zh) * 2013-09-13 2016-06-01 高通股份有限公司 使用不对称运动分割的视频译码技术
CN107079161A (zh) * 2014-09-01 2017-08-18 寰发股份有限公司 用于屏幕内容以及视频编码的帧内图片块复制的方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3873093A4 (en) * 2018-10-23 2022-07-20 Wilus Institute of Standards and Technology Inc. METHOD AND APPARATUS FOR PROCESSING A VIDEO SIGNAL USING SUBBLOCK-BASED MOTION COMPENSATION
EP3881533A4 (en) * 2018-11-14 2022-09-07 Tencent America LLC VIDEO CODING METHOD AND APPARATUS
US10917636B2 (en) * 2018-12-03 2021-02-09 Tencent America LLC Method and apparatus for video coding
EP3900353A2 (en) * 2018-12-17 2021-10-27 InterDigital VC Holdings, Inc. Combining motion vector difference coding tools with other motion modes

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150023422A1 (en) * 2013-07-16 2015-01-22 Qualcomm Incorporated Processing illumination compensation for video coding
CN105637870A (zh) * 2013-09-13 2016-06-01 高通股份有限公司 使用不对称运动分割的视频译码技术
WO2015142057A1 (ko) * 2014-03-21 2015-09-24 주식회사 케이티 다시점 비디오 신호 처리 방법 및 장치
CN105493505A (zh) * 2014-06-19 2016-04-13 微软技术许可有限责任公司 统一的帧内块复制和帧间预测模式
CN107079161A (zh) * 2014-09-01 2017-08-18 寰发股份有限公司 用于屏幕内容以及视频编码的帧内图片块复制的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
BENJAMIN BROSS: "Versatile Video Coding(Draft3)", 《JOINT VIDEO EXPERTS TEAM(JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》, pages 33 - 62 *
HAO LI; KUI FAN; RONGGANG WANG; GE LI; WENMIN WANG: "A MOTION AIDED MERGE MODE FOR HEVC", 《2018 IEEE INTERNATIONAL CONFERENCE ON ACOUSTICS, SPEECH AND SIGNAL PROCESSING (ICASSP)》 *

Also Published As

Publication number Publication date
EP3900354A1 (en) 2021-10-27
WO2020129950A1 (en) 2020-06-25
EP3900354A4 (en) 2022-09-14
KR20210099129A (ko) 2021-08-11
US11706437B2 (en) 2023-07-18
US20230308675A1 (en) 2023-09-28
BR112021012163A2 (pt) 2021-08-31
US20220078460A1 (en) 2022-03-10

Similar Documents

Publication Publication Date Title
CN109196863B (zh) 用于改变量化参数的系统和方法
US20230370586A1 (en) Method of decoding intra prediction data
US20240107080A1 (en) Method of partitioning video data, device for decoding video data, and device for coding video data
US11706437B2 (en) Systems and methods for performing inter prediction in video coding
US20220116646A1 (en) Method of deriving motion information
AU2019381454B2 (en) Systems and methods for deriving a motion vector prediction in video coding
WO2020184637A1 (en) Systems and methods for performing intra prediction coding in video coding
WO2020141598A1 (en) Systems and methods for performing intra prediction coding
US12010318B2 (en) Systems and methods for reference offset signaling in video coding
WO2019188942A1 (en) Systems and methods for performing motion compensated prediction for video coding
US12010301B2 (en) Systems and methods for performing intra prediction coding in video coding
CN114424537A (zh) 在视频编码中用于执行帧间预测编码的系统和方法
WO2019244719A1 (en) Systems and methods for performing affine motion compensation prediction for coding of video data
WO2020166556A1 (en) Systems and methods for performing inter prediction in video coding
WO2020095984A1 (en) Systems and methods for performing binary arithmetic coding 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