音を消す方法

2 ビュー (過去 30 日間)
Kaede
Kaede 2020 年 8 月 27 日
コメント済み: Kaede 2020 年 9 月 1 日
このようなグラフの場合青のグラフの1k,2k辺りの音というか周波数帯域を消す方法はありますか。
  2 件のコメント
Kaede
Kaede 2020 年 8 月 28 日
バンドストップフィルターを使うのが良いと思うのですが,1k,2k辺りであればフィルター仕様はどのように設定するのが良いですか?
帯域を広くしてやってみたのですが1,2kを削減するのにこれぐらいでもありでしょうか?
個人差があるような質問で申し訳ございません.

サインインしてコメントする。

採用された回答

Naoya
Naoya 2020 年 8 月 31 日
シンプルな方法としては、Signal Processing Toolbox で提供される bandstop関数を利用できると思います。
サンプリング周波数 44.1KHz の信号において 1KHz ~ 2KHz の区間をカットするとう点では、下記の様な書式でフィルタ出力信号 y を得ることができます。
% バンドストップフィルタリング
[y,Hd] = bandstop(x, [1000, 2000], 44100);
% フィルタの周波数応答確認
freqz(aa, 8192, 44100)
周波数応答を確認しますと 設定した 1000, 2000Hz は 通過帯域端の周波数扱い (ほぼ0dB) となりますので、 1000Hz, 2000Hz もある程度減衰させる場合は、bandstop 関数で指定する幅をもう少し広げるのがよいかもしれません。
  3 件のコメント
Kaede
Kaede 2020 年 9 月 1 日
私がやりたいこととしては青のグラフの1,2kだけを大きくするためにBPFをかけることを検討していました.しかしあまりBPFでは持ち上げれなさそうなのでまず1,2kHz以外に阻止域10dB減衰のバンドパスを通して,全体をそのあと10dBあげれば1,2kHzが持ち上がるのではないかと検討しています.
質問としてはBPFで1,2kHzだけ10、20dB上げることは可能か.
1,2kHz以外を10dBさげるBPFをかけることは可能か
です.
画像は1,2kHz以外を10dBさげるBPFのつもりですがフィルターデザイナーの使い方が良くわかってないので自信がないです.

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!