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

技术编号:37701205 阅读:13 留言:0更新日期:2023-06-01 23:45
本发明专利技术提供了一种使用专用历史最近运动矢量预测候选集的图像压缩方法和装置,一个历史最近运动矢量预测候选集用于参考图像是当前图像的场合,另外至少一个历史最近运动矢量预测候选集用于参考图像不是当前图像的场合,不同的专用历史最近运动矢量预测候选集适用于不同的编码模式,从而提高编码效率。从而提高编码效率。

【技术实现步骤摘要】
专用历史最近运动矢量预测候选集的图像压缩方法及装置
[0001]本申请是下列原申请的的分案申请:原申请的申请日:2019

09

23原申请的申请号:201910901050X原申请的专利技术创造名称:专用历史最近运动矢量预测候选集的图像压缩方法和装置(办理登记手续时的名称:图像压缩的编码方法及装置、解码方法及装置)。


[0002]本专利技术涉及一种对数据进行有损或无损压缩的编码及解码系统,特别是图像和视频数据的编码及解码的方法和装置。
[0003]
技术介绍

[0004]随着人类社会进入大数据、云计算、移动计算、云

移动计算、超高清(4K)和特超高清(8K)视频图像分辨率、4G/5G通讯、虚拟现实的时代,对各种数据,包括大数据、图像数据、视频数据,进行超高压缩比和极高质量的数据压缩成为必不可少的技术。
[0005]图像和视频是由像素的样值组成的排列成一定空间(一维、二维、或多维)形状的有限数据的集合(例如:一帧图像、一个视频序列、一个三维场景、一个持续变化的三维场景的序列)。对图像数据进行数据压缩的编码(以及相应的解码)时,通常把图像划分成若干具有预定形状的子集,称为编码块(从解码的角度也就是解码块,统称为编解码块),以编解码块为单位,按照预定的时间顺序,一块一块进行编码或解码。在任一时刻,正在编码中的编码块称为当前编码块。在任一时刻,正在解码中的解码块称为当前解码块。当前编码块或当前解码块统称为当前编解码块或简称为当前块。正在编码或解码中的样值称为当前编码样值或当前解码样值,简称为当前样值。
[0006]对于具有一定形状(不一定限于正方形或矩形,可以是任何合理的其他形状)的一个编解码块,在很多场合需要将其划分成更精细的子块(不一定限于正方形或矩形,可以是任何合理的其他形状),按照预定的时间顺序,一个子块一个子块进行编码或解码。对一个子块内的所有样值,通常施行同一类型的编码或解码操作。在任一时刻,正在编码或解码中的子块称为当前子块。对一个子块进行编码的结果是一个或多个编码参数,最后产生含这些编码参数的压缩数据码流。对一个子块进行解码就是解析所述压缩数据码流获得一个或多个编码参数,从所述一个或多个编码参数复原出重构的数据的样值。
[0007]子块的例包括编解码块(整个编解码块作为一个子块)、正方形或矩形或三角形或梯形子块、微块、串、像素串、样值串、索引串、线条。
[0008]本专利技术中涉及的图像数据包括采集或生成的原始状态图像数据,也包括经过若干处理的中间状态数据与数据集,还包括在编解码过程中产生的编码参数数据与数据集,如各种编码模式,多维或三维或二维运动矢量,匹配长度等。
[0009]图像压缩的一个手段是挖掘图像中各层次各方面的数据单元之间的相关性,用通
常称为参考数据单元(也常称为预测数据单元、补偿数据单元、匹配数据单元、被匹配数据单元、预测值、补偿值、参考值等)的数据单元来匹配(也常称为预测、表示、代表、补偿、近似、逼近等)当前数据单元,达到数据的无损或有损压缩的效果。
[0010]运动矢量(Motion Vector简称MV)是图像压缩中的一种重要数据单元。使用已完成至少部分编解码操作的编解码块或子块的运动矢量作为运动矢量预测值来预测一个当前运动矢量(即当前正在编解码中的运动矢量),可有效提高帧间编码的编码效率。运动矢量预测值的可能来源至少包括:1)同帧相邻也称空间相邻(spatial neighboring)编解码块的已完成至少部分编解码操作的一个或多个运动矢量,称为同帧相邻运动矢量,2)前帧相邻也称时间相邻(temporal neighboring)编解码块的已完成至少部分编解码操作的一个或多个运动矢量,称为前帧相邻运动矢量,3)历史最近运动矢量预测值候选集,由在编解码历史过程中按照编解码顺序出现的最近若干个采用帧间编码模式的编解码块的已完成至少部分编解码操作的运动矢量,称之为历史最近运动矢量,组成。
[0011]每个运动矢量通常至少包括一个水平分量和一个垂直分量,还可选地包括一个参考图像索引,表示参考像素取自参考图像队列中哪一帧图像。因此,每个运动矢量都对应了一帧参考图像即参考块或子块及其参考像素所在的图像。
[0012]在现有技术中,仅有一个单一的历史最近运动矢量预测值候选集,并且其中的所有运动矢量,不管其对应的参考图像索引取什么值(表示帧间预测的参考像素在参考图像队列的哪一帧图像中),都不加区别地用于当前运动矢量的预测。因此,历史最近运动矢量预测值候选集实际上无法高效地适应于各种帧间编码的场合,特别是允许当前图像即当前块或子块所在图像用于参考图像即参考块或子块所在图像的场合,影响了编码效率的提升。
[0013]
技术实现思路

[0014]为了解决图像压缩中的这一问题,本专利技术提供了一种使用专用历史最近运动矢量预测候选集的图像压缩方法和装置,一个历史最近运动矢量预测候选集主要用于参考图像是当前图像的场合,另外至少一个历史最近运动矢量预测候选集主要用于参考图像不是当前图像的场合,不同的专用历史最近运动矢量预测候选集适用于帧间编码的不同场合,从而提高编码效率。
[0015]本专利技术的首要技术特征是具有当前图像参考专用历史最近运动矢量预测候选集和非当前图像参考专用历史最近运动矢量预测候选集,分别主要用于参考图像是当前图像和非当前图像的场合。
[0016]本专利技术的编码方法或装置的最基本的特有技术特征是在对当前运动矢量即当前块或子块的运动矢量进行编码时,至少根据参考图像是还是不是当前图像的可能程度,使用当前图像参考专用历史最近运动矢量预测候选集或者非当前图像参考专用历史最近运动矢量预测候选集或者两者的混合作为当前历史最近运动矢量预测候选集,在至少所述当前历史最近运动矢量预测候选集之中,至少根据预定的评价规则,如消耗的比特数的多少
和/或编码误差的大小,选取一个最优的运动矢量作为所述当前运动矢量的预测运动矢量或称运动矢量预测值,产生至少含表示当前运动矢量的运动矢量预测值的部分或全部信息的压缩数据码流。图1是本专利技术的编码方法或装置的一个示意图。
[0017]本专利技术的解码方法或装置的最基本的特有技术特征是解析压缩数据码流,获取至少表示当前运动矢量的运动矢量预测值的部分或全部信息,至少根据参考图像是还是不是当前图像的可能程度,使用当前图像参考专用历史最近运动矢量预测候选集或者非当前图像参考专用历史最近运动矢量预测候选集或者两者的混合作为当前历史最近运动矢量预测候选集,从至少所述当前历史最近运动矢量预测候选集,根据所述当前运动矢量的运动矢量预测值的部分或全部信息,解码获得所述当前运动矢量的运动矢量预测值。图2是本专利技术的解码方法或装置的一个示意图。
[0018]根据本专利技术的一个方面,提供了一种图像压缩的编码方法或装置,至少包括完成下列功能和操作的步骤或模块:在对一个编码块中的一个当前运动矢量进行编码时,至少根据参考图像是还是不是当前图像的可能程度,使用当前图像参考专用历史最近运动矢本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图像压缩的编码方法,其特征在于至少包括下列步骤:1)在对一个编码块中的一个当前运动矢量进行编码时,至少根据参考图像是当前图像或者非当前图像,使用当前图像参考专用历史最近运动矢量预测候选集或者非当前图像参考专用历史最近运动矢量预测候选集或者两者的混合作为当前历史最近运动矢量预测候选集;至少使用下列方式表示参考图像是当前图像还是非当前图像:所述运动矢量所属的当前块或子块有一个对应的编码模式;当所述编码模式是帧内块复制预测模式简称IBC模式时,参考图像是当前图像,在这种情形,运动矢量也称为块矢量即block vector简写为bv;当所述编码模式是帧间预测模式时,参考图像是非当前图像;至少使用下列方案获得所述当前图像参考专用历史最近运动矢量预测候选集和/或所述非当前图像参考专用历史最近运动矢量预测候选集:所述当前图像参考专用历史最近运动矢量预测候选集HmvpIbcCandList={HmvpIbcCandList[i], 0 ≤ i ≤ I1-1}的元素即所存储的块矢量是已完成至少部分编码操作并且至少符合第一类预定规则的编码块或子块的块矢量中又进一步满足第一类选择条件的块矢量,其中I1是HmvpIbcCandList中存储的块矢量的数目,I1小于或等于一个预定的第一最大值;所述非当前图像参考专用历史最近运动矢量预测候选集HmvpCandList={HmvpCandList[i], 0 ≤ i ≤I2-1}的元素即所存储的运动矢量是已完成至少部分编码操作并且至少符合第二类预定规则的编码块或子块的运动矢量中又进一步满足第二类选择条件的运动矢量,其中I2是HmvpCandList中存储的运动矢量的数目,I2小于或等于一个预定的第二最大值;所述第一类预定规则至少包括所述已完成至少部分编码操作的编码块或子块的编码模式是帧内块复制预测模式,所述第一类选择条件至少包括所涉及的运动矢量所表示的参考块或子块在预定的参考范围内;所述第二类预定规则至少包括所述已完成至少部分编码操作的编码块或子块的编码模式是帧间预测模式,所述第二类选择条件至少包括所涉及的运动矢量所表示的参考块或子块在预定的参考范围内;2)从至少所述当前历史最近运动矢量预测候选集,至少根据预定的评价规则,选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值;所述候选列表称为合并候选列表,记为mergeCandList,在参考图像是当前图像的情形,合并候选列表也记为块矢量候选列表bvCandList,所述当前运动矢量的运动矢量预测值的来源之一是合并候选列表;3)产生至少含表示当前运动矢量的运动矢量预测值的部分或全部信息的压缩数据码流。2.一种图像压缩的编码装置,其特征在于至少包括下列模块:1)当前候选集选择模块,在对一个编码块中的一个当前运动矢量进行编码时,至少根据参考图像是当前图像或者非当前图像,使用当前图像参考专用历史最近运动矢量预测候
选集或者非当前图像参考专用历史最近运动矢量预测候选集或者两者的混合作为当前历史最近运动矢量预测候选集;至少使用下列方式表示参考图像是当前图像还是非当前图像:所述运动矢量所属的当前块或子块有一个对应的编码模式;当所述编码模式是帧内块复制预测模式简称IBC模式时,参考图像是当前图像,在这种情形,运动矢量也称为块矢量即block vector简写为bv;当所述编码模式是帧间预测模式时,参考图像是非当前图像;至少使用下列方案获得所述当前图像参考专用历史最近运动矢量预测候选集和/或所述非当前图像参考专用历史最近运动矢量预测候选集:所述当前图像参考专用历史最近运动矢量预测候选集HmvpIbcCandList={HmvpIbcCandList[i], 0 ≤ i ≤ I1-1}的元素即所存储的块矢量是已完成至少部分编码操作并且至少符合第一类预定规则的编码块或子块的块矢量中又进一步满足第一类选择条件的块矢量,其中I1是HmvpIbcCandList中存储的块矢量的数目,I1小于或等于一个预定的第一最大值;所述非当前图像参考专用历史最近运动矢量预测候选集HmvpCandList={HmvpCandList[i], 0 ≤ i ≤I2-1}的元素即所存储的运动矢量是已完成至少部分编码操作并且至少符合第二类预定规则的编码块或子块的运动矢量中又进一步满足第二类选择条件的运动矢量,其中I2是HmvpCandList中存储的运动矢量的数目,I2小于或等于一个预定的第二最大值;所述第一类预定规则至少包括所述已完成至少部分编码操作的编码块或子块的编码模式是帧内块复制预测模式,所述第一类选择条件至少包括所涉及的运动矢量所表示的参考块或子块在预定的参考范围内;所述第二类预定规则至少包括所述已完成至少部分编码操作的编码块或子块的编码模式是帧间预测模式,所述第二类选择条件至少包括所涉及的运动矢量所表示的参考块或子块在预定的参考范围内;2)运动矢量预测值选择模块,从至少所述当前历史最近运动矢量预测候选集,至少根据预定的评价规则,选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值;所述候选列表称为合并候选列表,记为mergeCandList,在参考图像是当前图像的情形,合并候选列表也记为块矢量候选列表bvCandList,所述当前运动矢量的运动矢量预测值的来源之一是合并候选列表;3)压缩数据码流生成模块,产生至少含表示当前运动矢量的运动矢量预测值的部分或全部信息的压缩数据码流。3.一种图像压缩的解码方法,其特征在于至少包括下列步骤:1)在对一个解码块中的一个当前运动矢量进行解码时,解析压缩数据码流,获取至少表示当前运动矢量的运动矢量预测值的部分或全部信息;2)至少根据参考图像是当前图像或者非当前图像,使用当前图像参考专用历史最近运动矢量预测候选集或者非当前图像参考专用历史最近运动矢量预测候选集或者两者的混
合作为当前历史最近运动矢量预测候选集;至少使用下列方式表示参考图像是当前图像还是非当前图像:所述运动矢量所属的当前块或子块有一个对应的编码模式;当所述编码模式是帧内块复制预测模式简称IBC模式时,参考图像是当前图像,在这种情形,运动矢量也称为块矢量即block vector简写为bv;当所述编码模式是帧间预测模式时,参考图像是非当前图像;至少使用下列方案获得所述当前图像参考专用历史最近运动矢量预测候选集和/或所述非当前图像参考专用历史最近运动矢量预测候选集:所述当前图像参考专用历史最近运动矢量预测候选集HmvpIbcCandList={HmvpIbcCandList[i], 0 ≤ i ≤ I1-1}的元素即所存储的块矢量是已完成至少部分解码操作并且至少符合第一类预定规则的解码块或子块的块矢量中又进一步满足第一类选择条件的块矢量,其中I1是HmvpIbcCandList中存储的块矢量的数目,I1小于或等于一个预定的第一最大值;所述非当前图像参考专用历史最近运动矢量预测候选集HmvpCandList={HmvpCandList[i], 0 ≤ i ≤I2-1}的元素即所存储的运动矢量是已完成至少部分解码操作并且至少符合第二类预定规则的解码块或子块的运动矢量中又进一步满足第二类选择条件的运动矢量,其中I2是HmvpCandList中存储的运动矢量的数目,I2小于或等于一个预定的第二最大值;所述第一类预定规则至少包括所述已完成至少部分解码操作的解码块或子块的编码模式是帧内块复制预测模式,所述第一类选择条件至少包括所涉及的运动矢量所表示的参考块或子块在预定的参考范围内;所述第二类预定规则至少包括所述已完成至少部分解码操作的解码块或子块的编码模式是帧间预测模式,所述第二类选择条件至少包括所涉及的运动矢量所表示的参考块或子块在预定的参考范围内;3)从至少所述当前历史最近运动矢量预测候选集,至少根据所述表示当前运动矢量的运动矢量预测值的部分或全部信息,选取预定数目个历史最近运动矢量放入一个用于运动矢量预测的候选列表再从所述候选列表选取一个运动矢量作为所述当前运动矢量的运动矢量预测值,并进而解码获得所述当前运动矢量本身;所述候选列表称为合并候选列表,记为mergeCandList,在参考图像是当前图像的情形,合并候选列表也记为块矢量候选列表bvCandList,所述当前运动矢量的运动矢量预测值的来源之一是合并候选列表。4.一种图像压缩的解码装置,其特征在于至少包括下列模块:1)压缩数据码流解析模块,在对一个解码块中的一个当前运动矢量进行解码时,解析压缩数据码流,获取至少表示当前运动矢量的运动矢量预测值的部分或全部信息;2)当前候选集选择模块,至少根据参考图像是当前图像或者非当前图像,使用当前图像参考专用历史最近运动矢量预测候选集或者非当前图像参考专用历史最近运动矢量预测候选集或者两者的混合作为当前历史最近运动矢量预测候选集;至少使用下列方式表示参考图像是当前图像还是非当前图像:
所述运动矢量所属的当前块或子块有一个对应的编码模式;当所述编码模式是帧内块复制预测模式简称IBC模式时,参考图像是当前图像,在这种情形,运动矢量也称为块矢量即block vector简写为bv;当所述编码模式是帧间预测模式时,参考图像是非当前图像;至少使用下列方案获得所述当前图像参考专用历史最近运动矢量预测候选集和/或所述非当前图像参考专用历史最近运动矢量预测候选集:所述当前图像参考专用历史最近运动矢量预测候选集HmvpIbcCandList={HmvpIbcCandList[i], 0 ≤ i ≤ I1-1}的元素即所存储的块矢量是已完成至少部分解码操作并且至少符合第一类预定规则的解码块或子块的块矢量中又进一步满足第一类选择条件的块矢量,其中I1是HmvpIbcCandList中存储的块矢量的数目,I1小于或等于一个预定的第一最大值;所述非当前图像参考专用历史最近运动矢量预测候选集HmvpCandList={HmvpCandList[i], 0 ≤ i ≤I2-1}的元素即所存储的运动矢量是已完成至少部分解码操作并且至少符合第二类预定规则的解码块或子块的运动矢量中又进一步满足第二类选择条件的运动矢量,其中I2是HmvpCandList中存储的运动矢量的数目,I2小于或等于一个预定的第二最大值;所述第一类预定规则至少包括所述已完成至少部分解码操作的解码块或子块的编码模式是帧内块复制预测模式,所述第一类选择条件至少包括所涉及的运动矢量所表示的参考块或子块在预定的参考范围内;所述第二类预定规则至少包括所述已完成至少部分解码操作的解码块或子块的编码模式是帧间预测模式,所述第二类选择条件至少包括所涉及的运动矢量所表示的参考块或子块在...

【专利技术属性】
技术研发人员:林涛
申请(专利权)人:上海天荷电子信息有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1