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

视频图像重建方法、装置、计算机设备及存储介质与流程

2022-02-24 14:03:13 来源:中国专利 TAG:


1.本技术实施例涉及视频编解码技术领域,特别涉及一种图像重建方法、装置、计算机设备及存储介质。


背景技术:

2.在目前的视频压缩技术中,如vvc(versatile video coding,通用视频编码)和avs3(audio video coding standard 3,音视频编码标准3)中,引入了串预测的编解码方式。
3.在相关技术中,对于串预测的编码单元,其预测信号直接由搜索到的参考像素组成,相当于将预测信号直接作为重建信号,而在对一个编码单元进行编码的过程中通常会有一定的信息损失,导致预测信号与原始信号之间会存在一定的差异,从而影响编解码的性能。


技术实现要素:

4.本技术实施例提供了一种视频图像重建方法、装置、计算机设备及存储介质,能够在通过串预测的方式进行编解码时,结合已编码的编码单元的残差信号和预测信号进行图像重建,从而提高串预测方式下的编解码性能。所述技术方案如下:
5.根据本技术实施例的一个方面,提供了一种视频图像重建方法,所述方法包括:
6.响应于通过串预测方式进行编解码,获取已编码的目标编码单元的残差编码;所述残差编码是对所述目标编码块的残差系数进行编码得到的;
7.对所述目标编码单元的残差编码进行解码,获得所述目标编码单元的残差系数;
8.基于所述目标编码单元的残差系数获取所述目标编码单元的残差信号;
9.基于所述目标编码单元的残差信号与所述目标编码单元的预测信号,获得对所述目标编码单元的重建信号。
10.根据本技术实施例的一个方面,提供了一种视频图像编码方法,所述方法包括:
11.获取未编码的目标编码单元的原始信号;
12.基于参考信号,通过串预测方式对所述目标编码单元的原始信号进行基于预测,获得所述目标编码单元的预测信号和目标编码单元的残差信号;
13.基于所述目标编码单元的残差信号获取所述目标编码单元的残差编码;
14.将所述目标编码单元的预测信号对应的运动信息,以及所述目标编码单元的残差编码,添加至已编码的视频码流。
15.根据本技术实施例的一个方面,提供了一种视频图像重建装置,所述装置包括:
16.残差编码获取模块,用于响应于通过串预测方式进行编解码,获取已编码的目标编码单元的残差编码;所述残差编码是对所述目标编码块的残差系数进行编码得到的;
17.系数解码模块,用于对所述目标编码单元的残差编码进行解码,获得所述目标编码单元的残差系数;
18.残差信号获取模块,用于基于所述目标编码单元的残差系数获取所述目标编码单元的残差信号;
19.信号重建模块,用于基于所述目标编码单元的残差信号与所述目标编码单元的预测信号,获得对所述目标编码单元的重建信号。
20.根据本技术实施例的一个方面,提供了一种计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现上述视频图像重建方法。
21.根据本技术实施例的一个方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现上述视频图像重建方法。
22.还一方面,本技术实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述视频图像重建方法。
23.本技术实施例提供的技术方案可以包括如下有益效果:
24.在编码器/解码器通过串预测方式进行编解码时,将残差信息引入串预测过程,对串预测进行完整的残差信号处理,改进了基于串预测方式的编码单元的重建信号质量,进而提升了编解码性能。
附图说明
25.图1是本技术示例性示出的一种视频编码过程的基本流程图;
26.图2是本技术一个实施例提供的帧间预测模式的示意图;
27.图3是本技术一个实施例提供的候选运动矢量的示意图;
28.图4是本技术一个实施例提供的帧内块复制模式的示意图;
29.图5是本技术一个实施例提供的帧内串复制模式的示意图;
30.图6是本技术一个实施例提供的通信系统的简化框图;
31.图7是本技术示例性示出的视频编码器和视频解码器在流式传输环境中的放置方式的示意图;
32.图8是本技术一个实施例提供的视频图像重建方法的流程图;
33.图9是图8所示实施例涉及的系数解码示意图;
34.图10是本技术一个实施例提供的编解码过程中的图像重建框架示意图;
35.图11是本技术一个实施例提供的视频图像重建装置的框图;
36.图12是本技术一个实施例提供的计算机设备的结构框图。
具体实施方式
37.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
38.在对本技术实施例进行介绍说明之前,首先结合图1对视频编码技术进行简单介绍。图1示例性示出了一种视频编码过程的基本流程图。
39.视频信号是指包括多个帧的图像序列。帧(frame)是视频信号空间信息的表示。以yuv模式为例,一个帧包括一个亮度样本矩阵(y)和两个色度样本矩阵(cb和cr)。从视频信号的获取方式来看,可以分为摄像机拍摄到的以及计算机生成的两种方式。由于统计特性的不同,其对应的压缩编码方式也可能有所区别。
40.在一些主流的视频编码技术中,如h.265/hevc(high efficient video coding,高效率视频压缩编码)、h.266/vvc(versatile video coding,通用视频编码)标准、avs(audio video coding standard,音视频编码标准)(如avs3)中,采用了混合编码框架,对输入的原始视频信号进行如下一系列的操作和处理:
41.1、块划分结构(block partition structure):输入图像划分成若干个不重叠的处理单元,每个处理单元将进行类似的压缩操作。这个处理单元被称作ctu(coding tree unit,编码树单元),或者lcu(large coding unit,最大编码单元)。ctu再往下,可以继续进行更加精细的划分,得到一个或多个基本编码的单元,称之为cu(coding unit,编码单元)。每个cu是一个编码环节中最基本的元素。以下描述的是对每一个cu可能采用的各种编码方式。
42.2、预测编码(predictive coding):包括了帧内预测和帧间预测等方式,原始视频信号经过选定的已重建视频信号的预测后,得到残差视频信号。编码端需要为当前cu决定在众多可能的预测编码模式中,选择最适合的一种,并告知解码端。其中,帧内预测是指预测的信号来自于同一图像内已经编码重建过的区域。帧间预测是指预测的信号来自已经编码过的,不同于当前图像的其他图像(称之为参考图像)。
43.3、变换编码及量化(transform&quantization):残差视频信号经过dft(discrete fourier transform,离散傅里叶变换)、dct(discrete cosine transform,离散余弦变换)等变换操作,将信号转换到变换域中,称之为变换系数。在变换域中的信号,进一步进行有损的量化操作,丢失掉一定的信息,使得量化后的信号有利于压缩表达。在一些视频编码标准中,可能有多于一种变换方式可以选择,因此,编码端也需要为当前cu选择其中的一种变换,并告知解码端。量化的精细程度通常由量化参数来决定。qp(quantization parameter,量化参数)取值较大,表示更大取值范围的系数将被量化为同一个输出,因此通常会带来更大的失真,及较低的码率;相反,qp取值较小,表示较小取值范围的系数将被量化为同一个输出,因此通常会带来较小的失真,同时对应较高的码率。
44.4、熵编码(entropy coding)或统计编码:量化后的变换域信号,将根据各个值出现的频率,进行统计压缩编码,最后输出二值化(0或者1)的压缩码流。同时,编码产生其他信息,例如选择的模式、运动矢量等,也需要进行熵编码以降低码率。统计编码是一种无损编码方式,可以有效的降低表达同样的信号所需要的码率。常见的统计编码方式有变长编码(variable length coding,简称vlc)或者基于上下文的二值化算术编码(content adaptive binary arithmetic coding,简称cabac)。
45.5、环路滤波(loop filtering):已经编码过的图像,经过反量化、反变换及预测补偿的操作(上述2~4的反向操作),可获得重建的解码图像。重建图像与原始图像相比,由于存在量化的影响,部分信息与原始图像有所不同,产生失真(distortion)。对重建图像进行
滤波操作,例如去块效应滤波(deblocking),sao(sample adaptive offset,样本自适应偏移量)或者alf(adaptive lattice filter,自适应格型滤波器)等滤波器,可以有效的降低量化所产生的失真程度。由于这些经过滤波后的重建图像,将作为后续编码图像的参考,用于对将来的信号进行预测,所以上述的滤波操作也被称为环路滤波,及在编码环路内的滤波操作。
46.根据上述编码过程可以看出,在解码端,对于每一个cu,解码器获得压缩码流后,先进行熵解码,获得各种模式信息及量化后的变换系数。各个系数经过反量化及反变换,得到残差信号。另一方面,根据已知的编码模式信息,可获得该cu对应的预测信号,两者相加之后,即可得到重建信号。最后,解码图像的重建值,需要经过环路滤波的操作,产生最终的输出信号。
47.一些主流的视频编码标准中,如hevc、vvc、avs3等标准中,均采用基于块的混合编码框架。它们将原始的视频数据分成一系列的编码块,结合预测、变换和熵编码等视频编码方法,实现视频数据的压缩。其中,运动补偿是视频编码常用的一类预测方法,运动补偿基于视频内容在时域或空域的冗余特性,从已编码的区域导出当前编码块的预测值。这类预测方法包括:帧间预测、帧内块复制预测、帧内串复制预测等,在具体的编码实现中,可能单独或组合使用这些预测方法。对于使用了这些预测方法的编码块,通常需要在码流显式或隐式地编码一个或多个二维的位移矢量,指示当前块(或当前块的同位块)相对它的一个或多个参考块的位移。
48.需要注意的是,在不同的预测模式下及不同的实现,位移矢量可能有不同的名称,本文统一按照以下方式进行描述:1)帧间预测模式中的位移矢量称为运动矢量(motion vector,简称mv);2)ibc(intra block copy,帧内块复制)预测模式中的位移矢量称为块矢量(block vector,简称bv);3)isc(intra string copy,帧内串复制)预测模式中的位移矢量称为串矢量(string vector,简称sv)。帧内串复制也称作“串预测”或“串匹配”等。
49.mv是指用于帧间预测模式的位移矢量,由当前图像指向参考图像,其值为当前块和参考块之间的坐标偏移量,其中,当前块与参考块在两个不同图像中。在帧间预测模式中,可以引入运动矢量预测,通过对当前块的运动矢量进行预测,得到当前块对应的预测运动矢量,对当前块对应的预测运动矢量与实际运动矢量之间的差值进行编码传输,相较于直接对当前块对应的实际运动矢量进行编码传输,有利于节省比特开销。在本技术实施例中,预测运动矢量是指通过运动矢量预测技术,得到的当前块的运动矢量的预测值。
50.bv是指用于ibc预测模式的位移矢量,其值为当前块和参考块之间的坐标偏移量,其中,当前块与参考块均在当前图像中。在ibc预测模式中,可以引入块矢量预测,通过对当前块的块矢量进行预测,得到当前块对应的预测块矢量,对当前块对应的预测块矢量与实际块矢量之间的差值进行编码传输,相较于直接对当前块对应的实际块矢量进行编码传输,有利于节省比特开销。在本技术实施例中,预测块矢量是指通过块矢量预测技术,得到的当前块的块矢量的预测值。
51.sv是指用于isc预测模式的位移矢量,其值为当前串和参考串之间的坐标偏移量,其中,当前串与参考串均在当前图像中。在isc预测模式中,可以引入串矢量预测,通过对当前串的串矢量进行预测,得到当前串对应的预测串矢量,对当前串对应的预测串矢量与实际串矢量之间的差值进行编码传输,相较于直接对当前串对应的实际串矢量进行编码传
输,有利于节省比特开销。在本技术实施例中,预测串矢量是指通过串矢量预测技术,得到的当前串的串矢量的预测值。
52.下面对几种不同的预测模式进行介绍:
53.一、帧间预测模式
54.如图2所示,帧间预测利用视频时间域的相关性,使用邻近已编码图像的像素预测当前图像的像素,以达到有效去除视频时域冗余的目的,能够有效节省编码残差数据的比特。其中,p为当前帧,pr为参考帧,b为当前待编码块,br是b的参考块。b’与b在图像中的坐标位置相同,br坐标为(xr,yr),b’坐标为(x,y)。当前待编码块与其参考块之间的位移,称为运动矢量(mv),即:
55.mv=(xr-x,yr-y)。
56.考虑到时域或空域邻近块具有较强的相关性,可以采用mv预测技术进一步减少编码mv所需要的比特。在h.265/hevc中,帧间预测包含merge和amvp(advanced motion vector prediction,高级运动向量预测)两种mv预测技术。
57.merge模式会为当前pu(prediction unit,预测单元)建立一个mv候选列表,其中存在5个候选mv(及其对应的参考图像)。遍历这5个候选mv,选取率失真代价最小的作为最优mv。若编解码器依照相同的方式建立候选列表,则编码器只需要传输最优mv在候选列表中的索引即可。需要注意的是,hevc的mv预测技术还有一种skip模式,是merge模式的一种特例。在merge模式找到最优mv后,如果当前块和参考块基本一样,那么不需要传输残差数据,只需要传送mv的索引和一个skip flag。
58.merge模式建立的mv候选列表中包含了空域和时域的两种情形,对于b slice(b帧图像),还包含组合列表的方式。其中,空域最多提供4个候选mv,它的建立如图3中的(a)部分所示。空域列表按照a1

b1

b0

a0

b2的顺序建立,其中b2为替补,即当a1,b1,b0,a0中有一个或多个不存在时,则需要使用b2的运动信息;时域最多只提供1个候选mv,它的建立如图3中的(b)部分所示,由同位pu的mv按下式伸缩得到:
59.curmv=td*colmv/tb;
60.其中,curmv表示当前pu的mv,colmv表示同位pu的mv,td表示当前图像与参考图像之间的距离,tb表示同位图像与参考图像之间的距离。若同位块上d0位置pu不可用,则用d1位置的同位pu进行替换。对于b slice中的pu,由于存在两个mv,其mv候选列表也需要提供两个mvp(motion vector predictor,预测运动矢量)。hevc通过将mv候选列表中的前4个候选mv进行两两组合,产生了用于b slice的组合列表。
61.类似的,amvp模式利用空域和时域邻近块的mv相关性,为当前pu建立mv候选列表。与merge模式不同,amvp模式的mv候选列表中选择最优的预测mv,与当前待编码块通过运动搜索得到的最优mv进行差分编码,即编码mvd=mv-mvp,其中mvd为运动矢量残差(motion vector difference);解码端通过建立相同的列表,仅需要mvd与mvp在该列表中的序号即可计算当前解码块的mv。amvp模式的mv候选列表也包含空域和时域两种情形,不同的是amvp模式的mv候选列表长度仅为2。
62.如上所述,在hevc的amvp模式中,需要对mvd进行编码。在hevc中,mvd的分辨率由slice_header中的use_integer_mv_flag控制,当该标志的值为0,mvd以1/4(亮度)像素分辨率进行编码;当该标志的值为1,mvd采用整(亮度)像素分辨率进行编码。vvc中使用了一
种自适应运动矢量精度(adaptive motion vector resolution,简称amvr)的方法。该方法允许每个cu自适应的选择编码mv的分辨率。在普通的amvp模式中,可选的分辨率包括1/4,1/2,1和4像素分辨。对于具有至少一个非零mvd分量的cu,首先编码一个标志指示是否将四分之一亮度采样mvd精度用于cu。如果该标志为0,则当前cu的mvd采用1/4像素分辨率进行编码。否则,需要编码第二个标志,以指示cu使用了1/2像素分辨率或其他mvd分辨率。否则,编码第三个标志以指示对于cu是否使用1像素分辨率或4像素分辨率。
63.二、ibc预测模式
64.ibc是hevc屏幕内容编码(screen content coding,简称scc)扩展中采纳的一种帧内编码工具,它显著的提升了屏幕内容的编码效率。在avs3和vvc中,也采纳了ibc技术以提升屏幕内容编码的性能。ibc利用屏幕内容视频在空间的相关性,使用当前图像上已编码图像像素预测当前待编码块的像素,能够有效节省编码像素所需的比特。如图4所示,在ibc中当前块与其参考块之间的位移,称为bv(块矢量)。h.266/vvc采用了类似于帧间预测的bv预测技术进一步节省编码bv所需的比特。vvc采用了类似于帧间预测中的amvp模式对bv进行预测,并允许使用1或4像素分辨率编码bvd。
65.三、isc预测模式
66.isc技术按照某种扫描顺序(如光栅扫描、往返扫描和zig-zag扫描等)将一个编码块分成一系列像素串或未匹配像素。类似于ibc,每个串在当前图像已编码区域中寻找相同形状的参考串,导出当前串的预测值,通过编码当前串像素值与预测值之间残差,代替直接编码像素值,能够有效节省比特。图5给出了帧内串复制的示意图,深灰色的区域为已编码区域,白色的28个像素为串1,浅灰色的35个像素为串2,黑色的1个像素表示未匹配像素。串1与其参考串之间的位移,即为图5中的串矢量1;串2与其参考串之间的位移,即为图5中的串矢量2。
67.帧内串复制技术需要编码当前编码块中各个串对应的sv、串长度以及是否有匹配串的标志等。其中,sv表示待编码串到其参考串的位移。串长度表示该串所包含的像素数量。在不同的实现方式中,串长度的编码有多种方式,以下给出几种示例(部分示例可能组合使用):
68.1)直接在码流中编码串的长度;
69.2)在码流中编码处理该串后续的待处理像素数量,解码端则根据当前块的大小n,已处理的像素数量n1,解码得到的待处理像素数量n2,计算得到当前串的长度,l=n-n1-n2;
70.3)在码流中编码一个标志指示该串是否为最后一个串,如果是最后一个串,则根据当前块的大小n,已处理的像素数量n1,计算得到当前串的长度l=n-n1。如果一个像素在可参考的区域中没有找到对应的参考,将直接对未匹配像素的像素值进行编码。
71.一种串预测的解码流程如下述表1所示:
72.表1
[0073][0074][0075]
相关语义描述如下:
[0076]
串预测帧内预测的匹配类型标志isc_match_type_flag[i]为二值变量。值为
‘1’
表示当前编码单元的第i部分为一个串;值为
‘0’
表示当前编码单元的第i部分为一个未匹
配像素。解析过程见8.3。iscmatchtypeflag[i]等于isc_match_type_flag[i]的值。如果位流中不存在isc_match_type_flag[i],iscmatchtypeflag[i]的值为0。
[0077]
串预测帧内预测的最后标志isc_last_flag[i]为二值变量。值为
‘1’
表示当前编码单元的第i部分为当前编码单元最后一部分,该部分的长度strlen[i]等于numtotalpixel-numcodedpixel;值为
‘0’
表示值为
‘1’
表示当前编码单元的第i部分不为当前编码单元最后一部分,该部分的长度strlen[i]等于numtotalpixel-numcodedpixel-numremainingpixelminus1[i]-1。解析过程见8.3。isclastflag[i]等于isc_last_flag[i]的值。
[0078]
下一个剩余像素数量next_remaining_pixel_in_cu[i]的值表示完成当前编码单元第i部分的解码之后当前编码单元中剩余的尚未完成解码的像素的数目。nextremainingpixelincu[i]的值等于next_remaining_pixel_in_cu[i]的值。
[0079]
串预测帧内预测未匹配像素y分量值isc_unmatched_pixel_y[i]
[0080]
串预测帧内预测未匹配像素u分量值isc_unmatched_pixel_u[i]
[0081]
串预测帧内预测未匹配像素v分量值isc_unmatched_pixel_v[i]
[0082]
上述三个值是10位无符号整数,表示当前编码单元第i部分的未匹配像素的y,cb或cr分量的值。iscunmatchedpixely[i],iscunmatchedpixelu[i]和iscunmatchedpixelv[i]分别等于isc_unmatched_pixel_y[i],isc_unmatched_pixel_u[i]和isc_unmatched_pixel_v[i]的值。
[0083]
如图6所示,其示出了本技术一个实施例提供的通信系统的简化框图。通信系统200包括多个设备,所述设备可通过例如网络250彼此通信。举例来说,通信系统200包括通过网络250互连的第一设备210和第二设备220。在图6的实施例中,第一设备210和第二设备220执行单向数据传输。举例来说,第一设备210可对视频数据例如由第一设备210采集的视频图片流进行编码以通过网络250传输到第二设备220。已编码的视频数据以一个或多个已编码视频码流形式传输。第二设备220可从网络250接收已编码视频数据,对已编码视频数据进行解码以恢复视频数据,并根据恢复的视频数据显示视频图片。单向数据传输在媒体服务等应用中是较常见的。
[0084]
在另一实施例中,通信系统200包括执行已编码视频数据的双向传输的第三设备230和第四设备240,所述双向传输可例如在视频会议期间发生。对于双向数据传输,第三设备230和第四设备240中的每个设备可对视频数据(例如由设备采集的视频图片流)进行编码,以通过网络250传输到第三设备230和第四设备240中的另一设备。第三设备230和第四设备240中的每个设备还可接收由第三设备230和第四设备240中的另一设备传输的已编码视频数据,且可对所述已编码视频数据进行解码以恢复视频数据,且可根据恢复的视频数据在可访问的显示装置上显示视频图片。
[0085]
在图6的实施例中,第一设备210、第二设备220、第三设备230和第四设备240可为服务器、个人计算机和智能电话等计算机设备,但本技术公开的原理可不限于此。本技术实施例适用于pc(personal computer,个人计算机)、手机、平板电脑、媒体播放器和/或专用视频会议设备。网络250表示在第一设备210、第二设备220、第三设备230和第四设备240之间传送已编码视频数据的任何数目的网络,包括例如有线连线的和/或无线通信网络。通信网络250可在电路交换和/或分组交换信道中交换数据。该网络可包括电信网络、局域网、广
域网和/或互联网。出于本技术的目的,除非在下文中有所解释,否则网络250的架构和拓扑对于本技术公开的操作来说可能是无关紧要的。
[0086]
作为实施例,图7示出视频编码器和视频解码器在流式传输环境中的放置方式。本技术所公开主题可同等地适用于其它支持视频的应用,包括例如视频会议、数字tv(电视)、在包括cd(compact disc,光盘)、dvd(digital versatile disc,数字通用光盘)、存储棒等的数字介质上存储压缩视频等等。
[0087]
流式传输系统可包括采集子系统313,所述采集子系统可包括数码相机等视频源301,所述视频源创建未压缩的视频图片流302。在实施例中,视频图片流302包括由数码相机拍摄的样本。相较于已编码的视频数据304(或已编码的视频码流),视频图片流302被描绘为粗线以强调高数据量的视频图片流,视频图片流302可由电子装置320处理,所述电子装置320包括耦接到视频源301的视频编码器303。视频编码器303可包括硬件、软件或软硬件组合以实现或实施如下文更详细地描述的所公开主题的各方面。相较于视频图片流302,已编码的视频数据304(或已编码的视频码流304)被描绘为细线以强调较低数据量的已编码的视频数据304(或已编码的视频码流304),其可存储在流式传输服务器305上以供将来使用。一个或多个流式传输客户端子系统,例如图7中的客户端子系统306和客户端子系统308,可访问流式传输服务器305以检索已编码的视频数据304的副本307和副本309。客户端子系统306可包括例如电子装置330中的视频解码器310。视频解码器310对已编码的视频数据的传入副本307进行解码,且产生可在显示器312(例如显示屏)或另一呈现装置(未描绘)上呈现的输出视频图片流311。在一些流式传输系统中,可根据某些视频编码/压缩标准对已编码的视频数据304、视频数据307和视频数据309(例如视频码流)进行编码。
[0088]
应注意,电子装置320和电子装置330可包括其它组件(未示出)。举例来说,电子装置320可包括视频解码器(未示出),且电子装置330还可包括视频编码器(未示出)。其中,视频解码器用于对接收到的已编码视频数据进行解码;视频编码器用于对视频数据进行编码。
[0089]
需要说明的一点是,本技术实施例提供的技术方案可以应用于h.266/vvc标准、h.265/hevc标准、avs(如avs3)或者下一代视频编解码标准中,本技术实施例对此不作限定。
[0090]
在目前的avs3标准中,对于串预测的编码单元,其预测信号直接由搜索到的参考像素组成,跳过了变换、量化和系数编码过程,相当于将预测信号直接作为重建信号,没有残差信号的参与,而完全使用不带有残差信息的预测信号会带来较大的与原始信号的差异,影响编码性能。
[0091]
本技术提出了一种将残差信息引入串预测的图像重建方法,在基于串预测的方式对cu编码时,对该cu的残差信号进行编码,在对通过串预测进行编码的cu进行信号重建时,对串预测进行完整的残差信号处理,也就是结合cu的残差信号和预测信号进行信号重建,改进了基于串预测方式的编码单元的重建信号质量,进而提升了编解码性能。
[0092]
本技术实施例提供的方法,各步骤的执行主体可以是解码端设备,也可以是编码端设备。在视频解码和视频编码的过程中,都可以采用本技术实施例提供的技术方案,来进行图像重建。解码端设备和编码端设备均可以是计算机设备,该计算机设备是指具备数据计算、处理和存储能力的电子设备,如pc、手机、平板电脑、媒体播放器、专用视频会议设备、
服务器等等。
[0093]
另外,本技术所提供的方法可以单独使用或以任意顺序与其他方法合并使用。基于本技术所提供方法的编码器和解码器,可以由1个或多个处理器或是1个或多个集成电路来实现。
[0094]
请参考图8,其示出了本技术一个实施例提供的视频图像重建方法的流程图。为了便于说明,仅以各步骤执行主体为计算机设备进行介绍说明。该方法可以包括如下几个步骤:
[0095]
步骤801,响应于通过串预测方式进行编解码,获取已编码的目标编码单元的残差编码;该残差编码是对该目标编码块的残差系数进行编码得到的。
[0096]
在本技术实施例中,编码器对目标编码单元进行基于串预测的编码时,可以获取未编码的目标编码单元的原始信号;基于参考信号,通过串预测方式对该目标编码单元的原始信号进行基于预测,获得该目标编码单元的预测信号和目标编码单元的残差信号;基于该目标编码单元的残差信号获取该目标编码单元的残差编码;将该目标编码单元的预测信号对应的运动信息,以及该目标编码单元的残差编码,添加至已编码的视频码流。
[0097]
在一种可能的实现方式中,在通过串预测方式进行编解码,编码器/解码器直接获取目标编码单元的残差编码,以便对已编码的目标编码单元进行残差的系数解码。
[0098]
其中,上述残差编码是编码器对目标编码单元进行编码的过程中,对目标编码单元的残差信号进行变换、量化、熵编码/统计编码得到的。
[0099]
在一种可能的实现方式中,编码器/解码器对一个已编码的目标编码单元进行图像重建时,先确定是否需要对该目标编码图像进行残差编码的解码。
[0100]
比如,编码器/解码器响应于通过串预测的方式进行编解码,获取该目标编码单元的残差解码指示信息;该残差解码指示信息指示是否对该目标编码块的残差解码;
[0101]
编码器/解码器响应于该残差指示信息指示对该目标编码块进行残差解码,获取该目标编码单元的残差编码。
[0102]
在一种可能的实现方式中,该残差解码指示信息包括以下信息中的至少一种:
[0103]
1)在该目标编码单元对应的序列头中解码得到的第一索引,该第一索引用于指示对应序列中通过串预测的解码方式进行解码的编码单元的残差系数。
[0104]
在本技术实施例中,编码器在通过串预测方式进行视频编码时,可以在序列头中添加一个索引,该索引指示该序列所有cu中需要解码串预测技术的编码单元的残差系数。
[0105]
比如,当编码器/解码器解码该序列头中的第一索引,并确定存在目标编码单元的残差系数时,确定需要对该目标编码单元进行残差系数的解码。
[0106]
2)在该目标编码单元对应的图像头中解码得到的第二索引,该第二索引用于指示对应图像中通过串预测的解码方式进行解码的编码单元的残差系数。
[0107]
在本技术实施例中,编码器在通过串预测方式进行视频编码时,可以在图像头中添加一个索引,该索引指示该图像的所有cu中需要解码串预测技术的编码单元的残差系数。
[0108]
比如,当编码器/解码器解码该图像头中的第二索引,并确定存在目标编码单元的残差系数时,确定需要对该目标编码单元进行残差系数的解码。
[0109]
3)在该目标编码单元的片头中解码得到的第三索引,该第三索引用于指示对应的
片中通过串预测的解码方式进行解码的编码单元的残差系数。
[0110]
在本技术实施例中,编码器在通过串预测方式进行视频编码时,可以在片(slice/patch)头中添加一个索引,该索引指示该片的所有cu中需要解码串预测技术的编码单元的残差系数。
[0111]
比如,当编码器/解码器解码该片头中的第三索引,并确定存在目标编码单元的残差系数时,确定需要对该目标编码单元进行残差系数的解码。
[0112]
4)在该目标编码单元的最大编码单元lcu中解码得到的第四索引,该第四索引用于指示对应的lcu中通过串预测的解码方式进行解码的编码单元的残差系数。
[0113]
在本技术实施例中,编码器在通过串预测方式进行视频编码时,可以在lcu中添加一个索引,该索引指示该lcu的所有cu中需要解码串预测技术的编码单元的残差系数。
[0114]
比如,当编码器/解码器解码该lcu中的第四索引,并确定存在目标编码单元的残差系数时,确定需要对该目标编码单元进行残差系数的解码。
[0115]
5)在该目标编码单元中解码得到的第五索引,该第五索引用于指示该目标编码单元的残差系数。
[0116]
在本技术实施例中,编码器在通过串预测方式进行视频编码时,可以在目标编码单元中添加一个索引,该索引指示当前的残差系数。
[0117]
比如,当编码器/解码器解码该目标编码单元中的第五索引,并确定存在目标编码单元的残差系数时,确定需要对该目标编码单元进行残差系数的解码。
[0118]
6)该目标编码单元的分量类型,该分量类型包括亮度分量或色度分量。
[0119]
比如,如果cu当前为亮度分量,则指示该cu需要解码串预测技术的残差系数;
[0120]
或者,如果cu当前为色度分量,指示该cu需要解码串预测技术的残差系数。
[0121]
也就是说,如果目标编码单元是亮度分量或者色度分量,则编码器/解码器确定需要对该目标编码单元进行残差系数的解码。
[0122]
7)该目标编码单元中各个像素的颜色分量的编码块标识,该编码块标识用于指示对应的像素上的颜色分量是否非零。
[0123]
在本技术实施例中,对当前cu,编码器/解码器从码流中解码每一个颜色分量的cbf(标识该分量是否有非零系数),以指示该cu需要解码串预测技术的系数;比如,当cbf指示存在非零系数时,编码器/解码器确定需要对该目标编码单元进行残差系数的解码;或者,当cbf指示不存在非零系数时,编码器/解码器确定需要对该目标编码单元进行残差系数的解码。
[0124]
8)该目标编码单元的尺寸。
[0125]
在本技术实施例中,编码器/解码器可根据解码块的尺寸(可用长度*宽度,长边大小,短边大小等衡量),指示该cu需要解码串预测技术的系数;例如,当cu的尺寸超过一个阈值,则编码器/解码器确定需要对该cu解码串预测技术的残差系数。
[0126]
9)该目标编码单元内的系数指示信息,该系数指示信息用于指示该目标编码单元的系数是否全为零。
[0127]
在本技术实施例中,编码器/解码器可依据cu内系数是否全为0,指示该cu需要解码串预测技术的系数。
[0128]
比如,如果目标编码单元内系数不全为0,则确定需要对该目标解码单元解码串预
测技术的残差系数。
[0129]
或者,如果目标编码单元内系数全为0,则确定需要对该目标解码单元解码串预测技术的残差系数。
[0130]
10)该目标编码单元中是否包含孤立点。
[0131]
在本技术实施例中,编码器/解码器可以根据串预测内容是否包含孤立点,指示该cu需要解码串预测技术的系数。比如,当包含孤立点时,确定该cu需要解码串预测技术的残差系数,或者,当不包含孤立点时,确定该cu需要解码串预测技术的残差系数。
[0132]
步骤802,对该目标编码单元的残差编码进行解码,获得该目标编码单元的残差系数。
[0133]
在一种可能的实现方式中,编码器/解码器可以通过基于扫描区域的系数编码(scan region based coefficient coding,srcc)对残差编码进行解码得到残差系数。
[0134]
如图9所示,其示出了本技术实施例涉及的系数解码示意图。如图9所示,srcc技术利用(srx,sry)来确定一个变换单元(transform unit,tu)中需要扫描的量化系数区域,其中srx是系数矩阵中最右面的非零系数的横坐标,sry是系数矩阵中最下面的非零系数的纵坐标。只有(srx,sry)确定的扫描区域内的系数需要编码。编码的扫描顺序是从右下角到左上角的反向z字型扫描,并依次对每个系数进行编码。
[0135]
在一种可能的实现方式中,该目标编码单元的残差编码包括至少两个子编码块;
[0136]
编码器/解码器该对该目标编码单元的残差编码进行解码,获得该目标编码单元的残差系数时,可以跳过该至少两个子编码块中的全零子编码块的扫描,对该至少两个子编码块中的非全零子编码块执行基于扫描区域的系数解码,获得该目标编码单元的残差系数。
[0137]
在一种可能的实现方式中,编码器/解码器跳过该至少两个子编码块中的全零子编码块的扫描,以该目标编码块的宽度为基本单位,通过沿水平方向的扫描方式对该非全零子编码块执行基于扫描区域的系数解码,获得该目标编码单元的残差系数。
[0138]
在一种可能的实现方式中,编码器/解码器跳过该至少两个子编码块中的全零子编码块的扫描,以该目标编码块的高度为基本单位,通过沿垂直方向的扫描方式对该非全零子编码块执行基于扫描区域的系数解码,获得该目标编码单元的残差系数。
[0139]
在本技术实施例中,编码器/解码器可以通过标记非零子块的方式来跳过不必要的扫描区域,例如,编码器/解码器在解码系数时先解码出cu中每一个nxn子块系数是否均为0。如是,则跳过这个全零区域的扫描。其中,n可为一个或多个预设值,如1,2,4,

,w*h/2,当前cu的宽度(w),或者高度(h)。
[0140]
在本技术实施例中,对残差编码进行解码时,编码器/解码器还可以通过更改扫描顺序的方式进行扫描,例如,采用沿着水平方向的扫描方式(包括raster-scan,traverse-scan等)时,以cu块宽度作为基本单位;采用沿着竖直方向的扫描方式(包括raster-scan,traverse-scan等)时,以cu块高度为基本单位。
[0141]
在另一种可能的实现方式中,编码器/解码器使用非srcc的其他系数解码方式,例如avs3第一阶段的系数解码方式。
[0142]
步骤803,基于该目标编码单元的残差系数获取该目标编码单元的残差信号。
[0143]
在一种可能的实现方式中,该基于该目标编码单元的残差系数获取该目标编码单
元的残差信号,包括:
[0144]
对该目标编码单元的残差系数进行反量化,获得该目标编码单元的变换系数;
[0145]
对该目标编码单元的变换系数进行反变换跳过处理,或者,对该目标编码单元的变换系数进行反变换处理,获得该目标编码单元的残差信号。
[0146]
变换跳过技术(transform skip,简称ts),是指不需要将残差视频信号转换到变换域中,无需经过dft,dct,将已有的空域残差信号直接作为变换系数。随后与其他的基于变换方式的残差块类似,进一步的进行有损的量化操作,丢失掉一定的信息,使得量化后的信号有利于压缩表达。后续的操作可以包括对残差块的每个位置是否为0,以及非零系数的大小,符号等进行相应的编码。
[0147]
在一些视频编码标准,如hevc、vvc中,编码器如果需要为当前编码cu选择变换跳过方式,将显式告知解码端。而avs视频编码标准中只针对屏幕内容,使用隐式表达的变换跳过模式选择(implicit selection of transform skip mode,简称ists)方案,如下表2所示:
[0148]
表2
[0149][0150]
基于上述表2,编码端需要通过代价比较的方式选择(dct2,dct2)模式还是变换跳过(transform skip,ts)模式。为了隐藏ists标志位,认为当编码端选择(dct2,dct2)模式时,当前块的非零系数的个数为偶数,若实际非零个数为奇数时,编码端会调整变换系数使非零个数为偶数。同理,当编码器选择变换跳过模式时,得到的非零系数的个数为奇数,若实际非零个数为偶数时,编码端会调整变换系数使非零个数为奇数。
[0151]
在一种可能的实现方式中,该对该目标编码单元的变换系数进行反变换跳过处理,包括:
[0152]
响应于该目标编码单元的变换系数的非零个数满足第一条件,对该目标编码单元的变换系数进行反变换跳过处理;
[0153]
或者,
[0154]
响应于从码流中解码得到该目标编码单元的第一标志位,且该第一标志位指示进行反变换跳过,对该目标编码单元的变换系数进行反变换跳过处理;
[0155]
或者,
[0156]
响应于该目标编码单元中存在孤立点,对该目标编码单元的变换系数进行反变换跳过处理;
[0157]
或者,
[0158]
响应于该目标编码单元中不存在孤立点,对该目标编码单元的变换系数进行反变换跳过处理。
[0159]
在本技术实施例中,编码器/解码器进行反变换跳过之前,可以判断是否是要进行
反变换跳过,判断方式可以包括以下几种:
[0160]
1)通过隐式表达的变换跳过模式判断,判断是否进行反变换跳过;
[0161]
2)从码流中解码得到标志位,判断是否进行反变换跳过;
[0162]
3)直接应用变换跳过模式进行反变换跳过,无需选择;
[0163]
4)根据当前cu串预测是否存在孤立点,判断是否进行反变换跳过。
[0164]
在一种可能的实现方式中,该对该目标编码单元的变换系数进行反变换处理,包括:
[0165]
响应于该目标编码单元的变换系数的非零个数满足第二条件,通过该第二条件指示的变换核,对该目标编码单元的变换系数进行反变换处理;
[0166]
或者,
[0167]
响应于从码流中解码得到该目标编码单元的第二标志位,通过该第二标志位指示的变换核,对该目标编码单元的变换系数进行反变换跳过处理;
[0168]
或者,
[0169]
通过指定的变换核,对该目标编码单元的变换系数进行反变换跳过处理。
[0170]
在本技术实施例中,编码器/解码器进行反变换之前,可以判断是否需要进行反变换,以及如果需要进行反变化时,确定使用的变换核;反变换方式可以包括以下几种:
[0171]
1)通过隐式表达的使用的变换核进行反变换;
[0172]
2)从码流中解码得到是否使用dct2或者其他变换核进行反变换;
[0173]
3)直接使用dct2或者其他某种变换核,无需选择。
[0174]
在一种可能的实现方式中,该对该目标编码单元的残差系数进行反量化,获得该目标编码单元的变换系数,包括:
[0175]
按照指定的量化参数调整方式对量化参数进行调整,该量化参数调整方式包括增加或者缩小;
[0176]
基于调整后的该量化参数,对该目标编码单元的残差系数进行反量化,获得该目标编码单元的变换系数。
[0177]
在本技术实施例中,当上述方法由编码器执行时,编码器进行反量化之前,可以根据业务需求或者场景需求,在编码器对目标编码单元的编码过程中的量化步骤所使用的qp的基础上,对qp进行放大,以允许较大的残差信号出现,从而扩大系数编码在串复制技术的应用,进而可以提高编码的适用范围,或者,也可以对qp进行缩小,以提高编码精度。
[0178]
步骤804,基于该目标编码单元的残差信号与该目标编码单元的预测信号,获得对该目标编码单元的重建信号。
[0179]
在一种可能的实现方式中,编码器/解码器将目标编码单元的残差信号和预测信号叠加,得到目标编码单元的重建信号。
[0180]
在本技术实施例中,当上述方法由编码器执行时,编码器基于该目标编码单元的残差信号与该目标编码单元的预测信号,获得对该目标编码单元进行解码得到的重建信号之前,还基于调整后的该量化参数,获取调整后的匹配阈值,该匹配阈值是用于指示串预测过程中像素是否匹配的阈值;基于调整后的该匹配阈值,通过串预测方式获取该目标编码单元的预测信号。
[0181]
在本技术实施例的另一种示例性的方案中,编码器使用不经过调整的匹配阈值,
通过串预测方式,结合运动信息(比如上述目标编码单元中各个串对应的sv、串长度以及是否有匹配串的标志等)和已完成重建的参考信号,获取该目标编码单元的预测信号。
[0182]
也就是说,在本技术实施例所示的方案中,编码器可以直接通过运动信息,基于串预测方式获取预测信号,并与解码所得残差信号叠加导出其重建信号;或者,也可以基于上述对qp的调整情况,对应调整串预测中像素是否匹配的阈值,即调整后的匹配阈值与调整后的qp相对应,然后再通过运动信息,基于串预测方式获取预测信号,并与解码所得残差信号叠加导出其重建信号。
[0183]
综上所述,本技术实施例所示的方案,在编码器/解码器通过串预测方式进行编解码时,将残差信息引入串预测过程,对串预测进行完整的残差信号处理,改进了基于串预测方式的编码单元的重建信号质量,进而提升了编解码性能。
[0184]
此外,本技术实施例所示的方案,在编码器侧的图像重建过程中,在编码使用的qp基础上,对反量化使用的qp进行放大或缩小,相应的,在获取预测信号时,也对匹配阈值进行调整,从而能够按照业务或场景需求灵活调整图像重建的精度,即提高图像重建精度控制的灵活性。
[0185]
另外,本技术实施例所示的方案,在图像重建过程中,进行残差系数的解码时,对tu中全零子区域跳过搜索,并对tu中非全零子区域进行搜索解码,从而提高了残差系数的解码效率,进而提高图像重建的效率。
[0186]
本技术提出的图像重建方法,可以应用在编码器中,也可以应用在解码器中。其中,在编码器中,已编码的cu的重建信号用作后续cu编码的参考信号,在解码器中,已编码的cu的重建信号用于后续的cu解码以及视频播放。
[0187]
请参考图10,其示出了本技术一个实施例提供的编解码过程中的图像重建框架示意图。如图10所示,在本技术上述方案的一种可能的应用示例中,编码器101对图像进行划分,得到编码单元cu1的原始信号1011,并通过重建信号缓冲区1012中的重建信号,按照串预测的方式对该编码单元cu1的原始信号1011进行预测编码,得到预测信号1013,以及该原始信号1011与预测信号1013之间的残差信号1014;编码器101对残差信号1014进行变化和量化操作,得到残差系数1015,在对残差系数1015进行熵编码或统计编码,得到残差编码1016;其中,残差编码1016和上述预测信号1013对应的运动信息1017(各个串对应的sv、串长度以及是否有匹配串的标志等)作为cu1的编码结果,被添加至编码后的码流中传输给解码器102。
[0188]
上述cu1在编码器101中编码完成之后,编码器101还通过运动信息1017预测得到预测信号1013,并对残差编码1016作系数解码、反量化&反变换/反变换跳过处理,依次得到残差系数1015和残差信号1014,将残差信号1014和预测信号1013进行叠加融合,得到cu1的重建信号,并将cu1的重建信号添加至重建信号缓冲区1012中,以用作对后续cu进行编码的参考信号。
[0189]
在解码器102中,解码器102在通过串预测方式对cu1进行解码时,确定需要对cu1进行残差系数解码,则从码流中获得cu1的运动信息1017和残差编码1016,以重建信号缓冲区1021中已重建的信号作为参考信号,通过运动信息1017获得预测信号1013,并对残差编码1016作系数解码、反量化&反变换/反变换跳过处理,依次得到残差系数1015和残差信号1014,将残差信号1014和预测信号1013进行融合,得到cu1的重建信号,该cu1的重建信号一
方面用作视频播放,另一方面也作为对后续cu进行解码的参考信号。
[0190]
下述为本技术装置实施例,可以用于执行本技术方法实施例。对于本技术装置实施例中未披露的细节,请参照本技术方法实施例。
[0191]
请参考图11,其示出了本技术一个实施例提供的视频图像重建装置的框图。该装置具有实现上述方法示例的功能,所述功能可以由硬件实现,也可以由硬件执行相应的软件实现。该装置可以是上文介绍的计算机设备,也可以设置在计算机设备上。该装置1100可以包括:
[0192]
残差编码获取模块1101,用于响应于通过串预测方式进行编解码,获取已编码的目标编码单元的残差编码;所述残差编码是对所述目标编码块的残差系数进行编码得到的;
[0193]
系数解码模块1102,用于对所述目标编码单元的残差编码进行解码,获得所述目标编码单元的残差系数;
[0194]
残差信号获取模块1103,用于基于所述目标编码单元的残差系数获取所述目标编码单元的残差信号;
[0195]
信号重建模块1104,用于基于所述目标编码单元的残差信号与所述目标编码单元的预测信号,获得对所述目标编码单元的重建信号。
[0196]
在一种可能的实现方式中,所述残差编码获取模块1101,用于,
[0197]
响应于通过串预测的方式进行编解码,获取所述目标编码单元的残差解码指示信息;所述残差解码指示信息指示是否对所述目标编码块的残差解码;
[0198]
响应于所述残差指示信息指示对所述目标编码块进行残差解码,获取所述目标编码单元的残差编码。
[0199]
在一种可能的实现方式中,所述残差解码指示信息包括以下信息中的至少一种:
[0200]
在所述目标编码单元对应的序列头中解码得到的第一索引,所述第一索引用于指示对应序列中通过串预测的解码方式进行解码的编码单元的残差系数;
[0201]
在所述目标编码单元对应的图像头中解码得到的第二索引,所述第二索引用于指示对应图像中通过串预测的解码方式进行解码的编码单元的残差系数;
[0202]
在所述目标编码单元的片头中解码得到的第三索引,所述第三索引用于指示对应的片中通过串预测的解码方式进行解码的编码单元的残差系数;
[0203]
在所述目标编码单元的最大编码单元lcu中解码得到的第四索引,所述第四索引用于指示对应的lcu中通过串预测的解码方式进行解码的编码单元的残差系数;
[0204]
在所述目标编码单元中解码得到的第五索引,所述第五索引用于指示所述目标编码单元的残差系数;
[0205]
所述目标编码单元的分量类型,所述分量类型包括亮度分量或色度分量;
[0206]
所述目标编码单元中各个像素的颜色分量的编码块标识,所述编码块标识用于指示对应的像素上的颜色分量是否非零;
[0207]
所述目标编码单元的尺寸;
[0208]
所述目标编码单元内的系数指示信息,所述系数指示信息用于指示所述目标编码单元的系数是否全为零;
[0209]
以及,所述目标编码单元中是否包含孤立点。
[0210]
在一种可能的实现方式中,所述残差信号获取模块1103,用于,
[0211]
对所述目标编码单元的残差系数进行反量化,获得所述目标编码单元的变换系数;
[0212]
对所述目标编码单元的变换系数进行反变换跳过处理,或者,对所述目标编码单元的变换系数进行反变换处理,获得所述目标编码单元的残差信号。
[0213]
在一种可能的实现方式中,所述残差信号获取模块1103,用于,
[0214]
响应于所述目标编码单元的变换系数的非零个数满足第一条件,对所述目标编码单元的变换系数进行反变换跳过处理;
[0215]
或者,
[0216]
响应于从码流中解码得到所述目标编码单元的第一标志位,且所述第一标志位指示进行反变换跳过,对所述目标编码单元的变换系数进行反变换跳过处理;
[0217]
或者,
[0218]
响应于所述目标编码单元中存在孤立点,对所述目标编码单元的变换系数进行反变换跳过处理;
[0219]
或者,
[0220]
响应于所述目标编码单元中不存在孤立点,对所述目标编码单元的变换系数进行反变换跳过处理。
[0221]
在一种可能的实现方式中,所述残差信号获取模块1103,用于,
[0222]
响应于所述目标编码单元的变换系数的非零个数满足第二条件,通过所述第二条件指示的变换核,对所述目标编码单元的变换系数进行反变换处理;
[0223]
或者,
[0224]
响应于从码流中解码得到所述目标编码单元的第二标志位,通过所述第二标志位指示的变换核,对所述目标编码单元的变换系数进行反变换跳过处理;
[0225]
或者,
[0226]
通过指定的变换核,对所述目标编码单元的变换系数进行反变换跳过处理。
[0227]
在一种可能的实现方式中,所述残差信号获取模块1103,用于,
[0228]
按照指定的量化参数调整方式对量化参数进行调整,所述量化参数调整方式包括增加或者缩小;
[0229]
基于调整后的所述量化参数,对所述目标编码单元的残差系数进行反量化,获得所述目标编码单元的变换系数。
[0230]
在一种可能的实现方式中,所述装置还包括:
[0231]
匹配阈值调整模块,用于在信号重建模块1104基于所述目标编码单元的残差信号与所述目标编码单元的预测信号,获得对所述目标编码单元进行解码得到的重建信号之前,基于调整后的所述量化参数,获取调整后的匹配阈值,所述匹配阈值是用于指示串预测过程中像素是否匹配的阈值;
[0232]
预测信号获取模块,用于基于调整后的所述匹配阈值,通过串预测方式获取所述目标编码单元的预测信号。
[0233]
在一种可能的实现方式中,所述目标编码单元的残差编码包括至少两个子编码块;
[0234]
所述系数解码模块1102,用于跳过所述至少两个子编码块中的全零子编码块的扫描,对所述至少两个子编码块中的非全零子编码块执行基于扫描区域的系数解码,获得所述目标编码单元的残差系数。
[0235]
在一种可能的实现方式中,所述系数解码模块1102,用于跳过所述至少两个子编码块中的全零子编码块的扫描,以所述目标编码块的宽度为基本单位,通过沿水平方向的扫描方式对所述非全零子编码块执行基于扫描区域的系数解码,获得所述目标编码单元的残差系数。
[0236]
在一种可能的实现方式中,所述系数解码模块1102,用于跳过所述至少两个子编码块中的全零子编码块的扫描,以所述目标编码块的高度为基本单位,通过沿垂直方向的扫描方式对所述非全零子编码块执行基于扫描区域的系数解码,获得所述目标编码单元的残差系数。
[0237]
综上所述,本技术实施例所示的方案,在编码器/解码器通过串预测方式进行编解码时,将残差信息引入串预测过程,对串预测进行完整的残差信号处理,改进了基于串预测方式的编码单元的重建信号质量,进而提升了编解码性能。
[0238]
此外,本技术实施例所示的方案,在编码器侧的图像重建过程中,在编码使用的qp基础上,对反量化使用的qp进行放大或缩小,相应的,在获取预测信号时,也对匹配阈值进行调整,从而能够按照业务或场景需求灵活调整图像重建的精度,即提高图像重建精度控制的灵活性。
[0239]
另外,本技术实施例所示的方案,在图像重建过程中,进行残差系数的解码时,对tu中全零子区域跳过搜索,并对tu中非全零子区域进行搜索解码,从而提高了残差系数的解码效率,进而提高图像重建的效率。
[0240]
请参考图12,其示出了本技术一个实施例提供的计算机设备的结构框图。该计算机设备可以是上文介绍的编码端设备,也可以是上文介绍的解码端设备。该计算机设备150可以包括:处理器151、存储器152、通信接口153、编码器/解码器154和总线155。
[0241]
处理器151包括一个或者一个以上处理核心,处理器151通过运行软件程序以及模块,从而执行各种功能应用以及信息处理。
[0242]
存储器152可用于存储计算机程序,处理器151用于执行该计算机程序,以实现上述视频图像重建方法。
[0243]
通信接口153可用于与其它设备进行通信,如收发音视频数据。
[0244]
编码器/解码器154可用于实现编码和解码功能,如对音视频数据进行编码和解码。
[0245]
存储器152通过总线155与处理器151相连。
[0246]
此外,存储器152可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,易失性或非易失性存储设备包括但不限于:磁盘或光盘,eeprom(electrically erasable programmable read-only memory,电可擦除可编程只读存储器),eprom(erasable programmable read-only memory,可擦除可编程只读存储器),sram(static random-access memory,静态随时存取存储器),rom(read-only memory,只读存储器),磁存储器,快闪存储器,prom(programmable read-only memory,可编程只读存储器)。
[0247]
本领域技术人员可以理解,图12中示出的结构并不构成对计算机设备150的限定,
可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
[0248]
在示例性实施例中,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或所述指令集在被处理器执行时实现上述视频图像重建方法。
[0249]
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述视频图像重建方法。
[0250]
应当理解的是,在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0251]
以上所述仅为本技术的示例性实施例,并不用以限制本技术,凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

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

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

相关文献