CN113115047B - 视频编解码方法和设备 - Google Patents

视频编解码方法和设备 Download PDF

Info

Publication number
CN113115047B
CN113115047B CN202011461640.4A CN202011461640A CN113115047B CN 113115047 B CN113115047 B CN 113115047B CN 202011461640 A CN202011461640 A CN 202011461640A CN 113115047 B CN113115047 B CN 113115047B
Authority
CN
China
Prior art keywords
level
act
block
enable flag
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
CN202011461640.4A
Other languages
English (en)
Other versions
CN113115047A (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
Publication of CN113115047A publication Critical patent/CN113115047A/zh
Application granted granted Critical
Publication of CN113115047B publication Critical patent/CN113115047B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/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/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/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/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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/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/182Methods 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 pixel

Landscapes

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

Abstract

一种色彩分量处理的方法,包括:获取已编码视频比特流,所述已编码视频比特流是从具有RGB色彩格式的源编码得到的;解码所述已编码视频比特流中当前图片的片段中的当前编码单元(Coding Unit,CU)的信令信息,其中,所述信令信息包括所述当前CU的预测信息和控制信号,所述控制信号用于在预测残差域中处理所述当前CU的色度分量;根据所述控制信号,确定所述当前CU的残差信息,包括:根据所述控制信号,确定自适应色彩变换(Adaptive Color Transform,ACT)启用信息;以及当所述ACT启用信息指示将ACT用于所述当前CU时,通过将反向变换得到的YCgCo域残差转换为RGB域残差,获取所述残差信息;以及,基于所述残差信息和所述预测信息重建所述当前CU。

Description

视频编解码方法和设备
引用并入
本申请要求于2019年12月24日提交的第62/953,459号美国临时申请的优先权,2019年12月24日递交的第62/953,455号美国临时申请的优先权,2020年1月12日递交的第62/960,043号美国临时申请的优先权,以及2020年11月12日递交的第17/096,937号美国临时申请的优先权,其全部内容通过引用整体并入本文。
技术领域
本申请涉及视频技术领域,具体而言,涉及一种视频编解码方法和设备。
背景技术
ITU-T VCEG(Q6/16)和ISO/IEC MPEG(JTC 1/SC 29/WG 11)在2013年(版本1)、2014年(版本2)、2015年(版本3)和2016年(版本4)中发布了H.265/高效视频编码(HighEfficiency Video Coding,HEVC)标准。在2015年,这两个标准组织联合成立了联合视频开发组(Joint Video Exploration Team,JVET),以开发超越HEVC的下一代视频编码标准。JVET正式启动了超越HEVC的下一代视频编码的标准化过程,即,通用视频编码(VersatileVideo Coding,VVC),并且建立了VVC测试模型(VVC Test Model,VTM)算法描述和编码方法。
在视频编解码中,可以执行色彩变换以提高效率。然而,在某些情况下,当前的色彩变换方案可能引起信令冗余、重叠编码工具、并且要求较高的缓冲器大小。
所公开的方法和系统旨在解决上述一个或多个问题以及其他问题。
发明内容
本申请的一个方面提供了一种色彩分量处理的方法,包括:获取已编码视频比特流,所述已编码视频比特流是从具有RGB色彩格式的源编码得到的;解码所述已编码视频比特流中当前图片的片段中的当前编码单元(Coding Unit,CU)的信令信息,其中,所述信令信息包括所述当前CU的预测信息和控制信号,所述控制信号用于在预测残差域中处理所述当前CU的色度分量;根据所述控制信号,确定所述当前CU的残差信息,包括:根据所述控制信号,确定自适应色彩变换(Adaptive Color Transform,ACT)启用信息;以及当所述ACT启用信息指示将ACT用于所述当前CU时,通过将反向变换得到的YCgCo域残差转换为RGB域残差,获取所述残差信息;以及,基于所述残差信息和所述预测信息重建所述当前CU。
本申请的另一个方面提供了一种装置,包括:获取模块,用于获取已编码视频比特流,其中,所述已编码视频比特流是从具有RGB色彩格式的源编码得到的;解码模块,用于解码所述已编码视频比特流中当前图片的片段中的当前编码单元(Coding Unit,CU)的信令信息,其中,所述信令信息包括所述当前CU的预测信息和控制信号,所述控制信号用于在预测残差域中处理所述当前CU的色度分量;确定模块,用于根据所述控制信号,确定所述当前CU的残差信息,包括:根据所述控制信号,确定自适应色彩变换(Adaptive ColorTransform,ACT)启用信息;以及当所述ACT启用信息指示将ACT用于所述当前CU时,通过将反向变换得到的YCgCo域残差转换为RGB域残差,获取所述残差信息;以及,重建模块,用于基于所述残差信息和所述预测信息重建所述当前CU。
本申请还提供了一种计算机设备,所述设备包括至少一个处理器和至少一个存储器,所述至少一个存储器中存储有至少一条指令,所述至少一条指令由所述至少一个处理器加载并执行以实现上述方法。
本申请还提供了一种非易失性计算机可读介质,所述非易失性计算机可读介质中存储有指令,所述指令在由处理器执行时,使所述处理器执行上述方法。
根据本申请的说明书,权利要求书和附图,本领域的技术人员可以理解本申请的其他方面。
通过采用本申请的技术方案,可以执行色彩变换,从而提高视频编解码效率,减少信令冗余,同时降低对缓冲器大小的要求。
附图说明
图1示出了本申请一些实施例的运行环境的示意图:
图2示出了根据本申请实施例的计算机系统的示意图;
图3示出了根据本申请实施例的示例性视频流式传输应用的示意图;
图4示出了根据本申请实施例的示例性编解码过程的示意图;
图5A至图5C示出了根据本申请实施例的三种示例性色彩格式;
图6示出了根据本申请实施例的使用色彩变换的编码流程图;
图7示出了根据本申请实施例的使用色彩变换的解码流程图;
图8示出了根据本申请实施例的使用色彩变换的另一编码流程图;以及
图9示出了根据本申请实施例的使用色彩变换的另一解码流程图。
具体实施方式
下面结合附图描述本申请实施例的技术方案。在所有附图中,将尽可能使用相同的附图标号表示相同或相似的部件。很显然,所描述的实施例仅仅是本申请的一些实施例,而非全部实施例。基于本申请的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的其它实施例,都属于本申请的保护范围。首先在下面解释本申请中使用的某些术语。
下面列出了本申请实施例中使用的一些首字母缩略词和术语,其他未列出的首字母缩略词和/或术语可以从VVC标准或其他相关文献中找到
HEVC:高效视频编码(High Efficiency Video Coding)。
VVC:通用视频编码(Versatile Video Coding)
JVET:联合视频开发组(Joint Video Exploration Team)
HDR:高动态范围(high dynamic range)
SDR:标准动态范围(standard dynamic range)
SPS:序列参数集(sequence parameter set)
PPS:图片参数集(picture parameter set)
NAL:网络抽象层(network abstraction layer)
MPM:最可能的模式(most probable mode)
ACT:自适应色彩转换(Adaptive color transform)
BDPCM:基于块的增量脉冲编码调制(Block-based Delta Pulse CodeModulation)
WAIP:广角帧内预测(Wide-Angle Intra Prediction)
QT:四叉树(Quad-Tree)
BT:二叉树(Binary Tree)
TT:三叉树(Ternary Tree)
CU:编码单元(Coding Unit)
PU:预测单元(Prediction Unit)
TU:变换单元(Transform Unit)
PDPC:位置相关的预测组合(Position Dependent Prediction Combination)
QP:量化参数(Quantization Parameter)
ISP:帧内子分区预测(Intra Sub-partitions prediction)
TPM∶三角分割模式(Triangular partitioning mode)
GEO:几何合并模式(Geometric merge mode)
SBT:子块变换(Sub-block transform)
CBF:编码块标志(Coded block flag)
CCLM:跨分量线性模型(Cross-component Linear Model)
DT:DualTree
CCP:跨分量预测(Cross Component Prediction)
比特流(Bitstream):NAL单元流或字节流形式的一系列比特,其是已编码图片和形成一个或多个CVS的相关数据的表示。
通用视频编码(VVC):VVC标准规范的公布版本(例如,VVC草案7,JVET-P2001),其通过引用并入本文。
色度(Chroma):形容词,用符号Cb和Cr表示,其指示样本阵列或单个样本表示与原色相关的两个色差信号之一。
编码树块(Coding tree block,CTB):针对N的某个值的N×N样本块,使得将组成部分划分成CTB是一种分区。
编码树单元(Coding tree unit,CTU):亮度样本的CTB、具有三个样本阵列的图片的色度样本的两个对应的CTB、单色图片的样本的CTB、或使用三个单独的颜色平面和用于编码样本的语法结构进行编码的图片的样本的CTB。
运动向量(Motion Vector,MV):用于帧间预测的二维向量,提供从解码图片中的坐标到参考图片中的坐标的偏移。
标志(Flag):变量或单比特语法元素,可以采用两个可能值的其中之一:0和1。
语法元素(Syntax element):比特流中表示的数据元素。
语法结构(Syntax structure):零个或多个语法元素以指定的顺序一起出现在比特流中。
所公开的方法可以单独使用或以任何顺序组合使用。进一步地,可由处理电路(例如,至少一个处理器或至少一个集成电路)实现每个方法(或实施例)、编码器和解码器。在一个示例中,至少一个处理器执行存储在非易失性计算机可读介质中的程序。在下文中,可将术语块解释为预测块、编码块、变换单元或编码单元(即,CU)。
图1示出了本申请的一些实施例的运行环境100。如图1所示,运行环境100可以包括具有视频功能的各种设备。例如,运行环境100可以包括移动设备102、终端设备104和电子设备106。运行环境100还可以包括其他类型的设备。
运行环境100还可以包括服务器120、至少一个用户130、以及连接各种设备和服务器120的通信网络140。用户130可以使用、访问或控制各种设备中的一个或多个。
移动设备102、终端设备104和电子设备106通常可以称为终端设备,其可以包括任何用户终端,例如个人数字助理(PDA)、移动电话、智能电话、集成消息收发设备(IMD)、平板计算机、笔记本计算机、台式计算机、以及其他计算设备。终端设备104可以包括任何图像或视频捕获设备,例如数码相机、摄像机、安全摄像机、车载摄像机、立体摄像机等,或者具有视频功能的任何电子设备,例如数字门铃、自动驾驶传感器、数字语音助手、智能扬声器、智能家电,或具有视频处理能力的任何工业或商业物联网(IoT)系统。移动设备102、终端设备104和电子设备106中的任何一个在被移动的个人携带时可以是静止的或移动的,并且还可以作为运输的一部分或以运输模式来放置,该运输模式包括汽车、卡车、出租车、公共汽车、火车、轮船、飞机、自行车、摩托车或任何类似的合适运输模式。
网络140可以包括任何适当类型的通信网络,并且可以包括有线网络或无线网络的任意组合,该有线网络或无线网络包括但不限于无线蜂窝电话网络、无线局域网(WLAN)、蓝牙个人域网络、以太网局域网、令牌环局域网、广域网和因特网。网络140还可以包括用于语音/数据通信的私有或公共云计算平台。当包括因特网或其他类型的网络时,与因特网的连接可以包括长距离无线连接、短距离无线连接、以及包括电话线、电缆线、电力线和类似通信路径的各种有线连接。
服务器120可以包括配置在服务器集群中或分布在不同位置的任何类型的服务器计算机系统或多个计算机系统。服务器120还可以包括云计算平台上的云服务器。服务器120也可以称为服务器实体,其可以与任何适当的设备(包括电子设备)集成,以执行本申请实施例的视频解码和应用处理的服务器侧功能。
图2示出了实现各种终端设备102、104和/或106、和/或服务器120的某些方面的示例性计算机系统。如图2所示,计算机系统200可以包括硬件处理器202、存储器204、读卡器206、显示器208、键盘210、射频(RF)接口212、基带214、天线216、编码器222、解码器224、照相机226、扬声器232和麦克风234等。图2所示的组件是说明性的,可以省略某些组件,并且可以添加其他组件。
可以提供处理器202以控制计算机系统200。处理器202可以通过至少一个总线或其他电连接连接到其他组件,以向其他组件发送数据和从其他组件接收数据。处理器202可以包括至少一个处理核,例如四核处理器或八核处理器。处理器202可以使用数字信号处理(DSP)、现场可编程门阵列(FPGA)和可编程逻辑阵列(PLA)的至少一种硬件形式来实现。处理器202还可以包括主处理器和协处理器。主处理器可以是中央处理单元(CPU),协处理器可以是图形处理单元(GPU),该图形处理单元被配置为负责渲染和绘制显示屏幕需要显示的内容。在一些实施例中,处理器202可以进一步包括人工智能(AI)处理器。AI处理器被配置为处理与机器学习有关的计算操作。
存储器204可以包括诸如高速随机存取存储器和非易失性存储器的一个或多个计算机可读存储介质,例如,一个或多个磁盘存储设备或闪存设备。存储器204既可以存储图像和音频数据形式的数据,还可以存储用于处理器202的指令,例如计算机可读程序指令。当所述计算机可读程序指令被用于编码/解码的计算机(即该计算机的处理器)执行时,使得所述计算机执行本申请实施例提供的视频编解码方法。读卡器206可以包括任何类型的便携式卡接口,例如智能卡接口、通信卡接口(例如,近场通信(NFC)卡)、用户识别模块(SIM)卡、或其他用于提供用户信息并适于为用户130的认证和授权提供认证信息的卡接口。
此外,显示器208可以是适于显示图像或视频的任何合适的显示技术。例如,显示器208可以包括液晶显示器(LCD)屏幕、有机发光二极管(OLED)屏幕等,并且可以是触摸屏。键盘210可以包括物理或虚拟键盘,以便用户130输入信息,并且还可以包括其他类型的输入/输出设备。扬声器232和麦克风234可以用于为计算机系统200输入和输出音频。
RF接口212(连同天线216)可以包括用于接收和发送RF信号的RF电路。RF接口212可以将电信号转换成用于发送的电磁信号,或者将接收到的电磁信号转换成用于接收的电信号。RF接口212可以通过至少一种无线通信协议与其他电子设备通信。无线通信协议可以包括城域网、各代移动通信网络(2G、3G、4G和5G)、无线局域网(LAN)和/或无线保真(WiFi)网络。在一些实施例中,RF接口212还可以包括与近场通信(NFC)相关的电路。基带214可以包括电路,用于处理去往和来自RF接口212的信号。
此外,照相机226可以包括用于收集图像或视频的任何类型的成像或视频捕获设备。当计算机系统200是由用户130携带的便携式设备时,照相机226可以包括前置摄像头和后置摄像头。前置摄像头可以设置在电子设备的前面板上,后置摄像头可以设置在电子设备的后表面上。在一些实施例中,至少有两个后置摄像头,每个摄像头都是主摄像头、景深摄像头、广角摄像头和长焦摄像头中的任何一个,以便通过融合主摄像头与景深摄像头来实现背景模糊功能,并且通过融合主摄像头与广角摄像头来实现全景拍摄和虚拟现实(VR)拍摄功能或其他融合拍摄功能。在一些实施例中,照相机226可以进一步包括闪光灯。
编码器222和解码器224可以被称为电子设备的编解码器电路,该编解码器电路适于执行音频和/或视频数据的编码和解码,或者辅助处理器202执行编码和解码。可以将编码器222和/或解码器224实现为电子设备200中的硬件电路,或软件程序,或硬件电路和软件程序的组合。计算机系统200可以通过使用编码器222和/或解码器224来实现所公开的控制颜色变换的方法的实施例。
图2所示的计算机系统200还可以包括用于实现任何特定系统的附加结构。例如,当实现服务器120时,计算机系统200可以包括数据库和/或基于陆线(1and-line)的网络通信接口,或者当实现移动设备102等时,计算机系统200可以包括与无线通信系统中的移动终端或用户设备类似的结构。然而,计算机系统200还可以包括或省略任何结构,以实现可能需要编码和解码、或者需要编码、或者需要解码视频的任何电子设备或装置。
返回图1,计算机系统200(即,各种设备102、104和/或106中的任何一个或多个)可以捕获或收集各种数据(例如,音频数据、环境/操作数据、图像数据和/或视频数据),并通过网络140将数据发送到服务器120。计算机系统200可以在将数据发送到服务器120之前处理或预处理数据,或者可以将未处理的数据发送到服务器120。
在操作过程中,一个终端设备的用户可以使用视频应用查看本地视频内容,或向服务器120发送视频内容,和/或,从服务器120接收视频内容。或者,各种终端设备的用户可以使用各种视频应用来彼此传递视频内容。在一个实施例中,一个用户可以经由服务器120与另一个用户传递视频内容,或者服务器120可以在用户之间建立通信信道,使得一个用户可以经由该通信信道直接与另一个用户传递视频。
图3示出了本申请的视频流应用的示例。本申请提供的方法和设备可以同样适用于其他启用视频的应用,例如包括视频回放应用、视频会议、数字电视(Television,TV)、在包括CD、DVD、记忆棒等的数字媒体上存储压缩视频等。
如图3所示,流式传输系统300可以包括视频源单元310、流式传输服务器330、第一客户端流式传输设备350和第二客户端流式传输设备370。视频源单元310可以包括视频捕获设备312,例如,数码相机或数字摄像机。其中,所述视频捕获设备312用于获取未压缩格式的视频数据流。视频捕获设备312还可以是存储设备,用于以未压缩格式存储视频数据流。与已编码视频流数据相比,未压缩格式的视频数据流可以具有高数据量。视频源单元310可以进一步包括实现视频编码器315的视频处理单元314。视频编码器315可以包括硬件、软件或其组合,以实现如下更详细描述的本申请的各方面。视频编码器315可以具有与图2所示的编码器222类似的结构和功能。视频编码器315用于处理未压缩格式的视频流数据,以生成已编码视频流数据。与未压缩的视频流数据相比,已编码视频流数据具有较低的数据量,并且可以被发送到并存储在流式传输服务器330上用于直播或点播。诸如第一客户端流式传输设备350和第二客户端流式传输设备370的客户端流式传输设备可以访问流式传输服务器330,从而获取已编码视频流数据的副本。客户端流式传输设备370可以包括视频解码器375,比如,该视频解码器375可由视频处理单元374实现。视频解码器375对已编码视频流数据的输入副本进行解码,并创建可在显示器372(例如,显示屏)或其他呈现设备上呈现的已解码视频数据的输出流。视频解码器375可以具有与图2所示的解码器224类似的结构和功能。流式传输系统300可以通过使用编码器315和/或解码器375来实现所公开的控制色彩变换的方法的实施例。在流式传输系统300中,可以对未压缩的视频数据进行编码,并且可以根据特定的视频编解码/压缩标准对视频流数据进行解码。这些标准的示例包括ITU-T建议H.265。在示例中,根据非正式地称为通用视频编码(VVC)的视频编码标准对视频数据进行编码。
图4示出了根据所公开实施例的由解码器执行的视频编码过程。视频编码过程可以控制残差域中的色彩分量处理。该过程可以由计算系统200实现的电子设备来实施。
如图4所示,在过程开始时,获取已编码视频比特流(S402)。已编码比特流可以由视频应用(例如,视频回放应用、视频流应用、屏幕共享应用、视频会议应用)从本地存储器或远程服务器获取。可基于本申请公开的实施例,对已编码视频比特流进行编码。视频比特流的源(原始数据)具有RGB(红,绿,蓝)色彩格式。换言之,从具有RGB色彩格式的视频源对比特流进行编码。
视频样本的色彩可以用不同的色彩格式表示,例如YCbCr(也被称为YUV)或RGB。具有YUV色彩格式的视频的帧、切片和/或图片可以包括指示像素亮度的亮度(1uma)分量(例如,一个亮度样本阵列)和指示色差分量的色度(chroma)分量(例如,两个色度样本阵列)。因此,在这种色彩格式中,Y表示亮度分量,U和V或Cr和Cb表示色彩分量。
在本申请的示例性实施例中,亮度分量可以指在编码次序中为第一分量的任何色彩分量(例如,红色色彩分量,绿色色彩分量,Y色彩分量),且色度分量可以指未按编码次序编码为第一分量的任何色彩分量。
存在不同的YUV格式,即色度格式,如图5A至图5C所示。不同的色度格式定义了不同色彩分量的不同下采样网格。如图5A所示,在4:2:0采样中,两个色度阵列中的每一个的高度和宽度均为亮度阵列高度和宽度的一半。或者,可以在ITU-T H.SEI|ISO/IEC 23002-7中规定的VUI参数中指示色度样本相对位置。如图5B所示,在4:2:2采样中,两个色度阵列中的每一个的高度与亮度阵列相同,宽度为亮度阵列的一半。即,U和V图片的高度与Y图片的高度相同,但U和V图片的宽度是Y图片的一半。如图5C所示,对于YUV 4:4:4格式,两个色度阵列中的每一个的高度和宽度均与亮度阵列的高度和宽度相同。即,U和V图的宽度和高度都与Y图的宽度和高度相同。本申请中公开的示例性实施例涉及视频源,视频源的某些部分可经色彩变换以实现高效编码。
回到图4,可以从已编码视频比特流中解码当前图片的片段中的当前编码块(Coding Block,CB)的信令信息(S404)。信令信息包括预测信息和控制信号,其中,所述控制信号用于在预测残差域中处理当前编码单元CU的色度分量。
解码器可以解析已编码视频流,并提取信令信息,比如,序列信息和像素/样本组(所述组包括图片、图块、切片、宏块、编码树单元CTU、编码单元CU、块、变换单元、预测单元等)的参数,以重建视频中的这些组。在已编码视频流中,将原始视频分区形成多个片段(例如,相同大小的正方形样本),比如,宏块、编码树单元CTU、切片、图块等。可以基于片段的块分区结构(也称为分区树结构),对片段进一步分区,形成编码单元CU或编码树。编码单元CU可以具有对应的参数和预测信息,使得可在解码过程中基于信令信息重建视频的原始图片中对应于编码单元CU的区域。预测信息可以包括,例如,当前编码单元CU的亮度编码块(Coding Block)的预测类型(例如,帧间预测、帧内预测、帧间及帧内预测的组合)、当前CU的色度CB的预测类型、帧间预测信息(例如,根据编码技术的冗余信息的描述、运动向量、合并模式信息、关于参考图片的信息)和/或帧内预测信息(例如,根据帧内编解码模式及技术的帧内预测方向信息、关于同一图片中参考块的信息)。
控制信号可以有条件地限制解码器使用特定方案,以处理预测残差域中当前CU的色彩分量。控制信号可以包括联合Cb Cr残差(JCCR)启用标志、或基于块的增量脉冲编码调制(Block-based Delta Pulse Code Modulation,BDPCM)色度启用标志,所述JCCR启用标志或BDPCM色度启用标志可以限制解码器对当前CU使用自适应色彩变换(Adaptive ColorTransform,ACT);或者,控制信号可以包括ACT启用标志,该ACT启用标志可限制解码器对当前CU的色度分量应用反向JCCR或BDPCM。控制信号可以指示大小阈值,若当前CU的块大小大于所述大小阈值时,所述大小阈值限制解码器在块级使用自适应色彩变换ACT。下面根据步骤S406中的实施例描述控制信号对编码过程提出的限制细节。
已知在RGB格式中,三个分量(即,R、G和B)具有强相关性,这意味着这三个色彩分量之间存在统计冗余。可使用线性变换,将视频样本的色彩表示转换成不同的色彩空间。以下列出了根据BT.601标准从RGB色彩空间到YUV色彩空间的示例转换:
Y=((66*R+129*G+25*B+128)>>8)+16
U=((-38*R-74*G+112*B+128)>>8)+128
V=((112*R-94*G-18*B+128)>>8)+128
下面列出了根据BT.601标准从8位YUV格式到RGB格式的示例转换。具体地,从原始RGB到YUV公式,可以导出BT.601的以下关系。
Y=round(0.256788*R+0.504129*G+0.097906*B)+16
U=round(-0.148223*R-0.290993*G+0.439216*B)+128
V=round(0.439216*R-0.367788*G-0.071427*B)+128
因此,给定系数C、D和E,其中,C=Y-16、D=U-128和E=V-128,将YUV转换为RGB的公式可推导如下:
R=clip(round(1.164383*C+1.596027*E))
G=clip(round(1.164383*C-(0.391762*D)-(0.812968*E)))
B=clip(round(1.164383*C+2.017232*D))
其中,clip()表示限幅到[0..255]的范围。
进一步地,可以通过以下公式,对上述公式进行合理地近似:
R=clip((298*C+409*E+128)>>8)
G=clip((298*C-100*D-208*E+128)>>8)
B=clip((298*C+516*D+128)>>8)
为了有效地编解码RGB视频内容,在HEVC的屏幕内容编码扩展的软件测试模型(the software test model of screen content coding extension of HEVC,SCM)中,采用环路内自适应色彩变换ACT,其中,在残差域中操作ACT,并且用信号通知CU级标志,以指示使用色彩空间变换。
SCM中使用的色彩变换如下:
正向变换:
Figure BDA0002826845490000121
逆向变换:
Figure BDA0002826845490000122
图6示出了在SCM中使用色彩变换的编码流程图。如图6所示,在编码过程中,将色彩空间变换应用到残差,以将输入色彩空间(例如RGB域)处的残差转换为YCgCo域,并且将YCgCo域处的残差用于交叉分量预测和变换过程。图7示出了在SCM中使用色彩变换的解码流程图。如图7所示,在系数的反向变换之后,应用反向色彩空间变换,以将YCgCo域中的残差转换回RGB域。
JVET-P0517提出将HEVC中的ACT工具包括到VVC框架中,以提高4:4:4色度格式编解码的效率。图8示出了根据VTM的编码流程图。通过在CU级发信号通知一个ACT标志(即,块级ACT启用标志),自适应地选择两个色彩空间。当标志等于一时,在YCgCo空间,对CU的残差进行编码;否则,在原始色彩空间中对CU的残差进行编码。与在HEVC中相同,如果启用了ACT,则通过自适应地将残差从输入色彩空间变换到YCgCo空间,ACT执行预测残差域中的环路内色彩空间变换,然后,基于在YCgCo空间中编码的残差,编码过程进行到变换/量化步骤。图9示出了应用ACT的VVC中的解码流程图。如图9所示,在残差域中执行色彩空间变换。特别地,在反向变换之后,引入一个额外的解码模块,即反向ACT,以将残差从YCgCo域转换回原始域。
在VVC中,除非最大变换大小小于一个编码单元CU的宽度或高度,一个CU叶节点也用作变换处理的单元。因此,在实施方案中,为一个编码单元CU发信号通知ACT标志,以选择用于编解码该CU残差的色彩空间。另外,遵循HEVC ACT设计,对于帧间和IBC编码单元CU,仅在CU中存在至少一个非零系数时,才启用ACT。对于帧内编码单元CU,仅在色度分量选择与亮度分量相同的帧内预测模式(即,DM模式)时,才启用ACT。
用于色彩空间变换的核心变换保持与用于HEVC的核心变换相同。具体地,应用如下所述的正向和反向YCgCo色彩变换矩阵:
Figure BDA0002826845490000131
Figure BDA0002826845490000132
Figure BDA0002826845490000141
Figure BDA0002826845490000142
其中,C′0,C′1和C′2是分别对应于Y、Cg和Co的色彩分量,并且C0,C1和C2是分别对应于G、B和R的色彩分量。
另外,未标准化ACT变换矩阵。为了补偿色彩变换前后残差信号的动态范围变化,分别对Y、Cg和Co分量的变换残差应用(-5,-5,-3)的量化参数QP调整。调整后的量化参数仅影响CU中残差的量化和反向量化。
另一方面,如上述正向和反向YCgCo色彩变换矩阵所示,正向色彩变换和反向色彩变换需要访问所有三个分量的残差。相应地,在实施方案中,在以下两种情形(分离树分区和ISP模式)中禁用ACT,其中,并不是所有三个分量的残差都可用,并且不同色彩分量的预测块大小不同。分离树分区:当应用分离树时,根据不同的结构,对一个CTU内的亮度样本和色度样本进行分区。这导致亮度树中的CU仅包含亮度分量,而色度树中的CU仅包含两个色度分量。帧内子分区预测(Intra sub-partition prediction,ISP):ISP子分区仅应用于亮度,而色度信号编码时不进行分割。在当前ISP设计中,除最后的ISP子分区之外,其它子分区仅包含亮度分量。
回到图4,可以根据控制信号确定当前CU的残差信息(S406)。如先前所论述,亮度分量可以指在编码顺序中为第一分量的任何色彩分量(例如,红色色彩分量、绿色色彩分量、Y色彩分量),且色度分量可以指未按编码顺序编码为第一分量的任何色彩分量。自适应色彩变换或反向ACT涉及编码数据中的所有三个分量,并且被认为是可以由解码器在残差域执行的一种类型的色度分量处理。可由解码器在残差域执行的其它类型的色度分量处理可以包括BDPCM和JCCR。对于同一CU,这些不同类型的色度分量处理可能不会发生。即,如果执行ACT,则不执行BDPCM,反之亦然;如果执行JCCR,则不执行ACT,反之亦然。
本申请提供了这样的实施例,其中,一种类型的色度分量处理的启用标志用作残差域中另一种类型的色度分量处理的控制信号。本申请还提供这样的实施例,其中,大小阈值在残差域中用作ACT的控制信号。因此,可以基于控制信号,确定残差信息。一般以三组描述这些实施例:第一组实施例针对与编码过程中的ACT和基于块的增量脉冲编码调制(BDPCM)的实现相关的情况,第二组实施例针对与ACT和联合Cb Cr残差(JCCR)编码的实现相关的情况,以及第三组实施例针对基于大小信息的块级ACT的实现情况。
具体地,可以基于控制信号确定ACT启用信息;当ACT启用信息指示将ACT用于当前CU时,可以通过将反向变换得到的YCgCo域的残差转换为RGB域的残差,获取当前CU的残差信息。ACT启用信息可以包括样本级ACT启用标志、或块级ACT启用标志中的至少一个。
如本文所用,样本级标志可以指在高于视频比特流中的块级的样本级上的信令,并且可以基于样本级,应用于当前图片的相同片段、相同图片或相同序列中的图片中的编码单元/块。例如,可在序列级、切片级、图块组级(如果有)、图片级等处应用样本级标志。可在例如图片参数集(PPS)、序列参数集(SPS)、适配参数集(Adaptation Parameter Set,APS)、图片头、切片头等中用信号通知样本级标志。块级是当前CU的分区级别。如本文所用,块级标志或CU级标志可以指编码单元/块级的信令。
如表1所示,在编码单元语法中描述了VVC中的ACT相关信令。
表1,ACT的编码单元语法
Figure BDA0002826845490000151
/>
Figure BDA0002826845490000161
/>
Figure BDA0002826845490000171
/>
Figure BDA0002826845490000181
/>
Figure BDA0002826845490000191
将ACT相关的语义描述如下。
sps_act_enabled_flag等于1指定可使用自适应色彩变换ACT,并且,cu_act_enabled_flag存在于编码单元语法中。sps_act_enabled_flag等于0指定不使用自适应色彩变换ACT,且cu_act_enabled_flag不存在于编码单元语法中。当sps_act_enabled_flag不存在时,推断其等于0。
cu_act_enabled_flag等于1指定在YCgCo色彩空间中,编码当前编码单元CU的残差。cu_act_enabled_flag等于0指定在原始色彩空间中,编码当前编码单元CU的残差。当cu_act_enabled_flag不存在时,推断其等于0。
这里,sps_act_enabled_flag是样本级ACT启用标志,而cu_act_enabled_flag是块级ACT启用标志,所述块级ACT启用标志指示是否将ACT用于所述当前CU。可以理解,ACT启用信息可以包括高于块级的另一级的样本级ACT启用标志,例如,切片级标志、图块组级标志等。
通常,样本级ACT启用标志的值为0指示不将ACT用于任何属于样本级的CU;并且ACT启用信息可以不包括块级ACT启用标志(例如,cu_act_enabled_flag)。进一步地,在信令信息中不存在对应于当前编码块的块级ACT启用标志)。当样本级ACT启用标志不存在时(即,不包括在信令信息中),推断所述样本级ACT启用标志等于0。当ACT启用信息指示不将ACT用于当前CU时,获取原始色域处的残差作为解码过程中的残差信息。
样本级ACT启用标志的值为1指示可以使用ACT,并且,块级ACT启用标志可以存在于属于样本级的某个(些)编码单元的编码单元语法中。ACT启用信息可以进一步包括当前编码块CB的块级ACT启用标志(例如,cu_act_enabled_flag)。
块级ACT启用标志的值为0指定当前编码单元的残差在原始色彩空间(例如,RGB)中被编码。当块级ACT启用标志不存在时,推断其等于0。块级ACT启用标志的值等于1指定当前编码单元的残差在YCgCo色彩空间中被编码。若块级ACT启用标志为1,解码器可执行反向ACT过程,该反向ACT过程将反向变换获取的YCgCo域的残差转换为RGB域的残差。转换后获取的RGB域的残差将与预测信息组合,以重建当前CB。
第一组实施例解决了ACT和BDPCM之间的信令冗余的问题。具体地,在VVC中的序列级,在SPS中发信号通知BDPCM启用标志;仅在SPS中启用变换跳过模式的情况下,才用信号通知此标志。
当启用BDPCM时,就亮度样本而言,如果CU大小小于或等于MaxTsSize乘以MaxTsSize,并且如果CU是帧内编码,则在CU级发送标志,其中,MaxTsSize是变换跳过模式允许的最大块大小。该标志指示是否使用常规帧内编解码或BDPCM。如果使用BDPCM,则发送BDPCM预测方向标志,以指示预测是水平的还是垂直的。然后,使用常规的水平或垂直帧内预测过程来预测块,其中,所述常规的水平或垂直帧内预测过程为过滤参考样本。对残差进行量化,并且编码每个量化的残差和它的预测值之间的差,即,水平或垂直(取决于BDPCM预测方向)相邻位置的先前已编码的残差。
对于大小为M(高度)×N(宽度)的块,令ri,j,0≤i≤M-1,0≤j≤N-1为预测残差。令Q(ri,j),0≤i≤M-1,0≤j≤N-1表示残差ri,j的量化版本。将BDPCM应用到量化残差值,产生具有元素
Figure BDA0002826845490000211
的修改后的M×N阵列/>
Figure BDA0002826845490000212
其中,根据相邻的量化残差值预测/>
Figure BDA0002826845490000213
对于垂直BDPCM预测模式,0≤j≤(N-1),以下各项用于推导/>
Figure BDA0002826845490000214
Figure BDA0002826845490000215
对于水平BDPCM预测模式,0≤i≤(M-1),以下各项用于推导
Figure BDA0002826845490000219
Figure BDA0002826845490000216
在解码器侧,逆转上述过程,以计算Q(ri,j),0≤i≤M-1,0≤j≤N-1,如下:
如果使用垂直BDPCM,则
Figure BDA0002826845490000217
/>
如果使用水平BDPCM,则
Figure BDA0002826845490000218
将反向量化残差Q-1(Q(ri,j))添加到帧内块预测值,以得到重建的样本值。
使用与变换跳过模式残差编码中相同的残差编码过程,将预测的量化残差值
Figure BDA0002826845490000221
发送到解码器。根据用于未来帧内模式编解码的MPM模式,如果BDPCM预测方向分别是是水平或垂直的,则为BDPCM编码的CU存储水平或垂直预测模式。对于解块,如果使用BDPCM对块边界两侧的两个块进行编码,则不对该特定块边界进行解块。
表1还包括与块级BDPCM相关的编码单元语法。如表1所示,在CU级处,当ACT应用于当前CU时,不应用BDPCM色度。当未启用ACT时,才会解码BDPCM。根据表1,BDPCM色度相关语义如下:
sps_bdpcm_enabled_flag等于1指定intra_bdpcm_luma_flag和intra_bdpcm_chroma_flag可存在于用于帧内编码单元的编码单元语法中。sps_bdpcm_enabled_flag等于0指定帧内编码单元的编码单元语法中不存在intra_bdpcm_luma_flag和intra_bdpcm_chroma_flag。当帧内编码单元的编码单元语法中不存在intra_bdpcm_luma_flag和intra_bdpcm_chroma_flag,推断sps_bdpcm_enabled_flag的值为0。
sps_bdpcm_chroma_enabled_flag等于1指定帧内编码单元的编码单元语法中可存在intra_bdpcm_chroma_flag。sps_bdpcm_chroma_enabled_flag等于0指定帧内编码单元的编码单元语法中不存在intra_bdpcm_chroma_flag。当帧内编码单元的编码单元语法中不存在intra_bdpcm_chroma_flag时,推断sps_bdpcm_chroma_enabled_flag为0。
intra_bdpcm_chroma_flag等于1指定将BDPCM应用到位置(x0,y0)处的当前色度编码块,即,跳过变换,由intra_bdpcm_chroma_dir_flag指定色度帧内预测模式。intra_bdpcm_chroma_flag等于0指定不将BDPCM应用于位置(x0,y0)处的当前色度编码块。当intra_bdpcm_chroma_flag不存在时,推断其等于0。
intra_bdpcm_chroma_dir_flag等于0指定BDPCM预测方向是水平的。intra_bdpcm_chroma_dir_flag等于1指定BDPCM预测方向是垂直的。
这里,sps_bdpcm_chroma_enabled_flag是样本级BDPCM色度启用标志,并且intra_bdpcm_chroma_flag是块级BDPCM启用标志。可以理解,在如表1所示的SPS中可以包括样本级BDPCM色度启用标志。并且,所述样本级BDPCM色度启用标志可以是高于块级的另一级的启用标志,比如,切片级标志、图块组级标志等。
从编码单元语法可以得知,不能将ACT和BDPCM色度同时应用于CU。然而,总是在VVC中用信号通知ACT和BDPCM色度的更高级标志。为了消除ACT和BDPCM在样本级上的信令冗余,第一组实施例提供了一种机制,以确保不能在高于块级的级上同时使用ACT和BDPCM色度,例如序列级、切片级、图块组级等。
在第一组实施例的一个实施例中,在处于相同级别的BDPCM色度标志(即,样本级BDPCM色度启用标志)之前,完成ACT标志的样本级信令(即,样本级ACT启用标志),并且根据样本级ACT启用标志的值,用信号通知样本级BDPCM色度启用标志。样本级BDPCM色度启用标志可以用于指定块级BDPCM色度启用标志(例如,intra_bdpcm_chroma_flag)是否可以存在于属于样本级的帧内编码单元的编码单元语法中。当用信号通知启用ACT时(例如,样本级ACT启用标志为1)时,不用信号通知样本级BDPCM色度启用标志并且推断其为0;否则,当用信号通知禁用ACT时(例如,样本级ACT启用标志为0),则用信号通知样本级BDPCM色度启用标志。
换句话说,这个实施例中的控制信号是样本级ACT启用标志。控制信号有条件地限制解码器对属于样本级的色度编码块执行BDPCM。具体地,当样本级ACT启用标志的值为0时,信令信息包括样本级BDPCM色度启用标志(例如,sps_bdpcm_chroma_enabled_flag),以指示是否将BDPCM用于属于样本级的至少一个色度编码块;并且当样本级BDPCM色度启用标志的值为1时,信令信息进一步包括块级BDPCM色度启用标志(例如,intra_bdpcm_chroma_flag),其指示是否将BDPCM应用于当前CU的色度分量。当块级BDPCM色度启用标志的值为1时,基于信令信息(例如,信令信息包括intra_bdpcm_chroma_dir_flag)指示的BDPCM预测方向,解码器将反向量化残差确定为残差信息,并且跳过反向变换过程。
在一个示例中,在表2中描述了根据上述实施例的修改的序列参数语法。
表2,修改的序列参数集RBSP语法
Figure BDA0002826845490000241
如表2所述,在序列参数集中,首先发信号通知样本级ACT启用标志sps_act_enabled_flag,以指示可以使用ACT,然后当sps_bdpcm_enabled_flag为1,并且样本级ACT启用标志sps_act_enabled_flag为0时,发信号通知样本级BDPCM色度启用标志sps_bdpcm_chroma_enabled_flag。当sps_bdpcm_enabled_flag为0,或样本级ACT启用标志sps_act_enabled_flag为1时,不发信号通知样本级BDPCM色度启用标志sps_bdpcm_chroma_enabled_flag(即,不包括在信令信息中),并且推断其为0。
在第一组实施例的另一个实施例中,在同一级的ACT标志(即,样本级ACT启用标志)之前,完成BDPCM色度标志(即,样本级BDPCM色度启用标志)的样本级信令,并且根据样本级BDPCM色度启用标志的值,发信号通知样本级ACT启用标志。当发信号通知在样本级启用BDPCM色度(例如,样本级BDPCM色度启用标志为1)时,不发信号通知样本级ACT启用标志并且推断其为0;否则,当发信号通知禁用BDPCM色度(例如,样本级BDPCM色度启用标志为0)时,发信号通知样本级ACT启用标志。所述样本级BDPCM色度启用标志指示是否将BDPCM应用到属于样本级的至少一个色度编码块,所述样本级ACT启用标志指示是否将ACT用于属于所述样本级的至少一个CU。
换言之,本实施例中的控制信号是样本级BDPCM色度启用标志。控制信号有条件地限制解码器对属于样本级的当前CU执行ACT。具体地,当样本级BDPCM色度启用标志的值为0时,信令信息包括样本级ACT标志,该样本级ACT标志指示是否将ACT应用于属于样本级的至少一个编码块,即,所述样本级ACT启用标志应用于与所述控制信号相同的级别;当样本级ACT启用标志的值为1时,ACT启用信息进一步包括块级ACT启用标志,该块级ACT启用标志指示是否将ACT用于当前CU。或者,当样本级BDPCM色度启用标志的值为1时,信令信息不包括样本级ACT启用标志,并且推断样本级ACT启用标志的值为0。进一步地,信令信息不包括块级ACT启用标志,并且推断当前CU的块级ACT启用标志的值为0。信令信息进一步包括块级BDPCM色度启用标志,该块级BDPCM色度启用标志指示是否将BDPCM应用于当前CU的色度分量,并且当块级BDPCM色度启用标志的值为1时,基于信令信息(例如,信令信息包括intra_bdpcm_chroma_dir_flag)指示的BDPCM预测方向,解码器将反向量化残差确定为残差信息,并且跳过反向变换过程。
在一个示例中,在表3中描述了根据上述实施例修改的序列参数语法。
表3,修改的序列参数集RBSP语法
Figure BDA0002826845490000261
如表3所述,在根据VVC草案7修改的序列参数集中,首先发信号通知样本级BDPCM色度启用标志sps_bdpcm_chroma_enabled_flag,以指示可以将BDPCM用于色度分量。当样本级BDPCM色度启用标志sps_bdpcm_chroma_enabled_flag为0时,才发信号通知样本级ACT启用标志sps_act_enabled_flag。当样本级BDPCM色度启用标志sps_bdpcm_chroma_enabled_flag为1时,不发信号通知样本级ACT启用标志sps_act_enabled_flag,并且推断其为0。
这样,在高于块级的样本级,第一组实施例去除了ACT和BDPCM之间的信令冗余,这可能占用信令信息中的两个比特。第一组实施例可以在已编码比特流的信令信息(例如SPS)中节约一个比特。
第二组实施例解决了两个编码工具之间的重叠:ACT和联合Cb Cr残差(JCCR)编码,二者均用于去除残差之间的分量间相关性。
VVC支持JCCR模式(联合Cb Cr残差编码),其中,对色度残差进行联合编码。由TU级标志(也称为块级标志)tu_joint_cbcr_residual_flag指示使用(激活)联合色度编码模式,并且由色度已编码块标志(Coded Block Flags,CBF)隐式指示选择的模式。如果TU的任一个或两个色度CBF等于1,则存在标志tu_joint_cbcr_residual_flag。在PPS和切片头中,发信号通知联合色度残差编码模式的色度QP偏移值,以区别于发信号通知的常规色度残差编码模式的色度QP偏移值。使用这些色度QP偏移值,以导出使用联合色度残差编码模式编码的那些块的色度QP值。当在TU中激活相应的联合色度编码模式(表4中的模式2)时,在该TU的量化和解码期间,将该色度QP偏移添加到所应用的亮度导出色度QP。对于其它模式(表4中的模式1和3),使用与常规Cb或Cr块相同的方式,导出色度QP。表4中描述了根据已发送的变换块,重建色度残差(resCb和resCr)的过程。当激活该模式时,发信号通知一个联合色度残差块(表4中的resJointC[x][y]),并且考虑诸如tu_cbf_cb、tu_cbf_cr和CSign的信息,导出Cb的残差块(resCb)和Cr的残差块(resCr),其中CSign是切片头中指定的符号值。
表4,重建色度残差。CSign的值是符号值(+1或-1),在切片头中指定CSign的值,resJointC[][]是发送的残差。
Figure BDA0002826845490000281
帧内编码CU支持上述三种联合色度编码模式。在帧间编码的CU中,仅支持模式2。因此,对于帧间编码CU,若两个色度cbfs都为1,存在语法元素tu_joint_cbcr_residual_flag。
在表5中描述了VVC草案版本6中的JCCR模式的相关规范文本。
表5,变换单元语法
Figure BDA0002826845490000282
/>
Figure BDA0002826845490000291
/>
Figure BDA0002826845490000301
/>
Figure BDA0002826845490000311
JCCR相关语义描述如下。
sps_joint_cbcr_enabled_flag等于0指定禁用色度残差的联合编码。sps_joint_cbcr_enabled_flag等于1指定启用色度残差的联合编码。
tu_joint_cbcr_residual_flag[x0][y0]指定是否将色度分量Cb和Cr的残差样本编码为单个变换块。数组索引x0、v0指定所考虑的变换块的左上亮度样本相对于图片的左上亮度样本的位置(x0,y0)。
tu_joint_cbcr_residual_flag[x0][y0]等于1指定变换单元语法包括单个变换块的变换系数等级,从中可以导出Cb和Cr的残差样本。tu_joint_cbcr_residual_flag[x0][y0]等于0指定,如语法元素tu_cbf_cb[x0][y0]和tu_cbf_cr[x0][y0]所示,编码色度分量的变换系数等级。
当tu_joint_cbcr_residual_flag[x0][y0]不存在时,推断其等于0。
取决于tu_joint_cbcr_residual_flag[x0][y0],tu_cbf_cb[x0][y0],和tu_cbf_cr[x0][y0],变量TuCResMode[x0][y0]导出如下:
如果tu_joint_cbcr_residual_flag[x0][y0]等于0,则将变量TuCResMode[x0][y0]设置为等于0;
否则,如果tu_cbf_cb[x0][y0]等于1,且tu_cbf_cr[x0][y0]等于0,则将变量TuCResMode[x0][y0]设置为等于1;
否则,如果tu_cbf_cb[x0][y0]等于1,则将变量TuCResMode[x0][y0]设置为等于2;
否则,将变量TuCResMode[x0][y0]设置为等于3。
在缩放和变换过程中,该过程的输入是:
亮度位置(xTbY,yTbY),指定相对于当前图片的左-上亮度样本的当前亮度变换块的左上样本,
变量cIdx,指定当前块的色彩分量,
变量nTbW,指定变换块宽度,
变量nTbH,指定变换块高度。
缩放和变换过程的输出是残差样本resSamples[x][y]的(nTbW)×(nTbH)阵列,其中x=0..nTbW-1、y=0..nTbH-1。
变量bitDepth,bdShift和tsShift导出如下:
bitDepth=(cIdx==0)?BitDepthY:BitDepthC
bdShift=Max(22-bitDepth,0)
tsShift=5+((Log2(nTbW)+Log2(nTbH))/2)
变量codedCIdx导出如下:
如果cIdx等于0,或TuCResMode[xTbY][yTbY]等于0,则将codedCIdx设置为等于cIdx。
否则,如果TuCResMode[xTbY][yTbY]等于1或2,则将codedCIdx设置为等于1。
否则,将codedCIdx设置为等于2。
将变量cSign设置为等于(1-2*slice_joint_cbcr_sign_flag)。
可以推导出残差样本resSamples的(nTbW)×(nTbH)阵列。
1.使用变换块位置(xTbY,yTbY)、变换宽度nTbW和变换高度nTbH、色彩分量变量cIdx和当前色彩分量bitDepth的位深度作为输入,调用变换系数的缩放过程,并且输出是经缩放变换系数d的(nTbW)×(nTbH)阵列。
2.可以如下推导出残差样本r的(nTbW)×(nTbH)阵列:
如果transform_skip_flag[xTbY][yTbY][cIdx]等于1,可如下导出残差样本阵列值r[x][y],其中,x=0..nTbW-1、y=0..nTbH-1:
r[x][y]=d[x][y]<<tsShift
否则,(transform_skip_flag[xTbY][yTbY][cIdx]等于0),使用变换块位置(xTbY,yTbY)、变换宽度nTbW和变换高度nTbH、色彩分量变量cIdx和经缩放变换系数d的(nTbW)×(nTbH)阵列作为输入,调用经缩放变换系数的变换过程,并且输出是残差样本r的(nTbW)×(nTbH)阵列。
3.如下导出残差样本resSamples[x][y],其中,x=0..nTbW-1、y=0..nTbH-1:
resSamples[x][y]=(r[x][y]+(1<<(bdShift-1)))>>bdShift
4.如下导出残差样本resSamples[x][y],其中,x=0..nTbW-1、y=0..nTbH-1:
如果cIdx等于codedCIdx,则以下适用:
resSamples[x][y]=res[x][y]
否则,如果TuCResMode[xTbY][yTbY]等于2,则以下适用:
resSamples[x][y]=cSign*res[x][y]
否则,以下适用:
resSamples[x][y]=(cSign*res[x][y])>>1
在二进制化过程中,此过程的输入是对语法元素的请求。该过程的输出是语法元素的二进制化。表6指定与每个语法元素和相应输入相关联的二进制化过程的类型。
表6,语法元素和相关的二进制化
Figure BDA0002826845490000341
Figure BDA0002826845490000351
在ctxTable,ctxIdx和bypassFlag的导出过程中,该过程的输入是二进制字符串binIdx中当前二进制数的位置。此过程的输出为ctxTable,ctxIdx和bypassFlag。表7包括将ctxInc分配给具有上下文编码的二进制数的语法元素。
表7,将ctxInc分配给具有上下文编码的二进制数的语法元素
Figure BDA0002826845490000352
Figure BDA0002826845490000361
这里,sps_joint_cbcr_enabled_flag是序列级的样本级JCCR启用标志,而tu_joint_cbcr_residual_flag是块级JCCR标志。可以理解,样本级JCCR启用标志可以用于高于块级的另一级,例如切片级标志、图块组级标志等,所述样本级JCCR启用标志指示是否为属于所述样本级的至少一个CU启用色度残差的联合编码。
从与ACT和JCCR相关的语义可以看出,这两个编码工具之间存在重叠,这两个编码工具都用于去除残差之间的分量间依赖性。具体地,如果执行ACT,则YCgCo域的残差已经去相关,并且不需要执行JCCR编码。
在第二组实施例的一些实施例中,提供了一种机制,以确保不能在高于块级的级别上同时使用ACT和JCCR,例如序列级、切片级、图块组级等。
在一个实施例中,在同一级别的JCCR标志(即,样本级JCCR启用标志)之前,完成ACT标志的样本级信令(即,样本级ACT启用标志),并且根据样本级ACT启用标志的值,发信号通知样本级JCCR启用标志。当发信号通知启用ACT(例如,样本级ACT启用标志为1)时,不发信号通知相同级的样本级JCCR启用标志并且推断其为0;否则,当发信号通知禁用ACT(例如,样本级ACT启用标志为0)时,发信号通知样本级JCCR启用标志(例如,包括在信令信息中)。
换言之,本实施例中的控制信号是样本级ACT启用标志。控制信号有条件地限制解码器执行JCCR,以获取属于样本级的CU的残差。具体地,当样本级ACT启用标志(例如,sps_act_enabled_flag)的值为0时,信令信息包括样本级JCCR启用标志(例如,sps_joint_cbcr_enabled_flag),其指示是否为属于样本级的至少一个CU启用色度残差的联合编码;并且当样本级JCCR启用标志的值为1时,信令信息进一步包括块级JCCR标志(例如,tu_joint_cbcr_residual_flag),其指示是否将色度分量Cb和Cr的残差编码为单个变换块,其中,所述单个变换块对应于当前CU。当块级JCCR标志的值为1时,根据单个变换块的变换系数,导出色度分量Cb和Cr的残差,从而确定当前CU的残差信息。
在另一个实施例中,在同一级的ACT标志(即,样本级ACT启用标志)之前,完成JCCR标志(即,样本级JCCR启用标志)的样本级信令,并且根据样本级JCCR启用标志的值,发信号通知样本级ACT启用标志。当发信号通知启用JCCR(例如,样本级JCCR启用标志为1)时,不发信号通知相同级的样本级ACT标志,并且推断样本级ACT启用标志为0;否则,当发信号通知禁用JCCR标志(例如,样本级JCCR启用标志为0)时,发信号通知样本级ACT标志(例如,包括在信令信息中)。
换言之,本实施例中的控制信号是样本级JCCR启用标志。控制信号有条件地限制解码器在属于样本级的当前CU执行ACT。具体地,当样本级JCCR启用标志的值为0时,信令信息包括样本级ACT标志,该样本级ACT标志指示是否将ACT应用于属于样本级的至少一个编码块;当样本级ACT启用标志的值为1时,ACT启用信息进一步包括块级ACT启用标志,该块级ACT启用标志指示是否将ACT用于当前CU。或者,当样本级JCCR启用标志的值为1时,信令信息不包括样本级ACT启用标志,并且,推断样本级ACT启用标志的值为0。进一步地,信令信息不包括块级ACT启用标志,并且,推断当前CU的块级ACT启用标志的值为0。信令信息进一步包括块级JCCR标志,所述块级JCCR标志指示是否将色度分量Cb和Cr的残差编码为单个变换块,其中,所述单个变换块对应于当前CU。当块级JCCR标志的值为1时,根据单个变换块的变换系数,导出色度分量Cb和Cr的残差,以确定当前CU的残差信息。
在第二组实施例的一些实施例中,提供一种机制,以确保不能将自适应色彩变换ACT和JCCR同时用于块。
在一个实施例中,在JCCR之前,在块级发信号通知ACT。也就是说,在块级JCCR标志之前,发信号通知块级ACT启用标志。当发信号通知启用ACT(即,块级ACT启用标志为1)时,不发信号通知JCCR,并且推断禁用JCCR(例如,信令信息不包括块级JCCR标志)。
换言之,该实施例中的控制信号是块级ACT启用标志(例如,cu_act_enabled_flag)。控制信号有条件地限制解码器对当前CU的残差执行JCCR解码。当块级ACT启用标志的值为1时,信令信息中不包含块级JCCR标志,并且推断块级JCCR标志的值为0,其中,块级JCCR标志(例如,tu_joint_cbcr_residual_flag)指示是否将色度分量Cb和Cr的残差样本联合编码为当前CU的单个变换块。进一步地,在信令信息中包括块级JCCR标志之前,块级ACT启用标志的值为0是需要满足的多个条件之一。
在一个示例中,语法表可以如表8所示。与表5中描述的VVC草案中的语法相比,添加“&&!cu_act_enabled_flag”,作为用信号通知块级JCCR标志tu_joint_cbcr_residual_flag[xC][yC]所需的附加条件。
表8,修改后的变换单元语法
Figure BDA0002826845490000381
Figure BDA0002826845490000391
在另一实施例中,在ACT之前,在块级用信号通知JCCR。即,在块级ACT启用标志之前,发信号通知块级JCCR标志。当发信号通知启用JCCR时(即,块级JCCR标志为1),不发信号通知ACT,并且推断ACT为禁用(例如,信令信息不包括块级ACT启用标志)。
换言之,本实施例中的控制信号是块级JCCR标志(例如,tu_joint_cbcr_residual_flag)。控制信号有条件地限制解码器对当前CU执行ACT。当块级JCCR标志的值为1时,信令信息中不包括块级ACT标志(例如,cu_act_enabled_flag),并且推断块级ACT标志的值为0。进一步的,在信令信息中包括块级ACT启用标志之前,块级JCCR标志值为0是需要满足的多个条件之一。
在第二组实施例的一些实施例中,将块的ACT标志(例如,cu_act_enabled_flag)用作对JCCR标志(例如,tu_joint_cbcr_residual_flag)进行熵编码的附加上下文。即,信令信息可以包括块级JCCR标志,其中,块级JCCR标志使用块级ACT启用标志作为上下文进行熵编码。
在一个示例中,添加用于JCCR标志信令的一组新的上下文,使得两组上下文分别用于色彩变换开和关的情况。即,将与块级ACT启用标志相关联的两组上下文添加到上下文模型,以对块级JCCR标志进行熵编码,两组上下文包括第一组上下文和第二组上下文,其中,第一组上下文与块级ACT启用标志相对应,并指示将ACT用于当前CU。第二组上下文与块级ACT启用标志相对应,指示不将ACT用于当前CU。
在第二组实施例的一些实施例中,在编码过程期间,当ACT关闭(即,禁用ACT)时,在编码器处检查或评估JCCR。即,现有技术的编码器可检查所有可能的组合,包括:启用JCCR和启用ACT;禁用JCCR和开启ACT;开启JCCR和禁用ACT;以及禁用JCR和禁用ACT。在该实施例中,编码器不检查开启JCCR和开启ACT的组合。或者,可以仅在禁用JCCR时,检查或评估ACT。
这样,第二组实施例解决了ACT和JCCR之间的重叠色彩/色度编码工具,其中,将一个编码工具的启用标志用作另一个编码工具的控制信号。在一些实施例中,一个编码工具的信令/使用不包括另一个编码工具的信令,并且,可以用一个比特保存信令信息。在一些实施例中,第一编码工具的信令影响第二编码工具的启用标志的上下文模型,其中,基于第一编码工具的信号的不同状态,影响H.264/AVC中的基于上下文的自适应二进制算术编码(Context-Based Adaptive Binary Arithmetic Coding in the H.264/AVC,CABAC)的可能性。在一些实施例中,基于两个编码工具的标志状态,排除一个评估过程以提高编码效率。
第三组实施例解决了缓冲已解码残差数据的大小限制。具体地,在进行ACT之前,应当在空间域解码所有三个色彩平面YCgCo。这意味着在执行ACT之前,需要三个色彩缓冲器。如果ACT中支持的编码块是M×N,则临时缓冲器大小是3×M×N,以缓冲三个平面的已解码残差数据。即,当达到最大缓冲器大小时,但没有空间缓冲所有YCgCo色彩平面中的数据时,色彩变换可能不可行。
基于块的大小,在块级有条件地禁用ACT可以适应缓冲器的最大容量要求。即,第三组实施例中的控制信号可以包括块大小阈值信息。若当前CU的大小大于块大小阈值信息指示的大小时,对当前CU禁用ACT(例如,块级ACT启用标志的值为0);若当前CU的大小不大于块大小阈值信息指示的大小时,确定对当前CU启用ACT(例如,块级ACT启用标志的值为1)。
在一个实施例中,块大小阈值信息指示CU的像素数目的阈值(例如,CU的亮度块中的像素)。即,当块中的像素数量大于(或不小于)阈值时,禁用块的ACT。例如,假设缓冲器大小是64*64,并且,将块中的像素数量表示为m*n,则像素数量的阈值可以不大于64*64/3。
在另一个实施例中,当块宽度大于(或不小于)第一阈值,和/或,块高度大于(或不小于)第二阈值时,对于该块禁用ACT。即,块大小阈值信息指示CB的块宽度阈值或块高度阈值中的至少一个。在一个示例中,块宽度的阈值和块高度的阈值可以相同。
表9描述了一个实施例,其中,基于已编码块的亮度样本大小,限制ACT大小。当已编码块的总亮度样本大小大于M×N已编码块的X时,禁用ACT。阈值X是预定值。在语法中,在处理块级ACT标志cu_act_enabled_flag之前,添加“&&cbWidth×cbHeight<=X”作为待满足的额外条件。
表9,修改的编码单元语法
Figure BDA0002826845490000411
/>
Figure BDA0002826845490000421
基于表9,“cbWidth×cbHeight”表示已编码块的总亮度样本大小,其中,cbWidth是块宽度,并且,cbHeight是块高度。X表示给定的预定阈值。对于具有最大容量64*64的缓冲器,像素数目的阈值可以是小于64*64/3的数目,其中3是RGB格式的色彩通道的数目。在一个示例中,X=64,并且当M×N值大于64时,对于M×N已编码块禁用ACT。
在一些实施例中,可以在比特流中发信号通知块大小阈值信息,例如,在序列参数集SPS、图片参数集PPS、图片头、切片头,等。或者,在编码单元语法中,将块大小阈值信息作为常数写入。
在一些实施例中,块大小阈值信息包括使用转换等式从块大小阈值导出的值,导出值的数据长度小于块大小阈值的数据长度。
对于M×N已编码块,当已编码块的总亮度样本大小大于M×N已编码块的X时,禁用ACT。可从以下等式导出值X:
X=(1<<sps_log2_act_threshold_minus4)+4
其中,“sps_log2_act_threshold_minus4”是在比特流中用信号表示的导出值,例如,在序列参数集SPS、图片参数集PPS、图片头、切片头等。在信令信息中,与实际大小阈值相比,导出值占用的比特更少。
表10示出了修改的SPS语法的示例,其中,添加“if(sps_act_enable_flag){sps_log2_act_threshold_minus4}”,以发信号通知SPS中块大小阈值信息。根据表10中描述的示例,表11示出了修改的编码单元语法。如表11所示,在处理块级ACT标志cu_act_enabled_flag之前,添加“&&cbWidth×cbHeight<=(1<<(sps_log2_act_threshold_minus4+4)”作为待满足的额外条件。
表10,修改的SPS语法
Figure BDA0002826845490000431
Figure BDA0002826845490000441
表11,修改的编码单元语法
Figure BDA0002826845490000442
Figure BDA0002826845490000451
sps_log2_act_threshold_minus4+4指定应用ACT的块大小阈值。当块大小大于阈值时,对于该块,不发信号通知ACT,并且,推断禁用ACT。否则,可以为该块发信号通知ACT启用/禁用信息。
这样,第三组实施例提供了一种机制,从而基于块大小,在块级限制ACT的使用,使得反向ACT过程不超过解码器的缓冲区大小。
回到图4,基于残差信息和预测信息重建当前CU(S408)。可基于预测模式,将残差信息与预测信息相加,以重建当前CU。
本申请实施例提供了一种装置,包括:获取模块,用于获取已编码视频比特流,其中,所述已编码视频比特流是从具有RGB色彩格式的源编码得到的;解码模块,用于解码所述已编码视频比特流中当前图片的片段中的当前编码单元(Coding Unit,CU)的信令信息,其中,所述信令信息包括所述当前CU的预测信息和控制信号,所述控制信号用于在预测残差域中处理所述当前CU的色度分量;确定模块,用于根据所述控制信号,确定所述当前CU的残差信息,包括:根据所述控制信号,确定自适应色彩变换(Adaptive Color Transform,ACT)启用信息;以及当所述ACT启用信息指示将ACT用于所述当前CU时,通过将反向变换得到的YCgCo域残差转换为RGB域残差,获取所述残差信息;以及,重建模块,用于基于所述残差信息和所述预测信息重建所述当前CU。
在一种实施方式中,所述控制信号用于高于所述视频比特流中的块级的样本级,其中,所述块级是当前CU的分区级;以及,所述装置进一步包括:
应用模块,用于基于所述样本级,将所述控制信号应用到与所述当前CU相同片段、相同图片或相同序列的图片中的编码单元。
在一种实施方式中,所述控制信号包括样本级基于块的增量脉冲编码调制(Block-based Delta Pulse Code Modulation,BDPCM)色度启用标志,其中,所述样本级BDPCM色度启用标志指示是否将BDPCM应用到属于样本级的至少一个色度编码块;
所述ACT启用信息包括样本级ACT启用标志,其中,所述样本级ACT启用标志应用于与所述控制信号相同的级别;
当所述样本级BDPCM色度启用标志的值为1时,
所述信令信息不包括所述样本级ACT启用标志,并且推断所述样本级ACT启用标志的值为0;
所述信令信息进一步包括块级BDPCM色度启用标志,其中,所述块级BDPCM色度启用标志指示是否将BDPCM应用于所述当前CU的色度分量;以及,
当所述块级BDPCM色度启用标志的值为1时,所述确定模块进一步用于:基于所述信令信息指示的BDPCM预测方向,确定反向量化残差,以及跳过反向变换过程;以及,
当所述样本级BDPCM启用标志的值为0时,
所述信令信息包括所述样本级ACT启用标志;以及,
当所述样本级ACT启用标志的值为1时,所述ACT启用信息进一步包括块级ACT启用标志,其中,所述块级ACT启用标志指示是否将ACT用于所述当前CU。
本申请实施例还提供了一种计算机设备,所述设备包括至少一个处理器和至少一个存储器,所述至少一个存储器中存储有至少一条指令,所述至少一条指令由所述至少一个处理器加载并执行以实现上述图4,图6-9所示的方法。
本申请实施例还提供了一种非易失性计算机可读介质,所述非易失性计算机可读介质中存储有指令,所述指令在由处理器执行时,使所述处理器执行上述图4,图6-9所示的方法。
根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图4,图6-9所示的各种可选实现方式中提供的方法。
为了在残差域控制色彩分量处理,本申请实施例提供了各种编解码方法。色彩分量处理可以包括自适应色彩变换ACT、用于色度分量的基于块的增量脉冲编码调制,以及联合CbCr残差编码。在一些实施例中,一种类型色彩分量处理的信令可影响其它(一或多个)类型的色彩分量处理,以提高编解码效率。在一些实施例中,提供块级自适应色彩变换的大小限制,以适应解码器处的缓冲区大小要求。
可以以存储在非易失性计算机可读存储介质中的计算机程序的形式,实现本申请的方法,其中,该计算机程序可以作为独立产品来销售或使用。计算机程序可以包括指令,该指令可以使得计算机设备,比如,个人计算机、服务器或网络设备,执行本申请的部分方法、或全部方法,诸如上述示例方法之一。存储介质可以是能够存储程序代码的任何介质,例如,USB盘、移动硬盘、只读存储器(Read-Onlv Memory ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁盘或光盘。
所公开的实施例仅是示例。本领域的普通技术人员将理解,可以包括合适的软件和/或硬件(例如,通用硬件平台),并用于执行所公开的方法。例如,所公开的实施例可以仅由硬件实现,或者可以由软件实现,或者由硬件与软件的组合实现。软件可以存储在存储介质中。软件可以包括适当的命令,以使任何客户端设备(例如,包括数码相机、智能终端、服务器或网络设备等)能够实现所公开的实施例。
本领域普通技术人员将理解,可以在电子硬件中实现上述示例元素和算法步骤,或者在计算机软件和电子硬件的组合中实现上述示例元素和算法步骤。这些功能是以硬件还是以软件实现,取决于技术方案的具体应用和设计约束。本领域的普通技术人员可以使用不同的方法,为不同的应用场景实现所描述的功能,但是不应该认为这样的实现超出了本申请的范围。
尽管通过说明书中的具体实施例描述了本申请的原理和实施方式,但是前面所述的实施例仅用于帮助理解本申请的方法及其核心思想。同时,本领域普通技术人员可以根据本申请的思想对具体的实施方式和应用范围进行修改。总之,说明书的内容不应解释为对本申请的限制。

Claims (18)

1.一种色彩分量处理的方法,其特征在于,包括:
获取已编码视频比特流,所述已编码视频比特流是从具有RGB色彩格式的源编码得到的;
解码所述已编码视频比特流中当前图片的片段中的当前编码单元CU的信令信息,其中,所述信令信息包括所述当前CU的预测信息和控制信号,所述控制信号用于在预测残差域中处理所述当前CU的色度分量;
根据所述控制信号,确定所述当前CU的残差信息,包括:根据所述控制信号,确定自适应色彩变换ACT启用信息;以及当所述ACT启用信息指示将ACT用于所述当前CU时,通过将反向变换得到的YCgCo域残差转换为RGB域残差,获取所述残差信息;以及,
基于所述残差信息和所述预测信息重建所述当前CU;
所述控制信号用于高于所述视频比特流中的块级的样本级,其中,所述块级是当前CU的分区级;以及,所述方法进一步包括:
基于所述样本级,将所述控制信号应用到与所述当前CU相同片段、相同图片或相同序列的图片中的编码单元。
2.根据权利要求1所述的方法,其特征在于,所述方法进一步包括:
将所述控制信号应用到以下之一:切片级、图块组级、图片级或序列级。
3.根据权利要求1所述的方法,其特征在于,所述控制信号包括样本级基于块的增量脉冲编码调制(Block-based Delta Pulse Code Modulation,BDPCM)色度启用标志,所述样本级BDPCM色度启用标志指示是否将BDPCM应用到属于样本级的至少一个色度编码块;
所述ACT启用信息包括样本级ACT启用标志,其中,所述样本级ACT启用标志应用于与所述控制信号相同的级别;
当所述样本级BDPCM色度启用标志的值为1时,
所述信令信息不包括所述样本级ACT启用标志,并且推断所述样本级ACT启用标志的值为0;
所述信令信息进一步包括块级BDPCM色度启用标志,所述块级BDPCM色度启用标志指示是否将BDPCM应用于所述当前CU的色度分量;以及,
当所述块级BDPCM色度启用标志的值为1时,确定所述当前CU的残差信息进一步包括:基于所述信令信息指示的BDPCM预测方向,确定反向量化残差,以及
跳过反向变换过程;以及,
当所述样本级BDPCM启用标志的值为0时,
所述信令信息包括所述样本级ACT启用标志;以及,
当所述样本级ACT启用标志的值为1时,所述ACT启用信息进一步包括块级ACT启用标志,所述块级ACT启用标志指示是否将ACT用于所述当前CU。
4.根据权利要求1所述的方法,其特征在于,所述控制信号包括样本级ACT启用标志,所述样本级ACT启用标志指示是否将ACT用于属于所述样本级的至少一个CU;
所述ACT启用信息包括所述样本级ACT启用标志;
当所述样本级ACT启用标志的值为0时,
所述信令信息包括样本级BDPCM色度启用标志,所述样本级BDPCM色度启用标志指示是否将BDPCM应用于属于所述样本级的至少一个色度编码块;以及
当所述样本级BDPCM色度启用标志的值为1时,
所述信令信息进一步包括块级BDPCM启用标志,所述块级BDPCM启用标志指示是否将BDPCM应用于所述当前CU的色度分量;以及,
当所述块级BDPCM色度启用标志的值为1时,确定所述当前CU的残差信息进一步包括:基于所述信令信息指示的BDPCM预测方向,确定反向量化残差,以及跳过反向变换过程;
当所述样本级ACT启用标志的值为1时,所述信令信息不包括样本级BDPCM色度启用标志,推断所述样本级BDPCM色度启用标志的值为0,所述ACT启用信息进一步包括块级ACT启用标志,所述块级ACT启用标志指示是否将ACT用于所述当前CU。
5.根据权利要求1所述的方法,其特征在于,所述控制信号包括样本级联合Cb Cr残差(Joint Cb Cr Residual,JCCR)启用标志,所述样本级JCCR启用标志指示是否为属于所述样本级的至少一个CU启用色度残差的联合编码;
所述ACT启用信息包括样本级ACT启用标志,其中,所述样本级ACT启用标志用于与所述控制信号相同的样本级;
当所述样本级JCCR启用标志的值为1时,
所述信令信息不包括所述样本级ACT启用标志,并且推断所述样本级ACT启用标志的值为0;
所述信令信息进一步包括块级JCCR标志,所述块级JCCR标志指示是否将色度分量Cb和Cr的残差编码为单个变换块,其中,所述单个变换块对应于所述当前CU;以及,
当所述块级JCCR标志的值为1时,确定所述当前CU的残差信息进一步包括:
根据所述单个变换块的变换系数,导出所述色度分量Cb和Cr的残差;以及
当所述样本级JCCR启用标志的值为0时,
所述信令信息包括所述样本级ACT启用标志;以及
当所述样本级ACT启用标志的值为1时,所述ACT启用信息进一步包括块级ACT启用标志,其中,所述块级ACT启用标志指示是否将ACT用于所述当前CU。
6.根据权利要求1所述的方法,其特征在于,所述控制信号包括样本级ACT启用标志,所述样本级ACT启用标志指示是否将ACT用于属于所述样本级的至少一个CU;
所述ACT启用信息包括所述样本级ACT启用标志;
当所述样本级ACT启用标志的值为0时,
所述信令信息包括样本级JCCR启用标志,其中,所述样本级JCCR启用标志指示是否为属于所述样本级的至少一个CU,启用色度残差的联合编码;以及,
当所述样本级JCCR启用标志的值为1时,
所述信令信息进一步包括块级JCCR标志,其中,所述块级JCCR标志指示是否将色度分量Cb和Cr的残差编码为单个变换块,其中,所述单个变换块对应于所述当前CU;以及,
当所述块级JCCR标志的值为1时,确定所述当前CU的残差信息进一步包括:根据所述单个变换块的变换系数,导出所述色度分量Cb和Cr的残差;
当所述样本级ACT启用标志的值为1时,所述信令信息不包括所述样本级JCCR启用标志,推断所述样本级JCCR启用标志的值为0,并且所述ACT启用信息进一步包括块级ACT启用标志,其中,所述块级ACT启用标志指示是否将所述ACT用于所述当前CU。
7.根据权利要求1所述的方法,其特征在于,所述控制信号包括块级JCCR标志,其中,所述块级JCCR标志指示是否将色度分量CU和Cr的残差联合编码为单个变换块;
所述ACT启用信息包括块级ACT启用标志,其中,所述块级ACT启用标志指示将ACT用于所述当前CU;以及,
当所述块级JCCR标志的值为1时,所述信令信息中不包括所述块级ACT启用标志,并且推断所述块级ACT启用标志的值为0。
8.根据权利要求1所述的方法,其特征在于,所述控制信号包括块级ACT启用标志,其中,所述块级ACT启用标志指示是否将ACT用于所述当前CU;
所述ACT启用信息包括所述块级ACT启用标志;
当所述块级ACT启用标志的值为1时,所述信令信息中不包括所述当前CU的块级JCCR标志,并且,推断所述块级JCCR标志的值为0,其中,所述块级JCCR标志指示是否将色度分量CU和Cr的残差联合编码为单个变换块。
9.根据权利要求1所述的方法,其特征在于,所述控制信号包括块级ACT启用标志,其中,所述块级ACT启用标志指示是否将ACT用于所述当前CU;
所述信令信息包括所述块级JCCR标志,其中,所述块级JCCR标志使用所述块级ACT启用标志作为上下文进行熵编码。
10.根据权利要求8所述的方法,其特征在于,所述方法进一步包括:
将与所述块级ACT启用标志相关联的两组上下文添加到上下文模型,以对所述块级JCCR标志进行熵编码,其中,所述两组上下文包括第一组上下文和第二组上下文,所述第一组上下文对应于所述块级ACT启用标志,并指示将所述ACT用于所述当前CU;所述第二组上下文对应于所述块级ACT启用标志,并指示不将所述ACT用于所述当前CU。
11.根据权利要求2所述的方法,其特征在于,所述控制信号包括块大小阈值信息,并且,根据所述控制信号确定所述ACT启用信息包括:
当所述当前CU的大小大于所述块大小阈值信息指示的大小时,确定对所述当前CU禁用所述ACT;以及,
当所述当前CU的大小不大于所述块大小阈值信息指示的大小时,确定为所述当前CU启用所述ACT。
12.根据权利要求11所述的方法,其特征在于,所述块大小阈值信息指示CU的像素数目的阈值。
13.根据权利要求11所述的方法,其特征在于,所述块大小阈值信息指示CU的块宽度阈值和块高度阈值中的至少一个。
14.根据权利要求11所述的方法,其特征在于,所述块大小阈值信息包括使用转换等式从块大小阈值导出的值,其中,修改的值的数据长度小于所述块大小阈值的数据长度。
15.一种色彩分量处理装置,其特征在于,包括:
获取模块,用于获取已编码视频比特流,其中,所述已编码视频比特流是从具有RGB色彩格式的源编码得到的;
解码模块,用于解码所述已编码视频比特流中当前图片的片段中的当前编码单元(Coding Unit,CU)的信令信息,其中,所述信令信息包括所述当前CU的预测信息和控制信号,所述控制信号用于在预测残差域中处理所述当前CU的色度分量;
确定模块,用于根据所述控制信号,确定所述当前CU的残差信息,包括:根据所述控制信号,确定自适应色彩变换(Adaptive Color Transform,ACT)启用信息;以及当所述ACT启用信息指示将ACT用于所述当前CU时,通过将反向变换得到的YCgCo域残差转换为RGB域残差,获取所述残差信息;以及,
重建模块,用于基于所述残差信息和所述预测信息重建所述当前CU;所述控制信号用于高于所述视频比特流中的块级的样本级,其中,所述块级是当前CU的分区级;以及,所述装置进一步包括:
应用模块,用于基于所述样本级,将所述控制信号应用到与所述当前CU相同片段、相同图片或相同序列的图片中的编码单元。
16.根据权利要求15所述的装置,其特征在于,所述控制信号包括样本级基于块的增量脉冲编码调制(Block-based Delta Pulse Code Modulation,BDPCM)色度启用标志,其中,所述样本级BDPCM色度启用标志指示是否将BDPCM应用到属于样本级的至少一个色度编码块;
所述ACT启用信息包括样本级ACT启用标志,其中,所述样本级ACT启用标志应用于与所述控制信号相同的级别;
当所述样本级BDPCM色度启用标志的值为1时,
所述信令信息不包括所述样本级ACT启用标志,并且推断所述样本级ACT启用标志的值为0;
所述信令信息进一步包括块级BDPCM色度启用标志,其中,所述块级BDPCM色度启用标志指示是否将BDPCM应用于所述当前CU的色度分量;以及,
当所述块级BDPCM色度启用标志的值为1时,所述确定模块进一步用于:基于所述信令信息指示的BDPCM预测方向,确定反向量化残差,以及跳过反向变换过程;以及,
当所述样本级BDPCM启用标志的值为0时,
所述信令信息包括所述样本级ACT启用标志;以及,
当所述样本级ACT启用标志的值为1时,所述ACT启用信息进一步包括块级ACT启用标志,其中,所述块级ACT启用标志指示是否将ACT用于所述当前CU。
17.一种计算机设备,其特征在于,所述设备包括至少一个处理器和至少一个存储器,所述至少一个存储器中存储有至少一条指令,所述至少一条指令由所述至少一个处理器加载并执行以实现如权利要求1至权利要求14任一项所述的方法。
18.一种非易失性计算机可读介质,其特征在于,所述非易失性计算机可读介质中存储有指令,所述指令在由处理器执行时,使所述处理器执行如权利要求1至权利要求14任一项所述的方法。
CN202011461640.4A 2019-12-24 2020-12-10 视频编解码方法和设备 Active CN113115047B (zh)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US201962953455P 2019-12-24 2019-12-24
US201962953459P 2019-12-24 2019-12-24
US62/953,455 2019-12-24
US62/953,459 2019-12-24
US202062960043P 2020-01-12 2020-01-12
US62/960,043 2020-01-12
US17/096,937 US11375200B2 (en) 2019-12-24 2020-11-12 Video coding method and device for controlling color component processing
US17/096,937 2020-11-12

Publications (2)

Publication Number Publication Date
CN113115047A CN113115047A (zh) 2021-07-13
CN113115047B true CN113115047B (zh) 2023-07-04

Family

ID=76438998

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011461640.4A Active CN113115047B (zh) 2019-12-24 2020-12-10 视频编解码方法和设备

Country Status (2)

Country Link
US (1) US11375200B2 (zh)
CN (1) CN113115047B (zh)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021051047A1 (en) 2019-09-14 2021-03-18 Bytedance Inc. Chroma quantization parameter in video coding
CN114651442A (zh) 2019-10-09 2022-06-21 字节跳动有限公司 视频编解码中的跨分量适应性回路滤波
KR20220073746A (ko) 2019-10-14 2022-06-03 바이트댄스 아이엔씨 비디오 처리에서 크로마 양자화 파라미터 사용
CN114788279A (zh) 2019-12-09 2022-07-22 字节跳动有限公司 视频编解码中使用的量化组
WO2021138293A1 (en) 2019-12-31 2021-07-08 Bytedance Inc. Adaptive color transform in video coding
KR20220115951A (ko) * 2020-01-01 2022-08-19 바이트댄스 아이엔씨 비디오 코딩을 위한 크로스 컴포넌트 적응형 루프 필터링
US11616983B2 (en) * 2020-05-05 2023-03-28 Tencent America LLC Joint component secondary transform
WO2023024712A1 (en) * 2021-08-27 2023-03-02 Mediatek Inc. Method and apparatus of joint coding for multi-colour components in video coding system
CN114119789B (zh) * 2022-01-27 2022-05-03 电子科技大学 基于在线学习的轻量化hevc色度图像质量增强方法
GB2617839A (en) * 2022-04-19 2023-10-25 Canon Kk Video coding and decoding
KR20240019638A (ko) * 2022-08-04 2024-02-14 삼성전자주식회사 크로마 성분 예측을 수행하는 ai에 기반한 비디오 복호화 장치 및 방법, 및 비디오 부호화 장치 및 방법

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110302334A1 (en) * 2010-06-07 2011-12-08 Lakshmi Kantha Reddy Ponnatota Flow Control in Real-Time Transmission of Non-Uniform Data Rate Encoded Video Over a Universal Serial Bus
JP6593122B2 (ja) * 2015-11-20 2019-10-23 富士通株式会社 動画像符号化装置、動画像符号化方法、及びプログラム
US11172215B2 (en) * 2018-10-08 2021-11-09 Qualcomm Incorporated Quantization artifact suppression and signal recovery by the transform domain filtering
CN116260982B (zh) * 2019-12-05 2023-11-24 阿里巴巴(中国)有限公司 用于色度采样的方法和装置

Also Published As

Publication number Publication date
US20210195201A1 (en) 2021-06-24
US11375200B2 (en) 2022-06-28
CN113115047A (zh) 2021-07-13

Similar Documents

Publication Publication Date Title
CN113115047B (zh) 视频编解码方法和设备
EP3257246B1 (en) Restriction on palette block size in video coding
CN112511832B (zh) 视频解码方法、装置和可读存储介质
CN111684797A (zh) 用于视频译码的调色板译码
TW202143717A (zh) 視頻譯碼中的亮度映射與色度縮放(lmcs)
CN112954367B (zh) 使用调色板译码的编码器、解码器和相应方法
CN113994694A (zh) 视频译码中的简化帧内色度模式译码
JP2022521809A (ja) ビデオコーディングにおける係数領域ブロック差分パルスコード変調
WO2016057929A1 (en) Palette run hiding in palette-based video coding
US11876967B2 (en) Method and device for encoding/decoding image using color space conversion, and method for transmitting bitstream
KR20210126771A (ko) 인트라 예측 모드에 관련된 인코더, 디코더 및 대응하는 방법들
JP2023153802A (ja) イントラ・サブパーティション・コーディング・ツールによって引き起こされるサブパーティション境界のためのデブロッキングフィルタ
JP2023544705A (ja) ビデオコーディング中の、ジョイント成分ニューラルネットワークベースのフィルタ処理
KR20220036940A (ko) 팔레트 모드에서의 델타 양자화 파라미터 (qp) 시그널링
JP2022537662A (ja) ビデオエンコーディングにおける適応ループフィルタのためのクリッピングインデックスコード化
US20240107034A1 (en) Image decoding method for residual coding, and device therefor
CN116325734A (zh) 具有虚拟边界的跨分量样点自适应偏移中的色度编解码增强
CN115428462A (zh) 用于视频译码中的变换跳过块的高级约束
CN114846801A (zh) 基于色度变换跳过的用于色度的lfnst信令
KR20220051373A (ko) 변환 스킵 및 팔레트 코딩 관련 정보의 시그널링 기반 영상 또는 비디오 코딩
US20230086768A1 (en) Image decoding method related to signaling of flag indicating whether tsrc is available, and device therefor
CN114762339B (zh) 基于变换跳过和调色板编码相关高级语法元素的图像或视频编码
TW202143712A (zh) 視訊轉碼中的低頻不可分離變換處理
TW202127891A (zh) 用於視訊編碼的高階語法中子圖像的訊令編號
US11812019B2 (en) Image decoding method for residual coding in image coding system, and apparatus therefor

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: 40048674

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant