フィルター処理後のスペクトラム表示がうまくいかない
18 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Cir 2t
el 15 de Sept. de 2020
Comentada: takemoto
el 16 de Sept. de 2020
平素よりお世話になっております。
処理がうまくいかず、助けていただけると幸いです。
192kHzで取得した音源を、0.5Hzのカットオフ周波数,78dB/octでハイパスフィルターにかけたうえで、スペクトグラムを出そうと思うのですが、何も表示されない状況です。
dataOutの中身を見てみると、NaNと出てるので、ここがおかしいのだろうと思っているのですが、解決手段がわからないです。どなたかご指導いただけると幸いです。
%ハイパスフィルター処理
x=0.5/96000
[b,a] = butter(13,x,'high');%zは次数、aは正規化されたカットオフ周波数。matlab
%では、周波数/サンプリング周波数ではなく、周波数/ナイキスト周波数が正規化された
%周波数となる。ローパスとハイパスでは、次数が1につき6dB/octです。
%したがって、2次では12dB/oct、8次なら48dB/octということになります。
freqz(b,a)
dataIn =HCS;
dataOut = filter(b,a,dataIn);
spectrogram(dataOut,hann(256),128,256,192000,'yaxis');
colorbar;
1 comentario
takemoto
el 15 de Sept. de 2020
解析対象のサンプリングレートに対して、解析点数が少なすぎるのが原因ではないかと考えられます。256点のfft点数をspectrogramの設定として与えていますが、解析対象が192kHzのサンプリングの場合、周波数分解能は192e3/256=750Hzとなりそうですが、いかがでしょうか?
Respuesta aceptada
Más respuestas (0)
Ver también
Categorías
Más información sobre Simulation, Tuning, and Visualization en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!