?? zhifantu.m
字號:
%edit by yinxiong 20070620
%抗TSM攻擊的音頻水印算法的研究 (In DWT Domain)
function y=zhifantu(a)
% a='D:\zaiti\抗時間伸縮變換音頻水印算法In DWT Domain\water.wav';
% %計算音頻文件的直方圖
% [yCarrier,SampleCarrier,SampleBit]=wavread(a);
% YCarrier=yCarrier*2^SampleBit;
%
% %規定每個段長的尺寸為M(直方圖的BIN的尺寸M是相同的)
% M=300;
% %總共音頻所擁有的BIN數目記為L
% % L=fix(2^SampleBit)/M);
% if mod(2^SampleBit,M)==0
% L=(2^(SampleBit+1))/M;
% else
% L=fix((2^(SampleBit+1))/M)+1;
% end
%
% % %音頻的幅度總共分為L段,
% % L=300;
% % %每段的幅度區間的值為M
% % M=2^(SampleBit+1)/L;
%
% %用數組zf來保存直方圖中的縱坐標
% m=0;
% for i=1:L
% j1=-2^(SampleBit)+(i-1)*M;
% j2=-2^(SampleBit)+i*M-1;
% for k=1:length(YCarrierSortCa3)
% if (YCarrierSortCa3(k,1)<j2)
% if (YCarrierSortCa3(k,1)>=j1)
% m=m+1;
% end
% end
% zf(i)=m;
% end
% m=0;
% end
% y=zf;
% n=sum(zf);
% i=1:L;
% % c=zf(1,i);
% % j=i/2^(SampleBit);
% j=i*M;
% plot(j,zf);
% title('a所代表的直方圖');
% axis([0 2*10^5 0 2*10^3]);
% grid on;
% function y=zhifantu(a)
%計算音頻文件的直方圖
[yCarrier,SampleCarrier,SampleBit]=wavread(a);
YCarrier=yCarrier*2^SampleBit;
%將音頻文件的幅度值進行排序
[YCarrierSort,IXSort]=sort(YCarrier);
%對排序后的音頻文件進行小波分解,用的小波基為'db1',分解層數為3
[YCarrierSortCa1,YCarrierSortCd1]=dwt(YCarrierSort,'db1');
[YCarrierSortCa2,YCarrierSortCd2]=dwt(YCarrierSortCa1,'db1');
[YCarrierSortCa3,YCarrierSortCd3]=dwt(YCarrierSortCa2,'db1');
%規定每個段長的尺寸為M(直方圖的BIN的尺寸M是相同的)
M=300;
%總共音頻所擁有的BIN數目記為L
% L=fix(2^SampleBit)/M);
if mod(3*10^5,M)==0
L=(3*10^5)/M;
else
L=fix((3*10^5)/M)+1;
end
%用數組zf來保存直方圖中的縱坐標
m=0;
for i=1:L
j1=-1.5*10^5+(i-1)*M;
j2=-1.5*10^5+i*M-1;
for k=1:length(YCarrierSortCa3)
if (YCarrierSortCa3(k,1)<=j2)
if (YCarrierSortCa3(k,1)>=j1)
m=m+1;
end
end
zf(i)=m;
end
m=0;
end
y=zf;
n=sum(zf);
i=1:L;
% c=zf(1,i);
j=i*M;
plot(j,zf);
title('所代表的直方圖');
axis([0 3*10^5 0 10^3]);
grid on;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -