📄 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 + -