CN116671104A - 利用基于几何变换的块复制的帧内预测的方法和装置 - Google Patents
利用基于几何变换的块复制的帧内预测的方法和装置 Download PDFInfo
- Publication number
- CN116671104A CN116671104A CN202180078443.0A CN202180078443A CN116671104A CN 116671104 A CN116671104 A CN 116671104A CN 202180078443 A CN202180078443 A CN 202180078443A CN 116671104 A CN116671104 A CN 116671104A
- Authority
- CN
- China
- Prior art keywords
- block
- vector
- sub
- prediction
- vectors
- 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
- 238000000034 method Methods 0.000 title claims abstract description 96
- 239000013598 vector Substances 0.000 claims abstract description 384
- 230000009466 transformation Effects 0.000 claims abstract description 34
- 238000001914 filtration Methods 0.000 claims description 13
- 238000013507 mapping Methods 0.000 claims description 10
- 238000005070 sampling Methods 0.000 claims description 4
- 230000033001 locomotion Effects 0.000 description 149
- 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 58
- 230000006870 function Effects 0.000 description 15
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 14
- 238000013139 quantization Methods 0.000 description 12
- 238000005192 partition Methods 0.000 description 11
- 230000003044 adaptive effect Effects 0.000 description 8
- 239000000284 extract Substances 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 4
- 238000007906 compression Methods 0.000 description 4
- 230000008707 rearrangement Effects 0.000 description 4
- 238000000638 solvent extraction Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000001131 transforming effect Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 108010063123 alfare Proteins 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 229910003460 diamond Inorganic materials 0.000 description 1
- 239000010432 diamond Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- 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/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- 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/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- 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/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
- H04N19/513—Processing of motion vectors
- H04N19/517—Processing of motion vectors by encoding
- H04N19/52—Processing of motion vectors by encoding by predictive encoding
-
- 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
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
公开内容涉及利用基于几何变换的块复制的帧内预测方法,本实施方案提供了一种帧内预测方法和装置,其为了生成不限于矩形的各种形状的参考块,从当前块的每个顶点推导参考块矢量(BV),然后对参考块矢量执行几何变换,以便以当前块的每个像素单元或像素束单元来计算子块矢量。
Description
技术领域
本发明涉及利用基于几何变换的块复制的帧内预测方法和装置。
背景技术
本部分中的陈述仅提供与本发明有关的背景技术信息,并不一定构成现有技术。
由于视频数据与音频数据或静止影像数据相比具有较大的数据量,视频数据需要大量的硬件资源(包括存储器)来存储或发送未经压缩处理的视频数据。
相应地,编码器通常用于压缩并存储或发送视频数据。解码器接收压缩的视频数据,解压接收到的压缩的视频数据,并且播放解压的视频数据。视频压缩技术包括H.264/AVC、高效率视频编码(High Efficiency Video Coding,HEVC)和多功能视频编码(Versatile Video Coding,VVC),所述多功能视频编码(VVC)比HEVC的编码效率提高了大约30%或更多。
然而,由于影像大小、分辨率和帧速率逐渐增加,要编码的数据量也在增多。相应地,需要一种与现有的压缩技术相比提供更高的编码效率和改善的影像增强效果的新的压缩技术。
在影像(视频)编码和解码中,可以执行通过复制相同帧内的参考块来预测当前块的帧内预测方法。使用块矢量来参考参考块的帧内预测方法称为帧内块复制(Intra BlockCopy,IBC)。现有的IBC技术存在的问题在于在块复制过程中仅支持水平和竖直平移运动。因此,有必要在视频质量的提高方面考虑改进现有的IBC技术。
发明内容
技术课题
一些实施方案的本发明寻求提供帧内预测方法和装置,其在当前块的每个顶点处推导参考块矢量(BV),并且对参考块执行几何变换,以生成不限于矩形形状的各种形状的参考块。帧内预测方法和装置利用参考块矢量来计算当前块的每个像素或每组像素的子块矢量。
解决方法
本发明的至少一个方面提供了一种由视频解码装置执行的帧内块复制方法。该方法包括从比特流解码存储在预解码的块中使用的块矢量的映射或列表的信息。该方法还包括基于映射或列表来计算当前块的顶点处的参考块矢量。该方法还包括利用参考块矢量来计算当前块的每个像素或每个子块的子块矢量。该方法还包括利用子块矢量在包括当前块的相同帧内生成每个像素或每个子块的预测样本。
本发明的另一个方面提供了一种视频解码装置,其包括熵解码器,熵解码器配置为从比特流解码存储在预解码的块中使用的块矢量的映射或列表的信息。装置还包括帧内预测器,帧内预测器配置为基于映射或列表来计算当前块的顶点处的参考块矢量,并且利用参考块矢量来计算当前块的每个像素或每个子块的子块矢量。帧内预测器利用子块矢量在包括当前块的相同帧内生成每个像素或每个子块的预测样本。
本发明的又一个方面提供了一种由视频编码装置执行的帧内块复制方法。该方法包括获得存储在预解码的块中使用的块矢量的映射或列表的信息。该方法还包括基于映射或列表来计算当前块的顶点处的参考块矢量。该方法还包括利用参考块矢量来计算当前块的每个像素或每个子块的子块矢量。该方法还包括利用子块矢量在包括当前块的相同帧内生成每个像素或每个子块的预测样本。
发明效果
如上所述,本实施方案提供了一种帧内预测方法和装置,其在当前块的每个顶点处推导参考块矢量,并且对参考块矢量执行几何变换,以生成不限于矩形形状的各种形状的参考块。帧内预测方法和装置利用参考块矢量来计算当前块的每个像素或每组像素的子块矢量,从而基于块复制提高帧内预测的预测性能。
附图说明
图1是可以实现本发明技术的视频编码装置的框图。
图2示出利用四叉树加二叉树三叉树(QTBTTT)结构来对块进行分区的方法。
图3a和图3b示出包括宽角度帧内预测模式的多个帧内预测模式。
图4示出当前块的相邻块。
图5是可以实现本发明技术的视频解码装置的框图。
图6a和图6b示出根据本发明的一个实施方案的仿射运动预测。
图7示出根据本发明的一个实施方案的基于每个子块的仿射运动预测。
图8示出用于从相邻块的平移运动矢量推导用于仿射运动预测的合并候选的方法。
图9示出根据本发明的一个实施方案的当前块的每个顶点处的参考块矢量。
图10示出根据本发明的一个实施方案的搜索区域。
图11示出根据本发明的一个实施方案的参考块的形状。
图12示出根据本发明的一个实施方案的利用单个参考矢量的情况。
图13示出根据本发明的一个实施方案的利用两个或更多个参考矢量的情况。
图14示出根据本发明的一个实施方案的当前块和参考块具有缩放关系的情况。
图15是示出根据本发明的一个实施方案的基于由视频编码装置执行的几何变换的帧内块复制方法的流程图。
图16是示出根据本发明的一个实施方案的由视频解码装置执行的基于几何变换的帧内块复制方法的流程图。
具体实施方式
在下文中,将参考所附说明性附图对本发明的一些实施方案进行详细描述。在下面的描述中,相同的附图标记表示相同的元件,尽管元件在不同的附图中示出。此外,在一些实施方案的以下描述中,当认为相关的已知组件和功能的详细描述模糊了本发明的主题时,为了清楚和简洁起见,已省略对相关的已知组件和功能的详细描述。
图1是可以实现本发明技术的视频编码装置的框图。在下文中,参考图1的图示,对视频编码装置以及该装置的子组件进行描述。
编码装置可以包括:图像分割器110、预测器120、减法器130、变换器140、量化器145、重排单元150、熵编码器155、逆量化器160、逆变换器165、加法器170、环路滤波单元180和存储器190。
编码装置的每个组件可以实现为硬件或软件,或者实现为硬件和软件的组合。另外,每个组件的功能可以实现为软件,并且微处理器也可以实现为执行对应于每个组件的软件的功能。
一个视频由包括多个图像的一个或更多个序列组成。每个图像分割为多个区域,并且对每个区域执行编码。例如,一个图像分割为一个或更多个瓦片(tile)或/和切片(slice)。这里,一个或更多个瓦片可以定义为瓦片组。每个瓦片或/和切片分割为一个或更多个编码树单元(coding tree unit,CTU)。另外,每个CTU通过树结构分割为一个或更多个编码单元(coding unit,CU)。应用于每个CU的信息被编码为CU的语法,并且共同应用于包括在一个CTU中的CU的信息被编码为CTU的语法。另外,共同应用于一个切片中的所有块的信息被编码为切片头的语法,而应用于构成一个或更多个图像的所有块的信息被编码为图像参数集(Picture Parameter Set,PPS)或图像头。此外,多个图像共同参考的信息被编码为序列参数集(Sequence Parameter Set,SPS)。另外,一个或更多个SPS共同参考的信息被编码为视频参数集(Video Parameter Set,VPS)。此外,共同应用于一个瓦片或瓦片组的信息也可以被编码为瓦片或瓦片组头的语法。包括在SPS、PPS、切片头、瓦片或瓦片组头中的语法可以称为高级语法。
图像分割器110确定CTU的大小。关于CTU的大小(CTU尺寸)的信息被编码为SPS或PPS的语法,并且被传送至视频解码装置。
图像分割器110将构成视频的每个图像分割为具有预定大小的多个CTU,然后通过利用树结构递归地分割CTU。树结构中的叶节点成为CU,所述CU是编码的基本单元。
树结构可以是四叉树(quadtree,QT),其中较高节点(或父节点)被分割为具有相同大小的四个较低节点(或子节点)。树结构也可以是二叉树(binarytree,BT),其中较高的节点分割为两个较低的节点。树结构还可以是三叉树(ternarytree,TT),其中较高的节点以1:2:1的比率分割为三个较低的节点。树结构还可以是QT结构、BT结构和TT结构中的两个或更多个结构混合的结构。例如,可以使用四叉树加二叉树(quadtree plus binarytree,QTBT)结构,或者可以使用四叉树加二叉树三叉树(quadtree plus binarytreeternarytree,QTBTTT)结构。这里,BTTT被添加到树结构以称为多类型树(multiple-typetree,MTT)。
图2是用于描述通过利用QTBTTT结构来对块进行分割的方法的示意图。
如图2所示,CTU可以首先分割为QT结构。四叉树分割可以是递归的,直到分割块的大小达到QT中允许的叶节点的最小块大小(MinQTSize)。由熵编码器155对指示QT结构的每个节点是否被分割为下层的四个节点的第一标志(QT_split_flag)进行编码,并将其用信号通知视频解码装置。当QT的叶节点不大于BT中允许的根节点的最大块大小(MaxBTSize)时,可以将叶节点进一步分割为BT结构或TT结构的至少一个。在BT结构和/或TT结构中可以存在多个分割方向。例如,可以存在两个方向,即,水平地分割相应节点的块的方向以及竖直地分割相应节点的块的方向。如图2所示,当MTT分割开始时,由熵编码器155对指示节点是否被分割的第二标志(mtt_split_flag)、以及在节点被分割的情况下额外指示分割方向(竖直或水平)的标志和/或指示分割类型(二叉或三叉)的标志进行编码,并将其用信号通知视频解码装置。
替选地,在对指示每个节点是否被分割为下层的四个节点的第一标志(QT_split_flag)进行编码之前,还可以对指示节点是否被分割的CU分割标志(split_cu_flag)进行编码。当CU分割标志(split_cu_flag)的值指示出每个节点没有被分割时,相应节点的块成为分割树结构中的叶节点并成为CU,CU是编码的基本单元。当CU分割标志(split_cu_flag)的值指示出每个节点被分割时,视频编码装置以上述方案对第一标志首先开始编码。
当QTBT用作树结构的另一个示例时,可以存在两种类型,即,将相应节点的块水平地分割为具有相同大小的两个块的类型(即,对称水平分割)以及将相应节点的块竖直地分割为具有相同大小的两个块的类型(即,对称竖直分割)。由熵编码器155对指示BT结构的每个节点是否被分割为下层的块的分割标志(split_flag)和指示分割类型的分割类型信息进行编码,并将其传送至视频解码装置。另一方面,可以另外存在相应节点的块被分割为彼此非对称形式的两个块的类型。非对称形式可以包括相应节点的块被分割为大小比率为1:3的两个矩形块的形式,或者还可以包括相应节点的块在对角线方向上被分割的形式。
CU可以根据从CTU分割的QTBT或QTBTTT而具有各种大小。在下文中,与要编码或解码的CU(即,QTBTTT的叶节点)相对应的块称为“当前块”。当采用QTBTTT分割时,除了正方形形状之外,当前块的形状也可以是矩形形状。
预测器120对当前块进行预测以生成预测块。预测器120包括帧内预测器122和帧间预测器124。
通常,可以对图像中的当前块的每个进行预测地编码。通常,可以通过利用帧内预测技术(其利用来自包括当前块的图像的数据)或帧间预测技术(其利用来自在包括当前块的图像之前编码的图像的数据)执行当前块的预测。帧间预测包括单向预测和双向预测两者。
帧内预测器122通过利用在包括当前块的当前图像中位于当前块邻近的像素(参考像素)来预测当前块中的像素。根据预测方向,存在多个帧内预测模式。例如,如图3a所示,多个帧内预测模式可以包括包含平面(planar)模式和DC模式的2种非方向模式,并且可以包括65种方向模式。根据每种预测模式不同地定义要使用的相邻像素和算法等式。
为了对具有矩形形状的当前块进行有效的方向预测,可以额外地使用图3b中虚线箭头所示的方向模式(#67至#80,帧内预测模式#-1至#-14)。方向模式可以称为“宽角度帧内预测模式(wide angle intra-prediction modes)”。在图3b中,箭头指示用于预测的相应参考样本,而非代表预测方向。预测方向与箭头指示的方向相反。在当前块具有矩形形状时,宽角度帧内预测模式是在没有额外比特传输的情况下在与特定方向模式相反的方向上执行预测的模式。在这种情况下,在宽角度帧内预测模式中,可以通过具有矩形形状的当前块的宽度与高度的比率来确定可用于当前块的一些宽角度帧内预测模式。例如,在当前块具有高度小于宽度的矩形形状时,具有小于45度的角度的宽角度帧内预测模式(帧内预测模式#67至#80)是可用的。在当前块具有宽度大于高度的矩形形状时,具有大于-135度的角度的宽角度帧内预测模式是可用的。
帧内预测器122可以确定要用于对当前块进行编码的帧内预测。在一些示例中,帧内预测器122可以通过利用多个帧内预测模式来对当前块进行编码,并且还可以从测试模式中选择要使用的适当的帧内预测模式。例如,帧内预测器122可以通过利用对多个测试的帧内预测模式的率失真(rate-distortion)分析来计算率失真值,并且还可以在测试模式中选择具有最佳率失真特性的帧内预测模式。
帧内预测器122在多个帧内预测模式中选择一个帧内预测模式,并且通过利用根据选择的帧内预测模式确定的相邻像素(参考像素)和算法等式来预测当前块。由熵编码器155对关于选择的帧内预测模式的信息进行编码并将其传送至视频解码装置。
帧间预测器124通过利用运动补偿处理来生成当前块的预测块。帧间预测器124在比当前图像更早已被编码和解码的参考图像中搜索与当前块最相似的块,并且通过利用搜索到的块来生成当前块的预测块。另外,生成运动矢量(motion vector,MV),所述运动矢量与当前图像中的当前块和参考图像中的预测块之间的位移(displacement)相对应。通常,对亮度(luma)分量执行运动估计,并且基于亮度分量计算的运动矢量用于亮度分量和色度分量两者。由熵编码器155对包括参考图像的信息和关于用于预测当前块的运动矢量的信息的运动信息进行编码,并将其传送至视频解码装置。
帧间预测器124还可以执行参考图像或参考块的插值,以增加预测的准确性。换句话说,通过向包括两个整数样本的多个连续整数样本应用滤波器系数来在两个连续整数样本之间插值子样本。在对插值的参考图像执行搜索与当前块最相似的块的处理时,对于运动矢量可以表示小数单位精度而不是整数样本单位精度。对于要编码的每个目标区域,例如,诸如切片、瓦片、CTU、CU等的单元,可以不同地设置运动矢量的精度或分辨率。当应用这种自适应运动矢量分辨率(adaptive motion vector resolution,AMVR)时,应该针对每个目标区域用信号通知关于要应用于每个目标区域的运动矢量分辨率的信息。例如,当目标区域是CU时,用信号通知关于应用于每个CU的运动矢量分辨率的信息。关于运动矢量分辨率的信息可以是代表要在以下描述的运动矢量差的精度的信息。
另一方面,帧间预测器124可以通过利用双向预测来执行帧间预测。在双向预测的情况下,使用两个参考图像和代表与每个参考图像中的当前块最相似的块位置的两个运动矢量。帧间预测器124分别从参考图像列表0(RefPicList0)和参考图像列表1(RefPicList1)选择第一参考图像和第二参考图像。帧间预测器124还搜索与相应参考图像中的当前块最相似的块,以生成第一参考块和第二参考块。此外,通过对第一参考块和第二参考块进行平均或加权平均来生成当前块的预测块。此外,包括关于用于预测当前块的两个参考图像的信息和关于两个运动矢量的信息的运动信息被传送至熵编码器155。这里,参考图像列表0可以由预恢复图像中按显示顺序在当前图像之前的图像构成,并且参考图像列表1可以由预恢复图像中按显示顺序在当前图像之后的图像构成。然而,尽管不特别限于此,但可以将显示顺序中在当前图像之后的预恢复图像额外地包括在参考图像列表0中。相反,在当前图像之前的预恢复图像也可以额外地包括在参考图像列表1中。
为了最小化用于编码运动信息所消耗的比特量,可以使用各种方法。
例如,在当前块的参考图像和运动矢量与相邻块的参考图像和运动矢量相同时,能够识别相邻块的信息被编码以将当前块的运动信息传送至视频解码装置。这种方法称为合并模式(merge mode)。
在合并模式中,帧间预测器124从当前块的相邻块选择预定数量的合并候选块(在下文中,称为“合并候选”)。
作为用于推导合并候选的相邻块,可以使用与当前图像中的当前块邻近的左侧块A0、左下侧块A1、上侧块B0、右上侧块B1和左上侧块B2的全部或一些,如图4所示。此外,除了当前块所在的当前图像之外,位于参考图像内的块(其可以与用于预测当前块的参考图像相同或不同)也可以用作合并候选。例如,参考图像内的当前块的同位块(co-locatedblock)或与该同位块邻近的块可以额外地用作合并候选。如果通过上述方法选择的合并候选的数量小于预设数量,则将零矢量添加到合并候选。
帧间预测器124通过利用相邻块来配置包括预定数量的合并候选的合并列表。从合并列表中包括的合并候选之中选择要用作当前块的运动信息的合并候选,并且生成用于识别选择的候选的合并索引信息。由熵编码器155对生成的合并索引信息进行编码并将其传送至视频解码装置。
合并跳过模式是合并模式的特例。在量化之后,在用于熵编码的所有变换系数都接近零时,仅传输相邻块选择信息而不传输残差信号。通过利用合并跳过模式,对于具有轻微运动的影像、静止影像、屏幕内容影像等可以实现相对较高的编码效率。
此后,合并模式和合并跳过模式统称为合并/跳过模式。
用于编码运动信息的另一种方法是高级运动矢量预测(advanced motion vectorprediction,AMVP)模式。
在AMVP模式中,帧间预测器124通过利用当前块的相邻块来推导用于当前块的运动矢量的运动矢量预测候选。作为用于推导运动矢量预测候选的相邻块,可以使用与图4所示的当前图像中的当前块邻近的左侧块A0、左下侧块A1、上侧块B0、右上侧块B1和左上侧块B2的全部或一些。此外,除了当前块所在的当前图像之外,位于参考图像(其可以与用于预测当前块的参考图像相同或不同)内的块也可以用作用于推导运动矢量预测候选的相邻块。例如,可以使用参考图像内的当前块的同位块或与该同位块邻近的块。如果通过上述方法选择的运动矢量候选的数量小于预设数量,则将零矢量添加到运动矢量候选。
帧间预测器124通过利用相邻块的运动矢量来推导运动矢量预测候选,并且通过利用运动矢量预测候选来确定当前块的运动矢量的运动矢量预测。另外,通过将当前块的运动矢量减去运动矢量预测来计算运动矢量差。
可以通过将预定义函数(例如,中值和平均值计算等)应用于运动矢量预测候选来获取运动矢量预测。在这种情况下,视频解码装置还知道预定义功能。此外,由于用于推导运动矢量预测候选的相邻块是已经完成编码和解码的块,所以视频解码装置也可能已经知道相邻块的运动矢量。因此,视频编码装置不需要对用于识别运动矢量预测候选的信息进行编码。相应地,在这种情况下,对关于运动矢量差的信息和关于用于预测当前块的参考图像的信息进行编码。
另一方面,还可以通过选择运动矢量预测候选的任何一个的方案来确定运动矢量预测。在这种情况下,用于识别选择的运动矢量预测候选的信息与用于预测当前块的关于运动矢量差的信息以及关于参考图像的信息共同进行额外的编码。
减法器130通过将当前块减去由帧内预测器122或帧间预测器124生成的预测块来生成残差块。
变换器140将具有空域的像素值的残差块中的残差信号变换为频域的变换系数。变换器140可以通过利用残差块的整个大小作为变换单元来变换残差块中的残差信号,或者也可以将残差块分割为多个子块,并且通过利用子块作为变换单元来执行变换。替选地,将残差块划分成两个子块,即变换区域和非变换区域,以通过仅利用变换区域子块作为变换单元来变换残差信号。这里,变换区域子块可以是基于水平轴线(或竖直轴线)的具有大小比率为1:1的两个矩形块的一个。在这种情况下,由熵编码器155对指示出仅变换子块的标志(cu_sbt_flag)、以及方向(竖直/水平)信息(cu_sbt_horizontal_flag)和/或位置信息(cu_sbt_pos_flag)进行编码,并将其用信号通知视频解码装置。另外,变换区域子块的大小基于水平轴线(或竖直轴线)可以具有1:3的大小比率。在这种情况下,由熵编码器155对划分相应分割的标志(cu_sbt_quad_flag)进行额外地编码,并将其用信号通知视频解码装置。
另一方面,变换器140可以在水平方向和竖直方向上单独地执行残差块的变换。对于该变换,可以使用各种类型的变换函数或变换矩阵。例如,用于水平变换和竖直变换的成对变换函数可以定义为多变换集(multiple transform set,MTS)。变换器140可以选择MTS中具有最高变换效率的一个变换函数对,并且在水平方向和竖直方向的每个上变换残差块。由熵编码器155对关于MTS中的变换函数对的信息(mts_idx)进行编码,并将其用信号通知视频解码装置。
量化器145利用量化参数对从变换器140输出的变换系数进行量化,并且将量化的变换系数输出到熵编码器155。量化器145还可以对相关的残差块立即进行量化,而无需对任何块或帧进行变换。量化器145还可以根据变换块中的变换系数的位置来应用不同的量化系数(缩放值)。可以对应用于布置为二维的量化的变换系数的量化矩阵进行编码,并将其用信号通知视频解码装置。
重排单元150可以对量化的残差值执行系数值的重新排列。
重排单元150可以通过利用系数扫描将2D系数阵列改变为1D系数序列。例如,重排单元150可以利用锯齿形扫描(zig-zag scan)或对角线扫描(diagonal scan)来扫描DC系数到高频区域的系数以输出1D系数序列。根据变换单元的大小和帧内预测模式,也可以利用在列方向上扫描2D系数阵列的竖直扫描和在行方向上扫描2D块类型系数的水平扫描来代替锯齿形扫描。换句话说,根据变换单元的大小和帧内预测模式,可以在锯齿形扫描、对角线扫描、竖直扫描和水平扫描中确定要使用的扫描方法。
熵编码器155通过利用包括基于上下文的自适应二进制算术编码(Context-basedAdaptive Binary Arithmetic Code,CABAC)、指数哥伦布(Exponential Golomb)等的各种编码方案来对从重排单元150输出的1D量化的变换系数的序列进行编码,以生成比特流。
此外,熵编码器155对与块分割相关的信息(例如,CTU大小、CTU分割标志、QT分割标志、MTT分割类型和MTT分割方向等)进行编码,以使得视频解码装置能够等同于视频编码装置来分割块。此外,熵编码器155对关于指示当前块是由帧内预测编码还是由帧间预测编码的预测类型的信息进行编码。熵编码器155根据预测类型对帧内预测信息(即,关于帧内预测模式的信息)或帧间预测信息(在合并模式的情况下的合并索引,以及在AMVP模式的情况下的关于参考图像索引和运动矢量差的信息)进行编码。此外,熵编码器155对与量化相关的信息(即,关于量化参数的信息和关于量化矩阵的信息)进行编码。
逆量化器160对从量化器145输出的量化的变换系数进行逆量化,以生成变换系数。逆变换器165将从逆量化器160输出的变换系数从频域变换到空域,以恢复残差块。
加法器170将恢复的残差块和由预测器120生成的预测块相加,以恢复当前块。在对下一个块进行帧内预测时,恢复的当前块中的像素用作参考像素。
环路滤波单元180对恢复的像素执行滤波,以减少由于基于块的预测和变换/量化而发生的块伪影(blocking artifacts)、振铃伪影(ringing artifacts)、模糊伪影(blurring artifacts)等。作为环内滤波器的环路滤波单元180可以包括去块滤波器182、样本自适应偏移(sample adaptive offset,SAO)滤波器184和自适应环路滤波器(adaptive loop filter,ALF)186的全部或一些。
去块滤波器182对恢复的块之间的边界进行滤波,以去除由于块单元编码/解码而发生的块伪影(blocking artifacts),并且SAO滤波器184和ALF 186对去块滤波的视频进行额外的滤波。SAO滤波器184和ALF 186是用于补偿由于有损编码(lossy coding)而发生的恢复的像素与原始像素之间的差异的滤波器。SAO滤波器184应用偏移作为CTU单位,以增强主观图像质量和编码效率。与此相反,ALF 186执行块单元滤波,并且通过划分相应块的边界和变化量的程度来应用不同的滤波器以补偿失真。可以对关于要用于ALF的滤波器系数的信息进行编码,并将其用信号通知视频解码装置。
通过去块滤波器182、SAO滤波器184和ALF 186滤波的恢复的块存储在存储器190中。当一个图像中的所有块被恢复时,恢复的图像可以用作用于对随后要被编码的图像内的块进行帧间预测的参考图像。
图5是可以实现本发明技术的视频解码装置的功能框图。在下文中,参考图5,描述了视频解码装置和该装置的子组件。
视频解码装置可以配置为包括熵解码器510、重排单元515、逆量化器520、逆变换器530、预测器540、加法器550、环路滤波单元560和存储器570。
类似于图1的视频编码装置,视频解码装置的每个组件可以实现为硬件或软件,或者实现为硬件和软件的组合。另外,每个组件的功能可以实现为软件,并且微处理器也可以实现为执行对应于每个组件的软件的功能。
熵解码器510通过解码由视频编码装置生成的比特流来提取与块分割相关的信息,以确定要解码的当前块,并且提取恢复当前块所需的预测信息和关于残差信号的信息。
熵解码器510通过从序列参数集(SPS)或图像参数集(PPS)提取关于CTU大小的信息来确定CTU的大小,并且将图像分割为具有确定大小的CTU。此外,CTU被确定为树结构的最高层(即,根节点),并且提取CTU的分割信息以通过利用树结构来分割CTU。
例如,当通过利用QTBTTT结构来分割CTU时,首先提取与QT的分割相关的第一标志(QT_split_flag),以将每个节点分割为下层的四个节点。另外,相对于与QT的叶节点相对应的节点来提取与MTT的分割相关的第二标志(MTT_split_flag)、分割方向(竖直/水平)和/或分割类型(二叉/三叉),以将相应的叶节点分割为MTT结构。结果,QT的叶节点下方的每个节点被递归地分割为BT或TT结构。
作为另一个示例,当通过利用QTBTTT结构来分割CTU时,提取指示是否分割CU的CU分割标志(split_cu_flag)。当分割相应块时,还可以提取第一标志(QT_split_flag)。在分割过程期间,对于每个节点,在递归QT分割0次或更多次之后可能发生0次或更多次的递归MTT分割。例如,对于CTU,MTT分割可以立即发生,或者相反,也可以仅发生多次QT分割。
作为另一个示例,当通过利用QTBT结构来分割CTU时,提取与QT的分割相关的第一标志(QT_split_flag),以将每个节点分割为下层的四个节点。另外,提取指示将与QT的叶节点相对应的节点是否进一步分割为BT的分割标志(split_flag)以及分割方向信息。
另一方面,当熵解码器510通过利用树结构的分割来确定要解码的当前块时,熵解码器510提取关于指示当前块是被帧内预测还是被帧间预测的预测类型的信息。当预测类型信息指示帧内预测时,熵解码器510提取用于当前块的帧内预测信息(帧内预测模式)的语法元素。当预测类型信息指示帧间预测时,熵解码器510提取代表帧间预测信息的语法元素的信息,即,运动矢量和运动矢量参考的参考图像。
此外,熵解码器510提取量化相关的信息并且提取关于量化的当前块的变换系数的信息作为关于残差信号的信息。
重排单元515可以以由视频编码装置执行的系数扫描次序的相反顺序,将由熵解码器510熵解码的1D量化的变换系数的序列再次改变为2D系数阵列(即,块)。
逆量化器520对量化的变换系数进行逆量化,并且通过利用量化参数对量化的变换系数进行逆量化。逆量化器520还可以向布置为2D的量化的变换系数应用不同的量化系数(缩放值)。逆量化器520可以通过将来自视频编码装置的量化系数(缩放值)的矩阵应用于量化的变换系数的2D阵列来执行逆量化。
逆变换器530通过将逆量化的变换系数从频域逆变换到空域来恢复残差信号,以生成当前块的残差块。
此外,当逆变换器530对变换块的部分区域(子块)进行逆变换时,逆变换器530提取仅对变换块的子块进行变换的标志(cu_sbt_flag)、子块的方向(竖直/水平)信息(cu_sbt_horizontal_flag)和/或子块的位置信息(cu_sbt_pos_flag)。逆变换器530还将相应子块的变换系数从频域逆变换到空域以恢复残差信号,并且用值“0”填充未被逆变换的区域作为残差信号,以生成当前块的最终残差块。
此外,当应用MTS时,逆变换器530通过利用从视频编码装置用信号通知的MTS信息(mts_idx)来确定在水平方向和竖直方向的每个上要应用的变换索引或变换矩阵。逆变换器530还通过利用确定的变换函数在水平方向和竖直方向上对变换块中的变换系数执行逆变换。
预测器540可以包括帧内预测器542和帧间预测器544。在当前块的预测类型是帧内预测时,激活帧内预测器542,而在当前块的预测类型是帧间预测时,激活帧间预测器544。
帧内预测器542根据从熵解码器510提取的帧内预测模式的语法元素来确定多个帧内预测模式中当前块的帧内预测模式。帧内预测器542还根据帧内预测模式通过利用当前块的相邻参考像素来预测当前块。
帧间预测器544通过利用从熵解码器510提取的帧间预测模式的语法元素来确定当前块的运动矢量和运动矢量参考的参考图像。
加法器550通过将从逆变换器530输出的残差块与从帧间预测器544或帧内预测器542输出的预测块相加来恢复当前块。在对后续要被解码的块进行帧内预测时,恢复的当前块内的像素用作参考像素。
作为环内滤波器的环路滤波单元560可以包括去块滤波器562、SAO滤波器564和ALF 566。去块滤波器562对恢复的块之间的边界执行去块滤波,以便去除由于块单元解码而发生的块伪影。SAO滤波器564和ALF 566在去块滤波之后对恢复的块执行额外的滤波,以便补偿由于有损编码而发生的恢复的像素与原始像素之间的差异。通过利用关于从比特流解码的滤波器系数的信息来确定ALF的滤波器系数。
通过去块滤波器562、SAO滤波器564和ALF 566滤波的恢复的块存储在存储器570中。当一个图像中的所有块被恢复时,恢复的图像可以用作用于对随后要被编码的图像内的块进行帧间预测的参考图像。
本实施方案涉及如上所述的影像(视频)的编码和解码。更具体地,本实施方案提供了一种帧内预测方法和装置,其在当前块的每个顶点处推导参考块矢量,并且对参考块矢量执行几何变换,以生成不限于矩形形状的各种形状的参考块。帧内预测方法和装置利用参考块矢量来计算当前块的每个像素或每组像素的子块矢量。
在以下描述中,术语“目标块”可以具有与以上描述的当前块或编码单元(CU)相同的含义,或者可以表示编码单元的部分。
I.帧内块复制(Intra Block Copy,IBC)
IBC通过利用块矢量复制相同帧中的参考块来执行当前块的帧内预测,以生成当前块的预测块。
视频编码装置通过执行块匹配(block matching,BM)来推导最佳块矢量,然后将关于推导的块矢量的信息发送到视频解码装置。这里,块矢量代表从当前块到参考块的位移。视频解码装置通过根据解码的块矢量的信息生成预测块来对当前块执行帧内预测。
块矢量的利用为IBC提供了帧间预测的特性。因此,与帧间预测的合并/跳过模式和AMVP模式一样,IBC可以在IBC合并/跳过模式和IBC AMVP模式下操作。块矢量信息可以包括关于这些操作模式的信息。
II.帧间预测中的仿射运动预测
帧间预测是反映平移运动模式的运动预测。换句话说,帧间预测是用于在水平方向(x轴方向)和竖直方向(y轴方向)上预测运动的技术。然而,在现实世界中,可以存在各种类型的运动,例如,除平移运动之外的旋转、放大或缩小。根据本实施方案的一个方面提供了可以反映各种类型的运动的仿射运动预测。
图6a和图6b示出根据本发明的一个实施方案的仿射运动预测。
可以为仿射运动预测定义两种类型的模型。如图6a所示,模型中的一种利用在要编码的目标块的左上角和右上角处的两个控制点运动矢量(control point motionvector,CPMV),这是利用四个参数的模型。如图6b所示,另一种模型利用在目标块的左上角、右上角和左下角处的三个CPMV,这是利用六个参数的模型。
四参数仿射模型由等式1表示。在目标块内的样本位置(x,y)处的运动可以根据等式1来计算。这里,假设目标块的左上角处的样本的位置为(0,0)。
等式1
此外,六参数仿射模型由等式2表示。在目标块内的样本位置(x,y)处的运动可以根据等式2计算。
等式2
在等式2中,(mv0x,mvoy)代表在左上角控制点处的运动矢量,(mv1x,mv1y)代表右上角控制点处的运动矢量,并且(mv2x,mv2y)代表左下角控制点处的运动矢量。W代表目标块的水平长度,并且H代表目标块的竖直长度。
对于目标块内的每个样本,可以通过利用根据等式1或等式2计算的运动矢量来执行仿射运动预测。
替选地,为了降低计算复杂度,如图7所示,可以对从目标块分割的每个子块执行仿射运动预测。例如,子块的尺寸可以是4×4、2×2或8×8。基于对目标块以每个4×4子块为基础执行仿射运动预测的假设来给出以下描述。引入该假设仅仅是为了便于描述,因此该假设不限制本发明的技术范围。
在基于每个子块的仿射运动预测中,通过将每个子块的中心位置代入等式1或2的(x,y)中来计算每个子块的运动矢量(仿射运动矢量)。这里,中心位置可以是子块的实际中心点或中心点的右下侧样本位置。例如,在左下侧样本的坐标为(0,0)的4×4子块的情况下,子块的中心位置可以是(1.5,1.5)或(2,2)。利用相应子块的仿射运动矢量(mvx,mvy)来生成用于每个子块的预测块。
运动矢量(mvx,mvy)可以设置为具有1/16样本精度。在这种情况下,根据等式1或2计算的运动矢量(mvx,mvy)可以四舍五入到1/16样本单位。
不仅可以对亮度分量还可以对色度分量执行仿射运动预测。在4:2:0视频格式的情况下,如果对亮度分量基于每个4×4子块执行仿射运动预测,可以基于每个2×2子块执行用于色度分量的仿射运动预测。可以从相应的亮度分量的运动矢量推导色度分量的每个子块的运动矢量(mvx,mvy)。替选地,用于色度分量的仿射运动预测的子块的大小可以与亮度分量的仿射运动预测的子块的大小相同。如果基于每个4×4子块对亮度分量执行仿射运动预测,则也基于每个4×4子块对色度分量执行仿射运动预测。在这种情况下,由于用于色度分量的4×4子块对应于用于亮度分量的四个4×4子块,可以通过计算相应亮度分量的四个子块的运动矢量的平均值来获得用于色度分量的子块的运动矢量(mvx,mvy)。
视频编码装置通过执行帧内预测、帧间预测(平移运动预测)和仿射运动预测并且计算率失真成本来选择最佳预测方法。为了执行仿射运动预测,视频编码装置的帧间预测器124确定使用两种类型的模型中的哪种,并且根据确定的类型来确定两个或三个控制点。帧间预测器124利用控制点的运动矢量来计算目标块中的4×4子块的每个子块的运动矢量(mvx,mvy)。然后,帧间预测器124通过利用每个子块的运动矢量(mvx,mvy)在基于每个子块的参考图像内执行运动补偿来生成目标块中的每个子块的预测块。
视频编码装置的熵编码器155对与仿射运动预测相关的语法元素进行编码,所述语法元素包括指示是否将仿射运动预测应用于目标块的标志,包括指示仿射模型的类型的类型信息,并且包括指示每个控制点的运动矢量的运动信息。熵编码器155将编码的语法元素传送到视频解码装置。当执行仿射运动预测时,可以用信号通知控制点的类型信息和运动信息。可以用信号仅通知根据类型信息已经确定了数量的控制点的运动矢量。
视频解码装置利用用信号通知的语法元素来确定仿射模型的类型和控制点运动矢量(CPMV),并且对目标块中的每个4×4子块利用等式1或等式2来计算运动矢量(mvx,mvy)。如果用信号通知目标块的仿射运动矢量的运动矢量分辨率信息,利用诸如舍入的运算将运动矢量(mvx,mvy)校正到由运动矢量分辨率信息识别的精度。
视频解码装置通过利用每个子块的运动矢量(mvx,mvy)在参考图像内执行运动补偿来生成用于每个子块的预测块。
可以应用上面描述的常规帧间预测(平移运动预测)方法,以减少编码控制点的运动矢量所需的比特的数量。
在一个示例中,在合并模式的情况下,视频编码装置的帧间预测器124构造由预定义数量(例如,5个)的仿射合并候选组成的仿射合并候选列表。首先,视频编码装置的帧间预测器124从目标块的相邻块推导继承的仿射合并候选。例如,通过从图4所示的目标块的相邻样本(A0、A1、B0、B1、B2)推导预定数量的继承的仿射合并候选来生成合并候选列表。包括在候选列表中的继承的仿射合并候选的每个与成对的两个或三个CPMV相对应。
帧间预测器124根据目标块的相邻块中以仿射模式预测的相邻块的控制点运动矢量来推导继承的仿射合并候选。在一些实施方案中,可以限制从以仿射模式预测的相邻块推导的合并候选的数量。例如,帧间预测器124可以从以仿射模式预测的相邻块推导总共两个继承的仿射合并候选,一个来自A0和A1,另一个来自B0、B1和B2。优先级可以是A0和A1的顺序,以及B0、B1和B2的顺序。
另一方面,当合并候选的总数量是三个或更多个时,帧间预测器124可以根据需要从相邻块的平移运动矢量推导尽可能多的构造的仿射合并候选。
图8示出用于从相邻块的平移运动矢量推导用于仿射运动预测的合并候选的方法。
帧间预测器124分别从相邻块组{B2,B3,A2}、相邻块组{B1,B0}℃相邻块组{A1,A0}推导控制点运动矢量CPMV1、CPMV2和CPMV3。在一个示例中,每个相邻块组中的优先级可以是B2、B3和A2的顺序、B1和B0的顺序以及A1和A0的顺序。此外,从参考图像中的同位块T推导另一个控制点运动矢量CPMV4。帧间预测器124组合四个控制点运动矢量中的两个或三个控制点运动矢量,以根据需要生成尽可能多的构造仿射合并候选。组合的优先顺序如下。按照左上角控制点运动矢量、右上角控制点运动矢量和左下角控制点运动矢量的顺序排列每个组中的元素。
顺序可以是{CPMV1,CPMV2,CPMV3}、{CPMV1,CPMV2,CPMV4}、{CPMV1,CPMV3,CPMV4}、{CPMV2,CPMV3,CPMV4}、{CPMV1,CPMV2}、{CPMV1,CPMV3}。
当可以不利用继承的仿射合并候选和构造的仿射合并候选来填充合并候选列表时,帧间预测器124可以添加零运动矢量作为候选。
帧间预测器124从合并候选列表选择合并候选,并且对目标块执行仿射运动预测。当选择的候选由两个控制点运动矢量组成时,利用四参数模型来执行仿射运动预测。另一方面,当选择的候选由三个控制点运动矢量构成时,利用六参数模型来执行仿射运动预测。视频编码装置的熵编码器155编码索引信息并将编码的索引信息用信号通知视频解码装置,所述索引信息指示在合并候选列表的合并候选中选择的合并候选。
视频解码装置的熵解码器510对从视频编码装置用信号通知的索引信息进行解码。视频解码装置的帧间预测器544以与视频编码装置相同的方式构造合并候选列表,并且利用与由索引信息指示的合并候选相对应的控制点运动矢量来执行仿射运动预测。
在另一个示例中,在AMVP模式的情况下,视频编码装置的帧间预测器124确定用于目标块的仿射模型的类型和控制点运动矢量。然后,帧间预测器124计算运动矢量差,该运动矢量差是目标块的实际控制点运动矢量与每个控制点的预测的运动矢量之间的差,对每个控制点的差运动矢量进行编码,并且传输编码的差运动矢量。为此,视频编码装置的帧间预测器124构造由预定义数量(例如,两个)的仿射AMVP候选组成的仿射AMVP候选列表。当目标块是四参数类型时,包括在列表中的每个候选由成对的两个控制点运动矢量组成。另一方面,当目标块是六参数类型时,包括在列表中的每个候选由成对的三个控制点运动矢量组成。
III.IBC和几何变换的组合
以下实施方案可以由视频编码装置的帧内预测器122和视频解码装置的帧内预测器542来执行。
在下面的描述中,互换使用几何变换和仿射变换。
如图9所示,根据本实施方案的视频编码装置依据率失真优化来计算当前块的每个顶点处的参考块矢量。视频编码装置中的帧内预测器122对计算的参考块矢量中的一个或更多个块矢量应用几何变换,以计算当前块的每个像素或每组像素(例如,4×4)的子块矢量。帧内预测器122可以利用由子块矢量指示的相同帧内的参考位置处的像素值作为当前块的预测样本,或者可以在对参考位置处的像素值进行滤波之后利用像素值作为预测样本。视频编码装置对参考块矢量的信息进行编码,并且将编码后的信息发送到视频解码装置。
在下面的描述中,像素束可以与子块或像素块互换使用。
另一方面,视频解码装置对参考块矢量的信息进行解码。视频解码装置中的帧内预测器542利用关于参考块矢量的信息在当前块的每个顶点位置处推导参考块矢量。帧内预测器542通过对推导的参考块矢量中的一个或更多个块矢量应用几何变换来计算当前块的每个像素或每个像素块的子块矢量。帧内预测器542可以利用由子块矢量指示的相同帧中参考位置处的像素值作为当前块的预测样本,或者可以在对参考位置处的像素值进行滤波之后利用像素值作为预测样本。
在下面的描述中,对通过视频编码装置计算参考块矢量的方法进行描述。
视频编码装置可以在当前块的顶点位置处计算最多四个参考块矢量。
为了计算参考块矢量,视频编码装置可以设置块矢量搜索区域以查找与当前块最相似的参考块的位置。作为另一个实施方案,视频编码装置可以利用在当前块之前编码/解码的块的块矢量信息来计算参考块矢量。
首先,当使用块矢量搜索来计算当前块的参考块矢量时,视频编码装置可以使用在当前块之前编码/解码的所有块作为搜索区域。替选地,视频编码装置可以仅将包括包含当前块的CTU(在下面的描述中,是当前CTU)和N个(其中,N是自然数)相邻CTU的区域设置为搜索区域。例如,图10示出N设置为10的情况。
关于块矢量搜索,视频编码装置可以对搜索区域信息进行编码,所述搜索区域信息包括搜索区域的尺寸和开始位置,然后将编码的搜索区域信息发送到视频解码装置。如上所述,为了将搜索区域限制为当前CTU和与当前CTU相邻的N个CTU,视频编码装置可以对N的值进行编码。例如,如果在SPS中编码4以将搜索区域限制为当前CTU和四个相邻CTU,则根据当前块的位置,搜索区域可以从一个CTU限制为最多五个CTU。
在设置或推导搜索区域之后,视频编码装置执行运动估计(motion estimation,ME)以计算当前块的参考块矢量。视频编码装置可以通过选择诸如全搜索、3步搜索和菱形搜索的几种搜索方法的一种来对搜索区域执行ME。这里,根据视频编码装置与视频解码装置之间的事先协议,可以使用预定方法作为搜索方法。此外,可以基于每个切片、图像或CTU对关于搜索方法的附加信息进行编码/解码。
另一方面,视频解码装置可以解码包括搜索区域信息和搜索方法的搜索信息,然后基于解码的搜索信息来计算当前块的参考块矢量。
接下来,当先前使用的块矢量的信息用于计算当前块的参考块矢量时,视频编码装置可以利用存储在先前编码/解码的块中使用的块矢量的映射或列表。
当使用映射时,视频编码装置可以基于当前块推导块矢量,然后通过利用存在于存储块矢量的映射的特定区域中的一个或更多个块矢量,将推导的块矢量用作参考块矢量。视频编码装置可以通过利用存在于特定区域中的块矢量的全部或部分或者通过生成块矢量的组合,基于当前块来推导块矢量。
另一方面,特定区域是包括当前CTU和N个相邻CTU的区域,包括由先前使用的块矢量指示的像素和N个相邻CTU的区域,可以利用诸如当前块的形状和位置或相邻块的预测模式的信息推导的区域。这里,N的值可以在视频编码装置与视频解码装置之间预先约定。替选地,N的值可以由视频编码装置进行编码,然后发送到视频解码装置。
当使用存储块矢量的列表时,视频编码装置可以对从列表选择的块矢量的索引信息进行编码,并且将编码的索引信息发送到视频解码装置。视频解码装置可以利用由索引指定的列表中的块矢量作为参考块矢量。
此外,视频编码装置可以利用关于当前块中使用的参考块矢量的信息来更新列表。例如,视频编码装置可以在SPS上发送列表的尺寸,同时基于列表来管理在每个块中使用的块矢量。为了更新列表,如果当前块使用块矢量,则视频编码装置检查相应的参考块矢量是否包括在列表中。当相应参考块矢量的全部或部分不包括在列表中时,视频编码装置可以从列表移除首先暂时出现的块矢量,然后将当前块中使用的块矢量添加到列表中。另一方面,当相应的参考块矢量包括在列表中时,视频编码装置可以改变包括在列表中的块矢量的顺序。
如上所述,利用映射或列表的处理可以在视频解码装置中以相同的方式执行。
另一方面,当使用块矢量搜索时,如上所述的参考块矢量的信息是搜索信息,而当使用关于先前使用的块矢量的信息时,参考块矢量的信息是存储块矢量的映射或列表的信息。此外,搜索信息可以包括搜索区域信息和搜索方法。
另一方面,视频编码装置可以对仿射预测标志进行编码,然后将编码的仿射预测标志发送到视频解码装置,所述仿射预测标志是指示是否将仿射变换应用于ISP的标志。此外,视频编码装置可以对块矢量的编码模式进行编码,并且将编码的块矢量发送到视频解码装置。这里,编码模式可以代表利用搜索区域的方法或利用先前使用的块矢量的信息的方法。
另一方面,在存储于映射或列表的信息中,可以参考当前图像来表达由块矢量指示的像素的位置。替选地,像素的位置可以按照切片索引、CTU索引、CU索引和CU中的位置的顺序依次地表示。例如,块矢量可以存储在映射或列表中,以指示像素相对于当前图像的左上侧像素的位置。替选地,为了指示像素相对于第n切片处的第m CTU中的第o CU的左上侧像素的位置,可以将n、m和o的值与基于相应CU的块矢量一起存储。
作为另一个实施方案,当关于先前使用的块矢量的信息用于计算当前块的参考块矢量时,视频编码装置可以选择存储在映射或列表中的所有或部分块矢量,并且利用选择的块矢量的组合的一个作为参考块矢量。这里,选择标准可以是块矢量的尺寸或位置。例如,视频编码装置可以发送包括值k(其中,k是正数)的SPS,以防止利用与位于距离当前块比值k更远的像素相对应的块矢量。
在下面的描述中,对在映射或列表中存储十个块矢量的情况进行描述。视频编码装置基于当前块来搜索可用的块矢量。视频编码装置可以从十个块矢量排除尺寸大于k或存在于搜索区域之外的那些块矢量,并且利用剩余的块矢量来生成组合。例如,假设存储于映射或列表的块矢量中的可用块矢量的数量是两个。在这种情况下,视频编码装置可以在使用一个参考块矢量时生成两个组合,并且在使用两个参考块矢量时生成四个组合。由于不允许支持利用三个和四个参考块矢量的情况,可以生成总共六个组合。
视频解码装置可以以相同的方式利用块矢量的组合。此外,视频编码装置可以形成可用块矢量的组合的列表、对列表的索引进行编码,并且将编码的索引发送到视频解码装置。
另一方面,计算参考块矢量的方法可以根据当前块的位置和形状、相邻块的预测模式或更高级别的语法来约束。例如,视频编码装置可以根据SPS中的参考块矢量的最大数量和实际使用的参考块矢量的数量来确定要使用哪个几何变换。与参考块矢量的最大数量、实际使用的参考块矢量的数量和几何变换相对应的信息可以被编码/解码为基于每个图像或切片的一个或更多个集合。这里,也可以对关于几何变换参数的信息进行编码/解码。例如,视频编码装置可以约束几何变换,使得在当前图像中的参考块矢量的数量高达三个,并且使用一个参考块矢量,应用平移变换。当使用两个参考块矢量时,应用翻转变换。当使用三个参考块矢量时,应用旋转和缩放变换。换句话说,根据约束,可以以四种固定形状生成参考块。此外,视频编码装置可以通过发送关于每个变换的参数的信息来控制翻转、旋转和缩放的程度。
例如,如图11的示例中所示,假设使用三个参考块矢量,并且对两条变换信息进行编码/解码以使参考块的形状旋转和缩放。在这种情况下,缩放比或旋转的程度可以通过另外发送关于变换参数的信息来约束。如果应用了缩放变换,并且参数值设置为2,则可以设置缩放比,使得只能按2的倍数缩放,例如(1/8)×、(1/4)×、(1/2)×、2×、4×和8×。
如果应用旋转变换,则可以约束旋转角度使得通过对旋转变换的参数值进行编码/解码来仅允许以45度或30度为单位的旋转。例如,当在SPS中使用三个参考块矢量时,可以仅应用旋转变换。此外,当旋转角度参数被约束为仅生成形状由以90度为单位的旋转所确定的参考块时,视频解码装置解码关于当前块使用多少参考块矢量的信息。假设当前块使用三个参考块矢量。在这种情况下,视频解码装置对一个参考块矢量的值进行解码以确定参考块的开始位置,并且解码关于应用0、90、180和270度中的哪个旋转变换的信息。
信息可以包括用于计算参考块矢量的顶点的位置和数量、搜索区域的尺寸、要查找的块矢量列表的尺寸以及要查找的块矢量的尺寸。根据高级语法、当前块的形状和位置以及相邻块的预测模式,可以推导或约束上述信息和基于该信息计算的块矢量的尺寸。
例如,用于通过SPS确定参考块矢量的顶点可以约束为块的顶部中的两个顶点。
替选地,用于计算参考块矢量的顶点的位置可以根据当前块的宽度和高度的比率(即,纵横比)来约束。在一个实施方案中,当宽度是高度的两倍大时,可以从块的顶部或底部中的两个顶点来计算参考块矢量。
在一个实施方案中,当在当前块的相邻块的预测模式中不存在IBC模式时,仅在左上侧顶点处计算块矢量。此外,可以根据当前块的相邻块的预测模式中的IBC模式的数量来推导参考块矢量的最大数量。例如,如果IBC模式的数量为零,则可以推导一个参考块矢量。如果IBC模式的数量是两个,则可以推导最多两个参考块矢量。
另一方面,当采用搜索区域时,可以对关于当前块中使用的参考块矢量的信息进行编码/解码。关于参考块矢量的信息可以包括参考块矢量的数量、方向和尺寸。可以按照左上侧、右上侧、左下侧和右下侧的顺序对参考块矢量进行编码/解码,或者可以对关于编码/解码顺序的信息进行编码/解码。
在当前块的参考块矢量的数量是两个或更多个,并且关于参考块矢量的信息被编码/解码时,关于先前编码/解码的参考块矢量的信息可以用于预测关于稍后要编码/解码的参考块矢量的信息。例如,当利用当前块的两个顶部顶点处的参考块矢量时,可以利用关于左上侧位置处的参考块矢量的信息来预测右上侧位置处的参考块矢量。这里,作为右上侧参考块矢量,可以发送左上侧参考块矢量的BV差(BV Difference,BVD)。
在下面的描述中,从视频编码装置的角度来描述计算子块矢量的处理和生成预测样本的处理。然而,应当注意,视频解码装置可以执行相同的处理。
视频编码装置可以通过将一个或更多个参考块矢量相对于计算的参考块矢量进行组合来计算当前块的每个像素或每组像素(例如,4×4)的子块矢量。例如,当使用的参考块矢量的数量为2、3和4时,可以分别根据等式3、4和5来计算子块矢量。
等式3
等式4
等式5
另一方面,如图12所示,当在当前块中使用一个参考块矢量时,视频编码装置可以将子块矢量设置为与参考块矢量相同。
如图13的示例中所示,当在当前块中使用两个或更多个参考块矢量时,视频编码装置可以根据参考块矢量的位置(即,顶点位置)在剩余顶点处推导块矢量之后计算子块矢量。
在计算当前块的每个像素或每组像素的子块矢量时,视频编码装置可以使用不同的块矢量,而不是对当前块的部分区域(像素或像素组的一部分)如上所述计算的子块矢量。例如,假设当前块被分割为4×4像素块,并且为每个4×4子块计算子块矢量。在这种情况下,对于一些子块,视频编码装置可以利用参考块矢量中的一个或两个或更多个参考块矢量的平均值,而不利用先前计算的子块矢量。
对于当前块的每个像素或每个像素块,视频编码装置可以利用在子块矢量的位置处的像素值作为预测样本,或者对在子块矢量的位置处的像素值进行滤波以利用滤波的像素值作为预测样本。
例如,如图14所示,在当前块和参考块具有缩放关系时,即,当参考块的尺寸大于或小于当前块的尺寸时,视频编码装置可以利用下面描述的方法来计算预测样本。
当参考块大于当前块时,视频编码装置可以对每个像素块计算尺寸大于像素块的尺寸的预测样本(与当前块和参考块的比率或当前块和像素块的比率成比例)。该装置还可以将滤波器应用于计算的预测样本,并且通过对滤波的预测样本进行采样来计算最终的预测样本。这里,滤波器可以是诸如高斯滤波器和平均滤波器的滤波器的一种,并且可以对滤波器类型和关于选择的滤波器的信息进行编码/解码。
另一方面,当参考块小于当前块时,视频编码装置可以将L抽头(tap)(其中,L是自然数)插值滤波器应用于对每个像素块计算的预测样本。该装置还可以对滤波的预测样本进行采样,并且将从采样生成的预测样本的全部或部分用作最终的预测样本。这里,可以利用视频编码装置与视频解码装置之间预先约定的值来设置插值滤波器的抽头的数量和每个抽头的值。替选地,视频编码装置可以对滤波器信息进行编码,或者对指示来自包括多个滤波器的列表的滤波器的索引进行编码,然后将编码的信息发送到视频解码装置。
根据实施方案,可以改变与本发明相关的语法和传输级别的名称,或者可以改变或省略部分语法。
如上所述,视频编码装置可以在SPS中包括用于几何变换块复制方法(即,仿射预测模式)的激活信息。当仿射预测模式被激活时,视频编码装置可以将几何变换块复制的约束或范围发送到视频解码装置。约束可以包括关于参考块矢量的最大数量以及根据利用的参考块矢量的数量的几何变换类型和参数的信息。之后,当基于每个块使用几何变换块复制方法时,视频编码装置对关于在每个块中使用了多少个参考块矢量的信息进行编码,对与参考块矢量的数量一样多的信息条数进行编码,并且将编码的信息发送到视频解码装置。
在下面的描述中,参考图15,对由根据本发明的视频编码装置执行的基于几何变换的帧内块复制方法进行描述。
图15是示出根据本发明的一个实施方案的基于由视频编码装置执行的几何变换的帧内块复制方法的流程图。
根据本实施方案的视频编码装置根据率失真优化来计算当前块的每个顶点处的参考块矢量。视频编码装置可以对参考块矢量的信息进行编码,并且将编码的信息发送到视频解码装置。这里,当使用块矢量搜索时,参考块矢量的信息可以是搜索信息,而当使用关于先前使用的块矢量的信息时,参考块矢量的信息可以是存储块矢量的映射或列表的信息。视频编码装置内的帧内预测器122可以如下利用关于参考块矢量的信息来执行当前块的帧内块复制。
视频编码装置内的帧内预测器122获得存储在已经解码的块中使用的块矢量的映射或列表的信息S1500。帧内预测器122从高级语法元素获得包括当前块的当前CTU的相邻CTU的数量N作为映射的信息。此外,帧内预测器122从高级语法元素获得指示列表内的特定位置的索引作为列表的信息。
在另一个实施方案中,帧内预测器122可以从高级语法元素获得搜索信息。这里,搜索信息可以包括搜索区域信息和搜索方法。
帧内预测器122基于映射或列表来计算当前块的顶点处的参考块矢量S1502。
当使用映射时,帧内预测器122利用存在于映射的特定区域中的一个或更多个块矢量基于当前块来计算块矢量,并且利用计算的块矢量作为当前块的参考块矢量。这里,可以利用包括当前CTU(其包含当前块)和N个相邻CTU的区域,包括CTU(其包含由已经使用的块矢量指示的像素)和N个相邻CTU的区域,当前块的形状和位置,或相邻块的预测模式来推导特定区域。
当使用列表时,帧内预测器122可以利用由索引指示的列表中的块矢量作为当前块的参考块矢量。此外,帧内预测器122可以利用参考块矢量来更新列表。当更新列表时,帧内预测器122可以管理列表的尺寸。列表的尺寸可以从高级语法获得。
作为另一个实施方案,当使用块矢量搜索时,帧内预测器122可以通过利用搜索区域信息设置搜索区域并且利用预设的搜索方法执行ME来计算当前块的参考块矢量。由于已经描述了搜索区域的设置和搜索方法的类型,所以省略进一步的详细描述。
帧内预测器122利用参考块矢量来计算当前块的每个像素或每个子块的子块矢量S1504。
帧内预测器122可以利用如等式3至5所示的预设等式来根据参考块矢量的数量应用几何变换。
对于当前块的部分区域,帧内预测器122可以利用不同的块矢量而不是子块矢量。这里,不同的块矢量可以是参考块矢量的一个矢量或者是根据参考块矢量的两个或更多个的平均值的矢量。
帧内预测器122利用子块矢量在包括当前块的相同帧内生成每个像素或每个子块的预测样本S1506。
对于当前块的每个像素或每个子块,帧内预测器122可以利用子块矢量的位置处的像素值作为预测样本,或者对子块矢量的位置处的像素值进行滤波以使用滤波的像素值作为预测样本。
在下面的描述中,参考图16,对根据本发明的由视频解码装置执行的基于几何变换的帧内块复制方法进行描述。
图16是示出根据本发明的一个实施方案的由视频解码装置执行的基于几何变换的帧内块复制方法的流程图。
根据本实施方案的视频解码装置对从视频编码装置发送的关于参考块矢量的信息进行解码,并且如下计算当前块的每个顶点的位置处的参考块矢量。
视频解码装置中的熵解码器510从比特流解码存储在预解码的块中使用的块矢量的映射或列表的信息S1600。熵解码器510将包括当前块的当前CTU的相邻CTU的数量N解码为映射信息。此外,熵解码器510将指示列表中的特定位置的索引解码为列表信息。
视频解码装置中的帧内预测器542基于映射或列表来计算当前块的顶点处的参考块矢量S1602。
当使用映射时,帧内预测器542利用存在于映射的特定区域中的一个或更多个块矢量基于当前块来计算块矢量,并且利用计算的块矢量作为当前块的参考块矢量。
当使用列表时,帧内预测器542可以利用由索引指示的列表中的块矢量作为当前块的参考块矢量。此外,帧内预测器542可以利用参考块矢量来更新列表。当更新列表时,帧内预测器542可以管理列表的尺寸。
作为另一个实施方案,当利用块矢量搜索时,帧内预测器542可以通过利用搜索区域信息设置搜索区域并且利用预设的搜索方法执行ME来计算当前块的参考块矢量。
帧内预测器542利用参考块矢量来计算当前块的每个像素或每个子块的子块矢量S1604。
帧内预测器542可以利用如等式3至5所示的预设等式来根据参考块矢量的数量应用几何变换。
帧内预测器542利用子块矢量在包括当前块的相同帧内生成每个像素或每个子块的预测样本S1606。
对于当前块的每个像素或每个子块,帧内预测器542可以利用子块矢量的位置处的像素值作为预测样本,或者对子块矢量的位置处的像素值进行滤波以利用滤波的像素值作为预测样本。
尽管描述了顺序执行的各个流程图中的步骤,但这些步骤仅仅例示了本发明的一些实施方案的技术思想。因此,相关领域的普通技术人员可以通过改变在各个附图中描述的顺序或通过并行地执行两个或更多个步骤来执行步骤。因此,各个流程图中的步骤不限于所示的按发生时间排列的顺序。
应当理解,上述描述呈现了可以以各种其他方式实现的说明性实施方案。在一些实施方案中描述的功能可以通过硬件、软件、固件和/或它们的组合来实现。还应当理解,本说明书中描述的功能组件标记为“......单元”,以突出强调它们独立实现的可能性。
另一方面,在一些实施方案中描述的各种方法或功能可以实现为存储在非易失性记录介质中的指令,所述指令可以由一个或更多个处理器读取和执行。非易失性记录介质包括例如以计算机系统可读取的形式存储数据的所有类型的记录装置。例如,非易失性记录介质可以包括存储介质,例如可擦除可编程只读存储器(EPROM)、闪存驱动器、光盘驱动器、磁性硬盘驱动器和固态驱动器(SSD)等等。
尽管出于说明的目的描述了本发明的示例性实施方案,但是本领域的普通技术人员应当理解,在不脱离本发明的思想和范围的情况下,可以进行各种修改、添加和替换。因此,出于简洁和清楚起见描述了本发明的实施方案。本发明的实施方案的技术思想的范围不受例示的限制。相应地,普通技术人员应当理解,本发明的范围不受上述明确描述的实施方案的限制,而是受权利要求及其等同形式的限制。
(附图标记)
122:帧内预测器
510:熵解码器
542:帧内预测器
相关申请的交叉引用
本申请要求于2020年11月24日提交的韩国专利申请No.10-2020-0158994以及于2021年11月24日提交的韩国专利申请No.10-2021-0163126的优先权,其全部内容通过引用结合于本文中。
Claims (18)
1.一种由视频解码装置执行的帧内块复制方法,所述方法包括:
从比特流解码存储在预解码的块中使用的块矢量的映射或列表的信息;
基于映射或列表来计算当前块的顶点处的参考块矢量;
利用参考块矢量来计算当前块的每个像素或每个子块的子块矢量;以及
利用子块矢量在包括当前块的相同帧内生成每个像素或每个子块的预测样本。
2.根据权利要求1所述的方法,其中,解码包括:
将包括当前块的当前CTU的相邻编码树单元(CTU)的数量N解码为映射信息,其中N是自然数;以及
将指示列表中的特定位置的索引解码为列表信息。
3.根据权利要求2所述的方法,其中,当使用映射时,计算参考块矢量包括:利用存在于映射的特定区域中的一个或更多个块矢量基于当前块来推导块矢量,并且利用推导的块矢量作为参考块矢量。
4.根据权利要求3所述的方法,其中,利用包括包含当前块的当前CTU和N个相邻CTU的区域,包括包含由已经使用的块矢量指示的像素的CTU和N个相邻CTU的区域,当前块的形状和位置,或相邻块的预测模式来推导特定区域。
5.根据权利要求2所述的方法,其中,当使用列表时,计算参考块矢量包括利用由索引指示的列表中的块矢量作为参考块矢量。
6.根据权利要求5所述的方法,其中:
计算参考块矢量包括利用参考块矢量来更新列表,以及
当参考块矢量的全部或部分不包括在列表中时,从列表移除在时间上首先出现的块矢量,并且将参考块矢量的部分添加到列表。
7.根据权利要求2所述的方法,其中:
计算参考块矢量包括不利用列表上与位于距离当前块比预设距离更远的像素相对应的块矢量,以及
由高级语法元素传输预设距离。
8.根据权利要求7所述的方法,其中,计算参考块矢量包括:选择列表上位于预设距离内的的块矢量,并且利用选择的块矢量的组合的一个作为参考块矢量。
9.根据权利要求2所述的方法,其中:
计算参考块矢量包括根据参考块矢量的最大数量和当前块实际使用的参考块矢量的数量来限制几何变换的类型,以及
几何变换的类型和相应的参数由高级语法元素传输。
10.根据权利要求2所述的方法,其中,计算参考块矢量包括根据与几何变换的类型相对应的参数来约束翻转、旋转和缩放变换的特性。
11.根据权利要求10所述的方法,其中,计算参考块矢量包括:基于当前块的相邻块的预测模式中与块复制相对应的预测模式的数量来推导参考块矢量的最大数量。
12.根据权利要求1所述的方法,其中,计算子块矢量包括:根据参考块矢量的数量利用预设的不同等式来应用几何变换。
13.根据权利要求1所述的方法,其中:
计算子块矢量包括利用不同的块矢量而不是当前块的部分区域的子块矢量,以及
不同的块矢量是参考块矢量的一个或者是与参考块矢量的两个或更多个的平均值相对应的矢量。
14.根据权利要求1所述的方法,其中,对于当前块的每个像素或每个子块,生成预测样本包括利用子块矢量的位置处的像素值作为预测样本,或者对子块矢量的位置处的像素值进行滤波,以使用滤波的像素值作为预测样本。
15.根据权利要求1所述的方法,其中,当根据参考块矢量的参考块大于当前块时,生成预测样本包括:
对于每个子块,计算具有比子块的尺寸更大的尺寸的预测样本;
将滤波器应用于计算的预测样本;以及
通过对滤波的预测样本进行采样来计算最终的预测样本。
16.根据权利要求1所述的方法,其中,当根据参考块矢量的参考块小于当前块时,生成预测样本包括:
将L抽头插值滤波器应用于为每个子块计算的预测样本,其中L是自然数;
对滤波的预测样本进行采样;以及
利用从采样生成的预测样本的全部或部分作为最终的预测样本。
17.一种视频解码装置,包括:
熵解码器,其配置为从比特流解码存储在预解码的块中使用的块矢量的映射或列表的信息;以及
帧内预测器,其配置为基于映射或列表来计算当前块的顶点处的参考块矢量,并且利用参考块矢量来计算当前块的每个像素或每个子块的子块矢量,
其中,所述帧内预测器利用子块矢量在包括当前块的相同帧内生成每个像素或每个子块的预测样本。
18.一种由视频编码装置执行的帧内块复制方法,所述方法包括:
获得存储在预解码的块中使用的块矢量的映射或列表的信息;
基于映射或列表来计算当前块的顶点处的参考块矢量;
利用参考块矢量来计算当前块的每个像素或每个子块的子块矢量;以及
利用子块矢量在包括当前块的相同帧内生成每个像素或每个子块的预测样本。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20200158994 | 2020-11-24 | ||
KR10-2020-0158994 | 2020-11-24 | ||
PCT/KR2021/017383 WO2022114770A1 (ko) | 2020-11-24 | 2021-11-24 | 기하학적 변환에 기반하는 블록 복사를 이용하는 인트라 예측방법과 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116671104A true CN116671104A (zh) | 2023-08-29 |
Family
ID=81785749
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180078443.0A Pending CN116671104A (zh) | 2020-11-24 | 2021-11-24 | 利用基于几何变换的块复制的帧内预测的方法和装置 |
Country Status (3)
Country | Link |
---|---|
EP (1) | EP4250735A4 (zh) |
KR (1) | KR20220071945A (zh) |
CN (1) | CN116671104A (zh) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10477232B2 (en) * | 2014-03-21 | 2019-11-12 | Qualcomm Incorporated | Search region determination for intra block copy in video coding |
-
2021
- 2021-11-24 CN CN202180078443.0A patent/CN116671104A/zh active Pending
- 2021-11-24 KR KR1020210163126A patent/KR20220071945A/ko unknown
- 2021-11-24 EP EP21898596.8A patent/EP4250735A4/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4250735A4 (en) | 2024-10-16 |
EP4250735A1 (en) | 2023-09-27 |
KR20220071945A (ko) | 2022-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113812147B (zh) | 使用块内复制的图像编码和解码 | |
CN116530082A (zh) | 利用帧内预测的视频编码的方法和装置 | |
CN116472709A (zh) | 用于视频编码和解码的装置和方法 | |
US20230291932A1 (en) | Method and apparatus for intra prediction using block copy based on geometric transform | |
CN114128290A (zh) | 用于利用帧间预测来编码和解码视频的方法和装置 | |
CN116941241A (zh) | 利用基于矩阵的交叉分量预测的视频编解码方法和装置 | |
CN116636211A (zh) | 利用块合并编码视频的方法和装置 | |
CN117044212A (zh) | 基于分割信息利用去块滤波的视频编解码方法和装置 | |
CN116671104A (zh) | 利用基于几何变换的块复制的帧内预测的方法和装置 | |
US20230283768A1 (en) | Method for predicting quantization parameter used in a video encoding/decoding apparatus | |
CN114762328B (zh) | 利用差分调制的视频编码和解码方法 | |
CN117044200A (zh) | 利用螺旋扫描顺序的视频编解码的方法和装置 | |
CN118489244A (zh) | 利用改进的amvp-merge模式的视频编解码的方法和装置 | |
CN116918323A (zh) | 用于改善帧内预测的预测信号的视频编解码方法和装置 | |
CN118251891A (zh) | 利用基于模板匹配的帧内预测的视频编解码的方法和装置 | |
CN116113973A (zh) | 使用基于深度学习的帧间预测的视频编码与解码 | |
CN115066900A (zh) | 基于具有不同分辨率的参考图片的图像编码和解码 | |
CN117693938A (zh) | 基于深度学习的精细化帧内预测信号的视频编解码方法和装置 | |
CN117581534A (zh) | 视频编码/解码方法和装置 | |
CN117917071A (zh) | 利用子块编解码次序变化和根据子块编解码次序变化的帧内预测的视频编解码的方法和装置 | |
CN118160304A (zh) | 使用各种块划分结构的视频编码方法和设备 | |
CN118369914A (zh) | 利用基于模板匹配的次要mpm列表的视频编解码的方法和装置 | |
CN118749197A (zh) | 帧间预测中在解码器侧修改运动矢量列表的方法和装置 | |
CN116472710A (zh) | 利用分量之间的参考生成残差信号的方法和装置 | |
CN118805373A (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 |