Main Content

このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。

信号アナライザー アプリの使用

アプリのワークフロー

信号アナライザー アプリを使用した信号の検証と比較の一般的なワークフローは以下のとおりです。

  1. 解析する信号の選択 — MATLAB® ワークスペースで利用可能な任意の信号を選択します。アプリは MATLAB の timetable 配列や timeseries オブジェクト、labeledSignalSet オブジェクトなど、固有の時間情報をもつ数値配列と信号を受け入れます。詳細については、信号アナライザーでサポートされるデータ型を参照してください。サンプル レート、数値ベクトル、duration 配列または MATLAB 式を使用して、信号に時間情報を追加します。

  2. 信号の前処理 — 平衡化、クリップ、またはトリミングのアクションを使用して信号を編集します。ローパス、ハイパス、バンドパス、またはバンドストップ フィルターの信号。トレンドを削除し、信号包絡線を計算します。移動平均、回帰、Savitzky-Golay フィルター、その他の方法を使用して信号を平滑化します。ウェーブレットを使用して信号のノイズを除去します。信号のサンプルレートを変更するか、不等間隔サンプル信号を等間隔グリッドに内挿します。独自のカスタム関数を使用して信号を前処理します。MATLAB 関数を生成して、前処理操作を自動化します。

  3. 信号の調査 — データとそのスペクトル、スペクトログラム、またはスカログラムのプロット、測定および比較を行います。時間領域、周波数領域、時間-周波数領域で特徴とパターンを探します。パーシステンス スペクトルを計算して散発的な信号を解析し、再割り当てを使用してスペクトログラム推定値を鮮明にします。信号から関心領域を抽出します。最小、最大、平均、平方根平均二乗レベルなど、時間領域の信号統計を測定します。

  4. 解析の共有 — 表示をアプリからクリップボードにイメージとしてコピーします。信号を MATLAB ワークスペースにエクスポートするか、MAT ファイルに保存します。パワー スペクトル、スペクトログラム、またはパーシステンス スペクトルの推定値の計算と関心領域の抽出を自動化する MATLAB スクリプトを生成します。解析を後で、または別のマシンで再開するために、信号アナライザー セッションを保存します。

例:クジラの歌からの関心領域の抽出

4 kHz でサンプリングされた太平洋のシロナガスクジラのオーディオ データを含むファイルを読み込みます。ファイルは、コーネル大学の生物音響学研究プログラムが管理する動物発声ライブラリのものです。データの時間スケールは、音の高さを上げ鳴き声を聞き取りやすくするために係数 10 で圧縮されています。信号を MATLAB® の timetable に変換します。

whaleFile = fullfile(matlabroot,"examples","matlab","data","bluewhale.au");
[w,fs] = audioread(whaleFile);

whale = timetable(seconds((0:length(w)-1)'/fs),w);

% To hear, type soundsc(w,fs)

"信号アナライザー" を開いて timetable をディスプレイにドラッグします。ノイズの中で 4 つの特徴が目立っています。最初は "ふるえ声"、他の 3 つは "うめき声" として知られています。

[表示] タブで [スペクトル] をクリックしてスペクトル表示を開き、[パナー] をクリックしてパナーをアクティブにします。パナーを使用して、約 2 秒の幅をもつズーム ウィンドウを作成します。ふるえ声の中央に配置されるように、ズーム ウィンドウをドラッグします。スペクトルによって、900 Hz のあたりに目立ったピークが示されます。

単一のふるえ声をハイパス フィルター処理により分離します。信号テーブルの信号を右クリックし、[複製] を選択してクジラの歌のコピーを作成します。元の信号をディスプレイから削除するために、信号テーブルで元の信号の名前の隣にあるチェック ボックスをオフにします。[アナライザー] タブの [前処理] ギャラリーから [ハイパス] を選択します。[ハイパス] タブで、通過帯域周波数を 925 Hz に設定し、阻止帯域の減衰量を 80 dB に設定します。急峻さの既定の値を使用します。[ハイパス] ボタンをクリックしてフィルターを適用します。

[表示] タブに移動して、[データ カーソル] の下にある矢印をクリックして Two を選択し、2 つのデータ カーソルを配置します。1 つのカーソルは 1.3 秒に配置し、もう 1 つは 3.3 秒に配置します。[信号の抽出] の隣にある矢印をクリックして Between Time Cursors を選択し、ふるえ声を含む領域を抽出します。

表示をクリアし、元の信号を選択します。3 つのうめき声を抽出し、そのスペクトルを比較します。

  1. パナーのズーム ウィンドウを最初のうめき声の中央に置きます。スペクトルで 8 つのピークが明瞭に定義されました。これらのピークは、170 Hz の倍数に非常に近い位置にあります。[信号の抽出] の隣にあるボタンをクリックして Between Time Limits を選択します。

  2. [パナー] をクリックしてパナーを非表示にします。スペース キーを押して信号全体を表示します。[X 軸方向にズーム イン] をクリックし、時間表示において 2 番目のうめき声が中心の 2 秒間を拡大します。ここでも、170 Hz の倍数の位置にスペクトルのピークがあります。[信号の抽出] の隣にあるボタンをクリックして Between Time Limits を選択します。

  3. スペース キーを押して信号全体を表示します。3 番目のうめき声付近をズームインします。ここでも、170 Hz の倍数の位置にピークがあります。[信号の抽出] の隣にあるボタンをクリックして Between Time Limits を選択します。

元の信号をディスプレイから削除するために、信号テーブルで元の信号の名前の隣にあるチェック ボックスをオフにします。抽出した 3 つの関心領域を表示します。それぞれのスペクトルは、お互いのほぼ頂点の位置にあります。[グリッドの表示] をクリックして 2 番目のディスプレイを追加し、抽出したふるえ声を含む関心領域をプロットします。ふるえ声とうめき声のスペクトルは著しく異なります。

信号テーブルで抽出した信号を選択します。[アナライザー] タブの [エクスポート] をクリックし、MAT ファイルの 4 つの関心領域をエクスポートします。

参考

|

関連するトピック