以下に添付図面を参照して、本実施の形態の詳細を説明する。
(第1の実施の形態)
図1は、本実施の形態の音信号処理システム1の一例を示す模式図である。
音信号処理システム1は、音信号処理装置10と、第1マイク14と、第2マイク16と、を備える。音信号処理装置10と、第1マイク14および第2マイク16とは、データや信号を授受可能に接続されている。
音信号処理装置10は、1または複数の音源12から発せられた音の音信号を処理する。
音源12は、音の発生源である。音源12は、例えば、人および人以外の動物などの生物や、楽器などの非生物であるが、これらに限定されない。本実施の形態では、音源12が人である場合を一例として説明する。このため、本実施の形態では、音が、音声である場合を一例として説明する。なお、音の種類は限定されない。また、以下では、人を、話者と称する場合がある。
本実施の形態では、音信号処理装置10は、複数の音源12から発せられた音を含む音信号を処理し、音信号に含まれる目的音信号を強調する。複数の音源12は、目的音源12Aと、非目的音源12Bと、に分類される。目的音源12Aは、目的音を発する音源12である。目的音とは、強調対象の音である。目的音信号とは、目的音を示す信号である。目的音信号は、例えば、スペクトルによって表される。非目的音源12Bは、非目的音を発する音源12である。非目的音は、目的音以外の音である。
本実施の形態では、二人の話者である目的音源12Aと非目的音源12Bが、テーブルTを挟んで会話する環境を想定する。本実施の形態は、例えば、非目的音源12Bが店員、目的音源12Aが顧客であって、これらの話者の会話を示す音信号から、一方の話者である目的音源12Aの目的音信号を強調する用途を想定して説明する。なお、音源12の数や音源12の配置は、これらに限定されない。また、想定環境は、この環境に限定されない。
第1マイク14および第2マイク16は、音を集音する。本実施の形態では、第1マイク14および第2マイク16は、音源12から発せられた音を集音し、音信号を音信号処理装置10へ出力する。
第1マイク14は、少なくとも目的音を含む音を集音するためのマイクである。言い換えると、第1マイク14は、目的音源12Aから発せられた目的音を少なくとも集音するためのマイクである。
第1マイク14は、集音した音を示す音信号として、第3音信号を音信号処理装置10へ出力する。第3音信号は、非目的音信号と目的音信号とを含む音信号である。非目的音信号とは、非目的音を示す信号である。非目的音信号は、例えば、スペクトルによって表される。第1マイク14は、音源12(目的音源12A、非目的音源12B)から発せられた音を集音し、第3音信号を音信号処理装置10へ出力可能な位置に予め配置されている。本実施の形態では、第1マイク14は、テーブルT上に配置されている場合を想定する。
本実施の形態では、音信号処理システム1は、複数の第1マイク14(第1マイク14A〜第1マイク14D)を備える。このため、音信号処理装置10には、複数の第1マイク14から、複数の第3音信号が出力される。なお、複数の第3音信号を一つにまとめた音信号を、第1音信号と称して説明する。
第1マイク14の数は、集音対象の音源12の数以上であればよい。上述したように、本実施の形態では、音信号処理システム1は、1つの目的音源12Aと、1つの非目的音源12Bと、の合計2つの音源12を想定している。この場合、第1マイク14の数は、2以上であればよい。本実施の形態では、音信号処理システム1は、4つの第1マイク14(第1マイク14A〜第1マイク14D)を備える場合を一例として説明する。
複数の第1マイク14は、複数の音源12の各々からの音到達時間差が互いに異なる。すなわち、複数の第1マイク14は、上記音到達時間差が互いに異なるように、配置位置を予め調整されている。
第2マイク16は、少なくとも非目的音を集音するためのマイクである。言い換えると、第2マイク16は、非目的音源12Bから発せられた非目的音を少なくとも集音するためのマイクである。
第2マイク16は、集音した音を示す音信号として、第2音信号を音信号処理装置10へ出力する。第2音信号は、目的音信号に対する非目的音信号のパワーの比が、第1音信号(第3音信号)より大きい音信号である。第2音信号は、目的音信号に対する非目的音信号のパワーの比が、第1音信号(第3音信号)より大きく、且つ、目的音信号のパワーに比べて非目的音信号のパワーの大きい音信号であることが好ましい。
本実施の形態では、第2マイク16は、第1マイク14に比べて非目的音源12Bに近い位置に配置されている。例えば、第2マイク16は、ヘッドセットマイクや、ピンマイクである。本実施の形態では、第2マイク16は、非目的音源12Bである話者の口元で音声を集音可能となるように、非目的音源12Bに装着されている。
音信号処理装置10は、AD変換部18と、音信号処理部20と、出力部22と、を備える。なお、音信号処理装置10は、少なくとも音信号処理部20を備えた構成であればよく、AD変換部18および出力部22の少なくとも一方を別体として構成してもよい。
AD変換部18は、複数の第1マイク14から複数の第3音信号を受付ける。また、AD変換部18は、第2マイク16から第2音信号を受付ける。AD変換部18は、複数の第3音信号および第2音信号の各々をデジタル信号に変換し、音信号処理部20へ出力する。
音信号処理部20は、AD変換部18から受付けた複数の第3音信号および第2音信号を用いて、複数の第3音信号を1つにまとめた第1音信号に含まれる目的音信号を強調し、強調音信号を出力部22へ出力する。
出力部22は、音信号処理部20から受付けた強調音信号を出力する装置である。出力部22は、例えば、スピーカ、通信装置、表示装置、録音装置、記録装置、などである。スピーカは、強調音信号によって表される音を出力する。通信装置は、強調音信号を、ネットワーク等を介して外部装置等へ送信する。表示装置は、強調音信号を示す情報を表示する。録音装置は、強調音信号を記憶する。録音装置は、例えば、ICレコーダやパーソナルコンピュータ等である。記録装置は、強調音信号によって示される音を公知の方法でテキストに変換して記録する装置である。なお、出力部22は、音信号処理部20から受付けた強調音信号をアナログ信号に変換した後に出力、送信、記憶、または記録してもよい。
次に、音信号処理部20について詳細を説明する。
図2は、音信号処理部20の機能的構成の一例を示す模式図である。
音信号処理部20は、変換部20Aと、変換部20Bと、検出部20Cと、相関導出部20Dと、第1相関記憶部20Eと、第2相関記憶部20Fと、係数導出部20Gと、生成部20Hと、逆変換部20Iと、を備える。
変換部20A、変換部20B、検出部20C、相関導出部20D、係数導出部20G、生成部20H、および逆変換部20Iは、例えば、1または複数のプロセッサにより実現される。例えば上述の各部は、CPU(Central Processing Unit)などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上述の各部は、専用のIC(Integrated Circuit)などのプロセッサ、すなわちハードウェアにより実現してもよい。上述の各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2以上を実現してもよい。
第1相関記憶部20Eおよび第2相関記憶部20Fは、各種情報を記憶する。第1相関記憶部20Eおよび第2相関記憶部20Fは、HDD(Hard Disk Drive)、光ディスク、メモリカード、RAM(Random Access Memory)などの一般的に利用されているあらゆる記憶媒体により構成することができる。また、第1相関記憶部20Eおよび第2相関記憶部20Fは、物理的に異なる記憶媒体としてもよいし、物理的に同一の記憶媒体の異なる記憶領域として実現してもよい。さらに、第1相関記憶部20Eおよび第2相関記憶部20Fの各々は、物理的に異なる複数の記憶媒体により実現してもよい。
変換部20Aは、AD変換部18を介して第2マイク16から受付けた第2音信号を短時間フーリエ変換(STFT:Short−Time Fourier Transform)し、周波数スペクトルX1(f,n)によって表される第2音信号を検出部20Cへ出力する。なお、fは、周波数ビンの番号を示し、nは、フレームの番号を表す。
例えば、サンプリング周波数を16kHz、フレーム長を256サンプル、フレームシフトを128サンプルに設定する。この場合、変換部20Aは、第2音信号に256サンプルのハニング窓をかけた後に、高速フーリエ変換(FFT:Fast Fourier Transform)を行うことで、第2音信号を周波数スペクトルに変換する。そして、この周波数スペクトルの低域と高域の対称性を考慮して、該周波数スペクトルにおける、fが0以上128以下の範囲の129点の複素数値を、第2音信号における、第nフレームの周波数スペクトルX1(f,n)として算出する。そして、変換部20Aは、周波数スペクトルX1(f,n)によって表される第2音信号を検出部20Cへ出力する。
変換部20Bは、AD変換部18を介して複数の第1マイク14(第1マイク14A〜第1マイク14D)から受付けた複数の第3音信号の各々を、短時間フーリエ変換(STFT)し、周波数スペクトルX2,1(f,n)、周波数スペクトルX2,2(f,n)、周波数スペクトルX2,3(f,n)、周波数スペクトルX2,4(f,n)の各々によって表される複数の第3音信号を生成する。
周波数スペクトルX2,1(f,n)は、第1マイク14Aから受付けた第3音信号を短時間フーリエ変換したものである。周波数スペクトルX2,2(f,n)は、第1マイク14Bから受付けた第3音信号を短時間フーリエ変換したものである。周波数スペクトルX2,3(f,n)は、第1マイク14Cから受付けた第3音信号を短時間フーリエ変換したものである。周波数スペクトルX2,4(f,n)は、第1マイク14Dから受付けた第3音信号を短時間フーリエ変換したものである。
なお、複数の第3音信号の各々を示す上記複数の周波数スペクトルをまとめた多次元ベクトル(本実施の形態では4次元ベクトル)を、以下では、第1音信号を示す周波数スペクトルX2(f,n)と称して説明する。言い換えると、第1音信号は、周波数スペクトルX2(f,n)によって表される。第1音信号を示す周波数スペクトルX2(f,n)は、下記式(1)で表される。
変換部20Bは、第1音信号を示す周波数スペクトルX2(f,n)を、相関導出部20Dおよび生成部20Hへ出力する。
第1相関記憶部20Eは、第1空間相関行列φxx(f,n)を記憶する。第1空間相関行列φxxは、第1音信号における目的音区間の空間相関行列を示す。目的音区間とは、第1音信号における、目的音を含む区間を示す。区間は、時系列方向における、特定の期間を示す。
上述したように、本実施の形態では、第1音信号は、4次元ベクトルを示す周波数スペクトルX2(f,n)によって表される。このため、第1空間相関行列φxx(f,n)は、周波数ビン毎の4×4の複素数の行列によって表される。
初期状態では、第1相関記憶部20Eは、ゼロ行列(φxx(f,0)=0)で初期化された第1空間相関行列φxx(f,n)を記憶する。第1空間相関行列φxx(f,n)は、後述する相関導出部20Dによって更新される。
第2相関記憶部20Fは、第2空間相関行列φNN(f,n)を記憶する。第2空間相関行列φNNは、第1音信号における非目的音区間の空間相関行列を示す。非目的音区間とは、第1音信号における、目的音区間以外の区間を示す。
第1空間相関行列φxx(f,n)と同様に、本実施の形態では、第2空間相関行列φNN(f,n)は、周波数ビン毎の4×4の複素数の行列によって表される。
初期状態では、第2相関記憶部20Fは、ゼロ行列(φNN(f,0)=0)で初期化された第2空間相関行列φNN(f,n)を記憶する。第2空間相関行列φNN(f,n)は、後述する相関導出部20Dの処理によって更新される。
次に、検出部20C、相関導出部20D、係数導出部20G、生成部20H、および逆変換部20Iについて説明する。本実施の形態では、音信号処理部20は、音信号処理開始時に初期処理を行った後に、定常処理を実行する。相関導出部20D、係数導出部20G、および生成部20Hは、初期処理時と定常処理時で、異なる処理を実行する。
まず、初期処理における、相関導出部20D、係数導出部20G、および生成部20Hの機能について説明する。
初期処理とは、音信号処理部20が、音信号処理の開始時に実行する処理である。初期処理では、音信号処理部20は、第1相関記憶部20Eおよび第2相関記憶部20Fに記憶されている、ゼロ行列で初期化されている第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)を更新することで、これらの空間相関行列に初期値を設定する。
係数導出部20Gは、第1音信号に含まれる目的音信号を強調するための、空間フィルタ係数F(f,n)を導出する。係数導出部20Gは、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)に基づいて、空間フィルタ係数F(f,n)を導出する。
上述したように、本実施の形態では、第1音信号は、4次元ベクトルを示す周波数スペクトルX2(f,n)によって表される。このため、係数導出部20Gは、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)に基づいて、複素数の4次元ベクトルである空間フィルタ係数F(f,n)を算出する。空間フィルタ係数F(F、n)は、下記式(2)で表される。
但し、初期処理においては、係数導出部20Gは、空間フィルタ係数F(f,n)=[0,0,0,1]を、空間フィルタ係数F(f,n)として導出するものとする。
生成部20Hは、係数導出部20Gで導出された空間フィルタ係数F(f,n)を用いて、周波数スペクトルX2(f,n)によって表される第1音信号に含まれる目的音信号を強調した、強調音信号を生成する。
詳細には、生成部20Hは、下記式(3)を用いて、出力スペクトルY(f,n)によって表される強調音信号を生成する。
すなわち、生成部20Hは、周波数スペクトルX2(f,n)と、空間フィルタ係数F(f,n)をエルミート転置した転置行列と、の積を、強調音信号を示す出力スペクトルY(f,n)として生成する。なお、初期処理では、生成部20Hは、Y(f,n)=X2,4(f,n)となる強調音信号を出力する。すなわち、初期処理では、生成部20Hは、第1マイク14Dで集音された第3音信号の周波数スペクトルを、強調音信号として出力する。なお、初期処理で強調音信号として用いる第1マイク14は、複数の第1マイク14(第1マイク14A〜第1マイク14D)の内の1つの第1マイク14であればよく、第1マイク14Dに限定されない。
生成部20Hは、出力スペクトルY(f,n)によって表される強調音信号を、逆変換部20Iおよび検出部20Cへ出力する。
検出部20Cは、強調音信号に基づいて、目的音区間を検出する。本実施の形態では、検出部20Cは、第2音信号と強調音信号に基づいて、目的音区間を検出する。
詳細には、検出部20Cは、周波数スペクトルX1(f,n)によって表される第2音信号と、生成部20Hから受付けた出力スペクトルY(f,n)によって表される強調音信号と、に基づいて、目的音区間を検出する。
目的音区間は、目的音源12Aが音を発しているか否かをフレーム番号毎に示す関数u2(n)によって表される。
u2(n)=1は、第nフレームで目的音源12Aが音を発している事を示す。第nフレームとは、n番目のフレームを示す。u2(n)=0は、第nフレームで目的音源12Aが音を発していない事を示す。
具体的には、関数u2は、下記式(4)によって表される。
式(4)中、pY(n)およびpX(n)は、下記式(5)および式(6)によって表される。すなわち、pY(n)およびpX(n)は、出力スペクトルY(f,n)によって表される強調音信号と、周波数スペクトルX1(f,n)によって表される第2音信号と、の各々のパワーに依存する。
ここで、初期処理の段階では、pY(n)には、目的音源12Aと非目的音源12Bの双方の音に応じたスペクトルが含まれる。このため、式(4)中、閾値t1は、目的音源12Aまたは非目的音源12Bから音が発せられている場合に、t1<PY(n)の関係を満たすように、予め設定する。
また、目的音源12Aと非目的音源12Bの内、非目的音源12Bが音を発している場合には、pX(n)は、py(n)に比べて相対的に大きくなる。このため、式(4)中、閾値t2は、非目的音源12Bが音を発している場合に、pX(n)−py(n)≧t2の関係を満たすように、予め設定する。
これらの設定により、関数u2(n)は、目的音源12Aのみが音を発している第nフレームでは値“1”を示す。そして、関数u2は、目的音源12Aが音を発していない第nフレームでは値“0”を示す。
このため、検出部20Cは、u2(n)=1で表される区間を目的音区間として検出し、u2(n)=0で表される区間を非目的音区間として検出する。
相関導出部20Dは、検出部20Cで検出された目的音区間と、変換部20BおよびAD変換部18を介して第1マイク14から受付けた第1音信号と、に基づいて、第1空間相関行列φxx(f,n)と、第2空間相関行列φNN(f,n)と、を導出する。そして、相関導出部20Dは、導出した第1空間相関行列φxx(f,n)を第1相関記憶部20Eへ記憶することで、第1空間相関行列φxx(f,n)を更新する。同様に、相関導出部20Dは、導出した第2空間相関行列φNN(f,n)を第2相関記憶部20Fへ記憶することで、第2空間相関行列φNN(f,n)を更新する。
詳細には、相関導出部20Dは、u2(n)=1で表される区間(第nフレーム)については、下記式(7)により、第1空間相関行列φxx(f,n)を導出および更新し、第2空間相関行列φNN(f,n)は更新しない。
一方、相関導出部20Dは、u2(n)=0で表される区間(第nフレーム)については、下記式(8)により、第2空間相関行列φNN(f,n)を導出および更新し、第1空間相関行列φxx(f,n)は更新しない。
式(7)および式(8)中、αは、0以上1未満の値である。αの値が1に近い値であるほど、過去に導出した第1空間相関行列φxx(f,n)の重みが、最新の第1空間相関行列φxx(f,n)に比べて大きい事を意味する。αの値は、予め設定すればよい。αは、例えば、0.95などとすればよい。
すなわち、相関導出部20Dは、目的音区間の第1音信号について、過去に導出した第1空間相関行列φxx(f,n)を、該第1音信号と該第1音信号をエルミート転置した転置信号との乗算値によって表される最新の第1空間相関行列φxx(f,n)で補正することによって、新たな第1空間相関行列φxx(f,n)を導出する。なお、目的区間の第1音信号とは、第1音信号における、目的区間の音信号を意味する。
相関導出部20Dは、第1相関記憶部20Eに記憶済の第1空間相関行列φxx(f,n)を、過去に導出した第1空間相関行列φxx(f,n)として用いればよい。第1相関記憶部20Eには、1つの第1空間相関行列φxx(f,n)のみが記憶され、順次、相関導出部20Dによって更新される。
また、相関導出部20Dは、非目的音区間の第1音信号について、過去に導出した第2空間相関行列φNN(f,n)を、該第1音信号と該第1音信号をエルミート転置した転置信号との乗算値によって表される最新の第2空間相関行列φNN(f,n)で補正することによって、新たな第2空間相関行列φNN(f,n)を導出する。なお、非目的区間の第1音信号とは、第1音信号における、非目的区間の音信号を意味する。
相関導出部20Dは、第2相関記憶部20Fに記憶済の第2空間相関行列φNN(f,n)を、過去に導出した第2空間相関行列φNN(f,n)として用いればよい。第2相関記憶部20Fには、1つの第2空間相関行列φNN(f,n)のみが記憶されるものとし、順次、相関導出部20Dによって更新される。
次に、定常処理における、相関導出部20D、係数導出部20G、および生成部20Hの機能について説明する。定常処理とは、上記初期処理の後に実行される処理である。
なお、音信号処理部20は、初期処理を所定時間実行した後に定常処理へ移行してもよいし、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)が所定回数更新されたときに定常処理へ移行してもよい。
まず、定常処理における係数導出部20Gの機能を説明する。初期処理では、係数導出部20Gは、空間フィルタ係数F(f,n)として、空間フィルタ係数F(f,n)=[0,0,0,1]を導出した。
定常処理では、係数導出部20Gは、目的音信号を強調した強調音信号に基づいて、第1音信号に含まれる目的音信号を強調するための空間フィルタ係数F(f,n)を導出する。
上述したように、第1音信号は、複数の第1マイク14から取得した複数の第3音信号からなる。このため、係数導出部20Gは、複数の第1マイク14から出力された複数の第3信号からなる第1音信号に含まれる目的音信号を強調した強調音信号に基づいて、空間フィルタ係数F(f,n)を導出する。
詳細には、係数導出部20Gは、相関導出部20Dによって更新された第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)に基づいて、空間フィルタ係数F(f,n)を導出する。
係数導出部20Gは、第1相関記憶部20Eおよび第2相関記憶部20Fから第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)を読取り、空間フィルタ係数F(f,n)の導出に用いればよい。
ここで、定常処理の段階で、第1相関記憶部20Eおよび第2相関記憶部20Fに記憶されている第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)は、相関導出部20Dによって更新済の空間相関行列である。すなわち、これらの空間相関行列は、強調音信号に基づいて検出された目的音区間を用いて、相関導出部20Dによって更新された空間相関行列である。このため、係数導出部20Gは、強調音信号に基づいて、空間フィルタ係数F(f,n)を導出することとなる。
詳細には、係数導出部20Gは、第1空間相関行列φxx(f,n)と第2空間相関行列φNN(f,n)の逆行列との積によって表される行列の、最大固有値に対応する固有ベクトルFSNR(f,n)を導出する。そして、係数導出部20Gは、固有ベクトルFSNR(f,n)を、空間フィルタ係数F(f,n)として導出する(F(f,n)=FSNR(f,n))。
固有ベクトルFSNR(f,n)は、目的音と非目的音とのパワー比を最大化するMAX−SNR(Maximum Signal−to−Noise)ビームフォーマを構成する。
なお、係数導出部20Gは、各周波数ビンのパワーを調整することで音質を改善するポストフィルタw(f,n)を追加し、下記式(9)を用いて、空間フィルタ係数F(f,n)を導出してもよい。
ポストフィルタw(f,n)は、下記式(10)で表される。
次に、生成部20Hについて説明する。定常処理では、生成部20Hは、初期処理時と同様に、係数導出部20Gで導出された空間フィルタ係数F(f,n)を用いて、周波数スペクトルX2(f,n)によって表される第1音信号に含まれる目的音信号を強調した、強調音信号を生成する。すなわち、生成部20Hは、上記式(3)を用いて、出力スペクトルY(f,n)によって表される強調音信号を生成する。
生成部20Hは、生成した強調音信号を、逆変換部20Iおよび検出部20Cへ出力する。
逆変換部20Iは、生成部20Hから受付けた強調音信号を逆短時間フーリエ変換(ISTFT:Inverse Short−Time Fourier Transform)し、出力部22へ出力する。
すなわち、逆変換部20Iは、目的音源12Aから発せられた目的音の目的音信号が強調され非目的音信号が抑圧された強調信号を、時間領域の音波形に変換する。
具体的には、逆変換部20Iは、強調信号を示す出力スペクトルY(f,n)の対称性を用いて、出力スペクトルY(f,n)から256点のスペクトルを生成し、逆フーリエ変換を行う。次に、逆変換部20Iは、合成窓関数を適用し、前フレームの出力波形とフレームシフト分ずらして重畳することにより、音波形を生成すればよい。
次に、検出部20Cについて説明する。初期処理時には、検出部20Cは、目的音区間を検出した。
定常処理時には、検出部20Cは、強調音信号と第2音信号に基づいて、目的音区間と、重複区間と、を検出する。重複区間とは、目的音源12Aおよび非目的音源12Bの双方から音が発せられている区間を示す。例えば、重複区間とは、複数の話者が発話している区間を示す。
詳細には、検出部20Cは、関数u2(n)に加えて、関数u1(n)を検出する。
関数u1(n)は、第2非目的音区間を示す関数である。詳細には、関数u1(n)は、非目的音源12Bが音を発しているか否かをフレーム番号毎に示す関数である。第2非目的音区間は、非目的音源12Bが音を発している区間である。
ここで、定常処理の段階では、出力スペクトルY(f,n)によって表される強調音信号に含まれる、非目的音源12Bから発せられた非目的音によるパワーは、抑圧されている。このため、上記式(5)によって表されるpY(n)は、近似的に、目的音源12Aから発せられた目的音によるパワーとみなすことができる。このため、定常処理の段階では、u1(n)によって表される第2非目的音区間と、u2(n)によって表される目的音区間は、下記式(11)および式(12)によって表される。
なお、u2(n)=1は、第nフレームで目的音源12Aが音を発している事を示す。u2(n)=0は、第nフレームで目的音源12Aが音を発していない事を示す。また、u1(n)=1は、第nフレームで非目的音源12Bが音を発している事を示す。u1(n)=0は、第nフレームで非目的音源12Bが音を発していない事を示す。
このため、式(11)および式(12)中における閾値t3および閾値t4は、u1(n)およびu2(n)が上記条件を示す式となるように、予め設定すればよい。
検出部20Cは、u2(n)=1であり、且つ、u1(n)=0である区間を、目的音区間として検出する。また、検出部20Cは、u2(n)=0である区間を、非目的音区間として検出する。また、検出部20Cは、u2(n)=1であり且つu1(n)=1である区間を、目的音源12Aおよび非目的音源12Bの双方から音が発せられている重複区間として検出する。そして、検出部20Cは、検出結果を、相関導出部20Dへ出力する。本実施の形態では、検出部20Cは、検出結果として、u1(n)および、u2(n)を相関導出部20Dへ出力する。
相関導出部20Dは、検出部20Cで検出された目的音区間と、重複区間と、第1音信号と、に基づいて、第1空間相関行列φxx(f,n)と第2空間相関行列φNN(f,n)を導出する。
相関導出部20Dは、u2(n)=1であり且つu1(n)=0である区間を目的音区間とし、該区間については、下記式(13)を用いて第1空間相関行列φxx(f,n)を導出し更新する。なお、u2(n)=1であり且つu1(n)=0である目的音区間について、相関導出部20Dは、第2空間相関行列φNN(f,n)の導出および更新を行わない。
一方、相関導出部20Dは、u2(n)=0である区間を非目的音区間とし、該区間については、下記式(14)を用いて、第2空間相関行列φNN(f,n)を導出し更新する。なお、u2(n)=0である区間について、相関導出部20Dは、第1空間相関行列φxx(f,n)の導出および更新を行わない。
また、相関導出部20Dは、u2(n)=1であり且つu1(n)=1である区間については、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)の双方の導出および更新を行わない。上述したように、u2(n)=1であり且つu1(n)=1である区間は、目的音源12Aおよび非目的音源12Bの双方から音が発せられている重複区間である。
すなわち、定常処理において、相関導出部20Dは、目的音源12Aおよび非目的音源12Bの双方から音が発せられている重複区間については、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)の双方の導出および更新を行わない。
このように、目的音源12Aおよび非目的音源12Bの双方が同時に音を発している重複区間については、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)の双方を更新しない構成とする。この構成により、目的音源12Aおよび非目的音源12Bの双方が同時に音を発した重複区間を用いることによる、目的音信号の強調精度の低下を抑制することができる。
次に、本実施の形態の音信号処理装置10が実行する音信号処理の手順を説明する。
図3は、本実施の形態の音信号処理装置10が実行する音信号処理の手順の一例を示す、フローチャートである。
変換部20Bが、複数の第1マイク14から受付けた第3信号を短時間フーリエ変換し、周波数スペクトルX2(f,n)によって表される第1音信号を取得する(ステップS100)。変換部20Bは、取得した第1音信号を、相関導出部20Dおよび生成部20Hへ出力する(ステップS102)。
次に、変換部20Aが、第2マイク16から受付けた第2音信号を短時間フーリエ変換し、周波数スペクトルX1(f,n)によって表される第2音信号を取得する(ステップS104)。変換部20Aは、取得した第2音信号を検出部20Cへ出力する(ステップS106)。
なお、ステップS100〜ステップS106の処理は、変換部20Aおよび変換部20Bが並列で実行すればよく、図3に示す順に限定されない。また、ステップS100〜ステップS106の処理は、音信号処理を終了するまで継続して繰返し実行されるものとする。
そして、音信号処理装置10は、初期処理を実行する(ステップS108〜ステップS120)。
詳細には、まず、係数導出部20Gが、第1相関記憶部20Eおよび第2相関記憶部20Fから、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)を読取る(ステップS108)。上述したように、初期状態では、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)は、ゼロ行列で初期化されている。
次に、係数導出部20Gは、ステップS108で読取った第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)を用いて、空間フィルタ係数F(f,n)を導出する(ステップSS110)。上述したように、初期状態では、係数導出部20Gは、空間フィルタ係数F(f,n)として空間フィルタ係数F(f,n)=[0,0,0,1]を導出する。
次に、生成部20Hが、ステップS110で導出された空間フィルタ係数F(f,n)を用いて、ステップS110で取得した、周波数スペクトルX2(f,n)によって表される第1音信号に含まれる目的音信号を強調した強調音信号を生成する(ステップS112)。
次に、逆変換部20Iが、ステップS112で生成された、出力スペクトルY(f,n)によって表される強調音信号を逆短時間フーリエ変換し、出力部22へ出力する(ステップS114)。
次に、検出部20Cが、ステップS112で生成された強調音信号と第2音信号を用いて、関数u2(n)によって表される目的音区間を検出する(ステップS116)。
次に、相関導出部20Dは、ステップS116で検出された目的音区間と第1音信号を用いて、第1空間相関行列φxx(f,n)と第2空間相関行列φNN(f,n)を導出する(ステップS118)。
次に、相関導出部20Dは、ステップS118で導出した第1空間相関行列φxx(f,n)と第2空間相関行列φNN(f,n)を、第1相関記憶部20Eおよび第2相関記憶部20Fの各々へ記憶することで、これらの空間相関行列を更新する(ステップS120)。
次に、音信号処理部20が、初期処理から定常処理へ移行するか否かを判断する(ステップS122)。例えば、音信号処理部20は、初期処理を所定時間実行した否かを判別することで、定常処理へ移行するか否かを判断する。また、音信号処理部20は、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)が所定回数更新されたか否かを判別することで、定常処理へ移行するか否かを判別してもよい。
ステップS122で否定判断すると(ステップS122:No)、上記ステップS108へ戻る。一方、ステップS122で肯定判断すると(ステップS122:Yes)、音信号処理部20は、定常処理を実行する(ステップS124〜ステップS138)。
定常処理では、係数導出部20Gが、第1相関記憶部20Eおよび第2相関記憶部20Fから、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)を読取る(ステップS124)。すなわち、係数導出部20Gは、相関導出部20Dによって更新された最新の第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)を読取る。
次に、係数導出部20Gは、ステップS124で読取った第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)に基づいて、空間フィルタ係数F(f,n)を導出する(ステップS126)。
次に、生成部20Hが、ステップS126で導出された空間フィルタ係数F(f,n)を用いて、変換部20Bから受付けた第1音信号に含まれる目的音信号を強調し、強調音信号を生成する(ステップS128)。
次に、逆変換部20Iが、ステップS128で生成された強調音信号を逆短時間フーリエ変換し、出力部22へ出力する(ステップS130)。
次に、検出部20Cが、第2音信号と、ステップS128で生成された強調音信号と、を用いて、目的音区間と重複区間を検出する(ステップS132)。
次に、相関導出部20Dが、ステップS132で検出された目的音区間と、重複区間と、変換部20BおよびAD変換部18を介して第1マイク14から受付けた第1音信号と、に基づいて、第1空間相関行列φxx(f,n)と第2空間相関行列φNN(f,n)を導出する(ステップS134)。そして、相関導出部20Dは、導出した第1空間相関行列φxx(f,n)と第2空間相関行列φNN(f,n)を第1相関記憶部20Eおよび第2相関記憶部20Fの各々へ記憶することで、これらの空間相関行列を更新する(ステップS136)。
次に、音信号処理部20が、音信号処理を終了するか否かを判断する(ステップS138)。ステップS138で否定判断すると(ステップS138:No)、上記ステップS124へ戻る。ステップS138で肯定判断すると(ステップS138:Yes)、本ルーチンを終了する。
以上説明したように、本実施の形態の音信号処理装置10は、係数導出部20Gを備える。係数導出部20Gは、目的音信号を強調した強調音信号に基づいて、第1音信号に含まれる目的音信号を強調するための空間フィルタ係数F(f,n)を導出する。このため、導出した空間フィルタ係数F(f,n)を用いて目的音信号を強調した強調音信号を生成することで、高精度に目的音信号を強調することができる。
ここで、従来では、複数の話者が同時に発話すると、目的音の強調精度が低下する場合があった。例えば、話者方向やマイク間の到来時間差を表すベクトルを音信号の特徴量として用い、該特徴量に基づいて、音信号に含まれる目的音信号を強調するためのフィルタを生成する従来方式が知られている。
しかし、このような従来方式では、複数の話者が同時に発話すると、話者の各々の特徴量とは異なる特徴量の分布が得られるため、目的音信号を強調するためのフィルタの精度が低下する場合があった。また、複数の話者が順番に発話する状況の場合についても、相槌などによる同時に発話する区間が発生することから、目的音信号を強調するためのフィルタの精度が低下する場合があった。
一方、本実施の形態の音信号処理装置10では、目的音信号を強調した強調音信号に基づいて、第1音信号に含まれる目的音信号を強調するための空間フィルタ係数F(f,n)を導出する。このため、導出した空間フィルタ係数F(f,n)を第1音信号に適用することで、目的音信号を強調した強調音信号を生成することによって、高精度に目的音信号を強調することができる。
従って、音信号処理装置10は、高精度に目的音信号を強調することができる。
また、本実施の形態の音信号処理装置10では、検出部20Cは、目的音信号に対する非目的音信号のパワーの比が第1音信号より大きい第2音信号と、強調音信号と、に基づいて、目的音区間を検出する。このため、検出部20Cは、高精度に目的音区間を検出することができる。そして、係数導出部20Gは、高精度に検出された目的音区間と第1音信号に基づいて導出された、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)に基づいて、空間フィルタ係数F(f,n)を導出する。
このため、音信号処理装置10は、更に高精度に目的音信号を強調することができる。
また、本実施の形態では、検出部20Cが、第2音信号と強調音信号に基づいて、目的音区間を検出する。このため、本実施の形態の音信号処理装置10は、目的音源12Aおよび非目的音源12Bの位置に拘らず、非目的音源12Bの非目的音を抑圧して目的音源12Aの目的音信号を強調するように、空間フィルタ係数F(f,n)を導出することができる。このため、音信号処理装置10は、第1音信号に含まれる目的音信号を、より高精度に強調するための空間フィルタ係数(f,n)を導出することができる。
また、本実施の形態では、検出部20Cは、強調音信号に基づいて、目的音と非目的音とが重複する重複区間と、目的音区間と、を検出する。そして、相関導出部20Dは、目的音区間と重複区間と第1音信号とに基づいて、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)を導出する。
そして、相関導出部20Dは、重複区間については、第1空間相関行列φxx(f,n)および第2空間相関行列φNN(f,n)を導出および更新しない。このため、係数導出部20Gは、重複区間については、空間フィルタ係数F(f,n)を導出しない。よって、第1音信号における、複数の音源12から同時に音が発せられる区間についても、本実施の形態の音信号処理装置10では、高精度に目的音信号を強調することができる。
<変形例1>
なお、上記では、検出部20Cは、出力スペクトルY(f,n)によって表される強調音信号と、周波数スペクトルX1(f,n)によって表される第2音信号と、のパワーに基づいて、目的音区間および重複区間を検出した。
しかし、検出部20Cは、出力スペクトルY(f,n)および周波数スペクトルX1(f,n)を用いて、他の方法により、目的音区間および重複区間を検出してもよい。
例えば、出力スペクトルY(f,n)および周波数スペクトルX1(f,n)を入力とし、関数u1(n)および関数u2(n)を推定するためのモデルを、決定木やk近傍法、サポートベクターマシン、ニューラルネットワークなどにより学習してもよい。
一例として、ニューラルネットワークを用いたモデルの学習について説明する。
この場合、検出部20Cは、モデルを学習するための学習データを収集する。例えば、本実施の形態の音信号処理部20を学習装置に実装し、音信号処理部20を用いて上記処理を実行することで、周波数スペクトルX1(f,n)と該周波数スペクトルX1(f,n)から導出した出力スペクトルY(f,n)とを含む学習データを、複数記録する。同次に、第1マイク14Dで目的音源12Aの目的音を集音して記録する。そして、ユーザによる該目的音の視聴やユーザによる該目的音の波形の目視などにより、各フレームで音を発している音源12を判定することで、関数u1(n)および関数u2(n)の正解データc1(n)およびc2(n)を作成する。
また、検出部20Cは、入力特徴量として、下記式(15)で表されるベクトルv(n)を用いる。
式(15)で表されるベクトルv(n)は、当該フレームと直前のフレームとのスペクトルの絶対値の対数を連結した、516次元ベクトルである。このため、目的音区間および重複区間の検出は、ベクトルv(n)から正解データを表す二次元ベクトルc(n)=[c1(n),c2(n)]の推定に、定式化することができる。
ここで、ニューラルネットワークのモデルの構成を、下記式(16)〜式(20)で定義する。
中間層のノード数を100とすると、行列Wiおよび行列W0のサイズは、各々、100×516、2×100となる。このため、行列W1、行列W2、行列W3のサイズは、何れも、100×100となる。
また、式(16)〜式(20)における関数sigmoid()は、下記式(21)で表されるsigmoid関数を、ベクトルの各要素に適用する演算を表す。
そして、目的関数Lを、下記式(22)で表されるクロスエントロピーで定義する。
そして、検出部20Cは、目的関数Lを最大化するパラメータ列Wi,Wo,W1,W2,W3を、学習によって求める。
学習の手法には、確率的勾配降下法など、既存の手法を用いればよい。このモデルを用いて導出した関数u1(n)および関数u2(n)は、0から1の間の連続値となる。このため、例えば0.5を閾値として、それ以上であれば1(目的音区間)、それ未満であれば0(非目的音区間)に二値化すればよい。
このように、検出部20Cは、出力スペクトルY(f,n)および周波数スペクトルX1(f,n)を用いて、第1の実施の形態とは異なる方法により、目的音区間および重複区間を検出してもよい。
(第2の実施の形態)
本実施の形態では、第2マイク16から取得した第2音声信号を用いずに、第1マイク14から取得した第1音声信号を用いて、音信号処理を行う形態を説明する。
図4は、本実施の形態の音信号処理システム2の一例を示す模式図である。
音信号処理システム2は、音信号処理装置11と、複数の第1マイク14と、を備える。音信号処理装置11と、複数の第1マイク14とは、データや信号を授受可能に接続されている。
すなわち、音信号処理システム2は、音信号処理装置10に代えて音信号処理装置11を備え、且つ、第2マイク16を備えない点以外は、第1の実施の形態の音信号処理システム1と同様である。
本実施の形態では、音信号処理システム2は、音源12として、複数の目的音源12Aを想定する。図4には、複数の目的音源12Aとして、三人の話者である目的音源12A1〜目的音源12A3を一例として示した。目的音源12Aは、例えば、人(話者)である。本実施の形態では、矩形形状のテーブルTの3辺に、各々1人の話者(目的音源12A1、目的音源12A2、目的音源12A3)が座って会話する環境を想定している。なお、本実施の形態では、音信号処理装置11による音信号処理中、これらの複数の目的音源12Aの位置は、大きく移動しない場合を想定している。なお、目的音源12Aの数は、3に限定されず、2または4以上であってもよい。
第1の実施の形態と同様に、音信号処理システム2は、複数の第1マイク14を備える。本実施の形態では、一例として、第1マイク14A〜第1マイク14Dの4つの第1マイク14を示した。
第1の実施の形態と同様に、複数の第1マイク14は、複数の目的音源12Aの各々からの音到達時間差が互いに異なる。すなわち、複数の第1マイク14は、上記音到達時間差が互いに異なるように、配置位置が予め調整されている。
また、音信号処理システム2に設けられる複数の第1マイク14の数は、本実施の形態の音源12の数以上であればよい。このため、本実施の形態では、第1マイク14の数は、3以上であればよい。第1マイク14の数が多いほど、目的音の強調精度の向上を図ることができる。
一例として、音信号処理システム2は、4つの第1マイク14(第1マイク14A〜第1マイク14D)を備える形態を説明する。
第1の実施の形態と同様に、複数の第1マイク14の各々から第3信号が出力されることで、音信号処理装置11には、複数の第3信号が出力される。第1の実施の形態と同様に、複数の第3音信号を一つにまとめた音信号を、第1音信号と称して説明する。
音信号処理装置11は、AD変換部18と、音信号処理部30と、出力部22と、を備える。AD変換部18および出力部22は、第1の実施の形態と同様である。音信号処理装置11は、音信号処理部20に代えて音信号処理部30を備える点以外は、第1の実施の形態と同様である。なお、音信号処理装置11は、少なくとも音信号処理部30を備えた構成であればよく、AD変換部18および出力部22の少なくとも一方を別体として構成してもよい。
音信号処理部30は、AD変換部18を介して複数の第3音信号を受付ける。音信号処理部30は、受付けた複数の第3音信号を1つにまとめた第1音信号に含まれる目的音信号を強調し、強調音信号を出力部22へ出力する。
音信号処理部30について詳細を説明する。
図5は、音信号処理部30の機能的構成の一例を示す模式図である。
音信号処理部30は、変換部30Bと、分離部30Jと、検出部30Cと、相関導出部30Dと、複数の第3相関記憶部30Eと、第4相関記憶部30Fと、複数の加算部30Kと、複数の係数導出部30Gと、複数の生成部30Hと、複数の逆変換部30Iと、を備える。
変換部30B、分離部30J、検出部30C、相関導出部30D、複数の係数導出部30G、複数の加算部30K、複数の生成部30H、および複数の逆変換部30Iは、例えば、1または複数のプロセッサにより実現される。例えば上述の各部は、CPUなどのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上述の各部は、専用のICなどのプロセッサ、すなわちハードウェアにより実現してもよい。上述の各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2以上を実現してもよい。
第3相関記憶部30Eおよび第4相関記憶部30Fは、各種情報を記憶する。第3相関記憶部30Eおよび第4相関記憶部30Fは、HDD、光ディスク、メモリカード、RAMなどの一般的に利用されているあらゆる記憶媒体により構成することができる。また、第3相関記憶部30Eおよび第4相関記憶部30Fは、物理的に異なる記憶媒体としてもよいし、物理的に同一の記憶媒体の異なる記憶領域として実現してもよい。さらに、第3相関記憶部30Eおよび第4相関記憶部30Fの各々は、物理的に異なる複数の記憶媒体により実現してもよい。
なお、音信号処理部30には、複数の目的音源12Aの各々に対応する、第3相関記憶部30E、係数導出部30G、加算部30K、生成部30H、および逆変換部30Iが設けられている。上述したように、本実施の形態では、3つの目的音源12A(目的音源12A1〜目的音源12A3)を想定している。
このため、本実施の形態では、音信号処理部30には、3つの第3相関記憶部30E(第3相関記憶部30E1〜第3相関記憶部30E3)、3つの係数導出部30G(係数導出部30G1〜係数導出部30G2)、3つの加算部30K(加算部30K1〜加算部30K3)、3つの生成部30H(生成部30H1〜生成部30H3)、および3つの逆変換部30I(逆変換部30I1〜逆変換部30I3)が設けられている。
なお、音信号処理システム2で想定する目的音源12Aの数は、3つに限定されない。例えば、音信号処理システム2で想定する目的音源12Aの数は、1、2、または4以上であってもよい。そして、音信号処理部30では、第3相関記憶部30E、係数導出部30G、3つの加算部30K、生成部30H、および逆変換部30Iの各々を、複数の目的音源12Aと同じ数、備えた構成とすればよい。
変換部30Bは、第1の実施の形態の変換部20Bと同様に、AD変換部18を介して複数の第1マイク14(第1マイク14A〜第1マイク14D)から受付けた複数の第3音信号の各々を短時間フーリエ変換(STFT)し、周波数スペクトルX1(f,n)、周波数スペクトルX2(f,n)、周波数スペクトルX3(f,n)、周波数スペクトルX4(f,n)の各々によって表される複数の第3音信号を生成する。
周波数スペクトルX1(f,n)は、第1マイク14Aから受付けた第3音信号を短時間フーリエ変換したものである。周波数スペクトルX2(f,n)は、第1マイク14Bから受付けた第3音信号を短時間フーリエ変換したものである。周波数スペクトルX3(f,n)は、第1マイク14Cから受付けた第3音信号を短時間フーリエ変換したものである。周波数スペクトルX4(f,n)は、第1マイク14Dから受付けた第3音信号を短時間フーリエ変換したものである。
なお、本実施の形態では、複数の第3音信号の各々を示す上記複数の周波数スペクトルをまとめた多次元ベクトル(本実施の形態では4次元ベクトル)を、第1音信号を示す周波数スペクトルX(f,n)と称して説明する。言い換えると、本実施の形態では、第1音信号は、周波数スペクトルX(f,n)によって表される。第1音信号を示す周波数スペクトルX(f,n)は、下記式(23)で表される。
変換部30Bは、第1音信号を示す周波数スペクトルX(f,n)を、分離部30Jおよび複数の生成部30H(生成部30H1〜生成部30H3)の各々へ出力する。
第3相関記憶部30Eは、第3空間相関行列を記憶する。第3空間相関行列は、第1音信号における目的音成分の空間相関行列を示す。
上述したように、音信号処理部30は、複数の目的音源12Aの各々に対応する、3つの第3相関記憶部30E(第3相関記憶部30E1〜第3相関記憶部30E3)を備える。
第3相関記憶部30E1は、目的音源12A1に対応する第3相関記憶部30Eである。第3相関記憶部30E1は、第3空間相関行列φxxa(f,n)を記憶する。第3空間相関行列φxxa(f,n)は、第1音信号における目的音源12A1の目的音成分の空間相関行列を示す。目的音源12A1の目的音成分とは、第1音信号に含まれる、目的音源12A1から発せられた目的音の成分(すなわちスペクトル)を示す。目的音成分は、後述する分離部30Jによって第1音信号から分離される(詳細後述)。
上述したように、本実施の形態では、第1音信号は、4次元ベクトルを示す周波数スペクトルX(f,n)によって表される。このため、第3空間相関行列φxxa(f,n)は、周波数ビン毎の4×4の複素数の行列によって表される。
同様に、第3相関記憶部30E2は、目的音源12A2に対応する第3相関記憶部30Eである。第3相関記憶部30E2は、第3空間相関行列φxxb(f,n)を記憶する。第3空間相関行列φxxb(f,n)は、第1音信号における目的音源12A2の目的音成分の空間相関行列を示す。目的音源12A2の目的音成分とは、第1音信号に含まれる、目的音源12A2から発せられた目的音の成分を示す。第3空間相関行列φxxa(f,n)と同様に、第3空間相関行列φxxb(f,n)は、周波数ビン毎の4×4の複素数の行列によって表される。
第3相関記憶部30E3は、目的音源12A3に対応する第3相関記憶部30Eである。第3相関記憶部30E3は、第3空間相関行列φxxc(f,n)を記憶する。第3空間相関行列φxxc(f,n)は、第1音信号における目的音源12A3の目的音成分の空間相関行列を示す。目的音源12A3の目的音成分とは、第1音信号に含まれる、目的音源12A3から発せられた目的音の成分を示す。第3空間相関行列φxxc(f,n)は、周波数ビン毎の4×4の複素数の行列によって表される。
第4相関記憶部30Fは、第4空間相関行列φNN(f,n)を記憶する。第4空間相関行列φNN(f,n)は、第1音信号における、非目的音成分の空間相関行列を示す。非目的音成分とは、第1音信号に含まれる、目的音源12A(目的音源12A1〜目的音源12A3)の各々から発せられた目的音の成分以外の成分を示す。非目的音成分は、後述する分離部30Jによって第1音信号から分離される(詳細後述)。
初期状態では、第4相関記憶部30Fには、ゼロ行列で初期化(φNN(f,0)=0)された第4空間相関行列φNN(f,n)が、初期値として予め記憶されている。
一方、初期状態において、第3相関記憶部30E1、第3相関記憶部30E2、および第3相関記憶部30E3には、それぞれ、目的音源12A1、目的音源12A2、および目的音源12A3の各々の位置で発せられた目的音の空間相関行列を示す第3空間相関行列φxxa(f,n)、第3空間相関行列φxxb(f,n)、第3空間相関行列φxxc(f,n)が、初期値として予め記憶されている。
このような、第3空間相関行列φxxa(f,n)、第3空間相関行列φxxb(f,n)、および第3空間相関行列φxxc(f,n)の各々の初期値は、複数の第1マイク14(第1マイク14A〜第1マイク14D)の各々の配置と、複数の目的音源12A(目的音源12A1〜目的音源12A3)と、の位置から、シミュレーションによって予め求めればよい。また、第3空間相関行列φxxa(f,n)、第3空間相関行列φxxb(f,n)、第3空間相関行列φxxc(f,n)の初期値は、複数の目的音源12A(目的音源12A1〜目的音源12A3)の各々が各音源12の位置で発した目的音を、予め複数の第1マイク14(第1マイク14A〜第1マイク14D)で集音し、集音により得られた目的音信号から予め導出してもよい。
具体的には、音信号処理部30は、目的音源12A1〜目的音源12A3の各々の位置から発せられた目的音を、テーブルT上の複数の第1マイク14(第1マイク14A〜第1マイク14D)で集音することで得られた目的音信号から、各々の第3空間相関行列の初期値を予め導出してもよい。
例えば、目的音源12A1〜目的音源12A3の各々の位置にスピーカを配置して白色雑音を再生し、複数の第1マイク14(第1マイク14A〜第1マイク14D)で集音した音のスペクトルを表す4次元ベクトルを、Na(f,n),Nb(f,n),Nc(f,n)で表すと想定する。この場合、音信号処理部30は、下記式(24)〜式(26)を用いて、各々の第3空間相関行列の初期値を予め導出し、第3相関記憶部30E1〜第3相関記憶部30E3に、それぞれ予め記憶すればよい。
次に、目的音源12A1に対応する、加算部30K1、係数導出部30G1、生成部30H1、および逆変換部30I1について説明する。
加算部30K1は、目的音源12A1に対応する加算部30Kである。加算部30K1は、対応する目的音源12A1以外の目的音源12A(目的音源12A2、目的音源12A3)の第3空間相関行列(第3空間相関行列φxxb(f,n)、第3空間相関行列φxxc(f,n))と、第4空間相関行列φNN(f,n)と、を加算し、係数導出部30Gへ出力する。具体的には、加算部30K1は、下記式(27)により、空間相関行列の和を導出し、係数導出部30G1へ出力する。
係数導出部30G1は、目的音源12A1に対応する係数導出部30Gである。係数導出部30G1は、第1音信号に含まれる、対応する目的音源12A1の目的音信号を強調するための空間フィルタ係数Fa(f,n)を導出する。詳細には、係数導出部30G1は、第3空間相関行列φxxa(f,n)および第4空間相関行列φNN(f,n)に基づいて、空間フィルタ係数Fa(f,n)を導出する。
具体的には、係数導出部30G1は、第3空間相関行列φxxa(f,n)と空間相関行列の和φSS(f,n)の逆行列との積によって表される行列の、最大固有値に対応する固有ベクトルFSNR(f,n)を導出する。
そして、係数導出部30G1は、この固有ベクトルFSNR(f,n)を、目的音源12Aに対応する空間フィルタ係数Fa(f,n)として導出する(Fa(f,n)=FSNR(f,n))。なお、係数導出部30G1は、第1の実施の形態と同様に、ポストフィルタw(f,n)を追加し、空間フィルタ係数Fa(f,n)を導出してもよい。
生成部30H1は、目的音源12A1に対応する生成部30Hである。生成部30H1は、係数導出部30G1で導出された空間フィルタ係数Fa(f,n)を用いて、周波数スペクトルX(f,n)によって表される第1音信号に含まれる、目的音源12A1の目的音信号を強調した強調音信号を生成する。
詳細には、生成部30H1は、下記式(28)を用いて、出力スペクトルYa(f,n)によって表される強調音信号を生成する。出力スペクトルYa(f,n)によって表される強調音信号は、第1音信号における、目的音源12Aの目的音信号を強調した音信号である。
すなわち、生成部30H1は、周波数スペクトルX(f,n)と、空間フィルタ係数Fa(f,n)をエルミート転置した転置行列と、の積を、強調音信号を示す出力スペクトルYa(f,n)として生成する。
生成部30H1は、出力スペクトルYa(f,n)によって表される強調音信号を、逆変換部30I1および検出部30Cへ出力する。すなわち、生成部30H1は、目的音源12Aの目的音信号の強調された強調音信号を、逆変換部30I1および検出部30Cへ出力する。
逆変換部30I1は、目的音源12A1に対応する逆変換部30Iである。逆変換部30Iは、第1の実施の形態の逆変換部20Iと同様に、強調信号を示す出力スペクトルYa(f,n)の対称性を用いて、出力スペクトルYa(f,n)から256点のスペクトルを生成し、逆フーリエ変換を行う。次に、逆変換部30I1は、合成窓関数を適用し、前フレームの出力波形とフレームシフト分ずらして重畳することにより、音波形を生成すればよい。そして、逆変換部30I1は、生成した音波形によって表される、目的音源12Aの強調音信号を、出力部22へ出力する。
次に、目的音源12A2に対応する、加算部30K2、係数導出部30G2、生成部30H2、および逆変換部30I2について説明する。また、目的音源12A3に対応する、加算部30K3、係数導出部30G3、生成部30H3、および逆変換部30I3について説明する。
加算部30K2、加算部30K3、係数導出部30G2、係数導出部30G3、生成部30H2、生成部30H3、逆変換部30I2、および逆変換部30I3は、対応する目的音源12Aに応じた情報が異なる点以外は、加算部30K1、係数導出部30G1、生成部30H1、および逆変換部30I1と同様の処理を行う。
詳細には、加算部30K2は、第3空間相関行列φxxa(f,n)と、第3空間相関行列φxxc(f,n)と、第4空間相関行列φNN(f,n)と、の空間相関行列の和φSS(f,n)を導出し、係数導出部30G2へ出力する。この和φSS(f,n)は、下記式(29)で表される。
そして、係数導出部30G2は、φXXb(f,n)と、式(29)によって表されるφSS(f,n)と、に基づいて、空間フィルタ係数Fb(f,n)を導出する。このため、生成部30H2は、目的音源12A2の目的音信号の強調された強調音信号(出力スペクトルYb(f,n))を、逆変換部30I1および検出部30Cへ出力する。
加算部30K3は、第3空間相関行列φxxa(f,n)と、第3空間相関行列φxxb(f,n)と、第4空間相関行列φNN(f,n)と、の空間相関行列の和φSS(f,n)を導出し、係数導出部30G3へ出力する。この和φSS(f,n)は、下記式(30)で表される。
そして、係数導出部30G3は、φXXc(f,n)と、式(29)によって表されるφSS(f,n)と、に基づいて、空間フィルタ係数Fc(f,n)を導出する。このため、生成部30H3は、目的音源12A3の目的音信号の強調された強調音信号(出力スペクトルYc(f,n))を、逆変換部30I2および検出部30Cへ出力する。
次に、検出部30Cについて説明する。検出部30Cは、強調音信号に基づいて、目的音区間を検出する。本実施の形態では、検出部30Cは、複数の目的音源12A(目的音源12A1〜目的音源12A3)にそれぞれ対応する複数の強調音信号を用いて、複数の目的音源12Aの各々から発せられた目的音の、目的音区間を検出する。
詳細には、検出部30Cは、生成部30H1から、出力スペクトルYa(f,n)によって表される、目的音源12A1の目的音信号を強調した強調音信号を受付ける。また、検出部30Cは、生成部30H2から、出力スペクトルYb(f,n)によって表される、目的音源12A2の目的音信号を強調した強調音信号を受付ける。また、検出部30Cは、生成部30H3から、出力スペクトルYc(f,n)によって表される、目的音源12A3の目的音信号を強調した強調音信号を受付ける。
そして、検出部30Cは、これらの強調音信号(出力スペクトルYa(f,n),出力スペクトルYb(f,n),出力スペクトルYc(f,n))に基づいて、目的音源12A1〜目的音源12A3の各々の目的音区間を検出する。
第1の実施の形態と同様に、目的音区間は、目的音源12Aが音を発しているか否かをフレーム番号毎に示す関数u(n)によって表される。本実施の形態では、目的音源12A1〜目的音源12A3の各々の目的音の目的音区間を、関数ua(n)、関数ub(n)、関数uc(n)で表す。なお、これらの関数は、値“1”を示す場合、第nフレームで目的音源12Aが音を発している事を示す。また、値“0”を示す場合、第nフレームで目的音源12Aが音を発していない事を示す。
検出部30Cは、これらの関数ua(n)、関数ub(n)、関数uc(n)を用いて、下記式(31)〜式(33)によって表される閾値処理を行うことで、各々の目的音源12Aの目的音の目的音区間を検出する。
上記式(31)〜式(33)中、tは、目的音と非目的音との境界のパワーを表す閾値である。また、式(31)〜式(33)中、Pa、Pb、Pcは、各々、下記式(34)〜式(36)で表される。
検出部30Cは、複数の目的音源12A(目的音源12A1〜目的音源12A3)の各々の目的音の目的音区間の検出結果を、相関導出部30Dへ出力する。
次に、分離部30Jについて説明する。分離部30Jは、第1音信号を、目的音成分と非目的音成分に分離する。
分離部30Jは、第1音信号を示す周波数スペクトルX(f,n)を、変換部30Bから受付ける。上述したように、本実施の形態では、第1音信号を示す周波数スペクトルX(f,n)は、上記式(23)で表される。また、本実施の形態では、周波数スペクトルX(f,n)は、4つの第1マイク14A(第1マイク14A1〜第1マイク14D)の各々から受付けた4つの第3音信号の各々を示す周波数スペクトルをまとめた、4次元ベクトルによって表される。
分離部30Jは、周波数スペクトルX(f,n)によって表される第1音信号を、目的音成分S(f,n)と非目的音成分N(f,n)に分離する。目的音成分S(f,n)は、下記式(37)によって表される。非目的音成分Ni(f,n)は、下記式(38)によって表される。
そして、分離部30Jは、公知の音区間検出技術を用いて、全ての周波数fに対して、第nフレームが目的音区間である場合、S(f,n)=X(f,n),N(f,n)=[0,0,0,0]を算出する。また、分離部30Jは、全ての周波数fに対して、第nフレームが非目的音区間である場合、S(f,n)=[0,0,0,0],N(f,n)=X(f,n)とすればよい。
そして、分離部30Jは、第1音信号から分離した、目的音成分S(f,n)と非目的音成分N(f,n)を、相関導出部30Dへ出力する。
相関導出部30Dは、目的音区間と、目的音成分と、非目的音成分と、に基づいて、第1音信号における目的音成分の第3空間相関行列と、第1音信号における非目的音成分の第4空間相関行列と、を導出する。
詳細には、相関導出部30Dは、目的音成分S(f,n)および非目的音成分N(f,n)を分離部30Jから受付ける。また、相関導出部30Dは、検出部30Cから、目的音区間を示す関数として、関数ua(n)、関数ub(n)、関数uc(n)を受付ける。
そして、相関導出部30Dは、目的音成分S(f,n)、非目的音成分N(f,n)、関数ua(n)、関数ub(n)、関数uc(n)に基づいて、第3空間相関行列φxxa(f,n)、第3空間相関行列φxxb(f,n)、第3空間相関行列φxxc(f,n)、および第4空間相関行列φNN(f,n)を導出する。そして、相関導出部30Dは、導出した第3空間相関行列φxxa(f,n)、第3空間相関行列φxxb(f,n)、第3空間相関行列φxxc(f,n)、および第4空間相関行列φNN(f,n)を、各々、第3相関記憶部30E1、第3相関記憶部30E2、第3相関記憶部30E3、および第4相関記憶部30Fへ記憶することで、これらの空間相関行列を更新する。
相関導出部30Dは、ua(n)=1、且つub(n)=0、且つuc(n)=0の区間(第nフレーム)については、下記式(39)により第3空間相関行列φxxa(f,n)を導出して更新し、第3空間相関行列φxxb(f,n)および第3空間相関行列φxxc(f,n)を更新しない。
また、相関導出部30Dは、ua(n)=0、且つub(n)=1、且つuc(n)=0の区間(第nフレーム)については、下記式(40)により第3空間相関行列φxxb(f,n)を導出および更新し、第3空間相関行列φxxa(f,n)および第3空間相関行列φxxc(f,n)を更新しない。
また、相関導出部30Dは、ua(n)=0、且つub(n)=0、且つuc(n)=1の区間(第nフレーム)については、下記式(41)により第3空間相関行列φxxc(f,n)を導出および更新し、第3空間相関行列φxxa(f,n)および第3空間相関行列φxxb(f,n)を更新しない。
また、相関導出部30Dは、第4空間相関行列φNN(f,n)を下記式(42)により導出および更新する。
式(39)〜式(42)中、αは、0以上1未満の値である。αの値が1に近い値であるほど、過去に導出した空間相関行列の重みが、最新の空間相関行列に比べて大きい事を意味する。αの値は、予め設定すればよい。αは、例えば、0.95などとすればよい。
すなわち、相関導出部30Dは、過去に導出した第3空間相関行列を、目的音成分S(f,n)をエルミート転置した転置成分との乗算値によって表される最新の第3空間相関行列で補正することによって、新たな第3空間相関行列を導出する。
なお、相関導出部30Dは、第3相関記憶部30E(第3相関記憶部30E1〜第3相関記憶部30E3)に記憶済の第3空間相関行列φxxa(f,n)、第3空間相関行列φxxb(f,n)、第3空間相関行列φxxc(f,n)を、過去に導出した第3空間相関行列として用いればよい。また、これらの第3相関記憶部30Eには、各々、1つの第3空間相関行列のみが記憶され、順次、相関導出部30Dによって更新される。
また、相関導出部30Dは、過去に導出した第4空間相関行列φNN(f,n)を、非目的音成分N(f,n)と非目的音成分N(f,n)をエルミート転置した転置成分との乗算値によって表される最新の第4空間相関行列φNN(f,n)で補正することによって、新たな第4空間相関行列φNN(f,n)を導出する。
なお、相関導出部30Dは、第4相関記憶部30Fに記憶済の第4空間相関行列φNN(f,n)を、過去に導出した第4空間相関行列φNN(f,n)として用いればよい。また、第4相関記憶部30Fには、1つの第4空間相関行列φNN(f,n)のみが記憶され、順次、相関導出部30Dによって更新される。
次に、本実施の形態の音信号処理装置11が実行する音信号処理の手順を説明する。
図6は、本実施の形態の音信号処理装置11が実行する音信号処理の手順の一例を示す、フローチャートである。
変換部30Bが、AD変換部18を介して複数の第1マイク14から受付けた第3信号を短時間フーリエ変換し、周波数スペクトルX(f,n)によって表される第1音信号を取得する(ステップS200)。変換部30Bは、取得した第1音信号を、分離部30Jおよび生成部30H(生成部30H1〜生成部30H3)の各々へ出力する(ステップS202)。
次に、分離部30Jが、第1音信号を、目的音成分Si(f,n)と非目的音成分Ni(f,n)に分離する(ステップS204)。そして、分離部30Jは、目的音成分Si(f,n)と非目的音成分Ni(f,n)を、相関導出部30Dへ出力する。
次に、音信号処理部30では、目的音源12A1〜目的音源12A3の各々に対応する、加算部30K、係数導出部30G、生成部30H、および逆変換部30I1が、ステップS206〜ステップS212の処理を実行する。なお、ステップS206〜ステップS212の処理は、複数の目的音源12A(目的音源12A1〜目的音源12A3)の各々に対応する機能間で、並列して実行される。
まず、加算部30Kが、対応する目的音源12A以外の目的音源12Aの第3空間相関行列と、第4空間相関行列φNN(f,n)と、を加算し、対応する目的音源12Aの係数導出部30Gへ出力する(ステップS2206)。
係数導出部30Gは、対応する目的音源12Aの第3空間相関行列と、第4空間相関行列φNN(f,n)と、を第3相関記憶部30Eおよび第4相関記憶部30Fから読取る(ステップS208)。
そして、係数導出部30Gは、ステップS208で読取った第3空間相関行列および第4空間相関行列φNN(f,n)に基づいて、空間フィルタ係数を導出する(ステップS210)。
次に、生成部30Hが、ステップS210で導出した空間フィルタ係数を用いて、第1音信号に含まれる、対応する目的音源12Aの目的音信号を強調した強調音信号を生成する(ステップS212)。
そして、逆変換部30I1は、ステップS212で生成された強調音信号を出力部22へ出力する(ステップS214)。
目的音源12A1〜目的音源12A3の各々に対応する、加算部30K、係数導出部30G、生成部30H、および逆変換部30I1が、ステップS206〜ステップS212の処理を実行することによって、目的音源12A1から発せられた目的音信号を強調した強調音信号と、目的音源12A2から発せられた目的音信号を強調した強調音信号と、目的音源12A3から発せられた目的音信号を強調した強調音信号と、が検出部30Cおよび逆変換部30Iへ出力される。
このため、逆変換部30I1〜逆変換部30I3の各々から受付けた強調音信号を出力する出力部22は、複数の目的音源12Aの各々の目的音をそれぞれ強調した、複数の強調音信号を出力することができる。
次に、検出部30Cは、生成部30H(生成部30H1〜生成部30H3)から受付けた複数の強調音信号を用いて、複数の目的音源12Aの各々の目的音の、目的音区間を検出する(ステップS216)。
次に、相関導出部30Dは、ステップS204で分離された目的音成分S(f,n)および非目的音成分N(f,n)と、複数の目的音源12Aの各々の目的音の目的音区間を示す関数(ua(n),ub(n),uc(n))に基づいて、複数の目的音源12Aの各々に対応する第3空間相関行列(第3空間相関行列φxxa(f,n)、第3空間相関行列φxxb(f,n)、第3空間相関行列φxxc(f,n))、および第4空間相関行列φNN(f,n)を導出する(ステップPS218)。
そして、相関導出部30Dは、導出した第3空間相関行列φxxa(f,n)、第3空間相関行列φxxb(f,n)、第3空間相関行列φxxc(f,n)、および第4空間相関行列φNN(f,n)を、各々、第3相関記憶部30E1、第3相関記憶部30E2、第3相関記憶部30E3、および第4相関記憶部30Fへ記憶することで、これらの空間相関行列を更新する(ステップS220)。
次に、音信号処理部30が、音信号処理を終了するか否かを判断する(ステップS222)。ステップS222で否定判断すると(ステップS222:No)、上記ステップS200へ戻る。一方、ステップS222で肯定判断すると(ステップS222:Yes)、本ルーチンを終了する。
以上説明したように、本実施の形態の音信号処理装置11は、分離部30Jが、第1音信号を目的音成分と非目的音成分に分離する。検出部30Cは、強調音信号に基づいて、目的音区間を検出する。相関導出部30Dは、目的音区間と、目的音成分と、非目的音成分と、に基づいて、第1音信号における目的音成分の第3空間相関行列と、第1音信号における非目的音成分の第4空間相関行列と、を導出する。そして、係数導出部30Gは、第3空間相関行列および第4空間相関行列に基づいて、空間フィルタ係数を導出する。
このように、本実施の形態の音信号処理装置11では、第2マイク16から取得した第2音声信号を用いずに、第1マイク14から取得した第1音声信号を用いて、空間フィルタ係数を導出する。このため、本実施の形態では、目的音源12A以外の非目的音源12Bの音を集音するための第2マイク16を用意することなく、目的音源12Aから発せられた目的音信号を高精度に強調することができる。
また、本実施の形態の音信号処理装置11では、複数の目的音源12Aの各々の目的音の目的音信号を、分離して強調することができる。
また、本実施の形態の音信号処理装置11では、相関導出部30Dが、順次、第3空間相関行列および第4空間相関行列を更新する。このため、第3相関記憶部30Eに初期値として記憶されていた第3空間相関行列が想定する、目的音源12Aと第1マイク14との位置関係にずれが生じた場合であっても、実際の位置関係に応じた空間相関行列に次第に収束するように更新されていくこととなる。
このため、本実施の形態の音信号処理装置11は、効果的に目的音源12Aから発せられた目的音信号を強調し、非目的音信号を抑圧することができる。
また、本実施の形態の音信号処理装置11は、第1音信号を目的音成分と非目的音成分に分離し、空間相関行列の導出に用いる。このため、音信号処理装置11は、雑音などの非目的音を効果的に抑圧した強調音信号を生成することができる。よって、音信号処理装置11は、高精度な強調音信号を提供することができる。
<変形例2>
なお、分離部30Jは、上記第2の実施の形態に示した方法とは異なる方法を用いて、第1音信号を目的音成分と非目的音成分に分離してもよい。
例えば、分離部30Jは、周波数ビン毎に目的音か非目的音かの判定を行い、判定結果を用いて、第1音信号を目的音成分と非目的音成分に分離してもよい。
例えば、分離部30Jは、ニューラルネットワークを用いて、第1音信号を目的音成分と非目的音成分に分離する。
この場合、分離部30Jは、ニューラルネットワークを用いて、フレーム毎および周波数ビンごとに、値“0”または値“1”を示す音声マスクMS(f,n)および非音声マスクMN(f,n)を推定する。そして、分離部30Jは、下記式(43)および式(44)を用いて、目的音成分Si(f,n)および非目的音成分Ni(f,n)を導出する。
分離部30Jは、ニューラルネットワークの入力として、1チャンネルの周波数スペクトルXi(f,n)を用いる。そして、分離部30Jは、各チャンネルの入力に対して、音声マスクMS(f,n)および非音声マスクMN(f,n)を推定する。
そして、分離部30Jは、全てのチャンネルの推定結果の多数決等を用いて、チャンネル共通の音声マスクMS(f,n)および非音声マスクMN(f,n)を推定すればよい。
分離部30Jは、雑音を含まないクリーンな目的音信号と、目的音を含まない非目的音信号と、を用いたシミュレーションによって、ニューラルネットワークの学習データを予め生成すればよい。
クリーンな目的音信号のスペクトルをSt(f,n)、目的音を含まない非目的音信号のスペクトルをNt(f,n)で表す。すると、雑音などの非目的音を重畳した音のスペクトルXt(f,n)と、音声マスクの正解データMtS(f,n)および非音声マスクの正解データMtN(f,n)は、下記式(45)〜式(47)により導出される。
式(46)および式(47)中、tSおよびtNは、目的音と非目的音とのパワー比の閾値を示す。
入力特徴量には、下記式(48)で表されるベクトルv(n)を用いる。
式(48)によって表されるベクトルv(n)は、当該フレームと直前のフレームのスペクトルの絶対値の対数を連結した、516次元ベクトルである。そして、音声マスクMS(f,n)および非音声マスクMN(f,n)の推定は、入力特徴量を示すベクトルv(n)から、正解データを表す258次元ベクトルc(n)を推定する問題として、下記式(49)に定式化することができる。
このため、ニューラルネットワークのモデルの構成は、下記式(50)〜式(54)で定義することができる。
ここで、中間層のノード数を200と想定する。すると、行列Wiのサイズは200×516となり、行列Woのサイズは258×200となる。このため、行列W1、行列W2、および行列W3のサイズは、いずれも200×200となる。
ここで、目的関数Lを、下記式(55)で表されるクロスエントロピーで定義する。
そして、分離部30Jは、目的関数Lを最大化するパラメータ列Wi,Wo,W1,W2,W3を学習により導出する。学習の手法には、確率的勾配降下法など、公知の方法を用いればよい。
そして、分離部30Jは、上記方法により生成したモデルを用いて推定した、上記式(55)におけるmi(n),(i=1,・・・・,258)は、0から1の間の連続値となる。このため、例えば、分離部30Jは、例えば“0.5”を閾値とし、該閾値以上であれば値“1”、該閾値未満であれば“0”に二値化することで、フレーム毎および周波数ビンごと音声マスクMS(f,n)および非音声マスクMN(f,n)を推定する。そして、分離部30Jは、上記式(43)および上記式(44)を用いて、目的音成分Si(f,n)および非目的音成分Ni(f,n)を導出すればよい。
なお、上記変形例1および上記変形例2では、ニューラルネットワークの構成要素が、3層の中間層を持つ全結合ネットワークである場合を一例として説明した。しかし、ニューラルネットワークの構成要素は、これに限定されない。
例えば、学習データが十分に用意できる場合には、中間層の層数やノード数をさらに増やすことにより、精度向上を図ってもよい。また、バイアス項を用いてもよい。また、活性化関数としては、sigmoidの他に、reluやtanhなどの種々の関数を用いることができる。また、全結合層以外にも、畳み込みニューラルネットワークやリカレントニューラルネットワークなど、種々の構成を利用することが可能である。また、ニューラルネットワークに入力する特徴量として、FFTパワースペクトルを用いるものとして説明したが、このほかにもメルフィルタバンクやメルケプストラムなど、種々の特徴量やそれらの組み合わせを用いることが可能である。
(第3の実施の形態)
なお、音信号処理装置10および音信号処理装置11は、音信号処理システム2に代えて、認識部を備えた構成であってもよい。
図7は、本実施の形態の音信号処理システム3の一例を示す模式図である。
音信号処理システム3は、音信号処理装置13と、複数の第1マイク14と、を備える。音信号処理装置13と、複数の第1マイク14とは、データや信号を授受可能に接続されている。すなわち、音信号処理システム3は、音信号処理装置10に代えて音信号処理装置13を備える。
音信号処理装置13は、AD変換部18と、音信号処理部20と、認識部24と、を備える。AD変換部18および音信号処理部20は、第1の実施の形態と同様である。すなわち、音信号処理装置13は、出力部22に代えて認識部24を備えた点以外は、音信号処理装置10と同様である。
認識部24は、音信号処理部20から受付けた強調音信号を認識する。
具体的には、認識部24は、強調音信号を解析する装置である。認識部24は、例えば、出力スペクトルY(f,n)によって表される強調音信号を公知の解析方法で認識し、認識結果を出力する。この出力は、テキストデータでもよいし、認識された単語IDのような記号化された情報であってもよい。認識部24には、公知の認識装置を用いればよい。
(適用範囲)
上記実施の形態および変形例で説明した音信号処理装置10、音信号処理装置11、および音信号処理装置13は、目的音信号を強調する様々な装置やシステムに適用することができる。
詳細には、音信号処理装置10、音信号処理装置11、および音信号処理装置13は、1または複数の話者が音声を出力する環境において音を集音して処理する各種のシステムや装置に適用することができる。
例えば、音信号処理装置10、音信号処理装置11、および音信号処理装置13は、会議システム、講義システム、接客対応システム、スマートスピーカ、車載システム、等に適用することができる。
会議システムは、1または複数の話者が発話するスペース内に配置されたマイクで集音された音を処理するシステムである。講義システムは、講義者および受講者の少なくとも一方が発話するスペース内に配置されたマイクで集音された音を処理するシステムである。接客対応システムは、店員と顧客が対話形式で発話するスペース内に配置されたマイクで集音された音を処理するシステムである。スマートスピーカは、対話型の音声操作に対応したAI(Artificial Intelligence)アシスタントを利用可能なスピーカである。車載システムは、車両内で乗員の発話した音を集音して処理し、処理結果を車両の駆動制御などに用いるシステムである。
次に、上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13のハードウェア構成を説明する。
図8は、上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13のハードウェア構成例を示す説明図である。
上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13は、CPU(Central Processing Unit)51などの制御装置と、ROM(Read Only Memory)52やRAM(Random Access Memory)53などの記憶装置と、ネットワークに接続して通信を行う通信I/F54と、各部を接続するバス61を備えている。
上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13で実行されるプログラムは、ROM52等に予め組み込まれて提供される。
上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13で実行されるプログラムは、インストール可能な形式又は実行可能な形式のファイルでCD−ROM(Compact Disk Read Only Memory)、フレキシブルディスク(FD)、CD−R(Compact Disk Recordable)、DVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録してコンピュータプログラムプロダクトとして提供されるように構成してもよい。
さらに、上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成してもよい。また、上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13で実行されるプログラムをインターネット等のネットワーク経由で提供または配布するように構成してもよい。
上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13で実行されるプログラムは、コンピュータを、上記実施の形態および変形例の音信号処理装置10、音信号処理装置11、および音信号処理装置13の各部として機能させうる。このコンピュータは、CPU51がコンピュータ読取可能な記憶媒体からプログラムを主記憶装置上に読み出して実行することができる。
本発明のいくつかの実施の形態および変形例を説明したが、これらの実施の形態および変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施の形態および変形例は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これらの実施の形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。