一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

利用差分编码的影像解码装置的制作方法

2022-02-19 13:17:18 来源:中国专利 TAG:


1.本发明在一些实施方案中涉及影像或视频的编码和解码。更具体地,本发明涉及利用在变换跳过模式下执行的差分编码技术的视频编码和解码。


背景技术:

2.本部分中的陈述仅提供与本发明有关的背景技术信息,并不一定构成现有技术。
3.由于视频数据与音频数据或静止影像数据相比具有较大的数据量,因此在进行压缩处理之前,需要大量的硬件资源,包括存储器,用来以原始形式存储或传输数据。
4.相应地,在解码单元可以接收、解压和再现压缩的视频数据之前,存储或传输视频数据通常伴随着通过利用编码器对其进行压缩。现有的视频压缩技术包括h.264/avc和高效率视频编码(high efficiency video coding,hevc),所述高效率视频编码(hevc)使h.264/avc的编码效率提高了大约40%。
5.然而,视频影像在尺寸、分辨率和帧速率上的不断增加以及由此产生的要编码的数据量的增多需要一种与现有压缩技术相比具有更好的编码效率改善和更高的影像质量改善的新的且优秀的压缩技术。


技术实现要素:

6.技术问题
7.本发明在一些实施方案中寻求提供通过在变换跳过模式下在解码期间利用对残差信号的差分编码技术来对视频解码的装置和方法。
8.技术方案
9.本发明的至少一个方面提供了用于对利用帧内预测编码的当前块重构的视频解码方法。该方法包括:从比特流中解码指示应用于当前块的残差块的差分编码方向的方向信息;通过从比特流中重构关于残差信号的信息来生成残差块;基于方向信息,通过修改残差块中的残差信号来生成修改的残差块。通过将残差块中用于修改的每个目标残差信号与残差块(所述残差块排列在由目标残差信号的方向信息所指示的方向上)中的一个或更多个残差信号相加来修改残差块中用于修改的每个目标残差信号。该方法进一步包括:将修改的残差块逆量化为逆量化的残差块;利用帧内预测来生成当前块的预测块;通过将预测块与逆量化的残差块相加来重构当前块。
10.本发明的另一个方面提供了用于对利用帧内预测编码的当前块重构的视频解码装置。视频解码装置包括:熵解码单元、逆量化单元、帧内预测单元和加法器。熵解码单元配置为从比特流中解码指示应用于当前块的残差块的差分编码方向的方向信息,并且通过从比特流中重构关于残差信号的信息来生成残差块。逆量化单元配置为基于方向信息,通过修改残差块中的残差信号来生成修改的残差块,并且将修改的残差块逆量化为逆量化的残差块。帧内预测单元配置为通过帧内预测来生成当前块的预测块。加法器配置为将预测块和逆量化的残差块添加到重构的当前块中。这里,通过将残差块中用于修改的每个目标残
差信号与残差块(所述残差块排列在由目标残差信号的方向信息所指示的方向上)中的一个或更多个残差信号相加来修改残差块中用于修改的每个目标残差信号。
11.有益效果
12.如上所述,本发明的一些实施方案提供了这样一种视频解码装置和方法,其在变换跳过模式下在解码期间对残差信号使用差分编码技术,从而提高了压缩性能。
附图说明
13.图1是示出能够实现本发明技术的视频编码装置的框图。
14.图2是用于解释通过利用qtbttt结构来分割块的方法的示意图。
15.图3a和图3b是包括宽角度帧内预测模式的多个帧内预测模式的示意图。
16.图4是示出能够实现本发明技术的视频解码装置的框图。
17.图5示出了根据本发明的至少一个实施方案的差分编码技术。
18.图6是根据本发明的至少一个实施方案的利用显式差分编码技术的用于帧内预测编码的块的视频解码方法的流程图。
19.图7是根据本发明的至少一个实施方案的利用显式差分编码技术的用于帧间预测编码的块的视频解码方法的流程图。
20.图8是根据本发明的另一个实施方案的利用隐式差分编码技术的用于帧内预测编码的块的视频解码方法的流程图。
具体实施方式
21.在下文中,将参考所附附图对本发明的一些实施方案进行详细描述。在下面的描述中,相同的附图标记优选地表示相同的元件,尽管元件在不同的附图中示出。此外,在一些实施方案的以下描述中,为了清楚和简洁起见,当认为模糊了本发明的主题时,将省略对相关的已知组件和功能的具体描述。
22.本发明的实施方案涉及视频的编码和解码。更具体地,本发明提供了一种通过利用对残差信号的差分编码技术来对视频解码的装置和方法,以提高变换跳过模式下在编码期间的压缩性能。
23.图1是示出能够实现本发明技术的视频编码装置的框图。在下文中,将参考图1描述视频编码装置以及该装置的子组件。
24.视频编码装置可以配置为包括:块分割单元110、预测单元120、减法器130、变换单元140、量化单元145、重排单元150、熵编码单元155、逆量化单元160、逆变换单元165、加法器170、滤波单元180和存储器190。
25.视频编码装置的各个组件可以实现为硬件或软件,或者硬件和软件的组合。另外,每个组件的功能可以通过软件来实现,而每个组件的软件功能可以实现为由微处理器来执行。
26.视频由多个图像组成。图像分别分割为多个区域,并且对每个区域执行编码。例如,一个图像分割为一个或更多个瓦片(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)中。以相同的方式,共同应用于一个瓦片或瓦片组的信息可以被编码为瓦片头或瓦片组头的语法。
27.块分割单元110确定编码树单元(ctu)的大小。关于ctu的大小(ctu尺寸)的信息被编码为sps或pps的语法,并且被传输至视频解码装置。
28.图像分割单元110将构成视频的每个图像分割为具有预定大小的多个编码树单元(ctu),然后使用树结构递归地分割ctu。树结构中的叶节点成为编码单元(cu),所述编码单元(cu)是编码的基本单元。
29.树结构可以是四叉树(quadtree,qt)、二叉树(binarytree,bt)、三叉树(ternarytree,tt)或者两个或更多个qt结构、bt结构和tt结构的组合,所述四叉树(qt)即上层节点(或父节点)分割为四个相同大小的下层节点(或子节点),所述二叉树(bt)即上层节点分割为两个下层节点,所述三叉树(tt)即上层节点以1:2:1的大小比率分割为三个下层节点。例如,可以使用四叉树加二叉树(quadtree plus binarytree,qtbt)结构,或者可以使用四叉树加二叉树三叉树(quadtree plus binarytree ternarytree,qtbttt)结构。这里,bttt可以统称为多类型树(multiple

type tree,mtt)。
30.图2示出qtbttt分割树结构。如图2所示,ctu可以首先分割为qt结构。可以重复四叉树分割,直到分割块的大小达到qt中允许的叶节点的最小块大小(minqtsize)。指示qt结构的每个节点是否被分割为下层的四个节点的第一标志(qt_split_flag)由熵编码单元155编码,并且用信号通知视频解码装置。当qt的叶节点不大于bt中允许的根节点的最大块大小(maxbtsize)时,可以进一步将其分割为任意一个或更多个bt结构或tt结构。在bt结构和/或tt结构中,可以存在多个分割方向。例如,可以存在水平和竖直分割相关节点的块的两个方向。如图2所示,当mtt分割开始时,通过熵编码单元155对指示节点是否被分割的第二标志(mtt_split_flag)编码并用信号通知视频编码装置,如果是,则通过熵编码单元155对指示分割方向(竖直或水平)的另一标志进行编码和/或对指示分区或分割类型(二叉或三叉)的标志进行编码并用信号通知视频解码装置。
31.替选地,在对指示每个节点是否被分割为下层的四个节点的第一标志(qt_split_flag)编码之前,可以对指示节点是否被分割的cu分割标志(split_cu_flag)编码。当cu分割标志(split_cu_flag)值指示出没有执行分割时,相应节点的块成为分割树结构中的叶节点,并且用作编码单元(cu),即是编码的基本单元。当cu分割标志(split_cu_flag)值指示出节点分割时,视频编码装置以上述方式从第一标志开始编码。
32.作为树结构的另一个示例,当使用qtbt时,可以存在两种类型的分区,包括将相关节点的块水平地分割为两个大小相等的块的类型(即,对称的水平分区)和将相关节点的块竖直地分割为两个大小相等的块的类型(即,对称的竖直分区)。由熵编码单元155编码并传输至视频解码装置的是指示bt结构的每个节点是否被分割为下层的块的分割标志(split_flag)和指示其分区类型的分区类型信息。此外,可以存在另一种类型,即相关节点的块分
割为两个非对称形成的块。非对称形式可以包括相关节点的块分割为具有1:3的大小比率的两个矩形块的形式,或者相关节点的块在对角线方向上分割的形式。
33.根据ctu的qtbt或qtbttt分割,cu可以具有不同的大小。在下文中,将对应于要编码或解码的cu的块(即,qtbttt的叶节点)称为“当前块”。采用qtbttt分割,当前块的形状不仅可以是正方形,也可以是矩形。
34.预测单元120对当前块进行预测以生成预测块。预测单元120包括帧内预测单元122和帧间预测单元124。
35.通常,图像中的当前块可以分别被预测地编码。当前块的预测通常可以利用帧内预测技术或帧间预测技术来执行,其中帧内预测技术使用来自包含当前块的图像的数据,而帧间预测技术使用来自在包含当前块的图像之前已被编码的图像的数据。帧间预测包括单向预测和双向预测。
36.帧内预测单元122通过利用位于当前图像中的当前块周围的相邻像素(参考像素)来预测当前块中的像素。根据预测方向,存在多个帧内预测模式。例如,如图3a所示,多个帧内预测模式可以包括2种非方向模式(其包含平面(planar)模式、dc模式)以及65种方向模式。各个预测模式提供了相邻像素的不同对应定义和要使用的计算公式。
37.为了矩形形状的当前块的有效方向预测,可以使用额外方向模式,由如图3b通过帧内预测模式的虚线箭头(编号67至80以及编号

1至

14)所示。这些可以称为“宽角度帧内预测模式”。图3b中的箭头指示了用于预测的对应参考样本,而非预测方向。预测方向与箭头指示的方向相反。宽角度帧内预测模式是在当前块具有矩形形状时,在与特定方向模式相反的方向上执行预测而无需额外的比特传输的模式。在这种情况下,在宽角度帧内预测模式中,可以通过矩形当前块的宽度与高度的比率来确定可用于当前块中的一些宽角度帧内预测模式。例如,在当前块的矩形形状的高度小于宽度时,可以使用角度小于45度的宽角度帧内预测模式(编号67至80处的帧内预测模式)。在当前块的矩形形状的高度大于宽度时,可以使用角度为

135度或更大的宽角度帧内预测模式(编号

1至

14处的帧内预测模式)。
38.帧内预测单元122可以确定要用于对当前块编码的帧内预测模式。在一些示例中,帧内预测单元122可以通过利用若干帧内预测模式来对当前块编码,并且从测试的模式中选择要使用的适当的帧内预测模式。例如,帧内预测单元122可以通过对若干测试的帧内预测模式的率失真(rate

distortion)分析来计算率失真值,并且在测试的模式中选择具有最佳率失真特性的帧内预测模式。
39.帧内预测单元122从多个帧内预测模式中选择一个帧内预测模式,并且通过利用根据选择的帧内预测模式和计算公式确定的至少一个相邻像素(参考像素)来预测当前块。关于选择的帧内预测模式的信息由熵编码单元155编码并传输至视频解码装置。
40.帧间预测单元124通过运动补偿处理来生成当前块的预测块。帧间预测单元124搜索当前图像之前已被编码和解码的参考图像中与当前块最相似的块,并且通过利用搜索到的块来生成当前块的预测块。然后,帧间预测单元124生成与当前图像中的当前块和参考图像中的预测块之间的位移(displacement)相对应的运动矢量(motion vector)。通常,对亮度分量执行运动估计,并且基于亮度分量计算的运动矢量用于亮度分量和色度分量两者。由熵编码单元155对包括关于参考图像的信息和关于用于预测当前块的运动矢量的信息的
运动信息编码,并且将其传输至视频解码装置。
41.减法器130通过将当前块减去由帧内预测单元122或帧间预测单元124生成的预测块来生成残差块。
42.变换单元140将空域中具有像素值的残差块中的残差信号变换为频域中的变换系数。变换单元140可以通过利用残差块的整个大小作为变换单元来变换残差块中的残差信号,或者将残差块划分为多个子块并使用子块作为变换单元以执行变换。替选地,变换单元140可以将残差块分离为两个子块,即变换区域和非变换区域,并且仅使用变换区域子块作为变换单元以变换残差信号。这里,变换区域子块可以是基于水平轴线(或竖直轴线)的具有1:1的大小比率的两个矩形块的一个。在这种情况下,指示仅变换单个子块的标志(cu_sbt_flag)、方向(竖直/水平)信息(cu_sbt_horizontal_flag)和/或位置信息(cu_sbt_pos_flag)由熵编码单元155编码,并且用信号通知视频解码装置。另外,变换区域子块的大小可以具有基于水平轴线(或竖直轴线)的1:3的大小比率。在这种情况下,由熵编码器155对区分相应分割的标志(cu_sbt_quad_flag)额外地编码,并且用信号通知视频解码装置。
43.此外,变换单元140可以在水平方向和竖直方向上分别变换残差块。对于变换操作,可以使用各种类型的变换函数或变换矩阵。例如,用于水平变换和竖直变换的成对变换函数可以被定义为多变换集(multiple transform set,mts)。变换单元140可以选择mts中具有最佳变换效率的一对变换函数,并且分别在水平方向和竖直方向上变换残差块。由熵编码器155对关于在mts中选择的变换函数对的信息(mts_idx)编码,并将其用信号通知视频解码装置。应用mts的变换块的大小可以限制为32
×
32及以下。
44.量化单元145对从变换单元140输出的变换系数进行量化,并且将量化的变换系数输出至熵编码单元155。
45.重排单元150可以用量化的变换系数执行系数值的重排。
46.重排单元150可以使用系数扫描(coefficient scanning)来将二维系数阵列改变为一维系数序列。例如,重排单元150可以通过锯齿形扫描(zig

zag scan)或对角线扫描(diagonal scan)从dc系数向高频区域中的系数对系数进行扫描,以输出一维系数序列。根据变换单元的大小和帧内预测模式,使用的锯齿形扫描可以被用于在列方向上扫描二维系数阵列的竖直扫描和用于在行方向上扫描二维块形状系数的水平扫描代替。换句话说,可以根据变换单元的大小和帧内预测模式在锯齿形扫描、对角线扫描、竖直扫描和水平扫描中确定要使用的扫描方法。
47.熵编码单元155通过利用诸如基于上下文的自适应二进制算术编码(context

based adaptive binary arithmetic code,cabac)、指数哥伦布(exponential golomb)等各种编码方法来对从重排单元150输出的一维量化的变换系数的序列编码,从而编码为生成比特流。
48.另外,熵编码单元155对关于块分区的信息(例如,ctu大小、cu分割标志、qt分割标志、mtt分割类型和mtt分割方向)编码,从而允许视频解码装置以与视频编码装置相同的方式来分割块。另外,熵编码单元155根据预测类型、帧内预测信息(即,关于帧内预测模式的信息)或帧间预测信息(即,关于参考图像和运动矢量的信息)来对关于预测类型的信息编码和进一步编码,所述预测类型指示当前块是通过帧内预测还是帧间预测进行编码。
49.逆量化单元160对从量化单元145输出的量化的变换系数进行逆量化,以生成变换
系数。逆变换单元165将从逆量化单元160输出的变换系数从频域变换到空域,以重构残差块。
50.加法器170将重构的残差块和由预测单元120生成的预测块相加,以重构当前块。重构的当前块中的像素在对下一个块帧内预测时用作参考像素。
51.滤波单元180对重构的像素执行滤波以减少由于基于块的预测和变换/量化而产生的块伪影(blocking artifacts)、振铃伪影(ringing artifacts)、模糊伪影(blurring artifacts)等。滤波单元180可以包括去块滤波器182和采样自适应偏移(sample adaptive offset,sao)滤波器184。
52.去块滤波器180对重构的块之间的边界进行滤波,以去除由逐块编码/解码而引起的块伪影,并且sao滤波器184对去块滤波的视频执行额外的滤波。sao滤波器184是用于对由有损编码引起的重构的像素与原始的像素之间的差进行补偿的滤波器。
53.重构的块通过去块滤波器182和sao滤波器184进行滤波,并存储在存储器190中。当一个图像中的所有块被重构时,重构后的图像可以用作对随后要被编码的图像中的块进行帧间预测的参考图像。
54.图4是示出能够实现本发明技术的视频解码装置的功能框图。在下文中,将参考图4描述视频解码装置和该装置的子组件。
55.视频解码装置可以配置为包括:熵解码单元410、重排单元415、逆量化单元420、逆变换单元430、预测单元440、加法器450、滤波单元460和存储器470。
56.与图1的视频编码装置一样,视频解码装置的各个组件可以实现为硬件或软件,或者硬件和软件的组合。另外,每个组件的功能可以通过软件来实现,而每个组件的软件功能可以实现为由微处理器来执行。
57.熵解码单元410对由视频编码装置生成的比特流解码并提取关于块分区的信息以确定要解码的当前块,并且提取重构当前块所需的预测信息和关于残差信号的信息等。
58.熵解码单元410从序列参数集(sequence parameter set,sps)或图像参数集(picture parameter set,pps)中提取关于ctu大小的信息,确定ctu的大小,并且将图像分割为确定大小的ctu。然后,熵解码单元410将ctu确定为树结构的最高层,即根节点,并且提取关于ctu的分割信息,从而通过利用树结构来分割ctu。
59.例如,当通过利用qtbttt结构来分割ctu时,首先提取与qt分割相关的第一标志(qt_split_flag),并且将每个节点分割为下层的四个节点。对于与qt的叶节点相对应的节点,熵解码单元410提取与mtt的分区有关的第二标志(mtt_split_flag)和分割方向(竖直/水平)和/或分割类型(二叉/三叉)的信息,以通过mtt结构来分割相应的叶节点。这允许qt的叶节点下方的各个节点被递归地分割为bt或tt结构。
60.作为另一示例,当通过利用qtbttt结构来分割ctu时,熵解码单元410可以首先提取指示cu是否被分割的cu分割标志(split_cu_flag)。当分割相关块时,可以提取第一标志(qt_split_flag)。在分割过程中,每个节点可以具有零个或更多个递归qt分割,接着是零个或更多个递归mtt分割。例如,ctu可以立即进入mtt分割,或者相反,单独具有多个qt分割。作为又一示例,当通过利用qtbt结构来分割ctu时,熵解码单元410提取与qt分割相关的第一标志(qt_split_flag),以将每个节点分割为下层的四个节点。并且,对于与qt的叶节点相对应的节点,熵解码单元410提取指示该节点是否进一步分割为bt的分割标志(split_
flag)以及分割方向信息。
61.此外,当熵解码单元410通过树结构分割来确定要解码的当前块时,熵解码单元410提取关于指示当前块是被帧内预测还是被帧间预测的预测类型的信息。当预测类型信息指示帧内预测时,熵解码单元410提取用于当前块的帧内预测信息(帧内预测模式)的语法元素。当预测类型信息指示帧间预测时,熵解码单元410提取帧间预测信息的语法元素,也就是说,指示运动矢量和由运动矢量参考的参考图像的信息。
62.此外,熵解码单元410提取关于当前块的量化的变换系数的信息作为关于残差信号的信息。
63.重排单元415以由视频编码装置执行的系数扫描的相反顺序,将由熵解码单元410进行熵解码的一维量化的变换系数的序列改变为二维系数阵列(即,块)。
64.逆量化单元420对量化的变换系数进行逆量化。逆变换单元430将逆量化的变换系数从频域逆变换到空域,以重构残差信号,从而生成当前块的重构的残差块。
65.另外,当逆变换单元430仅对变换块的部分区域(子块)进行逆变换时,逆变换单元430提取指示仅变换块的子块已进行变换的标志(cu_sbt_flag)、子块的方向性(竖直/水平)信息(cu_sbt_horizontal_flag)和/或子块的位置信息(cu_sbt_pos_flag),并且将子块的变换系数从频域逆变换到空域,以重构残差信号。同时,逆变换单元430用“0”值填充没有逆变换的剩余区域作为残差信号,从而生成当前块的最终残差块。
66.另外,当应用了mts时,逆变换单元430利用从视频编码装置用信号通知的mts信息(mts_idx)来确定分别在水平方向和竖直方向上要应用的变换函数或变换矩阵,并且利用确定的变换函数来对变换块中的变换系数在水平方向和竖直方向上执行逆变换。
67.预测单元440可以包括帧内预测单元442和帧间预测单元444。在当前块的预测类型是帧内预测时,激活帧内预测单元442,而在当前块的预测类型是帧间预测时,激活帧间预测单元444。
68.帧内预测单元442根据由熵解码单元410提取的帧内预测模式的语法元素,在多个帧内预测模式中确定当前块的帧内预测模式,并且根据确定的帧内预测模式,通过利用当前块的相邻参考像素来预测当前块。
69.帧间预测单元444利用由熵解码单元410提取的用于帧内预测模式的语法元素来确定当前块的运动矢量和由运动矢量参考的参考图像,并且利用该运动矢量和参考图像来预测当前块。
70.加法器450将从逆变换单元输出的残差块与从帧间预测单元或帧内预测单元输出的预测块相加,以重构当前块。在对要解码的下一个块进行帧内预测时,重构的当前块中的像素用作参考像素。
71.滤波单元460可以包括去块滤波器462和sao滤波器464。去块滤波器462对重构的块之间的边界执行去块滤波,以去除由逐块解码引起的块伪影。sao滤波器464在去块滤波之后对重构的块执行额外的滤波,以补偿由有损编码引起的重构的像素与原始的像素之间的差。重构的块通过去块滤波器462和sao滤波器464进行滤波,并且存储在存储器470中。当一个图像中的所有块被重构时,重构后的图像用作参考图像,用于对随后要被编码的图像内的块进行帧间预测。
72.如上所述,视频编码装置将残差信号变换为频域中的变换系数,对变换系数进行
编码,并将其用信号通知视频解码装置。视频解码装置将变换系数逆变换为空域残差信号。然而,根据视频或残差信号的特性,作为变换结果产生的大部分变换系数可能位于高频区域中。在这种情况下,相比于对空域残差信号编码,对频域的变换系数编码可能具有降低的效率。
73.变换跳过(transform skip,ts)模式是一种对残差信号直接熵编码而无需对其变换的技术,但与离散余弦变换(discrete cosine transform,dct)相比,通常不具有优异的编码性能。然而,由于屏幕内容在高频段包含大量残差分量,这些残差分量发生在具有高色彩对比度的图形元素的边界处,因此变换跳过模式对具有屏幕内容编码(screen content coding,scc)或类似特征的视频是有用的。
74.当应用了变换跳过模式时,使用变换跳过残差编码处理来对预测的残差信号进行量化和编码。变换跳过残差编码处理是将变换系数编码处理修改为适用于scc的方法。
75.关于变换跳过模式的信息(transform_skip_flag[x0][y0][cldx],在下文中为transform_skip_flag)可以以变换块为单位传递。这里,(x0,y0)是变换块的左上方位置,cldx是色彩元素的指示符,其中0表示亮度,1表示色度cb,2表示cr。当变换跳过模式“transform_skip_flag”为1时,跳过变换,当变换跳过模式为0时,可以根据另一个语法元素来确定是否执行或跳过变换。
[0076]
此外,可以将能够应用变换跳过模式的变换块的大小限制在32
×
32以内。在这种情况下,对于比能够应用变换跳过模式的变换块的大小更大的变换块,可以省略对transform_skip_flag的编码,而当变换块大于32
×
32时,视频解码装置不对变换块应用变换跳过模式。替选地,关于能够应用变换跳过模式的变换块的大小的大小信息可以被编码为高级语法,例如,sps或pps中的语法元素,并且用信号通知视频解码装置。对于大于由高级语法定义的大小的变换块,省略transform_skip_flag的编码。视频解码装置对关于能够应用变换跳过模式的变换块的大小的大小信息解码,并且当要变换的当前变换块大于由大小信息指示的大小时,视频解码装置既不解码transform_skip_flag也不应用变换跳过模式。
[0077]
关于mts和变换跳过模式的信息可以整合为如表1所示,并且表示为单个语法。
[0078]
[表1]
[0079][0080]
如表1所示,可以根据tu_mts_idx来设置mts和变换跳过模式。这里,对于0到5的范
围,tu_mts_idx表示为截断一元码。
[0081]
下面描述了利用视频编码装置和视频解码装置能够在变换跳过模式下提高压缩性能的差分编码技术。
[0082]
当以具有有损压缩的变换跳过模式对变换单元(tu)编码时,可以将差分编码技术应用于帧内预测或帧间预测之后的残差信号。在变换跳过模式下,差分编码技术可以减少用于熵编码的残差分量的总能量,从而提供进一步改善的压缩性能。
[0083]
图5示出了根据本发明至少一个实施方案的差分编码技术。
[0084]
在水平差分编码技术中,如图5中(a)所示,通过利用由视频编码装置编码的样本中的水平方向上最相邻的左方列的残差分量来预测当前样本。一旦将水平差分编码技术应用于大小为n
×
n(n为自然数)的块的残差信号r
i,j
,所得残差信号(0≤i<n,i为自然数)可以由等式1表示。特别地,通过将位置(i,j)处的残差信号减去位置(i,j

1)处的残差信号来修改位置(i,j)处的残差信号。这里,(i,j)表示第i行和第j列。
[0085][0086]
这里,q(r)是包括量化噪声的重构的残差信号。
[0087]
如等式1所示,利用水平差分编码,编码装置对残差信号进行熵编码,然后将其发送至解码装置,并且在重构之后保留残差信号,以预测下一列的残差信号。可以对块的所有列顺序地执行水平预测处理。
[0088]
在竖直差分编码技术中,如图5中(b)所示,通过利用由视频编码装置编码的样本中的竖平方向上最相邻的上方列的残差分量来预测当前样本。在将竖直差分编码技术应用于n
×
n的块的残差信号ri,j之后,所得残差信号(0≤i<n,i为自然数)可以由等式2表示。特别地,通过将位置(i,j)处的残差信号减去位置(i

1,j)处的残差信号来修改位置(i,j)处的残差信号。这里,(i,j)也表示第i行和第j列。
[0089][0090]
如等式2所示,利用竖直差分编码,编码装置侧对残差信号进行熵编码,然后将其发送至解码装置侧,并且在重构之后保留残差信号,以预测下一行的残差信号。可以对块的所有行顺序地执行竖直预测处理。
[0091]
当应用了水平差分编码技术时,视频解码装置如等式3所示重构残差信号。换句话说,根据水平差分编码技术对由视频解码装置从比特流中重构的残差块中的残差信号进行修改。以将位于与目标残差信号的左方相同行上的左方残差信号与目标残差信号相加的方式,对重构的残差块中要修改的目标残差信号进行修改。
[0092][0093]
视频解码装置可以顺序地将重构的残差信号相加,从而重构第j列的残差信号。可以对块的所有列顺序地执行水平重构处理。
[0094]
当应用了竖直差分编码技术时,视频解码装置如等式4所示重构残差信号。根据竖
直差分编码技术对由视频解码装置从比特流中重构的残差块中的残差信号进行修改。以将位于目标残差信号的上方相同列上的上方残差信号与目标残差信号相加的方式,对重构的残差块中要修改的目标残差信号进行修改。
[0095][0096]
视频解码装置可以将重构的残差信号顺序地相加,从而重构第i行的残差信号。可以对块的所有列顺序地执行竖直重构处理。
[0097]
以上描述示出了在水平方向和竖直方向上的差分编码,然而差分编码方向不一定仅限于水平方向和竖直方向。差分编码方向可以包括水平方向和竖直方向,并且差分编码方向可以进一步包括其他方向,例如,45度对角线方向和135度对角线方向。以此方式,视频解码装置可以将残差块(所述残差块排列在来自目标残差信号的差分编码方向上)中的一个或更多个残差信号与从比特流中重构的残差块中用于修改的目标残差信号相加,从而修改目标残差信号。
[0098]
在隐式差分编码的情况下,视频解码装置可以从预先解码的帧内预测信息推断差分编码的预测方向信息。例如,在当前块使用帧内预测并且帧内预测模式是编号18的方向模式时,可以将水平差分编码应用于残差信号。在当前块使用帧内预测并且帧内预测模式是编号50的方向模式时,可以将竖直差分编码应用于残差信号。
[0099]
在本发明的另一个实施方案中,如等式5所示,在当前块使用帧内预测并且帧内预测模式与编号18的方向模式之间的差小于预设阈值范围时,可以将水平差分编码应用于残差信号。
[0100]
|predmodeintra

intra_angular18|<阈值
ꢀꢀ
等式5
[0101]
这里,predmodeintra是当前块的帧内预测模式,并且|
·
|指示绝对值。
[0102]
另外,如等式6所示,在当前块使用帧内预测并且帧内预测模式与编号50的方向模式之间的差小于预设阈值范围时,可以将竖直差分编码应用于残差信号。
[0103]
|predmodeintra

intra_angular50|<阈值
ꢀꢀ
等式6
[0104]
此外,在显式差分编码的情况下,视频解码装置可以通过从比特流中解码信息来确定关于差分编码预测模式的信息。
[0105]
当变换跳过模式(即,transform_skip_flag)为真时,视频解码装置接收如表2所示的差分编码信息diff_cod_idx,并且确定是否对当前块应用差分编码技术。
[0106]
[表2]
[0107]
diff_cod_idx差分编码类型二值化0diff_cod_off0(0或1)1diff_cod_ver10(或00)2diff_cod_hor11(或01)
[0108]
在表2中,diff_cod_off是在跳过变换之后不执行额外差分编码的模式,而diff_cod_ver和diff_cod_hor是在竖直方向或水平方向上预测的预测模式。竖直方向或水平方向上的预测模式的指数可以是能够互换的。如表2所示,当diff_cod_idx不为0时,语法被二值化为2位。第一位可以表示为1,而第二位可以根据方向表示为0或1。视频解码装置从第一位识别出应用差分编码,并且从第二位识别差分编码方向。另一方面,当diff_cod_idx为0
(diff_cod_off)时,语法被二值化为0。这种情况不需要用于指示差分编码方向的第二位。在上述示例中,应用或不应用差分编码以及差分编码方向被表示为一个语法。然而,从表2所示的二值化结果来看,显而易见的是,应用或不应用差分编码以及差分编码方向可以被编码为单独的语法。例如,可以使用两个语法,其中1位标记指示应用或不应用差分编码,而1位标记指示差分编码方向。
[0109]
在本发明的另一个实施方案中,可以将transform_skip_flag的变换跳过模式信息和diff_cod_idx的差分编码信息集成并表示为如表3所示。
[0110]
[表3]
[0111]
transform_skip_idx差分编码类型二值化0diff_cod_off0(或1)1diff_cod_ver10(或00)2diff_cod_hor111(或01)

1变换跳过禁止

[0112]
这里,“transform_skip_idx=0”执行与“transform_skip_flag=1”相同的操作。此外,“transform_skip_idx=

1”的操作与“transform_skip_flag=0”相同。
[0113]
在本发明的另一个实施方案中,transform_skip_flag的变换跳过模式信息、diff_cod_idx的差分编码信息以及tu_mts_idx的mts信息可以集成并表示为如表4所示。
[0114]
[表4]
[0115][0116]
根据本发明的显式差分编码可以应用于帧内预测模式和帧间预测模式两者。
[0117]
当将显式差分编码应用于帧内预测模式时,可以省略关于帧内预测模式的信息,并且可以仅对差分编码相关的语法编码。当前块的帧内预测模式设置为等于差分编码方向。如上所述,当利用67个帧内预测模式时,需要大量的位以用信号通知关于应用于当前块的帧内预测模式的信息。显式差分编码在帧内预测中的应用可以通过从差分编码方向推断帧内预测模式的方向来减少对关于帧内预测模式的信息编码所需的位的数量。换句话说,通过根据关于差分编码预测方向的语法来推断帧内预测模式,发送的代码的量减少。
[0118]
替选地,当应用差分编码时,可以限制当前块的帧内预测模式,以使得在来自差分编码方向的阈值范围内专用地使用帧内预测模式。例如,当应用水平差分编码时,在所有帧
内预测模式中,仅使得满足等式5的帧内预测模式作为当前块的帧内预测模式。当应用竖直差分编码时,在所有帧内预测模式中,仅使得满足等式6的帧内预测模式作为当前块的帧内预测模式。相应地,由于从与差分编码方向相似的一些帧内预测模式中而不是从整个帧内预测模式中选择当前块的帧内预测模式,因此对当前块的帧内预测模式编码所需的位的数量可以减少。视频解码装置可以生成由在来自差分编码方向的阈值范围内的帧内预测模式组成的候选集,并且可以将候选集中由从视频编码装置接收的帧内预测模式信息指示的候选设置为当前块的帧内预测模式。
[0119]
当将差分编码技术应用于当前块的残差块和相邻块的残差块两者时,视频编码装置和视频解码装置可以不对当前块与相邻块之间的边界执行去块滤波。
[0120]
图6是根据本发明的至少一个实施方案的利用显式差分编码技术的用于对通过帧内预测编码的块解码的视频解码方法的流程图。
[0121]
视频解码装置从比特流对关于应用于当前块的残差块的差分编码的信息进行解码(s610)。
[0122]
关于差分编码的信息可以包括指示是否应用差分编码的标志和用于指示差分编码方向的标志。视频解码装置可以对关于应用于当前块的残差块的差分编码的信息进行解码。差分编码信息可以发送至视频解码装置作为如表2所示的diff_cod_idx的语法元素。
[0123]
视频解码装置从比特流重构关于残差信号的信息,并且通过利用关于残差信号的信息和差分编码信息来生成残差块(s620)。
[0124]
视频解码装置首先重构关于残差信号的信息。
[0125]
例如,视频解码装置重构指示是否存在相对于当前块的残差信号的标志(tu_cbf_luma)。当存在残差信号(tu_cbf_luma为真)时,从比特流重构用于当前块的残差信号。另一方面,当tu_cbf_luma为假时,将所有残差信号设置为0。
[0126]
另一方面,当存在残差信号(tu_cbf_luma为真)时,可以对指示是否跳过变换的transform_skip_flag解码。这里,当没有发送transform_skip_flag时,transform_skip_flag被推断为具有与指示应用或不应用差分编码的标志相同的值。换句话说,如上所述,由于差分编码技术是在变换跳过模式下应用的,因此transform_skip_flag不包括在比特流中。当应用差分编码时,transform_skip_flag可以自动设置为真(“1”),从而可以跳过转换。
[0127]
当应用显式差分编码技术时,视频解码装置可以使用解码的方向信息以根据从比特流重构的残差信号来生成残差块。在水平差分编码的情况下使用等式3,而在竖直差分编码的情况下使用等式4。
[0128]
视频解码装置对残差块进行逆量化(s630)。
[0129]
视频解码装置通过帧内预测来生成当前块的预测块(s640)。视频解码装置可以通过利用子步骤s642和s644来生成当前块的预测块。
[0130]
视频解码装置通过利用差分编码信息来设置当前块的帧内预测模式(s642)。
[0131]
当应用差分编码技术时,视频解码装置可以通过利用关于差分编码的解码信息中的方向信息来设置帧内预测模式。具体地,在水平差分编码的情况下,将帧内预测模式设置为水平帧内预测模式(例如,图3a和图3b中的intra_angular18),而在竖直差分编码的情况下,将帧内预测模式设置为竖直帧内预测模式(例如,图3a和图3b中的intra_angular50)。
[0132]
视频解码装置根据帧内预测模式,通过利用当前块周围的先前重构的像素来预测当前块(s644)。
[0133]
视频解码装置通过将预测块与逆量化的残差块相加来重构当前块(s650)。
[0134]
由于在变换跳过模式下应用差分编码技术,因此视频解码装置跳过逆量化的残差块的逆变换。相应地,视频解码装置可以通过将逆量化的残差块与当前块的帧内预测块相加来重构当前块。当对要解码的后续块进行帧内预测时,重构的当前块中的像素可以用作参考像素。
[0135]
为了去除由逐块解码引起的块伪影,视频解码装置可以对与重构的当前块邻近的相邻块与重构的当前块之间的边界执行去块滤波。然而,当相邻块的残差块与当前块的残差块两者均已被差分编码时,视频解码装置可以跳过相邻块与当前块之间的边界上的去块滤波。
[0136]
图7是根据本发明的至少一个实施方案的利用显式差分编码技术的用于对通过帧间预测编码的块解码的视频解码方法的流程图。
[0137]
视频解码装置从比特流对关于应用于当前块的残差块的差分编码的信息进行解码(s710)。
[0138]
关于差分编码的信息可以包括指示应用或不应用差分编码的标志和用于指示差分编码方向的标志。视频解码装置可以对关于应用于当前块的残差块的差分编码的信息进行解码。差分编码信息可以发送至视频解码装置作为如表2所示的diff_cod_idx的语法元素。
[0139]
视频解码装置从比特流重构关于残差信号的信息,并且通过利用关于残差信号的信息和差分编码信息来生成残差块(s720)。
[0140]
视频解码装置首先通过重构关于残差信号的发送的信息来产生残差信号。由于具体方法与参考图6所述的方法相同,因此将省略对该方法的进一步描述。
[0141]
当应用显式差分编码技术时,视频解码装置可以利用解码的方向信息以根据从比特流重构的残差信号来生成残差块。在水平差分编码的情况下使用等式3,而在竖直差分编码的情况下使用等式4。
[0142]
视频解码装置对残差块进行逆量化(s730)。
[0143]
视频解码装置通过帧间预测来生成当前块的预测块(s740)。视频解码装置可以通过利用子步骤s742和s744来生成当前块的预测块。
[0144]
视频解码装置利用提取的帧间预测模式的语法元素以确定当前块的运动矢量和由运动矢量参考的参考图像(s742)。
[0145]
视频解码装置通过利用运动矢量和参考图像来预测当前块(s744)。
[0146]
视频解码装置通过将预测块与逆量化的残差块相加来重构当前块(s750)。
[0147]
由于在变换跳过模式下应用差分编码技术,视频解码装置跳过逆量化的残差块的逆变换。相应地,视频解码装置可以通过将逆量化的残差块与当前块的帧间预测块相加来重构当前块。
[0148]
为了去除由逐块解码引起的块伪影,视频解码装置可以对与重构的当前块邻近的相邻块与重构的当前块之间的边界执行去块滤波。然而,当相邻块的残差块与当前块的残差块两者均已被差分编码时,视频解码装置可以跳过执行对相邻块与当前块之间的边界的
去块滤波。当一个图像中的所有块被重构时,重构的图像可以用作要编码的下一个图像中的帧间预测的块的参考图像。
[0149]
图8是根据本发明的另一个实施方案的利用隐式差分编码技术的用于对通过帧内预测编码的块解码的视频解码方法的流程图。
[0150]
视频解码装置从比特流对关于应用于当前块的帧内预测的信息解码,并且利用解码的帧内预测信息以生成当前块的预测块(s810)。视频解码装置可以通过利用子步骤s812和s814来生成当前块的预测块。
[0151]
视频解码装置利用解码的帧内预测信息以确定当前块的帧内预测模式(s812)。
[0152]
视频解码装置可以利用提取的帧内预测模式的语法元素从多个帧内预测模式中确定当前块的帧内预测模式。
[0153]
视频解码装置根据帧内预测模式,通过利用当前块周围的先前重构的像素来预测当前块(s814)。
[0154]
视频解码装置利用帧内预测模式来推断关于应用于当前块的残差块的差分编码方向的信息(s820)。
[0155]
当应用隐式差分编码技术时,所需的关于差分编码的信息是差分编码方向。在变换跳过模式(transform_skip_flag为真)下,视频解码装置可以从帧内预测信息估计差分编码的预测方向信息。例如,当帧内预测模式是编号18的方向模式时,可以将水平差分编码应用于残差块。另外,当帧内预测模式是编号50的方向模式时,可以将竖直差分编码应用于残差块。
[0156]
在本发明的另一个实施方案中,如等式5所示,当帧内预测模式与编号18的方向模式之间的差小于预设阈值范围时,可以将水平差分编码应用于残差块。另外,如等式6所示,当帧内预测模式与编号50的方向模式之间的差小于预设阈值范围时,可以将竖直差分编码应用于残差块。
[0157]
视频解码装置从比特流重构关于残差信号的信息,并且通过利用关于残差信号的信息和关于差分编码方向的信息来生成残差块(s830)。
[0158]
当应用隐式差分编码技术时,视频解码装置可以利用从帧内预测模式估计的方向信息以根据从比特流重构的残差信号来生成残差块。在水平差分编码的情况下使用等式3,而在竖直差分编码的情况下使用等式4。
[0159]
视频解码装置对残差块进行逆量化(s840)。
[0160]
视频解码装置通过将预测块与逆量化的残差块相加来重构当前块(s850)。
[0161]
由于在变换跳过模式下应用差分编码技术,视频解码装置跳过逆量化的残差块的逆变换。相应地,视频解码装置可以通过将逆量化的残差块与当前块的帧内预测块相加来重构当前块。对要解码的下一个块的进一步的帧内预测,重构的当前块中的像素可以用作参考像素。
[0162]
为了去除由逐块解码引起的块伪影,视频解码装置可以对与重构的当前块邻近的相邻块与重构的当前块之间的边界执行去块滤波。然而,当相邻块的残差块与当前块的残差块两者均已被差分编码时,视频解码装置可以免除执行对相邻块与当前块之间的边界的去块滤波。
[0163]
尽管各个流程图中的步骤描述为顺序执行,但它们仅例示了本发明的一些实施方
案的技术思想。因此,相关领域的普通技术人员可以通过改变在各个附图中描述的顺序或通过并行地执行两个或更多个步骤来执行步骤,从而各个流程图中的步骤不限于所示的时间顺序。
[0164]
此外,本发明中描述的各种方法或功能可以实现为存储在非易失性记录介质中的指令,所述指令可以由一个或更多个处理器读取和执行。非易失性记录介质包括例如以计算机系统可读取的形式存储数据的所有类型的记录装置。例如,非易失性记录介质可以包括存储介质,例如可擦除可编程只读存储器(eprom)、闪存驱动器、光盘驱动器、磁性硬盘驱动器和固态驱动器(ssd)等等。
[0165]
尽管出于说明的目的描述了本发明的示例性实施方案,但是本领域技术人员应当理解,在不脱离要求保护的发明的思想和范围的情况下,可以进行各种修改、添加和替换。因此,出于简洁和清楚起见,已经描述了本发明的示例性实施方案。本发明的技术思想的范围不受例示的限制。相应地,普通技术人员应当理解,要求保护的发明的范围不受以上明确描述的实施方案的限制,而是受权利要求及其等同形式的限制。
[0166]
附图标记
[0167]
120、440:预测单元
ꢀꢀꢀꢀꢀ
130:减法器
[0168]
140:变换单元
ꢀꢀꢀꢀꢀꢀꢀꢀꢀ
170、450:加法器
[0169]
180、460:滤波单元
ꢀꢀꢀꢀꢀ
430:逆变换单元。
[0170]
相关申请的交叉引用
[0171]
本技术根据35u.s.c.
§
119(a)要求2019年3月13日于韩国提交的专利申请no.10

2019

0028995的优先权,该申请的全部内容通过引用合并至本文中。此外,本非临时申请以基于韩国专利申请的相同理由在除美国以外的国家要求优先权,其全部内容通过引用结合于此。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献