CN116636211A - 利用块合并编码视频的方法和装置 - Google Patents
利用块合并编码视频的方法和装置 Download PDFInfo
- Publication number
- CN116636211A CN116636211A CN202180080529.7A CN202180080529A CN116636211A CN 116636211 A CN116636211 A CN 116636211A CN 202180080529 A CN202180080529 A CN 202180080529A CN 116636211 A CN116636211 A CN 116636211A
- Authority
- CN
- China
- Prior art keywords
- block
- blocks
- current block
- information
- merge
- 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 71
- 239000013598 vector Substances 0.000 claims description 90
- 238000007781 pre-processing Methods 0.000 claims description 25
- 238000013145 classification model Methods 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 16
- 238000010276 construction Methods 0.000 claims description 13
- 238000013135 deep learning Methods 0.000 claims description 13
- 238000012549 training Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 16
- 230000003044 adaptive effect Effects 0.000 description 15
- 230000009466 transformation Effects 0.000 description 15
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 14
- 238000001914 filtration Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 12
- 238000013139 quantization Methods 0.000 description 12
- 238000005192 partition Methods 0.000 description 9
- 239000000284 extract Substances 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000002123 temporal effect Effects 0.000 description 8
- 238000013136 deep learning model Methods 0.000 description 7
- 230000008707 rearrangement Effects 0.000 description 7
- 230000001131 transforming effect Effects 0.000 description 7
- 230000011218 segmentation Effects 0.000 description 6
- 230000006835 compression Effects 0.000 description 5
- 238000007906 compression Methods 0.000 description 5
- 238000000638 solvent extraction Methods 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 241000023320 Luma <angiosperm> Species 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 108010063123 alfare Proteins 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- OSWPMRLSEDHDFF-UHFFFAOYSA-N methyl salicylate Chemical compound COC(=O)C1=CC=CC=C1O OSWPMRLSEDHDFF-UHFFFAOYSA-N 0.000 description 1
- 239000000203 mixture Substances 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
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000000844 transformation 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/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/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/109—Selection of coding mode or of prediction mode among a plurality of temporal 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
- H04N19/122—Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
-
- 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/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
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
作为涉及利用块合并编码视频的方法和装置的公开,本实施方案提供了用于编码视频的装置和方法,其通过参考当前块的编码信息和空间/时间上的邻近块的编码信息来自适应地生成块合并列表,以预测和变换当前块。
Description
技术领域
本发明涉及通过利用块合并的视频编码的方法和装置。
背景技术
本部分中的陈述仅提供与本发明有关的背景技术信息,并不一定构成现有技术。
由于视频数据与音频数据或静止影像数据相比具有较大的数据量,视频数据需要大量的硬件资源(包括存储器)来存储或发送未经压缩处理的视频数据。
相应地,编码器通常用于压缩并存储或发送视频数据。解码器接收压缩的视频数据,解压接收到的压缩的视频数据,并且播放解压的视频数据。视频压缩技术包括H.264/AVC、高效率视频编码(High Efficiency Video Coding,HEVC)和多功能视频编码(Versatile Video Coding,VVC),所述多功能视频编码(VVC)比HEVC的编码效率提高了大约30%或更多。
然而,由于影像大小、分辨率和帧速率逐渐增加,要编码的数据量也在增多。相应地,需要一种与现有的压缩技术相比提供更高的编码效率和改善的影像增强效果的新的压缩技术。
近年来,基于深度学习的图像处理技术已经应用于现有的编码基本技术。通过将基于深度学习的图像处理技术应用于现有的编码技术(特别是,诸如帧间预测、帧内预测、环内滤波、变换等的压缩技术)可以提高编码效率。代表性的应用示例包括基于由深度学习模型生成的虚拟参考帧的帧间预测,以及基于去噪模型的环内滤波。因此,需要进一步采用基于深度学习的图像处理技术来提高影像编码/解码的编码效率。
发明内容
技术课题
在一些实施方案中的本发明致力于提供利用块合并的视频编码方法和装置。为了预测和变换当前块,视频编码方法和装置通过参考当前块的编码信息以及空间和时间上的邻近块的编码信息来自适应地生成块合并列表。
解决方法
本发明的至少一个方面提供了由计算装置执行的用于生成对当前块进行块合并的合并列表的方法。该方法包括:基于当前块的编码信息来获得邻近块的编码信息,所述邻近块包括与当前块在空间上的邻近块和与当前块在时间上的邻近块。该方法还包括:通过预处理邻近块的编码信息来生成至少一个矢量数据。该方法还包括:通过利用基于深度学习的分类模型,从矢量数据生成指定多个合并列表类型的一个的索引。该方法还包括:通过基于由索引指定的合并列表类型根据预定义规则搜索合并候选,并且通过利用检索到的合并候选来生成当前块的合并列表。
本发明的另一个方面提供了用于生成对当前块进行块合并的合并列表的装置。该装置包括输入单元,所述输入单元配置为基于当前块的编码信息来获得邻近块的编码信息,所述邻近块包括与当前块在空间上的邻近块和与当前块在时间上的邻近块。该装置还包括预处理单元,所述预处理单元配置为预处理邻近块的编码信息以生成至少一个矢量数据。该装置还包括类别确定单元,所述类别确定单元配置为通过利用基于深度学习的分类模型,从矢量数据生成指定多个合并列表类型的一个的索引。该装置还包括列表构造单元,所述列表构造单元配置为通过基于由索引指定的合并列表类型根据预定义规则搜索合并候选,并且通过利用检索到的合并候选来生成当前块的合并列表。
发明效果
如上所述,本实施方案提供利用块合并的视频编码方法和装置。视频编码方法和装置通过参考当前块的编码信息以及空间和时间上的邻近块的编码信息来自适应地生成块合并列表,以提高用于应用块合并列表的合并索引的编码效率。
附图说明
图1是可以实现本发明技术的视频编码装置的框图。
图2示出利用四叉树加二叉树三叉树(QTBTTT)结构来对块进行分区的方法。
图3a和图3b示出包括宽角度帧内预测模式的多个帧内预测模式。
图4示出当前块的相邻块。
图5是可以实现本发明技术的视频解码装置的框图。
图6是根据本发明的至少一个实施方案的用于在合并/跳过模式中搜索运动矢量候选的过程的流程图。
图7是概念性地示出根据本发明的至少一个实施方案的合并列表的示意图。
图8是概念性地示出根据本发明的至少一个实施方案的合并列表生成装置的框图。
图9是概念性地示出根据本发明的至少一个实施方案的空间上和时间上的邻近块的位置的示意图。
图10是根据本发明的至少一个实施方案的生成合并列表的方法的流程图。
图11是概念性地示出根据本发明的另一个实施方案的自适应合并列表生成装置的框图。
图12是示出根据本发明的又一个实施方案的自适应合并列表生成方法的流程图。
具体实施方式
在下文中,将参考所附说明性附图对本发明的一些实施方案进行详细描述。在下面的描述中,相同的附图标记表示相同的元件,尽管元件在不同的附图中示出。此外,在一些实施方案的以下描述中,当认为相关的已知组件和功能的详细描述模糊了本发明的主题时,为了清楚和简洁起见,可以省略对相关的已知组件和功能的详细描述。
图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模式的两种非方向模式,并且可以包括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中。当一个图像中的所有块被恢复时,恢复的图像可以用作用于对随后要被编码的图像内的块进行帧间预测的参考图像。
在一些实施方案中的本发明涉及如上所述的编码和解码视频影像。更具体地,本发明提供了一种视频编码方法和装置,其通过参考当前块的编码信息以及空间上和时间上的邻近块的信息来自适应地生成块合并列表,以预测和变换当前块。
以下实施方案可以通过帧间预测器124、帧内预测器122、变换器140或逆变换器165在视频编码装置中执行。此外,以下实施方案可以通过帧间预测器544、帧内预测器542或逆变换器530在视频解码装置中执行。
I.帧间预测的合并/跳过模式
下面利用图6的示例描述在帧间预测的合并/跳过模式中构造运动矢量的合并候选列表的方法。为了支持合并模式,帧间预测器124可以通过选择预设数量(例如,六个)的合并候选来构造合并候选列表。
图6是根据本发明的至少一个实施方案的用于在合并/跳过模式中搜索运动矢量候选的过程的流程图。
帧间预测器124搜索空间合并候选(S600)。如图4所例示的,帧间预测器124从相邻块搜索空间合并候选。可以选择多达四个空间合并候选。
帧间预测器124搜索时间合并候选(S602)。帧间预测器124可以添加这样的块作为时间合并候选,所述块位于除了带有目标块的当前图像之外的参考图像中并且与当前块同位,其中参考图像可以与用于预测当前块的参考图像相同,也可以与用于预测当前块的参考图像不相同。可以选择一个时间合并候选。
帧间预测器124搜索基于历史的运动矢量预测器(history-based motion vectorpredictor,HMVP)候选(S604)。帧间预测器124可以将先前n个(其中,n是自然数)CU的运动矢量存储在表中,然后利用其作为合并候选。表的大小为6,并且以先进先出(first-infirst out,FiFO)的方式存储先前CU的运动矢量。这指示出表中存储多达六个HMVP候选。帧间预测器124可以将存储在表中的HMVP候选中的最新运动矢量设置为合并候选。
帧间预测器124搜索成对平均MVP(Pairwise Average MVP,PAMVP)候选(S606)。帧间预测器124可以将合并候选列表中的第一候选和第二候选的运动矢量平均值设置为合并候选。
如果即使执行了所有上述步骤(S600至S606),也不能填满合并候选列表(即,无法用预设数量的合并候选填满),则帧间预测器124添加零运动矢量作为合并候选(S608)。
II.自适应合并列表生成
在下面的描述中,用于在视频编码装置和视频解码装置中预测和变换当前块的块合并是指基于当前块与其在空间上和时间上的邻近块之间的相似性来参考和利用相邻块没有发生改变的信息的方法。
在构造用于预测和变换当前块的块合并列表时,该实施方案基于与当前块在空间上和时间上邻近的块的编码信息来确定或生成基于深度学习的块合并列表,而不是根据预定义规则来生成列表。
在帧间预测中,可以将利用合并候选列表的合并模式认作块合并的代表性实施方案,如上所述。另外,在执行帧内预测时,通过参考来利用空间上的相邻块的帧内预测模式可以是块合并的实施方案。
在下面的描述中,为了将其与帧内预测的合并模式中利用的合并候选列表进行区分,根据本实施方案的用于块合并的列表称为块合并列表或合并列表。
在该实施方案中,可以生成用于帧间预测、帧内预测和变换的合并列表。在下文中,将用于帧间预测的合并列表称为运动合并列表。
为了在执行块合并时管理由当前块参考的至少一个块的块信息,视频编码装置可以生成存储块信息的合并列表,如图7所示。此外,视频编码装置可以向视频解码装置发送指示在生成的合并列表中利用哪个块信息的合并索引。
此时,块信息可以描述如下。在帧间预测中,可以由包括运动预测方向(例如,单向或双向)、根据运动预测方向的参考图像索引以及根据运动预测方向的至少一个或更多个运动矢量的运动信息来代表块信息。在帧内预测中,相邻块的帧内预测模式可以代表块信息。在变换中,相邻块的变换信息可以代表块信息。块信息还可以包括一组已经重构的像素值和相邻块的块合并信息。
图8是概念性地示出根据本发明的至少一个实施方案的合并列表生成装置的框图。
根据本实施方案的合并列表生成装置800通过参考当前块的编码信息和与当前块在空间上/时间上邻近的块的编码信息来自适应地生成合并列表。合并列表生成装置800可以整体或部分地包括输入单元802、预处理单元804、类别确定单元806和列表构造单元808。
基于当前块的编码信息,输入单元802从与当前块在空间上和时间上邻近的块(在下文中,称为“邻近块”,其与如上所述的相邻块可互换地使用)获得编码信息。
这里,邻近块的编码信息可以是如上所述的块信息,即,邻近块的编码信息可以是一组先前构造的像素值。此外,它可以包括诸如运动矢量、参考图像信息等的运动信息。它还可以包括邻近块的预测模式信息、变换信息、块合并信息等。
图9是概念性地示出根据本发明的至少一个实施方案的空间上和时间上的邻近块的位置的示意图。
如图9所示,输入单元802可以从空间/时间上的邻近块获得编码信息。此外,这些空间/时间上的邻近块及其相应的编码信息可以稍后包括在合并列表中作为空间合并候选或时间合并候选。
在与当前块空间上的邻近块中,左侧参考块可以包括在位置A0(908)和A1(902)处的块,并且可以进一步包括在位置A2(914)或B3(910)处的块。尽管在图9中未示出,在A1(902)处的块与A2(914)块之间的中间位置的块也可以用作邻近块。
此外,在与当前块空间上的邻近块中,顶部参考块可以包括在位置B0(906)、B1(904)、B2(912)和B3(910)处的所有块或一些块。另外,尽管在图9中未示出,在B1(904)与B2(912)处的块之间的中间位置的块也可以用作邻近块。
与当前块时间上的邻近块可以是与当前块的参考图像中的块邻近并且与当前块同位的那些块,它们是在右下侧C0(924)位置和中心C1(922)处的邻近块。在这种情况下,时间上的邻近块可以用作用于合并的候选块,前提是可以参考与当前块时间上的邻近块。
在生成用于帧间预测的运动合并列表时,用于存储运动信息的单元块可以是包括4×4、8×8或16×16像素的块。
在根据本发明的另一个实施方案中,当生成用于帧内预测的合并列表时,用于存储预测模式信息的单元块可以是包括4×4、8×8或16×16像素的块,并且可以是在空间上与当前块邻近的像素。
在根据本发明的又一个实施方案中,当生成用于变换的合并列表时,用于存储变换模式信息的单元块可以是包括4×4、8×8或16×16像素的块。
在本发明的一个实施方案中,当合并列表是运动合并列表时,当前块的编码信息可以包括位置信息和参考图像信息。因此,输入单元802可以基于当前块的位置信息和参考图像信息来获得空间/时间上的邻近块的运动信息作为邻近块的编码信息。
预处理单元804处理或重排邻近块的编码信息,以生成至少一个矢量数据,以便于在类别确定单元806中的处理。
在本发明的一个实施方案中,当合并列表是运动合并列表时,预处理单元804可以根据空间/时间上的邻近块的位置信息、当前块的左侧参考块的运动信息、当前块的顶部参考块的运动信息、时间上的邻近块的运动信息、基于历史的运动信息以及基于成对平均的运动信息,通过处理或重排来生成至少一个矢量数据。
另一方面,当合并列表是运动合并列表时,预处理单元804可以基于邻近块的位置、存储运动信息的单元块的大小以及合并列表中的编码信息项的顺序来仅选择邻近块的总运动信息的一部分。
在根据本发明的其他实施方案中,可以省略由预处理单元804执行的预处理,除非需要如上所述地处理或重排邻近块的编码信息。
类别确定单元806通过利用基于深度学习的分类模型,从矢量数据生成与当前块的合并列表类别相对应的索引。这里,合并列表类别指示合并列表类型。
当省略由预处理单元804执行的预处理时,分类模型可以利用在空间和时间上的邻近块的编码信息作为输入。
可以基于合并列表包括的编码的信息和合并列表的构造(例如,合并列表包括的编码的信息项的顺序)来确定和归类合并列表类型。例如,当两个合并列表包含不同的编码的信息项时,或者当它们具有不同的编码的信息项的顺序时,两个合并列表是不同的类型,也就是说,两个合并列表可以对应于不同的合并列表类别。然而,如本发明中所描述的合并列表类型不一定限于在字面上在本发明中所称的类别。
下面说明了当合并列表是运动合并列表时构造合并列表类别的方法。
例如,与在上述构造帧间预测的合并候选列表的方法中搜索空间合并候选的顺序一致,第一合并列表类别可以以图9所示的空间上的邻近块的位置如B1(904)、A1(902)、B0(906)、A0(908)和B3(910)的位置的顺序包括空间合并候选。与上述搜索空间合并候选的顺序相反且不同,第二合并列表类别可以以在空间上的邻近块的位置中如A1(902)、B1(904)、B0(906)、A0(908)和B3(910)的位置的顺序包括空间合并候选。
此外,与上述构造帧间预测的合并候选列表的顺序一致,第一合并列表类别可以包括按照空间合并候选、时间合并候选、HMVP候选、PAMVP和零运动矢量的顺序排列的合并列表。与上述构造帧间预测的合并候选列表的顺序相反且不同,第二合并列表类别可以包括按照时间合并候选、空间合并候选、HMVP候选、PAMVP和零运动矢量顺序的合并列表。另外,第三合并列表类别可以包括按照HMVP候选、空间合并候选、时间合并候选、PAMVP和零运动矢量顺序的合并列表。
另一方面,可以利用训练数据和标签对分类模型进行预训练,以学习生成合并列表类别的索引的能力。这里,训练数据是用于训练的邻近块的编码信息。标签是指示与邻近块的编码信息相对应的合并列表类别的目标索引。在这种情况下,作为由目标索引指示的合并列表类别,合并列表类型可以适于使用,其中合并列表布置为在其前面具有适合于合并当前块并且极有可能被选择的合并候选。例如,当合并列表是运动合并列表时,分类模型可以基于当前块的编码信息和邻近块的运动信息的特征来生成合并列表的类别的索引,在所述合并列表中具有最高选择概率的合并候选被放置在前面。
在根据本发明的其他实施方案中,类别确定单元806可以基于当前块的大小来利用不同的分类模型。例如,如果当前块的宽度(W)和高度(H)的较小者小于或等于预设大小,则类别确定单元806可以利用相对简单的第一分类模型。在相反的情况下,即,如果当前块的W和H的较小者大于预设大小,则类别确定单元806可以利用相对复杂的第二分类模型。这里,预设大小可以是CU的宽度或高度,如2或4的倍数(例如,4、8、16等)。
第一分类模型可以是深度学习模型,其包括N个(其中,N是自然数)全连接层(fully-connected layer)。第二分类模型可以是包括M个(其中,M是大于或等于N的自然数)卷积层(convolutional layer)或M个全连接层的深度学习模型,或者它可以是包括卷积层和全连接层的混合的M个层的深度学习模型。
列表构造单元808基于由合并列表类别的索引指定的合并列表的构造来搜索用于当前块的块合并的合并候选。列表构造单元808将检索到的合并候选添加到合并列表,以生成当前块的合并列表。
构造合并列表的方法可以依赖于预定义规则。因此,为了生成不同类型的合并列表,列表构造单元808可以利用不同种类的预定义规则。
例如,当合并列表是对应于第一合并列表类别的运动合并列表时,列表构造单元808可以按照上述空间合并候选、时间合并候选、HMVP候选、PAMVP和零运动矢量的顺序搜索合并候选。
视频编码装置可以在根据基于合并列表的预测或变换执行率失真分析之后,选择指示具有最佳率失真的合并候选的索引,并且将选择的索引发送到视频解码装置。
如上所述,在由合并列表类别的索引指定的合并列表中,更有可能选择位于合并列表中前面的合并候选,这使得视频编码装置能够减少用于传输相应合并索引的位数量。
如图8所示的合并列表生成装置800可以在视频编码装置和视频解码装置两者中实现。然而,在根据本发明的其他实施方案中,视频编码装置可以向视频解码装置发送由合并列表生成装置800生成的合并列表类别的索引以及指示最佳合并候选的合并索引。
此时,在不利用分类模型的情况下,视频解码装置基于由从视频编码装置接收到的合并列表类别的索引所指定的合并列表的构造,根据预定义规则搜索用于合并当前块的合并候选。视频解码装置可以通过将检索到的合并候选添加到合并列表来生成当前块的合并列表,然后通过利用由从视频编码装置接收到的合并索引所指示的候选来执行当前块的块合并。
下面参考图10描述生成用于预测和变换当前块的合并列表的方法。
图10是根据本发明的至少一个实施方案的生成合并列表的方法的流程图。
合并列表生成装置800基于当前块的编码信息来获得邻近块的编码信息(S1000)。这里,如图9所示,邻近块包括与当前块在空间上的邻近块和与当前块在时间上的邻近块。
邻近块的编码信息可以是一组先前重构的像素值。它还可以包括运动信息,例如运动矢量、参考图像信息等。它还可以包括邻近块的预测模式信息、变换信息、块合并信息等。
在本发明的一个实施方案中,当合并列表是根据当前块的帧间预测的运动合并列表时,当前块的编码信息可以包括位置信息和参考图像信息。因此,合并列表生成装置800可以基于当前块的位置信息和参考图像信息来获得空间/时间上的邻近块的运动信息作为邻近块的编码信息。
合并列表生成装置800对邻近块的编码信息进行预处理,以生成至少一个矢量数据(S1002)。
在本发明的一个实施方案中,当执行当前块的帧间预测时,合并列表生成装置800可以处理或重排当前块的左侧参考块的运动信息、当前块的顶部参考块的运动信息、时间上的邻近块的运动信息、基于历史的运动信息以及基于对平均的运动信息,以生成矢量数据。
另一方面,当合并列表是运动合并列表时,合并列表生成装置800可以按照邻近块的位置、存储运动信息时的单元块的大小以及合并列表中的编码信息的顺序,仅选择邻近块的总运动信息的一些。
在根据本发明的其他实施方案中,可以省略预处理,除非它们需要如上所述的邻近块的编码信息的处理或重排。
合并列表生成装置800通过利用基于深度学习的分类模型,从矢量数据生成指定多个合并列表类型的一个的索引(S1004)。
当省略生成矢量数据的预处理时,分类模型可以利用空间和时间上的邻近块的编码信息作为输入。
在该实施方案中,如上所述的合并列表类型称为合并列表类别,但不一定限于此。
可以基于合并列表包含的编码的信息和合并列表的构造(例如,合并列表包含的编码的信息项的顺序)来确定和归类合并列表类型。例如,如果两个合并列表包含不同的编码的信息,或者如果它们具有不同的编码的信息项的顺序,则两个合并列表具有不同的类型。
另一方面,可以用训练数据和标签对分类模型进行预训练,以学习索引合并列表类别的能力。
在根据本发明的其他实施方案中,合并列表生成装置800可以根据当前块的大小来利用不同的分类模型。例如,如果当前块的W和H的较小者小于或等于预设大小,则合并列表生成装置800可以利用相对简单的第一分类模型。相反,如果当前块的W和H的较小者大于预设大小,则合并列表生成装置800可以利用相对复杂的第二分类模型。
基于由索引指定的合并列表类型,合并列表生成装置800根据预定义规则来搜索合并候选,并且通过利用检索到的合并候选来生成当前块的合并列表(S1006)。此时,合并列表生成装置800可以通过根据合并列表类型利用不同的预定义规则来搜索合并候选。
作为本发明的另一个实施方案,下面描述了用于通过利用基于深度学习的推断模型来生成合并列表的自适应合并列表生成单元和自适应合并列表生成方法。
图11是概念性地示出根据本发明的另一个实施方案的自适应合并列表生成装置的框图。
在本发明的另一个实施方案中,合并列表生成装置1100通过参考当前块的编码信息和与当前块在空间和时间上邻近的块的编码信息来自适应地生成合并列表。合并列表生成装置1100可以整体或部分地包括输入单元1102、预处理单元1104和列表生成单元1106。
输入单元1102基于当前块的编码信息从邻近块获得编码信息。这里,如图9所示,邻近块包括与当前块在空间上的邻近块和与当前块在时间上的邻近块。
邻近块的编码信息可以是一组先前重构的像素值。它还可以包括运动信息,例如运动矢量、参考图像信息等。它还可以包括邻近块的预测模式信息、变换信息、块合并信息等。
在本发明的一个实施方案中,当合并列表是根据当前块的帧间预测的运动合并列表时,当前块的编码信息可以包括位置信息和参考图像信息。因此,输入单元1102可以基于当前块的位置信息和参考图像信息来获得空间/时间上的邻近块的运动信息作为邻近块的编码信息。
预处理单元1104通过预处理邻近块的编码信息来生成至少一个矢量数据,以便于列表生成单元1106中的处理。
在本发明的一个实施方案中,当执行当前块的帧间预测时,预处理单元1104可以通过处理或重排当前块的左侧参考块的运动信息、当前块的顶部参考块的运动信息、时间上的邻近块的运动信息、基于历史的运动信息以及基于对平均的运动信息来生成矢量数据。
另一方面,当合并列表是运动合并列表时,预处理单元1104可以基于邻近块的位置、存储运动信息时单元块的大小以及合并列表中的编码信息项的顺序来仅选择邻近块的总运动信息的一些。
在根据本发明的其他实施方案中,除非它们需要如上所述的处理或重排邻近块的编码信息,否则它们可以跳过由预处理单元1104执行的预处理。
列表生成单元1106通过利用基于深度学习的推断模型,从矢量数据生成当前块的合并列表。
如果省略由预处理单元1104执行的预处理,则推断模型可以利用空间和时间上的邻近块的编码信息作为输入。
另一方面,可以用训练数据和标签对推断模型进行预训练,以学习生成合并列表类别的能力。这里,训练数据是用于训练的邻近块的编码信息。标签是代表与邻近块的编码信息相对应的合并列表的目标列表。作为目标列表,可以利用这样的合并候选的合并列表,当合并候选适合于合并当前块并且极有可能被选择时,合并候选放置在合并列表的前面。例如,当合并列表是运动合并列表时,推断模型可以基于当前块的编码信息和邻近块的运动信息的特征来生成合并列表,在该合并列表中具有极高选择概率的合并候选被放置在前面。
在根据本发明的其他实施方案中,列表生成单元1106可以根据当前块的大小来利用不同的推断模型。例如,如果当前块的W和H的较小者小于或等于预设大小,则列表生成单元1106可以利用相对简单的第一推断模型。在相反的情况下,也就是说,在当前块的W和H的较小者大于预设大小时,列表生成单元1106可以利用相对复杂的第二推断模型。这里,预设大小可以是CU的宽度或高度,如2或4的倍数(例如,4、8、16等)。
此外,第一推断模型可以是具有N个全连接层的深度学习模型。第二推断模型可以是包括M个卷积层或M个全连接层的深度学习模型,或者卷积层和全连接层混合的全连接M个层的深度学习模型。
现在参考图12,描述生成用于预测和变换当前块的合并列表的方法。
图12是示出根据本发明的又一个实施方案的自适应合并列表生成方法的流程图。
合并列表生成装置1100基于当前块的编码信息来获得邻近块的编码信息(S1200)。在本文中,如图9所示,邻近块包括与当前块在空间上的邻近块和与当前块在时间上的邻近块。
邻近块的编码信息可以是一组先前重构的像素值。它还可以包括运动信息,例如运动矢量、参考图像信息等。它还可以包括邻近块的预测模式信息、变换信息、块合并信息等。
在本发明的一个实施方案中,当合并列表是根据当前块的帧间预测的运动合并列表时,当前块的编码信息可以包括位置信息和参考图像信息。因此,合并列表生成装置1100可以基于当前块的位置信息和参考图像信息来获得空间/时间上的邻近块的运动信息作为邻近块的编码信息。
合并列表生成装置1100对邻近块的编码信息进行预处理,以生成至少一个矢量数据(S1202)。
在本发明的一个实施方案中,当执行当前块的帧间预测时,合并列表生成装置1100可以通过处理或重排当前块的左侧参考块的运动信息、当前块的顶部参考块的运动信息、时间上的邻近块的运动信息、基于历史的运动信息和基于对平均的运动信息来生成矢量数据。
另一方面,当合并列表是运动合并列表时,合并列表生成装置1100可以根据邻近块的位置、存储运动信息时单元块的大小以及合并列表中的编码信息的顺序,仅选择邻近块的总运动信息的一些。
在根据本发明的其他实施方案中,它们可以省略预处理步骤,除非它们需要如上所述的邻近块的编码信息的处理或重排。
合并列表生成装置1100通过利用基于深度学习的推断模型,从矢量数据生成当前块的合并列表(S1204)。
当省略生成矢量数据的预处理时,推断模型可以利用空间和时间上的邻近块的编码信息作为输入。
另一方面,可以用训练数据和标签对推断模型进行预训练,以学习生成合并列表类别的能力。
在根据本发明的其他实施方案中,合并列表生成装置1100可以根据当前块的大小来利用不同的推断模型。例如,如果当前块的W和H的较小者小于或等于预设大小,则合并列表生成装置1100可以利用相对简单的第一推断模型。相反,如果当前块的W和H的较小者大于预设大小,则合并列表生成装置1100可以利用相对复杂的第二推断模型。
尽管描述了顺序执行的各个流程图中的步骤,但这些步骤仅仅例示了本发明的一些实施方案的技术思想。因此,本发明所属领域的普通技术人员可以通过改变在各个附图中描述的顺序或通过并行地执行两个或更多个步骤来执行步骤。因此,各个流程图中的步骤不限于所示的按发生时间排列的顺序。
应当理解,上述描述呈现了可以以各种其他方式实现的说明性实施方案。在一些实施方案中描述的功能可以通过硬件、软件、固件和/或它们的组合来实现。还应当理解,本说明书中描述的功能组件标记为“......单元”,以突出强调它们独立实现的可能性。
另一方面,在一些实施方案中描述的各种方法或功能可以实现为存储在非易失性记录介质中的指令,所述指令可以由一个或更多个处理器读取和执行。非易失性记录介质可以包括例如以计算机***可读取的形式存储数据的各种类型的记录装置。例如,非易失性记录介质可以包括存储介质,例如可擦除可编程只读存储器(EPROM)、闪存驱动器、光盘驱动器、磁性硬盘驱动器和固态驱动器(SSD)等等。
尽管出于说明的目的描述了本发明的示例性实施方案,但是本发明所属领域的普通技术人员应当理解,在不脱离本发明的思想和范围的情况下,可以进行各种修改、添加和替换。因此,出于简洁和清楚起见描述了本发明的实施方案。本发明的实施方案的技术思想的范围不受例示的限制。相应地,本发明所属领域的普通技术人员应当理解的是,本发明的范围不受上述明确描述的实施方案的限制,而是受权利要求及其等同形式的限制。
(附图标记说明)
800:合并列表生成装置
802:输入单元
804:预处理单元
806:类别确定单元
808:列表构造单元。
相关申请的交叉引用
本申请要求于2020年12月1日提交的韩国专利申请No.10-2020-0165722以及于2021年12月1日提交的韩国专利申请No.10-2021-0169665的优先权,其全部内容通过引用结合于本文中。
Claims (16)
1.一种由计算装置执行的用于生成对当前块进行块合并的合并列表的方法,所述方法包括:
基于当前块的编码信息来获得邻近块的编码信息,所述邻近块包括与当前块在空间上的邻近块和与当前块在时间上的邻近块;
通过预处理邻近块的编码信息来生成至少一个矢量数据;
通过利用基于深度学习的分类模型,从矢量数据生成指定多个合并列表类型的一个的索引;以及
通过基于由索引指定的合并列表类型根据预定义规则搜索合并候选,并且通过利用检索到的合并候选来生成当前块的合并列表。
2.根据权利要求1所述的方法,其中,当执行当前块的帧间预测时,当前块的编码信息包括当前块的位置信息和参考图像信息,并且邻近块的编码信息包括邻近块的运动矢量和参考图像信息。
3.根据权利要求1所述的方法,其中,空间上的邻近块包括左侧参考块,所述左侧参考块包括A0(908)处的块、A1(902)处的块、A2(914)处的块或B3(910)处的块的全部或一些,并且包括A1(902)处的块与A2(914)处的块之间的中间块的全部或一些。
4.根据权利要求1所述的方法,其中,空间上的邻近块包括顶部参考块,所述顶部参考块包括B0(906)处的块、B1(904)处的块、B2(912)处的块或B3(910)处的块的全部或一些,并且包括B1(904)处的块与B2(912)处的块之间的中间块的全部或一些。
5.根据权利要求1所述的方法,其中,时间上的邻近块包括在当前块的参考图像中与当前块同位的块的C0(924)处的右下侧块和C1(922)处的中心块。
6.根据权利要求1所述的方法,其中,生成至少一个矢量数据包括:
当执行当前块的帧间预测时,通过利用当前块的左侧参考块的运动信息、当前块的顶部参考块的运动信息、时间上的邻近块的运动信息、基于历史的运动信息以及基于成对平均的运动信息来生成矢量数据。
7.根据权利要求1所述的方法,其中,合并列表类型取决于合并列表包括的分量,并且取决于分量的包括顺序。
8.根据权利要求1所述的方法,其中,通过利用训练数据和标签来预训练分类模型,以学习用于生成合并列表类别的索引的功能。
9.根据权利要求8所述的方法,其中,标签指示具有合并候选的合并列表的类型,所述合并候选位于前面、极有可能被选择为当前块。
10.根据权利要求1所述的方法,其中,生成合并列表包括:
根据合并列表类型,通过利用不同的预定义规则来搜索合并候选。
11.一种生成用于对当前块进行块合并的合并列表的装置,包括:
输入单元,其配置为基于当前块的编码信息来获得邻近块的编码信息,所述邻近块包括与当前块在空间上的邻近块和与当前块在时间上的邻近块;
预处理单元,其配置为预处理邻近块的编码信息以生成至少一个矢量数据;
类别确定单元,其配置为通过利用基于深度学习的分类模型,从矢量数据生成指定多个合并列表类型的一个的索引;以及
列表构造单元,其配置为通过基于由索引指定的合并列表类型根据预定义规则搜索合并候选,并且通过利用检索到的合并候选来生成当前块的合并列表。
12.根据权利要求11所述的装置,其中,空间上的邻近块包括左侧参考块,所述左侧参考块包括A0(908)处的块、A1(902)处的块、A2(914)处的块或B3(910)处的块的全部或一些,并且包括A1(902)处的块与A2(914)处的块之间的中间块的全部或一些。
13.根据权利要求11所述的装置,其中,空间上的邻近块包括顶部参考块,所述顶部参考块包括B0(906)处的块、B1(904)处的块、B2(912)处的块或B3(910)处的块的全部或一些,并且包括B1(904)处的块与B2(912)处的块之间的中间块的全部或一些。
14.根据权利要求11所述的装置,其中,时间上的邻近块包括在当前块的参考图像中与当前块同位的块的C0(924)处的右下侧块和C1(922)处的中心块。
15.根据权利要求11所述的装置,其中,合并列表类型取决于合并列表所包括的分量,并且取决于分量的包括顺序。
16.根据权利要求11所述的装置,其中,列表构造单元配置为根据合并列表类型,通过利用不同的预定义规则来搜索合并候选。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20200165722 | 2020-12-01 | ||
KR10-2020-0165722 | 2020-12-01 | ||
PCT/KR2021/017967 WO2022119302A1 (ko) | 2020-12-01 | 2021-12-01 | 블록병합을 이용하는 비디오 코딩 방법 및 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116636211A true CN116636211A (zh) | 2023-08-22 |
Family
ID=81981278
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202180080529.7A Pending CN116636211A (zh) | 2020-12-01 | 2021-12-01 | 利用块合并编码视频的方法和装置 |
Country Status (2)
Country | Link |
---|---|
KR (1) | KR20220077096A (zh) |
CN (1) | CN116636211A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024112126A1 (ko) * | 2022-11-25 | 2024-05-30 | 현대자동차주식회사 | 코딩트리유닛의 분할구조를 예측하고 수정하는 비디오 부호화/복호화 방법 및 장치 |
-
2021
- 2021-12-01 KR KR1020210169665A patent/KR20220077096A/ko unknown
- 2021-12-01 CN CN202180080529.7A patent/CN116636211A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20220077096A (ko) | 2022-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116530082A (zh) | 利用帧内预测的视频编码的方法和装置 | |
CN116472709A (zh) | 用于视频编码和解码的装置和方法 | |
CN113812147B (zh) | 使用块内复制的图像编码和解码 | |
US20230291932A1 (en) | Method and apparatus for intra prediction using block copy based on geometric transform | |
CN116636211A (zh) | 利用块合并编码视频的方法和装置 | |
CN116941241A (zh) | 利用基于矩阵的交叉分量预测的视频编解码方法和装置 | |
CN116113985A (zh) | 利用基于深度学习的环内滤波器进行视频编码和解码 | |
CN116134812A (zh) | 使用任意块划分的视频编码和解码 | |
US20230308662A1 (en) | Method and apparatus for video coding using block merging | |
US20230291926A1 (en) | Video encoding and decoding using deep learning based inter prediction | |
EP4250735A1 (en) | Method and device for intra prediction using block copy based on geometric transform | |
US20230283768A1 (en) | Method for predicting quantization parameter used in a video encoding/decoding apparatus | |
EP4090027A1 (en) | Image encoding and decoding based on reference picture having different resolution | |
US20230396795A1 (en) | Inter prediction-based video encoding and decoding | |
CN117044200A (zh) | 利用螺旋扫描顺序的视频编解码的方法和装置 | |
CN116918323A (zh) | 用于改善帧内预测的预测信号的视频编解码方法和装置 | |
KR20220017372A (ko) | 영상 부/복호화 장치에서 이용하는 양자화 파라미터 예측 방법 | |
CN116472710A (zh) | 利用分量之间的参考生成残差信号的方法和装置 | |
CN118251891A (zh) | 利用基于模板匹配的帧内预测的视频编解码的方法和装置 | |
CN117581534A (zh) | 视频编码/解码方法和装置 | |
CN118369914A (zh) | 利用基于模板匹配的次要mpm列表的视频编解码的方法和装置 | |
KR20230108215A (ko) | 인터 예측에서 디코더측 움직임벡터 리스트 수정 방법 | |
CN118160304A (zh) | 使用各种块划分结构的视频编码方法和设备 | |
CN117917071A (zh) | 利用子块编解码次序变化和根据子块编解码次序变化的帧内预测的视频编解码的方法和装置 | |
CN116530084A (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 |