CN113692588B - 用于视频解码的方法和相关装置 - Google Patents

用于视频解码的方法和相关装置 Download PDF

Info

Publication number
CN113692588B
CN113692588B CN202080027430.6A CN202080027430A CN113692588B CN 113692588 B CN113692588 B CN 113692588B CN 202080027430 A CN202080027430 A CN 202080027430A CN 113692588 B CN113692588 B CN 113692588B
Authority
CN
China
Prior art keywords
chroma
alf
component
syntax element
flag
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.)
Active
Application number
CN202080027430.6A
Other languages
English (en)
Other versions
CN113692588A (zh
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.)
Tencent America LLC
Original Assignee
Tencent America LLC
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 Tencent America LLC filed Critical Tencent America LLC
Priority to CN202311387088.2A priority Critical patent/CN117241023A/zh
Publication of CN113692588A publication Critical patent/CN113692588A/zh
Application granted granted Critical
Publication of CN113692588B publication Critical patent/CN113692588B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
    • 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/117Filters, e.g. for pre-processing or post-processing
    • 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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process

Landscapes

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

Abstract

本公开内容提供了用于视频解码的方法和设备,该方法对已编码视频比特流中的第一语法元素进行解码,该第一语法元素指示已编码视频比特流中的第一分量的编码是否是基于已编码视频比特流中的第二分量。然后基于第一语法元素来确定是否对用于色度相关编码工具的一个或更多个第二语法元素进行解码。色度相关编码工具是一个或更多个联合颜色平面编码工具。如果第一语法元素指示第一分量的编码是基于第二分量,则对一个或更多个第二语法元素进行解码。如果第一语法元素指示第一分量的编码不是基于第二分量,则不对一个或更多个第二语法元素进行解码。

Description

用于视频解码的方法和相关装置
交叉引用
本申请要求于2020年11月12日提交的美国专利申请第17/096,674号“METHOD ANDAPPARATUS FOR VIDEO CODING”的优先权的权益,该美国专利申请第17/096,674号要求于2020年1月8日提交的美国临时申请第62/958,694号“SIGNALING OF CHROMA PRESENT FLAGFOR SUPPORTING VARIOUS CHROMAFORMAT”的优先权的权益。在先申请的全部公开内容通过引用整体并入本文。
技术领域
本公开内容涉及视频编解码技术,特别地涉及一种视频解码方法和相关装置。
背景技术
本文中提供的背景技术描述的各方面既没有明确地也没有隐含地承认现有技术。
可以使用具有运动补偿的帧间图片预测来进行视频编码和解码。未压缩的数字视频可以包括一系列图片,每个图片具有空间维度为例如1920×1080的亮度样本以及相关联的色度样本。所述一系列图片可以具有例如每秒60个图片或60Hz的固定的或可变的图片速率(也被非正式地称为帧速率)。未压缩的视频具有特定的比特率要求。例如,每样本8比特的1080p60 4:2:0视频(60Hz帧速率下1920×1080亮度样本分辨率)需要接近1.5Gbit/s带宽。一小时的这样的视频需要大于600千兆字节(GByte)的存储空间。
视频编码和解码的一个目的可以是通过压缩来减少输入视频信号的冗余。压缩可以帮助减少以上提及的带宽和/或存储空间需求,在一些情况下减少两个数量级或更多。可以采用无损压缩和有损压缩两者以及它们的组合。无损压缩是指可以根据压缩的原始信号重建原始信号的精确副本的技术。当使用有损压缩时,重建的信号可能与原始信号不同,但是原始信号与重建的信号之间的失真足够小,使得重建的信号能够用于目标应用。有损压缩被广泛采用于视频。容忍的失真量取决于应用。例如,某些消费者流媒体应用的用户可能比电视应用的用户容忍更高的失真。更高的可允许/可容忍的失真可以产生更高的压缩比。
视频编码器和解码器可以利用例如包括运动补偿、变换、量化和熵编码的若干大类的技术。
视频编解码器技术可以包括称为帧内编码的技术。在帧内编码中,在不参考来自先前重建的参考图片的样本或其他数据的情况下表示样本值。在一些视频编解码器中,图片在空间上被细分为样本块。在以帧内模式对所有样本块进行编码时,该图片可以是帧内图片。帧内图片及其派生诸如独立解码器刷新图片可以用于重置解码器状态,并且因此可以用作编码的视频比特流和视频会话中的第一图片或用作静止图像。可以对帧内块的样本应用变换,并且可以在熵编码之前对变换系数进行量化。帧内预测可以是使预变换域中的样本值最小化的技术。在一些情况下,变换之后的DC值越小并且AC系数越小,在给定量化步长下表示熵编码之后的块所需的比特就越少。
诸如从例如MPEG-2代编码技术已知的传统帧内编码不使用帧内预测。然而,一些较新的视频压缩技术包括根据例如在空间上邻近并且在解码顺序上在先的数据块的编码/解码期间获得的元数据以及/或者周围样本数据进行尝试的技术。这样的技术此后被称为“帧内预测”技术。注意,在至少一些情况下,帧内预测仅使用来自重建中的当前图片的参考数据,而不使用来自参考图片的参考数据。
可以存在许多不同形式的帧内预测。当可以在给定视频编码技术中使用多于一种的这样的技术时,使用的技术可以在帧内预测模式下进行编码。在某些情况下,模式可以具有子模式和/或参数,并且这些子模式和/或参数可以被单独编码或被包括在模式码字中。针对给定模式/子模式/参数组合使用何码字可以通过帧内预测对编码效率增益产生影响,并且因此可以对用于将码字转换成比特流的熵编码技术产生影响。
帧内预测的某些模式由H.264引入、在H.265中被细化,并且在诸如联合开发模型(joint exploration model,JEM)、通用视频编码(versatile video coding,VVC)、和基准集(benchmark set,BMS)的较新编码技术中被进一步细化。可以使用属于已经可用的样本的邻近样本值来形成预测块。根据方向将邻近样本的样本值复制到预测器块中。对使用的方向的参考可以被编码在比特流中,或者其本身可以被预测。
参照图1A,在右下方描绘了从H.265的33个可能的预测器方向(对应于35个帧内模式的33个角模式)已知的九个预测器方向的子集。箭头会聚的点(101)表示正在预测的样本。箭头表示对样本进行预测的方向。例如,箭头(102)指示根据右上方的与水平成45度角的一个或更多个样本对样本(101)进行预测。类似地,箭头(103)指示根据样本(101)左下方的与水平成22.5度角的一个或更多个样本对样本(101)进行预测。
仍然参照图1A,在左上方描绘了4×4样本的正方形块(104)(由黑体虚线指示)。正方形块(104)包括16个样本,每个样本均由“S”、其在Y维度上的位置(例如,行索引)以及其在X维度上的位置(例如,列索引)来标记。例如,样本S21是Y维度上(从顶部起)的第二个样本并且是X维度上(从左侧起)的第一个样本。类似地,样本S44是块(104)中在Y维度和X维度两者上的第四个样本。由于块的大小是4×4个样本,所以S44在右下方。另外示出的是遵循类似的编号方案的参考样本。参考样本由R、其相对于块(104)的Y位置(例如,行索引)和X位置(列索引)来标记。在H.264和H.265两者中,预测样本与重建中的块邻近;因此不需要使用负值。
帧内图片预测可以通过根据用信号通知的预测方向适当地从邻近样本复制参考样本值来工作。例如,假设编码视频比特流包括以下信令,针对该块,该信令指示与箭头(102)一致的预测方向——即,根据右上方的与水平成45度角的一个或更多个预测样本来对样本进行预测。在这种情况下,根据同一参考样本R05对样本S41、S32、S23和S14进行预测。然后根据参考样本R08对样本S44进行预测。
在某些情况下,多个参考样本的值可以例如通过插值来组合,以便计算参考样本,尤其是当方向不能被45度整除时。
随着视频编码技术的发展,可能的方向的数目也在增加。在H.264(2003年)中,可以表示九个不同的方向。在H.265(2013年)中增加到33个,并且在公开时JEM/VVC/BMS可以支持多至65个方向。已经进行了实验来识别最可能的方向,并且熵编码中的某些技术被用于以少量的比特表示这些可能的方向,从而接受对不太可能的方向的某些惩罚。此外,有时可以根据在邻近的已解码的块中使用的邻近方向来预测方向本身。
图1B示出了根据JEM的65个帧内预测方向的示意图(180),以示出预测方向的数目随着时间的推移而增加。
编码视频比特流中表示方向的帧内预测方向比特的映射可以在各视频编码技术中不同,并且范围可以包括例如对预测方向的简单直接映射,帧内预测模式,码字,对最可能模式的复杂自适应方案和类似技术。然而,在所有情况下,可能存在统计上比其他方向较不可能出现在视频内容中的方向。由于视频压缩的目标是减少冗余,所以在运转良好的视频编码技术中,那些较不可能的方向将由更大的比特数来表示。
运动补偿可以是有损压缩技术,并且可以涉及以下技术:在运动矢量(以下称为MV(motion vector,MV))所指示的方向上进行空间移位之后,使用来自先前重建的图片或其一部分(参考图片)的样本数据的块来预测新重建的图片或其一部分。在一些情况下,参考图片可以与当前重建中的图片相同。MV可以具有两个维度X和Y或者具有三个维度,第三维度是使用中的参考图片的指示(第三维度间接地可以是时间维度)。
在一些视频压缩技术中,可以根据其他MV预测适用于样本数据的特定区域的MV,例如,根据在空间上与重建中的区域相邻的样本数据的另一区域有关并且在解码顺序上在该MV之前的MV来预测该MV。这样做可以大幅减少编码MV所需的数据量,从而消除冗余并且增加压缩。MV预测可以有效地工作,例如,这是因为在对从摄像设备得到的输入视频信号(称为自然视频)进行编码时,统计上可能存在比单个MV所适用的区域更大的区域在类似方向上移动,因此在一些情况下可以使用从邻近区域的MV得出的类似运动矢量来预测。这使得针对给定区域找到的MV与根据周围MV预测的MV类似或相同,并且又可以在熵编码之后以比直接对MV进行编码所使用的比特数更小的比特数来表示。在一些情况下,MV预测可以是根据原始信号(即样本流)得出的信号(即MV)的无损压缩的示例。在其他情况下,MV预测本身可以是有损的,例如由于根据若干周围MV计算预测器时的舍入误差而有损。
在H.265/HEVC(ITU-T H.265建议书,“高效视频编码(High Efficiency VideoCoding)”,2016年12月)中描述了各种MV预测机制。在H.265提供的多种MV预测机制中,在此描述的是下文称作“空间合并”的技术。
参照图2,当前块(201)包括在运动搜索过程期间已经由编码器发现的能够根据已经经空间移位的相同大小的先前块预测的样本。代替直接对该MV进行编码,可以使用与用A0、A1和B0、B1、B2分别为202至206)表示的五个周围样本中的任一样本相关联的MV,从与一个或更多个参考图片相关联的元数据得出MV,例如,从最近(按解码次序)的参考图片得出MV。在H.265中,MV预测可以使用来自邻近块正在使用的相同参考图片的预测器。
在一些示例中,要编码的视频序列包括多个颜色平面,并且多个颜色平面的不同组合可以被联合编码。颜色平面指亮度分量或色度分量。在一些应用中,视频是单色的,或者视频的颜色平面的各分量被独立编码,因此某些联合颜色平面编码工具不适用。如何能够同时支持联合颜色平面编码的应用和单色平面编码或独立颜色平面编码的应用,并减少信令开销,是编解码技术中需要解决的问题。
发明内容
本公开内容的各方面提供了一种用于视频编码/解码的方法和设备。在一些示例中,一种用于视频解码的方法包括:对已编码视频比特流中的第一语法元素进行解码。第一语法元素可以指示已编码视频比特流中的第一分量的编码是否是基于已编码视频比特流中的第二分量。然后基于第一语法元素来确定是否对用于色度相关编码工具的一个或更多个第二语法元素进行解码。色度相关编码工具是一个或更多个联合颜色平面编码工具。如果第一语法元素指示第一分量的编码是基于已编码视频比特流中的第二分量并且第一分量是色度分量,则对用于色度相关编码工具的一个或更多个第二语法元素进行解码。如果第一语法元素指示第一分量的编码不是基于已编码视频比特流中的第二分量,则不对用于色度相关编码工具的一个或更多个第二语法元素进行解码。
在一些实施方式中,第一语法元素被包括在自适应参数集(adaptationparameter set,APS)中。
在一些实施方式中,第一语法元素在序列级别上指示第一分量的编码是否是基于第二分量。
在一些实施方式中,如果第一语法元素指示第一分量的编码是基于第二分量,则第二分量是已编码视频比特流中的第二色度分量和亮度分量中的一个。如果第一语法元素指示第一分量的编码不是基于第二分量,则(i)第一分量是已编码视频比特流中的唯一分量或(ii)已编码视频比特流包括第一分量和第二分量,并且第一分量的编码不是基于第二分量。在一些示例中,已编码视频比特流包括色度格式为4:4:4的第一色度分量、第二色度分量和亮度分量。第一分量是第一色度分量。第二分量是第二色度分量或亮度分量。第一色度分量、第二色度分量和亮度分量被彼此独立地编码。
在一些实施方式中,如果第一语法元素指示第一分量的编码不是基于第二分量,则禁用色度相关编码工具。
在一些实施方式中,色度相关编码工具是亮度映射与色度缩放(luma mappingwith chroma scaling,LMCS)编码工具。用于LMCS编码工具的一个或更多个第二语法元素包括第一LMCS参数,该第一LMCS参数指示用于LMCS色度残差缩放(chroma residualscaling,CRS)的变量的绝对值。如果用于LMCS CRS的变量的绝对值大于0,则对用于LMCS编码工具的第二LMCS参数进行解码。一个或更多个第二语法元素包括第二LMCS参数,该第二LMCS参数指示用于LMCS CRS的变量的符号。如果用于LMCS CRS的变量的绝对值不大于0,则不对第二LMCS参数进行解码。
在一些实施方式中,色度相关编码工具是交叉分量自适应环路滤波器(cross-component adaptive loop filter,CC-ALF)。用于CC-ALF的一个或更多个第二语法元素包括第一CC-ALF标志和第二CC-ALF标志。第一CC-ALF标志指示在已编码视频比特流中是否包含第一CC-ALF。第二CC-ALF标志指示在已编码视频比特流中是否包含第二CC-ALF。如果第一CC-ALF标志指示包含第一CC-ALF,则对用于第一CC-ALF的语法元素进行解码。用于CC-ALF的一个或更多个第二语法元素包括用于第一CC-ALF的语法元素。如果第一CC-ALF标志指示不包含第一CC-ALF,则不对用于第一CC-ALF的语法元素进行解码。如果第二CC-ALF标志指示包含第二CC-ALF,则对用于第二CC-ALF的语法元素进行解码。用于CC-ALF的一个或更多个第二语法元素包括用于第二CC-ALF的语法元素。如果第二CC-ALF标志指示不包含第二CC-ALF,则不对用于第二CC-ALF的语法元素进行解码。
在一些示例中,一种用于视频解码的装置包括:第一解码模块,其被配置成对已编码视频比特流中的第一语法元素进行解码,第一语法元素指示已编码视频比特流中的第一分量的编码是否是基于已编码视频比特流中的第二分量;确定模块,其被配置成基于第一语法元素来确定是否对用于色度相关编码工具的一个或更多个第二语法元素进行解码,色度相关编码工具是一个或更多个联合颜色平面编码工具;以及第二解码模块,其被配置成如果第一语法元素指示第一分量的编码是基于第二分量并且第一分量是色度分量,则对一个或更多个第二语法元素进行解码,如果第一语法元素指示第一分量的编码不是基于第二分量,则不对一个或更多个第二语法元素进行解码。
一种用于视频解码的设备,包括处理电路系统,被处理电路系统被配置成执行上述用于视频解码的方法。
本公开内容的各方面还提供了存储指令的非暂态计算机可读介质,所述指令在由计算机执行时使计算机执行上述用于视频解码的方法。
根据本公开内容的各方面,使用第一语法元素指示是否包括色度分量。当包括色度分量时(例如,色度分量将基于已编码视频比特流中的另一分量进行编码),则对视频比特流中的色度相关语法进行解码。当不包括色度分量时,则视频比特流中不包括色度相关语法,因此也不对色度相关语法进行解码。这样,可以同时支持包含色度分量的应用(例如使用联合颜色平面编码)和不包含色度分量的应用(例如使用单色平面编码或独立颜色平面编码),并且减少了信令开销,从而提高编码效率。
附图说明
根据以下详细描述和附图,所公开的主题的其他特征、性质和各种优点将变得更加明显,在附图中:
图1A是帧内预测模式的示例性子集的示意性图示。
图1B是示例性帧内预测方向的图示。
图2是一个示例中的当前块及其周围的空间合并候选的示意性图示。
图3是根据一实施方式的通信系统的简化框图的示意性图示。
图4是根据另一实施方式的通信系统的简化框图的示意性图示。
图5是根据另一实施方式的解码器的简化框图的示意性图示。
图6是根据另一实施方式的编码器的简化框图的示意性图示。
图7示出了根据另一实施方式的编码器的框图。
图8示出了根据另一实施方式的解码器的框图。
图9A至图9G示出了根据本公开内容的另一实施方式的示例性序列参数集(sequence parameter set,SPS)原始字节序列有效载荷(raw byte sequence payload,RBSP)语法。
图10A至图10D示出了根据本公开内容的另一实施方式的示例性图片参数集(picture parameter set,PPS)RBSP语法。
图11A至图11B示出了根据本公开内容的另一实施方式的示例性自适应环路滤波器(adaptive loop filter,ALF)数据语法。
图12示出了根据本公开内容的另一实施方式的示例性SPS RBSP语法。
图13示出了根据本公开内容的另一实施方式的示例性SPS RBSP语法。
图14示出了根据本公开内容的另一实施方式的示例性PPS RBSP语法。
图15示出了根据本公开内容的另一实施方式的示例性APS RBSP语法。
图16示出了根据本公开内容的另一实施方式的示例性自适应环路滤波器(ALF)数据语法。
图17示出了概述根据本公开内容的另一实施方式的处理的流程图。
图18示出了概述根据本公开内容的另一实施方式的处理的流程图。
图19示出了概述根据本公开内容的另一实施方式的处理的流程图。
图20示出了根据本公开内容的另一实施方式的亮度映射与色度缩放(LMCS)编码工具的示例性架构。
图21示出了根据本公开内容的另一实施方式的示例性LMCS数据语法。
图22A至图22B示出了根据本公开内容的另一实施方式的示例性ALF数据语法。
图23示出了概述根据本公开内容的另一实施方式的处理的流程图。
图24是根据另一实施方式的计算机系统的示意性图示。
具体实施方式
图3示出了根据本公开内容的实施方式的通信系统(300)的简化框图。通信系统(300)包括可以经由例如网络(350)彼此通信的多个终端装置。例如,通信系统(300)包括经由网络(350)互连的第一对终端装置(310)和(320)。在图3的示例中,第一对终端装置(310)和(320)执行单向数据传输。例如,终端装置(310)可以对视频数据(例如,由终端装置(310)捕获的视频图片流)进行编码以用于经由网络(350)传输至另一终端装置(320)。已编码视频数据可以以一个或更多个已编码视频比特流的形式传输。终端装置(320)可以从网络(350)接收已编码视频数据、对已编码视频数据进行解码以恢复视频图片并且根据所恢复的视频数据显示视频图片。单向数据传输在媒体服务应用等中可以是常见的。
在另一示例中,通信系统(300)包括执行已编码视频数据的双向传输的第二对终端装置(330)和(340),该双向传输可以例如在视频会议期间发生。对于数据的双向传输,在示例中,终端装置(330)和(340)中的每个终端装置可以对视频数据(例如,由终端装置捕获的视频图片流)进行编码,以用于经由网络(350)传输至终端装置(330)和(340)中的另一终端装置。终端装置(330)和(340)中的每个终端装置还可以接收由终端装置(330)和(340)中的另一终端装置传输的已编码视频数据,并且可以对已编码视频数据进行解码以恢复视频图片,并且可以根据所恢复的视频数据在可访问的显示装置处显示视频图片。
在图3的示例中,终端装置(310)、(320)、(330)和(340)可以被示为服务器、个人计算机和智能电话,但是本公开内容的原理可以不限于此。本公开内容的实施方式可用于膝上型计算机、平板计算机、媒体播放器和/或专用视频会议装备。网络(350)表示在终端装置(310)、(320)、(330)和(340)之间传送已编码视频数据的任何数目的网络,包括例如有线(连线的)和/或无线通信网络。通信网络(350)可以在电路交换信道和/或分组交换信道中交换数据。代表性网络包括电信网络、局域网、广域网和/或因特网。出于本论述的目的,除非在下文中有所说明,否则网络(350)的架构和拓扑对于本公开内容的操作而言可能是不重要的。
作为所公开的主题的应用的示例,图4示出了视频编码器和视频解码器在流式传输环境中的放置。所公开的主题可以同等地适用于其他支持视频的应用,包括例如视频会议、数字TV、在包括CD、DVD、存储棒等的数字介质上存储压缩视频等。
流式传输系统可以包括捕获子系统(413),捕获子系统(413)可以包括创建例如未压缩的视频图片流(402)的视频源(401),例如数字摄像装置。在示例中,视频图片流(402)包括由数字摄像装置拍摄的样本。视频图片流(402)被描绘为粗线以强调当与已编码视频数据(404)(或已编码视频比特流)进行比较时的高数据量,视频图片流(402)可以由耦接至视频源(401)的包括视频编码器(403)的电子装置(420)进行处理。视频编码器(403)可以包括硬件、软件或其组合,以实现或实施如下更详细地描述的所公开的主题的各方面。已编码视频数据(404)(或已编码视频比特流(404))被描绘为细线以强调当与视频图片流(402)进行比较时的较低数据量,已编码视频数据(404)可以存储在流式传输服务器(405)上以供将来使用。一个或更多个流式传输客户端子系统,诸如图4中的客户端子系统(406)和(408),可以访问流式传输服务器(405)以检索已编码视频数据(404)的副本(407)和(409)。客户端子系统(406)可以包括例如电子装置(430)中的视频解码器(410)。视频解码器(410)对已编码视频数据的传入副本(407)进行解码,并且创建可以在显示器(412)(例如,显示屏)或另一呈现装置(未描绘)上呈现的输出视频图片流(411)。在一些流式传输系统中,可以根据某些视频编码标准/视频压缩标准对已编码视频数据(404)、(407)和(409)(例如,视频比特流)进行编码。这些标准的示例包括ITU-T H.265建议书。在示例中,开发中的视频编码标准被非正式地称为通用视频编码(Versatile Video Coding,VVC)。所公开的主题可以用于VVC的上下文中。
注意,电子装置(420)和(430)可以包括其他部件(未示出)。例如,电子装置(420)可以包括视频解码器(未示出),并且电子装置(430)也可以包括视频编码器(未示出)。
图5示出了根据本公开内容的实施方式的视频解码器(510)的框图。视频解码器(510)可以被包括在电子装置(530)中。电子装置(530)可以包括接收器(531)(例如,接收电路系统)。视频解码器(510)可以用于代替图4示例中的视频解码器(410)。
接收器(531)可以接收要由视频解码器(510)解码的一个或更多个已编码视频序列;在同一实施方式或另一实施方式中,一次接收一个已编码视频序列,其中每个已编码视频序列的解码独立于其他已编码视频序列。可以从信道(501)接收已编码视频序列,信道(501)可以是到存储已编码视频数据的存储装置的硬件/软件链路。接收器(531)可以接收带有其他数据的已编码视频数据,其他数据例如为可以被转发至其各自的使用实体(未描绘)的已编码音频数据和/或辅助数据流。接收器(531)可以将已编码视频序列与其他数据分开。为了防止网络抖动,可以将缓冲存储器(515)耦接在接收器(531)与熵解码器/解析器(520)(此后称为“解析器(520)”)之间。在某些应用中,缓冲存储器(515)是视频解码器(510)的一部分。在其他应用中,缓冲存储器(515)可以在视频解码器(510)外部(未描绘)。在又一些其他应用中,在视频解码器(510)外部可以有缓冲存储器(未描绘)以例如防止网络抖动,并且在视频解码器(510)内部还可以有另一缓冲存储器(515)以例如处理播出定时。当接收器(531)从具有足够带宽和可控性的存储/转发装置或从等同步网络(isosynchronous network)接收数据时,可能不需要缓冲存储器(515),或者缓冲存储器(515)可以是小的。为了在诸如因特网的最优分组网络上使用,可能需要缓冲存储器(515),缓冲存储器(515)可以相对大并且可以有利地具有适应性大小,并且可以至少部分地在操作系统或视频解码器(510)外部的类似元件(未描绘)中实现。
视频解码器(510)可以包括解析器(520)以根据已编码视频序列重建符号(521)。这些符号的类别包括:用于管理视频解码器(510)的操作的信息;以及用于控制诸如呈现装置(512)(例如,显示屏)的呈现装置的潜在信息,该呈现装置不是电子装置(530)的组成部分而是可以耦接至电子装置(530),如图5所示。用于(一个或多个)呈现装置的控制信息可以是补充增强信息(Supplemental Enhancement Information,SEI消息)或视频可用性信息(Video Usability Information,VUI)参数集片段(未描绘)的形式。解析器(520)可以对接收到的已编码视频序列进行解析/熵解码。已编码视频序列的编码可以根据视频编码技术或视频编码标准进行,并且可以遵循各种原理,包括可变长度编码、霍夫曼编码(Huffmancoding)、具有或不具有上下文灵敏度的算术编码等。解析器(520)可以基于与群组对应的至少一个参数,从已编码视频序列提取用于视频解码器中的像素的子群组中的至少一个子组群的子群组参数集。子群组可以包括图片群组(Group of Picture,GOP)、图片、图块、切片、宏块、编码单元(Coding Unit,CU)、块、变换单元(Transform Unit,TU)、预测单元(Prediction Unit,PU)等。解析器(520)还可以从已编码视频序列提取诸如变换系数、量化器参数值、运动矢量等的信息。
解析器(520)可以对从缓冲存储器(515)接收的视频序列执行熵解码/解析操作,从而创建符号(521)。
取决于已编码视频图片或一部分已编码视频图片(例如:帧间图片和帧内图片、帧间块和帧内块)的类型以及其他因素,符号(521)的重建可能涉及多个不同单元。涉及哪些单元以及涉及方式可以通过由解析器(520)从已编码视频序列解析的子群组控制信息来控制。为了简洁起见,未描述解析器(520)与以下多个单元之间的这种子群组控制信息流。
除了已经提及的功能块以外,视频解码器(510)可以在概念上细分成如下所述的多个功能单元。在商业约束下操作的实际实现中,这些单元中的许多单元彼此紧密交互并且可以至少部分地彼此集成。然而,出于描述所公开的主题的目的,在概念上细分成以下功能单元是适当的。
第一单元是缩放器/逆变换单元(551)。缩放器/逆变换单元(551)从解析器(520)接收作为(一个或多个)符号(521)的量化变换系数以及控制信息,包括使用哪种变换、块大小、量化因子、量化缩放矩阵等。缩放器/逆变换单元(551)可以输出包括可以输入至聚合器(555)中的样本值的块。
在一些情况下,缩放器/逆变换单元(551)的输出样本可以属于帧内编码块;即:不使用来自先前重建的图片的预测性信息,但是可以使用来自当前图片的先前重建部分的预测性信息的块。这样的预测性信息可以由帧内图片预测单元(552)提供。在一些情况下,帧内图片预测单元(552)使用从当前图片缓冲器(558)获取的周围已重建的信息生成大小和形状与重建中的块相同的块。例如,当前图片缓冲器(558)缓冲部分重建的当前图片和/或完全重建的当前图片。在一些情况下,聚合器(555)以每个样本为基础将帧内图片预测单元(552)已经生成的预测信息添加至由缩放器/逆变换单元(551)提供的输出样本信息。
在其他情况下,缩放器/逆变换单元(551)的输出样本可以属于已帧间编码并且可能经运动补偿的块。在这样的情况下,运动补偿预测单元(553)可以访问参考图片存储器(557)以获取用于预测的样本。在根据属于块的符号(521)对所获取的样本进行运动补偿之后,可以由聚合器(555)将这些样本添加至缩放器/逆变换单元(551)的输出(在这种情况下,称作残差样本或残差信号)以生成输出样本信息。运动补偿预测单元(553)从其获取预测样本的参考图片存储器(557)内的地址可以由运动矢量控制,运动矢量以符号(521)的形式供运动补偿预测单元(553)使用,符号(521)可以具有例如X分量、Y分量和参考图片分量。运动补偿还可以包括在使用子样本精确运动矢量时从参考图片存储器(557)获取的样本值的插值、运动矢量预测机制等。
聚合器(555)的输出样本可以在环路滤波器单元(556)中经受各种环路滤波技术。视频压缩技术可以包括环路内滤波器技术,环路内滤波器技术受控于包括在已编码视频序列(也被称为已编码视频比特流)中的参数,所述参数作为来自解析器(520)的符号(521)可用于环路滤波器单元(556),但是视频压缩技术也可以响应于在对已编码图片或已编码视频序列的(按解码次序的)先前部分进行解码期间获得的元信息,以及响应于先前重建并且经环路滤波的样本值。
环路滤波器单元(556)的输出可以是样本流,该样本流可以输出至呈现装置(512)以及存储在参考图片存储器(557)中,以用于将来的帧间图片预测。
一旦完全重建,某些已编码图片就可以被用作参考图片以用于将来预测。例如,一旦与当前图片对应的已编码图片被完全重建,并且该已编码图片(通过例如解析器(520))被识别为参考图片,则当前图片缓冲器(558)就可以变为参考图片存储器(557)的一部分,并且可以在开始重建随后的已编码图片之前重新分配新的当前图片缓冲器。
视频解码器(510)可以根据诸如ITU-T H.265建议书的标准中的预定视频压缩技术执行解码操作。在已编码视频序列遵循视频压缩技术或标准的语法以及视频压缩技术或标准中记录的配置文件两者的意义上,已编码视频序列可以符合由所使用的视频压缩技术或标准指定的语法。具体地,配置文件可以从视频压缩技术或标准中可用的所有工具中选择某些工具作为仅在所述配置文件下可使用的工具。对于合规性,还要求已编码视频序列的复杂度处于由视频压缩技术或标准的层级限定的范围内。在一些情况下,层级限制最大图片大小、最大帧率、最大重建采样率(以例如每秒兆(mega)个样本为单位进行测量)、最大参考图片大小等。在一些情况下,由层级设置的限制可以通过假想参考解码器(Hypothetical Reference Decoder,HRD)规范以及在已编码视频序列中用信号通知的HRD缓冲器管理的元数据来进一步限定。
在实施方式中,接收器(531)可以连同已编码视频一起接收附加(冗余)数据。附加数据可以被包括为(一个或多个)已编码视频序列的一部分。附加数据可以由视频解码器(510)使用以对数据进行适当解码和/或更准确地重建原始视频数据。附加数据可以呈例如时间、空间或信噪比(signal noise ratio,SNR)增强层、冗余切片、冗余图片、前向纠错码等形式。
图6示出了根据本公开内容的实施方式的视频编码器(603)的框图。视频编码器(603)被包括在电子装置(620)中。电子装置(620)包括传输器(640)(例如,传输电路系统)。视频编码器(603)可以用于代替图4示例中的视频编码器(403)。
视频编码器(603)可以从视频源(601)(视频源(601)不是图6示例中的电子装置(620)的一部分)接收视频样本,视频源(601)可以捕获要由视频编码器(603)编码的(一个或多个)视频图像。在另一示例中,视频源(601)是电子装置(620)的一部分。
视频源(601)可以提供要由视频编码器(603)编码的呈数字视频样本流形式的源视频序列,该数字视频样本流可以具有任何合适的比特深度(例如:8比特、10比特、12比特等)、任何颜色空间(例如,BT.601YCrCb、RGB等)和任何合适的采样结构(例如Y CrCb 4:2:0、Y CrCb 4:4:4)。在媒体服务系统中,视频源(601)可以是存储先前准备的视频的存储装置。在视频会议系统中,视频源(601)可以是捕获本地图像信息作为视频序列的摄像装置。可以将视频数据提供为多个单独的图片,当按顺序观看时,这些图片被赋予运动。图片自身可以被组织为空间像素阵列,其中,取决于所用的采样结构、颜色空间等,每个像素可以包括一个或更多个样本。本领域技术人员可以很容易理解像素与样本之间的关系。以下描述集中于样本进行。
根据实施方式,视频编码器(603)可以实时地或者在由应用所需的任何其他时间约束下将源视频序列的图片编码并压缩成已编码视频序列(643)。施行合适编码速度是控制器(650)的一个功能。在一些实施方式中,控制器(650)控制如下所述的其他功能单元并且在功能上耦接至其他功能单元。为了简洁起见,未描绘耦接。通过控制器(650)设置的参数可以包括速率控制相关参数(图片跳过、量化器、率失真优化技术的λ值等)、图片大小、图片群组(GOP)布局、最大运动矢量搜索范围等。控制器(650)可以被配置成具有其他合适的功能,这些功能属于针对某一系统设计优化的视频编码器(603)。
在一些实施方式中,视频编码器(603)被配置成在编码环路中操作。作为过于简化的描述,在示例中,编码环路可以包括源编码器(630)(例如,负责基于要编码的输入图片以及(一个或多个)参考图片创建诸如符号流的符号)以及嵌入在视频编码器(603)中的(本地)解码器(633)。解码器(633)以类似于(远程)解码器将创建样本数据的方式重建符号以创建样本数据(因为在所公开的主题中考虑的视频压缩技术中,符号与已编码视频比特流之间的任何压缩都是无损的)。将重建的样本流(样本数据)输入至参考图片存储器(634)。由于符号流的解码产生与解码器位置(本地或远程)无关的比特精确结果,因此参考图片存储器(634)中的内容在本地编码器与远程编码器之间也是比特精确的。换言之,编码器的预测部分“看到”的参考图片样本与解码器在解码期间使用预测时将“看到”的样本值完全相同。该参考图片同步性基本原理(以及在例如由于信道误差而无法维持同步性的情况下产生的漂移)也用于一些相关技术。
“本地”解码器(633)的操作可以与已经在上面结合图5详细描述的“远程”解码器如视频解码器(510)的操作相同。然而,还简要参照图5,由于符号可用并且熵编码器(645)和解析器(520)将符号编码/解码到已编码视频序列可以为无损,因此可以不完全在本地解码器(633)中实现包括缓冲存储器(515)和解析器(520)的视频解码器(510)的熵解码部分。
此时可以观察到,除了存在于解码器中的解析/熵解码之外的任何解码器技术,也必定需要以基本上相同的功能形式存在于对应的编码器中。出于该原因,所公开的主题集中于解码器操作。由于编码器技术与已全面描述的解码器技术互逆,因此可以简化对编码器技术的描述。仅在某些区域中需要更详细的描述并且将在下面提供该描述。
在操作期间,在一些示例中,源编码器(630)可以执行运动补偿预测性编码,该运动补偿预测性编码参考来自视频序列的被指定为“参考图片”的一个或更多个先前编码图片来对输入图片进行预测性编码。以此方式,编码引擎(632)对输入图片的像素块与可以被选作输入图片的(一个或多个)预测参考的(一个或多个)参考图片的像素块之间的差异进行编码。
本地视频解码器(633)可以基于由源编码器(630)创建的符号对可以被指定为参考图片的图片的已编码视频数据进行解码。编码引擎(632)的操作可以有利地是有损过程。当已编码视频数据可以在视频解码器(图6中未示出)处被解码时,重建的视频序列通常可以是带有一些误差的源视频序列的副本。本地视频解码器(633)复制可以由视频解码器对参考图片执行的解码过程,并且可以使重建的参考图片存储在参考图片存储器(634)中。以此方式,视频编码器(603)可以在本地存储重建的参考图片的副本,所述副本与将由远端视频解码器获得的重建参考图片具有共同内容(不存在传输误差)。
预测器(635)可以针对编码引擎(632)执行预测搜索。也就是说,对于要编码的新图片,预测器(635)可以在参考图片存储器(634)中搜索可以用作用于新图片的适当预测参考的样本数据(作为候选参考像素块)或某些元数据,例如,参考图片运动矢量、块形状等。预测器(635)可以基于样本块逐像素块操作以找到适当的预测参考。在一些情况下,如由预测器(635)获得的搜索结果所确定的,输入图片可以具有从存储在参考图片存储器(634)中的多个参考图片取得的预测参考。
控制器(650)可以管理源编码器(630)的编码操作,包括例如设置用于对视频数据进行编码的参数和子群组参数。
所有以上提及的功能单元的输出可以在熵编码器(645)中经受熵编码。熵编码器(645)通过根据诸如霍夫曼编码、可变长度编码、算术编码等的技术对由各种功能单元生成的符号进行无损压缩,将符号转换成已编码视频序列。
传输器(640)可以缓冲由熵编码器(645)创建的(一个或多个)编码视频序列,从而为经由通信信道(660)进行传输做准备,通信信道(660)可以是到存储编码视频数据的存储装置的硬件/软件链路。传输器(640)可以将来自视频编码器(603)的已编码视频数据与要传输的其他数据合并,所述其他数据例如是已编码音频数据和/或辅助数据流(未示出源)。
控制器(650)可以管理视频编码器(603)的操作。在编码期间,控制器(650)可以向每个已编码图片分配某一已编码图片类型,这可能影响可以应用于相应的图片的编码技术。例如,通常可以将图片分配为以下图片类型之一:
帧内图片(I图片)可以是可以在不将序列中的任何其他图片用作预测源的情况下进行编码和解码的图片。一些视频编解码器允许不同类型的帧内图片,包括例如独立解码器刷新(Independent Decoder Refresh,“IDR”)图片。本领域技术人员了解I图片的那些变型及其相应的应用和特征。
预测性图片(P图片)可以是可以使用帧内预测或帧间预测进行编码和解码的图片,所述帧内预测或帧间预测使用至多一个运动矢量和参考索引来预测每个块的样本值。
双向预测性图片(B图片)可以是可以使用帧内预测或帧间预测进行编码和解码的图片,所述帧内预测或帧间预测使用至多两个运动矢量和参考索引来预测每个块的样本值。类似地,多个预测性图片可以使用多于两个参考图片和相关联元数据以用于单个块的重建。
源图片通常可以在空间上细分成多个样本块(例如,分别为4×4、8×8、4×8或16×16样本的块),并且逐块进行编码。可以参考其他(已编码的)块对这些块进行预测性编码,所述其他块是通过应用于块的相应图片的编码分配而确定的。例如,可以对I图片的块进行非预测性编码,或者可以参考同一图片的已编码块对I图片的块进行预测性编码(空间预测或帧内预测)。可以参考一个先前已编码的参考图片经由空间预测或经由时间预测对P图片的像素块进行预测性编码。可以参考一个或两个先前已编码的参考图片经由空间预测或经由时间预测对B图片的块进行预测性编码。
视频编码器(603)可以根据诸如ITU-T H.265建议书的预定视频编码技术或标准执行编码操作。在其操作中,视频编码器(603)可以执行各种压缩操作,包括利用输入视频序列中的时间和空间冗余的预测性编码操作。因此,已编码视频数据可以符合由所使用的视频编码技术或标准指定的语法。
在实施方式中,传输器(640)可以连同已编码视频一起传输附加数据。源编码器(630)可以包括这样的数据作为已编码视频序列的一部分。附加数据可以包括时间/空间/SNR增强层、其他形式的冗余数据例如冗余图片以及切片、SEI消息、VUI参数集片段等。
视频可以在时间序列中被捕获为多个源图片(视频图片)。帧内图片预测(通常被简化为帧内预测)利用给定图片中的空间相关性,而帧间图片预测利用图片之间的(时间或其他)相关性。在示例中,编码/解码中的特定图片——其被称为当前图片——被分割成块。在当前图片中的块类似于视频中先前已编码且仍被缓冲的参考图片中的参考块时,可以通过被称作运动矢量的矢量对当前图片中的块进行编码。运动矢量指向参考图片中的参考块,并且在使用多个参考图片的情况下,该运动矢量可以具有识别参考图片的第三维度。
在一些实施方式中,可以将双向预测技术用于帧间图片预测。根据双向预测技术,使用两个参考图片,诸如按解码次序均在视频中的当前图片之前(但按显示次序可能分别是过去和将来)的第一参考图片和第二参考图片。可以通过指向第一参考图片中的第一参考块的第一运动矢量以及指向第二参考图片中的第二参考块的第二运动矢量对当前图片中的块进行编码。可以通过第一参考块和第二参考块的组合来预测该块。
此外,可以将合并模式技术用于帧间图片预测以提高编码效率。
根据本公开内容的一些实施方式,以块为单位执行预测诸如帧间图片预测和帧内图片预测。例如,根据HEVC标准,将视频图片序列中的图片分割成编码树单元(coding treeunit,CTU)以用于压缩,图片中的CTU具有相同大小,诸如64×64像素、32×32像素或16×16像素。一般来说,CTU包括三个编码树块(coding tree block,CTB),即一个亮度CTB和两个色度CTB。每个CTU可以被递归地以四叉树拆分成一个或多个编码单元(CU)。例如,可以将64×64像素的CTU拆分成一个64×64像素的CU、或4个32×32像素的CU、或16个16×16像素的CU。在示例中,分析每个CU以确定用于CU的预测类型,诸如帧间预测类型或帧内预测类型。取决于时间和/或空间可预测性,将CU拆分成一个或更多个预测单元(PU)。通常,每个PU包括亮度预测块(prediction block,PB)和两个色度PB。在实施方式中,以预测块为单位来执行编码(编码/解码)中的预测操作。使用亮度预测块作为预测块的示例,预测块包括像素的值(例如,亮度值)的矩阵,例如8×8像素、16×16像素、8×16像素、16×8像素等。
图7示出了根据本公开内容的另一实施方式的视频编码器(703)的图。视频编码器(703)被配置成接收视频图片序列中的当前视频图片内的样本值的处理块(例如,预测块),并且将处理块编码到作为已编码视频序列的一部分的已编码图片中。在示例中,视频编码器(703)用于代替图4示例中的视频编码器(403)。
在HEVC示例中,视频编码器(703)接收用于处理块诸如HEVC样本的预测块等的样本值的矩阵。视频编码器(703)使用例如率失真优化来确定是使用帧内模式、帧间模式还是双向预测模式对处理块最佳地编码。在将以帧内模式对处理块进行编码的情况下,视频编码器(703)可以使用帧内预测技术将处理块编码到已编码图片中;而在将以帧间模式或双向预测模式对处理块进行编码的情况下,视频编码器(703)可以分别使用帧间预测或双向预测技术将处理块编码到已编码图片中。在某些视频编码技术中,合并模式可以是帧间图片预测子模式,其中,在不借助一个或更多个运动矢量预测器外部的已编码运动矢量分量的情况下根据所述预测器得出运动矢量。在某些其他视频编码技术中,可以存在适用于主题块的运动矢量分量。在示例中,视频编码器(703)包括其他部件,诸如,用于确定处理块的模式的模式决策模块(未示出)。
在图7示例中,视频编码器(703)包括如图7所示的耦接在一起的帧间编码器(730)、帧内编码器(722)、残差计算器(723)、开关(726)、残差编码器(724)、通用控制器(721)和熵编码器(725)。
帧间编码器(730)被配置成接收当前块(例如,处理块)的样本、将该块与参考图片中的一个或更多个参考块(例如,先前图片和后来图片中的块)进行比较、生成帧间预测信息(例如,根据帧间编码技术的冗余信息描述、运动矢量、合并模式信息)、以及基于帧间预测信息使用任何合适的技术计算帧间预测结果(例如,已预测块)。在一些示例中,参考图片是基于已编码的视频信息解码的已解码参考图片。
帧内编码器(722)被配置成接收当前块(例如,处理块)的样本、在一些情况下将该块与同一图片中已经编码的块进行比较、在变换之后生成量化系数、以及在一些情况下还生成帧内预测信息(例如,根据一个或更多个帧内编码技术的帧内预测方向信息)。在示例中,帧内编码器(722)还基于帧内预测信息和同一图片中的参考块计算帧内预测结果(例如,已预测块)。
通用控制器(721)被配置成确定通用控制数据,并且基于通用控制数据来控制视频编码器(703)的其他部件。在示例中,通用控制器(721)确定块的模式,并且基于该模式将控制信号提供至开关(726)。例如,当模式是帧内模式时,通用控制器(721)控制开关(726)选择帧内模式结果供残差计算器(723)使用,并且控制熵编码器(725)选择帧内预测信息并且将帧内预测信息包括在比特流中;并且当模式是帧间模式时,通用控制器(721)控制开关(726)选择帧间预测结果供残差计算器(723)使用,并且控制熵编码器(725)选择帧间预测信息并且将帧间预测信息包括在比特流中。
残差计算器(723)被配置成计算所接收的块与选自帧内编码器(722)或帧间编码器(730)的预测结果之间的差(残差数据)。残差编码器(724)被配置成基于残差数据进行操作以对残差数据进行编码从而生成变换系数。在示例中,残差编码器(724)被配置成将残差数据从空间域转换至频域,并且生成变换系数。然后,变换系数经受量化处理以获得量化的变换系数。在各种实施方式中,视频编码器(703)还包括残差解码器(728)。残差解码器(728)被配置成执行逆变换并生成已解码残差数据。已解码残差数据可以被帧内编码器(722)和帧间编码器(730)适当地使用。例如,帧间编码器(730)可以基于已解码残差数据和帧间预测信息生成已解码块,并且帧内编码器(722)可以基于已解码残差数据和帧内预测信息生成已解码块。在一些示例中,适当处理已解码块以生成已解码图片,并且这些已解码图片可以缓冲在存储器电路(未示出)中并用作参考图片。
熵编码器(725)被配置成将比特流格式化以包括已编码块。熵编码器(725)被配置成包括根据诸如HEVC标准的合适的标准的各种信息。在示例中,熵编码器(725)被配置成在比特流中包括通用控制数据、所选择的预测信息(例如,帧内预测信息或帧间预测信息)、残差信息以及其他合适的信息。注意,根据所公开的主题,当在帧间模式或双预测模式的合并子模式下对块进行编码时,不存在残差信息。
图8示出了根据本公开内容的另一实施方式的视频解码器(810)的图。视频解码器(810)被配置成接收作为已编码视频序列的一部分的已编码图片,并且对已编码图片进行解码以生成重建的图片。在示例中,视频解码器(810)用于代替图4示例中的视频解码器(410)。
在图8示例中,视频解码器(810)包括如图8所示的耦接在一起的熵解码器(871)、帧间解码器(880)、残差解码器(873)、重建模块(874)和帧内解码器(872)。
熵解码器(871)可以被配置成根据已编码图片重建表示构成该已编码图片的语法元素的某些符号。这样的符号可以包括例如对块进行编码的模式(诸如例如,帧内模式、帧间模式、双预测模式、后两者的合并子模式或另一子模式)、可以分别标识供帧内解码器(872)或帧间解码器(880)进行预测所使用的某些样本或元数据的预测信息(诸如例如,帧内预测信息或帧间预测信息)、呈例如量化的变换系数的形式的残差信息等。在示例中,当预测模式是帧间模式或双预测模式时,将帧间预测信息提供至帧间解码器(880);而当预测类型是帧内预测类型时,将帧内预测信息提供至帧内解码器(872)。残差信息可以经受逆量化并且被提供至残差解码器(873)。
帧间解码器(880)被配置成接收帧间预测信息,并且基于帧间预测信息生成帧间预测结果。
帧内解码器(872)被配置成接收帧内预测信息,并且基于帧内预测信息生成预测结果。
残差解码器(873)被配置成执行逆量化以提取去量化的变换系数,并且对去量化的变换系数进行处理以将残差从频域转换到空间域。残差解码器(873)还可能需要某些控制信息(以包括量化器参数(Quantizer Parameter,QP)),并且该信息可以由熵解码器(871)提供(由于这仅是低量控制信息,因此未描绘数据路径)。
重建模块(874)被配置成在空间域中将由残差解码器(873)输出的残差与预测结果(由帧间预测模块或帧内预测模块输出,可以视情况而定)进行组合以形成重建的块,该重建的块可以是重建的图片的一部分,该重建的图片继而可以是重建的视频的一部分。注意,可以执行其他合适的操作诸如解块操作等来改善视觉质量。
注意,可以使用任何合适的技术来实现视频编码器(403)、(603)和(703)以及视频解码器(410)、(510)和(810)。在实施方式中,可以使用一个或更多个集成电路来实现视频编码器(403)、(603)和(703)以及视频解码器(410)、(510)和(810)。在另一实施方式中,可以使用执行软件指令的一个或更多个处理器来实现视频编码器(403)、(603)和(703)以及视频解码器(410)、(510)和(810)。
例如,由视频比特流表示的视频源可以是按编码次序(例如,编码次序、解码次序)的图片序列。视频源(例如,已编码图片、图片序列)可以包括一个或更多个样本阵列(也称为分量或平面),诸如(1)仅亮度(Y)(单色)分量(或单色分量)、(2)一个亮度分量和两个色度分量(例如,YCbCr或YCgCo)、(3)绿色分量、蓝色分量和红色分量(GBR,也称为RGB)、以及(4)表示其他未指定单色或三色刺激颜色采样的阵列(例如,YZX,也称为XYZ)。
如上所述,视频源可以包括多个分量,诸如一个亮度分量和两个色度分量(例如,YCbCr或YCgCo)、三个颜色分量(例如,RGB)等。视频源的分量可以指亮度分量(例如,Y)或色度分量(例如,Cb、Cr、R、G或B)。
当视频源(例如,视频序列)包括多个分量时,可以对多个分量进行联合编码,例如,多个分量中的一个(例如,第一色度分量)的编码可以基于或取决于多个分量中的另一个(例如,第二色度分量或亮度分量)。例如,当色度分量与多个分量中的一个联合编码或基于多个分量中的一个进行编码时,视频源中存在色度分量(例如,色度分量存在于联合编码的多个分量中)。
可替选地,当视频源(例如,视频序列)包括多个分量时,可以对多个分量进行独立编码。例如,多个分量中的一个(例如,第一色度分量)的编码不基于或不取决于多个分量中的另一个(例如,第二色度分量或亮度分量)。因此,多个分量中的一个(例如,第一色度分量)的编码独立于多个分量中的另一个(例如,第二色度分量或亮度分量)。多个分量可以被称为单独编码的多个分量。在示例中,单独编码的多个分量被称为单独编码的多个颜色平面或颜色分量。
在示例中,当视频源仅包括单色分量时,不存在色度分量。可替选地,当视频源中的多个分量被独立或单独编码时,不存在色度分量。在示例中,当视频源中的多个分量被独立编码时,多个分量中的每一个都可以被视为单色分量(例如,亮度分量),并且因此视频源中不存在色度分量(例如,基于多个分量中的一个编码的色度分量)。当视频源中的多个分量被独立编码时,不需要各种色度相关编码工具,这是因为多个分量中的每一个都可以被视为单色分量。
在一些示例中,要编码的视频序列包括多个颜色平面,并且多个颜色平面的不同组合可以被联合编码。在示例中,颜色平面指亮度分量或色度分量。在一些应用中,视频是单色的,或者视频的颜色平面要被独立编码,因此某些联合颜色平面编码工具不适用。为了支持单色平面将被编码或颜色平面将被独立编码的应用,本公开内容的各方面可以提供例如超出通用视频编码(VVC)的语法和语义,以在需要时禁用一个或更多个联合颜色平面编码工具。
色度格式索引(例如,chroma_format_idc)可以指示例如在(一个或多个)色度块与对应的亮度块之间的色度子采样格式(或色度格式)。在示例中,当色度格式索引(例如,chroma_format_idc)为0时,色度格式可以是与仅具有一个样本阵列的单色采样对应的“单色”,其名义上被认为是亮度阵列。当色度格式索引为1时,色度格式可以是4:2:0(例如,两个色度阵列中的每一个都具有对应亮度阵列的一半高度和一半宽度)。当色度格式索引为2时,色度格式可以是4:2:2(例如,两个色度阵列中的每一个都具有亮度阵列的相同高度和一半宽度)。当色度格式索引为3时,色度格式可以是4:4:4,这取决于单独的颜色平面标志(例如,separate_colour_plane_flag)的值。例如,如果单独的颜色平面标志等于0,则色度格式为4:4:4(例如,两个色度阵列中的每一个都具有与亮度阵列相同的高度和宽度)。否则,单独的颜色平面标志等于1,可以将三个颜色平面单独处理为三个单色采样图片。
在一些示例中,诸如在VVC中,支持(i)编码单色视频和/或(ii)单独编码4:4:4色度格式视频的三个颜色分量。为了支持(i)单色视频的编码和/或(ii)4:4:4色度格式视频的三个颜色分量的单独编码,例如,可以在VVC中定义变量(或色度阵列类型)(例如,ChromaArrayType)以启用或禁用相关编码工具。基于输入视频是否为单色和/或输入视频的颜色分量是否需要单独且独立地编码,相关编码工具可能适用或不适用。在示例中,当输入视频为单色和/或当输入视频的颜色分量需要单独且独立地编码时,相关编码工具不适用并且因此被禁用。否则,相关编码工具可以适用并且因此被启用。
在示例中,诸如在VVC中,基于单独的颜色平面标志(例如,separate_colour_plane_flag)的值来分配色度阵列类型(例如,ChromaArrayType)的值。在示例中,单独的颜色平面标志(例如,separate_colour_plane_flag)指示是否使用单独编码的颜色平面。如果单独的颜色平面标志(例如,separate_colour_plane_flag)等于0,指示未使用单独编码的颜色平面,则色度阵列类型(例如,ChromaArrayType)被设置成等于色度格式(也称为色度子采样格式,例如,由chroma_format_idc指定)。否则,如果单独的颜色平面标志(例如,separate_colour_plane_flag)等于1,指示使用单独编码的颜色平面,则色度阵列类型(例如,ChromaArrayType)被设置成0。
当色度阵列类型(例如,ChromaArrayType)为0时,输入视频可以是单色的,或者可以具有单独编码的颜色平面的4:4:4的色度格式(或4:4:4色度格式)。在一些示例中,期望禁用某些编码工具,这些编码工具不适用于单色视频和/或每个颜色分量被按照单色编码的视频。在一些示例中,诸如在VVC中,当色度阵列类型(例如,ChromaArrayType)为0时,不能禁用某些编码工具中的一个或更多个。例如,某些编码工具包括由联合编码标志(例如,sps_joint_cbcr_enabled_flag)启用的编码工具,该联合编码标志可以分别指示色度残差的联合编码和PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)。PPS联合偏移存在标志可以指示PPS联合CbCr QP偏移值和联合CbCr QP偏移列表是否存在于PPS RBSP语法结构中。
本公开内容的各方面提供了用于禁用一些编码工具的实施方式/方法,例如,当输入视频是单色时,输入视频具有单独编码的多个分量(例如,多个分量中的一个的编码独立于多个分量中的另一个)。在示例中,输入视频具有单独编码的颜色平面的4:4:4的色度格式。
图9A至图9G示出了例如来自VVC的示例性序列参数集(SPS)原始字节序列有效载荷(RBSP)语法的表格。
图10A至图10D示出了例如来自VVC的示例性图片参数集(PPS)RBSP语法的表格。
图11A至图11B示出了例如来自VVC的示例性自适应环路滤波器(ALF)数据语法的表格。
图12示出了示例性SPS RBSP语法。
参照图9A至图9G和图12所示的表格,联合编码标志(例如,sps_joint_cbcr_enabled_flag)可以指示色度残差的联合编码。联合编码标志(例如,sps_joint_cbcr_enabled_flag)等于0可以指定禁用色度残差的联合编码。联合编码标志(例如,sps_joint_cbcr_enabled_flag)等于1可以指定启用色度残差的联合编码。当联合编码标志(例如,sps_joint_cbcr_enabled_flag)不存在时,联合编码标志(例如,sps_joint_cbcr_enabled_flag)可以被推断为默认值,诸如0。
参照图9D中的框(910),无论色度阵列类型(例如,ChromaArrayType)的值如何,都可以用信号通知联合编码标志(例如,sps_joint_cbcr_enabled_flag)。参照图12中的框(1201)至(1202),用信号通知联合编码标志(例如,sps_joint_cbcr_enabled_flag)取决于色度阵列类型(例如,ChromaArrayType)。当色度阵列类型(例如,ChromaArrayType)等于0时,例如在图12所示的SPS中不解析联合编码标志(例如,sps_joint_cbcr_enabled_flag),并且可以将其推断为0。因此,色度残差的联合编码(例如,联合Cb和Cr残差编码)作为色度残差编码被禁用以避免不必要的解码过程。
在一些示例中,当在视频比特流中不存在色度分量时,在PPS、自适应参数集(APS)等中用信号通知色度存在标志以不对(一个或多个)色度相关的语法元素进行解码。色度存在标志可以在PPS中作为PPS色度存在标志(例如,pps_chromat_present_flag)、在APS中作为APS色度存在标志(例如,aps_chromat_present_flag)等用信号通知以指示在视频比特流中是否存在色度分量,诸如在视频序列中是否存在。在示例中,当色度分量与另一分量(例如,亮度分量、另一色度分量)联合编码时,存在色度分量。
PPS色度存在标志(例如,pps_chromat_present_flag)可以指定是否存在色度分量。当PPS色度存在标志(例如,pps_chromat_present_flag)等于1时,存在色度分量,并且在PPS中可以存在色度相关的语法。PPS色度存在标志(例如,pps_chromat_present_flag)等于0可以指定不存在色度分量。比特流一致性的要求可以是当色度阵列类型(例如,ChromaArrayType)等于0时,PPS色度存在标志(例如,pps_chromat_present_flag)等于0。
APS色度存在标志(例如,aps_chroma_present_flag)可以指定是否存在色度分量。当APS色度存在标志(例如,aps_chroma_present_flag)等于1时,存在色度分量,并且因此在APS中可以存在(一个或多个)色度相关的语法。APS色度存在标志(例如,aps_chroma_present_flag)等于0可以指定不存在色度分量并且不存在(一个或多个)色度相关的语法。比特流一致性的要求可以是当色度阵列类型(例如,ChromaArrayType)等于0时,APS色度存在标志(例如,aps_chroma_present_flag)等于0。
为了确保色度阵列类型(例如,ChromaArrayType)和相关语法元素的信令中不存在冲突,图9A至图9G中的SPS RBSP语法、图10A至图10D中的PPS RBSP语法以及图11A至图11B中的ALF数据语法可以修改为如图13至图16所示。使用带有指示已删除文本的删除线的框和文本突出显示更改。
参照图9E至图9F中的框(911)至(912),色度格式(例如,chroma_format_idc)等于3可以指4:4:4的色度格式,其中单独的颜色平面标志(例如,separate_colour_plane_flag)为0或1。因此,用信号通知指示(一个或多个)仅色度编码工具和/或使用(一个或多个)色度分量的编码工具的基于SPS块的增量脉冲编码调制(block-based delta pulsecode modulation,BDPCM)色度启用标志(例如,sps_bdpcm_chroma_enabled_flag)、SPS调色板启用标志(例如,sps_palette_enabled_flag)和SPS自适应颜色变换(adaptive colortransform,ACT)启用标志(例如,sps_act_enabled_flag),而不管单独的颜色平面标志(例如,separate_colour_plane_flag)的值。分别比较图9E至图9F中的框(911)至(912)和图13中的框(1301)至(1302),图13中的色度阵列类型(例如,ChromaArrayType)可以替换图9E至图9F所示的表格中的色度格式(例如,chroma_format_idc),并且因此图13中的语法“ChromaArrayType==3”可以替换图9E至图9F所示的表格中的语法“chroma_format_idc==3”。如上所述,色度阵列类型(例如,ChromaArrayType)等于3可以指示色度格式为4:4:4且单独的颜色平面标志(例如,separate_colour_plane_flag)为0。因此,可以仅在色度阵列类型(例如,ChromaArrayType)为3时(例如,当存在色度分量且色度格式为4:4:4时)用信号通知SPS BDPCM色度启用标志(例如,sps_bdpcm_chroma_enabled_flag)、SPS调色板启用标志(例如,sps_palette_enabled_flag)和SPS ACT启用标志(例如,sps_act_enabled_flag)。在示例中,当不存在色度分量时,色度阵列类型(例如,ChromaArrayType)为0,并且因此不用信号通知SPS BDPCM色度启用标志(例如,sps_bdpcm_chroma_enabled_flag)、SPS调色板启用标志(例如,sps_palette_enabled_flag)和SPS ACT启用标志(例如,sps_act_enabled_flag)。因此,当不存在色度分量时,不用信号通知与色度编码工具相关的标志,并且因此可以减少信令开销并且可以提高编码效率。
PPS QP偏移(例如,pps_cb_qp_offset和pps_cr_qp_offset)可以分别指定用于得出色度QP(例如,Qp'Cb和Qp'Cr)的亮度QP(例如,Qp'Y)的偏移。PPS QP偏移(例如,pps_cb_qp_offset和pps_cr_qp_offset)的值可以在-12至+12的范围内,包括端值。当色度阵列类型(例如,ChromaArrayType)等于0时,在解码过程中不使用PPS QP偏移(例如,pps_cb_qp_offset和pps_cr_qp_offset),并且解码器可以忽略PPS QP偏移的值。
PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)等于1可以指定在PPS RBSP语法结构中存在PPS联合CbCr QP偏移值(例如,pps_joint_cbcr_qp_offset_value)和联合CbCr QP偏移列表(例如,joint_cbcr_qp_offset_list[i])。PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)等于0可以指定在PPSRBSP语法结构中不存在PPS联合CbCr QP偏移值(例如,pps_joint_cbcr_qp_offset_value)和联合CbCr QP偏移列表(例如,joint_cbcr_qp_offset_list[i])。当PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)不存在时,可以推断PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)等于0。
PPS切片标志(例如,pps_slice_chroma_qp_offsets_present_flag)等于1可以指示在相关联的切片报头中存在切片Cb QP偏移(例如,slice_cb_qp_offset)语法元素和切片Cr QP偏移(例如,slice_cr_qp_offset)语法元素。PPS切片标志(例如,pps_slice_chroma_qp_offsets_present_flag)等于0可以指示在相关联的切片报头中不存在切片CbQP偏移(例如,slice_cb_qp_offset)语法元素和切片Cr QP偏移(例如,slice_cr_qp_offset)语法元素。当PPS切片标志(例如,pps_slice_chroma_qp_offsets_present_flag)不存在时,可以推断PPS切片标志(例如,pps_slice_chroma_qp_offsets_present_flag)等于0。
PPS CU标志(例如,pps_cu_chroma_qp_offset_list_enabled_flag)等于1可以指定在参照PPS的图片报头中存在帧内切片(例如,pic_cu_chroma_qp_offset_subdiv_intra_slice)语法元素和帧间切片(例如,pic_cu_chroma_qp_offset_subdiv_inter_slice)语法元素,并且CU标志(例如,cu_chroma_qp_offset_flag)可以存在于变换单元语法和调色板编码语法中。PPS CU标志(例如,pps_cu_chroma_qp_offset_list_enabled_flag)等于0可以指定在参照PPS的图片报头中不存在帧内切片(例如,pic_cu_chroma_qp_offset_subdiv_intra_slice)语法元素和帧间切片(例如,pic_cu_chroma_qp_offset_subdiv_inter_slice)语法元素,并且CU标志(例如,cu_chroma_qp_offset_flag)不存在于变换单元语法和调色板编码语法中。当PPS CU标志(例如,pps_cu_chroma_qp_offset_list_enabled_flag)不存在时,可以推断PPS CU标志(例如,pps_cu_chroma_qp_offset_list_enabled_flag)等于0。
参照图10C中的框(1001)至(1002),可以在PPS RSRP语法中用信号通知某些PPS语法,诸如指示色度相关信息的针对相应的色度分量(例如,Cb分量和Cr分量)的PPS量化参数(QP)偏移(例如,pps_cb_qp_offset和pps_cr_qp_offset)、PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)、PPS切片标志(例如,pps_slice_chroma_qp_offsets_present_flag)和/或PPS CU标志(例如,pps_cu_chroma_qp_offset_list_enabled_flag),例如,是否存在色度分量,如图10A至图10D所示。参照图14,当PPS色度存在标志(例如,pps_chromat_present_flag)为1指示存在色度分量时,可以在PPS RSRP语法中用信号通知PPS语法,诸如指示色度相关信息的PPS QP偏移(例如,pps_cb_qp_offset和pps_cr_qp_offset)、PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)、PPS切片标志(例如,pps_slice_chroma_qp_offsets_present_flag)和/或PPS CU标志(例如,pps_cu_chroma_qp_offset_list_enabled_flag)。否则,当PPS色度存在标志(例如,pps_chromat_present_flag)为0指示不存在色度分量时,不用信号通知PPS语法。因此,可以提高编码效率。
当色度阵列类型(例如,ChromaArrayType)为0时,视频源可以具有单个分量(例如,单色分量)或者视频源可以具有带有多个分量的色度格式4:4:4,并且多个分量被单独或独立编码。因此,不存在例如基于另一分量编码的色度分量。因此,当色度阵列类型(例如,ChromaArrayType)为0时,视频分量可以被编码为好像视频分量是单色的或具有单独编码的颜色平面的色度格式4:4:4。
图17示出了概述根据本公开内容的实施方式的处理(1700)的流程图。例如,当PPS色度存在标志(例如,pps_chroma_present_flag)为0时,指示不存在色度分量,可以禁用色度QP相关语法解析,以避免不必要的解码过程。可以推断以下语法元素为0:PPS QP偏移(例如,pps_cb_qp_offset和pps_cr_qp_offset)、PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)、PPS切片标志(例如,pps_slice_chroma_qp_offsets_present_flag)和/或PPS CU标志(例如,pps_cu_chroma_qp_offset_list_enabled_flag),并且因此这些语法元素不应用于解码器侧的QP推导过程中。
在示例中,处理(1700)在(S1701)处开始并且进行至(S1710)。
在(S1710)处,可以确定PPS色度存在标志是否为1。当确定PPS色度存在标志不为1时,处理(1700)进行至(S1720)。否则,当确定PPS色度存在标志为1时,处理(1700)进行至(S1730)。
在(S1720)处,可以推断色度QP相关语法元素,例如PPS QP偏移(例如,pps_cb_qp_offset和pps_cr_qp_offset)、PPS联合偏移存在标志(例如,pps_joint_cbcr_qp_offset_present_flag)、PPS切片标志(例如,pps_slice_chroma_qp_offsets_present_flag)、PPSCU标志(例如,pps_cu_chroma_qp_offset_list_enabled_flag)等中的一个为0。处理(1700)进行至(S1740)。
在(S1740)处,不应用为0的色度QP相关语法元素。处理(1700)进行至(S1799)并且终止。
在(S1730)处,可以对色度QP相关语法元素进行解码。处理(1700)进行至(S1750)。
在(S1750)处,可以确定色度QP相关语法元素是否不为0。当确定色度QP相关语法元素为0时,处理(1700)进行至(S1740)。否则,当确定色度QP相关语法元素不为0时,处理(1700)进行至(S1760)。
在(S1760)处,可以应用不为0的色度QP相关语法元素。处理(1700)进行至(S1799)并且终止。
ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)等于1可以指定用信号通知ALF色度滤波器。ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)等于0可以指定不用信号通知ALF色度滤波器。当ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)不存在时,可以推断ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)等于0。
图11A中的框(1101)指示在ALF数据语法中用信号通知ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)。图11B中的框(1102)指示当ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)为1时,可以解析对应ALF色度滤波器的ALF色度滤波器信息。参照图15中的框(1501),在APS中用信号通知ALF色度存在标志(例如,alf_chroma_present_flag)并且可以指示是否存在色度分量。参照图16中的框(1601),当ALF色度存在标志(例如,alf_chroma_present_flag)为1时,指示存在色度分量,用信号通知ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)。此外,参照框(1602),当ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)为1时,可以解析对应ALF色度滤波器的ALF色度滤波器信息。可替选地,当ALF色度存在标志(例如,alf_chroma_present_flag)为0时,指示不存在色度分量,不用信号通知ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)。随后,不解析对应ALF色度滤波器的ALF色度滤波器信息,并且因此减少信令开销并且提高编码效率。
图18示出了概述根据本公开内容的实施方式的处理(1800)的流程图。例如,当APS色度存在标志(例如,aps_chroma_present_flag)为0时,可以禁用作为色度滤波器的ALF色度滤波器,以避免不必要的解码过程。因此,可以推断ALF色度滤波器信号标志(例如,alf_chroma_filter_signal_flag)为0。
在示例中,处理(1800)在(S1801)处开始并且进行至(S1810)。
在(S1810)处,可以确定APS色度存在标志是否为1。当确定APS色度存在标志不为1并且因此不存在色度分量时,处理(1800)进行至(S1820)。否则,当确定APS色度存在标志为1时,处理(1800)进行至(S1830)。
在(S1820)处,可以推断ALF色度滤波器信号标志为0。处理(1800)进行至(S1840)。
在(S1840)处,由于不存在色度分量,因此不将ALF色度滤波器应用于色度分量。处理(1800)进行至(S1899)并且终止。
在(S1830)处,可以对ALF色度滤波器信号标志进行解码。处理(1800)进行至(S1850)。
在(S1850)处,可以确定ALF色度滤波器信号标志是否为1。当确定ALF色度滤波器信号标志不为1(例如,为0)时,处理(1800)进行至(S1840)。否则,当确定ALF色度滤波器信号标志为1时,处理(1800)进行至(S1860)。
在(S1860)处,可以将ALF色度滤波器应用于存在的色度分量。处理(1800)进行至(S1899)并且终止。
图19示出了概述根据本公开内容的实施方式的处理(1900)的流程图。在一些示例中,诸如在VVC中,某些编码工具(例如,用于色度的BDPCM、调色板模式编码和ACT)仅在色度格式是无单独颜色平面的4:4:4时应用。当色度格式为有单独颜色平面的4:4:4(例如,色度分量被编码为亮度分量)时,与某些编码工具相关的语法元素不会被解析。因此,仅在色度阵列类型(例如,ChromaArrayType)等于3时,可以对语法元素进行解析以避免不必要的解码过程。
在示例中,处理(1900)在(S1901)处开始并且进行至(S1910)。
在(S1910)处,可以确定色度阵列类型是否为3。色度阵列类型为3可以指示无单独编码平面的4:4:4的色度格式。当确定色度阵列类型不是无单独编码平面的4:4:4的色度格式时,处理(1900)进行至(S1920)。否则,当确定色度阵列类型为无单独编码平面的4:4:4的色度格式时,处理(1900)进行至(S1930)。
在(S1920)处,可以推断与无单独颜色平面的4:4:4的色度格式相关的语法元素诸如SPS BDPCM色度启用标志(例如,sps_bdpcm_chroma_enabled_flag)、SPS调色板启用标志(例如,sps_palette_enabled_flag)或SPS ACT启用标志(例如,sps_act_enabled_flag)为0。处理(1900)进行至(S1940)。
在(S1940)处,不应用与无单独颜色平面的4:4:4的色度格式相关的编码工具(例如,BDPCM、调色板编码或ACT)。处理(1900)进行至(S1999)并且终止。
在(S1930)处,可以对与无单独颜色平面的4:4:4的色度格式相关的语法元素进行解码。处理(1900)进行至(S1950)。
在(S1950)处,可以确定语法元素是否为1。当确定语法元素不为1(例如,等于0)时,处理(1900)进行至(S1940)。否则,当确定语法元素为1时,处理(1900)进行至(S1960)。
在(S1960)处,可以应用与无单独颜色平面的4:4:4的色度格式相关的编码工具。处理(1900)进行至(S1999)并且终止。
当在视频比特流中不存在色度分量时,诸如单色或具有单独编码的颜色平面的4:4:4,期望不对高级语法诸如SPS、PPS、APS、图片报头等中的色度相关语法元素进行解码。
为了确保色度阵列类型(例如,ChromaArrayType)与相关语法元素之间的信令中不存在冲突,本公开内容中的实施方式和/或方法可以修改SPS RBSP语法、PPS RBSP语法和/或ALF数据语法。
图20示出了根据本公开内容的实施方式的亮度映射与色度缩放(LMCS)编码工具的示例性架构(例如,在解码器侧)。在示例中,诸如在VVC中,LMCS编码工具作为新处理块被添加为环路滤波器之前。LMCS编码工具可以包括两个部件:1)基于自适应分段线性模型的亮度分量的环内映射;2)应用于(一个或多个)色度分量的亮度相关色度残差缩放(CRS)。多个块(例如,块(2011)、(2012)和(2015))可以指示在映射域中在哪里应用处理并且可以包括逆量化和逆变换块(2011)、亮度帧内预测块(2015)和可以将亮度预测Y'pred与亮度残差Yres一起添加的重建块(2012)。亮度预测Y'pred可以来自亮度信号Ypred的亮度帧内预测块(2015)或前向映射块(2018)。亮度信号Ypred可以由运动补偿预测块(2016)生成,运动补偿预测块(2016)可以具有来自解码图片缓冲器(DPB)(2014)的输入。DPB(2014)可以是可以存储已解码图片的缓冲器。
多个块(例如,块(2002)、(2003)、(2005)、(2006))可以指示在非映射域中在哪里应用处理并且可以包括环路滤波器(2003)诸如去块、ALF和SAO、运动补偿预测块(2006)、色度帧内预测块(2005)、可以将色度预测Cpred与色度残差Cres一起添加的重建块(2002)以及将已解码图片作为参考图片存储在DPB(2004)中。LMCS功能块可以包括亮度信号Ypred的前向映射块(2018)、亮度信号的逆向映射块(2017)和亮度相关色度缩放处理块(2001)。逆量化和逆变换块(2011)可以向亮度相关色度缩放处理块(2001)提供色度残差缩放参数(例如,Cresscale)。亮度相关色度缩放处理块(2001)可以基于色度残差缩放参数(例如,Cresscale)和参数(例如,cScalelnv)生成色度残差。参数(例如,cScalelnv)可以由重建块(2012)确定(例如,基于(一个或多个)重建的亮度邻居,诸如当前虚拟管线数据单元(VPDU)的上邻居和/或左邻居)。逆向映射块(2017)的输出可以由环路滤波器(2013)过滤,然后可以存储在DPB(2014)中。可以使用SPS标志在序列级别上启用和/或禁用LMCS编码工具。
根据本公开内容的各方面,可以根据已编码视频比特流对第一语法元素进行解码。第一语法元素可以指示已编码视频比特流中的第一分量的编码是否是基于已编码视频比特流中的第二分量。可以基于第一语法元素来确定是否对用于色度相关编码工具的一个或更多个第二语法元素进行解码。色度相关编码工具可以是仅用于(一个或多个)色度分量的编码工具,或使用(一个或多个)色度分量的编码工具。在一些示例中,色度相关编码工具是(i)LMCS编码工具和(ii)交叉分量自适应环路滤波器(CC-ALF)中的一个。
可以在第一语法元素指示第一分量的编码是基于已编码视频比特流中的第二分量并且第一分量是色度分量的情况下,对用于色度相关编码工具的一个或更多个第二语法元素进行解码。在第一语法元素指示第一分量在已编码视频比特流中独立编码的情况下,例如,在第一分量的编码不是基于已编码视频比特流中的第二分量的情况下,不对用于色度相关编码工具的一个或更多个第二语法元素进行解码。
可以在APS中用信号通知第一语法元素。第一语法元素可以是APS色度存在标志(例如,aps_chroma_present_flag)。第一语法元素可以在序列级别上指示第一分量的编码是否是基于第二分量。
第一语法元素可以指示在已编码视频比特流中是否存在色度分量。
当第一语法元素指示第一分量基于第二分量被编码时,第二分量可以是已编码视频比特流中的第二色度分量和亮度分量中的一个。因此,在已编码视频比特流中存在色度分量(例如,第一色度分量)。
当第一语法元素指示第一分量被独立编码,例如,第一分量的编码不是基于第二分量的情况下,(i)第一分量是已编码视频序列中的唯一分量或(ii)已编码视频比特流至少包括第一分量和第二分量,并且第一分量独立于第二分量被编码。因此,确定在已编码视频比特流中不存在色度分量。例如,已编码视频比特流至少包括独立编码的第一分量和第二分量。如果第一分量是色度分量,则可以将第一分量处理为单色分量或亮度分量,而无需使用色度相关编码工具。因此,不存在要基于已编码视频比特流中的另一分量来编码的色度分量。
在示例中,已编码视频比特流包括具有4:4:4的色度格式的第一色度分量、第二色度分量和亮度分量。第一分量是第一色度分量。第二分量是第二色度分量或亮度分量。第一色度分量、第二色度分量和亮度分量被彼此独立地编码。
可以在第一语法元素指示第一分量在已编码视频比特流中被独立编码的情况下,例如,在第一分量的编码不是基于已编码视频比特流中的第二分量的情况下,禁用色度相关编码工具。
在实施方式中,色度相关编码工具是LMCS编码工具。第一语法元素可以指示第一色度分量是基于第二分量被编码。用于LMCS编码工具的一个或更多个第二语法元素可以包括指示用于LMCS色度残差缩放(CRS)的变量(例如,lmcsDeltaCrs)的绝对值的第一LMCS参数。当用于LMCS CRS的变量的绝对值大于0时,可以对用于LMCS编码工具的第二LMCS参数进行解码。第二LMCS参数可以指示用于LMCS CRS的变量的符号。一个或更多个第二语法元素可以包括第二LMCS参数。当用于LMCS CRS的变量的绝对值不大于0时,不对用于LMCS编码工具的第二LMCS参数进行解码。
LMCS是残差缩放工具并且可以应用于亮度分量和一个或更多个色度分量。当视频比特流中不存在色度分量时,例如在APS中不需要用于LMCS编码工具的色度相关语法元素(例如,第一LMCS参数、第二LMCS参数)。
第一LMCS参数(例如,lmcs_delta_abs_crs)可以指定用于LMCS CRS的变量(例如,lmcsDeltaCrs)的绝对码字值。当第一LMCS参数(例如,lmcs_delta_abs_crs)不存在时,可以推断第一LMCS参数(例如,lmcs_delta_abs_crs)等于0。
第二LMCS参数(例如,lmcs_delta_sign_crs_flag)可以指定变量(例如,lmcsDeltaCrs)的符号。当第二LMCS参数(例如,lmcs_delta_sign_crs_flag)不存在时,可以推断第二LMCS参数(例如,lmcs_delta_sign_crs_flag)等于0。
根据本公开内容的各方面,可以不用信号通知用于LMCS编码工具的色度相关语法元素(例如,第一LMCS参数、第二LMCS参数)。当APS色度存在标志(例如,aps_chroma_present_flag)等于1时,存在色度分量(例如,色度分量将基于已编码视频比特流中的另一分量进行编码),并且因此可以在视频比特流中用信号通知用于LMCS编码工具的色度相关语法。当APS色度存在标志(例如,aps_chroma_present_flag)等于0时,不存在色度分量,并且在视频比特流中不用信号通知用于LMCS编码工具的色度相关语法。因此,色度相关语法不被解码器解析或解码。因此,当不需要用于LMCS编码工具的色度相关语法元素时,可以通过不用信号通知用于LMCS编码工具的色度相关语法元素来减少信令开销,并且可以提高编码效率。
图21示出了根据本公开内容的实施方式的示例性LMCS数据语法。参照框(2101),可以基于APS色度存在标志(例如,aps_chroma_present_flag)来确定是否用信号通知用于LMCS编码工具的色度相关语法。当APS色度存在标志(例如,aps_chroma_present_flag)等于1时,存在色度分量。在示例中,在视频比特流中用信号通知用于LMCS编码工具的一个色度相关语法元素诸如第一LMCS参数(例如,lmcs_delta_abs_crs)。可以基于第一LMCS参数(例如,lmcs_delta_abs_crs)来确定是否用信号通知用于LMCS编码工具的(一个或多个)其他色度相关语法元素。在示例中,当第一LMCS参数(例如,lmcs_delta_abs_crs)大于0时,用信号通知作为用于LMCS编码工具的色度相关语法元素的第二LMCS参数(例如,lmcs_delta_sign_crs_flag)。否则,不用信号通知第二LMCS参数(例如,lmcs_delta_sign_crs_flag)。
参照框(2101),当APS色度存在标志(例如,aps_chroma_present_flag)等于0时,不存在色度分量。在视频比特流中不用信号通知用于LMCS编码工具的色度相关语法元素诸如第一LMCS参数(例如,lmcs_delta_abs_crs)和第二LMCS参数(例如,lmcs_delta_sign_crs_flag)。
在实施方式中,色度相关编码工具是CC-ALF。第一语法元素指示第一色度分量基于第二分量被编码。用于CC-ALF的一个或更多个第二语法元素可以包括第一CC-ALF标志和第二CC-ALF标志。第一CC-ALF标志可以指示在已编码视频比特流中是否用信号通知第一CC-ALF,而第二CC-ALF标志可以指示在已编码视频比特流中是否用信号通知第二CC-ALF。用于第一CC-ALF的语法元素可以基于第一CC-ALF标志指示用信号通知第一CC-ALF来解码。用于CC-ALF的一个或更多个第二语法元素可以包括用于第一CC-ALF的语法元素。当第一CC-ALF标志指示不用信号通知第一CC-ALF时,用于第一CC-ALF的语法元素不被解码。
用于第二CC-ALF的语法元素可以基于第二CC-ALF标志指示用信号通知第二CC-ALF来解码。用于CC-ALF的一个或更多个第二语法元素可以包括用于第二CC-ALF的语法元素。当第二CC-ALF标志指示不用信号通知第二CC-ALF时,用于第二CC-ALF的语法元素不被解码。
CC-ALF是应用于(一个或多个)色度分量的ALF。用于CC-ALF的色度相关语法元素可以包括指示在已编码视频比特流中是否用信号通知第一CC-ALF的第一CC-ALF标志(例如,alf_cross_component_cb_filter_signal_flag)、指示在已编码视频比特流中是否用信号通知第二CC-ALF的第二CC-ALF标志(例如,alf_cross_component_cr_filter_signal_flag)、用于第一CC-ALF的语法元素、用于第二CC-ALF的语法元素等。
第一CC-ALF标志(例如,alf_cross_component_cb_filter_signal_flag)等于1可以指定用信号通知第一CC-ALF(例如,交叉分量Cb滤波器)。第一CC-ALF标志(例如,alf_cross_component_cb_filter_signal_flag)等于0可以指定不用信号通知第一CC-ALF(例如,交叉分量Cb滤波器)。当第一CC-ALF标志(例如,alf_cross_component_cb_filter_signal_flag)不存在时,可以推断第一CC-ALF标志(例如,alf_cross_component_cb_filter_signal_flag)为0。
第二CC-ALF标志(例如,alf_cross_component_cr_filter_signal_flag)等于1可以指定用信号通知第二CC-ALF(例如,交叉分量Cr滤波器)。第二CC-ALF标志(例如,alf_cross_component_cr_filter_signal_flag)等于0可以指定不用信号通知第二CC-ALF(例如,交叉分量Cr滤波器)。当第二CC-ALF标志(例如,alf_cross_component_cr_filter_signal_flag)不存在时,可以推断第二CC-ALF标志(例如,alf_cross_component_cr_filter_signal_flag)为0。
视频比特流中不存在色度分量可以指示视频比特流中的每个分量被独立地编码为单色分量或亮度分量。因此,针对分量不需要CC-ALF,并且因此例如在APS中不需要用于CC-ALF的色度相关语法元素。因此,可以不用信号通知用于CC-ALF的色度相关语法元素。
当APS色度存在标志(例如,aps_chroma_present_flag)等于1时,存在色度分量,并且可以在视频比特流中用信号通知用于CC-ALF的色度相关语法元素中的一个或更多个(例如,第一CC-ALF标志、第二CC-ALF标志)。当APS色度存在标志(例如,aps_chroma_present_flag)等于0时,不存在色度分量,并且因此在视频比特流中不用信号通知色度相关语法元素。因此,当不需要用于CC-ALF的色度相关语法元素时,可以通过不用信号通知色度相关语法元素来减少信令开销,并且可以提高编码效率。
图22A至图22B示出了根据本公开内容的实施方式的示例性ALF数据语法。参照框(2201),可以基于APS色度存在标志(例如,aps_chroma_present_flag)确定在视频比特流中是否用信号通知用于CC-ALF的色度相关语法元素中的一个或更多个。当APS色度存在标志(例如,aps_chroma_present_flag)等于1时,存在色度分量,并且可以在视频比特流中用信号通知用于CC-ALF的色度相关语法元素中的一个或更多个(例如,第一CC-ALF标志、第二CC-ALF标志)。
可以基于用于CC-ALF的色度相关语法元素中的一个或更多个(例如,第一CC-ALF标志、第二CC-ALF标志)来确定是否用信号通知用于CC-ALF的色度相关语法元素的附加语法元素。参照框(2202),当第一CC-ALF标志为1时,可以在视频比特流中用信号通知用于第一CC-ALF的语法元素,并且因此可以被解码器解析或解码。参照框(2203),当第二CC-ALF标志为1时,可以在视频比特流中用信号通知用于第二CC-ALF的语法元素,并且因此可以被解码器解析或解码。
返回参照框(2201)至(2203),当APS色度存在标志(例如,aps_chroma_present_flag)等于0时,不存在色度分量,并且因此在视频比特流中不用信号通知用于CC-ALF的色度相关语法元素。
图23示出了概述根据本公开内容的实施方式的处理(2300)的流程图。处理(2300)可以用于用信号通知色度存在标志(例如,APS色度存在标志、PPS色度存在标志)以支持各种色度格式和色度相关编码工具(例如,LMCS编码工具、CC-ALF)。在各种实施方式中,处理(2300)由诸如下述处理电路系统的处理电路系统执行:终端装置(310)、(320)、(330)和(340)中的处理电路系统;执行视频编码器(403)的功能的处理电路系统;执行视频解码器(410)的功能的处理电路系统;执行视频解码器(510)的功能的处理电路系统;执行视频编码器(603)的功能的处理电路系统等。在一些实施方式中,处理(2300)以软件指令实现,因此,当处理电路系统执行软件指令时,处理电路系统执行处理(2300)。处理在(S2301)处开始并且进行至(S2310)。
在(S2310)处,可以根据已编码视频比特流对第一语法元素进行解码。第一语法元素可以指示已编码视频比特流中的第一分量的编码是否是基于已编码视频比特流中的第二分量。
在(S2320)处,可以基于第一语法元素来确定是否对用于色度相关编码工具的一个或更多个第二语法元素进行解码。色度相关编码工具可以是(i)亮度映射与色度缩放(LMCS)编码工具和(ii)交叉分量自适应环路滤波器(CC-ALF)中的一个。如果第一语法元素指示第一分量是基于已编码视频比特流中的第二分量进行编码,则处理(2300)进行至(S2330)。否则,如果第一语法元素指示第一分量在已编码视频比特流中独立编码,例如第一分量的编码不是基于已编码视频比特流中的第二分量,则处理(2300)进行至(S2399)而不对用于色度相关编码工具的一个或更多个第二语法元素进行解码。
在(S2330)处,可以对用于色度相关编码工具的一个或更多个第二语法元素进行解码。第一分量可以是第一色度分量。在已编码视频比特流中存在第一色度分量。处理(2300)进行至(S2399)并且终止。
当已编码视频比特流中不存在色度分量时,可以跳过对用于色度相关编码工具的一个或更多个第二语法元素的解码。不需要色度相关编码工具,并且因此在已编码视频比特流中不用信号通知用于色度相关编码工具的色度相关语法元素并且不在解码器侧解码,从而减少信令开销并且提高编码效率。
可以适当地调整处理(2300)。可以修改和/或省略处理(2300)中的(一个或多个)步骤。可以添加(一个或多个)附加步骤。可以使用任何合适的实现次序。例如,当合并候选的最大数目不满足条件时,不对图片级别参数进行解码。
本公开内容中的实施方式可以单独使用或以任何次序组合使用。此外,方法(或实施方式)、编码器和解码器中的每一个均可以通过处理电路系统(例如,一个或更多个处理器或者一个或更多个集成电路)来实现。在一个示例中,一个或更多个处理器执行存储在非暂态计算机可读介质中的程序。
可以利用计算机可读指令将上述技术实现为计算机软件,并且将其物理地存储在一个或更多个计算机可读介质中。例如,图24示出了适于实现所公开的主题的某些实施方式的计算机系统(2400)。
可以使用任何合适的机器代码或计算机语言对计算机软件进行编码,机器代码或计算机语言可以经受汇编、编译、链接等机制以创建包括指令的代码,所述指令可以由一个或更多个计算机中央处理单元(central processing unit,CPU)、图形处理单元(GraphicsProcessing Unit,GPU)等直接执行或者通过解译、微代码执行等执行。
指令可以在各种类型的计算机或其部件上执行,包括例如个人计算机、平板计算机、服务器、智能电话、游戏装置、物联网装置等。
图24中示出的用于计算机系统(2400)的部件本质上是示例性的,并且不旨在对实现本公开内容的实施方式的计算机软件的使用范围或功能提出任何限制。部件的配置也不应当被解释为具有与计算机系统(2400)的示例性实施方式中示出的部件中的任何一个部件或部件的组合有关的任何依赖性或要求。
计算机系统(2400)可以包括某些人机接口输入装置。这样的人机接口输入装置可以响应于由一个或更多个人类用户通过例如触觉输入(诸如:击键、滑动、数据手套移动)、音频输入(诸如:语音、拍打)、视觉输入(诸如:姿势)、嗅觉输入(未描绘)进行的输入。人机接口装置还可以用于捕获不一定与人的意识输入直接有关的某些介质,诸如,音频(诸如:语音、音乐、环境声音)、图像(诸如:扫描图像、从静态图像摄像装置获得的摄影图像)、视频(诸如二维视频、包括立体视频的三维视频)。
输入人机接口装置可以包括以下各项中的一个或更多个(每项仅绘出一个):键盘(2401)、鼠标(2402)、触控板(2403)、触摸屏(2410)、数据手套(未示出)、操纵杆(2405)、麦克风(2406)、扫描仪(2407)、摄像装置(2408)。
计算机系统(2400)还可以包括某些人机接口输出装置。这样的人机接口输出装置可以通过例如触觉输出、声音、光和气味/味道来刺激一个或更多个人类用户的感官。这样的人机接口输出装置可以包括:触觉输出装置(例如,通过触摸屏(2410)、数据手套(未示出)或操纵杆(2405)进行的触觉反馈,但是也可以存在不用作输入装置的触觉反馈装置);音频输出装置(诸如:扬声器(2409)、头戴式耳机(未描绘));视觉输出装置(诸如,屏幕(2410),包括CRT屏幕、LCD屏幕、等离子屏幕、OLED屏幕,每个均具有或不具有触摸屏输入能力,每个均具有或不具有触觉反馈能力——其中的一些可能能够通过诸如立体图像输出的方式输出二维视觉输出或多于三维输出;虚拟现实眼镜(未描绘);全息显示器和烟罐(未描绘));以及打印机(未描绘)。
计算机系统(2400)还可以包括人类可访问存储装置及其相关联的介质,诸如包括具有CD/DVD等介质(2421)的CD/DVD ROM/RW(2420)的光学介质、拇指驱动器(2422)、可移除硬盘驱动器或固态驱动器(2423)、遗留磁性介质诸如磁带和软盘(未描绘)、基于专用ROM/ASIC/PLD的装置诸如安全加密狗(未描绘)等。
本领域技术人员还应当理解,结合当前公开的主题使用的术语“计算机可读介质”不包含传输介质、载波或其他暂态信号。
计算机系统(2400)还可以包括至一个或更多个通信网络(2455)的接口(2454)。网络可以是例如无线的、有线的、光学的。网络还可以是局域的、广域的、城市的、车辆的和工业的、实时的、延迟容忍的等。网络的示例包括:诸如以太网的局域网;无线LAN;包括GSM(Global System for Mobile Communication)、3G(Third Generation)、4G(FourthGeneration)、5G(Fifth Generation)、LTE(Long Term Evolution)等的蜂窝网络;包括有线电视、卫星电视和地面广播电视的电视有线连接或无线广域数字网络;包括CAN总线的车辆的网络和工业的网络等。某些网络通常需要外部网络接口适配器,该外部网络接口适配器附接至某些通用数据端口或外围总线(2449)(诸如例如,计算机系统(2400)的USB(Universal Serial Bus,USB)端口);其他网络通常通过附接至如下所述的系统总线(例如,到PC计算机系统的以太网接口或到智能电话计算机系统的蜂窝网络接口)而集成到计算机系统(2400)的核中。计算机系统(2400)可以通过使用这些网络中的任何网络与其他实体进行通信。这样的通信可以是仅单向接收的(例如,广播电视)、仅单向发送的(例如,至某些CAN总线装置的CAN总线)、或双向的,例如,使用局域数字网络或广域数字网络至其他计算机系统。可以在如上所述的这些网络和网络接口中的每个网络和网络接口上使用某些协议和协议栈。
以上提及的人机接口装置、人类可访问存储装置和网络接口可以附接至计算机系统(2400)的核(2440)。
核(2440)可以包括一个或更多个中央处理单元(CPU)(2441)、图形处理单元(GPU)(2442)、现场可编程门阵列(Field Programmable Gate Area,FPGA)(2443)形式的专用可编程处理单元、用于某些任务的硬件加速器(2444)、图形适配器(2450)等。这些装置,连同只读存储器(Read-only memory,ROM)(2445)、随机存取存储器(2446)、内部大容量存储装置诸如内部非用户可访问硬盘驱动器、SSD(Solid State Drive,SSD)等(2447)可以通过系统总线(2448)连接。在一些计算机系统中,可以以一个或更多个物理插头的形式访问系统总线(2448),以使得能够由附加的CPU、GPU等进行扩展。外围装置可以直接地或通过外围总线(2449)附接至核的系统总线(2448)。在示例中,屏幕(2410)可以连接至图形适配器(2450)。外围总线的架构包括PCI(Peripheral Component Interconnect,PCI)、USB等。
CPU(2441)、GPU(2442)、FPGA(2443)和加速器(2444)可以执行某些指令,所述指令可以组合构成以上提及的计算机代码。该计算机代码可以被存储在ROM(2445)或RAM(2446)中。过渡数据也可以被存储在RAM(2446)中,而永久数据可以被存储在例如内部大容量存储装置(2447)中。可以通过使用缓存存储器来实现对存储装置中的任何存储装置的快速存储和检索,该缓存存储器可以与一个或更多个CPU(2441)、GPU(2442)、大容量存储装置(2447)、ROM(2445)、RAM(2446)等紧密关联。
计算机可读介质上可以具有用于执行各种计算机实现的操作的计算机代码。介质和计算机代码可以是为本公开内容的目的而专门设计和构造的介质和计算机代码,或者它们可以是计算机软件领域的技术人员公知和可用的类型的介质和计算机代码。
作为示例而非限制,具有架构的计算机系统(2400)——并且特别是核(2440)——可以由于(一个或多个)处理器(包括CPU、GPU、FPGA、加速器等)执行体现在一个或更多个有形计算机可读介质中的软件而提供功能。这样的计算机可读介质可以是与如以上所介绍的用户可访问的大容量存储装置以及核(2440)的具有非暂态性质的某些存储装置例如核内部大容量存储装置(2447)或ROM(2445)相关联的介质。可以将实现本公开内容的各种实施方式的软件存储在这样的装置中并且由核(2440)执行。根据特定需求,计算机可读介质可以包括一个或更多个存储器装置或芯片。软件可以使核(2440)——并且特别是其中的处理器(包括CPU、GPU、FPGA等)——执行本文中描述的特定过程或特定过程的特定部分,包括限定存储在RAM(2446)中的数据结构以及根据由软件限定的过程修改这样的数据结构。另外地或作为替选,计算机系统可以由于硬连线或以其他方式体现在电路中(例如:加速器(2444))的逻辑而提供功能,该逻辑可以代替软件或与软件一起操作以执行本文中描述的特定过程或特定过程的特定部分。在适当的情况下,提及软件可以包含逻辑,反之提及逻辑也可以包含软件。在适当的情况下,提及计算机可读介质可以包含存储用于执行的软件的电路(诸如,集成电路(integrated circuit,IC))、实施用于执行的逻辑的电路或上述两者。本公开内容包含硬件和软件的任何合适的组合。
附录A:首字母缩略词
JEM:联合开发模型
VVC:通用视频编码
BMS:基准集
MV:运动矢量
HEVC:高效视频编码
SEI:补充增强信息
VUI:视频可用性信息
GOP:图片群组
TU:变换单元
PU:预测单元
CTU:编码树单元
CTB:编码树块
PB:预测块
HRD:假想参考解码器
SNR:信噪比
CPU:中央处理单元
GPU:图形处理单元
CRT:阴极射线管
LCD:液晶显示器
OLED:有机发光二极管
CD:致密盘
DVD:数字视频光盘
ROM:只读存储器
RAM:随机存取存储器
ASIC:专用集成电路
PLD:可编程逻辑装置
LAN:局域网
GSM:全球移动通信系统
LTE:长期演进
CANBus:控制器局域网总线
USB:通用串行总线
PCI:外围部件互连
FPGA:现场可编程门阵列
SSD:固态驱动器
IC:集成电路
CU:编码单元
虽然本公开内容已经描述了若干示例性实施方式,但是存在落入本公开内容的范围内的变更、排列和各种替代等同物。因此将认识到,本领域技术人员能够设想虽然本文中没有明确示出或描述但是体现本公开内容的原理并且因此在其精神和范围内的许多系统和方法。

Claims (11)

1.一种视频解码的方法,其特征在于,包括:
对已编码视频比特流中的第一语法元素进行解码,所述第一语法元素指示色度分量是否存在于所述已编码视频比特流中,且所述第一语法元素与色度格式索引相关联,其中,当所述色度格式索引的值为0时,表示使用单色采样;当所述色度格式索引的值为1时,表示色度格式为4:2:0;当所述色度格式索引的值为2时,表示色度格式为4:2:2;当所述色度格式索引的值为3时,表示色度格式为4:4:4;
基于所述第一语法元素指示色度分量存在于所述已编码视频比特流中,确定是否对用于交叉分量自适应环路滤波器CC-ALF的第二语法元素进行解码;以及
如果所述第一语法元素指示所述已编码视频比特流中存在色度分量,则对所述CC-ALF的第二语法元素进行解码;如果所述第一语法元素指示所述已编码视频比特流中使用了单色采样的色度格式,则不对所述CC-ALF的第二语法元素进行解码。
2.根据权利要求1所述的方法,其中,所述第一语法元素被包含在自适应参数集APS中。
3.根据权利要求1所述的方法,其中,所述第一语法元素在序列级别上指示所述色度分量的编码是否是基于另一分量。
4.根据权利要求1所述的方法,其中,
如果所述色度分量的编码是基于另一分量,则所述另一分量是所述已编码视频比特流中的第二色度分量或亮度分量。
5.根据权利要求4所述的方法,其中,
所述已编码视频比特流包括色度格式为4:4:4的第一色度分量、第二色度分量和亮度分量;
所述色度分量是所述第一色度分量;
所述另一分量是所述第二色度分量或所述亮度分量;并且
所述第一色度分量、所述第二色度分量和所述亮度分量被彼此独立地编码。
6.根据权利要求1所述的方法,其特征在于,还包括:
如果所述第一语法元素指示所述色度分量不存在于所述已编码视频比特流中,则禁用所述CC-ALF。
7.根据权利要求1所述的方法,其中,
用于所述CC-ALF的所述第二语法元素包括第一CC-ALF标志和第二CC-ALF标志,所述第一CC-ALF标志指示在所述已编码视频比特流中是否包含第一CC-ALF,所述第二CC-ALF标志指示在所述已编码视频比特流中是否包含第二CC-ALF。
8.根据权利要求7所述的方法,其中,对所述第二语法元素进行解码还包括:
如果所述第一CC-ALF标志指示包含所述第一CC-ALF,则对用于所述第一CC-ALF的语法元素进行解码,其中,用于所述CC-ALF的所述第二语法元素包括用于所述第一CC-ALF的语法元素,如果所述第一CC-ALF标志指示不包含所述第一CC-ALF,则不对用于所述第一CC-ALF的语法元素进行解码;并且
对所述第二语法元素进行解码还包括:
如果所述第二CC-ALF标志指示包含所述第二CC-ALF,则对用于所述第二CC-ALF的语法元素进行解码,其中,用于所述CC-ALF的所述第二语法元素包括用于所述第二CC-ALF的语法元素,如果所述第二CC-ALF标志指示不包含所述第二CC-ALF,则不对用于所述第二CC-ALF的语法元素进行解码。
9.一种用于视频解码的设备,包括处理电路系统,其特征在于,所述处理电路系统被配置成执行根据权利要求1至8中任一项所述的方法。
10.一种用于视频解码的装置,其特征在于,包括:
第一解码模块,其被配置成对已编码视频比特流中的第一语法元素进行解码,且所述第一语法元素与色度格式索引相关联,其中,当所述色度格式索引的值为0时,表示使用单色采样;当所述色度格式索引的值为1时,表示色度格式为4:2:0;当所述色度格式索引的值为2时,表示色度格式为4:2:2;当所述色度格式索引的值为3时,表示色度格式为4:4:4;
确定模块,其被配置成基于所述第一语法元素指示色度分量存在于所述已编码视频比特流中,来确定是否对用于交叉分量自适应环路滤波器CC-ALF的第二语法元素进行解码;以及
第二解码模块,其被配置成如果所述第一语法元素指示所述已编码视频比特流中存在色度分量,则对所述CC-ALF的第二语法元素进行解码,
其中,如果所述第一语法元素指示所述已编码视频比特流中使用了单色采样的色度格式,则不对所述CC-ALF的第二语法元素进行解码。
11.一种非暂态计算机可读介质,其存储指令,其特征在于,所述指令在由至少一个处理器执行时,使所述至少一个处理器执行根据权利要求1至8中任一项所述的方法。
CN202080027430.6A 2020-01-08 2020-12-09 用于视频解码的方法和相关装置 Active CN113692588B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311387088.2A CN117241023A (zh) 2020-01-08 2020-12-09 用于视频编码的方法和相关装置

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202062958694P 2020-01-08 2020-01-08
US62/958,694 2020-01-08
US17/096,674 2020-11-12
US17/096,674 US11303914B2 (en) 2020-01-08 2020-11-12 Method and apparatus for video coding
PCT/US2020/064055 WO2021141714A1 (en) 2020-01-08 2020-12-09 Method and apparatus for video coding

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202311387088.2A Division CN117241023A (zh) 2020-01-08 2020-12-09 用于视频编码的方法和相关装置

Publications (2)

Publication Number Publication Date
CN113692588A CN113692588A (zh) 2021-11-23
CN113692588B true CN113692588B (zh) 2023-11-03

Family

ID=76654783

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202080027430.6A Active CN113692588B (zh) 2020-01-08 2020-12-09 用于视频解码的方法和相关装置
CN202311387088.2A Pending CN117241023A (zh) 2020-01-08 2020-12-09 用于视频编码的方法和相关装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202311387088.2A Pending CN117241023A (zh) 2020-01-08 2020-12-09 用于视频编码的方法和相关装置

Country Status (9)

Country Link
US (3) US11303914B2 (zh)
EP (1) EP4088221A4 (zh)
JP (2) JP2022526379A (zh)
KR (1) KR20210134417A (zh)
CN (2) CN113692588B (zh)
AU (2) AU2020420655B2 (zh)
CA (1) CA3135416A1 (zh)
SG (1) SG11202110653RA (zh)
WO (1) WO2021141714A1 (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020156528A1 (en) 2019-02-01 2020-08-06 Beijing Bytedance Network Technology Co., Ltd. Filtering processes based on in-loop reshaping
MX2021008911A (es) 2019-02-01 2021-08-24 Beijing Bytedance Network Tech Co Ltd Se?alizacion de informacion de reformacion en bucle utilizando conjuntos de parametros.
CN113574889B (zh) * 2019-03-14 2024-01-12 北京字节跳动网络技术有限公司 环路整形信息的信令和语法
CN113632469B (zh) 2019-03-23 2022-12-13 北京字节跳动网络技术有限公司 默认的环内整形参数
WO2020216176A1 (en) 2019-04-20 2020-10-29 Beijing Bytedance Network Technology Co., Ltd. Signaling of chroma syntax elements in video coding
CN115567707A (zh) 2019-05-30 2023-01-03 抖音视界有限公司 色度分量的自适应环路滤波
CN116668697A (zh) * 2019-07-05 2023-08-29 Lg电子株式会社 图像编码/解码设备和图像数据的发送设备
US11563980B2 (en) * 2020-04-02 2023-01-24 Qualcomm Incorporated General constraint information syntax in video coding
US11601657B2 (en) * 2020-04-02 2023-03-07 Qualcomm Incorporated LUMA mapping with chroma scaling (LMCS) in video coding
WO2021204251A1 (en) * 2020-04-10 2021-10-14 Beijing Bytedance Network Technology Co., Ltd. Use of header syntax elements and adaptation parameter set
US11792412B2 (en) * 2020-04-15 2023-10-17 Qualcomm Incorporated Adaptive loop filtering for color format support
CN115868159A (zh) 2020-04-17 2023-03-28 抖音视界有限公司 自适应参数集单元的存在
EP4128775A4 (en) 2020-04-26 2024-03-27 Bytedance Inc CONDITIONAL SIGNALING OF SYNTAX ELEMENTS OF A VIDEO CODING

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016074567A1 (en) * 2014-11-11 2016-05-19 Mediatek Singapore Pte. Ltd Method of video coding using separate coding tree for luma and chroma

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103535035B (zh) 2011-05-16 2017-03-15 寰发股份有限公司 用于亮度和色度分量的样本自适应偏移的方法和装置
US9277228B2 (en) * 2011-07-18 2016-03-01 Qualcomm Incorporated Adaptation parameter sets for video coding
WO2013144144A1 (en) * 2012-03-30 2013-10-03 Panasonic Corporation Syntax and semantics for adaptive loop filter and sample adaptive offset
HUE049811T2 (hu) 2012-04-15 2020-10-28 Samsung Electronics Co Ltd Videodekódoló berendezés, amely paraméter aktualizálást használ entrópiakódolt transzformáció együttható debinarizálására és kódolási eljárás, amely ugyanazt használja binarizálásra
US20170105014A1 (en) * 2015-10-08 2017-04-13 Qualcomm Incorporated Luma-driven chroma scaling for high dynamic range and wide color gamut contents
US10419757B2 (en) 2016-08-31 2019-09-17 Qualcomm Incorporated Cross-component filter
US10477212B2 (en) * 2016-10-11 2019-11-12 Dolby Laboratories Licensing Corporation Adaptive chroma quantization in video coding for multiple color imaging formats
JP7368145B2 (ja) * 2019-08-28 2023-10-24 シャープ株式会社 画像符号化装置、および、画像復号装置
US11425405B2 (en) * 2019-11-15 2022-08-23 Qualcomm Incorporated Cross-component adaptive loop filter in video coding
US11265558B2 (en) * 2019-11-22 2022-03-01 Qualcomm Incorporated Cross-component adaptive loop filter
US11601657B2 (en) * 2020-04-02 2023-03-07 Qualcomm Incorporated LUMA mapping with chroma scaling (LMCS) in video coding

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016074567A1 (en) * 2014-11-11 2016-05-19 Mediatek Singapore Pte. Ltd Method of video coding using separate coding tree for luma and chroma
CN107079160A (zh) * 2014-11-11 2017-08-18 联发科技(新加坡)私人有限公司 对亮度及色度使用单独编码树的视频编码方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Kiran Misra 等.On Cross Component Adaptive Loop Filter for Video Compression .2019 Picture Coding Symposium (PCS).2019,1-5. *

Also Published As

Publication number Publication date
US20210211700A1 (en) 2021-07-08
US11303914B2 (en) 2022-04-12
JP2024026725A (ja) 2024-02-28
JP2022526379A (ja) 2022-05-24
SG11202110653RA (en) 2021-10-28
AU2020420655B2 (en) 2023-03-16
US20220182653A1 (en) 2022-06-09
CA3135416A1 (en) 2021-07-15
EP4088221A1 (en) 2022-11-16
AU2023203753A1 (en) 2023-07-13
CN117241023A (zh) 2023-12-15
AU2020420655A1 (en) 2021-10-07
WO2021141714A1 (en) 2021-07-15
US20230345026A1 (en) 2023-10-26
KR20210134417A (ko) 2021-11-09
US11736710B2 (en) 2023-08-22
CN113692588A (zh) 2021-11-23
EP4088221A4 (en) 2024-02-21

Similar Documents

Publication Publication Date Title
CN113692588B (zh) 用于视频解码的方法和相关装置
CN111837390B (zh) 用于视频编码、解码的方法和相关装置
CN112272949B (zh) 视频解码的方法、装置及可读介质
CN111937387A (zh) 用于采用并行处理的基于历史的运动矢量的预测方法和装置
CN113545042A (zh) 三角预测中的合并列表构建
CN113615185B (zh) 用于视频编解码的方法和装置
CN112042200B (zh) 视频解码的方法和装置
CN112235581B (zh) 视频解码方法、装置、存储介质及电子设备
CN111050178B (zh) 视频解码的方法、装置、电子设备、存储介质
CN113424541A (zh) 用于变换跳过模式和块差分脉冲编码调制的残差编解码
CN113632471A (zh) 视频编解码的方法和装置
CN113966613A (zh) 用于局部双树结构下的基于调色板的编解码模式的方法和装置
CN114270857A (zh) 用于发信号通知跳过模式标志的方法和装置
CN111726622A (zh) 视频解码的方法和装置
CN114375570A (zh) 用于视频编码的方法及装置
CN114450957A (zh) 用于视频编码的方法和装置
CN114666608A (zh) 视频编码方法、装置及介质
CN114402615B (zh) 视频解码方法、装置及计算机可读存储介质
CN115176461A (zh) 视频编解码的方法和装置
CN116235490A (zh) 用于视频编码的方法和设备
CN115428024A (zh) 解耦变换分割技术
CN113497940A (zh) 视频解码方法、装置、计算机设备及存储介质
CN112437306A (zh) 视频编解码方法、装置、计算机设备和存储介质
RU2782516C1 (ru) Способ и устройство для видеокодирования
CN116636216A (zh) 帧内模式传播的改进

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40055131

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant