(57)【要約】【課題】ＩＣＡ法による音源分離処理を行うに当たり、高い音源分離性能を確保しつつ、出力遅延（混合音声信号が発生した時点から、その混合音声信号から分離生成された分離信号が出力されるまでの遅延）を短くすることができること。【解決手段】フィルタ処理の入力信号として用いる第２周波数領域信号Ｓ１を得るための第２フーリエ変換処理の実行周期ｔ２の方が、分離行列の学習計算に用いる第１周波数領域信号を得るための第１フーリエ変換処理の実行周期ｔ１よりも短くする。ここで、第２時間領域信号Ｓ１の時間長が、第１時間領域信号Ｓ０の時間長よりも短く設定されている場合、学習計算により得られる第１分離行列の行列要素を、複数のグループごとに集約することにより、フィルタ処理で用いる第２分離行列を設定する。【選択図】図２
2008035259.tif 000002
【特許請求の範囲】
【請求項１】
複数の音源が存在する音響空間に複数のマイクロホンが存在する状態で、該マイクロホン各々を通じて入力される音響信号を一定のサンプリング周期で逐次デジタル化して得られる複数の混合音響信号に基づいて、１以上の前記音源に対応する音響信号である分離信号を分離生成する音源分離装置であって、
所定の第１の時間長分の新たな前記混合音響信号が得られるごとに、該第１の時間長以上の時間長分の最新の前記混合音声信号である第１の時間領域信号にフーリエ変換処理を施し、該フーリエ変換処理により得られる第１の周波数領域信号を所定の記憶手段に一時記憶させる第１のフーリエ変換手段と、
前記第１のフーリエ変換手段により得られた１又は複数の前記第１の周波数領域信号に基づいて周波数領域での独立成分分析法による学習計算を行うことにより、所定の第１の分離行列を算出する分離行列学習計算手段と、
前記分離行列学習計算手段により算出された前記第１の分離行列に基づいて前記分離信号の分離生成に用いる第２の分離行列を設定して更新する分離行列設定手段と、
前記第１の時間長よりも短い予め定められた第２の時間長分の新たな前記混合音響信号が得られるごとに、該第２の時間長の２倍の時間長分の最新の前記混合音声信号を含む第２の時間領域信号にフーリエ変換処理を施し、該フーリエ変換処理により得られる第２の周波数領域信号を所定の記憶手段に一時記憶させる第２のフーリエ変換手段と、
前記第２のフーリエ変換手段により新たな前記第２の周波数領域信号が得られるごとに、該第２の周波数領域信号に対して前記分離行列設定手段により更新される前記第２の分離行列に基づくフィルタ処理を施し、これにより得られる第３の周波数領域信号を所定の記憶手段に一時記憶させる分離フィルタ処理手段と、
前記分離フィルタ処理手段により新たな前記第３の周波数領域信号が得られるごとに、該第３の周波数領域信号に逆フーリエ変換処理を施し、該逆フーリエ変換処理により得られる第３の時間領域信号を所定の記憶手段に一時記憶させる逆フーリエ変換手段と、
前記逆フーリエ変換手段により新たな前記第３の時間領域信号が得られるごとに、該第３の時間領域信号とその１回前に得られた前記第３の時間領域信号とにおける時間帯が重複する部分の両信号を合成することによって新たな前記分離信号を生成する信号合成手段と、
を具備してなることを特徴とする音源分離装置。
【請求項２】
前記第１の時間領域信号の時間長と前記第２の時間領域信号の時間長とが等しく設定されており、
前記分離行列設定手段が、前記第１の分離行列をそのまま前記第２の分離行列として設定してなる請求項１に記載の音源分離装置。
【請求項３】
前記第２の時間領域信号の時間長が、前記第１の時間領域信号の時間長よりも短く設定されており、
前記分離行列設定手段が、前記第１の分離行列を構成する行列要素を複数のグループごとに集約することにより得られる行列を前記第２の分離行列として設定してなる請求項１に記載の音源分離装置。
【請求項４】
前記第２の時間領域信号の時間長が、その２倍以上の整数倍が前記第１の時間領域信号の時間長となるように設定されてなる請求項３に記載の音源分離装置。
【請求項５】
前記分離行列設定手段における前記集約が、前記第１の分離行列を構成する行列要素について、複数のグループごとに１つの行列要素を選択すること、又は複数のグループごとに行列要素の平均若しくは加重平均を算出することである請求項３又は４のいずれかに記載の音源分離装置。
【請求項６】
前記第２の時間領域信号が、前記第２の時間長の２倍以上の予め定められた時間長分の最新の前記混合音声信号である請求項１〜５のいずれかに記載の音源分離装置。
【請求項７】
前記第２の時間領域信号が、前記第２の時間長の２倍の時間長分の最新の前記混合音声信号に所定の数の定数信号が付加された信号である請求項１〜５のいずれかに記載の音源分離装置。
【請求項８】
前記第２の時間領域信号が、前記第２の時間長の２倍の時間長分の最新の前記混合音声信号に所定の数の０値信号が付加された信号である請求項７に記載の音源分離装置。
【請求項９】
複数の音源が存在する音響空間に複数のマイクロホンが存在する状態で、該マイクロホン各々を通じて入力される音響信号を一定のサンプリング周期で逐次デジタル化して得られる複数の混合音響信号に基づいて、１以上の前記音源に対応する音響信号である分離信号を分離生成する処理を所定のプロセッサにより実行する音源分離方法であって、
所定の第１の時間長分の新たな前記混合音響信号が得られるごとに、該第１の時間長以上の時間長分の最新の前記混合音声信号である第１の時間領域信号にフーリエ変換処理を施し、該フーリエ変換処理により得られる第１の周波数領域信号を所定の記憶手段に一時記憶させる第１のフーリエ変換手順と、
前記第１のフーリエ変換手順により得られた１又は複数の前記第１の周波数領域信号に基づいて周波数領域での独立成分分析法による学習計算を行うことにより、所定の第１の分離行列を算出する分離行列学習計算手順と、
前記分離行列学習計算手順により算出された前記第１の分離行列に基づいて前記分離信号の分離生成に用いる第２の分離行列を設定して更新する分離行列設定手順と、
前記第１の時間長よりも短い予め定められた第２の時間長分の新たな前記混合音響信号が得られるごとに、該第２の時間長の２倍の時間長分の最新の前記混合音声信号を含む信号である第２の時間領域信号を設定する時間領域信号設定手順と、
前記時間領域信号設定手順により設定された前記第２の時間領域信号各々にフーリエ変換処理を施し、該フーリエ変換処理により得られる第２の周波数領域信号を所定の記憶手段に一時記憶させる第２のフーリエ変換手順と、
前記第２のフーリエ変換手順により新たな前記第２の周波数領域信号が得られるごとに、該第２の周波数領域信号に対して前記分離行列設定手順により更新される前記第２の分離行列に基づくフィルタ処理を施し、これにより得られる第３の周波数領域信号を所定の記憶手段に一時記憶させる分離フィルタ処理手順と、
前記分離フィルタ処理手順により新たな前記第３の周波数領域信号が得られるごとに、該第３の周波数領域信号に逆フーリエ変換処理を施し、該逆フーリエ変換処理により得られる第３の時間領域信号を所定の記憶手段に一時記憶させる逆フーリエ変換手順と、
前記逆フーリエ変換手順により新たな前記第３の時間領域信号が得られるごとに、該第３の時間領域信号とその１回前に得られた前記第３の時間領域信号とにおける時間帯が重複する部分の両信号を合成することによって新たな前記分離信号を生成する信号合成手順と、
を有してなることを特徴とする音源分離方法。
【請求項１０】
所定のプロセッサを、複数の音源が存在する音響空間に複数のマイクロホンが存在する状態で、該マイクロホン各々を通じて入力される音響信号を一定のサンプリング周期で逐次デジタル化して得られる複数の混合音響信号に基づいて、１以上の前記音源に対応する音響信号である分離信号を分離生成する音源分離装置として機能させるための音源分離プログラムであって、
所定のプロセッサを、
所定の第１の時間長分の新たな前記混合音響信号が得られるごとに、該第１の時間長以上の時間長分の最新の前記混合音声信号である第１の時間領域信号にフーリエ変換処理を施し、該フーリエ変換処理により得られる第１の周波数領域信号を所定の記憶手段に一時記憶させる第１のフーリエ変換手段と、
前記第１のフーリエ変換手段により得られた１又は複数の前記第１の周波数領域信号に基づいて周波数領域での独立成分分析法による学習計算を行うことにより、所定の第１の分離行列を算出する分離行列学習計算手段と、
前記分離行列学習計算手段により算出された前記第１の分離行列に基づいて前記分離信号の分離生成に用いる第２の分離行列を設定して更新する分離行列設定手段と、
前記第１の時間長よりも短い予め定められた第２の時間長分の新たな前記混合音響信号が得られるごとに、該第２の時間長の２倍の時間長分の最新の前記混合音声信号を含む第２の時間領域信号にフーリエ変換処理を施し、該フーリエ変換処理により得られる第２の周波数領域信号を所定の記憶手段に一時記憶させる第２のフーリエ変換手段と、
前記第２のフーリエ変換手段により新たな前記第２の周波数領域信号が得られるごとに、該第２の周波数領域信号に対して前記分離行列設定手段により更新される前記第２の分離行列に基づくフィルタ処理を施し、これにより得られる第３の周波数領域信号を所定の記憶手段に一時記憶させる分離フィルタ処理手段と、
前記分離フィルタ処理手段により新たな前記第３の周波数領域信号が得られるごとに、該第３の周波数領域信号に逆フーリエ変換処理を施し、該逆フーリエ変換処理により得られる第３の時間領域信号を所定の記憶手段に一時記憶させる逆フーリエ変換手段と、
前記逆フーリエ変換手段により新たな前記第３の時間領域信号が得られるごとに、該第３の時間領域信号とその１回前に得られた前記第３の時間領域信号とにおける時間帯が重複する部分の両信号を合成することによって新たな前記分離信号を生成する信号合成手段と、
の各手段として機能させるための音源分離プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の音響空間に複数の音源と複数の音声入力手段とが存在する状態で、その音声入力手段各々を通じて逐次入力される複数の混合音声信号（音源各々からの音源信号が重畳された信号）に対し、所定の分離行列を用いた行列演算を施すことにより前記音源信号に対応する複数の分離信号を逐次生成する機能を備えた音源分離装置、音源分離方法及び音源分離プログラムに関するものである。
【背景技術】
【０００２】
所定の音響空間に複数の音源と複数のマイクロホン（音声入力手段に相当）とが存在する場合、その複数のマイクロホンごとに、複数の音源各々からの個別の音声信号（以下、音源信号という）が重畳された音声信号（以下、混合音声信号という）が取得される。このようにして取得（入力）された複数の前記混合音声信号のみに基づいて、前記音源信号各々を同定（分離）する音源分離処理の方式は、ブラインド音源分離方式（Blind Source Separation方式、以下、ＢＳＳ方式という）と呼ばれる。なお、本明細書において、「音声」は、人が発する声に限らず各種の音響を含む概念を表す用語として用いている。従って、例えば、音響入力手段と音声入力手段とは同義であり、また、混合音響信号と混合音声信号とは同義である。また、本明細書において、「演算」、「計算」及び「算出」は同義である。
さらに、ＢＳＳ方式の音源分離処理の１つに、独立成分分析法（Independent Component Analysis、以下、ＩＣＡ法という）による音源分離処理がある。
複数のマイクロホンを通じて入力される複数の前記混合音声信号（時系列の（時間領域の）音声信号）に含まれる音源信号それぞれは、統計的に独立である。ＩＣＡ法による音源分離処理は、各音源信号が統計的に独立であることを前提に、入力された複数の前記混合音声信号に基づいて、所定の分離行列（逆混合行列）を学習計算により最適化する処理を有する。さらに、ＩＣＡ法による音源分離処理は、学習計算により最適化された分離行列を用いて、入力された複数の混合音声信号に対してフィルタ処理（行列演算）を行うことを含み、これによって前記音源信号が同定（音源分離）される。
ここで、ＩＣＡ法における分離行列の最適化は、所定の時間長分の混合音声信号に対し、分離行列を用いたフィルタ処理（行列演算）を行うことによる分離信号（同定された信号）の算出と、その分離信号を用いた逆行列演算等による分離行列の更新と、を逐次繰り返す学習計算により行われる。
このようなＩＣＡ法による音源分離処理は、例えば、非特許文献１や非特許文献２等に詳説されている。
【０００３】
ＢＳＳ方式の音源分離処理を行うためのＩＣＡ法は、時間領域(Time-Domain)でのＩＣＡ法（以下、ＴＤＩＣＡ法という）と、周波数領域(Frequency-Domain)でのＩＣＡ法（以下、ＦＤＩＣＡ法という）とに大別される。
ＴＤＩＣＡ法は、一般に、広い周波数帯域において音源信号それぞれの独立性を評価できる手法であり、分離行列の学習計算において、最適点近傍における収束性が高い。このため、ＴＤＩＣＡ法によれば、最適化レベルの高い分離行列を得ることができ、高精度で音源信号を分離できる（分離性能が高い）。しかしながら、ＴＤＩＣＡ法は、分離行列の学習計算に非常に複雑な（演算負荷の高い）処理（畳み込み混合に対する処理）を必要とするため、リアルタイム処理には適さない。
一方、例えば特許文献１等に示されるＦＤＩＣＡ法は、フーリエ変換処理によって混合音声信号を時間領域の信号から周波数領域の信号に変換することにより、畳み込み混合の問題を、複数に分割された周波数帯域である周波数ビン（特許文献１ではサブバンド）ごとの瞬時混合の問題に変換した上で、分離行列の学習計算を行う手法である。このＦＤＩＣＡ法によれば、分離行列（分離フィルタ処理に用いる行列）の最適化（学習計算）を、安定かつ高速に行うことができる。従って、ＦＤＩＣＡ法は、リアルタイム音源分離処理に適している。
【０００４】
以下、図７を参照しつつ、ＦＤＩＣＡ法による分離行列の学習計算について説明する。図７はＦＤＩＣＡ法による分離行列の学習計算を行う学習計算ユニットＺ１の概略構成を表すブロック図である。
図７には、２つの音源１、２からの音源信号Ｓ1(ｔ)、Ｓ2(ｔ)を２つのマイクロホン１１１、１１２を通じて入力した２チャンネル（各チャンネルは、マイクロホンそれぞれに対応）の混合音声信号ｘ１(ｔ)、ｘ２(ｔ)に基づいて、分離行列Ｗ(ｆ)の学習計算を行う例について示しているが、２チャンネル以上であっても同様である。なお、混合音声信号ｘ１(ｔ)、ｘ２(ｔ)は、Ａ／Ｄ変換器によって一定のサンプリング周期（一定のサンプリング周波数といってもよい）でデジタル化された信号であるが、図７において、Ａ／Ｄ変換器の記載を省略している。
ＦＤＩＣＡ法では、まず、ＦＦＴ処理部１３が、入力された混合音声信号ｘ(ｔ)が所定の周期（所定のサンプル数）ごとに区分された信号であるフレームそれぞれについて、フーリエ変換処理を行う。これにより、混合音声信号（入力信号）が、時間領域の信号から周波数領域の信号へ変換される。フーリエ変換後の信号は、周波数ビンと呼ばれる所定範囲の周波数帯域ごとに区分された信号となる。そして、そのフーリエ変換処理後の各チャンネルの信号について、分離フィルタ処理部１１ｆが、分離行列Ｗ(ｆ)に基づくフィルタ処理（行列演算処理）を施すことによって音源分離（音源信号の同定）を行う。ここでｆを周波数ビン、ｍを分析フレーム番号とすると、分離信号（同定信号）ｙ(ｆ、ｍ)は、次の（１）式のように表すことができる。
【数１】
2008035259.tif 000003
そして、（１）式における分離フィルタ（分離行列）Ｗ(ｆ)は、不図示のプロセッサ（例えば、コンピュータが備えるＣＰＵ）が、次の（２）式により表される処理（以下、単位処理という）を繰り返す逐次計算（学習計算）を実行することによって求められる。ここで、前記単位処理を実行する際、前記プロセッサは、まず、前回（ｉ）の出力ｙ(ｆ)を（２）式に適用することよって今回（ｉ＋１）のＷ(ｆ)を求める。ここで、分離行列Ｗ(ｆ)は、周波数ビンそれぞれに対応するフィルタ係数を行列要素とする行列であり、前記学習計算は、そのフィルタ係数各々の値を算出する計算である。
さらに、前記プロセッサは、今回求めたＷ(ｆ)を用いて所定時間長分の混合音声信号（周波数領域の信号）に対してフィルタ処理（行列演算）を施すことによって今回（ｉ＋１）の出力ｙ(ｆ)を求める。そして、前記プロセッサが、これら一連の処理（前記単位処理）を複数回繰り返すことにより、分離行列Ｗ(ｆ)は、徐々に上記逐次計算（学習計算）で用いられる混合音声信号に適合した内容となる。
【数２】
2008035259.tif 000004
【０００５】
ところで、ＦＤＩＣＡ法では、分離行列の学習計算に用いる周波数領域の混合音声信号（以下、学習用入力信号という）における周波数ビンの数（特許文献１に示されるサブバンドの数）が、その学習計算により得られる分離行列を用いてフィルタ処理を行った場合の分離性能に大きな影響を及ぼす。ここで、フーリエ変換処理において、出力信号（周波数領域の信号）の周波数ビン数は、入力信号（時間領域の信号）のサンプル数の１／２倍なるため、フーリエ変換処理の入力となる混合音声信号（ディジタル信号）のサンプル数が、分離性能に大きな影響を及ぼすともいえる。また、混合音声信号をＡ／Ｄ変換する際のサンプリング周期は一定であるので、フーリエ変換処理の入力となる混合音声信号の時間長が、分離性能に大きな影響を及ぼすといってもよい。
特許文献１および非特許文献３には、例えば、混合音声信号のサンプリング周波数が８kHzである場合、フーリエ変換処理の入力信号（時間領域の信号）の長さ（フレーム長）を１０２４サンプル程度（時間に換算して１２８ms）とすれば、即ち、フーリエ変換処理の出力信号（周波数領域の信号）における周波数ビンの数（サブバンド数）が５１２程度となるようにすれば、高い分離性能が得られる（分離性能の高い分離行列が得られる）ことが示されている。
【０００６】
次に、図８を参照しつつ、ＦＤＩＣＡ法による音源分離処理をリアルタイムで実行する場合の従来の処理手順について説明する。図８は従来のＦＤＩＣＡ法による音源分離処理の流れを表すブロック図である。
図８に示す例では、ＦＤＩＣＡ法による音源分離処理は、学習演算部３４、第２ＦＦＴ処理部４２’、分離フィルタ処理部４４’、ＩＦＦＴ処理部４６’及び合成処理部４８’により実行される。これら学習演算部３４、第２ＦＦＴ処理部４２’、分離フィルタ処理部４４’、ＩＦＦＴ処理部４６’、合成処理部４８’は、例えば、ＤＳＰ（Digital Signal Processor）等の演算用のプロセッサ及びそのプロセッサにより実行されるプログラムが記憶されたＲＯＭ等の記憶手段、並びにＲＡＭ等のその他の周辺装置により構成される。
また、図８に示す各バッファ（第１入力バッファ３１、第１中間バッファ３３、第２入力バッファ４１’、第２中間バッファ４３’、第３中間バッファ４５’、第４中間バッファ４７’、出力バッファ４９’）は、説明の便宜上、非常に多くのデータを蓄積可能であるかのように記載されている。しかしながら、実際には、各バッファは、記憶するデータのうち不要になったものが順次消去され、これにより生じる空き領域が再利用されるので、その記憶容量は必要十分な量に設定されている。
【０００７】
一定のサンプリング周期でディジタル化された各チャンネルの混合音声信号（音響信号）は、Ｎサンプル分ずつ第１入力バッファ３１と第２入力バッファ４１’とに入力（伝送）される。例えば、混合音声信号のサンプリング周波数が８kHzである場合、Ｎ＝５１２程度とする。この場合、Ｎサンプル分の混合音声信号の時間長は６４msである。
そして、第１ＦＦＴ処理部３２は、新たなＮサンプル分の混合音声信号が第１入力バッファ３１に入力されるごとに、それを含む最新の２Ｎサンプル分の混合音声信号（以下、第１時間領域信号Ｓ０という）について、フーリエ変換処理を実行し、その処理結果である周波数領域の信号（以下、第１周波数領域信号Ｓｆ０という）を、第１中間バッファ３３に一時記憶させる。ここで、第１入力バッファ３１に蓄積された信号のサンプル数が、２Ｎ個に満たない場合（処理開始後の初期の段階）には、不足する数だけ０値が充当された信号について、フーリエ変換処理が実行される。第１ＦＦＴ処理部３２の１回のフーリエ変換処理により得られる第１周波数領域信号Ｓｆ０の周波数ビンの数は、第１周波数領域信号Ｓｆ０のサンプル数の１／２倍（＝Ｎ個）である。
また、学習演算部３４は、第１中間バッファ３３に、所定時間長Ｔ[sec]分の第１周波数領域信号Ｓｆ０が記録されるごとに、そのＴ[sec]分の信号Ｓｆ０に基づいて、分離行列Ｗ(ｆ)の学習計算、即ち、分離行列Ｗ(ｆ)を構成するフィルタ係数（行列要素）の学習計算を行う。さらに、学習演算部３４は、所定のタイミングで、分離フィルタ処理部４４’で用いられる分離行列を、学習後の分離行列に更新する（即ち、分離行列のフィルタ係数の値を学習後の値に更新する）。通常、学習演算部３４は、学習計算の終了後、分離フィルタ処理部４４’のフィルタ処理が最初に終了した直後に、分離行列を更新する。
【０００８】
一方、第２ＦＦＴ処理部４２’も、新たなＮサンプル分の混合音声信号が第２入力バッファ４１’に入力されるごとに、それを含む最新の２Ｎサンプル分の混合音声信号（以下、第２時間領域信号Ｓ１という）について、フーリエ変換処理を実行し、その処理結果である周波数領域の信号（以下、第２周波数領域信号Ｓｆ１という）を、第２中間バッファ４３’に一時記憶させる。このように、第２ＦＦＴ処理部４２’は、順次Ｎサンプル分ずつ時間帯が重複する第２時間領域信号Ｓ１（混合音声信号）について、フーリエ変換処理を実行する。ここで、第２入力バッファ４１’に蓄積された信号のサンプル数が、２Ｎ個に満たない場合（処理開始後の初期の段階）には、不足する数だけ０値が充当された信号について、フーリエ変換処理が実行される。なお、この第２周波数領域信号Ｓｆ１の周波数ビンの数も、第２周波数領域信号Ｓｆ１のサンプル数の１／２倍（＝Ｎ個）である。
また、分離フィルタ処理部４４’は、第２中間バッファ４３’に、新たな第２周波数領域信号Ｓｆ１が記録されるごとに、その新たな第２周波数領域信号Ｓｆ１について、分離行列を用いたフィルタ処理（行列演算）を行い、その処理により得られる信号（以下、第３周波数領域信号Ｓｆ２という）を、第３中間バッファ４５’に一時記憶させる。このフィルタ処理に用いられる分離行列は、前述した学習演算部３４によって更新されるものである。なお、学習演算部３４により最初に分離行列が更新されるまでは、分離フィルタ処理部４４’は、予め定められた初期値が設定された分離行列（初期行列）を用いてフィルタ処理を行う。ここで、第２周波数領域信号Ｓｆ１と第３周波数領域信号Ｓｆ２とは、周波数ビンの数が等しいことはいうまでもない。
【０００９】
また、ＩＦＦＴ処理部４６’は、第３中間バッファ４５’に新たな第３周波数領域信号Ｓｆ２が記録されるごとに、その新たな第３周波数領域信号Ｓｆ２について、逆フーリエ変換処理を実行し、その処理結果である時間領域の信号（以下、第３時間領域信号Ｓ２という）を、第４中間バッファ４７’に一時記憶させる。この第３時間領域信号Ｓ２のサンプル数は、第３周波数領域信号Ｓｆ２の周波数ビンの数（＝Ｎ）の２倍（＝２Ｎ）である。前述したように、第２ＦＦＴ処理部４２’が、Ｎサンプル分ずつ時間帯が重複する第２時間領域信号Ｓ１（混合音声信号）についてフーリエ変換処理を実行するので、第４中間バッファ４７’に記録される連続する２つの第３時間領域信号Ｓ２も、相互にＮサンプル分だけ時間帯が重複（オーバーラップ）している。
また、合成処理部４８’は、第４中間バッファ４７’に新たな第３時間領域信号Ｓ２が記録されるごとに、以下に示す合成処理を実行することによって新たな分離信号Ｓ３を生成して出力バッファ４９’に一時記憶させる。
ここで、前記合成処理は、ＩＦＦＴ処理部４６’によって得られた新たな第３時間領域信号Ｓ２とその１回前に得られた第３時間領域信号Ｓ２とについて、それらにおける時間帯が重複する部分の両信号（それぞれＮサンプル分の信号）を、例えばクロスフェードの重み付けをして加算すること等によって合成する処理である。これにより、平滑化された分離信号Ｓ３が得られる。
以上の処理により、混合音声信号に対していくらかの遅延（時間遅れ）が生じるものの、音源に対応する分離信号Ｓ３が、リアルタイムで出力バッファ４９’に記録される。
また、フィルタ処理に用いられる分離行列が、学習演算部３４によって音響環境の変化に適合したものに適宜更新される。
【００１０】
次に、図９を参照しつつ、図８に示した従来の音源分離処理によって生じる出力遅延について説明する。図９は従来のＦＤＩＣＡ法による音源分離処理における信号入出力の状態遷移を表すブロック図である。
ここで、出力遅延とは、混合音声信号が発生した時点から、その混合音声信号から分離生成された分離信号が出力されるまでの遅延を指す。
以下、Ａ／Ｄ変換処理によって得られる混合音声信号（ディジタル信号）を一時記憶するバッファを入力バッファ２３と称する。この入力バッファ２３から、Ｎサンプル分の混合音声信号が、前記第１入力バッファ３１及び第２入力バッファ４１’に転送される。また、図９において、入力ポイントＰｔ１は、入力バッファ２３に対する信号の書き込み位置（書き込みポインタの指示位置）を表し、出力ポイントＰｔ２は、出力バッファ４９’からの信号の読み出し位置（読み出しポインタの指示位置）を表す。これら入力ポイントＰｔ１及び出力ポイントＰｔ２は、混合音声信号のサンプリング周期と同じ周期で同期して順次移動する。また、これら入力ポイントＰｔ１及び出力ポイントＰｔ２は、２Ｎサンプル分の記憶容量を有する入力バッファ２３及び出力バッファ４９’各々において巡回移動する。
【００１１】
図９（ａ）は、処理開始時の状態を表す。入力バッファ２３及び出力バッファ４９’のいずれにも信号は蓄積されていない（例えば、０値が埋められた状態）である。
図９（ｂ）は、図９（ａ）の状態の後、入力バッファ２３に、入力ポイントＰｔ１の移動に従って順次新たな信号が書き込まれ、Ｎサンプル分の信号が蓄積した時点の状態を表す。この時点で、Ｎサンプル分の信号（図中、入力（１）と記した信号）が、音源分離処理を行う部分（以下、音源分離処理部Ａという）に転送され、音源分離処理が実行される。具体的には、Ｎサンプル分の信号が、前記第１入力バッファ３１及び第２入力バッファ４１’に転送（記録）され、図８に基づき説明した音源分離処理が実行される。また、入力バッファ２３において、音源分離処理部Ａへの転送が終了した信号は消去される。
図９（ｃ）は、図９（ｂ）の状態の後、音源分離処理部ＡによってＮサンプル分の分離信号（図中、出力（１）と記した信号）が生成され、その分離信号が出力バッファ４９’に書き込まれた時点の状態を表す。この分離信号（出力（１））は、図８における分離信号Ｓ３に相当するものである。
この図９（ｃ）の状態では、出力ポイントＰｔ２は、分離信号が書き込まれていない位置にあるので、分離信号（出力（１））は未だ出力されない。
図９（ｄ）は、図９（ｃ）の状態の後、入力バッファ２３に、さらに新たな信号が書き込まれ、次のＮサンプル分の信号（図中、入力（２）と記した信号）が蓄積した時点の状態を表す。この時点で、新たなＮサンプル分の信号（入力（２））が、前記音源分離処理部Ａに転送され、音源分離処理が実行される。
この図９（ｄ）の状態において、出力ポイントＰｔ２が、前回の分離信号（出力（１））の書き込み位置の先頭にあるので、分離信号（出力（１））の出力が始まる。
図９（ｅ）は、図９（ｄ）の状態の後、音源分離処理部Ａによって新たなＮサンプル分の分離信号（図中、出力（２）と記した信号）が生成され、その分離信号が出力バッファ４９’に書き込まれた時点の状態を表す。図９（ｄ）の時点から図９（ｅ）の時点までの間、出力ポイントＰｔ２の移動に従って、前回の分離信号（出力（１））が１サンプルずつ順次出力される。また、出力バッファ４９’において、出力が終了した信号は消去される。
【特許文献１】特開２００３−２７１１６８号公報
【非特許文献１】猿渡洋、「アレー信号処理を用いたブラインド音源分離の基礎」電子情報通信学会技術報告、vol.EA2001-7、pp.49-56、April 2001.
【非特許文献２】高谷智哉他、「SIMOモデルに基づくICAを用いた高忠実度なブラインド音源分離」電子情報通信学会技術報告、vol.US2002-87、EA2002-108、January 2003.
【非特許文献３】猿渡洋、「音声・音響信号を対象としたブラインド音源分離」電子情報通信学会DSP研究会，DSP2001-194, pp.59-66, March 2002.
【発明の開示】
【発明が解決しようとする課題】
【００１２】
図９からわかるように、従来の音源分離処理では、音源分離処理部Ａの前段及び後段における信号の受け渡しに関して、図９（ａ）の時点から図９（ｄ）の時点までの間において、２Ｎサンプル分の信号の時間長に相当する出力遅延が生じる。さらに、音源分離処理部Ａ内においても、前記合成処理部４８’による合成処理により、Ｎサンプル分の信号の時間長に相当する出力遅延が生じる。従って、従来の音源分離処理では、全体として３Ｎサンプル分の信号の時間長に相当する出力遅延が生じるという問題点があった。
例えば、信号のサンプリング周波数が８kHzである場合、ＦＤＩＣＡ法により分離性能の高い分離行列が得られるように１フレームを１０２４サンプルの信号（即ち、Ｎ＝５１２）とすると、１９２[msec]の出力遅延が生じる。
この１９２[msec]という出力遅延は、リアルタイムで動作する装置において許容し難い遅延である。例えば、デジタル携帯電話における通信の遅延時間は、一般に５０[msec]以下である。このディジタル携帯電話に従来のＦＤＩＣＡ法による音源分離を適用した場合、トータルの遅延時間が２４２[msec]となり、実用に耐えない。同様に、補聴器に従来のＦＤＩＣＡ法による音源分離を適用した場合も、利用者の目に映る映像と、補聴器を通じて聞こえる音声との時間のズレが大き過ぎて実用に耐えない。
ここで、入力ポイントＰｔ１と出力ポイントＰｔ２との位置関係を、予め図９に示した位置関係とは異なる位置関係に設定することにより、出力遅延は、３Ｎサンプル分の信号の時間長以下にすることは可能である。しかしながら、その場合でも、出力遅延を、２Ｎサンプル分の信号の時間長に、音源分離処理に要する時間を加算した時間にまで短縮できるに過ぎない。即ち、ＦＤＩＣＡ法による音源分離処理では、出力遅延の時間が、フィルタ処理の入力信号として用いる周波数領域の信号Ｓｆ１を得るためのフーリエ変換処理（前記第２ＦＦＴ処理部４２’の処理）の実行周期（Ｎサンプルの信号の時間長ｔN）の２倍強から３倍程度の時間となる。
一方、出力遅延の時間は、１フレームの長さを短く（サンプル数を小さく）すれば短縮できる。しかしながら、１フレームの長さを短くすることは、音源分離性能の悪化につながるという問題が生じる。
本発明は上記事情に鑑みてなされたものである。本発明の目的とするところは、ＩＣＡ法による音源分離処理を行うに当たり、高い音源分離性能を確保しつつ、出力遅延（混合音声信号が発生した時点から、その混合音声信号から分離生成された分離信号が出力されるまでの遅延）を短くすることができる音源分離装置、音源分離方法及び音源分離プログラムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明は、それぞれ複数の音源からの信号が重畳された複数の（複数チャンネルの）混合音響信号に基づいて、１以上の前記音源に対応する音響信号である分離信号を分離生成する音源分離装置に適用されるものである。ここで、各混合音声信号は、複数の音源が存在する音響空間に複数のマイクロホンが存在する状態で、そのマイクロホン各々を通じて入力される音響信号を一定のサンプリング周期で逐次デジタル化することにより得られる信号（ディジタル信号）である。
そして、上記目的を達成するために本発明は、次の（１）〜（７）に示す構成要素を備える。
（１）所定の第１の時間ｔ１の長さ分の新たな前記混合音響信号が得られるごとに、その第１の時間ｔ１以上の長さ分の最新の前記混合音声信号（以下、第１の時間領域信号という）にフーリエ変換処理を施し、そのフーリエ変換処理により得られる信号（以下、第１の周波数領域信号という）を所定の記憶手段に一時記憶させる手段（以下、第１のフーリエ変換手段という）。なお、前記第１の時間領域信号及び前記第１のフーリエ変換手段は、それぞれ図８における信号Ｓ０及び第１ＦＦＴ処理部３２に相当するものである。
（２）前記第１のフーリエ変換手段により得られた１又は複数の前記第１の周波数領域信号に基づいて、周波数領域での独立成分分析法（ＦＤＩＣＡ法）による学習計算を行うことにより、所定の分離行列（以下、第１の分離行列という）を算出する手段（以下、分離行列学習計算手段という）。なお、この分離行列学習計算手段は、図８における学習演算部３４に相当するものである。
（３）前記分離行列学習計算手段により算出された前記第１の分離行列に基づいて、前記分離信号の分離生成（即ち、フィルタ処理）に用いる行列（以下、第２の分離行列という）を設定して更新する手段（以下、分離行列設定手段という）。
（４）前記第１の時間ｔ１の長さよりも短い予め定められた第２の時間ｔ２の長さ分の新たな前記混合音響信号が得られるごとに、その第２の時間ｔ２の２倍の長さ分の最新の前記混合音声信号を含む信号（以下、第２の時間領域信号という）にフーリエ変換処理を施し、そのフーリエ変換処理により得られる信号（以下、第２の周波数領域信号という）を、所定の記憶手段に一時記憶させる手段（以下、第２のフーリエ変換手段という）。なお、前記第２の時間領域信号及び前記第２のフーリエ変換手段は、それぞれ図８における信号Ｓ１及び第２ＦＦＴ処理部４２’に相当するものである。
（５）前記第２のフーリエ変換手段により新たな前記第２の周波数領域信号が得られるごとに、その新たな第２の周波数領域信号に対し、前記分離行列設定手段により更新される前記第２の分離行列に基づくフィルタ処理を施し、これにより得られる信号（以下、第３の周波数領域信号という）を所定の記憶手段に一時記憶させる手段（以下、分離フィルタ処理手段という）。
（６）前記分離フィルタ処理手段により新たな前記第３の周波数領域信号が得られるごとに、その新たな第３の周波数領域信号に逆フーリエ変換処理を施し、その逆フーリエ変換処理により得られる信号（以下、第３の時間領域信号という）を所定の記憶手段に一時記憶させる手段（以下、逆フーリエ変換手段という）。なお、この逆フーリエ変換手段は、図８におけるＩＦＦＴ処理部４６’に相当するものである。
（７）前記逆フーリエ変換手段により新たな前記第３の時間領域信号が得られるごとに、その新たな第３の時間領域信号と、その１回前に得られた前記第３の時間領域信号とにおける時間帯が重複する部分の両信号を合成することにより、新たな前記分離信号を生成する手段（以下、信号合成手段とという）。なお、この信号合成手段は、図８における合成処理部４８’に相当するものである。
ここで、上記（１）〜（７）において、信号の「時間の長さ」とその長短とにより特定する記載を、信号の「サンプル数」とその大小により特定する記載に置き換えた場合、その置き換えを行う前後の記載内容は、同じ意味を表す。
【００１４】
前述したように、ＦＤＩＣＡ法による音源分離処理では、出力遅延の時間は、フィルタ処理の入力信号として用いる周波数領域の信号（前述した信号Ｓｆ１）を得るためのフーリエ変換処理の実行周期の２倍強から３倍程度の時間となる。
これに対し、本発明に係る音源分離装置では、フィルタ処理の入力信号として用いる前記第２の周波数領域信号を得るためのフーリエ変換（前記第２のフーリエ変換手段の処理）の実行周期（前記第２の時間ｔ２）の方が、分離行列の学習計算に用いる周波数領域の信号を得るためのフーリエ変換（前記第１のフーリエ変換手段の処理）の実行周期（前記第１の時間ｔ１）よりも短い。従って、前記第２の時間ｔ２を従来よりも十分に短く設定すること（図９におけるサンプル数Ｎを小さく設定することと同じ）により、出力遅延の時間を従来よりも大幅に短縮できる。
一方、分離行列の学習計算に対応するフーリエ変換処理（前記第１のフーリエ変換手段の処理）の実行周期（前記第１の時間ｔ１）は、前記第２の時間ｔ２に関わらず、十分長い時間（例えば、８kHzのサンプリング周期×１０２４サンプルの信号の長さ相当）に設定できる。これにより、出力遅延の時間を短縮しつつ、高い音源分離性能を確保することができる。
【００１５】
ところで、前述したように、フーリエ変換処理では、出力信号（周波数領域信号）の周波数ビンの数は、入力信号（時間領域信号）のサンプル数の１／２倍となる。また、ＦＤＩＣＡ法による学習計算により得られる分離行列の行列要素（即ち、フィルタ係数）の数は、その学習計算で用いる前記第１周波数領域信号における周波数ビンの数と同じである。さらに、フィルタ処理の入力信号（前記第１周波数領域信号）における周波数ビンの数と、フィルタ処理に用いる分離行列の行列要素の数（フィルタ係数の数）とは、一致していなければならない。
ここで、前記第１の時間領域信号の時間長と前記第２の時間領域信号の時間長とが等しく設定されていれば（即ち、両信号のサンプル数が同じであれば）、前記第１フーリエ変換手段の処理により得られる信号の周波数ビンの数と、前記第２フーリエ変換手段の処理により得られる信号の周波数ビンの数とは一致する。この場合、前記分離行列設定手段は、前記第１の分離行列をそのまま前記第２の分離行列として設定することができる。
【００１６】
一方、前記第２の時間領域信号の時間長が、前記第１の時間領域信号の時間長よりも短く設定されている場合、学習計算により得られる前記第１の分離行列の行列要素の数は、フィルタ処理で用いる分離行列において必要十分な行列要素の数よりも多くなる。従って、前記分離行列設定手段は、前記第１の分離行列をそのまま前記第２の分離行列として設定することができない。
この場合、前記分離行列設定手段は、前記第１の分離行列を構成する行列要素を複数のグループごとに集約することにより得られる行列を前記第２の分離行列として設定する。これにより、必要十分な数の行列要素（フィルタ係数）が設定されたフィルタ処理用の分離行列（前記第２の分離行列）を設定することができる。
ここで、前記第２の時間領域信号の時間長は、前記第１の時間領域信号の時間長よりも短く設定される場合、その２倍以上の整数倍が前記第１の時間領域信号の時間長となるように設定されることが望ましい。
これにより、前記第１の分離行列における行列要素のグループと、前記第２の分離行列における行列要素との対応関係が明確になる。
また、前記分離行列設定手段における前記集約とは、例えば、前記第１の分離行列を構成する行列要素について、複数のグループごとに１つの行列要素を選択することや、或いは複数のグループごとに行列要素の平均値若しくは加重平均値を算出すること等である。
ここで、学習計算に対応するフーリエ変換処理と、フィルタ処理に対応するフーリエ変換処理とで、入力信号の時間長（サンプル数）が異なることは、音源分離性能に影響するとも考えられる。しかしながら、後述する実験結果によれば、その影響は比較的小さい。
【００１７】
また、前記第２の時間領域信号としては、以下のようなものが考えられる。
例えば、前記第２の時間領域信号が、前記第２の時間長の２倍以上の予め定められた時間長分の最新の前記混合音声信号であることが考えられる。
或いは、前記第２の時間領域信号が、前記第２の時間長の２倍の時間長分の最新の前記混合音声信号に所定の数の定数信号（例えば、０値信号）が付加された信号であることも考えられる。なお、０値信号とは、値が０の信号である。
また、本発明は、以上に示した音源分離装置が備える各手段が実行する処理を、所定のプロセッサにより実行する音源分離方法として捉えることもできる。
同様に、本発明は、所定のプロセッサを、以上に示した音源分離装置が備える各手段として機能させるための音源分離プログラムとして捉えることもできる。
【発明の効果】
【００１８】
本発明によれば、フィルタ処理の入力信号として用いる前記第２の周波数領域信号を得るためのフーリエ変換（前記第２のフーリエ変換手段の処理）の実行周期（前記第２の時間ｔ２）を十分に短く設定することにより、出力遅延の時間を従来よりも大幅に短縮できる。
また、分離行列の学習計算に対応するフーリエ変換（前記第１のフーリエ変換手段の処理）の実行周期（前記第１の時間ｔ１）は、前記第２の時間ｔ２に関わらず、十分長い時間（例えば、８kHzのサンプリング周期×１０２４サンプルの信号の長さ相当）に設定できる。これにより、出力遅延の時間を短縮しつつ、高い音源分離性能を確保することができる。
【発明を実施するための最良の形態】
【００１９】
以下添付図面を参照しながら、本発明の実施の形態について説明し、本発明の理解に供する。尚、以下の実施の形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定する性格のものではない。
ここに、図１は本発明の実施形態に係る音源分離装置Ｘの概略構成を表すブロック図、図２は音源分離装置Ｘによるフィルタ処理（第１実施例）の流れを表すブロック図、図３は音源分離装置Ｘによるフィルタ処理（第２実施例）の流れを表すブロック図、図４は音源分離装置Ｘによる時間領域信号の設定処理の様子を表す図、図５は音源分離装置Ｘによる第１の実施例の処理と従来の音源分離処理との性能比較実験の結果を表すグラフ、図６は音源分離装置Ｘによる第２の実施例の処理と従来の音源分離処理との性能比較実験の結果を表すグラフである。
【００２０】
以下、図１に示すブロック図を参照しつつ、本発明の実施形態に係る音源分離装置Ｘについて説明する。
音源分離装置Ｘは、複数の音源１、２が存在する音響空間に配置される複数のマイクロホン１１１、１１２（音響入力手段）に接続される。
そして、音源分離装置Ｘは、そのマイクロホン１１１、１１２各々を通じて逐次入力される複数の混合音声信号ｘi(ｔ)から、各音源１、２のうちの１つ以上に対応する音源信号を分離（同定）した分離信号（即ち、音源信号を同定した信号）ｙi(ｔ)を逐次生成してスピーカ（音声出力手段）に対してリアルタイム出力するものである。ここで、混合音声信号は、音源１、２各々からの音源信号（個別の音声信号）が重畳された信号であり、一定のサンプリング周期で逐次デジタル化されて入力されるデジタル信号である。
【００２１】
図１に示すように、音源分離装置Ｘは、Ａ／Ｄコンバータ２１（図中、ＡＤＣと表記）、Ｄ／Ａコンバータ２２（図中、ＤＡＣと表記）、入力バッファ２３、デジタル処理部Ｙを備えている。
また、デジタル処理部Ｙは、第１入力バッファ３１、第１ＦＦＴ処理部３２、第１中間バッファ３３、学習演算部３４、第２入力バッファ４１、第２ＦＦＴ処理部４２、第２中間バッファ４３、分離フィルタ処理部４４、第３中間バッファ４５、ＩＦＦＴ処理部４６、第４中間バッファ４７、合成処理部４８及び出力バッファ４９を備えている。
ここで、デジタル処理部Ｙは、例えば、ＤＳＰ（Digital Signal Processor）等の演算用のプロセッサ及びそのプロセッサにより実行されるプログラムが記憶されたＲＯＭ等の記憶手段、並びにＲＡＭ等のその他の周辺装置により構成される。また、デジタル処理部Ｙは、１つのＣＰＵ及びその周辺装置を有するコンピュータと、そのコンピュータにより実行されるプログラムとにより構成される場合もある。また、デジタル処理部Ｙが有する機能は、所定のコンピュータ（音源分離装置が備えるプロセッサを含む）に実行させる音源分離プログラムとしても提供可能である。
なお、図１には、入力される混合音声信号ｘi(ｔ)のチャンネル数（即ち、マイクロホンの数）が２つである例について示しているが、チャンネル数ｎは、分離対象とする音源信号の数以上であれば、３チャンネル以上であっても同様の構成により実現できる。
【００２２】
Ａ／Ｄコンバータ２１は、複数のマイクロホン１１１、１１２各々から入力されるアナログの混合音声信号各々を、一定のサンプリング周期（即ち、一定のサンプリング周波数）でサンプリングすることにより、デジタルの混合音声信号Ｘi(ｔ)に変換し、変換後の信号を入力バッファ２３に出力する（書き込む）ものである。例えば、各音源信号Ｓi(ｔ)が人の声の音声信号である場合、８ｋＨｚ程度のサンプリング周期でデジタル化すればよい。
入力バッファ２３は、Ａ／Ｄコンバータ２１によりデジタル化された混合音声信号を一時記憶するメモリである。新たな混合音声信号Ｓi(ｔ)が入力バッファ２３にＮ／４サンプル分だけ蓄積されるごとに、そのＮ／４サンプル分の混合音声信号Ｓi(ｔ)は、入力バッファ２３から第１入力バッファ３１及び第２入力バッファ４１のそれぞれに伝送される。従って、入力バッファ２３の記憶容量は、Ｎ／２サンプル分（＝Ｎ／４×２）以上あれば足りる。
【００２３】
音源分離装置Ｘにおいて、第１入力バッファ３１、第１ＦＦＴ処理部３２、第１中間バッファ３３及び学習演算部３４は、それぞれ図８に示した従来の第１入力バッファ３１、第１ＦＦＴ処理部３２、第１中間バッファ３３及び学習演算部３４と同じ処理を実行するものである。
即ち、第１ＦＦＴ処理部３２は、第１入力バッファ３１にＮサンプル分の新たな混合音声信号Ｓi(ｔ)が記録されるごとに、フーリエ変換処理を実行する。なお、第１ＦＦＴ処理部３２の処理の実行周期（ここでは、Ｎサンプル分の信号の時間長）を、以下、第１の時間ｔ１という。
より具体的には、第１ＦＦＴ処理部３２は、Ｎサンプル以上、即ち、第１の時間ｔ１の長さ分以上（ここでは、２Ｎサンプル分）の最新の混合音声信号である第１時間領域信号Ｓ０にフーリエ変換処理を施し、これにより得られる第１周波数領域信号Ｓｆ０を、第１中間バッファ３３に一時記憶させる（第１のフーリエ変換手段の一例）。
また、学習演算部３４（分離行列学習計算手段の一例）は、所定の時間Ｔsecごとに、第１中間バッファ３３に一時記憶された最新の時間Ｔsec分の第１周波数領域信号Ｓｆ０を読み出し、読み出した信号に基づいて、前述したＦＤＩＣＡ法（周波数領域での独立成分分析法）による学習計算を行う。
さらに、学習演算部３４は、その学習計算により算出される分離行列（以下、第１分離行列という）に基づいて、分離信号の分離生成（フィルタ処理）に用いる分離行列（以下、第２分離行列という）を設定及び更新する（分離行列設定手段の一例）。なお、第２分離行列の設定方法については後述する。
【００２４】
［第１実施例］
次に、図２を参照しつつ、音源分離装置Ｘによるフィルタ処理の第１実施例について説明する。図２は、音源分離装置Ｘによるフィルタ処理（第１実施例）の流れを表すブロック図である。
ここで、図２に示す各バッファ（第２入力バッファ４１、第２中間バッファ４３、第３中間バッファ４５、第４中間バッファ４７、出力バッファ４９）は、説明の便宜上、非常に多くのデータを蓄積可能であるかのように記載されている。しかしながら、実際には、各バッファは、記憶するデータのうち不要になったものが順次消去され、これにより生じる空き領域が再利用されるので、その記憶容量は必要十分な量に設定されている。
【００２５】
第２ＦＦＴ処理部４２（第２のフーリエ変換手段の一例）は、新たなＮ／４サンプル分の混合音声信号（第２の時間長分の新たな前記混合音響信号の一例）が第２入力バッファ４１に入力（記録）されるごとに、その２倍の時間長分（Ｎ／２サンプル分）の最新の混合音声信号を含む第２時間領域信号Ｓ１について、フーリエ変換処理を実行し、その処理結果である第２周波数領域信号Ｓｆ１を、第２中間バッファ４３に一時記憶させる。なお、第２ＦＦＴ処理部４２の処理の実行周期（ここでは、Ｎ／４サンプル分の信号の時間長）を、以下、第２の時間ｔ２という。
このように、音源分離処理装置Ｘでは、第２ＦＦＴ処理部４２によるフーリエ変換処理の実行周期（即ち、第２の時間ｔ２）が、第１ＦＦＴ処理部３２によるフーリエ変換処理の実行周期（即ち、第１の時間ｔ１）よりも短い周期となるように予め設定されている。
また、第２ＦＦＴ処理部４２は、少なくともＮ／４サンプル分ずつ時間帯が順次重複する第２時間領域信号Ｓ１（混合音声信号）について、フーリエ変換処理を実行する。ここで、第２入力バッファ４１に蓄積された信号のサンプル数が、２Ｎ個に満たない場合（処理開始後の初期の段階）には、第２ＦＦＴ処理部４２は、不足する数だけ０値を充当した信号について、フーリエ変換処理を実行する。
なお、この第２周波数領域信号Ｓｆ１の周波数ビンの数は、第２周波数領域信号Ｓｆ１のサンプル数の１／２倍（＝Ｎ個）である。
【００２６】
この第１実施例において、第２時間領域信号Ｓ１は、例えば以下のようなものが考えられる。
まず、図２に示すように、第２時間領域信号Ｓ１が、最新の２Ｎサンプル分の混合音声信号であることが考えられる。
その他、第２時間領域信号Ｓ１が、第２の時間ｔ２の２倍の時間長分の最新の混合音声信号（最新のＮ／２サンプル分の混合音声信号）に、（３Ｎ／４）個の定数信号（例えば、０値信号）が付加された信号であることも考えられる。そのような第２時間領域信号Ｓ１は、例えば、第２ＦＦＴ処理部４２がパディング処理を行うことによって設定される。
図４は、パディング処理によって第２時間領域信号Ｓ１を設定する処理の様子を表すブロック図である。図４において、各升目はＮ／４サンプル分の混合音声信号のセットを表す。また、図４において、各升目に記す「０」は０値信号を表し、各升目に記す「１」〜「３」は、Ｎ／４サンプル分の混合音声信号の時系列の番号を表す。
図４（ａ）「Ｃａｓｅ１」は、最新の（２Ｎ／４）サンプル分の混合音声信号を信号列の最後尾に配置し、残りの部分に（６Ｎ／４）サンプル分の０値信号（定数信号の一例）を付加（充当）するパディング処理により、第２時間領域信号Ｓ１（合計２Ｎサンプル分の信号）が設定される様子を表す。
図４（ｂ）「Ｃａｓｅ２」は、最新の（２Ｎ／４）サンプル分の混合音声信号を信号列の先頭に配置し、残りの部分に（６Ｎ／４）サンプル分の０値信号（定数信号の一例）を付加（充当）するパディング処理により、第２時間領域信号Ｓ１（合計２Ｎサンプル分の信号）が設定される様子を表す。
図４（ｃ）「Ｃａｓｅ３」は、最新の（２Ｎ／４）サンプル分の混合音声信号を信号列における中間の予め定められた位置に配置し、残りの部分に（６Ｎ／４）サンプル分の０値信号（定数信号の一例）を付加（充当）するパディング処理により、第２時間領域信号Ｓ１（合計２Ｎサンプル分の信号）が設定される様子を表す。
【００２７】
また、分離フィルタ処理部４４（分離フィルタ処理手段）は、第２中間バッファ４３に、新たな第２周波数領域信号Ｓｆ１が記録されるごとに、その信号Ｓｆ１について、分離行列を用いたフィルタ処理（行列演算）を行い、その処理により得られる第３周波数領域信号Ｓｆ２を、第３中間バッファ４５に一時記憶させる。このフィルタ処理に用いられる分離行列は、前述した学習演算部３４によって更新されるものである。なお、学習演算部３４により最初に分離行列が更新されるまでは、分離フィルタ処理部４４は、予め定められた初期値が設定された分離行列（初期行列）を用いてフィルタ処理を行う。ここで、第２周波数領域信号Ｓｆ１と第３周波数領域信号Ｓｆ２とは、周波数ビンの数が等しい（＝Ｎ）ことはいうまでもない。
【００２８】
また、ＩＦＦＴ処理部４６（逆フーリエ変換手段の一例）は、第３中間バッファ４５に新たな第３周波数領域信号Ｓｆ２が記録されるごとに、その新たな第３周波数領域信号Ｓｆ２について、逆フーリエ変換処理を実行し、その処理結果である第３時間領域信号Ｓ２を、第４中間バッファ４７に一時記憶させる。この第３時間領域信号Ｓ２のサンプル数は、第３周波数領域信号Ｓｆ２の周波数ビンの数（＝Ｎ）の２倍（＝２Ｎ）である。前述したように、第２ＦＦＴ処理部４２が、（７Ｎ／４）サンプル分ずつ時間帯が重複する第２時間領域信号Ｓ１（混合音声信号）についてフーリエ変換処理を実行するので、第４中間バッファ４７に記録される連続する２つの第３時間領域信号Ｓ２も、相互に（７Ｎ／４）サンプル分だけ時間帯が重複（オーバーラップ）している。
また、合成処理部４８は、第４中間バッファ４７に新たな第３時間領域信号Ｓ２が記録されるごとに、以下に示す合成処理を実行することによって新たな分離信号Ｓ３を生成し、その信号を出力バッファ４９に一時記憶させる。
ここで、前記合成処理は、ＩＦＦＴ処理部４６によって得られた新たな第３時間領域信号Ｓ２とその１回前に得られた第３時間領域信号Ｓ２とについて、それらにおける時間帯が重複する一部分の両信号（ここでは、Ｎ／４サンプル分の信号）を、例えばクロスフェードの重み付けをして加算すること等によって合成する処理である。これにより、平滑化された分離信号Ｓ３が得られる。
以上の処理により、多少の出力遅延が生じるものの、音源に対応する分離信号Ｓ３（前述した分離信号ｙi(ｔ)と同じもの）が、リアルタイムで出力バッファ４９に記録される。
【００２９】
ところで、この第１実施例では、第１時間領域信号Ｓ０の時間長ｔ１（サンプル数２Ｎ）と、第２時間領域信号Ｓ１の時間長ｔ２（サンプル数２Ｎ）とが等しく設定されている。このため、第１ＦＦＴ処理部３２の処理により得られる信号Ｓｆ０の周波数ビンの数（＝Ｎ）と、第２ＦＦＴ処理部４２の処理により得られる信号Ｓｆ１の周波数ビンの数（＝Ｎ）とは一致する。
従って、学習演算部３４（分離行列設定手段の一例）は、学習計算により得られる前記第１分離行列を、そのままフィルタ処理に用いる前記第２分離行列として設定する。
この学習演算部３４の処理により、フィルタ処理に用いられる前記第２分離行列が、音響環境の変化に適合したものに適宜更新される。
【００３０】
第１実施例のフィルタ処理を実行する音源分離装置Ｘでは、第２ＦＦＴ処理部４２の処理の実行周期（時間ｔ２）の方が、第１ＦＦＴ処理部３２の処理の実行周期（時間ｔ１）よりも短い。従って、前記第２の時間ｔ２を従来よりも十分に短く設定すること（ここでは、Ｎ／４サンプルの信号の時間長）により、出力遅延の時間を従来よりも大幅に短縮できる。
一方、第１ＦＦＴ処理部３２の処理の実行周期（時間ｔ１）は、時間ｔ２に関わらず、十分長い時間（例えば、８kHzのサンプリング周期×１０２４サンプルの信号の長さ相当）に設定できる。これにより、出力遅延の時間を短縮しつつ、高い音源分離性能を確保することができる。
【００３１】
以下、音源分離装置Ｘの効果について説明する。
前述したようにＦＤＩＣＡ法による音源分離処理では、出力遅延の時間が、フィルタ処理の入力信号として用いる第２周波数領域信号Ｓｆ１を得るための処理（第２ＦＦＴ処理部４２の処理）の実行周期ｔ２の２倍強から３倍程度の時間となる。
これに対し、音源分離装置Ｘでは、第２ＦＦＴ処理部４２の処理の実行周期ｔ２を、従来よりも十分に短く設定することができ、出力遅延の時間を従来よりも大幅に短縮できる。図２に示した実施例では、出力遅延の時間を、図８に示した従来の音源分離処理における出力遅延の時間に対して４分の１に短縮できる。
一方、分離行列の学習計算に対応するフーリエ変換処理（第１ＦＦＴ処理部３２の処理）の実行周期（第１の時間ｔ１）は、前記第２の時間ｔ２に関わらず、十分長い時間（例えば、８kHzのサンプリング周期×１０２４サンプルの信号の長さ相当）に設定できる。これにより、出力遅延の時間を短縮しつつ、高い音源分離性能を確保することができる。
【００３２】
図５は、音源分離装置Ｘによる第１実施例の音源分離処理と従来の音源分離処理との性能比較実験の結果を表すグラフである。
実験条件は、以下の通りである。
まず、所定の空間において、ある基準位置から左右の等距離の位置それぞれに２つのマイクロホン１１１、１１２を所定方向（以下、正面方向という）に向けて配置した。ここで、前記基準位置を中心とした場合に、正面方向を０°方向とし、上方から見て時計回りの角度をθとする。
そして、２つの音源（第１音源及び第２音源）の種類及び配置方向は、次の７パターン（以下、音源パターン１〜音源パターン７という）とした。
音源パターン１：第１音源の種類は発話する男性。第１音源の配置方向はθ＝−３０°の方向。第２音源は発話する女性。第２音源の配置方向はθ＝＋３０°の方向。
音源パターン２：第１音源の種類は発話する男性。第１音源の配置方向はθ＝−６０°の方向。第２音源はエンジン音を発する自動車。第２音源の配置方向はθ＝＋６０°の方向。
音源パターン３：第１音源の種類は発話する男性。第１音源の配置方向はθ＝−６０°の方向。第２音源は所定のノイズ音を発する音源。第２音源の配置方向はθ＝＋６０°の方向。
音源パターン４：第１音源の種類は発話する男性。第１音源の配置方向はθ＝−６０°の方向。第２音源は所定のクラッシック音楽を出力する音響機器。第２音源の配置方向はθ＝＋６０°の方向。
音源パターン５：第１音源の種類は発話する男性。第１音源の配置方向はθ＝０°の方向。第２音源は発話する女性。第２音源の配置方向はθ＝＋６０°の方向。
音源パターン６：第１音源の種類は発話する男性。第１音源の配置方向はθ＝−６０°の方向。第２音源は所定のクラッシック音楽を出力する音響機器。第２音源の配置方向はθ＝０°の方向。
音源パターン７：第１音源の種類は発話する男性。第１音源の配置方向はθ＝−６０°の方向。第２音源はエンジン音を発する自動車。第２音源の配置方向はθ＝０°の方向。
また、いずれの音源パターンにおいても、混合音声信号のサンプリング周波数は８kHzである。
また、評価値（グラフの縦軸）は、第１音源の信号を分離対象とする目的信号(Signal)とした場合に、これに第２音源の信号成分(Noise)がどの程度混入しているかを示すＳＮ比(dB)である。ＳＮ比の値が大きいほど、音源信号の分離性能が高いことを表す。
【００３３】
また、図５において、ｇ１は図８に示した従来の音源分離処理（Ｎ＝５１２）の結果（従って出力遅延は１９２msec）を表す。また、ｇ２は図８に示した従来の音源分離処理においてＮ＝１２８とした場合の結果（従って、出力遅延は４８msec）を表す。
一方、図５において、ｇｘ１は、音源分離装置Ｘによる第１実施例の音源分離処理において、Ｎ＝５１２であり、第２ＦＦＴ処理部４２への入力信号（第２時間領域信号Ｓ１）が最新の２Ｎサンプル分の混合音声信号である場合の結果（出力遅延は４８msec）を表す。
また、ｇｘ２は、音源分離装置Ｘによる第１実施例の音源分離処理において、Ｎ＝５１２であり、第２ＦＦＴ処理部４２への入力信号（第２時間領域信号Ｓ１）が図４に示したパディング処理（０値充当）に基づく信号である場合の結果（出力遅延は４８msec）を表す。
【００３４】
図５（ａ）、（ｂ）に示すグラフからわかるように、音源分離装置Ｘ１の処理結果ｇｘ１、ｇｘ２は、従来の処理結果ｇ１に対し、出力遅延の時間が１／４に短縮されているにもかかわらず、ほぼ同等の音源分離性能（同等のＳＮ比）が得られることがわかる。
ちなみに、従来の音源分離処理において、第１ＦＦＴ処理部３２及び第２ＦＦＴ処理部４２’の両方の処理周期を単に１／４倍（Ｎ＝１２８）とした場合（ｇ２）、音源分離性能が大きく劣化することがわかる。
以上に示したように、音源分離処理装置Ｘによれば、出力遅延の時間を短縮しつつ、高い音源分離性能を確保することができる。
【００３５】
［第２実施例］
次に、図３を参照しつつ、音源分離装置Ｘによるフィルタ処理の第２実施例について説明する。図３は、音源分離装置Ｘによるフィルタ処理（第２実施例）の流れを表すブロック図である。
この第２実施例のフィルタ処理が、前記第１実施例のフィルタ処理と異なる点は、第２時間領域信号Ｓ１のサンプル数が少ない（信号の時間長が短い）点である。即ち、この第２実施例では、第２時間領域信号Ｓ１のサンプル数が、第１時間領域信号Ｓ０のサンプル数よりも短く設定されている。これは、第２時間領域信号Ｓ１の時間長が、第１時間領域信号Ｓ０の時間長よりも短く設定されているということと同じ意味である。
図３に示す例では、第２時間領域信号Ｓ１のサンプル数が（２Ｎ／４）個に設定されている。これに対し、第１時間領域信号Ｓ０のサンプル数は、第１実施例の場合と同じ２Ｎ個である（図８参照）。即ち、第２時間領域信号Ｓ１の時間長の４倍（２倍以上の整数倍の一例）が、第１時間領域信号Ｓ０の時間長となるように設定されている。
これにより、第３時間領域信号Ｓ２のサンプル数も（２Ｎ／４）個になる。しかしながら、第１実施例においても、合成処理部４８は、時間帯が重複するＮ／４サンプル分の信号についてのみ合成処理を行うものである。従って、第２実施例においても、合成処理部４８の処理は、第１実施例の場合と特に変わりはない。第１実施例の場合と異なるのは、第３時間領域信号Ｓ２中に、合成処理に用いない信号が含まれないことだけである。
【００３６】
一方、第２実施例では、第２時間領域信号Ｓ１の時間長が、第１時間領域信号Ｓ０の時間長よりも短く設定されている（サンプル数が少ない）ため、学習計算により得られる前記第１分離行列の行列要素（フィルタ係数）の数は、フィルタ処理で用いる前記第２分離行列において必要十分な行列要素の数よりも多くなる。従って、学習演算部３４は、前記第１分離行列をそのまま前記第２分離行列として設定することができない。
図３に示す例では、第１時間領域信号Ｓ０のサンプル数（２Ｎ）が、第２時間領域信号Ｓ１のサンプル数（＝Ｎ／２）の４倍となるため、前記第１分離行列の行列要素（フィルタ係数）４個と、前記第２分離行列の行列要素１個とが相互に対応する関係となる。
そこで、第２実施例では、学習演算部３４（分離行列設定手段の一例）は、前記第１分離行列を構成する行列要素（フィルタ係数）を、前記第２分離行列の行列要素それぞれに対応する複数のグループに区分し、そのグループごとに行列要素（フィルタ係数）を集約することに、前記第２分離行列として設定する分離行列（行列要素）を算出する。
【００３７】
ここで、前記第１分離行列の行列要素（フィルタ係数)を集約する方法としては、例えば、次の２つが考えられる。
その１つは、前記第１分離行列を構成する行列要素（フィルタ係数）について、複数のグループごとに１つの行列要素を代表値として選択するという集約処理が考えられる。以下、この集約を代表値集約という。
その他、前記第１分離行列を構成する行列要素（フィルタ係数）について、複数のグループごとに行列要素の平均値を算出、或いは予め定められた重み係数に基づく加重平均値を算出するという集約処理も考えられる。以下、この集約を平均値集約という。なお、この平均値集約には、各グループにおいて、その一部の行列要素についての平均値や加重平均値を算出することも含まれる。例えば、４個の行列要素（フィルタ係数）ごとにグループ化される場合、グループごとに所定の３つの行列要素について平均値を求めること等が考えられる。
これらいずれかの集約処理により、学習演算部３４は、必要十分な数の行列要素（フィルタ係数）を有する前記第２分離行列を設定する。
このような第２実施例に係る音源分離処理によっても、前記第１実施例の場合と同様に、出力遅延の時間を短縮しつつ、高い音源分離性能を確保することができる。
ここで、学習計算に対応するフーリエ変換処理と、フィルタ処理に対応するフーリエ変換処理とで、入力信号の時間長（サンプル数）が異なることは、音源分離性能に影響するとも考えられる。しかしながら、以下に示す実験結果によれば、その影響は比較的小さい。
【００３８】
図６は、音源分離装置Ｘによる第２実施例の音源分離処理と従来の音源分離処理との性能比較実験の結果を表すグラフである。
実験条件とした音源パターンは、前述した音源パターン１〜音源パターン７と同じである。また、混合音声信号のサンプリング周波数は８kHzである。
さらに、評価値（グラフの縦軸）も、図５に示したものと同じＳＮ比であり、その値が大きいほど、音源信号の分離性能が高いことを表す。
また、図６において、ｇ１及びｇ２は、図５に示したｇ１及びｇ２と同じ実験の結果である。
一方、図６において、ｇｘ３は、音源分離装置Ｘによる第２実施例の処理において、Ｎ＝５１２であり、第２ＦＦＴ処理部４２への入力信号（第２時間領域信号Ｓ１）が最新のＮ／２サンプル分の混合音声信号であり、前記平均値集約（通常の平均値計算）によって前記第２分離行列を設定した場合の結果（出力遅延は４８msec）を表す。
また、ｇｘ４は、音源分離装置Ｘによる第２実施例の処理において、Ｎ＝５１２であり、第２ＦＦＴ処理部４２への入力信号（第２時間領域信号Ｓ１）が最新のＮ／２サンプル分の混合音声信号であり、前記代表値集約によって前記第２分離行列を設定した場合の結果（出力遅延は４８msec）を表す。
【００３９】
図６（ａ）、（ｂ）に示すグラフからわかるように、音源分離装置Ｘ１の処理結果ｇｘ３（平均値集約）は、従来の処理結果ｇ１に対し、出力遅延の時間が１／４に短縮されているにもかかわらず、それほど遜色のない音源分離性能（同等のＳＮ比）が得られることがわかる。また、音源分離装置Ｘ１の処理結果ｇｘ３は、従来の音源分離処理において、第１ＦＦＴ処理部３２及び第２ＦＦＴ処理部４２’の両方の処理周期を単に１／４倍（Ｎ＝１２８）とした場合（ｇ２）に対し、高い音源分離性能（同等のＳＮ比）が得られることがわかる。
一方、音源分離装置Ｘ１の処理結果ｇｘ４（代表値集約）は、前記平均値集約の場合の処理結果ｇｘ３ほどの分離性能は得られていない。しかしながら、処理結果ｇｘ４（代表値集約）は、音源パターン６や音源パターン７のように、音源の一方が正面に配置されているような音源パターンにおいて、処理結果ｇ２よりも分離性能が改善されている。一般に、音源の１つが正面に配置された音源パターンは、ＩＣＡ法による音源分離処理によって高い分離性能が得られにくいパターンである。
従って、音源の存在方向を検知或いは推定することが可能である場合、音源の存在方向に応じて、前記第２分離行列を設定するための集約処理の方法を切り替えることが考えられる。同様に、音源の存在方向に応じて、音源分離処理の方法自体（本発明の音源分離処理か従来の音源分離処理か）を切り替えることも考えられる。
【産業上の利用可能性】
【００４０】
本発明は、音源分離装置への利用が可能である。
【図面の簡単な説明】
【００４１】
【図１】本発明の実施形態に係る音源分離装置Ｘの概略構成を表すブロック図。
【図２】音源分離装置Ｘによるフィルタ処理（第１実施例）の流れを表すブロック図。
【図３】音源分離装置Ｘによるフィルタ処理（第２実施例）の流れを表すブロック図。
【図４】音源分離装置Ｘによる時間領域信号の設定処理の様子を表す図。
【図５】音源分離装置Ｘによる第１の実施例の処理と従来の音源分離処理との性能比較実験の結果を表すグラフ。
【図６】音源分離装置Ｘによる第２の実施例の処理と従来の音源分離処理との性能比較実験の結果を表すグラフ。
【図７】ＦＤＩＣＡ法による分離行列の学習計算を行う学習計算ユニットＺ１の概略構成を表すブロック図。
【図８】従来のＦＤＩＣＡ法による音源分離処理の流れを表すブロック図。
【図９】従来のＦＤＩＣＡ法による音源分離処理における信号入出力の状態遷移を表すブロック図。
【符号の説明】
【００４２】
Ｘ…本発明の実施形態に係る音源分離装置
Ｙ…デジタル処理部
１、２…音源
２１…Ａ／Ｄコンバータ
２２…Ｄ／Ａコンバータ
２３…入力バッファ
３１…第１入力バッファ
３２…第１ＦＦＴ処理部
３３…第１中間バッファ
３４…学習演算部
４１…第２入力バッファ
４２…第２ＦＦＴ処理部
４３…第２中間バッファ
４４…分離フィルタ処理部
４５…第３中間バッファ
４６…ＩＦＦＴ処理部
４７…第４中間バッファ
４８…合成処理部
４９…出力バッファ
１１１、１１２…マイクロホン
【図１】
2008035259.tif 000005
【図２】
2008035259.tif 000006
【図３】
2008035259.tif 000007
【図４】
2008035259.tif 000008
【図５】
2008035259.tif 000009
【図６】
2008035259.tif 000010
【図７】
2008035259.tif 000011
【図８】
2008035259.tif 000012
【図９】
2008035259.tif 000013