(57)【要約】本発明は、信号分離に適していない信号が入力されても、分離性能の劣化を抑えることができる信号分離システムを提供する。  本発明の信号分離装置は、複数の入力信号が信号分離に適するか否かを判断する入力信号解析手段と、前記入力信号を周波数領域の信号に変換した周波数領域入力信号のデータを格納するためのデータ記憶手段と、前記複数の入力信号が信号分離のための分離行列生成に適すると前記入力信号解析手段が判断した場合、前記周波数領域入力信号を前記データ記憶手段に格納する選択制御手段と、前記データ記憶手段に格納されている、最新及び過去の周波数領域入力信号を含む周波数領域入力信号を用いて、分離行列を生成する分離行列生成手段と、を含む。
2011074702.tif 000002
【特許請求の範囲】
【請求項１】
複数の入力信号が信号分離に適するか否かを判断する入力信号解析手段と、
前記複数の入力信号を周波数領域の信号に変換した周波数領域入力信号のデータを格納するためのデータ記憶手段と、
前記複数の入力信号が信号分離のための分離行列生成に適すると前記入力信号解析手段が判断した場合、前記周波数領域入力信号を前記データ記憶手段に格納し、前記複数の入力信号が信号分離のための分離行列生成に適すると前記入力信号解析手段が判断しない場合、前記周波数領域入力信号を前記データ記憶手段に格納しない選択制御手段と、
前記データ記憶手段に格納されている、最新及び過去の周波数領域入力信号を含む周波数領域入力信号を用いて、分離行列を生成する分離行列生成手段と、
を含む信号分離装置。
【請求項２】
前記入力信号解析手段が、所定の時間以上継続して前記複数の信号が信号分離に適さないと判断する場合、前記選択制御手段が前記データ記憶手段に記憶されている全てのデータを消去する初期化を行う
ことを特徴とする請求項１に記載の信号分離装置。
【請求項３】
前記複数の入力信号を、それぞれ周波数領域の信号に変換して複数の周波数領域入力信号を生成する周波数変換手段と、
前記分離行列生成手段が生成した前記分離行列を用いて、前記周波数変換手段が生成した前記複数の周波数領域入力信号から、信号源毎に分離した複数の周波数領域分離信号を生成する分離信号生成手段と、
前記複数の周波数領域分離信号をそれぞれ時間領域信号に変換して、複数の分離信号を生成する逆周波数変換手段と
を含む請求項１又は２に信号分離装置。
【請求項４】
前記入力信号解析手段が、前記複数の入力信号の少なくとも一つが無信号でない場合、前記複数の入力信号が信号分離に適すると判断し、前記複数の入力信号の全てが無信号である場合、前記複数の入力信号が信号分離に適さないと判断する
請求項１乃至３のいずれかに記載の信号分離装置。
【請求項５】
前記入力信号解析手段が、全ての前記分離信号が無信号でない場合、前記複数の入力信号が信号分離に適すると判断し、前記分離信号のいずれか一つが無信号である場合、前記複数の入力信号が信号分離に適さないと判断する
請求項１乃至３のいずれかに記載の信号分離装置。
【請求項６】
前記入力信号解析手段が、前記複数の入力信号の少なくとも一つが無信号でなく、全ての前記分離信号が無信号でない場合、前記複数の入力信号が信号分離に適すると判断し、それ以外の場合、前記複数の入力信号が信号分離に適さないと判断する
請求項１乃至３のいずれかに記載の信号分離装置。
【請求項７】
前記入力信号解析手段が、
前記複数の分離信号のそれぞれが互いに類似すると判定した場合と、
前記複数の入力信号のいずれか一つと、前記複数の分離信号のいずれか一つとに、互いに類似しているものが存在すると判定した場合と、
のいずれか一方又は双方の場合に、
前記選択制御手段が前記データ記憶手段に記憶されている全ての周波数領域入力信号を消去する初期化を行う
請求項１乃至６のいずれかに記載の信号分離装置。
【請求項８】
前記データ記憶手段が、前記複数の分離信号のそれぞれに対応付けられた領域を備え、
前記選択制御手段が、前記周波数変換手段が前記入力信号を一定の時間間隔で分割し該分割した入力信号に対し周波数変換を行った周波数領域入力信号を、前記時間間隔毎に順に、該周波数入力信号から生成した前記複数の分離信号のうち無信号でない分離信号に対応付けられた前記領域のそれぞれに格納する
ことを特徴とする請求項１乃至７のいずれかに記載の信号分離装置。
【請求項９】
複数の入力信号が信号分離に適するか否かを判断し、
前記複数の入力信号が信号分離に適すると前記入力信号解析手段が判断した場合、前記周波数領域入力信号を、前記入力信号を周波数領域の信号に変換した周波数領域入力信号を格納するためのデータ記憶手段に格納し、
前記データ記憶手段に格納されている周波数領域入力信号を用いて分離行列を生成する
信号分離方法。
【請求項１０】
コンピュータを、
複数の入力信号が信号分離に適するか否かを判断する入力信号解析手段と、
前記入力信号を周波数領域の信号に変換した周波数領域入力信号を格納するためのデータ記憶手段と、
前記複数の入力信号が信号分離に適すると前記入力信号解析手段が判断した場合、前記周波数領域入力信号を前記データ記憶手段に格納し、前記入力信号を信号分離に適しないと前記入力信号解析手段が判断した場合、前記周波数領域入力信号を前記データ記憶手段に格納しない選択制御手段と、
前記データ記憶手段に格納されている周波数領域入力信号を用いて分離行列を生成する分離行列生成手段と、
して機能させるためのプログラムを記憶する記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、信号処理装置、信号処理方法、及び信号処理プログラムに関し、特に、複数の信号が混在した混合信号を分離するための信号分離装置、信号分離方法、及び信号分離プログラムに関する。
【背景技術】
【０００２】
複数のマイクによって収音された入力信号を解析して個々の音源信号に分離する方式の１つに、独立成分分析（Ｉｎｄｅｐｅｎｄｅｎｔ  Ｃｏｍｐｏｎｅｎｔ  Ａｎａｌｙｓｉｓ；ＩＣＡ）に基づく信号分離方式がある。ＩＣＡに基づく信号分離方式は、音源信号同士が統計的に独立であるという仮定に基づいて分離行列を最適化し、最適化された分離行列により入力信号にフィルタ処理を施し、個々の音源信号に分離する方式である。このような信号分離に関連する技術としては、例えば、非特許文献１に記載されている技術がある。
非特許文献１には、現フレームから過去に連続した複数フレームの入力信号を用いて分離行列を学習することにより、音源移動などの環境変化に追従可能な信号分離方法が記載されている。
図２９は非特許文献１に記載の方法に基づく信号処理装置の例の構成を示すブロック図である。図２９に示すように、この信号処理装置の例は、周波数変換部１００と、データ記憶部１０５と、分離行列生成部１０２と、分離信号生成部１０３と、逆周波数変換部１０４とから構成される。
図２９に示す、非特許文献１に記載の方法に基づく信号処理装置の例は、次のように動作する。
周波数変換部１００は所定の時間長のフレーム単位で入力信号に対して周波数変換を施して周波数領域入力信号を生成し、データ記憶部１０５と分離信号生成部１０３に出力する。この周波数変換には離散フーリエ変換（Ｄｉｓｃｒｅｔｅ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ；ＤＦＴ）が用いられる。データ記憶部１０５は複数フレームの周波数領域入力信号を記憶し、現フレームの周波数領域入力信号が新たに入力された場合、最も古いフレームの周波数領域入力信号を破棄し、現フレームの周波数領域入力信号を新たに記憶する。この結果、データ記憶部１０５は現フレームから過去に連続した複数フレームの周波数領域入力信号を保持する。分離行列生成部１０２はデータ記憶部１０５に保持されている複数フレームの周波数領域入力信号を読み出し、これらを用いて分離行列を学習計算し、分離行列を分離信号生成部１０３に出力する。分離信号生成部１０３は周波数領域入力信号と分離行列とから周波数領域分離信号を生成し、逆周波数変換部１０４に出力する。逆周波数変換部１０４は、逆周波数変換により、周波数領域分離信号を分離信号に変換する。この逆周波数変換には逆離散フーリエ変換（Ｉｎｖｅｒｓｅ  Ｄｉｓｃｒｅｔｅ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ；ＩＤＦＴ）が用いられる。
また、特許文献１には、複数の音声入力手段を通じて逐次入力される複数の音源からの音声信号が重畳された複数の混合音声信号から、複数の音源のそれぞれに対応する分離信号を生成する音声分離装置の例が記載されている。
特許文献１に記載の音声分離装置は、複数のマイクロホンから入力される複数（ｎ個）の音源信号が重畳された混合音声信号をデジタル信号に変換するＡ／Ｄ（Ａｎａｌｏｇ／Ｄｉｇｉｔａｌ）コンバータと、デジタル信号化された複数（ｎ個）の混合音声信号各々を入力して信号処理を行う複数（ｎ個）のＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）と、そのうちの１つのＤＳＰから逐次出力される音源分離処理後の複数（ｎ個）の分離信号各々をアナログ信号に変換するＤ／Ａ（Ｄｉｇｉｔａｌ／Ａｎａｌｏｇ）コンバータとを備え、以下のように動作する。
ｎ個のＤＳＰは、Ａ／Ｄコンバータによりデジタル化された一定時間長分の時間領域におけるｎ個の入力信号（フレーム信号）に、それぞれ離散フーリエ変換を施して周波数領域における混合音声信号に変換し、バッファリングする。また、ｎ個のＤＳＰは、前述の周波数領域の信号に変換する処理と平行して、周波数領域における混合音声信号を周波数帯域によって複数に分割した周波数帯域毎の信号をそれぞれ担当して、ＦＤＩＣＡ（Ｆｒｅｑｕｅｎｃｙ−Ｄｏｍａｉｎ  ＩＣＡ）方式における分離行列Ｗ（ｆ）の学習計算を行う。さらに、１個のＤＳＰは、周波数領域信号への変換及び分離行列の学習とさらに平行して、学習により更新した分離行列Ｗ（ｆ）を用いた行列計算により、バッファリングされた周波数領域フレーム信号から、各音源に対応する分離信号を生成する。さらに各ＤＳＰは、生成した分離信号のそれぞれに逆離散フーリエ変換を施す。
上記の分離行列Ｗ（ｆ）の学習における分離行列Ｗ（ｆ）の初期値は、１フレーム目の信号による学習では予め初期値として定めた行列であり、２フレーム目以降の信号による学習では、前フレームの信号による学習により更新した分離行列Ｗ（ｆ）である。学習した分離行列を用いて音源分離処理を施す混合音声信号は、分離行列の学習に用いた信号であっても異なる信号であってもよい。
特許文献２には、互いに異なるＮ個の音響信号と前記Ｎ個の音響信号のいずれとも異なるＮ＋１個目の音響信号を、各音響信号の重みを１にして混合した混合信号から、Ｎ個の音響信号を分離して出力する音源分離システムの例が記載されている。特許文献２の音源分離システムは、エンコーダとデコーダとを含む。エンコーダは、混合信号生成手段と、判定手段と、出力手段とを備える。また、デコーダは、分類手段と、疑似混合信号生成手段と、分離手段とを含む。特許文献２の音源分離システムは、以下のように動作する。
特許文献２に記載の音源分離システムのエンコーダの混合信号生成手段は、互いに異なるＮ個の音響信号とこのＮ個の音響信号のいずれとも異なるＮ＋１個目の音響信号を、各音響信号の重みを１にして混合し、第１の混合信号を生成する。また、混合信号生成手段は、Ｎ＋１個の音響信号から順に選択した一つの信号の重みを１の近傍の所定の値（αとする）に、他のＮ個の音響信号の重みを１にして、Ｎ＋１個の信号を混合し混合信号を生成する処理をＮ回繰り返し、Ｎ種類の混合信号を生成する。次に、判定手段が、前述の第１の混合信号とＮ種類の混合信号に対して独立成分分析を試み、前述のＮ個の音響信号の分離が可能であるか否かを判定する。エンコーダは、Ｎ個の混合信号が分離可能と判定手段が判定した場合、第１の混合信号と所定の値（α）を出力手段によって出力する。
特許文献２に記載の音源分離システムのデコーダの分類手段は、エンコーダから出力される第１の混合信号にフーリエ変換を施してスペクトルの時間変化を得る。また、分類手段は、その時間変化を聴覚情景分析により解析してＮ＋１個のグループに分類する。次に、疑似混合信号生成手段が、分類手段が分類したＮ＋１個のグループのうちから１つのグループを選択し、選択したグループに属するスペクトルの振幅に所定の値（α）を乗算する。その乗算後に、疑似混合信号生成手段は、各グループに属するスペクトルに逆フーリエ変換を施して疑似混合信号を生成する。疑似混合信号生成手段は、このような乗算、擬似混合信号生成処理を、選択するグループを変えつつＮ回実行してＮ種類の疑似混合信号を生成する。また、デコーダの分離手段は、第１の混合信号とＮ種類の疑似混合信号からＮ個の音響信号を分離する。
エンコーダの判定手段が分離可能と判定する場合、すなわち、分離後の信号が入力信号と一致する場合、分離行列は、混合信号生成手段における混合信号生成処理を、αをパラメータとする行列で表した場合の行列の逆行列である。デコーダの分離手段は、エンコーダから受け取った所定の値αをもとに逆行列である分離行列を計算し、信号の分離を行う。
特許文献３には、検出対象音源からの音と雑音源からの音の混合音により分離行列を最適化し、最適化した分離行列を用いて混合音から検出対象音源からの音と雑音源からの音とを分離する音信号処理装置の一例が記載されている。
特許文献３に記載の音信号処理装置は、第１及び第２フレーム化部、第１及び第２周波数分析部、分離処理部、分離行列最適化計算部、発話区間判定部、分離処理オン／オフ制御部、最適化計算オン／オフ制御部を備え、以下のように動作する。
第１及び第２フレーム化部は、第１及び第２のマイクからそれぞれ第１及び第２フレーム化部に入力された２チャンネルの音声信号を、所定時間間隔でサンプリングし所定サンプル数を１フレームとすることにより時分割でフレーム化し、第１及び第２周波数分析部に出力する。第１及び第２周波数分析部は、フレーム単位で入力された音声信号にＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ）を行って観測信号を生成し、分離処理オン／オフ制御部に出力する。
分離処理オン／オフ制御部は、後述の発話区間判定部が発話区間であると判定している場合、入力された観測信号を分離処理部に出力し、発話区間判定部が発話区間であると判定していない場合は出力しない。分離処理部は、分離行列最適化計算部が最適化した分離行列により、観測信号から分離信号を分離抽出する。
発話区間判定部は、マイクからの入力信号又は第１及び第２フレーム化部がフレーム化した信号の相関度、あるいは、周波数解析部が生成した観測信号のパワースペクトル又はクロススペクトルから、発話音声の区間を判定する。なお、該発話区間判定部が正しく発話区間の判定を行うためには、前述の相関度またはパワースペクトルにより判定を行う場合、雑音は双方の入力信号に含まれ、分離を行うべき発話音声は一方の入力信号にのみ含まれている必要がある。また、発話区間判定部が前述のクロススペクトルにより判定を行う場合、分離を行うべき発話音声が２つの入力信号の双方含まれている必要がある。
分離行列最適化計算部は、分離処理部の出力である分離信号をもとに、分離行列の最適化を行う。
最適化計算オン／オフ制御部は、発話区間判定部が発話区間であると判定している場合、分離行列最適化計算部に最適化処理を実施させ、発話区間判定部が発話区間であると判定していない場合、分離行列最適化計算部に最適化処理を一時的に停止させる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−０３４１８４号公報
【特許文献２】特開２００７−２６４４３２号公報
【特許文献３】特開２００５−２２７５１２号公報
【非特許文献】
【０００４】
【非特許文献１】Ｒ．Ｍｕｋａｉ，Ｈ．Ｓａｗａｄａ，Ｓ．Ａｒａｋｉ，ａｎｄ  Ｓ．Ｍａｋｉｎｏ，“Ｂｌｉｎｄ  Ｓｏｕｒｃｅ  Ｓｅｐａｒａｔｉｏｎ  ｆｏｒ  Ｍｏｖｉｎｇ  Ｓｐｅｅｃｈ  Ｓｉｇｎａｌｓ  Ｕｓｉｎｇ  Ｂｌｏｃｋｗｉｓｅ  ＩＣＡ  ａｎｄ  Ｒｅｓｉｄｕａｌ  Ｃｒｏｓｓｔａｌｋ  Ｓｕｂｔｒａｃｔｉｏｎ，”ＩＥＩＣＥ  Ｔｒａｎｓ．Ｆｕｎｄａｍｅｎｔａｌｓ，ｖｏｌ．Ｅ８７−Ａ，ｎｏ．８，Ａｕｇｕｓｔ２００４．
【発明の概要】
【発明が解決しようとする課題】
【０００５】
一般に、複数の入力信号を混合した混合信号から元の入力信号を分離するための分離行列は、入力信号の統計量に基づいて学習される。したがって、良好な分離行列を得るためには、有効な統計量が算出できる程度の多数の入力信号が必要である。
非特許文献１記載の方法は、現フレームから過去に連続した複数フレーム内に、信号分離に適していない入力信号、例えば、統計量の算出に有効ではない無音信号が存在する場合、正しい統計量を算出できない。すなわち、非特許文献１記載の方法には、現フレームから過去に連続した複数フレーム内に例えば無音信号が存在する場合、正しい分離行列を算出できず、分離性能が劣化するという問題がある。
また、非特許文献１記載の方法は、前述の統計量に基づき、複数の音源信号が混在した入力信号を個々の音源信号に分離するように分離行列を学習する。この場合、統計量を算出するための入力信号に、全ての音源からの信号が混在している必要がある。したがって、現フレームから過去に連続した複数フレーム内に、全ての音源からの信号が混在していない入力信号が含まれる場合、非特許文献１記載の方法は、正しい統計量を算出できず、正しい分離行列を算出できない。すなわち、非特許文献１記載の方法には、現フレームから過去に連続した複数フレーム内に、全ての音源からの信号が混在しない入力信号が含まれる場合、分離性能が劣化するという問題があった。
また、特許文献１に記載の音源分離法は、入力信号に無音信号が含まれるなど、入力信号が分離行列の最適化に適さない場合であっても、分離行列の最適化を続ける。従って、特許文献１に記載の音源分離法には、入力信号に無音信号が含まれるなど、入力信号が分離行列の最適化に適さない場合、正しい分離行列を算出できず、分離性能が劣化するという問題があった。
特許文献２に記載の音源分離法では、エンコーダが、入力信号が分離可能であるか判定し、確実に分離可能な入力信号のみを混合した一つの混合信号を、分離行列を決定するためのパラメータと共に出力する。デコーダは、確実に分離可能な混合信号から、パラメータによって決定した分離行列を用いて信号分離を行う。従って、特許文献２に記載の音源分離法には、入力信号が分離に適しない場合、信号の分離を行うことができないという問題があった。
特許文献３に記載の方法は、発話区間であると判定されていない間、分離行列の最適化処理を停止する。従って、特許文献３に記載の方法には、分離行列が最適値に収束していない場合、発話区間であると判定されない限り、分離行列の最適化が行われず、分離性能が劣化したままとなると言う問題があった。更に、特許文献３の方法が音源分離を行うことができるのは、発話区間判定部の実装により、雑音は２つの入力信号の双方に含まれ、音声は２つの入力信号のいずれか一方のみに含まれる場合と、音声が双方の入力信号に含まれる場合に限られる。そのため、特許文献３に記載の方法には、任意の入力信号に対して音源分離を行うことができないという問題があった。
［本発明の目的］
本発明の目的は、信号分離に適していない信号が入力されても、分離性能の劣化を抑えることができる信号分離システムを提供することにある。
【課題を解決するための手段】
【０００６】
本発明の信号分離装置は、複数の入力信号が信号分離に適するか否かを判断する入力信号解析手段と、前記入力信号を周波数領域の信号に変換した周波数領域入力信号のデータを格納するためのデータ記憶手段と、前記複数の入力信号が信号分離のための分離行列生成に適すると前記入力信号解析手段が判断した場合、前記周波数領域入力信号を前記データ記憶手段に格納し、前記複数の入力信号が信号分離のための分離行列生成に適すると前記入力信号解析手段が判断しない場合、前記周波数領域入力信号を前記データ記憶手段に格納しない選択制御手段と、前記データ記憶手段に格納されている、最新及び過去の周波数領域入力信号を含む周波数領域入力信号を用いて、分離行列を生成する分離行列生成手段と、を含む。
本発明の信号分離方法は、複数の入力信号が信号分離に適するか否かを判断し、前記複数の入力信号が信号分離に適すると前記入力信号解析手段が判断した場合、前記周波数領域入力信号を、前記入力信号を周波数領域の信号に変換した周波数領域入力信号を格納するためのデータ記憶手段に格納し、前記データ記憶手段に格納されている周波数領域入力信号を用いて分離行列を生成する。
本発明のプログラムは、コンピュータを、複数の入力信号が信号分離に適するか否かを判断する入力信号解析手段と、前記入力信号を周波数領域の信号に変換した周波数領域入力信号を格納するためのデータ記憶手段と、前記複数の入力信号が信号分離に適すると前記入力信号解析手段が判断した場合、前記周波数領域入力信号を前記データ記憶手段に格納し、前記入力信号を信号分離に適しないと前記入力信号解析手段が判断した場合、前記周波数領域入力信号を前記データ記憶手段に格納しない選択制御手段と、前記データ記憶手段に格納されている周波数領域入力信号を用いて分離行列を生成する分離行列生成手段と、して機能させる。
【発明の効果】
【０００７】
本発明には、信号分離に適さない信号が入力されても、分離性能の劣化を抑えることができるという効果がある。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態の構成を表すブロック図である。
【図２】第１の実施形態の動作を表すフローチャートである。
【図３】第２の実施形態の構成を表すブロック図である。
【図４】第２の実施形態のデータ選択記憶部の構成を表すブロック図である。
【図５】第２の実施形態の動作を表すフローチャートである。
【図６】第３の実施形態の構成を表すブロック図である。
【図７】第３の実施形態のデータ選択記憶部の構成を表すブロック図である。
【図８】第３の実施形態の動作を表すフローチャートである。
【図９】第４の実施形態の構成を表すブロック図である。
【図１０】第４の実施形態のデータ選択記憶部の構成を表すブロック図である。
【図１１】周波数領域入力信号の記憶方法を表す図である。
【図１２】周波数領域入力信号の記憶方法を表す図である。
【図１３】第４の実施形態の動作を表すフローチャートである。
【図１４】第５の実施形態の構成を表すブロック図である。
【図１５】第５の実施形態のデータ選択記憶部の構成を表すブロック図である。
【図１６】第５の実施形態の動作を表すフローチャートである。
【図１７】第６の実施形態の構成を表すブロック図である。
【図１８】第６の実施形態のデータ選択記憶部の構成を表すブロック図である。
【図１９】第６の実施形態の動作を表すフローチャートである。
【図２０】第７の実施形態の構成を表すブロック図である。
【図２１】第７の実施形態のデータ選択記憶部の構成を表すブロック図である。
【図２２】第７の実施形態の動作を表すフローチャートである。
【図２３】第８の実施形態の構成を表すブロック図である。
【図２４】第８の実施形態のデータ選択記憶部の構成を表すブロック図である。
【図２５】第８の実施形態の動作を表すフローチャートである。
【図２６】第９の実施形態の構成を表すブロック図である。
【図２７】第９の実施形態のデータ選択記憶部の構成を表すブロック図である。
【図２８】第９の実施形態の動作を表すフローチャートである。
【図２９】非特許文献１に記載の例の処理構成を表すブロック図である。
【図３０】第２の実施形態の各処理部の動作タイミングを表す図である。
【図３１】第２の実施形態の各処理部の動作タイミングを表す図である。
【図３２】第２の実施形態の各処理部の動作タイミングを表す図である。
【図３３】第４の実施形態の各処理部の動作タイミングを表す図である。
【図３４】第４の実施形態の各処理部の動作タイミングを表す図である。
【図３５】第４の実施形態の各処理部の動作タイミングを表す図である。
【図３６】第１０の実施形態の構成を表すブロック図である。
【符号の説明】
【０００９】
１    コンピュータ
２    信号入力部
３    分離信号出力部
４    プログラム記憶部
５、２０２、３０１    データ記憶部
１０    ＣＰＵ
１００    周波数変換部
１０１、３０２、４００、６００、７０２、８０２、９０１、１００２    データ選択記憶部
１０２    分離行列生成部
１０３、４０１    分離信号生成部
１０４    逆周波数変換部
２００、５００、７００、８００、１０００    入力信号解析部
２０１、３００、７０１、８０１、９００、１００１    選択制御部
【発明を実施するための形態】
【００１０】
［第１の実施形態］
次に、本発明について図面を参照して詳細に説明する。
図１は本発明の信号分離装置の第１の実施形態の構成を表す図である。
図１を参照すると、本実施形態に係る信号分離装置は、分離行列生成部１０２と、入力信号解析部２００と、選択制御部２０１と、データ記憶部２０２とを含む。
分離行列生成部１０２は、データ記憶部２０２から読み出した周波数領域入力信号から、周波数領域入力信号を信号源毎の信号に分離するための分離行列を生成する。分離行列の生成は、例えば、所定の分離行列の初期値をもとに、周波数領域入力信号によって学習を行うことで行う。入力信号解析部２００は周波数領域入力信号を受信し、周波数領域入力信号が前述の学習に適するか否かを判断する。選択制御部２０１は、入力信号解析部２００が学習に適すると判断した周波数領域入力信号だけを、データ記憶部２０２に格納する。分離行列生成部１０２は、データ記憶部２０２に格納されている周波数領域入力信号によって学習を行い、分離行列を生成する。以下、より詳細な説明を行う。
周波数領域入力信号は、本装置に入力された、図示しない時間領域の複数の入力信号を、それぞれ所定の時間長単位で周波数領域の信号に変換した複数の信号である。本発明の実施形態において行う処理の対象は、所定の時間長毎の信号である。処理を行う信号の単位はフレームと呼ばれる。入力信号は、例えば、複数の信号源が発生した信号を複数のセンサで観測した信号である。複数のセンサで観測した信号には、それぞれ、複数の信号源が発生した信号が混合されている。ただし、複数の信号源の全ての信号源が常に信号を発生しているとは限らない。また、複数の信号のそれぞれに、全ての信号源からの信号が必ず混合されているとは限らない。従って、周波数領域入力信号の全てが、全周波数に渡ってゼロにならないとは限らない。
入力信号解析部２００は、後述の分離行列生成部１０２が分離行列を生成するための学習に使用するのに、入力信号が適しているか否かを、所定の方法で判断し、判断の結果を選択制御部２０１に通知する。以下、入力信号が分離行列を生成するための学習に使用するのに適する、あるいは、入力信号が分離行列を生成するのに適するとは、入力信号を周波数領域の信号に変換した周波数領域入力信号により分離行列の学習を行った場合に、分離行列による信号分離の分離精度が向上することが期待できることを意味する。逆に、「適しない」は、学習によって分離行列による信号分離の分離精度が劣化することを意味する。
入力信号が分離行列を生成するのに適しているか否かを判断する方法には、例えば、例えば所定の時間長の間、全ての入力信号が、信号の値がゼロ又はゼロと見なせる値であるような、無信号の状態であるか否かを解析する方法がある。後述の分離行列生成部１０２が、無信号である入力信号から分離行列を生成した場合、分離行列の分離精度が低下する。そのため、入力信号が無信号の状態であるなら、入力信号解析部２００は、入力信号は分離行列を生成するのに適していないと判断すればよい。逆に、入力信号解析部２００は、例えば所定の時間長の間に入力信号のいずれかがゼロではない値をとる、入力信号が無信号でない状態であるなら、入力信号は分離行列を生成するのに適していると判断すればよい。ある入力信号が無信号であるか否かの判断は、例えば、入力信号を周波数領域の信号に変換した周波数領域入力信号のパワーが、全ての周波数領域入力信号でゼロである場合に無信号であると判断するなどすればよい。
また、分離行列生成部１０２が、複数の信号源のうちいずれかの信号源からの信号が含まれていない入力信号によって学習を行い、分離行列を生成した場合、分離行列の分離精度が低下する。従って、いずれかの信号源からの信号が複数の入力信号のどれにも含まれていない場合、分離行列を生成するのに適していないと判断する方法もある。学習によって分離行列の分離精度が高くなっている状態であれば、分離行列により生成した分離信号は、個々の信号源が発生する信号になっているはずである。例えば、図示しない、生成した分離行列による分離後の分離信号に、所定の時間長の間、値がゼロとなる信号が含まれている場合、いずれかの信号源からの信号が入力信号のどれにも含まれていないと判断することができる。
入力信号解析部２００が、入力信号は分離行列を生成するのに適すると判断した場合、選択制御部２０１は、周波数領域入力信号をデータ記憶部２０２に格納する。一方、入力信号解析部２００が、入力信号は分離行列を生成するのに適しないと判断した場合、選択制御部２０１は、周波数領域入力信号をデータ記憶部２０２に格納しない。データ記憶部２０２に新たに格納するための領域がない場合、選択制御部２０１は、例えば、データ記憶部２０２に格納されている周波数領域入力信号のデータのうち、格納してからの経過時間が最も長いものを破棄して新たなデータを格納する。
データ記憶部２０２は、格納された周波数領域入力信号を、経過時間を表す情報と関連付けて記憶する。経過時間を表す情報には、例えばフレーム番号がある。フレーム番号は、例えば昇順に付与された各フレームの番号である。
分離行列生成部１０２は、データ記憶部２０２に格納されている過去分を含む複数フレームの周波数領域入力信号を、データ記憶部２０２から読み出す。読み出す際、例えばデータ記憶部２０２に格納されている全ての周波数領域入力信号を読み出してもよいし、何らかの手段で選択した一部の周波数領域入力信号を読み出してもよい。分離行列生成部１０２は、読み出した周波数領域入力信号を用いて、周波数領域入力信号を信号源毎の周波数領域分離信号に分離するための分離行列を生成する。後述するように、分離行列は、信号源毎に分離した周波数領域分離信号の、特定の周波数帯域における値を要素とするベクトルを生成する行列である。分離行列生成部１０２は、周波数帯域毎に分離行列を生成する。この分離行列を、対応する周波数帯域における複数の周波数領域入力信号の値を要素とするベクトルに掛けることで、その周波数帯域における周波数領域分離信号が算出される。全ての周波数帯域について求めた周波数領域分離信号を時間領域の信号に変換することで、信号源毎の分離信号が生成される。分離行列の生成は、例えばＩＣＡ（独立成分分析）に基づく学習によって行うことができる。ＩＣＡに基づく分離行列生成法の例は後述する。
次に、本実施形態の動作について、図面を参照して詳細に説明する。
図２は、本実施形態に係る信号分離装置の動作を示す図である。
図２を参照すると、まず、入力信号解析部２００が、入力された周波数領域入力信号が分離行列を生成するのに適するか否かを判断する（ステップＳ１）。ステップＳ１における判断の結果、周波数領域入力信号が分離行列を生成するのに適する信号である場合（ステップＳ２、Ｙｅｓ）、選択制御部２０１は、周波数領域入力信号をデータ記憶部２０２に記憶し（ステップＳ３）、ステップＳ４に進む。周波数領域入力信号が分離行列を生成するのに適しない信号である場合（ステップＳ２、Ｎｏ）、ステップＳ４に進む。
次に、分離行列生成部１０２は、データ記憶部２０２に格納されている周波数領域分離信号の一部又は全部を読み出し、読み出した周波数領域分離信号をもとに、分離行列を生成する（ステップＳ４）。
本実施形態の信号分離装置は、フローチャートに示す「スタート」から「リターン」までの動作を、フレーム毎に繰り返す。なお、後述の他の実施形態でも同様に、それぞれの実施形態の動作を表すフローチャートに示す「スタート」から「リターン」までを、フレーム毎に繰り返す。
本実施形態には、信号分離に適さない信号が入力されても、分離性能の劣化を抑えることができるという効果がある。
その理由は、入力信号が分離行列の生成に適するか否かを判断し、分離行列の生成に適する入力信号のみをデータ記憶部２０２に格納し、データ記憶部２０２に格納されている現在及び過去のものを含む分離行列の生成に適する複数フレームの周波数領域入力信号から分離行列を生成するからである。
［第２の実施形態］
次に、本発明の第２の実施形態について図面を参照して詳細に説明する。
図３は本実施形態の構成を表す図である。
図３を参照すると、本実施形態に係る信号分離装置は、周波数変換部１００と、データ選択記憶部１０１と、分離行列生成部１０２と、分離信号生成部１０３と、逆周波数変換部１０４とを含む。
周波数変換部１００は所定の時間長のフレーム単位で入力信号に対して周波数変換を施し、周波数領域入力信号を生成し、データ選択記憶部１０１と分離信号生成部１０３に出力する。周波数変換部１００は、例えば、ＤＦＴによって、この周波数変換を行うことができる。なお、周波数変換の変換ブロック長は、フレームと同じ時間長でもよいし、フレームより長い時間長でもよい。変換ブロック長がフレームより長い場合、周波数変換部１００は、例えば、フレーム長の２倍の長さ変換ブロック長に対して周波数変換を行うことができる。この場合、周波数変換部１００は、例えば、現フレームとその１フレーム前のフレームで構成される変換ブロックに対して周波数変換を行えばよい。
なお、以下では、入力信号が、複数の音源が発生した音を複数のセンサによって観測することで得られる信号であるとして説明を行う。
データ選択記憶部１０１は、入力された周波数領域入力信号のうち、分離行列を生成するのに適したフレームの周波数領域入力信号だけを記憶する。また、データ選択記憶部１０１は、記憶している複数フレーム分の周波数領域入力信号を、分離行列を生成する分離行列生成部１０２に送信する。
次に、本実施形態におけるデータ選択記憶部１０１の構成を、図面を参照して詳細に説明する。
図４は、本実施形態に係る信号分離装置のデータ選択記憶部１０１の構成を表す図である。
図４を参照すると、データ選択記憶部１０１は、入力信号解析部２００と、選択制御部２０１と、データ記憶部２０２とを含む。
入力信号解析部２００は、入力信号が、分離行列を生成するのに適するか否かを判断し、判断結果を選択制御部２０１に通知する。以下で述べるように、本実施形態の例では、入力信号解析部２００が、入力信号が無音状態であるか否かを判断することで、入力信号が分離行列を生成するのに適するか否かの判断を行う。また、本実施形態の例では、入力信号解析部２００が、周波数領域入力信号を解析することにより、入力信号が無音状態であるか否かの判断を行う。さらに、入力信号解析部２００は、解析値と呼ぶ値を送信することで、選択制御部２０１に対して判断結果の通知を行う。ただし、解析値の送信は、判断結果の通知方法の一例である。判断結果の通知方法は、解析値の送信に限られるものではない。同様に、本実施形態を含む全ての実施形態に記載する判断及び通知の方法はあくまで例であり、本願発明の範囲は実施形態の記載に限られるものではない。
入力信号解析部２００は、周波数領域入力信号を解析して、入力信号が無音状態であるか否かを判断する。入力信号解析部２００は、入力信号が無音状態であるか否かの判断結果を解析値として表し、その解析値を選択制御部２０１に出力する。入力信号解析部２００は、例えば、周波数領域入力信号のパワーを各々測定することで、周波数領域入力信号の解析を行えばよい。また、入力信号解析部２００は、全てのパワーが閾値より小さい場合無音状態と判断し、それ以外の場合有音状態と判断すればよい。入力信号解析部２００は、例えば、入力信号が無音状態であると判断した場合、解析値を０に、入力信号が有音状態であると判断した場合、解析値を１にすればよい。
選択制御部２０１は、入力信号が有音状態であれば周波数領域入力信号をデータ記憶部２０２に出力し、入力信号が無音状態であれば周波数領域入力信号を出力しない。入力信号解析部２００が上述のように解析値を設定する場合、選択制御部２０１は、解析値が１ならば周波数領域入力信号をデータ記憶部２０２に出力すればよい。また、選択制御部２０１は、解析値が０ならば周波数領域入力信号を出力しなければよい。また、選択制御部２０１は、周波数領域入力信号を出力する場合、周波数領域入力信号をデータ記憶部２０２内に記憶するための更新情報をデータ記憶部２０２に出力する。この更新情報は、選択制御部２０１が出力する周波数領域入力信号を、新たにデータ記憶部２０２内に格納する際、代わりに破棄するデータ記憶部２０２内の周波数領域入力信号を指定するための情報である。更新情報は、例えば、データ記憶部２０２に記憶されている周波数領域入力信号の中で、記憶されてからの経過時間が最も長い周波数領域入力信号のフレーム番号である。選択制御部２０１は、データ記憶部２０２に記憶されている周波数領域入力信号のフレーム番号と、現周波数領域入力信号のフレーム番号の差分をもとに、経過時間を算出できる。
データ記憶部２０２は、複数フレームの周波数領域入力信号を記憶し、更新情報と周波数領域入力信号が新たに入力された場合、更新情報が示すフレームの周波数領域入力信号を破棄し、入力された周波数領域入力信号を新たに記憶する。
また、解析値として前述のような２値ではなく連続値を用いてもよい。この場合、入力信号解析部２００と選択制御部２０１は次のように動作する。
入力信号解析部２００は、周波数領域入力信号を解析し、無音状態を表す解析値を選択制御部２０１に出力する。入力信号解析部２００は、出力する解析値の設定を、例えば次のように行うことができる。入力信号解析部２００は、例えば、周波数領域入力信号のパワーを測定し、パワーが下限閾値より小さい場合、無音状態とみなして解析値を０にすればよい。入力信号解析部２００は、パワーが上限閾値以上の場合、有音状態とみなし解析値を１にすればよい。入力信号解析部２００は、その他の場合は、周波数領域入力信号のパワーに応じた補間処理を行って算出した０から１の数値を、解析値にすればよい。入力信号解析部２００は、この補間処理に、例えば、線形補間を用いることができる。
選択制御部２０１は、データ記憶部２０２が記憶する各フレームに対応する解析値を保持する。選択制御部２０１は、データ記憶部２０２に記憶されている複数フレームの中で、解析値が最も小さいフレームのフレーム番号を更新情報として設定し、周波数領域入力信号と更新情報をデータ記憶部２０２に出力する。選択制御部２０１は、このように解析値として連続値を用いることで、解析値が小さいフレーム、すなわち、無音状態に近いフレームから順に破棄させることができる。この場合、解析値として前述のような２値を用いる場合より、データ記憶部２０２は信号分離に適した周波数領域入力信号を記憶できる。
また、入力信号解析部２００が、前述のように、連続値の解析値を選択制御部２０１に出力する場合、選択制御部２０１は次のように動作してもよい。
選択制御部２０１は、データ記憶部２０２に記憶されてから所定の時間経過したフレームが存在する場合、そのフレーム番号を更新情報として設定する。データ記憶部２０２に記憶されてから所定の時間経過したフレームが存在しない場合、選択制御部２０１は、データ記憶部２０２に記憶されている複数フレームの中で解析値が最も小さいフレームのフレーム番号を更新情報として設定する。選択制御部２０１は、周波数領域入力信号と、以上のように設定した更新情報をデータ記憶部２０２に出力する。データ記憶部２０２に記憶されてからの経過時間は、前述と同様に算出できる。
また、選択制御部２０１は、次のように動作してもよい。選択制御部２０１は、データ記憶部２０２に記憶されている各フレームの解析値を、新たなフレームが入力される毎に少しずつ０に近づけてく。選択制御部２０１は、解析値が最も小さいフレームのフレーム番号を更新情報として設定し、周波数領域入力信号と更新情報をデータ記憶部２０２に出力する。選択制御部２０１は、例えば、新たなフレームが入力される毎に各フレームの解析値に係数α（０．０＜α＜１．０）を乗算することで、解析値を少しずつ０に近づけることができる。
次に、図３に戻り、分離行列生成部１０２の動作を説明する。分離行列生成部１０２は、図４のデータ記憶部２０２から読み出した複数フレームの周波数領域入力信号を用いて分離行列を学習計算し、計算した分離行列を分離信号生成部１０３に出力する。分離行列生成部１０２は、例えば、ＩＣＡを用いて、分離行列の学習計算を行うことができる。以下、ＩＣＡに基づく分離行列の学習計算について説明する。次式のＸｉ（ｆ），ｉ＝１，２，…Ｍ（Ｍは入力チャンネル数）は、ある周波数帯域ｆにおける周波数領域入力信号である。また、Ｙｉ（ｆ），ｉ＝１，２，…，Ｎ（Ｎは出力チャンネル数）は、周波数領域分離信号である。分離行列生成部１０２は、次式を満たす分離行列の周波数成分（以下、分離行列と表記する）Ｗ（ｆ）を計算する。
【数１】
2011074702.tif 000003
分離行列Ｗ（ｆ）は、次式で表されるＮ行Ｍ列の行列である。
【数２】
2011074702.tif 000004
分離行列生成部１０２は、非特許文献２に記載のように次式を繰返し更新することで、分離行列Ｗ（ｆ）を算出できる。
【数３】
2011074702.tif 000005
非特許文献２：２００５年，「スピーチ・エンハンスメント」、シュプリンガー，（Ｓｐｅｅｃｈ  Ｅｎｈａｎｃｅｍｅｎｔ，Ｓｐｒｉｎｇｅｒ，２００５，ｐｐ．２９９３２７），２９９ページから３２７ページ参照。
数３のμはステップサイズであり、Ｉは単位行列である。また、Ｓ（ｆ）は周波数領域分離信号の独立性を評価する統計量である。分離行列生成部１０２は、次式によってＳ（ｆ）を算出する。
【数４】
2011074702.tif 000006
数４のτはフレーム番号である。また、Ｅ｛・｝は期待値を、Φ（・）は非線形変換関数を、Ｈは複素共役転置を、＜・＞τは時間平均演算子を表す。また、Ｙ（ｆ，τ）は、番号τのフレームに対応する周波数領域分離信号を表すベクトル［Ｙ１（ｆ，τ），．．．，ＹＮ（ｆ，τ）］Ｔ（Ｔは転置を表す）である。［Ｙ１（ｆ，τ），．．．，ＹＮ（ｆ，τ）］Ｔは、対応するフレーム番号を明示して表記した数１の左辺である。非線形変換関数Φ（・）は、例えば、次式で表される関数である。
【数５】
2011074702.tif 000007
また、数４に示すように、周波数領域分離信号Ｙｉ（ｆ）のエルゴード性が仮定されているため、分離行列生成部１０２は、時間平均値を計算することで期待値を算出できる。
分離行列生成部１０２は、例えば、過去の学習計算で算出した分離行列を、数３の繰返し更新の初期値にすることができる。
分離信号生成部１０３は、周波数領域入力信号と分離行列とから周波数領域分離信号を生成し、逆周波数変換部１０４に出力する。
逆周波数変換部１０４は、逆周波数変換により、周波数領域分離信号を分離信号に変換する。逆周波数変換部１０４は、例えば、ＩＤＦＴを用いて、この逆周波数変換を行うことができる。なお、逆周波数変換部１０４による逆周波数変換の変換ブロック長は、前述の周波数変換部１００による周波数変換の変換ブロック長と同じである。例えば、周波数変換部１００が、フレーム長の２倍の変換ブロック長で周波数変換を行った場合、逆周波数変換部１０４は、現フレームの変換ブロックとその１つ前のフレームの変換ブロックとが重複する区間の分離信号が出力する。
次に本実施形態の信号分離装置全体の動作について、図面を参照して詳細に説明する。
図５は本実施形態の信号分離装置の動作を示すフローチャートである。
図５によると、本実施形態の信号分離装置の周波数変換部１００は、まず、入力信号を周波数領域の信号に変換して周波数領域入力信号を生成する（ステップＳ１１）。データ選択記憶部１０１の入力信号解析部２００は、生成された周波数領域入力信号を解析し、入力信号が無音状態であるか否かを判断する（ステップＳ１２）。入力信号が無音状態である場合（ステップＳ１３、Ｙｅｓ）、ステップＳ１５に進む。入力信号が無音状態でない場合（ステップＳ１３、Ｎｏ）、選択制御部２０１は、入力信号を変換した周波数領域入力信号を、データ記憶部２０２に格納し（ステップＳ１４）、ステップＳ１５に進む。
分離行列生成部１０２は、データ記憶部２０２に格納されている複数フレームの周波数領域入力信号によって学習を行い、分離行列を生成する（ステップＳ１５）。
分離信号生成部１０３は、分離行列生成部１０２が生成した分離行列により、周波数領域入力信号から、周波数領域分離信号を生成する（ステップＳ１６）。逆周波数変換部１０４は、分離信号生成部１０３が生成した周波数領域分離信号を、逆周波数変換により時間領域の信号に変換することで、分離信号を生成する（ステップＳ１７）。
本実施形態の処理過程は、周波数変換部１００と、データ選択記憶部１０１と、分離信号生成部１０３と、逆周波数変換部１０４とで構成される処理過程と、分離行列生成部１０２で構成される処理過程とに大別できる。本実施形態の信号分離装置を実時間で動作させる場合、分離信号を出力するため、前者の処理過程の各処理部は、後者の処理過程と異なり毎フレーム動作する必要がある。もし、２つの処理過程の処理時間が合わせて１フレームの時間長以下ならば、図３０に示すように各処理部を順次に動作させてもよい。図３０は、入力信号に対する各処理部での順次処理のタイミングを示す図である。なお、図３０のｎはある時刻におけるフレームのフレーム番号であり、Ｔｃは周波数変換部１００の処理時間であり、Ｔｍはデータ選択記憶部１０１の処理時間であり、Ｔｗは分離行列生成部１０２の処理時間であり、Ｔｓは分離信号生成部１０３の処理時間であり、Ｔｃ’は逆周波数変換部１０４の処理時間である。この場合、各処理部は、周波数変換部１００、データ選択記憶部１０１、分離行列生成部１０２、分離信号生成部１０３、逆周波数変換部１０４の順序で動作する。このように各処理部が順次動作する場合、本信号分離装置は、現フレームの周波数領域入力信号を用いて学習計算した分離行列を使用して、現フレームの周波数領域入力信号の分離を行うため、好適な分離性能を得ることができる。
しかし、一般に分離行列生成部１０２の処理時間は非常に長いため、前述の２つの処理過程の処理時間の合計が１フレームの時間長を超えることが多い。この場合は、本実施形態を実時間で動作させるために、図３１に示すように分離行列生成部１０２を１フレームにつき、ＴｗＭ＝Ｔｗ／Ｍの時間区間のみ動作させ、Ｍフレームで１回の学習計算を行ってもよい。図３１は、入力信号に対する各処理部での順次処理と学習計算処理のタイミングを示す図である。ただし、ＭはＴｗＭ≦（１フレームの時間長）−（Ｔｃ＋Ｔｍ＋Ｔｓ＋Ｔｃ’）を満たす値である。この場合、各処理部は、例えば、周波数変換部１００、データ選択記憶部１０１、分離信号生成部１０３、逆周波数変換部１０４、分離行列生成部１０２の順序で動作する。各処理部がこの順番で動作する場合、分離行列生成部１０２の学習計算はフレームｎ＋Ｍで終了し、分離信号生成部１０３は、学習結果である分離行列をフレームｎ＋Ｍ＋１の処理で利用することができる。なお、分離行列生成部１０２はＭフレームで１回の学習計算を行うため、分離行列生成部１０２が学習計算している間に入力されたＭフレームの周波数領域入力信号を一時記憶するバッファが別途必要となる。
図３２に示すように、前述の２つの処理過程は並列に動作してもよい。図３２は並列処理した場合のタイミングを示す図である。この場合、周波数変換部１００、データ選択記憶部１０１、分離信号生成部１０３、逆周波数変換部１０４は毎フレーム動作する。また、分離行列生成部１０２は、分離行列の学習計算に要する処理時間Ｔｗより大きい整数の中で最も小さい整数Ｍフレームごとに学習計算を行う。この場合、分離信号生成部１０３は、フレームｎ＋Ｍで得られた新しい分離行列を、フレームｎ＋Ｍ＋１の処理で利用することができる。なお、分離行列生成部１０２が学習計算している間に入力されたＭフレームの周波数領域入力信号を一時記憶するバッファが別途必要となる。
以上のように、本実施形態には、入力信号が無音状態である場合の分離性能の劣化を軽減する効果がある。
その理由は、本実施形態の信号分離装置は、入力信号解析部２００と選択制御部２０１を含み、分離行列を算出するための信号として、分離行列の学習の際に行う統計量の算出に適した有音状態の周波数領域入力信号を複数選択するからである。本実施形態の信号分離装置は、選択された複数の有音状態の周波数領域入力信号を用いて分離行列を算出することで、無音である入力信号によって学習を行うことによる分離性能の劣化を低減することができる。
［第３の実施形態］
次に、本発明の第３の実施形態について図面を参照して詳細に説明する。
図６は本実施形態の信号分離装置の全体の構成を表す図である。
本実施形態は、データ選択記憶部１０１の代わりに、データ選択記憶部１０１と構成及び動作が異なるデータ選択記憶部３０２を構成に含む点のみが、図３に示す本発明の第２の実施形態と異なる。本実施形態の他の構成は、第２の実施形態の構成と同じである。以下、本実施形態と第２の実施形態との相違点を中心に説明する。
図７は本実施形態のデータ選択記憶部３０２の構成を表す図である。以下、図７を参照してデータ選択記憶部３０２の構成と動作を説明する。
図７を参照すると、本実施形態のデータ選択記憶部３０２は、入力信号解析部２００と、選択制御部３００と、データ記憶部３０１とを含む。
入力信号解析部２００は、第２の実施形態で説明したように無音状態を表す解析値を算出し、解析値を選択制御部３００に出力する。
選択制御部３００は図４に示す第２の実施形態の選択制御部２０１と同様の動作により、解析値に基づき更新情報を設定し、周波数領域入力信号と更新情報をデータ記憶部３０１に出力する。また、選択制御部３００は、データ記憶部３０１に記憶されている周波数領域入力信号を初期化するための初期化情報を無音状態の継続時間に応じて設定し、初期化情報をデータ記憶部３０１に出力する。初期化情報は、選択制御部３００が、データ記憶部３０１に記憶されている周波数領域入力信号を全て消去する初期化を行うか否かを、データ記憶部３０１に通知するための情報である。
無音状態が一定時間継続した場合、無音状態中に、音源の位置が変化するなどの環境変化が生じている可能性がある。環境変化が生じた場合、その時点でデータ記憶部３０１に格納されている周波数領域入力信号は、環境変化前のものである。無音状態が一定時間継続した場合、分離行列を生成する前にデータ記憶部３０１の初期化を行うことで、環境変化が生じていたとしても、環境変化後の周波数領域入力信号のみを使用して分離行列生成のための学習を行うことができる。環境変化が生じた可能性があるとみなす無音状態の継続時間は、環境に応じて適宜選択すればよい。
選択制御部３００は、例えば、解析値が所定の閾値より小さい無音状態の継続時間を測定し、継続時間が所定の閾値以上の場合、データ記憶部３０１に記憶されている周波数領域入力信号を初期化するために、初期化情報に１を設定すればよい。一方、継続時間が所定の閾値以上でない場合、選択制御部３００は、初期化情報に０を設定すればよい。この例では、初期化情報は、１である場合、データ記憶部３０１が記憶する周波数領域入力信号を全て破棄する初期化を行うことを意味し、０である場合、初期化を行わないことを意味する。
データ記憶部３０１は、複数フレームの周波数領域入力信号を記憶する。データ記憶部３０１は、更新情報と周波数領域入力信号が新たに入力された場合、更新情報が示すフレームの周波数領域入力信号を破棄し、入力された周波数領域入力信号を新たに記憶する。また、データ記憶部３０１は、入力された初期化情報が１ならば記憶している周波数領域入力信号を全て破棄すればよい。
以上の例では、選択制御部３００は、初期化情報をデータ記憶部３０１に送信することで、データ記憶部３０１が記憶している周波数領域入力信号の、初期化の指示を行っていた。また、データ記憶部３０１は、受け取った初期化情報の値が初期化を指示するものであれば、記憶している周波数領域入力信号を全て廃棄していた。しかし以上のような構成は一例であり、必ずしもこの構成に限られるものではない。
次に、本実施形態の信号分離装置全体の動作について、図面を参照して詳細に説明する。
図８は本実施形態の信号分離装置全体の動作を表すフローチャートである。以下、本実施形態の動作と、図５に示す第２の実施形態の動作の相違点を中心に説明する。
図５と図８とを比較すると、図８のステップＳ２１〜Ｓ２４、Ｓ２８〜Ｓ３０は、それぞれ図５のステップＳ１１〜Ｓ１４、Ｓ１５〜Ｓ１７に対応する。
周波数変換を行ってから（ステップＳ２１）、入力信号が無音状態であるか否かを判定し（ステップＳ２２）、入力信号が無音状態でない場合（ステップＳ２３、Ｎｏ）周波数領域入力信号をデータ記憶部３０１に格納する（ステップＳ２４）までの本実施形態の信号分離装置の動作は、第２の実施形態の動作におけるステップＳ１１〜Ｓ１４と同じである。
入力信号解析部２００が、入力信号が無音であると判断した場合（ステップＳ２３、Ｙｅｓ）、選択制御部３００は、無音状態の継続時間を計測する（ステップＳ２５）。無音状態の継続時間が所定の時間未満である場合（ステップＳ２６、Ｎｏ）、分離行列生成部１０２は、データ記憶部３０１に格納されている複数フレームの周波数領域入力信号によって分離行列を生成し（ステップＳ２８）、ステップＳ２９に進む。
無音状態の継続時間が所定の時間以上である場合（ステップＳ２６、Ｙｅｓ）、選択制御部３００はデータ記憶部３０１を初期化し、データ記憶部３０１に格納されている周波数領域入力信号を全て破棄し（ステップＳ２７）、ステップＳ２９に進む。この場合、データ記憶部３０１に格納されている周波数領域入力信号は無くなるので、分離行列の生成は行わず、現在の分離行列をそのまま使用する。
分離信号生成部１０３は、分離行列により、周波数領域入力信号から周波数領域分離信号を生成する（ステップＳ２９）。逆周波数変換部１０４は、生成された周波数領域分離信号を時間領域の信号に変換し、分離信号を生成する（ステップＳ３０）。
以上のように、本実施形態には、第２の実施形態と同様に、入力信号が無音状態である場合に、分離性能の劣化を軽減するという効果がある。
その理由は、本実施形態の信号分離装置は入力信号解析部２００と選択制御部３００を含み、第２の実施形態と同様に、分離行列の学習の際に行う統計量の算出に適した有音状態の周波数領域入力信号を複数選択するからである。分離行列生成部１０２が、選択された複数の有音状態の周波数領域入力信号を用いて分離行列を算出することで、入力信号が無音状態である場合に、分離性能の劣化を軽減することができる。
本実施形態には、さらに、無音状態中に音源移動などの環境変化が生じても、無音状態の終了後に、生じた環境の変化に速やかに追従できると言う効果がある。すなわち、本実施形態には、無音状態中に環境変化が生じた場合、無音状態終了後、変化後の環境における混合信号から正しい分離信号を生成することができる、変化後の環境に対応した分離行列を生成するまでの時間を短縮するという効果がある。
その理由は、本実施形態は、入力信号解析部２００が周波数領域入力信号を解析し、無音状態の継続時間に応じて選択制御部３００がデータ記憶部３０１を初期化するように構成されているからである。そのため、無音状態中に音源移動などの環境変化が生じた場合、データ記憶部３０１は、環境変化後において、環境変化前の周波数領域入力信号を記憶しない。これにより、環境変化後の分離行列の生成において、分離行列生成部１０２は、環境変化前の周波数領域入力信号を学習に使わない。また、データ記憶部３０１は、無音状態後の周波数領域入力信号を新たに記憶することができる。従って、本実施形態の信号分離装置は、環境変化後の状態を反映した分離行列を速やかに算出することができるため、無音状態後の追従性が改善するという効果が得られる。
［第４の実施形態］
次に、本発明の第４の実施形態について図面を参照して詳細に説明する。
図９は本実施形態の構成を表す図である。
図９を参照すると、本実施形態は、周波数変換部１００と、データ選択記憶部４００と、分離行列生成部１０２と、分離信号生成部４０１と、逆周波数変換部１０４とを含む。本実施形態の構成は、分離信号生成部１０３及びデータ選択記憶部１０１の代わりに、分離信号生成部４０１及びデータ選択記憶部４００を含む点が、図３に示す第２の実施形態の構成と異なる。本実施形態の分離信号生成部４０１及びデータ選択記憶部４００は、構成と動作が、第２の実施形態の分離信号生成部１０３及びデータ選択記憶部１０１と異なる。以下、本実施形態と第２の実施形態との相違点である、分離信号生成部４０１とデータ選択記憶部４００の構成と動作を中心に説明する。
図１０は、本実施形態のデータ選択記憶部４００の構成を表す図である。
図１０を参照すると、第４の実施形態のデータ選択記憶部４００は、入力信号解析部５００と、選択制御部２０１と、データ記憶部２０２とを含む。
入力信号解析部５００は、周波数領域分離信号を解析して、入力信号に全ての音源信号が混在しているか否かを判断する。以下、入力信号に全ての音源信号が混在している状態を、（音源信号の）同時存在状態、又は、入力信号は同時存在状態であると表記する。また、入力信号にいずれかの音源信号が混在していない状態を、非同時存在状態、又は、入力信号は非道時存在状態であると表記する。入力信号解析部５００は、入力信号が同時存在状態であるか否かの判断の結果を、例えば後述の解析値で表し、その解析値を選択制御部２０１に出力する。入力信号解析部５００は、例えば、周波数領域分離信号のパワーを各々測定し全てのパワーが閾値以上であれば、入力信号は同時存在状態であるとみなし、それ以外であれば入力信号は非同時存在状態であるとみなせばよい。また、入力信号解析部５００は、例えば、入力信号が同時存在状態であると判断した場合は解析値を１に設定し、入力信号が非同時存在状態であると判断した場合は解析値を０に設定すればよい。なお、信号分離処理は音源信号の混合過程の逆過程であり、周波数領域分離信号は周波数領域の音源信号とみなすことができるため、周波数領域分離信号を用いた解析により、音源信号の同時存在状態の検出が可能である。
入力信号解析部５００が上述のように解析値を設定した場合、選択制御部２０１は、解析値が１ならば周波数領域入力信号をデータ記憶部２０２に出力すればよく、解析値が０ならば周波数領域入力信号を出力しなければよい。また、選択制御部２０１は、周波数領域入力信号を出力する場合、周波数領域入力信号をデータ記憶部２０２内に記憶するための更新情報をデータ記憶部２０２に出力する。前述のように、更新情報は、選択制御部２０１が出力する周波数領域入力信号を、新たにデータ記憶部２０２内に格納する際、代わりに破棄するデータ記憶部２０２内の周波数領域入力信号を指定するための情報である。選択制御部２０１は、例えば、データ記憶部２０２に記憶されている周波数領域入力信号の中で記憶されてからの経過時間が最も長い周波数領域入力信号のフレーム番号を、更新情報に設定すればよい。経過時間の算出方法は前述の通りである。
データ記憶部２０２は、複数フレームの周波数領域入力信号を記憶する。データ記憶部２０２は、更新情報と周波数領域入力信号が新たに入力された場合、更新情報が示すフレームの周波数領域入力信号を破棄し、入力された周波数領域入力信号を新たに記憶する。
また、解析値は、２値ではなく連続値であってもよい。この場合、入力信号解析部５００と選択制御部２０１は、例えば次のように動作する。
入力信号解析部５００は、周波数領域分離信号を解析し、音源信号の同時存在状態を表す解析値を選択制御部２０１に出力する。入力信号解析部５００は、出力する解析値の設定を、例えば次のように行うことができる。例えば、入力信号解析部５００は、周波数領域分離信号のパワーを各々測定し全てのパワーが上限閾値以上の場合、同時存在状態とみなし、解析値を１にすればよい。入力信号解析部５００は、下限閾値より小さいパワーが１つでも存在する場合、非同時存在状態とみなし、解析値を０にすればよい。入力信号解析部５００は、その他の場合、周波数領域分離信号のパワーに応じた補間処理を行って算出した、０から１の数値を解析値にすればよい。入力信号解析部５００は、この補間処理に、例えば、線形補間を用いることができる。
選択制御部２０１は、第２の実施形態と同じように、連続値の解析値に基づき更新情報を設定し、周波数領域入力信号と更新情報をデータ記憶部２０２に出力する。
また、入力信号解析部５００は、前述のような音源信号の同時存在状態又は非同時存在状態を表す２値の解析値ではなく、例えば３値の解析値を用いてもよい。このような解析値は、例えば、同時存在状態を表す値、単独状態（複数の音源信号の内、１つの音源信号だけが存在している状態）を表す値、無音状態を表す値のいずれかを取りうる解析値である。この場合、入力信号解析部５００と選択制御部２０１は、例えば次のように動作する。
入力信号解析部５００は周波数領域分離信号を解析し、音源信号の同時存在状態、単独状態、または無音状態のいずれかを表す解析値を選択制御部２０１に出力する。入力信号解析部５００は、出力する解析値の設定を、次の例のように行うことができる。例えば、入力信号解析部５００は、まず、周波数領域分離信号のパワーを各々測定する。次に、入力信号解析部５００は、全てのパワーが閾値以上の場合、同時存在状態とみなし、解析値を０にする。入力信号解析部５００は、全てのパワーが閾値より小さい場合、無音状態とみなし解析値を−１にする。それ以外の場合、入力信号解析部５００は、単独状態として最も大きなパワーを持つｉ番目の周波数領域分離信号の番号ｉ（１≦ｉ≦Ｎ，Ｎは周波数領域分離信号の数）を解析値にする。
選択制御部２０１は、解析値が０以上ならば周波数領域入力信号をデータ記憶部２０２に出力すればよく、解析値が−１ならば周波数領域入力信号を出力しなければよい。また、周波数領域入力信号を出力する場合、選択制御部２０１は、周波数領域入力信号をデータ記憶部２０２内に記憶させるための更新情報をデータ記憶部２０２に出力する。
次に、選択制御部２０１による更新情報の設定方法を、図１１、図１２を参照して説明する。図１１、図１２に記載のフレーム番号は、データ記憶部２０２が記憶する周波数領域入力信号の各フレームに、データ記憶部２０２の先頭から順に付与した番号である。
図１１は、解析値が０の場合の、データ記憶部２０２内の、周波数領域入力信号を記憶する場所の例を表す図である。図１１の例では、周波数領域入力信号の各フレームは、入力の順に、データ記憶部２０２内のフレーム１、フレーム（Ｌ＋１）、…、フレーム（Ｌ×（Ｎ−１）＋１）、フレーム２、フレーム（Ｌ＋２）、…、フレーム（Ｌ×（Ｎ−１）÷２）、…に記憶される。解析値が０の場合、選択制御部２０１は、周波数領域入力信号の各フレームが、入力の順に、データ記憶部２０２内のフレーム１、フレーム（Ｌ＋１）、…、フレーム（Ｌ×（Ｎ−１）＋１）、フレーム２、フレーム（Ｌ＋２）、…、フレーム（Ｌ×（Ｎ−１）＋２）、…、に記憶されるよう、データ記憶部２０２内のフレーム番号を更新情報に設定すればよい。ただし、Ｌはデータ記憶部２０２に記憶している周波数領域入力信号の総フレーム数をＮ等分した数である。
図１２は、解析値がｉ（ｉは１以上の整数）の場合の、データ記憶部２０２内の、周波数領域入力信号を記憶する場所の割り当て方の例を表す図である。図１２の例では、周波数領域入力信号の各フレームは、入力の順に、データ記憶部２０２内のフレーム（Ｌ×（ｉ−１）＋１）、フレーム（Ｌ×（ｉ−１）＋２）、…、フレーム（Ｌ×（ｉ−１）＋Ｌ）に記憶される。解析値がｉの場合、選択制御部２０１は、周波数領域入力信号の各フレームが、入力の順に、データ記憶部２０２内のフレーム（Ｌ×（ｉ−１）＋１）、フレーム（Ｌ×（ｉ−１）＋２）、…、フレーム（Ｌ×（ｉ−１）＋Ｌ）に記憶されるよう、データ記憶部２０２内のフレーム番号を更新情報に設定すればよい。
このように更新情報を設定することにより、本実施形態の信号分離装置は、非同時存在状態が長く続く場合でも、データ記憶部２０２内の周波数領域入力信号を更新できる。さらに、本実施形態の信号分離装置は、各音源信号の周波数領域入力信号を常に保持できるため分離性能の劣化を低減できる。
次に、図９に戻り、分離信号生成部４０１について説明する。分離信号生成部４０１は周波数領域入力信号と分離行列とから周波数領域分離信号を生成し、逆周波数変換部１０４とデータ選択記憶部４００に出力する。
次に、本実施形態の信号分離装置全体の動作を、図面を参照して詳細に説明する。
図１３は本実施形態の信号分離装置の動作を示すフローチャートである。
図１３を参照すると、まず周波数変換部１００が、入力信号を周波数領域の信号に変換する周波数変換を行い、周波数領域入力信号を生成する（ステップＳ３１）。
分離信号生成部４０１は、生成された周波数領域入力信号から、周波数領域分離信号を生成する（ステップＳ３２）。逆周波数変換部１０４は、周波数領域分離信号を時間領域の信号に変換し、分離信号を生成する（ステップＳ３３）。
一方、データ選択記憶部４００の入力信号解析部５００は、ステップＳ３２で生成した周波数領域分離信号を解析し、周波数領域入力信号が同時存在状態であるか否かを判断する（ステップＳ３４）。周波数領域入力信号が同時存在状態であるなら（ステップＳ３５、Ｙｅｓ）、選択制御部２０１は、周波数領域入力信号をデータ記憶部２０２に格納し（ステップＳ３６）、ステップＳ３７に進む。周波数領域入力信号が同時存在状態でないなら（ステップＳ３５、Ｎｏ）、ステップＳ３７に進む。
分離行列生成部１０２は、データ記憶部２０２に格納されている複数フレームの周波数領域分離信号によって、分離行列を生成する（ステップＳ３７）。
以上のような本実施形態を実時間で動作させる場合、本実施形態の処理過程は、２つの処理過程に大別できる。１つ目の処理過程は、周波数変換部１００と、データ選択記憶部４００と、分離信号生成部４０１と、逆周波数変換部１０４とで構成される処理過程である。２つ目の処理過程は、分離行列生成部１０２で構成される処理過程である。前者の処理過程は分離信号を出力するため、後者の処理過程と異なり各処理部を毎フレーム動作させる必要がある。もし、２つの処理過程の処理時間の合計が１フレームの時間長以下ならば、図３３に示すように各処理部を順次に動作させてもよい。なお、図３３のｎはある時刻におけるフレームのフレーム番号である。Ｔｃは周波数変換部１００の処理時間である。Ｔｍはデータ選択記憶部４００の処理時間である。Ｔｗは分離行列生成部１０２の処理時間である。Ｔｓは分離信号生成部４０１の処理時間である。Ｔｃ’は逆周波数変換部１０４の処理時間である。この場合、周波数変換部１００、分離信号生成部４０１、逆周波数変換部１０４、データ選択記憶部４００、分離行列生成部１０２の順序で動作する。なお、図３０を参照して説明した第２の実施形態との差異は、第２の実施形態では周波数変換部１００の次に動作していたデータ選択記憶部４００が、本実施形態では逆周波数変換部１０４の次に動作し、これに伴い分離行列生成部１０２が最後に動作する点である。これは、本実施形態が周波数領域分離信号の解析結果に基づき周波数領域入力信号を記憶するからである。
しかし、一般に分離行列生成部１０２の処理時間は非常に長いため、前述の２つの処理過程の処理時間の合計が１フレームの時間長を超えることが多い。この場合は、第４の実施形態を実時間で動作させるために、分離行列生成部１０２は、図３４に示すように１フレームにつき、ＴｗＭ＝Ｔｗ／Ｍの時間区間のみ動作し、Ｍフレームで１回の学習計算を行ってもよい。ただし、ＭはＴｗＭ≦（１フレームの時間長）−（Ｔｃ＋Ｔｍ＋Ｔｓ＋Ｔｃ’）を満たす値である。この場合、周波数変換部１００、分離信号生成部４０１、逆周波数変換部１０４、データ選択記憶部４００、分離行列生成部１０２の順序で動作させてもよい。
なお、図３１を参照して説明した第２の実施形態との差異は、第２の実施形態では周波数変換部１００の次に動作していたデータ選択記憶部４００が、本実施形態では逆周波数変換部１０４の次に動作する点である。これは、本実施形態は、周波数領域分離信号の解析結果に基づき、周波数領域入力信号を記憶するからである。本実施形態の順番で動作させた場合、分離行列生成部１０２の学習計算はフレームｎ＋Ｍで終了する。分離信号生成部４０１は、その学習の結果である分離行列を、フレームｎ＋Ｍ＋１の処理で利用することができる。なお、分離行列生成部１０２は、Ｍフレームで１回の学習計算を行うため、バッファが必要になる。すなわち、バッファは、分離行列生成部１０２が学習計算している間に入力されたＭフレームの周波数領域入力信号を一時記憶する必要がある。
または、図３５に示すように前述の２つの処理過程を並列に動作させてもよい。この場合、周波数変換部１００、分離信号生成部４０１、逆周波数変換部１０４、データ選択記憶部４００は毎フレーム動作する。また、分離行列生成部１０２は、分離行列の学習計算に要する処理時間Ｔｗより大きい整数の中で最も小さい整数Ｍフレームごとに学習計算を行う。なお、図３２を参照して説明した第２の実施形態との差異は、第２の実施形態では周波数変換部１００の次に動作していたデータ選択記憶部４００は、本実施形態では逆周波数変換部１０４の次に動作することである。その理由は、本実施形態は、周波数領域分離信号の解析結果に基づき、周波数領域入力信号を記憶するためである。これに伴い、分離行列生成部１０２の動作タイミングが（Ｔｓ＋Ｔｃ’）分だけ遅くなる。また、分離信号生成部４０１は、フレームｎ＋Ｍで得られた新しい分離行列をフレームｎ＋Ｍ＋１の処理で利用することができる。なお、分離行列生成部１０２が学習計算している間に入力されたＭフレームの周波数領域入力信号を一時記憶するバッファが別途必要となる。
以上のように、本実施形態には、全ての音源の音源信号がどの入力信号にも混在していないことに起因する分離性能の劣化を低減するという効果がある。
その理由は、本実施形態は、全ての音源信号が混在した同時存在状態の周波数領域入力信号を複数選択し、選択された複数の同時存在状態の周波数領域入力信号を用いて分離行列を算出するような構成を持つからである。
［第５の実施形態］
次に、本発明の第５実施形態について図面を参照して詳細に説明する。
図１４は、本実施形態の信号分離装置の構成を表す図である。
図１４を参照すると、本実施形態の構成は、データ選択記憶部４００の代わりにデータ選択記憶部６００を含む点のみが、図９に示す本発明の第４の実施形態の構成と異なり、他は同じである。以下、本実施形態と第４の実施形態との相違点を中心に説明する。
図１５は本実施形態のデータ選択記憶部６００の構成を表す図である。
図１５を参照すると、本実施形態のデータ選択記憶部６００は、入力信号解析部５００と、選択制御部３００と、データ記憶部３０１とを含む。
入力信号解析部５００は図１０に示す第４の実施形態の入力信号解析部５００と同じであり、データ記憶部３０１及び選択制御部３００は、それぞれ図７に示す第３の実施形態のデータ記憶部３０１及び選択制御部３００と同じであるため、説明を省略する。なお、本実施形態は、図７を参照して説明した第３の実施形態と比べると、入力信号解析部２００が入力信号解析部５００に置換されている点が異なる。これに伴い、本実施形態は、選択制御部３００に入力される解析値が無音状態ではなく音源信号の同時存在状態に基づくもの変更されている点でも、第３の実施形態と異なる。。
次に、本実施形態の信号分離装置の動作について図面を参照して詳細に説明する。
図１６は、本実施形態の信号分離装置の動作を表すフローチャートである。以下、本実施形態の動作と、図１３に示す第４の実施形態の動作との相違点を中心に説明する。
図１６と、図１３に示す第４の実施形態の動作を表すフローチャートを比較すると、図１６のステップＳ４１〜Ｓ４６、Ｓ５０は、それぞれ、図１３のステップＳ３１〜Ｓ３７に対応する。ステップＳ４１からステップＳ４４は、図１３のステップＳ３１〜Ｓ３４と同じであるので説明を省略する。また、入力信号が同時存在状態である場合（ステップＳ４５、Ｙｅｓ）の動作も、図１３に示す第４の実施形態の動作におけるステップＳ３５、Ｙｅｓの同時存在状態である場合の動作と同じであるので、説明を省略する。
入力信号が同時存在状態でない（非同時存在状態である）場合（ステップＳ４５、Ｎｏ）、選択制御部３００は非同時存在状態の継続時間を測定する（ステップＳ４７）。継続時間が所定の時間未満である場合（ステップＳ４８、Ｎｏ）、分離行列生成部１０２はデータ記憶部３０１に格納されている複数フレームの周波数領域入力信号をもとに、分離行列を生成する（ステップＳ５０）。
一方、継続時間が所定の時間以上である場合（ステップＳ４８、Ｙｅｓ）、選択制御部３００は、データ記憶部３０１に格納されている全ての周波数領域入力信号を破棄する初期化を行う（ステップＳ４９）。
以上のように、本実施形態には、第４の実施形態と同様、全ての音源の音源信号がどの入力信号にも混在していないことに起因する分離性能の劣化を低減するという効果がある。
その理由は、本実施形態は、全ての音源信号が混在した同時存在状態の周波数領域入力信号を複数選択し、選択された複数の同時存在状態の周波数領域入力信号を用いて分離行列を算出するような構成を持つからである。
本実施形態には、さらに、非同時存在状態中に音源移動などの環境変化が生じても、非同時存在状態中の終了後に、生じた環境の変化に速やかに追従できると言う効果がある。すなわち、本実施形態には、非同時存在状態中に環境変化が生じた場合、非同時存在状態終了後、変化後の環境における混合信号から正しい分離信号を生成することができる、変化後の環境に対応した分離行列を生成するまでの時間を短縮するという効果がある。
その理由は、本実施形態は、周波数領域分離信号を解析し、音源信号の非同時存在状態の継続時間に応じてデータ記憶部３０１を初期化するように構成されているからである。そのため、非同時存在状態中に音源移動などの環境変化が生じた場合、環境変化後において、環境変化前の周波数領域入力信号がデータ記憶部３０１に含まれない。これにより、環境変化後の分離行列の生成において、環境変化前の周波数領域入力信号は学習に使われない。また、非同時存在状態後の周波数領域入力信号を新たに記憶することができる。従って、環境変化後の状態を反映した分離行列を速やかに算出することができるため、無音状態後の追従性を改善するという効果が得られる。
［第６の実施形態］
次に、本発明の第６の実施形態について図面を参照して詳細に説明する。
図１７は本実施形態の信号分離装置の構成を表す図である。
図１７を参照すると、本実施形態は、データ選択記憶部４００の代わりにデータ選択記憶部７０２を含む点のみが、図９に示す第４の実施形態の構成と異なり、他は同じである。以下、本実施形態と第４の実施形態との相違点を中心に説明する。
図１８は、本実施形態のデータ選択記憶部７０２の構成を表す図である。
図１８を参照すると、本実施形態のデータ選択記憶部７０２は、入力信号解析部７００と、選択制御部７０１と、データ記憶部３０１とを含む。
入力信号解析部７００は、図１０に示す第４の実施形態の入力信号解析部５００と同様の動作により、音源信号の同時存在状態を表す解析値を算出し、選択制御部７０１に出力する。また、入力信号解析部７００は周波数領域分離信号の類似度ＳＹｉＹｊを算出し、選択制御部７０１に出力する。このＳＹｉＹｊは、例えば、ｉ番目の周波数領域分離信号Ｙｉ（ｆ）とｊ番目の周波数領域分離信号Ｙｊ（ｆ）を用いて次式のように算出してもよい。
【数６】
2011074702.tif 000008
数６において、Ｎは周波数変換の変換ブロック長の１／２を、＊は複素共役を表している。
また、ＳＹｉＹｊは、例えば、次式によって算出してもよい。
【数７】
2011074702.tif 000009
選択制御部７０１は、図１０に示す第４の実施形態の選択制御部２０１と同様の動作により、解析値に基づき更新情報を設定し、周波数領域入力信号と更新情報をデータ記憶部３０１に出力する。また、選択制御部７０１は、データ記憶部３０１に記憶されている周波数領域入力信号を初期化するための初期化情報を類似度に基づき設定し、初期化情報をデータ記憶部３０１に出力する。選択制御部７０１は、例えば、類似度が閾値以上であれば環境変化が生じたとみなして初期化情報を１に設定し、それ以外であれば初期化情報を０に設定すればよい。なお、正しい分離行列が算出できていれば、周波数領域分離信号は互いに異なる信号となり、類似度は小さくなる。したがって、類似度が大きければ、分離行列が適切ではない、すなわち、音源移動などの環境変化が生じたとみなすことができる。このように、選択制御部７０１は、類似度を用いた解析により、環境変化を検出できる。
なお、ＳＹｉＳＹｊは異なるｉ、ｊの組み合わせの数だけ存在する。異なるｉとｊの組み合わせが複数存在する場合、値が閾値を超えたＳＹｉＳＹｊの個数が所定の個数を超えたとき、環境変化が生じたとみなすことにすればよい。環境変化が生じたとみなすための、値が閾値を超えたＳＹｉＳＹｊの個数は、目的に応じて適宜決定すればよい。以下の説明における、「類似度が閾値を超える場合」には、異なるｉとｊの組み合わせが複数存在し、値が閾値を超えたＳＹｉＹｊの個数が所定の個数を超える場合が含まれる。
また、選択制御部７０１は、図１５に示す第５の実施形態の選択制御部３００と同様の動作により音源信号の非同時存在状態の継続時間を測定し、上述の類似度と測定した継続時間を組み合わせて、例えば次のように初期化情報を設定してもよい。選択制御部７０１は、例えば、類似度と継続時間の一方が閾値以上の場合初期化情報を１に設定し、それ以外の場合初期化情報を０に設定すればよい。
データ記憶部３０１は複数フレームの周波数領域入力信号を記憶し、更新情報と周波数領域入力信号が新たに入力された場合、更新情報が示すフレームの周波数領域入力信号を破棄し、入力された周波数領域入力信号を新たに記憶すればよい。また、データ記憶部３０１は、初期化情報が１ならば、記憶している周波数領域入力信号を全て破棄すればよい。
また、本実施形態は、前述のような音源信号の同時存在状態を表す解析値ではなく、同時存在状態、単独状態、無音状態のいずれかを表す解析値を用いてもよい。この場合、入力信号解析部７００と選択制御部７０１は、例えば次のように動作する。
入力信号解析部７００は、図１０に示す第４の実施形態の入力信号解析部５００と同様の動作により、音源信号の同時存在状態、単独状態または無音状態のいずれかを表す解析値を設定して選択制御部７０１に出力すればよい。選択制御部７０１は図１０の選択制御部２０１と同様の動作により、解析値に基づき更新情報を設定し、周波数領域入力信号と更新情報をデータ記憶部３０１に出力すればよい。
次に、本実施形態の信号分離装置全体の動作を、図面を参照して詳細に説明する。
図１９は本実施形態の動作を表すフローチャートである。以下、図１３に示す第４の実施形態の動作を示すフローチャートとの相違点を中心に説明を行う。図１９のステップＳ５１〜Ｓ５３は図１３のステップＳ３１〜Ｓ３３と同じであるので、説明を省略する。
入力信号解析部７００は、周波数領域分離信号を解析し、音源信号が同時存在状態か否かを判断するとともに（ステップＳ５４）、類似度ＳＹｉＹｊの算出を行う（ステップＳ５５）。類似度が閾値以上の場合（ステップＳ５６、Ｙｅｓ）、選択制御部７０１はデータ記憶部３０１を初期化し（ステップＳ５７）、現在のフレームの信号に対する処理を終了する。
類似度が閾値未満の場合（ステップＳ５６、Ｎｏ）、同時存在状態であるなら（ステップＳ５８、Ｙｅｓ）、選択制御部７０１は周波数領域分離信号をデータ記憶部３０１に記憶し（ステップＳ５９）、ステップＳ５９に進む。同時存在状態でないなら（ステップＳ５８、Ｎｏ）、ステップＳ５９に進む。分離行列生成部１０２は、図１３のステップＳ３７と同様に、分離行列を生成する（ステップＳ６０）。
本実施形態には、第４の実施形態と同様、全ての音源の音源信号がどの入力信号にも混在していないことに起因する分離性能の劣化を低減するという効果がある。
その理由は、本実施形態は、全ての音源信号が混在した同時存在状態の周波数領域入力信号を複数選択し、選択された複数の同時存在状態の周波数領域入力信号を用いて分離行列を算出するような構成を持つからである。
本実施形態には、さらに、音源移動などの環境変化が生じても、生じた環境の変化に速やかに追従できると言う効果がある。すなわち、本実施形態には、環境変化が生じた場合、環境が変化した後、変化後の環境における混合信号から正しい分離信号を生成することができる、変化後の環境に対応した分離行列を生成するまでの時間を短縮するという効果がある。
その理由は、本実施形態は、周波数領域分離信号の類似度を用いて音源移動などの環境変化を検出し、その結果に基づきデータ記憶部３０１を初期化するように構成されているからである。そのため、環境変化が生じた場合、環境変化後において、環境変化前の周波数領域入力信号がデータ記憶部３０１に含まれない。これにより、環境変化後の分離行列の生成において、環境変化前の周波数領域入力信号は学習に使われない。また、音源移動などの環境変化後の周波数領域入力信号を新たに記憶することができる。従って、環境変化後の状態を反映した分離行列を速やかに算出することができるため、環境変化時の追従性を改善するという効果が得られる。
［第７の実施形態］
次に、本発明の第７の実施形態について図面を参照して詳細に説明する。
図２０は本実施形態の信号分離装置の構成を表す図である。
図２０を参照すると、本実施形態は、データ選択記憶部４００の代わりにデータ選択記憶部８０２を含む点のみが、図９に示す第４の実施形態の構成と異なり、他は同じである。以下、本実施形態の構成と第４の実施形態の構成の相違点を中心に説明する。
図２１は本実施形態のデータ選択記憶部８０２の構成を表す図である。
図２１を参照すると、本実施形態のデータ選択記憶部８０２は、入力信号解析部８００と、選択制御部８０１と、データ記憶部２０２とを含む。
入力信号解析部８００は、図４に示す第２の実施形態の入力信号解析部２００と同様の動作により、無音状態を表す解析値を算出し、選択制御部８０１に出力する。また、入力信号解析部８００は、図１０に示す第４の実施形態の入力信号解析部５００と同様の動作により、音源信号の同時存在状態を表す解析値を算出し、選択制御部８０１に出力する。
選択制御部８０１は、無音状態を示す解析値と音源信号の同時存在状態を示す解析値の、２つの解析値を統合した統合解析値を算出する。選択制御部８０１は、例えば、２つの解析値の相加平均値あるいは相乗平均値を統合解析値とすればよい。選択制御部８０１は、第４の実施形態における解析値に代えて、統合解析値に基づいて、図１０に示す第４の実施形態の選択制御部２０１と同様の動作により更新情報を設定し、周波数領域入力信号と更新情報をデータ記憶部２０２に出力すればよい。
データ記憶部２０２は、複数フレームの周波数領域入力信号を記憶し、更新情報と周波数領域入力信号が新たに入力された場合、更新情報が示すフレームの周波数領域入力信号を破棄し、入力された周波数領域入力信号を新たに記憶すればよい。
次に、本実施形態の信号分離装置全体の動作を、図面を参照して詳細に説明する。
図２２は本実施形態の動作を表すフローチャートである。以下、図１３に示す第４の実施形態の動作との相違点を中心に説明する。
図２２を参照すると、本実施形態の動作におけるステップＳ６１〜ステップＳ６３は、図１３に示す第４の実施形態のステップＳ３１〜ステップＳ３３と同じなので、説明を省略する。
データ選択記憶部８０２の入力信号解析部８００は、周波数変換部１００が生成した周波数領域入力信号と分離信号生成部４０１が生成した周波数領域分離信号とをそれぞれ解析して上述の２つの解析値を設定し、選択制御部８０１に送信する（ステップＳ６４）。
選択制御部８０１は受信した２つの解析値から統合解析値を算出する（ステップＳ６５）。選択制御部８０１が算出した統合解析値が閾値未満の場合（ステップＳ６６、Ｎｏ）、ステップＳ６８に進む。統合解析値が閾値以上の場合（ステップＳ６６、Ｙｅｓ）、統合解析値を算出したフレームの周波数領域入力信号を、データ記憶部２０２に格納する（ステップＳ６７）。
分離行列生成部１０２は、データ記憶部２０２に格納されている複数フレームの周波数領域入力信号を元に、分離行列を生成する（ステップＳ６８）。
以上のように、本実施形態には、無音あるいは、音源信号が混在していないことに起因する分離性能の劣化を低減するという効果がある。
その理由は、本実施形態の信号分離装置は、無音状態を表す解析値と音源信号の同時存在状態を表す解析値とを用いて算出した統合解析値に基づき選択した、複数の周波数領域入力信号を用いて分離行列を算出する構成を有するからである。統合解析値に基づき選択した周波数領域入力信号は、有音状態あるいは同時存在状態であるため、無音あるいは、音源信号が混在していないことに起因する分離性能の劣化を低減できる。
［第８の実施形態］
次に、本発明の第８の実施形態について図面を参照して詳細に説明する。
図２３は、本実施形態の信号分離装置の構成を示す図である。
図２３を参照すると、本実施形態は、データ選択記憶部４００の代わりにデータ選択記憶部９０１を含む点のみが、図９に示す第４の実施形態の構成と異なり、他は同じである。以下、本実施形態と第４の実施形態との相違点を中心に説明する。
図２４は本実施形態のデータ選択記憶部９０１の構成を表す図である。
図２４に示すように、本実施形態のデータ選択記憶部９０１は、入力信号解析部８００と、選択制御部９００と、データ記憶部３０１とを含む。
入力信号解析部８００は、図４に示す第２の実施形態の入力信号解析部２００と同様の動作により、無音状態を表す解析値を算出し、選択制御部９００に出力する。また、入力信号解析部８００は、図１０に示す第４の実施形態の入力信号解析部５００と同様の動作により、音源信号の同時存在状態を表す解析値を算出し、選択制御部９００に出力する。
選択制御部９００は、無音状態を表す解析値及び音源信号の同時存在状態を表す解析値の、２つの解析値を統合した統合解析値を算出する。選択制御部９００は、例えば、２つの解析値の相加平均値あるいは相乗平均値を統合解析値とすればよい。選択制御部９００は、第４の実施形態における解析値に代えて統合解析値に基づき、図１０に示す第４の実施形態の選択制御部２０１と同様の動作により更新情報を設定し、周波数領域入力信号と更新情報をデータ記憶部３０１に出力すればよい。また、選択制御部９００は、データ記憶部３０１に記憶されている周波数領域入力信号を初期化するための初期化情報を統合解析値に基づき設定し、初期化情報をデータ記憶部３０１に出力すればよい。選択制御部９００は、例えば、統合解析値が閾値より小さい状態の継続時間を測定し、継続時間が所定の閾値以上であれば、データ記憶部３０１に記憶されている周波数領域入力信号を初期化するように、初期化情報を１に設定すればよい。選択制御部９００は、継続時間が所定の閾値未満であれば、初期化情報を０に設定すればよい。
また、選択制御部９００は、無音状態を表す解析値と、音源信号の同時存在状態を表す解析値と、統合解析値との３種類の解析値の内、一つの解析値を使用して前述の実施形態と同様に更新情報を設定してもよい。また、選択制御部９００は、前述の３種類の解析値のうち、一つの解析値を使用して前述の実施形態と同様に初期化情報を設定してもよい。なお、無音状態を表す解析値を使用して更新情報と初期化情報を設定する場合は第３の実施形態と同様の効果が得られる。また、音源信号の同時存在状態を表す解析値を使用して更新情報と初期化情報を設定する場合は第５の実施形態と同様の効果が得られる。
データ記憶部３０１は、複数フレームの周波数領域入力信号を記憶し、更新情報と周波数領域入力信号が新たに入力された場合、更新情報が示すフレームの周波数領域入力信号を破棄し、入力された周波数領域入力信号を新たに記憶すればよい。また、データ記憶部３０１は、初期化情報が１ならば、記憶している周波数領域入力信号を全て破棄すればよい。
次に、本実施形態の信号分離装置全体の動作を、図面を参照して詳細に説明する。
図２５は、本実施形態の信号処理装置の動作を示すフローチャートである。以下、図２２に示す第７の実施形態の動作との相違点を中心に説明する。
図２５の本実施形態の動作と図２２に示す第７の実施形態の動作とを比較すると、本実施形態では統合解析値が閾値未満の時間が一定時間以上継続した場合、データ記憶部３０１の初期化を行う点が異なる。図２５のステップＳ７１〜ステップＳ７５の動作は、図２２のステップＳ６１〜Ｓ６５の動作と同じなので、説明を省略する。
データ選択記憶部９０１の選択制御部８０１は、算出した統合解析値が閾値以上である場合（ステップＳ７６、Ｙｅｓ）、その統合解析値を算出したフレームの周波数領域入力信号を、データ記憶部３０１に格納し（ステップＳ７７）、ステップＳ７８に進む。
選択制御部８０１は、算出した統合解析値が閾値未満である場合（ステップＳ７６、Ｎｏ）、統合解析値が継続して所定の閾値未満である時間を測定する（ステップＳ７９）。ステップＳ７９で測定した時間が所定の閾値未満の場合（ステップＳ８０、Ｎｏ）、ステップＳ７８に進む。ステップＳ７９で測定した時間が所定の閾値以上の場合（ステップＳ８０、Ｙｅｓ）、選択制御部９００は、データ記憶部３０１に記憶されている周波数領域入力信号を全て破棄する初期化を行い（ステップＳ８１）、現フレームに対する処理を終了する。
ステップＳ７８において、分離行列生成部１０２は、データ記憶部３０１に格納されている複数フレームの周波数領域入力信号に基づいて、分離行列を生成する（ステップＳ７８）。
以上のように、本実施形態には、第７の実施形態と同様、分離性能の劣化を低減するという効果がある。
その理由は、本実施形態の信号分離装置は、無音状態を表す解析値と音源信号の同時存在状態を表す解析値とを用いて算出した統合解析値に基づき選択した、複数の周波数領域入力信号を用いて分離行列を算出する構成を有するからである。
本実施形態には、さらに、無音状態中あるいは非同時存在中に音源移動などの環境変化が生じても、生じた環境の変化に速やかに追従できると言う効果がある。すなわち、本実施形態には、無音状態中あるいは非同時存在状態中に環境変化が生じた場合、無音状態あるいは非同時存在状態の終了後、変化後の環境における混合信号から正しい分離信号を生成することができる、変化後の環境に対応した分離行列を生成するまでの時間を短縮するという効果がある。
その理由は、本実施形態は、算出した無音状態または非同時存在状態であるか否かを表す統合解析値に基づき、無音状態または非同時存在状態の継続時間に応じてデータ記憶部３０１を初期化するように構成されているからである。本実施形態の統合解析値は、所定の値以下である場合、無音状態または非同時存在状態であるとみなすことができる。無音状態または非同時存在状態が一定時間以上継続した場合データ記憶部３０１を初期化するので、その間に環境変化が生じた場合、環境変化後において、環境変化前の周波数領域入力信号がデータ記憶部３０１に含まれない。これにより、環境変化後の分離行列の生成において、環境変化前の周波数領域入力信号は学習に使われない。また、音源移動などの環境変化後の周波数領域入力信号を新たに記憶することができる。従って、環境変化後の状態を反映した分離行列を速やかに算出することができるため、無音状態または非同時存在状態の終了後の追従性を改善するという効果が得られる。
［第９の実施形態］
次に、本発明の第９の実施形態について図面を参照して詳細に説明する。
図２６は本実施形態の信号分離装置の構成を表す図である。
図２６を参照すると、本実施形態の構成は、データ選択記憶部８０２の代わりにデータ選択記憶部１００２を含む点のみが、図２０に示す第７の実施形態の構成と異なり、他の構成は同じである。以下、本実施形態と第７の実施形態の相違点を中心に説明する。
図２７は本実施形態のデータ選択記憶部１００２の構成を表す図である。
図２７を参照すると、本実施形態のデータ選択記憶部１００２は、入力信号解析部１０００と、選択制御部１００１と、データ記憶部３０１とを含む。
入力信号解析部１０００は、図４に示す第２の実施形態の入力信号解析部２００と同様の動作により、無音状態を表す解析値を算出し、選択制御部１００１に出力する。また、入力信号解析部１０００は、図１０に示す第４の実施形態の入力信号解析部５００と同様の動作により、音源信号の同時存在状態を表す解析値を算出し、選択制御部１００１に出力する。また、入力信号解析部１０００は、図１８に示す第６の入力信号解析部７００と同様の動作により、前述の、周波数領域分離信号の類似度ＳＹｉＹｊを算出し、選択制御部１００１に出力する。さらに、入力信号解析部１０００は、周波数領域入力信号と周波数領域分離信号の類似度ＳＸｉＹｊを算出し、選択制御部１００１に出力する。入力信号解析部１０００は、ＳＸｉＹｊを、例えば、ｉ番目の周波数領域入力信号Ｘｉ（ｆ）とｊ番目の周波数領域分離信号Ｙｊ（ｆ）を用いて、次式に従って算出してもよい。
【数８】
2011074702.tif 000010
数８において、、Ｎは周波数変換の変換ブロック長の１／２を、＊は複素共役を表している。
また、入力信号解析部１０００は、ＳＸｉＹｊを、例えば、次式に従って算出してもよい。
【数９】
2011074702.tif 000011
選択制御部１００１は、無音状態を表す解析値及び音源信号の同時存在状態を表す解析値の、２つの解析値を統合した統合解析値を算出する。選択制御部１００１は、例えば、２つの解析値の相加平均値あるいは相乗平均値を統合解析値とすればよい。選択制御部１００１は、図１０に示す第４の実施形態の選択制御部２０１と同様の動作により、統合解析値に基づき更新情報を設定し、周波数領域入力信号と更新情報をデータ記憶部３０１に出力する。
また、選択制御部１００１は、前述のＳＹｉＹｊ及びＳＸｉＹｊの２つの類似度を統合した統合類似度を算出する。選択制御部１００１は、例えば、ＳＹｉＹｊとＳＸｉＹｊの相加平均値あるいは相乗平均値を統合類似度とする。選択制御部１００１は、算出した統合類似度に基づき、データ記憶部３０１に記憶されている周波数流域入力信号を初期化するための初期化情報を設定し、データ記憶部３０１に出力する。選択制御部１００１は、例えば、統合類似度が閾値以上であれば、環境変化が生じたとみなし、初期化情報を１に設定すればよい。選択制御部１００１は、統合類似度が閾値未満であれば、初期化情報を０に設定すればよい。なお、正しい分離行列が算出できていれば、周波数領域入力信号と周波数領域分離信号は互いに異なる信号となるので、ＳＸｉＹｊは小さくなる。したがって、ＳＸｉＹｊが大きければ、分離行列が適切ではない、つまり、環境変化が生じたとみなすことができる。
また、選択制御部１００１は、無音状態を表す解析値と、音源信号の同時存在状態を表す解析値と、統合解析値との３種類の解析値の内、一つの解析値を使用して、前述の実施形態と同様の動作により更新情報を設定してもよい。また、選択制御部１００１は、周波数領域分離信号の類似度と、周波数領域入力信号と周波数領域分離信号の類似度と、統合類似度との３種類の類似度の内、一つの類似度を使用して、前述の実施形態と同様の動作により初期化情報を設定してもよい。
また、更新初期化制御部１００１は、更新情報の設定に用いた解析値を使用して前述の実施形態と同様の動作により継続時間を測定し、継続時間と類似度を組み合わせて初期化情報を設定してもよい。更新初期化制御部１００１は、例えば、類似度と継続時間の少なくともどちらか一方が閾値以上であれば初期化情報を１に設定すればよい。更新初期化制御部１００１は、類似度と継続時間が共に閾値未満であれば初期化情報を０に設定すればよい。
なお、音源信号の非同時状態を表す解析値を使用して更新情報を設定し、周波数領域分離信号の類似度を使用して初期化情報を設定する場合は、第６の実施形態と同様の効果が得られる。また、無音状態を表す解析値を使用して更新情報と初期化情報を設定する場合は、第３の実施形態と同様の効果が得られる。また、音源信号の同時存在状態を表す解析値を使用して更新情報と初期化情報を設定する場合は、第５の実施形態と同様の効果が得られる。また、統合解析値を使用して更新情報と初期化情報を設定する場合は、第８の実施形態と同様の効果が得られる。
データ記憶部３０１は複数フレームの周波数領域入力信号を記憶し、更新情報と周波数領域入力信号が新たに入力された場合、更新情報が示すフレームの周波数領域入力信号を破棄し、入力された周波数領域入力信号を新たに記憶すればよい。また、データ記憶部３０１は、初期化情報が１ならば、記憶している周波数領域入力信号を全て破棄すればよい。
次に、本実施形態の信号分離装置全体の動作について、図面を参照して詳細に説明する。
図２８は本実施形態の信号分離装置の動作を表すフローチャートである。ここでは、本実施形態の動作と、図２５に示す第８の実施形態の動作との相違点を中心に説明する。
図２８と、図２５に示す第８の実施形態の動作とを比較すると、図２８のステップＳ８２からステップＳ８５と、ステップＳ８９の動作は、図２５のステップＳ７１からステップＳ７４の動作と、ステップＳ７５の動作と同じであるので、説明を省略する。また、ステップＳ８６の動作は、図１９のステップＳ５５の動作と同じであるので、説明を省略する。
選択制御部１００１は、ステップＳ８６の後、周波数領域入力信号と周波数領域分離信号の類似度ＳＸｉＹｊを算出する（ステップＳ８７）。選択制御部１００１は、統合解析値を算出（ステップＳ８８）した後、ステップＳ８６及びステップＳ８７で算出した２つの類似度から、統合類似度を算出する（ステップＳ８９）。算出した統合類似度が所定の閾値以上の場合（ステップＳ９０、Ｙｅｓ）、選択制御部１００１は、データ記憶部３０１に格納されている周波数領域入力信号を全て破棄する初期化を行い（ステップＳ９６）、現フレームに対する処理を終了する。算出した統合類似度が所定の閾値未満の場合（ステップＳ９０、Ｎｏ）、ステップＳ９１に進む。
ステップＳ９１からステップＳ９６の動作は、第８の実施形態のステップＳ７１からステップＳ８１の動作と同じであるので、説明を省略する。
以上のように、本実施形態には、第７の実施形態と同様、分離性能の劣化を低減するという効果がある。
その理由は、本実施形態の信号分離装置は、無音状態を表す解析値と音源信号の同時存在状態を表す解析値とを用いて算出した統合解析値に基づき選択した、複数の周波数領域入力信号を用いて分離行列を算出する構成を有するからである。
また、本実施形態には、第８の実施形態と同様、無音状態中あるいは非同時存在中に音源移動などの環境変化が生じても、生じた環境の変化に速やかに追従できると言う効果がある。すなわち、本実施形態には、無音状態中あるいは非同時存在状態中に環境変化が生じた場合、無音状態あるいは非同時存在状態の終了後、変化後の環境における混合信号から正しい分離信号を生成することができる、変化後の環境に対応した分離行列を生成するまでの時間を短縮するという効果がある。
その理由は、本実施形態は、算出した無音状態または非同時存在状態であるか否かを表す統合解析値に基づき、無音状態または非同時存在状態の継続時間に応じてデータ記憶部３０１を初期化するように構成されているからである。無音状態または非同時存在状態が一定時間以上継続した場合データ記憶部３０１を初期化するので、その間に環境変化が生じた場合、環境変化後において、環境変化前の周波数領域入力信号がデータ記憶部３０１に含まれない。これにより、環境変化後の分離行列の生成において、環境変化前の周波数領域入力信号は学習に使われない。また、音源移動などの環境変化後の周波数領域入力信号を新たに記憶することができる。従って、環境変化後の状態を反映した分離行列を速やかに算出することができるため、無音状態または非同時存在状態の終了後の追従性を改善するという効果が得られる。
本実施形態には、さらに、音源移動等の環境変化が生じても、生じた環境の変化に速やかに追従できるという効果がある。すなわち、環境が変化した後、変化後の環境における混合信号から正しい分離信号を生成することができる、変化後の環境に対応した分離行列を生成するまでの時間を短縮するという効果がある。
その理由は、本実施形態は、周波数領域分離信号間の類似度と、周波数領域入力信号と周波数領域分離信号との間の類似度とにより算出した統合類似度を用いて音源移動などの環境変化を検出し、その結果に基づきデータ記憶部３０１を初期化するように構成されているからである。そのため、環境変化が生じた場合、環境変化後において、環境変化前の周波数領域入力信号がデータ記憶部３０１に含まれない。これにより、環境変化後の分離行列の生成において、環境変化前の周波数領域入力信号は学習に使われない。また、音源移動などの環境変化後の周波数領域入力信号を新たに記憶することができる。従って、環境変化後の状態を反映した分離行列を速やかに算出することができるため、環境変化時の追従性を改善することができる。
［第１０の実施形態］
図３４は本実施形態の信号分離装置の構成を表すブロック図である。
図３４を参照すると、本実施形態の信号分離装置は、コンピュータ１と、信号入力部２と、分離信号出力部３と、プログラム記憶部４を含む。
コンピュータ１は、プログラム記憶部４が記憶するプログラムを実行するＣＰＵ１０（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）と、データ記憶部５を含む。
信号入力部２は、コンピュータ１に入力信号を入力する。信号入力部２は、例えば、音声を入力する複数のマイクロホンなどの、コンピュータ１に信号を入力する複数のセンサである。
分離信号出力部３は、コンピュータ１から分離信号を出力する。分離信号出力部３は、例えば、音声を出力する複数のスピーカである。また、分離信号出力部３は、例えば、複数の信号の波形を画像として表示する表示装置や、複数の信号のデータを格納するための記憶媒体であってもよい。
プログラム記憶部４は、コンピュータ１を、第１〜第９の実施形態のいずれかの信号分離装置として動作させるためのプログラムを記憶する。コンピュータ１は、プログラム記憶部４が記憶するプログラムを読み出すことができる。プログラム記憶部４は、例えば、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＵＳＢ（Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ）メモリ等の取り外し可能な媒体やハードディスク装置などの記録媒体である。
データ記憶部５は、例えば、ハードディスク装置などの記憶装置である。データ記憶部５は、前述のデータ記憶部２０２又はデータ記憶装置３０１として動作する。
第１〜第９の実施形態の信号分離装置は、本実施形態のプログラム記憶部４が記憶するプログラムとコンピュータ１によって実現されてもよい。
以上、実施形態を参照して本発明を説明したが、本発明は上記実施形態に限定されるものではない。本発明の構成や詳細には、本発明のスコープ内で当業者が理解しうる様々な変更をすることができる。
この出願は、２００９年１２月１８日に出願された日本国出願特願２００９−２８７６７６を基礎とする優先権を主張し、その開示の全てをここに取り込む。
【産業上の利用可能性】
【００１１】
本発明は、信号分離装置や信号分離プログラムといった用途に適用できる。
【図１】
2011074702.tif 000012
【図２】
2011074702.tif 000013
【図３】
2011074702.tif 000014
【図４】
2011074702.tif 000015
【図５】
2011074702.tif 000016
【図６】
2011074702.tif 000017
【図７】
2011074702.tif 000018
【図８】
2011074702.tif 000019
【図９】
2011074702.tif 000020
【図１０】
2011074702.tif 000021
【図１１】
2011074702.tif 000022
【図１２】
2011074702.tif 000023
【図１３】
2011074702.tif 000024
【図１４】
2011074702.tif 000025
【図１５】
2011074702.tif 000026
【図１６】
2011074702.tif 000027
【図１７】
2011074702.tif 000028
【図１８】
2011074702.tif 000029
【図１９】
2011074702.tif 000030
【図２０】
2011074702.tif 000031
【図２１】
2011074702.tif 000032
【図２２】
2011074702.tif 000033
【図２３】
2011074702.tif 000034
【図２４】
2011074702.tif 000035
【図２５】
2011074702.tif 000036
【図２６】
2011074702.tif 000037
【図２７】
2011074702.tif 000038
【図２８】
2011074702.tif 000039
【図２９】
2011074702.tif 000040
【図３０】
2011074702.tif 000041
【図３１】
2011074702.tif 000042
【図３２】
2011074702.tif 000043
【図３３】
2011074702.tif 000044
【図３４】
2011074702.tif 000045
【図３５】
2011074702.tif 000046
【図３６】
2011074702.tif 000047
【手続補正書】
【提出日】平成24年6月6日(2012.6.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
所定の時間間隔内に入力された入力信号であるフレームを、周波数領域の信号である周波数領域入力信号に変換する周波数変換手段と、
前記フレームの、信号分離に用いられる分離行列の生成に対する有効性を解析する入力信号解析手段と、
入力される前記フレームのうち前記有効性の高い前記フレームを選択する選択制御手段と、
前記選択制御手段が選択した前記フレームの前記周波数領域入力信号を格納するデータ記憶手段と、
前記データ記憶手段に格納されている前記周波数領域入力信号を用いて、前記入力されるフレーム毎に前記分離行列を生成する分離行列生成手段と、を備え、
前記選択制御手段は、前記入力されるフレームの前記有効性と、過去に当該選択制御手段が選択した前記フレームの前記有効性とを比較することで、前記有効性の高い前記フレームを選択する、信号分離装置。
【請求項２】
前記選択制御手段は、前記フレームの有効性の解析の結果に基づき、所定の時間以上継続して前記新たなフレームが信号分離に適さない場合、前記データ記憶手段に記憶されている全てのデータを消去する初期化を行う
ことを特徴とする請求項１に記載の信号分離装置。
【請求項３】
前記入力信号は、複数のセンサの各々から入力された信号である入力センサ信号を複数含み、
前記周波数変換手段は、前記入力センサ信号の各々に対して、当該入力センサ信号を周波数領域の信号である周波数領域入力センサ信号に変換し、前記周波数領域入力センサ信号の各々を含む前記周波数領域入力信号を生成し、
前記信号分離装置は、さらに、
前記分離行列生成手段が生成した前記分離行列を用いて、前記周波数変換手段が生成した前記周波数領域入力信号から、信号源毎の周波数領域分離信号を生成する分離信号生成手段と、
前記周波数領域分離信号各々をそれぞれ時間領域信号に変換して、複数の分離信号を生成する逆周波数変換手段と
を含む請求項１又は２に信号分離装置。
【請求項４】
前記入力信号解析手段が、前記複数の入力センサ信号の少なくとも一つが無信号でない場合、前記フレームが信号分離に適すると判断し、前記複数の入力センサ信号の全てが無信号である場合、前記フレームが信号分離に適さないと判断する
請求項３に記載の信号分離装置。
【請求項５】
前記入力信号解析手段が、全ての前記分離信号が無信号でない場合、前記フレームが信号分離に適すると判断し、前記分離信号の少なくともいずれか一つが無信号である場合、前記フレームが信号分離に適さないと判断する
請求項３に記載の信号分離装置。
【請求項６】
前記入力信号解析手段が、前記複数の入力センサ信号の少なくとも一つが無信号でなく、全ての前記分離信号が無信号でない場合、前記フレームが信号分離に適すると判断し、それ以外の場合、前記フレームが信号分離に適さないと判断する
請求項３に記載の信号分離装置。
【請求項７】
前記入力信号解析手段が、
前記複数の分離信号の少なくともいずれか２つが互いに類似すると判定した場合と、
前記複数の入力センサ信号の少なくともいずれか一つが、前記複数の分離信号のいずれかに類似していると判定した場合と、
のいずれか一方又は双方の場合に、
前記選択制御手段が前記データ記憶手段に記憶されている全ての周波数領域入力信号を消去する初期化を行う
請求項３乃至６のいずれかに記載の信号分離装置。
【請求項８】
前記データ記憶手段が、前記複数の分離信号のそれぞれに対応付けられた領域を備え、
前記選択制御手段が、前記フレームに対応する前記周波数領域入力信号を、前記フレームから生成した前記複数の分離信号のうち無信号でない分離信号に対応付けられた前記領域に、前記フレームが入力された順に格納する
ことを特徴とする請求項３乃至７のいずれかに記載の信号分離装置。
【請求項９】
所定の時間間隔内に入力された入力信号であるフレームを、周波数領域の信号である周波数領域入力信号に変換し、
前記フレームの、信号分離に用いられる分離行列の生成に対する有効性を解析し、
入力される前記フレームのうち前記有効性の高い前記フレームを選択し、
選択した前記フレームの前記周波数領域入力信号をデータ記憶手段に格納し、
前記データ記憶手段に格納されている前記周波数領域入力信号を用いて、前記入力されるフレーム毎に前記分離行列を生成し、
前記入力されるフレームの前記有効性と、過去に選択した前記フレームの前記有効性とを比較することで、前記有効性の高い前記フレームを選択する
信号分離方法。
【請求項１０】
コンピュータを、
所定の時間間隔内に入力された入力信号であるフレームを、周波数領域の信号である周波数領域入力信号に変換する周波数変換手段と、
前記フレームの、信号分離に用いられる分離行列の生成に対する有効性を解析する入力信号解析手段と、
入力される前記フレームのうち前記有効性の高い前記フレームを選択する選択制御手段と、
前記選択制御手段が選択した前記フレームの前記周波数領域入力信号を格納するデータ記憶手段と、
前記データ記憶手段に格納されている前記周波数領域入力信号を用いて、前記入力されるフレーム毎に前記分離行列を生成する分離行列生成手段として機能させ、
前記選択制御手段は、前記入力されるフレームの前記有効性と、過去に当該選択制御手段が選択した前記フレームの前記有効性とを比較することで、前記有効性の高い前記フレームを選択する
信号分離プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】
信号分離装置、信号分離方法、及び信号分離プログラム
【補正対象項目名】    技術分野
【補正方法】          変更
【補正の内容】
【技術分野】
本発明は、信号処理装置、信号処理方法、及び信号処理プログラムに関し、特に、複数の信号が混在した混合信号を分離するための信号分離装置、信号分離方法、及び信号分離プログラムに関する。
【国際調査報告】
2011074702.tif 000048
2011074702.tif 000049