语音信号数字水印技术._第1页
语音信号数字水印技术._第2页
语音信号数字水印技术._第3页
语音信号数字水印技术._第4页
语音信号数字水印技术._第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数字信号处理课程设计报告题目: 语音信号水印技术系统设计 系 (院): 专 业: 班 级: 学 号: 姓 名: 指导教师: 学年学期: 2013 2014 学年 第 学期2013年 月 日摘要随着网络和信息技术的发展,越来越多的数字多媒体信息通过网络进行传播,与传统的模拟媒体相比,数字媒体产品的编辑、复制和传播都很方便,它一方面促进了社会的进步与发展,另一方面正是这些优点突出了版权问题。由于数字多媒体信息很容易被未经授权的用户复制,且采用传统密码方法加密,不能完全解决盗版问题。数字水印技术正是应运而生的信息隐藏技术,它通过特定的水印算法把版权信息嵌入在数字产品中,被嵌入的可以是一段文字、标识、

2、序列号等等,人们无法从表面上感知水印的存在,只有专用的检测仪器或计算机软件才可以检测出隐藏的数字水印,从而达到了保护数字作品的所有者利益的目的,并促进了数字产品的开发与使用。在数字产品中,音频数据产品的版权保护也显得越来越重要,因为随着数字化音像制品和音乐制品的大量制作与发行,一个令人关注的突出问题是网上下载音乐对传统CD业的巨大冲击。音频水印技术主要利用了人类听觉模型,在不影响音频信号质量的前提下,将水印信息隐藏在人耳不能感知的位置,来隐藏水印数据。本文主要研究语音信号水印技术,利用小波变换的优点和特性对音频信号嵌入水印,并提取。使嵌入水印音频想好具有良好的安全性,鲁棒性和不可感知性。关键词

3、 数字水印 嵌入 提取 小波变换数字信号处理课程设计报告1目录1 课题综述11.1 数字水印技术的介绍11.2 数字水印设计原理22 系统分析与设计32.1 涉及基础知识32.2 算法的流程图52.3 算法实现53 代码编写73.1 主要代码73.2 程序调试103.3 程序运行与测试10结论14致谢16参考文献171 课题综述1.1 数字水印技术的介绍数字水印就是指嵌入到被保护对象(如静止图像、音频、视频)中的某些能够证明其版权归属的数字信息,可以是作者的姓名、序列号、公司标志等等。数字水印技术有着其固有的特点与研究方法。例如,从信息安全保密角度而言,隐藏的信息如果被破坏掉,系统可以视为安全

4、的,因为秘密信息并未泄漏,但是,在数字水印系统中,隐藏信息的丢失意味着版权信息的丢失,从而失去了版权保护的功能。因此数字水印系统必须具有较强的鲁棒性、安全性、透明性等特点:透明性(隐藏性):经过一系列隐藏处理,目标数据必须没有明显的降质现象,隐藏的数据无法人为的看见或听见。1) 鲁棒性:指抗拒各种处理操作和恶意攻击而不导致水印信息丢失的能力。所谓的操作包括:传输过程中的信道噪声、滤波、增强有损压缩、几何变换、DA或AD转换等等。所谓的攻击包括:篡改、伪造、去除水印等等。数字水印起源于信息隐藏技术,这一点可以从它的隐藏性要求得到证实。2) 安全性:指将水印信息隐藏于目标数据的内容之内,而非文件头

5、等处,防止因格式转换而遭到破坏。3) 无歧义性:恢复出的水印或水印判决的结果应该能够确定地表明所有权,不会发生多重所有权的纠纷。4) 通用性:好的水印算法适用于多种文件格式和媒体格式。通用性在某种程度上意味着易用性。但数字水印技术并不等同于信息隐藏技术,两者的区别在于对鲁棒性的要求上。信息隐藏的鲁棒性要求可以降低,也就是说在数据经过改动后允许隐藏信息的丢失,信息隐藏主要是关注隐藏信息的检测,而数字水印主要关注被盗版者擦除的可能性。数字水印必须能在一定限度内承受各种攻击而留存下来,这样才能实现有意义的版权保护。在音频中加入水印,要考虑到音频载体信号的在人类听觉系统、音频格式以及传送环境等方面的特

6、点。与图像和视频相比,音频信号在相同的时间间隔内采样的点数少。这使得音频信号中可嵌入的信息量要比可视媒体也要少。并且由于人耳听觉系统(HAS)要比人眼视觉系统(HVS)敏感得多,因此听觉上的不可知觉性实现起来要比视觉上困难得多。1.2 数字水印设计原理水印原始信号密钥编码器嵌入水印后信吧息息飞号2息原始水印待测信息密钥解码器检测结果或提出兵水印图1-1 水印信号嵌入系统模型 图 1-2 水印信号检测系统模型数字水印技术包含水印的嵌入、提取/检测两个过程。数字作品拥有的特定信息,如数字序列、数字标识、文本或图像等,按某种算法嵌入到数字作品中,在需要时,通过相应的算法提取出该水印,从而能够验证数字

7、作品的合法性。为了给攻击者增加去除水印的难度,目前大多数水印制作方案都采用密码学中的加密体系来加强安全性,在水印的嵌入和提取/检测时采用一种密钥,甚至几种密钥联合使用。数字水印的嵌入过程如图1-1所示,数字水印的提取/检测过程如图1-2所示2 系统分析与设计2.1 涉及基础知识2.1.1 离散小波变换(Discrete Wavelet Transform,DWT)小波变换是由法国科学家Morlet于1980年进行地震分析工作时提出的,但小波变换研究的热潮始于1986年。小波变换优于傅立叶变换的主要原因在于它的多分辨率特性,它可以针对不同信号变换而进行窗口的伸缩变化。加窗傅立叶变换可以形象地看成

8、是固定尺寸的矩形时频窗口在时频域中滑动,并透过这个窗口来“观察”信号。这种固定矩形窗口的观察方法与人们期望的观察不太一致。例如,对一个高频成分丰富的信号,即变化很快的信号,最感兴趣的问题是它的发生时间,而对其频率则不要求知道的很准确;但是对一个变化很慢的信号,被关注的是频率,而对时间范围则不要求很精细。小波分析适应这种要求,它可以对高频成分使用大的频域窗口、小的时域窗口,而对于低频成分采用小的频域窗口、大的时域窗口。1988年,Mallat受到塔式算法的启发,在多分辨率分析的指导下建立了Mallat算法,对小波变换的实际应用具有划时代的意义。Mallat算法本质上不需要知道尺度函数(t)和小波

9、函数(t)的具体结构,只由系数hn和gn就可以实现信号的分解与重构,因此也称为快速小波变换。利用快速小波变换,选择一定的小波函数对输入信号进行一定尺度的分解,得到这个尺度下信号的高频部分和低频部分,在一个尺度下,高频部分和低频部分包含了完全恢复上一尺度下信号的全部信息。这种分解如果重复进行,就得到了信号的多尺度分解,从而得到了信号的多层小波系数,即信号的低频系数和一系列的高频系数。如图2-1所示的小波分解树。图 2-1 小波分解树对于大多数信号来说,低频部分给出了信号的特征,往往是最重要的,而高频部分则与噪音及扰动联系在一起。将信号的高频部分去掉,信号的基本特征仍然可以保留。所以,一般的信号处

10、理都是针对这部分来进行的。因此,在信号分析中,经常会提到信号的近似部分与细节部分。近似主要是系统全局的、低频的部分,而细节往往是信号局部、高频的成分。将信号分解成一个个互相正交小波函数的线性组合,可以展示信号的重要特性,但这并不是小波分析的全部。小波分析另一个重要的方面就是分析、比较、处理(如去掉高频信号、加密等)小波系数后,根据新得到系数去重构信号。这个过程称之为逆离散小波变换(IDWT),或小波重构、合成等。信号重构的基本过程如图2-2所示。图 2-2 小波重构2.1.2 主要算法近几年来,数字水印技术研究取得了很大的进步 ,本文对一些典型的算法进行分析,除特别指明,这些算法主要针对图象数

11、据(某些算法也适合视频和音频数据)。生理模型算法,人的生理模型包括人类视觉系统HVS(Human Visual System)和人类听觉系统HAS。该模型不仅被多媒体数据压缩系统所利用,同样可以供数字水印系统所利用。利用视觉模型,实现了一个基于分块DCT框架的数字水印系统;实现了一个基于小波分解框架的数字水印系统;实现了一个空域数字水印系统。它们的基本思想均是利用从视觉模型导出的JND(Just Noticeable Difference)描述来确定在图象的各个部分所能容忍的数字水印信号的最大强度,从而能避免破坏视觉质量。也就是说,利用视觉模型来确定与图象相关的调制掩模,然后再利用其来插入水印

12、。这一方法同时具有好的透明性和强健性。变换域算法:这是一种DCT域数字水印算法,其方法是首先把图象分成8x8的不重叠象素块,在经过分块DCT变换,得到由DCT系数组成的频率块,然后随机选取一些频率块,将水印信号嵌入到由密钥控制选择的一些DCT系数中。该算法是通过对选定的DCT系数进行微小变换以满足特定的关系,来表示一个比特的信息。在水印信号提取时,则选取相同的DCT系数,并根据系数之间的关系抽取比特信息。其思想类似于扩展频谱通讯中的跳频(frequency hopping)技术,特点是数据改变幅度较小,且透明性好,但是其抵抗几何变换等攻击的能力较弱。另外基于DFT和DWT算法与上述算法具有相似

13、的原理。这种以变换域算法为代表的通用算法普遍采用变换技术,以便在频率域实现水印信号叠加,并借鉴扩展频谱通讯等技术对水印信号进行有效的编码,从而提高了透明性和鲁棒性,同时还适当利用滤波技术对水印信号引入的高频噪声进行了消除,从而增加了对低频滤波攻击的抵抗力。2.2 算法的流程图 算法流程图如图2-3所示图2-3 算法流程图2.3 算法实现2.3.1 水印嵌入1) 设A是原始音频信号,根据音频文件类型将它分为两部分A = AH +AL其中:AH 是与文件类型相关的部分,所以保留下来不做处理;AL是可以嵌入水印的部分,长度是L ,它可以表示为A =a(l),0 l<L其中a(l) 是AL第I个

14、数据的幅值。2) 假设水印是长度LS的音频文件,用ls表示:ls =ls(j),0 j<LS3) 水印分段操作:因为原音频信号进行小波变换后,利用量化的方法将其分段,所以讲水印音频也进行相应的分段,最后对应相加。N = L/LS这里水印分段不一定取得正数段,所以对其取整,将余数归为最后一段。4) 原始音频信号的一维离散小波变换:选择合适的小波基进行一维小波三级分解。DL=DWT(AL)= cA3 cD3cD2cD1其中:cA3和cD3是三级分解的近似分量和细节分量;cD2和cD1是二级和一级小波分解的细节分量。由于小波分解的近似分量是信号的低频部分,往往是最重要的,水印嵌入在这部分可以增

15、强水印的稳健性。因此,提取这部分小波系数来进行下一步的变换。 5) 特征区的检测:因为离散余弦变换的中低频系数集中了信号的大部分特征,同时也是数值较大的部分,所以将水印信号嵌入在此,一是水印的嵌入对其影响不大;二是水印的稳健性也会加强。因此,通过排序将满足水印长度的最大的离散余弦系数作为嵌入水印的特征点。设这些点所组成的序列为 Ck =MAX(CL),0kK 6) 水印信号的嵌入:这里通过修改系数来进行水印的嵌入,设C*为嵌入水印后的音频信号 (0kK) 这里的是大于0的比例因子,通过调节它的大小,在具有听觉不可见性的同时,保证所嵌入的水印信息强度足够大,便于水印信息的正确提取。在此期间其他的

16、离散余弦系数值不变。 7) 离散小波逆变换:以C*代替5式的cA3作离散小波变换,得到嵌入水印后的小波变换域的表示式为DL=C* cD3 cD2 cD1将其倒置AL=D将AL代替AL最终得到含有水印的音频信号Aw =AH + AL最后将其输出。2.3.2 水印提取1) 读取嵌入水印的音频信号。对信号进行三级小波分解,再次提取其低频分量ca31和其他主要分量cd31、cd21、cd11。2) 读取原音频信号,对进行一级小波分解,读取低频分量ca3。3) 对低频分量ca31和ca3进行分段,使用嵌入算法中分段的方式,找到水印嵌入的数据点。使用嵌入水印音频信号的低频分量减去元信号低频分量,即可得到,

17、原水印信号c3。c3 = ca31 ca33 代码编写3.1 主要代码3.1.1 三级小波分解 c,l=wavedec(y,3,'db4'); %3级小波分解,低频又叫近似,高频又叫细节ca3=appcoef(c,l,3,'db4'); %提取3级小波分解的最低频部分cd3=detcoef(c,l,3); %提取3级小波分解的次低频部份cd2=detcoef(c,l,2);cd1=detcoef(c,l,1);分析:这段为小波分解过程,对原始音频信号进行三重小波分解,提取其第三级低频分量ca3和一些主要分量cd3、cd2、cd1。并保留到重构时候使用。3.1.2

18、 原始音频频谱分析fs=8000; %声卡默认采样频率为8000Hzkk.wave,fs,bits= wavread('c.wav') %采样率fs,采样精度bits xmax=max(abs(kk.wave); %计算最大幅度xmin=min(abs(kk.wave); %计算最小幅度l1=size(kk.wave); %计算出总长度l1,便于FFT分析频谱t=(0:length(kk.wave)-1)/fs;sound(kk.wave,fs); %回放监听y1=fft(kk.wave,fs); %对信号做FFT变换f=fs*(0:900)/fs; %采样分析:这段为原始语音

19、信号的读入,以及实现它的时域波形和频域波形,作FFT时域频谱分析。3.1.3 水印信号频谱分析fs=8000; %声卡默认采样频率为8000Hzmark.wave,fs,nbits= wavread('d.wav') %采样率fs,采样精度bitssymax=max(abs(mark.wave); %计算最大幅度symin=min(abs(mark.wave); %计算最小幅度l2=size(mark.wave); %计算出总长度l2,便于FFT分析频谱t=(0:length(mark.wave)-1)/fs;sound(mark.wave,fs); %回放监听syfft=ff

20、t(mark.wave,fs); %对信号做FFT变换f=fs*(0:900)/fs; %采样分析:这段为原始水印信号的读入,以及实现它的时域波形和频域波形,作FFT时域频谱分析。3.1.4 嵌入水印randn('seed',10); %产生随机高斯序列lz=randn(1,lx);ss=lz;q=0.2; %设置水印嵌入强度rr=ss*q; x(i)=x(i).*(1+2*rr'); %嵌入水印c1=x',cd3',cd2',cd1' %小波s1=waverec(c1,l,'db4');file1='已加水印.w

21、av'dd=length(s1);ee=reshape(s1,dd/2,2);wavwrite(ee,fs,bits,file1);分析:这段首先产生随机的高斯序列,将水印信号分别加到分好段的原始音频信号中。最后乘以一个系数q(这里我们设置为0.2),系数q为水印嵌入强度,可以自由设置,最后生成加入了水印后的音频。3.1.5 加入白噪fz=sum(y.*y); %计算嵌入了水印的信号的信噪比%fm=sum(y-yc).*(y-yc);%SNR=-10*log(fm/fz)yyy=randn(1,dd); %加入白噪声 b=sqrt(0.01); yyy=b*yyy; s1=s1+yyy

22、;file2='已加白噪.wav'ee1=reshape(s1,dd/2,2);wavwrite(ee1,fs,bits,file2);kk.wave = wavread('已加白噪.wav'); %读入声音文件sound(kk.wave,fs); %回放监听yr=kk.wave;cr,lr=wavedec(yr,3,'db4');car3=appcoef(cr,lr,'db4',3);cdr3=detcoef(cr,lr,3);cdr2=detcoef(cr,lr,2);cdr1=detcoef(cr,lr,1);xr=car3

23、; 分析:这段是在原课程设计要求的基本上添加的一个功能,加入白噪声,并将已加白噪的音频进行了过滤,生成去除了白噪声后的含水印信号的原始音频频谱。3.1.6 水印之差 rr1=reshape(rrr,1,lx);syc=rr1-rr;plot(syc); %画出水印差别图%axis(0 16e3 -1 1);rrr=(xr(i)./x1(i)-1)/2;d=length(rr);x=0;y=0;z=0;for i=1:d x=x+rr(i)*rrr(i); y=y+rr(i)2; z=z+rrr(i)2; endp=x/(y0.5)*(z0.5) %计算相关度分析:这段为完成了前面的嵌入水印和加

24、入噪声后,通过相关度的计算,做的一个关于加入水印前和加入水印后音频信号差别的频谱分析。 3.2 程序调试 本次语音信号水印技术系统设计程序代码相对较少,但是计算比较复杂。在原理弄懂之后,调试还是比较简单的。试调中碰到最多的问题是数据维数不对称,导致水印信号不能嵌入。因为我们设计的算法使用的是一维数组,可以进行简单的行列转换即可解决。但由于设计之初算法只能满足一些数据量较小的音频数据,对于数据量大的音频数据会出现无法计算的情况,即便可以计算,时间相当之长。这只能不断提高算法的效率性和方便性,这我们会在将来的学习中不断改进。3.3 程序运行与测试3.3.1 三级小波分解图3-1 三级小波分解波形图

25、3.3.2 原始音频频谱图3-2 原始语音信号波形与频谱图3.3.3 原始水印频谱图3-3 原始水印信号波形与频谱图3.3.4 嵌入水印信号图3-4 加入水印后语音信号波形图3.3.5 去噪提取水印图3-5 加入白噪声后提取水印的波形图3.3.6 水印之差图3-6 水印之差波形图通过嵌入水印后波形图与原音频波形图比较,我们可以看到嵌入水印的波形变化较小,具有较好的水印隐藏性。结 论本次课程设计我主要设计语音信号数字水印的嵌入和提取。相对于其他设计题目,音频水印的嵌入与提取难度相对较大,并且借鉴的例子也很少,我和选择相同设计题目的同学通过了大量的学习和不断的讨论,最终将一个稳定性、鲁棒性、透明性

26、都相对良好的算法给确定了下来,并且完成了音频水印的嵌入和提取。在此基础上还添加了噪声和去噪等功能。在设计之初,我认为要设计一个水印系统满足以设计要求是很困难的。有些性质如鲁棒性、透明性和数据容量之间是相互矛盾的,因此,在这些要求中寻找最佳平衡是水印系统设计的目标。并且在没有先例的情况下,我借鉴了一些图像水印嵌入的方法,试图将其代码变为音频所用。事实证明这并不可取,图像水印可以二值转换,数据处理量瞬间减少很多。音频信号数据量巨大,若要硬性相加,可能出现差错,并且占用数据空间巨大,计算困难。但是图像水印的嵌入思想我可以借鉴,即基于小波分解的方法嵌入水印信号。小波分解的方法可以提取低频分量,将水印信

27、号嵌入其低频分量,并保持较多的原始音频信息,比较合适水印的要求。这使得我们很快进入算法设计,在未清楚相应算法的情况下我和同学讨论后提出原音频信号与水印信号相加的想法。将原音频信号进行小波分解,提取第三级低频分量,直接与水印信号相加。但是我们发现嵌入水印的音频信号还保留了不少水印信号的声音,波形变化也比较大,不能满足较好的鲁棒性,不能较好的满足水印设计的要求。在完成初步的水印嵌入后,我们并不满足于简单的相加算法。之后的大量是间,我都在和同学讨论新的算法分段相加法。这个方法来源于小波分解,小波分解是将高低频率的信号进行分解,而我们是将时域上的信号进行分段。这个算法由我和同学自主研究,在结合了一些图

28、像水印嵌入和小波分解的思想后,我们终于完成该算法,并顺利应用在信息量适中的音频信号中,水印嵌入效果良好,嵌入水印音频中水印信号声音几乎不可闻,具有较好的鲁棒性和透明性。并且避免了之前提到的维度不同无法相加的情况,因为我们一直是在一维数组的情况下对信息分段,不会出现多维情况。但实验结束后,我们对该算法仍然保有怀疑态度。该算法虽然采用较先进的思想,但是计算上还是比较传统。计算数据量有所提高,但是并不能满足所有的音频信号。最后通过大量的课外学习,我和同学大胆提出量化的方法,量化的方式是将某段区间内接近1或0的数据向1或0靠拢,最后将他们分别合并到一个区间,最后只剩下1和0的区间,这使得计算量大量减少,并且计算出错率大幅减少。但是该算法及其复杂,我们在短时间内并不能将其完善,只是提出一个框架,并设计了一些量化的步骤和方式。由于时间原因,我们未能将采用量化思想的算法完成,对此我感到比较遗憾。但是在今后的学习中,量化的思想可以应

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论