?? test.m
字號:
%讀入聲音文件
FILE='e:\msg.wav';
Y=wavread(FILE);
%繪制原始聲音圖像
subplot(4,1,1);
plot(Y);
title('原始聲音信號');
%用db4小波對讀入的聲音文件進行3級小波分解
[c,l]=wavedec(Y,3,'db4');
%提取3級小波分解的低頻系數和高頻系數
ca3=appcoef(c,l,'db4',3);
cd3=detcoef(c,l,3);
cd2=detcoef(c,l,2);
cd1=detcoef(c,l,1);
x=ca3;
lx=length(x);
%繪制低頻系數波形
subplot(4,1,2);
plot(x);
title('低頻系數圖形');
%找出低頻系數中大于0.2倍最大值的序列
s=max(abs(x))*0.2;
i=find(abs(x)>s);
%產生隨機高斯信號作為水印信號
lx=length(x(i));
randn('seed',10);
mark=randn(1,lx);
%繪制水印信號波形
subplot(4,1,3);
plot(mark);
title('水印信號');
%調整水印強度
ss=mark;
rr=ss*0.02;
%嵌入水印信號
x(i)=x(i).*(1+rr');
%小波重構,生成帶水印信號的聲音信號
c1=[x',cd3',cd2',cd1'];
s1=waverec(c1,l,'db4');
%繪制加入水印的聲音信號
subplot(4,1,4);
plot(s1);
title('含水印的聲音信號');
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -