一种基于DWT‑SVD和粒子群优化的音频水印方法与流程

文档序号:11064123阅读:395来源:国知局
一种基于DWT‑SVD和粒子群优化的音频水印方法与制造工艺

本发明涉及一种音频水印算法。特别是涉及一种用于音频作品版权管理的基于DWT-SVD和粒子群优化的音频水印方法。



背景技术:

数字水印技术利用多媒体数据本身存在的冗余特性以及人类感知系统的特性,在不影响载体数据信息的前提下将水印嵌入到多媒体数据中。数字水印信息可以是标识原作者、拥有者以及发行者信息的序列号,用来识别多媒体数字作品的版权归属,同时也可以追溯非法拷贝和篡改等。数字水印技术最初主要用来解决数字作品的版权归属问题,随着水印技术的不断发展,现如今它已被广泛应用在数字指纹、完整性校验、广播监控、使用控制和隐秘通信等领域。

粒子群优化(Particle Swarm Optimization,PSO)算法是Kennedy和Eberhart博士于1995年提出的,PSO起源于对一个简单社会模型的仿真,它和人工生命理论以及鸟类或鱼类的群集现象有十分明显的联系,动物行为学家曾仔细观察过蚂蚁的觅食行为,发现不管初始时同一蚁巢的蚂蚁从蚁巢到食物的觅食路径是如何的随机,随着觅食的蚂蚁往返次数的增加,蚁群总能找到最短的觅食路径,著名的蚁群算法正是受蚁群觅食行为的启发而产生的。同样,粒子群算法也是源于对鸟类捕食行为的研究而提出的。

小波变换的基本思想是将原始信号经伸缩及平移后(即将原始信号用一组不同尺度的带通滤波器进行滤波),将信号分解为一系列具有不同空间分辨率(不同通道)、不同频率特性和方向特性的子带信号,这些子带信号具有良好的时域、频域等局部特性,这些特征可用来表示原始信号的局部特征,进而实现对信号时间、频率的局部化分析。将小波变换扩展到二维的情形,即可以得到原始图像在不同尺度、不同方向上的近似分量和细节分量。

信号经过多尺度小波变换后,系数呈现金字塔式的结构。且图像能量重新分配,绝大部分能量分布在最低频的小波系数上,和高频系数相比,最低频的小波系数具有系数绝对值较大,变化范围大等特点,因此也具有更大的更改空间.可以嵌入更多的水印信息。

SVD变换具有能量聚集和扰动稳定性,在统计学、信号处理等领域都有着有广泛的应用。由于它能将信号的最大能量用极少的系数表示。刘瑞帧等人最早将它应用在图像水印算法中,取得了较好的鲁棒性。近年来,陆续有学者将SVD变换引进音频水印算法中,提高了音频水印算法的抗攻击能力。

给定一个m×n的矩阵M,则存在两个正交矩阵,m阶矩阵U和n阶矩阵V使得M可以表示为:

M=USVT

其中,S=diag(λ12,...,λr),对角线元素满足:λ1≥λ2≥...≥λr≥λr+1...=0。

SVD有三个关键特性:(1)扰动稳定性,当载体信号遭受攻击时,其值变化很小。(2)矩阵的奇异值表示信号矩阵的能量,矩阵的最大奇异值表示信号的最大能量。其中,最大奇异值在水印算法中常用来进行水印信息嵌入。由于SVD算法具有上述优点,使得采用SVD变换的音频水印算法具有较好的鲁棒性和水印嵌入容量。



技术实现要素:

本发明所要解决的技术问题是,提供一种能够使水印具有较好鲁棒性的基于DWT-SVD和粒子群优化的音频水印方法,

本发明所采用的技术方案是:一种基于DWT-SVD和粒子群优化的音频水印方法,包括如下步骤:

1)对原始音频信号进行水印嵌入,包括:

(1)对原始音频信号进行分块处理;

(2)对分块后的音频信号中的每一个块ci,1≤i≤n1,采用公式ci=Ui×Si×ViT进行SVD分解,分解后得到矩阵Ui,Si和Vi

(3)将每个块分解后得到的矩阵Si中的最大值si构建向量L=[s1,s2,...,sn1],并对向量L进行三级小波分解,得到近似分量L3和细节分量Hr,1≤r≤3;

(4)对得到的近似分量L3嵌入水印信息;

(5)对嵌入水印后的近似分量L3′进行逆变换构建含水印音频信号,包括:

利用嵌入水印后的近似分量L3'和细节分量Hr进行三级逆小波变换,得到L',重构矩阵S',然后进行逆SVD变换ci'=Ui×Si'×ViT,重构音频信号矩阵A*',并对A*'进行降维处理,得到含水印的音频信号;

2)对含水印的音频信号进行水印提取,包括:

(1)对含水印的音频信号进行分块处理;

(2)对分块后的音频信号中的每一个块ci”进行SVD分解ci”=Ui'×Si”×Vi'T,分解后得到矩阵Ui',Si”和Vi';

(3)将每个块分解后得到的矩阵Si”中的最大值si”构建向量L”=[s1”,s2”,..si”..,sz”],并对向量L”进行三级小波分解,得到近似分量L3”和细节分量Hr',1≤r≤3;

(4)根据近似分量L3”和水印嵌入的位置信息(p1,p2)确定提取水印值;

3)采用粒子群算法自动确定水印嵌入深度的最优值。

步骤1)第(1)步所述的对音频信号进行分块处理是:

设原始音频信号A为:A=a(i),1≤i<N,N为总的采样点个数,a(i)为A中第i个采样点,将原始音频信号A进行分段处理,每段包含n个采样点,取将分段音频构建成矩阵A*(m,m),将所述的矩阵划分为m1×m1大小的块:

C={ci,1≤i≤z},z=(m/m1)2

其中,C为m1×m1大小块的集合,ci为C中第i个块,z为C中块的个数。

步骤1)第(4)包括:

(i)确定水印嵌入位置,根据密钥生成水印嵌入的位置信息(p1,p2),1≤p1,p2≤l,l代表近似分量L3的长度;

(ii)采用量化调制方法将水印嵌入到所选嵌入位置中,包括:

假设Δ为量化步长,即嵌入深度,w为待嵌入水印信息,设音频信号量化后的系数为L3′(p1),采用如下量化公式进行嵌入:

步骤2)第(1)步所述的对含水印的音频信号进行分块处理是:

设含水印的音频信号为A'=a(i)',1≤i<N,N为总的采样点个数,a(i)'为A'中第i个采样点,将含水印的音频信号A'进行分段处理,每段包含n个采样点,将分段音频构建成矩阵A*”(m,m),将该矩阵划分为m1×m1大小的块:

C={ci”,1≤i≤z},z=(m/m1)2

其中,C为m1×m1大小块的集合,ci”为C中第i个块,z为C中块的个数。

步骤2)第(4)步是采用如下公式提取水印值:

w'即为最终提取的水印值,对w′进行升维运算,变成二维图像w*',设图像高为M宽为N1。

步骤3)包括:

将嵌入水印后的音频信号的不可感知性用峰值信噪比PSNR评估,水印的鲁棒性通过归一化相关系数NC值评估,其中峰值信噪比PSNR和归一化相关系数NC的定义如下:

其中,N为音频信号总的采样点个数,a(i)和a'(i)分别表示水印嵌入前后的音频信号,

其中,w(i,j)是原始水印信号,w*'(i,j)是提取的水印信号,考虑到水印的不可感知性和鲁棒性,将适应度函数定义为:

其中,PSNR为水印嵌入后音频信号的峰值信噪比,NCr为含水印音频信号分别经过各种攻击后提取的水印与原始水印的归一化相关系数,R为水印攻击种类,λr是加权因子,用来调节算法对水印不可感知性和鲁棒性的侧重程度,取λr=λ,

粒子k的速度更新公式为

其中,w1为惯性权重,c1,c2为学习因子,rand1和rand2是均匀分布在[0,1]的随机数,和gbestt分别表示粒子k的局部最优位置和全局最优位置,和分别为粒子在t和t+1时刻的速度,粒子k的位置信息更新公式为:

本发明的一种基于DWT-SVD和粒子群优化的音频水印方法,应用了小波变换的多分辨率特性和SVD变换的稳定性,使得水印具有较好的鲁棒性,不仅能够抵抗常见信号处理攻击,而且能够抵抗同步攻击。在水印嵌入的过程中,本算法采用了粒子群优化算法,以寻求水印鲁棒性和不可感知性之间的平衡为优化目标,寻找最优水印嵌入强度。本发明具有较大的水印容量,按照本发明方法求解出的最优水印嵌入深度嵌入水印能够达到水印不可感知性和鲁棒性的折衷。

附图说明

图1是本发明基于DWT-SVD和粒子群优化的音频水印方法的流程图;

图2是本发明实施例原始音频信号波形图;

图3是本发明实施例含水印音频信号波形图;

图4是本发明实施例含水印音频信号与原始音频信号差值波形图。

具体实施方式

下面结合实施例和附图对本发明的一种基于DWT-SVD和粒子群优化的音频水印方法做出详细说明。

如图1所示,本发明的一种基于DWT-SVD和粒子群优化的音频水印方法,其特征在于,包括如下步骤:

1)对原始音频信号进行水印嵌入,包括:

(1)对原始音频信号进行分块处理;所述的对音频信号进行分块处理是:

设原始音频信号A为:A=a(i),1≤i<N,N为总的采样点个数,a(i)为A中第i个采样点,将原始音频信号A进行分段处理,每段包含n个采样点,取将分段音频构建成矩阵A*(m,m),将所述的矩阵划分为m1×m1大小的块:

C={ci,1≤i≤z},z=(m/m1)2

其中,C为m1×m1大小块的集合,ci为C中第i个块,z为C中块的个数。

本发明实施例是,将原始音频信号A波形图如图2所示,进行分段处理,每段包含1024个采样点,将分段音频构建成矩阵A*(32,32),将该矩阵划分为8×8的小块C={ci,1≤i≤16},小块个数。

(2)对分块后的音频信号中的每一个块ci,1≤i≤n1,采用公式ci=Ui×Si×ViT进行SVD分解,分解后得到矩阵Ui,Si和Vi

(3)将每个块分解后得到的矩阵Si中的最大值si构建向量L=[s1,s2,...,sn1],并对向量L进行三级小波分解,得到近似分量L3和细节分量Hr,1≤r≤3;

(4)对得到的近似分量L3嵌入水印信息;包括:

(i)确定水印嵌入位置,根据密钥生成水印嵌入的位置信息(p1,p2),1≤p1,p2≤l,l代表近似分量L3的长度,本发明实施例中位置信息选择的是中低频(3,4);

(ii)采用量化调制方法将水印嵌入到所选嵌入位置中,包括:

假设Δ为量化步长,即嵌入深度,w为待嵌入水印信息,设音频信号量化后的系数为L3′(p1),采用如下量化公式进行嵌入:

其中,量化步长的选取至关重要,如果量化步长过大,水印的抗攻击能力强但是音频信号的感知质量下降。相反,如果量化步长过小,水印的不可感知性好,但是抗攻击能力下降。为达到水印鲁棒性和不可感知性之间的最佳平衡,本章采用粒子群算法自动确定水印嵌入强度的最优值。

(5)对嵌入水印后的近似分量L3′进行逆变换构建含水印音频信号,包括:

利用嵌入水印后的近似分量L3'和细节分量Hr进行三级逆小波变换,得到L',重构矩阵S',然后进行逆SVD变换ci'=Ui×Si'×ViT,重构音频信号矩阵A*',并对A*'进行降维处理,得到含水印的音频信号;

2)对含水印的音频信号进行水印提取,包括:

(1)对含水印的音频信号进行分块处理;所述的对含水印的音频信号进行分块处理是:

设含水印的音频信号为A'=a(i)',1≤i<N,N为总的采样点个数,a(i)'为A'中第i个采样点,将含水印的音频信号A'进行分段处理,每段包含n个采样点,将分段音频构建成矩阵A*”(m,m),将该矩阵划分为m1×m1大小的块:

C={ci”,1≤i≤z},z=(m/m1)2

其中,C为m1×m1大小块的集合,ci”为C中第i个块,z为C中块的个数。

本发明实施例是,含水印的音频信号A'波形图如图3所示,进行分段处理,每段包含1024个采样点,将分段音频构建成矩阵A*”(32,32),将该矩阵划分为8×8的小块C={ci”,1≤i≤16},小块个数。

(2)对分块后的音频信号中的每一个块ci”进行SVD分解ci”=Ui'×Si”×Vi'T,分解后得到矩阵Ui',Si”和Vi';

(3)将每个块分解后得到的矩阵Si”中的最大值si”构建向量L”=[s1”,s2”,..si”..,sz”],并对向量L”进行三级小波分解,得到近似分量L3”和细节分量H'r,1≤r≤3;

(4)根据近似分量L3”和水印嵌入的位置信息(p1,p2)确定提取水印值,w'为提取的水印信息;具体是采用如下公式提取水印值:

对w′进行升维运算,变成二维图像w*',设图像高为M宽为N1。

本发明实施例中选择的位置信息是中低频(3,4);

3)采用粒子群算法自动确定水印嵌入深度的最优值。包括:

将嵌入水印后的音频信号的不可感知性用峰值信噪比PSNR评估,水印的鲁棒性通过归一化相关系数NC值评估,其中峰值信噪比PSNR和归一化相关系数NC的定义如下:

其中,N为音频信号总的采样点个数,a(i)和a'(i)分别表示水印嵌入前后的音频信号,

其中,w(i,j)是原始水印信号,w*'(i,j)是提取的水印信号,考虑到水印的不可感知性和鲁棒性,将适应度函数定义为:

其中,PSNR为水印嵌入后音频信号的峰值信噪比,NCr为含水印音频信号分别经过各种攻击后提取的水印与原始水印的归一化相关系数,R为水印攻击种类,λr是加权因子,用来调节算法对水印不可感知性和鲁棒性的侧重程度,为了达到水印鲁棒性和不可感知性的平衡,PSNR值应该大致等于所有NCr的和,为简化运算,取λr=λ。

粒子k的速度更新公式为

其中,w1为惯性权重,c1,c2为学习因子,rand1和rand2是均匀分布在[0,1]的随机数,和gbestt分别表示粒子k的局部最优位置和全局最优位置,和分别为粒子在t和t+1时刻的速度,粒子k的位置信息更新公式为:

本发明实施例中嵌入深度采用自适应的方法,嵌入深度的选择采用粒子群寻优算法参数设置:其中,w1惯性权重为0.7,c1,c2为学习因子都为1,rand1和rand2都为1,适用度函数中加权因子λr的选取在求解适应度函数时发挥着重要的作用。由于NC∈[0,1],而PSNR的取值在45~60dB范围内,实验中选取了六种攻击类型,为了使PSNR值大致等于所有NCr的和,实验取λ=9。

本实施例粒子群算法寻找最优位置的过程如下:

(1)初始化粒子群,首先随机生成粒子群中粒子个数为30,粒子维数为一维。设粒子k,0<k≤30随机生成的初始速度和位置信息(即嵌入深Δ)分别为和粒子k将当前位置信息设置为局部最优位置将作为水印嵌入强度按照公式(1)嵌入水印,计算出含水印音频信号的PSNR值,然后对每个含水印音频信号进行常见信号处理攻击和同步攻击并进行水印提取得到w*'(i,j),水印的提取与嵌入过程相反,计算出各自的NC值,将他们带入公式(2)求出每个粒子的适应度值。在粒子群中找到最优适应度值,并将其对应的当前位置,作为当前的全局最优水印嵌入强度值gbest0

(2)每个粒子在每一次的迭代过程中按照公式(6)(7)更新粒子速度和位置信息,然后进行水印嵌入,攻击,提取,并计算适应度值,如果本次粒子k得到的适应度值大于历史局部最佳适应度,就进行最佳适应度值更新,保存本次粒子k位置为在然后再与全局最优适应度对比更新全局最优位置gbestt

(4)最后判断是否满足迭代的终止条件,本章通过事先设置一个最大迭代次数t=300来判断算法是否终止,如果满足条件则输出最优位置值作为最终水印嵌入强度,否则返回继续进行迭代来寻找最优水印嵌入强度。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1