CN112204967A - 用于划分视频数据的帧间预测片段中的视频块的系统和方法 - Google Patents

用于划分视频数据的帧间预测片段中的视频块的系统和方法 Download PDF

Info

Publication number
CN112204967A
CN112204967A CN201980036049.3A CN201980036049A CN112204967A CN 112204967 A CN112204967 A CN 112204967A CN 201980036049 A CN201980036049 A CN 201980036049A CN 112204967 A CN112204967 A CN 112204967A
Authority
CN
China
Prior art keywords
tree
video
partitioning
binary
video data
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
CN201980036049.3A
Other languages
English (en)
Inventor
凯兰·穆凯什·米斯拉
赵杰
克里斯托弗·安德鲁·塞格尔
迈克尔·霍洛维茨
朱维佳
法兰克·博森
萨钦·G·德施潘德
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.)
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 CN112204967A publication Critical patent/CN112204967A/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/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
    • 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/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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

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

Abstract

公开了一种分割视频数据以进行视频编码的方法。根据所述方法,视频块被接收,所述视频块包括用于视频数据的第一分量和视频数据的第二分量的样本值;根据第一四叉树二叉树划分结构划分视频数据的第一分量和视频数据的第二分量的样本值;对于所述第一四叉树二叉树的与帧内预测类型相关联的节点中包括的视频数据的所述第一分量的样本值,根据第二四叉树二叉树将所述样本进一步划分。

Description

用于划分视频数据的帧间预测片段中的视频块的系统和方法
技术领域
本公开涉及视频编码,并且更具体地涉及用于划分视频数据的图片的技术。
背景技术
数字视频功能可以结合到各种设备中,包括数字电视、笔记本电脑或台式电脑、平板电脑、数字录音设备、数字媒体播放器、视频游戏设备、蜂窝电话(包括所谓的智能电话)、医学成像设备等。可以根据视频编码标准对数字视频进行编码。视频编码标准可以结合视频压缩技术。视频编码标准的示例包括ISO/IEC MPEG-4Visual和ITU-T H.264(也被称为ISO/IEC MPEG-4AVC)和高效率视频编码(HEVC)。在2015年4月的高效视频编码(HEVC),ITU-T建议书H.265中描述了HEVC,该标准以引用方式并入,并且在本文中称为ITU-T H.265。目前正在考虑对ITU-T H.265进行扩展和改进以开发下一代视频编码标准。例如,ITU-T视频编码专家组(VCEG)和ISO/IEC活动图像专家组(MPEG)(被统称为联合视频研究组(JVET))正在研究压缩能力显著超过当前HEVC标准的未来视频编码技术的标准化的潜在需求。各自以引用方式并入本文的联合探索模型6(JEM 6)、联合探索测试模型6(JEM 6)的算法描述、ISO/IEC JTC1/SC29/WG11文档:JVET-F1001第3版(2017年4月,澳大利亚霍巴特)以及联合探索模型7(JEM 7)、联合探索模型7(JEM 7)的算法描述、ISO/IEC JTC1/SC29/WG11文档:JVET-G1001(2017年7月,意大利都灵)描述了由JVET在协调测试模型研究下的编码特征,该技术是超越ITU-T H.265功能的潜在增强视频编码技术。应当指出的是,JEM 6和JEM 7的编码特征在JEM参考软件中实现。如本文所用,术语“JEM”用来统称JEM 6和JEM 7中包括的算法和JEM参考软件的具体实施。
视频压缩技术能够减少存储和传输视频数据的数据需求。视频压缩技术可以通过利用视频序列中固有的冗余来减少数据需求。视频压缩技术可将视频序列再分成连续较小的部分(即,视频序列内的帧组、帧组内的帧、帧内的片段、片段内的编码树单元(例如,宏块)、编码树单元内的编码块等)。可以使用帧内预测编码技术(例如,图片内(空间))和帧间预测技术(即图片间(时间))来生成待编码的视频数据单元与视频数据的参考单元之间的差值。该差值可以被称为残差数据。残差数据可以被编码为量化变换系数。语法元素可以涉及残差数据和参考编码单元(例如,帧内预测模式索引、运动矢量和块矢量)。可以对残差数据和语法元素进行熵编码。熵编码的残差数据和语法元素可以包括在兼容比特流中。
发明内容
在一个示例中,一种对视频数据进行划分以用于视频编码的方法包括:接收视频块,该视频块包括用于视频数据的第一分量和视频数据的第二分量的样本值,根据第一四叉树二叉树划分结构将用于视频数据的第一分量和视频数据的第二分量的样本值进行划分,并且对于第一四叉树二叉树的与帧内预测类型相关联的节点中包括的视频数据的第一分量的样本值,根据第二四叉树二叉树将样本进一步划分。
在一个示例中,一种确定视频数据的划分的方法包括:解析第一四叉树二叉树划分结构,将第一四叉树二叉树划分结构应用于视频数据的第一分量,将第一四叉树二叉树划分结构应用于视频数据的第二分量,确定第一四叉树二叉树的节点是否与帧内预测类型相关联,在确定第一四叉树二叉树的节点与帧内预测类型相关联后,解析第二第一四叉树二叉树划分结构,以及将第二四叉树二叉树划分结构应用于第一四叉树二叉树的节点中包括的视频数据的第一分量的样本值。
附图说明
图1是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码和解码的系统的示例的框图。
图2是示出根据本公开的一种或多种技术的四叉树二叉树的示例的概念图。
图3是示出根据本公开的一种或多种技术的视频分量四叉树二叉树划分的概念图。
图4是示出根据本公开的一种或多种技术的视频分量采样格式的示例的概念图。
图5是示出根据本公开的一种或多种技术的视频数据块的可能的编码结构的概念图。
图6A是示出根据本公开的一种或多种技术的对视频数据块进行编码的示例的概念图。
图6B是示出根据本公开的一种或多种技术的对视频数据块进行编码的示例的概念图。
图7是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码和解码的系统的示例的框图。
图8是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码的视频编码器的示例的框图。
图9是示出根据本公开的一种或多种技术的视频分量划分的概念图。
图10是示出根据本公开的一种或多种技术的视频分量划分的概念图。
图11A是示出根据本公开的一种或多种技术的划分的概念图。
图11B是示出根据本公开的一种或多种技术的划分的概念图。
图12是示出根据本公开的一种或多种技术的视频分量四叉树二叉树划分的概念图。
图13是示出根据本公开的一种或多种技术的视频分量划分的概念图。
图14A是示出根据本公开的一种或多种技术的视频分量四叉树二叉树划分的概念图。
图14B是示出根据本公开的一种或多种技术的视频分量四叉树二叉树划分的概念图。
图15A是示出根据本公开的一种或多种技术的视频分量四叉树二叉树划分的概念图。
图15B是示出根据本公开的一种或多种技术的视频分量四叉树二叉树划分的概念图。
图16是示出根据本公开的一种或多种技术的可被配置为对视频数据进行解码的视频解码器的示例的框图。
具体实施方式
一般来讲,本公开描述了用于对视频数据进行编码的各种技术。具体地讲,本公开描述了用于划分视频数据的图片的技术。应当注意,尽管本公开的技术是相对于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)结构。在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-T H.265中,使用帧内预测或帧间预测对图片区域进行编码的决定在CU级作出。
在ITU-T H.265中,CU与在CU处具有其根的预测单元(PU)结构相关联。在ITU-TH.265中,PU结构允许分割亮度CB和色度CB以生成对应的参考样本。即,在ITU-T H.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指定了CTU具有256×256亮度样本的最大大小。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分割模式编码树=11)时,指示垂直分割模式。当BT分割模式语法元素的值为2(即,BT分割模式编码树=10)时,指示水平分割模式。此外,可执行BT分割,直到达到最大BT深度。因此,根据JEM,图2中所示的QTBT可基于表1中提供的伪语法来表示:
Figure BDA0002803323520000081
Figure BDA0002803323520000091
表1
在一个示例中,当达到最大QT深度时,可跳过QT标记的信令并且可推断其值,例如推断为0。在一个示例中,当当前深度小于最小QT深度时,可跳过QT标记的信令并且可推断其值,例如推断为1。在一个示例中,当到达用于划分类型的信令的最大深度时,可能不会在比特流中用信号发送关联的语法元素并且可推断其值。在一个示例中,当尚未到达用于划分类型的信令的最小深度时,可能不会在比特流中用信号发送关联的语法元素并且可推断其值。在一个示例中,当不允许QT分割并且当当前深度小于最小BT深度时,BT分割的信令可被修改为不允许BT分割等于0。
如图2和表1所示,QT分割标记语法元素和BT分割模式语法元素与深度相关联,其中深度为零对应于QTBT的根,较高值的深度对应于除根之外的后续深度。此外,在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亮度样本);
MinQTSize:最小允许的四叉树叶节点大小(例如,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所示,使用缩放因子阵列执行缩放。
在ITU-T H.265中,通过选择缩放矩阵并将缩放矩阵中的每个条目乘以量化缩放因子来生成缩放因子阵列。在ITU-T H.265中,基于预测模式和颜色分量选择缩放矩阵,其中定义了以下大小的缩放矩阵:4×4、8×8、16×16和32×32。因此,应当指出的是,ITU-TH.265没有为除4×4、8×8、16×16和32×32之外的大小定义缩放矩阵。在ITU-T H.265中,可以由量化参数QP确定量化缩放因子的值。在ITU-T H.265中,QP可以取0至51的52个值,QP变化1通常对应于量化缩放因子的值变化约12%。此外,在ITU-T H.265中,可以使用预测量化参数值(可以被称为预测QP值或QP预测值)和可选地用信号发送的量化参数增量值(可以被称为QP增量值或增量QP值)来导出一组变换系数的QP值。在ITU-T H.265中,可以针对每个CU更新量化参数,并且可以针对亮度(Y)和色度(Cb和Cr)分量中的每一者导出量化参数。
如图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熵编码器,使得可以使用算术编码对一些语法元素进行熵编码而不使用明确指定的上下文模型,此类编码可以被称为旁路编码。
如上所述,重构块的样本值可不同于被编码的当前视频块的样本值。另外,应当指出的是,在一些情况下,逐块地对视频数据进行编码可能导致伪像(例如,所谓的块伪像、带伪像等)。例如,块伪像可能导致重建的视频数据的编码块边界可被用户在视觉上感知到。这样,可修改重建的样本值,以使所编码的当前视频块的样本值之间的差异最小化和/或尽量减少由视频编码过程引入的伪像。此类修改一般可称为滤波。应当指出的是,滤波可作为循环中滤波过程或循环后滤波过程的一部分发生。对于循环中滤波过程,滤波过程的所得样本值可用于预测视频块(例如,存储到参考帧缓冲器以用于在视频编码器处的后续编码以及在视频解码器处的后续解码)。对于循环后滤波过程,滤波过程的所得样本值仅作为解码过程的一部分输出(例如,不用于后续编码)。例如,就视频解码器而言,对于循环中滤波过程,滤波重构块所产生的样本值将用于后续解码(例如,存储到参考缓冲器)并且将被输出(例如,输出到显示器)。对于循环后滤波过程,重构块将用于后续解码,并且滤波重构块所产生的样本值将被输出。
解块(或去块)、解块滤波或应用解块滤波器是指平滑化相邻重构视频块的边界(即,使得观察者不易察觉到边界)的过程。平滑化相邻重构视频块的边界可以包括修改被包括在邻近边界的行或列中的样本值。ITU-T H.265提供了作为循环中滤波过程的一部分将解块滤波器应用于重构样本值的场景。ITU-T H.265包括可以用于修改亮度样本的两种类型的滤波器:强滤波器,其修改与边界相邻的三行或列中的样本值;弱滤波器,其修改与边界紧密相邻的行或列中的样本值并且有条件地修改从边界开始的第二行或列中的样本值。此外,ITU-T H.265包括一种类型的可用于修改色度样本的滤波器:Normal Filter(普通滤波器)。
除了作为循环中滤波过程的一部分应用解块滤波器之外,ITU-T H.265还提供了可在循环中滤波过程中应用样本自适应偏移(SAO)滤波的场景。在ITU-T H.265中,SAO是通过有条件地加上偏移值来修改区域中的解块样本值的过程。ITU-T H.265提供了可应用于CTB的两种类型的SAO滤波器:带偏移或边缘偏移。对于带偏移和边缘偏移中的每一者,比特流中包括四个偏移值。对于带偏移,所应用的偏移取决于样本值的振幅(例如,振幅被映射到带,这些带被映射到四个已用信号发送的偏移)。对于边缘偏移,所应用的偏移取决于具有水平、垂直、第一对角线或第二对角线边缘分类中的一者的CTB(例如,分类被映射到四个已用信号发送的偏移)。
另一种类型的滤波过程包括所谓的自适应环路滤波器(ALF)。在JEM中指定了使用基于块的适应的ALF。在JEM中,在SAO滤波器之后应用ALF。应当指出的是,可以独立于其他滤波技术将ALF应用于重构的样本。在视频编码器处应用在JEM中指定的ALF的过程可总结如下:(1)根据分类索引对用于重构图像的亮度分量的每个2×2块进行分类;(2)导出每个分类索引的滤波器系数组;(3)针对亮度分量确定滤波决策;(4)针对色度分量确定滤波决策;以及(5)用信号发送滤波器参数(例如系数和决策)。
根据JEM中指定的ALF,根据分类索引C对每个2×2块进行分类,其中C为0至24的包括端值在内的范围内的整数。根据以下公式,C基于其方向性D以及活动性
Figure BDA0002803323520000141
的量化值来导出:
Figure BDA0002803323520000142
其中D和
Figure BDA0002803323520000151
水平方向、垂直方向和两个对角线方向的梯度使用1-D拉普拉斯计算,如下所示:
Figure BDA0002803323520000152
Figure BDA0002803323520000153
Figure BDA0002803323520000154
Figure BDA0002803323520000155
其中,索引i和j是指在2×2块中的左上角样本的坐标,并且R(i,j)指示坐标为(i,j)的重构样本。
水平方向和垂直方向的梯度的最大值和最小值可设定为:
Figure BDA0002803323520000156
Figure BDA0002803323520000157
并且两个对角线方向的梯度的最大值和最小值可设定为:
Figure BDA0002803323520000158
Figure BDA0002803323520000159
在JEM中,为了导出方向性D的值,将最大值和最小值彼此进行比较并且与两个阈值t1和t2进行比较:
第1步.如果
Figure BDA0002803323520000161
Figure BDA0002803323520000162
两者都为真,则D被设定为0。
第2步.如果
Figure BDA0002803323520000163
则从第3步继续;否则,从第4步继续。
第3步.如果
Figure BDA0002803323520000164
则D被设定为2;否则,D被设定为1。
第4步.如果
Figure BDA0002803323520000165
则D被设定为4;否则,D被设定为3。
在JEM中,如下计算活动性值A:
Figure BDA0002803323520000166
其中,A被进一步量化为0至4的包括端值在内的范围,并且量化值表示为
Figure BDA0002803323520000167
如上所述,在视频编码器处应用在JEM中指定的ALF包括为每个分类索引导出滤波器系数组并确定滤波决策。应当指出的是,滤波器系数组的导出和滤波决策的确定可以是迭代过程。即,可基于滤波决策来更新滤波器系数组,并且可基于更新的滤波器系数组来更新滤波决策,并且这可重复多次。此外,视频编码器可实现各种专用算法以确定滤波器系数组和/或确定滤波决策。无论怎样为每个分类索引导出滤波器系数组以及如何确定滤波决策,本文所述的技术通常都适用。
根据一个示例,通过初始为每个分类索引导出一组最佳滤波器系数,来导出滤波器系数组。通过在应用滤波之后将所需的样本值(即,源视频中的样本值)与重构的样本值进行比较,并且通过在执行滤波之后将所需的样本值与重构的样本值之间的误差平方和(SSE)最小化来导出最佳滤波器系数。然后,可以将为每个组导出的最佳系数用于对重构样本执行基本滤波,以便分析ALF的效果。即,可将所需的样本值、应用ALF之前的重构样本值,以及执行ALF之后的重构样本值进行比较以确定使用最佳系数应用ALF的效果。
根据JEM中的指定ALF,通过根据以下公式确定所得的样本值R'(i,j)来对每个重构的样本R(i,j)滤波,其中在以下公式中,L表示滤波器长度,并且f(k,l)表示经解码的滤波器系数。
Figure BDA0002803323520000171
应当指出的是,JEM定义了三种滤波器形状(5×5菱形、7×7菱形和9×9菱形)。应当指出的是,9×9菱形滤波器形状通常用于基本滤波。应当指出的是,在JEM中,几何变换应用于滤波器系数f(k,l),具体取决于梯度值:gv、g、gd1、gd2,如表2中提供。
梯度值 变换
g<sub>d2</sub>&lt;g<sub>d1</sub>并且g<sub>h</sub>&lt;g<sub>v</sub> 不变换
g<sub>d2</sub>&lt;g<sub>d1</sub>并且g<sub>v</sub>&lt;g<sub>h</sub> 对角线
g<sub>d1</sub>&lt;g<sub>d2</sub>并且g<sub>h</sub>&lt;g<sub>v</sub> 垂直翻转
g<sub>d1</sub>&lt;g<sub>d2</sub>并且g<sub>v</sub>&lt;g<sub>h</sub> 旋转
表2
其中对角线、垂直翻转和旋转定义如下:
对角线:·····fD(k,l)=f(l,k),
垂直翻转:···fV(k,l)=f(k,K-l-1)
旋转:fR(k,l)=f(K-l-1,k)
其中K为滤波器的大小,并且0≤k,1≤K-1为系数坐标,使得位置(0,0)位于左上角,并且位置(K-1,K-1)位于右下角。
JEM提供最多可用信号发送25组亮度滤波器系数(即,每个可能的分类索引一个)的场景。因此,可针对在对应图像区域中出现的每个分类索引来用信号发送最佳系数。然而,为了优化用信号发送滤波器系数组与滤波器效果之间的关系所需的数据量,可执行率失真(RD)优化。例如,JEM提供了可以使用将一组滤波器系数映射到每个分类索引的阵列将相邻分类组的滤波器系数组合并用信号发送的场景。此外,JEM还提供了时间系数预测可用于用信号发送系数的场景。即,JEM提供了通过继承用于参考图片的一组滤波器系数来基于参考图片的滤波器系数组预测当前图片的滤波器系数组的场景。JEM还提供了对于帧内预测图片,可将一组16个固定滤波器用于预测滤波器系数组的场景。如上所述,滤波器系数组的导出和滤波决策的确定可以是迭代过程。即,例如,可以基于用信号发送了多少组滤波器系数来确定ALF的形状,并且类似地,ALF是否被应用于图像的区域可基于用信号发送的滤波器系数组和/或滤波器的形状。
如上所述,用于在视频编码器处应用在JEM中指定的ALF的过程包括用信号发送滤波器参数。即,JEM提供由视频编码器用来向视频解码器指示滤波器参数的信令。视频解码器然后可基于所指示的滤波器参数将ALF应用于重构的样本值。JEM提供了对于亮度分量,图片级标记可使得ALF能够被选择性地应用于图片中的每个CU的场景。此外,JEM提供了在图片级用信号发送的索引值指示为亮度分量选择的滤波器形状(即5×5菱形、7×7菱形或9×9菱形)的场景。应当指出的是,较大的滤波器形状通常更准确,但需要更多的滤波器系数。此外,JEM提供了针对亮度分量在片段级用信号发送滤波器系数的场景。如上所述,可直接针对25组中的一者或多者用信号发送滤波器系数,或使用预测技术用信号发送滤波器系数。此外,JEM提供了针对色度分量在图片级启用或禁用ALF的场景。应当指出的是,在JEM中,对于色度分量,将整个图片视为一个类,并且滤波器形状始终为5×5菱形,为每个色度分量应用一组滤波器系数,并且不存在CU级。此外,应当指出的是,如果未针对亮度分量启用ALF,则针对色度分量禁用ALF。
如上所述,帧内预测数据或帧间预测数据可以将图片的区域(例如,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预测模式可以被称为无方向预测模式,并且角度预测模式可以被称为方向预测模式。应当指出的是,无论已定义的可能预测模式的数量如何,本文描述的技术可以是普遍适用的。
除了根据预测模式生成参考样本(其可被称为帧内预测块)之外,帧内预测编码可包括在生成残差数据之前(例如,在编码期间)修改参考样本和/或在重构视频块之前(例如,在解码期间)修改参考样本。JEM指定用于在生成残差数据之前修改参考样本和在重构视频块之前修改参考样本的技术。在JEM中指定的用于修改参考样本的一种技术包括使用未滤波和经滤波的参考样本的加权组合来生成预测视频块(即,所谓的位置相关帧内预测(PDPC))。
在PDPC中,预测视频块是根据以下公式生成的,其中,p[x,y]是新的预测。在该公式中,r[x,y]表示使用未滤波的参考样本为方向预测模式生成的参考样本,q[x,y]表示使用滤波的参考样本为方向预测模式生成的参考样本。
Figure BDA0002803323520000191
其中
Figure BDA0002803323520000192
为存储的预测参数,对于宽度小于或等于16的块,dx=1,并且对于宽度大于16的块,d_x=2,对于高度小于或等于16的块,d_y=1,并且对于高度大于16的块,d_y=2。b[x,y]为如下推导的归一化因子:
Figure BDA0002803323520000193
其中x>>y运算表示x乘y二进制数字的二进制补码整数表示的算术右移;并且
[x]返回小于或等于x的最接近整数。
为每个预测方向和块大小定义预测参数
Figure BDA0002803323520000194
在JEM中,为每个帧内预测模式和块大小定义一组预测参数。此外,应当指出的是,在JEM中,CU级标记PDPC_idx指示是否应用PDPC,其中值为0表示使用现有的ITU-T H.265帧内预测,值为1表示应用PDPC。
此外,JEM提供参考样本滤波机制,即所谓的自适应参考样本平滑(ARSS)。如JEM中所提供,在ARSS中,使用两个低通滤波器(LPF)来处理参考样本:系数为[1,2,1]/4的3抽头LPF;以及系数为[2,3,6,3,2]]/16的5抽头LPF。如JEM中所提供,对于ARSS,使用已定义的一组规则来确定以下哪一项适用:(1)参考样本未经滤波;(2)参考样本是符合ITU-T H.265规则的滤波器(在一些情况下有修改);(3)使用3抽头LPF对参考样本进行滤波;或(4)使用5抽头LPF对参考样本进行滤波。在JEM中,ARSS仅应用于亮度分量,如果CU大小小于或等于1024个亮度样本并且大于或等于64个亮度样本,则亮度编码块中的至少一个系数子组具有隐藏的符号位并且帧内预测模式不是DC模式。此外,在JEM中,当CU的PDPC标记等于1时,在该CU中禁用自适应参考样本平滑。
对于帧间预测编码,运动矢量(MV)识别除了待编码的视频块的图片之外的图片中的参考样本,从而利用视频中的时间冗余。例如,可以从位于先前编码的一个或多个帧中的一个或多个参考块预测当前视频块,并且可以使用运动矢量来指示参考块的位置。运动矢量和相关联的数据可以描述例如运动矢量的水平分量、运动矢量的垂直分量、运动矢量的分辨率(例如,四分之一像素精度、二分之一像素精度、一像素精度、二像素精度、四像素精度)、预测方向和/或参考图片索引值。此外,编码标准,诸如ITU-T H.265,可以支持运动矢量预测。运动矢量预测允许待指定的运动矢量使用相邻块的运动矢量。运动矢量预测的示例包括高级运动矢量预测(AMVP)、时间运动矢量预测(TMVP)、所谓的“合并”模式,以及“跳过”和“直接”运动推理。此外,JEM支持高级时间运动矢量预测(ATMVP)和空间-时间运动矢量预测(STMVP)。
如上所述,可以变换使用预测和对应的参考样本为图片的区域生成的残差数据来生成变换系数。可以使用与变换集合相关联的变换矩阵来生成变换系数。在JEM中,除了使用ITU-T H.265中所用的DCT-II和4×4DST-VII变换类型之外,还使用自适应多重变换(AMT)方案来对帧间编码块和帧内编码块两者进行残差编码。在JEM中,AMT使用以下变换矩阵DST-VII、DCT-VIII、DST-I和DCT-V。JEM中的每个变换矩阵可使用水平(H)变换和垂直(V)变换来实现。在JEM中,AMT适用于宽度和高度小于或等于64的CU,AMT是否适用由CU级标记控制。当CU级标记等于0时,在CU中应用DCT-II以变换残差。对于启用AMT的CU内的亮度编码块,将用信号发送两个附加标记以标识要使用的水平编号和垂直变换。
在JEM中,对于帧内预测,定义了三个预定义的变换候选集合,如
表3中所提供。
变换集合 变换候选
0 DST-VII、DCT-VIII
1 DST-VII、DST-I
2 DST-VII、DCT-VIII
表3
在JEM中,根据表4中提供的帧内预测模式来选择变换集合。
帧内模式 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
H 2 1 0 1 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0
V 2 1 0 1 0 1 0 1 2 2 2 2 2 1 0 1 0 1 0
帧内模式 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
H 1 0 1 0 1 2 2 2 2 2 1 0 1 0 1 0
V 1 0 1 0 1 0 0 0 0 0 1 0 1 0 1 0
表4
因此,在用于帧内预测的JEM中,首先基于表3,使用CU级AMT标记等于1的CU的帧内预测模式来识别变换子集,并且对于水平变换和垂直变换中的每一者,确定所识别的变换子集中的两个变换候选中的一个。
如上进一步所述,是否应用后续二次变换来生成变换系数可取决于预测模式。在JEM中,应用随后的二次变换包括针对每个4×4变换系数子组独立地执行二次变换,独立地执行二次变换可以被称为应用取决于模式的不可分离二次变换(MDNSST)。应当指出的是,在JEM中,如果变换系数块的宽度和高度都大于或等于8,则将8×8不可分离二次变换应用于变换系数块的左上8×8区域,并且,如果变换系数块的宽度或高度等于4,则应用4×4不可分离二次变换,并且对变换系数块的左上区域执行4×4不可分离变换。在JEM中,变换选择规则应用于亮度分量和色度分量两者。在用于MDNSST的JEM中,存在35个不可分离变换矩阵,其中11是用于方向帧内预测模式的变换集合的数量,并且每个变换集合包括3个变换矩阵,并且对于无方向模式(即,平面、DC和LM),仅应用一个包括2个变换矩阵的变换集合。在JEM中,每个变换集合映射至预测模式,并且在比特流中包括2位CU级索引值(在本文中称为“NSST_idx”)以指示用于变换集合的变换矩阵。应当指出的是,在JEM中,按照每帧内CU用信号发送一次NSST_idx,并且将其在对应的变换系数之后包括在比特流中。此外,在JEM中,NSST_idx的值为零表示不将二次变换应用于当前CU。应当指出的是,在JEM中,仅当未应用PDPC时才启用MDNSST(即,PDPC_idx的值被设置为等于零)。
如上所述,在JEM中,允许任意矩形CB的QTBT叶节点可类似于ITU-T H.265中的PB和TB两者。因此,在一些情况下,在可能的PB和TB结构方面,JEM可提供比ITU-T H.265中所提供的更少的灵活性。如上进一步所述,在ITU-T H.265中,仅允许正方形TB并且只允许有限的PB形状(例如,仅允许正方形PB用于帧内预测)。因此,如ITU-T H.265和JEM所定义的划分和相关联的信令可能不够理想。本公开描述了用于划分视频数据的技术。
图7是示出根据本公开的一种或多种技术的可被配置为对视频数据进行编码(例如,编码和/或解码)的系统的示例的框图。系统100表示可根据本公开的一种或多种技术使用任意矩形视频块执行视频编码的系统的示例。如图7所示,系统100包括源设备102、通信介质110和目标设备120。在图7所示的示例中,源设备102可包括被配置为对视频数据进行编码并将编码的视频数据发送到通信介质110的任何设备。目标设备120可以包括被配置为经由通信介质110接收编码的视频数据并且对编码的视频数据进行解码的任何设备。源设备102和/或目标设备120可以包括配备用于进行有线和/或无线通信的计算设备,并且可以包括机顶盒、数字视频录像机、电视机、台式电脑、膝上型电脑或平板电脑、游戏控制台、移动设备,包括例如“智能”电话、蜂窝电话、个人游戏设备和医学成像设备。
通信介质110可以包括无线和有线通信介质和/或存储设备的任意组合。通信介质110可以包括同轴电缆、光纤电缆、双绞线电缆、无线发射器和接收器、路由器、交换机、中继器、基站或可用于促进各种设备与站点之间的通信的任何其他设备。通信介质110可以包括一个或多个网络。例如,通信介质110可以包括被配置为允许访问万维网例如互联网的网络。网络可以根据一个或多个电信协议的组合操作。电信协议可以包括专有方面并且/或者可以包括标准化电信协议。标准化电信协议的示例包括数字视频广播(DVB)标准、高级电视系统委员会(ATSC)标准、综合服务数字广播(ISDB)标准、有线数据业务接口规范(DOCSIS)标准、全球移动通信系统(GSM)标准、码分多址(CDMA)标准、第三代合作伙伴计划(3GPP)标准、欧洲电信标准协会(ETSI)标准、互联网协议(IP)标准、无线应用协议(WAP)标准以及电气与电子工程师协会(IEEE)标准。
存储设备可以包括能够存储数据的任何类型的设备或存储介质。存储介质可以包括有形或非暂态计算机可读介质。计算机可读介质可以包括光盘、闪存存储器、磁存储器或任何其他合适的数字存储介质。在一些示例中,存储器设备或其部分可以被描述为非易失性存储器,并且在其他示例中,存储器设备的部分可以被描述为易失性存储器。易失性存储器的示例可以包括随机存取存储器(RAM)、动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)。非易失性存储器的示例可以包括磁性硬盘、光盘、软盘、闪存或电可编程存储器(EPROM)或电可擦除和可编程(EEPROM)存储器的形式。一个或多个存储设备可以包括存储卡(例如,安全数字(SD)存储卡)、内部/外部硬盘驱动器和/或内部/外部固态驱动器。数据可以根据定义的文件格式存储在存储设备上。
再次参考图7,源设备102包括视频源104、视频编码器106和接口108。视频源104可以包括被配置为捕获和/或存储视频数据的任何设备。例如,视频源104可以包括摄像机和可操作地与其耦接的存储设备。视频编码器106可以包括被配置为接收视频数据并生成表示视频数据的兼容比特流的任何设备。兼容比特流可以指视频解码器可以从其接收和再现视频数据的比特流。兼容比特流的各方面可根据视频编码标准来定义。当生成兼容比特流时,视频编码器106可压缩视频数据。压缩可能是有损的(可觉察的或不可觉察的)或无损的。接口108可以包括被配置为接收合规视频比特流并且将该合规视频比特流传送和/或存储到通信介质的任何设备。接口108可以包括网络接口卡诸如以太网卡,并且可以包括光收发器、射频收发器或者可以发送和/或接收信息的任何其他类型的设备。此外,接口108可以包括计算机系统接口,其可以使得合规视频比特流能够存储在存储设备上。例如,接口108可以包括支持外围部件互连(PCI)和高速外围部件互连(PCIe)总线协议、专用总线协议、通用串行总线(USB)协议、I2C的芯片集或可用于互连对等设备的任何其他逻辑和物理结构。
再次参考图7,目标设备120包括接口122、视频解码器124和显示器126。接口122可以包括被配置为从通信介质接收合规视频比特流的任何设备。接口108可以包括网络接口卡诸如以太网卡,并且可以包括光收发器、射频收发器或者可接收和/或发送信息的任何其他类型的设备。此外,接口122可以包括使能够从存储设备处检索兼容视频比特流的计算机系统接口。例如,接口122可以包括支持PCI和PCIe总线协议、专用总线协议、USB协议、I2C的芯片集或可用于互连对等设备的任何其他逻辑和物理结构。视频解码器124可以包括被配置为接收合规比特流和/或其可接受变体并且从其中再现视频数据的任何设备。显示器126可以包括被配置为显示视频数据的任何设备。显示器126可以包括各种显示设备诸如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或另一种类型的显示器中的一者。显示器126可以包括高清显示器或超高清显示器。应当指出的是,尽管在图7所示的示例中,视频解码器124被描述为将数据输出到显示器126,但视频解码器124可以被配置为将视频数据输出到各种类型的设备和/或其子部件。例如,视频解码器124可以被配置为将视频数据输出到任何通信介质,如本文所述。
图8是示出可实现本文所述的用于编码视频数据的技术的视频编码器200的示例的框图。应当注意,尽管示例性视频编码器200被示出为具有不同的功能块,但此类图示旨在用于描述目的,并且不将视频编码器200和/或其子部件限制为特定的硬件或软件架构。可使用硬件、固件和/或软件具体实施的任何组合来实现视频编码器200的功能。在一个示例中,视频编码器200可以被配置为根据本文所述的技术对视频数据进行编码。视频编码器200可以执行图片区域的帧内预测编码和帧间预测编码,并且因此可以被称为混合视频编码器。在图8所示的示例中,视频编码器200接收源视频块。在一些示例中,源视频块可以包括已经根据编码结构划分的图片区域。例如,源视频数据可包括宏块、CTU、CB、其子分区和/或另外的等效编码单元。在一些示例中,视频编码器200可被配置为执行源视频块的额外再分。应当指出的是,本文所述的一些技术可普遍适用于视频编码,无论在编码之前和/或期间如何划分源视频数据。在图8所示的示例中,视频编码器200包括求和器202、变换系数生成器204、系数量化单元206、逆量化/变换处理单元208、求和器210、帧内预测处理单元212、帧间预测处理单元214、滤波器单元216和熵编码单元218。
如图8所示,视频编码器200接收源视频块并输出比特流。如上所述,JEM包括用于用信号发送QTBT树的以下参数:CTU大小、MinQTSize、MaxBTSize、MaxBTDepth以及MinBTSize。表5示出了针对不同CTU大小的QT叶节点在不同QT深度处的块大小(在该示例中,MinQTSize为8)。此外,表6示出了用于二叉树根节点大小(即,叶四叉树节点大小)的各种BT深度处的BT叶节点的允许的块大小。
Figure BDA0002803323520000251
表5
Figure BDA0002803323520000252
Figure BDA0002803323520000261
表6
因此,参考表5,可以基于CTU大小和QT深度来确定四叉树节点大小,其形成二叉树的根。如果四叉树进一步被分为二叉树,则可以基于QT节点大小和BT深度来确定二叉树叶节点大小,如表6所示。MaxBTSize、MaxBTDepth和MinBTSize中的每一者可用于确定最小允许二进制树叶节点大小。例如,如果CTU大小为128×128,QT深度为3,MaxBTSize为16×16,并且MaxBTDepth为2,则最小允许二叉树叶节点大小包括64个样本(即,8×8、16×4或4×16)。在这种情况下,如果MaxBTDepth为1,则最小允许二叉树叶节点大小包括128个样本(即,16×8或8×16)。表7示出了在CTU大小为128×128的QT深度和BT深度的各种组合下BT叶节点的块大小。
Figure BDA0002803323520000262
表7
如上所述,在JEM中定义的QTBT划分和相关联的信令可能不够理想。在一些示例中,根据本文所述的技术,视频编码器200可被配置为对CTU进行划分,使得亮度通道和色度通道具有最高至CU级的公共划分结构,其中预测类型(例如,帧内模式或帧间模式或跳过模式)与CU相关联。此外,根据预测类型(例如,帧内模式或帧间模式或跳过模式),亮度通道和色度通道中的一者或两者可被进一步划分。在一个示例中,亮度通道和色度通道具有最高至CU级的公共划分结构,并且如果帧内预测类型与CU相关联,则亮度通道和色度通道中的一者或两者可被进一步划分。应当指出的是,在以下示例中,CU级是指形成用于将亮度通道和色度通道进一步划分的根的共享QTBT的叶。应当指出的是,在一个示例中,亮度通道和色度通道是否可超出CU级被划分可被明确地用信号发送(例如,使用CTU级的标记或在划分树中用信号发送预测类型的级的标记),或者可基于视频数据的属性(例如,CTU大小)来推断。应当指出的是,对于具有帧内类型的视频数据片段(其可被称为帧内预测片段),仅启用帧内预测模式,并且对于具有帧间类型的视频数据片段(其可被称为帧间预测片段),启用帧内预测模式和帧间预测模式两者。在一个示例中,可为帧内片段和帧间片段采用不同的划分方案。例如,在一个示例中,对于帧内片段,可以将独立QTBT用于亮度通道和色度通道,并且对于帧间片段,可以根据本文所述的技术对亮度通道和色度通道进行划分。此外,应当指出的是,在一个示例中,可以使用各种其他技术(例如,ITU-T H.265中提供的技术)来对帧内片段进行划分,并且对于帧间片段,可以根据本文所述的技术对亮度通道和色度通道进行划分。
图9和图10是示出根据本公开的一个或多个技术的视频分量划分的概念图。图9示出了这样的示例,其中对于包括在帧间片段中的CTU,亮度通道和色度通道具有最高至CU级的公共划分结构,并且在针对CU指定帧内预测类型的情况下,亮度通道和色度通道可被进一步划分。图10示出了这样的示例,其中对于包括在帧间片段中的CTU,亮度通道和色度通道具有最高至CU级的公共划分结构,并且在针对CU指定帧内预测类型的情况下,亮度通道可被进一步划分。应当指出的是,就图9和图10而言,为了简洁地例示,CU中只有一个被示为具有帧内预测类型,并且其他CU具有帧间预测类型。应当指出的是,帧内预测类型或帧间预测类型的任何组合都可与CTU中的相应CU相关联。在图9和图10所示的示例中,每个例示的CB可以是对其应用相同预测的样本值的块。即,图9和图10中所示的CB可类似于ITU-TH.265中的PB。然而,应当指出的是,图9和图10中的CB不限于ITU-T H.265中所定义的PB形状(即,CB可具有由QTBT划分产生的形状)。
参见图9,对于亮度通道,根据四分分割将与帧内预测类型相关联的CU进一步划分,并且对于色度通道,根据垂直分割将与帧内预测类型相关联的CU进一步划分。因此,根据本文所述的技术,亮度通道和色度通道可根据QTBT独立地划分,其中与帧内预测类型相关联的CU形成独立QTBT的根。参见图10,对于亮度通道,根据四叉树分割将与帧内预测类型相关联的CU进一步划分,并且对于色度通道,关联的CU不被进一步分割。因此,根据本文所述的技术,亮度通道或色度通道中的一者可根据QTBT独立地划分,其中与帧内预测类型相关联的CU形成QTBT的根。应当指出的是,在其他示例中,可为亮度通道和/或色度通道允许其他类型的划分,其中与帧内预测类型相关联的CU形成用于将亮度通道和/或色度通道进一步划分的根。例如,可为亮度通道和/或色度通道中的每一者启用下列划分类型组合中的任何一种:不进一步划分、QT划分、BT划分和QTBT划分。
在一个示例中,可使用更高级的语法来用信号发送可为亮度通道和/或色度通道中的每一者启用的划分的类型。例如,可在CTU级、片段级别或参数集级(例如,图像参数集(PPS)或序列参数集(SPS))用信号发送亮度通道划分类型和/或色度通道划分类型中的每一者。如上所述,QT分割标记语法元素和BT分割模式语法元素与深度相关联,其中深度为零对应于QTBT的根,较高值的深度对应于除根之外的后续深度。应当指出的是,在一些情况下,可相对于形成根的CU来定义深度。在一个示例中,亮度通道和/或色度通道是否以及如何可超出与帧内预测类型相关联的CU被进一步划分可基于最大深度值。例如,仅划分产生的深度小于或等于最大深度时,才允许对亮度通道和/或色度通道进行进一步划分。在一个示例中,可使用更高级的语法来用信号发送亮度通道和/或色度通道中的每一者的最大深度。在一个示例中,可为BT划分和/或QT划分提供最大深度。在一个示例中,最大深度可与为根在CTU级的QTBT划分指定的最大深度相同。例如,对于亮度通道,可针对QT划分指定最大深度3,并且可为BT划分指定最大深度4。
在一个示例中,亮度通道和/或色度通道是否以及如何可超出与帧内预测类型相关联的CU被进一步划分可基于所得的形状和/或CB中样本的数量。例如,可指定最小大小(宽度×高度)、最小高度和/或最小宽度中的一者或多者,使得所得到的CB必须大于或等于指定的最小值。在一个示例中,可使用更高级的语法来用信号发送亮度通道和/或色度通道中的每一者的最小大小/维度。在一个示例中,最小大小/维度/样本数量可与为根在CTU级的QTBT划分所指定的最小大小/维度/样本数量相同。此外,在一个示例中,亮度通道和/或色度通道是否以及如何可超出与帧内预测类型相关联的CU被进一步划分可基于CTU和/或CU中样本的形状和/或数量。例如,可为具有大于或等于最小大小/维度的大小/维度的CTU和/或CU启用亮度通道和/或色度通道的进一步划分。此外,在一个示例中,可为具有小于最小大小/维度的大小/维度的CTU和/或CU启用亮度通道和/或色度通道的进一步划分。在一个示例中,最小大小/维度/样本数量可与为根在CTU级的QTBT划分所指定的最小大小/维度/样本数量相同。在一个示例中,可为具有小于或等于最大大小/维度/样本数量的大小/维度/样本数量的CTU和/或CU启用亮度通道和/或色度通道的进一步划分。当块大小小于最大值时,可推断划分(例如,QT划分)并且不需要额外的信令。在一个示例中,最大大小/维度/样本数量可与为根在CTU级的QTBT划分所指定的最大大小/维度/样本数量相同。在一个示例中,均可使用更高级的语法来用信号发送CTU和/或CU的亮度通道和/或色度通道大小/维度中的每一者。此外,在一个示例中,CTU和/或CU的亮度通道和/或色度通道大小/维度中的每一者可为预先确定的。
Li等人在2016年10月15日至21日中国成都第4次会议上发表的“Multi-Type-Tree”(文档JVET-D0117r1)(在下文中简称“Li”)中描述了一个示例,其中除了对称垂直和水平BT分割模式之外,还定义了两个附加的三叉树(TT)分割模式。三叉树(TT)划分可以指将一个节点围绕某个方向分为三个块。在Li中,用于节点的TT分割模式包括:(1)在节点的从顶部边缘到底部边缘的高度的四分之一处进行水平TT划分;以及(2)在节点的从左侧边缘到右侧边缘的宽度的四分之一处进行垂直TT划分。图11A示出了垂直TT划分和水平TT划分的示例。应当指出的是,如本文所用,术语“三叉树(TT)划分”可指将一个节点围绕某个方向分为三个块以实现任何偏移。即,如本文所用,TT划分不限于在四分之一偏移处对节点进行划分(例如,其他偏移可包括1/3偏移和/或非对称偏移等)。在一个示例中,可启用以将亮度通道和/或色度通道中的每一者超出CU进行划分的划分类型可包括TT划分。此外,是否可根据TT划分将亮度通道和/或色度通道超出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分割模式在图11B中示为Hor_Up、Hor_Down、Ver_Left和Ver_Right。应当指出的是,Le Leannec中的四个附加定义的BT分割模式可被称为非对称二叉树(ABT)划分并且类似于ITU-TH.265中提供的非对称PB划分。应当指出的是,在一些情况下,术语“ABT划分”可用于指任意二叉树划分。
如上所述,在JEM中,通过用信号发送QT分割标记和BT分割模式语法元素来用信号发送QTBT。图12是示出对应于图9所示的示例性QTBT划分的QTBT的示例的概念图。如图12所示,一旦达到与帧内预测类型相关联的CU,就为亮度分量和色度通道中的每一者用信号发送QTBT。表8示出了伪语法的示例,该伪语法可用于用信号发送用于图12所示的示例的亮度通道和色度通道的共享QTBT和独立QTBT。应当指出的是,就表8而言,为了举例说明的目的,预测类型标记仅示出了预测类型是帧间还是帧内。通常,在帧间片段中,预测类型标记前面有跳过标记,并且仅当跳过标记=0时,才会用信号发送预测类型标记。无论在帧间片段中如何指示帧内预测类型,本文所述的技术通常都适用。
Figure BDA0002803323520000311
Figure BDA0002803323520000321
表8
如表8所示,在到达编码单元(BT分割=0)时,确定用于该编码单元的预测类型。如果预测类型是帧间,则不会针对该编码单元发生进一步划分信令。如果预测类型是帧内,则为亮度通道用信号发送QTBT并且为色度通道用信号发送QTBT。表9A示出了针对编码单元发生的信令的一般情况。如上所述,在一些示例中,可为亮度通道或色度通道中的一者禁用进一步划分。在此类示例中,表9A中的coding_tree_unit_luma()或coding_tree_unit_chroma()中的任一者都可以用coding_block_luma()或coding_block_chroma()替换。
Figure BDA0002803323520000322
Figure BDA0002803323520000331
表9A
此外,如上所述,可使用各种技术来确定亮度通道和/或色度通道是否以及如何可超出与帧内预测类型相关联的CU被进一步划分。因此,在表9A中,coding_tree_unit_luma()和coding_tree_unit_chroma()可以提供启用各种类型的划分的语义。例如,coding_tree_unit_chroma()可以包括用于应用BT划分或TT划分的语义。在一个示例中,可根据单独的划分树或共享划分树将亮度通道和色度通道超出与帧内预测类型相关联的CU进一步划分。在一个示例中,标记可指示亮度通道和色度通道是根据单独的划分树还是共享划分树被进一步划分。表9B示出了一个示例,其中标记(即,separate_tree_flag)指示是根据单独的划分树(即,coding_tree_unit_luma()和coding_tree_unit_chroma())还是共享划分树(即,coding_tree_unit_shared())来将亮度通道和色度通道进一步划分,其中coding_tree_unit_shared()提供启用各种类型的划分的语义。
Figure BDA0002803323520000332
表9B
在一个示例中,亮度通道和色度通道是根据单独的划分树还是共享划分树被进一步划分可基于视频数据的属性和/或编码参数来推断。例如,参考表9B,可以将separate_tree_flag==TRUE条件替换为基于视频数据的属性和/或编码参数的条件。在一个示例中,是使用单独的划分树还是共享划分树来将亮度通道和色度通道进一步划分可取决于包括在CU中的样本(例如,亮度样本或色度样本)的数量。在一个示例中,当包括在CU中的样本的数量小于或等于阈值(例如,64、256或1024个样本)时,可将单独的划分树用于将亮度通道和色度通道进一步划分,否则使用共享划分树。在一个示例中,当包括在CU中的样本的数量大于或等于阈值时,可将单独的划分树用于将亮度通道和色度通道进一步划分,否则使用共享划分树。
如上所述,对于帧内预测片段,仅启用帧内预测模式,并且对于帧间预测片,启用帧内预测模式和帧间预测模式两者。应当指出的是,帧间预测片段还可被分类为P型片段(或P片段)或B型片段(B片段),其中对于B片段,启用单向和双向预测帧间预测,并且对于P片段,仅启用单向帧间预测。在一个示例中,是使用单独的划分树还是共享划分树来将亮度通道和色度通道进一步划分可取决于包括帧内CU的帧间预测片段是P片段还是B片段。在一个示例中,应当指出的是,是否存在标记并且它用于指示亮度通道和色度通道是根据单独的划分树还是共享划分树被进一步划分可取决于片段类型。例如,在一个示例中,表9B中的separate_tree_flag可对于P片段存在并且对于B片段不存在,或者另选地,表9B中的separate_tree_flag可对于B片段存在并且对于P片段不存在。如上所述,帧内CU可包括在帧内片段和帧间片段中。在一个示例中,包括在帧内片段中的帧内CU可被进一步划分,其中标记可指示亮度通道和色度通道是根据单独的划分树还是共享划分树被进一步划分。因此,在一个示例中,表9B中的separate_tree_flag可对于帧内片段和帧间片段存在。在一个示例中,表9B中的separate_tree_flag可对于片段类型的任何子集存在。在一个示例中,是否存在标记并且它用于指示亮度通道和色度通道是根据单独的划分树还是共享划分树被进一步划分可取决于视频数据的属性和/或编码参数。例如,表9B中的separate_tree_flag可基于帧内CU的大小和/或帧内CU发生的深度而存在。
应当指出的是,虽然表9B中的separate_tree_flag被描述为在CU级被用信号发送,但在其他示例中,可以在CTU级、片段级、图块级、波前级或参数集级(例如,PPS或SPS)用信号发送separate_tree_flag。此外,在一个示例中,是否启用根据单独的划分树或共享划分树对亮度通道和色度通道的进一步划分(例如,separate_tree_flag是否可基于视频数据和/或编码参数而存在)可根据更高级的标记来确定。例如,包括在片段标头中的标记可指示separate_tree_flag是否可在CU级存在,并且separate_tree_flag在特定CU处的实际存在可基于该CU的大小。此外,在一个示例中,参数集级标记可指示CTU级标记是否存在,其中CTU级标记指示CTU的进一步划分是根据共享的划分树还是单独的划分树来完成的。即,CTU级标记可类似于上述示例中描述的存在于CU级处的separate_tree_flag。在一个示例中,CTU级标记可指示是否不发生CTU的进一步划分,并且在发生CTU的进一步划分的情况下,根据共享的划分树还是单独的划分树来进行划分。在一个示例中,CTU级标记可不包括在比特流中并且不被推断来指示进一步划分发生。应当指出的是,CTU级标记可存在于比特流中,使得其在视频解码器推断将与图片边界相交的CTU隐式划分成CU之前被接收。在这种情况下,在一些情况下(例如,CTU级标记指示没有进一步划分),不需要发送各个标记来进一步划分图片边界内的最大推断CU中的每个CU。在另一个示例中,CTU级标记可存在于比特流中,使得其结合CTU的第一个CU被接收。
如上所述,亮度通道和/或色度通道是否以及如何可超出与帧内预测类型相关联的CU被进一步划分可基于最大深度值,其中可使用更高级的语法来用信号发送亮度通道和色度通道中的每一者的最大深度。在一个示例中,可独立地用信号发送根据共享划分树划分的亮度通道和色度通道中的每一者的最大深度,在这种情况下,每个通道将根据共享树进行划分,直至其最大深度。在一个示例中,可独立地用信号发送根据单独的划分树划分的亮度通道和色度通道中的每一者的最大深度。例如,包括在片段标头中的标记可指示separate_tree_flag是否可在CU级存在,并且separate_tree_flag在特定CU处的实际存在可基于该CU的大小,并且片段标头还可指示亮度通道和色度通道中的每一者的相应最大深度。
如上所述,表9B中的separate_tree_flag的存在可基于帧内CU发生的深度。在一个示例中,可以相对于在CTU处出现的根(即,深度0)来指定帧内CU发生的深度,并且可将其称为cu_depth。如图9和图12的示例所示,帧内CU的深度为2。在一个示例中,在cu_depth大于或等于深度值(例如,max_depth)的情况下,对于帧内CU,比特流中可能不存在separate_tree_flag。在一个示例中,当比特流中不存在separate_tree_flag时,可推断其具有值1(或0,在一些示例中),并且因此,可使用单独的划分树(例如,coding_tree_unit_luma()和coding_tree_unit_chroma())将亮度通道和色度通道超出帧内CU进行划分。在一个示例中,当比特流中不存在separate_tree_flag时,可推断其具有值0(或1,在一些示例中),并且因此,可使用共享划分树(例如,coding_tree_unit_shared())将亮度通道和色度通道超出帧内CU进行划分。
表9C示出了一个示例,其中separate_tree_flag基于具有大于或等于某个深度的cu_depth的帧内CU有条件地存在于比特流中,并且当separate_tree_flag不存在于比特流中时,使用单独的划分树将亮度通道和色度通道超出帧内CU进行划分。表9D示出了一个示例,其中separate_tree_flag基于具有大于或等于某个深度的cu_depth的帧内CU有条件地存在于比特流中,并且当separate_tree_flag不存在于比特流中时,使用共享划分树将亮度通道和色度通道超出帧内CU进行划分。在一个示例中,可使用更高级的语法来用信号发送表9C和表9D中的max_depth。例如,可以在CTU级、片段级或参数集级用信号发送max_depth。在一个示例中,表9C和表9D中的max_depth可等于MaxBTDepth。
Figure BDA0002803323520000362
表9C
Figure BDA0002803323520000361
Figure BDA0002803323520000371
表9D
应当指出的是,在一些示例中,表9C至表9D中的条件(cu_depth>=max_depth)可替换为(cu_depth==max_depth)。此外,在一些示例中,表9C至表9D中的条件(cu_depth>=max_depth)可替换为以下条件(cu_depth>=max_depth或cu_width==min_width或cu_height==min_height),其中cu_width是CU的宽度(以样本数为单位),cu_height是CU的高度(以样本数为单位),min_width是宽度阈值(以样本数为单位),min_height是高度阈值(以样本数为单位)。这样,在一个示例中,比特流中的separate_tree_flag的存在可进一步取决于帧内CU中包括的样本(例如,亮度样本或色度样本)的数量。此外,应当指出的是,在一些示例中,max_depth、min_width和/或min_height的值可基于片段类型(例如,P或B)和/或颜色分量索引值。在一个示例中,表9C和表9D中所示的每个示例中的(cu_depth>=max_depth)可替换为条件(cu_depth<=max_depth),使得将基于具有小于或等于某个深度的cu_depth的帧内CU而跳过separate_tree_flag的信令。应当指出的是,在这种情况下,max_depth是表示阈值深度的深度值(即,对于具有小于或等于max_depth的深度的帧内CU,在这种情况下,推断separate_tree_flag的值)。在一个示例中,表9C和表9D中所示的每个示例中的(cu_depth>=max_depth)可替换为条件(cu_height<=min_height或cu_width<=min_width),使得将基于小于或等于某个大小的帧内CU而跳过separate_tree_flag的信令。应当指出的是,在这种情况下,min_height和min_width表示阈值。在一个示例中,表9C和表9D中所示的每个示例中的(cu_depth>=max_depth)可替换为条件(cu_height>=min_height或cu_width>=min_width),使得将基于大于或等于最小大小的帧内CU而跳过separate_tree_flag的信令。这样,视频解码器可基于块大小来推断separate_tree_flag的值。应当指出的是,在一些示例中,max_depth、min_width和/或min_height的值可取决于包括CU和/或通道(例如,亮度或色度)的片段的片段类型(例如,P片段或B片段)。
如上所述,在JEM中,用于颜色分量的QTBT叶节点(即,JEM中的CB)可被认为类似于ITU-T H.265中的PB和TB。因此,在JEM中,一旦达到QTBT叶节点,就提供附加信令以指示对应于该QTBT叶节点的预测(例如,帧内预测方向)和对应于该QTBT叶节点的残差的变换特性(例如,NSST_idx)。例如,参见图9,对于四个亮度CB中的每一个,根据JEM信令,相应预测和对应于残差的变换特性将包括在比特流中。在一个示例中,根据本文所述的技术,CB的预测和变换特性的信令可基于separate_tree_flag是否存在和/或其值。例如,在对应于表9C的示例中,在一个示例中,允许用于色度通道的NSST_idx的可能值的数量可基于单独的划分树是否用于将亮度通道和色度通道超出帧内CU进行划分。在一个示例中,如果使用单独的划分树将亮度通道和色度通道超出帧内CU进行划分,则允许用于色度通道的NSST_idx的可能值的数量可等于4。在对应于表9D的示例中,在一个示例中,允许用于色度通道的NSST_idx的可能值的数量可基于共享划分树是否用于将亮度通道和色度通道超出帧内CU进行划分。在一个示例中,如果使用共享划分树将亮度通道和色度通道超出帧内CU进行划分,则允许用于色度通道的NSST_idx的可能值的数量可等于3。
如上所述,在JEM中,一旦到达QTBT叶节点,就提供附加的信令以指示对应于该QTBT叶节点的预测和对应于该QTBT叶节点所对应的残差的变换特性。因此,在JEM中,对于每个QTBT叶节点,提供相应的信令以指示对应于该QTBT叶节点的预测和对应于该QTBT叶节点所对应的残差的变换特性。在一个示例中,根据本文所述的技术,超出帧内CU的CB(例如,图9中的四个亮度CB中的每一个)可共享预测信息和/或变换特性的一个或多个方面。这样,根据本文所述的技术,可简化用于相应叶节点的预测和/或变换特性的信令。在一个示例中,根据本文所述的技术,可基于separate_tree_flag的存在和/或其值来推断超出帧内CU的每个CB的相应预测和变换特性(例如,图9中的四个亮度CB中的每一个)。例如,参考图9所示的示例,在一个示例中,四个亮度CB中的每一个可基于separate_tree_flag的存在和/或其值来共享推断的(或用信号发送的)预测信息(例如,方向帧内预测模式)和/或变换特性(例如,NSST_idx值)。
再次参考表9B至表9D中所示的示例,例如,使用共享划分树将亮度通道和色度通道超出帧内CU进行划分可不被允许,可基于更高级的信令(例如,CTU级或片段级启用/禁用标记)被禁用,可基于CU的属性(例如,大小和/或深度)被禁用,和/或可基于更高级信令和/或CU的属性被禁用。表9E示出了一个示例,其中不允许使用共享划分树将亮度通道和色度通道超出帧内CU进行划分。即,在表9E的示例中,如果没有根据单独的划分树将亮度通道和色度通道进一步划分,则进一步划分终止。即,如表9E所示,针对帧内CU用信号发送预测和变换特性语法,而不对亮度通道和色度通道进行进一步划分。表9F示出了一个示例,其中基于更高级信令和/或CU的属性而禁用使用共享划分树将亮度通道和色度通道超出帧内CU进行划分。即,在表9F中,条件(CU Condition==TRUE)可以是基于更高级信令和/或CU的属性的条件。应当指出的是,在一些示例中,条件(CU Condition==TRUE)可基于比特流的属性(即,在没有附加信令的情况下确定)。例如,(CU Condition==TRUE)可以是基于更高级(例如,CTU级、片段级、参数集级)启用/禁用标记而存在的标记。
Figure BDA0002803323520000391
表9E
Figure BDA0002803323520000392
表9F
应当指出的是,就表9E中所示的示例而言,不允许使用共享划分树将亮度通道和色度通道超出帧内CU进行划分可降低实现兼容的视频编码器和兼容的视频解码器的复杂性。然而,在一些情况下,不允许使用共享划分树将亮度通道和色度通道超出帧内CU进行划分可能导致编码效率损失。
如上所述,单独的划分树或共享划分树是否用于将亮度通道和色度通道进一步划分可基于CU中包括的样本(例如,亮度样本或色度样本)的数量,其中与帧内预测类型相关联的CU形成用于将亮度通道和/或色度通道进一步划分的根。在一个示例中,可允许根据共享树对一系列块大小进行划分,并且可允许根据单独的树对一系列块大小进行划分。表9G示出了一个示例,其中separate_tree_flag基于以下条件在比特流中有条件地存在:(1)CU的大小是否大于或等于大小上限阈值(cu_width*cu_height>=Upper_TH);(2)CU的大小是否小于或等于大小下限阈值(cu_width*cu_height<=lower_TH);以及(3)是否允许进一步划分(no further partitioning allowed)。应当指出的是,表9G中的条件(no furtherpartitioning allowed)可类似于上述(CU Condition==TRUE)条件。在一个示例中,可使用高级信令来指示Upper_TH和/或Lower_TH。例如,可将Upper_TH设定为1024个样本,并且可将Lower_TH设定为256个样本。在一个示例中,确定是否允许不进一步划分可基于上文提供的示例性条件,例如(cu_depth>=max_depth)、(cu_depth>=max_depth或cu_width==min_width或cu_height==min_height)等。在一个示例中,可使用高级信令来用信号发送用于确定是否允许不进一步划分的条件。
Figure BDA0002803323520000411
表9G
表9H示出了一个示例,其中separate_tree_flag基于以下条件在比特流中有条件地存在:(1)CU的大小是否大于或等于大小上限阈值(cu_width*cu_height>=Upper_TH);以及(2)CU的大小是否小于或等于大小下限阈值(cu_width*cu_height<=lower_TH)。
Figure BDA0002803323520000421
表9H
在一个示例中,单独的划分树或共享划分树是否用于将亮度通道和色度通道进一步划分可取决于与CU相关联的QP的值,其中与帧内预测类型相关联的CU形成用于将亮度通道和/或色度通道进一步划分的根。例如,在一个示例中,separate_tree_flag可基于以下条件在比特流中有条件地存在:(1)QP的值是否大于或等于上限阈值;(2)QP的值是否小于或等于下限阈值;和/或(3)是否允许进一步划分。即,例如,表9G和表9H中的条件(cu_width*cu_height>=Upper_TH)和(cu_width*cu_height<=lower_TH)可以分别替换为条件(QP>=Upper_QP_TH)和(QP<=Lower_QP_TH),其中,在一个示例中,可以使用高级信令来用信号发送Upper_QP_TH和/或Lower_QP_TH。例如,可以将Upper_QP_TH设定为40,并且可以将Lower_QP_TH设定为10。在一个示例中,针对coding_tree_unit_luma()、coding_tree_unit_chroma()和/或coding_tree_unit_shared()中的每一者的最小允许叶大小可以不同。例如,coding_tree_unit_shared()可具有16个(例如,4×4)样本的最小允许叶大小,并且coding_tree_unit_luma()和/或coding_tree_unit_chroma()可具有256个(例如,16×16)样本的最小允许叶大小。
如上所述,帧间预测片段也可被分类为P型片段或B型片段,并且是使用单独的划分树还是共享划分树来将亮度通道和色度通道进一步划分可取决于包括帧内CU的帧间预测片段是P片段还是B片段。此外,应当指出的是,在ITU-T H.265中,为了支持时间可伸缩性,每个帧间片段可与指示分级时间预测结构中的层级的时间标识(即,TemporalId变量)相关联。例如,形成30Hz基层的图片中的片段可具有TemporalId=0,并且形成60Hz可伸缩子层的图片中的片段可具有TemporalId=1。应当指出的是,具有较低时间标识(即,对应于视频的较低层的图片)的图片被更频繁地用作预测因子。例如,包括在30Hz基层中的图片通常比包括在60Hz可伸缩子层中的图片更频繁地用作预测因子。更频繁地用作预测因子的图片的质量通常比不太频繁地用作预测因子的图片的质量更能影响视频质量。此外,由于时间可伸缩视频的分层时间预测结构,当较低层的图片质量低时,误差可传播到视频的多个更高层(即,时间误差传播)。相比之下,当较高层的图片质量较低时,时间误差传播可能受到限制。如本文所用,术语“图片的预测深度”可用于指一个值,它量化各层级有多少图片(直接或间接)依赖于作为预测因子的图片。预测深度可用于基于图片的质量来确定预期的时间误差传播。在一个示例中,预测深度可对应于TemporalId或可为TemporalId的函数。在一个示例中,预测深度可等于TemporalId加一。在一个示例中,根据本文所述的技术,是否使用单独的划分树、使用共享划分树,和/或是否允许对包括在帧间预测片段中的帧内CU进行进一步划分可基于帧间预测片段的预测深度。例如,在一个示例中,如果预测深度大于或等于阈值,则可禁用包括在帧间预测片段内的帧内CU的进一步划分。
如上所述,例如,就表9C和表9D而言,提供了separate_tree_flag可基于具有大于或等于变量max_depth的cu_depth的帧内CU在比特流中有条件地存在的示例。在一个示例中,变量max_depth可等于预测深度或为预测深度的函数。因此,以与上述相似的方式,可基于预测深度来跳过用于将包括在帧间预测片段中的帧内CU进一步划分的语法元素信令,并且视频解码器可被配置为推断不包括在比特流中的语法元素的值。在一个示例中,对于预测深度大于阈值的图片,可以禁用将亮度通道和色度通道超出CU级进一步划分,例如,可以使用如JEM中所述的划分。这样,与具有相对低预测信心的图片相比,对于具有相对高预测信心的图片,可允许更精确的划分技术,其中较不精确的划分技术利用比特流中较少的比特。如上所述,亮度通道和/或色度通道是否以及如何可超出与帧内预测类型相关联的CU被进一步划分可基于更高级信令和/或视频块的属性。例如,使用共享划分树将亮度通道和色度通道超出帧内CU进行划分可不被允许,可基于更高级的信令(例如,CTU级或片段级启用/禁用标记)被禁用,可基于CU的属性(例如,大小和/或深度)被禁用,和/或可基于更高级信令和/或CU的属性被禁用。以类似的方式,亮度通道和/或色度通道是否以及如何可超出与帧内预测类型相关联的CU被进一步划分可基于更高级信令和/或预测深度。例如,使用共享划分树将亮度通道和色度通道超出帧内CU进行划分可不被允许,可基于更高级的信令(例如,CTU级或片段级启用/禁用标记)被禁用,可基于预测深度的属性(例如,大小和/或深度)被禁用,和/或可基于更高级信令和/或预测深度被禁用。
如上所述,在一个示例中,可使用更高级的语法(例如,CTU级、片段级或参数集级)来用信号发送表9C和表9D中的max_depth。以类似的方式,当变量max_depth等于预测深度或为预测深度的函数时,可使用更高级的语法来用信号发送使用单独的划分树时的预测深度阈值,使用的共享划分树和/或是否允许对包括在帧间预测片段中的帧内CU进行进一步划分。在一个示例中,语法元素highest_tid_sst_plus1基于以下示例性定义:
highest_tid_sst_plus1指定TemporalId大于highest_tid_sst_plus1的图片不使用共享的单独的树。当不存在时,推断highest_tid_sst_plus1等于7。
可以包括在参数集中(例如,VPS、SPS或PPS)或片段标头中。此外,在一个示例中,可以基于指示共享的单独的树工具是否用于对视频数据进行编码的标记的值来有条件地用信号发送highest_tid_sst_plus1。
在一个示例中,当highest_tid_sst_plus1的值为0时,可以使用不同的语义。即,可以为值为0的highest_tid_sst_plus1定义默认情况。在一个示例中,值为0的highest_tid_sst_plus1可用于指示关于TemporalId值与共享的单独的树的使用之间关系的信息是未知的。在一个示例中,值为0的highest_tid_sst_plus1可指示共享的单独的树仅用于某些图片类型。在一个示例中,语法元素highest_tid_sst_plus1可基于以下示例性定义:
highest_tid_sst_plus1指定TemporalId小于或等于highest_tid_sst_plus1的图片可使用或可不使用共享的单独的树。当不存在时,推断highest_tid_sst_plus1等于7。
因此,在一个示例中,在上述示例中,条件if(pred_mode_flag==MODE_INTRA)可以替换为if(highest_id_sst_plus1&&pred_mode_flag==MODE_INTRA)。在一个示例中,用于编码单元的通用解码过程使用帧内预测模式来编码,其可描述如下:
该过程的输入为:
-亮度位置(xCb,yCb),其指定当前亮度编码块相对于当前图片左上亮度样本的左上样本,
-变量log2CbSize,其指定当前亮度编码块的大小。
-当前图片的TemporalId
该过程的输出是解块滤波之前的经修改的重构图片。
可能受基于TemporalId的条件的约束。即,例如,用于使用帧内预测模式编码的编码单元的通用解码过程中可包括以下条款:
当当前图片的TemporalId小于或等于highest_tid_sst_plus1时,将调用使用亮度位置(xCb,yCb)作为输入的帧内预测模式的另选导出过程。
如上所述,coding_tree_unit_shared()提供了启用各种类型划分的语义,并且类似地,coding_tree_unit_luma()或coding_tree_unit_chroma()可提供启用各种类型的划分(例如,BT或TT划分)的语义。在一些示例中,coding_tree_unit_shared()可被约束以将亮度通道和色度通道进一步划分到超出CU的预先确定的深度。在一个示例中,coding_tree_unit_shared()可被约束以将亮度通道和色度通道进一步划分到超出CU的仅一个深度。例如,在这种情况下,coding_tree_unit_shared()可包括指示以下之一的单个语法元素:不分割、QT分割、水平BT分割、垂直BT分割、水平TT分割和/或垂直TT分割。在一个示例中,coding_tree_unit_shared()可包括指示以下之一的单个语法元素:水平BT分割、垂直BT分割。在一个示例中,当coding_tree_unit_shared()包括单个语法元素时,可能的分割可包括以下中的任何组合:不分割、QT分割、水平BT分割、垂直BT分割、水平TT分割和/或垂直TT分割。
应当指出的是,用来用信号发送特定划分结构的一些方式可被认为是低效和/或冗余的。例如,在一些情况下,BT和TT分割可产生通过简单地使用QT分割就可实现的正方形块(例如,每个节点的垂直BT分割和后续水平BT分割导致四个正方形)。视频编码器200可被配置为不允许冗余和/或低效信令。JEM提供了在视频编码器处不允许导致等效QT分割的BT分割的场景。图13是示出不被允许的BT分割的示例的概念图。即,在图13中,右节点(由CU的垂直BT分割产生的节点)的后续水平BT分割将产生四个正方形并且不被允许。在一些示例中,当不允许分割时,可使用推断来确定是否应用其他类型的分割。例如,参见图13,由于不允许对右节点进行水平BT分割,因此可推断针对该节点的垂直BT分割或不进一步分割中的一者。如上文在一些示例中所述,是否启用进一步划分可基于最大深度等。因此,在一些情况下,在特定深度水平可能不允许某些类型的划分。因此,可基于节点的深度和/或特定分割是否低效和/或冗余来推断对于特定节点是允许分割还是不进一步分割。
在一个示例中,根据本文的技术,当在其中与帧内预测类型相关联的CU形成根节点的情况下对亮度通道和/或色度通道进行进一步划分时,可使用以下技术中的一者或多者来减轻低效和/或冗余信令。在一个示例中,对于色度通道,当BT分割导致等效QT分割时,可不允许分割并且可基于分割不被允许来修改信令。例如,参见图13,对于由垂直分割产生的左节点,可允许以下类型的分割:不分割、垂直BT分割和水平BT分割。因此,语法将启用用于该节点的三种类型的分割中的一种的信令(例如,该信令可包括分割/不分割标记和有条件地存在的垂直/水平标记)。就右节点而言,由于不允许水平BT,因此该语法仅需要启用两种类型的BT分割(不分割或垂直BT分割)的信令。因此,可修改信令,使得对于右节点,分割/不分割标记指示发生不分割还是垂直BT分割。此外,在对于右节点允许一个或多个非BT分割选项(例如,QT或TT)的情况下,该语法可启用一个或多个非BT分割选项被用信号发送。例如,如果分割/不分割标记指示对于右节点不分割,则可存在附加语法元素,其指示是否应用一个或多个非BT分割。同样,如果对于右节点只有一个非BT分割可用,并且如果分割/不分割标记指示对于右节点不分割,那么可以推断这一个非BT分割。相似地,在一个示例中,对于亮度通道,当BT分割导致等效QT分割时,可不允许分割并且可基于分割不被允许来修改语法,如上所述。此外,在一个示例中,可应用以下约束中的一者或多者:如果导致TT,则可不允许BT分割的类型;如果导致QT分割和BT跟个的组合,则可不允许TT分割;并且一般来讲,如果导致分割子集的组合,则可不允许分割。在一个示例中,视频编码器200可选择是否禁用各种分割并用信号发送是否启用了分割,并且因此视频解码器可基于各种分割是被启用还是禁用来确定推断规则。
在一个示例中,视频编码器200可被配置为使得下列中的一者或多者适用:当允许对于节点不进一步分割时,跳过用信号发送划分并推断不分割;当允许对于节点不进一步QT分割时,跳过用信号发送QT分割,并且仅当允许非QT/不分割时才用信号发送。一般来讲,在一个示例中,视频编码器200可被配置为使得当允许特定类型的不进一步分割时,视频编码器200可跳过用信号发送特定类型的分割并且仅用信号发送可用的分割类型。
应当指出的是,当针对与帧内预测类型相关联的CU启用亮度通道和/或色度通道的进一步划分时,可存在导致等效CB的多个QTBT。图14A至图14B为概念图,示出了对于使用不同QTBT的亮度通道和色度通道两者的等效所得CB。图15A至图15B示出了图14A至图14B中的所得CB的相应QTBT。此外,表10A至表10B示出了可用于用信号发送用于图14A至图14B中的所得CB的相应QTBT的相应示例性伪语法。
Figure BDA0002803323520000481
表10A
Figure BDA0002803323520000482
表10B
参考表10A至表10B,表10A中使用的信令可被认为比表10B中的信令低效(即,表10A需要更多比特来用信号发送等效所得划分)。因此,在一个示例中,视频编码器200可被配置成使得不允许表10A中的信令。在一个示例中,视频编码器200可被配置为执行迭代划分过程,使得视频编码器200评估使用另一种划分是否能够更有效地表示所得划分。此外,应当指出的是,使用表10B中的信令可提供附加的效率增益,使得残差和元数据可在比特流序列中的早期点处可用。
如上所述,例如就图13而言,根据本文所述的技术,BT节点可根据非BT划分(例如,QT或TT分割)被进一步划分。应当指出的是,在JEM中,BT节点可不根据QT划分被进一步划分。即,如上文关于表1所述,在JEM中,当QT分割标记的值为0时,用信号发送BT分割模式语法元素,指示以下中的一种:无二进制分割、垂直分割模式或水平分割模式。此外,如上所述,Le Leannec描述了一个示例,其中除了对称的垂直和水平BT分割模式之外,还定义了四个附加的ABT分割模式。在Le Leannec中,BT或ABT节点可不根据QT划分被进一步划分。即,在Le Leannec中,当QT分割标记的值为0时,用信号发送BT分割模式标记,指示以下中的一种:垂直分割取向或水平分割取向,并且第一添加的标记用信号发送当前BT分割模式是否为非对称的。如果BT分割模式不是非对称的(根据第一添加的标记),则根据用信号发送的BT分割取向将BT分割模式导出为水平或垂直。如果BT分割模式是非对称的(根据第一添加的标记),则第二添加的标记指示为所考虑的BT分割取向(即,对于水平为向上或向下,或者对于垂直为向左或向右)使用的非对称分割模式的类型。此外,如上所述,Li描述了一个示例,其中除了对称的垂直和水平BT分割模式之外,还定义了两个附加的TT分割模式。在Li中,BT或TT节点可不根据QT划分被进一步划分。即,在Li中,当QT分割标记的值为0时,用信号发送分割标记,其指示以下中的一种:分割或不分割。如果指示分割,则用信号发送指示水平或垂直取向的第一标记,并且用信号发送指示BT分割或TT分割的第二标记。
如上所述,根据本文所述的技术,可为亮度通道和/或色度通道允许各种类型的划分,其中与帧内预测类型相关联的CU形成用于将亮度通道和/或色度通道进一步划分的根。在一个示例中,根据本文所述的技术,可约束与帧内预测类型相关联的CU的进一步划分,使得BT和/或ABT节点可不根据QT划分被进一步划分。在一个示例中,根据本文所述的技术,与帧内预测类型相关联的CU的进一步划分可允许BT和/或ABT节点根据QT划分被进一步划分。在一个示例中,根据本文所述的技术,可约束与帧内预测类型相关联的CU的进一步划分,使得BT和/或TT节点可不根据QT划分被进一步划分。在一个示例中,根据本文所述的技术,与帧内预测类型相关联的CU的进一步划分可允许BT和/或TT节点根据QT划分被进一步划分。在允许根据QT划分将BT、ABT和TT节点进一步划分的示例中,在每个BT、ABT和TT节点处,可用信号发送指示QT划分是否应用的QT分割标记。在不允许根据QT划分将BT、ABT和TT节点进一步划分的示例中,在具有BT、ABT或TT节点作为祖代的每个BT、ABT和TT处,不用信号发送QT分割标记。在一个示例中,根据本文所述的技术,与帧内预测类型相关联的CU的进一步划分可包括BT、ABT和TT划分的组合。表10C至表10D示出了根据本文所述的技术的用于用信号发送QT划分、BT划分、TT划分和ABT划分的箱编码信令的示例。如上所述,在可根据QT划分将BT、ABT和TT节点进一步划分的示例中,在每个BT、ABT和TT节点处,可用信号发送指示QT划分是否应用的QT分割标记。参考表10C,当在BT、ABT和TT之后不允许QT时,对于在划分树中具有BT、ABT或TT节点作为祖代的节点,不传输节点Bin0。就表10C至表10D而言,应当指出的是,可能存在一些情况,即一些划分等同于其他划分或者一些划分是不可能的,在这些情况下,可修改二值化以提高编码效率。
Figure BDA0002803323520000501
表10C
Figure BDA0002803323520000502
Figure BDA0002803323520000511
表10D
如上所述,比特流中是否存在语法元素(例如,separate_tree_flag)以及帧内CU是否以及如何被进一步划分可取决于划分结构中的块的深度和块大小。应当指出的是,在一个示例中,ABT叶的深度可对应于该叶片中包括的样本的数量。在一个示例中,当进一步划分包括ABT划分时,可基于块大小和/或BT、TT和/或ABT叶节点的深度来推断separate_tree_flag的值。
在一个示例中,可约束coding_tree_unit_luma()和/或code_tree_unit_chroma(),使得QT划分被禁用。例如,在这种情况下,对于coding_tree_unit_luma()和/或coding_tree_unit_chroma(),可能的分割可包括以下中的任何组合:不分割、水平BT分割、垂直BT分割、水平TT分割和/或垂直TT分割。表10E示出了用于用信号发送不分割、水平BT分割、垂直BT分割、水平TT分割和/或垂直TT分割的箱编码信令的示例。
Figure BDA0002803323520000512
表10E
应当指出的是,在一些示例中,当针对coding_tree_unit_luma()和/或coding_tree_unit_chroma()禁用QT划分时,仍然可允许QT划分用于coding_tree_unit_shared()。此外,在一些情况下,仍然允许QT划分用于形成coding_tree_unit_luma()和coding_tree_unit_chroma()的根的祖代视频块。此外,在一些情况下,针对coding_tree_unit_luma()和/或coding_tree_unit_chroma()禁用QT划分可能仅适用于片段间的帧内块,而不适用于片段内的帧内块。
在一个示例中,以类似可于上述方式的方式,基于通道类型(亮度或色度)、片段类型、当前QT/BT/TT深度等中的一者或多者来针对coding_tree_unit_shared()、coding_tree_unit_luma()和/或coding_tree_unit_chroma()禁用一个或多个另外的划分类型。在此类情况下,可简化信令。例如,就表10E而言,如果TT分割被禁用,则可如表10F中所提供的那样简化信令。
Figure BDA0002803323520000521
表10F
如上所述,量化可包括将变换系数除以某个量化缩放因子(本文中称为Q缩放)和任何相关联的取整函数(例如,取整到最接近的整数)。在一些情况下,量化可导致位阶值为零,例如,对于相对高的量化参数。可以将非零位阶值描述为有效的。在ITU-T H.265中,可以针对每个分量用信号发送编码块标志(cbf)以指示变换块是否包括不等于0的一个或多个变换系数位阶(例如,编码块标志、cbf_luma、cbf_cb以及cbf_cr)。此外,在ITU-T H.265中,可在根(root_cbf)处用信号发送cbf以指示cbf_luma、cbf_cb和cbf_cr的存在,因此指示对应于该根的块是否不包括有效系数。即,如果root_cbf为0,则比特流中不包括cbf_luma、cbf_cb和cbf_cr,并且如果root_cbf为1,则比特流中包括cbf_luma、cbf_cb和cbf_cr。在coding_tree_unit_luma()和coding_tree_unit_chroma()用于用信号发送划分的情况下,coding_tree_unit_luma()对应于一个颜色分量,coding_tree_unit_chroma()对应于两个颜色分量。因此,用信号发送用于coding_tree_unit_luma()和coding_tree_unit_chroma()中每一者的root_cbf可能是冗余的。根据本文的技术,在一个示例中,针对coding_tree_unit_luma()跳过用信号发送root_cbf(即,存在cbf_luma)。应当指出的是,可能存在TU比CU小的情况。在这种情况下,root_cbf与多个cbf_luma值相关联(即,每个TU一个)。在一个示例中,仅当TU大小与CU大小相同时,才可针对该组亮度系数跳过用信号发送root_cbf。在一个示例中,针对coding_tree_unit_luma()和coding_tree_unit_chroma()跳过用信号发送root_cbf(即,存在cbf_luma、cbf_cb和cbf_cr)。在一个示例中,针对coding_tree_unit_luma()跳过用信号发送cbf_luma(即,root_cbf等同于cbf_luma)。在一个示例中,针对coding_tree_unit_chroma()跳过用信号发送cbf_cb和cbf_cr(即root_cbf指示cb或cr是否具有有效系数)。应当指出的是,此类用信号发送root_cbf、cbf_luma、cbf_cb和cbf_cr可适用于在某个级(例如,片段级、图片级等)处发生的单独的划分树。此外,应当指出的是,在一些示例中,当针对coding_tree_unit_luma()和/或coding_tree_unit_chroma()跳过root_cbf时,可仍然针对coding_tree_unit_shared()用信号发送root_cbf。此外,在一些情况下,针对coding_tree_unit_luma()和/或coding_tree_unit_chroma()跳过用信号发送root_cbf可仅适用于片段间的帧内块,而不适用于片段内的帧内块。
这样,视频编码器200表示一种设备的示例,该设备被配置为接收视频块,该视频块包括用于视频数据的第一分量和视频数据的第二分量的样本值,根据第一四叉树二叉树划分结构将用于视频数据的第一分量和视频数据的第二分量的样本值进行划分,并且对于第一四叉树二叉树的与帧内预测类型相关联的节点中包括的视频数据的第一分量的样本值,根据第二四叉树二叉树将样本进一步划分。
再次参考图8,视频编码器200可以通过从源视频块中减去预测视频块来生成残差数据。求和器202表示被配置为执行该减法运算的部件。在一个示例中,减去视频块出现在像素域中。变换系数生成器204对残差块或其子分区应用变换诸如离散余弦变换(DCT)、离散正弦变换(DST)或概念上类似的变换(例如,可以将四个8×8变换应用于16×16残差值阵列)以产生残差变换系数集合。变换系数生成器204可以被配置为执行离散三角变换系列中包括的变换的任何和全部组合。如上所述,在ITU-T H.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点水平变换后接1D N点垂直变换。变换系数生成器204可以将变换系数输出到系数量化单元206。
如上所述,在JEM中,对于帧内预测,可以将核心变换和后续二次变换应用于与QTBT叶节点对齐的残差,以基于预测模式生成变换系数。在亮度通道和色度通道中的一者或两者可根据本文所述的技术被进一步划分以用于预测的情况下,在JEM中描述的AMT和MDNSST技术可能不够理想。在一个示例中,根据本文所述的技术,AMT可根据本文所述的技术针对亮度通道和色度通道被启用(能够被应用或不应用)或禁用(不能够被应用)。在一个示例中,对于对应于亮度CB并且与亮度CB对齐的亮度通道残差(其中亮度CB包括在帧间预测片段中包括的帧内预测模式CU中),可启用AMT,并且对于对应于色度CB并与色度CB对齐的色度通道残差,可禁用AMT。即,参见图9所示的示例,对于指示为具有帧内预测类型的CU,AMT可被选择性地应用于亮度通道CB残差并且针对色度通道CB残差被禁用。在一个示例中,如果CB的宽度或高度大于阈值,则可以禁用AMT。在一个示例中,阈值可为64。在一个示例中,仅当存在具有不等于0的至少一个或多个核心变换系数位阶值的一个CB时,才启用AMT。在一个示例中,可以使用更高级的语法用信号发送是否针对被指示为具有帧内预测类型的CU中的亮度CB通道和/或色度CB通道启用或禁用AMT。应当指出的是,在一些示例中,作为核心变换的输入而提供的残差可对应于帧内预测CU并与之对齐。
如上所述,在JEM中,按照每帧内CU用信号发送一次包括四个可能的值(即,0=未应用MDNSST;并且1至3对应于变换矩阵)的NSST_idx。在一个示例中,根据本文所述的技术,NSST_idx的可能值可根据表11来定义。在一个示例中,表11中的TH1和TH2可等于8。
Figure BDA0002803323520000551
表11
因此,根据本文所述的技术,对于色度通道核心变换系数,如果对应的CU具有大于阈值的宽度和/或高度,则可启用MDNSST。此外,在一个示例中,仅当大于零的核心变换系数位阶值的数量大于阈值时,才可应用MDNSST。此外,在一个示例中,如果CU不包括不等于0的任何核心变换位阶值,则可不应用MDNSST。在一个示例中,仅在未应用变换-量化旁路的情况下,才可应用MDNSST。在一个示例中,对于DC和平面预测模式,NSST_idx可在0至2的范围内。在一个示例中,可使用更高级的语法来控制NSST_idx的范围。
系数量化单元206可以被配置为执行变换系数的量化。如上所述,可以通过调整量化参数来修改量化程度。系数量化单元206可以进一步被配置为确定量化参数并且输出QP数据(例如,用于确定量化组大小和/或增量QP值的数据),视频解码器可以使用该QP数据来重构量化参数以在视频解码期间执行逆量化。应当注意的是,在其他示例中,可以使用一个或多个附加或另选的参数来确定量化位阶(例如,缩放因子)。本文所述的技术通常可应用于基于对应于视频数据的某一分量的变换系数的量化位阶,确定对应于视频数据的另一分量的变换系数的量化位阶。
如图8所示,量化的变换系数被输出到逆量化/变换处理单元208。逆量化/变换处理单元208可以被配置为应用逆量化和/或逆变换来生成重构的残差数据。如图8所示,在求和器210处,重构的残差数据可以被添加到预测视频块。这样,可以重构编码的视频块,并且可以使用所得重构的视频块来评估给定的预测、变换和/或量化的编码质量。视频编码器200可被配置为执行多个编码回合(例如,在改变预测、变换参数和量化参数中的一个或多个的同时执行编码)。比特流的率失真或其他系统参数可以基于重构的视频块的评估来优化。此外,重构的视频块可被存储并用作预测后续块的参考。
如上所述,可以使用帧内预测来编码视频块。帧内预测处理单元212可以被配置为针对待编码视频块选择帧内预测模式。帧内预测处理单元212可以被配置为评估帧和/或其区域,并且确定用于对当前块进行编码的帧内预测模式。如图8所示,帧内预测处理单元212将帧内预测数据(例如,语法元素)输出到熵编码单元218和变换系数生成器204。如上所述,对残差数据执行的变换可以取决于模式。如上所述,可能的帧内预测模式可以包括平面预测模式、DC预测模式和角度预测模式。此外,在一些示例中,可以从用于亮度预测模式的帧内预测推断出对色度分量的预测。
如上所述,JEM指定用于在生成残差数据之前修改参考样本和在重构视频块之前修改参考样本的技术(例如,PDPC和ARSS)。在亮度通道和色度通道中的一者或两者可根据本文所述的技术被进一步划分以用于预测的情况下,JEM中用于修改参考样本的技术可能不够理想。在一个示例中,根据本文所述的技术,对于包括在帧间预测片段中的帧内预测模式CU中包括的亮度通道CB,可启用PDPC,并且对于所包括的色度通道CB,可禁用PDPC。即,参见图9所示的示例,对于四个亮度通道CB中的每一个,PDPC可被选择性地应用,并且对于两个色度通道CB,PDPC可被禁用。在一个示例中,当对CU应用MDNSST时,可以对该CU中包括的CB禁用PDPC。在一个示例中,可使用更高级的语法来用信号发送是否可对亮度通道和/或色度通道CB启用或禁用PDPC。
在一个示例中,根据本文所述的技术,对于包括在帧间预测片段中的帧内预测模式CU中包括的亮度通道CB,可启用ARSS,并且对于色度通道CB,可禁用ARSS。即,参见图9所示的示例,对于四个亮度通道CB中的每一个,ARSS可被选择性地应用,并且对于两个色度通道CB,ARSS可被禁用。在一个示例中,如果CB的宽度或高度大于阈值,则不应用ARSS。在一个示例中,如果CB的预测模式是DC,则不应用ARSS。在一个示例中,可使用更高级的语法来用信号发送是否可对CU中的亮度通道和/或色度通道CB启用或禁用ARSS。
如上所述,在用于MDNSST的JEM中,存在35个不可分离变换矩阵,其中11是用于方向帧内预测模式的变换集合的数量,并且每个变换集合包括3个变换矩阵,并且对于无方向模式(即,平面、DC和LM),仅应用一个包括2个变换矩阵的变换集合。如上文进一步所述,可根据单独的划分树将色度通道进一步划分。在一个示例中,当对于片段类型的任何子集(例如,仅B型或帧内类型和帧间类型片段)根据单独的划分树将色度通道进一步划分时,可对于色度通道允许LM模式。另外,在一个示例中,对于使用DC或平面预测模式的色度通道,对应的变换集可包括3个变换矩阵。
帧间预测处理单元214可以被配置为针对当前视频块执行帧间预测编码。帧间预测处理单元214可被配置为接收源视频块并且计算视频块的PU的运动矢量。运动矢量可以指示当前视频帧内的视频块的PU(或类似的编码结构)相对于参考帧内的预测块的位移。帧间预测编码可以使用一个或多个参考图片。此外,运动预测可以是单向预测(使用一个运动矢量)或双向预测(使用两个运动矢量)。帧间预测处理单元214可以被配置为通过计算由例如绝对差之和(SAD)、平方差之和(SSD)或其他差值度量确定的像素差来选择预测块。如上所述,可以根据运动矢量预测来确定和指定运动矢量。如上所述,帧间预测处理单元214可被配置为执行运动矢量预测。帧间预测处理单元214可以被配置为使用运动预测数据来生成预测块。例如,帧间预测处理单元214可以定位帧缓冲器内的预测视频块(图8中未示出)。应当注意,帧间预测处理单元214可以被进一步被配置为将一个或多个内插滤波器应用于重构的残差块,以计算用于运动估计的子整数像素值。帧间预测处理单元214可将所计算的运动矢量的运动预测数据输出到熵编码单元218。
如图8所示,帧间预测处理单元214可经由滤波器单元216接收重构视频块。滤波器单元216可被配置为执行解块、样本自适应偏移(SAO)滤波,和/或ALF滤波。如上所述,解块是指平滑化重构视频块边界的过程(例如,使观察者不易察觉到边界)。如上所述,SAO滤波是一种可用于通过向重构的视频数据添加偏移以改善重构的非线性振幅映射。如上所述,JEM定义了ALF。
如上所述,ITU-T H.265包括可用于修改亮度样本的两种类型的解块滤波器:Strong Filter(强滤波器)和Weak Filter(弱滤波器),以及可用于修改色度样本的一种类型的滤波器:Normal Filter(普通滤波器)。在ITU-T H.265中,使用边界强度测量来确定是否应用一种类型的滤波器。在一个示例中,根据本文所述的技术,滤波器单元216可被配置为基于在视频数据的编码期间是否应用以下中的一者或多者来确定边界强度:PDPC、ARSS、AMT和/或MDNSST。
此外,如上所述,JEM提供了以下场景:对于亮度分量,图片级标记可使得ALF能够被选择性地应用到图片中的每个CU,并且对于色度分量,在图片级启用或禁用ALF。在亮度通道和色度通道中的一者或两者可根据本文所述的技术被进一步划分以用于预测的情况下,用于应用ALF和用信号发送是否应用ALF的JEM技术可能不够理想。在一个示例中,滤波器单元216可以被配置为根据本文所述的技术应用ALF和用信号发送是否应用ALF。
在一个示例中,指示ALF是否应用于块(例如,CU或CB)的标记的存在基于该块的深度,其中深度可与CTU根或CU根相关。此标记可称为ALF ON/OFF。在一个示例中,如果块的深度大于阈值,则不存在ALF ON/OFF和对应的ALF信令。在一些示例中,可在比特流中用信号发送该阈值。在一个示例中,可为帧内块(例如,CU或CB)推断ALF ON/OFF的值。在一个示例中,用于帧内块的ALF ON/OFF的值可对于亮度通道和色度通道是独立的。在一个示例中,用于ALF ON/OFF的信令可在帧间片段中的帧内模式树的根处用信号发送。在一个示例中,仅当帧内模式树的根的深度小于或等于针对用信号发送ALF ON/OFF所允许的深度时,可在帧内模式树的根处用信号发送用于ALF ON/OFF的信令。在一个示例中,仅当帧内模式树的根的深度小于或等于针对用信号发送ALF ON/OFF所允许的深度时,可在帧内模式树的深度处用信号发送用于ALF ON/OFF的信令。
在一个示例中,用于帧内块的ALF ON/OFF信令可基于与帧间编码块无关的已用信号发送的划分深度,其中如果块的深度大于阈值,则不存在ALF ON/OFF和对应的ALF信令。在一个示例中,可选择性地将ALF应用于帧内编码的亮度块和色度块,其中可用信号发送该选择。在一个示例中,可独立于帧间编码块,针对帧内编码块用信号发送单独的ALF系数集合。在一个示例中,可针对亮度通道和色度通道用信号发送单独的ALF系数集合。
在一个示例中,可使用针对帧间片段中的帧内块的亮度样本分类来导出ALF色度样本分类。在一个示例中,针对色度的ALF CU级ON/OFF可使用用于帧间片段中的帧内块的一个或多个协同定位的亮度CB的ON/OFF状态来导出,例如,仅当协同定位的亮度CB中的至少一个为ON时,色度CU级标记为ON。
再次参考图8,熵编码单元218接收量化变换系数和预测语法数据(即,帧内预测数据、运动预测数据、QP数据等)。应当注意,在一些示例中,系数量化单元206可以在将系数输出到熵编码单元218之前执行对包括量化变换系数的矩阵的扫描。在其他示例中,熵编码单元218可以执行扫描。熵编码单元218可以被配置为根据本文所述的技术中的一种或多种执行熵编码。熵编码单元218可以被配置为输出合规比特流(即视频解码器可从其接收和再现视频数据的比特流)。
如上所述,在CABAC的示例中,对于特定箱,可以从与该箱相关联的一组可用上下文模型中选择一个上下文模型。在一些示例中,可以基于先前的箱和/或先前语法元素的值来选择上下文模型。具体地讲,对于语法元素,使用上下文表和内容索引(ctxidx)对CABAC上下文变量建立索引。如上文进一步所述,根据本文所述的技术,对于帧间片段,如果CU的预测类型是帧内,则为亮度通道用信号发送QTBT,并且为色度通道用信号发送QTBT。
在一个示例中,用于通道的分割信息(例如,是应用QT、BT还是TT分割)的上下文可如下确定:
将CtxtIdx设定为0;
如果左侧块的分割深度大于当前分割深度,CtxtIdx++;
如果顶部块的分割深度大于当前分割深度,CtxtIdx++;
使用CtxtIdx对分割进行编码。
在一个示例中,针对通道的上下文选择可取决于是否使用帧内预测对相邻块进行编码。例如,内容可如下确定:
将CtxtIdx设定为0;
如果左侧块的分割深度大于当前分割深度且预测模式不是帧内,CtxtIdx++;
如果顶部块的分割深度大于当前分割深度且预测模式不是帧内,CtxtIdx++;
使用CtxtIdx对分割进行编码。
在一个示例中,上下文选择可取决于是否使用帧内预测对相邻块进行编码,以及使用了单独的还是共享树划分。
在一个示例中,分割信息的上下文可基于帧内模式CU的深度。应当指出的是,在一个示例中,当帧间片段中的CU具有帧内类型时,分别地为亮度通道和色度通道确定深度。
在一个示例中,用于通道的分割信息的上下文可如下确定:
将CtxtIdx设定为0;
如果左侧块的大小小于当前大小,CtxtIdx++;
如果顶部块的大小小于当前大小,CtxtIdx++;
使用CtxtIdx对分割进行编码。
在一个示例中,针对通道的上下文选择可取决于是否使用帧内预测对相邻块进行编码。例如,内容可如下确定:
将CtxtIdx设定为0;
如果左侧块的大小小于当前大小且预测模式不是帧内,CtxtIdx++;
如果顶部块的大小小于当前大小且预测模式不是帧内,CtxtIdx++;
使用CtxtIdx对分割进行编码。
在一个示例中,分割信息的上下文可基于帧内模式CU的大小。在一个示例中,大小可对应于块中的样本的数量。
在一个示例中,上下文可如下确定:
将CtxtIdx设定为0;
如果左侧块的分割深度大于当前分割深度且预测模式不是帧内,CtxtIdx++;
如果顶部块的分割深度大于当前分割深度且预测模式不是帧内,CtxtIdx++;
当相邻块被帧内编码,并且使用单独的树被认为不可用于确定最大深度时,确定相邻块之间的最大深度;
当相邻块被帧内编码,并且使用单独的树被认为不可用于确定最大深度时,确定相邻块之间的最小深度;
如果用信号发送分割语法元素时的当前深度小于相邻块的最小深度,则将CtxIdx设定为3;
如果用信号发送分割语法元素时的当前深度大于或等于相邻块的最大深度加1,则将CtxIdx设定为4;
使用CtxtIdx对分割进行编码。
在一个示例中,上下文可如下确定:
将CtxtIdx设定为0;
如果左侧块的分割深度大于当前分割深度且预测模式不是帧内,CtxtIdx++;
如果顶部块的分割深度大于当前分割深度且预测模式不是帧内,CtxtIdx++;
确定相邻块之间的最大深度,其中只有在当前块和相邻块的共享树/单独的树标记相同的情况下,相邻块才可用于确定最大深度;
确定相邻块之间的最小深度,其中只有在当前块和相邻块的共享树/单独的树标记相同的情况下,相邻块才可用于确定最小深度;
如果用信号发送分割语法元素时的当前深度小于相邻块的最小深度,则将CtxIdx设定为3;
如果用信号发送分割语法元素时的当前深度大于或等于相邻块的最大深度加1,则将CtxIdx设定为4;
使用CtxtIdx对分割进行编码。
在一个示例中,可按每个通道用信号发送分割语法元素,并且相邻块可对应于所考虑的通道的深度。
如上所述,在一些示例中,标记(例如,separate_tree_flag)可指示亮度通道和色度通道是根据单独的划分树还是共享划分树被进一步划分。在一个示例中,单个CABAC上下文变量可用于对标记进行熵编码,并且可基于标记的值来更新上下文。在一个示例中,一组CABAC上下文变量可用于对标记进行熵编码。在一个示例中,选自该组的上下文变量可基于相邻(空间或时间)块中的标记的值。在一个示例中,用于标记的编码的上下文选择可基于当前块的深度。
在一个示例中,用于标记的上下文可如下确定:
将CtxtIdx设定为0;
如果左侧块的标记为TRUE,CtxtIdx++;
如果顶部块的标记为TRUE,CtxtIdx++;
使用CtxtIdx对标记进行编码。
在一个示例中,用于熵编码separate_tree_flag的上下文可基于块的大小。例如,可通过比较块的高度与阈值、块的宽度与阈值、块的高度*宽度与阈值,和/或基于高度和/或宽度的一些其他合适的计算来选择上下文。在一个示例中,可通过将块的高度与块的宽度进行比较来选择上下文。例如,可基于高度大于宽度、高度小于宽度还是高度等于宽度来进行选择。
在一个示例中,用于熵编码separate_tree_flag的上下文可基于片段类型。在一个示例中,可将用于熵编码separate_tree_flag的上下文初始化,使得该上下文与对应于该标志表示存在单独的树的概率的相对大的块(例如,满足条件(cu_width*cu_height>=Upper_TH)的块)相关联,并且另选地,与对应于该标志表示存在共享树的概率的相对小的块(例如,满足条件(cu_width*cu_height<=Lower_TH)的块)相关联。
在一个示例中,可以根据表12中所示的示例来选择用于熵编码separate_tree_flag的上下文。
Figure BDA0002803323520000631
表12
就表12而言,在一些情况下,可将针对一组(W,H)的上下文分组到上下文集中。此外,在一些情况下,可将针对一组(W,H,SliceType)的上下文分组到上下文集中。应当指出的是,在表12所示的示例中,CTU大小被示出为128×128。在其他示例中,可使用其他CTU大小,并且该表可相应地缩小或扩展。
如上所述,在一个示例中,进一步划分可包括ABT划分,并且ABT叶的深度(即,1/4叶和3/4叶)可对应于该叶中包括的样本的数量。在一个示例中,用于指示ABT分割模式的标记的上下文(例如,指示所使用的非对称分割模式的类型的第二添加的标记)可如下确定:
将CtxtIdx设定为0;
如果左侧块的ABT深度大于当前ABT深度,CtxtIdx++;
如果顶部块的ABT深度大于当前ABT深度,CtxtIdx++;
使用CtxtIdx对ABT标记进行编码。
在一个示例中,当进一步划分包括ABT划分时,针对通道的上下文选择可取决于是否使用帧内预测对相邻块进行编码。例如,上下文可如下确定:
将CtxtIdx设定为0;
如果左侧块的ABT深度大于当前ABT深度且预测模式不是帧内,CtxtIdx++;
如果顶部块的ABT深度大于当前ABT深度且预测模式不是帧内,CtxtIdx++;
使用CtxtIdx对ABT标记进行编码。
在一个示例中,当使用基于相邻块的上下文选择对ABT分割信息进行编码时,上下文基于选择帧内模式时的深度。
如上所述,可基于片段类型来针对coding_tree_unit_shared()、coding_tree_unit_luma()和/或coding_tree_unit_chroma()禁用一个或多个划分类型。具体地讲,在一个示例中,可针对I片段禁用TT划分类型。使用具有禁用的TT划分类型的共享树和单独的树可实现相对于编码效率折衷更好的编码复杂性。
划分信令的二值化和/或对应箱的上下文选择可取决于是否使用或启用了coding_tree_unit_shared()、coding_tree_unit_luma()和/或coding_tree_unit_chrom,以及/或者是否使用或启用了预测模式。因此,可应用以下中的一者或多者:
-划分信令的二值化和/或对应箱的上下文选择可基于是否使用共享树和/或单独的树;
-划分信令的二值化和/或对应箱的上下文选择可基于共享树/单独的树标记的状态;
-划分信令的二值化和/或对应箱的上下文选择可基于共享树和/或单独的树是否用于预测模式(例如,帧内预测);
-划分信令的二值化和/或对应箱的上下文选择可基于用于预测模式的共享树/单独的树标记的状态;
-划分信令的二值化和/或对应箱的上下文选择可基于预测模式(例如,帧内模式块可以不具有TT分割);
-划分信令的二值化和/或对应箱的上下文选择可基于片段类型(例如,帧内片段可不具有TT分割);
-划分信令的二值化和/或对应箱的上下文选择可基于预测模式(例如,帧内模式块可以不具有BT分割);和/或
-划分信令的二值化和/或对应箱的上下文选择可基于片段类型(例如,帧内片段可不具有BT分割)。
如上所述,本文所述的划分技术可产生矩形编码块,相比之下,ITU-T H.265中的划分技术产生具有相等的高度和宽度维度(为2的幂)的正方形编码块。即,例如,在ITU-TH.265中,可将64×64CU递归地划分为32×32、16×16和8×8CU。具有为2的幂的相等高度和宽度维度的正方形编码块的大小可被表示为2N。此外,可使用简单的比特移动操作来实现对位于具有相等高度和宽度维度(为2的幂)的正方形编码块边界处的样本值的平均值的计算。即,位于2N×2N视频块边界处的样本值的平均值可通过将样本值的总和除以N+1(即,SUM(Sample Values)>>(N+1))来计算。一些编码工具,例如ITU-T H.265中包括的那些编码工具,利用对位于编码块边界的样本的平均值的计算,这些编码工具假定编码块是具有相等高度和宽度维度(为2的幂)的正方形,因此,使用比特移动操作来实现平均函数。此类平均计算需要修改,以便计算位于任意形状矩形块(例如,具有维度W×H的块)的边界的样本值的平均值,同时保持使用简单的比特移动操作来实现除以平均中包括的值的数量的能力。另外,编码工具,诸如H.Liu在2015年6月19日至26日波兰华沙举行的ITU-电信标准化部门研究组16研究课题6视频编码专家组(VCEG)第52次会议上发表的“Local IlluminationCompensation”(文档:VCEG-AZ06)和Zhang等人在2016年10月15日至21日中国成都第4次会议上发表的“Enhanced Cross-component linear model chroma intra prediction”(文档:JVET-D0110)中所述的那些编码工具要求推导线性模型的参数。此类参数的导出包括计算位于编码块边界的样本的值的和以及值的平方和,并且计算除以这些和中包括的样本的数量的除法。当样本的数量为2的幂时,可使用比特移动操作来实现这些除法,如同对于具有相等高度和宽度维度(为2的幂)的正方形块的情况一样。需要对这种求和计算进行修改,以便计算位于任意形状矩形块的边界的样本值的和以及样本值的平方和,同时保持使用简单的比特移动操作来实现除以和中包括的值的数量的能力。
在一个示例中,根据本文的技术,可以导出变量log2NumSamplesH和log2NumSamplesV,使得2的log2NumSamplesH次幂小于或等于当前块的宽度W(2log2NumSamplesH<=W),并且2的log2NumSamplesV次幂小于或等于当前块的高度H(2log2NumSamplesV<=H)。然后如下可导出变量2NumSamples:
如果只有来自水平相邻块的样本可用,则将log2NumSamples设定为等于log2NumSamplesV;
如果只有来自垂直相邻块的样本可用,则将log2NumSamples设定为等于log2NumSamplesH;
否则,即来自垂直相邻块和水平相邻块的样本都可用,则将log2NumSamples设定为等于log2NumSamplesH和log2NumSamplesV中的最小值。
一旦设定了log2NumSamples,就可将值numSamples定义为2的log2NumSamples次幂。值numSamples可用于确定来自相邻块的用于计算平均值或和的样本的数量。应当指出的是,值numSamples可小于W和H中的任一者或两者。因此,根据本文的技术,确定相邻块的哪些numSamples用于平均值或求和计算可如下确定:
如果来自水平相邻块的样本可用,则使用来自这些块的numSamples个样本计算平均值或和。第i个样本的垂直位置由(i*H+H/2)>>log2NumSamples给出,i=0..numSamples-1。应当指出的是,该公式保证样本在块的整个高度上或多或少均匀地分布。
如果来自垂直相邻块的样本可用,则使用来自这些块的numSamples个样本计算平均值或和。第i个样本的水平位置由(i*W+W/2)>>log2NumSamples给出,i=0..numSamples-1。应当指出的是,该公式保证样本在块的整个宽度上或多或少均匀地分布。
如上所述,目前正在考虑对ITU-T H.265进行扩展和改进以开发下一代视频编码标准。响应于由VCEG和MPEG联合发布的“Joint Call for Proposals on VideoCompression with Capabilities beyond HEVC”,在2018年4月16日至20日于加利福尼亚州圣迭戈(San Diego,CA)举行的ISO/IEC JTC1/SC29/WG11第10次会议上,各个小组提出了对视频编码的多种描述。作为视频编码的多种描述的结果,视频编码规范的草稿文本在2018年4月16日至20日于加利福尼亚州圣迭戈举行的ISO/IEC JTC1/SC29/WG11第10次会议中的“Versatile Video Coding(Draft 1)”即文档JVET-J1001-v2中有所描述,该文档以引用方式并入本文并且被称为JVET-J1001。
在JVET-J1001中,根据四叉树加多类型树(QTMT)结构来划分CTU。JVET-J1001中的QTMT类似于JEM中的QTBT。然而,在JVET-J1001中,除了指示二进制分割之外,多类型树还可以指示所谓的三元(或三叉树(TT))分割。三元分割将一个块垂直地或水平地分成三个块。在垂直TT分割的情况下,块从左边缘起在其宽度的四分之一处以及从右边缘起在其宽度的四分之一处分割,并且在水平TT分割的情况下,块从顶部边缘起在其高度的四分之一处以及从底部边缘起在其高度的四分之一处分割。此外,JVET-J1001提供了标记qt_split_cu_flag指示递归四叉树划分的场景。即,一个或多个qt_split_cu_flag值指示将CTU划分成四叉树叶节点。在每个四叉树叶节点处,多类型树语法结构指示递归多类型树划分。即,多类型树语法结构根据零个或多个对称的BT分割和/或TT分割来指示四叉树叶节点的进一步划分。多类型树语法结构包括标记mtt_paral_cu_flag,该标记指示是否到达编码单元(即,当前块不被进一步分割,并形成编码单元,其中编码单元形成用于预测和变换特征语法的根)或者当前块是否根据BT分割或TT分割被进一步分割。当mtt_split_cu_flag指示当前块被进一步分割时,用信号发送两个标记mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag,这两个标记指示以下中的一者:水平TT分割、水平BT分割、垂直TT分割或垂直BT分割。表13提供了如何根据mtt_split_cu_flag、mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag来指示分割模式的汇总。
分割模式 mtt_split_cu_flag mtt_split_cu_vertical_flag mtt_split_cu_binary_flag
不进一步分割 0 未用信号发送 未用信号发送
水平TT 1 0 0
水平BT 1 0 1
垂直TT 1 1 0
垂直BT 1 1 1
表13
如表13所示,当mtt_split_cu_flag指示达到CU时,不用信号发送mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag。此外,应当指出的是,在用信号发送mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag之后重复用信号发送mtt_split_cu_flag。应当指出的是,JVET-J1001规定了不用信号发送和/或限制多类型树语法的各种条件。例如,可基于达到最小块大小和/或达到距CTU的最大深度来禁用块的划分。为了简洁起见,本文不详细描述这些条件。然而,参考了JVET-J1001的第6节,其描述了允许或不允许分割的条件。应当指出的是,在一些情况下,可基于位于图片边界处的块而不允许分割。
如上所述,separate_tree_flag可指示亮度通道和色度通道是否根据单独的划分树来进一步分割,并且可基于CU中包括的样本数量(例如,亮度样本或色度样本)来针对与帧内预测相关联的CU有条件地存在separate_tree_flag。如上面进一步描述的,在一个示例中,可不允许使用共享的划分树在划分帧内CU之外的亮度通道和色度通道,并且在这种情况下,separate_tree_flag指示亮度通道和色度通道是否根据单独的划分树而被进一步划分或划分是否终止。即,如上所示,例如,就表9E所示的示例而言,separate_tree_flag可指示存在coding_tree_unit_luma()和coding_tree_unit_chroma()以用于进一步划分。如上所述,对于单独的划分树coding_tree_unit_luma()和coding_tree_unit_chroma(),可能的分割可包括以下中的任何组合:无分割、QT分割、水平BT分割、垂直BT分割、水平TT分割和/或垂直TT分割,其中可基于深度来禁用QT分割。
如上所述,mtt_split_cu_flag指示何时达到CU。因此,指示亮度通道和色度通道是否根据单独的划分树而被进一步划分(其中单独的划分树包括无分割、QT分割、水平BT分割、垂直BT分割、水平TT分割和/或垂直TT分割中的可能分割,其中可基于深度来禁用QT分割)或划分是否终止的separate_tree_flag可在mtt_split_cu_flag具有特定值之后有条件地存在。表14示出separate_tree_flag在mtt_split_cu_flag具有值0时有条件地存在的示例。应当注意,就表14所示的示例而言,亮度通道和色度通道根据公共QTMT来划分,该公共QTMT根据mtt_split_cu_flag、mtt_split_cu_vertical_flag和mtt_split_cu_binary_flag和separate_tree_flag,指示通道亮度和色度通道是否根据单独的划分树而被进一步划分或划分是否终止。
Figure BDA0002803323520000691
表14
就表14所示的示例而言,在一个示例中,根据本文的技术,separate_tree_flag可基于以下条件估计为真而有条件地存在。
if(pred_mode_flag==MODE INTRA&&cu_height<=64&&cu_width<=64&&enable_separate_tree_flag&&allowSplit);并且
if(cu_width*cu_height>(1<<(log2_separate_trees_lower_bound_minus4+4)&&cu_width*cu_height<(1<<(log2_separate_trees_upper_bound_minus4+4)
其中,
enable_separate_tree_flag等于1指定可对separate_trees_flag进行编码。否则,separate_trees_flag不被遍码。enable_separate_tree_flag可在SPS、PPS或片段标头级进行编码。
allowSplit指定是否允许进一步划分。例如,如果块已经超过深度、小于最小大小和/或位于图片边界处并经受默认划分,则可不允许进一步划分。
log2_separate_tree_lower_bound_minus4+4指定separate_trees_flag不存在并且被推断为等于0时的亮度样本的最大数量。(log2_separate_trees_lower_bound_minus4+4)的值应在0至CTB亮度大小(或在一些示例中为2)的范围(包括端值在内)内。log2_separate_tree_lower_bound_minus4可在SPS、PPS或片段标头级进行编码。
log2_separate_tree_upper_bound_minus4+4指定separate_trees_flag不存在并且被推断为等于1时的亮度样本的最小数量。(log2_separate_trees_upper_bound_minus4+4)的值应在0至CTB亮度大小(或在一些示例中为2)的范围(包括端值在内)内。log2_separate_tree_upper_bound_minus4可在SPS、PPS或片段标头级进行编码。
就表14所示的示例而言,在一个示例中,根据本文的技术,separate_tree_flag可基于以下条件估计为真而有条件地存在。
if(pred_mode_flag==MODE_INTRA&&cu_height<=64&&cu_width<=64&&enable_separate_tree_flag&&allowSplit);并且
if(cu_width>(1<<(log2_separate_trees_lower_bound_minus2+2)&&cu_height>(1<<(log2_separate_trees_lower_bound_minus2+2)&&cu_width<(1<<(log2_separate_trees_upper_bound_minus2+2)&&cu_height<(1<<(log2_separate_trees_upper_bound_minus2+2))
log2_separate_tree_lower_bound_minus2+2指定separate_trees_flag不存在并且被推断为等于0时的亮度样本的最大数量。
log2_separate_tree_upper_bound_minus2+2指定separate_trees_flag不存在并且被推断为等于1时的亮度样本的最小数量。
如上所述,enable_separate_tree_flag可在SPS、PPS或片段标头级进行编码。在一个示例中,可以基于表15中所示的示例性语法来对enable_separate_tree_flag进行编码。应当指出的是,在表15中,可应用以下语法描述符:
-u(n):使用n位的无符号整数。
-ue(v):无符号整数0阶Exp-Golomb编码的语法元素,从最左位起。
Figure BDA0002803323520000711
表15
就表15而言,separate_trees_enabled_flag和separate_trees_enabled_for_inter_slices可基于以下定义:
separate_trees_enabled_flag等于0指定禁用单独的亮度和色度划分树的使用。separate_trees_enabled_flag等于1指定启用单独的亮度和色度划分树的使用。
separate_trees_enabled_for_inter_slices等于0指定帧间片不允许单独的亮度和色度划分树用于帧间片段。separate_trees_enabled_for_inter_slices等于1指定允许单独的亮度和色度划分树用于帧间片段。当不存在时,推断separate_trees_enabled_for_inter_slices的值等于0。
并且
变量enable_separate_tree_flag的值如下导出:
-如果separate_trees_enabled_flag等于1并且slice_type等于I,则enable_separate_tree_flag等于TRUE
-否则,如果separate_trees_enabled_flag等于1并且slice_type不等于I,并且separate_trees_enabled_for_inter_slices等于1,则enable_separate_tree_flag等于TRUE
-否则,enable_separate_tree_flag等于FALSE
应当指出的是,在一个示例中,单独的边界可用于帧内片段和帧间片段。即,可为帧内片段和帧间片段分别指示log2_separate_tree_lower_bound_minus4、log2_separate_tree_upper_bound_minus4、log2_separate_tree_lower_bound_minus2和/或log2_separate_tree_upper_bound_minus2。
在一些示例中,可施加以下约束中的一个或多个:
-coding_tree_unit_chroma()中的第一个分割类型与coding_tree_unit_luma()中的第一个分割类型不同;
-coding_tree_unit_luma()或coding_tree_unit_chroma()中的至少一者提供额外的分割;
-coding_tree_unit_luma()附加分割;和/或
-coding_tree_unit_luma()和coding_tree_unit_chroma()均提供额外的分割。
如上所述,可针对coding_tree_unit_luma()和coding_tree_unit_chroma()禁用一个或多个另外的划分类型,并且在此类情况下,可简化信令。因此,可基于上述约束来针对coding_tree_unit_chroma()(或coding_tree_unit_luma())禁用划分类型。例如,如果用于coding_tree_unit_luma()的第一个分割类型是QT,则由于约束条件coding_tree_unit_chroma()中的第一个分割类型与coding_tree_unit_luma()中的第一个分割类型不同,可针对coding_tree_unit_chroma()禁用QT。应当指出的是,在一些情况下,色度通道的任何进一步分割被禁用。
如上所述,JVET-J1001提供一个或多个qt_split_cu_flag值来指示将CTU划分成四叉树叶节点。JVET-J1001还提供了根据上下文对qt_split_cu_flag进行熵编码的场景。于2018年7月10日至18日在斯洛文尼亚卢布尔雅那举行的ISO/IEC JTC1/SC29/WG11第11次会议的“Versatile Video Coding(Draft 2)”(文档JVET-K1001-v4,其以引用方式并入本文并称为JVET-K1001,是JVET-J1001的更新)在JVET-J1001中使用的划分方案中引入了语法元素qtbtt_dual_tree_intra_flag,其中qtbtt_dual_tree_intra_flag如下定义:
Qtbtt_dual_tree_intra_flag等于1指定,对于I片段,使用隐式四叉树分割将每个CTU分割成具有64×64亮度样本的编码单元,并且这些编码单元是用于亮度和色度的两个单独的coding_quadtree语法结构的根。
因此,JVET-K1001使得I(帧内)片段中的亮度通道和色度通道能够根据单独的划分树被进一步划分成超出隐式四叉树分割。因此,在JVET-K1001中,对于qtbtt_dual_tree_intra_flag等于1的I片段,存在用于亮度通道的一组QT分割标记和用于色度通道的一组QT分割标记,并且对于qtbtt_dual_tree_intra_flag等于0的I片段或非I片段类型,存在一组QT分割标记(即,根据共享划分树来划分亮度通道和色度通道)。应当指出的是,根据JVET-K1001中的qtbtt_dual_tree_intra_flag,共享或单独的划分方案中的只有一者被允许用于片段类型,即,在JVET-K1001中,对于I片段,是使用共享还是单独的划分方案不能在CTU级上的片段内改变。在一些情况下,根据图像的区域特征,可能有用的是对包括在片段中的一些CTU使用共享划分方案,并且对包括在该片段中的其他CTU使用单独的划分方案。
类似于JVET-J1001,JVET-K1001提供了qt_split_cu_flag根据上下文进行熵编码的场景,但是不提供用于为qt_split_cu_flag选择上下文的上下文模型。然而,应当指出的是,JVET-K1001的当前软件具体实施提供了通过将存在qt_split_cu_flag的实例的当前节点的深度(即,比特流中存在qt_split_cu_flag的实例的深度)与(i)左边CU的深度、(ii)右边Cu的深度、(iii)一组相邻CU中的最小深度和(iv)一组相邻CU中的最大深度进行比较来为qt_split_cu_flag选择上下文的场景。
根据本文所述的技术,针对以下场景描述了对qt_split_cu_flag的值的上下文建模:(1)包括在CTU中的qt_split_cu_flag的值,其中根据共享划分树来划分亮度通道和色度通道,其中片段中的所有CTU使用相同的划分方案(例如,JVET-K1001中的I片段,其中qtbtt_dual_tree_intra_flag等于0);(2)包括在CTU中的qt_split_cu_flag的值,其中根据共享划分树来划分亮度通道和色度通道,其中片段中的CTU可使用不同的(共享或单独的)划分方案;(3)包括在CTU中的qt_split_cu_flag的值,其中根据单独的划分树来划分亮度通道和色度通道,其中片段中的所有CTU使用相同的划分方案(例如,JVET-K1001中的I片段,其中qtbtt_dual_tree_intra_flag等于1);(4)包括在CTU中的qt_split_cu_flag的值,其中根据单独的划分树来划分亮度通道和色度通道,其中片段中的CTU可使用不同的(共享或单独的)划分方案。应当指出的是,根据单独的划分树来划分亮度通道和色度通道可包括根据独立的单独的划分树进行划分和/或根据除共享划分树之外的单独的划分树进行划分,其中共享划分树被隐式地(例如,如在JVET-1001中,其中qtbtt_dual_tree_intra_flag等于1)或显式地用信号发送。
在一个示例中,根据本文的技术,在其中qt_split_cu_flag的值包括在CTU中、其中根据共享划分树划分亮度通道和色度通道、其中片段中的CTU可使用不同的(共享或单独的)划分方案的情况下,和/或在qt_split_cu_flag的值包括在CTU中、其中根据单独的划分树划分亮度通道和色度通道、其中该片段中的CTU可使用不同的划分方案的情况下,可根据以下中的一者或多者来确定qt_split_cu_flag的上下文:
-当前节点的深度、相邻CU的深度、当前节点的划分方案和相邻CU的划分方案的函数。
-当前节点的深度和对应于与当前节点的划分方案相同的划分方案的相邻CU的深度的函数。例如,如果当前节点具有对应于一个先前的共享树划分方案qt_split_cu_flag的深度一,并且相邻CU具有对应于两个先前的共享树划分方案qt_split_cu_flags之后是三个先前的单独的树划分方案qt_split_cu_flags的深度五,那么当前节点的深度将为1,并且相邻CU的深度将为2。这是因为当前节点正在使用单独的树划分方案,并且相邻CU具有对应于两个先前的共享树划分方案qt_split_flags的深度。
-当当前节点和相邻CU使用相同的划分方案时,当前节点的深度和相邻CU的深度的函数。例如,如果当前节点具有共享树划分方案,并且相邻CU具有共享树划分方案,则上下文是当前节点的深度和相邻CU的深度的函数。然而,如果当前节点和相邻CU使用不同的划分方案,则上下文的导出不响应于相邻CU的深度。这是因为当前节点和相邻CU不使用相同的划分方案。
-当前节点的深度和使用与当前节点的划分方案相同的划分方案的相邻CU的最大深度的函数。另选地,上下文选择可以是当前节点的深度和使用与当前节点的划分方案相同的划分方案的相邻CU的最小深度的函数。
-当前节点的划分方案的函数。例如,当当前节点是单独的树时,可使用第一上下文(或第一组上下文),并且当当前节点是共享树时,可使用第二上下文(或第二组上下文)。
-基于当前节点的用于确定一些上下文的划分方案、但不基于当前节点的用于确定其他上下文的划分方案的函数。例如,如果当前节点正在使用共享树或单独的树,可响应于当前节点的深度和导致相同上下文值的相邻CU的深度来选择上下文值。在一些情况下,可响应于当前节点的不同深度和导致不同上下文值的相邻CU的不同深度来选择上下文值,具体取决于当前节点是使用共享树还是单独的树。在一个示例中,用于确定上下文的函数可如下:
选择上下文#1,如果当前深度<邻居深度并且当前的划分类型为共享;或者
选择上下文#2,如果当前深度<邻居深度并且当前的划分类型为共单独的;否则
选择上下文#3,如果当前深度>=邻居深度
在一个示例中,根据本文的技术,在其中qt_split_cu_flag的值包括在CTU中、其中根据共享划分树划分亮度通道和色度通道、其中片段中的所有CTU使用相同的划分方案的情况下,和/或在qt_split_cu_flag的值包括在CTU中、其中根据单独的划分树划分亮度通道和色度通道、其中该片段中的所有CTU使用相同的划分方案的情况下,可根据以下中的一者或多者来确定qt_split_cu_flag的上下文:
-当前节点的划分方案的函数。
-基于当前节点的用于确定一些上下文的划分方案、但不基于当前节点的用于确定其他上下文的划分方案的函数。
此外,在根据本文的技术的一个示例中,对qt_split_cu_flag的上下文的选择可基于以下中的一者或多者:
-是否为正被处理的块启用单独的树工具
-帧内子树是否正被处理Y/N?
-相邻CU是否是帧内编码的?
-相邻CU是否是帧内子树的单独的树或共享树模式的一部分?
-初始公共树是否正被处理Y/N?
-片段类型
-正被处理的块的高度(例如cbHeight)和/或
-正被处理的块的宽度(例如,cbWidth)
例如,可如下选择上下文:
Figure BDA0002803323520000761
所选择的上下文(CtxtIdx)可用于对QT分割标记进行编码(编码/解码)
在一些示例中,所选择的CtxtIdx可不用于编码其他情况
在其他示例中,所选择的CtxtIdx也可用于其他情况(例如,当当前深度和邻域深度之间的差值大于阈值时)
所选择的CtxtIdx的上下文的初始状态可被偏置以使用较少数量的位来用信号发送NO_SPLIT(例如,分割标即值为0),例如,所选择的上下文的初始CAB AC状态可为0
在一个示例中,相邻CU的深度可用于确定邻居的最小深度和最大深度。所确定的最小深度或最大深度可与当前深度进行比较,并且用于选择qt_split_cu_flag的上下文。例如,可如下选择上下文:
Figure BDA0002803323520000771
在一个示例中,确定邻居深度可基于以下中的一者或多者:
-帧内子树是否正被处理Y/N?
-相邻CU是否是帧内编码的?
-相邻CU是否是帧内子树的单独的树或共享树模式的一部分?
-初始公共树是否正被处理Y/N?
-片段类型
-正被处理的块的高度(例如cbHeight)和/或
-正被处理的块的宽度(例如,cbWidth)
在一个示例中,可基于以下来确定邻居的最小深度和最大深度:
Figure BDA0002803323520000781
Figure BDA0002803323520000791
Figure BDA0002803323520000801
在一个示例中,可针对不同片段类型传送一组阈值。阈值可用于推断单独的树标记的值。阈值可跨片段类型重叠,在这种情况下,重叠的阈值可仅被传送一次。阈值可例如在SPS中传送。例如,如下所示:
Figure BDA0002803323520000802
Figure BDA0002803323520000811
在一个示例中,阈值可用于在帧内片段的情况下推断单独的树标记的值,如下所示:
Figure BDA0002803323520000812
在一个示例中,阈值可用于在帧间片段的情况下推断单独的树标记的值,如下所示:
Figure BDA0002803323520000813
Figure BDA0002803323520000821
应当指出的是,虽然这里相对于确定qt_split_cu_flag的上下文描述了这些技术,但是本文所述的技术可同样适用于确定本文所述的划分语法元素中的任一个划分语法元素的分割标记和/或箱中的任一个的上下文。
此外,应当指出的是,对于单独的划分树,亮度通道(或色度通道)中的qt_split_cu_flag的上下文编码可利用相邻的亮度深度(或色度深度)和/或相邻的色度深度(或亮度深度)。
图16是示出根据本公开的一种或多种技术的可被配置为对视频数据进行解码的视频解码器的示例的框图。在一个示例中,视频解码器300可被配置为基于上文所述的技术中的一种或多种技术来重构视频数据。即,视频解码器300可以与上述视频编码器200互逆的方式操作。视频解码器300可被配置为执行帧内预测解码和帧间预测解码,并且因此可被称为混合解码器。在图16所示的示例中,视频解码器300包括熵解码单元302、逆量化单元304、逆变换处理单元306、帧内预测处理单元308、帧间预测处理单元310、求和器312、滤波器单元314和参考缓冲器316。视频解码器300可被配置为以与视频编码系统一致的方式对视频数据进行解码,该视频编码系统可以实现视频编码标准的一个或多个方面。应当指出的是,尽管示例性视频解码器300被示出为具有不同的功能块,但此类图示旨在用于描述目的,并且不将视频解码器300和/或其子部件限制为特定的硬件或软件架构。可使用硬件、固件和/或软件具体实施的任何组合来实现视频解码器300的功能。
如图16所示,熵解码单元302接收熵编码的比特流。熵解码单元302可被配置为根据与熵编码过程互逆的过程对来自比特流的量化语法元素和量化系数进行解码。熵解码单元302可被配置为根据上文所述的任何熵编码技术来执行熵解码。熵解码单元302可以与视频编码标准一致的方式解析编码的比特流。视频解码器300可被配置为解析编码的比特流,其中该编码的比特流基于上述技术生成。即,例如,视频解码器300可被配置为确定基于上述为了重构视频数据目的的技术中的一者或多者而生成和/或用信号发送的QTBT划分结构。例如,视频解码器300可被配置为解析语法元素和/或评估视频数据的属性以便确定QTBT。
再次参考图16,逆量化单元304从熵解码单元302接收量化变换系数(即,位阶值)和量化参数数据。量化参数数据可包括上述增量QP值和/或量化组大小值等的任何和全部组合。视频解码器300和/或逆量化单元304可被配置为基于由视频编码器用信号发送的值和/或通过视频属性和/或编码参数来确定用于逆量化的QP值。即,逆量化单元304可以与上述系数量化单元206互逆的方式操作。例如,逆量化单元304可被配置为根据上述技术推断预定义值(例如,基于编码参数确定QT深度和BT深度的总和)、允许的量化组大小等。逆量化单元304可被配置为应用逆量化。逆变换处理单元306可被配置为执行逆变换以生成重构的残差数据。由逆量化单元304和逆变换处理单元306分别执行的技术可类似于由上述逆量化/变换处理单元208执行的技术。逆变换处理单元306可被配置为应用逆DCT、逆DST、逆整数变换、MDNSST或概念上类似的逆变换过程来变换系数,以便产生像素域中的残差块。此外,如上所述,是否执行特定变换(或特定变换的类型)可以取决于帧内预测模式。如图16所示,可将重构的残差数据提供给求和器312。求和器312可将重构的残差数据加到预测视频块并且生成重构的视频数据。可根据预测视频技术(即帧内预测和帧间预测)确定预测视频块。在一个示例中,视频解码器300和滤波器单元314可被配置为确定QP值且将其用于滤波(例如,解块)。在一个示例中,利用QP的视频解码器300的其他功能块可基于所接收的信令来确定QP并将其用于解码。
帧内预测处理单元308可被配置为接收帧内预测语法元素并且从参考缓冲器316检索预测视频块。参考缓冲器316可包括被配置为存储一个或多个视频数据帧的存储器设备。帧内预测语法元素可识别帧内预测模式,诸如上述的帧内预测模式。在一个示例中,帧内预测处理单元308可使用根据本文所述的帧内预测编码技术中的一种或多种来重构视频块。帧间预测处理单元310可接收帧间预测语法元素并生成运动矢量,以识别存储在参考缓冲器316中的一个或多个参考帧中的预测块。帧间预测处理单元310可生成运动补偿块,可能基于内插滤波器来执行内插。用于具有子像素精度的运动估计的内插滤波器的标识符可以被包括在语法元素中。帧间预测处理单元310可使用内插滤波器来计算用于参考块的子整数像素的内插值。滤波器单元314可被配置为对重构的视频数据执行滤波。例如,滤波器单元314可被配置为执行解块、SAO滤波和/或ALF,如上面关于滤波器单元216所述的。此外,应当指出的是,在一些示例中,滤波器单元314可被配置为执行专用的任意滤波(例如,视觉增强)。如图16所示,视频解码器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条要求2018年5月31日的临时申请62/678,824、2018年6月29日的临时申请62/692,374、2018年7月18日的临时申请62/700,167、2018年7月23日的临时申请62/702,319、2018年9月13日的临时申请62/731,049的优先权,这些临时申请的全部内容据此以引用方式并入。

Claims (27)

1.一种对视频数据进行划分以用于视频编码的方法,所述方法包括:
接收视频块,所述视频块包括用于视频数据的第一分量和视频数据的第二分量的样本值;
根据第一四叉树二叉树划分结构对用于视频数据的所述第一分量和视频数据的所述第二分量的所述样本值进行划分;并且
对于所述第一四叉树二叉树的与帧内预测类型相关联的节点中包括的视频数据的所述第一分量的样本值,根据第二四叉树二叉树将所述样本进一步划分。
2.根据权利要求1所述的方法,还包括对于所述第一四叉树二叉树的与帧内预测类型相关联的节点中包括的视频数据的所述第二分量的样本值,根据第三四叉树二叉树将所述样本进一步划分。
3.根据权利要求2所述的方法,还包括用信号发送所述第二四叉树二叉树和所述第三四叉树二叉树是否相等。
4.根据权利要求3所述的方法,其中用信号发送所述第二四叉树二叉树和所述第三四叉树二叉树是否相等包括将标记值用信号发送为真。
5.根据权利要求3所述的方法,其中用信号发送所述第二四叉树二叉树和所述第三四叉树二叉树是否相等包括有条件地用信号发送标记值。
6.根据权利要求5所述的方法,其中有条件地用信号发送所述标记值包括基于所述第一四叉树二叉树划分结构的对应于所述第二四叉树二叉树和所述第三四叉树二叉树的根的叶节点的深度来有条件地用信号发送所述标记值。
7.根据权利要求1至6中任一项所述的方法,其中所述视频块包括视频数据的帧间预测片段中包括的视频块。
8.根据权利要求1至7中任一项所述的方法,还包括用信号发送所述视频块的所得的划分。
9.根据权利要求2至8中任一项所述的方法,还包括对于视频数据的所述第二分量的样本值,使用帧内预测技术生成残差。
10.根据权利要求9所述的方法,其中使用帧内预测技术生成残差包括基于所述第三四叉树二叉树生成残差。
11.根据权利要求9或10中任一项所述的方法,还包括基于所述第三四叉树二叉树来变换所述残差。
12.根据权利要求11所述的方法,其中用信号发送所述视频块的所述所得的划分包括基于所述四叉树二叉树中的一个或多个四叉树二叉树来确定上下文。
13.一种确定视频数据的划分以用于视频编码的方法,所述方法包括:
解析第一四叉树二叉树划分结构;
将所述第一四叉树二叉树划分结构应用于视频数据的第一分量;
将所述第一四叉树二叉树划分结构应用于视频数据的第二分量;
确定所述第一四叉树二叉树的节点是否与帧内预测类型相关联;
在确定所述第一四叉树二叉树的所述节点与帧内预测类型相关联后,解析第二四叉树二叉树划分结构;并且
将所述第二四叉树二叉树划分结构应用于包括在所述第一四叉树二叉树的节点中的视频数据的所述第一分量的样本值。
14.根据权利要求13所述的方法,还包括确定条件是否为真;并且
在确定所述条件为真时,解析第三四叉树二叉树划分结构,并且将所述第三四叉树二叉树划分结构应用于包括在所述第一四叉树二叉树的节点中的视频数据的所述第二分量的样本值。
15.根据权利要求13所述的方法,还包括确定条件是否为真;并且
在确定所述条件为假时,将所述第二四叉树二叉树划分结构应用于包括在所述第一四叉树二叉树的节点中的视频数据的所述第二分量的样本值。
16.根据权利要求14或15中任一项所述的方法,其中确定所述条件是否为真包括解析标记。
17.根据权利要求14或15中任一项所述的方法,其中确定所述条件是否为真包括确定所述视频块的大小是否大于阈值。
18.根据权利要求14或15中任一项所述的方法,其中确定所述条件是否为真包括确定所述第一四叉树二叉树划分结构的对应于所述第二四叉树二叉树和所述第三四叉树二叉树的根的叶节点的深度是否大于或等于深度阈值。
19.根据权利要求13至18中任一项所述的方法,其中解析四叉树二叉树包括解析一个或多个语法元素。
20.根据权利要求13至19中任一项所述的方法,还包括生成重构的视频数据并基于所述四叉树二叉树中的一个或多个四叉树二叉树来应用自适应环路滤波器。
21.根据权利要求1至20中任一项所述的方法,还包括计算视频块中包括的样本值的平均值。
22.一种用于对视频数据进行编码的设备,所述设备包括被配置为执行权利要求1至21所述步骤的任何和全部组合的一个或多个处理器。
23.根据权利要求22所述的设备,其中所述设备包括视频编码器。
24.根据权利要求22所述的设备,其中所述设备包括视频解码器。
25.一种系统,所述系统包括:
根据权利要求23所述的设备;以及
根据权利要求24所述的设备。
26.一种用于对视频数据进行编码的装置,所述装置包括用于执行权利要求1至21所述步骤的任何和全部组合的装置。
27.一种包括存储在其上的指令的非暂态计算机可读存储介质,当执行所述指令时,使得用于对视频数据进行编码的设备的一个或多个处理器执行权利要求1至21所述步骤的任何和全部组合。
CN201980036049.3A 2018-05-31 2019-05-27 用于划分视频数据的帧间预测片段中的视频块的系统和方法 Pending CN112204967A (zh)

Applications Claiming Priority (11)

Application Number Priority Date Filing Date Title
US201862678824P 2018-05-31 2018-05-31
US62/678824 2018-05-31
US201862692374P 2018-06-29 2018-06-29
US62/692374 2018-06-29
US201862700167P 2018-07-18 2018-07-18
US62/700167 2018-07-18
US201862702319P 2018-07-23 2018-07-23
US62/702319 2018-07-23
US201862731049P 2018-09-13 2018-09-13
US62/731049 2018-09-13
PCT/JP2019/020965 WO2019230670A1 (en) 2018-05-31 2019-05-27 Systems and methods for partitioning video blocks in an inter prediction slice of video data

Publications (1)

Publication Number Publication Date
CN112204967A true CN112204967A (zh) 2021-01-08

Family

ID=68698192

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201980036049.3A Pending CN112204967A (zh) 2018-05-31 2019-05-27 用于划分视频数据的帧间预测片段中的视频块的系统和方法

Country Status (4)

Country Link
US (1) US20210314630A1 (zh)
EP (1) EP3804315A4 (zh)
CN (1) CN112204967A (zh)
WO (1) WO2019230670A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116208767B (zh) * 2018-09-03 2023-11-28 华为技术有限公司 一种对码流进行解码的方法、装置以及存储码流的设备
EP3903487A4 (en) * 2018-12-28 2022-09-21 Telefonaktiebolaget Lm Ericsson (Publ) METHOD AND DEVICE FOR TRANSFORMATION SELECTION IN AN ENCODER AND DECODER
TWI734328B (zh) * 2018-12-30 2021-07-21 聯發科技股份有限公司 帶有約束的亮度-色度單獨的編碼樹編碼的方法和設備
WO2020249124A1 (en) 2019-06-14 2020-12-17 Beijing Bytedance Network Technology Co., Ltd. Handling video unit boundaries and virtual boundaries based on color format
KR20220030953A (ko) 2019-07-09 2022-03-11 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 적응적 루프 필터링을 위한 샘플 결정
CN117939170A (zh) 2019-07-11 2024-04-26 北京字节跳动网络技术有限公司 自适应环路滤波中的样点填充
CN114175637B (zh) * 2019-07-15 2024-04-12 北京字节跳动网络技术有限公司 自适应环路滤波中的分类
CN114270838B (zh) 2019-08-20 2024-04-12 北京字节跳动网络技术有限公司 变换跳过模式的信令通知
EP4018652A4 (en) 2019-09-22 2022-11-02 Beijing Bytedance Network Technology Co., Ltd. FILLING METHOD IN AN ADAPTIVE LOOP FILTER
CN114450954A (zh) 2019-09-27 2022-05-06 北京字节跳动网络技术有限公司 不同视频单元之间的自适应环路滤波
WO2021068906A1 (en) 2019-10-10 2021-04-15 Beijing Bytedance Network Technology Co., Ltd. Padding process at unavailable sample locations in adaptive loop filtering
JP7391203B2 (ja) 2019-10-12 2023-12-04 北京字節跳動網絡技術有限公司 ビデオコーディングツールを洗練する使用およびシグナリング
US11445208B2 (en) 2019-12-23 2022-09-13 Tencent America LLC Method and apparatus for video coding
CN114830663A (zh) * 2019-12-31 2022-07-29 Oppo广东移动通信有限公司 变换方法、编码器、解码器以及存储介质
US11546592B2 (en) * 2020-01-08 2023-01-03 Tencent America LLC Flexible block partitioning for chroma component
CN113286152B (zh) 2020-02-20 2023-05-23 腾讯美国有限责任公司 视频解码方法、装置、计算机设备及存储介质
US11363285B2 (en) * 2020-02-20 2022-06-14 Tencent America LLC Block partitioning at picture boundaries
US11206416B2 (en) * 2020-02-21 2021-12-21 Tencent America LLC Method and apparatus for video coding
US11432018B2 (en) * 2020-05-11 2022-08-30 Tencent America LLC Semi-decoupled partitioning for video coding
US20230069984A1 (en) * 2021-08-24 2023-03-09 Tencent America LLC Hardware friendly design for intra mode coding

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017137311A1 (en) * 2016-02-11 2017-08-17 Thomson Licensing Method and device for encoding/decoding an image unit comprising image data represented by a luminance channel and at least one chrominance channel
US20170347095A1 (en) * 2016-05-25 2017-11-30 Arris Enterprises Llc Jvet quadtree plus binary tree (qtbt) structure with multiple asymmetrical partitioning
US20170347123A1 (en) * 2016-05-25 2017-11-30 Arris Enterprises Llc Jvet coding block structure with asymmetrical partitioning
US20170347096A1 (en) * 2016-05-25 2017-11-30 Arris Enterprises Llc General block partitioning method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9848197B2 (en) * 2011-03-10 2017-12-19 Qualcomm Incorporated Transforms in video coding
WO2013067687A1 (en) * 2011-11-08 2013-05-16 Mediatek Singapore Pte. Ltd. Residue quad tree depth for chroma components
WO2013102299A1 (en) * 2012-01-04 2013-07-11 Mediatek Singapore Pte. Ltd. Residue quad tree depth for chroma components
US9462275B2 (en) * 2012-01-30 2016-10-04 Qualcomm Incorporated Residual quad tree (RQT) coding for video coding
EP3763128A4 (en) * 2018-03-14 2022-04-06 Mediatek Inc. METHOD AND APPARATUS PROVIDING AN OPTIMIZED DIVISION STRUCTURE FOR VIDEO CODING
EP3782364A4 (en) * 2018-04-24 2022-04-20 HFI Innovation Inc. ALTERNATE TRANSFORM JUMP MODE METHODS AND APPARATUS FOR IMAGE AND VIDEO CODING

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017137311A1 (en) * 2016-02-11 2017-08-17 Thomson Licensing Method and device for encoding/decoding an image unit comprising image data represented by a luminance channel and at least one chrominance channel
US20170347095A1 (en) * 2016-05-25 2017-11-30 Arris Enterprises Llc Jvet quadtree plus binary tree (qtbt) structure with multiple asymmetrical partitioning
US20170347123A1 (en) * 2016-05-25 2017-11-30 Arris Enterprises Llc Jvet coding block structure with asymmetrical partitioning
US20170347096A1 (en) * 2016-05-25 2017-11-30 Arris Enterprises Llc General block partitioning method

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KOO M: "Description of SDR video coding technology proposal by LG Electronics", 10.JVET MEETING, pages 3 *
Y-W CHEN: "Description of SDR, HDR and 360° video coding technology proposal by Qualcomm and Technicolor-low and high complexity versions", 10.JVET MEETING, pages 6 - 8 *

Also Published As

Publication number Publication date
US20210314630A1 (en) 2021-10-07
WO2019230670A1 (en) 2019-12-05
EP3804315A4 (en) 2022-03-09
EP3804315A1 (en) 2021-04-14

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
CN112204967A (zh) 用于划分视频数据的帧间预测片段中的视频块的系统和方法
CN110313179B (zh) 用于按比例缩放变换系数水平值的系统和方法
US11259021B2 (en) Systems and methods for partitioning video blocks at a boundary of a picture for video coding
US11889123B2 (en) Systems and methods for partitioning video blocks at a boundary of a picture
KR20190112735A (ko) 비디오 코딩을 위해 비디오 블록들로 화상을 파티셔닝하기 위한 시스템들 및 방법들
WO2020227612A1 (en) Prediction signal filtering in affine linear weighted intra prediction
KR20200022013A (ko) 비디오 코딩을 위한 비디오 블록들로 픽처의 기하학적 적응성 블록 분할을 위한 시스템들 및 방법들
US20220345698A1 (en) Systems and methods for reducing a reconstruction error in video coding based on a cross-component correlation
CN112997501B (zh) 导出用于对视频数据进行解码的预测亮度样本值的方法
US11979566B2 (en) Systems and methods for reducing a reconstruction error in video coding based on a cross-component correlation
US20220360774A1 (en) Systems and methods for performing intra prediction coding in video coding
CN115428447A (zh) 在视频编码中用于执行帧内预测的系统和方法
CN110583021A (zh) 用于执行平面帧内预测视频编码的系统和方法
CN116235498A (zh) 去块滤波器参数信令
CN116325738A (zh) 用于高比特深度视频编解码的自适应推导Rice参数值

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
TA01 Transfer of patent application right

Effective date of registration: 20231208

Address after: Japan's Osaka City. Sakai Sakai district town 1 times

Applicant after: Sharp Corp.

Address before: Japan's Osaka City. Sakai Sakai district town 1 times

Applicant before: Sharp Corp.

Applicant before: FG Innovation Co.,Ltd.

TA01 Transfer of patent application right