CN111527751A - 用于在用于视频编码的图片的边界处划分视频块的系统和方法 - Google Patents

用于在用于视频编码的图片的边界处划分视频块的系统和方法 Download PDF

Info

Publication number
CN111527751A
CN111527751A CN201880080555.8A CN201880080555A CN111527751A CN 111527751 A CN111527751 A CN 111527751A CN 201880080555 A CN201880080555 A CN 201880080555A CN 111527751 A CN111527751 A CN 111527751A
Authority
CN
China
Prior art keywords
video
partitioning
partition
picture
boundary
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
CN201880080555.8A
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 CN111527751A publication Critical patent/CN111527751A/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/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/103Selection of coding mode or of prediction mode
    • 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/167Position within a video image, e.g. region of interest [ROI]
    • 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/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

本发明提供了一种视频编码设备,所述视频编码设备可被配置为根据本文所述的一种或多种技术执行视频编码。在一个示例中,一种划分用于视频编码的视频数据的方法包括:接收包括样本值的视频块;确定所述视频块是否是分数边界视频块;并且根据推断划分使用可用划分模式的子集来划分所述样本值。

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参考软件的具体实施。
视频压缩技术可减少存储和传输视频数据的数据需求。视频压缩技术可通过利用视频序列中固有的冗余来减少数据需求。视频压缩技术可将视频序列再分成连续较小的部分(即,视频序列内的帧组、帧组内的帧、帧内的片段、片段内的编码树单元(例如,宏块)、编码树单元内的编码块等)。可以使用帧内预测编码技术(例如,图片内(空间))和帧间预测技术(即图片间(时间))来生成待编码的视频数据单元与视频数据的参考单元之间的差值。该差值可被称为残差数据。残差数据可被编码为量化变换系数。语法元素可以涉及残差数据和参考编码单元(例如,帧内预测模式索引、运动矢量和块矢量)。可以对残差数据和语法元素进行熵编码。熵编码的残差数据和语法元素可以包括在兼容比特流中。
发明内容
在一个示例中,一种划分用于视频编码的视频数据的方法包括:接收包括样本值的视频块;确定该视频块是否是分数边界视频块;并且根据推断划分使用可用划分模式的子集来划分该样本值。
在一个示例中,一种重构视频数据的方法包括:接收对应于包括样本值的编码视频块的残差数据;确定该编码视频块是否是分数边界视频块;根据推断划分使用可用划分模式的子集来确定对于该编码视频块的划分;并且基于该残差数据和对于该编码视频块的划分来重构视频数据。
附图说明
图1是示出根据本公开的一种或多种技术的根据四叉树二叉树划分进行编码的一组图片的示例的概念图。
图2是示出根据本公开的一种或多种技术的四叉树二叉树的示例的概念图。
图3是示出根据本公开的一种或多种技术的视频分量四叉树二叉树划分的概念图。
图4是示出根据本公开的一种或多种技术的视频分量采样格式的示例的概念图。
图5是示出根据本公开的一种或多种技术的视频数据块的可能的编码结构的概念图。
图6A是示出根据本公开的一种或多种技术的对视频数据块进行编码的示例的概念图。
图6B是示出根据本公开的一种或多种技术的对视频数据块进行编码的示例的概念图。
图7是示出根据本公开的一种或多种技术的划分为编码单元的图片的示例的概念图。
图8是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的四叉树划分的示例的概念图。
图9是示出根据本公开的一种或多种技术的划分模式的概念图。
图10是示出根据本公开的一种或多种技术的划分模式的概念图。
图11是示出根据本公开的一种或多种技术的划分模式的概念图。
图12是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码和解码的系统的示例的框图。
图13是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码的视频编码器的示例的框图。
图14A是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图14B是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图14C是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图15A是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图15B是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图15C是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图16A是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图16B是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图16C是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图17A是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图17B是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图17C是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图18A是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图18B是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图18C是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图18D是示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图19是示出根据本公开的一种或多种技术的可被配置为对视频数据进行解码的视频解码器的示例的框图。
图20包括示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图21包括示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
图22包括示出根据本公开的一种或多种技术的发生在图片边界处的对于编码单元的划分的示例的概念图。
具体实施方式
一般来讲,本公开描述了用于对视频数据进行编码的各种技术。具体地讲,本公开描述了用于划分视频数据的图片的技术。应当指出的是,虽然本公开的技术是关于ITU-TH.264、ITU-T H.265和JEM描述的,但是本公开的技术可普遍应用于视频编码。例如,除了包括在ITU-T H.265和JEM中的那些技术,本文所述的编码技术可并入视频编码系统(包括基于未来视频编码标准的视频编码系统),包括块结构、帧内预测技术、帧间预测技术、变换技术、滤波技术和/或其他熵编码技术。因此,对ITU-T H.264、ITU-T H.265和/或JEM的参考是出于描述性目的,并且不应被解释为限制本文所述技术的范围。此外,应当指出的是,将文献以引用方式并入本文是出于描述性目的,并且不应被解释为限制或产生关于本文所用术语的歧义。例如,在某个并入的参考文献中提供的对某个术语的定义不同于另一个并入的参考文献和/或如本文所用的该术语的情况下,则该术语应以广泛地包括每个相应定义的方式和/或以包括替代方案中每个特定定义的方式来解释。
在一个示例中,用于划分用于视频编码的视频数据的设备包括一个或多个处理器,该一个或多个处理器被配置为接收包括样本值的视频块;确定该视频块是否是分数边界视频块;并且根据推断划分使用可用划分模式的子集来划分该样本值。
在一个示例中,非暂态计算机可读存储介质包括存储在其上的指令,当这些指令被执行时,使得设备的一个或多个处理器接收包括样本值的视频块;确定该视频块是否是分数边界视频块;并且根据推断划分使用可用划分模式的子集来划分该样本值。
在一个示例中,装置包括:用于接收包括样本值的视频块的装置;用于确定该视频块是否是分数边界视频块的装置;以及用于根据推断划分使用可用划分模式的子集来划分该样本值的装置。
在一个示例中,用于重构视频数据的设备包括一个或多个处理器,该一个或多个处理器被配置为接收对应于包括样本值的编码视频块的残差数据;确定该编码视频块是否是分数边界视频块;根据推断划分使用可用划分模式的子集来确定对于该编码视频块的划分;并且基于该残差数据和对于该编码视频块的划分来重构视频数据。
在一个示例中,非暂态计算机可读存储介质包括存储在其上的指令,当这些指令被执行时,使得设备的一个或多个处理器接收对应于包括样本值的编码视频块的残差数据;确定该编码视频块是否是分数边界视频块;根据推断划分使用可用划分模式的子集来确定对于该编码视频块的划分;并且基于该残差数据和对于该编码视频块的划分来重构视频数据。
在一个示例中,装置包括:用于接收对应于包括样本值的编码视频块的残差数据的装置;用于确定该编码视频块是否是分数边界视频块的装置;用于根据推断划分使用可用划分模式的子集来确定对于该编码视频块的划分的装置;以及用于基于该残差数据和对于该编码视频块的划分来重构视频数据的装置。
在以下附图和描述中阐述了一个或多个示例的细节。其他特征、目的和优点将从描述和附图以及权利要求书中显而易见。
视频内容通常包括由一系列帧(或图片)组成的视频序列。一系列帧也可以被称为一组图片(GOP)。每个视频帧或图片可以包括多个片段或图块,其中片段或图块包括多个视频块。如本文所用,术语“视频块”通常可以指图片的区域,或者可以更具体地指可以被预测性地编码的样本值的最大阵列、其子分区和/或对应结构。此外,术语“当前视频块”可以指正被编码或解码的图片的区域。视频块可被定义为可被预测性地编码的样本值的阵列。应当指出的是,在一些情况下,像素值可被描述为包括视频数据的相应分量的样本值,其也可被称为颜色分量(例如,亮度(Y)和色度(Cb和Cr)分量或红色、绿色和蓝色分量)。应当指出的是,在一些情况下,术语“像素值”和“样本值”可互换使用。视频块可以根据扫描模式(例如,光栅扫描)在图片内排序。视频编码器可对视频块和其子分区执行预测编码。视频块和其子分区可以被称为节点。
ITU-T H.264规定了包括16×16亮度样本的宏块。也就是说,在ITU-T H.264中,图片被分割成宏块。ITU-T H.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-TH.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-T H.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的参考和/或预测样本值。
JEM规定了具有最大大小的256×256亮度样本的CTU。JEM指定了四叉树加二叉树(QTBT)块结构。在JEM中,QTBT结构允许由二叉树(BT)结构进一步划分四叉树叶节点。也就是说,在JEM中,二叉树结构允许将四叉树叶节点垂直或水平递归划分。图1示出了CTU(例如,具有256×256亮度样本的大小的CTU)被划分为四叉树叶节点并且四叉树叶节点根据二叉树进一步划分的示例。也就是说,在图1中,虚线指示四叉树中的附加二叉树划分。因此,JEM中的二叉树结构实现了正方形和矩形叶节点,其中每个叶节点包括CB。如图1所示,包括在GOP中的图片可包括片段,其中每个片段包括CTU序列,并且每个CTU可根据QTBT结构被划分。图1示出了包括在片段中的一个CTU的QTBT划分的示例。图2是示出对应于图1所示的示例性QTBT划分的QTBT的示例的概念图。在JEM中,通过发送信号通知QT分割标记和BT分割模式语法元素来发送信号通知QTBT。当QT分割标记的值为1时,指示QT分割。当QT分割标记的值为0时,发送信号通知BT分割模式语法元素。当BT分割模式语法元素的值为0(即,BT分割模式编码树=0)时,不指示二进制分割。当BT分割模式语法元素的值为1时,指示垂直分割模式。当BT分割模式语法元素的值为2时,指示水平分割模式。此外,可执行BT分割,直到达到最大BT深度。
在图2中,Q指示四叉树分割,H指示水平二进制分割,V指示垂直二进制分割,并且CU指示所得CU叶。如图2所示,分割指示符(例如,QT分割标记语法元素和BT分割模式语法元素)与深度相关联,其中深度为零对应于QTBT的根,并且较高的深度值对应于除根之外的后续深度。应当指出的是,在图2中,树对应于从左到右的z扫描。也就是说,对于QT分割,图中从左到右的树节点对应于QT部分的z扫描;对于水平分割,从左到右的树节点对应于这些部分的从上到下的扫描;并且对于垂直分割,从左到右的树节点对应于这些部分的从左到右的扫描。本文所述的其他示例性树也可利用从左到右的z扫描。
此外,应当指出的是,在JEM中亮度分量和色度分量可具有单独的QTBT划分。也就是说,在JEM中,可通过发送信号通知相应的QTBT来独立地划分亮度分量和色度分量。图3示出了根据用于亮度分量的QTBT和用于色度分量的独立QTBT划分CTU的示例。如图3中所示,当独立QTBT用于划分CTU时,亮度分量的CB不需要并且不一定与色度分量的CB对准。目前,在JEM中,对使用帧内预测技术的片段启用独立的QTBT结构。应当指出的是,在一些情况下,可能需要从相关联的亮度变量值导出色度变量的值。在这些情况下,可用色度中的样本位置和色度格式确定亮度中对应的样本位置,从而确定相关联的亮度变量值。
另外,应当指出的是,JEM包括用于发送信号通知QTBT树的以下参数:
CTU大小:四叉树的根节点大小(例如,256×256、128×128、64×64、32×32、16×16亮度样本);
MinQTSlze:最小允许四叉树叶节点大小(例如,16×16、8×8亮度样本);
MaxBTSize:最大允许二叉树根节点大小,即可通过二进制分割划分的四叉树叶节点的最大大小(例如,64×64亮度样本);
MaxBTDepth:最大允许二叉树深度,即可以发生二进制分割的最低位阶,其中四叉树叶节点为根(例如,3);
MinBTSize:最小允许二叉树叶节点大小;即,二进制叶节点的最小宽度或高度(例如,4个亮度样本)。
应当指出的是,在一些示例中,对于视频的不同分量,MinQTSize、MaxBTSize、MaxBTDepth和/或MinBTSize可不同。
在JEM中,CB用于预测而无需任何进一步的划分。也就是说,在JEM中,CB可以是对其应用相同预测的样本值的块。因此,JEM QTBT叶节点可类似于ITU-T H.265中的PB。
视频采样格式(也可以被称为色度格式)可以相对于CU中包括的亮度样本的数量来定义CU中包括的色度样本的数量。例如,对于4:2:0采样格式,亮度分量的采样率是水平和垂直两个方向的色度分量的采样率的两倍。因此,对于根据4:2:0格式格式化的CU,用于亮度分量的样本阵列的宽度和高度是用于色度分量的每个样本阵列的宽度和高度的两倍。图4是示出根据4:2:0样本格式格式化的编码单元的示例的概念图。图4示出了色度样本相对于CU内的亮度样本的相对位置。如上所述,通常根据水平和垂直亮度样本的数量来定义CU。因此,如图4所示,根据4:2:0样本格式格式化的16×16CU包括亮度分量的16×16样本和用于每个色度分量的8×8样本。另外,在图4所示的示例中,示出了16×16CU的相邻视频块的色度样本相对于亮度样本的相对位置。对于根据4:2:2格式格式化的CU,亮度分量的样本阵列的宽度是每个色度分量的样本阵列的宽度的两倍,但是亮度分量的样本阵列的高度等于每个色度分量的样本阵列的高度。此外,对于根据4:4:4格式格式化的CU,亮度分量的样本阵列具有与每个色度分量的样本阵列相同的宽度和高度。
如上所述,帧内预测数据或帧间预测数据用于产生样本值的块的参考样本值。包括在当前PB或另一类型的图片区域结构和相关联的参考样本(例如,使用预测生成的那些)中的样本值之间的差可以被称为残差数据。残差数据可以包括对应于视频数据的每个分量的相应差值阵列。残差数据可能在像素域中。可对差值阵列应用变换诸如离散余弦变换(DCT)、离散正弦变换(DST)、整数变换、小波变换或概念上类似的变换,以生成变换系数。应当指出的是,在ITU-T H.265中,CU与在CU级具有其根的变换单元(TU)结构相关联。也就是说,在ITU-T H.265中,为了生成变换系数,可以对差值的阵列进行再分(例如,可以将四个8×8变换应用于16×16残差值阵列)。对于视频数据的每个分量,差值的此类再分可被称为变换块(TB)。应当指出的是,在ITU-T H.265中,TB不一定与PB对准。图5示出了可用于对特定CB进行编码的另选PB和TB组合的示例。此外,应当指出的是,在ITU-T H.265中,TB可具有以下大小4×4、8×8、16×16和32×32。
应当指出的是,在JEM中,对应于CB的残差值用于生成变换系数而无需进一步划分。也就是说,在JEM中,QTBT叶节点可以类似于ITU-T H.265中的PB和TB两者。应当指出的是,在JEM中,可以(在视频编码器中)应用核心变换和后续二次变换来生成变换系数。对于视频解码器,变换的顺序是相反的。此外,在JEM中,是否应用二次变换来生成变换系数可取决于预测模式。
可以对变换系数执行量化处理。量化实质上对变换系数进行缩放以便改变表示一组变换系数所需的数据量。量化通常可包括将变换系数除以量化缩放因子和任何相关联的取整函数(例如,取整为最接近的整数)。量化的变换系数可以被称为系数位阶值。逆量化(或“去量化”)可以包括将系数位阶值与量化缩放因子相乘。应当指出的是,如本文所用,术语量化过程在一些情况下可指除以缩放因子以生成位阶值,并且在一些情况下可指乘以缩放因子以恢复变换系数。也就是说,量化过程在一些情况下可以指量化,而在一些情况下可以指逆量化。
图6A至图6B是示出对视频数据块进行编码的示例的概念图。如图6A所示,通过从视频数据的当前块中减去一组预测值生成残差、对残差执行变换并且将变换系数量化来生成位阶值,对视频数据的当前块(例如,对应于视频分量的CB)进行编码。如图6B中所示,通过对位阶值执行逆量化,执行逆变换,并且将一组预测值加上所得残差来对当前视频数据块进行解码。应当指出的是,在图6A至图6B的示例中,重构块的样本值不同于被编码的当前视频块的样本值。这样,编码可被认为是有损的。然而,对于重构视频的观看者,样本值的差值可被认为是可接受的或不可察觉的。另外,如图6A至图6B所示,使用缩放因子阵列执行缩放。
如图6A所示,量化的变换系数被编码成比特流。可根据熵编码技术对量化的变换系数和语法元素(例如,指示视频块的编码结构的语法元素)进行熵编码。熵编码技术的示例包括内容自适应可变长度编码(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,并且对值为1的箱进行编码的概率为0.3。应当指出的是,在一些情况下,对值为0的箱进行编码的概率和对值为1的箱进行编码的概率之和可不等于1。在选择可用的上下文模型之后,CABAC熵编码器可以基于所识别的上下文模型对箱进行算术编码。可以基于已编码的箱的值来更新上下文模型。可基于与上下文一起存储的相关联的变量例如适应窗口大小、使用上下文的已编码的箱的数量,来更新上下文模型。应当指出的是,根据ITU-T H.265,可以实现CABAC熵编码器,使得可以使用算术编码对一些语法元素进行熵编码而不使用明确指定的上下文模型,此类编码可以被称为旁路编码。
如上所述,帧内预测数据或帧间预测数据可以将图片的区域(例如,PB或CB)与对应的参考样本相关联。对于帧内预测编码,帧内预测模式可指定图片内的参考样本的位置。在ITU-T H.265中,已定义的可能的帧内预测模式包括平面(即,表面拟合)预测模式(predMode:0)、DC(即平坦的整体平均)预测模式(predMode:1),以及33个角度预测模式(predMode:2-34)。在JEM中,已定义的可能的帧内预测模式包括平面预测模式(predMode:0)、DC预测模式(predMode:1),以及65个角度预测模式(predMode:2-66)。应当指出的是,平面预测模式和DC预测模式可以被称为无方向预测模式,并且角度预测模式可以被称为方向预测模式。应当指出的是,无论已定义的可能预测模式的数量如何,本文描述的技术可以是普遍适用的。
对于帧间预测编码,运动矢量(MV)识别除了待编码的视频块的图片之外的图片中的参考样本,从而利用视频中的时间冗余。例如,可以从位于先前编码的一个或多个帧中的一个或多个参考块预测当前视频块,并且可以使用运动矢量来指示参考块的位置。运动矢量和相关联的数据可以描述例如运动矢量的水平分量、运动矢量的垂直分量、运动矢量的分辨率(例如,四分之一像素精度、二分之一像素精度、一像素精度、二像素精度、四像素精度)、预测方向和/或参考图片索引值。此外,编码标准诸如ITU-T H.265,可以支持运动矢量预测。运动矢量预测允许待指定的运动矢量使用相邻块的运动矢量。运动矢量预测的示例包括高级运动矢量预测(AMVP)、时间运动矢量预测(TMVP)、所谓的“合并”模式,以及“跳过”和“直接”运动推理。此外,JEM支持高级时间运动矢量预测(ATMVP)和空间-时间运动矢量预测(STMVP)。
如上所述,在视频编码期间,图片可以被分割或划分为基本编码单元,例如ITU-TH.264中的16×16宏块;H.265中的16×16、32×32或64×64CTU;以及JEM中的16×16、32×32、64×64、128×128或256×256CTU。视频序列可具有各种视频属性,包括例如帧速率和图片分辨率。例如,所谓的高清晰度(HD)视频序列可包括具有分辨率为1980×1080像素或1280×720像素的图片。此外,示例性所谓的超高清(UHD)视频序列可包括分辨率为3840×2160像素或7680×4320像素的图片。此外,视频序列包括具有各种其他分辨率的图片。因此,在一些情况下,根据图片的大小和基本编码单元的大小(例如,CTU大小),图片的宽度和/或高度可能无法分成整数个基本编码单元。图7示出了被划分为64×64CTU的1280×720的图片的示例。如图7所示,CTU的底行不与底部图片边界对准。也就是说,底行CTU中仅16行样本适配在图片边界内(720除以64为11,余数为16)。如本文所用,术语分数边界视频块、分数边界CTU、分数边界LCU或分数边界编码单元可用于指代在图片边界内具有仅其一部分的图片的边界列和/或边界行中的视频块。应当指出的是,边界列和边界行可包括片段、图块和/或图片边界。此外,应当指出的是,在一些情况(例如,全向视频或所谓的环绕视频)下,边界列可包括左边界,并且边界行可包括顶行。
通常,例如,在ITU-T H.265中,以预定义的方式划分分数边界视频块,也就是说,在不发送信号通知分割指示符的情况下发生推断划分。通常,推断划分是在形成与图片边界对准的CU的深度处发生的划分。例如,参考图7,底行CTU的推断划分可以包括推断QT划分,从而在CTU的顶部产生具有四个16×16CU的行,其中具有四个16×16CU的行包括在图片边界内。图8是示出例如分数边界视频块的推断QT划分的示例的概念图。应当指出的是,在图8中,X对应于由图片边界之外的划分产生的节点。参考图8所示的示例,CTU1的划分可以对应于图7中的底行CTU的所述示例性推断划分。应当指出的是,在一些示例中,可以进一步划分由推断划分产生的图片边界内的CU。例如,参考图8中的CTU0,在一些示例中,可以进一步划分垂直图片边界内的CTU的六个CU。
应当指出的是,如图8所示,以预定义的方式划分分数边界视频块可以使得在图片边界处或附近出现相对大量的相对较小视频块(例如,CU)。由于每个视频块需要传输/解析与视频块编码结构相关联的语法元素,因此具有在图片边界处或附近出现的相对大量的相对较小视频块可能对编码效率产生不利影响。例如,如上所述,在ITU-T H.265中,CU形成PU和TU的根,并且因此每个CU与PU和TU编码结构(即,语义和语法元素)相关联。
此外,应当指出的是,关于JEM,已经提出了用于根据非对称二叉树划分来划分CU的技术。F.Le Leannc等人在2016年10月15日至21日中国成都第4次会议上发表的“Asymmetric Coding Units in QTBT”(文档JVET-D0064)(在下文中简称“Le Leannec”)中描述了其中除了对称的垂直和水平BT分割模式之外,还定义了四个附加的非对称BT分割模式。在Le Leannec中,用于CU的四个附加定义的BT分割模式包括:在高度的四分之一处进行水平划分(一个模式在顶部,或一个模式在底部)或在宽度的四分之一处进行垂直划分(一个模式在左侧,或一个模式在右侧)。在Le Leannec中的四个附加定义的BT分割模式在图9示为Hor_Up、Hor_Down、Ver_Left和Ver_Right。
此外,Li等人在2016年10月15日至21日中国成都第4次会议上发表的“Multi-Type-Tree”(文档JVET-D0117r1)(在下文中简称“Li”)中描述了一个示例,其中除了对称垂直和水平BT分割模式之外,还定义了两个附加的三差树(TT)分割模式。应当指出的是,将节点关于一个方向划分为三个块可被称为三叉树(TT)划分。因此,分割类型可包括水平二进制分割和垂直二进制分割以及水平TT分割和垂直TT分割。在Li中,用于节点的两个附加定义的TT分割模式包括:(1)在节点的从顶部边缘到底部边缘的高度的四分之一处进行水平TT划分;以及(2)在节点的从左侧边缘到右侧边缘的宽度的四分之一处进行垂直TT划分。在Li中,两个附加定义的TT分割模式在图9中被示出为垂直TT和水平TT。
应当指出的是,在Le Leannec和Li中所述的示例性划分分割模式通常可以被描述为预定义的分割模式。更一般地,根据本文所述的技术,根据BT和TT分割模式划分节点可以包括任意BT和TT分割。例如,参考图10,对应于BT分割(Offset1)和TT分割(Offset1和Offset2)的偏移可以是任意的,而不是发生在Le Leannec和Li中的预定义位置处。可存在可推断和/或发送信号通知任意偏移的各种技术。例如,对于具有大小小于或等于阈值的节点,可推断预定义偏移,并且对于具有大小大于阈值的节点,可发送信号通知任意偏移。
除了BT和TT分割类型之外,还可定义T形分割类型。图11示出了T形划分的示例。如图11所示,T形划分包括首先根据BT划分来划分块,并且根据具有垂直取向的BT划分来进一步划分所得块中的一个。如图所示,T形分割得到三个块。在图11所示的示例中,T形分割被描述为2X T形,其中2X T形划分可以指使用两个对称BT分割生成T形划分的情况。此外,在图11中,基于在首次划分之后所得的块中的哪些被进一步划分来定义T形分割(例如,对于水平T形的顶部或底部,对于垂直T形的左侧或右侧)。因此,图11中的示例性T形分割类型可被描述为是预定义的。以类似于上文所述的方式,相对于BT和TT分割类型,根据本文所述的技术,根据T形分割模式划分节点可以包括任意T形分割。应当指出的是,在其他示例中,可定义其他划分模式,例如关于单个垂直方向或水平方向的四边形分割(例如,将正方形划分为四个平行的大小相等的矩形)。如上所述,自动划分分数边界视频块可能对编码效率产生不利影响。此外,当各种划分模式可用于划分节点时,用于划分分数边界视频块的当前技术可能不太理想。
图12是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码(例如,编码和/或解码)的系统的示例的框图。系统100表示可以根据本公开的一种或多种技术使用所述划分技术执行视频编码的系统的示例。如图12所示,系统100包括源设备102、通信介质110和目标设备120。在图12所示的示例中,源设备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)存储卡)、内部/外部硬盘驱动器和/或内部/外部固态驱动器。数据可以根据定义的文件格式存储在存储设备上。
再次参考图12,源设备102包括视频源104、视频编码器106和接口108。视频源104可包括被配置为捕获和/或存储视频数据的任何设备。例如,视频源104可以包括摄像机和可操作地与其耦接的存储设备。视频编码器106可包括被配置为接收视频数据并生成表示视频数据的兼容比特流的任何设备。兼容比特流可以指视频解码器可以从其接收和再现视频数据的比特流。兼容比特流的各方面可根据视频编码标准来定义。当生成兼容比特流时,视频编码器106可以压缩视频数据。压缩可能是有损的(可觉察的或不可觉察的)或无损的。接口108可以包括被配置为接收兼容视频比特流并且将该兼容视频比特流传输和/或存储到通信介质的任何设备。接口108可以包括网络接口卡诸如以太网卡,并且可以包括光收发器、射频收发器或者可以发送和/或接收信息的任何其他类型的设备。此外,接口108可以包括计算机系统接口,该计算机系统接口可以允许兼容视频比特流存储在存储设备上。例如,接口108可以包括支持外围组件互连(PCI)和外围组件快速互连(PCIe)总线协议、专用总线协议、通用串行总线(USB)协议、I2C的芯片组或可用于互连对等设备的任何其他逻辑和物理结构。
再次参考图12,目标设备120包括接口122、视频解码器124和显示器126。接口122可以包括被配置为从通信介质接收兼容视频比特流的任何设备。接口108可以包括网络接口卡诸如以太网卡,并且可以包括光收发器、射频收发器或者可以接收和/或发送信息的任何其他类型的设备。此外,接口122可以包括允许从存储设备检索兼容视频比特流的计算机系统接口。例如,接口122可包括支持PCI和PCIe总线协议、专用总线协议、USB协议、I2C的芯片组,或者可用于互连对等设备的任何其他逻辑和物理结构。视频解码器124可包括被配置为接收兼容比特流和/或其可接受变体,并且从其再现视频数据的任何设备。显示器126可以包括被配置为显示视频数据的任何设备。显示器126可以包括各种显示设备诸如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另外的类型的显示器中的一种。显示器126可以包括高清显示器或超高清显示器。应当指出的是,虽然在图12所示的示例中,视频解码器124被描述为将数据输出到显示器126,但视频解码器124可被配置为将视频数据输出到各种类型的设备和/或其子部件。例如,视频解码器124可被配置为将视频数据输出到任何通信介质,如本文所述。
图13是示出可实现本文所述的用于对视频数据进行编码的技术的视频编码器200的示例的框图。应当指出的是,尽管示例性视频编码器200被示出为具有不同的功能块,但此类图示旨在用于描述目的,并且不将视频编码器200和/或其子部件限制为特定的硬件或软件架构。可使用硬件、固件和/或软件具体实施的任何组合来实现视频编码器200的功能。在一个示例中,视频编码器200可被配置为根据本文描述的技术对视频数据进行编码。视频编码器200可执行图片区域的帧内预测编码和帧间预测编码,并且因此可被称为混合视频编码器。在图13所示的示例中,视频编码器200接收源视频块。在一些示例中,源视频块可以包括已经根据编码结构划分的图片区域。例如,源视频数据可包括宏块、CTU、CB、其子分区和/或另外的等效编码单元。在一些示例中,视频编码器200可被配置为执行源视频块的额外再分。应当指出的是,本文所述的一些技术可普遍适用于视频编码,无论在编码之前和/或期间如何划分源视频数据。在图13所示的示例中,视频编码器200包括求和器202、变换系数生成器204、系数量化单元206、逆量化/变换处理单元208、求和器210、帧内预测处理单元212、帧间预测处理单元214、滤波器单元216和熵编码单元218。
如图13所示,视频编码器200接收源视频块并输出比特流。如上所述,用于划分分数边界视频块的当前技术可能不太理想。根据本文所述的技术,视频编码器200可被配置为将预定义划分应用于使对编码效率的影响最小化的分数边界视频块。
在一个示例中,根据本文描述的技术,视频编码器200可以被配置为将预定义划分应用于分数边界视频块,其中预定义划分使用对称的垂直BT分割模式和水平BT分割模式的组合来生成图片边界内的CU。也就是说,在一个示例中,使用仅对称的垂直BT分割模式和水平BT分割模式来划分分数边界视频块,而不管可用于划分视频块的那些划分模式。图14A是示出用于示例性分数边界视频块的预定义对称的垂直BT分割模式和水平BT分割模式划分的示例的概念图。图14B是示出对应于图14A所示的预定义划分的推断划分树的示例的概念图。应当指出的是,可使用另选的推断划分树来生成CTU2的所得预定义划分。图14C示出了另选的推断划分树的示例。应当指出的是,在一些示例中,可以进一步划分图14A所示的由推断划分产生的图片边界内的CU,并且在一些示例中,可以不进一步划分图14A所示的由推断划分产生的图片边界内的CU。应当指出的是,图14A所示的示例性预定义划分比图8所示的示例性预定义划分得到图片边界内的更少和更大的对应CU。
在一个示例中,根据本文所述的技术,视频编码器200可以被配置为将预定义划分应用于分数边界视频块,其中预定义划分使用非对称垂直BT分割模式和水平BT分割模式的组合来生成图片边界内CU。也就是说,在一个示例中,使用仅非对称垂直BT分割模式和水平BT分割模式来划分分数边界视频块,而不管可用于划分视频块的那些划分模式。在一个示例中,非对称垂直BT分割模式和水平BT分割模式可包括:在高度的四分之一处进行水平划分(一个模式在顶部,或一个模式在底部)或在宽度的四分之一处进行垂直划分(一个模式在左侧,或一个模式在右侧)。图15A是示出用于示例性分数边界视频块的预定义的非对称垂直BT分割模式和水平BT分割模式划分的示例的概念图。图15B是示出对应于图15A所示的预定义划分的推断划分树的示例的概念图。应当指出的是,可使用另选的推断划分树来生成CTU2的所得预定义划分。图15C示出了另选的推断划分树的示例。应当指出的是,在一些示例中,可以进一步划分图15A所示的由推断划分产生的图片边界内的CU,并且在一些示例中,可以不进一步划分图15A所示的由推断划分产生的图片边界内的CU。应当指出的是,图15A所示的示例性预定义划分比图8所示的示例性预定义划分得到图片边界内的更少和更大的对应CU。
在一个示例中,根据本文描述的技术,视频编码器200可以被配置为将预定义划分应用于分数边界视频块,其中预定义划分使用垂直TT分割模式和水平TT分割模式的组合来生成图片边界内的CU。也就是说,在一个示例中,使用仅非对称垂直TT分割模式和水平TT分割模式来划分分数边界视频块,而不管可用于划分视频块的那些划分模式。在一个示例中,垂直TT分割模式和水平TT分割模式可包括:在节点的从顶部边缘到底部边缘的高度的四分之一处进行水平TT划分;以及在节点的从左侧边缘到右侧边缘的宽度的四分之一处进行垂直TT划分。图16A是示出用于示例性分数边界视频块的预定义的非对称垂直BT分割模式和水平BT分割模式划分的示例的概念图。图16B是示出对应于图16A所示的预定义划分的推断划分树的示例的概念图。应当指出的是,可使用另选的推断划分树来生成CTU2的所得预定义划分。图16C示出了另选的推断划分树的示例。应当指出的是,在一些示例中,可以进一步划分图16A所示的由推断划分产生的图片边界内的CU,并且在一些示例中,可以不进一步划分图16A所示的由推断划分产生的图片边界内的CU。应当指出的是,图16A所示的示例性预定义划分比图8所示的示例性预定义划分得到图片边界内的更少和更大的对应CU。
如上所述,在一些情况下,另选的推断划分树可对应于预定义划分,例如,在上述示例中的CTU2的情况下,一个或多个推断划分树可得到相同的预定义划分。在一个示例中,可以定义一组规则使得推断划分树中的一个被选择。应当指出的是,在一些情况下,可存在用于选择得到相同划分的推断划分树中的一个特定推断划分树的实际应用程序。例如,在以下情况下,可存在用于选择特定推断划分树的实际应用程序:某些编码工具可能仅可用于某些划分类型;划分的编码的扫描顺序将是不同的,因此样本的可用性和先前/相邻块的语法信息将是不同的,从而影响编码效率。此外,可选择一个推断划分树作为具有更好的预期编码效率的划分树。
应当指出的是,关于上文相对于图14A至图16C所述的示例,这些示例中的每一个通常可以被描述为使用可用划分模式的子集划分分数边界视频块。例如,关于相对于图14A至图14C所述的示例,在一个示例中,以下划分模式可以是可用的:QT,以及对称的垂直BT分割模式和水平BT分割模式;关于相对于图15A至图15C所述的示例,在一个示例中,以下划分模式可以是可用的:QT、对称的垂直BT分割模式和水平BT分割模式以及四个附加的非对称BT分割模式;并且关于相对于图16A至图16C所述的示例,在一个示例中,以下划分模式可以是可用的:QT、对称的垂直BT分割模式和水平BT分割模式以及垂直TT分割模式和水平TT分割模式。因此,在一个示例中,根据本文所述的技术,可以使用可用划分模式的子集和/或仅可用于划分分数边界视频块的划分模式来划分分数边界视频块(例如,可以使用QTBT划分来划分非分数边界视频块的视频块,并且可以使用TT划分来划分分数边界视频块)。
在一个示例中,可用划分模式的子集和/或仅可用于划分分数边界视频块的划分模式可以基于以下中的一者或多者:分数边界CTU的左上样本距右图片边界的距离(例如,根据亮度样本数量的距离);分数边界CTU的左上样本距底部图片边界的距离;空间相邻的CTU的所得划分树(和/或其中使用的划分类型);时间相邻的CTU的所得划分树(和/或其中使用的划分类型),其中时间相邻的CTU由运动矢量协同定位或偏移;以及图片中的对于CTU的允许划分类型。
如上所述,在一些示例中,可以进一步划分由推断划分产生的图片边界内的CU。在一个示例中,根据本文所述的技术,可以使用可用划分模式的子集和/或仅可用于划分由推断划分产生的图片边界内的CU的划分模式来进一步划分由推断划分产生的图片边界内的CU。在一个示例中,可用划分模式的子集和/或仅可用于划分由推断划分产生的图片边界内的CU的划分模式可以基于以下中的一者或多者:CU的左上样本距右图片边界的距离;CU的左上样本距底部图片边界的距离;CU的左上样本距右CTU边界的距离;CU的左上样本距底部CTU边界的距离;空间相邻的CU的所得划分树(和/或其中使用的划分类型);时间相邻的CU的所得划分树(和/或其中使用的划分类型),其中时间相邻的CU由运动矢量协同定位或偏移;以及图片中的对于CU的允许划分类型。此外,在一个示例中,可用划分模式的子集和/或仅可用于划分跨图片边界的CU的划分模式可以基于以下中的一者或多者:CU的左上样本距右图片边界的距离;CU的左上样本距底部图片边界的距离;CU的左上样本距右CTU边界的距离;CU的左上样本距底部CTU边界的距离;空间相邻的CU的所得划分树(和/或其中使用的划分类型);时间相邻的CU的所得划分树(和/或其中使用的划分类型),其中时间相邻的CU由运动矢量协同定位或偏移;以及图片中的对于CU的允许划分类型。在一个示例中,当块大小超过最大TU大小时,可以使用推断划分。此外,在一个示例中,当图块和/或片段边界不与CTU边界对准时,可以使用推断划分。
如上所述,在一些情况下,CTU大小可为128×128,并且图片分辨率可为1920×1080。在这种情况下,CTU的底行将包括具有带图片边界的56行样本的分数边界CTU。以类似的方式,对于大小为128×128和图片分辨率为3840×2160的CTU,CTU的底行将包括具有带图片边界的112行样本的分数边界CTU。这些情况中的每一种可相对频繁地发生,并且因此在一些情况下,根据本文所述的技术,可为底行CTU定义默认划分。应当指出的是,在这些情况下,可存在若干方式来划分CTU使得一个或多个CU平行于图片边界并包括在图片边界内。在一个示例中,根据本文的技术,用于这些情况的所得推断划分被限制在为2的幂的块大小。在一种情况下,对于更靠近图片边缘的块,为2的幂的块大小单调递减。在一个示例中,块的编码顺序将是首先对离边缘更远的块进行编码。
在一个示例中,对于CTU大小为128×128并且图片分辨率为1920×1080的情况,可以划分底行CTU使得包括在图片边界内的56行样本被划分为128×48的上部CU和128×8的下部CU。在一个示例中,可以从图17A所示的推断树生成划分。
在一个示例中,对于CTU大小为128×128并且图片分辨率为1920×1080的情况,可以划分底行CTU使得包括在图片边界内的56行样本被划分为128×32的上部CU、128×16的中部CU和128×8的下部CU。在一个示例中,可以从图17B所示的推断树生成划分。在一个示例中,对于CTU大小为128×128并且图片分辨率为1920×1080的情况,可以划分底行CTU使得包括在图片边界内的56行样本被划分为128×32的上部CU、128×8的中部CU和128×16的下部CU。在一个示例中,可以从图17C所示的推断树生成划分。应当指出的是,在一个示例中,可以在不允许非对称BT划分的情况下应用图17B和图17C中所示的示例中的每一个。
在一个示例中,对于CTU大小为128×128并且图片分辨率为3840×2160的情况,可以划分底行CTU使得包括在图片边界内的112行样本被划分为128×64的上部CU和128×48的下部CU。在一个示例中,可以从图18A所示的推断树生成划分。在一个示例中,对于CTU大小为128×128并且图片分辨率为3840×2160的情况,可以划分底行CTU使得包括在图片边界内的112行样本被划分为128×96的上部CU和128×16的下部CU。在一个示例中,可以从图18B所示的推断树生成划分。
在一个示例中,对于CTU大小为128×128并且图片分辨率为3840×2160的情况,可以划分底行CTU使得包括在图片边界内的112行样本被划分为128×32的上部CU、128×64的中部CU和128×16的下部CU。在一个示例中,可以从图18C所示的推断树生成划分。在一个示例中,对于CTU大小为128×128并且图片分辨率为3840×2160的情况,可以划分底行CTU使得包括在图片边界内的112行样本被划分为128×64的上部CU、128×32的中部CU和128×16的下部CU。在一个示例中,可以从图18D所示的推断树生成划分。应当指出的是,在一个示例中,可以在不允许非对称BT划分的情况下应用图18C和图18D中所示的示例中的每一个。
应当指出的是,在一些情况下,图块或片段可包括仅分数边界CTU。在这种情况下,上述技术可用于划分包括在图块或片段中的分数边界CTU。
如上所述,JEM包括用于发送信号通知QTBT树的参数MinQTSize、MaxBTSize、MaxBTDepth和MinBTSize。应当指出的是,关于MinQTSize和MaxBTSize,可存在可指定大小的各种方式。在一个示例中,可根据阈值尺寸值来指定大小,并且在MaxBTSize的情况下,如果高度或宽度超过该尺寸值,则不允许根据BT分割模式对块进行分割。在一些情况下,用于分数边界视频块的预定义划分可与MinQTSize、MaxBTSize、MaxBTDepth和MinBTSize的值不一致。例如,参考块CTU2,在图14A所示的示例中,如图14B所示,在BT深度3处发生的垂直BT分割用于生成包括在图片边界内的最右侧CU。在这种情况下,当使用仅对称的垂直BT分割模式和水平BT分割模式来划分分数边界视频块时,图14A所示的CTU2的划分将与小于3的MaxBTDepth不一致。此外,在CTU为128×128的情况下,为了与MaxBTSize一致,图14A所示的CTU2的划分将需要大于或等于128(例如,当MaxBTSize被表示为尺寸阈值时)。在一个示例中,为了确保兼容MinQTSize、MaxBTSize、MaxBTDepth和/或MinBTSize的值,视频编码器200可以被配置为将异常应用于分数边界视频块的预定义划分。例如,在一个示例中,视频编码器200可以被配置为允许除了根据预定义划分使用的类型之外的附加可用划分模式。例如,相对于图14A所示的CTU2的示例,视频编码器200可被配置为在MaxBTDepth被设定为小于3的值时启用QT划分。图20示出了启用QT划分以用于划分CTU2的示例。在一个示例中,可启用QT划分以用于划分CTU2,直到可满足对应于MaxBTSize、MaxBTDepth和/或MinBTSize的设定值的约束。在一个示例中,可启用QT划分以用于无限制地划分CTU2。以类似的方式,即使对于其他CTU不允许使用非对称BT划分,也可以使用非对称BT划分来划分分数边界视频块。应当指出的是,在一些情况下,可限制用于划分分数边界视频块的非对称BT划分的使用,直到可满足对应于MaxBTSize、MaxBTDepth和/或MinBTSize的设定值的约束。应当指出的是,在一些示例中,异常可以包括启用基于视频层属性而被禁用的分数视频块的划分类型(例如,允许相对于禁用较高时间层的非对称BT划分的异常)。
此外,在一些示例中,可以不同地设定、不应用或改变(即,可覆盖设定值)分数边界视频块的MinQTSize、MaxBTSize、MaxBTDepth和/或MinBTSize的值。例如,以下中的一者或多者可应用于分数边界视频块:增大分数边界视频块的MaxBTSize的值;和/或增大分数边界视频块的MaxBTDepth的值。在一个示例中,可基于以下中的一者或多者来设定分数边界视频块的MaxBTSize:片段类型;非分数边界视频块的MaxBTSize的值;和/或由一个或多个先前编码图片中的CTU子集的划分产生的BT节点的最大、平均、中值和/或最小大小。例如,对于先前编码图片中的非边界CTU,最小所得BT节点的大小可以是32×64。基于该值,分数边界视频块的MaxBTSize可被设定为,例如128。在一个示例中,当MaxBTSize被设定为同时应用于高度和宽度尺寸的阈值尺寸时,MaxBTSize可被设定为使得其值大于或等于最小所得BT节点的最大值(例如,MaxBTSize≥max(高度,宽度),其中如果x大于或等于y,则max(x,y)返回x,否则返回y)。在一个示例中,当MaxBTSize被设定为分别针对高度和宽度尺寸中的每一者设定的阈值尺寸(例如,针对高度的MaxBTSizeH和针对宽度的MaxBTSizeW)时,MaxBTSize可被设定为使得每个相应值大于或等于最小所得BT节点的对应值(例如,MaxBTSizeH≥高度并且MaxBTSizeW≥宽度)。在一些示例中,可以通过在比特流中(例如,在参数集、片段标头、视频块信令等中)发送信号通知值来不同地设定、不应用或改变分数边界视频块的MinQTSize、MaxBTSize、MaxBTDepth和/或MinBTSize的值。
此外,在一些示例中,对于帧间片段,可将MaxBTSize设定为分数边界视频块的预先确定的值(例如,CTU大小)。在一个示例中,可基于以下中的一者或多者来设定分数边界视频块的MaxBTDepth:片段类型;和/或分数边界视频块与之相交的边界边缘类型(即,右、底部或右下)。在一个示例中,可基于预定义值和/或实现所需划分的值来增大MaxBTDepth。此外,在一些示例中,可根据安全裕度值进一步增大MaxBTDepth。在一个示例中,可基于发生最终BT分割以生成特定划分的深度来增大MaxBTDepth,其中最终BT分割是用于特定划分的BT分割分级结构中最低位阶的BT分割。例如,参考块CTU2,在图14A所示的示例中,发生最终BT分割以生成包括在图片边界内的最右侧CU的深度(即,3)可以被添加到MaxBTDepth的当前值,以增大分数边界视频块的MaxBTDepth。下面更详细地描述用于确定生成特定划分所需的深度的技术的示例。应当指出的是,MaxBTDepth的当前值可以从空间-时间相邻块(例如,CU、CTU、PU、TU等)和/或从更高级信令(例如,参数集和/或片段标头)导出。此外,在一些示例中,可基于生成特定划分所需(或所用)的BT分割数量(即,BT分割计数值)来增大MaxBTDepth。例如,参考块CTU2,在图14A和图14B所示的示例中,生成包括在图片边界内的最右侧CU所需的BT分割计数值为4。可将该值添加到MaxBTDepth的当前值,以增大分数边界视频块的MaxBTDepth。在一个示例中,BT分割计数值可对应于需要在划分树中从根(即,CTU级)遍历以在特定划分中到达CU的BT分割的最大数量。
如上所述,相对于图17A,对于CTU大小为128×128并且图片分辨率为1920×1080的情况,可以划分底行CTU使得包括在图片边界内的56行样本被划分为128×48的上部CU和128×8的下部CU。如图17A所示,用于生成包括在图片边界内的128×8的下部CU的BT分割计数值为3,并且发生最终BT分割处的深度为2。如上所述,相对于图18B,对于CTU大小为128×128并且图片分辨率为3840×2160的情况,可以划分底行CTU使得包括在图片边界内的112行样本被划分为包括在图片边界内128×96的上部CU和128×16的下部CU。如图18B所示,用于生成包括在图片边界内的128×16的下部CU的BT分割计数值为3,并且发生最终BT分割处的深度为2。在一个示例中,在这些情况下,可以通过使用以下技术中的一种或多种来确定分数边界视频块的新MaxBTDepth值:将预定义值添加到MaxBTDepth,将预定义值添加到MaxBTDepth并且将安全裕度值添加到MaxBTDepth,并且/或者设定MaxBTDepth,其中基于CTU大小和/或图片大小来确定所用的技术和/或预定义值。更一般地,CTU大小和图片大小的特定组合可以与分数边界视频块的特定预定义划分相关联,其中预定义划分与BT分割计数值以及发生最终BT分割处的深度值相关联。BT分割计数值和/或对于预定义划分的发生最终BT分割处的深度值可用于修改MaxBTDepth。
如上所述,具有在图片边界处或附近出现的相对大量的相对较小视频块可能对编码效率产生不利影响。更一般地,如何划分分数视频块影响编码效率。例如,参考图21,可存在若干种方式来划分具有高度curH和宽度curW的分数视频块,使得高度blkH和宽度blkW被包括在图片边界内。应当指出的是,在此类一般情况下,curH和curW可小于或等于CTU大小。也就是说,分数视频块可以是CTU或更小的视频块。此外,如上所述,可增大分数视频块的MaxBTDepth。当MaxBTDepth增大时,更大的可能划分集变得可用于划分CTU。在一些情况下,增大可用于划分CTU的可能划分集可减慢视频编码器(即,降低视频编码器性能)。例如,当选择CTU的特定划分时,可看到随着MaxBTDepth的增大,评估可能划分的全部(或很大一部分)的视频编码器的具体实施的性能降低,因为存在更多要评估的可能划分。根据本文所述的技术,视频编码器200可被配置为以提高编码效率的方式基于curH、curW、blkH和blkW以及可用BT分割模式来划分分数视频块。此外,视频编码器200可被配置为以缓解视频编码器性能的潜在降低的方式增大分数视频块的MaxBTDepth。
在一个示例中,视频编码器200可被配置为确定指示所需数量的BT划分或分割的值(例如,BT分割计数值,N_BT_Part),以便分数视频块的对应于blkH和blkW的部分被包括在图片边界内。在一些示例中,所需数量的BT划分可用于划分视频块和/或增大MaxBTDepth。应当指出的是,虽然所需数量的划分固有地基于curH、curW、blkH和blkW以及可用BT分割模式,但所需数量的划分也可基于片段类型。此外,应当指出的是,可存在用于基于curH、curW、blkH和blkW以及可用BT分割模式来确定所需数量的划分的各种过程,其中一些过程比其他过程更有效。根据本文所述的技术,视频编码器200和视频解码器300可被配置为基于下文所述的算法来确定所需数量的划分。应当指出的是,关于下述算法,用于分数视频块的可用BT分割模式包括对称的垂直BT分割模式和水平BT分割模式,以及上述四个附加的非对称BT分割模式。
视频编码器200和视频解码器300可被配置为基于以下算法确定所需数量的划分:
·确定multsSCountH和mults3CountW的值,其中mults3CountH指示blkH的质因数分解中3N的N,multsSCountW指示blkW的质因数分解中3N的N;
·将变量neededBTPartitions设定为0;
·直到水平划分与图片边界对准:
·根据一组划分规则选择水平BT分割模式,其中在mults3CountH>0的情况下可仅选择Hor_Down。
·对于每个Hor_Down的选择,将mults3CountH减1;
·对于每个所选择的水平BT分割模式,将neededBTPartitions加1;
·对于每个所选择的水平BT分割模式,更新跨越(或接触)水平图片边界的当前视频块的curH、blkH和multsSCountH;
·直到垂直划分与图片边界对准:
·根据一组分割规则选择垂直BT划分模式,其中在multsSCountV>0的情况下可仅选择Ver_Right。
·对于每个Ver_Right的选择,将multsSCountV减1;-对于每个所选择的垂直BT分割模式,将neededBTPartitions加1;
·对于每个所选择的垂直BT分割模式,更新跨越(或接触)垂直图片边界的当前视频块的curW、blkW和mults3CountW;
·输出neededBTPartitions。
应当指出的是,在上述示例性算法中,执行水平划分和垂直划分的顺序可互换。此外,可根据定义的顺序执行单独的水平划分和垂直划分步骤。例如,可通过交替执行水平划分和垂直划分来执行水平划分和垂直划分。在一个示例中,可通过交替执行设定数量的水平划分和垂直划分(例如,执行两次水平划分,然后执行两次垂直划分,然后执行两次水平划分等)来执行水平划分和垂直划分。在一个示例中,可将选择偏好赋予水平BT划分模式或垂直BT划分模式中的一者。例如,在执行任何垂直BT划分模式之前,可执行水平BT划分模式直到划分边缘中的一个与水平图片边界对准。如上述示例性算法中所提供的,根据一组划分规则选择BT分割模式。也就是说,一组划分规则包括用于选择以下中的一者的规则:对称BT模式、四分之一非对称BT分割模式(即,Hor_Up和Ver_Left)或四分之三非对称BT分割模式(即,Hor_Down和Ver_Right)。在一个示例中,预定义规则可包括选择在更新时提供curH(或curV)和/或blkH(或blkW)的最大减少的对称BT模式、四分之一非对称BT分割模式或四分之三非对称BT分割模式中的一者。例如,如果curH等于128且blkH等于112,则在对称BT分割之后,curH将等于64且blkH将等于48;在Hor_Up分割之后,curH将等于96且blkH将等于80;并且在Hor_Down分割之后,curH将等于32且blkH将等于16。在这种情况下,Hor_Down分割提供了curH和blkH的最大减少。然而,在这种情况下,mults3CountH不大于0。因此,在这种情况下,在一个示例中,可选择对称BT分割,因为该对称BT分割提供比Hor_Up更大的curH和blkH的减少。在一个示例中,预定义规则可包括基于哪个划分模式得到最靠近图片边界的划分边界来选择对称BT模式、四分之一非对称BT分割模式或四分之三非对称BT分割模式中的一者。例如,图22示出了由对称BT模式、四分之一非对称BT分割模式或四分之三非对称BT分割模式中的每一者产生的相对于水平图片边界的相应可能水平边界的示例。如图22所示,由对称BT模式产生的边界最靠近图片边界。可根据绝对距离值来量化边界与图片边界的接近度。例如,在图22所示的示例中,在curH为128且blkH为56的情况下,对于对称BT模式,所得划分对应于curH等于64,blkH等于56,并且划分边界与图片边界之间的距离为8;对于四分之一非对称BT分割模式,所得划分对应于curH等于32,blkH等于24,并且划分边界与图片边界之间的距离为24;并且对于四分之三非对称BT分割模式,所得划分对应于curH等于96,blkH等于54,并且划分边界与图片边界之间的距离为40。
应当指出的是,在选择基于currH(或currV)、blkH(或blkW)和/或距离值中的一者的最大减少,并且两个划分模式提供相同的减少和/或距离值的情况下,选择在图片内提供最少数量的划分的划分模式,并且/或者可使用划分模式的默认顺序来打破僵局。在一个示例中,可将选择偏好赋予对称BT划分模式。例如,可执行水平对称BT划分,直到划分边缘中的一个与水平图片边界对准。一般来讲,可将选择偏好赋予在图片内引入最少数量的划分的BT划分。
如上所述,可存在基于CTU大小和图片大小的组合生成分数视频块的常见情况(例如,CTU大小为128×128并且图片大小为1920×1080或者CTU大小为128×128并且图片大小为3840×2160)。在一些示例中,可以为CTU大小和图片大小的组合定义一组划分规则。也就是说,一般来讲,CTU大小和图片大小的特定组合可以与分数边界CTU的特定预定义划分相关联。例如,对于CTU大小为128×128并且图片大小为1920×1080或者3840×2160的情况,一组划分规则可包括以下内容:
Figure GDA0002566017870000291
其中,
=是等于关系运算符;
x&&y是x和y的布尔逻辑“和”;
x 11y是x和y的布尔逻辑“或”。
应当指出的是,在一些示例中,可以独立于图片大小应用上述示例性划分规则。此外,应当指出的是,一组划分规则可包括规则的组合,其中例如规则的组合基于视频和/或编码属性。
应当指出的是,在上述示例性算法中,除非mults3CountH和mults3CountV的相应值大于0,否则不允许选择四分之三非对称BT分割模式。如果该约束不存在,则可能存在四分之三非对称BT分割导致块尺寸不是2的幂的情况。例如,如果使用Vert_Right分割32×32的块,则所得块为24×32和8×32(24不是2的幂)。具有不是2的幂的块可影响创建划分的后续步骤,并且可导致具有过量划分数量的划分。因此,在一些情况下,如果在所考虑的块大小/尺寸的质因数分解中存在3的倍数,则仅允许选择四分之三的非对称BT分割模式。此外,需注意,在一些示例中,分数视频块的亮度和色度通道可共享划分(例如,根据上述算法提供的划分)。在一些示例中,分数视频块的亮度和色度通道可使用不同的划分(例如,对于I片段,上述算法可独立地应用于每个通道)。
如上所述,当MaxBTDepth增大时,该组可能划分的相应增大可降低视频编码器的性能。在一个示例中,为了减轻视频编码器的性能下降,当使用仅QT划分来创建划分树时,可以将高度阈值确定为图片内的最小高度块,并且当使用仅QT划分来创建划分时,可以将宽度阈值确定为图片内的最小高度块。例如,参见图8,如果CTU2为128×128,则高度阈值将为32且宽度阈值将为32。基于高度阈值和宽度阈值,可根据可用划分模式(例如,对称BT和非对称BT)的子集执行分数视频块的划分,直到满足基于高度阈值和/或宽度阈值的条件。例如,在一个示例中,在视频块的水平划分期间,如果块的当前高度超过高度阈值,则允许仅水平对称BT划分。应当指出的是,该条件不限制垂直划分类型。此外,在一个示例中,在视频块的垂直划分期间,如果块的当前宽度超过宽度阈值,则允许仅垂直对称BT划分。应当指出的是,该条件不限制水平划分类型。应当指出的是,在一些示例中,可定义公共阈值(例如,块的最大尺寸)。此外,应当指出的是,不分割块的分割模式可以是可用的。应当指出的是,限制可基于阈值选择的划分类型可用于修改信令,使得信令仅指示可选择的划分类型(例如,可基于可选择的数量减少的划分类型来简化划分类型索引)。此类信令修改可得到改善的编码效率。应当指出的是,在一些示例中,代替高度阈值和宽度阈值,阈值可以被定义为视频块的样本数(例如,1024)。此外,应当指出的是,阈值还可基于其他视频和视频编码属性。例如,可基于片段类型从所确定的值增大或减小阈值。此外,在一个示例中,可以为CTU的不同区域设定不同的阈值。例如,CTU的上部部分可具有增大的阈值。
应当指出的是,在一些情况下,划分模式可导致不支持(例如,不支持后续视频编码过程)的块大小。在一个示例中,可不允许导致不支持的块大小的划分类型。在一个示例中,对于分数视频块可能会有异常,并且可以使用该划分类型,尽管其原本将导致不支持的块大小。应当指出的是,在这种情况下,在一些示例中,可以修改后续视频编码过程以处理此类异常。
如上所述,视频编码器可从可能划分集中评估可能的划分。在一个示例中,根据本文的技术,视频编码器200可被配置为根据上述约束(例如,允许的划分类型、BT深度约束等)识别分数视频块的所有有效划分,其中有效划分可被定义为一旦满足该条件就使得没有划分树的叶跨越图片边界而无需进一步划分的划分。应当指出的是,可允许有效划分的后续进一步划分。视频编码器200可用索引值标记每个有效划分。应当指出的是,索引可对应于生成有效划分的定义顺序。例如,上述算法可基于划分类型选择的定义偏好顺序来确定有效划分。然后,视频编码器200可选择有效划分中的一个(例如,基于率失真优化算法)。视频编码器200可使用索引值发送信号通知所选择的划分。这样,视频解码器可以执行与视频编码器相同的过程,以识别并索引有效划分,并且通过解析来自比特流的索引值来确定所选择的划分。应当指出的是,对于亮度和色度通道可共享或独立地执行识别并索引有效划分的过程。
如上文相对于图10所述,在一些示例中,对应于BT分割的偏移(Offset1)可以是任意的,而不是发生在预定义位置处。在一个示例中,根据本文的技术,视频编码器200可被配置为使用分数视频块的任意偏移划分。例如,可根据基础划分技术(例如,QTBT划分)以对应的语法和语义划分非分数视频块,并且可根据任意偏移划分技术以对应的语法和语义划分分数视频块。例如,对于分数视频块,可将偏移值诸如56和112发送信号通知为用于划分。应当指出的是,任意偏移划分技术可包括发送信号通知水平偏移值和垂直偏移值。例如,参考图21,对于blkH和blkW可发送信号通知相应的偏移值。此外,应当指出的是,在一些示例中,可推断偏移值。例如,对于CTU大小和图片大小的特定组合,可推断用于划分分数边界CTU的偏移值。例如,在CTU大小为128×128并且图片大小为1920×1080的情况下,在一个示例中,如果在分数边界CTU的根处发送信号通知四分之一非对称水平BT分割模式(或对称水平BT分割模式或四分之三非对称水平BT分割模式)(根据用于划分非分数CTU的语法和语义),则发送信号通知的分割可被推断为对应于具有偏移为56的非对称水平BT分割模式。应当指出的是,在一些示例中,对于由任意偏移划分产生的块可允许进一步划分。
这样,视频编码器200表示设备的示例,该设备被配置为接收包括样本值的视频块;确定该视频块是否是分数边界视频块;并且根据推断划分使用可用划分模式的子集来划分该样本值。
再次参考图13,视频编码器200可以通过从源视频块中减去预测视频块来生成残差数据。求和器202表示被配置为执行该减法运算的部件。在一个示例中,减去视频块出现在像素域中。变换系数生成器204对残差块或其子分区应用变换诸如离散余弦变换(DCT)、离散正弦变换(DST)或概念上类似的变换(例如,可以将四个8×8变换应用于16×16残差值阵列)以产生残差变换系数集合。变换系数生成器204可以被配置为执行离散三角变换系列中包括的变换的任意和全部组合。如上所述,在ITU-TH.265中,TB被限制为以下大小4×4、8×8、16×16和32×32。在一个示例中,变换系数生成器204可被配置为根据大小为4×4、8×8、16×16和32×32的阵列执行变换。在一个示例中,变换系数生成器204可进一步被配置为根据其他尺寸的阵列执行变换。具体地讲,在一些情况下,对不同值组成的矩形阵列执行变换可能是有用的。在一个示例中,变换系数生成器204可被配置为根据以下阵列大小来执行变换:2×2、2×4N、4M×2和/或4M×4N。在一个示例中,二维(2D)M×N逆变换可实现为一维(1D)M点逆变换后再进行1D N点逆变换。在一个示例中,2D逆变换可实现为1D N点垂直变换后再进行1D N点水平变换。在一个示例中,2D逆变换可实现为1D N点水平变换后再进行1DN点垂直变换。变换系数生成器204可将变换系数输出到系数量化单元206。
系数量化单元206可被配置为执行变换系数的量化。如上所述,可以通过调整量化参数来修改量化程度。系数量化单元206可以进一步被配置为确定量化参数并且输出QP数据(例如,用于确定量化组大小和/或增量QP值的数据),视频解码器可以使用该QP数据来重构量化参数以在视频解码期间执行逆量化。应当注意的是,在其他示例中,可以使用一个或多个附加或另选的参数来确定量化位阶(例如,缩放因子)。本文所述的技术通常可应用于基于对应于视频数据的某一分量的变换系数的量化位阶,确定对应于视频数据的另一分量的变换系数的量化位阶。
如图13所示,量化的变换系数被输出到逆量化/变换处理单元208。逆量化/变换处理单元208可被配置为应用逆量化和逆变换来生成重构的残差数据。如图13所示,在求和器210处,重构的残差数据可以被添加到预测视频块。这样,可以重构编码的视频块,并且可以使用所得重构的视频块来评估给定的预测、变换和/或量化的编码质量。视频编码器200可被配置为执行多个编码回合(例如,在改变预测、变换参数和量化参数中的一个或多个的同时执行编码)。比特流的率失真或其他系统参数可以基于重构的视频块的评估来优化。此外,重构的视频块可被存储并用作预测后续块的参考。
如上所述,可以使用帧内预测来编码视频块。帧内预测处理单元212可被配置为针对待编码视频块选择帧内预测模式。帧内预测处理单元212可被配置为评估帧和/或其区域并且确定用以对当前块进行编码的帧内预测模式。如图13所示,帧内预测处理单元212将帧内预测数据(例如,语法元素)输出到熵编码单元218和变换系数生成器204。如上所述,对残差数据执行的变换可以取决于模式。如上所述,可能的帧内预测模式可以包括平面预测模式、DC预测模式和角度预测模式。此外,在一些示例中,可以从用于亮度预测模式的帧内预测推断出对色度分量的预测。帧间预测处理单元214可被配置为针对当前视频块执行帧间预测编码。帧间预测处理单元214可被配置为接收源视频块并且计算视频块的PU的运动矢量。运动矢量可以指示当前视频帧内的视频块的PU(或类似的编码结构)相对于参考帧内的预测块的位移。帧间预测编码可以使用一个或多个参考图片。此外,运动预测可以是单向预测(使用一个运动矢量)或双向预测(使用两个运动矢量)。帧间预测处理单元214可被配置为通过计算由例如绝对差之和(SAD)、平方差之和(SSD)或其他差值度量确定的像素差来选择预测块。如上所述,可以根据运动矢量预测来确定和指定运动矢量。如上所述,帧间预测处理单元214可被配置为执行运动矢量预测。帧间预测处理单元214可被配置为使用运动预测数据生成预测块。例如,帧间预测处理单元214可定位帧缓冲器内的预测视频块(图13中未示出)。需注意,帧间预测处理单元214可以进一步被配置为将一个或多个内插滤波器应用于重构的残差块,以计算用于运动估计的子整数像素值。帧间预测处理单元214可将所计算的运动矢量的运动预测数据输出到熵编码单元218。如图13所示,帧间预测处理单元214可经由滤波器单元216接收重构视频块。滤波器单元216可被配置为执行解块和/或样本自适应偏移(SAO)滤波。解块是指平滑化重构视频块边界的过程(例如,使观察者不易察觉到边界)。SAO滤波是一种可用于通过向重构的视频数据添加偏移以改善重构的非线性振幅映射。
再次参考图13,熵编码单元218接收量化变换系数和预测语法数据(即,帧内预测数据、运动预测数据、QP数据等)。应当指出的是,在一些示例中,系数量化单元206可以在将系数输出到熵编码单元218之前执行对包括量化变换系数的矩阵的扫描。在其他示例中,熵编码单元218可执行扫描。熵编码单元218可被配置为根据本文中所描述的技术中的一个或多个执行熵编码。熵编码单元218可被配置为输出兼容比特流(即视频解码器可从其接收和再现视频数据的比特流)。
图19是示出根据本公开的一种或多种技术的可被配置为对视频数据进行解码的视频解码器的示例的框图。在一个示例中,视频解码器300可被配置为基于上文所述的技术中的一种或多种来重构视频数据。也就是说,视频解码器300可以与上述视频编码器200互逆的方式操作。视频解码器300可被配置为执行帧内预测解码和帧间预测解码,并且因此可被称为混合解码器。在图19所示的示例中,视频解码器300包括熵解码单元302、逆量化单元304、逆变换处理单元306、帧内预测处理单元308、帧间预测处理单元310、求和器312、滤波器单元314和参考缓冲器316。视频解码器300可被配置为以与视频编码系统一致的方式对视频数据进行解码,该视频编码系统可以实现视频编码标准的一个或多个方面。应当指出的是,尽管示出的示例性视频解码器300具有不同的功能块,但此类图示旨在用于描述目的,并且不将视频解码器300和/或其子部件限制为特定的硬件或软件架构。可使用硬件、固件和/或软件具体实施的任何组合来实现视频解码器300的功能。
如图19所示,熵解码单元302接收熵编码的比特流。熵解码单元302可被配置为根据与熵编码过程互逆的过程对来自比特流的量化语法元素和量化系数进行解码。熵解码单元302可被配置为根据上文所述的熵编码技术中的任一种执行熵解码。熵解码单元302可以与视频编码标准一致的方式解析编码的比特流。视频解码器300可被配置为解析编码的比特流,其中该编码的比特流基于上述技术生成。也就是说,例如,视频解码器300可被配置为基于上述为了重构视频数据的技术中的一者或多者而确定用于分数边界视频块的推断划分。例如,视频解码器300可被配置为解析语法元素和/或评估视频数据的属性以便确定用于分数边界视频块的推断划分。
再次参考图19,逆量化单元304从熵解码单元302接收量化变换系数(即,位阶值)和量化参数数据。量化参数数据可包括上述增量QP值和/或量化组大小值等的任意和全部组合。视频解码器300和/或逆量化单元304可被配置为基于由视频编码器发送信号通知的值和/或通过视频属性和/或编码参数来确定用于逆量化的QP值。也就是说,逆量化单元304可以与上述系数量化单元206互逆的方式操作。例如,逆量化单元304可被配置为根据上述技术推断出预定义值(例如,基于编码参数确定QT深度和BT深度的总和)、允许的量化组大小等。逆量化单元304可被配置为应用逆量化。逆变换处理单元306可被配置为执行逆变换以生成重构的残差数据。由逆量化单元304和逆变换处理单元306分别执行的技术可以类似于由上述逆量化/变换处理单元208执行的技术。逆变换处理单元306可被配置为应用逆DCT、逆DST、逆整数变换、不可分二次变换(NSST)或概念上类似的逆变换过程来变换系数,以便产生像素域中的残差块。此外,如上所述,是否执行特定变换(或特定变换的类型)可以取决于帧内预测模式。如图19所示,可以将重构的残差数据提供给求和器312。求和器312可以将重构的残差数据添加到预测视频块并且生成重构的视频数据。可根据预测视频技术(即帧内预测和帧间预测)确定预测视频块。在一个示例中,视频解码器300和滤波器单元314可被配置为确定QP值并将其用于后置滤波(例如,解块)。在一个示例中,利用QP的视频解码器300的其他功能块可基于所接收的信令确定QP并将其用于解码。
帧内预测处理单元308可被配置为接收帧内预测语法元素,并且从参考缓冲器316处检索预测视频块。参考缓冲器316可以包括被配置为存储一个或多个视频数据帧的存储器设备。帧内预测语法元素可识别帧内预测模式,诸如上述的帧内预测模式。在一个示例中,帧内预测处理单元308可以使用根据本文所述的帧内预测编码技术中的一种或多种来重构视频块。帧间预测处理单元310可以接收帧间预测语法元素并生成运动矢量,以识别存储在参考缓冲器316中的一个或多个参考帧中的预测块。帧间预测处理单元310可以生成运动补偿块,可能基于内插滤波器执行内插。用于具有子像素精度的运动估计的内插滤波器的标识符可以被包括在语法元素中。帧间预测处理单元310可以使用内插滤波器来计算参考块的子整数像素的内插值。滤波器单元314可被配置为对重构的视频数据执行滤波。例如,滤波器单元314可被配置为执行解块和/或SAO滤波,如上面关于滤波器单元216所描述的。此外,应当指出的是,在一些示例中,滤波器单元314可被配置为执行专用的任意滤波(例如,视觉增强)。如图19所示,视频解码器300可以输出重构视频块。这样,视频解码器300可被配置为根据本文中描述的一种或多种技术生成重构的视频数据。这样,视频解码器300表示设备的示例,该设备被配置为接收对应于包括样本值的编码视频块的残差数据;确定该编码视频块是否是分数边界视频块;根据推断划分使用可用划分模式的子集来确定对于该编码视频块的划分;并且基于该残差数据和对于该编码视频块的划分来重构视频数据。
在一个或多个示例中,所述功能可以通过硬件、软件、固件或其任何组合来实现。如果以软件实现,则可将功能作为一个或多个指令或代码存储在计算机可读介质上或经由计算机可读介质上传输,并且由基于硬件的处理单元执行。计算机可读介质可包括对应于有形介质诸如数据存储介质的计算机可读存储介质,或者包括例如根据通信协议促进计算机程序从一个地方传输到另一个地方的任何介质的传播介质。这样,计算机可读介质通常可对应于:(1)非暂态的有形计算机可读存储介质,或者(2)通信介质诸如信号或载波。数据存储介质可以是可以由一个或多个计算机或一个或多个处理器访问以检索用于实现本公开中所述的技术的指令、代码和/或数据结构的任何可用介质。计算机程序产品可以包括计算机可读介质。
以举例而非限制的方式,此类计算机可读存储介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储设备、磁盘存储设备或其他磁存储设备、闪存存储器、或者可用于存储指令或数据结构形式的所需程序代码并且可由计算机访问的任何其他介质。而且,任何连接都被适当地称为计算机可读介质。例如,如果使用同轴电缆、光纤电缆、双绞线、数字用户线路(DSL)或无线技术诸如红外线、无线电和微波从网站、服务器或其他远程源传输指令,则同轴电缆、光纤电缆、双绞线、DSL或无线技术诸如红外线、无线电和微波都包含在介质的定义中。然而,应当理解,计算机可读存储介质和数据存储介质不包括连接、载波、信号或其他暂态介质,而是针对非暂态有形存储介质。如本文所用,磁盘和光盘包括压缩光盘(CD)、激光盘、光学光盘、数字通用光盘(DVD)、软磁盘及Blu-ray光盘,其中磁盘通常以磁性方式复制数据,而光盘则利用激光以光学方式复制数据。上述的组合也应该包括在计算机可读介质的范围内。
可以由一个或多个处理器诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程逻辑阵列(FPGA)或其他等效集成或离散逻辑电路执行指令。因此,如本文所用的术语“处理器”可以指任何前述结构或适用于实现本文所描述的技术的任何其他结构。此外,在一些方面中,可以在被配置用于编码和解码的专用硬件和/或软件模块内提供本文所述的功能,或者将其结合到组合编解码器中。而且,这些技术可以完全在一个或多个电路或逻辑元件中实现。
本公开的技术可以在各种设备或装置包括无线手机、集成电路(IC)或一组IC(例如,芯片组)中实现。在本公开中描述了各种部件、模块或单元,以强调被配置为执行所公开的技术的设备的功能方面,但是不一定需要通过不同的硬件单元来实现。相反,如上所述,可以将各种单元组合在编解码器硬件单元中,或者通过互操作硬件单元包括如上所述的一个或多个处理器的集合,结合合适的软件和/或固件来提供各种单元。
此外,每个上述实施方案中所使用的基站设备和终端设备的每个功能块或各种特征可通过电路(通常为一个集成电路或多个集成电路)实施或执行。被设计为执行本说明书中所述的功能的电路可包括通用处理器、数字信号处理器(DSP)、专用或通用集成电路(ASIC)、现场可编程门阵列(FPGA),或其他可编程逻辑设备、分立栅极或晶体管逻辑器、或分立硬件部件、或它们的组合。通用处理器可为微处理器,或另选地,该处理器可为常规处理器、控制器、微控制器或状态机。通用处理器或上述每种电路可由数字电路进行配置,或可由模拟电路进行配置。此外,当由于半导体技术的进步而出现制成取代当前集成电路的集成电路的技术时,也能够使用通过该技术生产的集成电路。
已经描述了各种示例。这些示例和其他示例在以下权利要求的范围内。
<交叉引用>
本非临时专利申请根据《美国法典》第35卷第119节(35U.S.C.§119)要求于2017年12月29日提交的临时申请62/612,073、2018年2月14日提交的临时申请62/630,699的优先权,这两个申请的全部内容据此以引用方式并入。

Claims (14)

1.一种划分用于视频编码的视频数据的方法,所述方法包括:
接收包括样本值的视频块;
确定所述视频块是否是分数边界视频块;以及
根据推断划分使用可用划分模式的子集来划分所述样本值。
2.一种重构视频数据的方法,所述方法包括:
接收对应于包括样本值的编码视频块的残差数据;
确定所述编码视频块是否是分数边界视频块;
根据推断划分使用可用划分模式的子集来确定对于所述编码视频块的划分;以及
基于所述残差数据和对于所述编码视频块的所述划分来重构视频数据。
3.根据权利要求1或2中任一项所述的方法,其中所述可用划分模式的所述子集包括对称二叉树划分。
4.根据权利要求1或2中任一项所述的方法,其中所述可用划分模式的所述子集包括非对称二叉树划分。
5.根据权利要求1或2中任一项所述的方法,其中所述可用划分模式的所述子集包括三叉树划分。
6.根据权利要求1至5中任一项所述的方法,其中根据推断划分使用可用划分模式的子集来划分包括基于以下中的一者或多者来确定所述子集:所述视频块的左上样本距右图片边界的距离、所述视频块的左上样本距底部图片边界的距离、空间相邻视频块的划分以及时间相邻视频块的划分树。
7.根据权利要求1至6中任一项所述的方法,其中所述推断划分与一组预定义的规则相关联。
8.根据权利要求7所述的方法,其中预定义的规则允许基于视频块的尺寸来应用所述可用划分模式的所述子集内的划分模式。
9.一种用于对视频数据进行编码的设备,所述设备包括被配置为执行权利要求1至8所述步骤的任意和全部组合的一个或多个处理器。
10.根据权利要求9所述的设备,其中所述设备包括视频编码器。
11.根据权利要求9所述的设备,其中所述设备包括视频解码器。
12.一种系统,包括:
根据权利要求10所述的设备;以及
根据权利要求11所述的设备。
13.一种用于对视频数据进行编码的装置,所述装置包括用于执行权利要求1至8所述步骤的任意和全部组合的装置。
14.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质包括存储在其上的指令,当所述指令被执行时,使得用于对视频数据进行编码的设备的一个或多个处理器执行权利要求1至8所述步骤的任意和全部组合。
CN201880080555.8A 2017-12-29 2018-12-25 用于在用于视频编码的图片的边界处划分视频块的系统和方法 Pending CN111527751A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201762612073P 2017-12-29 2017-12-29
US62/612,073 2017-12-29
US201862630699P 2018-02-14 2018-02-14
US62/630,699 2018-02-14
PCT/JP2018/047610 WO2019131651A1 (en) 2017-12-29 2018-12-25 Systems and methods for partitioning video blocks at a boundary of a picture for video coding

Publications (1)

Publication Number Publication Date
CN111527751A true CN111527751A (zh) 2020-08-11

Family

ID=67066437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880080555.8A Pending CN111527751A (zh) 2017-12-29 2018-12-25 用于在用于视频编码的图片的边界处划分视频块的系统和方法

Country Status (4)

Country Link
US (1) US11259021B2 (zh)
EP (1) EP3732880A4 (zh)
CN (1) CN111527751A (zh)
WO (1) WO2019131651A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3836542B1 (en) 2018-08-28 2023-10-11 Huawei Technologies Co., Ltd. Picture partition method and device
BR112021013444A2 (pt) * 2019-01-08 2021-10-19 Huawei Technologies Co., Ltd. Método, aparelho e sistema de predição de imagem, dispositivo, e mídia de armazernamento
CN113994671B (zh) 2019-06-14 2024-05-10 北京字节跳动网络技术有限公司 基于颜色格式处理视频单元边界和虚拟边界
CN114175632A (zh) 2019-07-26 2022-03-11 北京字节跳动网络技术有限公司 对视频编解码模式的块尺寸相关使用
BR112022005046A2 (pt) 2019-09-18 2022-07-05 Beijing Bytedance Network Tech Co Ltd Método de processamento de dados de vídeo, aparelho para processar dados de vídeo, meio de armazenamento não transitório legível por computador e meio de gravação não transitório legível por computador
CN114430902B (zh) 2019-09-22 2023-11-10 北京字节跳动网络技术有限公司 自适应环路滤波中的填充过程
KR20220063177A (ko) 2019-09-27 2022-05-17 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 상이한 비디오 유닛들 간의 적응적 루프 필터링
CN117956146A (zh) 2019-10-10 2024-04-30 北京字节跳动网络技术有限公司 自适应环路滤波中不可用样点位置处的填充处理
WO2021083257A1 (en) 2019-10-29 2021-05-06 Beijing Bytedance Network Technology Co., Ltd. Cross-component adaptive loop filter
JP7393550B2 (ja) 2019-12-11 2023-12-06 北京字節跳動網絡技術有限公司 クロス成分適応ループフィルタリングのためのサンプルパディング
US11412222B2 (en) * 2020-02-12 2022-08-09 Tencent America LLC Flexible picture partitioning
CN115398897B (zh) * 2020-03-26 2024-01-30 阿里巴巴(中国)有限公司 用于导出时间运动信息的方法和装置
US11432018B2 (en) * 2020-05-11 2022-08-30 Tencent America LLC Semi-decoupled partitioning for video coding
JP2023531223A (ja) 2020-06-30 2023-07-21 北京字節跳動網絡技術有限公司 適応ループフィルタリングのための境界位置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104081777A (zh) * 2012-01-30 2014-10-01 高通股份有限公司 用于视频译码的残余四叉树(rqt)译码
WO2017157249A1 (en) * 2016-03-16 2017-09-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding
US20170280162A1 (en) * 2016-03-22 2017-09-28 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016172314A1 (en) * 2015-04-21 2016-10-27 Vid Scale, Inc. Artistic intent based video coding
US10212444B2 (en) * 2016-01-15 2019-02-19 Qualcomm Incorporated Multi-type-tree framework for video coding
US10609423B2 (en) * 2016-09-07 2020-03-31 Qualcomm Incorporated Tree-type coding for video coding
EP3662666A4 (en) * 2017-09-08 2021-03-03 Mediatek Inc. METHODS AND DEVICES FOR PROCESSING IMAGES IN AN IMAGE OR VIDEO ENCODING SYSTEM

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104081777A (zh) * 2012-01-30 2014-10-01 高通股份有限公司 用于视频译码的残余四叉树(rqt)译码
WO2017157249A1 (en) * 2016-03-16 2017-09-21 Mediatek Inc. Method and apparatus of video data processing with restricted block size in video coding
US20170280162A1 (en) * 2016-03-22 2017-09-28 Qualcomm Incorporated Constrained block-level optimization and signaling for video coding tools

Also Published As

Publication number Publication date
WO2019131651A1 (en) 2019-07-04
EP3732880A1 (en) 2020-11-04
US11259021B2 (en) 2022-02-22
EP3732880A4 (en) 2021-04-28
US20210076034A1 (en) 2021-03-11

Similar Documents

Publication Publication Date Title
CN110999291B (zh) 用于划分视频数据的帧间预测片段中的视频块的系统和方法
WO2020262396A1 (en) Systems and methods for reducing a reconstruction error in video coding based on a cross-component correlation
US11259021B2 (en) Systems and methods for partitioning video blocks at a boundary of a picture for video coding
CN110313179B (zh) 用于按比例缩放变换系数水平值的系统和方法
US20230328239A1 (en) Systems and methods for partitioning video blocks for video coding
US11889123B2 (en) Systems and methods for partitioning video blocks at a boundary of a picture
CN112204967A (zh) 用于划分视频数据的帧间预测片段中的视频块的系统和方法
CN111919446B (zh) 解码视频图片中的当前视频块的方法
KR20200022013A (ko) 비디오 코딩을 위한 비디오 블록들로 픽처의 기하학적 적응성 블록 분할을 위한 시스템들 및 방법들
US11778182B2 (en) Device for decoding video data, device for encoding video data, and method for decoding video data
WO2020184637A1 (en) Systems and methods for performing intra prediction coding in video coding
CN112997501B (zh) 导出用于对视频数据进行解码的预测亮度样本值的方法
WO2020054713A1 (en) Systems and methods for coding transform coefficient level values
WO2020141598A1 (en) Systems and methods for performing intra prediction coding
WO2021070427A1 (en) Systems and methods for reducing a reconstruction error in video coding based on a cross-component correlation
CN110583021A (zh) 用于执行平面帧内预测视频编码的系统和方法
WO2020149298A1 (en) Systems and methods for deriving quantization parameters for video blocks in video coding
WO2019188845A1 (en) Systems and methods for partitioning video blocks for video coding based on threshold values

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