音響信号処理

Acoustic signal processing

1. 目的

ディジタル信号処理について、数学的操作と具体的な結果を関連付けて理解する。

2. 理論

2.1 たたみ込み

時間領域の連続関数があるとき、この2つのたたみ込みは以下のように定義されている。

離散的な関数の場合は以下のようになる。

Tip

以下の資料がたたみ込みの概念をわかりやすく説明している。 初心者用 畳み込み(たたみこみ)解説

2.2 LTIシステム

LTI (Linear Time-invariant) システムとは、線形性と時不変性をもったシステムである。

まず、ここでのシステムとは、入力によって何か応答を出力するものを指す。システムは入力によって異なる応答を示す。

このようなシステムを解析する際、システムが以下のような特性を持っていると解析が容易となる。

線形性

入力に対するシステムの応答を、 入力に対するシステムの応答をとするとき、

  1. 入力に対するシステムの応答が
  2. を任意の複素数とするとき、に対するシステムの出力が

である。

これが成立していれば、未知の入力に対する応答を求めたい場合に、既知の応答を足し合わせたり定数をかけることで応答を求められる。

時不変性

入力に対するシステムの応答をとするとき、入力に対するシステムの 応答がである。

これが成立していれば、システムの特性(入出力の関係)は時刻に依存しない。

この2つが成立するLTIシステムは、単位インパルス信号に対する応答を解析することで、あらゆる入力に対する応答を求められる。

離散信号の単位インパルス信号とは、時間が1ステップ(最小の分解能)で高さの信号である。この信号の応答を解析すれば、たとえば高さの信号の応答は単位インパルス信号の応答を倍すればよい。何ステップかの時間にわたる信号も、単位インパルス信号のをずらして足し合わせていくことで求められる。

以下に具体的な例を示す。

次のような単位インパルス信号の応答をするLTIシステムがあるとする。

このシステムに次のような入力があったときは、まず時間の1ステップで切り出し、その高さのぶんだけ単位インパルス信号の応答に定数をかけて応答を求める。

入力の次のステップでは、応答も1ステップずらして同様に応答を求める。

このように応答を求めた後、

すべてを足すことで最終的な応答が求まる。

この「ずらして足し合わせる」がたたみ込みの演算であり、LTIシステムの応答は「単位インパルス信号の応答と入力のたたみ込み」で求められる。

2.3 音響測定

室内音響系は、LTIシステムとみなせる例のひとつである。任意の音声に対する空間(体育館や教室など)の応答を知りたい、つまりどのように響いて聞こえるのかを知りたい場合、インパルス信号に対する応答を求めればよい。インパルス信号への応答と任意の音声をたたみ込むことで、その空間の響きを再現できる。

音響のインパルス応答の測定方法を図に示す。スピーカーを設置し、人が聴取する位置にマイク(騒音計)を設置する。スピーカーでインパルス信号を鳴らすと、室内で音が反射してマイクに届く。この応答を測定する。

Tip

実際には、スピーカーでインパルス信号を鳴らそうとすると大きな音量が出せないため、周波数を掃引して(徐々に変化させながら)それぞれの周波数での応答を測定する。

2.4 室内音響の測定と活用

この項目は、石川先生による講義をもとに、各自調べたことをまとめること。

3. 実験方法

この実験では、Google Colabを用いる。Colabの使い方は以下を参照のこと。

Google Colabの使い方

配布するプログラムによって実験を行う場合、以下のURLからプログラムを開き、追記する。

音響信号処理のプログラム

他の言語で実装してもよい。

3.0 実験準備

実験前に、一人1つ無響音源を探し、LMSにアップロードする。インターネットから音源をダウンロードする場合、ライセンスに注意する。

Tip

anechoic recording freeなどと検索すると出てきます。

無響音源は長すぎるとグラフが見にくいので、10秒くらいにトリミングする。

ブラウザ上でトリミングできるサービスもある。

ブラウザ上で音声編集できるサービス AudioMass

3.1 インパルス応答の測定

体育館でインパルス応答を測定する。インパルス応答の測定には専用のソフトウェアを用いる。

また、無響音源を室内で流し、それを録音する。

3.2 たたみ込みによる音響再現

Pythonで、測定したインパルス応答を聴取して確認する。波形も表示する。

また、測定したインパルス応答を無響音源にたたみ込み、響きを再現する。室内で無響音源を流して録音したものとの違いを比較する。

他の部屋で測定したものも同様にたたみ込み、波形や響きの違いを比較する。

3.3 音声の周波数解析

各インパルス応答をフーリエ変換し、周波数特性を可視化する。

無響音源と、無響音源に各インパルス応答をたたみこんだものについてもフーリエ変換を行い、周波数特性を比較する。

それぞれの周波数特性の違いと、聴覚上の違いについても比較し考察する。

4. 検討課題

今回の実験に関して理解を深めるため、太郎さんはAIチャットボット1と以下のような問答をした。

太郎: 現実に存在する、LTIシステム(とみなせる例)を教えてください。

AI: LTI(線形・時不変)システムは、入力信号と出力信号の関係が線形であり、時間的に不変であるようなシステムです。現実に存在するLTIシステムの例を以下に挙げます。
1. RC回路:抵抗(R)とコンデンサ(C)で構成された回路は、入力信号に対してLTIシステムとして振る舞います。
2. フィルター:アナログフィルターやディジタルフィルターは、入力信号に対してLTIシステムとして振る舞います。特定の周波数帯域の信号を通すか、カットすることで、信号処理に応用されます。
3. スピーカー:スピーカーは入力信号(音声信号など)を振動に変換することで音を出力します。スピーカーは、入力信号と出力信号の関係がLTIシステムであると考えることができます。
4. モーター:モーターも、入力信号(電圧や電流など)を出力信号(回転数など)に変換することで、LTIシステムとして振る舞います。

このAIチャットボットの返答には一部不適切な点がある。挙げられたシステムのうち、現実にはLTIシステムとみなすのは難しいものを1つ選択し、その理由を述べよ。みなさんは電気情報工学科という物理を学ぶ学科の学生なので、背景にある物理現象について深く考察すること。なお、レポートには上記の長い問題文は載せず、解答だけ書けばよい。

参考文献

インパルス応答計測の基礎

音声のデモ

もとの音声

体育館のインパルス応答を畳み込んだ音声

体育館のインパルス応答

声の出演
VOICEVOX: ずんだもん https://voicevox.hiroshiba.jp/


  1. AIチャットボットの返答にはChatGPT (GPT-3.5) を使用しています。