一种基于知识蒸馏的图像压缩质量增强方法

文档序号:25352886发布日期:2021-06-08 14:00阅读:163来源:国知局
1.本发明涉及图像压缩
技术领域
:,尤其涉及一种基于知识蒸馏的图像压缩质量增强方法。
背景技术
::2.目前,在压缩效率上最先进的混合框架图像编码方法是bpg(betterportablegraphics,更好的便携式图形),它同时也是基于视频编码标准h.265的帧内编码改造而来。拥有更先进的帧内编码的新一代视频编码标准h.266相比h.265在同样的质量下节省了30%以上的码率。经过几十年的不断发展,混合框架图像编码在压缩效率不断增长的同时,系统复杂度变得越来越高,单个技术的性能变得越来越小,已在一定程度上趋于饱和。所有这些方法,主要地,使用均方误差作为优化的目标。目前,随着图像编码的应用越来越广,对于图像编码的要求越来越高,以均方误差作为优化目标已经难以满足各种不同场合下的需求,所以需要考虑其他优化目标,例如,图像的主观质量、图像的分类效果等,满足人眼视觉和机器视觉等的需求。但是将其他优化目标整合进传统混合框架图像编码中并不容易,这是因为传统混合框架图像编码主要地面向均方误差进行优化,其中的技术有很多都难以改编为面向其他目标优化。虽然有一些将非均方误差的指标集成进传统混合框架图像编码中的尝试,不过这些尝试均为人工设计,性能不高。因此,如何改造混合框架图像编码,使之面向不同于均方误差的优化目标,是一个难题。3.近年来,一系列研究工作试图构建基于深度神经网络的图像编码框架。这些工作提出了端到端深度学习图像编码模型,模型联合优化了变换、量化、熵编码等多个模块。端到端深度学习图像编码模型,相对于传统的图像编码具有许多优势,其中优势之一是可以较为简单地通过调整训练网络时的损失函数,来优化各种不同的评价指标。例如,在ms‑ssim(多尺度结构相似性)这一指标上,以此作为损失函数的端到端深度学习图像编码相对于bpg节省了50%的码率。但是,端到端深度学习图像编码的解码器也是基于深度神经网络的,解码复杂度相比混合框架图像编码高得多,因此它目前还很难应用在现实场景。技术实现要素:4.本发明的目的是提供一种基于知识蒸馏的图像压缩质量增强方法,用于改造图像编码,使之面向非均方误差的指标进行优化。5.本发明的目的是通过以下技术方案实现的:6.一种基于知识蒸馏的图像压缩质量增强方法,包括:7.使用目标编码器的原有优化目标a与期望的优化目标b各自对辅助编码器进行优化,获得优化后的两个辅助编码器;8.利用优化后的两个辅助编码器各自对同一图像进行编码,获得图像的两种码率分配结果;9.使用两种码率分配结果,对目标编码器的编码参数进行调整;10.利用编码参数调整后的目标编码器对图像进行编码。11.由上述本发明提供的技术方案可以看出,基于知识蒸馏的图像压缩质量增强方法既可以有效对混合框架图像编码面向非均方误差的指标进行优化,又无需修改其解码器。附图说明12.为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。13.图1为本发明实施例提供的一种基于知识蒸馏的图像压缩质量增强方法的流程图。具体实施方式14.下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明的保护范围。15.本发明实施例提供一种基于知识蒸馏的图像压缩质量增强方法,如图1所示,其主要包括如下步骤:16.步骤1、使用目标编码器的原有优化目标a与期望的优化目标b各自对辅助编码器进行优化,获得优化后的两个辅助编码器。17.本发明实施例中,辅助编码器是一种可以较为容易地面向不同优化目标进行优化的图像编码器,例如,可以是端到端深度学习的图像编码器。18.示例性的:原有优化目标a可以为均方误差(mse),期望的优化目标b可以为多尺度结构相似性(ms‑ssim)。19.本步骤的优选实施方式如下:20.1)选择一种端到端深度学习图像编码器作为辅助编码器。示例性地,可以使用现有文献提出的方法作为端到端深度学习图像编码方案。21.2)使用目标编码器原本的优化目标对辅助编码器进行训练,得到第一个模型。示例性地,目标编码器为h.266参考软件(称作vtm)中默认配置的帧内编码器,其原本优化目标为mse,则此处是用mse对辅助编码器进行训练。22.3)使用期望得到的优化目标,对辅助编码器进行训练,得到第二个模型。示例性地,使用ms‑ssim对辅助编码器进行训练。23.步骤2、利用优化后的两个辅助编码器各自对同一图像进行编码,获得图像的两种码率分配结果。24.本发明实施例中,可以在编码后通过计算隐变量的熵得到码率分配结果,令表示任一辅助编码器编码后的隐变量,表示相应的先验超参,c表示相应的隐变量通道数目,i为通道索引,m表示码率分配结果,则码率分配结果计算公式为:[0025][0026]本领域技术人员将可以理解,隐变量是通过深度学习网络变换得到,深度学习图像编码就是通过对隐变量进行编码实现的,可以通过估计隐变量的码率分布得到深度学习图像编码编码图像的码率分布,上面提供的式子是用信息熵来计算隐变量的码率分布,是深度学习图像编码码率估计通用的方法。概率值中左侧的下标指对隐变量值分布的估计,右侧的为隐变量值的实际分布,如果概率越大估计的越准,需要的码率越少,反之亦然。[0027]如之前步骤1所提供的示例,以mse作为优化目标的辅助编码器和以ms‑ssim作为优化目标的辅助编码器对图像进行编码后,通过上述公式各自计算出码率分配结果m。[0028]步骤3、使用两种码率分配结果,对目标编码器的编码参数进行调整。[0029]本发明实施例中,可以使用得到的两种码率分配结果指导目标编码器的码率分配,具体可通过调整编码参数实现。[0030]本步骤的优选实施方式如下:[0031]1)将两种码率分配结果进行归一化,消除码率绝对值大小的影响。[0032]2)利用两个归一化后的码率分配结果,得到目标编码器的编码参数。示例性地,可以使用码率分配指导h.266帧内编码每个编码块的量化步长实现码率分配。调整方法可以是先用不同量化步长编码一组图像,得到量化步长与码率的关系,之后就可以通过两个归一化后的码率分配的比值估计码率,从而得到所需的量化步长。[0033]步骤4、利用编码参数调整后的目标编码器对图像进行编码。[0034]目标编码器读入步骤3中的编码参数后编码图像;示例性地,对于h.266帧内编码的每个编码树单元,取此位置量化步长的均值作为量化步长编码图像。[0035]本发明实施例上述方案中,目标编码器是需要针对指标进行优化的传统混合框架图像编码器(例如,前文提到的h.266帧内编码器);辅助编码器是深度学习图像编码器,易于通过改变损失函数进行优化。通过前述步骤1与步骤2,使得辅助编码器能够提供“蒸馏”的“知识”给目标编码器,从而既可以有效对目标编码器面向非均方误差的指标进行优化,又无需修改其解码器。[0036]为了说明本发明的性能,还对上述实施例提供的方案进行了相关测试。[0037]测试条件:[0038]1)实施细节:使用四个不同的λ值(4,8,16,32)训练mse优化的多个码率点的模型。另外用四个不同的λ值(0.08,0.32,0.64,1.28)训练ms‑ssim优化的多个码率点的模型,以与上面的模型码率对齐。[0039]2)测试序列:kodak24张图像。[0040]3)评价指标:psnr(峰值信噪比)和ms‑ssim用于衡量重建图像的质量,用bd‑rate衡量码率节省量。[0041]测试结果:表1展示了本发明实施例1方案、h.266参考软件vtm10.0在kodak24张图像的编码结果。[0042][0043][0044]表1测试的编码结果(表中数字越小越好,如为负数则是负数绝对值越大越好)[0045]测试中,vtm10.0使用了提升主观质量的perceptqpa模式进行编码。perceptqpa和本发明提出的方法都和默认条件(即面向mse优化)的vtm10.0进行比较。可以看出,本发明方案的编码性能超过perceptqpa模式;具体地,在和perceptqpa模式比较时,本发明的方案在psnr上减少1.11%,ms‑ssim上减少1.46%。[0046]最后用一块nvidia1080tigpu测试本发明方案的模型运行速度。对于一个768x512的图像,平均得到量化步长图的时间为4s,远少于vtm10.0编码相同大小图像的时间。[0047]通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例可以通过软件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,上述实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd‑rom,u盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明实施例所述的方法。[0048]以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本发明披露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。当前第1页1 2 3 当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1