基于范数的DWT域鲁棒音频水印算法

2021-05-31 08:19姚明明杜庆治
电视技术 2021年4期
关键词:范数鲁棒性含水

姚明明,杜庆治

(昆明理工大学 信息工程与自动化学院,云南 昆明 650500)

0 引 言

随着互联网和多媒体技术的快速发展,音频的产生、存储以及传播变得越来越方便快捷。与此同时,版权侵犯现象也日益增多,成为一项严重的问题,于是数字音频水印作为保护音频版权的方法应运而生[1]。一个有效的音频水印系统需要满足不可感知性、鲁棒性以及容量3个方面的要求[2]。这3个指标互相制约,一个音频水印系统通常不能同时保证三者都达到最优,只能按照实际运用场景的需求对三者进行折中。

音频水印算法可以分为时域算法和频域算法两大类。时域音频水印算法直接在时间域内修改信号样本,具有代表性的包括回声隐藏算法和最低比特位算法等[3,4]。早期音频水印算法的研究都是在时域展开,优点是操作简单,但其鲁棒性表现得不好,因此后来的研究主要集中在频域音频水印算法上,包括离散傅里叶变换(Discrete Fourier Transform,DFT)、离散余弦变换(Discrete Cosine Transform,DCT)以及离散小波变换(Discrete Wavelet Transformation,DWT)等,此外奇异值分解(Singular Value Decomposition,SVD)和范数也用于音频水印算法[5-15]。文献[12]提出了一种基于小波熵的音频水印算法,但是该方法对于重采样和低通滤波攻击的鲁棒性表现得不好。文献[14]提出将音频信号奇异值分解后选取奇异值矩阵中最大的系数,用量化方法进行水印嵌入,从而实现水印的盲提取。近年来,不断有学者研究混合域算法,文献[16]提出了一种基于LWT-SVD的音频水印算法,该算法对信号进行提升小波变换后,直接选取低频分量进行一维奇异值分解,然后通过量化非零的奇异值嵌入水印。文献[17]提出了一种基于DWTSVD的大容量音频算法,将水印嵌在奇异值矩阵的非对角线元素上,这样使得水印的容量得到提高。文献[18]通过量化索引调制(Quantization Index Modulation,QIM)在奇异值分解过程中将水印嵌入到二维矩阵的矩阵F-范数中。尽管这种算法有较好的不可感知性和较大的容量,但是抵抗添加高斯白噪声和低通滤波攻击的鲁棒性不好,而且矩阵范数的计算复杂度较大,相比之下,向量范数的计算复杂度较低。

为此,本文提出了一种基于范数的DWT域鲁棒音频水印算法,通过对含水印音频进行各种常见信号处理攻击,并与其他相似算法比较,仿真实验结果证明了本文所提算法的可行性和有效性。

1 算法的主要技术与原理

1.1 DWT

离散小波变换能够给出信号的时频表现特性,通过DWT分解可以将一维信号分成高频子带和低频子带,其中低频子带又可以继续分解为高频子带和低频子带[19]。通过DWT分解,信号的能量主要集中在低频部分,高频部分所占的能量很少。低频分量可以有效地抵抗各种攻击,为了得到更好的鲁棒性,可以将水印嵌入到经过DWT分解后的低频分量中。另外,原始信号可以由高频分量和低频分量重新构建,称为离散小波逆变换(Inverse Discrete Wavelet Transformation,IDWT)。图1为6级DWT分解过程。

图1 6级DWT分解

1.2 向量范数

向量范数的鲁棒性可以用来嵌入水印,假设A=(a1,a2,…,an)是一个1×n的向量,σ是A的p-范数,定义为:

这里p的取值范围是 [1,+∞),u=AT/σ是一个n×1的向量。

2 基于范数的DWT域音频水印算法

2.1 水印预处理

水印图像在嵌入到音频信号之前需要经过预处理,降低图像像素之间的相关性,以提高水印系统的安全性,假设水印图像W={W(i,j),1≤i≤M,1≤j≤N},其中W(i,j)∈{0,1}为水印图像第i行、第j列的像素值,M为像素的行数,N为像素的列数,对水印图像进行如下操作。

首先,对原始二值水印图像W进行K次Arnold变换,得到变换后的水印图像W1,降低原始水印图像像素之间的相关性。

其次,对W1进行混沌加密。由于Arnold变换具有周期性,在目前的计算条件下有可能采用穷举法破解水印,所以对水印图像再进行混沌加密处理。将W1降维得到一维序列W2={W2=(i),1≤i≤M×N}。假设Logistic序列为L={L(i),1≤i≤M×N},将序列L按转化成二值序列B,转化规则为:

式中,T为预先设定的一个阈值,这里取0.5。

最后,将一维序列W2和序列B进行异或运算,得到加密后的一维水印序列W3,计算为:

2.2 水印嵌入过程

首先对载体音频信号分帧处理,然后将每帧音频信号进行6级DWT分解,选取低频系数构造成两个向量,分别计算向量范数,然后将经过置乱和加密后的水印通过量化向量范数嵌入,根据量化的向量范数求得变化后的低频系数,最后通过逆离散小波变换得到含水印的音频信号,该过程如图2所示。

图2 水印嵌入过程

(1)记原始音频载体信号为S,L为音频总采样点数,将音频载体S分成不重合的M×N帧,这里分的帧数和水印的大小相等,每帧音频都有1 bit水印嵌入,每一帧的采样点数为L/(M×N)。

(2)将各帧音频信号进行6级DWT,小波基选择“Haar”,产生一个低频分量cA6,和6个高频分量,分别是cD1、cD2、cD3、cD4、cD5以及cD6。系数cA6和cD6的长度为Lc=L/(M×N×26)。

(3)将低频系数cA6记成向量V,再将向量V从中间等分为两个向量,分别记为V1和V2,具体表示为:

(4)分别计算向量V1和V2的p-范数,这里p的值取2,计算向量2-范数的公式为:

式中,U1和U2表示原来向量V1和V2除以范数后得到的向量。

(5)嵌入水印比特,先计算N_V1和N_V2的平均值为:

按如下规则嵌入水印,若W3(i)=1,则:

若W3(i)=0,则:

式中,q为嵌入强度。

(6)用修改后的向量范数重新构造向量V1´和V2´为:

(8)将低频系数cA6´和其他高频系数进行IDWT,重构嵌入水印后的一帧音频。

(9)重复以上步骤,直到水印全部嵌入,从而得到含水印的音频信号。

2.3 水印提取过程

水印的提取过程是嵌入的逆过程,流程如图3所示。

图3 水印提取过程

首先将待测音频信号分成不重合的M×N帧,其次将分帧后的音频信号重复进行水印嵌入步骤的第2步到第4步,再次提取每帧音频信号的水印为:

式中,1≤i≤M×N。

最后将提取出的水印比特信息与Logistic混沌序列进行解密,然后升维,进行K次Arnold反置乱,得到提取出的水印图像。

3 实验结果分析

为了验证本文算法的有效性,在Windows10操作系统环境下,用MATLAB2018作为实验的软件仿真平台,测试乡村音乐、爵士音乐以及流行音乐3种音频。为了减小单一样本的偶然性因素,对每类音频选取10个音乐样本,总共30首音频进行实验。音频均为wav格式,线性PCM编码,采样频率为44.100 kHz,16位单声道,每段测试音频包含1 048 576个采样点。

3.1 水印的安全性分析

实验选取的水印为32×32的二值图像,图像的内容是“KUST”4个英文字母,在ASCII码中,一个英文字母占用一个字节空间,用8 bit表示,表示4个英文字母需要32 bit。本文没有直接选用英文字母的ASCII码作为水印,而是用二值图像信息共1 024 bit表示,大大增加了信息冗余,在一定程度上增加了鲁棒性。图4为水印图像经过Arnold变换置乱后再经过Logistic混沌序列加密后的结果,其中Arnold变换次数K为8,Logistic混沌序列参数μ取3.6,随机初始值x0为0.5,这些参数可以作为提取水印时的密钥,只有知道密钥才能正确地对水印进行解密,否则得到的将是一系列没有明确意义的二进制序列。从图中可以看出,原始水印图像已经变得杂乱无章,几乎不能直接获得任何有用的信息,同时混沌加密处理也降低水印图像中像素点之间的相关性,有利于水印的嵌入操作[20]。

图4 水印置乱及加密

3.2 水印的不可感知性分析

不可感知性是指在嵌入水印信息后,原始音频载体和嵌入水印后的音频之间的感知接临近性,其评价方法有主观评价方法和客观评价方法。

3.2.1 主观评价

通过观察音频信号的波形图,可以对嵌入水印后的不可感知性在主观上有一个大致认识。图5是选取乡村音乐中的一首编号为country_06的音频文件波形图,其中图(a)为原始音频信号的波形图,图(b)为添加水印后的音频信号波形图,从图中可以看出,嵌入水印后的音频信号和原始音频信号相差甚微,几乎看不出差别,这也在一定程度上说明了嵌入水印对原始载体音频的影响非常小。

图5 嵌入水印前后波形比较

3.2.2 客观评价

主观评价往往具有一定的不确定性,因此用信噪比(Signal Noise Ratio,SNR)作为不可感知性的客观评价标准。国际留声机工业联盟要求嵌入水印后的音频至少要达到20 dB的信噪比。信噪比的定义为:

式中,S(·)表示原始音频信号,S´(·)代表嵌入水印后的音频信号,L表示音频信号的采样点数。乡村音乐、爵士音乐以及流行音乐音频信号的SNR值分别为28.166 6 dB、30.206 6 dB及31.654 7 dB,均大于20 dB,满足国际留声机工业联盟的要求。

3.3 鲁棒性分析

鲁棒性是指含水印音频信号在经过常规的信号处理攻击后,还能够检测出水印的能力,反映出音频水印算法的抗攻击能力。在实际应用中,常采用误码率(Bit Error Rate,BER)和相关系数(Normalized Correlation,NC)这两个评价指标来衡量水印的鲁棒性。

误码率能够反映出从含水印音频中提取出来的水印和原水印之间的差异性,其值越小表示鲁棒性越强,计算公式为:

式中,BERR表示提取出的水印和原水印相比,错误的比特位数,M×N表示水印图像像素的个数。

相关系数反映的是从含水印音频中提取出来的水印与原水印之间的相似性,其值越大,相应的鲁棒性越强,计算公式为:

式中,W(·)表示原始水印,W´(·)表示提取出的水印。

为了验证本文提出算法的鲁棒性,对含水印音频信号进行如下常见的音频信号处理操作。一是添加噪声,在含水印音频信号中添加信噪比为20 dB的高斯白噪声。二是低通滤波,采用巴特沃斯滤波器对含水印音频信号进行滤波,截止频率为11.025 kHz。三是重采样,将含水印音频信号原来44.100 kHz的采样率降为22.050 kHz,然后再恢复至44.100 kHz。四是重量化,将16 bit的含水印音频信号重新量化为8 bit,然后再恢复为16 bit。五是MP3压缩,将含水印音频信号由wav格式转换成MP3格式,再恢复至wav格式,比特率为128 kb·s-1。

为了直观地表示本文所提算法的鲁棒性,选取乡村音乐中的一首编号为country_06的音频文件,待其嵌入音频水印后,分别进行添加噪声、低通滤波、重采样、重量化以及MP3压缩攻击后,提取出水印如图6所示。

图6 遭受攻击后提取出的水印

从图中可以看出,提取出的6张水印图片均能较清晰地识别出水印信息,表明本文算法在遭受各种常见攻击时有良好的鲁棒性。

表1是3种含水印音频信号在经过各种常见攻击后,误码率及相关系数的值,取值为每类音频10首样本的平均值。从表中可以看出,本文算法在所有音频信号测试过程中得到的BER值都非常小,大部分情况下接近于0,而得到的NC值都较大,大部分情况下接近于1,这表明本文算法对常见的音频信号攻击表现出良好的鲁棒性。为了进一步验证本文所提算法的鲁棒性,与近期的相似文献[14]进行对比,选用同样的水印信息及音频文件进行仿真实验。从相对较高的NC值和相对较低的BER值可以看出,本文提出算法的鲁棒性比文献[14]中提到的算法要好。

表2 不同类型音频的鲁棒性

3.4 水印容量分析

水印容量是指在单位时间原始音频信号中嵌入水印的比特数,单位是b·s-1,计算公式为:

式中,fs代表音频信号的采样率,L代表音频信号的长度,n表示水印的比特数。国际留声机工业联盟要求水印容量应该超过20 b·s-1。在本文所提的算法中,嵌入的水印容量为43.07 b·s-1,达到标准的2倍。

4 结 语

本文提出了一种基于范数的DWT域鲁棒音频水印算法,对音频信号分帧后选取DWT低频分量构造两个向量,计算其向量范数,通过量化向量范数的值嵌入水印,实现水印盲提取。此外,对水印进行Arnold变换和Logistic混沌序列加密,提升水印的安全性。选取3种不同类型的音频进行仿真实验,结果表明水印的安全性高、不可感知性好,能满足嵌入水印容量要求。此外,通过与近期的一篇文献进行对比实验可以看出,本文算法在叠加高斯白噪声、低通滤波、重采样、重量化以及MP3压缩等常见音频信号处理中鲁棒性更强。

猜你喜欢
范数鲁棒性含水
镇北油田某油藏延长低含水采油期技术研究
含水乙醇催化制氢催化剂研究
荒漠绿洲区潜在生态网络增边优化鲁棒性分析
基于确定性指标的弦支结构鲁棒性评价
复杂孔隙结构低阻油层含水饱和度解释新方法
基于加权核范数与范数的鲁棒主成分分析
土洞施工中含水段塌方处理方案探讨
基于非支配解集的多模式装备项目群调度鲁棒性优化
非接触移动供电系统不同补偿拓扑下的鲁棒性分析
一类具有准齐次核的Hilbert型奇异重积分算子的范数及应用