使用Morlet函數的%連續小波變換
%Sig:信號
% WinLen:scale參數為a=1時小波函數的長度(默認為10)。
%nLevel:頻率軸劃分間隔段(默認為1024)
%
%WT:返回的小波變換計算結果
%FreqBins:返回頻率軸劃分的結果(歸壹化頻率,最大頻率為0.5)
%Scales:返回頻率軸分度值對應的刻度分度值(頻率0.5對應的刻度為1)。
如果(nargin==0),
錯誤('至少需要1個參數!');
結束;
if(NAR gin & lt;3),
nLevel = 1024;
結束
if(NAR gin & lt;2),
WinLen = 10;
結束
Sig = Hilbert(real(Sig));%計算信號的分析信號
SigLen =長度(Sig);%獲取信號的長度
fmax = 0.5%設置最高分析頻率
fmin = 0.005%設置最小分析頻率
freq bins = log space(log 10(fmin),log10(fmax),nLevel);%將頻率軸置於分析範圍等。
%對數坐標劃分
標度= fmax *個(大小(頻率箱))。/freq bins;%計算響應的比例參數。
OMG 0 = WinLen/6;
WT =零(nLevel,SigLen);%分配計算結果的存儲單位
wait=waitbar(0,'正在計算,請稍候');
對於m=1:nLevel,
waitbar(m/nLevel,wait);
a =刻度(米);%提取比例參數
t =-round(a * WinLen):1:round(a * WinLen);
mor1=pi^(-1/4)*exp(1i*2*pi*0.5*t/a).*exp(-t.^2/2/(2*omg0*a)^2);
%計算當前尺度下的小波函數。
temp=conv(Sig,mor 1)/sqrt(a);%計算信號和小波函數的卷積
WT(m,)= temp(round(a * WinLen)+1:length(temp)-round(a * WinLen));
結束;
關閉(等待);
WT = WT/WinLen;
示例:
功能跟蹤
SampFreq = 50
t = 0:0.02:12-0.02;
sig =zeros(長度(t),1);
SIG(round(end/2)-50)= 1;SIG(round(end/2))=-1;
WinLen = 10;
[WT,FreqBins,Scales] = CWT_Morlet(sig,WinLen,512);
FreqBins = FreqBins * SampFreq
clf
set(gcf,' Position ',[200 100 300 220]);
set(gcf,' Color ',' w ');
pcolor(FreqBins,t,ABS(WT)');
colormap jet
陰影interp
彩條;
xlabel('頻率/赫茲');
ylabel(“時間/秒”);
2.制作各種模型B和Y,參觀瀏陽河模型廠。質量很好,價格也不錯。∩網上輸入瀏陽河模型妳會發現2011-5-1019:24:27。