CN113906749A - 色度残差联合编码方法和装置 - Google Patents

色度残差联合编码方法和装置 Download PDF

Info

Publication number
CN113906749A
CN113906749A CN202080040464.9A CN202080040464A CN113906749A CN 113906749 A CN113906749 A CN 113906749A CN 202080040464 A CN202080040464 A CN 202080040464A CN 113906749 A CN113906749 A CN 113906749A
Authority
CN
China
Prior art keywords
chroma
block
video
residual
syntax element
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.)
Granted
Application number
CN202080040464.9A
Other languages
English (en)
Other versions
CN113906749B (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.)
Beijing Dajia Internet Information Technology Co Ltd
Original Assignee
Beijing Dajia Internet Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Dajia Internet Information Technology Co Ltd filed Critical Beijing Dajia Internet Information Technology Co Ltd
Publication of CN113906749A publication Critical patent/CN113906749A/zh
Application granted granted Critical
Publication of CN113906749B publication Critical patent/CN113906749B/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/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/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/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/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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
    • 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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

一种电子设备,该电子设备执行解码视频数据的方法。该电子设备首先从具有分层结构(a hierarchical structure)的视频比特流接收与该分层结构的第一层(a first level)相关联的第一语法元素。如果该第一语法元素指示启用(enable)色度残差联合编码模式,则该电子设备基于预定义的色度残差联合编码方案从视频比特流中联合重构该第一层下的一个或多个块的多个色度分量的色度残差。如果该第一语法元素指示禁用(disable)该色度残差联合编码模式,则该电子设备从该视频比特流中分别重构该第一层下的一个或多个块的多个色度分量的色度残差。

Description

色度残差联合编码方法和装置
技术领域
本申请总体上涉及视频数据编码和压缩,尤其涉及色度残差联合编码方法和装置。
背景技术
各种各样的电子设备支持数字视频,例如数字电视、膝上型或台式计算机、平板计算机、数码相机、数字记录设备、数字媒体播放器、视频游戏控制台、智能电话、视频电话会议设备、视频流媒体设备等。这些电子设备通过执行由MPEG-4,ITU-TH.263,ITU-TH.264/MPEG-4第10部分“高级视频编码(AVC)、高效视频编码(HEVC)和通用视频编码(VVC)”标准规定的视频压缩/解压缩标准来传输、接收、编码、解码和/或存储数字视频数据。视频压缩通常包括执行空间(帧内)预测和/或时间(帧间)预测以减少或去除视频数据中固有的冗余。对于基于块的视频编码,视频帧被划分为一个或多个切片,每个切片具有多个视频块,这些视频块也可以被称为编码树单元(CTU)。每个CTU可以包含一个编码单元(CU)或者被递归地拆分为更小的CU,直到达到预定义的最小CU的大小。每个CU(也称为叶CU)包含一个或多个变换单元(TU),每个CU还包含一个或多个预测单元(PU)。每个CU可以采用帧内、帧间或IBC模式进行编码。使用相对于同一视频帧内的相邻块中的参考样本的空间预测对视频帧的帧内编码的(I)切片中的视频块进行编码。视频帧的帧间编码的(P或B)切片中的视频块可使用相对于同一视频帧内的相邻块中的参考样本的空间预测或相对于其它先前的和/或未来的参考视频帧中的参考样本的时间预测。
基于先前已编码的参考块(如相邻块)的空间或时间预测得到要编码的当前视频块的预测块。寻找参考块的过程可以通过块匹配算法来完成。表示要编码的当前块与预测块之间的像素差异的残差数据被称为残差块或预测误差。根据指向形成该预测块的参考帧中的参考块的运动向量以及该残差块对帧间编码块进行编码。确定该运动向量的过程通常称为运动估计。根据帧内预测模式以及该残差块对帧内编码块进行编码。为了进一步压缩,将该残差块从像素域变换到变换域,如频域,从而产生残差变换系数,然后可以对其进行量化。这些量化后的变换系数最初以二维阵列排列,其可以被扫描以产生变换系数的一维向量,然后被熵编码到视频比特流中以实现更多的压缩。
然后将已编码的该视频比特流保存在计算机可读存储介质(如闪存)中,以由具有数字视频能力的另一个电子设备访问或者直接以有线或无线方式传输到该电子设备。然后,该电子设备通过例如解析该已编码的视频比特流以从该比特流获得语法元素以及至少部分地基于从该比特流获得的语法元素从该已编码的视频比特流将该数字视频数据重构为其原始格式来进行视频解压缩(这是与上述视频压缩相反的过程),并且在该电子设备的显示器上呈现该重构的数字视频数据。
为了保持灵活性和可扩展性,视频编码标准通常定义用于已编码的视频比特流的语法的选项,这些选项详细说明了该比特流中的语法所允许的参数。在许多情况下,这些选项还提供有关解码器应执行的解码操作的详细信息,以从该比特流中导出这些语法参数并在解码中获得正确的结果。随着数字视频质量从高清到4Kx2K甚至8Kx4K,要编码/解码的视频数据量呈指数增长。如何在保持已解码的视频数据的图像质量的同时更有效地编码/解码视频数据是一种持续的挑战。
发明内容
本申请描述了与视频数据编码和解码相关的实现,具体来讲,描述了色度残差联合编码方法和装置。
根据本申请的第一方面,一种视频数据解码方法包括:从具有分层结构(ahierarchical structure)的视频比特流接收与该分层结构的第一层(a first level)相关联的第一语法元素;根据确定所述第一语法元素指示启用(enable)色度残差联合编码模式,基于预定义的色度残差联合编码方案,从所述视频比特流中联合重构所述第一层下的一个或多个块的多个色度分量的色度残差;以及基于所述第一语法元素指示禁用(disable)色度残差联合编码模式,从所述视频比特流中分别重构所述第一层下的所述一个或多个块的所述多个色度分量的所述色度残差。
根据本申请的第二方面,一种电子设备包括一个或多个处理单元、存储器以及存储在该存储器中的多个程序,当由一个或多个处理单元执行时,这些程序使该电子设备执行如上所述的视频数据解码方法。
根据本申请的第三方面,一种非暂时性计算机可读存储介质存储由具有一个或多个处理单元的电子设备执行的多个程序,这些程序在由一个或多个处理单元执行时使得该电子设备执行如上所述的视频数据解码方法。
根据本申请的第四方面,一种视频数据编码方法包括:针对具有分层结构的视频比特流,获得与该分层结构的第一层对应的第一语法元素;根据确定该第一语法元素指示启用色度残差联合编码模式,基于预定义的色度残差联合编码方案,将该第一层下的一个或多个块的多个色度分量的色度残差联合编码成视频比特流;基于该第一语法元素指示禁用该色度残差联合编码模式,将该第一层下的所述一个或多个块的所述多个色度分量的所述色度残差分别编码成所述视频比特流;以及输出包括所述一个或多个块的所述多个色度分量的所述已编码色度残差以及该第一语法元素的该视频比特流。
根据本申请的第五方面,一种电子设备包括一个或多个处理单元、存储器以及存储在该存储器中的多个程序,当由所述一个或多个处理单元执行时,这些程序使该电子设备执行如上所述的视频数据编码方法。
根据本申请的第六方面,一种非暂时性计算机可读存储介质存储由具有一个或多个处理单元的电子设备执行的多个程序,这些程序在由所述一个或多个处理单元执行时使该电子设备执行如上所述的视频数据编码方法。
附图说明
所包括的附图用以提供对实施方式的进一步理解并且结合在本文中并构成说明书的一部分,图示了所描述的实施方式并且与说明书一起用于解释基本原理。类似的附图标记指代相应的部分。
图1是示出了根据本申请的一些实施方式的示例性视频编码和解码系统的框图。
图2是示出了根据本申请的一些实施方式的示例性视频编码器的框图。
图3是示出了根据本申请的一些实施方式的示例性视频解码器的框图。
图4A至4E是示出了根据本申请的一些实施方式的帧如何被递归地划分成不同大小和形状的多个视频块的框图。
图5A和5B是示出了根据本申请的一些实施方式的视频编码器使用色度残差联合编码方案来实现对视频数据进行编码的技术的示例性过程的流程图。
图6A至6C是示出了根据本申请的一些实施方式的视频解码器使用色度残差联合编码方案来实施对视频数据进行解码的技术的示例性过程的流程图。
具体实施方式
现在将详细参考具体实施方式,其示例在附图中示出。在下面的详细描述中,阐述了许多非限制性的具体细节以帮助理解在此呈现的主题。但是对于本领域的普通技术人员来说显而易见的是,在不脱离权利要求的范围的情况下可以使用各种替代方案,并且可以在没有这些具体细节的情况下实践主题。例如,对于本领域的普通技术人员来说显而易见的是,这里呈现的主题可以在具有数字视频能力的多种类型的电子设备上实现。
图1是示出了根据本申请的一些实施方式的用于对视频块进行平行编码和解码的示例性系统10的框图。如图1所示,系统10包括源设备12,其生成并编码随后由目的设备14解码的视频数据。源设备12和目的设备14可包括多种电子设备中的任一种,包括台式计算机或膝上型电脑、平板电脑、智能手机、机顶盒、数字电视、摄像机、显示设备、数字媒体播放器、视频游戏控制台、视频流设备,等等。在一些实施方式中,源设备12和目的设备14配备有无线通信能力。
在一些实施方式中,目的设备14可经由链路16接收要解码的已编码视频数据。链路16可包括能够将已编码视频数据从源设备12移动到目的设备14的任何类型的通信介质或设备。在一个示例中,链路16可包括通信介质以使得源设备12能够将已编码的视频数据实时地直接传输到目的设备14。可根据诸如无线通信协议之类的通信标准对已编码的视频数据进行调制,并将其传输到目的设备14。该通信介质可包括任何无线或有线通信介质,如射频(RF)频谱或一种或多种物理传输线路。该通信介质可形成基于分组的网络的一部分,如局域网、广域网或全球网,如因特网。该通信介质可包括路由器、交换机、基站或其它任何可能有助于促进从源设备12到目的设备14的通信的设备。
在其它的一些实施方式中,已编码的视频数据可以从输出接口22被传输到存储设备32。随后,目的设备14可通过输入接口28访问存储设备32中的已编码视频数据。存储设备32可包括各种分布式或本地访问的数据存储介质中的任何一种,如硬盘驱动器、蓝光光盘、DVD、CD-ROM、闪存、易失性或非易失性存储器,或其它任何适当的用于存储已编码的视频数据的数字存储介质。在进一步的示例中,存储设备32可对应于可以保存(hold)源设备12生成的已编码视频数据的文件服务器或另一种中间存储设备。目的设备14可通过流传输或下载来访问来自存储设备32的存储的视频数据。该文件服务器可以是能够存储已编码的视频数据并将已编码的视频数据传输到目的设备14的任何类型的计算机。示例性文件服务器包括网络服务器(例如,用于网站)、FTP服务器、网络附加存储(NAS)设备或本地磁盘驱动器。目的设备14可以通过任何标准数据连接访问已编码的视频数据,包括无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等),或适用于访问存储在文件服务器上的已编码视频数据的二者的组合。来自存储设备32的已编码视频数据的传输可以是流传输、下载传输或二者的组合。
如图1所示,源设备12包括视频源18、视频编码器20和输出接口22。视频源18可包括诸如视频捕获设备(video capture device)之类的源,如摄像机、包含先前捕获的视频的视频档案(video archive)、用于从视频内容提供商接收视频的视频馈送接口(videofeed interface)和/或用于生成计算机图形数据作为源视频的计算机图形系统或这些源的组合。作为一个示例,如果视频源18是安全监控系统的摄像机,则源设备12和目的设备14可形成照相电话(camera phones)或视频电话(video phones)。然而,本申请中描述的这些实施方式通常可适用于视频编码,并且可适用于无线和/或有线应用。
捕获的、预先捕获的或计算机生成的视频可由视频编码器20编码。已编码的视频数据可通过源设备12的输出接口22直接传输到目的设备(destination device)14。已编码的视频数据也可以(或替代地)被存储到存储设备32上以随后由目的设备14或其它设备访问,以进行解码和/或回放(playback)。输出接口22还可包括调制解调器和/或发射机。
目的设备14包括输入接口28、视频解码器30和显示设备34。输入接口28可包括接收器和/或调制解调器,并且通过链路16接收已编码的视频数据。通过链路16传送的或在存储设备32上提供的已编码的视频数据可包括由视频编码器20生成的供视频解码器30在对视频数据进行解码时使用的各种语法元素。这些语法元素可包括在在通信介质上传输、存储在存储介质上或存储在文件服务器上的已编码视频数据内。
在一些实施方式中,目的设备14可包括显示设备34,该显示设备34可以是集成的显示设备和被配置为与目的设备14进行通信的外部显示设备。显示设备34向用户显示已解码的视频数据,并且可包括各种显示设备中的任一种,例如液晶显示器(LCD)、等离子显示器、有机发光二极管(OLED)显示器或其它类型的显示设备。
视频编码器20和视频解码器30可根据专有或行业标准进行操作,如VVC、HEVC、MPEG-4第10部分,高级视频编码(AVC),或此类标准的延伸。应理解本申请不限于特定的视频编码/解码标准,可以适用于其它视频编码/解码标准。通常设想源设备12的视频编码器20可被配置为根据当前或未来的这些标准中的任何一个来编码视频数据。类似地,通常还设想目的设备14的视频解码器30可被配置为根据当前或未来的这些标准中的任何一个来解码视频数据。
视频编码器20和视频解码器30均可以实现为各种适当的编码器电路中的任何一种,例如一个或多个微处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、离散逻辑、软件、硬件、固件或其任何组合。当部分以软件实现时,电子设备可将用于软件的指令存储在适当的非暂时性计算机可读介质中并使用一个或多个处理器在硬件中执行这些指令来执行本申请中公开的视频编码/解码操作。视频编码器20和视频解码器30中的每一个可包括在一个或多个编码器或解码器中,其中的任何一个可以被集成为相应设备中的组合编码器/解码器(CODEC)的一部分。
图2是示出了根据本申请中描述的一些实施方式的示例性视频编码器20的框图。视频编码器20可执行视频帧内的视频块的帧内和帧间预测编码。帧内预测编码依赖于空间预测来减少或去除给定视频帧或图片内视频数据中的空间冗余。帧间预测编码依赖于时间预测来减少或去除视频序列的相邻视频帧或图片内的视频数据中的时间冗余。
如图2所示,视频编码器20包括视频数据存储器40、预测处理单元41、解码图片缓存器(DPB)64、加法器50、变换处理单元52、量化单元54和熵编码单元56。预测处理单元41还包括运动估计单元42、运动补偿单元44、划分单元45、帧内预测处理单元46和帧内块复制(BC)单元48。在一些实施方式中,视频编码器20还包括逆量化单元58、逆变换处理单元60和用于视频块重构的加法器62。解块滤波器(未示出)可位于加法器62与DPB 64之间以过滤块边界从而从重构的视频中去除块状伪影。除了去块滤波器之外,还可以使用环路滤波器(未示出)来对加法器62的输出进行滤波。视频编码器20可采用固定或可编程硬件单元的形式,或者可在示出的一个或多个固定的或可编程硬件单元中被划分。
视频数据存储器40可存储由视频编码器20的组件编码的视频数据。视频数据存储器40中的视频数据可以例如从视频源18获得。DPB 64是存储视频编码器20在(例如以帧内或帧间预测编码模式)编码视频数据时使用的参考视频数据的缓存器。视频数据存储器40和DPB 64可由各种存储器设备中的任一种形成。在各种示例中,视频数据存储器40可以与视频编码器20的其它组件在芯片上,或者相对于这些组件在芯片外。
如图2所示,在接收视频数据之后,预测处理单元41内的划分单元45将视频数据划分成视频块。该划分还可包括根据预定义的划分结构,例如与视频数据相关联的四叉树结构,将视频帧划分为切片、瓦片或其它更大的编码单元(CU)。该视频帧可被划分为多个视频块(或视频块的集合,称为瓦片)。预测处理单元41可基于误差结果(如编码率和失真水平)为当前的视频块从多个可能的预测编码模式中选择一个预测编码模式,例如,从多个帧内预测编码模式选择一个或者从多个帧间预测编码模式选择一个。预测处理单元41可将由此得到的帧内或帧间预测已编码块提供给加法器50以生成残差块,并且提供给加法器62以重构该已编码块以随后用作参考帧的一部分。预测处理单元41还向熵编码单元56提供语法元素,如运动向量、帧内模式指示符、划分信息和其它此类语法信息。
为了为当前视频块选择适当的帧内预测编码模式,预测处理单元41内的帧内预测处理单元46可相对于与要被编码的当前块在同一帧中的一个或多个相邻块进行当前视频块的帧内预测编码以提供空间预测。预测处理单元41内的运动估计单元42和运动补偿单元44相对于一个或多个参考帧中的一个或多个预测块进行当前视频块的帧间预测编码以提供时间预测。视频编码器20可以执行多个编码过程,例如,为每个视频数据块选择适当的编码模式。
在一些实施方式中,运动估计单元42通过根据视频帧序列的预定图案生成运动向量来为当前视频帧确定帧间预测模式,该运动向量指示当前视频帧内的视频块的预测单元(PU)相对于参考视频帧内的预测块的位移。由运动估计单元42执行的运动估计是生成运动向量的过程,其估计视频块的运动。例如,运动向量可指示当前视频帧或图片内的视频块的PU相对于参考帧(或其它已编码单元)内的预测块以及相对于当前帧(或其他已编码单元)内的被解码的当前块的位移。该预定图案可将该序列中的视频帧指定为P帧或B帧。帧内BC单元48可以以类似于由运动估计单元42为帧间预测确定运动向量的方式确定用于帧内BC编码的向量,例如块向量,或者可以利用运动估计单元42来确定该块向量。
预测块是参考帧的一个块,它被认为在像素差方面与待编码视频块的PU紧密匹配,像素差可以由绝对差之和(SAD)、平方差之和(SSD)或其它差异度量值确定。在一些实施方式中,视频编码器20可以计算存储在DPB 64中的参考帧的子整数像素位置的值。例如,视频编码器20可以内插该参考帧的四分之一像素位置、八分之一像素位置或其它分数的像素位置的值。因此,运动估计单元42可以相对于全像素位置和分数像素位置执行运动搜索并输出具有分数像素精度的运动向量。
运动估计单元42通过将PU的位置与从第一参考帧列表(列表0)或第二参考帧列表(列表1)中选择的参考帧的预测块的位置进行比较来计算帧间预测已编码帧中视频块的PU的运动向量,第一参考帧列表和第二参考帧列表中的每一个标识存储在DPB 64中的一个或多个参考帧。运动估计单元42将计算的运动向量发送到运动补偿单元44,然后发送到熵编码单元56。
由运动补偿单元44执行的运动补偿可涉及基于由运动估计单元42确定的运动向量来获取或生成预测块。在接收到当前视频块的PU的运动向量后,运动补偿单元44可以在其中的一个参考帧列表中定位运动向量所指向的预测块,从DPB 64检索(retrieve)预测块,并将该预测块转发到加法器50。然后,加法器50通过从正在编码的当前视频块的像素值中减去由运动补偿单元44提供的预测块的像素值来形成像素差值的残差视频块。形成残差视频块的这些像素差值可包括亮度(luma)差分量或色度(chroma)差分量或包括两者。运动补偿单元44还可产生与视频帧的视频块相关联的语法元素以供视频解码器30在对视频帧的视频块进行解码时使用。这些语法元素可包括如定义用于识别该预测性块的运动向量的语法元素、指示该预测模式的任何标志或本文描述的其它任何语法信息。应注意,运动估计单元42和运动补偿单元44可高度集成,但出于概念目的而单独举例说明。
在一些实施方式中,帧内BC单元48可以以与上文结合运动估计单元42和运动补偿单元44描述的方式类似的方式生成向量并获取预测块,但这些预测块与正在被编码的当前块位于同一帧内并且这些向量被称为块向量而不是运动向量。具体而言,帧内BC单元48可确定用于对当前块进行编码的帧内预测模式。在一些示例中,帧内BC单元48可使用各种帧内预测模式来编码当前块,例如,在单独的编码过程期间,并通过率失真分析测试它们的性能。接下来,帧内BC单元48可以在各种经过测试的帧内预测模式中选择适当的帧内预测模式来使用并相应地生成帧内模式指示符。例如,帧内BC单元48可以使用针对各种经过测试的帧内预测模式的率失真分析来计算率失真值,并且在经过测试的模式中选择具有最佳率失真特性的帧内预测模式作为适当的帧内预测模式来使用。率失真分析通常确定已编码块与原始未编码块之间的失真(或误差)量、被编码以产生编码块的未编码块以及用于产生已编码块的比特率(即比特数)。帧内BC单元48可从用于各种已编码块的失真(distortion)和速率(rate)计算比率(ratio)以确定哪种帧内预测模式展示出了块的最佳率失真值。
在其它示例中,帧内BC单元48可全部或部分地使用运动估计单元42和运动补偿单元44来根据本文描述的实施方式来执行用于帧内BC预测的此类功能。在任一情况下,对于帧内块复制,预测块可以是被认为与待编码块紧密匹配的块,就像素差而言,其可以由绝对差之和(SAD)、平方之和(SSD)或其它差异度量值来确定,并且该预测块的识别可包括子整数像素位置的值的计算。
无论预测块是根据帧内预测来自同一帧,还是根据帧间预测来自不同帧,视频编码器20都可以通过从正在被编码的当前视频块的像素值中减去该预测块的像素值来形成残差视频块,从而形成像素差值。形成该残差视频块的这些像素差值可包括亮度和色度分量差。
帧内预测处理单元46可对当前视频块进行帧内预测,作为运动估计单元42和运动补偿单元44执行的帧间预测或帧内BC单元48执行的帧内块复制预测的替代,如上所述。具体而言,帧内预测处理单元46可确定用于对当前块进行编码的帧内预测模式。为此,帧内预测处理单元46可使用各种帧内预测模式,例如在单独的编码过程期间,对当前块进行编码,并且帧内预测处理单元46(或在一些示例中为模式选择单元)可从经过测试的帧内预测模式中选择适当的帧内预测模式来使用。帧内预测处理单元46可向熵编码单元56提供指示为该块的所选择的帧内预测模式的信息。熵编码单元56可在比特流中对指示所选择的帧内预测模式的信息进行编码。
在预测处理单元41通过帧间预测或帧内预测确定当前视频块的预测块之后,加法器50通过从当前视频块中减去该预测块来形成残差视频块。该残差块中的残差视频数据可包括在一个或多个变换单元(TU)中并提供给变换处理单元52。变换处理单元52使用诸如离散余弦变换(DCT)或概念上类似的变换来将残差视频数据变换为残差变换系数。
变换处理单元52可将所得到的变换系数发送到量化单元54。量化单元54对这些变换系数进行量化以进一步降低比特率。该量化过程还可减少与一些或所有系数相关联的位深度。可以通过调整量化参数来修改量化程度。在一些示例中,量化单元54然后可对包含量化后的变换系数的矩阵进行扫描。可替代地,熵编码单元56可进行这种扫描。
在量化之后,熵编码单元56使用例如上下文自适应可变长度编码(CAVLC)、上下文自适应二进制算术编码(CABAC)、基于语法的上下文自适应二进制算术编码(SBAC)、概率区间划分熵(PIPE)编码或其它熵编码方法或技术将量化后的变换系数熵编码成视频比特流。然后这种编码后的比特流可被传送到视频解码器30,或存档(archive)在存储装置32中以供以后传送到视频解码器30或由视频解码器30检索(retrieval)。熵编码单元56还可对用于正在被编码的当前视频帧的运动向量和其它语法元素进行熵编码。
逆量化单元58和逆变换处理单元60分别应用逆量化和逆变换以重构像素域中的残差视频块,以生成用于预测其它视频块的参考块。如上所述,运动补偿单元44可从DPB 64中存储的帧的一个或多个参考块生成运动补偿预测块。运动补偿单元44还可将一个或多个内插滤波器应用于该预测块以计算用于运动估计的子整数像素值。
加法器62将该重构的残差块和运动补偿单元44产生的该运动补偿预测块相加以产生参考块存储在DPB 64中。该参考块然后可由帧内BC单元48、运动估计单元42以及运动补偿单元44用作预测块以对后续视频帧中的另一个视频块进行帧间预测。
图3是示出了根据本申请的一些实施方式的示范性视频解码器30的框图。视频解码器30包括视频数据存储器79、熵解码单元80、预测处理单元81、逆量化单元86、逆变换处理单元88、加法器90和DPB 92。预测处理单元81还包括运动补偿单元82、帧内预测处理单元84和帧内BC单元85。视频解码器30可以执行解码过程,该解码过程通常与上面结合图2所描述的关于视频编码器20的编码过程是相反的。例如,运动补偿单元82可基于从熵解码单元80接收的运动向量生成预测数据,而帧内预测单元84可基于从熵解码单元80接收的帧内预测模式指示符生成预测数据。
在一些示例中,视频解码器30的单元可以被分配执行本申请的实施方式的任务。此外,在一些示例中,本申请的实施方式可以在视频解码器30的一个或多个单元之间划分。例如,帧内BC单元85可以单独地或与视频解码器30的其它单元(如运动补偿单元82、帧内预测处理单元84和熵解码单元80)组合起来执行本申请的实施方式。在一些示例中,视频解码器30可以不包括帧内BC单元85并且帧内BC单元85的功能可由预测处理单元81的其它组件执行,如运动补偿单元82。
视频数据存储器79可以存储视频数据,如已编码的视频比特流,该比特流由视频解码器30的其它部件解码。存储在视频数据存储器79中的视频数据可通过视频数据的有线或无线网络通信从如存储设备32、从本地视频源(如相机)获得,或通过访问物理数据存储介质(如闪存驱动器或硬盘)获得。视频数据存储器79可包括编码图片缓存器(CPB),其存储来自已编码的视频比特流的已编码视频数据。视频解码器30的已解码图片缓存器(DPB)92存储用于视频解码器30(如以帧内或帧间预测编码模式)解码视频数据的参考视频数据。视频数据存储器79和DPB 92可由各种存储器设备中的任一种形成,如动态随机存取存储器(DRAM),包括同步DRAM(SDRAM)、磁阻RAM(MRAM)、电阻RAM(RRAM)或其它类型的存储设备。出于例示目的,视频数据存储器79和DPB 92描述为图3中视频解码器30的两个不同组件。但是对于本领域中熟练的技术人员显而易见的是,视频数据存储器79和DPB 92可以由相同的存储器设备或分离的存储器设备提供。在一些示例中,视频数据存储器79可与视频解码器30的其它组件在芯片上,或者相对于这些组件在芯片外。
在该解码过程期间,视频解码器30接收表示已编码的视频帧的视频块和相关联的语法元素的已编码视频比特流。视频解码器30可以在视频帧级别和/或视频块级别接收这些语法元素。视频解码器30的熵解码单元80对该比特流进行熵解码以生成量化的系数、运动向量或帧内预测模式指示符以及其它语法元素。熵解码单元80然后将这些运动向量和其它的这些语法元素转发到预测处理单元81。
当该视频帧被编码为帧内预测编码(I)帧或用于其它类型帧中的帧内编码预测块时,预测处理单元81的帧内预测处理单元84可基于通过信号发送的帧内预测模式和来自当前帧的先前已解码块的参考数据来为当前视频帧的视频块生成预测数据。
当该视频帧被编码为帧间预测编码(即,B或P)帧时,预测处理单元81的运动补偿单元82基于从熵解码单元80接收的运动向量和其它语法元素为当前视频帧的视频块产生一个或多个预测块。这些预测块中的每一个可从参考帧列表之一内的参考帧产生。视频解码器30可基于存储在DPB 92中的参考帧使用默认的构建技术来构建参考帧列表,即列表0和列表1。
在一些示例中,在根据本文所描述的帧内BC模式对视频块进行编码时,预测处理单元81的帧内BC单元85基于从熵解码单元80接收的块向量和其它语法元素为当前的视频块产生预测块。这些预测块可以在与由视频编码器20定义的当前视频块相同的图片的重构区域内。
运动补偿单元82和/或帧内BC单元85通过对这些运动向量和其它的语法元素进行解析来确定当前视频帧的视频块的预测信息,然后使用该预测信息来为正在解码的当前视频块产生预测块。例如,运动补偿单元82使用所接收的语法元素中的一些来确定用于对视频帧的视频块进行编码的预测模式(如帧内或帧间预测)、帧间预测帧类型(如B或P)、该帧的一个或多个参考帧列表的构造信息、该帧的每个帧间预测编码视频块的运动向量、该帧的每个帧间预测编码视频块的帧间预测状态以及用于解码当前视频帧中的视频块的其它信息。
类似地,帧内BC单元85可以使用接收到的语法元素中的一些(如标志)来确定当前视频块是使用该帧内BC模式进行预测、该帧的哪些视频块的重构信息在重构区域内并应存储在DPB 92中、帧的每个帧内BC预测视频块的块向量、帧的每个帧内BC预测视频块的帧内BC预测状态以及用于解码当前视频帧中的视频块的其它信息。
运动补偿单元82还可以在这些视频块的编码期间如视频编码器20一样使用内插滤波器来进行内插以计算参考块的子整数像素的内插值。在这种情况下,运动补偿单元82可从所接收的语法元素来确定视频编码器20所使用的内插滤波器,并且使用该内插滤波器来产生预测块。
逆量化单元86使用由视频编码器20为该视频帧中的每个视频块计算的相同量化参数对比特流中提供的并由熵解码单元80熵解码的已量化的变换系数进行逆量化,以确定量化程度。逆变换处理单元88对变换系数应用逆变换(如逆DCT、逆整数变换或概念上类似的逆变换过程),以重构像素域中的残差块。
在运动补偿单元82或帧内BC单元85基于向量和其它语法元素生成当前视频块的预测块之后,加法器90通过将来自逆变换处理单元88的残差块和由运动补偿单元82和帧内BC单元85生成的相应预测块相加来重构当前视频块的已解码的视频块。环内滤波器(未图示)可以位于加法器90与DPB 92之间以对该已解码的视频块进行进一步的处理。给定帧中的已解码视频块随后存储在DPB 92中,DPB 92存储用于以后的视频块的后续运动补偿的参考帧。DPB 92或与DPB 92分离的存储器设备也可以存储已解码的视频以供稍后在显示设备(如图1的显示设备34)上呈现。
在典型的视频编码过程中,视频序列通常包括一组有序的帧或图片。每个帧可包括三个样本阵列,表示为SL、SCb和SCr。SL是亮度样本的二维阵列。SCb是Cb色度样本的二维阵列。SCr是Cr色度样本的二维阵列。在其它情况下,帧可以是单色的,因此仅包括一个亮度样本的二维阵列。
如图4A所示,视频编码器20(或更具体地来讲,划分单元45)通过首先将帧划分为一组编码树单元(CTU)来生成该帧的编码表示。视频帧可包括整数个按从左到右和从上到下的光栅扫描顺序连续排序的CTUs。每个CTU是最大的逻辑编码单元并且该CTU的宽度和高度由视频编码器20在序列参数集中用信号通知,以使视频序列中的所有CTU具有相同的大小,即128×128、64×64、32×32和16×16中的一个。但需要说明的是,本申请并不一定限于特定的尺寸。如图4B所示,每个CTU可包括亮度样本的一个编码树块(CTB)、色度样本的两个对应编码树块以及用于对这些编码树块的样本进行编码的语法元素。该语法元素描述了编码像素块的不同类型单元的特性以及如何在视频解码器30处重构视频序列,包括帧间或帧内预测、帧内预测模式、运动向量以及其它参数。在单色图片(monochrome pictures)或具有三个单独颜色平面的图片(pictures having three separate color planes)中,CTU可包括单个编码树块和用于对该编码树块的样本进行编码的语法元素。编码树块可以是N×N个样本块。
为了实现更好的性能,视频编码器20可以在CTU的这些编码树块上递归地执行树划分(tree partitioning),例如二叉树划分、三叉树划分、四叉树划分或二者的组合,并将该CTU分成(divide)更小的编码单元(CU)。如图4C所示,首先将64×64的CTU 400分成四个更小的CUs,每个更小的CU具有32×32的块尺寸。在这四个更小的CUs中,CU 410和CU 420均按块大小分成四个16×16的CU。两个16×16的CU430和440分别按块大小进一步分为四个8×8的CU。图4D示出了一种四叉树数据结构,图中示出了如图4C中示出的CTU 400的划分过程的最终结果,该四叉树的每个叶节点对应一个CU,其各自的大小范围从32×32到8×8。与图4B中所示出的CTU类似,每个CU可包括亮度样本的编码块(CB)和相同大小的帧的色度样本的两个对应编码块,以及用于对编码块的样本进行编码的语法元素。在单色图片或具有三个单独色彩平面的图片中,CU可包括单个编码块和用于对该编码块的样本进行编码的句法结构。应该注意的是,在图4C和4D中示出的四叉树划分仅用于图示目的,并且一个CTU可被拆分(split)为CUs以适应基于四叉/三叉/二叉树划分的不同局部特征。在多类型树结构中,一个CTU被四叉树结构划分,每个四叉树叶CU可以进一步被二叉树和三叉树结构划分。如图4E所示,有五种划分类型,即四叉划分、水平二叉划分、垂直二叉划分、水平三叉划分和垂直三叉划分。
在一些实施方式中,视频编码器20可进一步将CU的编码块划分成一个或多个M×N的预测块(PB)。预测块是矩形(正方形或非正方形)样本块,在其上应用了相同的(帧间或帧内)预测。CU的预测单元(PU)可包括亮度样本的预测块、色度样本的两个对应预测块以及用于对预测块进行预测的语法元素。在单色图片或具有三个单独色彩平面的图片中,PU可包括单个预测块和用于对该预测块进行预测的语法结构。视频编码器20可以为该CU的每个PU的亮度、Cb和Cr预测块生成预测亮度、Cb和Cr块。
视频编码器20可使用帧内预测或帧间预测来生成PU的预测块。如果视频编码器20使用帧内预测来生成PU的预测块,则视频编码器20可基于与该PU相关联的帧的已解码样本来生成PU的预测块。如果视频编码器20使用帧间预测来生成PU的预测块,则视频编码器20可基于除与PU相关联的帧之外的一个或多个帧的已解码样本来生成PU的预测块。
在视频编码器20为CU的一个或多个PU生成预测亮度、Cb和Cr块之后,视频编码器20可通过从其原始亮度编码块中减去该CU的预测亮度块来生成该CU的亮度残差块,以使该CU的亮度残差块中的每个样本指示该CU的预测亮度块之一中的亮度样本与该CU的原始亮度编码块中的对应样本之间的差异。类似地,视频编码器20可分别为该CU生成Cb残差块和Cr残差块,以使该CU的Cb残差块中的每个样本指示CU的预测Cb块之一中的Cb样本与CU的原始Cb编码块中的对应样本之间的差异,并且CU的Cr残差块中的每个样本可以指示CU的预测Cr块之一中的Cr样本与CU的原始Cr编码块中的对应样本之间的差异。
此外,如图4C所示,视频编码器20可采用四叉树划分来将CU的亮度、Cb和Cr残差块分解为一个或多个亮度、Cb和Cr变换块。变换块是应用相同变换的矩形(正方形或非正方形)样本块。CU的变换单元(TU)可包括亮度样本的变换块、色度样本的两个对应变换块以及用于对这些变换块样本进行变换的语法元素。因此,CU的每个TU可与亮度变换块、Cb变换块和Cr变换块相关联。在一些示例中,与该TU相关联的亮度变换块可以是该CU的亮度残差块的子块。该Cb变换块可以是该CU的Cb残差块的子块。该Cr变换块可以是该CU的Cr残差块的子块。在单色图片或具有三个单独颜色平面的图片中,TU可包括单个变换块和用于对该变换块的样本进行变换的语法结构。
视频编码器20可将一个或多个变换应用于TU的亮度变换块以生成该TU的亮度系数块。系数块可以是变换系数的二维阵列。变换系数可以是标量(scalar quantity)。视频编码器20可将一个或多个变换应用于TU的Cb变换块以生成该TU的Cb系数块。视频编码器20可将一个或多个变换应用于TU的Cr变换块以生成该TU的Cr系数块。
在生成系数块(如亮度系数块、Cb系数块或Cr系数块)之后,视频编码器20可将该系数块量化。量化通常是指对变换系数进行量化以尽可能减少用于表示变换系数的数据量从而提供进一步压缩的过程。在视频编码器20将系数块量化之后,视频编码器20可对指示量化后的变换系数的语法元素进行熵编码。例如,视频编码器20可对指示量化后的变换系数的语法元素进行上下文自适应二进制算术编码(CABAC)。最后,视频编码器20可以输出包括比特序列的比特流,该比特序列形成已编码帧和相关数据的表示,其被保存在存储设备32中或被传输到目的设备14。
在接收由视频编码器20生成的比特流之后,视频解码器30可解析该比特流以从该比特流获得语法元素。视频解码器30可以至少部分地基于从该比特流获得的语法元素来重构该视频数据的帧。重构视频数据的过程通常与视频编码器20执行的编码过程是相反的。例如,视频解码器30可以对与当前CU的TU相关联的系数块进行逆变换,以重构与当前CU的TU关联的残差块。视频解码器30还通过将用于当前CU的PU的预测块的样本和当前CU的TU的变换块的对应样本相加来重构当前CU的编码块。在为帧的每个CU重构了编码块之后,视频解码器30可重构该帧。
最近的研究表明,在CU的Cb残差和Cr残差之间似乎存在相关关系。在某些情况下,这两个色度残差表现为彼此逆相关。在这种情况下,提出了一种用于色度残差联合编码的模式,该模式仅用信号通知CU的一个色度残差块(如该Cb残差块)以提高编码效率,并带有指示色度残差联合编码被启用的标志。在一些实施例中,当这两个色度残差如下所示不完全逆相关时,将正Cb残差和负Cr残差的平均值用作这两个分量的联合残差以提高准确度:
resJoint=(resCb–resCr)/2,
其中,resCb表示CU的Cb残差块,resCr表示CU的Cr残差块。
在一些实施方式中,视频编码器计算这两个色度残差之间的平均和块和平均差块,如下所示:
resJointCb=(resCb–resCr)/2,
resJointCr=(resCb+resCr)/2。
与这两个残差块resCb和resCr相比,平均差异块resJointCr中的值具有较小的量值(magnitudes),并且可以用少量比特以相同或相似的准确度水平进行量化。
在一些实施方式中,提出了不同的色度残差联合编码模式,每种模式针对Cb残差和Cr残差之间的特定相关关系,如下所示:
模式一:根据Cr=CSign*Cb/2编码Cb并导出Cr;
模式二:根据Cr=CSign*Cb编码Cb并导出Cr;
模式三:根据Cb=CSign*Cr/2编码Cr并导出Cb;
其中,CSign表示用于从该第一色度残差块导出该第二色度残差块的符号(sign)。CSign作为瓦片组标头语法元素被信号发送,并且CSign的值为-1或1。
在一些实施方式中,色度残差联合编码模式由TU级标志(即tu_cb_cr_joint_residual)通过信号发送。如果tu_cb_cr_joint_residual等于1,则使用上述三种模式之一。所使用的特定模式根据下表从通过信号发送的色度编码块标志(CBF)中导出:
Figure BDA0003383191320000171
表1:基于CBF的联合色度残差编码模式推导
在一些实施方式中,如果选择联合色度编码模式,则将用于对联合色度残差分量进行编码的量化参数(QP)减1(对于模式1和3)或者减2(对于模式2)。
总之,视频编码器20通过Cb和Cr残差的相应的混合操作导出联合色度残差,并且基于失真分析(如通过首先将Cb和Cr残差混合成联合色度残差然后从该联合色度残差重建Cb和Cr残差而无需量化所获得的失真)选择所支持的三种色度编码模式(包括CSign)中的一种。然后在附加模式决策过程中测试所选模式(即使用变换、量化和熵编码)。在一些实施方式中,指示用于导出第二色度分量的符号(CSign)的瓦片组标头语法元素是通过分析用于该瓦片组的原始Cb和Cr分量的高通滤波版本之间的相关性来确定的。
在一些实施方式中,第一色度残差和第二色度残差之间的相关性指示了tu_cb_cr_joint_residual标志的信号发送取决于一个而非两个色度已编码块标志的信号发送。例如,如果第一个通过信号发送的色度已编码块标志的值为1,则tu_cb_cr_joint_residual标志将通过信号发送,并且由于第一与第二色度残差块之间的相关性,不需要通过信号发送第二个色度已编码块标志。仅当tu_cb_cr_joint_residual标志的值为零时,即第一与第二色度残差块之间没有相关性时,才通过信号发送第二色度已编码块标志。
在一些实施方式中,一个或两个上下文被用于tu_cb_cr_joint_residual标志的CABAC编码。例如,基于该Cr已编码块标志的值来选择这两个上下文中的一个。当该Cr已编码块标志为1时,使用一个上下文;否则(即该Cr已编码块标志等于0),使用另一个上下文。如果该Cb已编码块标志等于1,则通过信号发送该TU级标志tu_cb_cr_joint_residual并且利用这两个上下文来对该tu_cb_cr_joint_residual标志进行编码。
在一些实施方式中,仅当这两个色度CBF均为1时才通过信号发送该TU级标志tu_cb_cr_joint_residual。当该tu_cb_cr_joint_residual标志的值为1时,通过信号发送一个附加语法元素以指示选择三种模式中的哪一种。对于该模式语法的CABAC编码,可以使用不同的码字二值化(codeword binarization)。一种示例性码字二值化可以是截短的一叉码字(truncated unary codeword),其最大码字索引为2,如下面的表2所示。
Figure BDA0003383191320000181
表2:用于联合色度编码模式信令的码字二值化
在一些实施方式中,提出了一种额外的语法元素来控制不同级别的色度残差联合编码模式的语法信令。例如,可以在视频序列级别、图片级别或瓦片组级别、瓦片级别或切片级别通过信号发送该语法元素。当该语法元素在特定级别以值1通过信号发送时,处于或低于该级别的TU级控制标志,即tu_cb_cr_joint_residual,也被通过信号发送,以指示色度残差联合编码的使用。当此语法用0值通过信号发送时,该色度残差联合编码在该级别被禁用,并且当使用0值在通过信号发送该标志的级别或低于该级别对CU进行编码时,该TU级控制标志不被编码。
图5A和5B是示出了根据本申请的一些实施方式的视频编码器20使用色度残差联合编码方案来实现对视频数据进行编码的技术的示例性过程500的流程图。视频编码器20从具有分层结构的视频比特流获得与该分层结构的第一层相关联的第一语法元素(510)。如上所述,该第一层有多个选项,相应的,该第一元素可以在序列参数集(SPS)、图片参数集(PPS)、瓦片组标头、瓦片组标头、瓦片标头、切片标头等中的一个之中。一个或多个块中的每一个的多个色度分量对应于视频数据的变换单元,其又与特定编码单元相关联。
随后,视频编码器20检查该第一语法元素的值(例如,以一位标志的形式)并且确定该语法元素是否指示色度残差联合编码模式是否被启用(530)。例如,值为1表示启用色度残差联合编码模式,值为0表示禁用色度残差联合编码模式。如果该色度残差联合编码模式被启用(530-是),则视频编码器20然后根据预定义的色度残差联合编码方案将该第一层下的一个或多个块的多个色度分量的色度残差联合编码为视频比特流(550)。如上所述,提出了至少三种不同的色度残差联合编码方案来处理不同类型的视频数据。相应地使用各种语法元素和CABAC上下文来处理多个色度分量中的一个,而根据预定义的色度残差联合编码方案之下的相关关系从该处理后的色度分量中导出其他色度分量。如果色度残差联合编码模式被禁用(530-否),则视频编码器20然后将该第一层下的一个或多个块的多个色度分量的色度残差分别编码到该视频比特流中(570)。换言之,一个或多个块的多个色度分量中的每一个都被编码到该视频比特流中,并且对于每个CU将TU级控制标志tu_cb_cr_joint_residual设置为零。
最后,视频编码器20输出包括该一个或多个块的多个色度分量的已编码色度残差和第一语法元素的视频比特流(590)。
在一些实施方式中,如图5B所描述的,在该第一语法元素指示启用该色度残差联合编码模式之后,视频编码器20获得与一个或多个块中的每一个相关联的第二语法元素(550-1)并确定第二语法元素是否指示启用色度残差块级联合编码模式(550-3)。如果是(550-3,是),则视频编码器20根据该预定义的色度残差联合编码方案将该块的多个色度分量的色度残差联合编码到该视频比特流中(550-5);否则(550-3,否),视频编码器20将该块的多个色度分量的色度残差分别编码到该视频比特流中(550-7)。换言之,该第一语法元素处的值0可以禁用对该第一层下的所有块的色度残差联合编码的应用,从而不需要在块级通过信号发送该第二语法元素。但是第一语法元素处的值1并未规定必须使用色度残差联合编码方案之一来对该第一层下的每个块都进行编码。通过选择该第二语法元素,每个单独的块仍具有自己的控制,从而增强了视频编码器实现的灵活性。
在一些实施方式中,视频编码器20根据该块的多个色度分量的色度编码标志的值从多种模式(参见,例如,上表1)中选择模式,这就可能要求进行速率失真分析。视频编码器20然后根据所选择的模式和该块的多个色度分量的色度编码标志的值,将该块的多个色度分量中的一个的色度残差分别编码到该视频比特流中。
图6A至6C是示出了根据本申请的一些实施方式的视频解码器使用色度残差联合编码方案来实施对视频数据进行解码的技术的示例性过程600的流程图。视频解码器30从具有分层结构的视频比特流接收与该分层结构的第一层相关联的第一语法元素(610),然后检查该第一语法元素是否指示色度残差联合编码模式是否被启用(630)。如果是(630-是),则视频解码器30根据预定义的色度残差联合编码方案,从视频比特流联合重构该第一层下的一个或多个块的多个色度分量的色度残差(650)。否则(630-否),视频解码器30从视频比特流分别重构该第一层下的一个或多个块的多个色度分量的色度残差(670)。如上所述,该第一层有多个选项,相应的,该第一元素可以在序列参数集(SPS)、图片参数集(PPS)、瓦片组标头、瓦片组标头、瓦片标头、切片标头等的一个之中。一个或多个块中的每一个的多个色度分量对应于该视频数据的变换单元,其又与特定编码单元相关联。
在一些实施方式中,如图6B所描述的,在该第一语法元素指示该色度残差联合编码模式被启用之后,视频解码器30从该视频比特流接收与一个或多个块中的每一个相关联的第二语法元素(650-1)并确定该第二语法元素是否指示色度残差块级联合编码模式被启用(650-3)。如果是(650-3,是),则视频解码器30根据该预定义的色度残差联合编码方案,从该视频比特流中联合重构该块的多个色度分量的色度残差(650-5);否则(650-3,否),视频解码器30从该视频比特流分别重构该块的多个色度分量的色度残差(650-7)。换言之,该第一语法元素处的值0可以禁用对该第一层下的所有块的色度残差联合编码的应用,从而不需要在块级通过信号发送该第二语法元素。但是第一语法元素处的值1并未规定必须使用色度残差联合编码方案之一来对该第一层下的每个块都进行编码。通过选择该第二语法元素,每个单独的块仍具有自己的控制,从而增强了视频解码器实现的灵活性。
在一些实施方式中,如图6C所描述的并且如前面结合表1所描述的那样,块的多个色度分量中的每一个都具有色度编码标志并且该预定义的色度残差联合编码方案具有多种模式(650-11)。视频解码器30根据该块的多个色度分量的色度编码标志的值从多个模式(参见,例如,上面的表1)中选择模式(650-13),然后根据所选模式从该视频比特流中重构该块的多个色度分量的色度残差(650-15)。假设该块的多个色度分量包括第一色度分量(如Cb分量)和第二色度分量(如Cr分量)(650-15-1),则视频解码器30从该视频比特流重构该块的第一色度分量的色度残差(650-15-3),并且如前面对多个色度残差联合编码模式所描述的那样从该块的第一色度分量的色度残差直接导出该第二色度分量的色度残差(650-15-5)。
如上表1所描述的,当TU级tu_cb_cr_joint_residual标志为1、Cb CBF为1、Cr CBF为0时,选择模式1。但仍有可能两个色度块(Cb和Cr块)实际上都具有非零残差,从而导致通过信号发送的色度块CBF值与实际对应色度块残差之间的差异。当此类色度CBF值随后用于其他目的(例如用作编码其他语法的上下文)时,此类差异可能会影响编码性能。如图6C所描述的,视频解码器30可将该块的多个色度分量的色度编码标志重置为预定义值(650-17)。例如,在具有多个模式的色度残差联合编码方案中,当TU级标志tu_cb_cr_joint_residual被通过信号发送为1时,无论使用三种模式中的哪一种,在当前块被重构后,Cb和Cr色度已编码块标志(CBF)语法元素均被重置为1。例如,在模式1下,即使通过信号发送的Cr CBF为0,在当前块被重构后它也会被重置为1。
在一个或多个示例中,所描述的功能可以在硬件、软件、固件或其任何组合中实现。如果在软件中实现,则这些功能可以作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质传输并由基于硬件的处理单元执行。计算机可读介质可包括计算机可读存储介质,其对应于诸如数据存储介质之类的有形介质,或者包括便于将计算机程序从一个地方转移到另一个地方的任何介质的通信介质,例如,根据通信协议。在这种方式中,计算机可读介质通常可对应于(1)非暂时性的有形计算机可读存储介质或(2)诸如信号或载波的通信介质。数据存储介质可以是可由一台或多台计算机或一个或多个处理器访问以检索指令、代码和/或数据结构以实现本申请中描述的实施方式的任何可用介质。计算机程序产品可包括计算机可读介质。
在此处的实施方式的描述中使用的术语仅用于描述特定实施方式的目的,并不旨在限制权利要求的范围。在实施方式和所附权利要求的描述中使用的单数形式“一个”和“该/所述”也旨在包括复数形式,除非上下文另有明确指示。还应理解,本文所用的术语“和/或”是指并且涵盖一个或多个相关联的所列项目的任何和所有可能的组合。将会进一步理解,当在本说明书中使用时,术语“包括”指定所陈述的特征、要素和/或组件的存在,但不排除其它一个或多个特征、要素、组件和/或它们的组的存在或添加。
还应理解,虽然术语第一、第二等在本文中可用于描述各种要素,但这些要素不应受限于这些术语。这些术语仅用于区分一种要素与另一种要素。例如,在不脱离实施方式的范围的情况下,第一电极可以被称为第二电极,并且类似地,第二电极可以被称为第一电极。第一电极和第二电极都是电极,但不是同一个电极。
本申请的描述是为了说明和描述的目的而呈现的,并不旨在穷举或限制以所公开形式的本发明。受益于前述描述和相关附图中呈现的教导,本领域普通技术人员将明白许多修改、变化和替代实施方式。选择和描述实施例是为了最好地解释本发明的原理、实际应用,并使本领域的其他技术人员能够理解本发明的各种实现方式,并最好地利用具有各种修改的基本原理和各种实现方式,如适用于预期的特定用途。因此,应当理解,权利要求的范围不限于所公开的实施方式的具体示例,并且修改和其他实施方式旨在包括在所附权利要求的范围内。

Claims (20)

1.一种视频数据解码方法,其中,所述方法包括:
从具有分层结构的视频比特流接收与所述分层结构的第一层相关联的第一语法元素;
根据确定所述第一语法元素指示启用色度残差联合编码模式,基于预定义的色度残差联合编码方案,从所述视频比特流中联合重构所述第一层下的一个或多个块的多个色度分量的色度残差;以及
根据确定所述第一语法元素指示禁用色度残差联合编码模式,从所述视频比特流中分别重构所述第一层下的所述一个或多个块的所述多个色度分量的所述色度残差。
2.根据权利要求1所述的方法,其中,所述第一语法元素在序列参数集(SPS)、图片参数集(PPS)、瓦片组标头、瓦片标头和切片标头中的一个中。
3.根据权利要求1所述的方法,其中,所述一个或多个块中的每一个的所述多个色度分量对应于所述视频数据的变换块。
4.根据权利要求1所述的方法,其中,所述第一语法元素包括一比特标志。
5.根据权利要求1所述的方法,其中,还包括:
在所述第一个语法元素指示启用所述色度残差联合编码模式后,
从所述视频比特流接收与所述一个或多个块中的每一个相关联的第二语法元素;
根据确定所述第二语法元素指示启用色度残差块级联合编码模式,基于所述预定义的色度残差联合编码方案,从所述视频比特流中联合重构所述块的所述多个色度分量的所述色度残差;以及
根据确定所述第二语法元素指示禁用所述色度残差块级联合编码模式,从所述视频比特流中分别重构所述块的所述多个色度分量的所述色度残差。
6.根据权利要求5所述的方法,其中,所述一个或多个块中的每一个的所述多个色度分量对应于所述视频数据的变换块。
7.根据权利要求1所述的方法,其中,一个块的所述多个色度分量中的每一个都具有色度编码标志,并且所述预定义的色度残差联合编码方案具有多种模式,所述方法还包括:
根据所述块的多个色度分量的所述色度编码标志的值,从所述多个模式中选择模式;
根据所选择的模式,从所述视频比特流重构所述块的所述多个色度分量的所述色度残差;以及
将所述块的多个色度分量的所述色度编码标志重置为预定义的值。
8.根据权利要求7所述的方法,其中,所述块的所述多个色度分量包括第一色度分量和第二色度分量,并且从所述视频比特流重构所述块的所述多个色度分量的所述色度残差还包括:
从所述视频比特流重构所述块的所述第一色度分量的所述色度残差;以及
从所述块的所述第一色度分量的所述色度残差直接导出所述第二色度分量的所述色度残差。
9.根据权利要求8所述的方法,其中,所述块的所述第二色度分量的所述色度残差是所述块的所述第一色度分量的所述色度残差的相反值。
10.根据权利要求8所述的方法,其中,当所述重构的色度残差包含至少一个非零值时,所述预定义的值为1。
11.一种电子设备,其中,所述电子设备包括:
一个或多个处理单元;
耦合到所述一个或多个处理单元的存储器;以及
存储在所述存储器中的多个程序,当由所述一个或多个处理单元执行时,所述多个程序使所述电子设备执行如权利要求1-10所述的方法。
12.一种非暂时性计算机可读存储介质,存储由具有一个或多个处理单元的电子设备执行的多个程序,其中,所述多个程序在由所述一个或多个处理单元执行时使所述电子设备执行如权利要求1-10所述的方法。
13.一种视频数据编码方法,其中,所述方法包括:
针对具有分层结构的视频比特流,获得与所述分层结构的第一层对应的第一语法元素;
根据确定所述第一语法元素指示启用色度残差联合编码模式,基于预定义的色度残差联合编码方案,将所述第一层下的一个或多个块的多个色度分量的色度残差联合编码成视频比特流;
根据所述第一语法元素指示禁用所述色度残差联合编码模式的确定,将所述第一层下的所述一个或多个块的所述多个色度分量的所述色度残差分别编码成所述视频比特流;以及
输出包括所述一个或多个块的所述多个色度分量的所述已编码色度残差以及所述第一语法元素的所述视频比特流。
14.根据权利要求13所述的方法,其中,所述第一语法元素在序列参数集(SPS)、图片参数集(PPS)、瓦片组标头、瓦片标头和切片标头中的一个中。
15.根据权利要求13所述的方法,其中,所述一个或多个块中的每一个的所述多个色度分量对应于所述视频数据的变换单元。
16.根据权利要求13所述的方法,其中,所述第一语法元素包括一比特标志。
17.根据权利要求13所述的方法,其中,还包括:
在所述第一语法元素指示启用所述色度残差联合编码模式之后,
获得与所述一个或多个块中的每一个相关联的第二语法元素;
根据确定所述第二语法元素指示启用色度残差块级联合编码模式,基于所述预定义的色度残差联合编码方案,将所述块的所述多个色度分量的所述色度残差联合编码成所述视频比特流;以及
根据确定所述第二语法元素指示禁用所述色度残差块级联合编码模式,将所述块的所述多个色度分量的所述色度残差分别编码成所述视频比特流。
18.根据权利要求13所述的方法,其中,一个块的所述多个色度分量中的每一个都具有色度编码标志,并且所述预定义的色度残差联合编码方案具有多种模式,所述方法还包括:
根据所述块的所述多个色度分量的所述色度编码标志的值,从所述多个模式中选择模式;
根据所选择的模式,将所述块的所述多个色度分量中的一个的所述色度残差编码到所述视频比特流中;以及
将所述块的所述多个色度分量的所述色度编码标志的所述值编码到所述视频比特流中。
19.一种电子设备,其中,所述电子设备包括:
一个或多个处理单元;
耦合到所述一个或多个处理单元的存储器;以及
存储在所述存储器中的多个程序,当由所述一个或多个处理单元执行时,所述多个程序使所述电子设备执行如权利要求13-18所述的方法。
20.一种非暂时性计算机可读存储介质,存储由具有一个或多个处理单元的电子设备执行的多个程序,其中,所述多个程序在由所述一个或多个处理单元执行时使所述电子设备执行如权利要求13-18所述的方法。
CN202080040464.9A 2019-04-30 2020-04-30 色度残差联合编码方法和装置 Active CN113906749B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962841158P 2019-04-30 2019-04-30
US62/841,158 2019-04-30
PCT/US2020/030743 WO2020223496A1 (en) 2019-04-30 2020-04-30 Methods and apparatus of joint coding of chroma residuals

Publications (2)

Publication Number Publication Date
CN113906749A true CN113906749A (zh) 2022-01-07
CN113906749B CN113906749B (zh) 2023-05-23

Family

ID=73029510

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080040464.9A Active CN113906749B (zh) 2019-04-30 2020-04-30 色度残差联合编码方法和装置

Country Status (2)

Country Link
CN (1) CN113906749B (zh)
WO (1) WO2020223496A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2021015275A (es) * 2019-06-11 2022-01-18 Lg Electronics Inc Metodo de decodificacion de imagenes para componente de croma y dispositivo para el mismo.
US11310533B2 (en) * 2019-09-27 2022-04-19 Qualcomm Incorporated Quantization parameter signaling for joint chroma residual mode in video coding
WO2023024712A1 (en) * 2021-08-27 2023-03-02 Mediatek Inc. Method and apparatus of joint coding for multi-colour components in video coding system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080056352A1 (en) * 2006-08-31 2008-03-06 Samsung Electronics Co., Ltd. Video encoding apparatus and method and video decoding apparatus and method
US20100202512A1 (en) * 2007-04-16 2010-08-12 Hae-Chul Choi Color video scalability encoding and decoding method and device thereof
US20140010292A1 (en) * 2012-07-09 2014-01-09 Qualcomm Incorporated Skip transform and residual coding mode extension for difference domain intra prediction
WO2014047693A1 (en) * 2012-09-28 2014-04-03 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the transform units of a coding unit
CN104041036A (zh) * 2012-01-03 2014-09-10 杜比实验室特许公司 指定视觉动态范围编码操作及参数
WO2015194781A1 (ko) * 2014-06-18 2015-12-23 삼성전자 주식회사 깊이 블록을 이용하는 멀티 레이어 비디오 부호화 방법 및 멀티 레이어 비디오 복호화 방법

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9807401B2 (en) * 2011-11-01 2017-10-31 Qualcomm Incorporated Transform unit partitioning for chroma components in video coding
US20200322599A1 (en) * 2016-05-28 2020-10-08 Mediatek Inc. Method and apparatus of current picture referencing for video coding using affine motion compensation
US10523966B2 (en) * 2017-03-31 2019-12-31 Mediatek Inc. Coding transform blocks

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080056352A1 (en) * 2006-08-31 2008-03-06 Samsung Electronics Co., Ltd. Video encoding apparatus and method and video decoding apparatus and method
US20100202512A1 (en) * 2007-04-16 2010-08-12 Hae-Chul Choi Color video scalability encoding and decoding method and device thereof
CN104041036A (zh) * 2012-01-03 2014-09-10 杜比实验室特许公司 指定视觉动态范围编码操作及参数
US20140010292A1 (en) * 2012-07-09 2014-01-09 Qualcomm Incorporated Skip transform and residual coding mode extension for difference domain intra prediction
WO2014047693A1 (en) * 2012-09-28 2014-04-03 Canon Kabushiki Kaisha Method, apparatus and system for encoding and decoding the transform units of a coding unit
WO2015194781A1 (ko) * 2014-06-18 2015-12-23 삼성전자 주식회사 깊이 블록을 이용하는 멀티 레이어 비디오 부호화 방법 및 멀티 레이어 비디오 복호화 방법

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CHRISTIAN HELMRICH, CHRISTIAN RUDAT: "CE7-related: Joint chroma residual coding with multiple modes", 《JVET OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 *
JANI LAINEMA: "CE7-related: Joint coding of chrominance residuals", 《JVET OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11》 *

Also Published As

Publication number Publication date
CN113906749B (zh) 2023-05-23
WO2020223496A1 (en) 2020-11-05

Similar Documents

Publication Publication Date Title
CN114710679B (zh) 视频编解码中的小色度块大小限制
CN113906749B (zh) 色度残差联合编码方法和装置
US20220239926A1 (en) Methods and apparatus of video coding using palette mode
US20220201301A1 (en) Methods and apparatus of video coding in 4:4:4 chroma format
US20220109886A1 (en) Methods and system of subblock transform for video coding
CN115665409A (zh) 对视频数据进行编码的方法和设备
US20220286673A1 (en) Deblocking filtering for video coding
US11985311B2 (en) Prediction mode signaling in video coding
CN114762329A (zh) 使用调色板模式的视频编解码的方法和装置
US20230109849A1 (en) Methods and apparatus of video coding in 4:4:4 color format
CN113906751A (zh) 使用调色板模式的基于分段的视频编解码的方法和装置
CN114846807A (zh) 色度残差的编解码
CN114175641A (zh) 在视频编解码中提高无损编解码效率
CN115004706A (zh) 关于变换和系数信令的方法和装置
US11985356B2 (en) Methods and apparatus for prediction simplification in video coding
CN114208172A (zh) 执行用于调色板模式的率失真分析的方法和装置
CN118075461A (zh) 一种视频解码的方法、装置和介质
CN118118672A (zh) 一种视频解码的方法、装置和介质
CN115699770A (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
GR01 Patent grant
GR01 Patent grant