一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于演化计算的JPEG图像编码优化方法与流程

2022-02-25 21:57:18 来源:中国专利 TAG:

一种基于演化计算的jpeg图像编码优化方法
技术领域
1.本发明涉及演化计算和jpeg编码优化技术领域,具体是一种基于演化计算的jpeg图像编码优化方法。


背景技术:

2.随着智能手机的普及,生活和工作中的数字图像数据量急剧增大,这些海量的图像数据给磁盘存储和网络传输带来了极大的挑战,图像压缩编码技术能够在保证图像质量的前提下减少图像数据量,目前图像压缩编码技术用的最多的还是jpeg标准,jpeg标准在图像应用领域仍然处于主导地位,所以对jpeg进行编码效率的优化,具有广阔的经济价值和应用前景。
3.在实际编码应用中,用户的需求并不明确,或者需求存在多样性,例如智能手机在拍摄一张图片时,既需要生成面向本地存储的高质量版本,又需要生成面向网络传输的低质量版本,针对这种应用场景,就需要同时生成不同码率的图像,在此过程中就会产生失真,为此,现提供一种基于演化计算的jpeg图像编码优化方法。


技术实现要素:

4.本发明的目的在于提供一种基于演化计算的jpeg图像编码优化方法。
5.本发明的目的可以通过以下技术方案实现:一种基于演化计算的jpeg图像编码优化方法,包括:
6.将图像转化为ycbcr模式,其中y为亮度分量,而cb和cr则为两个色度分量,然后对三个分量进行独立处理,从而获得离散余弦块,并对离散余弦块进行量化处理,将量化处理后的离散余弦块通过z型扫描得到一维符号串,并对一维符号串进行游程编码,进而得到最终的二进制码流,完成编码流程;
7.在量化过程中,用不同的量化表可以得到码率不同的压缩图像,利用多目标优化的方法求解编码效率最高的量化表,过程包括:
8.步骤一:对默认量化表进行初始化,从而对默认量化表的mse和码率进行优化;
9.步骤二:基于率失真优化的量化表更新策略;
10.步骤三:对获得的码率和mse进行评价;
11.步骤四:对获得的码率和mse进行选解。
12.进一步的,对三个分量进行处理的过程包括:将图像分为互不重叠的大小为8x8的图像块,每一个图像块为基本的处理单元,对每一个图像块进行离散余弦变换,离散余弦变换后得到的图像块即为离散余弦块;使用8x8的量化矩阵对离散余弦块进行量化,从而量化矩阵中存储的每个离散余弦频带位置的量化步长,通过除法取整方式实现信息舍弃。
13.进一步的,对默认量化表进行初始化的过程包括:
14.将量化表规模记为pop,最大迭代次数记为maxgen,初始迭代次数gen=0,初始量化表的设定用默认量化表通过质量因子qf设定不同的值,得到不同的量化表;将问题优化
的目标定义为mse和码率,默认量化表为决策变量,则通过min函数对mse和码率进行优化,所述码率r
u,v
(q)通过公式7进行量化系数的一阶熵进行估算获得:
[0015][0016]
其中,num
blk
代表图像中8x8块的数量,si代表量化索引i的系数数值分布范围,si=[i*q(u,v)-q(u,v)/2,i*q(u,v) q(u,v)/2],
[0017]
num
f(u,v)
为频带(u,v)上值为f(u,v)的数量。
[0018]
进一步的,mse和码率的获取过程包括:
[0019]
对图像进行量化,图像的量化过程为:
[0020][0021]
其中,(u,v)为频带坐标,f(u,v)为位于频带(u,v)处的离散余弦系数值,q(u,v)和a(u,v)分别为位于频带下的量化步长和量化后的索引i,量化过程如公式3所示,反量化的重建过程为:
[0022][0023]
由公式3和公式4可以估算出相应的量化误差:
[0024][0025]
进一步的,离散余弦变换是一种正交规整变换,因此空间域的误差能量与频率域的误差能量保持不变,我们可以直接利用频率域的能量误差计算空间域的量化误差。由于离散余弦块包含64个频带,则压缩图像的mse和码率可通过每个频带的mse和码率进行累积。
[0026]
进一步的,基于率失真优化的量化表更新策略的过程包括:获得率失真度量准则,量化表的更新根据率失真度量准则沿着率失真性能提升最大的方向进化:首先产生一个随机数a,如果a小于0.2,个体就进行交叉操作;如果a大于0.2,个体就进行变异操作,交叉变异产生新的大小为pop的量化表,称为子量化表,将子量化表与父量化表合并得到新的量化表pop_new。
[0027]
进一步的,率失真度量准则的获取过程包括:
[0028]
[0029]
其中和δr(q)|
q(u,v)
→q′
(u,v)
分别表示当量化表中频带(u,v)上的量化补偿q(u,v)改变为q

(u,v)时mse和码率的变化。
[0030]
进一步的,对码率和mse的评价的过程包括:根据初始化步骤中的公式4和公式7可以计算出pop_new的码率和mse,用码率和mse即可判断用当前量化表得到的图像质量如何,码率和mse是两个相互矛盾的评价指标,即码率越小越好,mse也是越小越好。
[0031]
进一步的,对获得的码率和mse进行选解的过程包括:
[0032]
根据非支配排序方法对得到的码率和mse进行排序,得到排序后的具有多个前沿面的量化表,统计第一前沿面上的个体数num,如果num小于50,直接将第一前沿面的个体进入下一代,否则就进行凸包选择,然后对凸包上的解进行缩放,缩放因子定义如下:
[0033][0034]
其中qf为质量因子,而scale factor为对量化表中量化步长进行缩放的因子;最终缩放后的量化表为:
[0035]q′
(u,v)=clip(q(u,v)*scale factor 50/100,1,255),公式10
[0036]
其中q'(u,v)和q(u,v)分别为缩放后的和基准的在频带(u,v)处的量化步长,clip()为截取函数,最终得到新的量化表p
temp

[0037]
与现有技术相比,本发明的有益效果是:从进化计算的角度出发,对jpeg的量化表进行优化,针对图像编码中的码率多功能需求,研究基于多目标优化的多功能图像编码优化技术,在提升编码效率的同时,满足用户的多种码率需求;通过对图像编码问题进行多目标建模,设计符合率失真最优原则的进化算子、以及环境选择策略,能有效找到最优量化表,使得图像的编码效率能提升10%以上,同时,在优化的过程中产生的多组量化表能够有效应对图像压缩编码中的不确定性问题。
附图说明
[0038]
图1为本发明的原理图。
具体实施方式
[0039]
目前jpeg图像编码优化方法主要分为以下几类:
[0040]
第一类:基于率失真优化的量化表优化。图像压缩可以看作是一个资源分配问题,它表示为如何在码率约束范围内得到最小的失真,使用搜索策略来根据码率和失真模型探索最佳的量化表。也可以将量化表中64个量化步长的求解问题转化为64阶段的动态规划问题,并使用动态规划的方法进行求解。
[0041]
第二类:基于人眼视觉特性的量化表优化。jpeg默认量化表的设计是依据人眼视觉对低频信号敏感性高于高频信号的原则,但是,具体的敏感程度只是依赖于经验值,随着人们对视觉系统认识的更为深入,一些新的视觉模型被用到量化表的设计中。提出了从一个均匀量化器出发,结合人眼视觉特性,设计了一个新的主观量化表,获得了更优的主观质
量。也提出了结构相似度索引(structural similarity index,ssim)作为失真准则来生成全局量化表,以及设计了jnd模型作为质量度量的标准。
[0042]
第三类:基于启发式算法的量化表优化。不管是搜索策略还是动态规划方法都难以保证量化表能达到全局最优解。为解决这个问题,一些启发式算法被用于jpeg量化表的优化过程中,其中包括遗传算法、差分进化算法等,这些方法通常将码率和失真折合成单一目标,复杂度高且灵活性差。
[0043]
如图1所示,一种基于演化计算的jpeg图像编码优化方法,其特征在于,按如下步骤进行:
[0044]
标准的jpeg编码器的工作流程包括:将图像转化为ycbcr模式,其中y为亮度分量,而cb和cr则为两个色度分量,三个分量进行独立处理。以y通道为例,将图像分为互不重叠的大小为8x8的图像块,每一个图像块为基本的处理单元,对每一图像块进行离散余弦变换,离散余弦变换可以消除图像块内像素之间的相关性,将图像能量集中在左上角区域,离散余弦变换后得到的图像块即为离散余弦块;使用8x8的量化矩阵对dct块进行量化,从而量化矩阵中存储的每个离散余弦频带位置的量化步长,通过除法取整方式实现信息舍弃,量化环节是jpeg标准中唯一会产生信号失真的模块。
[0045]
在具体实施过程中,经过量化后的离散余弦块,其右下位置已基本全为0,最后,通过z型扫描得到一维符号串,并对一维符号串进行游程编码,进而得到最终的二进制码流,完成编码流程。
[0046]
需要进一步说明的是,在量化过程中,用不同的量化表可以得到码率不同的压缩图像,利用多目标优化的方法求解编码效率最高的量化表,其过程包括:
[0047]
步骤一:对默认量化表进行初始化:
[0048]
将量化表规模记为pop,最大迭代次数记为maxgen,初始迭代次数gen=0,初始量化表的设定用默认量化表通过质量因子qf设定不同的值,得到不同的量化表;所述默认量化表为:
[0049][0050]
将问题优化的目标定义为mse和码率,默认量化表为决策变量,则通过min函数对mse和码率进行优化,具体过程为:
[0051][0052]
其中q为默认量化表,d(q)和r(q)分别为默认量化表为q时的mse和码率;
[0053]
在具体实施过程中,为了避免复杂的编码和解码过程,采用估算的方式获得mse和
码率,具体过程包括:
[0054]
步骤二:对图像进行量化,图像的量化过程为:
[0055][0056]
其中,(u,v)为频带坐标,f(u,v)为位于频带(u,v)处的离散余弦系数值,q(u,v)和a(u,v)分别为位于频带下的量化步长和量化后的索引i,量化过程如公式3所示,反量化的重建过程为:
[0057][0058]
由公式3和公式4可以估算出相应的量化误差:
[0059][0060]
在具体实施过程中,由于离散余弦变换是一种正交规整变换,因此空间域的误差能量与频率域的误差能量保持不变,我们可以直接利用频率域的能量误差计算空间域的量化误差。由于离散余弦块包含64个频带,则压缩图像的mse和码率可通过每个频带的mse和码率进行累积,即:
[0061][0062]
其中d
u,v
(q)可通过公式4所定义的方法进行求解,而码率r
u,v
(q)则可通过公式7进行量化系数的一阶熵进行估算:
[0063][0064]
其中,num
blk
代表图像中8x8块的数量,si代表量化索引i的系数数值分布范围,si=[i*q(u,v)-q(u,v)/2,i*q(u,v) q(u,v)/2],num
f(u,v)
为频带(u,v)上值为f(u,v)的数量;对量化表中的64个值得所有可能由公式4和公式7可以得到对应的估算mse和码率。
[0065]
步骤三:基于率失真优化的量化表更新策略,不同频带的系数分布不一致,因此,不同频带的率失真特性也不同,如果要获得整体图像的最佳率失真性能,在每个频带上必须沿着这样的方向:如果mse下降,则该方向为最“陡”的方向,意味着mse下降的越多,图像质量提升的越多,同时,码率增加的越少;如果mse上升,则应为最“缓”的方向,意味着mse上升的越少,图像质量下降的越少,同时码率下降的越多。
[0066]
本方法定义了一个率失真度量准则:
[0067][0068]
其中和δr(q)|
q(u,v)

q'(u,v)
分别表示当量化表中频带(u,v)上的量化补偿q(u,v)改变为q

(u,v)时mse和码率的变化;在定义率失真度量准则时,分别考虑了两种情况,分别对应mse增加和减少。
[0069]
步骤s21:有了率失真度量准则后,量化表的更新就沿着率失真性能提升最大的方向进化:首先产生一个随机数a,如果a小于0.2,个体就进行交叉操作,具体来说,存在两个个体q1和q2,以q1为例,对于64个量化部分,分别计算从q1更新为q2的率失真度量准则,然后对其排序,寻找最大的若干个位置,并将q1中相应的量化步长更新为其在q2中对应位置上的值;q2也按照相同的方法进行交叉。
[0070]
步骤s22:如果a大于0.2,个体就进行变异操作,对于个体q1,对所有的量化步长其可能更新的值为除其本身之外的所有值,根据率失真度量准则计算出254个值,然后对这254个值进行排序,寻找最大的若干个位置,并将其更新为相应的目标量化步长值;
[0071]
步骤s23:交叉变异产生新的大小为pop的量化表,称为子量化表。将子量化表与父量化表合并得到新的量化表pop_new。
[0072]
步骤s3:适应度值评价:
[0073]
根据初始化步骤中的公式4和公式7可以计算出pop_new的码率和mse,用码率和mse即可判断用当前量化表得到的图像质量如何,码率和mse是两个相互矛盾的评价指标,即码率越小越好,mse也是越小越好。
[0074]
步骤s4:环境选择:
[0075]
根据非支配排序方法对得到的适应度值进行排序,得到排序后的具有多个前沿面的量化表,统计第一前沿面上的个体数num,如果num小于50,直接将第一前沿面的个体进入下一代,否则就进行凸包选择。凸包选择后的位于凸包上的解从率失真曲线角度考虑更优秀,但是,凸包上的解缺更加稀疏,不利于解空间的多样性和均匀性。根据经验我们知道,优秀的量化表周围的量化表编码性能也很优秀,所以对凸包上的解进行缩放,缩放因子定义如下:
[0076][0077]
其中qf为质量因子,而scale factor为对量化表中量化步长进行缩放的因子.最终缩放后的量化表为:
[0078]q′
(u,v)=clip(q(u,v)*scale factor 50/100,1,255),公式10
[0079]
其中q

(u,v和q(u,v)分别为缩放后的和基准的在频带(u,v)处的量化步长,clip
()为截取函数。最终得到新的量化表p
temp

[0080]
步骤s41:将量化表p
temp
中所有个体作为第gen 1次迭代的量化表;并重复执行步骤s2、步骤s3、步骤s4,直到达到最大迭代次数为止,从而得到最终迭代后的量化表,记为lastpop;
[0081]
步骤s42:从lastpop量化表中选择第一个前沿面中所有个体,前沿面中的多组量化表可以有效应对图像压缩编码中的不确定性问题。
[0082]
以上实施例仅用以说明本发明的技术方法而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方法进行修改或等同替换,而不脱离本发明技术方法的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献