基于多目标粒子群优化的DCT域数字水印算法

刘昌鑫++欧阳春娟



摘 要: 根据对粒子个体的非支配排序和计算拥挤距离,提出一种改进的多目标粒子群优化(IMOPSO)算法。将IMOPSO应用于DCT域数字水印系统设计,提出基于多目标粒子群优化的数字水印算法。该算法以水印嵌入位置作为粒子的解,以不可见性(PSNR)和鲁棒性(NC)作为两个优化目标,得到数字水印系统的最优解集。实验结果表明,提出的算法得到多种满足PSNR值和NC值平衡的水印嵌入方案。与其他相关算法在同等条件下相比较,算法满足水印不可见性的同时,在噪声、压缩、裁剪等攻击下具有较好的鲁棒性。
关键词: 数字水印; 粒子群算法; 多目标优化; DCT
中图分类号: TN915.08?34; TP391 文献标识码: A 文章编号: 1004?373X(2017)09?0078?04
Abstract: An improved multi?objective particle swarm optimization (IMOPSO) algorithm is proposed according to the sorting without domination and crowding distance calculation of the particle individual. The IMOPSO is applied to the design of the digital watermarking system in discrete cosine transform (DCT) domain to propose the digital watermarking algorithm based on multi?objective particle swarm optimization. The algorithm takes the location embedded with the watermarking as the solution of the particle, and the peak signal?to?noise ratio (PSNR) and normalized correlation (NC) as the two optimization objects to get the optimal solution set of the digital watermarking system. The experimental results indicate that the algorithm can get the multiple watermarking embedded schemes to balance the PSNR and NC??. In comparison with other related algorithms under the same condition, the proposed algorithm can satisfy the watermarking invisibility, and has good robustness aiming at the noise, compression, cutting and other attacks.
Keywords: digital watermarking; particle swarm optimization algorithm; multi?objective optimization; discrete cosine transform
0 引 言
數字水印作为数字媒体版权保护的有效方法受到研究者的普遍重视,已经成为多媒体信息安全领域的研究热点。从嵌入的方法来看,数字水印可分为空域数字水印和频率域数字水印[1]。与空域数字水印相比,频率域数字水印嵌入系统对图像进行DCT和DWT等变换,将水印信息嵌入到变换域系数中,水印能量可以分布到空域的所有像素点上,在保证不可见性的同时,可提高水印的鲁棒性,所以变换域水印技术研究更受到研究者的青睐。
粒子群算法(Particle Swarm Optimization,PSO)是一种进化计算方法[2],该算法结构简单,收敛速度快。研究表明,PSO优化的DCT域数字水印算法具有更好的鲁棒性[3?5]。NSGA?Ⅱ是遗传算法中的多目标优化算法[6],是第二代进化多目标优化的主要经典算法之一。不可见性和鲁棒性是图像水印系统的基本要求,不可见性是指嵌入水印后的图像与原始图像相比具有很强的相似性,鲁棒性是指嵌入水印后的图像在各种攻击下仍可以成功地提取出来,这两个指标是相互制约的关系,设计数字水印系统需要在这两个指标间进行权衡,属于多目标优化问题。本文在NSGA?Ⅱ的基础上提出一种改进的粒子群多目标优化算法(Improved Multi?objective PSO,IMOPSO)[7?8],并利用该算法寻找最优的DCT域嵌入系数位置,提出基于多目标粒子群优化的DCT域水印算法。该算法可以得到多种嵌入方案,决策者可根据需要进行水印嵌入,取得各种不可见性与鲁棒性的折衷效果。与采用粒子群优化的DCT域水印算法和不采用优化手段直接在DCT变换的AC系数嵌入的水印算法相比,在近似的PSNR值下,该算法的鲁棒性更强。
1 改进的基于非支配排序的多目标粒子群优化
算法
目前,解决多目标问题较常用的方法是将多个指标进行加权转化成单目标问题,这种处理方法利用决策者的偏好信息,裁剪复杂的搜索空间,实现较为简单,但如何设置各个优化目标的权重,使其与决策者的意图较为一致较难达到。
在单目标PSO中,每个粒子的全局最优是相同的,采用的适应度值最好的解定义为全局最优值。而在多目标优化过程中,群体在每代会产生多个彼此不受支配的全局最优解,即多个非劣解。算法在外部精英档案,根据每个成员的拥挤距离确定其被选中为全局最优的概率,为群体中每个粒子分配一个全局最优值。在外部精英档案中,拥挤距离大的粒子有更大的概率被选中作为粒子的全局最优,这样有利于整个进化过程逼近Parato最优前沿。对于个体最优的选择,在粒子的当前位置和历史最优位置中选择一个非劣解作为粒子的个体最优。
在改进的算法中,采用计算粒子个体的拥挤距离删除策略维护外部精英档案。对于每个新产生的非劣解,如果外部精英档案中粒子数小于那么直接加入新的非劣解;当新解支配了外部精英档案中的部分成员,将这些受支配的成员从中去掉,将新解加入外部精英档案中,否则将新解直接加入外部档案中,计算每个成员的拥挤距离,并移出拥挤距离最小的个体。
改进的基于非支配排序的多目标粒子群优化算法(IMOPSO)的实现步骤如下:
(1) 在可行解目标空间中均匀随机初始化粒子群。
(2) 对初始种群根据非支配原则排序。首先,从当前的种群中找出非支配个体分配等级1,并将其移出种群;然后继续选出现有种群的非支配个体,并分配等级2,如此反复,直到种群中所有个体都分配到次序为止。同时给等级赋值,第一等级赋值为1,第二等级赋值为2,…,直到所有个体分配完毕。
(3) 按NSGA?Ⅱ中的计算公式计算拥挤距离,给种群中的所有个体分配拥挤距离。
(4) 选择其中前个非劣解粒子作为精英档案,存放在外部空间。当时,采用密度距离删除策略,让外部空间最多拥有个粒子。
(5) 对初始种群个粒子采用基本粒子群算法进行优化。
(6) 将外部空间和进化后的个粒子进行混合,重新进行非支配排序,计算拥挤距离,选择前个粒子进行下一轮循环进化,直至达到预先设置的进化代数,最后输出外部空间的非支配精英解集。
2 基于多目标粒子群优化的DCT域数字水印算法
将改进的多目标粒子群优化算法(IMOPSO)应用于DCT域的水印系统设计中,提出一种基于多目标粒子群优化的DCT域水印算法(Multi?objective Particle Swarm Optimization DCT Watermarking Algorithm,MPSO_DCTW)。图像分块后进行DCT变换,得到DCT系数。由于人眼对边缘细节及噪声的失真不敏感,所以嵌入算法将水印嵌入在交流系数中,采用多目标粒子群优化算法在每个图像块的DCT变换的AC系数中搜索出最佳的两个嵌入位置,以PSNR值及NC值作为多目标粒子群优化的两个目标。
2.1 水印预处理
为了提高水印信息的鲁棒性和安全性,在嵌入水印之前先对其进行Arnold置乱。对于一幅的数字图像,像素点位置变换到位置的公式为:
根据式(1)输出的像素值作为下一次Arnold置乱的输入,将水印图像进行次Arnold置乱,得到置乱后的水印信息。提取水印后,可以利用Arnold的周期性重新得到原图像。
2.2 水印嵌入位置选择
二维载体图像大小为256×256,分成8×8小块,对每块进行DCT变换,每个小块得到64个变换系数,在每个小块中嵌入2位秘密信息。AC系数的位置信息用Zigzag顺序的2~64自然数来表示。采用多目标粒子群优化算法在AC系数中寻找最优的两个嵌入位置,每个粒子的维数为二维,代表水印的两个嵌入位置,其取值范围为[2,64]之间的整数。在得到的Pareto最优解集中,根据具体应用需求选择对应的嵌入位置嵌入水印后,将这两个位置的序号及水印置乱次数一起作为水印提取的密钥。
2.3 水印的嵌入
水印嵌入算法的具体步骤如下:
Step1(水印置乱):采用Arnold置乱,得到置乱后的水印信息。
Step2(分块和DCT变换):对大小为256×256的載体图像进行8×8分块,得到32×32个小块,对每块进行DCT变换,每个小块得到64个变换系数。
Step3(多目标粒子群优化搜索嵌入位置解集):在交流系数AC中采用上述多目标粒子群优化算法搜索最优嵌入位置,得到Pareto最优解集。
Step4(水印嵌入):在Pareto最优解集中,根据应用需求,选择一个合适的NC值所对应的粒子解,即嵌入位置。每个小块在这两个位置上嵌入2 b水印信息,采用LSB嵌入,若该位置的系数值的最低有效位与水印信息相同,则不做修改,否则将该DCT系数最低有效位改为和水印信息一致,0改为1,1改为0。
Step5(反DCT变换):对每一个嵌入水印的分块做DCT逆变换,重新组合,得到嵌入水印的图像。
2.4 水印的提取
水印的提取不需要原始图像,是一种盲水印算法。提取过程如下:
Step1(分块和DCT变换):将嵌入水印的图像进行分块和DCT变换。
Step2(水印提取):在分块中根据密钥提供的嵌入位置,找出对应的DCT系数,进行模2操作,其余数即为置乱后的水印信息。
Step3(反置乱):将置乱后的水印图像进行反置乱处理,得到水印图像。
3 实验结果及分析
为了验证基于多目标粒子群优化DCT域水印算法(MPSO_DCTW)的有效性,将其与采用粒子群优化的DCT域水印算法(Particle Swarm Optimization DCT Watermarking Algorithm,PSO_DCTW)和不采用优化手段直接在DCT变换的AC系数的第1,第2个系数嵌入的水印算法(DCT Watermarking Algorithm,DCTW)进行比较,其中PSO_DCTW算法将寻找最优的嵌入位置用单目标来优化处理,以PSNR值作为适应度函数。在MPSO_DCTW仿真实验中,采用Baboon(512×512)灰度图像,水印为有“水印”字样的64×32的二值图像。初始化粒子数为100,外部精英空间大小为50,迭代次数为500,其中在基本粒子群中学习因子惯性权重0.845 6。实验得到的峰值信噪比(PSNR)和相似度(NC)两个目标的Parato前沿解集如图1所示。
由图1可知,采用多目标粒子群优化PSNR值和NC值可得到多个可选择的嵌入位置,解集分布均匀,用户可根据不同的需求,在达到鲁棒性和不可见性平衡的情况下,选择适当的位置进行嵌入。当峰值信噪比为35~40时,相似度的值均大于0.95,在保证含水印图像不可感知的情况下,提取出的水印图像失真度很小。
实验中使用图像分析软件ImageAnalyzer 1.2.2、攻击软件StirMark Benchmark 4.0测试算法的鲁棒性,对含水印图像进行幅值缩放、JPEG压缩、3×3中值滤波和椒盐噪声攻击,三种算法受各种攻击后提取的NC值用来评价算法的鲁棒性,结果如图2所示。
为了使提出的MPSO_DCTW算法与其他两种算法在相同的实验条件下进行对比,调整PSO_DCTW的迭代次数,初始化粒子数及优化参数,使其PSNR值与采用DCTW方法嵌入得到的PSNR值近似相等,然后在图1中选择与这两者近似相等的PSNR值对应的粒子解进行MPSO_DCTW水印嵌入,分别得到三种算法的嵌入图。载体图像,水印原图及三种算法得到的嵌入图和对应的PSNR值如表1所示。
图2(a)给出了三种不同算法在相应的含水印图像受幅值缩放攻击后提取水印的NC值曲线,其中幅值缩放因子的范围为0.2~2.0,递增步长为0.2。虽然DCTW算法和PSO_DCTW也能抵抗幅值缩放攻击,但MPSO_DCTW算法的抗幅值縮放性能最好;JPEG压缩攻击是一种量化攻击,会破坏原数据,使水印失效,质量因子越小说明压缩倍数越高。选择质量因子(QF)的范围为20~100,递增步长为10,图2(b)是含水印图像JPEG压缩后三种不同算法提取水印的NC曲线图。当质量因子很小时,MPSO_DCTW算法劣于其他两种算法。当质量因子较大时,算法优于其他两种算法;选择噪声强度范围为5~60,递增步长为0.001,图2(c)为对含水印图像进行椒盐噪声攻击提取水印的NC曲线图;图2(d)为含水印图像经过剪切和后提取水印的NC曲线比较图。由图2(c)和图2(d)均得出MPSO_DCTW算法提取的水印质量在同等条件下要优于PSO_DCTW算法和DCTW算法,因此采用基于多目标粒子群优化DCT域水印算法嵌入水印后的图像在保证不可见性时,又具有较强的鲁棒性。
4 结 论
在NSGA?Ⅱ基础上,根据非支配排序和计算拥挤距离,提出一种改进的多目标粒子群优化算法(IMOPSO),同时将IMOPSO算法应用于DCT域水印系统设计中,提出一种基于粒子群多目标优化的DCT域水印算法。该算法在图像块的DCT交流系数中采用多目标粒子群算法搜索两个最佳的水印嵌入位置,以PSNR值和NC值作为粒子群多目标优化的两个目标。在得到的Parato前沿解集中根据决策者的需要选择相应的解,以LSB最低有效位嵌入水印,该水印提取无需原载体图像,提取算法简单。仿真实验结果表明,MPSO_DCTW算法与基于粒子群优化的DCT域水印算法和不采用优化嵌入的水印算法相比,提供给用户多种水印嵌入方案选择,且含水印图像在保证水印具有较好的不见性的同时,对幅值缩放、JPEG压缩、噪声、几何剪切等攻击都具有较强的鲁棒性。
参考文献
[1] COX I J, KILLIAN J, LEIGHTON F T, et al. Secure spread spectrum watermarking for multimedia [J]. IEEE transactions on image processing, 1997, 6(12): 1673?1687.
[2] KENNEDY J, EBERHART R C. Particle swarm optimization [C]// Proceeding of 1995 IEEE International Conference on Neural Networks. Piscataway: IEEE, 1995: 1942?1948.
[3] WANG Y R, LIN W H, YANG L. An intelligent watermarking method based on particle swarm optimization [J]. Expert systems with applications, 2011, 38(7): 8024?8029.
[4] 欧阳春娟,杨群生,刘昌鑫.基于粒子群优化的DCT域盲水印算法[J].井冈山大学学报(自然科学版),2011,32(2):63?66.
[5] 张韧志,从继成.粒子群算法优化离散余弦变换的数字水印[J].激光杂志,2015,36(7):74?77.
[6] DEB K, PRATAB A, AGRAWAL S, et al. A fast and elitist multi?objective genetic algorithm: NSGA?Ⅱ [J]. IEEE transactions on evolutionary computation, 2002, 6(2): 182?197.
[7] 周松华,欧阳春娟,刘昌鑫,等.自适应模糊的粒子群优化算法[J].计算机工程与应用,2010,46(33):46?48.
[8] 杨景明,马明明,车海军,等.多目标自适应混沌粒子群优化算法[J].控制与决策,2015,30(12):2168?2174.