CN115443655A - 用于处理视频编码中自适应颜色变换和低频不可分离变换的方法 - Google Patents

用于处理视频编码中自适应颜色变换和低频不可分离变换的方法 Download PDF

Info

Publication number
CN115443655A
CN115443655A CN202180029638.6A CN202180029638A CN115443655A CN 115443655 A CN115443655 A CN 115443655A CN 202180029638 A CN202180029638 A CN 202180029638A CN 115443655 A CN115443655 A CN 115443655A
Authority
CN
China
Prior art keywords
act
lfnst
enabled
video
prediction
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
CN202180029638.6A
Other languages
English (en)
Inventor
穆罕默德·戈拉姆·萨维尔
叶琰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Alibaba China Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba China Co Ltd filed Critical Alibaba China Co Ltd
Publication of CN115443655A publication Critical patent/CN115443655A/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform 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/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/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/1883Methods 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 relating to sub-band structure, e.g. hierarchical level, directional tree, e.g. low-high [LH], high-low [HL], high-high [HH]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

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

Abstract

本公开提供了用于处理视频数据的方法、装置和非暂时性计算机可读介质。根据某些公开的实施例,方法包括:接收一个或多个视频序列以用于处理;以及仅使用低频不可分离变换(LFNST)和自适应颜色变换(ACT)之一对该一个或多个视频序列进行编码。

Description

用于处理视频编码中自适应颜色变换和低频不可分离变换的 方法
相关申请的交叉引用
本公开要求于2020年6月9日提交的申请号为63/036,499的美国临时申请的优先权,其全部内容通过引用并入本文。
技术领域
本公开通常涉及视频处理,更具体地,涉及用于控制视频编码中自适应颜色变换和低频不可分离变换之间的交互的方法和装置。
背景技术
视频是一组捕捉视觉信息的静态图像(或“帧”)。为了减少存储内存和传输带宽,可以在存储或传输之前对视频进行压缩,然后在显示之前进行解压缩。压缩过程通常称为编码,解压缩过程通常称为解码。有各种使用标准化视频编码技术的视频编码格式,最常见的是基于预测、变换、量化、熵编码和环路滤波。视频编码标准,诸如高效视频编码(HEVC/H.265)标准、通用视频编码(VVC/H.266)标准和AVS标准等,规定了具体的视频编码格式,由标准化组织制定。随着越来越多的先进视频编码技术在视频标准中被采用,新的视频编码标准的编码效率也越来越高。
发明内容
本公开的实施例提供了一种计算机实现的视频编码方法。该方法包括:接收一个或多个视频序列以用于处理;以及仅使用低频不可分离变换(LFNST)和自适应颜色变换(ACT)之一对该一个或多个视频序列进行编码。
本公开的实施例提供了用于执行视频数据处理的装置,该装置包括:存储器,被配置为存储指令;以及,耦合到该存储器的处理器,被配置为执行指令以使该装置执行:接收一个或多个视频序列以进行处理;以及仅使用低频不可分离变换(LFNST)和自适应颜色变换(ACT)之一对该一个或多个视频序列进行编码。
本公开的实施例提供了一种存储指令集的非暂时性计算机可读介质,该指令集可由装置的一个或多个处理器执行,以使该装置启动用于执行视频数据处理的方法,该方法包括:接收一个或多个视频序列以用于处理;以及仅使用低频不可分离变换(LFNST)和自适应颜色变换(ACT)之一对该一个或多个视频序列进行编码。
附图说明
本公开的实施例和各个方面在以下具体实施方式和附图中进行了说明。图中所示的各种特征不是按比例绘制的。
图1是示出根据本公开的一些实施例的示例视频序列的结构的示意图。
图2A是示出与本公开实施例一致的混合视频编码系统的示例性编码过程的示意图。
图2B是示出与本公开实施例一致的混合视频编码系统的另一示例性编码过程的示意图。
图3A是示出与本公开实施例一致的混合视频编码系统的示例性解码过程的示意图。
图3B是示出与本公开实施例一致的混合视频编码系统的另一示例性解码过程的示意图。
图4是根据本公开的一些实施例的用于对视频进行编码或解码的示例性装置的框图。
图5示出了编码过程的示例性处理流程。
图6示出了解码过程的示例性处理流程。
图7示出了根据本公开的一些实施例的编码方法的示例性流程图。
图8示出了根据本公开的一些实施例的编码方法的另一示例性流程图。
图9示出了根据本公开的一些实施例的示例性SPS句法。
图10示出了根据本公开的一些实施例的更新的句法元素sps_act_enabled_flag的示例性语义。
图11示出了根据本公开的一些实施例的更新的句法元素sps_act_enabled_flag的示例性语义。
图12示出了根据本公开的一些实施例的编码方法的示例性流程图。
图13示出了根据本公开的一些实施例的具有更新的sps_lfnst_enabled_flag的示例性SPS句法。
图14示出了根据本公开的一些实施例的更新的句法元素sps_lfnst_enabled_flag的示例性语义。
图15示出了根据本公开的一些实施例的更新的句法元素sps_lfnst_enabled_flag的示例性语义。
图16示出了根据本公开的一些实施例的用于LFNST变换和ACT变换的编码方法的示例性流程图。
图17示出了根据本公开的一些实施例的包括句法元素cu_act_enabled_flag的示例性句法。
图18示出了根据本公开的一些实施例的更新的语法元素cu_act_enabled_flag的示例性语义。
图19示出了根据本公开的一些实施例的更新的语法元素lfnst_ldx的示例性语义。
图20示出了根据本公开的一些实施例的用于LFNST和ACT的编码方法的示例性流程图。
图21示出了根据本公开的一些实施例的更新的变量ApplyLfnstFlag的示例性语义。
具体实施方式
现在将详细参考示例性实施例,其示例在附图中示出。以下描述参照附图,除非另有说明,否则不同附图中的相同数字表示相同或相似的元件。在示例性实施例的以下描述中阐述的实施方式并不代表与本发明一致的所有实施方式。相反,它们仅仅是与如所附权利要求中所述的与本发明相关的方面一致的装置和方法的示例。下面更详细地描述本公开的特定方面。如果与通过引用并入的术语和/或定义相冲突,则以本文提供的术语和定义为准。
ITU-T视频编码专家组(ITU-T VCEG)和ISO/IEC运动图像专家组(ISO/IEC MPEG)的联合视频专家组(JVET)目前正在制定通用视频编码(VVC/H.266)标准。VVC标准旨在将其前身高效视频编码(HEVC/H.265)标准的压缩效率提高一倍。换句话说,VVC的目标是使用一半的带宽实现与HEVC/H.265相同的主观质量。
为了使用一半的带宽实现与HEVC/H.265相同的主观质量,JVET一直在使用联合探索模型(JEM)参考软件开发HEVC之外的技术。随着编码技术被纳入JEM,JEM实现了比HEVC更高的编码性能。
VVC标准最近已经制定,并继续包括更多提供更好压缩性能的编码技术。VVC基于与现代视频压缩标准(如HEVC、H.264/AVC、MPEG2、H.263等)中使用的相同的混合视频编码系统。
视频是一组按时间顺序排列以存储视觉信息的静态图像(或“帧”)。视频捕获设备(例如,相机)可用于按时间顺序捕获和存储这些图像,并且视频播放设备(例如,电视、计算机、智能手机、平板电脑、视频播放器或具有显示功能的任何最终用户终端)可用于按时间顺序显示此类图像。此外,在一些应用中,视频捕获设备可以实时地将捕获的视频传输到视频播放设备(例如,具有监视器的计算机),诸如用于监控、会议或直播等。
为了减少此类应用所需的存储空间和传输带宽,可以在存储和传输之前对视频进行压缩,并在显示之前进行解压缩。压缩和解压缩可以由处理器(例如,通用计算机的处理器)或专用硬件执行的软件实现。用于压缩的模块通常称为“编码器”,用于解压缩的模块通常称为“解码器”,编码器和解码器可以统称为“编解码器”。编码器和解码器可以实现为各种合适的硬件、软件或其组合中的任何一种。例如,编码器和解码器的硬件实现可以包括电路,诸如一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑或其任何组合。编码器和解码器的软件实现可以包括程序代码、计算机可执行指令、固件或固定在计算机可读介质中的任何合适的计算机实现的算法或过程。视频压缩和解压缩可以通过各种算法或标准来实现,诸如MPEG-1、MPEG-2、MPEG-4、H.26x系列等。在一些应用中,编解码器可以从第一编码标准解压缩视频,并使用第二编码标准重新压缩解压缩的视频,在这种情况下,编解码器可以称为“转码器”。
视频编码过程可以识别并保留可用于重构图像的有用信息,并忽略对于重构不重要的信息。如果无法完全重构被忽略的、不重要的信息,则这种编码过程可以称为“有损的”。否则,它可以被称为“无损的”。大多数编码过程都是有损的,这是为了减少所需的存储空间和传输带宽而做出的权衡。
正在被编码的图像(称为“当前图像”)的有用信息包括相对于参考图像(例如,先前编码和重构的图像)的变化。这种变化可以包括像素的位置变化、亮度变化或颜色变化,其中最关注的是位置变化。代表对象的一组像素的位置变化可以反映对象在参考图像和当前图像之间的运动。
在不参考另一个图像的情况下编码的图像(即,它是自己的参考图像)被称为“I-图像”。如果图像中的一些或所有块(例如,通常指视频图像部分的块)是采用使用一个参考图像的帧内预测或帧间预测(例如,单预测)进行预测的,则该图像被称为“P-图像”。如果图像中的至少一个块是用两个参考图像进行预测的(例如,双向预测),则该图像被称为“B-图像”。
图1示出了根据本公开的一些实施例的示例视频序列100的结构。视频序列100可以是实况视频或已捕获并存档的视频。视频100可以是真实视频、计算机生成的视频(例如,计算机游戏视频)或其组合(例如,具有增强现实效果的真实视频)。视频序列100可以从视频捕获设备(例如,相机)、包含先前捕获的视频的视频存档(例如,存储在存储设备中的视频文件)或用于接收来自视频内容提供商的视频的视频馈送接口(例如,视频广播收发器)输入。
如图1所示,视频序列100可以包括沿时间轴在时间上排列的一系列图像,包括图像102、104、106和108。图像102-106是连续的,并且在图像106和108之间有更多的图像。在图1中,图像102是I-图像,其参考图像是图像102本身。图像104是P-图像,其参考图像是图像102,如箭头所示。图像106是B-图像,其参考图像是图像104和108,如箭头所示。在一些实施例中,图像(例如,图像104)的参考图像可以不紧接在图像之前或之后。例如,图像104的参考图像可以是图像102之前的图像。应当注意,图像102-106的参考图像只是示例,本公开并不将参考图像的实施例限制为图1中所示的示例。
通常,由于编解码任务的计算复杂性,视频编解码器不会一次对整个图像进行编码或解码。相反,他们可以将图像分割成基本段,并逐段对图像进行编码或解码。这样的基本段在本公开中被称为基本处理单元(“BPU”)。例如,图1中的结构110示出了视频序列100的图像(例如,图像102-108中的任何一个)的示例结构。在结构110中,图像被划分为4×4个基本处理单元,其边界显示为虚线。在一些实施例中,基本处理单元可以在一些视频编码标准(例如,MPEG系列、H.261、H.263或H.264/AVC)中称为“宏块”,或者在一些其他视频编码标准(例如,H.265/HEVC或H.266/VVC)中称为“编码树单元”(“CTU”)。图像中的基本处理单元可以具有可变大小,诸如128×128、64×64、32×32、16×16、4×8、16×32或像素的任何任意形状和大小。可以基于编码效率和要在基本处理单元中保持的细节水平的平衡来为图像选择基本处理单元的大小和形状。
基本处理单元可以是逻辑单元,其可以包括存储在计算机存储器中(例如,在视频帧缓存区中)的一组不同类型的视频数据。例如,彩色图像的基本处理单元可以包括表示消色差亮度信息的亮度分量(Y)、表示颜色信息的一个或多个色度分量(例如,Cb和Cr)以及相关联的句法元素,其中亮度分量和色度分量可以具有相同的基本处理单元大小。在一些视频编码标准(例如H.265/HEVC或H.266/VVC)中,亮度和色度分量可以称为“编码树块”(“CTB”)。对基本处理单元执行的任何操作都可以对其亮度和色度分量中的每一个重复执行。
视频编码具有多个操作阶段,其示例在图2A-2B和图3A-3B中示出。对于每个阶段,基本处理单元的大小仍然可能太大而无法进行处理,因此可以进一步划分为本公开中称为“基本处理子单元”的段。在一些实施例中,基本处理子单元可以在一些视频编码标准(例如,MPEG系列、H.261、H.263或H.264/AVC)中称为“块”,或者在一些其他视频编码标准(例如,H.265/HEVC或H.266/VVC)中称为“编码单元”(“CU”)。基本处理子单元的大小可以与基本处理单元相同或更小。与基本处理单元类似,基本处理子单元也是逻辑单元,其可以包括存储在计算机存储器(例如,在视频帧缓存区中)中的一组不同类型的视频数据(例如,Y、Cb、Cr和相关句法元素)。对基本处理子单元执行的任何操作都可以对其亮度和色度分量中的每一个重复执行。应当注意,这种划分可以根据处理需要进行到进一步的级别。还应注意,不同的阶段可以使用不同的方案划分基本处理单元。
例如,在模式决定阶段(其示例在图2B中示出),编码器可以决定针对基本处理单元使用什么预测模式(例如,图像内预测或图像间预测),但基本处理单元可能太大而无法做出这样的决定。编码器可以将基本处理单元分割为多个基本处理子单元(例如,如H.265/HEVC或H.266/VVC中的CU),并为每个单独的基本处理子单元确定预测类型。
对于另一个示例,在预测阶段(其示例在图2A-2B中示出),编码器可以在基本处理子单元(例如,CU)级别执行预测操作。然而,在某些情况下,基本处理子单元可能仍然太大而无法处理。编码器可以进一步将基本处理子单元分割成更小的段(例如,在H.265/HEVC或H.266/VVC中称为“预测块”或“PB”),在该段的级别上可以执行预测操作。
对于另一个示例,在变换阶段(其示例在图2A-2B中示出),编码器可以对残差基本处理子单元(例如,CU)执行变换操作。然而,在某些情况下,基本处理子单元可能仍然太大而无法处理。编码器可以进一步将基本处理子单元分割成更小的段(例如,在H.265/HEVC或H.266/VVC中称为“变换块”或“TB”),在该段的级别上可以执行变换操作。应当注意,相同基本处理子单元的划分方案在预测阶段和变换阶段可以不同。例如,在H.265/HEVC或H.266/VVC中,相同CU的预测块和变换块可以具有不同的大小和数量。
在图1的结构110中,基本处理单元112进一步划分为3×3个基本处理子单元,其边界如虚线所示。同一图像的不同基本处理单元可以划分为不同方案中的基本处理子单元。
在一些实现方式中,为了提供对视频编码和解码的并行处理能力和容错能力,可以将图像划分为多个区域进行处理,使得对于图像的一个区域,编码或解码过程可以不依赖于来自图像任何其他区域的信息。换句话说,可以独立处理图像的每个区域。通过这样做,编解码器可以并行处理图像的不同区域,从而提高编码效率。此外,当一个区域的数据在处理中损坏或在网络传输中丢失时,编解码器可以正确地对同一图像的其他区域进行编码或解码,而不依赖于损坏或丢失的数据,从而提供容错能力。在一些视频编码标准中,可以将图像划分为不同类型的区域。例如,H.265/HEVC和H.266/VVC提供了两种类型的区域:“条带(slice)”和“砖块(tile)”。还应注意,视频序列100的不同图像可以具有用于将图像划分为多个区域的不同划分方案。
例如,在图1中,结构110划分为三个区域114、116和118,其边界在结构110内显示为实线。区域114包括四个基本处理单元。区域116和118中的每一个均包括六个基本处理单元。应当注意,图1中的结构110的基本处理单元、基本处理子单元和区域只是示例,本公开不限制其实施例。
图2A示出了与本公开实施例一致的示例编码过程200A的示意图。例如,编码过程200A可以由编码器执行。如图2A所示,编码器可以根据过程200A将视频序列202编码为视频比特流228。与图1中的视频序列100类似,视频序列202可以包括按时间顺序排列的一组图像(称为“原始图像”)。类似于图1中的结构110,视频序列202的每个原始图像可以由编码器划分为基本处理单元、基本处理子单元或区域进行处理。在一些实施例中,编码器可以在基本处理单元级别对视频序列202的每个原始图像执行过程200A。例如,编码器可以以迭代方式执行过程200A,其中编码器可以在过程200A的一次迭代中编码一个基本处理单元。在一些实施例中,编码器可以对视频序列202的每个原始图像的各区域(例如,区域114-118)并行执行过程200A。
在图2A中,编码器可以将视频序列202的原始图像的基本处理单元(称为“原始BPU”)馈送到预测阶段204,以生成预测数据206和预测的BPU 208。编码器可以从原始BPU中减去预测的BPU 208以生成残差BPU 210。编码器可以将残差BPU 210馈送到变换阶段212和量化阶段214以生成量化的变换系数216。编码器可以将预测数据206和量化的变换系数216馈送到二进制编码阶段226以生成视频比特流228。组件202、204、206、208、210、212、214、216、226和228可以称为“前向路径”。在过程200A期间,在量化阶段214之后,编码器可以将量化的变换系数216馈送到逆量化阶段218和逆变换阶段220以生成重构的残差BPU 222。编码器可以将重构的残差BPU 222添加到预测的BPU 208以生成预测参考224,该预测参考224在过程200A的下一次迭代的预测阶段204中使用。过程200A的组件218、220、222和224可以称为“重构路径”。重构路径可用于确保编码器和解码器使用相同的参考数据进行预测。
编码器可以迭代地执行过程200A以对原始图像的每个原始BPU进行编码(在前向路径中),并生成用于编码原始图像的下一个原始BPU的预测参考224(在重构路径中)。在对原始图像的所有原始BPU进行编码之后,编码器可以继续对视频序列202中的下一个图像进行编码。
参考过程200A,编码器可以接收由视频捕获设备(例如,相机)生成的视频序列202。本文中使用的术语“接收”可指接收、输入、获取、检索、获得、读取、访问或以任何方式输入数据的任何动作。
在预测阶段204,在当前迭代中,编码器可以接收原始BPU和预测参考224,并执行预测操作以生成预测数据206和预测的BPU 208。可以从过程200A的先前迭代的重构路径生成预测参考224。预测阶段204的目的是通过提取预测数据206来减少信息冗余,预测数据206可用于从预测数据206和预测参考224中将原始BPU重构为预测的BPU 208。
理想情况下,预测的BPU208可以与原始BPU相同。然而,由于非理想的预测和重构操作,预测的BPU208通常与原始BPU略有不同。为了记录这种差异,在生成预测的BPU 208之后,编码器可以将其从原始BPU中减去以生成残差BPU 210。例如,编码器可以将预测的BPU208的像素的值(例如,灰度值或RGB值)从原始BPU的对应像素的值中减去。残差BPU 210的每个像素可以具有残差值,该残差值是原始BPU和预测的BPU 208的对应像素之间的这种减法的结果。与原始BPU相比,预测数据206和残差BPU 210可以具有更少的比特,但它们可以用于重构原始BPU,而不会出现显著的质量劣化。因此,原始BPU被压缩。
为了进一步压缩残差BPU 210,在变换阶段212,编码器可以通过将残差BPU 210分解为一组二维“基本模式”来减少其空间冗余,每个基本模式与“变换系数”相关联。基本模式可以具有相同的大小(例如,残差BPU 210的大小)。每个基本模式可以表示残差BPU 210的变化频率(例如,亮度变化的频率)分量。任何基本模式都不能从任何其他基本模式的任何组合(例如,线性组合)再现。换言之,分解可以将残差BPU 210的变化分解到频域中。这种分解类似于函数的离散傅里叶变换,其中基本模式类似于离散傅里叶变换的基函数(例如,三角函数),变换系数类似于与基函数相关的系数。
不同的变换算法可以使用不同的基本模式。可以在变换阶段212使用各种变换算法,诸如,离散余弦变换、离散正弦变换等。在变换阶段212的变换是可逆的。也就是说,编码器可以通过变换的逆运算(称为“逆变换”)来恢复残差BPU 210。例如,为了恢复残差BPU210的像素,逆变换可以是将基本模式的对应像素的值乘以相应的相关系数,并将乘积相加以产生加权和。对于视频编码标准,编码器和解码器都可以使用相同的变换算法(因此使用相同的基本模式)。因此,编码器可能只记录变换系数,解码器可以从这些系数重构残差BPU210,而无需从编码器接收基本模式。与残差BPU 210相比,变换系数可以具有更少的比特,但它们可以用于重构残差BPU 210,而不会显著降低质量。因此,残差BPU 210被进一步压缩。
编码器可以在量化阶段214进一步压缩变换系数。在变换过程中,不同的基本模式可以表示不同的变化频率(例如,亮度变化频率)。由于人眼通常更善于识别低频变化,因此编码器可以忽略高频变化的信息,而不会导致解码质量显著下降。例如,在量化阶段214,编码器可以通过将每个变换系数除以整数值(称为“量化比例因子”)并将商舍入到其最接近的整数来生成量化的变换系数216。在这样的操作之后,高频基本模式的一些变换系数可以转换为零,低频基本模式的变换系数可以转换为较小的整数。编码器可以忽略零值的量化的变换系数216,通过该操作进一步压缩变换系数。量化过程也是可逆的,其中量化的变换系数216可以在量化的逆运算(称为“逆量化”)中重构为变换系数。
因为编码器在舍入操作中忽略了这种除法的余数,所以量化阶段214可能是有损的。通常,量化阶段214可以在过程200A中造成最大的信息损失。信息损失越大,量化的变换系数216可能需要的比特越少。为了获得不同程度的信息丢失,编码器可以使用量化参数的不同值或量化过程的任何其他参数。
在二进制编码阶段226,编码器可以使用二进制编码技术(例如,熵编码、可变长度编码、算术编码、霍夫曼编码、上下文自适应二进制算术编码或任何其他无损或有损压缩算法)对预测数据206和量化的变换系数216进行编码。在一些实施例中,除了预测数据206和量化的变换系数216之外,编码器可以在二进制编码阶段226编码其他信息,例如,在预测阶段204使用的预测模式、预测操作的参数、在变换阶段212的变换类型,量化过程的参数(例如,量化参数)、编码器控制参数(例如,比特率控制参数)等。编码器可以使用二进制编码阶段226的输出数据来生成视频比特流228。在一些实施例中,视频比特流228可以进一步打包用于网络传输。
参考过程200A的重构路径,在逆量化阶段218,编码器可以对量化的变换系数216执行逆量化以生成重构的变换系数。在逆变换阶段220,编码器可以基于重构的变换系数生成重构的残差BPU 222。编码器可以将重构的残差BPU 222添加到预测的BPU 208,以生成将在过程200A的下一次迭代中使用的预测参考224。
应当注意,可以使用过程200A的其他变体对视频序列202进行编码。在一些实施例中,过程200A的各个阶段可以由编码器以不同的顺序执行。在一些实施例中,过程200A的一个或多个阶段可以组合成单个阶段。在一些实施例中,过程200A的单个阶段可分为多个阶段。例如,变换阶段212和量化阶段214可以组合成单个阶段。在一些实施例中,过程200A可以包括附加阶段。在一些实施例中,过程200A可以省略图2A中的一个或多个阶段。
图2B示出了与本公开实施例一致的另一示例性编码过程200B的示意图。过程200B可以修改自过程200A。例如,过程200B可由符合混合视频编码标准(例如,H.26x系列)的编码器使用。与过程200A相比,过程200B的前向路径另外包括模式决定阶段230,并将预测阶段204划分为空间预测阶段2042和时间预测阶段2044。过程200B的重构路径另外包括环路滤波器阶段232和缓存区234。
通常,预测技术可以分为两类:空间预测和时间预测。空间预测(例如,图像内预测或“帧内预测”)可以使用来自同一图像中一个或多个已编码的相邻BPU的像素来预测当前BPU。即,空间预测中的预测参考224可以包括相邻的BPU。空间预测可以减少图像固有的空间冗余。时间预测(例如,图像间预测或“帧间预测”)可以使用来自一个或多个已编码的图像的区域来预测当前BPU。即,时间预测中的预测参考224可以包括已编码的图像。时间预测可以减少图像的固有时间冗余。
参考过程200B,在前向路径中,编码器在空间预测阶段2042和时间预测阶段2044执行预测操作。例如,在空间预测阶段2042,编码器可以执行帧内预测。对于正在被编码的图像的原始BPU,预测参考224可以包括在同一图像中已被编码(在前向路径中)和重构(在重构路径中)的一个或多个相邻BPU。编码器可以通过外推相邻BPU来生成预测的BPU 208。外推技术可以包括例如线性外推或内插、多项式外推或内插等。在一些实施例中,编码器可以在像素级执行外推,诸如通过为预测的BPU 208的每个像素对对应像素的值进行外推。用于外推的相邻BPU可以相对于原始BPU位于各种方向,例如在垂直方向(例如,在原始BPU的顶部)、水平方向(例如,在原始BPU的左侧)、对角方向(例如,在原始BPU的左下、右下、左上或右上),或在所使用的视频编码标准中定义的任何方向。对于帧内预测,预测数据206可以包括例如所使用的相邻BPU的位置(例如,坐标)、所使用的相邻BPU的大小、外推参数、所使用的相邻BPU相对于原始BPU的方向等。
对于另一示例,在时间预测阶段2044,编码器可以执行帧间预测。对于当前图像的原始BPU,预测参考224可以包括已经编码(在前向路径中)和重构(在重构路径中)的一个或多个图像(称为“参考图像”)。在一些实施例中,可以逐个BPU地对参考图像进行编码和重构。例如,编码器可以将重构的残差BPU 222添加到预测的BPU 208以生成重构的BPU。当生成同一图像的所有重构BPU时,编码器可以生成重构图像作为参考图像。编码器可以执行“运动估计”操作,以在参考图像的范围(称为“搜索窗口”)中搜索匹配区域。参考图像中搜索窗口的位置可以基于原始BPU在当前图像中的位置来确定。例如,搜索窗口可以以参考图像中与当前图像中的原始BPU具有相同坐标的位置为中心,并且可以向外扩展预定距离。当编码器(例如,通过使用像素递归算法、块匹配算法等)识别出搜索窗口中与原始BPU类似的区域时,编码器可以确定此类区域作为匹配区域。匹配区域可以具有与原始BPU不同的尺寸(例如,小于、等于、大于或形状不同)。由于参考图像和当前图像在时间轴上是时间分离的(例如,如图1所示),因此可以认为匹配区域随着时间的推移“移动”到原始BPU的位置。编码器可以将这种运动的方向和距离记录为“运动矢量”。当使用多个参考图像(例如,如图1中的图像106)时,编码器可以针对每个参考图像搜索匹配区域并确定其相关运动矢量。在一些实施例中,编码器可以将权重分配给各个匹配参考图像的匹配区域的像素值。
运动估计可用于识别各种类型的运动,例如平移、旋转、缩放等。对于帧间预测,预测数据206可以包括例如匹配区域的位置(例如,坐标)、与匹配区域相关联的运动矢量、参考图像的数量、与参考图像相关联的权重等。
为了生成预测的BPU208,编码器可以执行“运动补偿”的操作。运动补偿可用于基于预测数据206(例如,运动矢量)和预测参考224重构预测的BPU 208。例如,编码器可以根据运动矢量移动参考图像的匹配区域,其中编码器可以预测当前图像的原始BPU。当使用多个参考图像时(例如,如图1中的图像106),编码器可以根据匹配区域的各自的运动矢量和平均像素值来移动参考图像的匹配区域。在一些实施例中,如果编码器已将权重分配给各个匹配参考图像的匹配区域的像素值,则编码器可以将移动的匹配区域的像素值的加权和相加。
在一些实施例中,帧间预测可以是单向的或双向的。单向帧间预测可以使用在相对于当前图像相同的时间方向上的一个或多个参考图像。例如,图1中的图像104是单向帧间预测图像,其中参考图像(例如,图像102)在图像104之前。双向帧间预测可以在相对于当前图像的两个时间方向上使用一个或多个参考图像。例如,图1中的图像106是双向帧间预测图像,其中参考图像(例如,图像104和108)位于相对于图像104的两个时间方向。
仍然参考过程200B的前向路径,在空间预测2042和时间预测阶段2044之后,在模式决定阶段230,编码器可以为过程200B的当前迭代选择预测模式(例如,帧内预测或帧间预测之一)。例如,编码器可以执行率失真优化技术,其中编码器可以根据候选预测模式的比特率和候选预测模式下重构的参考图像的失真来选择预测模式,以最小化代价函数的值。根据选择的预测模式,编码器可以生成相应的预测的BPU208和预测的数据206。
在过程200B的重构路径中,如果在前向路径中选择了帧内预测模式,则在生成预测参考224(例如,当前图像中已编码和重构的当前BPU)之后,编码器可以直接将预测参考224馈送到空间预测阶段2042以供以后使用(例如,用于外推当前图像的下一个BPU)。编码器可以将预测参考224馈送到环路滤波器阶段232,在该阶段,编码器可以将环路滤波器应用于预测参考224,以减少或消除在预测参考224的编码期间引入的失真(例如,块伪影)。编码器可以在环路滤波器阶段232应用各种环路滤波器技术,例如去块、采样自适应偏移、自适应环路滤波器等。环路滤波的参考图像可以存储在缓存区234(或“解码图像缓存区”)中以供以后使用(例如,用作视频序列202的未来图像的帧间预测参考图像)。编码器可以将一个或多个参考图像存储在缓存区234中,以在时间预测阶段2044使用。在一些实施例中,编码器可以在二进制编码阶段226对环路滤波器的参数(例如,环路滤波器强度)以及量化的变换系数216、预测数据206和其他信息进行编码。
图3A示出了与本公开实施例一致的示例解码过程300A的示意图。过程300A可以是对应于图2A中的压缩过程200A的解压缩过程。在一些实施例中,过程300A可以类似于过程200A的重构路径。解码器可以根据过程300A将视频比特流228解码为视频流304。视频流304可以与视频序列202非常类似。然而,由于压缩和解压缩过程中的信息丢失(例如,图2A和图2B中的量化阶段214),通常,视频流304与视频序列202不同。类似于图2A和图2B中的过程200A和200B,解码器可以在基本处理单元(BPU)级对视频比特流228中编码的每个图像执行过程300A。例如,解码器可以以迭代方式执行过程300A,其中解码器可以在过程300A的一次迭代中解码基本处理单元。在一些实施例中,解码器可以针对视频比特流228中编码的每个图像的区域(例如,区域114-118)并行执行过程300A。
在图3A中,解码器可以将与编码图像的基本处理单元(称为“编码BPU”)相关联的视频比特流228的一部分馈送到二进制解码阶段302。在二进制解码阶段302,解码器可以将该部分解码为预测数据206和量化的变换系数216。解码器可以将量化的变换系数216馈送到逆量化阶段218和逆变换阶段220以生成重构的残差BPU 222。解码器可以将预测数据206馈送到预测阶段204以生成预测的BPU 208。解码器可以将重构的残差BPU 222添加到预测的BPU 208以生成预测参考224。在一些实施例中,预测参考224可以存储在缓存区中(例如,计算机存储器中的解码图像缓存区)。解码器可以将预测的参考224馈送到预测阶段204,以在过程300A的下一次迭代中执行预测操作。
解码器可以迭代地执行过程300A以对编码图像的每个编码BPU进行解码,并生成用于对编码图像的下一个编码BPU进行编码的预测参考224。在对编码图像的所有编码BPU进行解码之后,解码器可以将图像输出到视频流304以进行显示,并继续解码视频比特流228中的下一个编码图像。
在二进制解码阶段302,解码器可以执行编码器使用的二进制编码技术(例如,熵编码、可变长度编码、算术编码、哈夫曼编码、上下文自适应二进制算术编码或任何其他无损压缩算法)的逆运算。在一些实施例中,除了预测数据206和量化的变换系数216之外,解码器可以在二进制解码阶段302解码其他信息,例如,预测模式、预测操作的参数、变换类型、量化过程的参数(例如,量化参数)、编码器控制参数(例如,比特率控制参数)等。在一些实施例中,如果视频比特流228通过网络以包的形式传输,则解码器可以在将视频比特流228馈送到二进制解码阶段302之前对其进行解包。
图3B示出了与本公开实施例一致的另一示例性解码过程300B的示意图。过程300B可以修改自过程300A。例如,过程300B可由符合混合视频编码标准(例如,H.26x系列)的解码器使用。与过程300A相比,过程300B另外将预测阶段204分为空间预测阶段2042和时间预测阶段2044,并且另外包括环路滤波器阶段232和缓存区234。
在过程300B中,对于正在被解码的编码图像(称为“当前图像”)的编码基本处理单元(称为“当前BPU”),由解码器从二进制解码阶段302解码的预测数据206可以包括各种类型的数据,这取决于编码器使用什么预测模式对当前BPU进行编码。例如,如果编码器使用帧内预测对当前BPU进行编码,则预测数据206可以包括指示帧内预测的预测模式指示符(例如,标志值)、帧内预测操作的参数等。帧内预测操作的参数可以包括,例如,用作参考的一个或多个相邻BPU的位置(例如,坐标)、相邻BPU的大小、外推参数、相邻BPU相对于原始BPU的方向等。对于另一示例,如果编码器使用帧间预测对当前BPU进行编码,则预测数据206可以包括指示帧间预测的预测模式指示符(例如,标志值)、帧间预测操作的参数等。帧间预测操作的参数可以包括,例如,与当前BPU相关联的参考图像的数量、分别与参考图像相关联的权重、各个参考图像中一个或多个匹配区域的位置(例如,坐标),分别与匹配区域相关联的一个或多个运动矢量等。
基于预测模式指示符,解码器可以决定是在空间预测阶段2042执行空间预测(例如,帧内预测),还是在时间预测阶段2044执行时间预测(例如,帧间预测)。图2B中描述了执行这种空间预测或时间预测的细节,下文不再重复。在执行这种空间预测或时间预测之后,解码器可以生成预测的BPU 208。如图3A所述,解码器可以将预测的BPU 208和重构的残差BPU 222相加以生成预测参考224。
在过程300B中,解码器可以将预测参考224馈送到空间预测阶段2042或时间预测阶段2044,以在过程300B的下一次迭代中执行预测操作。例如,如果在空间预测阶段2042使用帧内预测对当前BPU进行解码,则在生成预测参考224(例如,解码的当前BPU)之后,解码器可以直接将预测参考224馈送到空间预测阶段2042以供以后使用(例如,用于外推当前图像的下一个BPU)。如果在时间预测阶段2044使用帧间预测对当前BPU进行解码,则在生成预测参考224(例如,其中所有BPU已被解码的参考图像)之后,解码器可以将预测参考224馈送到环路滤波器阶段232以减少或消除失真(例如,块伪影)。解码器可以如图2B所述的方式将环路滤波器应用于预测参考224。经环路滤波的参考图像可以存储在缓存区234中(例如,计算机存储器中的解码图像缓存区以供以后使用(例如,用作视频比特流228的未来编码图像的帧间预测参考图像)。解码器可以将一个或多个参考图像存储在缓存区234中,以在时间预测阶段2044使用。在一些实施例中,预测数据还可以包括环路滤波器的参数(例如,环路滤波器强度)。在一些实施例中,当预测数据206的预测模式指示符指示帧间预测被用于编码当前BPU时,预测数据包括环路滤波器的参数。
图4是与本公开实施例一致的用于编码或解码视频的示例装置400的框图。如图4所示,装置400可以包括处理器402。当处理器402执行本文所述的指令时,装置400可以成为用于视频编码或解码的专用机器。处理器402可以是能够操纵或处理信息的任何类型的电路。例如,处理器402可以包括任意数量的中央处理单元(或“CPU”)、图形处理单元(或“GPU”)、神经处理单元(“NPU”)、微控制器单元(“MCU”)、光学处理器、可编程逻辑控制器、微控制器、微处理器、数字信号处理器、知识产权(IP)核、可编程逻辑阵列(PLA)、可编程阵列逻辑(PAL)、通用阵列逻辑(GAL)、复杂可编程逻辑器件(CPLD)、现场可编程门阵列(FPGA)、片上系统(SoC)、专用集成电路(ASIC)等的任意组合。在一些实施例中,处理器402还可以是分组为单个逻辑组件的一组处理器。例如,如图4所示,处理器402可以包括多个处理器,包括处理器402a、处理器402b和处理器402n。
装置400还可以包括被配置为存储数据(例如,一组指令、计算机代码、中间数据等)的存储器404。例如,如图4所示,存储的数据可以包括程序指令(例如,用于实现过程200A、200B、300A或300B中的阶段的程序指令)和用于处理的数据(例如,视频序列202、视频比特流228或视频流304)。处理器402可以访问程序指令和用于处理的数据(例如,通过总线410),并执行程序指令以对用于处理的数据执行操作或控制。存储器404可以包括高速随机存取存储设备或非易失性存储设备。在一些实施例中,存储器404可以包括任意数量的随机存取存储器(RAM)、只读存储器(ROM)、光盘、磁盘、硬盘驱动器、固态驱动器、闪存驱动器、安全数字(SD)卡、记忆棒、紧凑闪存(CF)卡等的任意组合。存储器404也可以是分组为单个逻辑组件的一组存储器(图4中未示出)。
总线410可以是在装置400内的组件之间传输数据的通信设备,诸如内部总线(例如,CPU-存储器总线)、外部总线(例如,通用串行总线端口、外围组件互连快速端口)等。
为了便于解释而不引起歧义,处理器402和其他数据处理电路在本公开中统称为“数据处理电路”。数据处理电路可以完全实现为硬件,或软件、硬件或固件的组合。此外,数据处理电路可以是单个独立模块,或者可以完全或部分组合到装置400的任何其他组件中。
装置400还可以包括网络接口406,以提供与网络(例如,互联网、内联网、局域网、移动通信网络等)的有线或无线通信。在一些实施例中,网络接口406可以包括任意数量的网络接口控制器(NIC)、射频(RF)模块、转发器、收发器、调制解调器、路由器、网关、有线网络适配器、无线网络适配器、蓝牙适配器、红外适配器、近场通信(“NFC”)适配器、蜂窝网络芯片等的任意组合。
在一些实施例中,可选地,装置400还可以包括外围接口408,以提供到一个或多个外围设备的连接。如图4所示,外围设备可以包括但不限于光标控制设备(例如,鼠标、触摸板或触摸屏)、键盘、显示器(例如,阴极射线管显示器、液晶显示器或发光二极管显示器)、视频输入设备(例如,相机或耦合到视频档案的输入接口)等。
应当注意,视频编解码器(例如,执行过程200A、200B、300A或300B的编解码器)可以实现为装置400中任何软件或硬件模块的任意组合。例如,过程200A、200B、300A或300B的一些或所有阶段可以实现为装置400的一个或多个软件模块,例如可以加载到存储器404中的程序指令。对于另一示例,过程200A、200B、300A或300B的一些或所有阶段可以实现为装置400的一个或多个硬件模块,例如专用数据处理电路(例如,FPGA、ASIC、NPU等)。
图5示出了编码过程的示例性处理流程,在一些实施例中,编码过程500可以应用于VVC标准。如图5所示,在编码过程500中,变换阶段212可能包括自适应颜色变换(ACT)212A,其也被应用于减少4:4:4色度格式中的三个颜色分量之间的冗余。ACT 212A通过将残差从输入颜色空间(例如,通常在RGB颜色空间)自适应地转换到YCgCo空间,在预测残差域中执行环路颜色空间转换。通过在编码单元(CU)级别指示一个ACT标志,两个颜色空间被自适应地选择。当ACT标志等于1时,CU的残差在YCgCo空间中被编码。当ACT标志不等于I(例如,ACT标志等于0)时,CU的残差在原始颜色空间(例如,通常在RGB颜色空间)中被编码。编码过程500还可以包括初级变换212B,其可应用于ACT 212A的输出,以及低频不可分离变换(LFNST)212C,其可应用于初级变换212B的输出。量化214可以接收LFNST212C的输出。
图6示出了解码过程的示例性处理流程。在一些实施例中,解码过程600可以应用于VVC标准。如图6所示,在解码过程600中,逆变换阶段220可能包括逆LFNST 220C和逆初级变换220B,并且逆LFNST 220C被应用于逆量化218和逆初级变换220B之间。解码过程还可以包括逆ACT 220A,其可以应用于逆初级变换220B的输出。重构的残差BPU 222可以接收逆ACT 220A的输出。在LFNST 212C中,根据块大小应用4×4不可分离变换或8×8不可分离转换。四个变换集在LFNST 212C中被使用。对于每个变换集,所选的不可分离二次变换候选由显式指示的LFNST索引进一步指定。在变换系数之后的每个帧内编码单元(CU)的比特流中指示索引一次。
在VVC中,离散余弦变换类型II(DCT-II)被用作初级变换。除了DCT-II之外,还使用多变换选择(MTS)方案,其中从离散余弦变换8(DCT8)/离散正弦变换7(DST7)的多个选定变换中选择初级变换。
如图5所示的变换212可以是非常复杂的单元。例如,由于矩阵乘法,LFNST 212C是复杂的过程。结果,级联三个逆变换(例如,如图6所示的逆LFNST 220C之后是逆初级变换220B,然后是逆ACT 220A)需要更多的时钟周期,并增加了解码流水线的延迟。此外,LFNST矩阵集是使用YUV颜色空间中的残差信号进行训练的。它们可能不会针对ACT编码块进行优化,因为ACT残差通常在YCoCg颜色空间中。因此,就压缩性能而言,LFNST 212A与ACT 212C的组合可能不是有益的。
本公开的实施例提供了一种更新的编码和解码方案来解决上面列出的问题,诸如提高压缩性能和减少延迟。图7示出了根据本公开的一些实施例的用于LFNST和ACT的编码方法700的示例性流程图。如图7所示,方法700可以由编码器(例如,通过图2A的过程200A或图2B的过程200B)执行,或者由装置(例如,图4的装置400)的一个或多个软件或硬件组件执行。例如,一个或多个处理器(例如,图4的处理器402)可以执行方法700。在一些实施例中,方法700可以由计算机程序产品实现,该计算机程序产品包含在计算机可读介质中,并包括由计算机(例如,图4的装置400)执行的诸如程序代码之类的计算机可执行指令。方法700可能包括以下步骤702和704。
在步骤702,一个或多个视频序列被接收以用于处理。在步骤704,仅使用低频不可分离变换(LFNST)和自适应颜色变换(ACT)中的一个对该一个或多个视频序列进行编码。例如,在变换阶段212(参见图5)中,可以使用LFNST 212C或ACT 212B,但不允许LFNST 212C和ACT 212B的组合。如果LFNST 212C被使用,则ACT 212B被禁用。如果ACT 212B被使用,则LFNST 212C被禁用。因此,提高了编码/解码过程的效率。在一些实施例中,方法700被用于编码层视频序列(CLVS)级别。在一些实施例中,方法700被用于CU级别。
在CLVS级别,在一些实施例中,ACT 212A基于LFNST 212C有条件地被处理。图8示出了根据本公开的一些实施例的用于LFNST和ACT的编码方法800的示例性流程图。可以理解,方法800可以是图7的方法700中的步骤704的一部分。在步骤802,ACT基于LFNST的状态被启用。例如,如果在CLVS中LFNST被启用,则无需确定ACT,使得ACT不能在CLVS中被使用。仅当在CLVS中未应用LFNST时,ACT才能在CLVS中被启用。因此,如果LFNST被启用,则ACT不能被启用。
在VVC(例如,VVC草案9)中,存在序列参数集(SPS)句法元素sps_act_enabled_flag(sps_act_启用_标志),以启用或禁用CLVS的ACT。句法元素sps_act_enabled_flag等于1可以表示ACT可能用于编码/解码CLVS的图像。sps_act_enabled_flag句法元素等于0可以意味着ACT不用于编码/解码CLVS的图像。在一些实施例中,另一个SPS标志sps_lfnst_enabled_flag可以被使用来指示是否表示LFNST在CLVS中被启用或禁用。
图9示出了根据本公开的一些实施例的示例性SPS句法900。SPS句法结构900可以在方法800中被使用。如图9所示,对先前VVC的更改以斜体显示,且提议的已删除句法进一步以删除线显示。如图9所示,在VVC(例如,VVC草案9)中,基于句法元素902(例如,sps_lfnst_enabled_flag)的值,句法元素901(例如,sps_act_enabled_flag)被有条件地指示。如果LFNST在CLVS中被启用(例如,句法元素902等于1),则句法元素901不被指示并被推断为等于0。由于句法元素901的指示取决于句法元素902的值,所以句法元素902在句法元素902之前被发送。如图9所示,如果ChromaArrayType(色度类型)等于3(例如,4:4:4色度子采样视频),sps_max_luma_transform_size_64_flag(sps_max_亮度_变换_尺寸_64_标志)句法元素等于0,并且句法元素902等于0(参考框903),则句法元素901被指示。结果,如果句法元素902未被启用(例如,sps_lfnst_enabled_flag等于0),则句法元素901被指示。因此,不允许LFNST和ACT的组合用于编码或解码,因此降低了编码/解码过程的复杂性。
此外,可以更新句法元素sps_act_enabled_flag的语义。图10示出了根据本公开的一些实施例的更新的句法元素sps_act_enabled_flag的示例性语义。如图10所示,对先前VVC的更改以斜体显示。部分1001被添加,当sps_act_enabled_flag不存在时,它被推断为等于0。因此,句法元素sps_act_enabled_flag的语义定义了sps_act_enabled_flag在编码/解码比特流中不存在时sps_act_enabled_flag的值。
在一些实施例中,可以对sps_act_enabled_flag施加比特流一致性约束,并且句法元素sps_act_enabled_flag的语义可以被更新。图11示出了根据本公开的一些实施例的更新的句法元素sps_act_enabled_flag的示例性语义。如图11所示,对先前VVC的更改以斜体显示,参考框1101。如图11中所示,比特流一致性约束1101被添加,使得当sps_lfnst_enabled_flag(sps_lfnst_启用_标志)被启用时(例如,sps_lfnst_enabled_flag的值等于1),sps_act_enabled_flag不被启用(例如,sps_act_enabled_flag的值等于0)。因此,不允许LFNST和ACT的组合用于编码或解码,因此降低了编码/解码过程的复杂性。
在一些实施例中,LFNST基于ACT有条件地被处理。图12示出了根据本公开的一些实施例的用于LFNST和ACT的编码方法1200的示例性流程图。可以理解,方法1200可以是图7的方法700中的步骤704的一部分。在步骤1202,LFNST基于ACT的状态被启用。例如,如果在CLVS中应用ACT,则无需确定LFNST,使得LFNST不能在CLVS中被使用。只有在CLVS中未应用ACT时,LFNST才能在CLVS中被启用。因此,如果在CLVS中ACT被启用,则LFNST不能被启用。
图13示出了根据本公开的一些实施例的具有更新的sps_lfnst_enabled_flag的示例性SPS句法。SPS句法结构1300可以在方法1200中被使用。在图13中,从先前VVC的更改以斜体显示,如框1302所示。如图13所示,在VVC(例如,VVC草案9)中,基于sps_act_enabled_flag的值,句法元素1301(例如,sps_lfnst_enabled_flag)被有条件地指示。如果sps_act_enabled_flag的值等于0(即,ACT未被启用),则句法元素1301被指示。如果sps_act_enabled_flag的值等于1(即,ACT被启用),则句法元素1301不被指示并被推断为等于0。因此,不允许LFNST和ACT的组合用于编码或解码,因此降低了编码/解码过程的复杂性。
此外,可以更新句法元素sps_lfnst_enabled_flag的语义。图14示出了根据本公开的一些实施例的更新的句法元素sps_lfnst_enabled_flag的示例性语义。如图14所示对先前VVC的更改以斜体显示。部分1401被添加,当sps_lfnst_enabled_flag不存在时,它被推断为等于0。因此,句法元素sps_lfnst_enabled_flag的语义更加健全。
图15示出了根据本公开的一些实施例的更新的句法元素sps_lfnst_enabled_flag的另一示例性语义。如图15所示,对先前VVC的更改以斜体显示,如框1501所示。如图15中所示,一致性约束1501被添加,使得当sps_act_enabled_flag被启用时时(例如,sps_act_enabled_flag的值等于1),sps_lfnst_enabled_flag不被启用(例如,sps_lfnst_enabled_flag的值等于0)。因此,不允许LFNST和ACT的组合用于编码或解码,因此降低了编码/解码过程的复杂性。
在一些实施例中,比特流一致性约束被施加,使得sps_act_enabled_flag的值和sps_lfnst_enabled_flag的值不能同时等于1。例如,可以应用以下约束:“比特流一致性的要求是,在单个CLVS的比特流中,sps_act_enabled_flag的值和sps_lfnst_enabled_flag的值不应都等于1”。
在上面描述的实施例中,在CLVS级别禁用LFNST和ACT的组合。在一些实施例中,LFNST和ACT处于CU级别。图16示出了根据本公开的一些实施例的用于LFNST变换和ACT变换的编码方法1600的示例性流程图。可以理解,方法1600可以是图7的方法700中的步骤704的一部分。在步骤1602中,LFNST基于当前编码单元中的ACT的状态被启用。例如,当在当前CU中ACT未被启用时,确定是否在当前CU中使用LFNST。如果在当前CU中ACT被启用,则无需确定是否使用LFNST,使得LFNST不能在当前CU中被使用。仅当在当前CU中ACT未被启用时,LFNST才能在当前CU中被使用。因此,LFNST和ACT的组合在当前CU中是被不允许的。
在VVC(例如VVC草稿9)中,存在CU级别句法元素cu_act_enabled_flag(cu_act_启用_标志),以指示ACT是否在当前CU被应用。如果cu_act_enabled_flag的值等于1(即,在当前CU中ACT被启用),则ACT在当前CU被应用。另一个CU级别句法元素lfnst_idx(lfnst_索引)被使用,句法元素lfnst_index指定了是否和选定的变换集中两个LFNST内核中的哪一个。通常,在LFNST中预先定义了四个变换集,每个变换集具有两个不可分离的变换(例如,两个LFNST内核)。句法元素lfnst_index等于0指定LFNST在当前CU中不被使用。
为了在CU级别中禁止LFNST和ACT的组合,如果cu_act_enabled_flag的值等于1(即,ACT在当前CU中未被启用),则lfnst_index不被指示并被推断为0。
在一些实施例中,可以基于cu_act_enabled_flag来指示句法元素lfnst_index。图17示出了根据本公开的一些实施例的包括句法元素cu_act_enabled_flag的示例性句法。句法结构1700可以在方法1600中被使用。如图17所示,对先前VVC的更改以斜体显示,参考框1701。如图17所示,如果cu_act_enabled_flag等于1,则句法元素1702(例如,lfnst_idx)不被指示。不允许LFNST和ACT的组合用于编码或解码,因此降低了编码/解码过程的复杂性。
在一些实施例中,可以施加比特流一致性约束,使得当句法元素1702(例如,lfnst_idx)的值不等于0时,cu_act_enabled_flag的值等于0。句法元素cu_act_enabled_flag的语义可以被更新。图18示出了根据本公开的一些实施例的更新的句法元素cu_act_enabled_flag的示例性语义。如图18所示,对先前VVC的更改以斜体显示,参考框1801。如图18所示,比特流一致性约束1801被添加,使得当lfnst_idx不等于0(即,LFNST在当前CU中被使用)时,cu_act_enabled_flag不被启用(例如,cu_act_enabled_flag的值等于0)。因此,不允许LFNST和ACT的组合用于编码或解码,从而降低了编码/解码过程的复杂性。
在一些实施例中,可以施加比特流一致性约束,使得当cu_act_enabled_flag的值等于1时,lfnst_index的值等于0。句法元素lfnst_ldx的语义可以被更新。图19示出了根据本公开的一些实施例的更新的句法元素lfnst_ldx的示例性语义。如图19所示,对先前VVC的更改以斜体显示,参考框1901。如图19所示,比特流一致性约束1901被添加,使得当cu_act_enabled_flag被启用(即,cu_act_enabled_flag的值等于1)时,lfnst_ldx不被启用(例如,lfnst_ldx的值等于0)。因此,不允许LFNST和ACT的组合用于编码或解码,从而降低了编码/解码过程的复杂性。
图20示出了根据本公开的一些实施例的用于LFNST和ACT的编码方法2000的示例性流程图。可以理解,方法2000可以是图7的方法700中的步骤704的一部分。在步骤2002,基于在当前编码单元中ACT未被启用,用于指示在当前编码单元中应用LFNST的变量被确定。如果ACT在当前CU中被启用,则不会导出该变量,使得当ACT被启用时,LFNST不能在当前CU中被使用。该变量仅在LFNST在当前CU中被使用且ACT未被启用时被导出,以确保不允许LFNST和ACT的组合。图21示出了根据本公开的一些实施例的更新的变量ApplyLfnstFlag的示例性语义。该语义可用于方法2000。如图21所示,对先前VVC的更改以斜体显示。如图21所示,仅当ACT在当前CU中未被启用(例如,句法元素2103(例如,cu_act_enabled_flag)的值等于0)并且LFNST被使用(例如,句法元素2102(例如,lfnst_ldx)的值大于0)时,变量2101(例如,ApplyLfnstFlag)能被导出。因此,不允许LFNST和ACT的组合用于编码或解码,从而降低了编码/解码过程的复杂性。
可以理解,虽然本公开涉及基于值等于0或1来提供推断的各种句法元素,但是可以以任何方式(例如,1或0)配置值以提供适当的推断。
在一些实施例中,也提供了包括指令的非暂时性计算机可读存储介质,并且该指令可以由设备(诸如所公开的编码器和解码器)执行,以执行上述方法。非暂时性介质的常见形式包括,例如软盘、柔性磁盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、CD-ROM、任何其他光学数据存储介质、任何具有孔图案的物理介质、RAM、PROM和EPROM、FLASH-EPROM或任何其他闪存、NVRAM、高速缓存、寄存器、任何其他存储芯片或盒及其网络版本。该设备可以包括一个或多个处理器(CPU)、输入/输出接口、网络接口和/或存储器。
应当注意,本文中的关系术语,诸如“第一”和“第二”等,仅用于区分一个实体或操作与另一实体或操作,并不要求或暗示这些实体或操作之间的任何实际关系或顺序。此外,词语“包括”、“具有”、“包含”和“包括”以及其他类似形式旨在具有相同的含义并且是开放式的,因为在这些词语中任何一个之后的一个或多个项目并不意味着是这一个或多个项目的详尽列表,或仅限于所列的一个或多个项目。
如本文所用,除非另有特别说明,否则术语“或”包括所有可能的组合,除非不可行。例如,如果声明数据库可能包括A或B,则除非另有明确说明或不可行,否则数据库可能包括A、或B,或A和B。作为第二个示例,如果声明数据库可能包括A、B或C,则除非另有明确说明或不可行,否则数据库可能包括A,或B,或C,或A和B,或A和C,或B和C,或A和B和C。
可以理解,上述实施例可以通过硬件或软件(程序代码)或硬件和软件的组合来实现。如果通过软件实现,则可以将其存储在上述计算机可读介质中。该软件当由处理器执行时,可以执行所公开的方法。本公开中描述的计算单元和其他功能单元可以通过硬件、软件或硬件和软件的组合来实现。本领域的普通技术人员还将理解,上述模块/单元中的多个可以组合为一个模块/单元,并且上述每个模块/单元可以进一步划分为多个子模块/子单元。
可以使用以下条款进一步描述实施例:
1.一种计算机实现的视频编码方法,包括:
接收一个或多个视频序列以用于处理;以及
仅使用低频不可分离变换(LFNST)和自适应颜色变换(ACT)之一对该一个或多个视频序列进行编码。
2.根据第1条的方法,其中,LFNST和ACT处于编码层视频序列(CLVS)级别。
3.根据第2条的方法,其中,仅使用LFNST和ACT之一对该一个或多个视频序列进行编码进一步包括:
基于LFNST的状态启用ACT。
4.根据第3条的方法,其中,基于LFNST的状态启用ACT进一步包括:
基于LFNST的状态确定是否启用ACT;以及
基于确定LFNST未被启用,启用ACT。
5.根据第4条的方法,其中,确定是否启用ACT进一步包括:
基于比特流一致性约束,响应于第二标志被指示,确定第一标志不被指示,第一标志启用ACT并且第二标志启用LFNST。
6.根据第2条的方法,其中,仅使用LFNST和ACT之一对该一个或多个视频序列进行编码进一步包括:
基于ACT的状态启用LFNST。
7.根据第6条的方法,其中,基于ACT的状态启用LFNST还包括:
基于ACT的状态确定是否启用LFNST;以及
基于确定ACT未被启用,启用LFNST。
8.根据第7条的方法,其中,确定是否启用LFNST进一步包括:
基于比特流一致性约束,响应于第二标志被指示,确定第一标志不被指示,第一标志启用LFNST并且第二标志启用ACT。
9.根据第1条的方法,其中,LFNST和ACT处于编码单元(CU)级别。
10.根据第9条的方法,其中,仅使用LFNST和ACT之一对该一个或多个视频序列进行编码进一步包括:
基于当前编码单元中ACT未被使用的状态,启用LFNST。
11.根据第9条的方法,其中,仅使用LFNST和ACT之一对该一个或多个视频序列进行编码进一步包括:
基于比特流一致性约束,响应于LFNST在当前编码单元中被使用,确定第一标志不被指示,第一标志启用当前编码单元中的ACT。
12.根据第9条的方法,其中,仅使用LFNST和ACT之一对该一个或多个视频序列进行编码进一步包括:
基于比特流一致性约束,响应于第一标志在当前编码单元被指示,确定LFNST在当前编码单元中不被使用,第一标志启用当前编码单元中的ACT。
13.根据第9条的方法,其中,仅使用LFNST和ACT之一对该一个或多个视频序列进行编码进一步包括:
基于在当前编码单元中ACT未被启用,确定用于指示在当前编码单元中LFNST被应用的变量。
14.一种用于执行视频数据处理的装置,该装置包括:
存储器,被配置为存储指令;以及
一个或多个处理器,被配置为执行指令以使该装置执行:
接收一个或多个视频序列以进行处理;以及
仅使用低频不可分离变换(LFNST)和自适应颜色变换(ACT)之一对该一个或多个视频序列进行编码。
15.根据第14条的装置,其中,LFNST和ACT处于编码层视频序列(CLVS)级别。
16.根据第15条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于LFNST的状态启用ACT。
17.根据第16条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于LFNST的状态确定是否启用ACT;以及
基于确定LFNST未被启用,启用ACT。
18.根据第17条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于比特流一致性约束,响应于第二标志被指示,确定第一标志不被指示,第一标志启用ACT并且第二标志启用LFNST。
19.根据第15条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于ACT的状态启用LFNST。
20.根据第19条的装置,其中处理器还被配置为执行指令以使该装置执行:
基于ACT的状态确定是否启用LFNST;以及
基于确定ACT未被启用,启用LFNST。
21.根据第20条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于比特流一致性约束,响应于第二标志被指示,确定第一标志不被指示,第一标志启用LFNST并且第二标志启用ACT。
22.根据第14条的装置,其中,LFNST和ACT处于编码单元(CU)级别。
23.根据第22条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于当前编码单元中ACT未被使用的状态,启用LFNST。
24.根据第22条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于比特流一致性约束,响应于LFNST在当前编码单元中被使用,确定第一标志不被指示,第一标志启用当前编码单元中的ACT。
25.根据第22条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于比特流一致性约束,响应于第一标志在当前编码单元被指示,确定LFNST在当前编码单元中不被使用,第一标志启用当前编码单元中的ACT。
26.根据第22条的装置,其中,处理器还被配置为执行指令以使该装置执行:
基于在当前编码单元中ACT未被启用,确定用于指示在当前编码单元中LFNST被应用的变量。
27.一种存储指令集的非暂时性计算机可读介质,该指令集可由装置的一个或多个处理器执行,以使该装置启动用于执行视频数据处理的方法,该方法包括:
接收一个或多个视频序列以用于处理;以及
仅使用低频不可分离变换(LFNST)和自适应颜色变换(ACT)之一对该一个或多个视频序列进行编码。
28.根据第27条的非暂时性计算机可读介质,其中,LFNST和ACT处于编码层视频序列(CLVS)级别。
29.根据第28条的非暂时性计算机可读介质,其中,该方法还包括:
基于LFNST的状态启用ACT。
30.根据第29条的非暂时性计算机可读介质,其中,该方法还包括:
基于LFNST的状态确定是否启用ACT;以及
基于确定LFNST未被启用,启用ACT。
31.根据第30条的非暂时性计算机可读介质,其中,该方法还包括:
基于比特流一致性约束,响应于第二标志被指示,确定第一标志不被指示,第一标志启用ACT并且第二标志启用LFNST。
32.根据第28条的非暂时性计算机可读介质,其中,该方法还包括:
基于ACT的状态启用LFNST。
33.根据第32条的非暂时性计算机可读介质,其中,该方法还包括:
基于ACT的状态确定是否启用LFNST;以及
基于确定ACT未被启用,启用LFNST。
34.根据第33条的非暂时性计算机可读介质,其中,该方法还包括:
基于比特流一致性约束,响应于第二标志被指示,确定第一标志不被指示,第一标志启用LFNST并且第二标志启用ACT。
35.根据第27条的非暂时性计算机可读介质,其中,LFNST和ACT处于编码单元(CU)级别。
36.根据第35条的非暂时性计算机可读介质,其中,该方法还包括:
基于当前编码单元中ACT未被使用的状态,启用LFNST。
37.根据第35条的非暂时性计算机可读介质,其中,该方法还包括:
基于比特流一致性约束,响应于LFNST在当前编码单元中被使用,确定第一标志不被指示,第一标志启用当前编码单元中的ACT。
38.根据第35条的非暂时性计算机可读介质,其中,该方法还包括:
基于比特流一致性约束,响应于第一标志在当前编码单元被指示,确定LFNST在当前编码单元中不被使用,第一标志启用当前编码单元中的ACT。
39.根据第35条的非暂时性计算机可读介质,其中,该方法还包括:
基于在当前编码单元中ACT未被启用,确定用于指示在当前编码单元中LFNST被应用的变量。
在前述说明书中,已经参考可以随实施方式而变化的许多具体细节对实施例进行了描述。可以对所描述的实施例进行某些调整和修改。考虑到本文公开的本发明的说明书和实践,其他实施例对于本领域技术人员而言可以是显而易见的。本说明书和示例仅被视为示例性的,本发明的真正范围和精神由以下权利要求指示。图中所示的步骤顺序也仅用于说明目的,并不旨在限于任何特定的步骤顺序。因此,本领域技术人员可以理解,在实现相同方法的同时,可以以不同的顺序执行这些步骤。
在附图和说明书中,已经公开了示例性实施例。然而,可以对这些实施例进行许多变化和修改。因此,尽管使用了特定术语,但它们仅在一般和描述性意义上使用,而不是出于限制的目的。

Claims (20)

1.一种计算机实现的视频编码方法,包括:
接收一个或多个视频序列以用于处理;以及
仅使用低频不可分离变换LFNST和自适应颜色变换ACT之一对所述一个或多个视频序列进行编码。
2.根据权利要求1所述的方法,其中,所述LFNST和所述ACT处于编码层视频序列CLVS级别。
3.根据权利要求2所述的方法,其中,仅使用所述LFNST和所述ACT之一对所述一个或多个视频序列进行编码进一步包括:
基于所述LFNST的状态,启用所述ACT。
4.根据权利要求3所述的方法,其中,基于所述LFNST的状态启用所述ACT进一步包括:
基于所述LFNST的状态,确定是否启用所述ACT;以及
基于确定所述LFNST未被启用,启用所述ACT。
5.根据权利要求2所述的方法,其中,仅使用所述LFNST和所述ACT之一对所述一个或多个视频序列进行编码进一步包括:
基于所述ACT的状态,启用所述LFNST。
6.根据权利要求5所述的方法,其中,基于所述ACT的状态启用所述LFNST进一步包括:
基于所述ACT的状态,确定是否启用所述LFNST;以及
基于确定所述ACT未被启用,启用所述LFNST。
7.根据权利要求1所述的方法,其中,所述LFNST和所述ACT处于编码单元CU级别。
8.根据权利要求7所述的方法,其中,仅使用所述LFNST和所述ACT之一对所述一个或多个视频序列进行编码进一步包括:
基于当前编码单元中所述ACT未被使用的状态,启用所述LFNST。
9.一种用于执行视频数据处理的装置,所述装置包括:
存储器,被配置为存储指令;以及
一个或多个处理器,被配置为执行指令以使所述装置执行:
接收一个或多个视频序列以进行处理;以及
仅使用低频不可分离变换LFNST和自适应颜色变换ACT之一对所述一个或多个视频序列进行编码。
10.根据权利要求9所述的装置,其中,所述LFNST和所述ACT处于编码层视频序列CLVS级别。
11.根据权利要求10所述的装置,其中,所述处理器还被配置为执行指令以使所述装置执行:
基于所述LFNST的状态,启用所述ACT。
12.根据权利要求10所述的装置,其中,所述处理器还被配置为执行指令以使所述装置执行:
基于所述ACT的状态,启用所述LFNST。
13.根据权利要求9所述的装置,其中,所述LFNST和所述ACT处于编码单元CU级别。
14.根据权利要求13所述的装置,其中,所述处理器还被配置为执行指令以使所述装置执行:
基于当前编码单元中所述ACT未被使用的状态,启用所述LFNST。
15.一种存储指令集的非暂时性计算机可读介质,所述指令集可由装置的一个或多个处理器执行,以使所述装置启动用于执行视频数据处理的方法,所述方法包括:
接收一个或多个视频序列以用于处理;以及
仅使用低频不可分离变换LFNST和自适应颜色变换ACT之一对所述一个或多个视频序列进行编码。
16.根据权利要求15所述的非暂时性计算机可读介质,其中,所述LFNST和所述ACT处于编码层视频序列CLVS级别。
17.根据权利要求16所述的非暂时性计算机可读介质,其中,所述方法还包括:
基于所述LFNST的状态,启用所述ACT。
18.根据权利要求16所述的非暂时性计算机可读介质,其中,所述方法还包括:
基于所述ACT的状态,启用所述LFNST。
19.根据权利要求15所述的非暂时性计算机可读介质,其中,所述LFNST和所述ACT处于编码单元CU级别。
20.根据权利要求19所述的非暂时性计算机可读介质,其中,所述方法还包括:
基于当前编码单元中所述ACT未被使用的状态,启用所述LFNST。
CN202180029638.6A 2020-06-09 2021-06-09 用于处理视频编码中自适应颜色变换和低频不可分离变换的方法 Pending CN115443655A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202063036499P 2020-06-09 2020-06-09
US63/036,499 2020-06-09
PCT/US2021/036639 WO2021252645A1 (en) 2020-06-09 2021-06-09 Method for processing adaptive color transform and low-frequency non-separable transform in video coding

Publications (1)

Publication Number Publication Date
CN115443655A true CN115443655A (zh) 2022-12-06

Family

ID=78818087

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180029638.6A Pending CN115443655A (zh) 2020-06-09 2021-06-09 用于处理视频编码中自适应颜色变换和低频不可分离变换的方法

Country Status (3)

Country Link
US (1) US11606577B2 (zh)
CN (1) CN115443655A (zh)
WO (1) WO2021252645A1 (zh)

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9414054B2 (en) 2012-07-02 2016-08-09 Microsoft Technology Licensing, Llc Control and use of chroma quantization parameter values
US9225991B2 (en) 2013-05-30 2015-12-29 Apple Inc. Adaptive color space transform coding
US9883184B2 (en) * 2014-10-07 2018-01-30 Qualcomm Incorporated QP derivation and offset for adaptive color transform in video coding
EP3059937A1 (en) * 2015-02-20 2016-08-24 Thomson Licensing Method and apparatus for encoding color mapping information and processing pictures based on color mapping information
US10681379B2 (en) * 2015-09-29 2020-06-09 Qualcomm Incorporated Non-separable secondary transform for video coding with reorganizing
US11368723B2 (en) * 2019-10-22 2022-06-21 Tencent America LLC Signaling of coding tools for encoding a video component as monochrome video
CN114731437B (zh) * 2019-11-26 2024-04-23 韦勒斯标准与技术协会公司 通过使用自适应颜色空间变换处理视频信号的方法和设备
US11470353B2 (en) * 2019-12-20 2022-10-11 Qualcomm Incorporated Low-frequency non-separable transform (LFNST) with reduced zero-out in video coding
WO2021150085A1 (ko) * 2020-01-25 2021-07-29 엘지전자 주식회사 색상 공간 변환을 사용하는 레지듀얼을 위한 영상 또는 비디오 코딩

Also Published As

Publication number Publication date
US20210385491A1 (en) 2021-12-09
WO2021252645A1 (en) 2021-12-16
US11606577B2 (en) 2023-03-14

Similar Documents

Publication Publication Date Title
CN114424525A (zh) 视频处理中的量化参数标识
US11889091B2 (en) Methods for processing chroma signals
US20210092388A1 (en) Lossless coding of video data
CN114902670A (zh) 用信号通知子图像划分信息的方法和装置
CN115836525B (zh) 用于从多个交叉分量进行预测的视频编码、解码方法和设备
CN114788284B (zh) 用于在调色板模式下对视频数据进行编码的方法和装置
US20240048772A1 (en) METHOD AND APPARATUS FOR PROCESSING VIDEO CONTENT WITH ALF and CCALF
CN115349228A (zh) 视频记录的符号数据隐藏
JP2023519216A (ja) ループフィルタの高レベルシンタックス制御
CN114762332A (zh) 构建合并候选列表的方法
CN115699744B (zh) 双向预测校正系统和方法
US20210266548A1 (en) Signaling of maximum transform size and residual coding method
CN115428455A (zh) 调色板预测方法
US11606577B2 (en) Method for processing adaptive color transform and low-frequency non-separable transform in video coding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination