CN114303385A - 视频编解码中的小色度块大小限制 - Google Patents

视频编解码中的小色度块大小限制 Download PDF

Info

Publication number
CN114303385A
CN114303385A CN202080057598.1A CN202080057598A CN114303385A CN 114303385 A CN114303385 A CN 114303385A CN 202080057598 A CN202080057598 A CN 202080057598A CN 114303385 A CN114303385 A CN 114303385A
Authority
CN
China
Prior art keywords
block
tree node
chroma
video
codec
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
CN202080057598.1A
Other languages
English (en)
Inventor
陈漪纹
修晓宇
马宗全
朱弘正
王祥林
于冰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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
Priority to CN202310098532.2A priority Critical patent/CN116193131B/zh
Priority to CN202210303132.6A priority patent/CN114710679B9/zh
Publication of CN114303385A publication Critical patent/CN114303385A/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/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
    • 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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • 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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding 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/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/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
    • 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/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/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

电子装置执行对视频数据进行解码的方法。该方法包括:接收编码有编解码树节点的数据;如果编解码树节点是以第一色度格式编码的,将编解码树节点设置为第一模式类型;如果编解码树节点是以第二色度格式编码的并且编解码树节点是最小色度帧内预测单元:如果编解码树节点的亮度块和拆分方法满足第一标准,则将编解码树节点设置为第二模式类型;并且如果编解码树节点的亮度块和拆分方法满足第二标准,则将编解码树节点设置为第三模式类型。基于与编解码树节点相关联的设置模式类型来对编解码树单元进行解码。

Description

视频编解码中的小色度块大小限制
技术领域
本申请总体上涉及视频数据编解码和压缩,并且更具体地涉及在视频编解码中限制最小可用块大小的方法和系统。
背景技术
数字视频被各种电子设备所支持,诸如数字电视、膝上型计算机或台式计算机、平板计算机、数码相机、数字记录设备、数字媒体播放器、视频游戏机、智能电话、视频电话会议设备、视频流式传输设备等。电子设备通过实施由MPEG-4、ITU-T H.263、ITU-T H.264/MPEG-4第10部分、高级视频编解码(AVC)、高效视频编解码(HEVC)和通用视频编解码(VVC)标准所定义的视频压缩/解压缩标准,来发送、接收、编码、解码、和/或存储数字视频数据。视频压缩典型地包括执行空间(帧内)预测和/或时间(帧间)预测,以减少或去除视频数据中固有的冗余。对于基于块的视频编解码,视频帧被分割为一个或多个条带,每个条带具有多个视频块,视频块也可以被称为编解码树单元(CTU)。每个CTU可以包含一个编解码单元(CU)或递归地拆分成更小的CU,直到达到预定义的最小CU大小。每个CU(也称为叶CU)包含一个或多个变换单元(TU),并且每个CU还包含一个或多个预测单元(PU)。每个CU可以以帧内模式、帧间模式或IBC模式被编解码。视频帧的帧内编解码(I)条带中的视频块使用空间预测被编码,空间预测是相对于同一视频帧内的相邻块中的参考样点的。视频帧的帧间编解码(P或B)条带中的视频块可以使用空间预测或时间预测,空间预测是相对于同一视频帧内的相邻块中的参考样点的,时间预测是相对于其他先前和/或未来参考视频帧中的参考样点的。
基于先前已被编码的参考块(例如,相邻块)的空间预测或时间预测产生了针对待编解码的当前视频块的预测块。找到参考块的过程可以通过块匹配算法来完成。表示待编解码的当前块与预测块之间的像素差的残差数据被称为残差块或预测误差。帧间编解码块根据运动矢量和残差块被编码,运动矢量指向形成预测块的参考帧中的参考块。确定运动矢量的过程典型地被称为运动估计。帧内编解码块根据帧内预测模式和残差块被编码。为了进一步压缩,残差块从像素域被变换到变换域,例如频域,从而产生残差变换系数,残差变换系数然后可以被量化。最初布置为二维阵列的量化的变换系数可以被扫描以产生变换系数的一维矢量,并且然后被熵编码为视频比特流以实现甚至更大的压缩。
已编码的视频比特流然后被保存在计算机可读存储介质(例如,闪速存储器)中,以被具有数字视频能力的另一个电子设备访问,或者直接以有线或无线方式传输到电子设备。电子设备然后例如通过以下方式来执行视频解压缩(其是与上文描述的视频压缩相反的过程):解析已编码视频比特流以从比特流获得语法元素,以及至少部分地基于从比特流获得的语法元素将数字视频数据从已编码视频比特流重建为其原始格式,并且电子设备将重建的数字视频数据呈现在电子设备的显示器上。
随着数字视频质量从高清变为4K×2K或甚至8K×4K,待编码/解码的视频数据量呈指数增长。在如何保持已解码视频数据的图像质量的同时,更高效地对视频数据进行编码/解码方面,是一种持久的挑战。
发明内容
本申请描述了与视频数据编码和解码相关的实施方式,并且更具体地,实施方式与在视频编解码中限制最小可用块大小的系统和方法相关。
根据本申请的第一方面,一种对视频数据进行解码的方法包括:从比特流接收编码有编解码树节点的数据,其中编解码树节点与预定义的拆分方法相关联;确定编解码树节点的模式类型,包括:根据确定编解码树节点是以4:4:4或4:0:0色度子采样格式编码的,将编解码树节点设置为第一模式类型;根据确定编解码树节点是以4:2:2或4:2:0色度子采样格式编码的并且编解码树节点是最小色度帧内预测单元(SCIPU):如果编解码树节点的亮度块和拆分方法满足第一标准,则将编解码树节点设置为第二模式类型;以及如果编解码树节点的亮度块和拆分方法满足第二标准,则将编解码树节点设置为第三模式类型;以及基于模式类型对编解码树单元进行解码,包括:根据确定编解码树节点是第二模式:使用帧内预测模式对编解码树节点中的每个编解码块进行解码,根据确定编解码树节点是第一模式或第三模式:从比特流接收指示与编解码树节点相关联的预测模式的语法元素:根据确定语法元素具有第一值:使用帧间预测模式对编解码树节点中的每个编解码块进行解码;以及根据确定语法元素具有第二值:使用帧内预测模式对编解码树节点中的每个编解码块进行解码。
根据本申请的第二方面,一种电子装置包括一个或多个处理单元、存储器以及存储在存储器中的多个程序。程序当由一个或多个处理单元执行时使电子装置执行如上文描述的对视频数据进行解码的方法。
根据本申请的第三方面,一种非暂态计算机可读存储介质存储用于由具有一个或多个处理单元的电子装置执行的多个程序。程序当由一个或多个处理单元执行时使电子装置执行如上文描述的对视频数据进行解码的方法。
附图说明
附图,其被包括以提供对实施方式的进一步理解并且并入本文并构成说明书的一部分,图示了所描述的实施方式并且与描述一起用于解释基本原理。相似的参考标号指代对应的部分。
图1是图示了根据本公开的一些实施方式的示例性视频编码和解码系统的框图。
图2是图示了根据本公开的一些实施方式的示例性视频编码器的框图。
图3是图示了根据本公开的一些实施方式的示例性视频解码器的框图。
图4A至图4E是图示了根据本公开的一些实施方式的如何将帧递归地分割成具有不同大小和形状的多个视频块的框图。
图5是图示了根据本公开的一些实施方式的最小色度帧内预测单元(SCIPU)的示例的框图。
图6A至图6C是图示了根据本公开的一些实施方式的在VVC中支持的色度格式的示例的框图。
图7是图示了根据本公开的一些实施方式的各种色度格式的最小色度帧内预测单元(SCIPU)的示例的框图。
图8是图示了根据本公开的一些实施方式的示例性过程的流程图,视频解码器通过该过程实施解码最小色度帧内预测单元(SCIPU)的技术。
具体实施方式
现在将详细参考具体实施方式,其示例在附图中图示。在以下详细描述中,阐述了许多非限制性的具体细节,以便帮助理解本文提出的主题。但是对于本领域的普通技术人员将明显的是,在不脱离权利要求的范围的情况下,可以使用各种替代性方案,并且可以在没有这些具体细节的情况下实践主题。例如,对于本领域的普通技术人员将明显的是,本文提出的主题可以在具有数字视频能力的许多类型的电子设备上实施。
图1是图示了根据本公开的一些实施方式的用于并行地对视频块进行编码和解码的示例性系统10的框图。如图1所示,系统10包括源设备12,源设备12生成并且编码待由目的地设备14在稍后时间解码的视频数据。源设备12和目的地设备14可以包括多种电子设备中的任何电子设备,包括台式计算机或膝上型计算机、平板计算机、智能电话、机顶盒、数字电视、相机、显示设备、数字媒体播放器、视频游戏机、视频流式传输设备等。在一些实施方式中,源设备12和目的地设备14配备有无线通信能力。
在一些实施方式中,目的地设备14可以经由链路16接收待解码的已编码视频数据。链路16可以包括能够将已编码视频数据从源设备12移动到目的地设备14的任何类型的通信介质或设备。在一个示例中,链路16可以包括用于使源设备12能够实时地将已编码视频数据直接传输到目的地设备14的通信介质。已编码视频数据可以根据诸如无线通信协议等通信标准被调制,并且被传输到目的地设备14。通信介质可以包括任何无线或有线通信介质,诸如射频(RF)频谱或者一条或多条物理传输线。通信介质可以形成基于分组的网络(诸如局域网、广域网、或全球网,诸如互联网)的一部分。通信介质可以包括路由器、交换机、基站、或可以用于促进从源设备12到目的地设备14的通信的任何其他装备。
在一些其他实施方式中,已编码视频数据可以从输出接口22传输到存储设备32。随后,存储设备32中的已编码视频数据可以由目的地设备14经由输入接口28访问。存储设备32可以包括各种分布式或本地访问的数据存储介质中的任何数据存储介质,诸如硬盘驱动器、蓝光光盘、DVD、CD-ROM、闪速存储器、易失性存储器或非易失性存储器、或用于存储已编码视频数据的任何其他合适的数字存储介质。在进一步的示例中,存储设备32可以对应于文件服务器或可以保持由源设备12生成的已编码视频数据的另一个中间存储设备。目的地设备14可以经由流式传输或下载从存储设备32访问所存储的视频数据。文件服务器可以是能够存储已编码视频数据并且将已编码视频数据传输到目的地设备14的任何类型的计算机。示例性文件服务器包括web服务器(例如,用于网站)、FTP服务器、网络附加存储(NAS)设备、或本地磁盘驱动器。目的地设备14可以通过任何标准数据连接来访问已编码视频数据,标准数据连接包括适于访问存储在文件服务器上的已编码视频数据的无线信道(例如,Wi-Fi连接)、有线连接(例如,DSL、电缆调制解调器等)、或两者的组合。已编码视频数据从存储设备32的传输可以是流式传输、下载传输、或两者的组合。
如图1所示,源设备12包括视频源18、视频编码器20和输出接口22。视频源18可以包括诸如以下各项的源或此类源的组合:视频捕获设备(例如,摄像机)、包含先前捕获的视频的视频档案、用于从视频内容提供方接收视频的视频馈送接口、和/或用于生成计算机图形数据作为源视频的计算机图形系统。作为一个示例,如果视频源18是安全监控系统的摄像机,则源设备12和目的地设备14可以形成相机电话或视频电话。然而,本申请中描述的实施方式可以一般性地适用于视频编解码,并且可以应用于无线和/或有线应用。
捕获的、预先捕获的、或计算机生成的视频可以由视频编码器20编码。已编码视频数据可以经由源设备12的输出接口22直接传输到目的地设备14。已编码视频数据也可以(或替代性地)存储到存储设备32上,以供目的地设备14或其他设备以后访问,用于解码和/或回放。输出接口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的运动矢量:将该PU的位置与从第一参考帧列表(列表0)或第二参考帧列表(列表1)中选择的参考帧的预测块的位置进行比较,第一参考帧列表和第二参考帧列表中的每一个参考帧列表标识存储在DPB 64中的一个或多个参考帧。运动估计单元42将计算的运动矢量发送到运动补偿单元44,并且然后发送到熵编码单元56。
由运动补偿单元44执行的运动补偿可以涉及基于由运动估计单元42确定的运动矢量来获取或生成预测块。一经接收到针对当前视频块的PU的运动矢量,运动补偿单元44可以在参考帧列表之一中定位运动矢量所指向的预测块,从DPB 64取得预测块,并且将预测块转发到加法器50。加法器50然后通过从被编解码的当前视频块的像素值中减去由运动补偿单元44提供的预测块的像素值,来形成像素差值的残差视频块。形成残差视频块的像素差值可以包括亮度差分量或色度差分量或两者。运动补偿单元44还可以生成与视频帧的视频块相关联的语法元素,以供视频解码器30在对视频帧的视频块进行解码时使用。语法元素可以包括,例如,定义用于标识预测块的运动矢量的语法元素、指示预测模式的任何标志、或本文描述的任何其他语法信息。注意,运动估计单元42和运动补偿单元44可以是高度集成的,但是出于概念性目的而分别图示。
在一些实施方式中,帧内BC单元48可以按照与上文结合运动估计单元42和运动补偿单元44所描述的方式相类似的方式来生成矢量并且获取预测块,但是预测块与被编解码的当前块处于同一帧中,并且矢量被称为块矢量而不是运动矢量。具体地,帧内BC单元48可以确定帧内预测模式以用于对当前块进行编码。在一些示例中,帧内BC单元48可以例如在多个单独的编码遍次期间使用各种帧内预测模式对当前块进行编码,并且通过率失真分析来测试它们的性能。接下来,帧内BC单元48可以在各种经测试的帧内预测模式中选择适当的帧内预测模式来使用,并相应地生成帧内模式指示符。例如,帧内BC单元48可以使用针对各种经测试的帧内预测模式的率失真分析来计算率失真值,并且在经测试的模式中选择具有最佳率失真特性的帧内预测模式作为要使用的适当帧内预测模式。率失真分析通常确定已编码块与被编码以产生已编码块的原始未编码块之间的失真(或误差)量、以及用于产生已编码块的比特率(即,比特数)。帧内BC单元48可以根据针对各种已编码块的失真和速率来计算比率,以确定哪个帧内预测模式展现出针对块的最佳率失真值。
在其他示例中,帧内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,或被存档在存储设备32中,以供以后传输到视频解码器30或由视频解码器30取得。熵编码单元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),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)来生成帧的已编码表示。视频帧可以包括从左到右以及从上到下以光栅扫描顺序连续排序的整数个CTU。每个CTU是最大的逻辑编解码单元,并且CTU的宽度和高度由视频编码器20在序列参数集中用信号传输,使得视频序列中的所有CTU具有相同的大小,即128×128、64×64、32×32和16×16之一。但是应当指出,本申请不是必然限于特定的大小。如图4B所示,每个CTU可以包括亮度样点的一个编解码树块(CTB)、色度样点的两个对应的编解码树块、以及用于对编解码树块的样点进行编解码的语法元素。语法元素描述像素的编解码块的不同类型的单元的属性以及如何可以在视频解码器30处重建视频序列,语法元素包括帧间预测或帧内预测、帧内预测模式、运动矢量和其他参数。在单色图片或具有三个单独色彩平面的图片中,CTU可以包括单个编解码树块和用于对编解码树块的样点进行编解码的语法元素。编解码树块可以是N×N的样点块。
为了实现更好的性能,视频编码器20可以对CTU的编解码树块递归地执行树分割,诸如二叉树分割、三叉树分割、四叉树分割或两者的组合,并且将CTU划分为更小的编解码单元(CU)。如图4C描绘的,64×64的CTU 400首先被划分为四个更小的CU,每个CU具有32×32的块大小。在四个更小的CU中,CU 410和CU 420按块大小各自被划分为四个16×16的CU。两个16×16的CU 430和CU 440按块大小各自进一步被划分为四个8×8的CU。图4D描绘了四叉树数据结构,四叉树数据结构图示了如图4C中所描绘的CTU 400的分割过程的最终结果,四叉树的每个叶节点对应于相应大小在32×32至8×8范围内的一个CU。类似于图4B描绘的CTU,每个CU可以包括亮度样点的编解码块(CB)和相同大小的帧的色度样点的两个对应的编解码块,以及用于对编解码块的样点进行编解码的语法元素。在单色图片或具有三个单独色彩平面的图片中,CU可以包括单个编解码块和用于对编解码块的样点进行编解码的语法结构。应当指出,图4C和图4D中描绘的四叉树分割仅用于说明目的,并且一个CTU可以基于四叉树/三叉树/二叉树分割被拆分为CU以适应不同的局部特性。在多类型树结构中,一个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的亮度系数块。系数块可以是变换系数的二维阵列。变换系数可以是标量。视频编码器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可以重建帧。
如上文指出的,视频编解码主要使用两种模式,也即,帧内预测(或帧内部预测)和帧间预测(或帧之间预测)来实现视频压缩。基于调色板的编解码是许多视频编解码标准已经采用的另一编解码方案。在可能特别适用于屏幕生成内容编解码的基于调色板的编解码中,视频编解码器(例如,视频编码器20或视频解码器30)形成颜色的调色板表,其表示给定块的视频数据。调色板表包括给定块中最主导的(例如,频繁使用的)像素值。给定块的视频数据中不频繁表示的像素值不被包括在调色板表中,或者作为逃逸颜色被包括在调色板表中。
调色板表中的每个条目包括用于调色板表中的对应像素值的索引。用于块中样点的调色板索引可以被编解码,以指示来自调色板表中的哪个条目要用于预测或重建哪个样点。该调色板模式开始于为图片、条带、瓦片、或视频块的其他此类分组的第一块生成调色板预测值的过程。如下文将解释的,用于后续视频块的调色板预测值典型地通过更新先前使用的调色板预测值来生成。出于说明的目的,假设调色板预测值是在图片级别定义的。换句话说,图片可以包括多个编解码块,每个编解码块具有自己的调色板表,但是对于整个图片有一个调色板预测值。
为了减少在视频比特流中用信号传输调色板条目所需的比特,视频解码器可以利用调色板预测值来确定用于重建视频块的调色板表中的新调色板条目。例如,调色板预测值可以包括来自先前使用的调色板表的调色板条目,或者甚至可以通过包括最近使用的调色板表的所有条目来用最近使用的调色板表初始化。在一些实施方式中,调色板预测值可以包括少于来自最近使用的调色板表的所有条目,并且然后包含来自其他先前使用的调色板表的一些条目。调色板预测值可以具有与用于对不同块进行编解码的调色板表相同的大小,或者可以比用于对不同块进行编解码的调色板表更大或更小。在一个示例中,调色板预测值被实施为包括64个调色板条目的先进先出(FIFO)表。
为了从调色板预测值生成用于视频数据块的调色板表,视频解码器可以从已编码视频比特流接收用于调色板预测值的每个条目的一比特标志。该一比特标志可以具有第一值(例如,二进制一)或者第二值(例如,二进制零),第一值指示调色板预测值的相关联条目将被包括在调色板表中,第二值指示调色板预测值的相关联条目将不被包括在调色板表中。如果调色板预测值的大小大于用于视频数据块的调色板表,则一旦达到针对调色板表的最大大小,视频解码器可以停止接收更多的标志。
在一些实施方式中,调色板表中的一些条目可以在已编码视频比特流中直接用信号传输,而不是使用调色板预测值来确定。对于这种条目,视频解码器可以从已编码视频比特流接收三个单独的m比特值,它们指示针对与条目相关联的亮度分量和两个色度分量的像素值,其中m表示视频数据的比特深度。与直接用信号传输的调色板条目所需的多个m比特值相比,从调色板预测值得到的那些调色板条目只需要一比特标志。因此,使用调色板预测值用信号传输一些或所有调色板条目可以显著减少用信号传输新调色板表的条目所需的比特数,从而提高调色板模式编解码的整体编解码效率。
在许多实例中,用于一个块的调色板预测值是基于用于对一个或多个先前编解码的块进行编解码的调色板表来确定的。但是,当对图片、条带或瓦片中的第一编解码树单元进行编解码时,先前编解码的块的调色板表可能不可用。因此,调色板预测值无法使用先前使用的调色板表的条目来生成。在这种情况下,调色板预测值初始化值序列可以在序列参数集(SPS)和/或图片参数集(PPS)中被用信号传输,这些初始化值是当先前使用的调色板表不可用时用于生成调色板预测值的值。SPS通常是指语法元素的一种语法结构,这些语法元素应用于被称为已编解码视频序列(CVS)的一系列连续的编解码视频图片,其由在PPS中找到的语法元素的内容所确定,该内容由在每个条带分段头部中找到的语法元素所引用。PPS通常是指应用于CVS内的一个或多个单独图片的语法元素的语法结构,其由在每个条带分段头部中找到的语法元素所确定。因此,SPS通常被认为是比PPS更高级别的语法结构,这意味着与PPS中包括的语法元素相比,SPS中包括的语法元素通常较不频繁地变化并且应用于视频数据的更大部分。
图5是图示了根据本公开的一些实施方式的最小色度帧内预测单元(SCIPU)的示例的框图。
在典型的硬件视频编码器和解码器中,因为相邻帧内块之间的样点处理数据依赖性,当图片具有大量小帧内块时,处理吞吐量下降。帧内块的预测值生成需要来自相邻块的顶部和左侧边界重建样点。因此,帧内预测必须逐块顺序处理。
在HEVC中,最小帧内CU是8×8亮度样点。最小帧内CU的亮度分量可以进一步拆分成四个4×4亮度帧内预测单元(PU),但是最小帧内CU的色度分量不能被进一步拆分。因此,当4×4色度帧内块或4×4亮度帧内块被处理时,出现最坏情况下的硬件处理吞吐量。
在VTM5.0中,在双树中,2×2/4×2/2×4色度块已经在双树中被禁用。然而,在VTM5的单编解码树中,因为色度分割总是跟随亮度并且最小帧内CU是4×4亮度样点,所以最小色度帧内CB是2×2。因此,在VTM5.0中,单编解码树中的最小色度帧内CB是2×2。针对VVC解码的最坏情况下硬件处理吞吐量仅为针对HEVC解码的最坏情况下硬件处理吞吐量的1/4。此外,在采用包括交叉分量线性模型(CCLM)、4抽头插值滤波器、位置相关帧内预测组合(PDPC)和组合帧间帧内预测(CIIP)的工具之后,色度帧内CB的重建过程变得比HEVC中的重建过程复杂得多。在硬件解码器中实现高处理吞吐量具有挑战性。在本文稿中,提出了两种提高最坏情况下硬件处理吞吐量的方法。
SCIPU方案的目标是通过约束色度帧内CB的分割而不准许小于16个色度样点的色度帧内CB。
在单编解码树中,SCIPU被定义为这样的编解码树节点:其色度块大小大于或等于16个色度样点并且具有至少一个小于4*16个亮度样点的子亮度块。被要求的是在每个SCIPU中,所有的CB都是帧间的,或者所有的CB都是非帧间的,即帧内或帧内块复制(IBC)。IBC的细节可以参考(http://phenix.int-evry.fr/jvet/处的文档JVET-N1002)。在非帧间SCIPU的情况下,进一步要求非帧间SCIPU的色度不应被进一步拆分,并且允许SCIPU的亮度被进一步拆分。以该方式,最小色度帧内CB大小是16个色度样点,并且去除了2×2、2×4和4×2色度CB。另外,在非帧间SCIPU的情况下,不应用色度缩放。
图5示出了两个SCIPU示例。8×4色度样点的色度CB 502和对应的亮度CB(对应于色度CB 502(a)、502(b)和502(c)的亮度CB)形成一个SCIPU,因为从8×4色度样点拆分出的三叉树(TT)将导致小于16个色度样点的色度CB(例如,色度CB 502(a)和502(c))。4×4色度样点的色度CB 504(a)(8×4色度样点的色度CB 504的左侧)和与色度CBS 504(c)、504(d)和504(e)相对应的三个亮度CB形成一个SCIPU,并且4×4样点的色度CB 504(b)(8×4色度样点的右侧)和两个亮度CB(例如,对应于色度CB 504(g)和504(b)的亮度CB)形成一个SCIPU,因为从4×4色度样点拆分出的二叉树(BT)将导致小于16个色度样点的色度CB(例如,色度CB 504(g)和504(f))。
如果当前条带是I条带或者当前SCIPU在进一步拆分一次后具有4×4亮度分割在其中,则SCIPU的类型被推断为非帧间(因为在VVC中不允许帧间4×4);否则,在解析SCIPU中的CU之前,SCIPU的类型(帧间或非帧间)由一个信号传输的标志来指示。在VVC草案规范的第6版中,SCIPU类型的推导在下表1中被说明。modeTypeCondition 1被定义为具有类型“非帧间”的SCIPU,而modeTypeCondition 2被定义为具有类型“帧间或非帧间”的SCIPU,并且一个标志“mode_constraint_flag”被用信号传输到比特流中以指示相关联的SCIPU是使用帧间还是非帧间。modeTypeCondition 0表示当前CU拆分节点不是SCIPU时的条件。表2中所有变量的定义可以参考VVC草案规范的第6版(http://phenix.int-evry.fr/jvet/处的文档JVET-O2001)。要指出的是,cbWidth和cbHeight分别是亮度样点中编解码块的宽度和高度。
Figure BDA0003504781010000181
表1
通过应用上文描述的SCIPU方案,当4×4、2×8或8×2色度块而不是2×2色度块被处理时,出现最坏情况下的硬件处理吞吐量。最坏情况下的硬件处理吞吐量与HEVC中的最坏情况下的硬件处理吞吐量相同,并且是在VTM5.0中的最坏情况下的硬件处理吞吐量的4倍。
图6A至图6C是图示了根据本公开的一些实施方式的在VVC中支持的色度格式(例如,也称为色度子采样格式)的示例的框图。下面的表2示出了针对不同色度格式的信息。例如,变量SubWidthC和SubHeightC用于指定亮度块的宽度和高度与其相关联的色度块之比。
Figure BDA0003504781010000191
表2
在单色采样中,只有一个样点阵列,其在名义上被认为是亮度阵列。
在4:2:0采样中,两个色度阵列中的每一个色度阵列具有亮度阵列的一半高度和一半宽度。
在4:2:2采样中,两个色度阵列中的每一个色度阵列具有亮度阵列的相同高度和一半宽度。
在4:4:4采样中,取决于separate_colour_plane_flag的值,以下适用:如果separate_colour_plane_flag等于0,则两个色度阵列中的每一个色度阵列具有与亮度阵列相同的高度和宽度。否则(separate_colour_plane_flag等于1),三个颜色平面作为单色采样图片单独处理。
当chroma_format_idc的值等于1时,图片中亮度样点和色度样点的标称垂直和水平相对位置在图6A中示出。替代性的色度样点相对位置可以在视频可用性信息中指示。
当chroma_format_idc的值等于2时,色度样点与对应的亮度样点是同位的,并且图片中的标称位置如图6B中示出。
当chroma_format_idc的值等于3时,对于所有图片情况,所有阵列样点都是同位的,并且图片中的标称位置如图6C中示出。
图7是图示了根据本公开的一些实施方式的各种色度格式的SCIPU的示例的框图。
当SCIPU的概念被采纳到VVC中时,该设计只考虑了色度格式4:2:0。其他色度格式未被考虑,并且该设计因此对用于除了4:2:0之外的色度格式(例如4:4:4和4:2:2)的帧内色度块的大小强加了过度限制性的规则。具体地,当SCIPU被提出时,其被定义为这样的编解码树节点:它的色度块大小大于或等于16个色度样点,并且具有至少一个小于4×16个亮度样点的子亮度块。使用4x亮度样点(例如,当块以4:2:0色度格式被编码时,存在四倍于色度样点的亮度样点)来定义SCIPU仅在色度格式为4:2:0时才能正确工作。在当前VVC中,无论使用什么色度格式,色度大小限制总是通过SCIPU方案被应用,并且假设色度格式是4:2:0,这意味着色度块的宽度和高度两者是相关联亮度块的宽度和高度的一半。
此外,调色板模式在第15届JVET会议上被新采纳到VVC中(参考http://phenix.int-evry.fr/jvet/处的文档JVET-O0119),并且当SCIPU的模式被用信号传输为帧间时,在该SCIPU内仅允许帧间模式并且色度块因此可以被拆分成小块,诸如2×4或4×2色度块。当非帧间被用信号传输为SCIPU的模式或者SCIPU的modeTypeCondition为非帧间(例如modeTypeCondition=0)时,只有帧内预测模式、IBC模式和调色板模式被允许用于SCIPU,并且色度块不能被拆分成小色度块,诸如2×2、2×4或4×2。然而,对于调色板模式,不需要来自左侧和上方相邻重建像素的信息,并且因此调色板模式应当被视为允许色度块被拆分成小色度块的模式。
在一些实施例中,SCIPU被定义为这样的编解码树节点:其色度块大小大于或等于N个色度样点,并且在一个进一步CU拆分的情况下具有至少一个小于K×N个亮度样点的子亮度块。N可以为任何正整数(例如16),并且对于色度格式4:2:0(chroma_format_idc=1),K为4,对于色度格式4:2:2,K为2,并且对于色度格式4:4:4,K为1。要指出的是,对于色度格式4:4:4,K=1意味着SCIPU未启用。
在一些实施例中,SCIPU被定义为这样的编解码树节点:其色度块大小大于或等于N个色度样点,并且在一个进一步CU拆分的情况下具有至少一个小于N个亮度样点的子色度块。N可以为任何正整数(例如16)。例如,在图7中,SCIPU 702是有效的SCIPU,因为根据预定义的拆分方法(例如,二元垂直拆分)来拆分编解码树节点将导致具有少于16个色度样点的色度分量(例如,具有2×4色度样点的色度分量)。SCIPU 704是有效的SCIPU,因为根据预定义的拆分方法(例如,三元垂直拆分)来拆分CB将导致具有少于16个色度样点的色度分量(例如,具有2×2色度样点的色度分量)。SCIPU 706是有效的SCIPU,因为用预定义的拆分方法(例如,三元垂直拆分)来拆分CB将导致具有少于16个色度样点的色度分量(例如,具有4×2色度样点的色度分量)。
如果当前条带是I条带或者当前SCIPU在进一步拆分一次后具有4×4亮度分割在其中,则推断SCIPU的类型为非帧间(因为在VVC中不允许帧间4×4);否则,在解析SCIPU中的CU之前,SCIPU的类型(帧间或非帧间)由一个被信号传输的标志来指示。
当色度格式为4:4:4(chroma_format_idc=3)时,一个块内的色度样点数量和亮度样点数量相同,并且因此当色度格式为4:4:4时,不需要对色度块强加任何大小限制。例如,对于使用四叉树拆分的8×8SCIPU,由于其包含通过四叉树拆分所分割的四个4×4亮度块,因此根据当前设计,SCIPU的类型被推断为非帧间(参见上表1)。此外,根据当前设计,非帧间类型的SCIPU不允许色度块(在该示例中为8×8色度块)被进一步拆分。此外,显而易见的是,对色度块的大小约束是过度限制性的,因为8×8帧内色度块可以被拆分成四个4×4帧内色度块,而不会引入附加吞吐量问题。根据第二实施例,提出在已编解码图片为色度格式4:4:4时,禁用SCIPU方案。下表3中说明了规范的一个示例。
Figure BDA0003504781010000211
表3:所提出的方法的规范的示例另外地考虑色度格式4:4:4
当色度格式为4:2:2(chroma_format_idc=2)时,一个块内的色度样点的高度与亮度样点的高度相同,但色度样点的宽度是亮度样点的宽度的一半,并且因此当色度格式为4:2:2时,必须相应地修改针对SCIPU的modeTypeCondition的推导。根据本公开中的第三实施例,提出了在应用SCIPU方案时考虑色度格式4:2:2以避免过度限制色度帧内块大小。具体地,SCIPU被定义为这样的编解码树节点:其色度块大小大于或等于十六个色度样点,并且在一个进一步拆分的情况下具有至少一个小于16个色度样点的子色度块。在表4中说明了基于VVC规范对格式4:2:2所提出的限制的示例。在修改的modeTypeCondition推导方法中,针对用于非帧间类型SCIPU的色度格式4:2:2添加了五个更多的条件。例如,应用了四叉树CU拆分的8×8块被认为是SCIPU,因为它的子块包括小于16个色度样点的色度块(对于4:2:2色度格式,其包含四个4×4亮度块和四个2×4色度块)。此外,由于其子块包括4×4亮度块,因此该SCIPU被认为是非帧间类型的SCIPU。类似地,利用TT水平拆分(SPLIT_TT_VER)的16×4块也被认为是非帧间类型的SCIPU,因为其子块包括4×4亮度块和小于16个色度样点的色度块(其包含两个4×4亮度块和一个8×4亮度块、两个2×4色度块和一个4×4色度块)。更多的示例可以参考下表4。
Figure BDA0003504781010000231
表4:所提出的方法的规范的示例另外地考虑色度格式4:2:2
要指出的是,宽度*高度等于64的CU在当前的VVC中可能是8×8、16×4或4×16。8×8CU是可以应用四叉树拆分(split_qt_flag等于1)的仅有的大小。三叉树(TT)拆分不允许用于8×8CU。此外,仅SPLIT_TT_VER被允许用于当前VVC中的16×4CU,并且仅SPLIT_TT_HOR被允许用于4×16CU。类似地,宽度*高度等于32的CU在当前的VVC中可能是8×4或4×8。仅SPLIT_BT_VER被允许用于8×4CU,并且仅SPLIT_BT_HOR被允许用于4×8CU。因此,modeTypeCondition的推导可以从表4简化到下面示出的表5,并且要指出的是,表4和表5中的推导方法将在当前的VVC中导致相同的modeTypeCondition。
Figure BDA0003504781010000241
表5:所提出的方法的规范的示例另外地考虑色度格式4:2:2
当色度格式为单色(chroma_format_idc=0)时,一个块内没有色度样点,因此当色度格式为单色时,不需要对色度块强加任何大小限制。根据本公开中的第四实施例,提出了在应用SCIPU方案时考虑色度格式单色以避免过度限制帧内块大小。下表6中说明了规范的一个示例。
Figure BDA0003504781010000251
表6:所提出的方法的规范的示例另外地考虑色度格式单色
为了全部一起考虑色度格式单色、4:2:0、4:4:4和4:2:2用于modeTypeCondition的推导,下表7中给出了示例规范。
Figure BDA0003504781010000261
表7:所提出的方法的规范的示例考虑色度格式单色、4:2:0、4:4:4和4:4:2
要指出的是,表7可以进一步简化为下面示出的表8,而不改变modeTypeCondition推导的功能。
Figure BDA0003504781010000271
表8:所提出的方法的规范的示例考虑色度格式单色、4:2:0、4:4:4和4:4:2
在一些实施例中,提出了当非帧间被用信号传输为SCIPU的模式或者SCIPU的modeTypeCondition为非帧间(例如modeTypeCondition=0)时,只有帧内预测模式、IBC被允许用于SCIPU内的CU,并且色度块不可以被拆分成小色度块,诸如2×2、2×4或4×2。否则,当帧间被用信号传输为SCIPU的模式时,帧间模式和调色板模式被允许用于SCIPU内的CU,并且色度块可以被拆分成小色度块,诸如2×2、2×4或4×2。要指出的事,模式的命名可以相应地从“非帧间”重命名为“帧内+ibc”,并且从“帧间”重命名为“帧间+plt”以避免混淆。
图8是图示了根据本公开的一些实施方式的示例性过程800的流程图,视频解码器30通过示例性过程800实施解码最小色度帧内预测单元(SCIPU)的技术。
作为第一步骤,视频解码器30从比特流接收编码有编解码树节点的数据,其中编解码树节点与预定义的拆分方法(例如,水平/垂直二元拆分、水平/垂直三元拆分等)相关联(810)。参考图4E和针对预定义拆分方法的示例的相关描述。
视频解码器30然后按以下方式确定编解码树节点的模式类型(例如,设置与编解码树节点相关联的modeTypeCondition标志)(820):根据确定编解码树节点是以4:4:4或4:0:0色度子采样格式编码的,视频解码器30将编解码树节点设置为第一模式类型(例如,modeTypeCondition==0,指示编解码树节点不是SCIPU)(830);以及根据确定编解码树节点是以4:2:2或4:2:0色度子采样格式编码的,并且编解码树节点是最小色度帧内预测单元(SCIPU)(840):如果编解码树节点的亮度块和拆分方法满足第一标准(例如,“modeTypeCondition==1”意味着利用拆分方法来拆分编解码树节点的亮度块将导致具有等于16个亮度样点的块大小的子亮度块;因此,预测模式被推断为“帧内”,并且没有预测模式的语法元素被用信号传输),则视频解码器30将编解码树节点设置为第二模式类型(例如,modeTypeCondition==1)(840-1);并且如果编解码树节点的亮度块和拆分方法满足第二标准(例如,“modeTypeCondition==2”意味着利用拆分方法来拆分编解码树节点的亮度块不会导致具有等于16个亮度样点的块大小的子亮度块,并且预测模式的语法元素被用信号传输),则视频解码器30将编解码树节点设置为第三模式类型(例如,modeTypeCondition==2)(840-2)。
在设置模式类型之后,视频解码器30按以下方式基于模式类型对编解码树单元进行解码(850):根据确定编解码树节点是第二模式(例如,对于SCIPU的非帧间模式,modeTypeCondition==1):视频解码器30使用帧内预测模式对编解码树节点中的每个编解码块进行解码(860);并且根据确定编解码树节点是第一模式(例如,不是SCIPU)或第三模式(例如,对于SCIPU的非帧间)(870):视频解码器30从比特流接收指示与编解码树节点相关联的预测模式的语法元素(例如,mode_constraint_flag)(880)。
在接收到语法元素之后,根据确定语法元素具有第一值(例如,mode_constraint_flag==0):视频解码器30使用帧间预测模式对编解码树节点中的每个编解码块进行解码(880-1);并且根据确定语法元素具有第二值(例如,mode_constraint_flag==1):视频解码器30使用帧内预测模式对编解码树节点中的每个编解码块进行解码(880-2)。
在一些实施例中,当编解码树节点是第一模式类型时,编解码树节点的色度块可以被进一步拆分。
在一些实施例中,当编解码树节点是第二模式类型时,编解码树节点的色度块不能被进一步拆分。
在一些实施例中,当编解码树节点是第三模式类型并且预测模式指示当前编解码树节点是帧内模式时,编解码树节点的色度块不能被进一步拆分。
在一些实施例中,当编解码树节点是第三模式类型并且预测模式指示当前编解码树节点不是帧内模式时,编解码树节点的色度块可以被进一步拆分。
在一些实施例中,如果编解码树节点的色度块具有色度块,并且利用拆分方法来拆分色度块将导致子色度块违反帧内色度块的最小大小限制(例如,具有小于16个色度样点的子色度块大小),则编解码树节点是SCIPU。
在一些实施例中,如果利用拆分方法来拆分编解码树节点的亮度块将导致具有等于16个亮度样点的块大小的子亮度块,则编解码树节点的亮度块和拆分方法满足第一标准。
在一些实施例中,如果有以下项,则编解码树节点的亮度块和拆分方法满足第一标准:亮度块的大小为64个亮度样点,并且拆分方法为四元拆分(例如,如表9中示出的:cbWidth*cbHeight等于64,并且split_qt_flag等于1,并且chroma_format_idc等于1或2);亮度块的大小为64个亮度样点,并且拆分方法为水平或垂直三元拆分(例如,如表9中示出的:cbWidth*cbHeight等于64,并且MttSplitMode[x0][y0][mttDepth]等于SPLIT_TT_HOR或SPLIT_TT_VER);或者亮度块的大小为32个亮度样点,并且拆分方法为水平或垂直二元拆分(例如,如表9中示出的:cbWidth*cbHeight等于32,并且MttSplitMode[x0][y0][mttDepth]等于SPLIT_BT_HOR或SPLIT_BT_VER)。
在一些实施例中,如果编解码树节点不在I-条带中,并且利用拆分方法来拆分编解码树节点的亮度块不会导致具有等于16个亮度样点的块大小的子亮度块(例如,所得到的子亮度块将大于16个亮度样点),则编解码树节点的亮度块和拆分方法满足第二标准。
在一些实施例中,如果编解码树节点不属于I-条带(例如,在表9中:slice_type!=I),并且:亮度块的大小为64个亮度样点且拆分方法为水平或垂直二元拆分(例如,在表9中:cbWidth*cbHeight等于64,并且MttSplitMode[x0][y0][mttDepth]等于SPLIT_BT_HOR或SPLIT_BT_VER,并且chroma_format_idc等于1);或者亮度块的大小为128个亮度样点,并且拆分方法为水平或垂直三元拆分(例如,在表9中:cbWidth*cbHeight等于128,并且MttSplitMode[x0][y0][mttDepth]等于SPLIT_TT_HOR或SPLIT_TT_VER,并且chroma_format_idc等于1),则编解码树节点的亮度块和拆分方法满足第二标准。
在一些实施例中,根据确定编解码树节点是以4:2:2或4:2:0色度子采样格式编码的并且不是SCIPU(例如,拆分色度块不会导致违反帧内色度块的最小大小限制),视频解码器30将编解码树节点设置为第一模式(例如,拆分不会导致小于16个色度样点的子色度块)。
在一个或多个示例中,所描述的功能可以在硬件、软件、固件或其任何组合中实施。如果在软件中实施,则功能可以作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质进行传输,并且由基于硬件的处理单元执行。计算机可读介质可以包括计算机可读存储介质或通信介质,计算机可读存储介质对应于诸如数据存储介质等有形介质,通信介质包括有助于例如根据通信协议将计算机程序从一个地方转移到另一个地方的任何介质。以这种方式,计算机可读介质通常可以对应于(1)非暂态的有形计算机可读存储介质或者(2)诸如信号或载波等通信介质。数据存储介质可以是任何可用介质,其可以被一个或多个计算机或者一个或多个处理器访问,以取得用于实施本申请中描述的实施方式的指令、代码和/或数据结构。计算机程序产品可以包括计算机可读介质。
在本文中实施方式的描述中使用的术语仅出于描述特定实施方式的目的,并且不旨在限制权利要求的范围。如实施方式的描述和所附权利要求中使用的,单数形式“一个”、“一种”和“该”旨在也包括复数形式,除非上下文另有明确指示。还将理解的是,本文所使用的术语“和/或”是指并涵盖相关联列举项目中的一个或多个项目的任何和所有可能组合。将进一步理解,当在本说明书中被使用时,术语“包括”和/或“包括有”指定所陈述的特征、元件和/或组件的存在,但不排除一个或多个其他特征、元件、组件和/或其群组的存在或添加。
还将理解,尽管术语第一、第二等在本文中可以用来描述各种元件,但是这些元件不应当受这些术语的限制。这些术语仅是用来将一个元件与另一个元件进行区分。例如,在不偏离实施方式的范围的情况下,第一电极可以被称为第二电极,并且类似地,第二电极可以被称为第一电极。第一电极和第二电极两者都是电极,但是它们不是同一电极。
本申请的描述已经出于说明和描述的目的被呈现,并且不旨在是穷举的或限于所公开的形式的发明。受益于前述描述和相关联附图中呈现的教导,许多修改、变体和替代实施方式对于本领域的普通技术人员将是明显的。实施例被选择并描述以便最好地解释本发明的原理、实际应用,并且使本领域的其他技术人员能够理解本发明的各种实施方式,并最好地利用基本原理以及具有适合于预期的特定用途的各种修改的各种实施方式。因此,将理解,权利要求的范围将不限于所公开的实施方式的具体示例,并且修改和其他实施方式旨在被包括在所附权利要求的范围内。

Claims (13)

1.一种用于对视频数据进行解码的方法,包括:
从比特流接收编码有编解码树节点的数据,其中所述编解码树节点与预定义的拆分方法相关联;
确定所述编解码树节点的模式类型,包括:
根据确定所述编解码树节点是以4:4:4或4:0:0色度子采样格式编码的,将所述编解码树节点设置为第一模式类型;
根据确定所述编解码树节点是以4:2:2或4:2:0色度子采样格式编码的,并且所述编解码树节点是最小色度帧内预测单元(SCIPU):
如果所述编解码树节点的亮度块和所述拆分方法满足第一标准,则将所述编解码树节点设置为第二模式类型;以及
如果所述编解码树节点的所述亮度块和所述拆分方法满足第二标准,则将所述编解码树节点设置为第三模式类型;以及
基于所述模式类型对所述编解码树单元进行解码,包括:
根据确定所述编解码树节点是所述第二模式:
使用帧内预测模式对所述编解码树节点中的每个编解码块进行解码,
根据确定所述编解码树节点是所述第一模式或所述第三模式:
从所述比特流接收指示与所述编解码树节点相关联的预测模式的语法元素:
根据确定所述语法元素具有第一值:使用帧间预测模式对所述编解码树节点中的每个编解码块进行解码;以及
根据确定所述语法元素具有第二值:使用帧内预测模式对所述编解码树节点中的每个编解码块进行解码。
2.如权利要求1所述的方法,其中当所述编解码树节点是所述第一模式类型时,所述编解码树节点的色度块能够被进一步拆分。
3.如权利要求1所述的方法,其中当所述编解码树节点是所述第二模式类型时,所述编解码树节点的色度块不能被进一步拆分。
4.如权利要求1所述的方法,其中当所述编解码树节点是所述第三模式类型,并且预测模式指示当前编解码树节点是帧内模式时,所述编解码树节点的色度块不能被进一步拆分。
5.如权利要求1所述的方法,其中当所述编解码树节点是所述第三模式类型,并且预测模式指示当前编解码树节点不是帧内模式时,所述编解码树节点的色度块能够被进一步拆分。
6.如权利要求1所述的方法,其中如果所述编解码树节点的色度块具有色度块,并且利用所述拆分方法来拆分所述色度块将导致子色度块违反帧内色度块的最小大小限制,则所述编解码树节点是SCIPU。
7.如权利要求1所述的方法,其中如果利用所述拆分方法来拆分所述编解码树节点的所述亮度块将导致具有等于16个亮度样点的块大小的子亮度块,则所述编解码树节点的所述亮度块和所述拆分方法满足所述第一标准。
8.如权利要求1所述的方法,如果以下项成立,则所述编解码树节点的所述亮度块和所述拆分方法满足所述第一标准:
所述亮度块的大小为64个亮度样点,并且所述拆分方法为四元拆分;
所述亮度块的大小为64个亮度样点,并且所述拆分方法为水平或垂直三元拆分;或者
所述亮度块的大小为32个亮度样点,并且所述拆分方法为水平或垂直二元拆分。
9.如权利要求1所述的方法,其中如果所述编解码树节点不在I-条带中,并且利用所述拆分方法来拆分所述编解码树节点的所述亮度块不会导致具有等于16个亮度样点的块大小的子亮度块,则所述编解码树节点的所述亮度块和所述拆分方法满足所述第二标准。
10.如权利要求1所述的方法,其中如果所述编解码树节点不属于I-条带并且以下项成立,则所述编解码树节点的所述亮度块和所述拆分方法满足所述第二标准:
所述亮度块的大小为64个亮度样点,并且所述拆分方法为水平或垂直二元拆分;或者
所述亮度块的大小为128个亮度样点,并且所述拆分方法为水平或垂直三元拆分。
11.如权利要求1所述的方法,进一步包括:
根据确定所述编解码树节点是以4:2:2或4:2:0色度子采样格式编码的并且不是所述SCIPU,将所述编解码树节点设置为所述第一模式。
12.一种电子装置,包括:
一个或多个处理单元;
存储器,耦接到所述一个或多个处理单元;以及
存储在所述存储器中的多个程序,所述多个程序当由所述一个或多个处理单元执行时,使所述电子装置执行如权利要求1至11所述的方法。
13.一种非暂态计算机可读存储介质,存储用于由具有一个或多个处理单元的电子装置执行的多个程序,其中所述多个程序当由所述一个或多个处理单元执行时,使所述电子装置执行如权利要求1至11所述的方法。
CN202080057598.1A 2019-08-15 2020-08-14 视频编解码中的小色度块大小限制 Pending CN114303385A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202310098532.2A CN116193131B (zh) 2019-08-15 2020-08-14 一种用于视频编码的方法、电子装置及存储介质
CN202210303132.6A CN114710679B9 (zh) 2019-08-15 2020-08-14 视频编解码中的小色度块大小限制

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201962887650P 2019-08-15 2019-08-15
US62/887,650 2019-08-15
US201962900424P 2019-09-13 2019-09-13
US62/900,424 2019-09-13
PCT/US2020/046501 WO2021030747A1 (en) 2019-08-15 2020-08-14 Small chroma block size restriction in video coding

Related Child Applications (4)

Application Number Title Priority Date Filing Date
CN202411201350.4A Division CN118842924A (zh) 2019-08-15 2020-08-14 一种用于视频编码的方法、电子装置及存储介质
CN202310098532.2A Division CN116193131B (zh) 2019-08-15 2020-08-14 一种用于视频编码的方法、电子装置及存储介质
CN202411200930.1A Division CN118842923A (zh) 2019-08-15 2020-08-14 一种用于视频解码的方法、电子装置及存储介质
CN202210303132.6A Division CN114710679B9 (zh) 2019-08-15 2020-08-14 视频编解码中的小色度块大小限制

Publications (1)

Publication Number Publication Date
CN114303385A true CN114303385A (zh) 2022-04-08

Family

ID=74571251

Family Applications (3)

Application Number Title Priority Date Filing Date
CN202210303132.6A Active CN114710679B9 (zh) 2019-08-15 2020-08-14 视频编解码中的小色度块大小限制
CN202080057598.1A Pending CN114303385A (zh) 2019-08-15 2020-08-14 视频编解码中的小色度块大小限制
CN202310098532.2A Active CN116193131B (zh) 2019-08-15 2020-08-14 一种用于视频编码的方法、电子装置及存储介质

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202210303132.6A Active CN114710679B9 (zh) 2019-08-15 2020-08-14 视频编解码中的小色度块大小限制

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202310098532.2A Active CN116193131B (zh) 2019-08-15 2020-08-14 一种用于视频编码的方法、电子装置及存储介质

Country Status (7)

Country Link
US (3) US12063375B2 (zh)
EP (1) EP4005215A4 (zh)
JP (2) JP7350988B2 (zh)
KR (2) KR102448518B1 (zh)
CN (3) CN114710679B9 (zh)
MX (1) MX2022001939A (zh)
WO (1) WO2021030747A1 (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021023261A1 (en) 2019-08-06 2021-02-11 Beijing Bytedance Network Technology Co., Ltd. Size restriction based on color format
EP4005215A4 (en) * 2019-08-15 2022-10-26 Beijing Dajia Internet Information Technology Co., Ltd. LOW CHROMINANCE BLOCK SIZE RESTRICTION IN VIDEO CODING
WO2021036939A1 (en) * 2019-08-23 2021-03-04 Mediatek Inc. Method and apparatus of partitioning small size coding units with partition constraints
US20220224890A1 (en) * 2019-08-23 2022-07-14 Hfi Innovation Inc. Method and Apparatus of Partitioning Small Size Coding Units with Partition Constraints
CN110798683B (zh) * 2019-08-26 2022-05-27 腾讯科技(深圳)有限公司 数据解码方法、装置和数据编码方法、装置
JP7381722B2 (ja) * 2019-09-02 2023-11-15 北京字節跳動網絡技術有限公司 カラーフォーマットに基づいたコーディングモード決定
CN118055248A (zh) 2019-09-21 2024-05-17 北京字节跳动网络技术有限公司 处理视频数据的方法、装置以及计算机可读记录介质

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2010116869A1 (ja) 2009-04-08 2012-10-18 シャープ株式会社 動画像符号化装置および動画像復号装置
KR101379188B1 (ko) * 2010-05-17 2014-04-18 에스케이 텔레콤주식회사 인트라 블록 및 인터 블록이 혼합된 코딩블록을 이용하는 영상 부호화/복호화 장치 및 그 방법
KR101678347B1 (ko) 2011-06-20 2016-11-21 가부시키가이샤 제이브이씨 켄우드 화상 부호화 장치, 화상 부호화 방법 및 화상 부호화 프로그램, 또한 화상 복호 장치, 화상 복호 방법 및 화상 복호 프로그램
US9185405B2 (en) * 2012-03-23 2015-11-10 Qualcomm Incorporated Coded block flag inference in video coding
US10440365B2 (en) * 2013-06-28 2019-10-08 Velos Media, Llc Methods and devices for emulating low-fidelity coding in a high-fidelity coder
KR102257269B1 (ko) * 2013-10-14 2021-05-26 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 비디오 및 이미지 코딩 및 디코딩을 위한 인트라 블록 카피 예측 모드의 피쳐
WO2015078304A1 (en) * 2013-11-27 2015-06-04 Mediatek Singapore Pte. Ltd. Method of video coding using prediction based on intra picture block copy
JP2015106747A (ja) 2013-11-28 2015-06-08 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
JP6268989B2 (ja) 2013-11-29 2018-01-31 富士通株式会社 動画像符号化装置、動画像符号化方法及び動画像符号化用コンピュータプログラム
JP6469588B2 (ja) * 2013-12-19 2019-02-13 シャープ株式会社 残差予測装置、画像復号装置、画像符号化装置、残差予測方法、画像復号方法、および画像符号化方法
WO2016074147A1 (en) * 2014-11-11 2016-05-19 Mediatek Singapore Pte. Ltd. Separated coding tree for luma and chroma
CN107409208B (zh) 2015-03-27 2021-04-20 索尼公司 图像处理装置、图像处理方法以及计算机可读存储介质
WO2016165623A1 (en) * 2015-04-13 2016-10-20 Mediatek Inc. Methods of constrained intra block copy for reducing worst case bandwidth in video coding
CN108713320B (zh) * 2016-03-16 2022-05-17 寰发股份有限公司 视频编码中限制块尺寸的视频数据处理方法与装置
PL3731527T3 (pl) * 2016-05-28 2023-01-09 Hfi Innovation Inc. Sposób i urządzenie do kodowania w trybie palety dla danych kolorowego wideo
EP4075798B1 (en) * 2016-10-04 2024-09-11 HFI Innovation Inc. Method and apparatus for intra chroma coding in image and video coding
WO2018066809A1 (ko) * 2016-10-04 2018-04-12 엘지전자(주) 크로마 성분 코딩 유닛 분할 방법 및 장치
US10880546B2 (en) * 2016-10-11 2020-12-29 Lg Electronics Inc. Method and apparatus for deriving intra prediction mode for chroma component
WO2019023200A1 (en) * 2017-07-24 2019-01-31 Arris Enterprises Llc INTRA-MODE JVET CODING
WO2019059676A1 (ko) * 2017-09-20 2019-03-28 한국전자통신연구원 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장한 기록 매체
US10609384B2 (en) 2017-09-21 2020-03-31 Futurewei Technologies, Inc. Restriction on sub-block size derivation for affine inter prediction
US10687071B2 (en) * 2018-02-05 2020-06-16 Tencent America LLC Method and apparatus for video coding
US11115660B2 (en) * 2018-04-30 2021-09-07 Mediatek Inc. Method and apparatus of syntax interleaving for separate coding tree in video coding
HUE064218T2 (hu) * 2018-08-28 2024-02-28 Huawei Tech Co Ltd Képfelosztási eljárás és eszköz
CN109600611B (zh) * 2018-11-09 2021-07-13 北京达佳互联信息技术有限公司 环路滤波方法、环路滤波装置、电子设备和可读介质
WO2020143684A1 (zh) 2019-01-08 2020-07-16 华为技术有限公司 图像预测方法、装置、设备、系统及存储介质
KR20240005108A (ko) * 2019-01-08 2024-01-11 후아웨이 테크놀러지 컴퍼니 리미티드 이미지 예측 방법, 장치 및 시스템, 디바이스 및 저장 매체
US11399199B2 (en) * 2019-08-05 2022-07-26 Qualcomm Incorporated Chroma intra prediction units for video coding
WO2021023261A1 (en) * 2019-08-06 2021-02-11 Beijing Bytedance Network Technology Co., Ltd. Size restriction based on color format
EP4005215A4 (en) * 2019-08-15 2022-10-26 Beijing Dajia Internet Information Technology Co., Ltd. LOW CHROMINANCE BLOCK SIZE RESTRICTION IN VIDEO CODING
JP7381722B2 (ja) * 2019-09-02 2023-11-15 北京字節跳動網絡技術有限公司 カラーフォーマットに基づいたコーディングモード決定

Also Published As

Publication number Publication date
KR102448518B1 (ko) 2022-09-27
CN116193131B (zh) 2023-10-31
EP4005215A1 (en) 2022-06-01
MX2022001939A (es) 2022-03-11
WO2021030747A1 (en) 2021-02-18
US20220224919A1 (en) 2022-07-14
EP4005215A4 (en) 2022-10-26
CN116193131A (zh) 2023-05-30
CN114710679B9 (zh) 2023-07-04
CN114710679B (zh) 2023-03-24
JP7350988B2 (ja) 2023-09-26
CN114710679A (zh) 2022-07-05
JP2022535162A (ja) 2022-08-04
US12063375B2 (en) 2024-08-13
US20240348803A1 (en) 2024-10-17
KR20220031749A (ko) 2022-03-11
JP2023166556A (ja) 2023-11-21
US20240348804A1 (en) 2024-10-17
KR20220133332A (ko) 2022-10-04

Similar Documents

Publication Publication Date Title
CN114710679B (zh) 视频编解码中的小色度块大小限制
US20220201301A1 (en) Methods and apparatus of video coding in 4:4:4 chroma format
US12075047B2 (en) Methods and apparatus of video coding in 4:4:4 color format
US20240244190A1 (en) Prediction mode signaling in video coding
CN114762329A (zh) 使用调色板模式的视频编解码的方法和装置
CN113906749A (zh) 色度残差联合编码方法和装置
CN115004706A (zh) 关于变换和系数信令的方法和装置
CN118842924A (zh) 一种用于视频编码的方法、电子装置及存储介质
CN118842923A (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