一种图像编码方法、图像解压方法以及装置制造方法及图纸

技术编号:34838378 阅读:29 留言:0更新日期:2022-09-08 07:34
本申请提供了人工智能领域中涉及计算机视觉的一种图像编码方法、图像解压方法以及装置,用于结合自回归模型和自编码模型的输出进行编码,降低所需模型的大小,提高编解码效率。该图像编码方法包括:将输入图像作为自回归模型的输入,输出第一图像;获取第一图像和输入图像之间的残差,得到第一残差图像;并且,还将输入图像作为自编码模型的输入,输出隐变量和第一残差分布,隐变量包括从输入图像中提取到的特征,第一残差分布包括自编码模型输出的输入图像中各个像素点对应的残差值;对第一残差图像和第一残差分布进行编码,得到残差编码数据;对隐变量进行编码,得到隐变量编码数据,隐变量编码数据和残差编码数据用于解压后得到输入图像。输入图像。输入图像。

【技术实现步骤摘要】
一种图像编码方法、图像解压方法以及装置


[0001]本申请涉及图像处理领域,尤其涉及一种图像编码方法、图像解压方法以及装置。

技术介绍

[0002]图像在各个领域使用广泛,在大量场景中都可能涉及到图像的传输或保存等。且随着图像的分辨率越高,在保存图像时所需要的存储空间消耗也就越多,在传输图像时所需的带宽也就越高,传输效率也就越低。因此,通常,为了便于图像的传输或者保存,可以对图像进行压缩,从而降低图像所占的比特数量,进而减少保存图像所需的存储空间以及传输图像所需的带宽。
[0003]例如,在一些常用的图像压缩方式中,可以采用熵编码的方式来进行图像压缩,如常用的熵编码算法有霍夫曼编码,算术编码,ANS编码等来进行图像压缩。然而,多种熵编码方式的压缩率均已达到最优,很难再进一步提高压缩率。因此,如何提高编解码效率,成为亟待解决的问题。

技术实现思路

[0004]本申请提供一种图像编码方法、图像解压方法以及装置,用于结合自回归模型和自编码模型的输出进行编码,降低所需模型的大小,提高编解码效率。
[0005]有鉴于此,第一方面,本申请提供一种图像编码方法,包括:将输入图像作为自回归模型的输入,输出第一图像;获取第一图像和输入图像之间的残差,得到第一残差图像;将输入图像作为自编码模型的输入,输出隐变量和第一残差分布,隐变量包括从输入图像中提取到的特征,第一残差分布包括自编码模型预测的用于表示输入图像中各个像素点和第一残差图像中各个像素点对应的残差值;对第一残差图像和第一残差分布进行编码,得到残差编码数据;对隐变量进行编码,得到隐变量编码数据,隐变量编码数据和残差编码数据用于解压后得到输入图像。
[0006]因此,本申请中,结合了自回归模型与自编码模型的输出结果进行编码,可以将自编码与自回归模型都控制到很小,避免了自编码模型的网络过大造成的推理时间过长的问题,实现高效的图像压缩。并且,本申请提供的方法中,全流程均可基于AI芯片的AI无损压缩实现,包括AI模型及熵编码,避免了系统内存与AI芯片内存的传输问题,提高编码效率。
[0007]在一种可能的实施方式中,前述的对第一残差图像和第一残差分布进行编码,得到残差编码数据,包括:将第一残差图像和第一残差分布作为半动态熵编码器的输入,输出残差编码数据,该半动态熵编码器用于使用第一预设类型的编码运算进行熵编码,第一预设类型的编码运算包括加、减或位运算,且半动态熵编码器中不包括第二预设类型的编码运算,第二预设类型包括乘、除或取余运算中的至少一种,即该半动态熵编码器中不包括乘、除或取余运算等耗时较长运算,即该半动态熵编码器中可以仅包括简单的加减运算,从而可以实现高效编码。
[0008]因此,本申请实施方式中,可以对残差图像进行半动态熵编码,以有限种分布方式
进行编码,相对于动态熵编码减少了乘、除以及取余运算等耗时较多的运损,大大提高了编码效率。
[0009]在一种可能的实施方式中,该半动态熵编码器可以是对动态上编码器进行转换得到。具体地,可以对动态熵编码器的运算进行近似处理,如将动态熵编码器的运算替换为近似运算,减少或者去除乘、除、取余等运算,随后还可以进行变换处理,对运算进行变换,从而将所有耗时超过一定时长的运算(如剩余的取余、乘以及除等运损)转化为表格存取,及加、减、位等轻量级运算,得到本申请提供的半动态熵编码器。可以理解为,该半动态熵编码器可以是对动态熵编码器中的一些运算进行替换或者转换得到的熵编码器,使用该半动态熵编码器进行熵编码时,即可使用简单的运算,如加、减、位运算等高效编码的运算,从而实现高效编码。
[0010]在一种可能的实施方式中,前述的对隐变量进行编码,得到残差编码数据,可以包括:将隐变量作为静态熵编码器的输入,得到隐变量编码数据。
[0011]因此,本申请实施方式中,可以对从输入图像中提取到的特征进行静态熵编码,可以高效地实现编码。
[0012]在一种可能的实施方式中,自编码模型可以包括编码模型和解码模型,将输入图像作为自编码模型的输入,输出隐变量和第一残差分布,包括:将输入图像作为编码模型的输入,输出隐变量,编码模型用于从输入图形中提取特征;将隐变量作为解码模型的输入,得到第一残差分布,解码模型用于预测输入的图像与对应的像素分布之间的残差值。
[0013]本申请实施方式中,可以利用训练好的自编码模型来从输入图像中提取重要特征,并预测对应的残差图像,以便于结合自回归模型的输出,得到能表示输入图像中的数据的残差编码数据。
[0014]在一种可能的实施方式中,自回归模型用于使用已预测的像素点的像素值预测处于同一连线上的像素点的值,以使后续解码过程中,针对同一连线上的像素点,无需等待其他像素点解码后才能对当前像素点进行解码,实现同一连线上的像素点的解码效率,提高针对输入图像的解码效率。
[0015]第二方面,本申请提供一种图像解压方法,包括:获取隐变量编码数据和残差编码数据,该隐变量编码数据包括编码端从输入图像中提取到的特征进行编码得到,该残差编码数据包括自回归模型前向传播输出的图像和该输入图像之间的残差进行编码得到;对隐变量编码数据进行解码,得到隐变量,该隐变量包括编码端从输入图像中提取到的特征;将隐变量作为自编码模型的输入,输出第二残差分布;结合第二残差分布和残差编码数据进行解码,得到第二残差图像;将第二残差图像作为自回归模型的反向传播的输入,输出解压图像。
[0016]因此,本申请实施方式,自编码模型通常拟合能力较差,需要用较深的网络才能达到较好的压缩率,而本申请结合了自回归模型的输出结果,从而可以降低自编码模型的大小。因此,本申请中,结合了自回归模型与自编码模型进行解码,可以将自编码与自回归模型都控制到很小,避免了自编码模型的网络过大造成的推理时间过长的问题,实现高效的图像解压。并且,本申请提供的方法中,全流程均可基于AI芯片的AI无损压缩实现,包括AI模型及熵编码,避免了系统内存与AI芯片内存的传输问题,提高编码效率。
[0017]在一种可能的实施方式中,前述的对隐变量编码数据进行解码,得到隐变量,包
括:将隐变量编码数据作为静态熵编码器的输入,输出隐变量。其中,该解码可以理解为编码端进行静态熵编码的逆运算,从而无损恢复得到图像中的重要特征。
[0018]在一种可能的实施方式中,前述的结合第二残差分布和残差编码数据进行解码,得到第二残差图像,包括:将第二残差分布和残差编码数据作为半动态熵编码器的输入,输出第二残差图像,该半动态熵编码器用于使用第一预设类型的编码运算进行熵编码,第一预设类型的编码运算包括加、减或位运算,且半动态熵编码器中不包括第二预设类型的编码运算,第二预设类型包括乘、除或取余运算中的至少一种,即该半动态熵编码器中不包括乘、除或取余运算等耗时较长运算,即该半动态熵编码器中可以仅包括简单的加减运算,从而可以实现高效编码。因此,可以对残差图像基于半动态熵编码进行解码,以有限种分布方式进行解码,相对于动态熵编码减少了乘、除以及取余运算等耗时本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图像编码方法,其特征在于,包括:将输入图像作为自回归模型的输入,输出第一图像;获取所述第一图像和所述输入图像之间的残差,得到第一残差图像;将所述输入图像作为自编码模型的输入,输出隐变量和第一残差分布,所述隐变量包括从所述输入图像中提取到的特征,所述第一残差分布包括所述自编码模型输出的用于表示所述输入图像中各个像素点和所述第一残差图像中对应的各个像素点之间的残差值;对所述第一残差图像和所述第一残差分布进行编码,得到残差编码数据;对所述隐变量进行编码,得到隐变量编码数据,所述隐变量编码数据和所述残差编码数据用于解压后得到所述输入图像。2.根据权利要求1所述的方法,其特征在于,所述对所述第一残差图像和所述第一残差分布进行编码,得到残差编码数据,包括:将所述第一残差图像和所述第一残差分布作为半动态熵编码器的输入,输出所述残差编码数据,所述半动态熵编码器用于使用第一预设类型的编码运算进行熵编码,所述第一预设类型的编码运算包括加、减或位运算,且所述半动态熵编码器中不包括第二预设类型的编码运算,所述第二预设类型包括乘、除或取余运算中的至少一种。3.根据权利要求1所述的方法,其特征在于,所述对所述隐变量进行编码,得到残差编码数据,包括:将所述隐变量作为静态熵编码器的输入,得到所述隐变量编码数据。4.根据权利要求1

3中任一项所述的方法,其特征在于,所述自编码模型包括编码模型和解码模型,所述将所述输入图像作为自编码模型的输入,输出隐变量和第一残差分布,包括:将所述输入图像作为所述编码模型的输入,输出所述隐变量,所述编码模型用于从所述输入图形中提取特征;将所述隐变量作为所述解码模型的输入,得到所述第一残差分布,所述解码模型用于预测输入的图像与对应的像素分布之间的残差值。5.根据权利要求1

4中任一项所述的方法,其特征在于,所述自回归模型用于使用已预测的像素点的像素值预测处于同一连线上的像素点的值。6.一种图像解压方法,其特征在于,包括:获取隐变量编码数据和残差编码数据,所述隐变量编码数据为编码端从输入图像中提取到的特征进行编码得到,所述残差编码数据包括对所述输入图像与自回归模型前向传播输出的图像之间的残差进行编码得到的数据;对所述隐变量编码数据进行解码,得到隐变量,所述隐变量包括所述输入图像中提取的特征;将所述隐变量作为自编码模型的输入,输出第二残差分布;结合所述第二残差分布和所述残差编码数据进行解码,得到第二残差图像;将所述第二残差图像作为自回归模型的反向传播的输入,输出解压图像。7.根据权利要求6所述的方法,其特征在于,所述对所述隐变量编码数据进行解码,得到隐变量,包括:将所述隐变量编码数据作为静态熵编码器的输入,输出所述隐变量。
8.根据权利要求6或7所述的方法,其特征在于,所述结合所述第二残差分布和所述残差编码数据进行解码,得到第二残差图像,包括:将所述第二残差分布和所述残差编码数据作为半动态熵编码器的输入,输出所述第二残差图像,所述半动态熵编码器用于使用第一预设类型的编码运算进行熵编码,所述第一预设类型的编码运算包括加、减或位运算,且所述半动态熵编码器中不包括第二预设类型的编码运算,所述第二预设类型包括乘、除或取余运算中的至少一种。9.根据权利要求6

8中任一项所述的方法,其特征在于,所述将所述第二残差图像作为自回归模型的反向传播的输入,输出解压图像,包括:通过所述自回归模型,对所述第二残差图像中处于同一连线上的像素点进行并行解码,得到所述解压图像。10.一种图像编码装置,其特征在于,包括:自回归模块,用于将输入图像作为自回归模型的输入,输出第一图像,所述自回归模型;残差计算模块,用于获取所述第一图像和所述输入图像之间的残差,得到第一残差图像;自编码模块,用于将所述输入图像作为自编码模型的输入,输出隐变量和第一残差分布,所述隐变量包括从所述输入图像中提取到的特征,所述第一残差分布包括所述自编码模型输出的用于表示所述输入图像中各个像素点和所述第一残差图像中对应的各个像素点之间的残差值;残差编码模块,...

【专利技术属性】
技术研发人员:康宁仇善召张鸣天张世枫李震国
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

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

1