CN114402610A - 视频编解码中的加权样点双向预测 - Google Patents
视频编解码中的加权样点双向预测 Download PDFInfo
- Publication number
- CN114402610A CN114402610A CN202080064505.8A CN202080064505A CN114402610A CN 114402610 A CN114402610 A CN 114402610A CN 202080064505 A CN202080064505 A CN 202080064505A CN 114402610 A CN114402610 A CN 114402610A
- Authority
- CN
- China
- Prior art keywords
- prediction
- video
- block
- codec
- prediction block
- 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
- 230000002457 bidirectional effect Effects 0.000 title description 2
- 238000000034 method Methods 0.000 claims abstract description 203
- 238000006243 chemical reaction Methods 0.000 claims abstract description 51
- 238000003672 processing method Methods 0.000 claims abstract description 36
- 230000007704 transition Effects 0.000 claims abstract description 22
- 239000013598 vector Substances 0.000 claims description 153
- 238000012545 processing Methods 0.000 claims description 37
- 238000009795 derivation Methods 0.000 claims description 16
- 238000005070 sampling Methods 0.000 claims description 6
- 206010028980 Neoplasm Diseases 0.000 claims 1
- 201000011510 cancer Diseases 0.000 claims 1
- 241000023320 Luma <angiosperm> Species 0.000 description 36
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 36
- 230000008569 process Effects 0.000 description 25
- 230000002123 temporal effect Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 14
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 12
- 238000004590 computer program Methods 0.000 description 11
- 230000011664 signaling Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 9
- 238000006073 displacement reaction Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 230000015654 memory Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 239000003086 colorant Substances 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000012935 Averaging Methods 0.000 description 3
- 238000003491 array Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 230000006837 decompression Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 241000124008 Mammalia Species 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
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/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
-
- 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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/105—Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
-
- 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/136—Incoming video signal characteristics or properties
- H04N19/137—Motion inside a coding unit, e.g. average field, frame or block difference
-
- 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/17—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 an image region, e.g. an object
- H04N19/176—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 an image region, e.g. an object the region being a block, e.g. a macroblock
-
- 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/184—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 bits, e.g. of the compressed video 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/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/46—Embedding additional information in the video signal during the compression process
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
-
- 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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/503—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
- H04N19/51—Motion estimation or motion compensation
-
- 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/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
描述了一种视频处理方法。该方法包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定预测块的两个初始预测块的加权和;以及使用预测块执行转换,其中,推导预测块包括:将权重应用于分别属于两个初始预测块的两个中间预测样点以推导最终预测样点;以及对最终预测样点进行右移操作以转换最终预测样点的比特深度,其中,右移操作是pbSample>>(shift1+3),其中,pbSample表示最终预测样点,shift1设置为等于Max(2,14‑bitDepth);以及基于最终预测样点确定预测块。
Description
相关申请的交叉引用
根据适用的《专利法》和/或《巴黎公约》的规定,本申请及时要求于2019年9月13日提交的国际专利申请号PCT/CN2019/105825的优先权和利益。出于法律上的所有目的,将前述申请的全部公开以引用方式并入本文,作为本申请公开的一部分。
技术领域
本申请文件涉及视频和图像的编码和解码技术。
背景技术
数字视频在互联网和其他数字通信网络上占据最大的带宽使用。随着能够接收和显示视频的连接用户设备数量的增加,预计数字视频使用的带宽需求将持续增长。
发明内容
描述了与数字视频处理相关的设备、***和方法,特别是与视频处理中并置运动矢量相关的设备、***和方法。所描述的方法可以应用于现有的视频编解码标准(例如,高效视频编解码(HEVC))和未来的视频编解码标准(例如,多功能视频编解码(VVC))或编解码器。
在一个示例性方面,公开了一种视频处理方法。该方法包括:进行第一确定,该第一确定关于视频的视频块的并置视频块是使用帧间编解码模式还是非帧间编码模式编解码的;基于该第一确定进行第二确定,该第二确定关于并置视频块的运动矢量的可用性或者推导并置视频块的运动矢量的模式;以及基于该第二确定执行视频块与视频的编解码表示之间的转换。
在另一示例性方面,公开了一种视频处理方法。该方法包括:对于视频的视频块与视频的编解码表示之间的转换,基于该视频块的并置视频块的参考索引或者参考列表来确定一个或多个并置运动矢量;以及基于该确定执行转换。
在又一示例性方面,公开了一种视频处理方法。该方法包括:对于视频的当前块与该视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中,权重用来确定用于确定该预测块的两个初始预测块的加权和;以及,使用该预测块执行转换,其中,推导预测块包括:将权重应用于分别属于两个初始预测块的两个中间预测样点以推导最终预测样点;以及,对最终预测样点执行右移操作以转换该最终预测样点的比特深度,其中,右移操作是pbSample>>(shift1+3)),其中,pbSample表示最终预测样点,shift1设置为等于Max(2,14-bitDepth);以及,基于该最终预测样点确定预测块。
在又一示例性方面,公开了一种视频处理方法。该方法包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定该预测块的两个初始预测块的加权和;以及,使用该预测块执行转换,其中,推导预测块包括:将权重应用于分别属于两个初始预测块的两个中间预测样点以推导最终预测样点;以及,将偏移添加到最终预测样点,其中,该偏移是1<<(shift1+2),其中,shift1设置为等于Max(2,14-bitDepth);以及基于该最终预测样点确定预测块。
在又一示例性方面,公开了一种视频处理方法。该方法包括:对于视频的当前块与视频的编解码表示之间的转换,根据规则推导当前块的Merge模式运动矢量预测值的运动矢量差;以及基于该推导执行转换,其中,规则规定是否将运动矢量差裁剪到与用于裁剪运动矢量的范围相同的范围。
在又一示例性方面,公开了一种视频处理方法。该方法包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定该预测块的两个初始预测块的加权和,其中,权重中的至少一个属于权重表,其中,根据规则组织权重表;以及使用预测块执行转换,其中,该规则规定权重表的条目非单调递增。
在又一示例性方面,公开了一种视频处理方法。该方法包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定该预测块的两个初始预测块的加权和,其中,权重中的至少一个属于权重表,并且该权重表选自多个权重表;以及使用预测块执行转换。
在又一示例性方面,公开了一种视频处理方法。该方法包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定预测块的两个初始预测块的加权和;以及使用预测块执行转换,其中,推导预测块包括:将中间预测样点转换为第一比特深度;将权重应用于中间预测样点以推导最终预测样点;以及将最终预测样点转换为第二比特深度。
在又一示例性方面,公开了一种视频处理方法。该方法包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中第一权重和第二权重用来确定用于确定预测块的两个初始预测块的加权和,其中,第一权重和第二权重中的至少一个包括在权重表中,其中根据规则组织该权重表;以及使用预测块执行转换,其中,该规则规定权重表是不对称的。
在又一示例方面,上述方法可以由包括处理器的视频编码器装置实施。
在又一示例方面,这些方法可以体现为处理器可执行指令的形式并存储在计算机可读程序介质上。
将在本申请文件中进一步描述这些以及其他方面。
附图说明
图1示出了示例编码器的框图。
图2示出了67种帧内预测模式的示例。
图3示出了水平和垂直遍历扫描的示例。
图4示出了用于时域Merge候选的运动矢量缩放的示例。
图5示出了时域Merge候选的候选位置。
图6A示出了由可选时域运动矢量预测(ATMVP)使用的空域邻近块的示例。
图6B示出了推导子CU运动场的示例。
图7示出了利用Merge运动矢量差(MMVD)模式的搜索点的示例。
图8是视频处理方法的示例流程图。
图9是视频处理方法的另一示例流程图。
图10是视频处理方法的又一示例流程图。
图11是视频处理方法的又一示例流程图。
图12是视频处理方法的又一示例流程图。
图13是视频处理方法的又一示例流程图。
图14A和图14B是用于实施本申请文件中描述的视觉媒体解码或视觉媒体编码技术的硬件平台的示例框图。
图15A-图15E是基于所公开技术的一些实施例的视频处理示例方法的流程图。
具体实施方式
本申请文件提供了能够由图像或视频比特流的解码器使用的各种技术,以提高解压缩或解码的数字视频或图像的质量。为了简洁起见,术语“视频”在本文中用于包括图片序列(传统上称为视频)和单个图像两者。此外,视频编码器也能够在编码过程期间实施这些技术,以便重构用于进一步编码的解码帧。
在本申请文件中使用章节标题以易于理解,并且不将实施例和技术限于对应章节。如此,来自一个章节的实施例能够与其他章节的实施例组合。
1.概要
本申请文件涉及视频编解码技术。具体地,其与并置运动矢量和其他编解码工具有关。其可以应用于现有的视频编解码标准,如HEVC,也可以应用于待定的标准(多功能视频编解码)。其也可能适用于未来的视频编解码标准或视频编解码器。
2.初步讨论
视频编解码标准主要是通过开发公知的ITU-T和ISO/IEC标准而发展起来的。ITU-T开发了H.261和H.263,ISO/IEC开发了MPEG-1和MPEG-4视觉,并且两个组织联合开发了H.262/MPEG-2视频、H.264/MPEG-4高级视频编码(AVC)和H.265/HEVC标准。自H.262以来,视频编解码标准基于混合视频编解码结构,其中采用了时域预测加变换编解码。为了探索HEVC以外的未来视频编解码技术,VCEG和MPEG于2015年联合成立了联合视频探索团队(JVET)。此后,JVET采纳了许多新方法并将其引入到名为联合探索模型(JEM)的参考软件中。在2018年4月,成立了VCEG(Q6/16)与ISO/IEC JTC1 SC29/WG11(MPEG)之间的联合视频专家小组(JVET),以致力于目标在于相比HEVC降低50%比特率的VVC标准。
2.1颜色空间和色度子采样
颜色空间(也称为颜色模型(或颜色***))是抽象数学模型,其简单地将颜色范围描述为数字元组,通常为3或4个值或颜色分量(例如,RGB)。基本上来说,颜色空间是对坐标系和子空间的精细化。
对于视频压缩,最常用的颜色空间是YCbCr和RGB。
YCbCr、Y′CbCr或Y Pb/Cb Pr/Cr(也写为YCBCR或Y'CBCR)是在视频和数字摄影***中用作颜色图像管道一部分的颜色空间族。Y′是亮度分量,CB和CR是蓝差和红差色度分量。Y′(带质数)与Y不同,Y是光亮度(luminance),这意味着光强度是基于伽马校正的RGB原色进行非线性编码的。
色度子采样是利用人类视觉***对色差的敏感度低于对于光亮度的敏感度,通过对色度信息实施比亮度信息更低分辨率来编码图像的实践。
2.1.1 4:4:4
三个Y'CbCr分量中的每个具有相同的采样率,因此没有色度子采样。此方案有时用在高端胶片扫描仪和电影后期制作。
2.1.2 4:2:2
以亮度一半的采样率对两个色度分量进行采样:水平色度分辨率减半。这使得在几乎没有视觉差异的情况下将未压缩视频信号的带宽减少三分之一。
2.1.3 4:2:0
在4:2:0中,水平采样比4:1:1增加了一倍,但是由于在此方案中Cb和Cr通道仅在每个交替线上采样,垂直分辨率降低一半。因此数据速率是相同的。Cb和Cr在水平和垂直方向上均以2的因子进行子采样。4:2:0方案有三种变体,具有不同的水平和垂直选址(site)。
·在MPEG-2中,Cb和Cr在水平上共同选址。Cb和Cr设置在垂直方向的像素之间(间隙选址)。
·在JPEG/JFIF、H.261和MPEG-1中,Cb和Cr是间隙选址的,位于交替亮度样点中间。
·在4:2:0DV中,Cb和Cr在水平方向上共同选址。在垂直方向上,它们在交替线上共同选址。
2.2典型视频编解码器的编解码流程
图1示出了VVC的编码器框图的示例,其包含三个环路滤波块:去方块滤波器(DF)、采样自适应偏移(SAO)和ALF。与使用预定义滤波器的DF不同,SAO和ALF利用当前图片的原始样点分别通过添加偏移和通过应用有限脉冲响应(FIR)滤波器来降低原始样点与重构样点之间的均方误差,而编解码侧信息信令通知偏移和滤波器系数。ALF位于每个图片的最后处理阶段,并且可以被看作是试图捕获和修复由先前阶段创建的伪像的工具。
2.3具有67种帧内预测模式的帧内模式编解码
为了捕获自然视频中出现的任意边缘方向,定向帧内模式的数目从HEVC中使用的33扩展到65。在图2中用红色虚线箭头描绘附加的定向模式,并且平面模式和DC模式保持不变。这些更密集的定向帧内预测模式适用于所有块尺寸以及亮度和色度的帧内预测。
如图2所示,常规角度帧内预测方向在顺时针方向上定义为从45度到-135度。在VTM6中,一些常规角度帧内预测模式被自适应地替换为非正方形块的广角帧内预测模式。被替换的模式使用原始方法被信令通知,并在解析后重新映射到广角模式的索引。帧内预测模式的总数不变,即67,并且帧内模式编解码不变。
在HEVC中,每个帧内编解码块均具有正方形形状,并且其每一侧的长度是2的幂。因此,不需要除法运算即可使用DC模式生成帧内预测值。在VVC中,块能够具有矩形形状,这通常需要对每个块使用除法运算。为了避免用于DC预测的除法运算,仅将较长的一侧用于计算非正方形块的平均值。
2.4帧间预测
对于每个帧间预测CU,运动参数包括运动矢量、参考图片索引和参考图片列表使用索引,以及用于生成帧间预测样点的VVC的新编码特征所需的附加信息。能够显式或隐式地信令通知运动参数。当使用跳过模式编解码CU时,CU与一个PU相关联并且没有显著的残差系数、没有编解码的运动矢量增量或参考图片索引。规定了Merge模式,其中从邻近CU获得当前CU的运动参数,包括空域和时域候选,以及VVC中引入的附加调度。Merge模式能够应用于任何帧内预测CU,而不仅仅适用于跳过模式。Merge模式的替代方案是运动参数的显式传输,其中对于每个CU,显示地信令通知运动矢量、每个参考图片列表的对应参考图片索引和参考图片列表使用标志以及其他所需信息。
2.5帧内块复制(IBC)
帧内块复制(IBC)是SCC上HEVC扩展中采用的工具。众所周知,它显著地提高了屏幕内容材料的编解码效率。由于IBC模式被实施为块级别的编解码模式,在编码器处执行块匹配(BM)以找到每个CU的最佳块矢量(或运动矢量)。此处,块矢量用于指示从当前块到参考块的位移,参考块已经在当前图片内重建。IBC编解码的CU的亮度块矢量是整数精度。色度块矢量也取整到整数精度。当与AMVR组合时,IBC模式能够在1像素和4像素运动矢量精度之间切换。IBC编解码的CU被视为除帧内或帧间预测模式之外的第三预测模式。IBC模式适用于宽度和高度均小于或等于64个亮度样点的CU。
在编码器侧,针对IBC执行基于哈希(Hash)的运动估计。编码器对宽度或高度不大于16个亮度样点的块执行RD检查。对于非Merge模式,首先使用基于哈希的搜索来执行块矢量搜索。如果哈希搜索未返回有效候选,则执行基于块匹配的局部搜索。
在基于哈希的搜索中,当前块和参考块之间的哈希密钥匹配(32比特CRC)被扩展到所有允许的块尺寸。当前图片中每个位置的哈希密钥计算是基于4×4子块。对于较大尺寸的当前块,当所有4×4子块的所有哈希密钥与对应参考位置中的哈希密钥匹配时,确定哈希密钥与参考块的哈希密钥匹配。如果发现多个参考块的哈希密钥与当前块的哈希密钥匹配,则计算每个匹配的参考块的块矢量成本,并选择具有最小成本的那个。
在块匹配搜索中,搜索范围设置为覆盖先前和当前CTU两者。
在CU级,以标志信令通知IBC模式,并且可以按照如下信令通知为IBC AMVP模式或IBC跳过/Merge模式:
–IBC跳过/Merge模式:Merge候选索引用于指示来自邻近候选IBC编解码块的列表中哪些块矢量用来预测当前块。Merge列表包括空域、HMVP和成对候选。
–IBC AMVP模式:以与运动矢量差相同的方式编解码块矢量差。块矢量预测方法使用两个候选作为预测值,一个来自左邻近,另一个来自上邻近(如果IBC编解码)。当其中一个邻近不可用时,将使用缺省块矢量作为预测值。信令通知标志以指示块矢量预测值索引。
2.6调色板模式
对于调色板模式信令通知,将调色板模式编解码为用于编解码单元的预测模式,即,用于编解码单元的预测模式可以是MODE_INTRA、MODE_INTER、MODE_IBC和MODE_PLT。如果使用了调色板模式,则CU中的像素值由代表性颜色值的小集合表示。该集合表示为调色板。对于具有接近调色板颜色的值的像素,信令通知调色板索引。对于具有调色板之外的值的像素,用逸出符号表示该像素,并直接信令通知量化的像素值。
为了解码调色板编码块,解码器需要解码调色板颜色和索引。调色板颜色由调色板表描述,并由调色板表编解码工具进行编码。对于每个CU信令通知逸出标志以指示当前CU中是否存在逸出符号。如果存在逸出符号,则增加一个调色板表,并且将最后一个索引分配给逸出模式。CU中所有像素的调色板索引组成调色板索引映射,并由调色板索引映射编解码工具进行编码。
为了编解码调色板表,维护调色板预测值。在预测值重置为0的每个条带的起始,对预测值进行初始化。对于调色板预测值中的每个条目,信令通知重用标志以指示其是否是当前调色板的一部分。使用零游程长度编解码发送重用标志。此后,使用阶数为0的指数哥伦布码信令通知新调色板条目的数目。最后,信令通知新调色板条目的分量值。在对当前CU进行编码之后,将使用当前调色板来更新调色板预测值,并且先前调色板预测值中未在当前调色板中重新使用的条目将添加到新调色板预测值的末尾,直到达到允许的最大尺寸为止(调色板填充)。
为了编解码调色板索引映射,使用如图3所示的水平和垂直遍历扫描来编解码索引。使用palette_transpose_flag在比特流中显式地信令通知扫描顺序。
使用两个主要的调色板样点模式编解码调色板索引:“INDEX”和“COPY_ABOVE”。当使用水平扫描时除第一行外或者当使用垂直扫描时除第一列外,或者当前一模式是“COPY_ABOVE”时,使用标志信令通知模式。在“COPY_ABOVE”模式下,复制上一行中样点的调色板索引。在“INDEX”模式下,显示地信令通知调色板索引。对于“INDEX”和“COPY_ABOVE”模式两者,均信令通知运行值,该运行值规定使用相同模式编解码的像素数目。
索引映射的编码顺序如下:首先,信令通知用于CU的索引值的数目。在这之后,使用截断二进制编解码来信令通知整个CU的实际索引值。索引数目和索引值均以旁路模式进行编码。这将索引的旁路bin成组。然后,以交错方式信令通知调色板模式(INDEX或COPY_ABOVE)和运行。最后,将对应于整个CU的逸出样点的分量逸出值成组在一起,并以旁路模式进行编解码。在信令通知索引值之后,信令通知附加语法元素last_run_type_flag。此语法元素与索引数目一起消除信令通知对应于块中最后一次运行的运行值的需要。
在VTM5.0中,为I条带启用了双重树,其区分了亮度和色度的编解码单元分割。因此,在此提议中,将调色板分别应用于亮度(Y分量)和色度(Cb和Cr分量)上。如果禁用双重树,则与HEVC调色板相同地将调色板联合应用于Y、Cb、Cr分量。
2.7 VVC中的时域运动矢量预测(TMVP)
在推导此时域Merge候选的过程中,基于属于并置参考图片的并置CU来推导缩放运动矢量。在条带标头中显式地信令通知用于推导并置CU的参考图片列表。如图4中的虚线所图示的获得用于时域Merge候选的缩放运动矢量,该运动矢量是使用POC距离(tb和td)从并置CU的运动矢量缩放得来的,其中tb定义为当前图片的参考图片与当前图片之间的POC差,并且td定义为并置图片的参考图片与并置图片之间的POC差。将时域Merge候选的参考图片索引设置为等于0。
如图5所描绘的,在候选C0和C1之间选择时域候选的位置。如果C0位置的CU不可用、是帧内编解码的、或者在CTU的当前行之外,则使用C1位置。否则,位置C0用于推导时域Merge候选。
2.8 VVC中基于子块的时域运动矢量预测(SbTMVP)
VTM支持基于子块的时域运动矢量预测(SbTMVP)方法。类似于HEVC中的时域运动矢量预测(TMVP),SbTMVP使用并置图片中的运动场来改善当前图片中CU的运动矢量预测和Merge模式。TMVP所使用的相同并置图片也用于SbTVMP。SbTMVP在以下两个主要方面不同于TMVP:
1.TMVP预测CU级的运动,但是SbTMVP预测子CU级的运动;
2.鉴于TMVP从并置图片中的并置块取得时域运动矢量(并置块是相对于当前CU的右下块或中心块),而SbTMVP在从并置图片取得时域运动信息之前应用运动位移,其中运动位移是从当前CU的空域邻近块之一的运动矢量取得的。
在图6中图示了SbTVMP过程。SbTMVP以两个步骤来预测当前CU内的子CU的运动矢量。在第一步骤中,检查图6A中的空域邻近A1。如果A1具有将并置图片用作其参考图片的运动矢量,则将此运动矢量选择为要应用的运动位移。如果未识别到此种运动,则将运动位移设置为(0,0)。
在第二步骤中,如图6B所示,应用(即,将其添加到当前块的坐标中)步骤1中标识的运动位移,以从并置图片获得子CU级运动信息(运动矢量和参考索引)。图6B中的示例假设将运动位移设置为块A1的运动。然后,对于每个子CU,将在并置图片中其对应块(覆盖中心样点的最小运动网格)的运动信息用于推导该子CU的运动信息。在标识了并置子CU的运动信息之后,以与HEVC的TMVP过程类似的方式将其转换为当前子CU的运动矢量和参考索引,其中应用时域运动缩放来将时域运动示例的参考图片与当前CU的参考图片对齐。
在VTM6中,将包含SbTVMP候选和仿射Merge候选的基于组合子块的Merge列表用于信令通知基于子块的Merge模式。通过序列参数集(SPS)标志启用/禁用SbTVMP模式。如果启用了SbTMVP模式,则添加SbTMVP预测值作为基于子块的Merge候选列表的第一条目,其后是仿射Merge候选。在SPS中信令通知基于子块的Merge列表的尺寸,并且在VTM6中,基于子块的Merge列表的最大允许尺寸是5。
在SbTMVP中使用的子CU尺寸固定为8×8,并且与仿射合并模式一样,SbTMVP模式仅适用于宽度和高度均大于或等于8的CU。
附加SbTMVPMerge候选的编码逻辑与其他Merge候选的编码逻辑相同,即,对于P或B条带中的每个CU,执行附加RD检查以决定是否使用SbTMVP候选。
工作草案中TMVP和SbTMVP的描述
8.5.2.11时域亮度运动矢量预测的推导过程
此过程的输入是:
-相对于当前图片的左上亮度样点的当前亮度编解码块的左上样点的亮度位置(xCb,yCb),
-变量cbWidth,规定亮度样点中当前编解码块的宽度,
-变量cbHeight,规定亮度样点中当前编解码块的高度,
-参考索引refIdxLX,其中X为0或1。
此过程的输出是:
-具有1/16的分数采样精度的运动矢量预测mvLXCol,
-可用性标志availableFlagLXCol。
变量currCb规定在亮度位置(xCb,yCb)的当前亮度编解码块。
按照如下推导变量mvLXCol和availableFlagLXCol:
-如果slice_temporal_mvp_enabled_flag等于0或(cbWidth*cbHeight)小于或等于32,则将mvLXCol的两个分量设置为等于0,并将availableFlagLXCol设置为等于0。
-否则,(slice_temporal_mvp_enabled_flag等于1),适用以下顺序步骤:
1.按照如下推导右下并置运动矢量和右下边界样点位置:
xColBr=xCb+cbWidth (8-421)
yColBr=yCb+cbHeight (8-422)
rightBoundaryPos=subpic_treated_as_pic_flag[SubPicIdx]?SubPicRightBoundaryPos:pic_width_in_luma_samples-1 (8-423)
botBoundaryPos=subpic_treated_as_pic_flag[SubPicIdx]?SubPicBotBoundaryPos:pic_height_in_luma_samples-1 (8-424)
–如果yCb>>CtbLog2SizeY等于yColBr>>CtbLog2SizeY、yColBr小于或等于botBoundaryPos,并且xColBr小于或等于rightBoundaryPos,则适用以下:
-变量colCb规定亮度编解码块,该亮度编解码块在由ColPic规定的并置图片内覆盖由((xColBr>>3)<<3,(yColBr>>3)<<3)指定的修改位置。
-将亮度位置(xColCb,yColCb)设置为等于相对于由ColPic规定的并置图片的左上亮度样点的由colCb规定的并置亮度编解码块的左上样点。
-调用条款8.5.2.12中规定的并置运动矢量的推导过程,其中以设置为等于0的currCb、colCb、(xColCb,yColCb)、refIdxLX和sbFlag作为输入,并将输出分配给mvLXCol和availableFlagLXCol。
-否则,将mvLXCol的两个分量设置为等于0并将availableFlagLXCol设置为等于0。
2.当availableFlagLXCol等于0时,按照如下推导中心并置运动矢量:
xColCtr=xCb+(cbWidth>>1) (8-425)
yColCtr=yCb+(cbHeight>>1) (8-426)
–变量colCb规定亮度编解码块,该亮度编解码块在由ColPic规定的并置图片内覆盖由((xColCtr>>3)<<3,(yColCtr>>3)<<3)指定的修改位置。
–亮度位置(xColCb,yColCb)设置为等于相对于由ColPic规定的并置图片的左上亮度样点的由colCb规定的并置亮度编解码块的左上样点。
–调用条款8.5.2.12中规定的并置运动矢量的推导过程,其中以设置为等于0的currCb、colCb、(xColCb,yColCb)、refIdxLX和sbFlag作为输入,并将输出分配给mvLXCol和availableFlagLXCol。
8.5.2.12并置运动矢量的推导过程
此过程的输入是:
–变量currCb,规定当前编解码块,
–变量colCb,规定由ColPic规定的并置图片内的并置编解码块,
–亮度位置(xColCb,yColCb),规定相对于由ColPic规定的并置图片的左上亮度样点的由colCb规定的并置亮度编解码块的左上样点;
–参考索引refIdxLX,其中X为0或1,
–指示子块时域Merge候选的标志sbFlag。
此过程的输出是:
–具有1/16的分数样点精度的运动矢量预测mvLXCol,
–可用性标志availableFlagLXCol。
变量currPic规定当前图片。
将阵列predFlagL0Col[x][y]、mvL0Col[x][y]和refIdxL0Col[x][y]分别设置为等于由ColPic规定的并置图片的PredFlagL0[x][y]、MvDmvrL0[x][y]和RefIdxL0[x][y],并且将阵列predFlagL1Col[x][y]、mvL1Col[x][y]和refIdxL1Col[x][y]分别设置为等于由ColPic规定的并置图片的PredFlagL1[x][y]、MvDmvrL1[x][y]和RefIdxL1[x][y]。
按照如下推导变量mvLXCol和availableFlagLXCol:
–如果以帧内或IBC预测模式编解码colCb,则将mvLXCol的两个分量设置为等于0,并且将availableFlagLXCol设置为等于0。
–否则,按照如下推导运动矢量mvCol、参考索引refIdxCol和参考列表标识符listCol:
2.8.1以帧间块编解码colCb时并置运动矢量的推导
–如果sbFlag等于0,则将availableFlagLXCol设置为等于1,并且适用以下:
-如果predFlagL0Col[xColCb][yColCb]等于0,则将mvCol、refIdxCol和listCol分别设置为等于mvL1Col[xColCb][yColCb]、refIdxL1Col[xColCb][yColCb]和L1。
-否则,如果predFlagL0Col[xColCb][yColCb]等于1并且predFlagL1Col[xColCb][yColCb]等于0,则将mvCol、refIdxCol和listCol分别设置为等于mvL0Col[xColCb][yColCb]、refIdxL0Col[xColCb][yColCb]和L0。
-否则(predFlagL0Col[xColCb][yColCb]等于1并且predFlagL1Col[xColCb][yColCb]等于1),则进行以下分配:
-如果NoBackwardPredFlag等于1,则将mvCol、refIdxCol和listCol分别设置为等于mvLXCol[xColCb][yColCb]、refIdxLXCol[xColCb][yColCb]和LX。
-否则,将mvCol、refIdxCol和listCol分别设置为等于mvLNCol[xColCb][yColCb]、refIdxLNCol[xColCb][yColCb]和LN,其中N为collocated_from_l0_flag的值。
–否则(sbFlag等于1),适用以下:
-如果PredFlagLXCol[xColCb][yColCb]等于1,则将mvCol、refIdxCol和listCol分别设置为等于mvLXCol[xColCb][yColCb]、refIdxLXCol[xColCb][yColCb]和LX,并且将availableFlagLXCol设置为等于1。
-否则(PredFlagLXCol[xColCb][yColCb]等于0),适用以下:
-如果NoBackwardPredFlag等于1并且PredFlagLYCol[xColCb][yColCb]等于1,则将mvCol、refIdxCol和listCol分别设置为mvLYCol[xColCb][yColCb]、refIdxLYCol[xColCb][yColCb]和LY,Y等于!X,其中X是调用此过程的X的值。将availableFlagLXCol设置为等于1。
-否则,将mvLXCol的两个分量设置为等于0,并将availableFlagLXCol设置为等于0。
–当availableFlagLXCol等于真(TRUE)时,按照以下推导mvLXCol和availableFlagLXCol:
-如果LongTermRefPic(currPic,currCb,refIdxLX,LX)不等于LongTermRefPic(ColPic,colCb,refIdxCol,listCol),则将mvLXCol的两个分量设置为等于0,并将availableFlagLXCol设置为等于0。
-否则,将变量availableFlagLXCol设置为等于1,将refPicList[listCol][refIdxCol]设置为包含由ColPic规定的并置图片中的编解码块colCb的条带的参考图片列表listCol中具有参考索引refIdxCol的图片,并适用以下:
colPocDiff=DiffPicOrderCnt(ColPic,refPicList[listCol][refIdxCol])(8-427)
currPocDiff=DiffPicOrderCnt(currPic,RefPicList[X][refIdxLX])(8-428)
-调用条款8.5.2.15中规定的用于并置运动矢量的时域运动缓冲区压缩过程,其中以mvCol作为输入,并以修改后的mvCol作为输出。
-如果RefPicList[X][refIdxLX]是长期参考图片,或者colPocDiff等于currPocDiff,则按照如下推导mvLXCol:
mvLXCol=mvCol (8-429)
-否则,按照如下将mvLXCol推导为运动矢量mvCol的缩放版本:
tx=(16384+(Abs(td)>>1))/td (8-430)
distScaleFactor=Clip3(-4096,4095,(tb*tx+32)>>6) (8-431)
mvLXCol=Clip3(-131072,131071,(distScaleFactor*mvCol+128-(distScaleFactor*mvCol>=0))>>8)) (8-432)
其中按照如下推导td和tb:
td=Clip3(-128,127,colPocDiff) (8-433)
tb=Clip3(-128,127,currPocDiff) (8-434)
2.9CU级加权双向预测(BCW)
在HEVC中,通过平均从两个不同的参考图片获得的两个预测信号和/或使用两个不同的运动矢量来生成双向预测信号。在VTM6中,双向预测模式被扩展到简单平均之外以允许对两个预测信号进行加权平均。
Pbi-pred=((8w)*P0+w*P1+4)>>3 (3-19)
加权平均双向预测中允许5个权重,w∈{-2,3,4,5,10}。对于每个双向预测CU,通过以下两种方式之一确定权重w:1)对于非MergeCU,在运动矢量差之后信令通知权重索引;2)对于Merge CU,基于Merge候选索引从邻近块推断权重索引。加权平均双向预测仅适用于具有256个或更多亮度样点的CU(即,CU宽度乘以CU高度大于或等于256)。对于低延迟图片,使用所有5个权重。对于非低延迟图片,只使用3个权重(w∈{3,4,5})。
–在编码器处,应用快速搜索算法来查找权重索引,而不会显著增加编码器的复杂性。这些算法总结如下。有关更多详细信息,请参阅VTM软件和文档JVET-L0646。当与AMVR结合使用时,如果当前图片是低延迟图片,则仅针对1像素和4像素运动矢量精度有条件地检查不等权重。
–当与仿射结合使用时,当且仅当仿射模式被选为当前最佳模式时,将对不等权重执行仿射ME。
–当双向预测中的两个参考图片相同时,仅有条件地检查不等权重。
–取决于当前图片与其参考图片之间的POC距离、编解码QP以及时域级,当不满足某些条件时则不搜索不等权重。
BCW权重索引是使用一个上下文编解码的bin和随后的旁路编解码的bin来编解码的。第一个上下文编解码的bin指示是否使用了相等权重;如果使用了不等权重,则使用旁路编解码信令通知附加bin以指示使用了哪个不等权重。
加权预测(WP)是H.264/AVC和HEVC标准支持的一种编解码工具,用来有效地对具有衰减的视频内容进行编解码。对WP的支持也被添加到VVC标准中。WP允许对每个参考图片列表L0和L1中的每个参考图片信令通知加权参数(权重和偏移)。然后,在运动补偿期间,应用对应(多个)参考图片的(多个)权重和(多个)偏移。WP和BCW是为不同类型的视频内容而设计的。为了避免WP和BCW之间的会使VVC解码器的设计复杂化的相互影响,如果CU使用WP,则不信令通知BCW权重索引,并且推断w为4(即,应用相等权重)。对于Merge CU,基于Merge候选索引从邻近块推断权重索引。这能够应用于一般Merge模式和继承仿射Merge模式。对于构建的仿射Merge模式,仿射运动信息是基于多达3个块的运动信息构建的。以下过程用来使用构建的仿射Merge模式来推导CU的BCW索引。
1.将BCW索引{0,1,2,3,4}的范围分为{0}、{1,2,3}和{4}三个组。如果所有控制点的BCW索引均来自于同一组,则按步骤2推导BCW索引;否则,将BCW索引设置为2。
2.如果至少两个控制点具有相同的BCW索引,则将此BCW索引值分配给候选;否则,将当前构建的候选的BCW索引设置为2。
2.10具有MVD的Merge模式(MMVD)
除了Merge模式(其中隐式推导的运动信息被直接用于当前CU的预测样点生成)之外,在VVC中还引入了具有运动矢量差的Merge模式(MMVD)。在发送跳过标志和Merge标志以规定是否将MMVD模式用于CU之后,立即信令通知MMVD标志。
在MMVD中,在选择了Merge候选之后,通过信令通知MVD信息来进一步细化。进一步信息包括Merge候选标志、用来规定运动幅度的索引以及用于指示运动方向的索引。在MMVD模式下,选择Merge列表中前两个候选之一用作MV基础。信令通知该Merge候选标志以规定使用了哪一个。
距离索引规定运动幅度信息并指示距起始点的预定义偏移。如图7所示,将偏移添加到起始MV的水平分量或垂直分量。在表1中规定距离索引与预定义偏移的关系。
表1:距离索引与预定义偏移的关系
方向索引表示MVD相对于起始点的方向。方向索引能够表示如表2中所示的四个方向。值得注意的是,MVD符号的含义可以根据起始MV的信息而变化。当起始MV是两个列表都指向当前图片的同一侧的非预测MV或双向预测MV(即,两个参考的POC都大于当前图片的POC,或者都小于当前图片的POC)时,表2中的符号规定添加到起始MV的MV偏移的符号。当起始MV是两个MV指向当前图片的不同侧的双向预测MV时(即,一个参考的POC大于当前图片的POC,而另一参考的POC小于当前图片的POC),表2中的符号规定添加到起始MV的list0 MV分量的MV偏移的符号,以及具有相反值的list1 MV的符号。
表2:由方向索引规定的MV偏移的符号
方向IDX | 00 | 01 | 10 | 11 |
x-轴 | + | – | N/A | N/A |
y-轴 | N/A | N/A | + | – |
2.11可选亮度半像素插值滤波器
在JVET-N0309中,提出了可选半象素插值滤波器。
半像素亮度插值滤波器的切换取决于运动矢量精度。除了现有的四分之一像素、全像素和四像素AMVR模式之外,还引入了新的半像素精度AMVR模式。仅在半像素运动矢量精度的情况下,才能选择可选半像素亮度插值滤波器。
2.11.1半像素AMVR模式
提出了用于非仿射非Merge帧间编解码的CU的附加AMVR模式,该模式允许以半像素精度信令通知运动矢量差。当前VVC草案的现有AMVR方案通过以下方式直接进行扩展:直接在语法元素amvr_flag之后,如果amvr_flag==1,则存在一个新的上下文建模二值语法元素hpel_amvr_flag,如果hpel_amvr_flag==1,其指示使用新的半像素AMVR模式。否则,即,如果hpel_amvr_flag==0,则如当前VVC草案中所示地,在全象素和4象素AMVR模式之间的选择由语法元素amvr_precision_flag指示。
2.11.2可选亮度半像素插值滤波器
对于使用半像素运动矢量精度(即,半像素AMVR模式)的非仿射非Merge帧间编解码的CU,在HEVC/VVC半像素亮度插值滤波器和一个或多个可选半像素插值之间进行切换是基于新的语法元素if_idx的值。仅在半像素AMVR模式下才信令通知语法元素if_idx。在使用空域Merge候选的跳过/Merge模式的情况下,从邻近块继承语法元素if_idx的值。
2.11.2.1测试1:一个可选半像素插值滤波器
在此测试情况下,一个6抽头插值滤波器作为普通HEVC/VVC半象素插值滤波器的替代。下表示出了语法元素if_idx的值与所选的半像素亮度插值滤波器之间的映射:
2.11.2.1测试2:两个可选半像素插值滤波器
在此测试情况下,两个8抽头插值滤波器作为普通HEVC/VVC半像素插值滤波器的替代。下表示出了语法元素if_idx的值与所选的半像素亮度插值过滤器之间的映射:
信令通知amvr_precision_idx以指示当前CU是采用1/2像素、1像素或4像素精度中的哪一种。需要编解码两个bin。
信令通知hpel_if_idx以指示是使用缺省半像素插值滤波器还是可选半像素插值滤波器。当使用了两个可选半像素插值滤波器时,需要编解码两个bin。
3.现有实施方式的缺陷
推导帧间预测中并置运动矢量的当前设计存在以下问题:
1.TMVP和SbTMVP中并置运动矢量的推导取决于并置编解码块的预测模式。在当前VVC中,如果以帧内或IBC预测模式编解码并置编解码块,则将并置运动矢量设置为等于零运动矢量。因此,即使并置块是调色板编解码的,仍将返回未定义的并置运动矢量,因为不存在与调色板预测模式关联的运动矢量。
2.在BCW中推导加权样点预测可能效率不高。
3.在当前VVC中,MV被裁剪为18比特。然而,Merge运动矢量差被裁剪为16比特,这可能导致精度损失。
4.信令通知的cu_skip_flag将导致开销比特。在当前的VVC中,IBC编解码单元的最大宽度和高度为64。对于I条带中宽度或高度大于64的块,无需信令通知cu_skip_flag。
5.即使当CU/PU/块没有半像素或更粗略的MV分量,可选亮度半像素插值滤波器标志也可以设置为真。
4.视频编解码中并置运动矢量的示例方法
以下详细描述发明应被视为解释一般概念的示例。对这些发明不应作狭隘的解释。此外,这些发明可以以任何方式组合。
推导并置运动矢量
1.与检查并置编解码块是帧内编解码还是IBC编解码不同,如何推导出并置运动矢量和/或并置运动矢量的可用性可取决于并置编解码块的预测模式是否是帧间的。在这种情况下,不需要为每个块存储四种预测模式,只需要一个1比特来判断该块是帧间的还是非帧间的。
a.在一个示例中,对于以调色板预测模式编解码并置编解码块的情况,如何推导并置运动矢量和/或并置运动矢量的可用性可以与以帧内/IBC预测模式编解码并置编解码块的情况相同。
b.在一个示例中,当以非帧间预测模式(例如,帧内、调色板或IBC)编解码并置编解码块时,可以将并置运动矢量设置为不可用。
c.可选地,并置运动矢量可以被标记为可用,并且当以非帧间预测模式(例如,帧内、调色板或IBC)编解码并置编解码块时,可以将缺省运动矢量指定为并置运动矢量。
d.可选地,当以非帧间预测模式编解码并置编解码块时,可以替代地检查其他块(例如,并置编解码块的一个邻近帧间编解码块)。
i.在一个示例中,邻近块可以是并置编解码块在左/右/上/下最接近的帧间编解码块。
2.并置运动矢量的确定可以取决于并置编解码块的参考列表和/或参考索引。
a.在一个示例中,当并置编解码块的参考列表X(例如,L1)的参考索引不等于特定值(例如,0)时,可以推导并置运动矢量(例如,使用如2.8.1中所描述的现有技术)。
b.在一个示例中,当并置编解码块的参考列表X(例如,L1)的参考索引等于特定值(例如,0)时,可以调用并置运动矢量的推导。
c.可选地,此外,当并置编解码块是以非帧间预测模式(包括或排除IBC)编解码时,或者其参考图片不满足给定条件时,将并置MV设置为不可用。
i.可选地,将并置MV设置为缺省值。
BCW样点预测
3.在BCW编解码模式中应用的权重表可能是不对称的。
a.在一个示例中,对于作为表条目的权重W,(1-W)可以不是表条目,其中,W在[a,b]的范围内,其中(a+b)等于1。
b.在一个示例中,对于作为表条目的权重W,(2N-W)可以不是表条目,假设最终预测块由(W0×P0+W1×P1)>>N生成,其中,W0和W1是分别应用于两个预测块P0和P1的两个权重,并且(W0+W1)等于(1<<N)。
4.在BCW编解码模式中应用的权重表中的权重可以不是单调递增的顺序。
a.在一个示例中,表的第(i+1)条目的值可以小于表的第i条目的值。
5.在一个示例中,BCW的加权样点预测过程可以取决于不同的权重查找表。
a.在一个示例中,{4,5,3,10,2}/{4,3,5,10,2}/{4,5,3,10,1}/{4,3,5,10,1}/{4,5,3,10,-1}可以用作BCW的权重查找表。
6.在一个示例中,在BCW的加权样点预测过程中,(如有必要,例如,当第一比特深度不等于中间预测样点的比特深度时)可以将每个预测方向上的中间预测样点转换为第一比特深度,然后,可以应用加权预测,并且可以将最终预测样点转换为第二比特深度。
a.在一个示例中,第二比特深度与当前颜色分量的输入比特深度相同。
b.在一个示例中,在不同比特深度之间的转换中,可以应用右移(例如,将样点从较高比特深度转换为较低比特深度)或左移(例如,将样点从较低比特深度转换为较高比特深度)。
i.可选地,此外,可以在右移或左移之前添加偏移。
c.在一个示例中,第一比特深度与中间预测样点的比特深度相同。BCW的加权样点预测可以推导为:pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(w0*predSamplesL0[x][y]+w1*predSamplesL1[x][y]+offset3)>>(shift1+3)),其中将shift1设置为等于Max(2,14-bitDepth),将变量offset3设置为等于1<<(shift1+2),bitDepth是当前颜色分量的比特深度。
d.在一个示例中,第一比特深度与当前颜色分量的输入比特深度相同。BCW的加权样点预测可以推导为:pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(w0*((predSamplesL0[x][y]+offset1)>>shift1)+w1*((predSamplesL1[x][y]+offset1)>>shift1)+4)>>3),其中将shift1设置为等于Max(2,14-bitDepth),将变量offset1设置为1<<(shift1)-1)。
MMVD范围
7.在一个示例中,可以将Merge运动矢量差裁剪到与运动矢量相同的范围。
a.在一个示例中,可以将Merge运动矢量差裁剪到18比特,例如,[-217,217–1],这与VVC中的运动矢量范围相同。
b.在一个示例中,可以将Merge运动矢量差裁剪到[-217+1,217–1]。
c.在一个示例中,可以不裁剪Merge运动矢量差。
i.例如,在将Merge运动差添加到运动矢量预测候选之后,将运动矢量的结果剪裁为18比特。
cu_skip_flag的信令通知
8.提出取决于编解码块的维度,可以有条件地信令通知CU/PU/块是否是以跳过模式编解码的指示(例如,cu_skip_flag)。
a.在一个示例中,当当前条带类型为I-slice,并且sps_ibc_enabled_flag为真,以及块宽度和块高度都小于或等于N(N是整数)时,可以信令通知该指示(例如,cu_skip_flag)。例如,N=64。
b.在一个示例中,当以IBC模式编解码当前块时,当块宽度和块高度都小于或等于N(N是整数)时,可以信令通知该指示(例如,cu_skip_flag)。例如,N=64。
色度分量编解码工具
9.编解码工具X(例如,X是TMVP/ATMVP/BCW/MMVD/PDPC)是否可以应用于第一颜色分量的一个块是取决于其是否应用于第二颜色分量中的一个或多个对应块。
a.在一个示例中,当编解码工具X应用于对应的第二颜色分量(例如,亮度)块时,可以禁止对第一颜色分量(例如,色度)块使用编解码工具X。
b.在一个示例中,当编解码工具Y(其中Y不同于X)应用于对应的第二颜色分量(例如,亮度)块时,可以禁止对第一颜色分量(例如,色度)块使用编解码工具X。
c.在一个示例中,可以有条件地信令通知消息(诸如,标志或索引)以指示编解码工具X是否应用于块的第一颜色分量。该条件可以定义为其是否应用于对应的第二颜色分量块。可选地,此外,如果其未应用于对应的第二颜色分量块,则在没有信令通知的情况下其并不应用于块的第一分量。
i.在一个示例中,编解码工具X可以以不同的方式应用于不同的颜色分量。
1)可以信令通知如何独立地对亮度分量和色度分量应用编解码工具X。
d.在一个示例中,第一颜色分量是色度分量,第二颜色分量是亮度分量。
e.在一个示例中,第一颜色分量是一个色度颜色分量,第二颜色分量是另一色度颜色分量。
f.在一个示例中,第一颜色分量是亮度颜色分量,第二颜色分量是色度颜色分量。
g.在上述讨论中,“对应的第二颜色分量块”可以表示覆盖第一颜色分量块的至少一个“对应样点”的第二颜色分量块。
i.在一个示例中,第一颜色分量是色度分量,第二颜色分量是亮度分量。
ii.样点位置可以按照诸如4:4:4或4:2:0等颜色格式进行缩放。假设色度块的左上位置是(x0,y0),色度块的宽度和高度是W和H,所有这些都将按照亮度样点单位进行缩放。
iii.在一个示例中,对应样点可以在(x0,y0)处;
iv.在一个示例中,对应样点可以在(x0+W-1,y0+H-1)处;
v.在一个示例中,对应样点可以在(x0+W/2-1,y0+H/2-1)处;
vi.在一个示例中,对应样点可以在(x0+W/2,y0+H/2)处;
vii..在一个示例中,对应样点可以在(x0+W/2,y0+H/2-1)处;
viii.在一个示例中,对应样点可以在(x0+W/2-1,y0+H/2)处;
h.在上述讨论中,“色度分量”可以表示“一个或多个色度分量”。
10.提出当以某些模式编解码色度块的并置亮度块时,可以对某些色度分量禁用位置相关帧内预测样点滤波过程(又称为PDPC)。
a.在一个示例中,当以MIP(基于矩阵的帧内预测)模式编解码色度块的并置亮度块时,可以禁用这样的过程。
b.在一个示例中,当以MRL(多参考线)模式编解码色度块的并置亮度块时,可以禁用这样的过程。
11.当CU/PU/块仅具有比半像素精度更精细精度(例如,1/4像素、1/8像素等)的MV分量时,可以将是否使用可选半像素插值滤波器的指示设置为假。也就是说,可以使用缺省半像素插值滤波器而不是可选半像素插值滤波器。
a.在一个示例中,如果重建的MV仅具有比半像素更精细精度的MV分量,则在MMVD模式中可以将这种指示设置为假。
b.在一个示例中,对于成对Merge候选,如果其仅具有比半像素更精细精度的MV分量,则可以将这种指示设置为假。
c.在一个示例中,当重建的双向预测运动信息被转换为仅具有比半像素更精细精度的MV分量的单向预测运动信息(例如,应用于诸如4*8或/和8*4块之类的小块)时,可以将这种指示设置为假。
12.在某些情况下,是否使用可选半像素插值滤波器的指示可以总是设置为假。也就是说,在这些情况下,可以始终使用缺省半像素插值滤波器。
a.在一个示例中,在MMVD模式中,这种指示可以总是设置为假。
b.在一个示例中,当选择一些特定MVD时,在MMVD模式中,这种指示可以总是设置为假。
i.例如,如果选择具有1/4像素精度的MVD,则这种指示可以设置为假。
c.在一个示例中,对于成对Merge候选,这种指示可以总是设置为假。
d.在一个示例中,当重建的双向预测运动信息被转换为单向预测运动信息时(例如,应用于诸如4*8或/和8*4块之类的小块),这种指示可以总是设置为假。
一般解决方案
13.可以在序列级/图片级/条带级/片组级,诸如在序列标头/图片标头/SPS/VPS/DPS/PPS/APS/条带标头/片组标头,信令通知是否和/或如何应用上述公开的方法。
以上描述的示例可以并入到下文所描述方法的上下文中,例如,可以在视频解码器或视频编码器处实施的方法800、900、1000、1100、1200和1300。
图8示出了用于视频处理的示例性方法的流程图。方法800包括,在步骤810,基于相对于当前视频块的并置视频块的预测模式来确定一个或多个并置运动矢量的可用性。
方法800包括,在步骤820,基于该一个或多个并置运动矢量执行当前块与当前块的比特流表示之间的转换,该预测模式的指示包括一个比特,该比特指示当前视频块是以帧间模式还是以非帧间模式编解码的。
图9示出了用于视频处理的示例性方法的流程图。方法900包括,在步骤910,对于视频块的编解码表示与视频块之间的转换,确定视频块的并置视频块的类型,该类型取仅有的两个可能值中的一个。
方法900包括,在步骤920,基于该确定执行转换。
图10示出了用于视频处理的示例性方法的流程图。方法100包括,在步骤1010,基于与具有编解码单元(CU)级加权过程的双向预测(BCW)模式关联的第一权重表,推导用于当前块的预测样点,其中,第一权重表是不对称的。
方法1000包括,在步骤1020,基于预测样点执行当前块与当前块的比特流表示之间的转换。
图11示出了用于视频处理的示例性方法的流程图。方法1100包括,在步骤1110,基于当前视频块的维度,进行关于在当前视频块的比特流表示中选择性信令通知当前视频块的跳过模式编解码的指示的决定。
方法1100包括,在步骤1120,基于该决定,执行当前块与当前块的比特流表示之间的转换。
图12示出了用于视频处理的示例性方法的流程图。方法1200包括,在步骤1210,基于对当前视频块的第一颜色分量中的一个或多个块应用第一编解码工具,进行关于对当前视频块的第二颜色分量的至少一个块选择性应用第二编解码工具的决定。
方法1200包括,在步骤1220,基于该决定,执行当前块与当前块的比特流表示之间的转换。
图13示出了用于视频处理的示例性方法的流程图。方法1300包括,在步骤1310,基于当前视频块中的运动矢量的精度,进行关于选择性信令通知使用可选半像素插值滤波器而不是缺省半像素插值滤波器的指示的决定。
方法1300包括,在步骤1320,基于该决定,执行当前块与当前块的比特流表示之间的转换。
所公开技术的一些实施例包括进行决定或确定以启用视频处理工具或模式。在一个示例中,当启用视频处理工具或模式时,编码器将在视频块的处理中使用或实施该工具或模式,但是并非必须基于该工具或模式的使用来修改产生的比特流。也就是说,在基于决定或确定启用视频处理工具或模式时,将使用其进行从视频块到视频的比特流表示的转换。在另一示例中,当启用视频处理工具或模式时,解码器将利用已经基于该视频处理工具或模式修改比特流的知识来处理比特流。也就是说,将使用基于决定或确定而启用的视频处理工具或模式来执行从视频的比特流表示到视频块的转换。
所公开技术的一些实施例包括作出决定或确定以禁用视频处理工具或模式。在一示例中,当视频处理工具或模式被禁用时,在视频块到视频的比特流表示的转换中编码器将不使用该工具或模式。在另一示例中,当视频处理工具或模式被禁用时,解码器将利用并未使用基于决定或确定而禁用的视频处理工具或模式来修改比特流表示的知识,进行比特流的处理。
在本申请文件中,术语“视频处理”可以表示视频编码、视频解码、视频压缩或视频解压缩。例如,可以在从视频的像素表示到相应的比特流表示的转换期间应用视频压缩算法,反之亦然。如语法所定义,当前视频块的比特流表示可以例如对应于在比特流内并置或分散在不同位置的比特。例如,可以根据变换和编解码的误差残差值并且还使用比特流的标头和其他字段中的比特来对宏块进行编码。
5.公开技术的示例性实施例
以粗体和斜体突出显示更改。删除的文本用双括号标记(例如,[[a]]表示删除字符“a”)。
5.1实施例#1
可以对JVET-O2001-vE中规定的工作草案进行如下更改。
8.5.2.12并置运动矢量的推导过程
…
按照如下推导变量mvLXCol和availableFlagLXCol:
–如果以帧内或调色板或IBC预测模式编解码colCb,则将mvLXCol的两个分量设置为等于0,并且将availableFlagLXCol设置为等于0。
–否则,按照如下推导运动矢量mvCol、参考索引refIdxCol和参考列表标识符listCol:
…
可选地,适用以下:
按照如下推导变量mvLXCol和availableFlagLXCol:
–如果并未以[[帧内或IBC]]帧间预测模式编解码colCb,则将mvLXCol的两个分量设置为等于0,并且将availableFlagLXCol设置为等于0。
–否则,按照如下推导运动矢量mvCol、参考索引refIdxCol和参考列表标识符listCol:
…
5.2实施例#2
可以对JVET-O2001-vE中规定的工作草案进行如下更改。
8.5.1对于以帧间预测模式编解码的编解码单元的一般解码过程
…
3.对于xSbIdx=0..numSbX–1、ySbIdx=0..numSbY–1,按照如下推导在解码器侧运动矢量细化之后的亮度和色度运动矢量阵列refMvLX[xSbIdx][ySbIdx]和refMvCLX[xSbIdx][ySbIdx],其中,X是0和1:
–如果dmvrFlag等于1,调用条款8.5.2.13中用于色度运动矢量的推导过程,其中以refMvLX[xSbIdx][ySbIdx]和refIdxLX作为输入,并以refMvCLX[xSbIdx][ySbIdx]作为输出,并且按照如下推导输入refMvLX[xSbIdx][ySbIdx]:
refMvLX[xSbIdx][ySbIdx]=mvLX[xSbIdx][ySbIdx]+dMvLX[xSbIdx][ySbIdx](8-287)
refMvLX[xSbIdx][ySbIdx][0]=Clip3(-217,217-1,refMvLX[xSbIdx][ySbIdx][0]) (8-288)
refMvLX[xSbIdx][ySbIdx][1]=Clip3(-217,217-1,refMvLX[xSbIdx][ySbIdx][1]) (8-289)
–否则(dmvrFlag等于0),适用以下:
refMvLX[xSbIdx][ySbIdx]=mvLX[xSbIdx][ySbIdx] (8-290)
refMvCLX[xSbIdx][ySbIdx]=mvCLX[xSbIdx][ySbIdx]
(8-291)
注意-阵列refMvLX存储在MvDmvrLX中,并且用于条款8.5.2.12中并置运动矢量的推导过程。在解码条带之后,当以IBC预测模式对编解码块Cb[xSbIdx][ySbIdx]进行编解码时,将MvDmvrLX[xSbIdx][ySbIdx]和对应参考索引均设置为等于-1。在空域运动矢量预测和去方块边界强度推导过程中使用非细化亮度运动矢量MvLX的阵列。
…
8.5.2.12并置运动矢量的推导过程
…
按照如下推导变量mvLXCol和availableFlagLXCol:
–如果以帧内或IBC预测模式编解码colCb,则将mvLXCol的两个分量设置为等于0,并且将availableFlagLXCol设置为等于0。
–否则,按照如下推导运动矢量mvCol、参考索引refIdxCol和参考列表标识符listCol:
如果predFlagL0Col[xColCb][yColCb]等于0并且predFlagL1Col[xColCb][yColCb]等于0,则将mvLXCol的两个分量设置为等于0并将availableFlagLXCol设置为等于0。
否则,适用以下:
-如果sbFlag等于0,则将availableFlagLXCol设置为1,并且适用以下:
-如果predFlagL0Col[xColCb][yColCb]等于0,则将mvCol、refIdxCol和listCol分别设置为等于mvL1Col[xColCb][yColCb]、refIdxL1Col[xColCb][yColCb]和L1。
-否则,如果predFlagL0Col[xColCb][yColCb]等于1并且predFlagL1Col[xColCb][yColCb]等于0,则将mvCol、refIdxCol和listCol分别设置为等于mvL0Col[xColCb][yColCb]、refIdxL0Col[xColCb][yColCb]和L0。
-否则(predFlagL0Col[xColCb][yColCb]等于1并且predFlagL1Col[xColCb][yColCb]等于1),则进行以下分配:
-如果NoBackwardPredFlag等于1,则将mvCol、refIdxCol和listCol分别设置为等于mvLXCol[xColCb][yColCb]、refIdxLXCol[xColCb][yColCb]和LX。
-否则,将mvCol、refIdxCol和listCol分别设置为等于mvLNCol[xColCb][yColCb]、refIdxLNCol[xColCb][yColCb]和LN,其中N为collocated_from_l0_flag的值。
–否则(sbFlag等于1),适用以下:
-如果PredFlagLXCol[xColCb][yColCb]等于1,则将mvCol、refIdxCol和listCol分别设置为等于mvLXCol[xColCb][yColCb]、refIdxLXCol[xColCb][yColCb]和LX,并且将availableFlagLXCol设置为1。
-否则(PredFlagLXCol[xColCb][yColCb]等于0),适用以下:
-如果NoBackwardPredFlag等于1并且PredFlagLYCol[xColCb][yColCb]等于1,则mvCol、refIdxCol和listCol分别设置为mvLYCol[xColCb][yColCb]、refIdxLYCol[xColCb][yColCb]和LY,Y等于!X,其中X是调用此过程的X的值。将availableFlagLXCol设置为等于1。
-否则,将mvLXCol的两个分量设置为等于0,并将availableFlagLXCol设置为等于0。
…
5.3实施例#3
可以对JVET-O2001-vE中规定的工作草案进行如下更改。
8.5.6.6.2缺省加权样点预测过程
…
按照如下推导变量shift1、shift2、offset1、offset2和offset3:
–将变量shift1设置为等于Max(2,14-bitDepth),将变量shift2设置为等于Max(3,15-bitDepth)。
–将变量offset1设置为等于1<<(shift1-1)。
–将变量offset2设置为等于1<<(shift2-1)。
–将变量offset3设置为等于1<<(shift2+1[[2]])。
…
–否则(predFlagL0等于1并且predFlagL1等于1),适用以下:
-如果bcwIdx等于0或者ciip_flag[xCb][yCb]等于1,按照如下推导预测样点值:
pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1, (8-823)
(predSamplesL0[x][y]+predSamplesL1[x][y]+offset2)>>shift2)
-否则(bcwIdx不等于0并且ciip_flag[xCb][yCb]等于0),适用以下:
-将变量w1设置为等于bcwWLut[bcwIdx],其中bcwWLut[k]={4,5,3,10,-2}。
-将变量w0设置为等于(8-w1)。
-按照如下推导预测样点值:
pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1, (8-824)
(w0*predSamplesL0[x][y]+w1*predSamplesL1[x][y]
+offset3)>>(shift2+[[3]]2))
…
可选地,适用以下:
…
按照如下推导变量shift1、shift2、offset1、offset2和offset3:
–将变量shift1设置为等于Max(2,14-bitDepth)[[并将变量shift2设置为等于Max(3,15-bitDepth)]]。
–将变量offset1设置为等于1<<(shift1-1)。
–将变量offset2设置为等于1<<(shift1+[[2-]]1)。
将变量offset3设置为等于1<<(shift[[2]]1+2)]]。
…
–否则(predFlagL0等于1并且predFlagL1等于1),适用以下:
-如果bcwIdx等于0或者ciip_flag[xCb][yCb]等于1,按照如下推导预测样点值:
pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1, (8-823)
(predSamplesL0[x][y]+predSamplesL1[x][y]+offset2)>>(shift1+1)[[2]])
-否则(bcwIdx不等于0并且ciip_flag[xCb][yCb]等于0),适用以下:
-将变量w1设置为等于bcwWLut[bcwIdx],其中bcwWLut[k]={4,5,3,10,-2}。
-将变量w0设置为等于(8-w1)。
-按照如下推导预测样点值:
pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1, (8-824)(w0*predSamplesL0[x][y]+w1*predSamplesL1[x][y]+offset3)>>(shift1+3[[2+3]]))
…
可选地,适用以下:
…
按照如下推导变量shift1、shift2、offset1、offset2和offset3:
–将变量shift1设置为等于Max(2,14-bitDepth),将变量shift2设置为等于Max(3,15-bitDepth)。
–将变量offset1设置为等于1<<(shift1-1)。
–将变量offset2设置为等于1<<(shift2-1)。
–[[将变量offset3设置为等于1<<(shift2+2)]]。
…
–否则(predFlagL0等于1并且predFlagL1等于1),适用以下:
-如果bcwIdx等于0或者ciip_flag[xCb][yCb]等于1,按照如下推导预测样点值:
pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1, (8-823)
(predSamplesL0[x][y]+predSamplesL1[x][y]+offset2)>>shift2)
-否则(bcwIdx不等于0并且ciip_flag[xCb][yCb]等于0),适用以下:
-将变量w1设置为等于bcwWLut[bcwIdx],其中bcwWLut[k]={4,5,3,10,-2}。
-将变量w0设置为等于(8-w1)。
-按照如下推导预测样点值:
pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(8 824)
(w0*((predSamplesL0[x][y]+offset1)>>
shift1)+w1*((predSamplesL1[x][y]+offset1)>>
shift1)+4)>>(8[[shift2+3)]])
…
5.4实施例#4
可以对JVET-O2001-vE中规定的工作草案进行如下更改。
8.5.6.6.2缺省加权样点预测过程
…
-否则(bcwIdx不等于0并且ciip_flag[xCb][yCb]等于0),适用以下:
将变量w1设置为等于bcwWLut[bcwIdx],其中,bcwWLut[k]={4,5,3,10,2[[-2]]}/{4,5,3,10,1}/{4,3,5,10,2}/{4,3,5,10,1}/{4,5,3,10,-1}.
…
5.5实施例#5
可以对JVET-O2001-vE中规定的工作草案进行如下更改。
8.5.2.7Merge运动矢量差的推导过程
…
mMvdL1[0]=Clip3(-2[[15]]17,2[[15]]17-1,(distScaleFactor*mMvdL0[0]+ (8-394)
128-(distScaleFactor*mMvdL0[0]>=0))>>8)
mMvdL1[1]=Clip3(-2[[15]]17,2[[15]]17-1,(distScaleFactor*mMvdL0[1]+ (8-395)
128-(distScaleFactor*mMvdL0[1]>=0))>>8)
…
mMvdL0[0]=Clip3(-2[[15]]17,2[[15]]17-1,(distScaleFactor*mMvdL1[0]+ (8-404)
128-(distScaleFactor*mMvdL1[0]>=0))>>8)
mMvdL0[1]=Clip3(-2[[15]]17,2[[15]]17-1,,(distScaleFactor*mMvdL1[1]+ (8-405)
128-(distScaleFactor*mMvdL1[1]>=0))>>8))
…
5.6实施例#6
可以对JVET-O2001-vE中规定的工作草案进行如下更改。
7.3.8.5编解码单元语法
图14A是视频处理装置1400的框图。装置1400可以用于实现本文描述的一种或多种方法。装置1400可以实施在智能手机、平板电脑、计算机、物联网(IoT)接收器等之中。装置1400可以包括一个或多个处理器1402、一个或多个存储器1404和视频处理硬件1406。(多个)处理器1402可以配置成实现本申请文件中描述的一种或多种方法(包括但不限于方法800、900、1000、1100、1200和1300)。(多个)存储器1404可以用于存储用于实现本文描述的方法和技术的数据和代码。视频处理硬件1406可以用于使用硬件电路实现本申请文件中描述的一些技术。在一些实施例中,硬件1406可以完全或部分地在处理器1402中实现,例如图形协处理器。
图14B是示出示例视频处理***1410的框图,其中可以实施本文所公开的各种技术。各种实施方式可以包括***1410的一些或全部组件。***1410可以包括用于接收视频内容的输入1412。视频内容可以原始或未压缩格式接收,例如8比特或10比特多分量像素值,或者可以压缩或编码格式接收。输入1412可以表示网络接口、***总线接口或存储接口。网络接口的示例包括诸如以太网、无源光网络(PON)等的有线接口以及诸如Wi-Fi或蜂窝接口的无线接口。
***1410可以包括编解码组件1414,其可实现本申请文件中所描述的各种编解码或编码方法。编解码组件1414可以降低从编解码组件1414的输入1412到编解码组件1414的输出的视频的平均比特率,以产生视频的编解码表示。因此,编解码技术有时被称为视频压缩或视频转码技术。编解码组件1414的输出可以被存储,也可以通过连接的通信(如组件1416所示)进行传输。输入1412处接收的视频的存储或传输的比特流(或编解码)表示可由组件1418用于生成像素值或发送到显示接口1410的可显示视频。从比特流表示生成用户可观看视频的过程有时称为视频解压缩。此外,尽管某些视频处理操作被称为“编解码”操作或工具,但应当理解的是,编解码工具或操作被用于编码器处,并且逆向编解码结果的对应的解码工具或操作将由解码器执行。
***总线接口或显示接口的示例可以包括通用串行总线(USB)或高清晰度多媒体接口(HDMI)或显示端口等。存储接口的示例包括SATA(串行高级技术附件)、PCI、IDE接口等。本文中所述的技术可实施在各种电子设备中,例如移动电话、笔记本电脑、智能手机或其他能够执行数字数据处理和/或视频显示的设备。
在一些实施例中,视频编解码方法可以使用如图14A或14B所示的在硬件平台上实现的装置来实现。
以下列表提供能够解决本申请文件中描述的技术问题以及其他问题的实施例。第一组条款描述在先前章节中所公开技术的某些特征和方面。
1.一种用于处理视频的方法,包括:基于相对于当前视频块的并置视频块的预测模式,确定一个或多个并置运动矢量的可用性;以及基于一个或多个并置运动矢量,执行当前块与当前块的比特流表示之间的转换,其中,预测模式的指示包括一个比特,该比特指示当前视频块是使用帧间模式还是非帧间模式编解码。
2.一种用于处理视频的方法,包括:对于视频块的编码解表示与视频块之间的转换,确定视频块的并置视频块的类型,其中,该类型取仅有的两个可能值中的一个;以及基于该确定执行转换。
3.根据条款2所述的方法,其中,两个可能值包括:指示并置视频块是帧间编解码的第一值;以及指示并置视频块是使用除帧间编解码之外的模式编解码的第二值。
4.根据条款1-3中任一项所述的方法,其中,当当前视频块是以调色板预测模式编解码时与当当前视频块是以帧内或帧内块复制(IBC)预测模式编解码时,该确定相同。
5.根据条款1-3中任一项所述的方法,其中,当以非帧间预测模式编解码并置视频块时,将一个或多个并置运动矢量确定为不可用。
6.根据条款1-3中任一项所述的方法,其中,当以非帧间预测模式编解码并置视频块时,将一个或多个并置运动矢量确定为可用并且包括缺省运动矢量。
7.根据条款5或6所述的方法,其中,非帧间预测模式是帧内预测模式、调色板预测模式或帧内块复制(IBC)预测模式。
8.根据条款1-3中任一项所述的方法,其中,该确定是基于并置视频块的参考索引或参考列表。
9.根据条款8所述的方法,其中,参考索引是预定值。
10.根据条款8所述的方法,其中,参考索引排除预定值。
11.根据条款9或10所述的方法,其中,预定值是0。
12.一种视频处理方法,包括:基于与具有编解码单元(CU)级加权过程的双向预测(BCW)模式关联的第一权重表,推导当前块的预测样点,其中,第一权重表是不对称的;以及基于预测样点,执行当前块与当前块的比特流表示之间的转换。
13.根据条款12所述的方法,其中,第一权重表中的条目是非单调递增。
14.根据条款12所述的方法,其中,BCW过程还基于不同于第一权重表的第二权重表。
15.根据条款12所述的方法,其中,推导预测样点包括:将中间预测样点转换为第一比特深度;以及将第一权重表的权重应用于中间预测样点以推导预测样点;以及将预测样点转换为第二比特深度。
16.根据条款15所述的方法,其中,第二比特深度是当前视频块的颜色分量的比特深度。
17.一种视频处理方法,包括:基于当前视频块的维度,进行关于在当前视频块的比特流表示中选择性信令通知当前视频块的跳过编解码模式的指示的决定;以及基于该决定,执行当前块与当前块的比特流表示之间的转换。
18.根据条款17所述的方法,其中,在确定包括当前视频块的条带的条带类型是I-slice、sps_ibc_enabled_flag设置为真以及当前视频块的宽度和高度小于或等于N的情况下,信令通知该指示。
19.根据条款17所述的方法,其中,在确定以帧内块复制(IBC)模式编解码当前视频块以及当前视频块的高度和宽度小于或等于N的情况下,信令通知该指示。
20.根据条款18或19所述的方法,其中,N=64。
21.一种视频处理方法,包括:基于对当前视频块的第一颜色分量中的一个或多个块应用第一编解码工具,进行关于对当前视频块的第二颜色分量的至少一个块选择性应用第二编解码工具的决定;以及基于该决定,执行当前块与当前块的比特流表示之间的转换。
22.根据条款21所述的方法,其中,在确定第二编解码工具与第一编解码工具相同的情况下,应用第二编解码工具。
23.根据条款21所述的方法,其中,在确定第二编解码工具不同于第一编码解工具的情况下,不应用第二编解码工具。
24.根据条款21所述的方法,其中,该决定还基于比特流表示中的指示。
25.根据条款21-24中任一项所述的方法,其中,第一颜色分量是亮度分量,第二颜色分量是色度分量。
26.根据条款21-24中任一项所述的方法,其中,第一颜色分量是第一色度颜色分量,第二颜色分量是第二色度颜色分量。
27.根据条款21-26中任一项所述的方法,其中,第一编解码工具和第二编解码工具是以下之一:时域运动矢量预测(TMVP)、可选时域运动矢量预测(ATMVP)、具有编解码单元(CU)级加权过程的双向预测(BCW)、具有运动矢量差的Merge(MMVD)模式或位置相关的预测组合(PDPC)过程。
28.一种视频处理方法,包括:基于当前视频块的运动矢量精度,进行关于选择性信令通知使用可选半像素插值滤波器而不是缺省半像素插值滤波器的指示的决定;以及基于该决定,执行当前块和当前块的比特流表示之间的转换。
29.根据条款28所述的方法,其中,在确定以具有运动矢量差的Merge(MMVD)模式编解码当前视频块以及重建运动矢量的精度低于半像素的情况下,使用缺省半像素插值滤波器。
30.根据条款1-29中任一项所述的方法,其中,执行转换还基于解码器参数集(DPS)、序列参数集(SPS)、图片参数集(PPS)、自适应参数集(APS)、视频参数集(VPS)、序列标头、图片标头、条带标头或片组标头中的信令通知。
31.根据条款1-30中任一项所述的方法,其中,执行转换包括从当前视频块生成比特流表示。
32.根据条款1-30中任一项所述的方法,其中,执行转换包括从比特流表示生成当前视频块。
33.一种视频解码装置,包括处理器,处理器被配置成实现根据条款1-32中任一项所述的方法。
34.一种存储在非暂时性计算机可读介质上的计算机程序产品,计算机程序产品包括程序代码,该程序代码用于运行根据条款1-32中任一项所述的方法。
第二组条款描述在先前章节中所公开技术的某些特征和方面(例如,第1项和第2项)。
1.一种视频处理方法,包括:进行第一确定,该第一确定关于视频的视频块的并置视频块是使用帧间编解码模式还是非帧间编解码模式编解码的;基于该第一确定进行第二确定,该第二确定关于并置视频块的运动矢量的可用性或者推导并置视频块的运动矢量的模式;以及基于该第二确定执行视频块与视频的编解码表示之间的转换。
2.根据条款1所述的方法,其中,非帧间编解码模式是帧内模式、调色板模式或帧内块复制(IBC)模式。
3.根据条款1所述的方法,其中,执行第二确定,使得对于以调色板模式编解码的并置视频块和以帧内模式编解码的并置视频块,该第二确定是相同的。
4.根据条款1所述的方法,其中,执行第二确定,使得对于以调色板模式编解码的并置视频块和以帧内块复制模式编解码的并置视频块,该第二确定是相同的。
5.根据条款1所述的方法,其中,执行第二确定,使得对于以帧内模式编解码的并置视频块和以帧内块复制模式编解码的并置视频块,该第二确定是相同的。
6.根据条款1所述的方法,其中,进行第一确定包括:生成一个比特以指示并置视频块是使用帧间编解码模式还是非帧间编解码模式编解码的。
7.根据条款1所述的方法,其中,基于并置视频块是使用非帧间编解码模式编解码的第一确定,第二确定确定并置视频块的运动矢量不可用。
8.根据条款1所述的方法,其中,基于并置视频块是使用非帧间编解码模式编解码的第一确定,第二确定确定并置视频块的运动矢量可用,其中,将缺省运动矢量分配为并置视频块的运动矢量。
9.根据条款1所述的方法,其中,在使用非帧间编解码模式编解码并置视频块的情况下,检查除并置视频块之外的另一视频块。
10.根据条款9所述的方法,其中,另一视频块是邻近块,该邻近块是在并置视频块的左、右、上或下方的最近帧间编解码块。
11.一种视频处理方法,包括:对于视频的视频块与视频的编解码表示之间的转换,基于视频块的并置视频块的参考索引或者参考列表确定一个或多个并置运动矢量;以及基于该确定执行转换。
12.根据条款11所述的方法,其中,在并置视频块的参考列表的参考索引不等于预定值的情况下,推导一个或多个并置运动矢量。
13.根据条款11所述的方法,其中,在并置视频块的参考列表的参考索引等于预定值的情况下,推导一个或多个并置运动矢量。
14.根据条款12或13所述的方法,其中,预定值是0。
15.根据条款11所述的方法,其中,在并置视频块是以非帧间编解码模式编解码的或者并置视频块的参考图片不满足给定条件的情况下,将一个或多个并置运动矢量设置为不可用。
16.根据条款11所述的方法,其中,在并置视频块是以非帧间编解码模式编解码的或者并置视频块的参考图片不满足给定条件的情况下,将一个或多个并置运动矢量设置为缺省值。
17.根据条款1-16中任一项所述的方法,其中,转换包括将视频编码为编解码表示。
18.根据条款1-16中任一项的方法,其中,转换包括对编解码表示进行解码以生成视频。
19.一种视频处理装置,包括:处理器,该处理器被配置成实现条款1-16中任意一项或多项所述的方法。
20.一种计算机可读介质,存储程序代码,该程序代码在被执行时促使处理器实现条款1-16中任意一项或多项所述的方法。
21.一种计算机可读介质,存储根据上述方法中的任意一项生成的编解码表示或比特流表示。
第三组条款描述了先前章节中所公开的技术的某些特征和方面(例如,3-7项)。
1.一种视频处理方法(例如,图15C中示出的方法1530),包括:对于视频的当前块与视频的编解码表示之间的转换,推导(1532)根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定预测块的两个初始预测块的加权和;以及,使用预测块执行(1534)转换,其中,推导预测块包括:将权重应用于分别属于两个初始预测块的两个中间预测样点以推导最终预测样点;以及对最终预测样点进行右移操作以转换最终预测样点的比特深度,其中,右移操作是pbSample>>(shift1+3),其中,pbSample表示最终预测样点,shift1设置为等于Max(2,14-bitDepth);基于最终预测样点确定预测块。
2.根据条款1所述的方法,其中,在执行右移操作之前,将偏移添加到最终预测样点。
3.根据条款1所述的方法,其中,偏移是1<<(shift1+2)。
4.根据条款3所述的方法,其中,推导最终预测样点pbSamples[x][y]使得pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(w0*predSamplesL0[x][y]+w1*predSamplesL1[x][y]+offset3)>>(shift1+3)),其中,w0和w1是权重,predSamplesL0[x][y]和predSamplesL1[x][y]是两个中间预测样点。
5.根据条款1所述的方法,其中,权重中的至少一个属于权重表,其中,权重表的条目非单调递增。
6.一种视频处理方法,包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定预测块的两个初始预测块的加权和;使用预测块执行转换,其中,推导预测块包括:将权重应用于分别属于两个初始预测块的两个中间预测样点以推导最终预测样点;以及将偏移添加到最终预测样点,该偏移为1<<(shift1+2),其中,shift1设置为等于Max(2,14-bitDepth);基于最终预测样点确定预测块。
7.根据条款6所述的方法,其中,基于最终预测样点确定预测块包括:对最终预测样点执行右移操作以转换最终预测样点的比特深度。
8.根据条款1或7所述的方法,其中,右移操作是pbSample>>(shift1+3),其中,pbSample表示最终预测样点。
9.根据条款8所述的方法,其中,推导最终预测样点pbSamples[x][y]以使得pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(w0*predSamplesL0[x][y]+w1*predSamplesL1[x][y]+offset3)>>(shift1+3)),其中w0和w1是权重,predSamplesL0[x][y]和predSamplesL1[x][y]是两个中间预测样点。
10.根据条款6所述的方法,其中,权重中的至少一个属于权重表,其中,权重表的条目非单调递增。
11.一种视频处理方法(例如,图15D中所示出的方法1540),包括:对于视频的当前块与视频的编解码表示之间的转换,根据规则推导(1542)当前块的Merge模式运动矢量预测值的运动矢量差;基于该推导执行(1544)转换,其中,规则规定是否将运动矢量差裁剪到与用于裁剪运动矢量的范围相同的范围。
12.根据条款11所述的方法,其中,规则规定将运动矢量差裁剪到与用于裁剪运动矢量的范围相同的范围。
13.根据条款11所述的方法,其中,用于裁剪运动矢量的范围是18比特。
14.根据条款13所述的方法,其中,用于裁剪运动矢量的范围是[-217,217–1]。
15.根据条款11所述的方法,其中,该规规定将运动矢量差裁剪到[-217+1,217–1]。
16.根据条款11所述的方法,其中,规则规定不裁剪运动矢量差。
17.根据条款16所述的方法,其中,规则规定将通过将运动矢量差添加到运动矢量预测候选而获得的结果裁剪为18比特。
18.一种视频处理方法,包括:对于视频的当前块和视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定预测块的两个初始预测块的加权和,其中权重中的至少一个属于权重表,根据规则组织权重表;使用预测块执行转换,其中,该规则规定权重表的条目非单调递增。
19.根据条款18所述的方法,其中,权重表包括第(i+1)个条目,其值小于第i个条目的值。
20.一种视频处理方法,包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定预测块的两个初始预测块的加权和,其中,权重中的至少一个属于权重表,并且权重表选自多个权重表;以及使用预测块执行转换。
21.根据条款20所述的方法,其中,多个权重表包括{4,5,3,10,2}、{4,3,5,10,2}、{4,5,3,10,1}、{4,3,5,10,1}或{4,5,3,10,-1}。
22.一种视频处理方法,包括:对于视频的当前块与视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中权重用来确定用于确定预测块的两个初始预测块的加权和;使用预测块执行转换,其中,推导预测块包括:将中间预测样点转换为第一比特深度;将权重应用于中间预测样点以推导最终预测样点;将最终预测样点转换为第二比特深度。
23.根据条款22所述的方法,其中,第二比特深度是当前块的颜色分量的比特深度。
24.根据条款22所述的方法,其中,第一比特深度不等于所述中间预测样点的比特深度。
25.根据条款22所述的方法,其中,推导预测块包括:将样点从较高比特深度转换为较低比特深度的右移操作或将样点从较低比特深度转换为较高比特深度的左移操作。
26.根据条款25所述的方法,其中,在右移操作或左移操作之前添加偏移。
27.根据条款22所述的方法,其中,推导最终预测样点pbSamples[x][y]以使得pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(w0*((predSamplesL0[x][y]+offset1)>>shift1)+w1*((predSamplesL1[x][y]+offset1)>>shift1)+4)>>3),其中w0和w1是权重,shift1设置为等于Max(2,14-bitDepth),offset1设置为等于1<<(shift1-1)。
28.一种视频处理方法(图15E中所示出的方法1550),包括:对于视频的当前块与视频的编解码表示之间的转换,推导(1552)根据双向编解码单元级加权(BCW)工具确定的当前块的预测块,其中第一权重和第二权重用来确定用于确定预测块的两个初始预测块的加权和,第一权重和第二权重中的至少一个包括在权重表中,其中,根据规则组织该权重表;使用预测块执行转换,其中,规则规定权重表是不对称的。
29.根据条款28所述的方法,其中,权重表包括其值对应于第一权重W的条目,并且不包括其值对应于第二权重(1-W)的任何条目,由此W在[a,b]的范围内,并且a和b的总和(a+b)等于1。
30.根据条款28所述的方法,其中,在通过(W0*P0+W1*P1)>>N生成预测样点情况下,权重表包括其值对应于第一权重W的条目,并且不包括其值对应于第二权重(2N-W)的任何条目,其中,W0和W1是分别应用于两个初始预测块P0和P1的第一权重和第二权重;(W0+W1)等于(1<<N)。
31.根据条款1-30中任一项所述的方法,其中,执行转换包括从当前视频块生成编解码表示。
32.根据条款1-30中任一项所述的方法,其中,执行转换包括从编解码表示生成当前视频块。
33.一种视频处理设备,包括视频处理器,该处理器被配置为实现条款1-32中任意一项或多项所述的方法。
34.一种计算机可读介质,存储程序代码,该程序代码在被执行时促使处理器实现条款1-32中任意一项或多项所述的方法。
35.一种计算机可读介质,其存储根据上述方法中的任意一项生成的编解码表示或比特流表示。
根据前述内容,可以理解的是,出于说明的目的,本文中已经描述了当前公开的技术的特定实施例,但是在不脱离本发明的范围的情况下可以进行各种修改。因此,除了所附权利要求书外,当前公开的技术不受限制。
本文中描述的主题的实例和功能操作可以在各种***、数字电子电路、或计算机软件、固件或硬件中实现,包括本说明书中所公开的结构及其结构等效体,或其中一个或多个的组合。本说明说中描述的主题的实例可以实现为一个或多个计算机程序产品,即一个或多个编码在有形的且非易失的计算机可读介质上的计算机程序指令的模块,以供数据处理装置执行或控制数据处理装置的操作。计算机可读介质可以是机器可读存储设备、机器可读存储基板、存储设备、影响机器可读传播信号的物质组成或其中一个或其中多个的组合。术语“数据处理单元”或“数据处理装置”包括用于处理数据的所有装置、设备和机器,包括例如可编程处理器、计算机或多处理器或计算机组。除硬件外,该装置还可以包括为计算机程序创建执行环境的代码,例如,构成处理器固件的代码、协议栈、数据库管理***、操作***或其中一个或多个的组合。
计算机程序(也称为程序、软件、软件应用、脚本或代码)可以用任何形式的编程语言(包括编译语言或解释语言)编写,并且可以以任何形式部署,包括作为独立程序或作为模块、组件、子程序或其他适合在计算环境中使用的单元。计算机程序不一定与文件***中的文件对应。程序可以存储在保存其他程序或数据的文件的部分中(例如,存储在标记语言文档中的一个或多个脚本)、专用于该程序的单个文件中、或多个协调文件(例如,存储一个或多个模块、子程序或部分代码的文件)中。计算机程序可以部署在一台或多台计算机上来执行,这些计算机位于一个站点上或分布在多个站点上,并通过通信网络互连。
本说明书中描述的处理和逻辑流可以通过一个或多个可编程处理器执行,该处理器执行一个或多个计算机程序,通过在输入数据上操作并生成输出来执行功能。处理和逻辑流也可以通过特殊用途的逻辑电路来执行,并且装置也可以实现为特殊用途的逻辑电路,例如,FPGA(现场可编程门阵列)或ASIC(专用集成电路)。
例如,适于执行计算机程序的处理器包括通用和专用微处理器,以及任何类型数字计算机的任何一个或多个。通常,处理器将从只读存储器或随机存取存储器或两者接收指令和数据。计算机的基本元件是执行指令的处理器和存储指令和数据的一个或多个存储设备。通常,计算机还将包括一个或多个用于存储数据的大容量存储设备,例如,磁盘、磁光盘或光盘,或通过操作耦合到一个或多个大容量存储设备来从其接收数据或将数据传输到一个或多个大容量存储设备,或两者兼有。然而,计算机不一定具有这样的设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器设备,包括例如半导体存储器设备,例如EPROM、EEPROM和闪存设备。处理器和存储器可以由专用逻辑电路来补充,或合并到专用逻辑电路中。
说明书与附图一起旨在仅视为示例性的,其中示例性意味着示例。如本文所使用的,单数形式“一”、“一个”和“该”也旨在包括复数形式,除非上下文另外明确指出。另外,“或”的使用旨在包括“和/或”,除非上下文另外明确指出。
虽然本专利文件包含许多细节,但不应将其解释为对任何发明或权利要求范围的限制,而应解释为对特定发明的特定实施例的特征的描述。本专利文件在单独实施例的上下文描述的某些特征也可以在单个实施例中组合实施。相反,在单个实施例的上下文中描述的各种功能也可以在多个实施例中单独实施,或在任何合适的子组合中实施。此外,尽管上述特征可以描述为在某些组合中起作用,甚至最初要求是这样,但在某些情况下,可以从组合中移除权利要求组合中的一个或多个特征,并且权利要求的组合可以指向子组合或子组合的变体。
同样,尽管附图中以特定顺序描述了操作,但这不应理解为要获得想要的结果必须按照所示的特定顺序或顺序执行此类操作,或执行所有说明的操作。此外,本专利文件所述实施例中各种***组件的分离不应理解为在所有实施例中都需要这样的分离。
仅描述了一些实例和示例,可以基于本专利文件中描述和说明的内容做出其他实例、增强和变体。
Claims (35)
1.一种视频处理方法,包括:
对于视频的当前块与所述视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的所述当前块的预测块,其中权重用于确定两个初始预测块的加权和,所述两个初始预测块用于确定所述预测块;以及
使用所述预测块执行所述转换,
其中,推导所述预测块包括:
将所述权重应用于分别属于所述两个初始预测块的两个中间预测样点以推导最终预测样点;以及
对所述最终预测样点进行右移操作以转换所述最终预测样点的比特深度,其中,所述右移操作是pbSample>>(shift1+3),其中,pbSample表示所述最终预测样点,shift1设置为等于Max(2,14-bitDepth);以及
基于所述最终预测样点确定所述预测块。
2.根据权利要求1所述的方法,其中,在执行所述右移操作之前,将偏移添加到所述最终预测样点。
3.根据权利要求1所述的方法,其中,所述偏移是1<<(shift1+2)。
4.根据权利要求3所述的方法,其中,推导所述最终预测样点pbSamples[x][y]使得pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(w0*predSamplesL0[x][y]+w1*predSamplesL1[x][y]+offset3)>>(shift1+3)),其中,w0和w1是所述权重,并且predSamplesL0[x][y]和predSamplesL1[x][y]是所述两个中间预测样点。
5.根据权利要求1所述的方法,其中,所述权重中的至少一个属于权重表,其中,所述权重表的条目非单调递增。
6.一种视频处理方法,包括:
对于视频的当前块与所述视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的所述当前块的预测块,其中权重用于确定两个初始预测块的加权和,所述两个初始预测块用于确定所述预测块;以及
使用所述预测块执行所述转换,
其中,推导所述预测块包括:
将所述权重应用于分别属于所述两个初始预测块的两个中间预测样点以推导最终预测样点;以及
将偏移添加到所述最终预测样点,其中,所述偏移为1<<(shift1+2),其中,shift1设置为等于Max(2,14-bitDepth);以及
基于所述最终预测样点确定所述预测块。
7.根据权利要求6所述的方法,其中,基于所述最终预测样点确定所述预测块包括:对所述最终预测样点执行右移操作以转换所述最终预测样点的比特深度。
8.根据权利要求1或7所述的方法,其中,所述右移操作是pbSample>>(shift1+3),其中,pbSample表示所述最终预测样点。
9.根据权利要求8所述的方法,其中,推导所述最终预测样点pbSamples[x][y]以使得pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(w0*predSamplesL0[x][y]+w1*predSamplesL1[x][y]+offset3)>>(shift1+3)),其中w0和w1是所述权重,并且predSamplesL0[x][y]和predSamplesL1[x][y]是所述两个中间预测样点。
10.根据权利要求6所述的方法,其中,所述权重中的至少一个属于权重表,其中,权重表的条目非单调递增。
11.一种视频处理方法,包括:
对于视频的当前块与所述视频的编解码表示之间的转换,根据规则推导所述当前块的Merge模式运动矢量预测值值的运动矢量差值;以及
基于所述推导执行所述转换,
其中,所述规则规定是否将所述运动矢量差值裁剪到与用于裁剪运动矢量的范围相同的范围。
12.根据权利要求11所述的方法,其中,所述规则规定将所述运动矢量差裁剪到与用于裁剪运动矢量的范围相同的范围。
13.根据权利要求11所述的方法,其中,所述用于裁剪运动矢量的范围是18比特。
14.根据权利要求13所述的方法,其中,所述用于裁剪运动矢量的范围是[-217,217–1]。
15.根据权利要求11所述的方法,其中,所述规则规定将所述运动矢量差值裁剪到[-217+1,217–1]。
16.根据权利要求11所述的方法,其中,所述规则规定不裁剪所述运动矢量差值。
17.根据权利要求16所述的方法,其中,所述规则规定将通过将所述运动矢量差值添加到运动矢量预测候选而获得的结果裁剪为18比特。
18.一种视频处理方法,包括:
对于视频的当前块和所述视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的所述当前块的预测块,其中权重用于确定两个初始预测块的加权和,所述两个初始预测块用于确定所述预测块,其中所述权重中的至少一个属于权重表,根据规则组织所述权重表;以及
使用所述预测块执行所述转换,
其中,所述规则规定所述权重表的条目非单调递增。
19.根据权利要求18所述的方法,其中,所述权重表包括第(i+1)个条目,所述第(i+1)个条目的值小于第i个条目的值。
20.一种视频处理方法,包括:
对于视频的当前块与所述视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的所述当前块的预测块,其中权重用于确定两个初始预测块的加权和,所述两个初始预测块用于确定所述预测块,其中,所述权重中的至少一个属于权重表,并且所述权重表选自多个权重表;以及
使用所述预测块执行所述转换。
21.根据权利要求20所述的方法,其中,所述多个权重表包括{4,5,3,10,2}、{4,3,5,10,2}、{4,5,3,10,1}、{4,3,5,10,1}或{4,5,3,10,-1}。
22.一种视频处理方法,包括:
对于视频的当前块与所述视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的所述当前块的预测块,其中权重用于确定两个初始预测块的加权和,所述两个初始预测块用于确定所述预测块;以及
使用所述预测块执行所述转换,
其中,推导所述预测块包括:
将中间预测样点转换为第一比特深度;
将所述权重应用于所述中间预测样点以推导最终预测样点;以及
将所述最终预测样点转换为第二比特深度。
23.根据权利要求22所述的方法,其中,所述第二比特深度是所述当前块的颜色分量的比特深度。
24.根据权利要求22所述的方法,其中,所述第一比特深度不等于所述中间预测样点的比特深度。
25.根据权利要求22所述的方法,其中,推导所述预测块包括:将样点从较高比特深度转换为较低比特深度的右移操作或将样点从较低比特深度转换为较高比特深度的左移操作。
26.根据权利要求25所述的方法,其中,在所述右移操作或所述左移操作之前添加偏移。
27.根据权利要求22所述的方法,其中,推导所述最终预测样点pbSamples[x][y]以使得pbSamples[x][y]=Clip3(0,(1<<bitDepth)-1,(w0*((predSamplesL0[x][y]+offset1)>>shift1)+w1*((predSamplesL1[x][y]+offset1)>>shift1)+4)>>3),其中w0和w1是所述权重,shift1设置为等于Max(2,14-bitDepth),并且offset1设置为等于1<<(shift1-1)。
28.一种视频处理方法,包括:
对于视频的当前块与所述视频的编解码表示之间的转换,推导根据双向编解码单元级加权(BCW)工具确定的所述当前块的预测块,其中第一权重和第二权重用于确定两个初始预测块的加权和,所述两个初始预测块用于确定所述预测块,其中,所述第一权重和第二权重中的至少一个包括在权重表中,其中,根据规则组织所述权重表;以及
使用所述预测块执行所述转换,
其中,所述规则规定所述权重表是不对称的。
29.根据权利要求28所述的方法,其中,所述权重表包括其值对应于所述第一权重W的条目,并且不包括其值对应于所述第二权重(1-W)的任何条目,其中W在[a,b]的范围内,并且a和b的总和(a+b)等于1。
30.根据权利要求28所述的方法,其中,在通过(W0*P0+W1*P1)>>N生成预测样点情况下,所述权重表包括其值对应于所述第一权重W的条目,并且不包括其值对应于所述第二权重(2N-W)的任何条目,其中,W0和W1是分别应用于所述两个初始预测块P0和P1的所述第一权重和第二权重;并且(W0+W1)等于(1<<N)。
31.根据权利要求1-30中任一项所述的方法,其中,执行所述转换包括从所述当前视频块生成所述编解码表示。
32.根据权利要求1-30中任一项所述的方法,其中,执行所述转换包括从所述编解码表示生成所述当前视频块。
33.一种视频处理设备,包括视频处理器,所述处理器被配置为实施如权利要求1-32中任意一项或多项所述的方法。
34.一种计算机可读介质,存储程序代码,所述程序代码在被执行时使处理器实施如权利要求1-32中任意一项或多项所述的方法。
35.一种计算机可读介质,其存储根据权利要求1-32中任意一项所述的方法生成的编解码表示或比特流表示。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNPCT/CN2019/105825 | 2019-09-13 | ||
CN2019105825 | 2019-09-13 | ||
PCT/CN2020/114761 WO2021047632A1 (en) | 2019-09-13 | 2020-09-11 | Weighted sample bi-prediction in video coding |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114402610A true CN114402610A (zh) | 2022-04-26 |
Family
ID=74866100
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202080064505.8A Pending CN114402610A (zh) | 2019-09-13 | 2020-09-11 | 视频编解码中的加权样点双向预测 |
Country Status (7)
Country | Link |
---|---|
US (3) | US11595658B2 (zh) |
EP (1) | EP4011077A4 (zh) |
JP (2) | JP7323710B2 (zh) |
KR (1) | KR20220058551A (zh) |
CN (1) | CN114402610A (zh) |
BR (1) | BR112022004553A2 (zh) |
WO (2) | WO2021047631A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7323710B2 (ja) | 2019-09-13 | 2023-08-08 | 北京字節跳動網絡技術有限公司 | 映像符号化における重み付けサンプルの双予測 |
US20220337875A1 (en) * | 2021-04-16 | 2022-10-20 | Tencent America LLC | Low memory design for multiple reference line selection scheme |
US20230171405A1 (en) * | 2021-11-30 | 2023-06-01 | Tencent America LLC | Scene transition detection based encoding methods for bcw |
WO2024125617A1 (en) * | 2022-12-15 | 2024-06-20 | Douyin Vision Co., Ltd. | Method, apparatus, and medium for video processing |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007116551A1 (ja) * | 2006-03-30 | 2007-10-18 | Kabushiki Kaisha Toshiba | 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法 |
US20130243093A1 (en) * | 2012-03-16 | 2013-09-19 | Qualcomm Incorporated | Motion vector coding and bi-prediction in hevc and its extensions |
WO2014052982A1 (en) * | 2012-09-30 | 2014-04-03 | Qualcomm Incorporated | Performing residual prediction in video coding |
US20160219261A1 (en) * | 2015-01-28 | 2016-07-28 | Mediatek Inc. | Method of Simple Intra Mode for Video Coding |
WO2019017694A1 (ko) * | 2017-07-18 | 2019-01-24 | 엘지전자 주식회사 | 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 |
CN109792534A (zh) * | 2016-07-14 | 2019-05-21 | 三星电子株式会社 | 视频解码方法及其装置以及视频编码方法及其装置 |
Family Cites Families (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1265649C (zh) * | 2002-01-24 | 2006-07-19 | 株式会社日立制作所 | 运动图像的编码方法、解码方法、编码装置及解码装置 |
KR101211665B1 (ko) * | 2005-08-12 | 2012-12-12 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
WO2010041855A2 (en) | 2008-10-06 | 2010-04-15 | Lg Electronics Inc. | A method and an apparatus for processing a video signal |
KR101675118B1 (ko) | 2010-01-14 | 2016-11-10 | 삼성전자 주식회사 | 스킵 및 분할 순서를 고려한 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치 |
PT3826307T (pt) * | 2011-06-24 | 2023-10-19 | Ntt Docomo Inc | Método para a previsão de compensação de movimento |
JP5925801B2 (ja) * | 2012-06-27 | 2016-05-25 | 株式会社東芝 | 符号化方法、復号方法、符号化装置、及び復号装置 |
JP6046246B2 (ja) | 2012-07-02 | 2016-12-14 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | 3dビデオコーディングのための深度マップのイントラコーディング |
US9325990B2 (en) | 2012-07-09 | 2016-04-26 | Qualcomm Incorporated | Temporal motion vector prediction in video coding extensions |
US9491461B2 (en) | 2012-09-27 | 2016-11-08 | Qualcomm Incorporated | Scalable extensions to HEVC and temporal motion vector prediction |
SG11201502627QA (en) * | 2012-10-05 | 2015-05-28 | Mediatek Singapore Pte Ltd | Method and apparatus of motion vector derivation 3d video coding |
US9438926B2 (en) | 2012-12-21 | 2016-09-06 | Qualcomm Incorporated | Constraints on neighboring block based disparity vector (NBDV) techniques for 3D video |
CN105122803B (zh) | 2013-04-02 | 2019-01-08 | Vid拓展公司 | 针对可伸缩视频编码的增强型时间运动向量预测 |
US9948915B2 (en) | 2013-07-24 | 2018-04-17 | Qualcomm Incorporated | Sub-PU motion prediction for texture and depth coding |
US9497473B2 (en) * | 2013-10-03 | 2016-11-15 | Qualcomm Incorporated | High precision explicit weighted prediction for video coding |
US9571837B2 (en) | 2013-11-01 | 2017-02-14 | Broadcom Corporation | Color blending prevention in video coding |
WO2015085575A1 (en) | 2013-12-13 | 2015-06-18 | Mediatek Singapore Pte. Ltd. | Methods for background residual prediction |
WO2015109598A1 (en) | 2014-01-27 | 2015-07-30 | Mediatek Singapore Pte. Ltd. | Methods for motion parameter hole filling |
WO2015131387A1 (en) | 2014-03-07 | 2015-09-11 | Qualcomm Incorporated | Simplified sub-prediction unit (sub-pu) motion parameter inheritence (mpi) |
US10412387B2 (en) | 2014-08-22 | 2019-09-10 | Qualcomm Incorporated | Unified intra-block copy and inter-prediction |
WO2017131908A1 (en) * | 2016-01-29 | 2017-08-03 | Google Inc. | Dynamic reference motion vector coding mode |
US10477238B2 (en) * | 2016-09-07 | 2019-11-12 | Qualcomm Incorporated | Sub-PU based bi-directional motion compensation in video coding |
US10779007B2 (en) | 2017-03-23 | 2020-09-15 | Mediatek Inc. | Transform coding of video data |
WO2019191890A1 (zh) | 2018-04-02 | 2019-10-10 | 深圳市大疆创新科技有限公司 | 用于图像处理的方法和图像处理装置 |
CN110662036B (zh) | 2018-06-29 | 2022-09-02 | 北京字节跳动网络技术有限公司 | 运动信息共享的限制 |
KR20210088686A (ko) * | 2018-11-16 | 2021-07-14 | 샤프 가부시키가이샤 | 비디오 코딩에서 모션 벡터 예측을 도출하기 위한 시스템들 및 방법들 |
JPWO2020137920A1 (ja) | 2018-12-27 | 2021-11-18 | シャープ株式会社 | 予測画像生成装置、動画像復号装置、動画像符号化装置および予測画像生成方法 |
CN113261294B (zh) * | 2019-01-02 | 2024-06-18 | Lg电子株式会社 | 基于sbtmvp的帧间预测方法和设备 |
US11909960B2 (en) * | 2019-03-07 | 2024-02-20 | Lg Electronics Inc. | Method and apparatus for processing video signal |
US11323731B2 (en) * | 2019-03-08 | 2022-05-03 | Tencent America LLC | Method and apparatus for video coding |
CN113678455B (zh) * | 2019-03-12 | 2024-01-16 | Lg电子株式会社 | 用于导出双预测的权重索引信息的视频或图像编码 |
WO2020190655A1 (en) * | 2019-03-15 | 2020-09-24 | Interdigital Vc Holdings, Inc. | Method and device for image encoding and decoding |
WO2020251319A1 (ko) * | 2019-06-13 | 2020-12-17 | 엘지전자 주식회사 | Sbtmvp를 이용한 인터 예측 기반 영상 또는 비디오 코딩 |
CN114128289A (zh) * | 2019-06-13 | 2022-03-01 | Lg 电子株式会社 | 基于sbtmvp的图像或视频编译 |
CN114080809A (zh) * | 2019-06-13 | 2022-02-22 | Lg 电子株式会社 | 子块单元的基于时间运动矢量预测子候选的图像或视频编译 |
CA3143538A1 (en) * | 2019-06-14 | 2020-12-17 | Lg Electronics Inc. | Image decoding method and device for deriving weight index information for generation of prediction sample |
JP7323710B2 (ja) | 2019-09-13 | 2023-08-08 | 北京字節跳動網絡技術有限公司 | 映像符号化における重み付けサンプルの双予測 |
-
2020
- 2020-09-11 JP JP2022516096A patent/JP7323710B2/ja active Active
- 2020-09-11 WO PCT/CN2020/114760 patent/WO2021047631A1/en active Application Filing
- 2020-09-11 WO PCT/CN2020/114761 patent/WO2021047632A1/en unknown
- 2020-09-11 CN CN202080064505.8A patent/CN114402610A/zh active Pending
- 2020-09-11 BR BR112022004553A patent/BR112022004553A2/pt unknown
- 2020-09-11 EP EP20862935.2A patent/EP4011077A4/en active Pending
- 2020-09-11 KR KR1020227007458A patent/KR20220058551A/ko unknown
-
2022
- 2022-03-10 US US17/691,867 patent/US11595658B2/en active Active
- 2022-03-10 US US17/691,910 patent/US20220201310A1/en active Granted
-
2023
- 2023-07-25 JP JP2023120600A patent/JP2023145592A/ja active Pending
- 2023-11-21 US US18/515,482 patent/US20240098267A1/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007116551A1 (ja) * | 2006-03-30 | 2007-10-18 | Kabushiki Kaisha Toshiba | 画像符号化装置及び画像符号化方法並びに画像復号化装置及び画像復号化方法 |
US20130243093A1 (en) * | 2012-03-16 | 2013-09-19 | Qualcomm Incorporated | Motion vector coding and bi-prediction in hevc and its extensions |
CN104170381A (zh) * | 2012-03-16 | 2014-11-26 | 高通股份有限公司 | 在高效率视频译码及其扩展中的运动矢量译码及双向预测 |
WO2014052982A1 (en) * | 2012-09-30 | 2014-04-03 | Qualcomm Incorporated | Performing residual prediction in video coding |
US20160219261A1 (en) * | 2015-01-28 | 2016-07-28 | Mediatek Inc. | Method of Simple Intra Mode for Video Coding |
CN109792534A (zh) * | 2016-07-14 | 2019-05-21 | 三星电子株式会社 | 视频解码方法及其装置以及视频编码方法及其装置 |
WO2019017694A1 (ko) * | 2017-07-18 | 2019-01-24 | 엘지전자 주식회사 | 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치 |
Non-Patent Citations (1)
Title |
---|
BENJAMIN BROSS: "Versatile Video Coding (Draft 6)", JOINT VIDEO EXPERTS TEAM (JVET) OF ITU-T SG 16 WP 3 AND ISO/IEC JTC 1/SC 29/WG 11 15TH MEETING: GOTHENBURG, SE, 3–12 JULY 2019,JVET-O2001, 12 July 2019 (2019-07-12), pages 8 * |
Also Published As
Publication number | Publication date |
---|---|
CN114402591A (zh) | 2022-04-26 |
JP2023145592A (ja) | 2023-10-11 |
JP2022548580A (ja) | 2022-11-21 |
KR20220058551A (ko) | 2022-05-09 |
US20240098267A1 (en) | 2024-03-21 |
US20220201310A1 (en) | 2022-06-23 |
EP4011077A4 (en) | 2022-11-30 |
EP4011077A1 (en) | 2022-06-15 |
US11595658B2 (en) | 2023-02-28 |
WO2021047632A1 (en) | 2021-03-18 |
US20220201314A1 (en) | 2022-06-23 |
BR112022004553A2 (pt) | 2022-06-07 |
JP7323710B2 (ja) | 2023-08-08 |
WO2021047631A1 (en) | 2021-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220046272A1 (en) | Coding of block vectors for intra block copy-coded blocks | |
KR102639936B1 (ko) | 비디오 처리에서 모델-기반 변형에 대한 제약들 | |
CN113994698B (zh) | 有条件地实施运动候选列表构建过程 | |
WO2020259426A1 (en) | Motion candidate list construction for intra block copy mode | |
CN113475074A (zh) | 视频处理中的环路滤波 | |
CN114175636B (zh) | 自适应参数集中的自适应环路滤波的指示 | |
JP7322290B2 (ja) | ビデオビットストリームにおけるサブピクチャシグナリングのための構文 | |
WO2020244658A1 (en) | Sub-block based intra block copy | |
WO2021047632A1 (en) | Weighted sample bi-prediction in video coding | |
WO2020244660A1 (en) | Motion candidate list construction for video coding | |
KR102627821B1 (ko) | 이웃 블록 정보를 사용한 모션 후보 리스트 구성 | |
WO2020248925A1 (en) | History-based motion vector prediction with default parameters | |
WO2021219143A1 (en) | Entropy coding for motion precision syntax | |
WO2021036990A1 (en) | Initialization of history-based motion vector predictor tables | |
CN114402591B (zh) | 并置运动矢量的推导 | |
WO2021047633A1 (en) | Skip mode signaling | |
CN114450959A (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 |