- 所望の周波数の範囲を表すindexを取得し、
- その範囲内で最大の信号強度とその位置を取得する
スペクトログラムから信号強度の高い場所を見つける方法
10 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
一輝 植野
am 11 Jan. 2021
Beantwortet: Shunichi Kusano
am 12 Jan. 2021
画像処理で速度波形にS変換(S_transform)を適用し表示されたスペクトログラムで、
x軸を時間、y軸を周波数としたとき、特定の範囲の周波数(たとえば、0.5~1.0hzの間)から
もっとも信号強度の高い場所を探しその点の信号強度を数値で表す方法はなにかないでしょうか?
0 Kommentare
Akzeptierte Antwort
Shunichi Kusano
am 12 Jan. 2021
こんにちは。
スペクトログラムの信号強度が配列として得られていると思いますので、
という流れで処理が可能です。
それぞれfind関数、max関数を組合わせて書きます。それぞれの使い方は詳細をご覧いただければと思います。なんとなくのコードだけ載せておきます。適宜読み替えてお使いください。
find = f > a & f < b; % 周波数範囲をインデックスとして取得.fが周波数を表すベクトル
p(~find,:) = 0; % 所望の周波数範囲外の信号強度はゼロとする。
pmax = max(p(:)); % 最大の信号強度値
[c,r] = find(p == max(p(:))); % その場所
0 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu マルチレート信号処理 finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!