- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于果蝇优化算法小波域数字水印算法
基于果蝇优化算法小波域数字水印算法
摘 要:
为了平衡水印的透明性和鲁棒性,提出了基于果蝇优化算法(FOA)的小波域数字水印算法。该算法利用果蝇优化算法将离散小波变换(DWT)应用到水印技术中,通过群体智能算法解决水印的透明性和鲁棒性之间的矛盾。为了保护数字图像的版权信息,将所选择的原始图像通过二维离散小波变换分解,然后将经过Arnold变换后的水印图像较优地嵌入到小波的垂直子带(HLM)系数中,这样可以保证图像的质量。在优化过程中,缩放因子是通过FOA不断地被训练和更新的。此外,还提出一个新的算法框架,通过DWT域预测可行性来评估参数。实验结果表明,所提算法具有较高的透明性和鲁棒性,水印相似度在0.95以上,与现有的一些基于群智能算法的水印方法相比,在对抗旋转和剪切等几何攻击提高了10%,因此鲁棒性好于同类方法。
关键词:
果蝇优化算法;离散小波变换;缩放因子;Arnold变换;透明性;鲁棒性
0 引言
近年来,数字水印作为一种新兴的数字作品版权保护技术受到国内外研究人员的关注。目前,图像数字水印主要通过空域或者变换域[1]来嵌入水印信息。嵌入水印的好坏程度主要看水印的鲁棒性和透明性,这两者之间是相互矛盾的。鲁棒性指含有水印的载体图像经过各种有意或无意的攻击后,依然能够正确提取或鉴别水印;透明性指水印的加入不会引起载体图像的明显降质。而变换域水印技术具有良好的鲁棒性和透明性,赢得了广大科研学者们的青睐。针对传统地变换域水印技术鲁棒性较差的问题,文献[2]提出了基于离散余弦变换(Discrete Cosine Transform, DCT)和奇异值分解(Singular Value Decomposition, SVD)变换的盲数字水印算法,但是该算法不能够有效地抵抗JEPG压缩攻击,水印的容量相对也比较低;文献[3]提出一种基于数字全息和奇异值分解的鲁棒性数字水印方案,对JEPG压缩攻击以及噪声攻击有较好鲁棒性,但抗剪切攻击能力很弱;文献[4]引入自嵌入技术提出一种离散小波变换(Discrete Wavelet Transform, DWT)SVD域全盲鲁棒量化水印算法,在抵抗噪声、滤波、剪切、JPEG 压缩和混合攻击方面都表现出一定的鲁棒性,但是提高效果不显著;Ali等[5-6]提出了利用布谷鸟搜索算法找到最佳的缩放因子来提高水印的鲁棒性,该方法借鉴布谷鸟搜索算法确定较优的水印嵌入系数能够较好地提高水印的鲁棒性,并且能均衡地抵抗各种常见的攻击。
果蝇优化算法(Fruit Fly Optimization Algorithm, FOA)[7]是一类新的全局优化算法。该算法源于对果蝇觅食行为的模拟,具有实现简单、全局寻优能力更强等特点。
本文借鉴果蝇优化算法的特点,从水印的透明性和鲁棒性两个方面出发,设计相应的嵌入水印的适应度,提出了一种基于果蝇优化算法的小波域数字水印算法。该算法主要利用果蝇算法择优选择水印的缩放因子,然后通过DWT域预测可行性评估这个参数,进而可以有效地平衡水印鲁棒性与透明性的矛盾。
1 果蝇优化算法
果蝇算法的原理是:果蝇本身在感官知觉上优于其他物种,尤其是在嗅觉与视觉上。果蝇的嗅觉器官能很好地搜集飘浮在空气中的各种气味,然后飞近食物位置后亦可使用敏锐的视觉发现食物与同伴聚集的位置,并且往该方向飞去。
依据果蝇搜寻食物的特性,将果蝇优化算法主要归纳为以下几个步骤[8]:
1)令种群规模Sizepop,最大迭代次数Maxgen,随机初始化果蝇群体位置(X_axis,Y_axis)。
2)赋予果蝇个体利用嗅觉搜寻食物的随机方向与距离,Random为搜寻距离:
Xi=X_axis+RandomYi=Y_axis+Random (1)
3)由于无法得知食物位置,因此先估计与原点的距离D,再计算味道浓度判定值S,此值为距离之倒数:
Di=X2i+Y2iSi=1/Di (2)
Si=1/Di; Di=X2i+Y2i(2)
4)将味道浓度判定值Si代入味道浓度判定函数(或称为适应度函数fitness function),用来求出果蝇个体位置的味道浓度Smelli:
Smelli=function(Si)(3)
5)找出该果蝇群体中味道浓度最低的果蝇(最优个体):
[bestsmell,bestindex]=min(Smelli)(4)
6)记录并保留最佳味道浓度值bestSmell与其X、Y 坐标,此时果蝇群体利用视觉向该位置飞去:
Smellbest=bestSmellX_axis=X(bestindex)Y_axis=Y(bestindex)(5)
7)进行迭代寻优,重复
文档评论(0)