clc;
clear;
%读入音频文件
fid=fopen('1.wav','rb');
oa=fread(fid,inf,'uchar');
n=length(oa)-44;%wav文件从文件头到数据前面共有44字节的文件格式说明,读取的时候跳过这44个字节的文件格式说明
fclose(fid);
%读取二值图像水印文件
io=imread('bupt.bmp');
[row col]=size(io);
if row*col>n
error('载体太小,请更换载体');
end
wi=io(:);
[Y0,I0]=sort(wi);
%对原始音频进行DCT变换
dctv1=dct(oa);
[m,n]=size(dctv1);
A=dctv1(:);
[Y1,I1]=sort(A);
x=m*n;
LENGTH=row*col;
k=LENGTH;
M=zeros(x,1);
alfa=.1;
for i=1:x
if k>=1
M(x)=Y1(x)*(1+alfa*Y0(k));%嵌入水印后的音频
k=k-1;
else
M(x)=Y1(x);
end
x=x-1;
end
N=zeros(x,1);
x=m*n;
for i=1:x
N(I1(i))=M(i);
end
a=1;
for j=1:n,
for i=1:m,
dctv2(i,j)=N(a);
a=a+1;
end
end
%DCT反变换,得到嵌入水印的音频
idctv1=idct(dctv2);
figure;
subplot(3,1,1);plot('oa');title('original audio');
subplot(3,1,2);plot(io);title('original image');
subplot(3,1,3);plot(idctv1,[]);title('qianruhou audio ');
matlab下信息隐藏算法
需积分: 10 99 浏览量
2013-04-25
23:27:36
上传
评论 1
收藏 744B RAR 举报
skygon
- 粉丝: 2
- 资源: 3
最新资源
- 基于matlab实现对表面肌电信号进行归一化处理,并对归一化后的图形显示 .rar
- 基于matlab实现单级倒立摆的 T-S 模型 包括 LMI 程序源码
- 图书管理系统(struts+hibernate+spring+ext).rar
- 基于matlab实现此压缩包包含语音信号处理中的语音变声代码加音频.rar
- STM32使用PWM驱动舵机并通过OLED显示
- 基于matlab实现车辆路径规划;遗传算法;matlab代码.rar
- 图书管理系统(struts+hibernate+spring)130225.rar
- 基于matlab实现采用标量衍射理论,实现菲涅尔衍射和夫琅禾费衍射,对光波的波前传播和数字全息的应用有帮助.rar
- JavaScript版去除链表重复元素
- 微信小程序项目-功德木鱼(带设置面板-自定义文字、可选字体颜色、可选木鱼样式)
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈