粒子群算法在矢量量化图像压缩中的应用
来源:用户上传
作者:
摘要:由于矢量量化算法容易陷入局部最优解,因此引入粒子群算法的全局搜索策略,通过结合粒子群算法实现矢量量化图像的压缩。通过Matlab7.0实验仿真,实验结果表明,此方法的压缩效果较好,且图像失真效果不明显。
关键词:粒子群算法;矢量量化;图像压缩
中图分类号:TP18 文献标识码:A
文章编号:1009-3044(2019)11-0193-03
Abstract:Because of the vector quantization algorithm is easy to get into the local optimal solution,the global search strategy of particle swarm optimization(pso) is instrodued to realize the image compression of vector quantization by combining particle swarm optimization.Through the simulation results of Matlab7.0, it shows that the compression effect of this method is better and the image distortion effect is not obvious.
Key words:particle swarm optimization;vector quantization;image compression
1引言
粒子群优化算法(PSO)是一种进化计算技术(evolutionary computation),由Eberhart博士和Kennedy博士于1995 年提出[1,2],通过研究鸟群捕食的行为,得到启示从而引申出该算法。粒子群算法是用来寻找最优解的算法,是较为常见的一种优化算法。
矢量量化是一种效率较高的数据压缩编码方式,码书的设计是其关键之处,码书设计的好坏直接决定了其性能问题,Linde,Buzo和Gray于1980年提出了LBG矢量量化码书设计方法[3]。经典的LBG算法存在一個缺陷,即容易陷入局部最优[4],且解码后的图像细节边缘部分失真较严重,且存在方块效应。
由于LBG算法容易陷入局部最优解,因此结合粒子群算法的全局搜索策略解决该问题,并将其用于实现图像压缩。
2 粒子群算法简介
粒子群优化算法[5]主要研究鸟群随机搜索食物,在本区域内只有一块食物,然而,鸟群中所有的鸟都不知道那块食物具体在哪里,他们所知道的是当前自己所在的位置与那块食物的距离,那么找到那块食物最直接有效的方法就是寻找目前与那块食物距离最近的鸟的周围区域。
粒子群优化算法与遗传算法[6]相类似,是一种基于迭代的优化算法,但是它没有使用遗传算法的交叉和变异,而是粒子在解空间中追随最优的粒子进行搜索。粒子群优化算法的思想:首先,对粒子进行初始化,然后通过一次次的迭代找到最优解。在每次迭代中,粒子通过粒子本身所找到的最优解(局部最优解)以及整个种群目前找到的最优解(全局最优解)来更新自己。粒子群算法的主要步骤如下:
1)初始化:初始化粒子的初始位置和每个粒子的速度;
4 基于粒子群算法的矢量量化图像压缩
首先,将图像划分为若干个像素块,其中,每个像素块中包含若干个像素点。把若干个像素点组成的像素块,用一个特定码书中的像素块来表示,码书中像素块的数目一般远小于这些像素块所有可能颜色的组合。其次,对图像中的每个块(矢量),用一个码书中的码字来近似,这样只需要用这个码字的编号来编码这个图像矢量即可,由此达到压缩的目的,但由于LBG算法易于陷入局部最优解,从而通过结合粒子群算法解决该问题。具体算法步骤如下:
(1)将图像转换为[M×L]的二维数组;
(2)初始化粒子:首先,从M个训练矢量中随机选取N个码字;其次,初始化每个粒子的速度(在0~255之内的随机数)、适应值和该局部群体中的局部最优解;最后,初始化全局最优解,即群体中选择局部最优解中的最小值即为全局最优解。
(3)设置迭代次数k=0,并选择最大的迭代次数itmax;
(4)k=k+1;
(5)根据公式(1)更新粒子的速度;
(6)根据公式(2)更新每个粒子的位置;
(7)对每个粒子执行LBG算法(具体计算方法参见第3章节),得到更新之后的位置;
6结束语
压缩图像是在保证图像的质量情况下,用尽量少的比特数去表示图像。本论文通过结合粒子群算法和LBG算法对图像进行压缩。从码书中选择一个特定的码字用来表示由若干个像素点组成的像素块,这些像素块所有的可能组合一般远大于码书中码字的数目。通过此方法可实现图像的压缩,压缩效果较好。但是,本论文所讨论的方法,对于小图像失真较严重。
参考文献:
[1] Kennedy J,EberhartR.Particle Swarm Optimization[C].In:IEEE Int1 Conf on Neural Networks,Perth,Australia,1995:1942-1948.
[2] EberhartR,Kennedy J.A New Optimizer Using Particle Swarm Theory[C].In:Proc of the Sixth International Symposium on Micro Machine and Human Science,Nagoya,Japan,1995:39-42.
[3] LindeY,BuzoA,Gray R M.一种矢量量化设计算法[J].IEEE通信会刊,1980,18(1):84-95.
[4] 李殷,李飞.基于量子粒子群优化算法的矢量量化码书设计[J].数字视频,2012(17):14.
[5] 纪震,廖惠连,吴清华.粒子群算法及应用[M].北京:科学出版社,2009.
[6] 葛继科,邱玉辉,吴春明,蒲国林.遗传算法研究综述[J].计算机应用研究,2008(10).
[7] 王千,王成,冯振元,等.K-means算法研究综述[J].电子设计工程,2012(4).
[8] 谢娟英,王艳娥.最小方差优化初始聚类中心的K-means算法[J].计算机工程,2014(8).
【通联编辑:唐一东】
转载注明来源:https://www.xzbu.com/8/view-14769823.htm