专用历史最近运动矢量预测候选集的图像压缩方法及装置与流程

文档序号:34300774发布日期:2023-05-31 16:05阅读:31来源:国知局

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


背景技术:

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

2、图像和视频是由像素的样值组成的排列成一定空间(一维、二维、或多维)形状的有限数据的集合(例如:一帧图像、一个视频序列、一个三维场景、一个持续变化的三维场景的序列)。对图像数据进行数据压缩的编码(以及相应的解码)时,通常把图像划分成若干具有预定形状的子集,称为编码块(从解码的角度也就是解码块,统称为编解码块),以编解码块为单位,按照预定的时间顺序,一块一块进行编码或解码。在任一时刻,正在编码中的编码块称为当前编码块。在任一时刻,正在解码中的解码块称为当前解码块。当前编码块或当前解码块统称为当前编解码块或简称为当前块。正在编码或解码中的样值称为当前编码样值或当前解码样值,简称为当前样值。

3、对于具有一定形状(不一定限于正方形或矩形,可以是任何合理的其他形状)的一个编解码块,在很多场合需要将其划分成更精细的子块(不一定限于正方形或矩形,可以是任何合理的其他形状),按照预定的时间顺序,一个子块一个子块进行编码或解码。对一个子块内的所有样值,通常施行同一类型的编码或解码操作。在任一时刻,正在编码或解码中的子块称为当前子块。对一个子块进行编码的结果是一个或多个编码参数,最后产生含这些编码参数的压缩数据码流。对一个子块进行解码就是解析所述压缩数据码流获得一个或多个编码参数,从所述一个或多个编码参数复原出重构的数据的样值。

4、子块的例包括编解码块(整个编解码块作为一个子块)、正方形或矩形或三角形或梯形子块、微块、串、像素串、样值串、索引串、线条。

5、本发明中涉及的图像数据包括采集或生成的原始状态图像数据,也包括经过若干处理的中间状态数据与数据集,还包括在编解码过程中产生的编码参数数据与数据集,如各种编码模式,多维或三维或二维运动矢量,匹配长度等。

6、图像压缩的一个手段是挖掘图像中各层次各方面的数据单元之间的相关性,用通常称为参考数据单元(也常称为预测数据单元、补偿数据单元、匹配数据单元、被匹配数据单元、预测值、补偿值、参考值等)的数据单元来匹配(也常称为预测、表示、代表、补偿、近似、逼近等)当前数据单元,达到数据的无损或有损压缩的效果。

7、运动矢量(motion vector简称mv)是图像压缩中的一种重要数据单元。使用已完成至少部分编解码操作的编解码块或子块的运动矢量作为运动矢量预测值来预测一个当前运动矢量(即当前正在编解码中的运动矢量),可有效提高帧间编码的编码效率。运动矢量预测值的可能来源至少包括:

8、1)同帧相邻也称空间相邻(spatial neighboring)编解码块的已完成至少部分编解码操作的一个或多个运动矢量,称为同帧相邻运动矢量,

9、2)前帧相邻也称时间相邻(temporal neighboring)编解码块的已完成至少部分编解码操作的一个或多个运动矢量,称为前帧相邻运动矢量,

10、3)历史最近运动矢量预测值候选集,由在编解码历史过程中按照编解码顺序出现的最近若干个采用帧间编码模式的编解码块的已完成至少部分编解码操作的运动矢量,称之为历史最近运动矢量,组成。

11、每个运动矢量通常至少包括一个水平分量和一个垂直分量,还可选地包括一个参考图像索引,表示参考像素取自参考图像队列中哪一帧图像。因此,每个运动矢量都对应了一帧参考图像即参考块或子块及其参考像素所在的图像。

12、在现有技术中,仅有一个单一的历史最近运动矢量预测值候选集,并且其中的所有运动矢量,不管其对应的参考图像索引取什么值(表示帧间预测的参考像素在参考图像队列的哪一帧图像中),都不加区别地用于当前运动矢量的预测。因此,历史最近运动矢量预测值候选集实际上无法高效地适应于各种帧间编码的场合,特别是允许当前图像即当前块或子块所在图像用于参考图像即参考块或子块所在图像的场合,影响了编码效率的提升。

13、


技术实现思路

1、为了解决图像压缩中的这一问题,本发明提供了一种使用专用历史最近运动矢量预测候选集的图像压缩方法和装置,一个历史最近运动矢量预测候选集主要用于参考图像是当前图像的场合,另外至少一个历史最近运动矢量预测候选集主要用于参考图像不是当前图像的场合,不同的专用历史最近运动矢量预测候选集适用于帧间编码的不同场合,从而提高编码效率。

2、本发明的首要技术特征是具有 当前图像参考专用历史最近运动矢量预测候选集和 非当前图像参考专用历史最近运动矢量预测候选集,分别主要用于参考图像是当前图像和非当前图像的场合。

3、本发明的编码方法或装置的最基本的特有技术特征是在对当前运动矢量即当前块或子块的运动矢量进行编码时,至少根据参考图像是还是不是当前图像的可能程度,使用 当前图像参考专用历史最近运动矢量预测候选集或者 非当前图像参考专用历史最近运 动矢量预测候选集或者 两者的混合作为 当前历史最近运动矢量预测候选集,在至少所述当前历史最近运动矢量预测候选集之中,至少根据预定的评价规则,如消耗的比特数的多少和/或编码误差的大小,选取一个最优的运动矢量作为所述当前运动矢量的预测运动矢量或称运动矢量预测值,产生至少含表示当前运动矢量的运动矢量预测值的部分或全部信息的压缩数据码流。图1是本发明的编码方法或装置的一个示意图。

4、本发明的解码方法或装置的最基本的特有技术特征是解析压缩数据码流,获取至少表示当前运动矢量的运动矢量预测值的部分或全部信息,至少根据参考图像是还是不是当前图像的可能程度,使用 当前图像参考专用历史最近运动矢量预测候选集或者 非当前图 像参考专用历史最近运动矢量预测候选集或者 两者的混合作为 当前历史最近运动矢量预 测候选集,从至少所述当前历史最近运动矢量预测候选集,根据所述当前运动矢量的运动矢量预测值的部分或全部信息,解码获得所述当前运动矢量的运动矢量预测值。图2是本发明的解码方法或装置的一个示意图。

5、根据本发明的一个方面,提供了一种图像压缩的编码方法或装置,至少包括完成下列功能和操作的步骤或模块:

6、在对一个编码块中的一个当前运动矢量进行编码时,至少根据参考图像是还是不是当前图像的可能程度,使用 当前图像参考专用历史最近运动矢量预测候选集或者 非当前 图像参考专用历史最近运动矢量预测候选集或者 两者的混合作为 当前历史最近运动矢量 预测候选集,从至少所述当前历史最近运动矢量预测候选集,至少根据预定的评价规则,

7、选取一个运动矢量作为所述当前运动矢量的运动矢量预测值

8、或者

9、选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值;

10、产生至少含表示当前运动矢量的运动矢量预测值的部分或全部信息的压缩数据码流。

11、根据本发明的另一个方面,还提供了一种图像压缩的解码方法或装置,至少包括完成下列功能和操作的步骤或模块:

12、在对一个解码块中的一个当前运动矢量进行解码时,解析压缩数据码流,获取至少表示当前运动矢量的运动矢量预测值的部分或全部信息,至少根据参考图像是还是不是当前图像的可能程度,使用 当前图像参考专用历史最近运动矢量预测候选集或者 非当前图 像参考专用历史最近运动矢量预测候选集或者 两者的混合作为 当前历史最近运动矢量预 测候选集,从至少所述当前历史最近运动矢量预测候选集,至少根据所述表示当前运动矢量的运动矢量预测值的部分或全部信息,

13、选取一个运动矢量作为所述当前运动矢量的运动矢量预测值

14、或者

15、选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值;

16、并进而解码获得所述当前运动矢量本身。

17、从第一个角度,本发明提供了一种对图像进行压缩的编码方法,其特征在于至少包括下列步骤:

18、1)在对一个编码块中的一个当前运动矢量进行编码时,至少根据参考图像是还是不是当前图像的可能程度,使用 当前图像参考专用历史最近运动矢量预测候选集或者 非当 前图像参考专用历史最近运动矢量预测候选集或者 两者的混合作为 当前历史最近运动矢 量预测候选集;

19、2)从至少所述当前历史最近运动矢量预测候选集,至少根据预定的评价规则,

20、选取一个运动矢量作为所述当前运动矢量的运动矢量预测值

21、或者

22、选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值;

23、3)产生至少含表示当前运动矢量的运动矢量预测值的部分或全部信息的压缩数据码流。

24、从第二个角度,本发明提供了一种对图像进行压缩的解码方法,其特征在于至少包括下列步骤:

25、1)在对一个解码块中的一个当前运动矢量进行解码时,解析压缩数据码流,获取至少表示当前运动矢量的运动矢量预测值的部分或全部信息;

26、2)至少根据参考图像是还是不是当前图像的可能程度,使用 当前图像参考专用历 史最近运动矢量预测候选集或者 非当前图像参考专用历史最近运动矢量预测候选集或者 两者的混合作为 当前历史最近运动矢量预测候选集;

27、3)从至少所述当前历史最近运动矢量预测候选集,至少根据所述表示当前运动矢量的运动矢量预测值的部分或全部信息,

28、选取一个运动矢量作为所述当前运动矢量的运动矢量预测值

29、或者

30、选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值,

31、并进而解码获得所述当前运动矢量本身。

32、从第三个角度,本发明提供了一种对图像进行压缩的编码装置,其特征在于至少包括下列模块:

33、1)当前候选集选择模块,在对一个编码块中的一个当前运动矢量进行编码时,至少根据参考图像是还是不是当前图像的可能程度,使用 当前图像参考专用历史最近运动矢 量预测候选集或者 非当前图像参考专用历史最近运动矢量预测候选集或者 两者的混合作为 当前历史最近运动矢量预测候选集;

34、2)运动矢量预测值选择模块,从至少所述当前历史最近运动矢量预测候选集,至少根据预定的评价规则,

35、选取一个运动矢量作为所述当前运动矢量的运动矢量预测值

36、或者

37、选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值;

38、3)压缩数据码流生成模块,产生至少含表示当前运动矢量的运动矢量预测值的部分或全部信息的压缩数据码流。

39、从第四个角度,本发明提供了一种对图像进行压缩的解码装置,其特征在于至少包括下列模块:

40、1)压缩数据码流解析模块,在对一个解码块中的一个当前运动矢量进行解码时,解析压缩数据码流,获取至少表示当前运动矢量的运动矢量预测值的部分或全部信息;

41、2)当前候选集选择模块,至少根据参考图像是还是不是当前图像的可能程度,使用 当前图像参考专用历史最近运动矢量预测候选集或者 非当前图像参考专用历史最近运 动矢量预测候选集或者 两者的混合作为 当前历史最近运动矢量预测候选集;

42、3)运动矢量预测值解码模块,从至少所述当前历史最近运动矢量预测候选集,至少根据所述表示当前运动矢量的运动矢量预测值的部分或全部信息,

43、选取一个运动矢量作为所述当前运动矢量的运动矢量预测值

44、或者

45、选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值,

46、并进而解码获得所述当前运动矢量本身。

47、本发明适用于有损图像压缩的编码和解码,本发明也同样适用于无损图像压缩的编码和解码。

48、本发明中,编码块或解码块是图像的一个编码区域或一个解码区域,包括以下至少一种:整幅图像、图像的子图像、条带slice、片块tile、宏块、最大编码单元lcu、编码树单元ctu、编码单元cu、cu的子区域、子编码单元subcu、预测单元pu、pu的子区域、子预测单元subpu、变换单元tu、tu的子区域、子变换单元subtu。

49、本发明中,子块包括下列情形之一或其组合:编解码块、编解码块的子区域、正方形或矩形或三角形或梯形子块、微块、串、像素串、样值串、索引串、线条。

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

51、

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