CN113225554B - 一种基于神经网络的图像编解码方法、装置、存储介质及终端 - Google Patents
一种基于神经网络的图像编解码方法、装置、存储介质及终端 Download PDFInfo
- Publication number
- CN113225554B CN113225554B CN202110287649.6A CN202110287649A CN113225554B CN 113225554 B CN113225554 B CN 113225554B CN 202110287649 A CN202110287649 A CN 202110287649A CN 113225554 B CN113225554 B CN 113225554B
- Authority
- CN
- China
- Prior art keywords
- target
- sub
- generate
- code rate
- factor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 52
- 238000013139 quantization Methods 0.000 claims abstract description 67
- 238000007781 pre-processing Methods 0.000 claims abstract description 10
- 238000004364 calculation method Methods 0.000 claims description 41
- 238000010586 diagram Methods 0.000 claims description 38
- 230000006870 function Effects 0.000 claims description 33
- 230000003044 adaptive effect Effects 0.000 claims description 15
- 230000008569 process Effects 0.000 claims description 13
- 238000012545 processing Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 238000013507 mapping Methods 0.000 claims description 5
- 230000011218 segmentation Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 6
- 238000003062 neural network model Methods 0.000 description 6
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000013135 deep learning Methods 0.000 description 3
- 230000001174 ascending effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/119—Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T9/00—Image coding
- G06T9/002—Image coding using neural networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
- H04N19/124—Quantisation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Analysis (AREA)
- Image Processing (AREA)
Abstract
本发明公开了一种基于神经网络的图像编解码方法、装置、存储介质及终端,该方法包括:获取并预处理待编码的目标图像,生成多个子块;将多个子块输入编码子网络中,生成特征图;初始化预先设定的拉格朗日因子集合;接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子;将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图;将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。因此,采用本申请实施例,可以拓宽单模型的码率范围,实现单模型可控码率图像编解码,从而极大程度上减小了硬件负载程度。
Description
技术领域
本发明属于数字信号处理领域,用于图像压缩算法。特别涉及一种基于神经网络的图像编解码方法、装置、存储介质及终端。
背景技术
图像编码主要包括帧内预测、帧间预测、变换、量化、熵编码、环路滤波几个部分。基于全神经网络的图像压缩技术是近年来的研究趋势。然而,当前多数深度学习图像压缩方法都存在不足:一个深度网络模型只能对应一个固定的码率,要实现可变码率编码需要训练多个不同码率的模型。这样大大增加了模型参数量和硬件负载压力。
在现有技术中,量化是视频编解码领域中的核心技术之一,其思想是通过将连续信号间隔采样来减少编码成本,但是量化会带来一定的失真。同时,量化是现有技术中常用的实现可变码率编码的技术。然而在深度学习视频编码中,理论证明了不同量化步长的效果是相同的,因此无法简单通过修改量化因子来实现单模型可变码率编码,从而极大程度上增加了编码时硬件负载程度。
因此,如何找到一种有效的方法,实现在单模型中可变码率编码为亟待解决的问题。
发明内容
本申请实施例提供了一种基于神经网络的图像编解码方法、装置、存储介质及终端。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。
第一方面,本申请实施例提供了一种基于神经网络的图像编码方法,应用于编码端,神经网络包括编码子网络、自适应量化子网络,方法包括:
获取并预处理待编码的目标图像,生成多个子块;
将多个子块输入编码子网络中,生成特征图;
初始化预先设定的拉格朗日因子集合;
接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子;
将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图;
将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。
可选的,获取并预处理待编码的目标图像,生成特征图,包括:
获取待编码的目标图像;
将待编码的目标图像切分为N1乘以N2的多个子块;其中,N1与N2为子块的长与宽;
从目标图像中获取切分后剩余部分像素,并将剩余部分像素以0补全至长宽均为64的倍数。
可选的,将多个子块输入编码子网络中,生成特征图,包括:
确定目标卷积参数;
将目标卷积参数与编码子网络中的卷积核进行映射关联,生成关联参数的卷积核;
将多个子块逐一与关联参数的卷积核进行相乘,生成每个子块所对应的特征图。
可选的,基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子,包括:
初始化质量损失计算函数与拉格朗日因子计算函数;
将目标码率输入拉格朗日因子计算函数中进行计算后,生成初始拉格朗日因子;
将初始拉格朗日因子输入质量损失计算函数中进行计算后生成目标码率对应的质量损失值;
基于目标码率对应的质量损失值从拉格朗日因子集合中确定出目标拉格朗日因子。
可选的,基于目标码率对应的质量损失值从拉格朗日因子集合中确定出目标拉格朗日因子,包括:
当所述质量损失值小于预设阈值时,逐一计算所述初始拉格朗日因子与所述拉格朗日因子集合中各因子之间的差值,生成多个差值;
将所述多个差值中的最小值计算过程中所使用的所述拉格朗日因子集合中的拉格朗日因子确定为目标拉格朗日因子。
第二方面,本申请实施例提供一种基于神经网络的图像解码方法,应用于解码端,所述神经网络包括解码子网络,所述方法包括:
将所述目标码率输入所述解码子网络中进行解码,生成重建图像。
第三方面,本申请实施例提供了一种基于神经网络的图像编码装置,应用于编码端,神经网络包括编码子网络、自适应量化子网络,该装置包括:
子块生成模块,用于获取并预处理待编码的目标图像,生成多个子块;
特征图生成模块,用于将多个子块输入编码子网络中,生成特征图;
集合初始化模块,用于初始化预先设定的拉格朗日因子集合;
目标拉格朗日因子确定模块,用于接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子;
特征量化模块,用于将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图;
码流生成模块,用于将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流。
第四方面,本申请实施例提供一种计算机存储介质,计算机存储介质存储有多条指令,指令适于由处理器加载并执行上述的方法步骤。
第五方面,本申请实施例提供一种终端,可包括:处理器和存储器;其中,存储器存储有计算机程序,计算机程序适于由处理器加载并执行上述的方法步骤。
本申请实施例提供的技术方案可以包括以下有益效果:
在本申请实施例中,基于神经网络的图像编码装置首先获取并预处理待编码的目标图像,生成多个子块,然后将多个子块输入编码子网络中,生成特征图,再初始化预先设定的拉格朗日因子集合,其次接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子,再将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图,最后将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。因此,由于本申请通过接收不同的目标码率自动选择拉格朗日因子对图像进行编码,即在一个神经网络模型中实现多个目标码率的编码,因此可以拓宽单模型的码率范围,实现单模型可变码率编码,从而极大程度上减小了硬件负载程度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
图1是本申请实施例提供的一种基于神经网络的图像编解码方法的流程示意图;
图2是本申请实施例提供的一种网络结构示意图与码率监督的自适应量化模块结构示意图;
图3是本申请实施例提供的一种在柯达(kodak)数据集上的率失真性能示意图;
图4是本申请实施例提供的另一种基于神经网络的图像编解码方法的流程示意图;
图5是本申请实施例提供的另一种基于神经网络的图像编解码方法的流程示意图;
图6是本申请实施例提供的一种基于神经网络的图像编码装置的装置示意图;
图7是本申请实施例提供的一种终端的结构示意图。
具体实施方式
以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
在本发明的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。此外,在本发明的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
本申请提供的技术方案中,由于本申请通过接收不同的目标码率自动选择拉格朗日因子对图像进行编码,即在一个神经网络模型中实现多个目标码率的编码,因此可以拓宽单模型的码率范围,实现单模型可变码率编码,从而极大程度上减小了硬件负载程度,下面采用示例性的实施例进行详细说明。
下面将结合附图1-附图5,对本申请实施例提供的基于神经网络的图像编解码方法进行详细介绍。该方法可依赖于计算机程序实现,可运行于基于冯诺依曼体系的基于神经网络的图像编码装置上。该计算机程序可集成在应用中,也可作为独立的工具类应用运行。其中,本申请实施例中的基于神经网络的图像编码装置可以为用户终端,包括但不限于:个人电脑、平板电脑、手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备等。在不同的网络中用户终端可以叫做不同的名称,例如:用户设备、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置、蜂窝电话、无绳电话、个人数字处理(personaldigital assistant,PDA)、5G网络或未来演进网络中的终端设备等。
请参见图1,为本申请实施例提供了一种基于神经网络的图像编码方法的流程示意图,应用于编码端,神经网络包括编码子网络、自适应量化子网络。
如图1所示,本申请实施例的方法可以包括以下步骤:
S101,获取并预处理待编码的目标图像,生成多个子块;
其中,目标图像可以是单张图像,也可以是视频中的图像帧序列。
通常,预处理是将单张图片按照预先设定的长宽高进行块划分。
在一种可能的实现方式中,编码端进行视频的编码操作时,首先获取到待编码的目标图像,待编码的目标图像可以是历史图像或历史视频中的图像帧,也可以是实时通过带有摄像头的采集设备采集的图像,在获取到待编码的目标图像后,然后将待编码的目标图像切分为N1乘以N2的多个子块;其中,N1与N2为子块的长与宽;优选的,N1为2048,N2为1024;最后从目标图像中获取切分后剩余部分像素,并将剩余部分像素以0补全至长宽均为64的倍数。
例如,在获取到图像后,将其切分为2048×1024的子块,多余部分以0补全到长宽均为64的倍数。
S102,将多个子块输入编码子网络中,生成特征图;
其中,编码子网络是将多个子块处理生成特征图的网络结构。
在一种可能的实现方式中,在将多个块生成特征图时,首先确定目标卷积参数,然后将目标卷积参数与编码子网络中的卷积核进行映射关联,生成关联参数的卷积核,最后将多个子块逐一与关联参数的卷积核进行相乘,生成每个子块所对应的特征图。
S103,初始化预先设定的拉格朗日因子集合;
其中,拉格朗日因子集合是用户预先设定于编码端中的参数,拉格朗日因子集合在编码开始前就设定保存在了编码端,拉格朗日因子集合中的拉格朗日因子可以根据实际应用场景自行设定。
通常,在需要从拉格朗日因子集合中选择最优的拉格朗日因子时,需要先对预先设定的拉格朗日因子集合进行初始化操作,初始化后才可以进行选择。
在一种可能的实现方式中,在将目标图像处理成为特征图后,编码端自动初始化预先设定的拉格朗日因子集合。
S104,接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子;
其中,目标码率是用户根据实际场景输入到编码端的码率参数。
在一种可能的实现方式中,在初始化预先设定的拉格朗日因子集合后,系统提示用户可输入码率参数,用户通过命令行的方式再编码端输入目标码率,编码端接收到目标码率时,首先初始化质量损失计算函数与拉格朗日因子计算函数,再将目标码率输入拉格朗日因子计算函数中进行计算后,生成初始拉格朗日因子,然后将初始拉格朗日因子输入质量损失计算函数中进行计算后生成目标码率对应的质量损失值,最后基于目标码率对应的质量损失值从拉格朗日因子集合中确定出目标拉格朗日因子。
具体的,在基于目标码率对应的质量损失值从拉格朗日因子集合中确定出目标拉格朗日因子时,首先当质量损失值小于预设阈值时,逐一计算所述初始拉格朗日因子与所述拉格朗日因子集合中各因子之间的差值,生成多个差值,最后将所述多个差值中的最小值计算过程中所使用的所述拉格朗日因子集合中的拉格朗日因子确定为目标拉格朗日因子。
或者,当质量损失值大于预设阈值时,说明用户输入的码率参数不符合当前场景,编码端提示用户重新输入。
其中,拉格朗日因子计算函数为:λ=3927(e^1.3R-1),其中R为目标码率;质量损失计算函数为:D=1.96log(1+3927/λ);其中,λ为初始拉格朗日因子。
S105,将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图;
在一种可能的实现方式中,在确定出目标拉格朗日因子后,将得到的特征图与目标拉格朗日因子λ一起投入到码率监督的自适应量化网络中,得到λ监督量化的特征,最后将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。
在本申请实施例中,先将待压缩图像输入全神经网络图像编码器得到隐变量,结合提出的拉格朗日因子λ,共同输入到码率监督的自适应量化网络中,得到适应性量化后的特征,最后对量化后的特征进行熵编码得到码流。
需要说明的是,该神经网络编解码器支持单模型多码率。即只需训练一个网络,使用时通过输入目标码率信息并用映射Lambda map将其转化为适应性量化层mask来量化特征,实现多码率编码。
S106,将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。
例如图2所示,图2是本申请提供的网络结构示意图与码率监督的自适应量化模块结构示意图,本申请在神经网络编码中用一个网络模型实现多个目标码率的编码。具体做法是在编码端引入码率监督的自适应量化模块,以表征码率的拉格朗日因子λ作为输入,输出一个量化层mask,与编码网络产生的特征相乘,实现适应性量化。实验结果表明这种像素级的适应性码率监督的量化可以大大拓宽单模型的码率范围,实现单模型可变码率编码。
与其它的全神经网路图像编码器如NIC-0.1相比,本发明可以实现单模型可变码率编码,且率失真性能损失在可接受范围内,如图3所示。可以看到,单模型多码率的编码与多模型的方法质量损失较小,甚至在高码率端还获得了一定的编码增益,且一个模型的参数量只在固定码率模型的基础上增加了0.13%,即8个码率点的总模型的参数量减少了87.48%,极大程度上减小了硬件负载。
与其它的深度学习可变码率图像编码方法相比,本发明不改变编码器和解码器,只在编码端加入了封闭的码率监督的自适应量化模块,对硬件的集成有很大的方便,且不增加用户端的参数量和解码速度。
需要说明的是,本方法在硬件层面未修改编码器和解码器,只在编码端引入了封闭的码率监督的自适应量化,解码端不需要知道编码时所选择的目标码率(λ信息),而编码端只增加了0.13%的参数量和几乎可以忽略的计算复杂度增加(0.0078%)。
进一步地,可根据单模型统计出R-λ模型和D-λ模型,其中R代表目标码率,D代表失真。根据所需的码率或质量,根据模型计算出所需的λ,将之输入到网络中即可得到目标码率或质量的码流和重建的图像,实现方便准确的码率控制。
在本申请实施例中,基于神经网络的图像编码装置首先获取并预处理待编码的目标图像,生成多个子块,然后将多个子块输入编码子网络中,生成特征图,再初始化预先设定的拉格朗日因子集合,其次接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子,再将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图,最后将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。因此,由于本申请通过接收不同的目标码率自动选择拉格朗日因子对图像进行编码,即在一个神经网络模型中实现多个目标码率的编码,因此可以拓宽单模型的码率范围,实现单模型可变码率编码,从而极大程度上减小了硬件负载程度。
请参见图4,为本申请实施例提供了一种基于神经网络的图像编码方法的流程示意图,应用于编码端,神经网络包括编码子网络、自适应量化子网络。
如图4所示,本申请实施例的方法可以包括以下步骤:
S201,获取待编码的目标图像;
S202,将待编码的目标图像切分为N1乘以N2的多个子块;其中,N1与N2为子块的长与宽;
S203,从目标图像中获取切分后剩余部分像素,并将剩余部分像素以0补全至长宽均为64的倍数;
S204,确定目标卷积参数,将目标卷积参数与编码子网络中的卷积核进行映射关联,生成关联参数的卷积核;
S205,将多个子块逐一与关联参数的卷积核进行相乘,生成每个子块所对应的特征图;
S206,初始化预先设定的拉格朗日因子集合;
S207,接收输入的目标码率,初始化质量损失计算函数与拉格朗日因子计算函数;
S208,将目标码率输入拉格朗日因子计算函数中进行计算后,生成初始拉格朗日因子;
S209,将初始拉格朗日因子输入质量损失计算函数中进行计算后生成目标码率对应的质量损失值;
S210,当质量损失值小于预设阈值时,逐一计算初始拉格朗日因子与拉格朗日因子集合中各因子之间的差值,生成多个差值;
S211,将多个差值进行升序排列,生成排序后的多个差值;
S212,从排序后的多个差值中选取起始位置差值;
S213,将起始位置差值计算过程中所使用的拉格朗日因子集合中的拉格朗日因子确定为目标拉格朗日因子;
S214,将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图;
S215,将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。
在本申请实施例中,基于神经网络的图像编码装置首先获取并预处理待编码的目标图像,生成多个子块,然后将多个子块输入编码子网络中,生成特征图,再初始化预先设定的拉格朗日因子集合,其次接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子,再将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图,最后将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。因此,由于本申请通过接收不同的目标码率自动选择拉格朗日因子对图像进行编码,即在一个神经网络模型中实现多个目标码率的编码,因此可以拓宽单模型的码率范围,实现单模型可变码率编码,从而极大程度上减小了硬件负载程度。
请参见图5,为本申请实施例提供了一种基于神经网络的图像解码方法的流程示意图,应用于解码端,神经网络包括解码子网络。如图5所示,本申请实施例的方法可以包括以下步骤:
接收来自编码端发送的目标码率;
将目标码率输入解码子网络中进行解码,生成重建图像。
下述为本发明装置实施例,可以用于执行本发明方法实施例。对于本发明装置实施例中未披露的细节,请参照本发明方法实施例。
请参见图6,其示出了本发明一个示例性实施例提供的基于神经网络的图像编码装置的结构示意图,应用于编码端,神经网络包括编码子网络、自适应量化子网络。该基于神经网络的图像编码装置可以通过软件、硬件或者两者的结合实现成为终端的全部或一部分。该装置1包括子块生成模块10、特征图生成模块20、集合初始化模块30、目标拉格朗日因子确定模块40、特征量化模块50、码流生成模块60。
子块生成模块10,用于获取并预处理待编码的目标图像,生成多个子块;
特征图生成模块20,用于将多个子块输入编码子网络中,生成特征图;
集合初始化模块30,用于初始化预先设定的拉格朗日因子集合;
目标拉格朗日因子确定模块40,用于接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子;
特征量化模块50,用于将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图;
码流生成模块60,用于将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。
需要说明的是,上述实施例提供的基于神经网络的图像编码装置在执行基于神经网络的图像编解码方法时,仅以上述各功能模块的计算进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构计算成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于神经网络的图像编码装置与基于神经网络的图像编解码方法实施例属于同一构思,其体现实现过程详见方法实施例,这里不再赘述。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
在本申请实施例中,基于神经网络的图像编码装置首先获取并预处理待编码的目标图像,生成多个子块,然后将多个子块输入编码子网络中,生成特征图,再初始化预先设定的拉格朗日因子集合,其次接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子,再将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图,最后将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。因此,由于本申请通过接收不同的目标码率自动选择拉格朗日因子对图像进行编码,即在一个神经网络模型中实现多个目标码率的编码,因此可以拓宽单模型的码率范围,实现单模型可变码率编码,从而极大程度上减小了硬件负载程度。
本发明还提供一种计算机可读介质,其上存储有程序指令,该程序指令被处理器执行时实现上述各个方法实施例提供的基于神经网络的图像编解码方法。本发明还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各个方法实施例的基于神经网络的图像编解码方法。
请参见图7,为本申请实施例提供了一种终端的结构示意图。如图7所示,终端1000可以包括:至少一个处理器1001,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。
其中,通信总线1002用于实现这些组件之间的连接通信。
其中,用户接口1003可以包括显示屏(Display)、摄像头(Camera),可选用户接口1003还可以包括标准的有线接口、无线接口。
其中,网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。
其中,处理器1001可以包括一个或者多个处理核心。处理器1001利用各种借口和线路连接整个电子设备1000内的各个部分,通过运行或执行存储在存储器1005内的指令、程序、代码集或指令集,以及调用存储在存储器1005内的数据,执行电子设备1000的各种功能和处理数据。可选的,处理器1001可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable Logic Array,PLA)中的至少一种硬件形式来实现。处理器1001可集成中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示屏所需要显示的内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器1001中,单独通过一块芯片进行实现。
其中,存储器1005可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。可选的,该存储器1005包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。存储器1005可用于存储指令、程序、代码、代码集或指令集。存储器1005可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等;存储数据区可存储上面各个方法实施例中涉及到的数据等。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图7所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及基于神经网络的图像编解码应用程序。
在图7所示的终端1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储的基于神经网络的图像编解码应用程序,并具体执行以下操作:
获取并预处理待编码的目标图像,生成多个子块;
将多个子块输入编码子网络中,生成特征图;
初始化预先设定的拉格朗日因子集合;
接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子;
将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图;
将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。
在一个实施例中,处理器1001在执行获取并预处理待编码的目标图像,生成特征图时,具体执行以下操作:
获取待编码的目标图像;
将待编码的目标图像切分为N1乘以N2的多个子块;其中,N1与N2为子块的长与宽;优选的,N1为2048,N2为1024;
从目标图像中获取切分后剩余部分像素,并将剩余部分像素以0补全至长宽均为64的倍数。
在一个实施例中,处理器1001在执行将多个子块输入编码子网络中,生成特征图时,具体执行以下操作:
确定目标卷积参数;
将目标卷积参数与编码子网络中的卷积核进行映射关联,生成关联参数的卷积核;
将多个子块逐一与关联参数的卷积核进行相乘,生成每个子块所对应的特征图。
在一个实施例中,处理器1001在执行基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子时,具体执行以下操作:
初始化质量损失计算函数与拉格朗日因子计算函数;
将目标码率输入拉格朗日因子计算函数中进行计算后,生成初始拉格朗日因子;
将初始拉格朗日因子输入质量损失计算函数中进行计算后生成目标码率对应的质量损失值;
基于目标码率对应的质量损失值从拉格朗日因子集合中确定出目标拉格朗日因子。
在一个实施例中,处理器1001在执行基于目标码率对应的质量损失值从拉格朗日因子集合中确定出目标拉格朗日因子时,具体执行以下操作:
当质量损失值小于预设阈值时,逐一计算初始拉格朗日因子与拉格朗日因子集合中各因子之间的差值,生成多个差值;
将多个差值进行升序排列,生成排序后的多个差值;
从排序后的多个差值中选取起始位置差值;
将起始位置差值计算过程中所使用的拉格朗日因子集合中的拉格朗日因子确定为目标拉格朗日因子。
在本申请实施例中,基于神经网络的图像编码装置首先获取并预处理待编码的目标图像,生成多个子块,然后将多个子块输入编码子网络中,生成特征图,再初始化预先设定的拉格朗日因子集合,其次接收输入的目标码率,并基于目标码率从拉格朗日因子集合中确定出目标拉格朗日因子,再将特征图与目标拉格朗日因子输入自适应量化子网络中,生成监督量化后的特征图,最后将监督量化后的特征图输入高斯编码器中熵编码后生成目标码流,并将目标码率发送至解码端。因此,由于本申请通过接收不同的目标码率自动选择拉格朗日因子对图像进行编码,即在一个神经网络模型中实现多个目标码率的编码,因此可以拓宽单模型的码率范围,实现单模型可变码率编码,从而极大程度上减小了硬件负载程度。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,基于神经网络的图像编解码的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,的存储介质可为磁碟、光盘、只读存储记忆体或随机存储记忆体等。
以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。
Claims (10)
1.一种基于神经网络的图像编码方法,应用于编码端,其特征在于,所述神经网络包括编码子网络、自适应量化子网络,所述方法包括:
获取并预处理待编码的目标图像,生成多个子块;
将所述多个子块输入所述编码子网络中,生成特征图;
初始化预先设定的拉格朗日因子集合;
接收输入的目标码率,并基于所述目标码率从所述拉格朗日因子集合中确定出目标拉格朗日因子;
将所述特征图与所述目标拉格朗日因子输入所述自适应量化子网络中,生成监督量化后的特征图;
将所述监督量化后的特征图输入高斯编码器中熵编码后生成目标码流。
2.根据权利要求1所述的方法,其特征在于,所述获取并预处理待编码的目标图像,生成特征图,包括:
获取待编码的目标图像;
将所述待编码的目标图像切分为N1乘以N2的多个子块;其中,所述N1与N2为所述子块的长与宽;
从所述目标图像中获取所述切分后剩余部分像素,并将所述剩余部分像素以0补全至长宽均为64的倍数。
3.根据权利要求1所述的方法,其特征在于,所述将所述多个子块输入所述编码子网络中,生成特征图,包括:
确定目标卷积参数;
将所述目标卷积参数与所述编码子网络中的卷积核进行映射关联,生成关联参数的卷积核;
将所述多个子块逐一与所述关联参数的卷积核进行相乘,生成每个子块所对应的特征图。
4.根据权利要求1所述的方法,其特征在于,所述基于所述目标码率从所述拉格朗日因子集合中确定出目标拉格朗日因子,包括:
初始化质量损失计算函数与拉格朗日因子计算函数;
将所述目标码率输入所述拉格朗日因子计算函数中进行计算后,生成初始拉格朗日因子;
将所述初始拉格朗日因子输入所述质量损失计算函数中进行计算后生成目标码率对应的质量损失值;
基于所述目标码率对应的质量损失值从所述拉格朗日因子集合中确定出目标拉格朗日因子。
5.根据权利要求4所述的方法,其特征在于,所述基于所述目标码率对应的质量损失值从所述拉格朗日因子集合中确定出目标拉格朗日因子,包括:
当所述质量损失值小于预设阈值时,逐一计算所述初始拉格朗日因子与所述拉格朗日因子集合中各因子之间的差值,生成多个差值;
将所述多个差值中的最小值计算过程中所使用的所述拉格朗日因子集合中的拉格朗日因子确定为目标拉格朗日因子。
7.一种基于神经网络的图像解码方法,应用于解码端,所述神经网络包括解码子网络,其特征在于,所述方法包括:
将由如权利要求1所述的图像编码方法生成的目标码流输入所述解码子网络中进行解码,生成重建图像。
8.一种基于神经网络的图像编码装置,应用于编码端,其特征在于,所述神经网络包括编码子网络、自适应量化子网络,所述装置包括:
子块生成模块,用于获取并预处理待编码的目标图像,生成多个子块;
特征图生成模块,用于将所述多个子块输入所述编码子网络中,生成特征图;
集合初始化模块,用于初始化预先设定的拉格朗日因子集合;
目标拉格朗日因子确定模块,用于接收输入的目标码率,并基于所述目标码率从所述拉格朗日因子集合中确定出目标拉格朗日因子;
特征量化模块,用于将所述特征图与所述目标拉格朗日因子输入所述自适应量化子网络中,生成监督量化后的特征图;
码流生成模块,用于将所述监督量化后的特征图输入高斯编码器中熵编码后生成目标码流。
9.一种计算机存储介质,其特征在于,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行如权利要求1-7任意一项的方法步骤。
10.一种终端,其特征在于,包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行如权利要求1-7任意一项的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287649.6A CN113225554B (zh) | 2021-03-17 | 2021-03-17 | 一种基于神经网络的图像编解码方法、装置、存储介质及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110287649.6A CN113225554B (zh) | 2021-03-17 | 2021-03-17 | 一种基于神经网络的图像编解码方法、装置、存储介质及终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113225554A CN113225554A (zh) | 2021-08-06 |
CN113225554B true CN113225554B (zh) | 2022-08-16 |
Family
ID=77083823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110287649.6A Active CN113225554B (zh) | 2021-03-17 | 2021-03-17 | 一种基于神经网络的图像编解码方法、装置、存储介质及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113225554B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113766237A (zh) * | 2021-09-30 | 2021-12-07 | 咪咕文化科技有限公司 | 一种编码方法、解码方法、装置、设备及可读存储介质 |
WO2023241690A1 (en) * | 2022-06-16 | 2023-12-21 | Douyin Vision (Beijing) Co., Ltd. | Variable-rate neural network based compression |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107277520A (zh) * | 2017-07-11 | 2017-10-20 | 中国科学技术大学 | 帧内预测的码率控制方法 |
CN109309834A (zh) * | 2018-11-21 | 2019-02-05 | 北京航空航天大学 | 基于卷积神经网络和hevc压缩域显著信息的视频压缩方法 |
CN112437301A (zh) * | 2020-10-13 | 2021-03-02 | 北京大学 | 一种面向视觉分析的码率控制方法、装置、存储介质及终端 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10721471B2 (en) * | 2017-10-26 | 2020-07-21 | Intel Corporation | Deep learning based quantization parameter estimation for video encoding |
-
2021
- 2021-03-17 CN CN202110287649.6A patent/CN113225554B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107277520A (zh) * | 2017-07-11 | 2017-10-20 | 中国科学技术大学 | 帧内预测的码率控制方法 |
CN109309834A (zh) * | 2018-11-21 | 2019-02-05 | 北京航空航天大学 | 基于卷积神经网络和hevc压缩域显著信息的视频压缩方法 |
CN112437301A (zh) * | 2020-10-13 | 2021-03-02 | 北京大学 | 一种面向视觉分析的码率控制方法、装置、存储介质及终端 |
Non-Patent Citations (2)
Title |
---|
End-to-End Learnt Image Compression via Non-Local Attention Optimization and Improved Context Modeling;Tong Chen 等;《IEEE TRANSACTIONS ON IMAGE PROCESSING》;20210219;第30卷;文献3181-3182、3185页 * |
基于HEVC的低复杂度与强网络适应性编码技术研究;丰泽琪;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20200315(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113225554A (zh) | 2021-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111066326B (zh) | 机器学习视频处理系统和方法 | |
EP3861755B1 (en) | Techniques and apparatus for weighted-median prediction for point-cloud attribute coding | |
US11568571B2 (en) | Techniques and apparatus for lossless lifting for attribute coding | |
CN111669587B (zh) | 一种视频图像的拟态压缩方法、装置、存储介质及终端 | |
US20240048704A1 (en) | Video coding method and apparatus | |
CN111986278B (zh) | 图像编码装置、概率模型生成装置和图像压缩系统 | |
CN113225554B (zh) | 一种基于神经网络的图像编解码方法、装置、存储介质及终端 | |
US11983906B2 (en) | Systems and methods for image compression at multiple, different bitrates | |
CN110677651A (zh) | 一种视频压缩方法 | |
CN110753225A (zh) | 一种视频压缩方法、装置及终端设备 | |
US20230216521A1 (en) | Method and Apparatus for Neural Network Model Compression/Decompression | |
CN111464815A (zh) | 一种基于神经网络的视频编码方法及系统 | |
US20210217137A1 (en) | Techniques and apparatus for coarse granularity scalable lifting for point-cloud attribute coding | |
CN111432213A (zh) | 用于视频和图像压缩的自适应贴片数据大小编码 | |
CN115983349A (zh) | 卷积神经网络的量化方法及装置、电子设备和存储介质 | |
CN110730347A (zh) | 图像压缩方法、装置及电子设备 | |
CN113115019B (zh) | 视频编解码方法、装置、计算机设备及存储介质 | |
CN115442617A (zh) | 一种基于视频编码的视频处理方法和装置 | |
CN114125443A (zh) | 视频码率控制方法、装置和电子设备 | |
JP2005124001A (ja) | 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号装置、動画像復号方法、及び動画像復号プログラム | |
CN110717948A (zh) | 一种图像后处理方法、系统及终端设备 | |
CN111885378B (zh) | 多媒体数据编码方法、装置、设备以及介质 | |
CN115396672B (zh) | 比特流存储方法、装置、电子设备和计算机可读介质 | |
JP3420389B2 (ja) | 画像符号化方法及びその装置 | |
CN116405683A (zh) | 基于3d-hevc深度图模式预测的深度图编码方法、装置及可读介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |