数字信号处理课设语音信号的数字水印技术Word下载.docx
《数字信号处理课设语音信号的数字水印技术Word下载.docx》由会员分享,可在线阅读,更多相关《数字信号处理课设语音信号的数字水印技术Word下载.docx(21页珍藏版)》请在冰豆网上搜索。
6.参考文献必须用中文字,英文标点,参考文献标题必须用[1]。
例如
[2] 钟麟,王峰.MATLAB仿真技术与应用教程[M].国防工业出版社,2005-3.
7.最后一页必须有成绩评定表,模板里有
8.每一页中最后不能有大空白,就算有图片也必须把空白填上,可以把图片后面文字提前。
但是图片和图片下的题目必须在同一页。
数字信号处理
课程设计报告
课设题目:
语音信号的数字水印技术学 院:
信息与电气工程学院
专 业:
电子信息工程班 级:
1102502
姓 名:
柳立志
学 号:
110250208
指导教师:
周志权、赵占锋
哈尔滨工业大学(威海)
2015年1月5日
哈尔滨工业大学(威海)课程设计报告
-I-
1.课程设计任务
在保密数据传递等应用中,有时采用将一句话或一段文字或一段音乐隐藏在另一段音乐中,然后利用专门的算法来提取所传的信息,这种方法也称为数字水印技术。
这种方法的好处是信息隐藏在极为平常的声音或其它媒介中,不易被察觉。
1)利用语音获取设备获取需要传送的保密语音信号;
2)选择用于传输保密语音信号的普通声音载体,可以是广为流传的歌曲、音乐或其他声音文件;
3)采用数字水印技术进行信息处理,这个处理过程可以选用多种方式,可查阅参考相应文献,最简单的办法就是将需要传送的语音信号的每一个比特分别加入到载体信号每一个采样的最低位,这样对载体信号的影响最小,保密信息也可以被简单的提取。
同时也可以考虑在频域对其进行处理;
4)对加入水印信息的文件及未加之前文件的频域及时域信号进行对比,分析其影响;
5)对加入水印信息的文件进行各种滤波处理,然后再对其进行水印提取,观察其结果;
6)编制用户界面。
2.课程设计原理及设计方案
2.1数字水印技术
数字水印就是指嵌入到被保护对象(如静止图像、音频、视频)中的某些能够证明其版权归属的数字信息,可以是作者的姓名、序列号、公司标志等等。
数字水印技术有着其固有的特点与研究方法。
例如,从信息安全保密角度而言,隐藏的信息如果被破坏掉,系统可以视为安全的,因为秘密信息并未泄漏,但是,在数字水印系统中,隐藏信息的丢失意味着版权信息的丢失,从而失去了版权保护的功能。
因此数字水印系统必须具有较强的鲁棒性、安全性、透明性等特点:
透明性(隐藏性):
经过一系列隐藏处理,目标数据必须没有明显的降质现象,隐藏的数据无法人为的看见或听见。
1)鲁棒性:
指抗拒各种处理操作和恶意攻击而不导致水印信息丢失的能力。
所谓的操作包括:
传输过程中的信道噪声、滤波、增强有损压缩、几何变换、
D/A或A/D转换等等。
所谓的攻击包括:
篡改、伪造、去除水印等等。
数字水印起源于信息隐藏技术,这一点可以从它的隐藏性要求得到证实。
2)安全性:
指将水印信息隐藏于目标数据的内容之内,而非文件头等处,防
1
止因格式转换而遭到破坏。
3)无歧义性:
恢复出的水印或水印判决的结果应该能够确定地表明所有权,不会发生多重所有权的纠纷。
4)通用性:
好的水印算法适用于多种文件格式和媒体格式。
通用性在某种程度上意味着易用性。
但数字水印技术并不等同于信息隐藏技术,两者的区别在于对鲁棒性的要求上。
信息隐藏的鲁棒性要求可以降低,也就是说在数据经过改动后允许隐藏信息的丢失,信息隐藏主要是关注隐藏信息的检测,而数字水印主要关注被盗版者擦除的可能性。
数字水印必须能在一定限度内承受各种攻击而留存下来,这样才能实现有意义的版权保护。
在音频中加入水印,要考虑到音频载体信号的在人类听觉系统、音频格式以及传送环境等方面的特点。
与图像和视频相比,音频信号在相同的时间间隔内采样的点数少。
这使得音频信号中可嵌入的信息量要比可视媒体也要少。
并且由于人耳听觉系统(HAS)要比人眼视觉系统(HVS)敏感得多,因此听觉上的不可知觉性实现起来要比视觉上困难得多。
2.2离散小波变换
小波变换是由法国科学家Morlet于1980年进行地震分析工作时提出的,但小波变换研究的热潮始于1986年。
小波变换优于傅立叶变换的主要原因在于它的多分辨率特性,它可以针对不同信号变换而进行窗口的伸缩变化。
加窗傅立叶变换可以形象地看成是固定尺寸的矩形时频窗口在时频域中滑动,并透过这个窗口来“观察”信号。
这种固定矩形窗口的观察方法与人们期望的观察不太一致。
例如,对一个高频成分丰富的信号,即变化很快的信号,最感兴趣的问题是它的发生时间,而对其频率则不要求知道的很准确;
但是对一个变化很慢的信号,被关注的是频率,而对时间范围则不要求很精细。
小波分析适应这种要求,它可以对高频成分使用大的频域窗口、小的时域窗口,而对于低频成分采用小的频域窗口、大的时域窗口。
1988年,Mallat受到塔式算法的启发,在多分辨率分析的指导下建立了
Mallat算法,对小波变换的实际应用具有划时代的意义。
Mallat算法本质上不
17
需要知道尺度函数F(t)
和小波函数Y(t)
的具体结构,只由系数h和g就可
以实现信号的分解与重构,因此也称为快速小波变换。
利用快速小波变换,选择一定的小波函数对输入信号进行一定尺度的分解,得到这个尺度下信号的高频部分和低频部分,在一个尺度下,高频部分和低频部分包含了完全恢复上一尺度下信号的全部信息。
这种分解如果重复进行,就得到了信号的多尺度分解,从而得到了信号的多层小波系数,即信号的低频系数和一系列的高频系数。
对于大多数信号来说,低频部分给出了信号的特征,往往是最重要的,而高频部分则与噪音及扰动联系在一起。
将信号的高频部分去掉,信号的基本特征仍然可以保留。
所以,一般的信号处理都是针对这部分来进行的。
因此,在信号分析中,经常会提到信号的近似部分与细节部分。
近似主要是系统全局的、低频的部分,而细节往往是信号局部、高频的成分。
将信号分解成一个个互相正交小波函数的线性组合,可以展示信号的重要特性,但这并不是小波分析的全部。
小波分析另一个重要的方面就是分析、比较、处理(如去掉高频信号、加密等)小波系数后,根据新得到系数去重构信号。
这个过程称之为逆离散小波变换(IDWT),或小波重构、合成等。
2.3设计方案
2.3.1水印嵌入
设A是原始音频信号,根据音频文件类型将它分为两部分
A=AH+AL
其中:
AH 是与文件类型相关的部分,所以保留下来不做处理;
AL是可以嵌入水印的部分,长度是L,它可以表示为
A={a(l),0£
l<
L}
其中a(l)是AL第I个数据的幅值。
1)假设水印是长度LS的音频文件,用ls表示:
ls={ls(j),0£
j<
LS}
2)水印分段操作:
因为原音频信号进行小波变换后,利用量化的方法将其分段,所以讲水印音频也进行相应的分段,最后对应相加。
N=L/LS
这里水印分段不一定取得正数段,所以对其取整,将余数归为最后一段。
3)原始音频信号的一维离散小波变换:
选择合适的小波基进行一维小波三级分解。
DL=DWT(AL)=cA3Å
cD3Å
cD2Å
cD1
cA3和cD3是三级分解的近似分量和细节分量;
cD2和cD1是二级和一级小波分解的细节分量。
由于小波分解的近似分量是信号的低频部分,往往是最重要的,水印嵌入在这部分可以增强水印的稳健性。
因此,提取这部分小波系数来进行下一步的变换。
4)特征区的检测:
因为离散余弦变换的中低频系数集中了信号的大部分特征,同时也是数值较大的部分,所以将水印信号嵌入在此,一是水印的嵌入对其影响不大;
二是水印的稳健性也会加强。
因此,通过排序将满足水印长
度的最大的离散余弦系数作为嵌入水印的特征点。
设这些点所组成的序列为
Ck={MAX(CL’),0£
k£
K}
5)水印信号的嵌入:
这里通过修改系数来进行水印的嵌入,设C*为嵌入水印后的音频信号
* ì
Ck(1+a)if v(k)=1
Ck=í
(+a)if
v(k)=0
(0≤k≤K)
î
Ck1
这里的a是大于0的比例因子,通过调节它的大小,在具有听觉不可见性的同时,保证所嵌入的水印信息强度足够大,便于水印信息的正确提取。
在此期间其他的离散余弦系数值不变。
6)离散小波逆变换:
以C*’代替5式的cA3作离散小波变换,得到嵌入水印后的小波变换域的表示式为
D’L=C*’Å
将其倒置
A’L=D
将A’L代替AL最终得到含有水印的音频信号
Aw=AH+A’L
最后将其输出。
2.3.2水印提取
1)读取嵌入水印的音频信号。
对信号进行三级小波分解,再次提取其低频分量ca31和其他主要分量cd31、cd21、cd11。
2)读取原音频信号,对进行一级小波分解,读取低频分量ca3。
3)对低频分量ca31和ca3进行分段,使用嵌入算法中分段的方式,找到水印嵌入的数据点。
使用嵌入水印音频信号的低频分量减去元信号低频分量,即可得到原水印信号c3。
c3=ca31–ca3
2.4算法的流程图
置乱
数字水印信号
数据嵌入
特征点检测
源数字音频信号
小波D
级分量
其他D级小分量
分段
嵌入水印点的音频
图2-1算法的流程图
3.课程设计的步骤及结果
3.1读入原始信号
clareset;
Fs=44100;
FILE1='
Rihanna-TakeABow.wav'
;
[y,Fs,bits]=wavread(FILE1);
%音频信号y,采样率fs,采样精度bitsy_fft=fft(y,Fs);
y_fft_f=2*sqrt(y_fft.*conj(y_fft));
axes(handles.axes1);
plot(y);
gridon;
axistight;
title('
原始音频信号的时域波形'
);
xlabel('
time(s)'
ylabel('
幅度'
axes(h