WAVファイル音源にローパスフィルタをかけた場合に、ハイパスフィルタ等に比べパワースペクトルがあまり減衰されないことを改善したいです
Show older comments
以下のコードでローパスフィルタをかけた際、両対数グラフにおいてのパワースペクトルが殆ど減衰されていない状態です。
通過周波数を変更してもあまり変化が見られませんでした。
[y,Fs] = audioread(['densya.wav'])
info = audioinfo('densya.wav')
size(y)
t = 0:seconds(1/Fs):seconds(info.Duration)
t = t(1:end-1)
yy=y(:,2)
z=lowpass(yy,100,Fs)
ft_y=fft(z)
df=1/info.Duration
f=0:df:df*(length(ft_y)-1)/2
FFs=length(ft_y)/2
ax=abs(ft_y(1:FFs))
loglog(f,ax),grid on
xlim([0 22.05*10^3])
xlabel('周波数[Hz]')
ylabel('パワースペクトル')
このうち
z=lowpass(yy,100,Fs) を z=highpass(yy,100,Fs)に変えた際はしっかりと範囲外の部分が減衰しカットされているのが確認されました。
どこを改善すればローパスフィルタの場合にもしっかりと減衰及びカットされるでしょうか。
Accepted Answer
More Answers (0)
Categories
Find more on デジタル フィルターとアナログ フィルター in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!