(57)【要約】  複数のマイクロフォンからの信号にエコーキャンセル処理が施される場合におけるクリップ補償に関して、補償精度を高める。  本技術に係る信号処理装置は、複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル部と、複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出部と、クリップしていないマイクロフォンの信号に基づいて、クリップしたマイクロフォンのエコーキャンセル処理後の信号を補償するクリップ補償部とを備えている。
2019239723.tif 000002
【特許請求の範囲】
【請求項１】
複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル部と、
前記複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出部と、
クリップしていない前記マイクロフォンの信号に基づいて、クリップした前記マイクロフォンの前記エコーキャンセル処理後の信号を補償するクリップ補償部と、を備える
信号処理装置。
【請求項２】
前記クリップ補償部は、
クリップした前記マイクロフォンの信号を抑圧することで補償する
請求項１に記載の信号処理装置。
【請求項３】
前記クリップ補償部は、
クリップしていない前記マイクロフォンの信号とクリップした前記マイクロフォンの信号との平均パワー比に基づいてクリップした前記マイクロフォンの信号を抑圧する
請求項２に記載の信号処理装置。
【請求項４】
前記クリップ補償部は、
前記平均パワー比として、クリップしていない前記マイクロフォンのうち平均パワーが最小の前記マイクロフォンの信号との平均パワー比を用いる
請求項３に記載の信号処理装置。
【請求項５】
前記クリップ補償部は、
ユーザ発話があり且つスピーカ出力がある場合には、クリップした前記マイクロフォンの信号の抑圧量を発話レベルに応じて調整する
請求項１に記載の信号処理装置。
【請求項６】
前記クリップ補償部は、
ユーザ発話があり且つスピーカ出力がない場合には、クリップした前記マイクロフォンの信号を後段の音声認識処理の特性に応じた抑圧量により抑圧する
請求項１に記載の信号処理装置。
【請求項７】
前記クリップ補償部は、
ユーザ発話があり且つスピーカ出力がない場合には、クリップした前記マイクロフォンの信号に対する前記補償を行わない
請求項１に記載の信号処理装置。
【請求項８】
前記複数のマイクロフォン又は前記スピーカの少なくとも何れかの位置を変化させる駆動部と、
前記クリップ検出部によりクリップが検出されたことに応じて前記駆動部により前記複数のマイクロフォン又は前記スピーカの少なくとも何れかの位置を変化させる制御部と、を備える
請求項１に記載の信号処理装置。
【請求項９】
複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル手順と、
前記複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出手順と、
クリップしていない前記マイクロフォンの信号に基づいて、クリップした前記マイクロフォンの前記エコーキャンセル処理後の信号を補償するクリップ補償手順と、を有する
信号処理方法。
【請求項１０】
情報処理装置が実行するプログラムであって、
複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル機能と、
前記複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出機能と、
クリップしていない前記マイクロフォンの信号に基づいて、クリップした前記マイクロフォンの前記エコーキャンセル処理後の信号を補償するクリップ補償機能と、を前記情報処理装置に実現させる
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本技術は、複数のマイクロフォンからの信号について信号処理を施す信号処理装置とその方法、及びプログラムに関するものであり、特には、複数のマイクロフォンの信号にエコーキャンセル処理を施す場合において、クリップしたマイクロフォンの信号を補償するための技術に関する。
【背景技術】
【０００２】
近年、スマートスピーカ等と称される、複数のマイクロフォンとスピーカとが同一筐体に設けられた機器が普及している。この種の機器では、複数のマイクロフォンの信号に基づきユーザの発話方向の推定や発話内容の推定（音声認識）を行うものがある。推定した発話方向に基づいて機器の正面をユーザ発話方向に向けたり、音声認識結果に基づいてユーザとの会話を行う等の動作が実現されている。【０００３】
この種の機器では、複数のマイクロフォンの位置はユーザの位置と比べてスピーカに対して近接していることが通常であり、スピーカによる大音量再生時には、マイクロフォンの信号をＡ／Ｄ変換する過程において、量子化データが最大値に張り付く所謂クリップと呼ばれる現象が生じる。【０００４】
なお、関連する従来技術として、下記特許文献１には、複数のマイクロフォンからの信号を記録するシステムにおいて、クリップしたマイクロフォンの信号におけるクリップ部分の波形をクリップしていないマイクロフォンの信号の波形により置き換えることで、クリップ補償を実現する技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１０−２４５６５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ここで、スマートスピーカのような機器においては、複数のマイクロフォンからの信号に含まれるスピーカの出力信号成分を抑圧するためのエコーキャンセル処理を施す場合がある。このようなエコーキャンセル処理が行われることで、スピーカによる音出力が行われる下での発話方向推定や音声認識の精度向上を図ることができる。【０００７】
本技術は上記事情に鑑み為されたものであり、複数のマイクロフォンからの信号にエコーキャンセル処理が施される場合におけるクリップ補償に関して、補償精度を高めることを目的とする。
【課題を解決するための手段】
【０００８】
本技術に係る信号処理装置は、複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル部と、前記複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出部と、クリップしていない前記マイクロフォンの信号に基づいて、クリップした前記マイクロフォンの前記エコーキャンセル処理後の信号を補償するクリップ補償部と、を備えるものである。【０００９】
複数のマイクロフォンからの信号にエコーキャンセル処理が施される場合において、エコーキャンセル処理前の信号に対しクリップ補償を行うとした場合は、スピーカの出力信号成分と目的音を含む他成分との切り分けが困難な状態でクリップ補償を行うことになるため、クリップ補償精度が低下する傾向となる。上記のようにエコーキャンセル処理後の信号に対しクリップ補償を行うことで、スピーカの出力信号成分が或る程度抑圧された信号を対象としてクリップ補償を行うことが可能とされる。【００１０】
上記した本技術に係る信号処理装置においては、前記クリップ補償部は、クリップした前記マイクロフォンの信号を抑圧することで補償することが望ましい。【００１１】
クリップしたマイクロフォンの信号を抑圧するという補償手法を採ることで、クリップしたマイクロフォンの信号の位相情報が補償によって失われないようにすることが可能とされる。【００１２】
上記した本技術に係る信号処理装置においては、前記クリップ補償部は、クリップしていない前記マイクロフォンの信号とクリップした前記マイクロフォンの信号との平均パワー比に基づいてクリップした前記マイクロフォンの信号を抑圧することが望ましい。【００１３】
これにより、クリップしたマイクロフォンの信号のパワーを、クリップしていなかった場合に得られたであろうエコーキャンセル処理後のパワーに適切に抑圧することが可能とされる。【００１４】
上記した本技術に係る信号処理装置においては、前記クリップ補償部は、前記平均パワー比として、クリップしていない前記マイクロフォンのうち平均パワーが最小の前記マイクロフォンの信号との平均パワー比を用いることが望ましい。【００１５】
平均パワーが最小であるマイクロフォンは、クリップが最も生じ難いマイクロフォンであると換言できる。【００１６】
上記した本技術に係る信号処理装置においては、前記クリップ補償部は、ユーザ発話があり且つスピーカ出力がある場合には、クリップした前記マイクロフォンの信号の抑圧量を発話レベルに応じて調整することが望ましい。【００１７】
ユーザ発話があり且つスピーカ出力がある所謂ダブルトークの区間では、ユーザの発話レベルが大きい場合、クリッピングによる雑音重畳区間においても発話成分を多分に含む（なお、ここで言うダブルトークとは、図９に示すようにユーザ発話とスピーカ出力とが時間的に重複して生じることを意味する）。一方、発話レベルが小さい場合、大きなクリッピング雑音に発話成分が埋もれてしまう傾向となる。そこで、ダブルトーク区間では、クリップしたマイクロフォンの信号の抑圧量を発話レベルに応じて調整する。
これにより、ユーザの発話レベルが大きい場合には信号の抑圧量を抑えて発話成分が抑圧されてしまうことの防止を図り、またユーザの発話レベルが小さい場合には信号の抑圧量を強めてクリッピング雑音を抑圧することが可能とされる。【００１８】
上記した本技術に係る信号処理装置においては、前記クリップ補償部は、ユーザ発話があり且つスピーカ出力がない場合には、クリップした前記マイクロフォンの信号を後段の音声認識処理の特性に応じた抑圧量により抑圧することが望ましい。【００１９】
ユーザ発話があり且つスピーカ出力がない場合とは、クリップの原因がユーザ発話であると推定される場合である。上記構成によれば、クリップの原因がユーザ発話であると推定される場合において、例えばクリッピング雑音が重畳していても或る程度の発話レベルがある場合の方が、発話成分が抑圧されてしまう場合よりも音声認識精度を保つことができる等、後段の音声認識処理の特性に応じた適切な抑圧量によるクリップ補償を行うことが可能とされる。【００２０】
上記した本技術に係る信号処理装置においては、前記クリップ補償部は、ユーザ発話があり且つスピーカ出力がない場合には、クリップした前記マイクロフォンの信号に対する前記補償を行わないことが望ましい。【００２１】
ユーザ発話があり且つスピーカ出力がない場合、すなわち、クリップの原因がユーザ発話であると推定される場合には、信号を抑圧しない方が却って後段の音声認識結果が良好となる場合があることが経験上分かっている。そのような場合には、上記のようにクリップ補償を行わないようにすることで、音声認識精度の向上を図ることができる。【００２２】
上記した本技術に係る信号処理装置においては、前記複数のマイクロフォン又は前記スピーカの少なくとも何れかの位置を変化させる駆動部と、前記クリップ検出部によりクリップが検出されたことに応じて前記駆動部により前記複数のマイクロフォン又は前記スピーカの少なくとも何れかの位置を変化させる制御部と、を備えることが望ましい。【００２３】
これにより、クリップが検出された場合は、各マイクロフォンとスピーカとの位置関係を変化させたり、複数のマイクロフォン又はスピーカの位置を壁反射等が少ない位置に移動させたりすることが可能とされる。【００２４】
また、本技術に係る信号処理方法は、複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル手順と、前記複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出手順と、クリップしていない前記マイクロフォンの信号に基づいて、クリップした前記マイクロフォンの前記エコーキャンセル処理後の信号を補償するクリップ補償手順と、を有する信号処理方法である。【００２５】
このような信号処理方法によっても、上記した本技術に係る信号処理装置と同様の作用が得られる。【００２６】
さらに、本技術に係るプログラムは、情報処理装置が実行するプログラムであって、複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル機能と、前記複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出機能と、クリップしていない前記マイクロフォンの信号に基づいて、クリップした前記マイクロフォンの前記エコーキャンセル処理後の信号を補償するクリップ補償機能と、を前記情報処理装置に実現させるプログラムである。【００２７】
このような本技術に係るプログラムにより、上記した本技術に係る信号処理装置が実現される。
【発明の効果】
【００２８】
本技術によれば、複数のマイクロフォンからの信号にエコーキャンセル処理が施される場合におけるクリップ補償に関して、補償精度を高めることができる。
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
【図面の簡単な説明】
【００２９】
【図１】本技術に係る実施形態としての信号処理装置の外観構成例を示した斜視図である。
【図２】実施形態としての信号処理装置が備えるマイクロフォンアレイの説明図である。
【図３】実施形態としての信号処理装置の電気的な構成例を説明するためのブロック図である。
【図４】実施形態としての信号処理装置が備える音声信号処理部の内部構成例を示したブロック図である。
【図５】クリップのイメージを示した図である。
【図６】実施形態としての信号処理装置の動作について説明するためのフローチャートである。
【図７】エコーキャンセル処理の基本的な概念について説明するための図である。
【図８】実施形態としての信号処理装置が備えるＡＥＣ処理部の内部構成例を示した図である。
【図９】ダブルトークについての説明図である。
【図１０】各場合に対応してクリップ補償に係る処理を実行し分けることについての説明図である。
【図１１】実施形態で採用するシグモイド関数の挙動を例示した図である。
【図１２】従来技術におけるクリップ補償手法を模式化して表した図である。
【図１３】従来技術における問題点についての説明図である。
【図１４】実施形態としてのクリップ補償手法を実現するために実行すべき具体的な処理手順を示したフローチャートである。
【発明を実施するための形態】
【００３０】
以下、添付図面を参照し、本技術に係る実施形態を次の順序で説明する。
＜１．信号処理装置の外観構成＞
＜２．信号処理装置の電気的構成＞
＜３．信号処理装置の動作＞
＜４．実施形態におけるエコーキャンセル手法＞
＜５．実施形態としてのクリップ補償手法＞
＜６．処理手順＞
＜７．変形例＞
＜８．実施形態のまとめ＞
＜９．本技術＞
【００３１】
＜１．信号処理装置の外観構成＞
図１は、本技術に係る実施形態としての信号処理装置１の外観構成例を示した斜視図である。
図示のように信号処理装置１は、略円柱状の筐体１１と、筐体１１の上方に位置された略円柱状の可動部１４とを備えている。
可動部１４は、図中の白抜き両矢印で示す方向への回転（パン方向の回転）が可能となるように筐体１１によって支持されている。筐体１１は、例えばテーブルや床等の所定の位置に載置された状態において、可動部１４と連動して回転することはなく、いわば固定部を形成している。
可動部１４は、駆動部として信号処理装置１に内蔵されたサーボモータ２１（図３を参照して後述する）により回転駆動される。
【００３２】
筐体１１の上端部には、マイクロフォンアレイ１２が設けられている。
図２に示されるように、マイクロフォンアレイ１２は、複数（図２の例においては８個としている）のマイクロフォン１３が円周上に略等間隔に配列されて構成されている。
可動部１４側ではなく筐体１１側にマイクロフォンアレイ１２が設けられていることで、可動部１４が回転しても各マイクロフォン１３の位置は不変とされる。すなわち、空間１００における各マイクロフォン１３の位置は可動部１４が回転しても変化しない。
【００３３】
可動部１４には、例えばＬＣＤ（Liquid Crystal Display）や有機ＥＬ（Electro-Luminescence）ディスプレイ等による表示部１５が設けられている。この例においては、表示部１５に顔の絵が表示されており、該顔の向く方向が信号処理装置１の正面方向であることを表すものとされる。後述するように、可動部１４は、例えば表示部１５が発話方向に向くように回転される。
【００３４】
また、可動部１４においては、表示部１５の裏側にスピーカ１６が収容されている。スピーカ１６は、ユーザに対してメッセージや楽曲等の音を出力する。
【００３５】
上記のような信号処理装置１は、例えば室内等の空間１００に配置される。
信号処理装置１は、例えばスマートスピーカ、音声エージェント、ロボット等に組み込まれ、周囲の音源（例えば人）から音声が発せられた場合、その音声が発せられた発話方向を推定する機能を有している。推定された方向は、信号処理装置１の正面を発話方向に指向させるのに利用される。
【００３６】
＜２．信号処理装置の電気的構成＞
図３は、信号処理装置１の電気的な構成例を説明するためのブロック図である。
図示のように信号処理装置１は、図１に示したマイクロフォンアレイ１２、表示部１５、スピーカ１６と共に、音声信号処理部１７、制御部１８、表示駆動部１９、モータ駆動部２０、及び音声駆動部２２を備えている。
【００３７】
音声信号処理部１７は、例えばＤＳＰ（Digital Signal Processor）、或いはＣＰＵ（Central Processing Unit）を有したコンピュータ装置等で構成することができ、マイクロフォンアレイ１２における各マイクロフォン１３からの信号を処理する。
なお、図示は省略したが、各マイクロフォン１３からの信号は、それぞれＡ／Ｄ変換器によりアナログ／デジタル変換された上で音声信号処理部１７に入力される。
【００３８】
音声信号処理部１７は、エコー成分抑圧部１７ａと音声抽出処理部１７ｂとを備え、各マイクロフォン１３からの信号はエコー成分抑圧部１７ａを介して音声抽出処理部１７ｂに入力される。
エコー成分抑圧部１７ａは、後述する出力音声信号Ｓｓを参照信号として、各マイクロフォン１３の信号に含まれるスピーカ１６からの出力信号成分を抑圧するためのエコーキャンセル処理を行う。なお、本例のエコー成分抑圧部１７ａは、各マイクロフォン１３からの信号を対象としたクリップ補償を行うが、これについては後に改めて説明する。
【００３９】
音声抽出処理部１７ｂは、エコー成分抑圧部１７ａを介して入力される各マイクロフォン１３の信号に基づき、発話方向の推定や目的音の信号強調や雑音抑圧を行って目的音の抽出（音声抽出）を行う。音声抽出処理部１７ｂは、目的音を抽出した信号としての抽出音声信号Ｓｅを制御部１８に出力する。また音声抽出処理部１７ｂは、推定した発話方向を表す情報を発話方向情報Ｓｄとして制御部１８に出力する。
なお、音声抽出処理部１７ｂの詳細については改めて説明する。
【００４０】
制御部１８は、例えばＣＰＵ、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）等を有するマイクロコンピュータを備えて構成され、ＲＯＭに記憶されたプログラムに従った処理を実行することで信号処理装置１の全体制御を行う。
例えば、制御部１８は、表示部１５による情報表示に係る制御を行う。具体的には、表示部１５を表示駆動するためのドライバ回路を備えた表示駆動部１９に対する指示を行って表示部１５に各種の情報表示を実行させる。
【００４１】
また、本例の制御部１８は、不図示の音声認識エンジンを備え、該音声認識エンジンにより音声信号処理部１７（音声抽出処理部１７ｂ）から入力した抽出音声信号Ｓｅに基づいて音声認識処理を行うと共に、音声認識処理の結果に基づき、実行する処理を決定する。
なお、制御部１８がインターネット等を介してクラウド６０に接続され、クラウド６０に音声認識エンジンが存在する場合においては、該音声認識エンジンを用いて音声認識処理を行うこともできる。
【００４２】
また、制御部１８は、発話が検出されたことに伴い音声信号処理部１７から発話方向情報Ｓｄを入力した場合は、信号処理装置１の正面を発話方向に向けるために必要なサーボモータ２１の回転角を計算し、該回転角を表す情報を回転角情報としてモータ駆動部２０に出力する。
モータ駆動部２０は、サーボモータ２１を駆動するためのドライバ回路等を備え、制御部１８から入力した回転角情報に基づきサーボモータ２１を駆動する。
【００４３】
さらに、制御部１８は、スピーカ１６による音出力の制御を行う。具体的に、制御部１８は、スピーカ１６を駆動するためのドライバ回路（Ｄ／Ａ変換器やアンプ等を含む）等を備えて構成された音声駆動部２２に音声信号を出力してスピーカ１６より該音声信号に応じた音出力を実行させる。
なお以下、このように制御部１８が音声駆動部２２に出力する音声信号を「出力音声信号Ｓｓ」と表記する。
【００４４】
図４は、音声信号処理部１７の内部構成例を示したブロック図である。
図示のように音声信号処理部１７は、図３に示したエコー成分抑圧部１７ａ及び音声抽出処理部１７ｂを備えており、エコー成分抑圧部１７ａはクリップ検出部３０、ＦＦＴ（Fast Fourier Transformation ）処理部３１、ＡＥＣ（Acoustic Echo Cancellation）処理部３２、クリップ補償部３３、及びＦＦＴ処理部３４を備え、音声抽出処理部１７ｂは、発話区間推定部３５、発話方向推定部３６、音声強調部３７、及び雑音抑圧部３８を備えている。
【００４５】
エコー成分抑圧部１７ａにおいて、クリップ検出部３０は、各マイクロフォン１３からの信号についてクリップ検出を行う。
図５は、クリップのイメージを示している。クリップは、Ａ／Ｄ変換時に量子化データが最大値に張り付く現象を意味するものである。
クリップ検出部３０は、クリップを検出したことに応じ、クリップを検出したマイクロフォン１３のチャネルを表す情報をクリップ補償部３３に出力する。
【００４６】
エコー成分抑圧部１７ａにおいて、各マイクロフォン１３からの信号は、クリップ検出部３０を介してＦＦＴ処理部３１に入力される。ＦＦＴ処理部３１は、時間信号として入力される各マイクロフォン１３からの信号について、ＦＦＴによる直交変換を行って周波数信号に変換する。
また、ＦＦＴ処理部３４は、時間信号として入力される出力音声信号Ｓｓについて、ＦＦＴによる直交変換を行って周波数信号に変換する。
ここで、直交変換については、ＦＦＴに限定されるものでなく、例えばＤＣＴ（Discrete Cosine Transformation）等の他の手法を採用することもできる。
【００４７】
ＡＥＣ処理部３２には、ＦＦＴ処理部３１、ＦＦＴ処理部３４によりそれぞれ周波数信号に変換された各マイクロフォン１３からの信号、及び出力音声信号Ｓｓが入力される。
ＡＥＣ処理部３２は、入力された出力音声信号Ｓｓに基づき、各マイクロフォン１３からの信号に含まれるエコー成分をキャンセルする処理を行う。すなわち、スピーカ１６から出力された音声が所定の時間だけ遅延して、エコーとしてマイクロフォンアレイ１２により他の音に混ざって収音されることがある。ＡＥＣ処理部３２は、出力音声信号Ｓｓを参照信号として、各マイクロフォン１３の信号から該エコーの成分を相殺するように処理を行う。
また、本例のＡＥＣ処理部３２は、後述するダブルトーク評価に係る処理を行うが、これについては改めて説明する。
【００４８】
クリップ補償部３３は、ＡＥＣ処理部３２によるエコーキャンセル処理後の各マイクロフォン１３の信号について、クリップ検出部３０による検出結果とＦＦＴ処理部３４を介して入力される周波数信号としての出力音声信号Ｓｓとに基づいたクリップ補償を行う。
本例では、クリップ補償部３３には、ＡＥＣ処理部３２がダブルトークに係る評価を行って生成するダブルトーク評価値Ｄｉが入力され、クリップ補償部３３は該ダブルトーク評価値Ｄｉに基づいてクリップ補償を行うことになるが、これについては改めて説明する。
【００４９】
音声抽出処理部１７ｂにおいては、クリップ補償部３３を介した各マイクロフォン１３からの信号が発話区間推定部３５、発話方向推定部３６、及び音声強調部３７のそれぞれに入力される。
【００５０】
発話区間推定部３５は、入力された各マイクロフォン１３からの信号に基づき、発話区間（時間方向における発話の区間）を推定する処理を行い、発話区間を表す情報である発話区間情報Ｓｐを発話方向推定部３６及び音声強調部３７に出力する。
なお、発話区間の具体的な推定手法については、例えばＡＩ（Artificial Intelligence）の技術（深層学習等）を利用した手法等、種々の手法が考えられ、また本技術に直接的に関わるものでもないことから、具体的な処理の説明については省略する。
【００５１】
発話方向推定部３６は、各マイクロフォン１３からの信号と、発話区間情報Ｓｐとに基づき、発話方向を推定する。発話方向推定部３６は、推定した発話方向を表す情報を発話方向情報Ｓｄとして出力する。
なお、発話方向の推定手法としては、ＭＵＳＩＣ（Multiple Signal Classification）法を基礎とした推定手法、具体的には、例えば一般化固有値分解を用いたＭＵＳＩＣ法に基づく推定手法等の種々の手法を挙げることができるが、発話方向の推定手法についても本技術に直接的に関わるものではなく、具体的な処理については説明を省略する。
【００５２】
音声強調部３７は、発話方向推定部３６が出力する発話方向情報Ｓｄと発話区間推定部３５が出力する発話区間情報Ｓｐとに基づき、各マイクロフォン１３からの信号に含まれる信号成分のうち、目的音（ここでは発話音）に対応した信号成分を強調する。具体的には、ビームフォーミングにより発話方向に存在する音源の成分を強調する処理を行う。
【００５３】
雑音抑圧部３８は、音声強調部３７による出力信号に含まれる雑音成分（主として定常雑音の成分）を抑圧する。
この雑音抑圧部３８による出力信号が、前述した抽出音声信号Ｓｅとして音声抽出処理部１７ｂより出力される。
【００５４】
＜３．信号処理装置の動作＞
続いて、図６のフローチャートを参照して、信号処理装置１の動作について説明する。
なお、図６では、ＡＥＣ処理部３２によるエコーキャンセルやクリップ補償部３３によるクリップ補償に係る動作については省略している。
【００５５】
図６において、先ず、ステップＳ１では、マイクロフォンアレイ１２が音声を入力する。すなわち発話者が発生した音声が入力される。
ステップＳ２では、発話方向推定部３６により発話方向推定処理が実行される。
ステップＳ３では、音声強調部３７が信号を強調する。すなわち、発話方向と推定された方向の音声成分が強調される。
さらに、ステップＳ４では、雑音抑圧部３８が雑音成分を抑圧し、ＳＮＲ（Signal-to-Noise Ratio）を改善する。
【００５６】
ステップＳ５では、制御部１８（又はクラウド６０に存在する外部の音声認識エンジン）が音声を認識する処理を行う。すなわち、音声信号処理部１７から入力された抽出音声信号Ｓｅに基づいて音声を認識する処理を行う。なお、認識結果は必要に応じてテキスト化される。
【００５７】
ステップＳ６では、制御部１８が動作を決定する。すなわち、認識された音声の内容に対応する動作が決定される。そして、ステップＳ７では、制御部１８がモータ駆動部２０を制御してサーボモータ２１により可動部１４を駆動させる。
さらに、ステップＳ８で制御部１８は、音声駆動部２２により音声をスピーカ１６から出力させる。
【００５８】
これにより、例えば発話者から「こんにちは」等の挨拶が認識された場合、発話者の方向に可動部１４が回転され、スピーカ１６から「こんにちは。お元気ですか」等といった挨拶が発話者に向けて発せられる。
【００５９】
＜４．実施形態におけるエコーキャンセル手法＞
ここで、実施形態としてのクリップ補償の説明に先立ち、先ずは実施形態で前提とするエコーキャンセル手法について説明しておく。
図７を参照し、エコーキャンセル処理の基本的な概念について説明しておく。
先ず、ある時間フレームｎにおけるスピーカ１６による出力信号（出力音声信号Ｓｓ）を、参照信号ｘ（ｎ）と表記する。参照信号ｘ（ｎ）は、スピーカ１６から出力された後、空間を通してマイクロフォン１３に入力される。このときマイクロフォン１３で得られる信号（収音信号）をマイク入力信号ｄ（ｎ）と表記する。
【００６０】
スピーカ１６からの出力音がマイクロフォン１３に到達するまでの空間伝達特性ｈは未知であり、エコーキャンセル処理ではこの未知の空間伝達特性ｈを推定し、マイク入力信号ｄ（ｎ）から、推定した空間伝達特性を考慮した参照信号ｘ（ｎ）を差し引くということを行う。この推定した空間伝達特性を以下、推定伝達特性ｗ（ｎ）と表記する。
【００６１】
マイクロフォン１３に到達するスピーカ１６の出力音としては、直接届く音から、壁などに反射して戻ってくるといったある程度時間遅れを持つ成分も含まれるため、過去の対象とする遅延時間をタップ長Ｌで表すと、マイク入力信号ｄ（ｎ）、及び推定伝達特性ｗ（ｎ）は下記［式１］［式２］のように表現できる。
【数１】
2019239723.tif 000003
［式１］において、Ｔは転置を表す。
【００６２】
実際には、時間フレームｎに対して高速フーリエ変換した周波数ビン数Ｎ個の推定を行うことになる。周波数ｋ（ｋ＝１〜Ｎ）番目のエコーキャンセル処理は、一般的なＬＭＳ（Least Mean Square）法を用いる場合、次の［式３］［式４］で行う。
【数２】
2019239723.tif 000004
Ｈはエルミート転置を、*は複素共役を表す。μは学習速度を決定するステップサイズで通常は０＜μ≦２の間の値を選択する。
［式３］のように、マイク入力信号ｄ（ｋ，ｎ）から、推定伝達特性ｗ（ｋ，ｎ）を畳み込まれたタップ長Ｌ個分の参照信号（ｘ）として得られる推定回り込み信号を差し引くことで、誤差信号ｅ（ｋ，ｎ）を得る。
図７を参照して分かるように、この誤差信号ｅ（ｋ，ｎ）が、エコーキャンセル処理の出力信号に相当する。
ＬＭＳ法では誤差信号ｅ（ｋ，ｎ）の平均パワーが最小になるようにｗを逐次的に更新していく。
なお、ＬＭＳ法の他に、更新式の参照信号を正規化したＮＬＭＳ（Normalized LMS）、ＡＰＡ（Affine Projection Algorithm）、ＲＬＳ（Recursive least square）等の手法がある。何れの手法においても、推定伝達特性を学習するために参照信号ｘを用いる。
【００６３】
ここで、ＡＥＣ処理部３２としては、通常、ダブルトーク中における誤学習を避けるために、図８に示すような構成によってダブルトーク中における学習速度を低下させるようにされている。
ここで言うダブルトークとは、図９に示すように、ユーザ発話とスピーカ出力とが時間的に重複して生じることを意味する。
【００６４】
図８において、ＡＥＣ処理部３２は、エコーキャンセル処理部３２ａとダブルトーク評価部３２ｂとを備えている。
ここで、以下の説明においては、時刻情報、周波数情報を説明内で扱わない限り、時刻ｎ、周波数ビン番号ｋについての表記は省略する。
【００６５】
ダブルトーク評価部３２ｂは、ＦＦＴ処理部３４を介して入力される周波数信号による出力音声信号Ｓｓ、つまり参照信号ｘと、エコーキャンセル処理部３２ａによりエコーキャンセル処理が施された各マイクロフォン１３の信号（誤差信号ｅ）とに基づいて、ダブルトーク中であるか否かについての確からしさを表すダブルトーク評価値Ｄｉを計算する。
【００６６】
エコーキャンセル処理部３２ａは、ＦＦＴ処理部３１を介して入力される各マイクロフォン１３からの信号、すなわちマイク入力信号ｄと、ＦＦＴ処理部３４を介して入力される出力音声信号Ｓｓ（つまり参照信号ｘ）とに基づき、上記した［式３］に従って誤差信号ｅを計算する。
またエコーキャンセル処理部３２ａは、誤差信号ｅ、参照信号ｘ、及びダブルトーク評価部３２ｂより入力されるダブルトーク評価値Ｄｉに基づき、後述する［式６］に従って推定伝達特性ｗの逐次的な学習を行う。
【００６７】
ここで、ダブルトークの評価手法については種々提案されているが、代表的なものとして参照信号ｘの平均パワーとエコーキャンセル処理後瞬時信号パワーの変動を利用した手法がある（ウィーナー型のダブルトーク判定器）。この手法では、ダブルトーク評価値Ｄｉは、通常の学習時は「１」に近い値となりダブルトーク時に「０」に近づくような挙動となる。
【００６８】
具体的に、本例では、ダブルトーク評価値Ｄｉは次の［式５］により計算する。
【数３】
2019239723.tif 000005
［式５］において、「Ｐｒｅｆ＾￣」（なお「＾￣」は「￣」を「Ｐｒｅｆ」の上方に表記することを意味する）は、「Ｐｒｅｆ＾￣＝Ｅ［ｘｘH］」であり、参照信号ｘの平均パワーを意味する（ただし、Ｅ［・］は期待値を表す）。また「β」は感度調整定数である。
【００６９】
ダブルトーク時には発話成分の影響で誤差信号ｅが大きくなる。従って、［式５］によると、ダブルトーク時にはダブルトーク評価値Ｄｉが小さくなる。逆に非ダブルトーク中であり誤差信号ｅが小さい場合には、ダブルトーク評価値Ｄｉは大きくなる。
【００７０】
エコーキャンセル処理部３２ａでは、上記のようなダブルトーク評価値Ｄｉに基づき、次の［式６］に従って推定伝達特性ｗの学習を行う。
【数４】
2019239723.tif 000006
これにより、ダブルトーク評価値Ｄｉが小さくなるダブルトーク時には適応フィルタによる学習速度が低下されるものとなり、ダブルトーク中の誤学習が抑制される。
【００７１】
＜５．実施形態としてのクリップ補償手法＞
続いて、実施形態としてのクリップ補償手法について説明する。
先ず前提として、時間信号でクリップした信号をフーリエ変換により周波数成分に分解した際には、本来空間伝達中には存在しない信号が各周波数にノイズとして現れる（クリッピングノイズ）。このクリッピングノイズは、本例で用いるような線形エコーキャンセラでは除去することができず、クリップした瞬間のみ大音量の消し残りが発生してしまう。この消し残り成分は広域にわたり発生し、後段の音声認識の精度を悪化させる要因となる。
本実施形態では、このような前提を考慮したクリップ補償を行う。
【００７２】
本実施形態において、クリップ補償部３３（図４参照）は、クリップ検出部３０による検出結果に基づき、クリップが生じたチャネル（マイクロフォン１３のチャネル）の有無を判定する。そして、クリップが生じたチャネルがある場合には、該チャネルを対象として、エコーキャンセル処理後の信号に対し以下で説明するクリップ補償処理を施す。
【００７３】
本実施形態において、クリップ補償処理は、クリップしていないマイクロフォン１３の信号に基づいて行う。具体的には、クリップしていないマイクロフォン１３の信号とクリップしたマイクロフォン１３の信号との平均パワー比に基づいて、クリップしたマイクロフォン１３の信号を抑圧することで行う。
以下の例では、上記の平均パワー比として、クリップしていないチャネルのうちでの最小の平均パワーとの比を用いる。
【００７４】
本実施形態において、クリップ補償処理は、基本的に次の［式７］で表す手法によって行う。
ここで、以下では、クリップ補償後の信号を「ｅi＾〜」と表記する（なお「＾〜」は「〜」を「ｅi」の上方に表記することを意味する）。
【数５】
2019239723.tif 000007
［式７］において、「ｅi」はｉチャネル（クリップしたチャネル）のエコーキャンセル処理後の瞬時信号を、「ｅMin」はクリップしていないチャネルのうちでの平均パワーが最小であるチャネルのエコーキャンセル処理後の瞬時信号を表す。
また、「Ｐi＾￣」（「＾￣」は「￣」を「Ｐi」の上方に表記することを意味する）は「Ｐi＾￣＝Ｅ［ｅiｅiH］」であり、ｉチャネルのエコーキャンセル処理後の信号の平均パワーを表し、「ＰMin＾￣」（「＾￣」は「￣」を「ＰMin」の上方に表記することを意味する）は、クリップしていないチャネルのうちでの最小の平均パワーを意味する。
ここでの平均パワーは、スピーカ出力があり且つクリップしていない区間での平均パワーを意味する。
【００７５】
［式７］によるクリップ補償の基本的な概念は、次のように説明することができる。
すなわち、クリップしたチャネル（ｉ）の信号からは位相情報だけを抽出し、信号パワーはクリップしていないチャネル（本例では平均パワー最小のチャネル）の瞬時パワーに置き換える。ただし、このままであると、クリップしていなかった場合に出力されたであろうエコーキャンセル処理後の信号パワーにはならないため、逐次的に求めていたチャネル間の信号パワー比を用いて、置き換えた信号パワーを補正する。
換言すれば、［式７］によるクリップ補償は、エコーキャンセル処理後に消し残った非線形成分を抑圧し、クリップしていないチャネルのマイク入力信号情報をもとに、クリップしたチャネルの信号をクリップしていない場合の推定抑圧レベルまでゲイン補正するものであると表現できる。
【００７６】
ここで、上記のようにクリップしたチャネルの信号からは位相情報をだけを抽出しているという点については、［式７］における「１／ｅiｅiH」と「ｅi」の項により表されている。
また、信号パワーはクリップしていないチャネルの瞬時パワーに置き換えるという点については、［式７］における「ｅMinｅHMin」の項により表されている。
さらに、置き換えた信号パワーを逐次的に求めていたチャネル間の信号パワー比を用いて補正するという点については、［式７］における「Ｐi＾￣／ＰMin＾￣」の項により表されている。
【００７７】
なお、チャネル間の信号パワー比に差が発生する理由は、各チャネルの信号間にスピーカ１６の指向特性、空間の伝達経路、マイク感度ばらつき、方向性を持つような定常雑音等に起因した差が生じるためである。
【００７８】
本実施形態のクリップ補償では、クリップしたチャネルについて、信号の波形自体を他チャネルの波形に置き換えるものとはせず、位相情報を残すようにしている。このことで、クリップ補償に伴ってマイクロフォン１３間の位相関係が崩れることの防止を図っている。発話方向推定処理ではマイクロフォン１３間の位相関係が重要となるため、本手法によれば、クリップ補償によって発話方向推定精度が低下してしまうことの防止を図ることができる。すなわち、音声強調部３７によるビームフォーミングに失敗し難くなり、後段の音声認識エンジンによる音声認識精度の向上を図ることができる。
【００７９】
ここで、「Ｐi＾￣」及び「ＰMin＾￣」としての平均パワーについては、クリップが生じておらず且つスピーカ出力がある区間において、クリップ補償部３３が逐次的に算出する。このとき、クリップ補償部３３は、クリップが生じておらず且つスピーカ出力がある区間の特定を、クリップ検出部３０による検出結果と、ＦＦＴ処理部３４を介して入力される出力音声信号Ｓｓ（参照信号ｘ）とに基づいて行う。
【００８０】
クリップ補償として、［式７］による補償は少なくともユーザ発話区間に対し常時行うことも可能であるが、本例では、次の図１０に示すような場合分けを行い、各場合に対応してクリップ補償に係る処理を実行し分ける。
具体的に、図中「ケース１」として表す、スピーカ出力とユーザ発話の双方が「あり」の場合には、クリップ補償をしつつ、ユーザ発話に応じてクリップ補償における抑圧量を調整する。
また、「ケース２」としての、スピーカ出力が「あり」且つユーザ発話が「なし」の場合には、クリップ補償を行う。
「ケース３」としての、スピーカ出力が「なし」且つユーザ発話が「あり」の場合には、音声認識エンジンに合わせた処理を行う。
「ケース４」としての、スピーカ出力とユーザ発話の双方が「なし」の場合には、クリップ補償は行わない。この場合、エコーキャンセル処理後の信号は音声認識前に破棄する。
なお、ケース１におけるクリップ原因は、図示のようにダブルトークであると推定できる。また、ケース２、ケース３、ケース４のクリップ原因はそれぞれスピーカ回り込み、ユーザ発話、雑音であると推定できる。
【００８１】
先ず、ケース１の場合に実行する、ユーザ発話レベルに応じた抑圧量調整を伴うクリップ補償について説明する。
ユーザ発話レベルが大きい場合には、クリッピング雑音の重畳区間においても目的音（発話音）の情報が多分に含まれる傾向となるため、クリップ補償における信号抑圧量を抑えた方が、後段の音声認識処理にとって好適となる。逆に、ユーザ発話レベルが小さい場合、大きなクリッピング雑音に発話成分が埋もれてしまう傾向となるため、クリップ補償における信号抑圧量を強めた方が、後段の音声認識処理にとって好適となる。
【００８２】
そこで、ケース１においては、下記［式８］により、ユーザ発話レベルに応じた抑圧量調整を伴うクリップ補償を行う。
【数６】
2019239723.tif 000008
［式８］において、「αdt」は抑圧量補正係数であり、αdtが「１」のとき信号抑圧量は最大となり、「１」よりも大きくなるに従って信号抑圧量が抑えられていく。
【００８３】
ケース１においては、この抑圧量補正係数αdtの値を発話レベルに応じて調整する。
下記［式９］は、抑圧量補正係数αdtの調整式の例を示している。［式９］では、シグモイド関数による調整式を例示しており、「ａ」はシグモイド関数傾き定数、「ｃ」はシグモイド関数中心補正定数である。
【数７】
2019239723.tif 000009
［式９］において、「Ｐdti＾￣」（「＾￣」は「￣」を「Ｐdti」の上方に表記することを意味する）は、「Ｐdti＾￣＝Ｅ［ｅiｅiH］」であり、ｉチャネルのエコーキャンセル処理後の信号についてのダブルトーク中且つクリップしていない区間での平均パワーを表す。このような「Ｐdti＾￣」は、ユーザ発話レベルの推定値として扱うことができる。
「Ｍａｘ」は、下記［式１０］［式１１］により表される値であり、抑圧量補正係数αdtの最大値を意味する。すなわち、［式８］で計算される「ｅi＾〜」を、ＡＥＣ処理部３２から入力される「ｅi」と同一パワーにする値であり、換言すればクリップ補償をキャンセルする（信号抑圧量を最大に弱めた状態とする）値である。
【数８】
2019239723.tif 000010
【００８４】
図１１は、［式９］によるシグモイド関数の挙動を例示している。
［式９］に示した調整式によれば、ユーザ発話レベル推定値としての「Ｐdti＾￣」の大きさが変化することに伴い、抑圧量補正係数αdtの値が「１」から「Ｍａｘ」の間で調整される。具体的には、発話レベル推定値「Ｐdti＾￣」が大きい場合には抑圧量補正係数αdtの値が「Ｍａｘ」に近づくことになり、それにより［式８］による信号抑圧量が弱められる。逆に、発話レベル推定値「Ｐdti＾￣」が小さい場合には抑圧量補正係数αdtの値が「１」に近づき、［式８］による信号抑圧量が強められる。
【００８５】
なお、上記のようにクリップ補償部３３では、ユーザの発話レベルを、クリップしたマイクロフォン１３の信号（エコーキャンセル処理後の信号）のクリップしていない区間でのダブルトーク時の平均パワーに基づいて推定している。
これにより、クリップしたマイクロフォン１３の信号の発話レベルを、クリップが生じた時刻において適切に得ることができる。
【００８６】
ここで、クリップ補償部３３では、ユーザ発話レベル推定値としての「Ｐdti＾￣」を逐次的に算出する上で、ダブルトーク中か否かの判定を行うことを要する。このダブルトーク中か否かの判定は、ＦＦＴ処理部３４を介して入力される出力音声信号Ｓｓ（参照信号ｘ）と、ダブルトーク評価値Ｄｉと、ダブルトーク判定閾値γとに基づき行う。
具体的には、出力音声信号Ｓｓに基づきスピーカ出力有無の判定を行い、その結果スピーカ出力ありと判定され、且つダブルトーク評価値Ｄｉがダブルトーク判定閾値γ以下であると判定した場合に、ダブルトーク中であるとの判定結果を得る。
【００８７】
説明を図１０に戻す。
ケース２のクリップ補償としては、［式７］に示した手法によるクリップ補償を行う。
【００８８】
また、ケース３において、音声認識エンジンに合わせた処理としては、［式８］において抑圧量補正係数αdtの値を音声認識エンジンの特性（音声認識処理の特性）に合わせた値としたクリップ補償を行う。この際の抑圧量補正係数αdtの値としては、例えば制御部１８（或いはクラウド６０）における音声認識エンジンに応じて予め定められた固定値を用いる。
【００８９】
なお、ケース３については、上記のように音声認識エンジンに合わせた処理を実行することに限らず、図１０中の括弧内に表すようにクリップ補償をしないものとすることもできる。
ケース３のようにユーザ発話があり且つスピーカ出力がない場合、すなわち、クリップの原因がユーザ発話であると推定される場合には、信号を抑圧しない方が却って後段の音声認識結果が良好となる場合があることが経験上分かっている。そのような場合にはクリップ補償をしないものとすることで、音声認識精度の向上を図ることができる。
【００９０】
上記では、クリップ補償部３３がスピーカ出力有無とユーザ発話有無とによる場合分けに応じてクリップ補償に係る処理を実行し分けることを述べたが、この際、ユーザ発話有無の判定は、ダブルトーク評価値Ｄｉに基づいて行う。具体的に、クリップ補償部３３は、例えばダブルトーク評価値Ｄｉが所定値以下に小さい場合はユーザ発話あり、ダブルトーク評価値Ｄｉが所定値よりも大きい場合はユーザ発話なしとの判定結果を得る。
なお、［式５］で説明したように、ダブルトーク評価値Ｄｉは、ユーザ発話のあるダブルトーク中において値が大きくなる評価値とされている。
【００９１】
ここで、［式７］［式８］に示した実施形態としてのクリップ補償手法と、従来技術との違いについて図１２及び図１３を参照して説明しておく。
図１２は、従来技術として、上述した特許文献１に記載のクリップ補償手法を模式化して表している。
特許文献１に記載の手法では、クリップした信号（音声信号Ｍｂ）のクリップ部分を含むゼロクロス点間の信号（区分信号ｍ１ｂ）を、クリップしていない信号（音声信号Ｍａ）における対応するゼロクロス点間の信号（区分信号ｍ１ａ）により置き換えている。
【００９２】
図１２の例では、クリップしていない音声信号Ｍａにおけるクリップ部分に対応した区分信号ｍ１ａが、クリップ部分よりも時間的に後に到来している例を示しているが、この場合、特許文献１の手法によると、図１３に時刻ｔ１として示すクリップタイミングにおいて、リアルタイムにクリップ補償を行うことができないものとなる。
【００９３】
これに対し、［式７］［式８］に示した実施形態としてのクリップ補償手法によれば、クリップしていない信号におけるクリップ部分に対応した波形区間の到来を待つ必要がなく、クリップが生じたタイミングでリアルタイムにクリップ補償を行うことができる。
【００９４】
＜６．処理手順＞
図１４のフローチャートを参照し、上記した実施形態としてのクリップ補償手法を実現するために実行すべき具体的な処理手順を説明する。
クリップ補償部３３は、図１４に示す処理を時間フレームごとに繰り返し実行する。
なお、クリップ補償部３３は、図１４に示す処理とは別に、マイクロフォン１３の各チャネルごとの平均パワー（スピーカ出力があり且つクリップしていない区間でのエコーキャンセル処理後の平均パワー）、及びユーザ発話レベル推定値としての「Ｐdti＾￣」を逐次的に計算する処理を実行している。
【００９５】
先ず、クリップ補償部３３はステップＳ１０１で、クリップを検出したか否かを判定する。すなわち、クリップ検出部３０の検出結果に基づき、クリップが生じたチャネルの有無を判定する。
クリップを検出していないと判定した場合、クリップ補償部３３はステップＳ１０２で終了条件が成立したか否かを判定する。なお、ここでの終了条件は、例えば信号処理装置１の電源オフ等、処理終了条件として予め定められた条件である。
終了条件が成立していなければ、クリップ補償部３３はステップＳ１０１に戻り、また終了条件が成立した場合は図１４に示す一連の処理を終える。
【００９６】
ステップＳ１０１において、クリップを検出したと判定した場合、クリップ補償部３３はステップＳ１０３に進み、クリッピングチャネルと最小パワーチャネルとの平均パワー比を取得する。すなわち、逐次的に計算している各チャネルの平均パワーのうち、クリップしたチャネルの平均パワーと、平均パワーが最小のチャネルの平均パワーとの比（「Ｐi＾￣／ＰMin＾￣」）を計算して取得する。
【００９７】
続くステップＳ１０４でクリップ補償部３３は、クリッピングチャネルの抑圧係数を計算する。ここで、抑圧係数とは、［式７］の右辺における「ｅMinｅHMin」の項と「ｅi」の項とを除いた部分を意味する。
【００９８】
その上で、クリップ補償部３３はステップＳ１０５で、スピーカ出力があるか否かを判定する。この判定処理は、図１０に示したケース１とケース２の組、ケース３とケース４の組の何れに該当するかを判定していることに相当する。
スピーカ出力があると判定した場合、クリップ補償部３３はステップＳ１０６でユーザ発話があるか否かを判定する。
【００９９】
ステップＳ１０６において、ユーザ発話があると判定した場合（つまりケース１に該当する場合）、クリップ補償部３３はステップＳ１０７に進み、推定発話レベルに応じて抑圧係数を更新する。すなわち、先ず、発話レベル推定値「Ｐdti＾￣」に基づいて、先の［式９］により抑圧量補正係数αdtを計算する。そして、計算した抑圧量補正係数αdtをステップＳ１０４で求めた抑圧係数に乗じることで、抑圧係数の更新を行う。
【０１００】
その上で、クリップ補償部３３はステップＳ１０８のクリッピング信号抑圧処理を実行し、ステップＳ１０１に戻る。ステップＳ１０８のクリッピング信号抑圧処理としては、ステップＳ１０７で更新した抑圧係数を用いて、［式８］により「ｅi＾〜」を計算する処理を行う。
【０１０１】
また、ステップＳ１０６において、ユーザ発話があると判定した場合（つまりケース２に該当する場合）、クリップ補償部３３はステップＳ１０９に進んでクリッピング信号抑圧処理を実行し、ステップＳ１０１に戻る。ステップＳ１０９のクリッピング信号抑圧処理としては、ステップＳ１０４で求めた抑圧係数を用いて、［式７］により「ｅi＾〜」を計算する処理を行う。
【０１０２】
また、先のステップＳ１０５において、スピーカ発話がないと判定した場合（ケース３又はケース４）、クリップ補償部３３はステップＳ１１０でユーザ発話があるか否かを判定する。
ステップＳ１１０でユーザ発話があると判定した場合（ケース３）、クリップ補償部３３はステップＳ１１１に進み、認識エンジンに合わせた抑圧係数に更新する処理を行う。すなわち、音声認識エンジンの特性に応じて定められた抑圧量補正係数αdtをステップＳ１０４で求めた抑圧係数に乗じることで、抑圧係数を更新する。
その上でクリップ補償部３３は、ステップＳ１１２のクリッピング信号抑圧処理として、ステップＳ１１１で更新した抑圧係数を用いて［式８］により「ｅi＾〜」を計算する処理を行い、ステップＳ１０１に戻る。
【０１０３】
また、ステップＳ１１０において、ユーザ発話がないと判定した場合（ケース４）、クリップ補償部３３はステップＳ１０１に戻る。つまりこの場合は、クリップ補償は行われない。
【０１０４】
＜７．変形例＞
ここで、実施形態としては上記した具体例に限定されず、本技術の要旨を逸脱しない範囲内において種々の変更が可能である。
例えば、上記では、複数のマイクロフォン１３が円周上に配置される例を挙げたが、例えば直線的な配置等の円周上配置以外の配置を採用することもできる。
【０１０５】
また、実施形態では、信号処理装置１が、サーボモータ２１を備えてスピーカ１６の向きを変化させることが可能に構成されている、すなわち、スピーカ１６に対する各マイクロフォン１３の位置を変化させることが可能に構成された例を示したが、このような構成が採られる場合には、クリップが検出されたことに応じて、例えばクリップ補償部３３や制御部１８がモータ駆動部２０に指示を行ってスピーカ１６の位置を変化させるようにすることができる。これにより、スピーカ１６の位置を壁反射等が少ない位置に移動させることが可能となり、クリップが生じる可能性が低くなるようにしたり、クリッピング雑音が小さくなるようにしたりすることができる。
なお、信号処理装置１としては、スピーカ１６ではなくマイクロフォン１３側を変位させる構成を採ることもでき、その場合においても上記と同様にクリップが検出されたことに応じてマイクロフォン１３を変位させることで、上記と同様の効果を得ることができる。
また、スピーカ１６やマイクロフォン１３の変位は、回転による変位に限られない。例えば、信号処理装置１としては、車輪とその駆動部とを備える構成等により、自身の移動を可能とする構成を採ることもできる。その場合には、クリップが検出されたことに応じて信号処理装置１自体が移動されるように上記駆動部を制御することもできる。このように信号処理装置１自体が移動することでも、スピーカ１６やマイクロフォン１３の位置を壁反射等が少ない位置に移動させることが可能となり、上記と同様の効果を得ることができる。
なお、上記のようにクリップの検出に応じてスピーカ１６やマイクロフォン１３を変位させる構成は、［式７］や［式８］に示したクリップ補償を行わない場合にも適用することができる。
【０１０６】
＜８．実施形態のまとめ＞
上記のように実施形態としての信号処理装置（同１）は、複数のマイクロフォン（同１３）からの信号に対しスピーカ（同１６）による出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル部（ＡＥＣ処理部３２）と、複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出部（同３０）と、クリップしていないマイクロフォンの信号に基づいて、クリップしたマイクロフォンのエコーキャンセル処理後の信号を補償するクリップ補償部（同３３）とを備えるものである。
【０１０７】
複数のマイクロフォンからの信号にエコーキャンセル処理が施される場合において、エコーキャンセル処理前の信号に対しクリップ補償を行うとした場合は、スピーカの出力信号成分と目的音を含む他成分との切り分けが困難な状態でクリップ補償を行うことになるため、クリップ補償精度が低下する傾向となる。上記のようにエコーキャンセル処理後の信号に対しクリップ補償を行うことで、スピーカの出力信号成分が或る程度抑圧された信号を対象としてクリップ補償を行うことが可能とされる。
従って、クリップ補償精度を高めることができる。
【０１０８】
また、実施形態としての信号処理装置においては、クリップ補償部は、クリップしたマイクロフォンの信号を抑圧することで補償している。
【０１０９】
クリップしたマイクロフォンの信号を抑圧するという補償手法を採ることで、クリップしたマイクロフォンの信号の位相情報が補償によって失われないようにすることが可能とされる。
従って、補償によって各マイクロフォン間の位相関係が崩れてしまうことの防止を図ることができる。
実施形態のようにクリップ補償の後段で発話方向推定とビームフォーミング（音声強調）を行って音声認識する構成では、各マイクロフォン間の位相関係が崩れないことで発話方向推定の精度向上が図られ、ビームフォーミングにより適切に目的の発話成分を抽出することができ、音声認識精度の向上を図ることができる。
【０１１０】
さらに、実施形態としての信号処理装置においては、クリップ補償部は、クリップしていないマイクロフォンの信号とクリップしたマイクロフォンの信号との平均パワー比に基づいてクリップしたマイクロフォンの信号を抑圧している。
【０１１１】
これにより、クリップしたマイクロフォンの信号のパワーを、クリップしていなかった場合に得られたであろうエコーキャンセル処理後のパワーに適切に抑圧することが可能とされる。
従って、クリップ補償の精度を高めることができる。
【０１１２】
さらにまた、実施形態としての信号処理装置においては、クリップ補償部は、平均パワー比として、クリップしていないマイクロフォンのうち平均パワーが最小のマイクロフォンの信号との平均パワー比を用いている。
【０１１３】
平均パワーが最小であるマイクロフォンは、クリップが最も生じ難いマイクロフォンであると換言できる。
従って、クリップしたマイクロフォンの信号について補償が行われる確実性を最大限に高めることができる。
【０１１４】
また、実施形態としての信号処理装置においては、クリップ補償部は、ユーザ発話があり且つスピーカ出力がある場合には、クリップしたマイクロフォンの信号の抑圧量を発話レベルに応じて調整している。
【０１１５】
ユーザ発話があり且つスピーカ出力がある所謂ダブルトークの区間では、ユーザの発話レベルが大きい場合、クリッピングによる雑音重畳区間においても発話成分を多分に含む。一方、発話レベルが小さい場合、大きなクリッピング雑音に発話成分が埋もれてしまう傾向となる。そこで、ダブルトーク区間では、クリップしたマイクロフォンの信号の抑圧量を発話レベルに応じて調整する。
これにより、ユーザの発話レベルが大きい場合には信号の抑圧量を抑えて発話成分が抑圧されてしまうことの防止を図り、またユーザの発話レベルが小さい場合には信号の抑圧量を強めてクリッピング雑音を抑圧することが可能とされる。
従って、実施形態のようにクリップ補償の後段で音声認識が行われる場合において、音声認識精度の向上を図ることができる。
【０１１６】
さらに、実施形態としての信号処理装置においては、クリップ補償部は、ユーザ発話があり且つスピーカ出力がない場合には、クリップしたマイクロフォンの信号を後段の音声認識処理の特性に応じた抑圧量により抑圧している。
【０１１７】
ユーザ発話があり且つスピーカ出力がない場合とは、クリップの原因がユーザ発話であると推定される場合である。上記構成によれば、クリップの原因がユーザ発話であると推定される場合において、例えばクリッピング雑音が重畳していても或る程度の発話レベルがある場合の方が、発話成分が抑圧されてしまう場合よりも音声認識精度を保つことができる等、後段の音声認識処理の特性に応じた適切な抑圧量によるクリップ補償を行うことが可能とされる。
従って、音声認識精度の向上を図ることができる。
【０１１８】
さらにまた、実施形態としての信号処理装置においては、クリップ補償部は、ユーザ発話があり且つスピーカ出力がない場合には、クリップしたマイクロフォンの信号に対する補償を行わないものとしている。
【０１１９】
ユーザ発話があり且つスピーカ出力がない場合、すなわち、クリップの原因がユーザ発話であると推定される場合には、信号を抑圧しない方が却って後段の音声認識結果が良好となる場合があることが経験上分かっている。そのような場合には、上記のようにクリップ補償を行わないようにすることで、音声認識精度の向上を図ることができる。
【０１２０】
また、実施形態としての信号処理装置においては、複数のマイクロフォン又はスピーカの少なくとも何れかの位置を変化させる駆動部（サーボモータ２１）と、クリップ検出部によりクリップが検出されたことに応じて駆動部により複数のマイクロフォン又はスピーカの少なくとも何れかの位置を変化させる制御部（クリップ補償部３３又は制御部１８）とを備えている。
【０１２１】
これにより、クリップが検出された場合は、各マイクロフォンとスピーカとの位置関係を変化させたり、複数のマイクロフォン又はスピーカの位置を壁反射等が少ない位置に移動させたりすることが可能とされる。
従って、クリップが慢性的に生じる場合や、大きなクリッピング雑音が生じる場合等に対応して、クリップが生じる可能性が低くなるように、或いはクリッピング雑音が小さくなるように、複数のマイクロフォンとスピーカとの位置関係や複数のマイクロフォン自体の位置又はスピーカ自体の位置を変化させることができ、後段の音声認識の精度向上が図られるようにすることができる。
【０１２２】
また、実施形態としての信号処理方法は、複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル手順と、複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出手順と、クリップしていないマイクロフォンの信号に基づいて、クリップしたマイクロフォンのエコーキャンセル処理後の信号を補償するクリップ補償手順とを有する信号処理方法である。
【０１２３】
このような実施形態としての信号処理方法によっても、上記した実施形態としての信号処理装置と同様の作用及び効果を得ることができる。
【０１２４】
ここで、これまでで説明した音声信号処理部１７による機能（特にエコーキャンセル、クリップ検出、及びクリップ補償に係る機能）は、ＣＰＵ等によるソフトウェア処理として実現することができる。該ソフトウェア処理は、プログラムに基づき実行され、該プログラムは、ＣＰＵ等のコンピュータ装置（情報処理装置）が読み出し可能な記憶装置に記憶される。
【０１２５】
実施形態としてのプログラムは、複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル機能と、複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出機能と、クリップしていないマイクロフォンの信号に基づいて、クリップしたマイクロフォンのエコーキャンセル処理後の信号を補償するクリップ補償機能と、を情報処理装置に実現させるプログラムである。
【０１２６】
このようなプログラムによって、上記した実施形態としての信号処理装置を実現することができる。
【０１２７】
なお、本明細書に記載された効果はあくまでも例示であって限定されるものではなく、また他の効果があってもよい。
【０１２８】
＜９．本技術＞
なお本技術は以下のような構成も採ることができる。
（１）
複数のマイクロフォンからの信号に対しスピーカによる出力信号成分をキャンセルするエコーキャンセル処理を施すエコーキャンセル部と、
前記複数のマイクロフォンからの信号についてクリップ検出を行うクリップ検出部と、
クリップしていない前記マイクロフォンの信号に基づいて、クリップした前記マイクロフォンの前記エコーキャンセル処理後の信号を補償するクリップ補償部と、を備える
信号処理装置。
（２）
前記クリップ補償部は、
クリップした前記マイクロフォンの信号を抑圧することで補償する
前記（１）に記載の信号処理装置。
（３）
前記クリップ補償部は、
クリップしていない前記マイクロフォンの信号とクリップした前記マイクロフォンの信号との平均パワー比に基づいてクリップした前記マイクロフォンの信号を抑圧する
前記（２）に記載の信号処理装置。
（４）
前記クリップ補償部は、
前記平均パワー比として、クリップしていない前記マイクロフォンのうち平均パワーが最小の前記マイクロフォンの信号との平均パワー比を用いる
前記（３）に記載の信号処理装置。
（５）
前記クリップ補償部は、
ユーザ発話があり且つスピーカ出力がある場合には、クリップした前記マイクロフォンの信号の抑圧量を発話レベルに応じて調整する
前記（１）乃至（４）の何れかに記載の信号処理装置。
（６）
前記クリップ補償部は、
ユーザ発話があり且つスピーカ出力がない場合には、クリップした前記マイクロフォンの信号を後段の音声認識処理の特性に応じた抑圧量により抑圧する
前記（１）乃至（５）の何れかに記載の信号処理装置。
（７）
前記クリップ補償部は、
ユーザ発話があり且つスピーカ出力がない場合には、クリップした前記マイクロフォンの信号に対する前記補償を行わない
前記（１）乃至（５）の何れかに記載の信号処理装置。
（８）
前記複数のマイクロフォン又は前記スピーカの少なくとも何れかの位置を変化させる駆動部と、
前記クリップ検出部によりクリップが検出されたことに応じて前記駆動部により前記複数のマイクロフォン又は前記スピーカの少なくとも何れかの位置を変化させる制御部と、を備える
前記（１）乃至（７）の何れかに記載の信号処理装置。
【符号の説明】
【０１２９】
１  信号処理装置、１１ 筐体、１２ マイクロフォンアレイ、１３ マイクロフォン、１４ 可動部、１５ 表示部、１６ スピーカ、３０  クリップ検出部、３２  ＡＥＣ処理部、３２ａ  エコーキャンセル処理部、３２ｂ  ダブルトーク評価部、３３  クリップ補償部、３５  発話区間推定部、３６  発話方向推定部、３７  音声強調部、３８  雑音抑圧部
【図１】
2019239723.tif 000011
【図２】
2019239723.tif 000012
【図３】
2019239723.tif 000013
【図４】
2019239723.tif 000014
【図５】
2019239723.tif 000015
【図６】
2019239723.tif 000016
【図７】
2019239723.tif 000017
【図８】
2019239723.tif 000018
【図９】
2019239723.tif 000019
【図１０】
2019239723.tif 000020
【図１１】
2019239723.tif 000021
【図１２】
2019239723.tif 000022
【図１３】
2019239723.tif 000023
【図１４】
2019239723.tif 000024
【国際調査報告】
2019239723.tif 000025
2019239723.tif 000026
2019239723.tif 000027
2019239723.tif 000028