5-6. 雑音とカクテルパーティー効果

DSPでは、乱数を用いて、疑似的に雑音(ノイズ)を発生させることができます。 ここでは、等価的に雑音を発生させるDSPプログラムを作成し、それを入力 信号と足し合わせて、雑音の影響による音声信号の聴こえ方の変化を調べます。


【実習 5-7-1】<雑音の発生>

  1. 雑音を発生させるDSPプログラムを作成してください。 雑音は、無意味な乱数を生成して、それをそのまま出力に送ることにより 発生させることができます。乱数の生成には、DSPの関数rand()を使用する ことができます。rand()では、引数を(???)のように与えることで、 0〜232-1(= 約43億!)の範囲の乱数を(等確率で?)生成します。 例えばこの乱数の範囲が±1.0に収まるように適当な操作を行うと、±1[V]の雑音を 発生させることができます。
  2. 発生させた雑音出力波形を、オシロスコープで測定してみましょう。また、 スピーカで音を聴いてみてください。
  3. 作成したDSPプログラムにおいて、雑音を発生させる部分と、出力する部分の 間に、4-3節や4-4節で実習したディジタルフィルタを挿入して、出力波形や 出力音がどのように変化するかを確かめてみましょう。


【実習 5-7-2】<カクテルパーティー効果>

ここでは、音声と雑音を混ぜて、カクテルパーティー効果を再現してみます。

カクテルパーティー効果とは、カクテルパーティー等の席では、周囲が かなり騒がしいにも関わらず、自分と話をしている人の言葉(自分が 注意を向けている言葉)は正しく聴き取ることができる、という現象です。 この現象を厳密に解明しようとすると、人間の脳による音声の知覚までをも 問題にしなければなりませんが、ここでは、音声にわざと雑音とまぜてみて、 音声と雑音の大きさの比率と、カクテルパーティー効果の関係を調べて みましょう。

  1. 上で作成したDSPプログラムを元にして、入力信号と、内部で発生させた 雑音とを足し合わせて出力するプログラムを作成してください。
  2. マイクで音声を入力して、雑音と混ざった出力を聴いてください。 音声信号に対して雑音がどのぐらい大きくなると、音声が聴こえなく なるでしょうか。