CN115428455A - 调色板预测方法 - Google Patents

调色板预测方法 Download PDF

Info

Publication number
CN115428455A
CN115428455A CN202180026652.0A CN202180026652A CN115428455A CN 115428455 A CN115428455 A CN 115428455A CN 202180026652 A CN202180026652 A CN 202180026652A CN 115428455 A CN115428455 A CN 115428455A
Authority
CN
China
Prior art keywords
palette
entries
predictor
palette predictor
previous
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
CN202180026652.0A
Other languages
English (en)
Inventor
廖如伶
穆罕默德·G·萨维尔
叶琰
黄玄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Alibaba Group Holding 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 Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Publication of CN115428455A publication Critical patent/CN115428455A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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
    • H04N19/196Methods 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 being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • H04N19/197Methods 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 being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters including determination of the initial value of an encoding parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness

Landscapes

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

Abstract

本公开提供一种计算机实现的视频编码方法。所述方法包括:接收用于处理的视频帧;生成所述视频帧的一个或多个编码单元;以及,使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。

Description

调色板预测方法
相关申请的交叉引用
本公开要求于2020年4月4日提交的第63/005,305号美国临时申请和于2020年3月31日提交的第63/002,594号美国临时申请的优先权,前两者通过引用的方式并入本文。
技术领域
本公开一般涉及视频处理,更具体地,涉及在视频编码和解码中的调色板模式的使用。
背景技术
视频是捕获视觉信息的一组静态图像(或“帧”)。为了减少存储内存和传输带宽,可以在存储或传输之前对视频进行压缩,然后在显示之前对视频进行解压缩。压缩过程通常称为编码,解压缩过程通常称为解码。有多种使用标准化视频编码技术的视频编码格式,最常见的是基于预测、变换、量化、熵编码和环内滤波。标准化组织开发了视频编码标准,例如高效视频编码(HEVC/H.265)标准,通用视频编码(VVC/H.266)标准和AVS标准,指定了特定的视频编码格式。随着视频标准中采用越来越多的先进视频编码技术,新的视频编码标准的编码效率越来越高。
发明内容
本公开的实施例提供了一种用于调色板预测器的计算机实现的方法。在一些实施例中,所述方法包括:接收用于处理的视频帧;生成所述视频帧的一个或多个编码单元;以及,使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且,其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
本公开的实施例提供了一种装置。在一些实施例中,所述装置包括:存储器,其被配置为存储指令;以及处理器,其耦合到所述存储器并且被配置为执行所述指令以使所述装置执行:接收用于处理的视频帧;生成所述视频帧的一个或多个编码单元;以及,使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
本公开的实施例提供了一种存储指令集的非暂时性计算机可读存储介质,所述指令集可由装置的一个或多个处理器执行以使所述装置发起用于执行视频数据处理的方法。在一些实施例中,所述方法包括:接收用于处理的视频帧;生成所述视频帧的一个或多个编码单元;以及使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
本公开的实施例提供了一种计算机实现的调色板模式的去块滤波器的方法。在一些实施例中,所述方法包括:接收用于处理的视频帧;生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与调色板模式不同的编码模式,将边界滤波器强度设置为1。
本公开的实施例提供了一种装置。在一些实施例中,所述装置包括:存储器,其被配置为存储指令;以及处理器,其耦合到所述存储器并且被配置为执行所述指令以使所述装置执行:接收用于处理的视频帧;生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与调色板模式不同的编码模式,将边界滤波器强度设置为1。
本公开的实施例提供了一种存储指令集的非暂时性计算机可读存储介质,所述指令集可由装置的一个或多个处理器执行以使所述装置发起用于执行视频数据处理的方法。在一些实施例中,所述方法包括:接收用于处理的视频帧;生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与调色板模式不同的编码模式,将边界滤波器强度设置为1。
附图说明
在下面的详细描述和附图中示出了本公开的实施例和各个方面。图中所示的各种特征没有按比例绘制。
图1是根据本申请的一些实施例的示例性视频序列的结构示意图。
图2A是示出与本申请的实施例一致的混合视频编码系统的示例性编码过程的示意图。
图2B是示出与本申请的实施例一致的混合视频编码系统的另一示例性编码过程的示意图。
图3A是示出与本申请的实施例一致的混合视频编码系统的示例性解码过程的示意图。
图3B是示出与本申请的实施例一致的混合视频编码系统的另一示例性解码过程的示意图。
图4是根据本申请的一些实施例的用于对视频进行编码或解码的示例性装置的框图。
图5示出了根据本申请的一些实施例的以调色板模式编码的块的图示。
图6示出了调色板预测器更新过程的示例。
图7示出了示例调色板编码语法。
图8示出了根据本申请的一些实施例的调色板预测器更新过程的流程图。
图9示出了根据本申请的一些实施例的调色板预测器更新过程的示例。
图10示出了用于调色板模式的示例性解码过程。
图11示出了根据本申请的一些实施例的用于调色板模式的示例性解码过程。
图12示出了根据本申请的一些实施例的另一调色板预测器更新过程的流程图。
图13示出了根据本申请的一些实施例的另一调色板预测器更新过程的示例。
图14示出了根据本申请的一些实施例的示例调色板编码语法。
图15示出了根据本申请的一些实施例的用于调色板模式的示例性解码过程。
图16示出了根据本申请的一些实施例的用于实现调色板预测器更新过程的一部分的调色板模式的解码器硬件设计的示意图。
图17示出了根据本申请的一些实施例的用于调色板模式的示例性解码过程。
图18示出了用于调色板模式的示例性初始化过程。
图19示出了根据本申请的一些实施例的用于调色板模式的示例性初始化过程。
图20示出了调色板预测器更新和重用标志的对应游程长度编码的示例。
图21示出了根据本公开的一些实施例的调色板预测器更新和重用标志的对应游程长度编码的示例。
图22示出了根据本公开的一些实施例的调色板预测器更新和重用标志的对应游程长度编码的示例。
图23示出了根据本申请的一些实施例的示例性调色板编码语法。
图24示出了示例性调色板编码语义。
图25示出了根据本申请的一些实施例的示例性调色板编码语义。
具体实施方式
现在将详细参考示例性实施例,其示例在附图中示出。以下描述参照附图,除非另有说明,其中不同附图中的相同数字表示相同或相似的元件。在示例性实施例的以下描述中阐述的实施方式并不代表与本公开一致的所有实施方式。相反,它们仅是与如所附权利要求中所述的与本公开相关的方面一致的装置和方法的示例。下面更详细地描述本公开的特定方面。如果与通过引用并入的术语和/或定义相冲突的话,以本文提供的术语和定义为准。
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或任意形状和大小的像素。可以基于编码效率和要保持在基本处理单元中的细节水平的平衡来为图像选择基本处理单元的大小和形状。CTU是最大的块单元,并且可以包括多达128×128亮度样本(加上取决于色度格式的相应色度样本)。可以使用四叉树、二叉树、三元树或其组合将CTU进一步划分为编码单元(CU)。
基本处理单元可以是逻辑单元,其可以包括存储在计算机存储器中(例如,在视频帧缓冲区中)的一组不同类型的视频数据。例如,彩色图像的基本处理单元可以包括表示消色差亮度信息的亮度分量(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生成量化变换系数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,其用于过程200A的下一次迭代的预测阶段204中。过程200A的组件218、220、222和224可以被称为“重建路径”。重建路径可以用于确保编码器和解码器都使用相同的参考数据进行预测。
编码器可以迭代地执行过程200A以对编码原始图像的每个原始BPU(在前向路径中)进行编码,并生成用于编码原始图像的下一个原始BPU(在重建路径中)的预测参考224。在对原始图像的所有原始BPU进行编码之后,编码器可以继续对视频序列202中的下一个图像进行编码。
参考过程200A,编码器可以接收由视频采集设备(例如,相机)生成的视频序列202。本文使用的术语“接收”可以指以任何方式接收、输入、获取、检索、获取、读取、访问或用于输入数据的任何动作。
在预测阶段204,在当前迭代时,编码器可以接收原始BPU和预测参考224,并执行预测操作以生成预测数据206和预测BPU 208。预测参考224可以从过程200A的先前迭代的重建路径生成。预测阶段204的目的是通过从预测数据206和预测参考224中提取可用于将原始BPU重建为预测BPU 208的预测数据206来减少信息冗余。
理想地,预测的BPU 208可以与原始BPU相同。然而,由于非理想的预测和重建操作,预测的BPU 208通常与原始BPU略有不同。为了记录这些差异,在生成预测BPU 208,编码器可以将其从原始BPU中减去以生成残差BPU 210。例如,编码器可以从原始BPU的像素的值减去预测BPU 208的对应像素的值(例如,灰度值或RGB值)。残差BPU 210的每个像素可以具有残差值作为原始BPU和预测BPU208的相应像素之间的这种相减的结果,与原始BPU相比,预测数据206和残差BPU 210可以具有更少的比特数,但是它们可以用于重建原始BPU,而不会出现明显的质量下降。因此,原始BPU被压缩。
为了进一步压缩残差BPU 210,在变换阶段212,编码器可以通过将残差BPU 210分解为一组二维“基本图案(base pattern)”来减少其空间冗余。每个基本图案与“变换系数”相关联。基本图案可以具有相同的大小(例如,残差BPU 210的大小),每个基本图案可以表示残差BPU 210的变化频率(例如,亮度变化的频率)分量。基本图案中的任何一个都不能从任何其他基本图案的任何组合(例如,线性组合)中再现。换句话说,分解可以将残差BPU210的变化分解到频域中。这种分解类似于函数的离散傅立叶变换,其中,基本图像类似于离散傅立叶变换的基本函数(例如,三角函数),并且变换系数类似于与基本函数相关联的系数。
不同的变换算法可以使用不同的基本图案。在变换阶段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具有相同坐标的位置处为中心,并且可以向外延伸预定距离。当编码器在搜索窗口中识别(例如,通过使用pel递归算法、块匹配算法等)类似于原始BPU的区域时,编码器可以确定这样的区域作为匹配区域。匹配区域可以具有与原始BPU不同的大小(例如,小于、等于、大于或具有不同的形状)。因为参考图像和当前图像在时间线上在时间上分开(例如,如图1所示),所以可以认为匹配区域随着时间的推移“移动”到原始BPU的位置。编码器可以将这种运动的方向和距离记录为“运动矢量”。当使用多个参考图像时(例如,如图1中的图像106),编码器可以搜索匹配区域并为每个参考图像确定其相关联的运动矢量。在一些实施例中,编码器可以将权重分配给各个匹配参考图像的匹配区域的像素值。
运动估计可用于识别各种类型的运动,例如平移、旋转、缩放等。对于帧间预测,预测数据206可以包括例如匹配区域的位置(例如,坐标)、与匹配区域相关联的运动矢量、参考图像的数量、与参考图像相关联的权重等。
为了生成预测的BPU 208,编码器可以执行“运动补偿”的操作。运动补偿可以用于基于预测数据206(例如,运动矢量)和预测参考224来重建预测的BPU 208。例如,编码器可以根据运动矢量移动参考图像的匹配区域,其中编码器可以预测当前图像的原始BPU。当使用多个参考图像时(例如,如图1中的图像106),编码器可以根据匹配区域的各个运动矢量和平均像素值来移动参考图像的匹配区域。在一些实施例中,如果编码器已经将权重分配给各个匹配参考图像的匹配区域的像素值,则编码器可以将移动的匹配区域的像素值的加权和相加。
在一些实施例中,帧间预测可以是单向的或双向的。单向帧间预测可以使用相对于当前图像在相同时间方向上的一个或多个参考图像。例如,图1中的图像104是单向帧间预测图像,其中参考图像(即,图像102)在图像04之前。双向帧间预测可以在相对于当前图像的两个时间方向上使用一个或多个参考图像。例如,图1中的图像106是双向帧间预测图像,其中参考图像(即,图像104和08)相对于图像104在两个时间方向上。
仍然参考过程200B的前向路径,在空间预测2042和时间预测阶段2044之后,在模式决策阶段230,编码器可以为过程200B的当前迭代选择预测模式(例如,帧内预测或帧间预测之一)。例如,编码器可以执行速率失真优化技术,其中编码器可以根据候选预测模式的比特率和候选预测模式下的重建参考图像的失真来选择预测模式以最小化成本函数的值。根据所选择的预测模式,编码器可以生成相应的预测BPU 208和预测数据206。
在过程200B的重建路径中,如果在前向路径中已经选择了帧内预测模式,则在生成预测参考224(例如,在当前图像中已经编码和重建的当前BPU)之后,编码器可以将预测参考224直接馈送到空间预测阶段2042以用于以后的使用(例如,用于插值当前图像的下一BPU)。如果在前向路径中已经选择了帧间预测模式,则在生成预测参考224(例如,其中所有BPU都已被编码和重建的当前图像)之后,编码器可以将预测参考224馈送到环路滤波器阶段232。在该阶段,编码器可以将环路滤波器应用于预测参考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以生成重建残差BPU222。解码器可以将预测数据206馈送到预测阶段204以生成预测BPU 208。解码器可以将重建残差BPU222添加到预测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和缓冲区2344。
在过程300B中,对于在解码的编码图像(称为“当前图像”)的编码基本处理单元(称为“当前BPU”),由解码器从二进制解码阶段302解码的预测数据206可以包括各种类型的数据,这取决于编码器使用什么预测模式来编码当前BPU。例如,如果编码器使用帧内预测来编码当前BPU,则预测数据206可以包括指示帧内预测、帧内预测操作的参数等的预测模式指示符(例如,标志值)。帧内预测操作的参数可以包括例如用作参考的一个或多个相邻BPU的位置(例如,坐标)、相邻BPU的大小、插值的参数、相邻BPU相对于原始BPU的方向等。对于另一示例,如果由编码器使用的帧间预测来编码当前BPU,则预测数据206可以包括指示帧间预测、帧间预测操作的参数等预测模式指示符(例如,标志值)。帧间预测操作的参数可以包括例如与当前BPU相关联的参考图像的数量、分别与参考图像相关联的权重、相应参考图像中的一个或多个匹配区域的位置(例如,坐标)、分别与所述匹配区域相关联的一个或多个运动矢量等。
基于预测模式指示符,解码器可以决定是在空间预测阶段2042执行空间预测(例如,帧内预测)还是在时间预测阶段2044执行时间预测(例如,帧间预测),执行这种空间预测或时间预测的细节在图2B中描述,其不会在下文中重复。在执行这样的空间预测或时间预测之后,解码器可以生成预测的BPU 208,解码器可以添加预测的BPU 208和重建残差BPU222以生成预测参考224,如图3A中所述。
在过程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或30013的一些或所有阶段可以被实现为装置400的一个或多个软件模块,诸如可以被加载到存储器404中的程序实例。对于另一示例,过程200A、200B、300A或300B的一些或全部阶段可以被实现为装置400的一个或多个硬件模块,诸如专用数据处理电路(例如,FPGA、ASIC、NPU等)。
图5示出了以调色板模式编码的CU的示意图。在VVC草案8中,调色板模式可以以单色、4:2:0、4:2:2和4:4:4颜色格式使用。启用调色板模式时,如果CU大小小于或等于64x64且大于16个样本,则会在CU级别发送一标志,以指示是否使用调色板模式。如果利用调色板模式来编码(当前)CU 500,则CU中的每个位置中的样本值由一小组代表性颜色值表示。该集合被称为调色板510。对于具有接近调色板颜色501、502、503的值的样本位置,用信号通知相应的调色板索引。还可以通过用信号通知逃逸索引(escape index)504来指定调色板之外的颜色值。然后,对于CU中使用逃逸颜色索引的所有位置,将为这些位置中的每个位置用信号通知(量化的)颜色分量值。
对于调色板的编码,保持调色板预测器。图6示出了用于在编码每个编码单元600之后更新调色板预测器的示例性过程。对于非波前情况在每个条带的开始和对于波前情况在每个CTU行的开始处,预测器处初始化为0(即,空)。对于调色板预测器中的每个条目,都会用信号通知一重用标志,以指示它是否将包含在当前CU的当前调色板中。重用标志使用零的游程编码发送。之后,用信号通知新调色板条目的数量和新调色板条目的分量值。编码为CU的调色板后,将使用当前调色板更新调色板预测器,并且在新调色板预测器的末尾添加来自先前调色板预测器的未在当前调色板中重复使用的条目,直到达到允许的最大大小。
为每个CU用信号通知一逃逸标志,以指示当前CU中是否存在逃逸符号。如果存在逃逸符号,则将调色板表增加一个,并将最后一个索引分配为逃逸符号。CU中样本的调色板索引形成调色板索引图,如图5中的示例所示。使用水平或垂直遍历扫描对索引图进行编码。扫描顺序使用palette_transpose_flag在位流中明确用信号通知。调色板索引图使用索引运行模式或索引复制模式进行编码。
在VVC草案8中,去块滤波过程包括定义块边界,基于沿定义的块边界的两个相邻块的编码模式来导出边界滤波强度,导出要滤波的样本数量以及将去块滤波器应用于样本。当边是编码单元、编码子块单元或变换单元边界时,该边被定义为块边界。然后,根据以下6条规则基于两个相邻块的编码模式计算边界滤波强度。(1)如果两个编码块都以BDPCM模式编码,则边界滤波器强度设置为0。(2)否则,如果以帧内模式对编码块之一进行编码,则边界滤波器强度设置为2。(3)否则,如果其中一个编码块以CIIP模式编码,则边界滤波器强度设置为2。(4)否则,如果其中一个编码块包含一个或多个非零系数级别,则边界滤波器强度设置为1。(5)否则,如果其中一个块以IBC模式编码,而另一个块以帧间模式编码,则边界滤波器强度设置为1。(6)否则(两个块都以IBC或帧间模式编码),则使用两个块的参考图像和运动矢量来导出边界滤波器强度。
VVC草案8对边界滤波强度的计算过程进行了较为详细的说明。具体来说,VVC草案8给出了八个连续的、详尽的场景。在场景1中,如果cIdx等于0,并且两个样本p0和q0都在intra_bdpcm_luma_flag等于1的编码块中,则bS[xDi][yDj]设置为等于0。否则,在场景2中,如果cIdx大于0,并且两个样本p0和q0都在intra_bdpcm_chroma_flag等于1的编码块中,则bS[xDi][yDj]设置为等于0。否则,在场景3中,如果样本p0或q0在用帧内预测模式编码的编码单元的编码块中,则bS[xDi][yDj]被设置为等于2。否则,在场景4中,如果块边缘也是编码块边缘,并且样本p0或q0在ciip_flag等于1的编码块中,则bS[xDi][yDj]被设置为等于2。否则,在场景5中,如果块边缘也是变换块边缘并且样本p0或q0在包含一个或多个非零变换系数级别的变换块中,则bS[xDi][yDj]被设置为等于1。否则,在场景6中,如果包含样本p0的编码子块的预测模式不同于包含样本q0的编码子块的预测模式(即,编码子块中的一个以IBC预测模式编码,另一个以帧间预测模式编码),bS[xDi][yDj]设置为等于1。
否则,在场景7中,如果cIdx等于0,edgeFlags[xDi][yDj]等于2,并且以下条件中的一个或多个为真,则bS[xDi][yDj]设置为等于1。
条件(1):包含样本p0的编码子块和包含样本q0的编码子块均采用IBC预测模式进行编码,并且在两个编码子块的预测中使用的块矢量的水平或垂直分量之间的绝对差以1/16亮度样本为单位大于或等于8。
条件(2):对于包含样本p0的编码子块的预测,与用于包含样本q0的编码子块的预测相比,使用不同的参考图像或不同数量的运动矢量。对于条件(2),注意,用于两个编码子块的参考图像是相同还是不同的确定仅基于哪些图像被参考,而不考虑是使用索引到参考图像列表0还是索引到参考图像列表1来形成预测。并且也不考虑参考图像列表中的索引位置是否不同。同样,对于条件(2),请注意,用于预测具有左上角样本覆盖(xSb,ySb)的编码子块的运动矢量的数量等于PredFlagL0[xSb][ySb]+PredFlagL1[xSb][ySb]。
条件(3):用一个运动矢量预测包含样本p0的编码子块,一个运动矢量预测包含样本q0的编码子块,并且所使用的运动矢量的水平或垂直分量之间的绝对差以1/16亮度样本为单位大于或等于8。
条件(4):用两个运动矢量和两个不同的参考图像预测包含样本p0的编码子块,用于相同的两个参考图像的两个运动矢量来预测包含样本q0的编码子块,并且在用于相同参考图像的两个编码子块的预测中使用的两个运动矢量的水平或垂直分量之间的绝对差以1/16亮度样本为单位大于或等于8。
条件(5):使用同一参考图像的两个运动矢量来预测包含样本p0的编码子块,使用同一参考图像的两个运动矢量来预测包含样本q0的编码子块,并且以下两个条件均成立。条件(5.1):在两个编码子块的预测中使用的列表0运动矢量的水平或垂直分量之间的绝对差以1/16亮度样本为单位大于或等于8,或者在两个编码子块的预测中使用的列表1运动矢量的水平或垂直分量之间的绝对差以1/1 6亮度样本为单位大于或等于8。条件(5.2):在包含样本p0的编码子块的预测中使用的列表0的运动矢量和在包含样本q0的编码子块的预测中使用的列表1的运动矢量的水平或垂直分量之间的绝对差以1/16亮度样本为单位大于或等于8,或者,在包含样本p0的编码子块的预测中使用的列表1运动矢量和在包含样本q0的编码子块的预测中使用的列表0运动矢量的水平或垂直分量的绝对差以1/16亮度样本为单位大于或等于8。
否则,如果之前的7个场景都不满足,则在场景8中,变量bS[xDi][yDj]被设置为等于0。在推导边界滤波器强度之后,得出要滤波的样本数,并将去块滤波应用于样本。请注意,当块以调色板模式编码时,样本数设置为等于0。这意味着去块过滤不会应用于以调色板模式编码的块。
如前所述,块的当前调色板的构造包含两个部分。首先,可以从调色板预测器预测当前调色板中的条目。对于调色板预测器中的每个条目,都会发出一个重用标志,以指示该条目是否包含在当前调色板中。其次,可以直接用信号通知当前调色板条目的分量值。获得当前调色板后,将使用当前调色板更新调色板预测器。图7示出了VVC草案8的7.3.10.6节(“调色板编码语法)的一部分。当解析调色板编码块的语法时,重用标志(即图7中701的“palette_predictor_run”)首先被解码,随后是新调色板条目的(即,图7中的“num_signalled_palette_entries”702和“new_palette_entries”703)分量值。在VVC草案8中,在解析重用标志之前需要知道调色板预测器条目(即图7中的“PredictorPaletteSize[startComp]”704)的数量。这意味着,当两个相邻块都以调色板模式编码时,第二块的语法不能被解析,直到第一块的调色板预测器更新过程已经完成。
然而,在常规调色板预测器更新过程中,需要检查每个条目的重用标志。在更糟糕的情况下,最多需要63次检查。这些传统设计可能不适合硬件,至少有两个原因。首先,基于上下文的自适应二进制算术编码(CABAC)解析需要等到调色板预测器完全更新。通常,CABAC解析是硬件中最慢的模块。这可能会降低CABAC吞吐量。其次,当在CABAC解析阶段实现调色板预测器更新过程时,可能会给硬件带来麻烦。
另外,在这些常规设计中的另一个问题是没有为调色板模式定义边界滤波器强度。当相邻块中的一个以调色板模式编码,而另一个相邻块以IBC或帧间模式编码时,边界滤波器强度未定义。
本公开的实施例提供了解决上述一个或多个问题的实施方式。这些实施方式可以改进调色板预测器更新过程,从而提高实现上述调色板预测过程或类似过程的系统的效率、速度和资源消耗。
在一些实施例中,调色板预测器更新过程被简化以降低其复杂度,从而释放硬件资源。图8示出了根据本公开的实施例的调色板预测器更新过程800的流程图。方法800可以由编码器(例如,通过图2A的过程200A或图2B的过程200B)、解码器(例如,通过图3A的过程300A或图3B的过程300B)或由装置(例如,图4的装置400)的一个或多个软件或硬件组件执行。例如,处理器(例如,图4的处理器402)可以执行方法800。在一些实施例中,方法800可以由包含在计算机可读介质中的计算机程序产品来实现,所述计算机程序产品包括由计算机(例如,图4的装置400)执行的计算机可执行指令,诸如程序代码。如图8所示,方法800可以包括以下步骤802-804。
在步骤802中,当更新调色板预测器时,当前调色板的所有调色板条目被添加到新的调色板预测器的前面,作为第一组条目。在步骤804中,将来自先前调色板预测器的所有调色板条目添加到新调色板预测器的末尾,而不管这些条目是否在当前调色板中被重新用作第二组条目,并且第二组条目在第一组条目之后。
例如,图9提供了与图8中描述的过程一致的简化的调色板预测器更新过程。由过程901和过程902生成当前调色板。当前调色板包括从以前的调色板预测器重用的条目和已发信号通知的新调色板条目。在过程903中,当前调色板的所有调色板条目作为新调色板预测器的第一组条目(对应于步骤802)。在过程904中,来自先前调色板预测器的调色板条目作为新调色板预测器的条目的第二组,而不管这些条目是否在当前调色板中被重用(对应于步骤804)。
好处是,在不检查重用标志的值的情况下,通过添加当前调色板的大小和先前调色板预测器的大小来计算新调色板预测器的大小。由于更新过程比VVC草案8中的常规设计(如图10所示)简单得多,因此可以增加CABAC吞吐量。
例如,图11示出了与本公开的实施例一致的用于调色板模式的示例性解码过程。图10的常规设计和图11所公开的设计之间的变化包括被用被删除的文本突出显示的移除的部分1101。
在一些实施例中,虽然调色板预测器更新过程被简化,但是由于缺少检查重用标志,调色板预测器可能具有两个或更多个相同的条目(即,调色板预测器中的冗余)。虽然仍然是一种改进,但这可能意味着调色板预测器的预测效率可能降低。
图12示出了根据本公开的实施例的另一调色板预测器更新过程1200的流程图。方法1200可以由编码器(例如,通过图2A的过程200A或图2B的过程200B)、解码器(例如,通过图3A的过程300A或图3B的过程300B)或由装置(例如,图4的装置400)的一个或多个软件或硬件组件执行。例如,处理器(例如,图4的处理器402)可以执行方法1200。在一些实施例中,方法1200可以由包含在计算机可读介质中的计算机程序产品来实现,所述计算机程序产品包括由计算机(例如,图4的装置400)执行的计算机可执行指令,诸如程序代码。如图12所示,方法1200可以包括以下步骤1202-1206。
在该示例性实施例中,为了去除调色板预测器中的冗余并保持调色板预测器更新过程简单,直接丢弃在第一重用条目和最后重用条目之间的先前调色板预测器条目。仅将从第一个条目到第一个重用条目以及从上一个调色板预测器的最后一个重用条目到上一个调色板预测器的最后一个条目的条目添加到新的调色板预测器中。总之,调色板预测器更新过程被如下修改:在步骤1202中,当前调色板的每个条目被添加到新的调色板预测器作为第一组条目。在步骤1204中,从先前调色板预测器的第一至第一重用条目的每个条目被添加到新调色板预测器作为在第一组条目之后的第二组条目。在步骤1206中,从上一个调色板预测器的最后一个重用条目到上一个调色板预测器的最后一个条目的每个条目被添加到新调色板预测器作为第二组条目之后的第三组条目。
例如,图13提供了与图12中描述的过程一致的简化的调色板预测器更新过程。在过程1301中,将当前调色板的所有调色板条目添加到调色板预测器作为新调色板预测器的第一组条目(对应于步骤1202)。在过程1302中,从先前调色板预测器的第一至第一重用条目的每个条目被添加到新调色板预测器作为在第一组条目之后的第二组条目(对应于步骤1204)。在过程1303中,从上一个调色板预测器的最后一个重用条目到上一个调色板预测器的最后一个条目的每个条目被添加到新的调色板预测器作为第二组条目之后的第三组条目(对应于步骤1206)。在一些实施例中,所述第三组条目在所述第一组条目之后,并且所述第二组条目在所述第三组条目之后。
注意,当解析重用标志时,可以导出第一重用条目和最后一个条目。无需检查重用标志的值。通过添加当前调色板的大小,从0到第一个重用条目的大小以及从最后一个重用条目到最后一个条目的大小来计算新调色板预测器的大小。图14示出了与本申请的实施例一致的示例性调色板编码语法。图7的常规设计与图14中本公开的设计之间的变化包括1401标记的附加部分。图15示出了根据本申请的实施例的用于调色板模式的示例性解码过程。图10的常规设计与图15中的本公开的设计之间的变化包括1501具有删除文本突出显示的移除部分以及标记的添加部分1502。
在先前公开的实施例中,虽然调色板预测器更新过程被简化,但是在硬件设计中的CABAC解析阶段需要实现该过程。在一些实施例中,重用标志的数量被设置为固定值。因此,CABAC可以保持解析,而无需等待调色板预测器更新过程。此外,调色板预测器更新过程可以在CABAC解析阶段之外的不同管道阶段中实现,这为硬件设计提供了更大的灵活性。
图16示出了用于调色板模式的解码器硬件设计的示意图。示例性地示出了用于CABAC和解码调色板像素的数据结构1601和数据结构1602。解码器硬件设计1603包括预测器更新模块1631和CABAC解析模块1632,其中预测器更新过程和CABAC解析过程是并行的。因此,CABAC可以保持解析,而无需等待调色板更新过程。
对于每个编码块,为了将重用标志的数量设置为固定值,在一些实施例中,在针对非波前情况的每个条带的开始处以及针对波前情况的每个CTU行的开始处,将调色板预测器的大小初始化为预定义值。预定义值设置为调色板预测器的最大大小。在一个示例中,根据条带类型和双树模式设置,重用标志的数量为31或63。当条带类型为I-条带且双树模式为开启(称为情况1)时,重用标志的数量设置为31。否则(条带类型为B-/P-条带或条带类型为I-条带且双树模式为不启用,(称为情况2),重用标志的数量设置为63。所述两种情况下的重用标志也可以使用其它数量,并且在情况1的重用标志的数量与情况2的重用标志的数量之间保持因子2的关系可能是有益的。此外,在初始化调色板预测器时,每个条目和每个分量的值设置为0或(1<<(序列位深度-1))。
例如,图17示出了根据本公开的实施例的用于调色板模式的示例性解码过程。图10的常规设计与图17的本公开的设计之间的变化包括用删除文本突出显示的移除部分1701和标记的添加部分1702。类似的,图19示出了与本公开的实施例一致的示例性初始化过程。图18的常规设计与图19的本公开的设计之间的变化包括用删除文本突出显示的移除部分1901和标记的添加部分1902。
在一些实施例中,在重用标志被设置为固定值,或者在实现图9的示例中,可以将一些冗余引入到调色板预测器中。在一些实施例中,这可能不是问题,因为那些冗余条目从未被选择用于编码器侧的预测。调色板预测器更新的示例如图20、图21和图22所示。图20示出了根据VVC草案8中指定的过程的示例。图21示出了根据在图9中提出的方法的一些实施方式的示例(被称为第一实施例)。并且图22示出了根据实施例的一些实现方式的另一示例,其中将重用标志设置为固定值(称为第三实施例)。通过图20、图21和他22的比较显示,假设没有新的用信号通知的调色板条目,则在第一实施例(图21)中提出的方法可以增加用于发信号通知的重用标志2101的比特数。而在第三实施例(图22)中提出的方法保持用于用信号通知的重用标志2201的比特数与在VVC草案8设计(图20)中的方法的用于用信号通知的重用标志2001的位数相同。
在一些实施例中,首先将调色板预测器初始化为固定值。这意味着调色板预测器中可能存在冗余条目。尽管冗余条目可能不会有问题,如前所述,但是本实施例中的设计不会阻止编码器使用那些冗余条目。如果编码器选择这些冗余条目中的一个,则调色板预测器的编码性能以及因此调色板模式的编码性能可能会降低。为了防止这种情况,在一些实施例中,在用信号通知重用标志时添加位流一致性。在一些实施例中,当发信号通知重用标志时,具有所述调色板预测器大小的值的所述位流一致性等于所述调色板预测器的最大大小。更具体地说,范围约束被添加到重用标志的二值化值。
例如,图23示出了与本公开的实施例一致的示例性调色板编码语法。图7的常规设计与图23的本公开的设计之间的变化包括用删除文本突出显示的移除部分2301和标记的添加部分2302。同样,图25示出了与本公开的实施例一致的示例调色板编码语义。图24的常规设计与图25的本公开的设计之间的变化包括用删除文本突出显示的移除部分2501和标记的添加部分2502。
此外,本公开提供了以下方法来解决调色板模式的去块滤波器的问题。
在一些实施例中,调色板模式被视为帧内预测模式的子集。因此,如果以调色板模式对相邻块之一进行编码,则将边界滤波器强度设置为等于2。更具体地说,VVC草案8规范中详细说明计算边界滤波强度的过程的部分被改变,因此场景3现在指出:“如果样本p0或q0在用帧内预测模式或调色板模式编码的编码单元的编码块中,bS[xDi][yDj]设置为等于2。”,添加的语句具有下划线。
在一些实施例中,调色板模式被视为独立的编码模式。当两个相邻块的编码模式不同时,将边界滤波器强度设置为等于1。更具体地说,VVC草案8规范中详细说明计算边界滤波强度的过程的部分已更改,因此场景6现在指出:“包含样本p0的编码子块的预测模式与包含样本q0的编码子块的预测模式不同
Figure BDA0003874008900000281
Figure BDA0003874008900000291
bS[xDi][yDj]设置为等于1。”删除语句被删除。
在一些实施例中,调色板模式被视为独立的编码模式。与BDPCM模式设置类似,当其中一个编码块为调色板模式时,边界滤波器强度设置为等于0。更具体地说,VVC草案8规范中详细说明计算边界滤波强度的过程的部分被改变,以便在方案3和方案4之间插入一个新的方案,该方案指出:“否则,如果块边缘也是编码块边缘,并且样本p0或q0位于pred_mode_plt_flag等于1的编码块中,则bS[xDi][yDj]设置为等于0。”使用此修改后的过程,将有9个场景,场景4-8被重新编号为场景5-9。值得注意的是,以调色板模式编码的块等效于pred_mode_plt_flag等于1。
在一些实施例中,还提供了包括指令的非暂时性计算机可读存储介质,并且所述指令可以由设备(诸如所公开的编码器和解码器)执行,以于执行上述方法。非暂时性介质的常见形式包括,例如,软盘、硬盘、固态驱动器、磁带或任何其他磁性数据存储介质、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、一种视频数据处理方法,包括:
使用一个或多个调色板预测器处理一个或多个编码单元,其中所述一个或多个调色板预测器的一调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自先前调色板预测器的多个调色板条目作为所述调色板预测器的第二组条目,而不管所述先前调色板预测器中的调色板条目的重用标志的值如何,其中所述的第二组条目在所述第一组条目之后。
2、根据条款1所述的方法,其中所述调色板预测器的所述第一组条目和所述第二组条目中的每个调色板条目包括一重用标志。
3、根据条款1所述的方法,还包括:
接收用于处理的视频帧,以及
生成所述视频帧的所述一个或多个编码单元。
4、根据条款1至3中任一项所述的方法,其中所述调色板预测器的每个调色板条目具有一对应的重用标志,并且
其中,对于相应的编码单元,将用于调色板预测器的重用标志的数量设置为固定数量。
5、一种视频数据处理方法,包括:
使用一个或多个调色板预测器处理一个或多个编码单元,其中所述一个或多个调色板预测器的一调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;
将在第一范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第二组一个或多个条目,其中,所述第一范围在所述先前调色板预测器的第一调色板条目处开始并且在具有重用标志组的所述先前调色板预测器的第一调色板条目处结束,并且将在第二范围内的先前调色板预测器的一个或多个调色板条目添加到调色板预测器中,作为所述调色板预测器的第三组一个或多个条目,其中,所述第二范围在具有重用标志组的所述先前调色板预测器的最后调色板条目处开始,并且在所述先前调色板预测器的最后调色板条目处结束,所述第二组条目和所述第三组条目在所述第一组条目之后。
6、根据条款5所述的方法,其中所述调色板预测器的所述第一组条目、所述第二组条目和所述第三组条目中的每个调色板条目包括一重用标志。
7、根据条款5所述的方法,还包括:
接收用于处理的视频帧,以及
生成所述视频帧的一个或多个编码单元。
8、根据条款5至7中任一项所述的方法,其中所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
9、一种视频数据处理方法,包括:
接收用于处理的视频帧;
生成所述视频帧的一个或多个编码单元;以及
使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,
其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
10、根据条款9所述的方法,其中所述调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自所述先前调色板预测器的、在所述当前调色板中未重用的条目作为所述调色板预测器的第二组条目,其中所述第二组条目在所述第一组条目之后。
11、根据条款9所述的方法,其中基于条带类型和双树模式设置来设置的所述固定数量。
12、根据条款9所述的方法,其中所述一个或多个调色板预测器的大小在针对非波前情况的条带的开始处被初始化为预定值。
13、根据条款9所述的方法,其中所述一个或多个调色板预测器的大小在针对波前情况的编码单元行的开始处被初始化为预定值。
14、根据条款12或13所述的方法,还包括:添加具有所述调色板预测器大小的值的位流一致性,当发信号通知所述重用标志时,所述位流一致性等于所述调色板预测器的最大大小。
15、根据条款12至14中任一项所述的方法,其中当初始化所述一个或多个调色板预测器时,每个条目和每个分量的值被设置为0或(1<<(序列位深度-1))。
16、根据条款9至15中任一项所述的方法,还包括将范围约束添加到所述重用标志的二值化值。
17、一种视频数据处理的装置,所述装置包括:
用于存储指令的存储器;和
耦合到所述存储器并且被配置为执行所述指令以使所述装置执行以下操作的处理器:
使用一个或多个调色板预测器处理一个或多个编码单元,其中所述一个或多个调色板预测器的一调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自先前调色板预测器的多个调色板条目作为所述调色板预测器的第二组条目,而不管所述先前调色板预测器中的调色板条目的重用标志的值如何,其中所述的第二组条目在所述第一组条目之后。
18、根据条款17所述的装置,其中所述调色板预测器的所述第一组条目和所述第二组条目中的每个调色板条目包括一重用标志。
19、根据条款17所述的装置,其中所述处理器还被配置为执行所述指令以使所述装置执行:
接收用于处理的视频帧,以及
生成所述视频帧的一个或多个编码单元。
20、根据条款17至19中任一项所述的装置,其中所述调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,将用于调色板预测器的重用标志的数量设置为固定数量。
21、一种视频数据处理的装置,所述装置包括:
用于存储指令的存储器;和
耦合到所述存储器并且被配置为执行所述指令以使所述装置执行以下操作的处理器:
使用一个或多个调色板预测器处理一个或多个编码单元,其中所述一个或多个调色板预测器的一调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;
将在第一范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第二组一个或多个条目,其中,所述第一范围在所述先前调色板预测器的第一调色板条目处开始并且在具有重用标志组的所述先前调色板预测器的第一调色板条目处结束,并且
将在第二范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第三组一个或多个条目,其中,所述第二范围在具有重用标志组的所述先前调色板预测器的最后调色板条目处开始,并且在所述先前调色板预测器的最后调色板条目处结束,所述第二组条目和所述第三组条目在所述第一组条目之后。
22、根据条款21所述的装置,其中所述调色板预测器的所述第一组条目和所述第二组条目中的每个调色板条目包括一重用标志。
23、根据条款21所述的装置,其中所述处理器还被配置为执行所述指令以使所述装置执行:
接收用于处理的视频帧,以及
生成所述视频帧的一个或多个编码单元。
24、根据条款21至23中任一项所述的装置,其中所述调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,将用于所述调色板预测器的重用标志的数量设置为固定数量。
25、一种视频数据处理的装置,所述装置包括:
用于存储指令的存储器;和
耦合到所述存储器并且被配置为执行所述指令以使所述装置执行以下操作的处理器:
接收用于处理的视频帧;
生成所述视频帧的一个或多个编码单元;以及
使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,
其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
26、根据条款25所述的装置,其中所述处理器还被配置为执行所述指令以使所述装置执行:
通过以下方式更新所述调色板预测器:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自所述先前调色板预测器的、在所述当前调色板中未重用的条目作为所述调色板预测器的第二组条目,其中所述第二组条目在所述第一组条目之后。
27、根据条款25所述的装置,其中基于条带类型和双树模式设置来设置的所述固定数量。
28、根据条款25所述的装置,其中所述一个或多个调色板预测器的大小在针对非波前情况的条带的开始处被初始化为预定值。
29、根据条款25所述的装置,其中所述一个或多个调色板预测器的大小在针对波前情况的编码单元行的开始处被初始化为预定值。
30、根据条款28或29所述的装置,其中,所述处理器还被配置为执行所述指令以使所述装置执行:添加具有所述调色板预测器大小的值的位流一致性,当发信号通知所述重用标志时,所述位流一致性等于所述调色板预测器的最大大小。
31、根据条款28至30中任一项所述的装置,其中当初始化所述一个或多个调色板预测器时,每个条目和每个分量的值被设置为0或(1<<(序列位深度-1))。
32、根据条款25至31中任一项所述的装置,其中所述处理器还被配置为执行所述指令以使所述装置执行:将范围约束添加到所述重用标志的二值化值。
33、一种非暂时性计算机可读介质,其存储有指令集,所述指令集可由装置的一个或多个处理器执行以使所述装置发起用于执行视频数据处理的方法,所述方法包括:
使用一个或多个调色板预测器处理一个或多个编码单元,其中所述一个或多个调色板预测器的一调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自先前调色板预测器的多个调色板条目作为所述调色板预测器的第二组条目,而不管所述先前调色板预测器中的调色板条目的重用标志的值如何,其中所述的第二组条目在所述第一组条目之后。
34、根据条款33所述的非暂时性计算机可读介质,其中所述调色板预测器的所述第一组条目和所述第二组条目中的每个调色板条目包括重用标志。
35、根据条款33所述的非暂时性计算机可读介质,其中,所述方法还包括:
接收用于处理的视频帧,以及
生成所述视频帧的一个或多个编码单元。
36、根据条款33至35中任一项所述的非暂时性计算机可读介质,其中所述调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,将用于所述调色板预测器的重用标志的数量设置为固定数量。
37、一种非暂时性计算机可读介质,其存储有指令集,所述指令集可由装置的一个或多个处理器执行以使所述装置发起用于执行视频数据处理的方法,所述方法包括:
使用一个或多个调色板预测器处理一个或多个编码单元,其中所述一个或多个调色板预测器的一调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;
将在第一范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第二组一个或多个条目,其中,所述第一范围在所述先前调色板预测器的第一调色板条目处开始并且在具有重用标志组的所述先前调色板预测器的第一调色板条目处结束,并且
将在第二范围内的先前调色板预测器的一个或多个调色板条目添加到调色板预测器中,作为所述调色板预测器的第三组一个或多个条目,其中,所述第二范围在具有重用标志组的所述先前调色板预测器的最后调色板条目处开始,并且在所述先前调色板预测器的最后调色板条目处结束,所述第二组条目和所述第三组条目在所述第一组条目之后。
38、根据条款37所述的非暂时性计算机可读介质,其中所述调色板预测器的所述第一组条目和所述第二组条目中的每个调色板条目包括一重用标志。
39、根据条款37所述的非暂时性计算机可读介质,其中,所述方法还包括:
接收用于处理的视频帧,以及
生成所述视频帧的一个或多个编码单元。
40、根据条款37至39中任一项所述的非暂时性计算机可读介质,其中所述调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,将用于所述调色板预测器的重用标志的数量设置为固定数量。
41、一种非暂时性计算机可读介质,其存储有指令集,所述指令集可由装置的一个或多个处理器执行以使所述装置发起用于执行视频数据处理的方法,所述方法包括:
接收用于处理的视频帧;
生成所述视频帧的一个或多个编码单元;以及
使用具有调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,
其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
42、根据条款41所述的非暂时性计算机可读介质,其中所述调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自所述先前调色板预测器的、在所述当前调色板中未重用的条目作为所述调色板预测器的第二组条目,其中所述第二组条目在所述第一组条目之后。
43、根据条款41所述的非暂时性计算机可读介质,其中基于条带类型和双树模式设置来设置的所述固定数量。
44、根据条款41所述的非暂时性计算机可读介质,其中,所述一个或多个调色板预测器的大小在针对非波前情况的条带的开始处被初始化为预定值。
45、根据条款41所述的非暂时性计算机可读介质,其中所述一个或多个调色板预测器的大小在针对波前情况的编码单元行的开始处被初始化为预定值。
46、根据条款44或45所述的非暂时性计算机可读介质,还包括添加具有所述调色板预测器大小的值的位流一致性,当发信号通知所述重用标志时,所述位流一致性等于所述调色板预测器的最大大小。
47、根据条款44至46中任一项所述的非暂时性计算机可读介质,其中当初始化所述一个或多个调色板预测器时,每个条目和每个分量的值被设置为0或(1<<(序列位深度-1))。
48、根据条款41至47中任一项所述的非暂时性计算机可读介质,还包括将范围约束添加到所述重用标志的二值化值。
49、一种用于调色板模式的去块滤波器的方法,包括:
接收用于处理的视频帧;
生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及
响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,将边界滤波器强度设置为2。
50、一种用于调色板模式的去块滤波器的方法,包括:
接收用于处理的视频帧;
生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及
响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与所述调色板模式不同的编码模式,将边界滤波器强度设置为1。
51、一种视频数据处理的装置,所述装置包括:
用于存储指令的存储器;和
耦合到所述存储器并且被配置为执行所述指令以使所述装置执行以下操作的处理器:
接收用于处理的视频帧;
生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及
响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与所述调色板模式不同的编码模式,将边界滤波器强度设置为1。
52、一种非暂时性计算机可读介质,其存储有指令集,所述指令集可由装置的一个或多个处理器执行以使所述装置发起用于执行视频数据处理的方法,所述方法包括:
接收用于处理的视频帧;
生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及
响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与所述调色板模式不同的编码模式,将边界滤波器强度设置为1。
在前面的说明书中,已经参考许多具体细节描述了实施例,这些具体细节可以随实施而变化。可以对所描述的实施例进行某些修改和改变。通过考虑本文公开的本发明的说明书和实践,其他实施例对于本领域技术人员来说是显而易见的。本说明书和实施例仅被认为是示例性的,本发明的真正范围和精神由下面的权利要求指示。附图所示的步骤序列仅用于说明目的,而不旨在限于任何特定的步骤序列。因此,本领域技术人员可以理解,这些步骤可以在实施相同方法的同时以不同的顺序执行。
在附图和说明书中,已经公开了示例性实施例。然而,可以对这些实施例进行许多变化和修改。因此,尽管采用了特定的术语,但它们仅在通用和描述性的意义上使用,而不是出于限制的目的。

Claims (20)

1.一种视频数据处理方法,包括:
接收用于处理的视频帧;
生成所述视频帧的一个或多个编码单元;以及
使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,
其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
2.根据权利要求1所述的方法,其特征在于,所述调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自所述先前调色板预测器的、在所述当前调色板中未重用的条目作为所述调色板预测器的第二组条目,其中所述第二组条目在所述第一组条目之后。
3.根据权利要求1所述的方法,其特征在于,所述调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自先前调色板预测器的调色板条目作为所述调色板预测器的第二组条目,而不管所述先前调色板预测器中的调色板条目的重用标志的值如何,其中所述第二组条目在所述第一组条目之后。
4.根据权利要求1所述的方法,其特征在于,所述调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;
将在第一范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第二组一个或多个条目,其中,所述第一范围在所述先前调色板预测器的第一调色板条目处开始,并且在具有重用标志组的所述先前调色板预测器的第一调色板条目处结束,并且
将在第二范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第三组一个或多个条目,其中,所述第二范围在具有重用标志组的所述先前调色板预测器的最后调色板条目处开始,并且在所述先前调色板预测器的最后调色板条目处结束,所述第二组条目和所述第三组条目在所述第一组条目之后。
5.根据权利要求1所述的方法,其中,基于条带类型和双树模式设置来设置所述固定数量。
6.根据权利要求1所述的方法,其特征在于,所述一个或多个调色板预测器的大小在针对非波前情况的条带的开始处被初始化为预定值。
7.一种用于执行视频数据处理的装置,所述装置包括:
存储器,用于存储指令;和
一个或多个处理器,所述一个或多个处理器被配置为执行所述指令以使所述装置执行以下操作:
接收用于处理的视频帧;
生成所述视频帧的一个或多个编码单元;以及
使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,
其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
8.根据权利要求7所述的装置,其特征在于,所述一个或多个处理器还被配置成执行所述指令以使所述装置执行:
通过以下方式更新所述调色板预测器:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自所述先前调色板预测器的、在所述当前调色板中未重用的条目作为所述调色板预测器的第二组条目,其中所述第二组条目在所述第一组条目之后。
9.根据权利要求7所述的装置,其特征在于,所述一个或多个处理器还被配置成执行所述指令以使所述装置执行:
通过以下方式更新所述调色板预测器:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自先前调色板预测器的调色板条目作为所述调色板预测器的第二组条目,而不管所述先前调色板预测器中的调色板条目的重用标志的值如何,其中所述第二组条目在所述第一组条目之后。
10.根据权利要求7所述的装置,其特征在于,所述一个或多个处理器还被配置成执行所述指令以使所述装置执行:
通过以下方式所述更新调色板预测器:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;
将在第一范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第二组一个或多个条目,其中,所述第一范围在所述先前调色板预测器的第一调色板条目处开始,并且在具有重用标志组的所述先前调色板预测器的第一调色板条目处结束,并且
将在第二范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第三组一个或多个条目,其中,所述第二范围在具有重用标志组的所述先前调色板预测器的最后调色板条目处开始,并且在所述先前调色板预测器的最后调色板条目处结束,所述第二组条目和所述第三组条目在所述第一组条目之后。
11.根据权利要求7所述的装置,其中,基于条带类型和双树模式设置来设置所述固定数量。
12.根据权利要求7所述的装置,其特征在于,所述一个或多个调色板预测器的大小在非波前情况的条带的开始处的被初始化为预定义值。
13.一种非暂时性计算机可读介质,其存储有指令集,所述指令集可由装置的一个或多个处理器执行,以使所述装置发起用于执行视频数据处理的方法,所述方法包括:
接收用于处理的视频帧;
生成所述视频帧的一个或多个编码单元;以及
使用具有多个调色板条目的一个或多个调色板预测器来处理一个或多个编码单元,
其中,所述一个或多个调色板预测器的每个调色板条目具有对应的重用标志,并且
其中,对于相应的编码单元,用于每一调色板预测器的重用标志的数量被设置为固定数量。
14.根据权利要求13所述的非暂时性计算机可读介质,其中,所述调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自所述先前调色板预测器的、在所述当前调色板中未重用的条目作为所述调色板预测器的第二组条目,其中所述第二组条目在所述第一组条目之后。
15.根据权利要求13所述的非暂时性计算机可读介质,其中,所述调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;以及
添加来自先前调色板预测器的调色板条目作为所述调色板预测器的第二组条目,而不管所述先前调色板预测器中的调色板条目的重用标志的值如何,其中所述第二组条目在所述第一组条目之后。
16.根据权利要求13所述的非暂时性计算机可读介质,其中,所述调色板预测器通过以下方式更新:
添加当前调色板的所有调色板条目作为所述调色板预测器的第一组条目;
将在第一范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第二组一个或多个条目,其中,所述第一范围在所述先前调色板预测器的第一调色板条目处开始,并且在具有重用标志组的所述先前调色板预测器的第一调色板条目处结束,并且
将在第二范围内的先前调色板预测器的一个或多个调色板条目添加到所述调色板预测器中,作为所述调色板预测器的第三组一个或多个条目,其中,所述第二范围在具有重用标志组的所述先前调色板预测器的最后调色板条目处开始,并且在所述先前调色板预测器的最后调色板条目处结束,所述第二组条目和所述第三组条目在所述第一组条目之后。
17.根据权利要求13所述的非暂时性计算机可读介质,其中,基于条带类型和双树模式设置来设置所述固定数量。
18.一种调色板模式的去块滤波器的方法,包括:
接收用于处理的视频帧;
生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及
响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与调色板模式不同的编码模式,将边界滤波器强度设置为1。
19.一种视频数据处理的装置,所述装置包括:
存储区,所述存储器用于存储指令;和
一个或多个处理器,所述一个或多个处理器被配置为执行所述指令以使所述装置执行以下操作:
接收用于处理的视频帧;
生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及
响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与调色板模式不同的编码模式,将边界滤波器强度设置为1。
20.一种非暂时性计算机可读介质,其存储有指令集,所述指令集可由装置的一个或多个处理器执行以使所述装置发起用于执行视频数据处理的方法,所述方法包括:
接收用于处理的视频帧;
生成用于所述视频帧的一个或多个编码单元,其中,所述一个或多个编码单元中的每个编码单元具有一个或多个编码块;以及
响应于两个相邻编码块中的至少第一编码块以调色板模式被编码,并且所述两个相邻编码块中的第二编码块具有与调色板模式不同的编码模式,将边界滤波器强度设置为1。
CN202180026652.0A 2020-03-31 2021-03-31 调色板预测方法 Pending CN115428455A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063002594P 2020-03-31 2020-03-31
US63/002,594 2020-03-31
US202063005305P 2020-04-04 2020-04-04
US63/005,305 2020-04-04
PCT/US2021/025092 WO2021202667A1 (en) 2020-03-31 2021-03-31 Methods for palette prediction

Publications (1)

Publication Number Publication Date
CN115428455A true CN115428455A (zh) 2022-12-02

Family

ID=77856665

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180026652.0A Pending CN115428455A (zh) 2020-03-31 2021-03-31 调色板预测方法

Country Status (6)

Country Link
US (1) US11968360B2 (zh)
EP (1) EP4128778A4 (zh)
JP (1) JP2023520141A (zh)
KR (1) KR20220161409A (zh)
CN (1) CN115428455A (zh)
WO (1) WO2021202667A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11968360B2 (en) 2020-03-31 2024-04-23 Alibaba Group Holding Limited Methods for palette prediction

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130003829A1 (en) * 2011-07-01 2013-01-03 Kiran Misra System for initializing an arithmetic coder
EP3174301A1 (en) * 2011-10-17 2017-05-31 Kabushiki Kaisha Toshiba Decoding device and decoding method
US9491460B2 (en) 2013-03-29 2016-11-08 Qualcomm Incorporated Bandwidth reduction for video coding prediction
AU2014202921B2 (en) 2014-05-29 2017-02-02 Canon Kabushiki Kaisha Method, apparatus and system for de-blocking a block of video samples
US10136141B2 (en) * 2014-06-11 2018-11-20 Qualcomm Incorporated Determining quantization parameter (QP) values and delta QP values for palette coded blocks in video coding
US9924175B2 (en) * 2014-06-11 2018-03-20 Qualcomm Incorporated Determining application of deblocking filtering to palette coded blocks in video coding
US10623747B2 (en) * 2014-06-20 2020-04-14 Hfi Innovation Inc. Method of palette predictor signaling for video coding
US9900624B2 (en) * 2015-02-05 2018-02-20 Mediatek Inc. Methods and apparatus of decoding process for palette syntax
WO2016159610A1 (ko) * 2015-04-02 2016-10-06 주식회사 케이티 비디오 신호 처리 방법 및 장치
US10356432B2 (en) * 2015-09-14 2019-07-16 Qualcomm Incorporated Palette predictor initialization and merge for video coding
US11025905B2 (en) * 2018-09-14 2021-06-01 Tencent America LLC Method and device for decoding with palette mode
CN117676169A (zh) * 2019-01-02 2024-03-08 Lg 电子株式会社 使用去块滤波的图像编译方法和装置
US20200314423A1 (en) * 2019-03-25 2020-10-01 Qualcomm Incorporated Fixed filters with non-linear adaptive loop filter in video coding
KR20220032520A (ko) * 2019-07-20 2022-03-15 베이징 바이트댄스 네트워크 테크놀로지 컴퍼니, 리미티드 팔레트 모드 사용 지시의 조건 종속적인 코딩
CN114208188A (zh) * 2019-07-29 2022-03-18 北京字节跳动网络技术有限公司 调色板模式编解码的扫描顺序改进
US11206413B2 (en) * 2019-08-13 2021-12-21 Qualcomm Incorporated Palette predictor updates for local dual trees
US11240507B2 (en) * 2019-09-24 2022-02-01 Qualcomm Incorporated Simplified palette predictor update for video coding
US11968360B2 (en) 2020-03-31 2024-04-23 Alibaba Group Holding Limited Methods for palette prediction

Also Published As

Publication number Publication date
JP2023520141A (ja) 2023-05-16
US20210306627A1 (en) 2021-09-30
KR20220161409A (ko) 2022-12-06
US11968360B2 (en) 2024-04-23
WO2021202667A1 (en) 2021-10-07
EP4128778A1 (en) 2023-02-08
EP4128778A4 (en) 2024-04-17

Similar Documents

Publication Publication Date Title
US11496741B2 (en) Methods and apparatuses for block partitioning at picture boundary
US20230362384A1 (en) Methods and systems for cross-component sample adaptive offset
CN115152236A (zh) 处理色度信号的方法
US11765361B2 (en) Method and apparatus for coding video data in palette mode
CN115398905A (zh) 环路滤波器的高级语法控制
CN115836525A (zh) 用于从多个交叉分量进行预测的方法和系统
CN115349228A (zh) 视频记录的符号数据隐藏
CN114762332A (zh) 构建合并候选列表的方法
US11968360B2 (en) Methods for palette prediction
CN114902670B (zh) 用信号通知子图像划分信息的方法和装置
CN115552900A (zh) 用信号通知最大变换大小和残差编码的方法
CN115699744A (zh) 双向预测校正系统和方法
CN115552897A (zh) 采用变换跳过模式编码视频数据的方法和设备
US11451801B2 (en) Methods for coding video data in palette mode
CN115443655A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20230117

Address after: Room 554, floor 5, building 3, No. 969, Wenyi West Road, Wuchang Street, Yuhang District, Hangzhou City, Zhejiang Province

Applicant after: Alibaba (China) Co.,Ltd.

Address before: Box 847, four, Grand Cayman capital, Cayman Islands, UK

Applicant before: ALIBABA GROUP HOLDING Ltd.

REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40082447

Country of ref document: HK