how can i apply wavelet filter to this code

1 回表示 (過去 30 日間)
Mehmet Özgür Güzel
Mehmet Özgür Güzel 2022 年 9 月 2 日
編集済み: Mathy 2024 年 8 月 16 日
% generate a waveform
f0 =100;
fs=1000;
pw = 0.1;
pri = 1;
npulses = 100;
s = cos(2*pi*f0*(0:1/fs:pw)); % it can be any other waveform of your choice
s(round(fs*pri)) = 0; % PRI
s = repmat(s, npulses, 1); % npulses
% echo: delayed signal
tau = 0.3;
ntau = round(fs*tau);
amp = 0.5;
e = amp* circshift(s, ntau);
% add noise
sigma = 0.1;
r = s + e + sigma*randn(size(s));
y = pulsint(r);
plot((0:length(s)-1)/fs, r)

回答 (1 件)

Mathy
Mathy 2024 年 8 月 16 日
編集済み: Mathy 2024 年 8 月 16 日
Hi Mehmet,
To add wavelet filters you can make use of the wfilters (Wavelet filters) by MATLAB. This wfilters( wname) function returns the four lowpass and highpass, decomposition and reconstruction filters associated with the orthogonoal or biorthogonal wavelet wname. For Example
wname = "db5";
%Compute the four filters associated with wavelet name specified by wname and plot the results.
[LoD,HiD,LoR,HiR] = wfilters(wname);
subplot(2,2,1)
stem(LoD)
title("Decomposition Lowpass Filter")
Hope this helps!

カテゴリ

Help Center および File ExchangeContinuous Wavelet Transforms についてさらに検索

製品


リリース

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by