(57)【要約】【課題】音源追尾を行いながら高品質な収音を行い、且つ通信負荷を軽減させる。【解決手段】収音システム１は、複数の子機１０Ａ〜１０Ｎとホスト装置１（親機）とを備え、複数の子機１０Ａ〜１０Ｎとホスト装置１とが通信ケーブル３０によって接続されている。各子機１０Ａ〜１０Ｎは、それぞれに複数のマイクロホンＭＩＣａ〜ＭＩＣｍを備える。各子機１０Ａ〜１０Ｎは、マイクロホンの収音信号ＭＩＣａ〜ＭＩＣｍの収音信号から、最大パワーの収音信号を選択し、子機音声信号としてホスト装置１に送信する。この際、子機１０Ａ〜１０Ｎは、最大パワーの収音信号すなわち子機音声信号のレベル情報を、子機音声信号とともにホスト装置１に送信する。ホスト装置１は、各子機１０Ａ〜１０Ｎのレベル情報を比較し、最大レベルのレベル情報に対応する子機音声信号を選択して、追尾音声信号とする。【選択図】図９
2014116932.tif 000002
【特許請求の範囲】
【請求項１】
それぞれに複数のマイクロホンを備えた複数の子機と、該複数の子機に接続する親機とを備えた収音システムであって、
前記子機のそれぞれは、
複数のマイクロホンの収音信号から所望の収音信号を選択して子機音声信号を生成するとともに、該子機音声信号のレベル情報を生成して、前記子機音声信号と前記レベル情報を前記親機に送信し、
前記親機は、
各子機からの子機音声信号と前記レベル情報とから所望の音声信号を選択する、
収音システム。
【請求項２】
前記複数の子機のそれぞれは、
複数のマイクロホンの収音信号の信号レベルを比較して収音信号を選択するための子機増幅係数を決定するとともに、前記複数のマイクロホンの収音信号の信号レベルから前記レベル情報を生成する子機係数決定部と、
前記子機増幅係数に基づいて前記複数のマイクロホンの収音信号を増幅する子機増幅部と、
増幅後の複数の収音信号を合成して前記子機音声信号を生成する子機合成部と、
を備える、請求項１に記載の収音システム。
【請求項３】
前記親機は、
各子機から出力された子機音声信号の信号レベルを比較して子機音声信号を選択するための親機増幅係数を決定する親機係数決定部と、
前記親機増幅係数に基づいて前記複数の子機音声信号を増幅する親機増幅部と、
増幅後の複数の子機音声信号を合成して出力音声信号を生成する親機合成部と、
を備える、請求項１または請求項２に記載の収音システム。
【請求項４】
前記複数の子機のそれぞれは、
前記子機音声信号の信号レベルを調整するゲイン制御部を備え、
該ゲイン制御部で信号レベルが調整された子機音声信号を、前記親機に送信する、
請求項１乃至請求項３のいずれかに記載の収音システム。
【請求項５】
前記複数の子機のそれぞれは、前記親機に直接接続されている、請求項１乃至請求項４のいずれかに記載の収音システム。
【請求項６】
複数の子機のそれぞれは、音声処理プログラムを保存するメモリを有し、
前記親機は、複数の音声処理プログラムを保存したメモリと、スピーカと、を有し、スピーカから試験用音波を発し、
子機は、マイクロホンに入力された前記試験用音波のレベルを判定し、
判定結果となるレベルデータを親機に送信し、
親機はレベルデータに応じて子機に送信する音声処理プログラムを選択し、子機に送信する請求項５に記載の収音システム。
【請求項７】
前記音声処理プログラムは、更新されるフィルタリング係数を有するエコーキャンセルプログラムからなり、
該エコーキャンセルプログラムは前記フィルタリング係数の数を決めるパラメータ部を有し、
前記親機は、各マイクユニットから受けとったレベルデータから各マイクユニットのフィルタリング係数の数を変更することを特徴とする請求項６に記載の収音システム。
【請求項８】
前記音声処理プログラムは、前記エコーキャンセルプログラム、若しくは非線形処理によりエコーを除去するエコーサプレッサプログラムであり、
前記親機は、前記レベルデータから各マイクユニットへ送信するプログラムを前記エコーキャンセルプログラム若しくはエコーサプレッサプログラムのいずれかに定める請求項７に記載の収音システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の話者等の複数音源からの収音音声から所望の収音音声を選択する収音システム、特に、所望の収音音声が変化しても追尾可能な収音システムに関する。
【背景技術】
【０００２】
従来、話者が複数人存在する空間内において、話者が切り替わっても、それぞれの話者の音声を高品質で収音する技術が各種考案されている。
【０００３】
例えば、特許文献１では、複数のマイクロホンから１台のマイクロホンを選択する収音装置が記載されている。特許文献１では、収音装置は、複数のマイクロホンの収音信号の信号エネルギーを比較している。そして、収音装置は、最も信号エネルギーの高い音声信号を出力するマイクロホンを選択し、当該選択したマイクロホンの収音信号を出力している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平８−３１７４９１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１に記載の収音装置は、装置本体に装着された複数のマイクロホンの収音信号から、特定のマイクロホンの収音信号を選択しているため、収音範囲が狭い範囲に限られてしまう。
【０００６】
例えば数十人以上が集まる容積を有する大きな会場の場合、このような単体の収音装置では、会場の全体で高品質な収音を行うことが難しい。
【０００７】
このような広い会場で位置に依存することない収音を実現する方法として、複数の子機と親機とを用意し、複数の子機のそれぞれにマイクロホンを備え、親機で各マイクロホンの収音信号を選択する方法がある。そして、各子機にそれぞれ異なる収音指向性からなる複数のマイクロホンを備えることで、さらに、広い範囲での高品質な収音が可能になる。
【０００８】
しかしながら、各マイクロホンの収音信号を親機に集約して、親機で選択処理する場合、全ての収音信号を親機に送信する必要があり、子機親機間の通信負荷が増大してしまう。特に、収音信号の品質を向上させようとするほど通信データは大きくなって通信負荷は増し、子機数およびマイクロホン数が多くなるほど通信負荷が増大してしまう。
【０００９】
本発明の目的は、それぞれにマイクロホンを備えた複数の子機と親機とで広範囲な収音を行う収音システムにおいて、高品質な収音を維持しながら、通信負荷を軽減させることにある。
【課題を解決するための手段】
【００１０】
この発明は、それぞれに複数のマイクロホンを備えた複数の子機と、該複数の子機に接続する親機とを備えた収音システムに関するものであり、次の特徴を有する。子機のそれぞれは、複数のマイクロホンの収音信号から所望の収音信号を選択して子機音声信号を生成するとともに、該子機音声信号のレベル情報を生成して、子機音声信号とレベル情報を親機に送信する。親機は、各子機からの子機音声信号とレベル情報とから所望の音声信号を選択する。
【００１１】
この構成では、各マイクロホンの収音信号が、まず子機内で選択される。そして、各子機で選択された音声信号が親機でさらに選択される。これにより、子機の各マイクロホンの収音信号が全て親機に送信されなくても、収音システムとしては所望の音声信号が得られる。したがって、通信負荷が軽減されながら、収音品質を低下させることなく所望の音声信号が得られる。
【００１２】
また、この発明の収音システムの複数の子機のそれぞれは、子機係数決定部、子機増幅部、子機合成部を備える。子機係数決定部は、複数のマイクロホンの収音信号の信号レベルを比較して収音信号を選択するための子機増幅係数を決定するとともに、複数のマイクロホンの収音信号の信号レベルからレベル情報を生成する。子機増幅部は、子機増幅係数に基づいて複数のマイクロホンの収音信号を増幅する。子機合成部は、増幅後の複数の収音信号を合成して子機音声信号を生成する。
【００１３】
この構成では、複数のマイクロホンの収音信号の合成処理から所望の音声信号を選択して、子機音声信号として親機に送信することができる。また、この際、子機音声信号のレベル情報を親機に送信することができる。
【００１４】
また、この発明の収音システムの親機は、親機係数決定部、親機増幅部、親機合成部を備える。親機係数決定部は、各子機から出力された子機音声信号の信号レベルを比較して子機音声信号を選択するための親機増幅係数を決定する。親機増幅部は、親機増幅係数に基づいて複数の子機音声信号を増幅する。親機合成部は、増幅後の複数の子機音声信号を合成して出力音声信号を生成する。
【００１５】
この構成では、複数の子機音声信号の合成処理から所望の音声信号を選択することができる。
【００１６】
また、この発明の収音システムの複数の子機のそれぞれは、子機音声信号の信号レベルを調整するゲイン制御部を備える。複数の子機のそれぞれは、該ゲイン制御部で信号レベルが調整された子機音声信号を親機に送信する。
【００１７】
この構成では、子機音声信号の信号レベルを調整できるので、通信ロスを加味して親機に送信できるとともに、親機が受信した時点で、各子機音声信号の信号レベルを略同じにすることができる。このように調整された子機音声信号とレベル情報とを用いることで、親機は子機音声信号の信号レベルを正確に再現でき、各子機音声信号の信号レベルの比較を高精度に行うことができる。これにより、所望の音声信号を確実に且つ高精度に出力することができる。
【００１８】
また、この発明の収音システムの複数の子機のそれぞれは、親機に直接接続されている。この構成では、複数の子機の親機への接続構成を示しており、複数の子機は親機に対して、所謂スター型接続されている。このようなスター型接続を採用することで、親機に対する接続が容易で、且つ各子機と親機との間での信号通信仕様を簡素化でき、且つ各子機間での通信ロスの差を小さくできる。
【００１９】
また、この発明の収音システムの複数の子機のそれぞれは、音声処理プログラムを保存するメモリを有し、前記親機は、複数の音声処理プログラムを保存したメモリと、スピーカと、を有し、スピーカから試験用音波を発し、子機は、マイクロホンに入力された前記試験用音波のレベルを判定し、判定結果となるレベルデータを親機に送信し、親機はレベルデータに応じて子機に送信する音声処理プログラムを選択し、子機に送信する。これにより、スピーカから各マイクユニットのマイクロホンに至るエコーのレベルを親機で把握することができる。
【００２０】
また、前記音声処理プログラムは、更新されるフィルタリング係数を有するエコーキャンセルプログラムからなり、該エコーキャンセルプログラムは前記フィルタリング係数の数を決めるパラメータ部を有し、前記親機は、各マイクユニットから受けとったレベルデータから各マイクユニットのフィルタリング係数の数を変更する。
【００２１】
この場合、ホスト装置に近く、エコーのレベルが高くなるマイクユニットには、フィルタ係数の数（タップ数）を多くしたり、ホスト装置に遠く、エコーのレベルが低くなるマイクユニットには、タップ数を短くしたりすることができる。
【００２２】
また、前記音声処理プログラムは、前記エコーキャンセルプログラム、若しくは非線形処理によりエコーを除去するエコーサプレッサプログラムであり、前記親機は、前記レベルデータから各マイクユニットへ送信するプログラムを前記エコーキャンセルプログラム若しくはエコーサプレッサプログラムのいずれかに定める。
【００２３】
この場合、ホスト装置に近く、エコーのレベルが高いマイクユニットには、エコーキャンセラを実行させ、ホスト装置に遠く、エコーのレベルが低いマイクユニットには、ノイズキャンセラを実行させることができる。
【発明の効果】
【００２４】
この発明によれば、複数の子機と親機とで広範囲な収音を行う収音システムを構成しても、高品質な収音と通信負荷の軽減とを実現することができる。
【図面の簡単な説明】
【００２５】
【図１】図１（Ａ）は、ホスト装置（親機）の構成を示すブロック図であり、図１（Ｂ）は、マイクユニット２Ａ（子機）の構成を示すブロック図である。
【図２】図２（Ａ）は、エコーキャンセラの構成を示す図であり、図２（Ｂ）は、ノイズキャンセラの構成を示す図である。
【図３】エコーサプレッサの構成を示す図である。
【図４】図４（Ａ）は、本発明の信号処理システムの別の接続態様を示す図であり、図５（Ｂ）は、ホスト装置の外観斜視図であり、図４（Ｃ）は、マイクユニットの外観斜視図である。
【図５】信号処理システムの動作を示したフローチャートである。
【図６】応用例に係る信号処理システムの構成を示すブロック図である。
【図７】応用例に係る子機の外観斜視図である。
【図８】応用例に係る子機の構成を示すブロック図である。
【図９】音声信号処理部の構成を示すブロック図である。
【図１０】子機データのデータフォーマット例を示す図である。
【図１１】応用例に係るホスト装置の構成を示すブロック図である。
【図１２】子機の音源追尾処理のフローチャートである。
【図１３】ホスト装置の音源追尾処理のフローチャートである。
【図１４】試験用音波を発してレベル判定を行う場合の動作を示すフローチャートである。
【図１５】子機のエコーキャンセラを特定する場合の動作を示すフローチャートである。
【図１６】ホスト装置でエコーサプレッサを構成する場合のブロック図である。
【図１７】図１７（Ａ）及び図１７（Ｂ）は、ホスト装置および子機の配置の変形例を示した図である。
【発明を実施するための形態】
【００２６】
図１（Ａ）は、ホスト装置（親機）の構成を示すブロック図であり、図１（Ｂ）は、マイクユニット２Ａ（子機）の構成を示すブロック図である。各マイクユニットのハードウェア構成は全て同一であり、図１（Ｂ）においては、代表してマイクユニット２Ａの構成および機能について説明する。なお、本実施形態では、Ａ／Ｄ変換の構成は省略し、特に記載が無い限り各種信号はデジタル信号であるものとして説明する。
【００２７】
図１（Ａ）に示すように、ホスト装置１は、通信インタフェース（Ｉ／Ｆ）１１、ＣＰＵ１２、ＲＡＭ１３、不揮発性メモリ１４、およびスピーカ１０２を備えている。
【００２８】
ＣＰＵ１２は、不揮発性メモリ１４からアプリケーションプログラムを読み出し、ＲＡＭ１３に一時記憶することで、種々の動作を行う。例えば、上述したように、各マイクユニットから音声信号を入力し、ネットワークを介して接続された他のホスト装置に各音声信号を個別に送信する。
【００２９】
不揮発性メモリ１４は、フラッシュメモリ、ハードディスクドライブ（ＨＤＤ）等からなる。不揮発性メモリ１４には、音声処理プログラム（以下、本実施形態においては音声信号処理プログラムと言う。）が記憶されている。音声信号処理プログラムは、各マイクユニットの動作用プログラムである。例えば、エコーキャンセラの機能を実現するプログラムや、ノイズキャンセラの機能を実現するプログラム、ゲイン制御を実現するプログラム等、様々な種類のプログラムが存在する。
【００３０】
ＣＰＵ１２は、不揮発性メモリ１４から所定の音声信号処理プログラムを読み出し、通信Ｉ／Ｆ１１を介して各マイクユニットに送信する。なお、音声信号処理プログラムは、アプリケーションプログラムに内蔵されていてもよい。
【００３１】
マイクユニット２Ａは、通信Ｉ／Ｆ２１Ａ、ＤＳＰ２２Ａ、およびマイクロホン（以下、マイクとも言う。）２５Ａを備えている。
【００３２】
ＤＳＰ２２Ａは、揮発性メモリ２３Ａおよび音声信号処理部２４Ａを備えている。なお、この例では、揮発性メモリ２３ＡがＤＳＰ２２Ａに内蔵されている態様を示しているが、揮発性メモリ２３Ａは、ＤＳＰ２２Ａとは別に設けられていてもよい。音声信号処理部２４Ａは、本発明の処理部に相当し、マイク２５Ａで収音した音声をデジタル音声信号として出力する機能を有する。
【００３３】
ホスト装置１から送信される音声信号処理プログラムは、通信Ｉ／Ｆ２１Ａを介して揮発性メモリ２３Ａに一時記憶される。音声信号処理部２４Ａは、揮発性メモリ２３Ａに一時記憶された音声信号処理プログラムに応じた処理を行い、マイク２５Ａが収音した音声に係るデジタル音声信号をホスト装置１に送信する。例えば、ホスト装置１からエコーキャンセラのプログラムが送信された場合、マイク２５Ａが収音した音声から、エコー成分を除去してからホスト装置１に送信する。このように、各マイクユニットでエコーキャンセラのプログラムを実行すると、ホスト装置１において通信会議用のアプリケーションプログラムを実行する場合に好適である。
【００３４】
揮発性メモリ２３Ａに一時記憶された音声信号処理プログラムは、マイクユニット２Ａへの電源供給が絶たれた場合に消去される。マイクユニットは、起動毎に都度、必ずホスト装置１から動作用の音声信号処理プログラムを受信してから動作を行う。マイクユニット２Ａが、通信Ｉ／Ｆ２１Ａを介して電源供給を受ける（バスパワー駆動する）ものであれば、ホスト装置１に接続された場合にのみ、ホスト装置１から動作用のプログラムを受信し、動作を行うことになる。
【００３５】
上述のように、ホスト装置１において通信会議用のアプリケーションプログラムを実行する場合には、エコーキャンセラ用の音声信号処理プログラムが実行され、録音用のアプリケーションプログラムを実行する場合は、ノイズキャンセラの音声信号処理プログラムが実行される。あるいは、各マイクユニットで収音した音声をホスト装置１のスピーカ１０２から出力するために、拡声用のアプリケーションプログラムを実行する場合には、ハウリングキャンセラ用の音声信号処理プログラムが実行される、という態様も可能である。なお、ホスト装置１において録音用のアプリケーションプログラムを実行する場合は、スピーカ１０２は不要である。
【００３６】
図２（Ａ）を参照して、エコーキャンセラについて説明する。図２（Ａ）は、音声信号処理部２４Ａがエコーキャンセラのプログラムを実行した場合の構成を示すブロック図である。図２（Ａ）に示すように、音声信号処理部２４Ａは、フィルタ係数設定部２４１、適応フィルタ２４２、および加算部２４３から構成される。
【００３７】
フィルタ係数設定部２４１は、音響伝達系（ホスト装置１のスピーカ１０２から各マイクユニットのマイクに至る音響伝搬経路）の伝達関数を推定し、推定した伝達関数で適応フィルタ２４２のフィルタ係数を設定する。
【００３８】
適応フィルタ２４２は、ＦＩＲフィルタ等のデジタルフィルタを含んでいる。適応フィルタ２４２は、ホスト装置１から、当該ホスト装置１のスピーカ１０２に入力される放音信号ＦＥを入力し、フィルタ係数設定部２４１に設定されたフィルタ係数でフィルタ処理して、擬似回帰音信号を生成する。適応フィルタ２４２は、生成した擬似回帰音信号を加算部２４３へ出力する。
【００３９】
加算部２４３は、適応フィルタ２４２から入力された擬似回帰音信号をマイク２５Ａの収音信号ＮＥ１から差し引いた収音信号ＮＥ１’を出力する。
【００４０】
フィルタ係数設定部２４１は、加算部２４３から出力された収音信号ＮＥ１’と放音信号ＦＥとに基づいて、ＬＭＳアルゴリズム等の適応アルゴリズムを用いてフィルタ係数の更新を行う。そして、フィルタ係数設定部２４１は、更新したフィルタ係数を適応フィルタ２４２に設定する。
【００４１】
次に、ノイズキャンセラについて、図２（Ｂ）を参照して説明する。図２（Ｂ）は、音声信号処理部２４Ａがノイズキャンセラのプログラムを実行した場合の構成を示すブロック図である。図２（Ｂ）に示すように、音声信号処理部２４Ａは、ＦＦＴ処理部２４５、ノイズ除去部２４６、推定部２４７、およびＩＦＦＴ処理部２４８から構成される。
【００４２】
ＦＦＴ処理部２４５は、収音信号ＮＥ’Ｔを周波数スペクトルＮＥ’Ｎに変換する。ノイズ除去部２４６は、周波数スペクトルＮＥ’Ｎに含まれるノイズ成分Ｎ’Ｎを除去する。ノイズ成分Ｎ’Ｎは、推定部２４７により周波数スペクトルＮＥ’Ｎに基づいて推定される。
【００４３】
推定部２４７は、ＦＦＴ処理部２４５から入力された周波数スペクトルＮＥ’Ｎに含まれるノイズ成分Ｎ’Ｎを推定する処理を行う。推定部２４７は、音声信号ＮＥ’Ｎのあるサンプルタイミングにおける周波数スペクトル（以下、音声スペクトルと称す。）Ｓ（ＮＥ’Ｎ）を順次取得するとともに、一時記憶する。推定部２４７は、この取得および記憶した複数回の音声スペクトルＳ（ＮＥ’Ｎ）に基づいて、ノイズ成分Ｎ’Ｎの或るサンプルタイミングにおける周波数スペクトル（以下、ノイズスペクトルと称す。）Ｓ（Ｎ’Ｎ）を推定する。そして、推定部２４７は、推定したノイズスペクトルＳ（Ｎ’Ｎ）をノイズ除去部２４６へ出力する。
【００４４】
例えば、或るサンプリングタイミングＴでのノイズスペクトルをＳ（Ｎ’Ｎ（Ｔ））とし、同サンプリングタイミングＴでの音声スペクトルをＳ（ＮＥ’Ｎ（Ｔ））として、直前のサンプリングタイミングＴ−１でのノイズスペクトルをＳ（Ｎ’Ｎ（Ｔ−１））とする。また、α，βは、忘却定数であり、例えば、α＝０．９、β＝０．１となる。ノイズスペクトルＳ（Ｎ’Ｎ（Ｔ））は、次の式１で表すことができる。
【００４５】
Ｓ（Ｎ’Ｎ（Ｔ））＝αＳ（Ｎ’Ｎ（Ｔ−１））＋βＳ（ＮＥ’Ｎ（Ｔ））・・・式１
このように、音声スペクトルに基づいてノイズスペクトルＳ（Ｎ’Ｎ（Ｔ））を推定することで、暗騒音等のノイズ成分を推定することができる。なお、推定部２４７は、マイク２５Ａが収音した収音信号のレベルが低い状態（無音状態）の場合のみ、ノイズスペクトルの推定処理を行うものとする。
【００４６】
ノイズ除去部２４６は、ＦＦＴ処理部２４５から入力された周波数スペクトルＮＥ’Ｎからノイズ成分Ｎ’Ｎを除去して、ノイズ除去後の周波数スペクトルＣＯ’ＮをＩＦＦＴ処理部２４８へ出力する。具体的には、ノイズ除去部２４６は、音声スペクトルＳ（ＮＥ’Ｎ）と、推定部２４７から入力されたノイズスペクトルＳ（Ｎ’Ｎ）との信号レベル比を算出する。ノイズ除去部２４６は、算出した信号レベル比が閾値以上の場合、音声スペクトルＳ（ＮＥ’Ｎ）を線形出力する。また、ノイズ除去部２４６は、算出した信号レベル比が閾値未満の場合、音声スペクトルＳ（ＮＥ’Ｎ）を非線形出力する。
【００４７】
ＩＦＦＴ処理部２４８は、ノイズ成分Ｎ’Ｎを除去した後の周波数スペクトルＣＯ’Ｎを時間軸に逆変換して生成した音声信号ＣＯ’Ｔを出力する。
【００４８】
また、音声信号処理プログラムは、図３に示すようなエコーサプレッサのプログラムを実現することも可能である。エコーサプレッサは、図３（Ａ）に示したエコーキャンセラの後段において、当該エコーキャンセラで除去しきれなかったエコー成分を除去するものである。エコーサプレッサは、図３に示すように、ＦＦＴ処理部１２１、エコー除去部１２２、ＦＦＴ処理部１２３、進捗度算出部１２４、エコー生成部１２５、ＦＦＴ処理部１２６、およびＩＦＦＴ処理部１２７から構成される。
【００４９】
ＦＦＴ処理部１２１は、エコーキャンセラから出力された収音信号ＮＥ１’を周波数スペクトルに変換する。この周波数スペクトルは、エコー除去部１２２および進捗度算出部１２４に出力される。エコー除去部１２２は、入力された周波数スペクトルに含まれる残留エコー成分（エコーキャンセラで除去しきれなかったエコー成分）を除去する。残留エコー成分は、エコー生成部１２５により生成される。
【００５０】
エコー生成部１２５は、ＦＦＴ処理部１２６から入力された擬似回帰音信号の周波数スペクトルに基づいて残留エコー成分を生成する。残留エコー成分は、過去に推定した残留エコー成分と、入力された擬似回帰音信号の周波数スペクトルに所定の係数を乗算したものと、を加算することにより求める。この所定の係数は、進捗度算出部１２４によって設定される。進捗度算出部１２４は、ＦＦＴ処理部１２３から入力された収音信号ＮＥ１（前段のエコーキャンセラによりエコー成分が除去される前の収音信号）と、ＦＦＴ処理部１２１から入力された収音信号ＮＥ１’（前段のエコーキャンセラによりエコー成分が除去された後の収音信号）とのパワー比を求める。進捗度算出部１２４は、当該パワー比に基づいた所定の係数を出力する。例えば、適応フィルタ２４２の学習が全く行われていない場合には、上記所定の係数を１とし、適応フィルタ２４２の学習が進んだ場合には、所定の係数を０とし、適応フィルタ２４２の学習が進むほど所定の係数を小さくして、残留エコー成分を小さくする。そして、エコー除去部１２２は、エコー生成部１２５で算出された残留エコー成分を除去する。ＩＦＦＴ処理部１２７は、エコー成分を除去した後の周波数スペクトルを時間軸に逆変換して出力する。
【００５１】
なお、これらのエコーキャンセラのプログラム、ノイズキャンセラのプログラム、およびエコーサプレッサのプログラムは、ホスト装置１で実行することも可能である。特に、各マイクユニットがエコーキャンセラのプログラムを実行しつつ、ホスト装置がエコーサプレッサのプログラムを実行することも可能である。
【００５２】
なお、本実施形態の信号処理システムでは、接続されるマイクユニットの数に応じて、実行する音声信号処理プログラムを変更することも可能である。例えば、接続されるマイクユニットの数が１つの場合は当該マイクユニットのゲインを高く設定し、マイクユニットの数が複数の場合は、各マイクユニットのゲインを相対的に低く設定する。
【００５３】
あるいは、各マイクユニットが複数のマイクを備えている場合、マイクアレイとして機能させるためのプログラムを実行する態様も可能である。この場合、ホスト装置１に接続される順番（位置）に応じて、マイクユニット毎に異なるパラメータ（ゲイン、遅延量等）を設定することができる。
【００５４】
なお、本実施形態では、一時記憶用メモリの一例として、ＲＡＭである揮発性メモリ２３Ａを示したが、マイクユニット２Ａへの電源供給が絶たれた場合に内容が消去されるものであれば揮発性メモリに限らず、フラッシュメモリ等の不揮発性メモリを用いてもよい。この場合、例えば、マイクユニット２Ａへの電源供給が絶たれた場合やケーブルが差し替えられた場合に、ＤＳＰ２２Ａは、フラッシュメモリの内容を消去する。なお、この場合、マイクユニット２Ａへの電源供給が絶たれた時にＤＳＰ２２Ａがフラッシュメモリの内容を消去するまでの電源を一時的に確保するキャパシタ等を設ける。
【００５５】
図４（Ａ）の例では、ホスト装置１は、ケーブル３３１を介してマイクユニット２Ａに接続されている。マイクユニット２Ａおよびマイクユニット２Ｂは、ケーブル３４１を介して接続されている。マイクユニット２Ｂおよびマイクユニット２Ｃは、ケーブル３５１を介して接続されている。マイクユニット２Ｃおよびマイクユニット２Ｄは、ケーブル３６１を介して接続されている。マイクユニット２Ｄおよびマイクユニット２Ｅは、ケーブル３７１を介して接続されている。
【００５６】
図４（Ｂ）は、ホスト装置１の外観斜視図であり、図４（Ｃ）は、マイクユニット２Ａの外観斜視図である。図４（Ｃ）においては、マイクユニット２Ａを代表して図示し、説明を行うが、全てのマイクユニットは、同じ外観および構成を有する。図４（Ｂ）に示すように、ホスト装置１は、直方体形状の筐体１０１Ａを有し、筐体１０１Ａの側面（正面）にスピーカ１０２が設けられ、筐体１０１Ａの側面（背面）に通信Ｉ／Ｆ１１が設けられている。マイクユニット２Ａは、直方体形状の筐体２０１Ａを有し、筐体２０１Ａの側面にマイク２５Ａが設けられ、筐体２０１Ａの正面に第１入出力端子３３Ａおよび第２入出力端子３４Ａが設けられている。なお、図４（Ｃ）では、マイク２５Ａが背面、右側面、および左側面の３つの収音方向を有する例を示している。ただし、収音方向はこの例に限るものではない。例えば、３つのマイク２５Ａを平面視して１２０度間隔で並べて円周方向に収音する態様であってもよい。マイクユニット２Ａは、第１入出力端子３３Ａにケーブル３３１が接続され、当該ケーブル３３１を介してホスト装置１の通信Ｉ／Ｆ１１に接続されている。また、マイクユニット２Ａは、第２入出力端子３４Ａにケーブル３４１が接続され、当該ケーブル３４１を介してマイクユニット２Ｂの第１入出力端子３３Ｂに接続されている。なお、筐体１０１Ａおよび筐体２０１Ａの形状は直方体形状に限るものではない。例えば、ホスト装置１の筐体１０１Ａが楕円柱であり、マイクユニット２Ａの筐体２０１Ａが円柱形状であってもよい。
【００５７】
なお、ホスト装置１は、各マイクユニットの接続順序を認識し、接続順序およびケーブルの長さに基づいて、自装置から一定の距離以内のマイクユニットにはエコーキャンセラのプログラムを送信し、自装置から一定の距離を超えたマイクユニットには、ノイズキャンセラのプログラムを送信することも可能である。ケーブルの長さは、例えば、専用のケーブルを用いる場合には、予めホスト装置にケーブルの長さに関する情報を記憶しておく。また、各ケーブルに識別情報を設定して、識別情報とケーブルの長さに関する情報を記憶し、使用されている各ケーブルから識別情報を受信することで、使用されている各ケーブルの長さを知ることも可能である。
【００５８】
なお、ホスト装置１は、エコーキャンセラのプログラムを送信する時に、自装置に近いエコーキャンセラにはフィルタ係数の数（タップ数）を増加して残響の長いエコーにも対応できるようにし、自装置から遠いエコーキャンセラにはフィルタ係数の数（タップ数）を減少することが好ましい。
【００５９】
また、自装置から一定の距離以内のマイクユニットにはエコーキャンセラのプログラムに代えて、非線形処理を行うプログラム（例えば上述のエコーサプレッサのプログラム）を送信し、エコーキャンセラでは除去しきれないエコー成分が発生する場合であっても、当該エコー成分を除去する態様とすることも可能である。また、本実施形態では、マイクユニットは、ノイズキャンセラまたはエコーキャンセラのいずれかを選択するよう記載されているが、ホスト装置１に近いマイクユニットにはノイズキャンセラおよびエコーキャンセラの双方のプログラムを送信し、ホスト装置１から遠いマイクユニットにはノイズキャンセラのプログラムのみを送信してもよい。
【００６０】
次に、図５のフローチャートを参照して、ホスト装置１および各マイクユニットの起動時の動作について説明する。ホスト装置１のＣＰＵ１２は、マイクユニットが接続され、当該マイクユニットの起動状態を検知すると（Ｓ１１）、不揮発性メモリ１４から所定の音声信号処理プログラムを読み出し（Ｓ１２）、通信Ｉ／Ｆ１１を介して各マイクユニットに送信する（Ｓ１３）。このとき、ホスト装置１のＣＰＵ１２は、上述のように音声信号処理プログラムを一定の単位ビットデータに分割し、単位ビットデータを各マイクユニットが受け取る順に配列したシリアルデータを作成して、マイクユニットへ送信する。
【００６１】
各マイクユニットは、ホスト装置１から送信された音声信号処理プログラムを受信し（Ｓ２１）、一時記憶する（Ｓ２２）。このとき、各マイクユニットは、シリアルデータから自己が受け取るべき単位ビットデータを抜き出して受け取り、抜き出した単位ビットデータを一時記憶する。マイクユニットは、一時記憶した単位ビットデータを結合し、結合した音声信号処理プログラムに応じた処理を行う（Ｓ２３）。そして、各マイクユニットは、収音した音声に係るデジタル音声信号をホスト装置１に送信する（Ｓ２４）。このとき、各マイクユニットの音声信号処理部が処理したデジタル音声信号は、一定の単位ビットデータに分割されて上位に接続されたマイクユニットに送信され、各マイクユニットが協同して送信用シリアルデータを作成し、当該送信用シリアルデータをホスト装置に送信する。
【００６２】
なお、この例では、最小ビット単位でシリアルデータに変換しているが、例えば１ワード毎に変換する等、最小ビット単位の変換に限るものではない。
【００６３】
また、仮に、接続されていないマイクユニットが存在した場合、信号がないチャンネルが存在する場合（ビットデータが０となる場合）であっても、当該チャンネルのビットデータは削除せずに、シリアルデータ内に含めて伝送する。例えば、マイクユニットの数が４つであった場合、必ず信号ＳＤＯ４はビットデータが０となるが、当該信号ＳＤＯ４は削除されずにビットデータ０の信号として伝送される。したがって、どの装置がどのチャンネルに対応する装置であるか、接続関係を考慮する必要もなく、どの装置にどのデータを送受信するか、等のアドレス情報も不要であり、仮に各マイクユニットの接続順を入れ替えたとしても、それぞれのマイクユニットから適切なチャンネルの信号が出力される。
【００６４】
このようにして、装置間をシリアルデータで伝送する構成とすれば、チャンネル数が増えたとしても装置間の信号線が増えることがない。なお、マイクユニットの起動状態を検知する検知手段は、ケーブルの接続を検知することで起動状態を検知することができるが、電源投入時に接続されているマイクユニットを検出してもよい。また、使用中に新たなマイクユニットが追加された場合は、ケーブルの接続を検知し、起動状態を検知することもできる。この場合は、接続済みマイクユニットのプログラムを消去し、再度本体からすべてのマイクユニットへ音声処理プログラムを送信することもできる。
【００６５】
次に、図６は、応用例に係る信号処理システムの構成図である。応用例に係る信号処理システムでは、直列接続された子機１０Ａ〜子機１０Ｅと、子機１０Ａに接続された親機（ホスト装置）１と、を備えている。図７は、子機１０Ａの外観斜視図である。図８は、子機１０Ａの構成を示すブロック図である。この応用例では、ホスト装置１は、ケーブル３３１を介して子機１０Ａに接続されている。子機１０Ａおよび子機１０Ｂは、ケーブル３４１を介して接続されている。子機１０Ｂおよび子機１０Ｃは、ケーブル３５１を介して接続されている。子機１０Ｃおよび子機１０Ｄは、ケーブル３６１を介して接続されている。子機１０Ｄおよび子機１０Ｅは、ケーブル３７１を介して接続されている。子機１０Ａ〜子機１０Ｅは、同じ構成からなる。したがって、以下の子機の構成の説明では、子機１０Ａを代表して説明する。各子機のハードウェア構成は全て同一である。
【００６６】
子機１０Ａは、上述のマイクユニット２Ａと同じ構成および機能を有する。ただし、子機１０Ａは、マイク２５Ａに代えて、複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍを備えている。また、この例では、図９に示すように、ＤＳＰ２２Ａの音声信号処理部２４Ａは、増幅器１１ａ〜増幅器１１ｍ、係数決定部１２０、合成部１３０、およびＡＧＣ１４０の構成を備える。
【００６７】
マイクロホンの本数は、二本以上であればよく、一台の子機での収音仕様に応じて、適宜設定することができる。これに応じて、増幅器の個数も、マイクロホンの本数と同じにすればよい。例えば、円周方向に少ない本数で収音するならば三本のマイクロホンで足りる。
【００６８】
各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍは、異なる収音方向を有する。すなわち、各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍは、所定の収音指向性を有し、特定方向を主収音方向として収音し、収音信号Ｓｍａ〜収音信号Ｓｍｍを生成する。具体的に、例えば、マイクロホンＭＩＣａは、第１の特定方向を主収音方向として収音し、収音信号Ｓｍａを生成する。同様に、マイクロホンＭＩＣｂは、第２の特定方向を主収音方向として収音し、収音信号Ｓｍｂを生成する。
【００６９】
各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍは、それぞれの収音指向性が異なるように、子機１０Ａに設置されている。言い換えれば、各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍは、主収音方向が異なるように、子機１０Ａに設置されている。
【００７０】
各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍから出力される各収音信号Ｓｍａ〜収音信号Ｓｍｍは、それぞれ増幅器１１ａ〜増幅器１１ｍに入力される。例えば、マイクロホンＭＩＣａから出力される収音信号Ｓｍａは、増幅器１１ａに入力され、マイクロホンＭＩＣｂから出力される収音信号Ｓｍｂは、増幅器１１ｂに入力される。マイクロホンＭＩＣｍから出力される収音信号Ｓｍｍは、増幅器１１ｍに入力される。また、各収音信号Ｓｍａ〜収音信号Ｓｍｍは、係数決定部１２０に入力される。この際、各収音信号Ｓｍａ〜収音信号Ｓｍｍは、アナログ信号からデジタル信号に変換された後に、各増幅器１１ａ〜増幅器１１ｍに入力される。
【００７１】
係数決定部１２０は、収音信号Ｓｍａ〜収音信号Ｓｍｍの信号パワーを検出する。各収音信号Ｓｍａ〜収音信号Ｓｍｍの信号パワーを比較し、最大パワーとなる収音信号を検出する。係数決定部１２０は、最大パワーと検出された収音信号に対するゲイン係数を「１」とする。係数決定部１２０は、最大パワーと検出された収音信号以外の収音信号に対するゲイン係数を「０」とする。
【００７２】
係数決定部１２０は、決定したゲイン係数を、増幅器１１ａ〜増幅器１１ｍに出力する。具体的には、係数決定部１２０は、最大パワーと検出された収音信号が入力される増幅器にはゲイン係数＝「１」を出力し、それ以外の増幅器にはゲイン係数＝「０」を出力する。
【００７３】
係数決定部１２０は、最大パワーと検出された収音信号の信号レベルを検出して、レベル情報ＩＦｏ１０Ａを生成する。係数決定部１２０は、レベル情報ＩＦｏ１０Ａを、ＦＰＧＡ５１Ａに出力する。
【００７４】
増幅器１１ａ〜増幅器１１ｍは、ゲイン調整可能な増幅器である。増幅器１１ａ〜増幅器１１ｍは、収音信号Ｓｍａ〜収音信号Ｓｍｍを、係数決定部１２０から与えられたゲイン係数で増幅し、それぞれに、増幅後収音信号Ｓｍｇａ〜増幅後収音信号Ｓｍｇｍを生成する。具体的に、例えば、増幅器１１ａは、係数決定部１２０からのゲイン係数で収音信号Ｓｍａを増幅して、増幅後収音信号Ｓｍｇａを出力する。増幅器１１ｂは、係数決定部１２０からのゲイン係数で収音信号Ｓｍｂを増幅して、増幅後収音信号Ｓｍｇｂを出力する。増幅器１１ｍは、係数決定部１２０からのゲイン係数で収音信号Ｓｍｍを増幅して、増幅後収音信号Ｓｍｇｍを出力する。
【００７５】
ここで、上述のように、ゲイン係数は、「１」もしくは「０」であるので、ゲイン係数＝「１」が与えられた増幅器は、収音信号の信号レベルをそのまま維持して出力する。この場合、増幅後収音信号は、収音信号のままとなる。
【００７６】
一方、ゲイン係数＝「０」が与えられた増幅器は、収音信号の信号レベルを「０」に抑圧する。この場合、増幅後収音信号は、信号レベル「０」の信号となる。
【００７７】
各増幅後収音信号Ｓｍｇａ〜Ｓｍｇｍは、合成部１３０に入力される。合成部１３０は、加算器であり、各増幅後収音信号Ｓｍｇａ〜増幅後収音信号Ｓｍｇｍを加算することで、子機音声信号Ｓｍ１０Ａを生成する。
【００７８】
ここで、増幅後収音信号Ｓｍｇａ〜増幅後収音信号Ｓｍｇｍは、当該増幅後収音信号Ｓｍｇａ〜Ｓｍｇｍの元となる収音信号Ｓｍａ〜収音信号Ｓｍｍの最大パワーのものだけが、収音信号に応じた信号レベルであり、他のものは信号レベルが「０」である。
【００７９】
したがって、増幅後収音信号Ｓｍｇａ〜増幅後収音信号Ｓｍｇｍを加算した子機音声信号Ｓｍ１０Ａは、最大パワーと検出された収音信号そのものとなる。
【００８０】
このような処理を行うことで、最大パワーの収音信号を検出して、子機音声信号Ｓｍ１０Ａとして出力することができる。この処理は、所定の時間間隔をおいて逐次実行される。したがって、最大パワーの収音信号が変化すれば、すなわち、この最大パワーの収音信号の音源が移動すれば、この変化および移動に応じて、子機音声信号Ｓｍ１０Ａとなる収音信号も変化する。これにより、各マイクロホンの収音信号に基づいて音源を追尾し、音源からの音を最も効率良く収音した子機音声信号Ｓｍ１０Ａを出力することができる。
【００８１】
ＡＧＣ１４０は、所謂、オートゲインコントロールアンプであり、子機音声信号Ｓｍ１０Ａを、所定ゲインで増幅して、ＦＰＧＡ５１Ａに出力する。ＡＧＣ１４０で設定するゲインは、通信仕様に応じて適宜設定される。具体的には、例えば、ＡＧＣ１４０で設定するゲインは、予め伝送損失を見積もっておき、当該伝送損失を補償するように設定される。
【００８２】
このような子機音声信号Ｓｍ１０Ａのゲインコントロールを行うことで、子機１０Ａからホスト装置１へ、子機音声信号Ｓｍ１０Ａを正確且つ確実に送信することができる。これにより、ホスト装置１は、子機音声信号Ｓｍ１０Ａを正確且つ確実に受信し、復調することができる。
【００８３】
そして、ＦＰＧＡ５１Ａには、ＡＧＣ後の子機音声信号Ｓｍ１０Ａとレベル情報ＩＦｏ１０Ａとが入力される。
【００８４】
ＦＰＧＡ５１Ａは、ＡＧＣ後の子機音声信号Ｓｍ１０Ａとレベル情報ＩＦｏ１０Ａとから子機データＤ１０Ａを生成して、ホスト装置１に送信する。この際、レベル情報ＩＦｏ１０Ａは、同じ子機データに割り当てられる子機音声信号Ｓｍ１０Ａと同期したデータである。
【００８５】
図１０は、子機からホスト装置に送信される子機データのデータフォーマット例を示す図である。子機データＤ１０Ａは、送信元である子機が識別可能なヘッダＤＨ、子機音声信号Ｓｍ１０Ａ、レベル情報ＩＦｏ１０Ａがそれぞれ所定ビット数割り当てられたデータである。例えば、図１０に示すように、ヘッダＤＨの後に子機音声信号Ｓｍ１０Ａが所定ビット割り当てられ、子機音声信号Ｓｍ１０Ａのビット列の後にレベル情報ＩＦｏ１０Ａが所定ビット割り当てられている。
【００８６】
他の子機１０Ｂ〜１０Ｅも、上述の子機１０Ａと同様に、それぞれに子機音声信号Ｓｍ１０Ｂ〜子機音声信号Ｓｍ１０Ｅとレベル情報ＩＦｏ１０Ｂ〜レベル情報ＩＦｏ１０Ｅとを含む子機データＤ１０Ｂ〜子機データＤ１０Ｅを生成して、ホスト装置１に出力する。なお、子機データＤ１０Ｂ〜子機データＤ１０Ｅは、それぞれ一定の単位ビットデータに分割されて上位に接続された子機に送信されることにより、各子機が協同してシリアルデータを作成することになる。
【００８７】
図１１は、ホスト装置１のＣＰＵ１２が所定の音声信号処理プログラムを実行することにより実現される各種構成を示すブロック図である。
【００８８】
ホスト装置１のＣＰＵ１２は、複数の増幅器２１ａ〜増幅器２１ｅ、係数決定部２２０、および合成部２３０を備える。
【００８９】
通信Ｉ／Ｆ１１には、各子機１０Ａ〜子機１０Ｅからの子機データＤ１０Ａ〜子機データＤ１０Ｅが入力される。通信Ｉ／Ｆ１１は、子機データＤ１０Ａ〜子機データＤ１０Ｅを復調し、子機音声信号Ｓｍ１０Ａ〜子機音声信号Ｓｍ１０Ｅと、各レベル情報ＩＦｏ１０Ａ〜レベル情報ＩＦｏ１０Ｅを取得する。
【００９０】
通信Ｉ／Ｆ１１は、子機音声信号Ｓｍ１０Ａ〜子機音声信号Ｓｍ１０Ｅをそれぞれ増幅器２１ａ〜増幅器２１ｅに出力する。具体的には、通信Ｉ／Ｆ１１は、子機音声信号Ｓｍ１０Ａを増幅器２１ａに出力し、子機音声信号Ｓｍ１０Ｂを増幅器２１ｂに出力する。同様に、通信Ｉ／Ｆ１１は、子機音声信号Ｓｍ１０Ｅを増幅器２１ｅに出力する。
【００９１】
通信Ｉ／Ｆ１１は、レベル情報ＩＦｏ１０Ａ〜レベル情報ＩＦｏ１０Ｅを係数決定部２２０に出力する。
【００９２】
係数決定部２２０は、レベル情報ＩＦｏ１０Ａ〜レベル情報ＩＦｏ１０Ｅを比較し、最大のレベル情報を検出する。
【００９３】
係数決定部２２０は、最大レベルと検出されたレベル情報に対応する子機音声信号に対するゲイン係数を「１」とする。係数決定部２２０は、最大レベルと検出されたレベル情報に対応する子機音声信号以外の収音信号に対するゲイン係数を「０」とする。
【００９４】
係数決定部２２０は、決定したゲイン係数を、増幅器２１ａ〜増幅器２１ｅに出力する。具体的には、係数決定部２２０は、最大レベルと検出されたレベル情報に対応する子機音声信号が入力される増幅器にはゲイン係数＝「１」を出力し、それ以外の増幅器にはゲイン係数＝「０」を出力する。
【００９５】
増幅器２１ａ〜増幅器２１ｅは、ゲイン調整可能な増幅器である。増幅器２１ａ〜２１ｅは、子機音声信号Ｓｍ１０Ａ〜子機音声信号Ｓｍ１０Ｅを、係数決定部２２０から与えられたゲイン係数で増幅し、それぞれに、増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅを生成する。
【００９６】
具体的に、例えば、増幅器２１ａは、係数決定部２２０からのゲイン係数で子機音声信号Ｓｍ１０Ａを増幅して、増幅後音声信号Ｓｍｇ１０Ａを出力する。増幅器２１ｂは、係数決定部２２０からのゲイン係数で子機音声信号Ｓｍ１０Ｂを増幅して、増幅後音声信号Ｓｍｇ１０Ｂを出力する。増幅器２１ｅは、係数決定部２２０からのゲイン係数で子機音声信号Ｓｍ１０Ｅを増幅して、増幅後音声信号Ｓｍｇ１０Ｅを出力する。
【００９７】
ここで、上述のように、ゲイン係数は、「１」もしくは「０」であるので、ゲイン係数＝「１」が与えられた増幅器は、子機音声信号の信号レベルをそのまま維持して出力する。この場合、増幅後音声信号は、子機音声信号のままとなる。
【００９８】
一方、ゲイン係数＝「０」が与えられた増幅器は、子機音声信号の信号レベルを「０」に抑圧する。この場合、増幅後音声信号は、信号レベル「０」の信号となる。
【００９９】
各増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅは、合成部２３０に入力される。合成部２３０は、加算器であり、各増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅを加算することで、追尾音声信号を生成する。
【０１００】
ここで、増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅは、当該増幅後音声信号Ｓｍｇ１０Ａ〜Ｓｍｇ１０Ｅの元となる子機音声信号Ｓｍ１０Ａ〜子機音声信号Ｓｍ１０Ｅの最大レベルのものだけが、子機音声信号に応じた信号レベルであり、他のものは信号レベルが「０」である。
【０１０１】
したがって、増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅを加算した追尾音声信号は、最大レベルと検出された子機音声信号そのものとなる。
【０１０２】
このような処理を行うことで、最大レベルの子機音声信号を検出して、追尾音声信号として出力することができる。この処理は、所定の時間間隔をおいて逐次実行される。したがって、最大レベルの子機音声信号が変化すれば、すなわち、この最大レベルの子機音声信号の音源が移動すれば、この変化および移動に応じて、追尾音声信号となる子機音声信号も変化する。これにより、各子機の子機音声信号に基づいて音源を追尾し、音源からの音を最も効率良く収音した追尾音声信号を出力することができる。
【０１０３】
そして、以上のような構成および処理を行うことで、子機１０Ａ〜子機１０Ｅによって、マイクロホンの収音信号による第１段の音源追尾が行われ、ホスト装置１によって、各子機１０Ａ〜子機１０Ｅの子機音声信号による第２段の音源追尾が行われる。これにより、複数の子機１０Ａ〜子機１０Ｅの複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍによる、音源追尾を実現することができる。したがって、子機１０Ａ〜子機１０Ｅの個数、および配置パターンを適宜設定することで、収音範囲の大きさや、話者等の音源位置に影響されることなく、確実に音源追尾を行うことができる。このため、音源の位置に依存することなく、音源からの音声を高品質に収音することができる。
【０１０４】
さらに、子機１０Ａ〜子機１０Ｅが送信する音声信号数は、子機に装着されるマイクロホンの本数に依存することなく、１つである。したがって、全てのマイクロホンの収音信号を、ホスト装置に送信するよりも、通信データ量を軽減することができる。例えば、各子機に装着されるマイクロホンの本数がｍ本の場合、各子機からホスト装置に送信される音声データ数は、全ての収音信号をホスト装置に送信する場合の（１／ｍ）となる。
【０１０５】
このように本実施形態の構成および処理を用いることで、全ての収音信号をホスト装置に送信する場合と同じ音源追尾精度を有しながら、通信負荷を軽減することができる。これにより、よりリアルタイムな音源追尾が可能になる。
【０１０６】
図１２は本発明の実施形態に係る子機の音源追尾処理のフローチャートである。以下、一台の子機の処理フローを説明するが、複数の子機は同じフローの処理を実行する。また、詳細な処理の内容は、上述の記載されているものであるので、以下では詳細な説明を省略する。
【０１０７】
子機は、各マイクロホンで収音し、収音信号を生成する（Ｓ１０１）。子機は、各マイクロホンの収音信号のレベルを検出する（Ｓ１０２）。子機は、最大パワーの収音信号を検出し、当該最大パワーの収音信号のレベル情報を生成する（Ｓ１０３）。
【０１０８】
子機は、各収音信号に対するゲイン係数を決定する（Ｓ１０４）。具体的には、子機は、最大パワーの収音信号のゲインを「１」に設定し、それ以外の収音信号のゲインを「０」に設定する。
【０１０９】
子機は、決定したゲイン係数で各収音信号を増幅処理する（Ｓ１０５）。子機は、増幅後の収音信号を合成し、子機音声信号を生成する（Ｓ１０６）。
【０１１０】
子機は、子機音声信号をＡＧＣ処理し（Ｓ１０７）、ＡＧＣ処理後の子機音声信号とレベル情報を含む子機データを生成して、ホスト装置に出力する（Ｓ１０８）。
【０１１１】
図１３は本発明の実施形態に係るホスト装置の音源追尾処理のフローチャートである。また、詳細な処理の内容は、上述の記載されているものであるので、以下では詳細な説明を省略する。
【０１１２】
ホスト装置１は、各子機から子機データを受信して、子機音声信号とレベル情報を取得する（Ｓ２０１）。ホスト装置１は、各子機からのレベル情報を比較し、最大レベルの子機音声信号を検出する（Ｓ２０２）。
【０１１３】
ホスト装置１は、各子機音声信号に対するゲイン係数を決定する（Ｓ２０３）。具体的には、ホスト装置１は、最大レベルの子機音声信号のゲインを「１」に設定し、それ以外の子機音声信号のゲインを「０」に設定する。
【０１１４】
ホスト装置１は、決定したゲイン係数で各子機音声信号を増幅処理する（Ｓ２０４）。ホスト装置１は、増幅後の子機音声信号を合成し、追尾音声信号を生成する（Ｓ２０５）。
【０１１５】
なお、上述の説明では、最大パワーの収音信号が切り替わるタイミングで、元最大パワーの収音信号のゲイン係数を「１」から「０」に設定し、新たな最大パワーの収音信号のゲイン係数を「０」から「１」に切り替えるようにした。しかしながら、これらのゲイン係数を、より詳細な段階的に変化させるようにしてもよい。例えば、元最大パワーの収音信号のゲイン係数を「１」から「０」になるように徐々に低下させ、新たな最大パワーの収音信号のゲイン係数を「０」から「１」になるように徐々に増加させる。すなわち、元最大パワーの収音信号から、新たな最大パワーの収音信号にクロスフェード処理を行うようにしてもよい。この際、これらのゲイン係数の和は「１」となるようにする。
【０１１６】
そして、このようなクロスフェード処理は、子機で行われる収音信号の合成のみでなく、ホスト装置１で行われる子機音声信号の合成に適用してもよい。
【０１１７】
また、上述の説明では、ＡＧＣを各子機１０Ａ〜子機１０Ｅに設ける例を示したが、ホスト装置１に設けてもよい。この場合、ホスト装置１の通信Ｉ／Ｆ１１でＡＧＣを行えばよい。
【０１１８】
なお、ホスト装置１は、図１４のフローチャートに示すように、スピーカ１０２から各子機に向けて試験用音波を発して各子機に当該試験用音波のレベルを判定させることも可能である。
【０１１９】
まず、ホスト装置１は、子機の起動状態を検知すると（Ｓ５１）、不揮発性メモリ１４からレベル判定用プログラムを読み出し（Ｓ５２）、通信Ｉ／Ｆ１１を介して各子機に送信する（Ｓ５３）。このとき、ホスト装置１のＣＰＵ１２は、レベル判定用プログラムを一定の単位ビットデータに分割し、単位ビットデータを各子機が受け取る順に配列したシリアルデータを作成して、子機へ送信する。
【０１２０】
各子機は、ホスト装置１から送信されたレベル判定用プログラムを受信する（Ｓ７１）。レベル判定用プログラムは、揮発性メモリ２３Ａに一時記憶する（Ｓ７２）。このとき、各子機は、シリアルデータから自己が受け取るべき単位ビットデータを抜き出して受け取り、抜き出した単位ビットデータを一時記憶する。そして、各子機は、一時記憶した単位ビットデータを結合し、結合したレベル判定用プログラムを実行する（Ｓ７３）。これにより、音声信号処理部２４は、図９に示した構成を実現する。ただし、レベル判定用プログラムは、レベル判定を行うだけであり、子機音声信号Ｓｍ１０Ａを生成して送信する必要はないため、増幅器１１ａ〜増幅器１１ｍ、係数決定部１２０、合成部１３０、およびＡＧＣ１４０の構成は不要である。
【０１２１】
そして、ホスト装置１は、レベル判定用プログラムを送信してから所定時間経過後に試験用音波を発する（Ｓ５４）。各子機の係数決定部２２０は、音声レベル判定手段として機能し、複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍに入力された試験用音波のレベルを判定する（Ｓ７４）。係数決定部２２０は、判定結果となるレベル情報（レベルデータ）をホスト装置１に送信する（Ｓ７５）。レベルデータは、複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍそれぞれについて送信してもよいし、子機毎に最大レベルを示したレベルデータのみを送信してもよい。なお、レベルデータは、一定の単位ビットデータに分割して上位に接続された子機に送信されることにより、各子機が協同してレベル判定用シリアルデータを作成することになる。
【０１２２】
次に、ホスト装置１は、各子機からレベルデータを受信する（Ｓ５５）。ホスト装置１は、受信したレベルデータに基づいて、各子機に送信すべき音声信号処理プログラムを選択し、これらプログラムを不揮発性メモリ１４から読み出す（ｓ５６）。例えば、試験用音波のレベルが高い子機は、エコーのレベルが高いと判断し、エコーキャンセラのプログラムを選択する。また、試験用音波のレベルが低い子機は、エコーのレベルが低いと判断し、ノイズキャンセラのプログラムを選択する。そして、ホスト装置１は、読み出した音声信号処理プログラムを各子機に送信する（ｓ５７）。以後の処理は、図５に示したフローチャートと同じであるため、説明を省略する。
【０１２３】
なお、ホスト装置１は、受信したレベルデータに基づいてエコーキャンセラのプログラムにおける各子機のフィルタ係数の数を変更し、各子機へフィルタ係数の数を変更するための変更パラメータを定めてもよい。例えば、試験用音波のレベルが高い子機にはタップ数を増加し、試験用音波のレベルが低い子機にはタップ数を減少する。この場合、ホスト装置１は、この変更パラメータを一定の単位ビットデータに分割して、単位ビットデータを各子機が受け取る順に配列した変更パラメータ用シリアルデータを作成し、各子機へ送信する。
【０１２４】
なお、エコーキャンセラは、各子機における複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍのそれぞれについて備える態様とすることも可能である。この場合、各子機の係数決定部２２０は、複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍのそれぞれについてレベルデータを送信する。
【０１２５】
また、上述のレベル情報ＩＦｏ１０Ａ〜レベル情報ＩＦｏ１０Ｅには、各子機におけるマイクロホンの識別情報が含まれていてもよい。
【０１２６】
この場合、図１５に示すように、子機は、最大パワーの収音信号を検出し、当該最大パワーの収音信号のレベル情報を生成したとき（Ｓ８０１）、最大パワーが検出されたマイクロホンの識別情報をレベル情報に含めて送信する（Ｓ８０２）。
【０１２７】
そして、ホスト装置１は、各子機からレベル情報を受信し（Ｓ９０１）、最大レベルとなるレベル情報を選択したときに、当該選択されたレベル情報に含まれているマイクロホンの識別情報に基づいて当該マイクロホンを特定することで、使用されているエコーキャンセラを特定する（Ｓ９０２）。ホスト装置１は、特定されたエコーキャンセラを使用している子機に対して、当該エコーキャンセラに関係する各信号の送信リクエストを行う（Ｓ９０３）。
【０１２８】
そして、子機は、送信リクエストを受信した場合（Ｓ８０３）、ホスト装置１に対して、指定されたエコーキャンセラから擬似回帰音信号、収音信号ＮＥ１（前段のエコーキャンセラによりエコー成分が除去される前の収音信号）、および収音信号ＮＥ１’（前段のエコーキャンセラによりエコー成分が除去された後の収音信号）の各信号を送信する（Ｓ８０４）。
【０１２９】
ホスト装置１は、これら各信号を受信し（Ｓ９０４）、受信した各信号をエコーサプレッサに入力する（Ｓ９０５）。これにより、エコーサプレッサのエコー生成部１２５には、特定されたエコーキャンセラの学習進捗度に応じた係数が設定されるため、適切な残留エコー成分を生成することができる。
【０１３０】
なお、図１６に示すように、進捗度算出部１２４は、音声信号処理部２４Ａ側に設ける態様とすることも可能である。この場合、ホスト装置１は、図１５のＳ９０３において、特定したエコーキャンセラを使用している子機に対して、学習進捗度に応じて変化する係数の送信をリクエストする。子機は、Ｓ８０４において、進捗度算出部１２４で算出される係数を読み出し、ホスト装置１に送信する。エコー生成部１２５では、受信した係数および擬似回帰音信号に応じて残留エコー成分が生成される。
【０１３１】
次に、図１７は、ホスト装置および子機の配置に関する変形例を示した図である。図１７（Ａ）は、図６に示した接続態様と同じであるが、子機１０Ｃがホスト装置１に最も遠く、子機１０Ｅがホスト装置１に最も近くなる例を示している。すなわち、子機１０Ｃおよび子機１０Ｄを接続するケーブル３６１が曲げられて子機１０Ｄおよび子機１０Ｅがホスト装置１に近づくようになっている。
【０１３２】
一方、図１７（Ｂ）の例では、子機１０Ｃがケーブル３３１を介してホスト装置１に接続されている。この場合、子機１０Ｃは、ホスト装置１から送信されたデータを分岐して子機１０Ｂおよび子機１０Ｄに送信する。また、子機１０Ｃは、子機１０Ｂから送信されたデータと、子機１０Ｄから送信されたデータと、自装置のデータと、をまとめてホスト装置１に送信する。この場合も、直列接続された複数の子機のいずれか１つにホスト装置が接続されていることになる。
【０１３３】
本発明を詳細にまた特定の実施態様を参照して説明してきたが、本発明の精神、範囲または意図の範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
【符号の説明】
【０１３４】
１…ホスト装置
２Ａ，２Ｂ，２Ｃ，２Ｄ，２Ｅ…マイクユニット
１１…通信Ｉ／Ｆ
１２…ＣＰＵ
１３…ＲＡＭ
１４…不揮発性メモリ
２１Ａ…通信Ｉ／Ｆ
２２Ａ…ＤＳＰ
２３Ａ…揮発性メモリ
２４Ａ…音声信号処理部
２５Ａ…マイク
【図１】
2014116932.tif 000003
【図２】
2014116932.tif 000004
【図３】
2014116932.tif 000005
【図４】
2014116932.tif 000006
【図５】
2014116932.tif 000007
【図６】
2014116932.tif 000008
【図７】
2014116932.tif 000009
【図８】
2014116932.tif 000010
【図９】
2014116932.tif 000011
【図１０】
2014116932.tif 000012
【図１１】
2014116932.tif 000013
【図１２】
2014116932.tif 000014
【図１３】
2014116932.tif 000015
【図１４】
2014116932.tif 000016
【図１５】
2014116932.tif 000017
【図１６】
2014116932.tif 000018
【図１７】
2014116932.tif 000019