急!!请详细解释一下matlab的一段代码!!!

来源:百度知道 编辑:UC知道 时间:2024/06/07 01:02:56
小弟没学过matlab,可现在要用到,时间很急。。请帮忙详细解释一下这段代码,具体到每个语句每个参数。

[s Fs bit]=wavread('50.wav');
figure(1)
%小波去噪
[thr,sorh,keepapp]=ddencmp('den','wv',s);
[s,cxc,lxc,perf,perfl2]=wdencmp('gbl',s,'db3',3,thr,sorh,keepapp);
%求频谱
nfft=length(s);
p=floor(length(s)/3)+1;
[spsd,f]=pyulear(s,p,nfft,Fs,'onesided');
pmax=max(spsd);
spsd=spsd/pmax;
%显示
plot(f(1:200),spsd(1:200));
a=find(spsd==1)
f(a)
这是求频谱还是功率谱的?

"50.wav "这个声音文件我放在纳米盘里
http://www.namipan.com/d/50.wav/6ef6ffbeca3ba623dd3dbb8f78dfaf8c145e8706b6130000

是求功率谱.
Fs bit]=wavread('50.wav'); %读取波形文件,s为数据,Fs为抽样频率,bit为位宽
figure(1) %新建一个窗口
%小波去噪
[thr,sorh,keepapp]=ddencmp('den','wv',s); %返回小波除噪和压缩后的信号
[s,cxc,lxc,perf,perfl2]=wdencmp('gbl',s,'db3',3,thr,sorh,keepapp); %通过门限阈值处理得到小波系数
%求频谱
nfft=length(s); %信号长度,即抽样点数
p=floor(length(s)/3)+1; %AR预测的阶数
[spsd,f]=pyulear(s,p,nfft,Fs,'onesided'); %求功率谱密度
pmax=max(spsd); %功率谱密度最大分量
spsd=spsd/pmax; %归一化处理
%显示
plot(f(1:200),spsd(1:200)); %对应频率点的功率谱画图
a=find(spsd==1) %寻找归一化后为1的频率点的位置
f(a) %输出最大功率谱密度对应的频率