抗时间尺度缩放攻击的局部化鲁棒数字音频水印算法的制作方法

文档序号:2820219阅读:282来源:国知局
专利名称:抗时间尺度缩放攻击的局部化鲁棒数字音频水印算法的制作方法
技术领域
本发明属于多媒体信息安全中信息隐藏与数字水印技术领域,具体涉及一种全新的能够对数字音频水印技术中最困难的时间域同步攻击Time-Scale Modification进行高强度抵抗的鲁棒性算法。
背景技术
数字音频水印技术是一种在不影响原始音频质量的条件下向其中嵌入具有特定意义且易于提取信息的技术。作为对传统密码学的补充,数字水印提供了对音频作品进行保护的功能,成为近年来的研究热点。除了不为人的听觉感知外,水印还必须能够抵抗音频信号处理及时间域的同步攻击。
同步攻击对任何水印系统都是一个严重的问题,尤其是对数字音频水印系统。时间域的音频同步攻击主要包括随机剪切和保持音调不变的时间尺度缩放TSM(Time-ScaleModification),它们并不除去已嵌入的水印,而是在嵌入和检测位置间引起错位,从而使水印无法正确检测。TSM攻击已成为数字音频水印技术中一个极具挑战性的研究难题。
TSM是一类改变音频信号时间尺度并保持音调不变的算法,也是MPEG4标准的关键特征之一。TSM在音乐合成、音频/视频同步以及商业广播应用中都十分重要。一些TSM算法是基于时间域的,如OLA(Overlap-and-Add)和SOLA(Synchronized Overlap-and-Add),另一些是基于频域技术的,如LSEE-MSTFTM(Least Square Error Estimation from ModifiedShort Time Fourier Transform Magnitude)。TSM周期性地向原始音频中增加或删除一些伪数据,或使用复杂的时间缩放技术来保持音调不变。它是一种非常严重的对音频水印系统的攻击,至今仍没有特别有效的抵抗方法。根据国际音乐组织SDMI(Secured Digital MusicInitiative)第二阶段鲁棒性检测要求,一个可实用的数字音频水印系统应该能够抵抗达到±4%的TSM攻击。

发明内容
本发明的目的在于提出一种基于音乐内容分析的局部化鲁棒数字音频水印算法,用以抵抗音频信号处理攻击并解决由于随机剪切以及时间尺度缩放等引起的时间域同步问题。
本发明提出的局部化鲁棒数字音频水印算法,包括水印嵌入区域的选取、水印嵌入和水印检测等步骤。水印嵌入区域选择在音频波形上均对应于能量突然上升或下降的局部区域,作为音乐边缘,它们通常代表音符的开始、变调,以及鼓、铙钹、响板等打击乐器,而这些声音又与最重要的音乐节奏信息紧密相关。为了保持高的听觉质量,这些局部区域在各种音频信号处理中都尽可能被保留不变。因此,在这些相对安全的区域内嵌入水印,水印就完全有可能避开音频信号处理和TSM等时间域上的同步攻击。此外,在各个局部区域内嵌入的水印对随机剪切具有自然的抵抗力,只要被剪切的样本不在这些区域内就不会对水印的检测造成任何影响。
1、水印嵌入区域的选取通过对各种不同类型的现代音乐,比如流行音乐、摇滚、轻音乐等,进行广泛的测试后,我们发现在大多数情况下,在对原始音乐进行5级小波分解后,军鼓声主要集中于第三级细节信号d3子带,表现为图1中黑色所示的一系列明显的峰值,而其它乐器和人声的能量则十分微弱。
我们在原始音频的波形上选择与d3子带系列峰值相对应的一系列小的局部区域作为水印嵌入区域。这些区域通常代表与音乐节奏密切相关的鼓声。图2是钢琴曲和萨克斯在+10%TSM处理后的d3子带波形,与图1相比,可以看到虽然各峰值的绝对位置由于时间拉长而有所变化,但每个峰值附近的小局部区域并没有大的改变。这意味着即使经过高强度的时间伸缩后,水印仍然可以在与嵌入时几乎相同的局部区域内检测,这大大的增强了抵抗TSM攻击的能力。
2、水印嵌入算法本发明选择傅立叶域的交换系数法来嵌入水印即先挑选一系列FFT系数对,当嵌入比特1时,强制随机挑选出来的两个系数前边的比后边的大;当嵌入比特0时,强制前边的系数比后边的小。这种交换系数法在各种攻击下要比奇偶调制、量化等嵌入方法更稳定。选择傅立叶域是因为FFT(快速傅立叶变换)系数的幅度具有平移不变性。
3、水印检测算法水印检测算法基本是水印嵌入算法的逆算法。首先按照与嵌入时同样的顺序挑选出一系列的FFT系数对。在每个系数对中,若前边的系数大于后边的系数,则提取出一比特1;若前边的系数小于后边的系数,则提取出一比特0;若恰好相等则规定提取出一比特1。
本发明具有一个突出的优点,即不像以前文献中提出的方法那样高度依赖于对某些门限或假定参数的调整,可以不加修改地应用到不同种类的音频信号中。


图1为钢琴曲和萨克斯的原始波形(灰色)和d3级子带波形(黑色),其中,(a)为钢琴曲及其d3子带波形,(b)为萨克斯及其d3子带波形。
图2为钢琴曲和萨克斯在+10%TSM后的波形(灰色)和d3级子带波形(黑色),其中,(a)为+10%时间尺度扩展后的钢琴曲及其d3子带波形,(b)为+10%时间尺度扩展后的萨克斯及其d3子带波形。
具体实施例方式
1、水印嵌入区域的选取选择水印嵌入区域的具体步骤如下(1)首先对输入的原始音频进行5级小波分解;(2)对d3子带采用去噪技术进行平滑,使峰值更突出;(3)计算d3子带上的所有局部峰值{Pi};(4)原始音频上的水印嵌入区域R,按照式(1)计算R={Ri|Ri=Pi-ROILength/4Pi+ROILength×3/4-1} (1)其中ROILength是每个小嵌入区域的长度,相当于一个音符或鼓声的长度。
2、水印嵌入算法具体的水印嵌入步骤如下所示(1)设iPeakNum是步骤1中全部Pi的数目,则嵌入区域的数目ROINum按式(2)计算,目的是保证其为奇数以便在检测时应用择多原则ROINum=iPeakNum+(iPeakNum mod2-1) (2)其中mod为取余数的运算符;(2)根据式(1)在原始波形上计算相应的嵌入区域;(3)确定全部水印嵌入区域后,对每个区域进行FFT变换,挑选1kHz-6kHz的中低频交流FFT系数用于水印嵌入;(4)采用的水印是式(3)所示的64比特伪随机序列W,为了便于在检测中应用择多原则,在嵌入前先使用BPSK(1→-1,0→+1),根据式(4)将W调制到反相序列W’(+1,-1)。实验结果表明采用64比特的水印能够保持比较高的音频质量,若嵌入128比特或更多则会引起比较明显的听觉失真,即超出了4096样本小区域的水印容量。
W={w(i)|w(i)∈{1,0},1≤i≤64}(3)W′={w'(i)|w'(i)=1-2×w(i),w(i)∈{+1,-1},1≤i≤64} (4)(5)为增加水印的安全性,我们利用式(5)所示的Hybrid混沌动力方程[1]来随机选择嵌入过程中的FFT系数对;嵌入时选择(-1,+1)之间的任意一个实数作为密钥;由于混沌序列对初始值的极其敏感性,即使公布算法,若没有正确的密钥也不可能得到正确的FFT交换系数对,从而检测出水印;
chaotic(x)=1-2x2-1≤x<-0.51-12(-2x)1.2-0.5≤x<01-2x0≤x≤0.5-(2x-1)0.70.5<x≤1---(5)]]>ChaoticN(x)是一个基于chaotic(x)按照式(6)实现的函数,用于产生从1到n之间的随机整数[x1,x2,x3,...,x128]=ChaoticN(key,n) (6)每个水印比特位w’(k)按照(7)通过交换系数法被重复地嵌入所有选择出来的局部区域。在水印技术中,将水印重复地嵌入是一种分集技术,这是一种能有效地提高水印在未知非静态环境中可靠性的方法。
for l=1∶ROINumfor k=1∶64flag=ROIFFTR(x2k-1)<ROIFFTR(x2k)ifw′(k)=1andflag=1exchangetheabsolutevalueifw′(k)=-1andflag=0exchangetheabsolutevalue]]>end (7)end其中ROIFFTR(x2k-1))和ROIFFTR(x2k)是中低频带FFT交流系数,因为大多数系数在同一数量级,交换它们不会引起明显的听觉失真;(6)对各个嵌入区域修改后的FFT系数进行离散FFT逆变换,得到时间域的带水印音频信号。
3、水印检测算法具体的水印检测步骤如下所示(1)首先用与嵌入时一样的方法来确定所有的水印检测区域。设iPeakNum1是计算出来的局部能量峰值的数量,则检测区域的数量ROINum1按照式(8)计算,以保证其在应用择多原则时是奇数。注意检测区域的数量ROINum1与嵌入区域的数量ROINum完全可能不同,因为在经过音频信号处理、时间域同步攻击后会有少数的峰值消失,也会有一些新的峰值产生,从而引起检测区域的数量发生变化。这类峰值数目通常很少,在我们的实验中一般不超过10%,而且多是在高强度的音频信号处理如32kbps的MP3压缩或大于±15%的TSM时发生。
ROINum1=iPeakNum1+(iPeakNum1 mod 2-1)(8)(2)对每个检测区域进行快速傅立叶变换,得到一系列的交流FFT系数,用于水印检测;(3)使用与嵌入时同样的密钥和混沌序列,按照式(9)提取在每个检测区域内的嵌入数据,再根据式(10),(11)应用择多原则和解BPSK调制得到最后的检测结果for m=1∶ROINum 1for n=1∶64flag=FFTR(x2n-1)>FFTR(x2n)ifflag=1thenw′(m,n)=1ifflag=0thenw′(m,n)=-1]]>end(9)endw′′(n)=sign(∑m=1m-ROINum1w′(m,n))1≤n≤64,1≤m≤ROINum1---(10)]]>w″(n)=(1-w″(n))/2 1≤n≤64 (11)其中m表示第m个嵌入区域,n表示嵌入到第m个区域中的第n个水印比特,ROINum1是全部检测区域的数量。
(4)按照(12)计算与原始水印之间的误码率,因为嵌入算法在所有选择出来的局部区域中嵌入了完全相同的64比特水印数据,所以只要在任何一个局部区域内检测出水印即可认为检测成功。
BER=164∑i=1i≤64w(i)⊕w′(i)---(12)]]>4、测试结果我们将该算法应用到不同种类的音乐片断中进行实验,包括流行歌曲、摇滚、萨克斯独奏、钢琴独奏、小提琴协奏曲、吉他独奏和双电子琴合奏等。每个音频片断长度为15秒,单声道,16比特/样本,采样频率为44.1kHz。
4.1听觉测试采用SDG(Subjective Difference Grades)进行非正式主观音频质量测试,SDG的含义如表1所示。将原始音频和带水印音频分别提供给10个测试者,让他们对每一种音频按照SDG打分,然后取平均值作为最后的SDG得分。从表2结果中可以看出,测试结果都等于或接近于0,说明原始音频与带水印音频间的听觉质量极其相似。
4.2鲁棒性测试根据SDMI(Secured Digital Music Initiative)第二阶段鲁棒性测试规程进行鲁棒性测试。音频编辑及攻击工具采用CoolEdit Pro 2.0、GlodWave v4.26。以钢琴曲为例的实验条件和鲁棒性测试结果分别列于表3-5。从表3可以看到这种方法对音频信号处理具有足够的鲁棒性。例如,它可以抵抗压缩比达22∶1的MP3压缩(32kbps)、截止频率为4kHz的低通滤波、可听到的噪声、重采样、回声和去噪等。表4显示了算法对随机剪切极强的抵抗力,只要最少一个小的水印嵌入区域没有被剪切掉,水印检测就会成功。在实验中,即使8个随机选取的位置各自剪掉多达10000个样本点,也没有对水印检测造成任何影响。对于抖动攻击,算法具有中等的鲁棒性。表5说明算法达到对TSM具有高达±10%的抵抗能力,远远超过了SDMI第二阶段的±4%的标准,也超过了已知文献中最好±8%的抵抗能力。
参考文献[1]M.P.Kennedy and G.Kolumban,“Digital communication using chaos”,Signal Processing,vol.80,pp.1307-1320,2000.
表1.主管音频质量评测标准SDG

表2.主观听觉测试结果

表3.对音频信号处理的正确检测区域比RCDR,相关性Sim,误码率BER测试结果


表4.对随机剪切、抖动攻击的RCDR,Sim,BER测试结果

表5.对TSM攻击的RCDR,Sim,BER测试结果

权利要求
1.一种抗时间尺度缩放攻击的局部化鲁棒数字音频水印算法,其特征在于包括水印嵌入区域的选取、水印嵌入区域的选取、水印嵌入和水印检测,其中水印嵌入区域选择在原始音频波形上与d3子带系列峰值相应的局部区域水印嵌入选择傅立叶域的交换系数法当嵌入比特1时,强制随机挑选出来的两个系数前边的比后边的大;当嵌入比特0时,强制前边的系数比后边的小;水印检测是水印嵌入算法的逆算法首先按照与嵌入时同样的顺序挑选出一系列的FFT系数对;在每个系数对中,若前边的系数大于后边的系数,则提取出一比特1;若前边的系数小于后边的系数,则提取出一比特0;若恰好相等则规定提取出一比特1。
2.根据权利要求1所述的水印算法,其特征在于选择水印嵌入区域的具体步骤如下(1)首先对输入的原始音频进行5级小波分解;(2)对d3子带采用去噪技术进行平滑,使峰值更突出;(3)计算d3子带上的所有局部峰值{Pi};(4)原始音频上的水印嵌入区域R,按照式(1)计算R={Ri|Ri=Pi-ROILength/4∶Pi+ROILength×3/4-1}(1)其中ROILength是每个小嵌入区域的长度,相当于一个音符或鼓声的长度。
3.根据权利要求2所述的水印算法,其特征在于水印嵌入步骤如下所示(1)设iPeakNum是步骤1中全部Pi的数目,则嵌入区域的数目ROINum按式(2)计算,ROINum=iPeakNum+(iPeakNum mod 2-1) (2)其中mod为取余数的运算符;(2)根据式(1)在原始波形上计算相应的嵌入区域;(3)确定全部水印嵌入区域后,对每个区域进行FFT变换,挑选1kHz-6kHz的中低频交流FFT系数用于水印嵌入;(4)采用的水印是式(3)所示的64比特伪随机序列W,在嵌入前先使用BPSK(1→-1,0→+1),根据式(4)将W调制到反相序列W’(+1,-1);W={w(i)|w(i)∈{1,0},1≤i≤64} (3)W′={w′(i)|w′(i)=1-2×w(i),w′(i)∈{+1,-1},1≤i≤64} (4)(5)利用式(5)所示的Hybrid混沌动力方程来随机选择嵌入过程中的FFT系数对;嵌入时选择(-1,+1)之间的任意一个实数作为密钥;chaotic(x)=1-2x2-1≤x<-0.51-12(-2x)1.2-0.5≤x<01-2x0≤x≤0.5-(2x-1)0.70.5<x≤1---(5)]]>ChaoticN(x)是一个基于chaotic(x)按照式(6)实现的函数,用于产生从1到n之间的随机整数[x1,x2,x3,...,x128]=ChaoticN(key,n) (6)每个水印比特位w’(k)按照(7)通过交换系数法被重复地嵌入所有选择出来的局部区域for l=1∶ROINumfor k=1∶64flag=ROIFFTR(x2k-1)<ROIFFTR(x2k)(7)ifw′(k)=1andflag=1exchangetheabsolutevalueifw′(k)=-1andflag=0exchangetheabsolutevalue]]>endend其中ROIFFTR(x2k-1))和ROIFFTR(x2k)是中低频带FFT交流系数;(6)对各个嵌入区域修改后的FFT系数进行离散FFT逆变换,得到时间域的带水印音频信号。
4.根据权利要求3所述的水印算法,其特征在于水印检测的步骤如下(1)首先用与嵌入时一样的方法来确定所有的水印检测区域;设iPeakNum1是计算出来的局部能量峰值的数量,则检测区域的数量ROINum1按照式(8)计算,ROINum1=iPeakNum1+(iPeakNum1 mod 2-1) (8)(2)对每个检测区域进行快速傅立叶变换,得到一系列的交流FFT系数,用于水印检测;(3)使用与嵌入时同样的密钥和混沌序列,按照式(9)提取在每个检测区域内的嵌入数据,再根据式(10),(11)应用择多原则和解BPSK调制得到最后的检测结果for m=1∶ROINum 1for n=1∶64flag=FFTR(x2n-1)>FFTR(x2n)(9)ifflag=1thenw′(m,n)=1ifflag=0thenw′(m,n)=-1]]>endendw′′(n)=sign(Σm=1m=ROINum1w′(m,n))1≤n≤64,1≤m≤ROINum1---(10)]]>w″(n)=(1-w″(n))/21≤n≤64 (11)其中m表示第m个嵌入区域,n表示嵌入到第m个区域中的第n个水印比特,ROINum1是全部检测区域的数量;(4)按照(12)计算与原始水印之间的误码率BER=164Σi=1i≤64w(i)⊕w′(i)---(12)]]>
全文摘要
本发明属多媒信息安全技术领域,具体为一种抗时间尺度缩放攻击的局部化鲁棒数字音频水印算法。它包括水印嵌入区域的选取、水印嵌入和水印检测等步骤。其中,水印嵌入区域选择在音频波形上均对应于能量突然上升或下降的局部区域;水印嵌入选择傅立叶域的交换系数法;水印检测是水印嵌入算法的逆算法。本发明方法不依赖于对门限或假定参数的调整,可应用于不同种类的音频信号中。
文档编号G10L19/00GK1713273SQ20051002797
公开日2005年12月28日 申请日期2005年7月21日 优先权日2005年7月21日
发明者李伟, 薛向阳, 陆佩忠 申请人:复旦大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1