原始分量间和残差色度分量间预测的视频解码方法和装置与流程

文档序号:41349858发布日期:2025-03-21 14:46阅读:31来源:国知局
原始分量间和残差色度分量间预测的视频解码方法和装置与流程

本发明涉及一种对数据进行有损或无损压缩的编码及解码系统,特别是多分量数据如彩色图像和视频数据的编码及解码的方法和装置。


背景技术:

1、随着人类社会进入大数据、云计算、移动计算、云-移动计算、超高清(4k)和特超高清(8k)视频图像分辨率、4g/5g通讯、虚拟现实的时代,对各种数据,包括大数据、图像数据、视频数据,进行超高压缩比和极高质量的数据压缩成为必不可少的技术。

2、数据集是由数据的样值也称数据元素(例如:字节、比特、像素、空间采样点、变换域系数)组成的集合。对一个排列成一定空间(一维、二维、或多维)形状和具有一定元素数目以及一定采样格式的数据集(例如:一个文件、一个一维数据队列、一个二维数据文件、一帧图像、一个视频序列、一个变换域、一个变换块、多个变换块、一个三维场景、一个持续变化的三维场景的序列),特别是二维或以上数据集进行数据压缩的编码(以及相应的解码)时,通常把此数据集划分成若干具有预定形状和大小(即元素数目)的块的子集,称为编码块(从解码的角度也就是解码块,统称为编解码块),以编解码块为单位,一个块一个块地进行编码或者解码。在任一时刻,正在编码中的编码块称为当前编码块。在任一时刻,正在解码中的解码块称为当前解码块。当前编码块或当前解码块统称为当前编解码块或简称为当前块。

3、 正在编码或者解码中的数据元素(简称为元素)称为当前编码数据元素或者当前解码数据元素,统称为当前数据元素,简称为当前元素。元素由k个分量(通常1≤k≤5)组成,因此数据集和编解码块也都由k个分量组成。例如,一帧图像的元素即像素排列成矩形形状,具有1920(宽度)x 1080(高度)的大小(分辨率),由3个分量组成:g(绿色)分量,b(蓝色)分量,r(红色)分量或y(亮度)分量,u(cb色度)分量,v(cr色度)分量。

4、元素或其分量统称为样值。一般可从上下文确定样值是指元素还是元素的分量。如果从上下文不能确定样值是指元素还是元素的分量,样值就是指元素和/或元素的分量。

5、 作为编码对象的不少数据集和编解码块具有一种采样格式。例如,对于计算机产生的含图形和文字的图像,通常采用一种称为4:4:4(简称444)的采样格式,就是数据集的三个分量都具有同样的采样率和大小(即分量样值的数目)。对于摄像机摄取的自然图像和视频,通常采用一种称为4:2:0(简称420)的采样格式,就是具有矩形形状和三个分量的数据集(如图像或视频)的两个称为次分量的分量(d分量和e分量)的采样率和尺寸分别是另一个称为主分量的分量(f分量)的四分之一。在这种情形,一个d分量d[i][j]和一个e分量e[i][j]对应于四个(2×2个)f分量f[2i][2j],f[2i+1][2j],f[2i][2j+1],f[2i+1][2j+1]。如果f分量的分辨率是2m×2n,即数据集的f分量是f = {f[i][j]:i = 0~2m-1,j = 0~2n-1},那么d分量和e分量的分辨率分别都是m×n,即数据集的d分量和e分量分别是d = {d[i][j]:i = 0~m-1,j = 0~n-1}和e = {e[i][j]:i = 0~m-1,j = 0~n-1}。在需要较高视频质量的场合,则常常使用一种称为4:2:2(简称422)的采样格式,就是具有矩形形状和三个分量的数据集(如图像或视频)的两个次分量(d分量和e分量)的采样率和尺寸分别是另一个主分量(f分量)的二分之一。在这种情形,在数据集(如图像或视频)的一个方向(如水平方向),一个d分量d[i][j]和一个e分量e[i][j]对应于两个(2×1个)f分量f[2i][j]和f[2i+1][j]。如果f分量的分辨率是2m×n,即数据集的f分量是f = {f[i][j]:i = 0~2m-1,j = 0~n-1},那么d分量和e分量的分辨率分别都是m×n,即数据集的d分量和e分量分别是d = {d[i][j]:i = 0~m-1,j = 0~n-1}和e = {e[i][j]:i = 0~m-1,j = 0~n-1}。在采用yuv色彩格式的图像和视频中,以上所述f、d、e分量通常分别是y、u、v分量。在采用rgb色彩格式的图像和视频中,以上所述f、d、e分量通常分别是g、b、r分量或g、r、b分量。在数据是图像或视频的场合,采样格式也常称为色度格式。

6、 444采样格式的图像或视频经过d和e分量的一个方向(如水平方向或垂直方向)的2:1下采样产生422采样格式,经过d和e分量的水平2:1下采样以及垂直2:1下采样(总体4:1下采样)产生420采样格式。

7、多分量数据的各个分量之间一般具有一定程度的相关性。因此,使用一部分分量来预测另一部分分量可以有效地起到数据压缩的作用。

8、分量间预测可分为两种。一种是原始数据分量间预测,即使用一个或几个分量的原始数据的重建值构造其他分量的原始值(即分量本身的值)的预测值,对所述其他分量进行分量间预测。另一种是残差数据分量间预测,即各分量都分别首先对原始数据各分量本身进行预测,获得各分量的残差数据即原始数据本身的预测误差,然后使用一个或几个分量的用于计算其原始数据重建值的残差值(即残差数据重建值)构造出其他分量的用于计算其原始数据重建值的残差值(即残差数据重建值)的预测值,对所述其他分量的残差进行分量间预测。

9、特别需要注意的是,由于预测操作是可以多次施行的操作,对预测的残差可以再进行一次预测产生新的残差,因此,原始数据与残差数据是相对的概念。对一次预测操作来说,预测操作前的数据称为原始数据,预测操作后获得的预测差数据称为残差数据。一次预测操作的原始数据允许是另一次预测操作的残差数据。一次预测操作的残差数据也允许是另一次预测操作的原始数据。

10、一种数据的重建值是对所述数据进行通常包括预测和/或变换和/或量化在内的编码操作及其逆操作之后获得的重建数据。在编码操作及其逆操作是无损的情形,数据的重建值等于数据本身。

11、从原理上来说,在一定条件下,原始数据分量间预测与残差数据分量间预测是等价的。由此,现有技术认为原始数据分量间预测与残差数据分量间预测具有几乎同样的作用。因此,在现有图像和视频编解码技术中,或者对整幅图像或整个视频序列的像素数据采用原始数据(也就是像素数据)分量间预测而不采用残差数据分量间预测,或者对整幅图像或整个视频序列的像素数据采用残差数据分量间预测而不采用原始数据(也就是像素数据)分量间预测。

12、在现有图像和视频编解码技术中,对420采样格式的图像或视频的像素数据采用原始数据分量间预测,而对444采样格式的的图像或视频的像素数据采用残差数据分量间预测。在现有图像和视频编解码技术中,当使用串预测(也称为串匹配或串复制)编解码技术时,既不采用原始数据分量间预测也不采用残差数据分量间预测。

13、现有技术未考虑到在实际应用场景中,由于各分量可能分别具有不同的预测模式,不同的变换方式,不同的量化因子,因此,原始数据分量间预测与残差数据分量间预测实际上在有些情形具有不同和互补的作用,特别是在非444采样格式的场合,不同和互补的作用在一定条件下更为明显。


技术实现思路

1、为了充分利用分量间相关性来提高编码效率,本发明提供了一种在编解码块层次自适应地采用原始数据分量间预测和/或采用残差数据分量间预测的数据压缩方法和装置。首先使用包括原始数据分量间预测模式在内的预测模式对编解码块进行预测操作,在一定程度上消除各分量的原始值之间的相关性;然后,对所述编解码块的经过预测后产生的残差,进一步使用残差数据分量间预测以消除各分量的残差值之间的相关性。

2、本发明的首要技术特征是对具有多个(两个或以上)分量的数据进行编解码时,一部分编解码块至少使用原始数据分量间预测,另一部分编解码块至少使用残差数据分量间预测,还有一部分编解码块至少同时使用原始数据分量间预测和残差数据分量间预测。

3、本发明中,优选地,编码器输出的压缩数据码流(即解码器输入的压缩数据码流)中至少含有表示所述编解码块是否使用原始数据分量间预测的信息和/或表示所述编解码块是否使用残差数据分量间预测的信息。

4、本发明中,优选地,所述数据具有由一个主分量和两个次分量组成的三个分量;所述三个分量的数据具有444采样格式或422采样格式或420采样格式。

5、本发明的编码方法或装置的最基本的特有技术特征是至少包括一个对原始数据进行帧间预测编码和/或串预测编码和/或包括原始数据分量间预测在内的帧内预测编码的步骤或模块,同时包括一个对经过预测编码后产生的残差数据进行残差数据分量间预测的步骤或模块,输出的压缩数据码流中至少含表示编码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息。图1(a)是本发明的编码方法或装置的一个示意图。

6、本发明的解码方法或装置的最基本的特有技术特征是解析压缩数据码流,至少获取表示解码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息;如果所述信息表示所述解码块使用原始数据分量间预测,则至少从一个或几个分量的原始数据重建值构造出其他分量的原始数据预测值;如果所述信息表示所述解码块使用残差数据分量间预测,则至少从一个或几个分量的用于计算其原始数据重建值的残差值(即残差数据重建值)构造出其他分量的用于计算其原始数据重建值的残差值(即残差数据重建值)的预测值。图1(b)是本发明的解码方法或装置的一个示意图。

7、根据本发明的一个方面,提供了一种对多分量数据进行压缩的编码方法或装置,至少包括完成下列功能和操作之一或其组合的步骤或模块:

8、对原始数据进行帧间预测编码和/或串预测编码和/或包括原始数据分量间预测在内的帧内预测编码,所述原始数据分量间预测至少包括从至少h(h≥1)个分量的原始数据或其重建值构造出q(q≥1)个分量的原始数据或其重建值的预测值以及预测差值,其中,允许所述h等于所述q,允许所述h个分量中的部分或全部分量与所述q个分量中的部分或全部分量重叠,允许所述q个分量中的一个或多个分量的所述预测差值为零;

9、对经过预测编码后产生的残差数据进行包括残差数据分量间预测在内的残差编码,所述残差数据分量间预测至少包括从至少w(w≥1)个分量的残差数据或其重建值构造出z(z≥1)个分量的残差数据或其重建值的预测值以及预测差值,其中,允许w等于z,允许所述w个分量中的部分或全部分量与所述z个分量中的部分或全部分量重叠,允许所述z个分量中的一个或多个分量的所述预测差值为零;

10、至少将表示编码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息写入压缩数据码流。

11、从第一个角度,本发明提供了一种对多分量数据进行压缩的编码方法,其特征在于至少包括下列步骤之一或其组合:

12、步骤1)对原始数据进行帧间预测编码和/或串预测编码和/或包括原始数据分量间预测在内的帧内预测编码,所述原始数据分量间预测的操作至少包括从至少h(h≥1)个分量的原始数据或其重建值构造出q(q≥1)个分量的原始数据或其重建值的预测值以及预测差值,其中,允许所述h等于所述q,允许所述h个分量中的部分或全部分量与所述q个分量中的部分或全部分量重叠,允许所述q个分量中的一个或多个分量的所述预测差值为零;

13、步骤2)对经过预测编码后产生的残差数据进行包括残差数据分量间预测在内的残差编码,所述残差数据分量间预测的操作至少包括从至少w(w≥1)个分量的残差数据或其重建值构造出z(z≥1)个分量的残差数据或其重建值的预测值以及预测差值,其中,允许w等于z,允许所述w个分量中的部分或全部分量与所述z个分量中的部分或全部分量重叠,允许所述z个分量中的一个或多个分量的所述预测差值为零;

14、步骤3)至少将表示编码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息写入压缩数据码流。

15、从第二个角度,本发明提供了一种对多分量数据进行压缩的编码装置,其特征在于至少包括下列模块之一或其组合:

16、1)预测编码模块:对原始数据进行帧间预测编码和/或串预测编码和/或包括原始数据分量间预测在内的帧内预测编码,所述原始数据分量间预测的操作至少包括从至少h(h≥1)个分量的原始数据或其重建值构造出q(q≥1)个分量的原始数据或其重建值的预测值以及预测差值,其中,允许所述h等于所述q,允许所述h个分量中的部分或全部分量与所述q个分量中的部分或全部分量重叠,允许所述q个分量中的一个或多个分量的所述预测差值为零;

17、2)残差编码模块:对经过预测编码后产生的残差数据进行包括残差数据分量间预测在内的残差编码,所述残差数据分量间预测的操作至少包括从至少w(w≥1)个分量的残差数据或其重建值构造出z(z≥1)个分量的残差数据或其重建值的预测值以及预测差值,其中,允许w等于z,允许所述w个分量中的部分或全部分量与所述z个分量中的部分或全部分量重叠,允许所述z个分量中的一个或多个分量的所述预测差值为零;

18、3)压缩数据码流产生模块:至少将表示编码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息写入压缩数据码流。

19、根据本发明的另一个方面,提供了一种对多分量数据进行压缩的解码方法或装置,至少包括完成下列功能和操作之一或其组合的步骤或模块:

20、解析压缩数据码流,至少获取表示解码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息;

21、进行原始数据分量间预测,所述原始数据分量间预测至少包括从至少h(h≥1)个分量的原始数据或其重建值构造出q(q≥1)个分量的原始数据或其重建值的预测值和/或从至少所述q个分量的所述预测值和/或所述q个分量的预测差值或其重建值构造出所述q个分量的原始数据重建值,其中,允许所述h等于所述q,允许所述h个分量中的部分或全部分量与所述q个分量中的部分或全部分量重叠,允许所述q个分量中的一个或多个分量的所述预测差值或其重建值为零;

22、进行残差数据分量间预测,所述残差数据分量间预测至少包括从至少w(w≥1)个分量的残差数据或其重建值构造出z(z≥1)个分量的残差数据或其重建值的预测值和/或从至少所述z个分量的所述预测值和/或所述z个分量的预测差值或其重建值构造出所述z个分量的残差数据重建值,其中,允许所述w等于所述z,允许所述w个分量中的部分或全部分量与所述z个分量中的部分或全部分量重叠,允许所述z个分量中的一个或多个分量的所述预测差值或其重建值为零。

23、从第三个角度,本发明提供了一种对多分量数据进行压缩的解码方法,其特征在于至少包括下列步骤之一或其组合:

24、步骤1)解析压缩数据码流,至少获取表示解码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息;

25、步骤2)进行原始数据分量间预测,所述原始数据分量间预测的操作至少包括从至少h(h≥1)个分量的原始数据或其重建值构造出q(q≥1)个分量的原始数据或其重建值的预测值和/或从至少所述q个分量的所述预测值和/或所述q个分量的预测差值或其重建值构造出所述q个分量的原始数据重建值,其中,允许所述h等于所述q,允许所述h个分量中的部分或全部分量与所述q个分量中的部分或全部分量重叠,允许所述q个分量中的一个或多个分量的所述预测差值或其重建值为零;

26、步骤3)进行残差数据分量间预测,所述残差数据分量间预测的操作至少包括从至少w(w≥1)个分量的残差数据或其重建值构造出z(z≥1)个分量的残差数据或其重建值的预测值和/或从至少所述z个分量的所述预测值和/或所述z个分量的预测差值或其重建值构造出所述z个分量的残差数据重建值,其中,允许所述w等于所述z,允许所述w个分量中的部分或全部分量与所述z个分量中的部分或全部分量重叠,允许所述z个分量中的一个或多个分量的所述预测差值或其重建值为零。

27、从第四个角度,本发明提供了一种对多分量数据进行压缩的解码装置,其特征在于至少包括下列模块之一或其组合:

28、1)压缩数据码流解析模块:解析压缩数据码流,至少获取表示解码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息;

29、2)预测解码模块:进行原始数据分量间预测,所述原始数据分量间预测的操作至少包括从h(h≥1)个分量的原始数据或其重建值构造出q(q≥1)个分量的原始数据或其重建值的预测值和/或从所述q个分量的所述预测值和/或所述q个分量的预测差值或其重建值构造出所述q个分量的原始数据重建值,其中,允许所述h等于所述q,允许所述h个分量中的部分或全部分量与所述q个分量中的部分或全部分量重叠,允许所述q个分量中的一个或多个分量的所述预测差值或其重建值为零;

30、3)残差解码模块:如果所述信息表示所述解码块使用残差数据分量间预测,则对所述解码块进行残差数据分量间预测,所述残差数据分量间预测的操作至少包括从w(w≥1)个分量的残差数据或其重建值构造出z(z≥1)个分量的残差数据或其重建值的预测值和/或从所述z个分量的所述预测值和/或所述z个分量的预测差值或其重建值构造出所述z个分量的残差数据重建值,其中,允许所述w等于所述z,允许所述w个分量中的部分或全部分量与所述z个分量中的部分或全部分量重叠,允许所述z个分量中的一个或多个分量的所述预测差值或其重建值为零。

31、 本发明适用于对数据进行有损压缩的编码和解码,本发明也同样适用于对数据进行无损压缩的编码和解码。本发明适用于图像数据的编码和解码,本发明也同样适用于其他任何一维、二维或多维数据的编码和解码。

32、本发明中,数据包括下列类型的数据之一或其组合

33、1)一维数据;

34、2)二维数据;

35、3)多维数据;

36、4)图形;

37、5)分维图形;

38、6)图像;

39、7)图像的序列;

40、8)视频;

41、9)三维场景;

42、10)持续变化的三维场景的序列;

43、11)虚拟现实的场景;

44、12)持续变化的虚拟现实的场景的序列

45、13)像素形式的图像;

46、14)图像的变换域数据;

47、15)二维或二维以上字节的集合;

48、16)二维或二维以上比特的集合;

49、17)像素的集合;

50、18)像素分量的集合。

51、本发明中,在数据是从图像、图像的序列、视频等产生的情形,编码块或解码块是图像的一个编码区域或一个解码区域,包括以下至少一种:整幅图像、图像的子图像、条带slice、片块tile、宏块、最大编码单元lcu、编码树单元ctu、编码单元cu、cu的子区域、子编码单元subcu、预测单元pu、pu的子区域、子预测单元subpu、变换单元tu、tu的子区域、子变换单元subtu。

52、本发明的所述编码方法或装置或者解码方法或装置中,所述表示编解码块是否使用原始数据分量间预测和/或是否使用残差数据分量间预测的信息存在于所述压缩数据码流的下列地方之一或若干处:

53、1)序列参数集;通常是序列参数集的一个或几个直接存在或隐含推导或混合的语法元素;

54、2)图像参数集;通常是图像参数集的一个或几个直接存在或隐含推导或混合的语法元素;

55、3)序列头;通常是序列头的一个或几个直接存在或隐含推导或混合的语法元素;

56、4)图像头;通常是图像头的一个或几个直接存在或隐含推导或混合的语法元素;

57、5)条带头;通常是条带头的一个或几个直接存在或隐含推导或混合的语法元素;

58、6)ctu头;通常是ctu头的一个或几个直接存在或隐含推导或混合的语法元素;

59、7)cu头;通常是cu头的一个或几个直接存在或隐含推导或混合的语法元素;

60、8)编解码块头;通常是编解码块头的一个或几个直接存在或隐含推导或混合的语法元素;

61、所述直接存在的语法元素由压缩数据码流中的一个或多个位串(比特串)所组成。所述隐含推导的语法元素是从其他编码参数和/或编解码变量和/或压缩数据码流的其他语法元素导出的语法元素或预定的语法元素缺省值。所述混合的语法元素是部分直接存在(即由压缩数据码流中的一个或多个位串所组成)部分隐含推导(即从其他编码参数和/或编解码变量和/或压缩数据码流的其他语法元素和/或预定的语法元素缺省值导出)混合的语法元素。

62、以上通过若干特定的具体实例说明本发明的技术特征。本领域技术人员可由本说明书所揭示的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在不背离本发明的精神下进行各种修饰或改变。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1