(57)【特許請求の範囲】
【請求項１】
複数のマイクロホンから構成されるマイクアレイによって収集された音から雑音を除去する雑音除去装置であって、
前記マイクアレイによって収集された音は、アナログ信号として前記雑音除去装置に入力され、
前記雑音除去装置は、マイクロプロセッサと、前記マイクロプロセッサに接続される記憶装置と、前記マイクロプロセッサに接続されるメモリと、前記マイクロプロセッサに接続され、前記アナログ信号をデジタル信号に変換するＡＤ変換装置と、を備え、
前記記憶装置は、前記マイクアレイによって収集された音に含まれる雑音を除去するための雑音抑圧フィルタを生成する雑音抑圧フィルタ生成プログラムと、前記雑音抑圧フィルタを用いて、前記マイクアレイによって収集された音に含まれる雑音を除去する雑音除去プログラムとを格納し、
前記雑音は、複数の属性を備え、
前記ＡＤ変換装置から入力されたデジタル信号から除去される雑音は、前記マイクアレイによって収集された音に含まれる、所定の動作を実行する機器の動作音であり、
前記雑音除去装置は、
前記機器から発生する雑音の各属性に対応するデジタル信号に基づいて、クラスタリング処理を実行して前記機器から発生する雑音の属性毎に複数の第１の雑音共分散行列を生成し、
前記各々の第１の雑音共分散行列を用いて、複数の前記雑音抑圧フィルタを生成し、
前記ＡＤ変換装置によって変換されたデジタル信号に前記各々の雑音抑圧フィルタを作用させ、雑音が除去されたデジタル信号の音量が最も小さくなる前記雑音抑圧フィルタを選択し、
前記選択された雑音抑圧フィルタを用いて、前記ＡＤ変換装置から入力されたデジタル信号から雑音を除去することを特徴とする雑音除去装置。
【請求項２】
請求項１に記載の雑音除去装置であって、
前記雑音除去装置は、前記機器を制御する制御部を介して前記機器と接続され、
前記機器から発生する雑音の属性を示す情報が、前記制御部から前記雑音除去装置に入力され、
前記雑音除去装置は、
前記入力された雑音の属性に基づいて、前記雑音の属性に対応する前記複数の第１の雑音共分散行列を選択し、
前記選択された各々の第１の雑音共分散行列を用いて、前記複数の雑音抑圧フィルタを生成することを特徴とする雑音除去装置。
【請求項３】
請求項２に記載の雑音除去装置であって、
前記ＡＤ変換装置から入力されたデジタル信号から目的共分散行列を生成し、
前記生成された目的共分散行列と前記選択された各々の第１の雑音共分散行列とを用いて、前記複数の雑音抑圧フィルタを生成することを特徴とする雑音除去装置。
【請求項４】
請求項１に記載の雑音除去装置であって、
前記機器から発生する雑音の属性は、前記雑音の発生源を特定する情報、雑音が発生している場合における前記雑音の発生源の状態、又は、前記雑音が発生したタイミングの少なくとも一つを含むことを特徴とする雑音除去装置。
【請求項５】
請求項１に記載の雑音除去装置であって、
前記マイクアレイによって収集された音の音源方向を推定し、
目的の音源方向以外から到来する音を雑音として前記目的の音源方向から到来した音から除去するための第２の雑音共分散行列を生成し、
前記第２の雑音共分散行列と前記各々の第１の雑音共分散行列とを足し合わせることによって、複数の第３の雑音共分散行列を生成し、
前記各々の第３の雑音共分散行列を用いて、前記複数の雑音抑圧フィルタを生成することを特徴とする雑音除去装置。
【請求項６】
複数のマイクロホンから構成されるマイクアレイによって収集された音から雑音を除去する雑音除去装置における雑音除去方法であって、
前記マイクアレイによって収集された音は、アナログ信号として前記雑音除去装置に入力され、
前記雑音除去装置は、マイクロプロセッサと、前記マイクロプロセッサに接続される記憶装置と、前記マイクロプロセッサに接続されるメモリと、前記マイクロプロセッサに接続され、前記アナログ信号をデジタル信号に変換するＡＤ変換装置と、を備え、
前記記憶装置は、前記マイクアレイによって収集された音から雑音を除去するための雑音抑圧フィルタを生成する雑音抑圧フィルタ生成プログラムと、前記雑音抑圧フィルタを用いて、前記マイクアレイによって集音された音から雑音を除去する雑音除去プログラムとを格納し、
前記雑音は、複数の属性を備え、
前記ＡＤ変換装置から入力されたデジタル信号から除去される雑音は、前記マイクアレイによって集音された音に含まれる、所定の動作を実行する機器の動作音であり、
前記方法は、
前記雑音除去装置が、前記マイクアレイによって収集された音に含まれる雑音に基づいて、複数の前記雑音抑圧フィルタを生成する第１のステップと、
前記雑音除去装置が、前記各々の雑音抑圧フィルタを前記デジタル信号に作用させて、雑音が除去されたデジタル信号の音量が最も小さくなる前記雑音抑圧フィルタを選択する第２のステップと、
前記雑音除去装置が、前記選択された雑音抑圧フィルタを用いて、前記ＡＤ変換装置から入力されたデジタル信号から雑音を除去する第３のステップと、を含み、
前記第１のステップは、
前記雑音除去装置が、前記機器から発生する雑音の各属性に対応するデジタル信号に基づいて、クラスタリング処理を実行して前記機器から発生する雑音の属性毎に複数の第１の雑音共分散行列を生成する第４のステップと、
前記雑音除去装置が、前記各々の第１の雑音共分散行列を用いて、前記複数の雑音抑圧フィルタを生成する第５のステップと、を含むことを特徴とする雑音除去方法。
【請求項７】
請求項６に記載の雑音除去方法であって、
前記雑音除去装置は、前記機器を制御する制御部を介して前記機器と接続され、
前記機器から発生する雑音の属性を示す情報が、前記制御部から前記雑音除去装置に入力され、
前記第４のステップは、
前記雑音除去装置が、前記入力された機器から発生する雑音の属性に基づいて、前記機器から発生する雑音の属性に対応する前記複数の第１の雑音共分散行列を選択する第６のステップと、
前記雑音除去装置が、前記選択された各々の第１の雑音共分散行列を用いて、前記複数の雑音抑圧フィルタを生成する第７のステップと、を含むことを特徴とする雑音除去方法。
【請求項８】
請求項７に記載の雑音除去方法であって、
前記第５のステップは、
前記雑音除去装置が、前記ＡＤ変換装置から入力されたデジタル信号から目的共分散行列を生成する第８のステップと、
前記雑音除去装置が、前記生成された目的共分散行列と、前記第６のステップにおいて選択された各々の第１の雑音共分散行列とを用いて、前記複数の雑音抑圧フィルタを生成する第９のステップと、を含むことを特徴とする雑音除去方法。
【請求項９】
請求項６に記載の雑音除去方法であって、
前記機器から発生する雑音の属性は、前記雑音の発生源を特定する情報、雑音が発生している場合における前記雑音の発生源の状態、又は、前記雑音が発生したタイミングの少なくとも一つを含むことを特徴とする雑音除去方法。
【請求項１０】
請求項６に記載の雑音除去方法であって、
さらに、前記雑音除去装置が、前記マイクアレイによって収集された音の音源方向を推定する第１０のステップと、
前記雑音除去装置が、目的の音源方向以外から到来する音を雑音として前記目的の音源方向から到来した音から除去するための第２の雑音共分散行列を生成する第１１のステップと、
前記雑音除去装置が、前記第２の雑音共分散行列と前記各々の第１の雑音共分散行列とを足し合わせて、複数の第３の雑音共分散行列を生成する第１２のステップと、
前記雑音除去装置が、前記各々の第３の雑音共分散行列を用いて、前記複数の雑音抑圧フィルタを生成する第１３のステップと、を含むことを特徴とする雑音除去方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のマイクロホンを用いて収集された音の中から、特定の音のみ抽出する雑音抑圧技術に関する。
【背景技術】
【０００２】
一般に、複数のマイクロホンを用いて収集された音の中から、特定の方向の音を抽出する技術として、最小分散ビームフォーマ法（例えば、Ｏ．Ｌ．Ｆｒｏｓｔ，ＩＩＩ，“Ａｎａｌｇｏｒｉｔｈｍ  ｆｏｒ  ｌｉｎｅａｒｌｙ  ｃｏｎｓｔｒａｉｎｅｄ  ａｄａｐｔｉｖｅ  ａｒｒａｙ  ｐｒｏｃｅｓｓｉｎｇ，“Ｉｎ  Ｐｒｏｃ．ＩＥＥＥ，ｖｏｌ．６０，ｎｏ．８，ｐｐ．９２６−９３５，１９７２．参照）などがある。最小分散ビームフォーマ法は、複数のマイクロホンから入力される入力信号に対して、空間的な指向特性を持つ線形フィルタを作用させることによって、特定方向の信号（音）のみ抽出する技術である。
しかし、最小分散ビームフォーマ法では、ロボット内部のアクチュエータの動作音などの内部から到来する雑音に対しては、アクチュエータの動作状態に応じて空間的な音源位置が時々刻々変化するため、空間的な死角を精度良く構成することが困難となり、抑圧性能が低いという問題があった。
また、単一マイクロホンでも適用可能なスペクトルサブトラクション法という雑音抑圧方式がある（例えば、Ｓ．Ｆ．Ｂｏｌｌ，“Ｓｕｐｐｒｅｓｓｉｏｎ  ｏｆ  ａｃｏｕｓｔｉｃ  ｎｏｉｓｅ  ｉｎ  ｓｐｅｅｃｈ  ｕｓｉｎｇ  ｓｐｅｃｔｒａｌ  ｓｕｂｔｒａｃｔｉｏｎ，”ＩＥＥＥ  Ｔｒａｎｓ．ＡＳＳＰ，Ｖｏｌ．２７，Ｎｏ．２，ｐｐ．１１３−１２０，１９７９．参照）。スペクトルサブトラクション法は、空間的な指向特性を用いて雑音を除去するのではなく、雑音の統計量を推定し、比較的振幅特性が定常な雑音を除去する技術である。
しかし、スペクトルサブトラクション法では、雑音の振幅特性が非定常な雑音である場合、除去性能が劣化するだけでなく、取得したい音声が大きく劣化する。例えば、ロボット内部のアクチュエータの動作音は、アクチュエータの動作状態によって音質が変化する非定常な雑音であるため、前述した問題が生じる。
【発明の概要】
【０００３】
ロボットのアクチュエータ動作音など、ロボット内部で生じる音源位置や音源の振幅特性が時々刻々と変化する非定常な雑音を高精度に除去することが課題である。
本発明の代表的な一例を示せば以下の通りである。すなわち、複数のマイクロホンから構成されるマイクアレイによって収集された音から雑音を除去する雑音除去装置であって、前記マイクアレイによって収集された音は、アナログ信号として前記雑音除去装置に入力され、前記雑音除去装置は、マイクロプロセッサと、前記マイクロプロセッサに接続される記憶装置と、前記マイクロプロセッサに接続されるメモリと、前記マイクロプロセッサに接続され、前記アナログ信号をデジタル信号に変換するＡＤ変換装置と、を備え、前記記憶装置は、前記マイクアレイによって収集された音に含まれる雑音を除去するための雑音抑圧フィルタを生成する雑音抑圧フィルタ生成プログラムと、前記雑音抑圧フィルタを用いて、前記マイクアレイによって収集された音に含まれる雑音を除去する雑音除去プログラムとを格納し、前記雑音は、複数の属性を備え、前記ＡＤ変換装置から入力されたデジタル信号から除去される雑音は、前記マイクアレイによって収集された音に含まれる、所定の動作を実行する機器の動作音であり、前記雑音除去装置は、前記機器から発生する雑音の各属性に対応するデジタル信号に基づいて、クラスタリング処理を実行して前記機器から発生する雑音の属性毎に複数の第１の雑音共分散行列を生成し、前記各々の第１の雑音共分散行列を用いて、複数の前記雑音抑圧フィルタを生成し、前記ＡＤ変換装置によって変換されたデジタル信号に前記各々の雑音抑圧フィルタを作用させ、雑音が除去されたデジタル信号の音量が最も小さくなる前記雑音抑圧フィルタを選択し、前記選択された雑音抑圧フィルタを用いて、前記ＡＤ変換装置から入力されたデジタル信号から雑音を除去することを特徴とする。
本発明によれば、雑音の属性に応じて、正確に雑音を除去することが可能となる。
【図面の簡単な説明】
【０００４】
図１は、本発明の第１の実施形態の内部雑音除去装置のハードウェア構成のブロック図である。
図２は、本発明の第１の実施形態の記憶装置に格納されたプログラムの一例のブロック図である。
図３は、本発明の内部雑音除去装置が実行する処理の一例のブロック図である。
図４は、本発明の第１の実施形態の内部雑音除去処理の詳細のブロック図である。
図５は、本発明の第１の実施形態の内部雑音シグナルの一例を示す説明図である。
図６は、本発明の第１の実施形態の内部雑音の種類の一例を示す説明図である。
図７は、本発明の第１の実施形態における３つのアクチュエータの動作状態に応じた内部雑音シグナルの種類を定義する一例のタイミングチャートである。
図８は、本発明の第１の実施形態のパワー最小化フィルタリングの処理のフローチャートである。
図９は、本発明の第１の実施形態における目的音共分散更新、雑音抑圧フィルタ更新、雑音共分散行列選択、及び内部雑音の発生状況の一例のタイミングチャートである。
図１０は、本発明の第１の実施形態の雑音共分散推定処理の詳細を説明するブロック図である。
図１１は、本発明の第１の実施形態のベクトルＶｑ，ｊ（ｚ，τ）のデータ構造を示す説明図である。
図１２は、本発明の第１の実施形態のクラスタリングにおける処理の詳細のフローチャートである。
図１３は、本発明の第２の実施形態の音声会議システムにおける内部雑音除去装置のハードウェア構成のブロック図である。
図１４は、本発明の第２の実施形態のキーボードの操作音に対応する内部雑音シグナルの一例を示す説明図である。
図１５は、本発明の第２の実施形態の各装置が実行する処理のブロック図である。
図１６は、本発明の第２の実施形態の音声会議システムにおけるユーザ使用シーンの一例を示す説明図である。
図１７は、本発明の第３の実施形態のタッチパネルを備える音声会議システムにおける内部雑音除去装置のハードウェア構成のブロック図である。
図１８は、本発明の第３の実施形態のタッチパネルの操作音に対応する内部雑音シグナルの一例を示す説明図である。
図１９は、本発明の第３の実施形態のタッチパネルを備える音声会議システムにおけるユーザ使用シーンの一例を示す説明図である。
図２０は、本発明の第４の実施形態の内部雑音除去処理を含む音声認識の処理の構成のブロック図である。
図２１は、本発明の第５の実施形態の実施形態の内部雑音除去処理の詳細のブロック図である。
図２２は、本発明の第１の実施形態のインデックスＩｎｄ（ｊ，τ）の一例を示す説明図である。
図２３は、本発明における音声認識機能を備えるロボットの一例を示す説明図である。
図２４は、本発明におけるプロジェクタを備えるビデオ会議システムの機器構成を示す説明図である。
図２５は、本発明におけるプロジェクタから発生する雑音の一例を示す説明図である。
【発明を実施するための形態】
【０００５】
本発明は、音声認識機能を備えるロボットやプロジェクタを備えるビデオ会議システムのように、音声収録機能を備えるシステムにおいて、アクチュエータ等から発生する雑音を効率的に除去するものである。
図２３は、本発明における音声認識機能を備えるロボットの一例を示す説明図である。
本発明の雑音除去機構は、例えば、図２３に示すような音声認識機能を備えるロボット２２０１に実装される。
ロボット２２０１は、ロボット２２０１の腕を制御するための腕制御アクチュエータ２２０２と、ロボット２２０１の脚を制御するための脚制御アクチュエータ２２０３とを備える。また、ロボット２２０１は、当該ロボット２２０１と対話するユーザの音声を認識するための音声認識用マイクロホンアレイ２２０４を備える。
通常、音声認識では、周りの音が一切混入していないユーザ音声のみがマイクロホンアレイ２２０４によって収集される。したがって、周りの音が混入した音がマイクロホンアレイ２２０４によって収集された場合、音声認識の性能が劣化することが知られている。
図２３に示すロボット２２０１においては、腕制御アクチュエータ２２０２及び脚制御アクチュエータ２２０３の動作音が含まれるユーザ音声がマイクロホンによって収集される。
また、腕制御アクチュエータ２２０２及び脚制御アクチュエータ２２０３の動作音は、腕や脚が移動することによって、動作音が発生する位置が変化する。また、腕制御アクチュエータ２２０２及び脚制御アクチュエータ２２０３の動作音は、各アクチュエータの動作開始、動作中、又は動作終了時にも変化する。
本発明では、アクチュエータの動作音など機器の内部で発生する音を効率良く除去する。
図２４は、本発明におけるプロジェクタを備えるビデオ会議システムの機器構成を示す説明図である。
拠点Ａでは、マイクアレイ２３０１によって拠点Ａで発話した人の音声が収集され、収集された音声の情報が計算機２３０５に送信される。
計算機２３０５は、マイクアレイ２３０１によって収集された音の中から拠点Ａで発話した人の声だけを抽出し、ネットワーク２３０６を介して、抽出された音声を他の拠点Ｂに送信する。また、拠点Ａのカメラ２３０４によって撮影された拠点Ａの風景も同様に拠点Ｂに送信される。
拠点Ｂでは、受信した音声やカメラ２３０４で撮影された画像が計算機２３０５に取り込まれる。カメラ２３０４によって撮影された画像は、プロジェクタ２３０３に投影される。受信した音声は、スピーカ２３０２で再生される。
同様に拠点Ｂに設置されたマイクアレイ２３０１によって収集された音声及びカメラ２３０４によって撮影された画像は、計算機２３０５に取り込まれた後、ネットワーク２３０６を介して、拠点Ａに送信される。
拠点Ａでは、拠点Ｂの場合と同様に、カメラ２３０４によって撮影された画像がプロジェクタ２３０３に投影され、受信した音声がスピーカ２３０２で再生される。
図２４に示す会議システムにおいて、プロジェクタ２３０３から発生するファンノイズなどの雑音が、マイクアレイ２３０１によって収集される音に混入するという問題がある。
図２５は、本発明におけるプロジェクタ２３０３から発生する雑音の一例を示す説明図である。
プロジェクタ２３０３から発生する雑音は、プロジェクタ２３０３が動作するタイミング毎に固有の音が発生する。プロジェクタ２３０３から発生する各雑音には、発生タイミング２４１０に対応し、動作音名称２４００が定義される。動作音名称２４００は、プロジェクタ２３０３から発生する雑音を識別するための識別子である。発生タイミング２４１０は、動作音名称２４００に対応する雑音が発生するタイミングを示す。
図２５に示す例では、動作音名称２４００として「プロジェクタ起動音」及び「プロジェクタ動作音」がある。また、「プロジェクタ起動音」の発生タイミング２４１０は「プロジェクタ起動時」であり、「プロジェクタ動作音」の発生タイミング２４１０は「プロジェクタ動作時」である。
以下の説明において、前述したようなロボット２２０１のアクチュエータの動作音やプロジェクタ２３０３のファンノイズなど機器内部で発生する内部雑音を除去するための構成及び方法について説明する。
第１の実施形態
図１は、本発明の第１の実施形態の内部雑音除去装置のハードウェア構成のブロック図である。
第１の実施形態では、内部雑音除去装置１００、マイクアレイ１０１、アクチュエータ制御装置１０４、及びアクチュエータ１０５を備える機器について説明する。
内部雑音除去装置１００は、ＡＤ変換装置１０２、中央演算装置１０３、記憶装置１０６、及び揮発性メモリ１０７を備える。
ＡＤ変換装置１０２は、入力されたアナログ信号を中央演算装置１０３が処理可能なデジタル信号に変換する。図１に示す例では、マイクアレイ１０１から入力されたアナログ信号がＡＤ変換装置１０２に入力される。
中央演算装置１０３は、揮発性メモリ１０７に展開された各種プログラムを実行する。具体的には、中央演算装置１０３は、ＡＤ変換装置１０２によってデジタル変換された後のデジタル信号から内部雑音を除去し、所望の音声（以下、内部雑音除去音と記載する）のみを抽出する。抽出された内部雑音除去音は、外部の内部雑音除去音を再生する装置（図示省略）に出力され、当該装置によって再生される。
記憶装置１０６は、内部雑音を除去するためのプログラムや、内部雑音に関するデータを格納する。記憶装置１０６に格納されるプログラムについては、図２を用いて後述する。揮発性メモリ１０７は、プログラム実行中のワークメモリを確保するために用いられる。
アクチュエータ制御装置１０４は、アクチュエータ１０５を制御する装置である。例えば、音声認識装置を備えるロボット２２０１の腕や足に設置されたアクチュエータ（腕制御アクチュエータ２２０２及び脚制御アクチュエータ２２０３）を制御する。アクチュエータ制御装置１０４は、アクチュエータ制御信号に基づいてアクチュエータ１０５を制御する。
アクチュエータ１０５は、例えば、音声認識装置を備えるロボット２２０１の腕や足などに設置されたアクチュエータ（腕制御アクチュエータ２２０２及び脚制御アクチュエータ２２０３）である。アクチュエータ１０５が動作するときに発生する音が伝搬し、マイクアレイ１０１によって収集される。
なお、マイクアレイ１０１によって収集される音は、音声処理アプリケーション（図示省略）が必要とする所望の音とアクチュエータが動作するときに発生する雑音（以下、内部雑音と記載する）とが混在する。
なお、内部雑音除去装置１００は、マイクアレイ１０１、アクチュエータ制御装置１０４、及びアクチュエータ１０５の少なくとも一つを備えてもよい。また、ＡＤ変換装置１０２又は記憶装置１０６は、内部雑音除去装置１００の外部に備わってもよい。
図２は、本発明の第１の実施形態の記憶装置１０６に格納されたプログラムの一例のブロック図である。
記憶装置１０６は、共分散行列学習プログラム１０６１、及び雑音抑圧プログラム１０６２を格納する。
共分散行列学習プログラム１０６１は、雑音抑圧フィルタを生成するために用いられる共分散行列を生成するためのプログラムである。雑音抑圧プログラム１０６２は、マイクアレイ１０１によって収集された音に対して最適な雑音抑圧フィルタを選択し、内部雑音を除去するためのプログラムである。
なお、記憶装置１０６は、他のプログラムを格納してもよい。
図３は、本発明の内部雑音除去装置１００が実行する処理の一例のブロック図である。
内部雑音除去装置１００は、雑音共分散推定処理３０１と内部雑音除去処理３０３とを実行する。具体的には、中央演算装置１０３が共分散行列学習プログラム１０６１を実行することによって、雑音共分散推定処理３０１が実行される。また、中央演算装置１０３が雑音抑圧プログラム１０６２を実行することによって、内部雑音除去処理３０３が実行される。
雑音共分散推定処理３０１は、雑音共分散行列を算出するための処理である。具体的には、内部雑音に関する情報を含む内部雑音シグナルが中央演算装置１０３に入力され、入力された内部雑音シグナルに基づいて雑音共分散行列が算出される。なお、内部雑音シグナルに含まれる内部雑音に関する情報には、内部雑音の種類及び内部雑音が発生したタイミング等の内部雑音の属性に関する情報が含まれる。
雑音共分散推定処理３０１は、内部雑音の属性毎に、当該内部雑音の統計量（雑音共分散行列）を算出する処理である。なお、具体的な雑音共分散行列の算出方法は、図１０を用いて後述する。
算出された雑音共分散行列は、揮発性メモリ１０７又は記憶装置１０６に格納される。以下、揮発性メモリ１０７又は記憶装置１０６に格納されている雑音共分散行列を雑音共分散行列ＤＢ３０２と記載する。
内部雑音除去装置１００は、予め収集された内部雑音に対して、雑音共分散推定処理３０１を実行する、いわゆるキャリブレーション処理をしておくことが望ましい。
内部雑音除去処理３０３は、マイクアレイ１０１によって収集された内部雑音と目的とする音とが混在した音から内部雑音を除去するための処理である。
具体的には、内部雑音除去装置１００が、実際にマイクアレイ１０１によって収集された内部雑音と目的とする音とが混在した音に対して、雑音共分散行列ＤＢ３０２を用いて内部雑音を除去し、目的音のみが抽出された音を出力する。なお、内部雑音除去処理３０３の詳細は、図４を用いて後述する。
図４は、本発明の第１の実施形態の内部雑音除去処理３０３の詳細のブロック図である。
内部雑音除去処理３０３は、多チャンネル周波数分析４０１、目的音共分散更新４０３、雑音抑圧フィルタ更新４０４、雑音抑圧フィルタリング４０５、雑音共分散行列選択４０６、及びパワー最小化フィルタリング４０８を含み、各処理は、中央演算装置１０３によって実行される。
デジタル化された入力信号を各チャンネル毎に、一定サンプル（フレームシフト：Ｌｓｈｉｆｔ）得られる度に内部雑音除去処理３０３が実行される。なお、本実施形態においては、Ｌｓｈｉｆｔは数十ｍｓ程度の時間長に設定する。
例えば、ＡＤ変換装置１０２のサンプリングレートが８ｋＨｚの場合、Ｌｓｈｉｆｔは２５６ポイント程度に設定する。以下、一定のフレームシフト量のサンプルが得られる度に実行される処理をフレーム処理と記載する。
１つのフレーム処理では、各マイクロホンから入力される入力信号毎に、当該入力信号が入力された時点の過去フレームサイズのサンプル（Ｌｆｒａｍｅ）に対して処理が実行される。ここで、フレーム番号を表すインデックスをτとする。
τフレームでは、マイクロホン毎に、（τ×Ｌｓｈｉｆｔ）ポイントから（τ×Ｌｓｈｉｆｔ＋Ｌｆｒａｍｅ−１）ポイント目までのデジタル信号が処理される。ここで、ｐは、τフレーム目の先頭ポイントからのポイント数を表すインデックスとする。
内部雑音除去装置１００には、ｍ番目のマイクロホンから式（１）で示す入力信号が入力される。
0005382745.tif 000002
まず、多チャンネル周波数分析４０１では、内部雑音除去装置１００が、各マイクロホンから入力された入力信号のうちｐ＝０からｐ＝Ｌｆｒａｍｅ−１ポイントのデータに対して、式（２）で示す離散フーリエ変換を実行する。
0005382745.tif 000003
式（２）によって、各マイクロホンの時間周波数領域信号ｘｍ（ｆ，τ）が得られる。ここで、ｆは周波数を表し、窓関数ｗ（ｐ）は、例えば、式（３）で示すようなハニング窓のようなものとする。
0005382745.tif 000004
なお、離散フーリエ変換は、高速フーリエ変換のようなアルゴリズムを用いてもよい。
各マイクロホン毎の時間周波数領域信号は、式（４）に示すように周波数毎にまとめられて処理される。
0005382745.tif 000005
ここで、Ｍはマイクロホン数とする。Ｔはベクトル又は行列の転置を表す演算子とする。
以下、内部雑音除去装置１００は、式（４）に示すような各周波数毎まとめられた信号に対して、目的音共分散更新４０３、雑音抑圧フィルタ更新４０４、雑音抑圧フィルタリング４０５、雑音共分散行列選択４０６、及びパワー最小化フィルタリング４０８を実行する。
目的音共分散更新４０３では、内部雑音除去装置１００が、式（５）を用いて目的音共分散行列Ｒｓ（ｆ）を更新する。
0005382745.tif 000006
ここで、αは更新係数であり、０から１までの値をとる。＊は行列又はベクトルの転置を表す。
また、内部雑音除去装置１００は、内部雑音シグナルを参照し、内部雑音が発生していないときに目的音共分散更新４０３を実行する。内部雑音が発生しているときには、目的音共分散行列は更新されず、内部雑音が発生する前の値が保持される。なぜなら、内部雑音が発生しているときに目的音共分散行列が更新されると、目的音共分散行列中に内部雑音の情報が混入し、雑音抑圧フィルタリング４０５において、雑音が抑圧されず、逆に強調されてしまうからである。
図５は、本発明の第１の実施形態の内部雑音シグナルの一例を示す説明図である。
内部雑音シグナルには、発生タイミング５１０に対応し、内部雑音シグナル名称５００が定義される。内部雑音シグナル名称５００は、内部雑音を識別するための識別子である。発生タイミング５１０は、内部雑音シグナル名称５００に対応する内部雑音が発生するタイミングを示す。
図５に示す例では、内部雑音シグナル名称５００として「内部雑音発生」及び「内部雑音終了」がある。また、「内部雑音発生」の発生タイミング５１０は「内部雑音が生じたタイミング」であり、「内部雑音終了」の発生タイミング５１０は「内部雑音が止まったタイミング」である。
つまり、内部雑音が生じたタイミングで出力される内部雑音シグナルと、内部雑音が止まったタイミングで出力される内部雑音シグナルとがあることがわかる。
前述した二つの内部雑音シグナルは、さらに、内部雑音の種類を示す情報がそれぞれ含まれる。
図６は、本発明の第１の実施形態の内部雑音の種類の一例を示す説明図である。なお、図６は、内部雑音シグナル名称５００が「内部雑音発生」である内部雑音の種類の一例を示す。
内部雑音の種類には、発生タイミング６１０に対応し、動作音名称６００が定義される。動作音名称６００は、アクチュエータ１０５の動作によって発生する内部雑音を識別する識別子である。発生タイミング６１０は、動作音名称６００に対応する内部雑音が発生するタイミングである。
例えば、動作音名称６００が「モータ１」の動作音は、モータ１の駆動時に発生する動作音として定義される。同様に、動作音名称６００が「モータ２」の動作音は、モータ２の駆動時に発生する動作音として定義される。
また、モータ１とモータ２との動作音が同時に存在する場合の動作音は、動作音名称６００が「モータ１・２」であり、モータ１及びモータ２の動作音とは異なる動作音として定義される。
図７は、本発明の第１の実施形態における３つのアクチュエータの動作状態に応じた内部雑音シグナルの種類を定義する一例のタイミングチャートである。
図７に示す例では、モータ１のみが動作を開始した場合、動作音名称６００は「モータ１」と定義される。モータ２のみが動作を開始した場合、動作音名称６００は「モータ２」と定義される。モータ３のみが動作を開始した場合、動作音名称６００は「モータ３」と定義される。モータ１及びモータ２が動作を開始した場合、動作音名称６００は「モータ１・２」と定義される。
図４の説明に戻る。
雑音共分散行列選択４０６では、内部雑音除去装置１００が、入力された内部雑音シグナルに基づいて、雑音共分散行列ＤＢ３０２が格納された記憶装置１０６又は揮発性メモリ１０７から雑音共分散行列Ｒｎ（ｆ）を選択し、選択された雑音共分散行列Ｒｎ（ｆ）を雑音抑圧フィルタ更新４０４に出力する。なお、雑音共分散行列選択４０６において、一つの内部雑音シグナルに対応する雑音共分散行列ＤＢ３０２が複数ある場合、内部雑音除去装置１００は、複数の内部雑音行列Ｒｎ（ｆ）を選択してもよい。
雑音抑圧フィルタ更新４０４では、内部雑音除去装置１００が、目的音共分散行列Ｒｓ（ｆ）と雑音共分散行列Ｒｎ（ｆ）とを用いて、雑音抑圧フィルタｗｉ（ｆ）を生成する。例えば、式（６）を用いて雑音抑圧フィルタｗｉ（ｆ）が生成される。
0005382745.tif 000007
ここで、ｍａｘｅｉｇは、最大固有値を与える固有ベクトルを算出する演算子である。
また、ｉは、ｉ番目の雑音共分散行列を示す。つまり、雑音共分散行列選択４０６において、複数の内部雑音行列Ｒｎ（ｆ）が選択された場合、内部雑音除去装置１００は、各々の雑音共分散行列毎に雑音抑圧フィルタを生成する。
雑音抑圧フィルタリング４０５では、内部雑音除去装置１００が、式（７）に示しように、各雑音共分散行列に対応する雑音抑制フィルタｗｉ（ｆ）を入力信号ｘ（ｆ，τ）に作用させ、雑音抑圧後の信号ｙｉ（ｆ，τ）を算出する。
0005382745.tif 000008
内部雑音除去装置１００は、雑音抑圧信号ｙｉ（ｆ，τ）をパワー最小化フィルタリング４０８に出力する。
内部雑音除去装置１００は、内部雑音が発生していない間、雑音抑圧フィルタリング４０５を実行しない。なお、内部雑音が発生していない間、内部雑音除去装置１００は、多チャンネル周波数分析４０１において、いずれか一つのマイクロホンから入力される入力信号を雑音抑圧信号ｙｉ（ｆ，τ）としてパワー最小化フィルタリング４０８に出力してもよい。
パワー最小化フィルタリング４０８では、内部雑音除去装置１００が、雑音抑圧フィルタリング４０５から入力された雑音抑圧信号ｙｉ（ｆ，τ）の絶対値｜ｙｉ（ｆ，τ）｜の２乗が、最小となる雑音抑圧信号ｙｍｉｎ（ｆ，τ）を算出する。
また、内部雑音除去装置１００は、絶対値｜ｙｉ（ｆ，τ）｜の代わりに、式（８）に示すようにパワーの移動平均から算出されたＰｉ（ｆ，τ）が最小となる雑音抑圧信号ｙｉ（ｆ，τ）を雑音抑圧信号ｙｍｉｎ（ｆ，τ）として算出してもよい。
0005382745.tif 000009
ここで、βは移動平均を算出するための係数であり、０から１までの値をとる。
図８は、本発明の第１の実施形態のパワー最小化フィルタリング４０８の処理のフローチャートである。
初期化８０１では、内部雑音除去装置１００が、各種変数を初期値に設定する。具体的には、内部雑音除去装置１００は、雑音抑圧フィルタのインデックスｉを「０」に設定し、｜ｙ０（ｆ，τ）｜の２乗を最小値Ｐｍｉｎに設定し、Ｐｍｉｎを最小とする雑音抑圧フィルタのインデックスｉｍｉｎを「０」に設定する。内部雑音除去装置１００は、各種変数を初期値に設定した後、判定８０５に進む。
判定８０５では、内部雑音除去装置１００が、雑音抑圧フィルタのインデックスｉが全雑音抑圧フィルタ数ｉｍａｘより大きいか否かを判定する。つまり、全ての雑音抑圧フィルタに対して処理が終了したか否かを判定する。
雑音抑圧フィルタのインデックスｉが全雑音抑圧フィルタ数ｉｍａｘ以下であると判定された場合、内部雑音除去装置１００は、雑音抑圧フィルタリング８０２に進む。
雑音抑圧フィルタリング８０２では、内部雑音除去装置１００が、各雑音抑圧フィルタを入力信号ｘ（ｆ，τ）に作用させ、雑音抑圧信号ｙｉ（ｆ，τ）を算出し、判定８０３に進む。
判定８０３では、内部雑音除去装置１００が、雑音抑圧信号ｙｉ（ｆ，τ）の絶対値の２乗がＰｍｉｎより小さいか否かを判定する。なお、ｉ＝０の場合、判定８０３では、内部雑音除去装置１００が、Ｐｍｉｎの判定を行わず、雑音フィルタのインデックスｉを「１」に更新してから判定８０５に戻り、次の雑音抑圧フィルタについて同様の処理を実行する。
雑音が除去された雑音抑圧信号ｙｉ（ｆ，τ）の絶対値の２乗がＰｍｉｎ以上であると判定された場合、内部雑音除去装置１００は、ｉをｉ＋１に更新してから判定８０５に戻り、次の雑音抑圧フィルタについて同様の処理を実行する。
雑音抑圧信号ｙｉ（ｆ，τ）の絶対値の２乗がＰｍｉｎより小さいと判定された場合、内部雑音除去装置１００は、最小値更新８０４に進む。
最小値更新８０４では、内部雑音除去装置１００が、Ｐｍｉｎ及びｉｍｉｎを更新し、さらに、ｉをｉ＋１に更新してから判定８０５に戻り、次の雑音抑圧フィルタについて処理を実行する。
判定８０５において、雑音抑圧フィルタのインデックスｉが全雑音抑圧フィルタ数ｉｍａｘより大きいと判定された場合、内部雑音除去装置１００は、全ての雑音抑圧フィルタについて処理が完了したと判定し、Ｐｍｉｎとなる雑音抑圧フィルタのインデックスｉ及び雑音抑圧信号ｙｉ（ｆ，τ）を、ｉｍｉｎ及び雑音抑圧信号ｙｍｉｎ（ｆ，τ）として時間領域変換４０９に出力し、処理を終了する。
前述した処理によって、内部雑音除去装置１００は、マイクアレイ１０１から入力された信号に雑音抑圧フィルタを作用させた後の音量が最小となる雑音抑圧フィルタ、及び雑音抑圧後の音量が最小となる出力信号を取得することができる。
つまり、本実施形態では、内部雑音の種類及び発生タイミング等の各属性毎に複数の雑音抑圧フィルタが生成され、当該雑音抑圧フィルタのうち、雑音が抑圧された後の音量が最も小さくなる雑音抑圧フィルタを選択することができる。したがって、正確に雑音を除去することが可能となる。
時間領域変換４０９では、内部雑音除去装置１００が、周波数毎に算出された雑音抑圧信号ｙｍｉｎ（ｆ，τ）に対して式（９）に示す逆フーリエ変換を実行することによって、時間領域の雑音抑圧信号ｙｍｉｎ（ｐ）を算出する。
0005382745.tif 000010
ここで、ｆｍａｘはサンプリングレートの０．５倍に相当する周波数とする。
時間領域変換４０９では、内部雑音除去装置１００が、時間領域の雑音抑圧信号ｙｍｉｎ（ｐ）に窓関数の逆数に相当する関数を作用させたものをフレーム間で加算した最終的な信号を出力する。
図９は、本発明の第１の実施形態における目的音共分散更新４０３、雑音抑圧フィルタ更新４０４、雑音共分散行列選択４０６、及び内部雑音の発生状況の一例のタイミングチャートである。
図９に示すように内部雑音が発生していない時間帯に、目的音共分散更新４０３が実行される。当該時間帯には、雑音抑圧フィルタ更新４０４、及び雑音共分散行列選択４０６は実行されない。
内部雑音が発生した場合、内部雑音が発生した時に、アクチュエータ制御装置１０４から内部雑音発生シグナルが出力される。なお、出力される内部雑音発生シグナルには、内部雑音が発生したタイミング、及び内部雑音の種類等の内部雑音の属性が含まれる。
内部雑音発生シグナルは、アクチュエータ制御装置１０４に送信される駆動信号を用いる方法が考えられる。つまり、アクチュエータ制御装置１０４に送信される駆動信号が内部雑音発生シグナルとして中央演算装置１０３に入力される。
例えば、「Ａ」という種類の内部雑音が発生した場合、内部雑音Ａの発生シグナルが雑音共分散行列選択４０６に入力される。また、雑音抑圧フィルタ更新４０４にも目的音共分散更新４０３を介して内部雑音Ａの発生シグナルが入力される。
雑音共分散行列選択４０６では、内部雑音除去装置１００が、入力された内部雑音Ａに相当する雑音共分散行列を雑音共分散行列ＤＢ３０２から読み出す。
雑音抑圧フィルタ更新４０４では、内部雑音除去装置１００が、目的音共分散行列と内部雑音Ａに相当する雑音共分散行列とから雑音抑圧フィルタを生成する。雑音抑圧フィルタは、例えば、式（６）を用いて生成される。
内部雑音Ａの発生中、内部雑音除去装置１００は、毎フレーム、雑音抑圧フィルタ更新４０４を実行してもよい。なお、内部雑音Ａの発生中には、目的音共分散更新４０３は実行されない。
内部雑音Ａの終了シグナルが目的音共分散更新４０３に入力された時に、内部雑音除去装置１００は、再び、目的音共分散更新４０３を再開する。
以下、雑音共分散推定処理３０１の詳細について説明する。
図１０は、本発明の第１の実施形態の雑音共分散推定処理３０１の詳細を説明するブロック図である。
雑音共分散推定処理３０１は、多チャンネル周波数分析１００１、特徴量抽出１００２、特徴量ベクトル生成１００３、クラスタリング１００４、及び雑音共分散更新１００５を含み、各処理は、中央演算装置１０３によって実行される。
なお、本実施形態では、雑音共分散推定処理３０１の実行時には、内部雑音の属性毎に学習用の内部雑音信号が予め用意されている。予め用意された学習用の内部雑音信号には雑音が発生した時間帯（タイミング）が含まれており、雑音共分散推定処理３０１は、該当する時間帯（タイミング）の内部雑音信号のみ抽出して学習することができる。なお、予め用意された学習用の内部雑音信号は、複数存在してもよい。
多チャンネル周波数分析１００１では、内部雑音除去装置１００が、各内部雑音信号をフレーム毎に周波数領域信号ｘ（ｆ，τ）に変換する。ここで、内部雑音の種類を表すインデックスをｑ、内部雑音ｑの複数の内部雑音信号を表すインデックスをｊ、内部雑音ｑのｊ番目の信号のフレームτの周波数領域信号をｘｑ，ｊ（ｆ，τ）と記載する。
特徴量抽出１００２では、内部雑音除去装置１００が、式（１０）を用いてｘｑ，ｊ（ｆ，τ）から特徴量Ｖｑ，ｊ（ｆ，τ）を生成する。
0005382745.tif 000011
特徴量ベクトル生成１００３では、内部雑音除去装置１００が、まず各周波数をＺ個のサブグループに分ける。ここで、ｚはサブグループを表すインデックスとする。
特徴量ベクトル生成１００３では、内部雑音除去装置１００が、サブグループｚに属する同一フレームτの特徴量Ｖｑ，ｊ（ｆ，τ）を連結して一つのベクトルＶｑ，ｊ（ｚ，τ）を生成する。
図１１は、本発明の第１の実施形態のベクトルＶｑ，ｊ（ｚ，τ）のデータ構造を示す説明図である。
図１１に示すように、ベクトルＶｑ，ｊ（ｚ，τ）は、各周波数毎の特徴量Ｖｑ，ｊ（ｆ，τ）を要素に持つベクトルである。
クラスタリング１００４では、内部雑音除去装置１００が、サブグループ毎に、内部雑音ｑの学習用の全信号及び全フレームのデータに対して、クラスタリング処理を実行する。具体的には、内部雑音除去装置１００は、信号インデックス及びフレームインデックス毎にその信号及びフレームの特徴量の属するクラスタを定義するインデックスＩｎｄ（ｊ，τ）を出力する。
図２２は、本発明の第１の実施形態のインデックスＩｎｄ（ｊ，τ）の一例を示す説明図である。
クラスタリング１００４が実行された結果、内部雑音信号には、内部雑音の各時間毎にインデックスＩｎｄ（ｊ，τ）が付与される。
図２２に示す例では、内部雑音信号にＡ〜ＣのインデックスＩｎｄ（ｊ，τ）が付与される。
雑音共分散更新１００５では、内部雑音除去装置１００が、クラスｃ毎に式（１１）を用いて、そのクラスタに属する特徴量を算出するときに用いられた入力データｘ（ｆ，τ）から周波数毎の共分散行列を算出する。
0005382745.tif 000012
クラスタの数が、雑音共分散行列及び雑音抑圧フィルタの数となる。なお、クラスタの数は予め設定されてもよい。
雑音共分散更新１００５では、内部雑音除去装置１００が、内部雑音信号毎に算出された雑音共分散行列を記憶装置１０６又は揮発性メモリ１０７に雑音共分散行列ＤＢ３０２として格納し、処理を終了する。
図１２は、本発明の第１の実施形態のクラスタリング１００４における処理の詳細のフローチャートである。
以下、内部雑音の種類を表すインデックスｑ及びサブグループのインデックスｚを省略して表記する。また、τをτ＝ｊ＊Ｔ＋τと変数変換する。ここで、Ｔは各内部雑音信号のフレーム数である。
初期化１２０１では、内部雑音除去装置１００が、各クラスタのセントロイドＣ（ｃ）に特徴量Ｖ（τ）の一つをランダムに設定する。ここで、ｒａｎｄｏｍは全ての内部雑音信号及び全てのフレームのうちいずれか一つをランダムに選択する変数である。また、クラスタリング１００４は、変数ｅｎｄを「ＦＡＬＳＥ」に、Ｉｎｄｐｒｅ（τ）を「０」に初期化する。
判定１２０２では、内部雑音除去装置１００が、変数ｅｎｄが終了状態を示す「ＴＵＲＥ」であるか否かを判定する。
変数ｅｎｄが終了状態を示す「ＴＵＲＥ」であると判定された場合、内部雑音除去装置１００は、処理を終了する。
変数ｅｎｄが終了状態を示す「ＴＵＲＥ」でないと判定された場合、内部雑音除去装置１００は、初期化１２０３に進む。
初期化１２０３では、内部雑音除去装置１００が、インデックスτを最も小さい値「１」に初期化し、判定１２０４に進む。
判定１２０４では、内部雑音除去装置１００が、インデックスτが最大値Ｔｍａｘ以下であるか否かを判定する。
インデックスτが最大値Ｔｍａｘ以下であると判定された場合、内部雑音除去装置１００は、初期化１２０５に進む。
初期化１２０５では、内部雑音除去装置１００が、変数Ｉｎｄ（τ）を「１」に、クラスタのインデックスｃを「１」に、また変数ｍｉｎを「−１」を初期化し、判定１２０６に進む。
判定１２０６では、内部雑音除去装置１００が、クラスタのインデックスｃがクラスタ数Ｃ以下であるか否かを判定する。
クラスタのインデックスｃがクラスタ数Ｃより大きいと判定された場合、内部雑音除去装置１００は、τをτ＋１に更新し、判定１２０４に戻る。
クラスタのインデックスｃがクラスタ数Ｃ以下であると判定された場合、内部雑音除去装置１００は、距離計算１２０７に進む。
距離計算１２０７では、内部雑音除去装置１００が、関数Ｄを用いて、各クラスタのセントロイドＣ（ｃ）と特徴量Ｖ（τ）との距離を算出し、判定１２０８に進む。関数Ｄは、例えば、｜Ｃ（ｃ）−Ｖ（τ）｜等が考えられる。算出された距離は変数ｄｉｓに入力される。
判定１２０８では、内部雑音除去装置１００が、変数ｄｉｓが変数ｍｉｎより小さいか否かを判定する。
変数ｄｉｓが変数ｍｉｎ以上と判定された場合、内部雑音除去装置１００は、クラスタのインデックスｃをｃ＋１に更新し、判定１２０６に戻る。
変数ｄｉｓが変数ｍｉｎより小さいと判定された場合、内部雑音除去装置１００は、最小値置換１２０９に進む。
最小値置換１２０９では、内部雑音除去装置１００が、Ｉｎｄ（τ）をクラスタのインデックスｃに置き換える。また、内部雑音除去装置１００は、変数ｍｉｎを変数ｄｉｓに置き換える。内部雑音除去装置１００は、その後、クラスタのインデックスｃをｃ＋１に更新し、判定１２０６に戻る。
判定１２０４において、インデックスτが最大値Ｔｍａｘより大きいと判定された場合、内部雑音除去装置１００は、更新１２１０に進む。
更新１２１０では、内部雑音除去装置１００が、（１２）を用いて、セントロイドＣ（ｃ）を更新する。具体的には、各クラスタのセントロイドＣ（ｃ）を超えた、セントロイドの更新は、各クラスタにおける特徴量Ｖ（τ）の平均値を算出することによって実行される。
0005382745.tif 000013
更新の後、内部雑音除去装置１００は、判定１２１１に進む。
判定１２１１では、内部雑音除去装置１００が、全てのインデックスτに対して、Ｉｎｄｐｒｅ（τ）とＩｎｄ（τ）とが等しいか否かを判定する。
判定１２１１の条件を満たさないと判定された場合、内部雑音除去装置１００は、全てのインデックスτについてＩｎｄｐｒｅ（τ）にＩｎｄ（τ）を代入し、判定１２０２に戻る。
全てのインデックスτに対して、Ｉｎｄｐｒｅ（τ）とＩｎｄ（τ）とが等しいと判定された場合、内部雑音除去装置１００は、変数ｅｎｄを「ＴＵＲＥ」に設定して、判定１２０２に戻る。
第２の実施形態
以下、本発明の第２の実施形態について説明する。本発明の第２の実施形態は、音声会議システムを想定したものである。以下、本発明の第１の実施形態との差異を中心に説明する。
図１３は、本発明の第２の実施形態の音声会議システムにおける内部雑音除去装置のハードウェア構成のブロック図である。
第２の実施形態では、内部雑音除去装置１３００、マイクアレイ１３０１、キーボード信号認識装置１３０４、キーボード１３０５、音声送信装置１３０８、音声受信装置１３０９、ＤＡ変換装置１３１０、及びスピーカ１３１１を備える音声会議システムについて説明する。
内部雑音除去装置１３００は、ＡＤ変換装置１３０２、中央演算装置１３０３、記憶装置１３０６、及び揮発性メモリ１３０７を備える。
ＡＤ変換装置１３０２は、マイクアレイ１３０１から入力されたアナログ信号を中央演算装置１３０３が処理可能なデジタル信号に変換する。図１３に示す例では、アナログ信号がマイクアレイ１３０１からＡＤ変換装置１３０２に入力される。
中央演算装置１３０３は、揮発性メモリ１３０７に展開された各種プログラムを実行する。具体的には、中央演算装置１３０３は、ＡＤ変換装置１３０２によってデジタル変換された後のデジタル信号から内部雑音を除去し、内部雑音除去音のみを抽出する処理を実行する。
第２の実施形態では、内部雑音除去音は、ユーザがキーボード１３０５のキーを操作した時に発生する音を除去した音（キーボード除去音）とする。抽出された内部雑音除去音（キーボード除去音）は、音声送信装置１３０８に送信される。
記憶装置１３０６は、内部雑音を除去するためのプログラムや、内部雑音に関するデータを格納する。記憶装置１３０６に格納されるプログラムは、第１の実施形態と同一である。揮発性メモリ１３０７は、プログラム実行中のワークメモリを確保するために用いられる。
キーボード信号認識装置１３０４は、キーボード１３０５が備えるキーのうち、どのキーが、いつ操作されたかという情報を検出する。検出された情報は、中央演算装置１３０３に送信される。
音声送信装置１３０８は、中央演算装置１３０３から受信した内部雑音除去音を音声会議の通話先に送信する。
音声受信装置１３０９は、音声会議の通話先より送られてきた音声信号を受信し、受信した音声信号を中央演算装置１３０３に送信する。中央演算装置１３０３は、受信した音声信号をＤＡ変換装置１３１０に送信する。
ＤＡ変換装置１３１０は、受信した音声信号をアナログの音声信号に変換し、スピーカ１３１１に送信する。
スピーカ１３１１は、ＤＡ変換装置１３１０から送信されたアナログの音声信号を再生する。なお、スピーカ１３１１から再生されるアナログの音声信号（スピーカ再生信号と記載する）は、マイクアレイ１３０１によって収集される。この場合、マイクアレイ１３０１によって収集された音に含まれるスピーカ再生信号は、中央演算装置１３０３が実行する音響エコーキャンセラ処理によって除去される。
なお、内部雑音除去装置１３００は、マイクアレイ１３０１、キーボード信号認識装置１３０４、キーボード１３０５、音声送信装置１３０８、音声受信装置１３０９、ＤＡ変換装置１３１０、及びスピーカ１３１１の少なくとも一つを備えてもよい。また、ＡＤ変換装置１３０２又は記憶装置１３０６は、内部雑音除去装置１３００の外部に備わってもよい。
図１４は、本発明の第２の実施形態のキーボード１３０５の操作音に対応する内部雑音シグナルの一例を示す説明図である。
内部雑音シグナルは、キーボード１３０５のそれぞれのキーを操作した時に発行される。内部雑音シグナルは、キーボード１３０５のどのキーを操作した時の動作音がを識別できるように定義されている。
具体的には、内部雑音シグナルには、発生タイミング１４１０に対応し、動作音名称１４００が定義される。動作音名称１４００は、キーボード１３０５の操作音を識別するための識別子である。発生タイミング１４１０は、動作音名称１４００に対応する内部雑音が発生するタイミングを示す。
図１５は、本発明の第２の実施形態の各装置が実行する処理のブロック図である。
マイクアレイ１３０１によって収集された音声は、ＡＤ変換装置１３０２に送信される。ＡＤ変換装置１３０２は、受信した音声信号に対してＡＤ変換処理１５０２を実行し、受信した音声信号をデジタル信号に変換する。ＡＤ変換装置１３０２は、デジタル化された音声信号を中央演算装置１３０３に送信する。
なお、デジタル化された音声信号には、ユーザが発した音声のほか、スピーカ１３１１から出力される音声がマイクアレイ１３０１によって収集された音（音響エコー）やキーボード１３０５の操作時に発生する雑音が含まれる。
中央演算装置１３０３は、ＡＤ変換装置１３０２から送信された音声信号に対して、エコーキャンセラ１５０５を実行する。
エコーキャンセラ１５０５では、スピーカ１３１１から出力される音声信号を参照信号として、ＮＬＭＳなどの一般的なアルゴリズムを用いて音響エコー成分が除去される。
音響エコー成分が除去された音声信号は、内部雑音除去処理１５０３に出力される。中央演算装置１３０３は、音響エコー成分が除去された音声信号に対して内部雑音除去処理１５０３を実行し、キーボードの操作音を除去する。なお、内部雑音除去処理１５０３は、第１の実施形態の内部雑音除去処理３０３と同一の構成である。
内部雑音が除去された音声信号は、音声送信１５０８でネットワークを介して会議相手に送信される。
会議相手の音声は、ネットワークを介し、音声受信１５０７で受信する。受信した音声は、ＤＡ変換装置１３１０に送信される。
ＤＡ変換装置１３１０は、受信した音声に対してＤＡ変換処理１５０４を実行することによって、受信した音声をアナログの音声信号に変換する。また、ＤＡ変換装置１３１０は、アナログの音声信号をスピーカ１３１１に送信する。
スピーカ１３１１は、受信したアナログの音声信号を再生する。
図１６は、本発明の第２の実施形態の音声会議システムにおけるユーザ使用シーンの一例を示す説明図である。
キーボード１６０１上に配置されるボタンをユーザが操作した場合、操作されたボタン位置から雑音が発生する。発生した雑音は、音声会議システムにおけるユーザの発声音声と共にマイクロホンアレイ１６０３によって収集される。なお、マイクロホンアレイ１６０３は、例えば、パーソナルコンピュータの表示装置１６０２の上に配置することが考えられる。
第３の実施形態
以下、本発明の第３の実施形態について説明する。本発明の第３の実施形態は、タッチパネルを備える音声会議システムを想定したものである。以下、本発明の第１の実施形態との差異を中心に説明する。
図１７は、本発明の第３の実施形態のタッチパネルを備える音声会議システムにおける内部雑音除去装置のハードウェア構成のブロック図である。
第３の実施形態では、内部雑音除去装置１７００、マイクアレイ１７０１、タッチ位置認識装置１７０４、タッチパネル１７０５、音声送信装置１７０８、音声受信装置１７０９、ＤＡ変換装置１７１０、及びスピーカ１７１１を備える音声会議システムについて説明する。
内部雑音除去装置１７００は、ＡＤ変換装置１７０２、中央演算装置１７０３、記憶装置１７０６、及び揮発性メモリ１７０７を備える。
ＡＤ変換装置１７０２は、マイクアレイ１７０１から入力されたアナログ信号を中央演算装置１７０３が処理可能なデジタル信号に変換する。図１７に示す例では、マイクアレイ１７０１からアナログ信号がＡＤ変換装置１７０２に入力される。
中央演算装置１７０３は、揮発性メモリ１７０７に展開された各種プログラムを実行する。具体的には、中央演算装置１７０３は、ＡＤ変換装置１７０２によってデジタル変換された後のデジタル信号から内部雑音を除去し、内部雑音除去音のみを抽出する処理を実行する。
第３の実施形態では、内部雑音除去音は、ユーザがタッチパネル１７０５を操作した時に発生する音を除去した音（タッチパネル除去音）とする。抽出された内部雑音除去音（タッチパネル除去音）は、音声送信装置１７０８に送信される。
記憶装置１７０６は、内部雑音を除去するためのプログラムや、内部雑音に関するデータを格納する。記憶装置１７０６に格納されるプログラムは、第１の実施形態と同一である。揮発性メモリ１７０７は、プログラム実行中のワークメモリを確保するために用いられる。
タッチ位置認識装置１７０４は、タッチパネル１７０５のどの位置が、いつ操作されたかの情報を検出する。検出された情報は、中央演算装置１７０３に送信される。
音声送信装置１７０８は、中央演算装置１７０３から受信した内部雑音除去音を音声会議の通話先に送信する。
音声受信装置１７０９は、音声会議の通話先より送られてきた音声信号を受信し、受信した音声信号を中央演算装置１７０３に送信する。中央演算装置１７０３は、受信した音声信号をＤＡ変換装置１７１０に送信する。
ＤＡ変換装置１７１０は、受信した音声信号をアナログの音声信号に変換し、スピーカ１７１１に送信する。
スピーカ１７１１は、ＤＡ変換装置１７１０から送信されたアナログの音声信号を再生する。なお、スピーカ１７１１から再生されるアナログの音声信号（以下、スピーカ再生信号と記載する）は、マイクアレイ１７０１によって収集される。この場合、マイクアレイ１７０１によって収集された音に含まれるスピーカ再生信号は、中央演算装置１７０３が実行する音響エコーキャンセラ処理によって除去される。
なお、内部雑音除去装置１７００は、マイクアレイ１７０１、タッチ位置認識装置１７０４、タッチパネル１７０５、音声送信装置１７０８、音声受信装置１７０９、ＤＡ変換装置１７１０、及びスピーカ１７１１の少なくとも一つを備えてもよい。また、ＡＤ変換装置１７０２又は記憶装置１７０６は、内部雑音除去装置１７００の外部に備わってもよい。
図１８は、本発明の第３の実施形態のタッチパネル１７０５の操作音に対応する内部雑音シグナルの一例を示す説明図である。
内部雑音シグナルは、タッチパネル１７０５のそれぞれのタッチ位置を操作した時に発行される。内部雑音シグナルには、タッチパネル１７０５のタッチ位置毎にどの位置を操作した時の操作音であるかを識別できるよる情報が含まれる。
具体的には、内部雑音シグナルには、発生タイミング１８１０に対応し、タッチ位置名称１８００が定義される。タッチ位置名称１８００は、タッチパネル１７０５のタッチ位置毎の操作音を識別するための識別子である。発生タイミング１８１０は、タッチ位置名称１８００に対応する内部雑音が発生するタイミングを示す。
図１９は、本発明の第３の実施形態のタッチパネル１７０５を備える音声会議システムにおけるユーザ使用シーンの一例を示す説明図である。
タッチパネル１９０２を操作した音は、音声会議システムにおけるユーザが発する音声と共にマイクロホンアレイ１９０１によって収集される。
第４の実施形態
以下、本発明の第４の実施形態について説明する。本発明の第４の実施形態は、音声認識の機能を備えるロボット（図２３参照）を想定したものである。以下、本発明の第１の実施形態との差異を中心に説明する。
なお、第４の実施形態のロボット２２０１は、内部雑音除去装置１００を備える。内部雑音除去装置１００のハードウェア構成及び処理構成は第１の実施形態と同一であるため説明を省略する。
図２０は、本発明の第４の実施形態の内部雑音除去処理を含む音声認識の処理の構成のブロック図である。
内部雑音除去装置１００は、音声認識用マイクホンアレイ２２０４によって収集された音声信号に対しＡＤ変換処理２００２を実行し、デジタル音声信号に変換する。デジタル音声信号は、内部雑音除去処理３０３に出力される。
内部雑音除去装置１００は、内部雑音除去処理３０３を実行し、デジタル音声信号中に含まれる内部雑音を除去し、音声認識の対象である人の音声のみ抽出する。抽出された音声は音声認識２００４に出力される。
音声認識２００４では、一般的なＭＦＣＣなどの特徴量抽出処理が実行され、予め学習する音響モデルと特徴量とのビタビデコーディング処理が実行され、どの音声が発生したかを認識するような構成を取る。内部雑音除去装置１００は、認識結果を出力し、処理を終了する。
第５の実施形態
以下、本発明の第５の実施形態について説明する。本発明の第５の実施形態は、雑音共分散行列及び目的音共分散行列の推定方法及び雑音抑圧フィルタの適応方法の変形例を示す。以下、本発明の第１の実施形態との差異を中心に説明する。
なお、第５の実施形態は、装置構成は第１の実施形態のハードウェア構成及び処理構成は同一であるため説明を省略する。
図２１は、本発明の第５の実施形態の実施形態の内部雑音除去処理３０３の詳細のブロック図である。
内部雑音除去装置１００は、フレーム毎に、マイクアレイ１０１によって収集された音声信号に対して多チャンネル周波数分析２１０１を実行し、周波数領域信号に変換する。変換された周波数領域信号は、各周波数毎に音源方向推定２１０２に出力される。
内部雑音除去装置１００は、周波数領域信号に対し、音源方向推定２１０２を実行し、音源の方向が特定する。音源方向推定２１０２は、例えば、各マイクロホン間の位相差に基づくＧＣＣ−ＰＨＡＴ法や遅延和アレイ法などを用いる方法が考えられる。
内部雑音除去装置１００は、音源方向推定２１０２において、予め目的音方向を設定しておき、フレーム毎及び周波数毎に、音源方向が予め設定された目的音方向と一致するか否かを判定する。
音源方向が目的音方向と一致すると判定された場合、内部雑音除去装置１００は、条件を満たす成分（フレーム及び周波数）の音声を目的音として、当該音声に対して目的音適応２１０３を実行する。具体的には、内部雑音除去装置１００は、式（５）を用いて目的音の共分散行列Ｒｓ（ｆ）を更新する。
音源方向が目的音方向と一致しなかった場合、内部雑音除去装置１００は、条件を満たさない成分（フレーム及び周波数）の音声を雑音として、雑音適応２１０４を実行する。具体的には、内部雑音除去装置１００は、式（１３）を用いて雑音共分散行列Ｒｂ（ｆ）を更新する。
0005382745.tif 000014
内部雑音追加２１０５では、内部雑音除去装置１００が、内部雑音シグナルに対応する各雑音共分散行列に雑音共分散行列Ｒｂ（ｆ）を加算する。
フィルタ適応２１０６では、内部雑音除去装置１００が、目的音共分散行列とＲｂ（ｆ）が加算された雑音共分散行列とを式（６）に代入し、雑音抑圧フィルタを生成する。
本発明の一実施形態によれば、内部雑音除去装置１００は、内部雑音の種類及び発生タイミング等の内部雑音の属性に応じて複数の雑音共分散行列を生成し、発生した内部雑音に対応した雑音共分散行列を複数選択し、各々の雑音共分散行列から複数の雑音抑圧フィルタを生成し、さらに、複数の雑音抑圧フィルタから適切な雑音フィルタを選択することができる。これによって、アクチュエータの動作状態によって音質が変化するような非定常な雑音に対しても適切に雑音を除去することが可能となる。
また、アクチュエータの動作音以外のキーボード１３０５又はタッチパネル１７０５等の操作音に対しても、正確に雑音を除去することができる。
【図１】
0005382745.tif 000015
【図２】
0005382745.tif 000016
【図３】
0005382745.tif 000017
【図４】
0005382745.tif 000018
【図５】
0005382745.tif 000019
【図６】
0005382745.tif 000020
【図７】
0005382745.tif 000021
【図８】
0005382745.tif 000022
【図９】
0005382745.tif 000023
【図１０】
0005382745.tif 000024
【図１１】
0005382745.tif 000025
【図１２】
0005382745.tif 000026
【図１３】
0005382745.tif 000027
【図１４】
0005382745.tif 000028
【図１５】
0005382745.tif 000029
【図１６】
0005382745.tif 000030
【図１７】
0005382745.tif 000031
【図１８】
0005382745.tif 000032
【図１９】
0005382745.tif 000033
【図２０】
0005382745.tif 000034
【図２１】
0005382745.tif 000035
【図２２】
0005382745.tif 000036
【図２３】
0005382745.tif 000037
【図２４】
0005382745.tif 000038
【図２５】
0005382745.tif 000039