CN114598882A - Symmetric Intra Block Copy Mode - Google Patents
Symmetric Intra Block Copy Mode Download PDFInfo
- Publication number
- CN114598882A CN114598882A CN202111483742.0A CN202111483742A CN114598882A CN 114598882 A CN114598882 A CN 114598882A CN 202111483742 A CN202111483742 A CN 202111483742A CN 114598882 A CN114598882 A CN 114598882A
- Authority
- CN
- China
- Prior art keywords
- video
- sibc
- block
- codec
- color component
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/40—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/186—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/42—Methods 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
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
Description
技术领域technical field
本专利文档涉及数字视频编解码技术,包括视频编码、转码或解码。This patent document relates to digital video codec techniques, including video encoding, transcoding, or decoding.
背景技术Background technique
数字视频占互联网和其他数字通信网络上最大的带宽使用。随着能够接收和显示视频的连接用户设备的数量增加,预计数字视频使用的带宽需求将继续增长。Digital video accounts for the largest use of bandwidth on the Internet and other digital communication networks. Bandwidth requirements for digital video usage are expected to continue to grow as the number of connected user devices capable of receiving and displaying video increases.
发明内容SUMMARY OF THE INVENTION
本文档公开了为了根据文件格式处理视频或图像的编解码表示,可以由视频编码器和解码器使用的技术。This document discloses techniques that can be used by video encoders and decoders in order to process codec representations of video or images according to file formats.
在一个示例方面,公开了一种视频处理方法。该方法包括:执行在视频的包括两个或多个颜色分量块的视频块和视频的比特流表示之间的转换;其中,根据编解码规则,使用多种预测方法编解码两个或多个颜色分量块,多种预测方法中的至少一种是对称帧内块复制(Symmetric Intra Block Copy,SIBC)方法。In one example aspect, a video processing method is disclosed. The method includes performing a conversion between a video block of the video comprising two or more color component blocks and a bitstream representation of the video; wherein the two or more are encoded and decoded using a plurality of prediction methods according to encoding and decoding rules For color component blocks, at least one of the multiple prediction methods is a Symmetric Intra Block Copy (SIBC) method.
在另一个示例方面,公开了另一种视频处理方法。该方法包括:对于视频的包括一个或多个颜色分量块的视频块和视频的编解码表示之间的转换,根据编解码规则确定是否使用对称帧内块复制(SIBC)方法来编解码视频块的颜色分量块;以及基于该确定执行转换。In another example aspect, another video processing method is disclosed. The method includes determining whether to use a Symmetric Intra Block Copy (SIBC) method to encode and decode the video block according to a codec rule for conversion between a video block of the video comprising one or more color component blocks and a codec representation of the video ; and performing a conversion based on the determination.
在另一个示例方面,公开了另一种视频处理方法。该方法包括:执行在视频的包括一个或多个颜色分量块的视频块和视频的比特流表示之间的转换,其中比特流表示符合格式规则,其中格式规则规定在比特流表示中指示是否以及如何使用对称帧内块复制(SIBC)方法来编解码视频块的颜色分量块。In another example aspect, another video processing method is disclosed. The method includes performing a conversion between a video block of the video comprising one or more color component blocks and a bitstream representation of the video, wherein the bitstream representation conforms to a format rule, wherein the format rule specifies whether and not to be indicated in the bitstream representation and How to use the Symmetric Intra Block Copy (SIBC) method to codec the color component blocks of a video block.
在又一示例方面,公开了一种视频编码器装置。该视频编码器包括被配置为实施上述方法的处理器。In yet another example aspect, a video encoder apparatus is disclosed. The video encoder includes a processor configured to implement the above-described method.
在又一示例方面,公开了一种视频解码器装置。该视频解码器包括被配置为实施上述方法的处理器。In yet another example aspect, a video decoder apparatus is disclosed. The video decoder includes a processor configured to implement the above-described method.
在又一示例方面,公开了一种其上存储有代码的计算机可读介质。该代码以处理器可执行代码的形式体现了本文描述的方法之一。In yet another example aspect, a computer-readable medium having code stored thereon is disclosed. The code embodies one of the methods described herein in the form of processor executable code.
在又一示例方面,公开了一种其上存储有比特流的计算机可读介质。使用本文档中描述的方法生成或处理该比特流。In yet another example aspect, a computer-readable medium having a bitstream stored thereon is disclosed. This bitstream is generated or processed using the methods described in this document.
贯穿本文档描述了这些以及其他特征。These and other features are described throughout this document.
附图说明Description of drawings
图1是示例视频处理系统的框图。1 is a block diagram of an example video processing system.
图2是视频处理装置的框图。FIG. 2 is a block diagram of a video processing apparatus.
图3是视频处理的示例方法的流程图。3 is a flowchart of an example method of video processing.
图4是示出根据本公开的一些实施例的视频编解码系统的框图。4 is a block diagram illustrating a video codec system according to some embodiments of the present disclosure.
图5是示出根据本公开的一些实施例的编码器的框图。5 is a block diagram illustrating an encoder according to some embodiments of the present disclosure.
图6是示出根据本公开的一些实施例的解码器的框图。6 is a block diagram illustrating a decoder according to some embodiments of the present disclosure.
图7是视频编码器的框图。7 is a block diagram of a video encoder.
具体实施方式Detailed ways
为了便于理解,在本文档中使用了章节标题,并且不将每个章节中公开的技术和实施例的适用性仅限于该章节。此外,在一些描述中使用H.266术语仅仅是为了便于理解,而不是为了限制所公开的技术的范围。这样,本文描述的技术也适用于其他视频编解码器协议和设计。在本文档中,相对于VVC规范的当前草案,通过指示删除文本的删除线和指示添加文本的突出显示(包括粗体斜体)来示出对文本的编辑改变。Section headings are used in this document for ease of understanding and do not limit the applicability of the techniques and embodiments disclosed in each section to that section only. Furthermore, H.266 terminology is used in some of the descriptions only for ease of understanding, and not for the purpose of limiting the scope of the disclosed technology. As such, the techniques described herein are also applicable to other video codec protocols and designs. In this document, editorial changes to text are shown relative to the current draft of the VVC specification by strikethrough indicating deletion of text and highlighting (including bold italics) indicating added text.
1.初步讨论1. Preliminary discussion
本文档涉及视频编解码技术。具体地,本文档涉及视频编解码中的变换跳过模式和变换类型(即包括恒等(identity)变换)。它可以应用于现有的视频编解码标准,如HEVC,或待定稿的标准(通用视频编解码)。它也可以应用于未来的视频编解码标准或视频编解码器。This document deals with video codec technology. Specifically, this document relates to transform skip modes and transform types (ie including identity transforms) in video codecs. It can be applied to existing video codec standards such as HEVC, or to a standard to be finalized (Universal Video Codec). It can also be applied to future video codec standards or video codecs.
2.视频编解码基础2. Basics of video codec
视频编解码标准主要是通过开发公知的ITU-T和ISO/IEC标准而演变的。ITU-T开发了H.261和H.263,ISO/IEC开发了MPEG-1和MPEG-4视觉,并且两个组织联合开发了H.262/MPEG-2视频、H.264/MPEG-4高级视频编解码(Advanced Video Coding,AVC)和H.265/HEVC标准。自H.262以来,视频编解码标准基于混合视频编解码结构,其中采用了时域预测加变换编解码。为探索HEVC之外的未来视频编解码技术,VCEG和MPEG于2015年联合成立了联合视频探索团队(Joint Video Exploration Team,JVET)。从那时起,JVET采用了许多新的方法,并将其应用到了名为联合探索模型(Joint Exploration Model,JEM)的参考软件中。2018年4月,在VCEG(Q6/16)和ISO/IEC JTC1 SC29/WG11(MPEG)之间创建了联合视频专家团队(Joint Video Expert Team,JVET),其致力于研究VVC标准,目标为相较于HEVC有50%的比特率下降。Video codec standards have largely evolved through the development of well-known ITU-T and ISO/IEC standards. ITU-T developed H.261 and H.263, ISO/IEC developed MPEG-1 and MPEG-4 Visual, and the two organizations jointly developed H.262/MPEG-2 Video, H.264/MPEG-4 Advanced Video Coding (AVC) and H.265/HEVC standards. Since H.262, video codec standards have been based on a hybrid video codec structure, in which temporal prediction plus transform codec is employed. In order to explore future video codec technologies other than HEVC, VCEG and MPEG jointly established the Joint Video Exploration Team (JVET) in 2015. Since then, JVET has taken many new methods and applied them to a reference software called the Joint Exploration Model (JEM). In April 2018, the Joint Video Expert Team (JVET) was created between VCEG (Q6/16) and ISO/IEC JTC1 SC29/WG11 (MPEG), which is dedicated to studying the VVC standard with the goal of 50% bitrate drop compared to HEVC.
可以在下述网址找到VVC草案的最新版本,即通用视频编解码(草案10):The latest version of the VVC draft, Generic Video Codec (Draft 10), can be found at:
http://phenix.it-sudparis.eu/jvet/doc_end_user/current_document.php?id=10399http://phenix.it-sudparis.eu/jvet/doc_end_user/current_document.php?f id=10399
可以在下述网址找到VVC的名为VTM的最新参考软件:VVC's latest reference software called VTM can be found at:
https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/-/tags/VTM-10.0https://vcgit.hhi.fraunhofer.de/jvet/VVCSoftware_VTM/-/tags/VTM-10.0
2.1.典型视频编解码器的编解码流程2.1. Codec process of typical video codec
图7示出了VVC的编码器框图的示例,该编码器包括三个环内滤波块:去块滤波器(deblocking filter,DF)、样点自适应偏移(Sample Adaptive Offset,SAO)和ALF。与使用预定义滤波器的DF不同,SAO和ALF借助于信令通知偏移和滤波器系数的编解码边信息,分别通过添加偏移以及应用有限脉冲响应(finite impulse response,FIR)滤波器而利用当前图片的原始样点来减少原始样点和重建样点之间的均方误差。ALF位于每一图片的最后处理阶段,并且可以被视为尝试捕捉并且修复先前阶段产生的伪像的工具。Figure 7 shows an example of a block diagram of an encoder for VVC that includes three in-loop filter blocks: deblocking filter (DF), Sample Adaptive Offset (SAO) and ALF . Unlike DF, which uses predefined filters, SAO and ALF by means of signalling codec side information of offset and filter coefficients, by adding offset and applying finite impulse response (FIR) filter, respectively. Use the original samples of the current image to reduce the mean square error between the original samples and the reconstructed samples. ALF is at the final processing stage of each picture and can be seen as a tool that attempts to capture and fix artifacts created by previous stages.
3.由公开的技术方案解决的技术问题的示例3. Examples of technical problems solved by the disclosed technical solutions
IBC当前的设计存在以下问题:The current design of the IBC has the following problems:
1.因为许多文本字符和计算机生成的图形是对称的,所以在屏幕内容的图片中可以更经常地观察到对称性。独立编解码一个图案及其对称的图像是冗余的。1. Because many text characters and computer-generated graphics are symmetrical, symmetry is more often observed in pictures of screen content. Encoding and decoding a pattern and its symmetrical images independently is redundant.
4.示例实施例和解决方案4. Example Embodiments and Solutions
下面的列表应该被认为是解释一般发明概念的示例。不应狭隘地解释这些项。此外,这些项可以以任何方式组合。The following list should be considered as an example explaining the general inventive concept. These terms should not be interpreted narrowly. Furthermore, these items can be combined in any way.
min(x,y)返回x和y中较小的一个。min(x, y) returns the smaller of x and y.
max(x,y)返回x和y中较大的一个。max(x, y) returns the larger of x and y.
对称/镜像帧内块复制Symmetric/Mirror Intra Block Copy
提出在IBC参考块用于预测当前块之前,首先确定该IBC参考块是水平翻转还是垂直翻转,或者通过其他变换方法(例如顺时针旋转或逆时针旋转)来细化。这种方法被称为“对称IBC”。It is proposed that before the IBC reference block is used to predict the current block, it is firstly determined whether the IBC reference block is flipped horizontally or vertically, or refined by other transformation methods (eg clockwise rotation or counterclockwise rotation). This method is called "symmetric IBC".
“块”可以是变换单元(transform unit,TU)/预测单元(prediction unit,PU)/编解码单元(coding unit,CU)/变换块(transform block,TB)/预测块(transform block,PB)/编解码块(coding block,CB)或覆盖多个样点/像素的其他视频单元。TU/PU/CU可以包括一个或多个颜色分量,诸如对于双树分割只有亮度分量并且当前编解码的颜色分量是亮度;以及对于双树分割有两个色度分量并且当前编解码的颜色分量是色度;或者对于单树分割情况有三个颜色分量。A "block" can be a transform unit (TU)/prediction unit (PU)/coding unit (CU)/transform block (TB)/prediction block (PB) /coding block (CB) or other video unit covering multiple samples/pixels. A TU/PU/CU may include one or more color components, such as for a dual-tree partition only a luma component and the current codec color component is luma; and for a dual-tree partition there are two chroma components and the current codec color component is the chrominance; or three color components for the single tree split case.
在下面的公开中,W和H表示所提到的块的宽度和高度,或者在特定颜色分量(例如,3个颜色分量CU的亮度)中所提到的块的宽度和高度。In the following disclosure, W and H represent the width and height of the block mentioned, or the width and height of the block mentioned in a specific color component (eg, the luminance of the 3 color components CU).
1.提出对一个块使用多种预测方法,其中,多种预测方法中的至少一种是SIBC。1. It is proposed to use multiple prediction methods for a block, wherein at least one of the multiple prediction methods is SIBC.
a.在一个示例中,对于亮度块,利用SIBC,而对于其他两个颜色分量,应用帧内预测方法。a. In one example, for the luma block, SIBC is utilized, while for the other two color components, the intra prediction method is applied.
b.在一个示例中,对于亮度块,利用SIBC,而对于其他两个颜色分量,应用帧间预测方法。b. In one example, for the luma block, SIBC is utilized, while for the other two color components, the inter prediction method is applied.
c.在一个示例中,对于亮度块,利用SIBC,而对于其他两个颜色分量,应用调色板预测方法。c. In one example, for the luma block, SIBC is utilized, while for the other two color components, the palette prediction method is applied.
d.在一个示例中,对于亮度块,利用SIBC,而对于其他两个颜色分量,应用来自重建亮度块的预测。d. In one example, for the luma block, SIBC is utilized, while for the other two color components, the prediction from the reconstructed luma block is applied.
使用SIBC的隐式信令通知Implicit Signaling Using SIBC
2.对第一块使用SIBC的确定可以取决于第一块的颜色分量。2. The determination to use SIBC for the first block may depend on the color components of the first block.
a.例如,SIBC可以应用于第一块的第一分量(例如亮度),而正常的帧内预测总是用于第一块的第二分量(例如Cb或Cr)。a. For example, SIBC can be applied to the first component of the first block (eg luma), while normal intra prediction is always used for the second component of the first block (eg Cb or Cr).
b.例如,SIBC可以应用于第一块的所有颜色分量。b. For example, SIBC can be applied to all color components of the first block.
3.对第一块使用SIBC的确定可以取决于第一块的维度。3. The determination to use SIBC for the first block may depend on the dimensions of the first block.
a.只有在W>=T1且H>=T2时,SIBC才适用。例如T1=T2=4。a. SIBC applies only when W>=T1 and H>=T2. For example, T1=T2=4.
b.只有在W<=T1且H<=T2时,SIBC才适用。例如T1=T2=16。b. SIBC applies only when W<=T1 and H<=T2. For example, T1=T2=16.
c.只有在max(W,H)<=T1时,SIBC才适用。例如T1=16。c. SIBC is applicable only when max(W, H)<=T1. For example, T1=16.
d.只有在min(W,H)<=T1时,SIBC才适用。例如T1=4。d. SIBC is applicable only when min(W, H)<=T1. For example, T1=4.
e.只有在W*H>=T1时,SIBC才适用。例如T1=16。e. SIBC is applicable only when W*H>=T1. For example, T1=16.
f.只有在W*H<=T1时,SIBC才适用。例如T1=256。f. SIBC is applicable only when W*H<=T1. For example, T1=256.
g.只有在max(W,H)/min(W,H)<=T1时,SIBC才适用。例如T1=1或T1=2。g. SIBC is applicable only when max(W,H)/min(W,H)<=T1. For example T1=1 or T1=2.
h.在上面的项目符号中,“>=”可以用“>”代替,并且“<=”可以用“<”代替。h. In the bullet points above, ">=" can be replaced with ">" and "<=" can be replaced with "<".
4.使用SIBC的确定可以进一步取决于当前块的编解码信息。4. The determination to use SIBC may further depend on the codec information of the current block.
a.在一个示例中,该确定可以进一步取决于块矢量(BV)信息。a. In one example, the determination may further depend on block vector (BV) information.
i.在一个示例中,BVy为零,则垂直SIBC不应用于当前块。i. In one example, BVy is zero, then vertical SIBC is not applied to the current block.
ii.在一个示例中,BVx为零,则水平SIBC不应用于当前块。ii. In one example, BVx is zero, then horizontal SIBC is not applied to the current block.
b.在一个示例中,是否应用SIBC可以取决于IBC编解码块的ABVR精度。b. In one example, whether SIBC is applied may depend on the ABVR precision of the IBC codec block.
i.在一个示例中,只有在ABVR精度等于一个或一些特定值时,SIBC才适用。例如,只有在ABVR精度等于1像素时,SIBC才适用。i. In one example, SIBC is only applicable if the ABVR accuracy is equal to one or some specific values. For example, SIBC only applies if the ABVR precision is equal to 1 pixel.
c.在一个示例中,该确定可以进一步取决于条带/片/图片/子图片内的块位置。c. In one example, the determination may further depend on the block position within the slice/slice/picture/sub-picture.
i.在一个示例中,如果该块位于图片边界,则可以禁用SIBC。i. In one example, SIBC can be disabled if the block is at a picture boundary.
使用SIBC的显式信令通知Explicit signaling using SIBC
5.可以利用指示是否和/或如何应用SIBC的多级信令通知,其中一个信令通知在较高级别(例如,在该级别,与块相比包括更多样点),一个信令通知在较低级别(例如,块级别)。5. Multiple levels of signaling indicating whether and/or how to apply SIBC may be utilized, with one signaling at a higher level (eg, at the level that includes more samples than blocks), one signaling at a lower level (eg, block level).
a.在一个示例中,第一较高级别是序列级别,并且第二较高级别是图片级别。a. In one example, the first higher level is the sequence level and the second higher level is the picture level.
i.可选地,此外,第三较高级别是条带级别。i. Optionally, in addition, the third higher level is the stripe level.
ii.可选地,此外,较低级别是块级别。ii. Optionally, in addition, the lower level is a block level.
b.在一个示例中,第一较高级别是图片级别,并且第二较高级别是条带级别。b. In one example, the first higher level is the picture level and the second higher level is the slice level.
i.可选地,此外,较低级别是块级别。i. Optionally, in addition, the lower level is the block level.
c.可选地,此外,在较高级别的指示可以被有条件地信令通知,例如,根据IBC是否被启用。c. Optionally, furthermore, the indication at a higher level may be conditionally signalled, eg, depending on whether IBC is enabled.
d.在一个示例中,如何应用SIBC的信息可以包括一种SIBC(例如水平SIBC或垂直SIBC)是否适用于视频单元(例如序列或图片或条带)。d. In one example, the information on how to apply SIBC may include whether a SIBC (eg horizontal SIBC or vertical SIBC) applies to a video unit (eg sequence or picture or slice).
e.在一个示例中,是否可以将SIBC应用于块可以在较高级别单元中信令通知,例如在SPS/序列头/PPS/图片头/条带头中。e. In one example, whether SIBC can be applied to a block can be signaled in higher level units, eg in SPS/sequence header/PPS/picture header/slice header.
i.例如,可以在序列头中信令通知sibc_enable_flag,以指示SIBC是否可以应用于该序列。i. For example, sibc_enable_flag may be signaled in the sequence header to indicate whether SIBC can be applied to the sequence.
1)只有在IBC被允许用于该序列(例如,ibc_enable_flag等于1)时,才可以信令通知sibc_enable_flag。1) sibc_enable_flag may be signaled only if IBC is enabled for the sequence (eg, ibc_enable_flag equals 1).
6.关于是否对第一块使用SIBC的信息(表示为SIBC_flag)可以有条件地信令通知。6. Information on whether to use SIBC for the first block (denoted as SIBC_flag) may be signalled conditionally.
a.如果比特流中不存在SIBC_flag,则推断SIBC_flag为默认值,例如0。a. If the SIBC_flag does not exist in the bitstream, the SIBC_flag is inferred to be a default value, such as 0.
b.只有在第一块使用IBC时,才信令通知SIBC_flag。b. SIBC_flag is only signaled when the first block uses IBC.
c.只有在包括第一块的较高级别单元指示允许使用SIBC时,才信令通知SIBC_flag。c. SIBC_flag is only signaled if the higher level element including the first block indicates that the use of SIBC is allowed.
d.如果确定SIBC不适用于该块,则不信令通知SIBC_flag。d. If it is determined that SIBC is not applicable for this block, then SIBC_flag is not signaled.
e.是否信令通知SIBC_flag可以取决于第一块的维度。e. Whether or not to signal SIBC_flag may depend on the dimension of the first block.
i.只有在W>=T1且H>=T2时,才信令通知SIBC_flag。例如T1=T2=4。i. SIBC_flag is signaled only when W>=T1 and H>=T2. For example, T1=T2=4.
ii.只有在W<=T1且H<=T2时,才信令通知SIBC_flag。例如T1=T2=16。ii. SIBC_flag is only signaled when W<=T1 and H<=T2. For example, T1=T2=16.
iii.只有在max(W,H)<=T1时,才信令通知SIBC_flag。例如T1=16。iii. SIBC_flag is signaled only when max(W,H)<=T1. For example, T1=16.
iv.只有在min(W,H)<=T1时,才信令通知SIBC_flag。例如T1=4。iv. SIBC_flag is signaled only when min(W,H)<=T1. For example, T1=4.
v.只有在W*H>=T1时,才信令通知SIBC_flag。例如T1=16。v. SIBC_flag is signaled only when W*H>=T1. For example, T1=16.
vi.只有在W*H<=T1时,才信令通知SIBC_flag。。例如T1=256。vi. SIBC_flag is signaled only when W*H<=T1. . For example, T1=256.
vii.只有在max(W,H)/min(W,H)<=T1时,SIBC才适用。例如T1=1或T1=2。vii. SIBC is applicable only when max(W,H)/min(W,H)<=T1. For example T1=1 or T1=2.
viii.在上面的项目符号中,“>=”可以用“>”代替,并且“<=”可以用“<”代替。viii. In the bullet points above, ">=" can be replaced with ">" and "<=" can be replaced with "<".
7.在块的第一语法元素(表示为SIBC_flag)之后,可以信令通知指示使用哪种SIBC的第二语法元素(表示为sibc_dir_flag)。7. After the first syntax element of the block (denoted SIBC_flag), a second syntax element (denoted sibc_dir_flag) indicating which SIBC to use may be signaled.
a.在一个示例中,SIBC_flag指示SIBC是否被应用于该块。a. In one example, SIBC_flag indicates whether SIBC is applied to the block.
b.sibc_dir_flag指示应用哪种SIBC。b.sibc_dir_flag indicates which SIBC is applied.
i.例如,sibc_dir_flag=0意味着使用水平SIBC,并且sibc_dir_flag=1意味着使用垂直SIBC。i. For example, sibc_dir_flag=0 means horizontal SIBC is used, and sibc_dir_flag=1 means vertical SIBC is used.
c.sibc_dir_flag由SIBC_flag有条件地信令通知。c.sibc_dir_flag is conditionally signaled by SIBC_flag.
i.只有在SIBC_flag指示使用了SIBC时,才信令通知sibc_dir_flag。i. Signal sibc_dir_flag only if SIBC_flag indicates that SIBC is used.
d.可以通过算术编解码来编解码sibc_dir_flag和/或SIBC_flag。d. sibc_dir_flag and/or SIBC_flag can be encoded and decoded by arithmetic codec.
i.sibc_dir_flag和/或SIBC_flag可以被旁路编解码。i.sibc_dir_flag and/or SIBC_flag can be bypassed.
ii.可以用一个或多个上下文来编解码sibc_dir_flag和/或SIBC_flag。ii. The sibc_dir_flag and/or SIBC_flag may be encoded and decoded with one or more contexts.
1)用于编解码当前块的SIBC_flag的上下文可以取决于邻近块的SIBC_flag。1) The context for encoding and decoding the SIBC_flag of the current block may depend on the SIBC_flag of neighboring blocks.
2)用于编解码当前块的sibc_dir_flag的上下文可以取决于邻近块的sibc_dir_flag。2) The context for encoding and decoding the sibc_dir_flag of the current block may depend on the sibc_dir_flag of the neighboring blocks.
3)可以基于块维度来推导上下文。3) The context can be derived based on the block dimension.
4)可以基于邻近块的编解码信息来推导上下文。4) The context can be derived based on the codec information of neighboring blocks.
e.如果确定只有一种SIBC适用,则不信令通知sibc_dir_flag。e. If it is determined that only one SIBC is applicable, the sibc_dir_flag is not signaled.
f.可选地,哪种SIBC是适用的不是信令通知的,而是动态推导的。f. Optionally, which SIBC is applicable is not signaled but dynamically derived.
8.关于是否对第一块使用SIBC以及如果使用了SIBC,使用哪种SIBC(表示为SIBC_type_idx)的信息可以用非二元语法元素来信令通知。8. Information on whether SIBC is used for the first block and if SIBC is used, which SIBC (denoted as SIBC_type_idx) is used may be signaled with a non-binary syntax element.
a.在一个示例中,原始IBC(即,没有任何变换)被进一步视为SIBC模式的新变换(例如,NON_TRANSFORM)类型。a. In one example, the original IBC (ie, without any transform) is further treated as a new transform (eg, NON_TRANSFORM) type of SIBC mode.
b.在一个示例中,非二元语法元素可以被二进制化为具有截断一元、一元、固定长度、K阶指数哥伦布(exp-golomb)等的二进制字符串。b. In one example, non-binary syntax elements may be binarized into binary strings with truncated unary, unary, fixed-length, K-th order exp-golomb, or the like.
i.可选地,此外,至少一个二进制位被上下文编解码,并且至少另一个二进制位被旁路编解码。i. Optionally, in addition, at least one bin is context encoded and decoded, and at least another bin is bypass encoded.
ii.可选地,此外,对于至少两个二进制位,利用相同的上下文。ii. Optionally, furthermore, the same context is utilized for at least two bins.
iii.可选地,此外,对于二进制字符串中的至少两个二进制位,利用不同的上下文。iii. Optionally, additionally, different contexts are utilized for at least two bins in the binary string.
iv.可以基于块维度来推导上下文。iv. The context can be derived based on the block dimension.
v.可以基于邻近块的编解码信息来推导上下文。v. The context can be derived based on the codec information of neighboring blocks.
c.在一个示例中,当非二元语法元素等于K(例如,K=0)时,SIBC被禁用,而使用原始IBC设计(即,没有任何变换)。c. In one example, when a non-binary syntax element is equal to K (eg, K=0), SIBC is disabled and the original IBC design is used (ie, without any transformation).
i.可选地,此外,当非二元语法元素不等于K时,启用SIBCi. Optionally, in addition, enable SIBC when non-binary syntax elements are not equal to K
ii.可选地,此外,当非二元语法元素不等于K并且等于L时,应用SIBC方法的第L个变换。ii. Optionally, in addition, when the non-binary syntax element is not equal to K and equal to L, the Lth transform of the SIBC method is applied.
d.在一个示例中,当非二元语法元素的第一个二进制位等于K(例如,K=0)时,SIBC被禁用,而使用原始IBC设计(即,没有任何变换)。d. In one example, when the first bin of a non-binary syntax element is equal to K (eg, K=0), SIBC is disabled and the original IBC design is used (ie, without any transformation).
i.可选地,此外,当第一二进制位不等于K时,启用SIBC。i. Optionally, in addition, SIBC is enabled when the first binary bit is not equal to K.
e.在一个示例中,非二元语法元素的解码值和转换类型之间的映射可以是固定的。e. In one example, the mapping between decoded values and conversion types of non-binary syntax elements may be fixed.
i.可选地,该映射可以动态确定。i. Optionally, the mapping can be determined dynamically.
5.实施例5. Examples
5.1.实施例#15.1. Example #1
本章节给出了对于变换跳过的隐式选择(Implicit Selection of TransformSkip,ISTS)模式的解决方案的示例。基本上,它遵循AVS3所采用的转换的隐式选择(Implicit Selection of Transform,IST)的设计原则。在图片头中信令通知一个高级别标志以指示ISTS被启用。如果ISTS被启用,则允许的变换集被设置为{DCT-II TS},并且TS模式的确定基于块中非零系数的数量的奇偶性。仿真结果表明,与HPM6.0相比,对于在AI和RA配置下的屏幕内容编解码,所提出的ISTS分别实现了15.86%和12.79%比特率下降。可以断言,编码器和解码器复杂度的增加是可以忽略的。This section gives an example of a solution to the Implicit Selection of TransformSkip (ISTS) mode. Basically, it follows the design principle of Implicit Selection of Transform (IST) adopted by AVS3. A high-level flag is signaled in the picture header to indicate that ISTS is enabled. If ISTS is enabled, the allowed transform set is set to {DCT-II TS}, and the determination of the TS mode is based on the parity of the number of non-zero coefficients in the block. Simulation results show that, compared with HPM6.0, the proposed ISTS achieves 15.86% and 12.79% bit rate reduction for screen content encoding and decoding under AI and RA configurations, respectively. It can be asserted that the increase in encoder and decoder complexity is negligible.
5.1.2.提出的方法5.1.2. The proposed method
在本贡献中,提出SIBC。在每个IBC编解码和高精度ABVR CU中信令通知标志,以指示当前CU的预测模式是否对称,并且CU尺寸在4×4到32×32的范围内。0指示正常的IBC模式,1指示SIBC模式。当应用SIBC时,多一个1位标志被信令通知以指示是使用水平翻转或垂直翻转。在水平翻转之后,在坐标(x,y)处表示为S(x,y)的样点值被推导为,In this contribution, SIBC is proposed. A flag is signaled in each IBC codec and high precision ABVR CU to indicate whether the prediction mode of the current CU is symmetric and the CU size is in the range of 4x4 to 32x32. 0 indicates normal IBC mode, 1 indicates SIBC mode. When SIBC is applied, one more 1-bit flag is signaled to indicate whether horizontal or vertical flipping is used. After horizontal flipping, the sample value denoted as S(x,y) at coordinates (x,y) is derived as,
S(x,y)=S'(W-1-x,y), (1)S(x,y)=S'(W-1-x,y), (1)
其中S’代表翻转前的样点值,并且W代表块宽度。类似地,在垂直翻转之后,表示为S(x,y)的样点值被推导为,where S' represents the sample value before flipping, and W represents the block width. Similarly, after vertical flip, the sample value denoted as S(x,y) is derived as,
S(x,y)=S'(x,H-1-y), (1)S(x, y)=S'(x, H-1-y), (1)
其中H代表块高度。where H represents the block height.
5.1.3.对语法表、语义和解码过程提出的修改5.1.3. Proposed Modifications to Syntax Tables, Semantics and Decoding Processes
对语法表、语义和解码过程的新添加的更改用粗体下划线突出显示,并且删除的文本用标记。Newly added changes to the syntax table, semantics, and decoding process are highlighted with bold underline , and deleted text is highlighted with mark.
7.1.2.2序列头7.1.2.2 Sequence header
表14序列头定义Table 14 Sequence header definitions
7.1.6编解码单元7.1.6 Codec unit
表15编解码单元定义Table 15 Codec unit definitions
7.2.2.2序列头7.2.2.2 Sequence header
对称帧内块复制预测允许标志sibc_enable_flag为二值变量。值为‘1’表示可以The symmetric intra block copy prediction enable flag sibc_enable_flag is a binary variable. A value of '1' means yes 使用对称帧内块复制预测方法;值为‘0’表示没有使用对称帧内块复制预测方法。Use symmetric intra block copy prediction method; a value of '0' means no symmetric intra block copy prediction method is used. SibcEnableFlag的值等于sibc_enable_flag。如果比特流中不存在标志sibc_enable_The value of SibcEnableFlag is equal to sibc_enable_flag. If the flag sibc_enable_ is not present in the bitstream flag,则SibcEnableFlag的值为0。flag, the value of SibcEnableFlag is 0.
7.2.6编解码单元7.2.6 Codec unit
对称帧内块复制模式标志sibc_flag为二值变量。值为‘1’表示当前编解码单元使The symmetric intra block copy mode flag sibc_flag is a binary variable. A value of '1' indicates that the current codec unit uses 用对称帧内块复制预测模式;值为‘0’表示当前编解码单元没有使用对称帧内块复制预测Use symmetric intra-block copy prediction mode; a value of '0' indicates that the current codec does not use symmetric intra-block copy prediction 模式。SibcFlag的值等于sibc_flag。如果比特流中不存在sibc_flag,则SibcFlag的值等于model. The value of SibcFlag is equal to sibc_flag. If sibc_flag is not present in the bitstream, the value of SibcFlag is equal to 0。0.
对称帧内块复制模式方向标志sibc_dir_flag为二值变量。值为‘1’表示当前编解The symmetric intra block copy mode direction flag sibc_dir_flag is a binary variable. A value of '1' indicates the current codec 码单元使用垂直对称帧内块复制预测模式;值为‘0’表示当前编解码单元使用水平对称帧The code unit uses a vertically symmetric intra-block copy prediction mode; a value of '0' indicates that the current codec uses a horizontally symmetric frame 内块复制预测模式。SibcDirFlag的值等于sibc_dir_flag。如果比特流中不存在sibc_dir_Intra-block copy prediction mode. The value of SibcDirFlag is equal to sibc_dir_flag. If sibc_dir_ is not present in the bitstream flag,则SibcDirFlag的值等于0。flag, the value of SibcDirFlag is equal to 0.
8.3.3.2推导二元符号模型8.3.3.2 Derivation of binary symbolic models
8.3.3.2.1推导二元符号模型8.3.3.2.1 Derivation of a binary symbolic model
表61语法元素对应的ctxIdxStart和ctxIdxIncTable 61 ctxIdxStart and ctxIdxInc corresponding to syntax elements
9.8对称/镜像帧内块复制预测9.8 Symmetric/Mirror Intra Block Copy Prediction
9.8.2预测样点推导9.8.2 Derivation of predicted samples
如果当前预测块是亮度预测块,记当前预测块左上角样点在当前图像的亮度样点矩阵中的位置为(xE,yE),执行以下操作:1.SibcFlag为0时,亮度预测样点矩阵predMatrixIbc中的元素predMatrixIbc[x][y]的值是当前图像未滤波重建的整像素精度亮度样点矩阵中位置为(((xE+x))+BvE_x>>2,(yE+y))+BvE_y>>2)))的样点值。其中BvE_x和BvE_y分别是当前预测单元块矢量BvE的水平分量和垂直分量。2.SibcFlag为1且 SibcDirFlag为0时,亮度预测样点矩阵predMatrixIbc中的元素predMatrixIbc[x][y]的值 是当前图像未滤波重建的整像素精度亮度样点矩阵中位置为(((xE+W-1-x))+BvE_x>>2, (yE+y))+BvE_y>>2)))的样点值。其中W为亮度预测样点矩阵的宽度。3.SibcFlag为1且 SibcDirFlag为1时,亮度预测样点矩阵predMatrixIbc中的元素predMatrixIbc[x][y]的值 是当前图像未滤波重建的整像素精度亮度样点矩阵中位置为(((xE+x))+BvE_x>>2,(yE+H- 1-y))+BvE_y>>2)))的样点值。其中H为亮度预测样点矩阵的高度。 If the current prediction block is a luminance prediction block, record the position of the upper left corner sample of the current prediction block in the luminance sample matrix of the current image as (xE, yE), and perform the following operations: 1. When SibcFlag is 0, the luminance prediction sample The value of the element predMatrixIbc[x][y] in the matrix predMatrixIbc is the unfiltered reconstruction of the current image. The position in the luminance sample matrix is (((xE+x))+BvE_x>>2,(yE+y) )+BvE_y>>2))) sample value. where BvE_x and BvE_y are the horizontal and vertical components of the current prediction unit block vector BvE, respectively. 2. When SibcFlag is 1 and SibcDirFlag is 0, the value of the element predMatrixIbc[x][y] in the luminance prediction sample matrix predMatrixIbc is the unfiltered reconstruction of the current image. The position in the luminance sample matrix is (((xE +W-1-x))+BvE_x>>2, (yE+y))+BvE_y>>2))) sample value. where W is the width of the luma prediction sample matrix. 3. When SibcFlag is 1 and SibcDirFlag is 1, the value of the element predMatrixIbc[x][y] in the luminance prediction sample matrix predMatrixIbc is the integer pixel precision of the unfiltered reconstruction of the current image. The position in the luminance sample matrix is (((xE +x))+BvE_x>>2,(yE+H- 1-y))+BvE_y>>2))) sample value. where H is the height of the luma prediction sample matrix.
如果当前预测块是色度预测块,记包含当前预测块左上角样点的亮度预测块的左上角样点在当前图像的亮度样点矩阵中的位置为(xE,yE),执行以下操作:1.SibcFlag为0 时,色度预测样点矩阵predMatrixIbc中的元素predMatrixIBc[x][y]的值是当前图像未滤波重建的1/2精度色度样点矩阵中位置为(((xE+2×x))+BvC_x>>2,(yE+2×y))+BvC_y>>2)))的样点值。其中,BvC_x和BvC_y分别是包含当前预测块右下角样点的空域运动信息存储单元的块矢量BvE的水平分量和垂直分量。参考图像的色度1/2精度样点矩阵中各个位置的元素值通过插值方法得到。2.SibcFlag为1且SibcDirFlag为0时,色度预测样点矩阵 predMatrixIbc中的元素predMatrixIBc[x][y]的值是当前图像未滤波重建的1/2精度色度 样点矩阵中位置为(((xE+2×(W-1-x)))+BvC_x>>2,(yE+2×y))+BvC_y>>2)))的样点值。其 中W为色度预测样点矩阵的宽度。3.SibcFlag为1且SibcDirFlag为1时,色度预测样点矩阵 predMatrixIbc中的元素predMatrixIBc[x][y]的值是当前图像未滤波重建的1/2精度色度 样点矩阵中位置为(((xE+2×x))+BvC_x>>2,(yE+2×(H-1-y)))+BvC_y>>2)))的样点值。其 中H为色度预测样点矩阵的高度。 If the current prediction block is a chroma prediction block, denote the position of the upper-left corner sample of the luma prediction block containing the upper-left corner sample of the current prediction block in the luma sample matrix of the current image as (xE, yE), and perform the following operations: 1. When SibcFlag is 0 , the value of the element predMatrixIBc[x][y] in the chroma prediction sample matrix predMatrixIbc is the position in the 1/2 precision chroma sample matrix of the unfiltered reconstruction of the current image (((xE+ 2×x))+BvC_x>>2,(yE+2×y))+BvC_y>>2))) sample value. Wherein, BvC_x and BvC_y are respectively the horizontal component and the vertical component of the block vector BvE of the spatial motion information storage unit containing the lower right corner sample of the current prediction block. The element value of each position in the chroma 1/2 precision sample matrix of the reference image is obtained by interpolation. 2. When SibcFlag is 1 and SibcDirFlag is 0, the value of the element predMatrixIBc[x][y] in the chrominance prediction sample matrix predMatrixIbc is the position in the 1/2-precision chroma sample matrix of the unfiltered reconstruction of the current image ( ((xE+2×(W-1-x)))+BvC_x>>2,(yE+2×y))+BvC_y>>2))) sample value. where W is the width of the chrominance prediction sample matrix. 3. When SibcFlag is 1 and SibcDirFlag is 1, the value of the element predMatrixIBc[x][y] in the chrominance prediction sample matrix predMatrixIbc is the position in the 1/2 precision chroma sample matrix of the unfiltered reconstruction of the current image ( ((xE+2×x))+BvC_x>>2,(yE+2×(H-1-y)))+BvC_y>>2))) sample value. where H is the height of the chrominance prediction sample matrix.
图1是示出可以在其中实施本文公开的各种技术的示例视频处理系统1900的框图。各种实施方式可以包括系统1900的一些或所有组件。系统1900可以包括用于接收视频内容的输入1902。视频内容可以以例如8或10比特多分量像素值的原始或未压缩格式而接收,或者可以是压缩或编码格式。输入1902可以表示网络接口、外围总线接口或存储接口。网络接口的示例包括诸如以太网、无源光网络(Passive Optical Network,PON)等的有线接口和诸如Wi-Fi或蜂窝接口的无线接口。1 is a block diagram illustrating an example
系统1900可以包括可以实施本文档中描述的各种编解码或编码方法的编解码组件1904。编解码组件1904可以将来自输入1902的视频的平均比特率减小到编解码组件1904的输出,以产生视频的编解码表示。编解码技术因此有时被称为视频压缩或视频转码技术。编解码组件1904的输出可以被存储,或者经由如由组件1906表示的通信连接而发送。在输入1902处接收的视频的存储或通信传送的比特流(或编解码)表示可以由组件1908用于生成像素值或传送到显示接口1910的可显示视频。从比特流表示生成用户可视视频的过程有时被称为视频解压缩。此外,虽然某些视频处理操作被称为“编解码”操作或工具,但是将理解,编解码工具或操作在编码器处被使用,并且反转编解码结果的对应的解码工具或操作将由解码器执行。
外围总线接口或显示接口的示例可以包括通用串行总线(USB)、或高清晰度多媒体接口(High Definition Multimedia Interface,HDMI)、或显示端口(Displayport)等。存储接口的示例包括SATA(Serial Advanced Technology Attachment,串行高级技术附件)、PCI、IDE接口等。本文档中描述的技术可以体现在各种电子设备中,诸如移动电话、膝上型电脑、智能电话、或能够执行数字数据处理和/或视频显示的其他设备。Examples of peripheral bus interfaces or display interfaces may include Universal Serial Bus (USB), or High Definition Multimedia Interface (HDMI), or Displayport, and the like. Examples of storage interfaces include SATA (Serial Advanced Technology Attachment), PCI, IDE interfaces, and the like. The techniques described in this document may be embodied in various electronic devices, such as mobile phones, laptop computers, smart phones, or other devices capable of performing digital data processing and/or video display.
图2是视频处理装置3600的框图。装置3600可以用于实施本文描述的一种或多种方法。装置3600可以体现在智能手机、平板电脑、计算机、物联网(IoT)接收器等中。装置3600可以包括一个或多个处理器3602、一个或多个存储器3604和视频处理硬件3606。(多个)处理器3602可以被配置为实施本文档中描述的一种或多种方法。存储器(多个存储器)604可以用于存储用于实施本文描述的方法和技术的数据和代码。视频处理硬件606可以用于在硬件电路系统中实施本文档中描述的一些技术。在一些实施例中,视频处理硬件3606可以至少部分被包括在处理器3602(例如,图形协处理器)中。FIG. 2 is a block diagram of a
图4是示出可以利用本公开的技术的示例视频编解码系统100的框图。4 is a block diagram illustrating an example
如图4所示,视频编解码系统100可以包括源设备110和目标设备120。源设备110生成编码视频数据,其中该源设备110可以被称为视频编码设备。目标设备120可以解码由源设备110生成的编码视频数据,目标设备120可以被称为视频解码设备。As shown in FIG. 4 , the
源设备110可以包括视频源112、视频编码器114和输入/输出(I/O)接口116。
视频源112可以包括源,诸如视频捕捉设备、从视频内容提供器接收视频数据的接口、和/或用于生成视频数据的计算机图形系统、或这些源的组合。视频数据可以包括一个或多个图片。视频编码器114对来自视频源112的视频数据进行编码,以生成比特流。比特流可以包括形成视频数据的编解码表示的比特序列。比特流可以包括编解码图片和相关数据。编解码图片是图片的编解码表示。相关数据可以包括序列参数集、图片参数集和其他语法结构。I/O接口116可以包括调制器/解调器(调制解调器)和/或发射器。编码视频数据可以通过网络130a经由I/O接口116直接传输到目标设备120。编码视频数据也可以存储在存储介质/服务器130b上,以供目标设备120访问。
目标设备120可以包括I/O接口126、视频解码器124和显示设备122。
I/O接口126可以包括接收器和/或调制解调器。I/O接口126可以从源设备110或存储介质/服务器130b获取编码视频数据。视频解码器124可以对编码视频数据进行解码。显示设备122可以向用户显示解码视频数据。显示设备122可以与目标设备120集成,或者可以在被配置为与外部显示设备接口的目标设备120的外部。I/O interface 126 may include a receiver and/or a modem. I/O interface 126 may obtain encoded video data from
视频编码器114和视频解码器124可以根据视频压缩标准进行操作,例如高效视频编解码(HEVC)标准、通用视频编解码(VVM)标准和其他当前和/或另外的标准。
图5是示出视频编码器200的示例的框图,视频编码器200可以是图4所示的系统100中的视频编码器114。FIG. 5 is a block diagram illustrating an example of a
视频编码器200可以被配置为执行本公开的任何或所有技术。在图5的示例中,视频编码器200包括多个功能组件。本公开中描述的技术可以在视频编码器200的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
视频编码器200的功能组件可以包括分割单元201、预测单元202(其可以包括模式选择单元203、运动估计单元204、运动补偿单元205和帧内预测单元206)、残差生成单元207、变换单元208、量化单元209、逆量化单元210、逆变换单元211、重建单元212、缓冲区213和熵编码单元214。The functional components of the
在其他示例中,视频编码器200可以包括更多、更少或不同的功能组件。在示例中,预测单元202可以包括帧内块复制(IBC)单元。IBC单元可以执行IBC模式下的预测,其中至少一个参考图片是当前视频块所在的图片。In other examples,
此外,诸如运动估计单元204和运动补偿单元205的一些组件可以高度集成,但是为了解释的目的,在图5的示例中分开表示。Furthermore, some components such as
分割单元201可以将图片分割为一个或多个视频块。视频编码器200和视频解码器300可以支持各种视频块尺寸。The partitioning unit 201 may partition the picture into one or more video blocks.
模式选择单元203可以基于误差结果选择编解码模式(例如,帧内或帧间)之一,并且将作为结果的帧内编解码块或帧间编解码块提供给残差生成单元207以生成残差块数据,以及提供给重建单元212以重建编码块以用作参考图片。在一些示例中,模式选择单元203可以选择帧内和帧间预测模式的组合(CIIP),其中预测基于帧间预测信号和帧内预测信号。在帧间预测的情况下,模式选择单元203还可以选择块的运动矢量的分辨率(例如,子像素或整数像素精度)。The
为了对当前视频块执行帧间预测,运动估计单元204可以通过将来自缓冲区213的一个或多个参考帧与当前视频块进行比较,来生成当前视频块的运动信息。运动补偿单元205可以基于运动信息和来自缓冲区213的除了与当前视频块相关联的图片之外的图片的解码样点,来确定当前视频块的预测视频块。To perform inter prediction on the current video block,
运动估计单元204和运动补偿单元205可以对当前视频块执行不同的操作,例如,取决于当前视频块是在I条带、P条带还是B条带中。
在一些示例中,运动估计单元204可以对当前视频块执行单向预测,并且运动估计单元204可以为当前视频块的参考视频块搜索列表0或列表1的参考图片。运动估计单元204然后可以生成指示列表0或列表1中的参考图片的参考索引,该参考索引包含参考视频块和指示当前视频块和参考视频块之间的空域位移的运动矢量。运动估计单元204可以输出参考索引、预测方向指示符和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前块的预测视频块。In some examples,
在其他示例中,运动估计单元204可以对当前视频块执行双向预测,运动估计单元204可以在列表0中的参考图片中搜索当前视频块的参考视频块,并且还可以在列表1中搜索当前视频块的另一个参考视频块。运动估计单元204然后可以生成参考索引,该参考索引指示包含参考视频块的列表0和列表1中的参考图片以及指示参考视频块和当前视频块之间的空间位移的运动矢量。运动估计单元204可以输出当前视频块的参考索引和运动矢量作为当前视频块的运动信息。运动补偿单元205可以基于由当前视频块的运动信息指示的参考视频块来生成当前视频块的预测视频块。In other examples,
在一些示例中,运动估计单元204可以输出完整的运动信息集,以用于解码器的解码处理。In some examples,
在一些示例中,运动估计单元204可以不输出当前视频的完整的运动信息集。而是运动估计单元204可以参考另一个视频块的运动信息信令通知当前视频块的运动信息。例如,运动估计单元204可以确定当前视频块的运动信息与邻近视频块的运动信息足够相似。In some examples,
在一个示例中,运动估计单元204可以在与当前视频块相关联的语法结构中指示值,该值向视频解码器300指示当前视频块具有与另一个视频块相同的运动信息。In one example,
在另一示例中,运动估计单元204可以在与当前视频块相关联的语法结构中标识另一视频块和运动矢量差(MVD)。运动矢量差指示当前视频块的运动矢量和所指示的视频块的运动矢量之间的差。视频解码器300可以使用所指示的视频块的运动矢量和运动矢量差来确定当前视频块的运动矢量。In another example,
如上所讨论的,视频编码器200可以预测性地信令通知运动矢量。可以由视频编码器200实施的预测信令通知技术的两个示例包括高级运动矢量预测(AMVP)和Merge模式信令通知。As discussed above,
帧内预测单元206可以对当前视频块执行帧内预测。当帧内预测单元206对当前视频块执行帧内预测时,帧内预测单元206可以基于同一图片中的其他视频块的解码样点来生成当前视频块的预测数据。当前视频块的预测数据可以包括预测视频块和各种语法元素。Intra-prediction unit 206 may perform intra-prediction on the current video block. When intra-prediction unit 206 performs intra-prediction on the current video block, intra-prediction unit 206 may generate prediction data for the current video block based on decoded samples of other video blocks in the same picture. The prediction data for the current video block may include the predicted video block and various syntax elements.
残差生成单元207可以通过从当前视频块中减去(例如,由减号指示)当前视频块的(多个)预测视频块来生成当前视频块的残差数据。当前视频块的残差数据可以包括与当前视频块中样点的不同样点分量相对应的残差视频块。
在其他示例中,例如在跳过模式中,对于当前视频块可能没有当前视频块的残差数据,并且残差生成单元207可能不执行减去操作。In other examples, such as in skip mode, there may be no residual data for the current video block for the current video block, and
变换处理单元208可以通过将一个或多个变换应用于与当前视频块相关联的残差视频块来为当前视频块生成一个或多个变换系数视频块。Transform processing unit 208 may generate one or more transform coefficient video blocks for the current video block by applying one or more transforms to the residual video block associated with the current video block.
在变换处理单元208生成与当前视频块相关联的变换系数视频块之后,量化单元209可以基于与当前视频块相关联的一个或多个量化参数(QP)值来量化与当前视频块相关联的变换系数视频块。After transform processing unit 208 generates the transform coefficient video block associated with the current video block,
逆量化单元210和逆变换单元211可以分别对变换系数视频块应用逆量化和逆变换,以从变换系数视频块重建残差视频块。重建单元212可以将重建后的残差视频块添加到来自预测单元202生成的一个或多个预测视频块的对应样点,以产生与当前块相关联的重建视频块,用于存储在缓冲区213中。
在重建单元212重建视频块之后,可以执行环路滤波操作,以减少视频块中的视频块效应。After
熵编码单元214可以从视频编码器200的其他功能组件接收数据。当熵编码单元214接收到数据时,熵编码单元214可以执行一个或多个熵编码操作,以生成熵编码数据,并输出包括该熵编码数据的比特流。
图6是示出视频解码器300的示例的框图,视频解码器300可以是图4所示的系统100中的视频解码器114。FIG. 6 is a block diagram illustrating an example of a
视频解码器300可以被配置为执行本公开的任何或所有技术。在图6的示例中,视频解码器300包括多个功能组件。本公开中描述的技术可以在视频解码器300的各种组件之间共享。在一些示例中,处理器可以被配置为执行本公开中描述的任何或所有技术。
在图6的示例中,视频解码器300包括熵解码单元301、运动补偿单元302、帧内预测单元303、逆量化单元304、逆变换单元305以及重建单元306和缓冲区307。在一些示例中,视频解码器300可以执行通常与针对视频编码器200(图5)描述的编码过程相反的解码过程。In the example of FIG. 6 , the
熵解码单元301可以检索编码比特流。编码比特流可以包括熵编解码的视频数据(例如,视频数据的编码块)。熵解码单元301可以解码熵编解码的视频数据,并且根据熵解码的视频数据,运动补偿单元302可以确定包括运动矢量、运动矢量精度、参考图片列表索引和其他运动信息的运动信息。运动补偿单元302可以例如通过执行AMVP和Merge模式来确定这样的信息。The entropy decoding unit 301 may retrieve the encoded bitstream. The encoded bitstream may include entropy encoded video data (eg, encoded blocks of video data). The entropy decoding unit 301 may decode the entropy coded video data, and from the entropy decoded video data, the
运动补偿单元302可以产生运动补偿块,可以基于插值滤波器执行插值。要以子像素精度使用的插值滤波器的标识符可以包括在语法元素中。
运动补偿单元302可以使用如视频编码器200在视频块的编码期间使用的插值滤波器来计算参考块的子整数像素的插值。运动补偿单元302可以根据所接收的语法信息确定视频编码器200使用的插值滤波器,并使用该插值滤波器来产生预测块。
运动补偿单元302可以使用一些语法信息来确定用于对编码视频序列的(多个)帧和/或(多个)条带进行编码的块的尺寸、描述编码视频序列的图片的每个宏块如何被分割的分割信息、指示每个分割如何被编码的模式、每个帧间编码块的一个或多个参考帧(和参考帧列表)以及用于对编码视频序列进行解码的其他信息。
帧内预测单元303可以使用例如在比特流中接收的帧内预测模式来从空间上相邻的块形成预测块。逆量化单元303对在比特流中提供并由熵解码单元301解码的量化后的视频块系数进行逆量化,即,解量化。逆变换单元303应用逆变换。The intra prediction unit 303 may form a prediction block from spatially adjacent blocks using, for example, an intra prediction mode received in the bitstream. The inverse quantization unit 303 inversely quantizes, ie, dequantizes, the quantized video block coefficients provided in the bitstream and decoded by the entropy decoding unit 301 . The inverse transform unit 303 applies the inverse transform.
重建单元306可以将残差块与由运动补偿单元202或帧内预测单元303生成的对应预测块相加,以形成解码块。如果需要,还可以应用去块滤波器来滤波解码块,以便移除块效应。解码的视频块然后被存储在缓冲区307中,为随后的运动补偿/帧内预测提供参考块,并且还产生解码的视频以在显示设备上呈现。
接下来提供一些实施例优选的解决方案列表。Next, a list of preferred solutions for some embodiments is provided.
以下解决方案示出了在前一章节(例如,项1)中讨论的技术的示例实施例。The following solutions illustrate example embodiments of the techniques discussed in the previous section (eg, item 1).
1.一种视频处理方法(例如,图3描绘的方法700),包括:执行(702)在视频的包括两个或多个颜色分量块的视频块和视频的比特流表示之间的转换;其中,根据编解码规则,使用多种预测方法编解码两个或多个颜色分量块,多种预测方法中的至少一种是对称帧内块复制(SIBC)方法。1. A method of video processing (eg, the
2.根据解决方案1所述的方法,其中,规则规定对两个或多个颜色分量块中的亮度分量块使用SIBC方法,并对两个或多个颜色分量块中的其他颜色分量块使用帧内编解码方法。2. The method of solution 1, wherein the rules specify that the SIBC method is used for a luma component block of the two or more color component blocks, and the other color component blocks of the two or more color component blocks are used Intra-frame encoding and decoding methods.
3.根据解决方案1所述的方法,其中,规则规定对两个或多个颜色分量块中的亮度分量块使用SIBC方法,并对两个或多个颜色分量块中的其他颜色分量块使用帧间编解码方法。3. The method of solution 1, wherein the rules specify that the SIBC method is used for a luma component block of the two or more color component blocks, and the other color component blocks of the two or more color component blocks are used Interframe encoding and decoding methods.
4.根据解决方案1所述的方法,其中,规则规定对两个或多个颜色分量块中的亮度分量块使用SIBC方法,并对两个或多个颜色分量块中的其他颜色分量块使用调色板预测编解码方法。4. The method of solution 1, wherein the rules specify that the SIBC method is used for a luma component block of the two or more color component blocks, and the other color component blocks of the two or more color component blocks are used Palette prediction codec method.
5.根据解决方案1所述的方法,其中,规则规定对两个或多个颜色分量块中的亮度分量块使用SIBC方法,并使用亮度分量块的重建亮度块来编解码两个或多个颜色分量块的其他颜色分量块。5. The method of solution 1, wherein the rules specify that the SIBC method is used for a luma component block of the two or more color component blocks, and a reconstructed luma block of the luma component block is used to encode and decode the two or more luma component blocks. Other color component blocks of the color component block.
以下解决方案示出了在前一章节(例如,项2)中讨论的技术的示例实施例。The following solutions illustrate example embodiments of the techniques discussed in the previous section (eg, item 2).
6.一种视频处理方法,包括:对于视频的包括一个或多个颜色分量块的视频块和视频的编解码表示之间的转换,根据编解码规则确定是否使用对称帧内块复制(SIBC)方法来编解码视频块的颜色分量块;以及基于确定执行转换。6. A video processing method, comprising: for conversion between a video block comprising one or more color component blocks and a codec representation of the video, determining whether to use symmetric intra-block copying (SIBC) according to codec rules a method to encode and decode a color component block of a video block; and perform a conversion based on the determination.
7.根据解决方案6所述的方法,其中,编解码规则规定使用SIBC方法编解码亮度分量块,并且使用帧内预测方法编解码其他颜色分量块。7. The method of solution 6, wherein the codec rules specify that the luma component block is encoded and decoded using the SIBC method, and the other color component blocks are encoded and decoded using the intra prediction method.
8.根据解决方案6所述的方法,其中,编解码规则规定使用SIBC方法编解码一个或多个分量块中的每一个分量块。8. The method of solution 6, wherein the encoding and decoding rules specify that each of the one or more component blocks is encoded and decoded using the SIBC method.
以下解决方案示出了在前一章节(例如,项3)中讨论的技术的示例实施例。The following solutions illustrate example embodiments of the techniques discussed in the previous section (eg, item 3).
9.根据解决方案6所述的方法,其中,规则是基于视频块的维度。9. The method of solution 6, wherein the rules are based on the dimensions of the video blocks.
10.根据解决方案9所述的方法,其中,规则规定对于SIBC方法的使用满足以下条件:10. The method of solution 9, wherein the rules state that the following conditions are met for use of the SIBC method:
a.只有在W>=T1且H>=T2时,SIBC才适用,a. SIBC is applicable only when W>=T1 and H>=T2,
b.只有在W<=T1且H<=T2时,SIBC才适用,b. SIBC applies only when W<=T1 and H<=T2,
c.只有在max(W,H)<=T1时,SIBC才适用,c. SIBC is applicable only when max(W, H)<=T1,
d.只有在min(W,H)<=T1时,SIBC才适用,d. SIBC is applicable only when min(W, H)<=T1,
e.只有在W*H>=T1时,SIBC才适用,e. SIBC is applicable only when W*H>=T1,
f.只有在W*H<=T1时,SIBC才适用,f. SIBC is applicable only when W*H<=T1,
g.只有在max(W,H)/min(W,H)<=T1时,SIBC才适用;g. SIBC is applicable only when max(W, H)/min(W, H)<=T1;
其中T1和T2是有理数。where T1 and T2 are rational numbers.
11.根据解决方案10所述的方法,其中,T1=1、2、4、8、16或256,T2=4或16。11. The method of solution 10, wherein T1=1, 2, 4, 8, 16 or 256 and T2=4 or 16.
以下解决方案示出了在前一章节(例如,项4)中讨论的技术的示例实施例。The following solutions illustrate example embodiments of the techniques discussed in the previous section (eg, item 4).
12.根据解决方案1-11中任一项所述的方法,其中,规则取决于视频块的编解码信息。12. The method of any of solutions 1-11, wherein the rules depend on codec information of the video blocks.
13.根据解决方案12所述的方法,其中,编解码信息包括关于视频块是否使用块矢量编解码的信息。13. The method of solution 12, wherein the codec information includes information on whether the video block uses block vector codec.
以下解决方案示出了在前一章节(例如,项5-8)中讨论的技术的示例实施例。The following solutions illustrate example embodiments of the techniques discussed in the previous sections (eg, items 5-8).
14.一种视频处理方法,包括:执行在视频的包括一个或多个颜色分量块的视频块和视频的比特流表示之间的转换,其中,比特流表示符合格式规则,其中,格式规则规定在比特流表示中指示是否以及如何使用对称帧内块复制(SIBC)方法来编解码视频块的颜色分量块。14. A method of video processing comprising: performing a conversion between a video block of a video comprising one or more color component blocks and a bitstream representation of the video, wherein the bitstream representation conforms to format rules, wherein the format rules specify Whether and how to use the Symmetric Intra Block Copy (SIBC) method to encode and decode the color component blocks of the video block is indicated in the bitstream representation.
15.根据解决方案14所述的方法,其中,格式规则规定为了指示,比特流表示至少包括在第一编解码级别的第一语法元素和在第二编解码级别的第二语法元素,其中,第一级别是比视频块级别更高的级别,并且第二级别是视频块级别或更低的级别。15. The method of solution 14, wherein the format rule specifies that for indicating that the bitstream representation includes at least a first syntax element at a first codec level and a second syntax element at a second codec level, wherein, The first level is a higher level than the video block level, and the second level is a video block level or lower.
16.根据解决方案14所述的方法,其中,格式规则规定基于编解码特性,为了指示,有条件地包括语法元素。16. The method of solution 14, wherein the format rule provisions conditionally include syntax elements for indication based on codec characteristics.
17.根据解决方案16所述的方法,其中,编解码特性包括是否为视频块启用帧内块复制模式。17. The method of solution 16, wherein the codec characteristics include whether intra block copy mode is enabled for the video block.
18.根据解决方案16所述的方法,其中,编解码特性包括视频块的维度。18. The method of solution 16, wherein the codec characteristic includes a dimension of the video block.
19.根据解决方案14-18中任一项所述的方法,其中,格式规则规定包括为指示SIBC方法的使用的两个字段,其中,第一字段信令通知使用SIBC方法,并且第一字段之后的第二字段指示SIBC方法使用的对称类型。19. The method of any of solutions 14-18, wherein the format rule specification includes two fields to indicate use of the SIBC method, wherein the first field signals the use of the SIBC method, and the first field The second field after that indicates the type of symmetry used by the SIBC method.
20.根据解决方案19所述的方法,其中,第一字段和第二字段包括非元语法元素。20. The method of solution 19, wherein the first field and the second field comprise non-metasyntax elements.
21.根据解决方案1-20中任一项所述的方法,其中,转换包括从视频生成比特流表示。21. The method of any of solutions 1-20, wherein converting comprises generating a bitstream representation from the video.
22.根据解决方案1-20中任一项所述的方法,其中,转换包括解码比特流表示以生成视频。22. The method of any of solutions 1-20, wherein converting comprises decoding a bitstream representation to generate a video.
23.一种视频解码装置,包括被配置为实施解决方案1至22中的一个或多个所述的方法的处理器。23. A video decoding apparatus comprising a processor configured to implement the method of one or more of solutions 1 to 22.
24.一种视频编码装置,包括被配置为实施解决方案1至22中的一个或多个所述的方法的处理器。24. A video encoding apparatus comprising a processor configured to implement the method of one or more of solutions 1 to 22.
25.一种其上存储有计算机代码的计算机程序产品,当由处理器执行时,所述代码使所述处理器实施解决方案1至22中任一项所述的方法。25. A computer program product having computer code stored thereon which, when executed by a processor, causes the processor to implement the method of any one of solutions 1 to 22.
26.一种计算机可读介质,存储根据解决方案1至22中任一项生成的比特流表示。26. A computer-readable medium storing a bitstream representation generated according to any of solutions 1 to 22.
27.本文档中描述的方法、装置或系统。27. The method, apparatus or system described in this document.
在本文描述的解决方案中,编码器可以通过根据格式规则产生编解码表示来符合格式规则。在本文描述的解决方案中,解码器可以在根据格式规则了解语法元素的存在和不存在的情况下,使用格式规则来解析编解码表示中的语法元素,以产生解码的视频。In the solution described herein, the encoder can comply with the format rules by producing a codec representation according to the format rules. In the solution described herein, a decoder can use format rules to parse syntax elements in a codec representation to produce decoded video, knowing the presence and absence of syntax elements from the format rules.
在本文档中,术语“视频处理”可以指视频编码、视频解码、视频压缩或视频解压缩。例如,可以在从视频的像素表示到对应比特流表示的转换期间应用视频压缩算法,反之亦然。当前视频块的比特流表示可以例如对应于比特流内的并置的或散布在不同地方的比特,如语法所定义的。例如,宏块可以根据变换和编解码后的误差残差值并且还使用比特流中的头和其他字段中的比特来编码。此外,在转换期间,解码器可以基于该确定,在知道一些字段可能存在或不存在的情况下解析比特流,如以上解决方案所述。类似地,编码器可以确定包括或不包括某些语法字段,并通过包括语法字段或从编解码表示中排除语法字段来相应地生成编解码表示。In this document, the term "video processing" may refer to video encoding, video decoding, video compression, or video decompression. For example, a video compression algorithm may be applied during the conversion from a pixel representation of a video to a corresponding bitstream representation, and vice versa. The bitstream representation of the current video block may, for example, correspond to bits within the bitstream that are collocated or interspersed in different places, as defined by the syntax. For example, macroblocks may be encoded from transformed and coded error residual values and also using bits in headers and other fields in the bitstream. Furthermore, during conversion, the decoder can parse the bitstream based on this determination, knowing that some fields may or may not be present, as described in the solution above. Similarly, an encoder may determine to include or exclude certain syntax fields, and generate the codec representation accordingly by including or excluding syntax fields from the codec representation.
本文档中描述的所公开的以及其他解决方案、示例、实施例、模块和功能操作可以在数字电子电路中、或者在计算机软件、固件或硬件(包括本文档中公开的结构及其结构等同物)中、或者在它们中的一个或多个的组合中被实施。所公开的以及其他实施例可以被实施为一个或多个计算机程序产品,即在计算机可读介质上编码的计算机程序指令的一个或多个模块,该计算机程序指令用于由数据处理装置运行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储器设备、影响机器可读传播信号的物质的组合、或它们中的一个或多个的组合。术语“数据处理装置”包含用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机、或多个处理器或计算机。除了硬件之外,装置还可以包括为所讨论的计算机程序创建运行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或它们中的一个或多个的组合的代码。传播信号是被生成以对信息进行编码以用于发送到合适的接收器装置的人工生成的信号,例如机器生成的电信号、光学信号或电磁信号。The disclosed and other solutions, examples, embodiments, modules, and functional operations described in this document may operate in digital electronic circuitry, or in computer software, firmware, or hardware (including the structures disclosed in this document and their structural equivalents) ), or a combination of one or more of them. The disclosed and other embodiments may be implemented as one or more computer program products, ie, one or more modules of computer program instructions encoded on a computer-readable medium for execution by a data processing apparatus or Controls the operation of the data processing device. The computer-readable medium can be a machine-readable storage device, a machine-readable storage substrate, a memory device, a combination of matter that affects a machine-readable propagated signal, or a combination of one or more of these. The term "data processing apparatus" includes all apparatus, devices, and machines for processing data, including, for example, a programmable processor, a computer, or multiple processors or computers. In addition to hardware, an apparatus may include code that creates an operating environment for the computer program in question, eg, code that constitutes processor firmware, a protocol stack, a database management system, an operating system, or a combination of one or more of these . A propagated signal is an artificially generated signal, such as a machine-generated electrical, optical or electromagnetic signal, that is generated to encode information for transmission to a suitable receiver device.
计算机程序(也已知为程序、软件、软件应用、脚本或代码)可以以任何形式的编程语言(包括编译或解释语言)编写,并且其可以以任何形式部署,包括作为独立程序或作为适合在计算环境中使用的模块、组件、子例程或其他单元。计算机程序不一定对应于文件系统中的文件。程序可以存储在保存其他程序或数据(例如,存储在标记语言文档中的一个或多个脚本)的文件的一部分中,存储在专用于所讨论的程序的单个文件中,或存储在多个协调文件中(例如,存储一个或多个模块、子程序或代码部分的文件)。计算机程序可以被部署以在一个计算机上或在位于一个站点上或跨多个站点分布并通过通信网络互连的多个计算机上运行。A computer program (also known as a program, software, software application, script, or code) may be written in any form of programming language, including compiled or interpreted languages, and it may be deployed in any form, including as a stand-alone program or as a A module, component, subroutine, or other unit used in a computing environment. A computer program does not necessarily correspond to a file in a file system. Programs may be stored in part of a file that holds other programs or data (for example, one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinators. in a file (eg, a file that stores one or more modules, subprograms, or portions of code). A computer program can be deployed to run on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.
本文档书中描述的过程和逻辑流程可以由运行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据进行操作并生成输出来执行功能。过程和逻辑流程也可以由专用逻辑电路执行,并且装置也可以被实施为专用逻辑电路,例如,FPGA(Field Programmable Gate Array,现场可编程门阵列)或ASIC(专用集成电路)。The processes and logic flows described in this document can be performed by one or more programmable processors running one or more computer programs to perform functions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, eg, an FPGA (Field Programmable Gate Array) or an ASIC (application-specific integrated circuit).
适合于运行计算机程序的处理器包括例如通用和专用微处理器、以及任何类型的数字计算机的任何一个或多个处理器。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备(例如,磁盘、磁光盘或光盘),或可操作地耦合以从该一个或多个大容量存储设备接收数据或向该一个或多个大容量存储设备传递数据、或者从其接收数据并向其传递数据。然而,计算机不需要这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备;磁盘,例如内部硬盘或可换式磁盘;磁光盘;以及CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路补充或并入专用逻辑电路中。Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Typically, a processor will receive instructions and data from read-only memory or random access memory, or both. The basic elements of a computer are a processor for executing instructions and one or more memory devices for storing instructions and data. Typically, a computer will also include, or be operably coupled to receive data from, or to, one or more mass storage devices (eg, magnetic, magneto-optical, or optical disks) for storing data The one or more mass storage devices transfer data to, receive data from, and transfer data to. However, a computer does not need such a device. Computer-readable media suitable for storage of computer program instructions and data include all forms of non-volatile memory, media, and memory devices, including, for example, semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks or removable disks. magnetic disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and memory may be supplemented by or incorporated in special purpose logic circuitry.
虽然本专利文档包含许多细节,但这些细节不应被解释为对任何主题或可能要求保护的范围的限制,而是作为指定于特定技术的特定实施例的特征的描述。在本专利文档中在单独的实施例的上下文中描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种特征也可以分别在多个实施例中或以任何合适的子组合实施。此外,尽管特征可以在上面描述为以某些组合起作用并且甚至最初如此要求保护,但是在一些情况下可以从组合排除来自所要求保护的组合的一个或多个特征,并且所要求保护的组合可以针对子组合或子组合的变化。Although this patent document contains many details, these should not be construed as limitations on the scope of any subject matter or what may be claimed, but as descriptions of features specific to particular embodiments of particular technologies. Certain features that are described in this patent document in the context of separate embodiments can also be implemented in combination in a single embodiment. Conversely, various features that are described in the context of a single embodiment can also be implemented in multiple embodiments separately or in any suitable subcombination. Furthermore, although features may be described above as functioning in certain combinations and even originally claimed as such, in some cases one or more features from the claimed combination may be excluded from the combination and the claimed combination Variations of sub-combinations or sub-combinations can be targeted.
类似地,虽然在附图中以特定顺序描绘了操作,但是这不应该被理解为需要以所示的特定顺序或以先后顺序执行这样的操作或者执行所有示出的操作以实现期望的结果。此外,在本专利文档中描述的实施例中的各种系统组件的分离不应被理解为在所有实施例中都需要这样的分离。Similarly, although operations in the figures are depicted in a particular order, this should not be construed as requiring that such operations, or all illustrated operations be performed, in the particular order shown, or sequential order, to be performed to achieve desirable results. Furthermore, the separation of various system components in the embodiments described in this patent document should not be construed as requiring such separation in all embodiments.
仅描述了一些实施方式和示例,并且可以基于本专利文档中描述和示出的内容来进行其他实施方式、增强和变化。Only some implementations and examples have been described, and other implementations, enhancements and variations are possible based on what is described and illustrated in this patent document.
Claims (26)
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020134201 | 2020-12-07 | ||
CNPCT/CN2020/134201 | 2020-12-07 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114598882A true CN114598882A (en) | 2022-06-07 |
Family
ID=81803653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111483742.0A Pending CN114598882A (en) | 2020-12-07 | 2021-12-07 | Symmetric Intra Block Copy Mode |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114598882A (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015176225A1 (en) * | 2014-05-20 | 2015-11-26 | Mediatek Singapore Pte. Ltd. | Improved intra-block copy searching methods |
CN106416253A (en) * | 2014-05-22 | 2017-02-15 | 联发科技股份有限公司 | Intra-block copy method with flipping for image and video coding |
CN111436228A (en) * | 2018-11-12 | 2020-07-21 | 北京字节跳动网络技术有限公司 | Simplification of Combined Inter-Intra Prediction |
CN111937326A (en) * | 2018-05-11 | 2020-11-13 | 腾讯美国有限责任公司 | Video coding and decoding method and device |
-
2021
- 2021-12-07 CN CN202111483742.0A patent/CN114598882A/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2015176225A1 (en) * | 2014-05-20 | 2015-11-26 | Mediatek Singapore Pte. Ltd. | Improved intra-block copy searching methods |
CN106416253A (en) * | 2014-05-22 | 2017-02-15 | 联发科技股份有限公司 | Intra-block copy method with flipping for image and video coding |
CN111937326A (en) * | 2018-05-11 | 2020-11-13 | 腾讯美国有限责任公司 | Video coding and decoding method and device |
CN111436228A (en) * | 2018-11-12 | 2020-07-21 | 北京字节跳动网络技术有限公司 | Simplification of Combined Inter-Intra Prediction |
Non-Patent Citations (1)
Title |
---|
KAI ZHANG等: "Symmetric intra block copy in video coding", 《IEEE》, 30 July 2015 (2015-07-30), pages 8 - 20 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114631313B (en) | Cross-component adaptive loop filter using luminance difference | |
JP7597481B2 (en) | Decoder, program and method | |
JP7632804B2 (en) | Residual coding for transforming skipped blocks | |
CN117255200A (en) | Quantized residual differential pulse codec modulation representation of a codec video | |
CN114556924A (en) | Joint coding and decoding and filtering of chroma residual in video processing | |
KR102648569B1 (en) | Block dimension settings in transform skip mode | |
TW202139697A (en) | Signaling quantization related parameters | |
CN114902680B (en) | Combined use of adaptive color conversion and differential encoding and decoding for video | |
JP7596494B2 (en) | Profile Tier Level Parameter Sets in Video Coding | |
US11546595B2 (en) | Sub-block based use of transform skip mode | |
CN116671101A (en) | Signaling of quantization information in a codec video | |
CN115211123A (en) | General constraint information for video coding and decoding | |
JP7629030B2 (en) | Entropy coding for partitioned syntax. | |
CN115398898A (en) | Stripe type in video coding and decoding | |
JP2023515514A (en) | Subpicture height derivation | |
CN114424545A (en) | Quantization parameter derivation for palette mode | |
CN118266216A (en) | Array-based residual coding and decoding of non-binary fractional blocks | |
CN114598882A (en) | Symmetric Intra Block Copy Mode | |
CN114946187A (en) | Joint coding and decoding of chroma residual and adaptive color transform | |
CN115362674A (en) | Intra block copy buffer and palette predictor update | |
CN115486067A (en) | Signaling notification of filter parameters in the video picture header | |
WO2021136470A1 (en) | Clustering based palette mode for video coding | |
WO2021136486A1 (en) | Palette size signaling in video coding | |
WO2025080542A1 (en) | On basemesh submesh information design in dynamic mesh coding | |
JP2025060596A (en) | VIDEO ENCODING METHOD, VIDEO DECODING METHOD, ENCODER, DECODER, COMPUTER PROGRAM, COMPUTER-READABLE STORAGE MEDIUM, AND DEVICE |
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 |