メインコンテンツ

異なるウィンドウを使用した信号スペクトルの計算

電子歯ブラシの音声録音を MATLAB® に読み取ります。信号は 48 kHz でサンプリングされています。歯ブラシは約 1.75 秒で電源が入り、約 2 秒間持続します。

[y,fs] = audioread("toothbrush.m4a");

信号アナライザーを開いて、"ワークスペース ブラウザー" から信号テーブルに信号をドラッグします。信号テーブルでそれを選択し、[アナライザー] タブで [時間値] をクリックすることで、信号に時間情報を追加します。Sample Rate and Start Time を選択して、サンプル レートに fs を入力します。

[表示] タブで [グリッドの表示] をクリックして、2 行 2 列のグリッドの表示を作成します。各ディスプレイを選択し、[スペクトル] をクリックしてスペクトル ビューを追加し、[時間] をクリックして時間ビューを削除します。信号を 4 つのディスプレイすべてにドラッグします。

Signal Analyzer app, showing the Display strip, from which the Spectrum view is selected. The app also shows the signal "y" in frequency domain in a 2-by-2 grid of displays. The four displays show the same spectrum for "y".

[スペクトル] タブをクリックして、各ディスプレイのスペクトル ビューを変更します。

  1. 左上のディスプレイをクリックして選択します。漏れの値が 32 になるまで [漏れ] スライダーを動かします。

  2. 右上のディスプレイをクリックして選択します。[分解能タイプ] セクションで [ウィンドウの長さ] を選択します。[ウィンドウの長さ] セクションで、[指定] を選択し、ウィンドウの長さを 1500 サンプルに指定します。[ウィンドウ オプション] セクションで、Rectangular ウィンドウを選択し、オーバーラップ率 20 を指定します。

  3. 左下のディスプレイをクリックして選択します。[分解能タイプ] セクションで [ウィンドウの長さ] を選択します。[ウィンドウの長さ] セクションで、[指定] を選択し、ウィンドウの長さを 500 サンプルに指定します。[ウィンドウ オプション] セクションで、Hamming ウィンドウを選択し、オーバーラップ率 50 を指定します。[NFFT] セクションで、離散フーリエ変換点を 550 に指定します。

  4. 右下のディスプレイをクリックして選択します。[分解能タイプ] セクションで [ウィンドウの長さ] を選択します。[ウィンドウの長さ] セクションで、[指定] を選択し、ウィンドウの長さを 5000 サンプルに指定します。[ウィンドウ オプション] セクションで、Chebyshev ウィンドウを選択し、サイドローブの減衰を 50 dB、オーバーラップ率を 90 に指定します。

分解能は高いが漏れが多いビューもあれば、漏れは少ないが分解能が低いビューもあることがわかります。

Signal Analyzer app, showing the Display strip, from which the Spectrum view is selected. The app also shows the signal "y" in frequency domain in a 2-by-2 grid of displays. The four displays now show different spectra for "y", each of them modified with its own spectrum settings.

参考

アプリ

関数

トピック