(57)【要約】【課題】音声情報に基づいて音声認識部を自動的に切り替えることができる音声認識方法および音声認識装置を提供する。【解決手段】ユーザによりマイクから入力される音声の音声区間を検出して当該区間のパワーを計算する音声パワー検出部と、前記区間のパワーをユーザとマイク間の距離に変換するユーザ-マイク間距離算出部と、この距離に基づいて前記音声による音声信号の出力先として複数の音声認識部を選択する音声認識辞書切替部とを備えた音声認識装置。【選択図】  図５
2013072904.tif 000002
【特許請求の範囲】
【請求項１】
ユーザによりマイクから入力される音声の音声区間を検出して当該区間のパワーを計算する音声パワー検出部と、
前記区間のパワーをユーザとマイク間の距離に変換するユーザ-マイク間距離算出部と、
この距離に基づいて前記音声による音声信号の出力先として複数の音声認識部を選択する音声認識辞書切替部とを
備えた音声認識装置。
【請求項２】
更に雑音区間のパワーを計算する雑音パワー検出部と、
前記音声パワー検出部で計算された音声パワーと前記雑音区間のパワーの比を計算する信号対雑音比計算部とを備え、前記ユーザ-マイク間距離算出部はこのパワーの比をユーザとマイク間の距離に変換する請求項１に記載の音声認識装置。
【請求項３】
更に前記音声認識部の一つを備え、
この音声認識部は前記音声認識辞書切替部からの前記音声信号に基づいて音声認識をする請求項１または請求項２に記載の音声認識装置。
【請求項４】
前記音声認識辞書切替部は前記音声信号を外部の前記音声認識部に出力し、この音声認識部からこの音声信号に基づいた音声認識結果を出力させる
請求項１または請求項２に記載の音声認識装置。
【請求項５】
ユーザによりマイクから入力される音声の音声区間を検出して当該区間のパワーを計算し、
前記区間のパワーをユーザとマイク間の距離に変換し、
この距離に基づいて前記音声による音声信号の出力先として複数の音声認識部を選択する音声認識方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、音声認識方法および音声認識装置に関する。
【背景技術】
【０００２】
音声認識の辞書を選択することが各種提案されている。例えば、コマンド用認識結果のスコアとディクテーション用認識結果のスコアを比較して、一方を選択する音声認識結果とすることへの工夫がある。また、ユーザの位置情報を利用して、音声認識の辞書を選択することにより、認識率を向上させることへの工夫がある。
【０００３】
また、ネットワークに接続できる音声入力装置において、クライアント上にある音声認識装置と、サーバ上にある音声認識装置を、明示的に切り替える切替手段を持つことへの工夫がある（例えば、特許文献１参照。）。この例では、グラフィカル・ユーザ・インタフェース（ＧＵＩ）等にて、サーバ上の音声認識装置を利用するか、クライアント上の音声認識装置を利用するか、を明示的に決めている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−１８２８９６号公報（第２頁、請求項５）
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、音声認識辞書を手動で切り替える操作は煩雑である。また、コマンド認識あるいはディクテーション認識に固定されている場合は他方を選択できず、制約された仕様になるという課題があった。本発明の実施の形態は、音声情報に基づいて音声認識部を自動的に切り替えることができる音声認識方法および音声認識装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上記課題を解決するために、実施形態によれば音声認識装置は、ユーザと音声認識装置の間の距離を検出し、この距離に応じて音声認識辞書を切り替える。具体的には、ユーザによりマイクから入力される音声の音声区間を検出して当該区間のパワーを計算する音声パワー検出部と、前記区間のパワーをユーザとマイク間の距離に変換するユーザ-マイク間距離算出部と、この距離に基づいて前記音声による音声信号の出力先として複数の音声認識部を選択する音声認識辞書切替部とを備える。
【図面の簡単な説明】
【０００７】
【図１】実施形態にかかる電子機器の外観を模式的に示す図。
【図２】実施形態にかかる電子機器のハードウェア構成の一例を示すブロック構成図。
【図３】同実施形態の通話部の詳細な構成を示すブロック図。
【図４】ユーザ-マイク間距離検出部１６の詳細な構成を示すブロック図。
【図５】実施形態の中心となる機能を示すブロック構成図。
【図６】同実施形態の効果を説明するために示す特性図。
【図７】ユーザ-マイク間距離検出部１６の動作の一例を示すフローチャート。
【発明を実施するための形態】
【０００８】
以下、添付図面を参照して実施形態にかかる電子機器及び制御方法の詳細を説明する。なお、以下の実施形態では、ＰＤＡや携帯電話等、ユーザが把持して使用する電子機器を例に説明する。
【０００９】
図１は、実施形態にかかる電子機器１００の外観を模式的に示す図である。電子機器１００は、表示画面を備えた情報処理装置であり、例えばスレート端末（タブレット端末）や電子書籍リーダ、デジタルフォトフレーム等として実現されている。なお、ここでは、Ｘ軸、Ｙ軸、Ｚ軸の矢印方向（Ｚ軸では図の正面方向）を正方向としている（以下同様）。
【００１０】
電子機器１００は、薄い箱状の筐体Ｂを備え、この筐体Ｂの上面に表示部１１０が配置されている。表示部１１０は、ユーザによってタッチされた表示画面上の位置を検知するタッチパネル（図２、タッチパネル１１１参照）を備えている。また、筐体Ｂの正面下部にはユーザが各種操作を行う操作スイッチ等である操作スイッチ１９０、ユーザの音声を取得するためのマイク２１０が配置されている。また、筐体Ｂの正面上部には音声出力を行うためのスピーカ２２０が配置されている。また、筐体Ｂの縁には、把持するユーザの圧力を検知する圧力センサ２３０が配置されている。なお、図示例ではＸ軸方向の左右の縁に圧力センサ２３０を備える構成を例示したが、Ｙ軸方向の上下の縁に圧力センサ２３０を備えてもよい。
【００１１】
図２は、実施形態にかかる電子機器１００のハードウェア構成の一例を示すブロック図である。図２に示すように、電子機器１００は、上述の構成に加え、ＣＰＵ１２０、システムコントローラ１３０、グラフィックスコントローラ１４０、タッチパネルコントローラ１５０、加速度センサ１６０、不揮発性メモリ１７０、ＲＡＭ１８０、音声処理部２００、通信部２４０等を備えている。また音声処理部２００には内蔵または外付けのマイク２１０とスピーカ２２０とが接続されている。
【００１２】
表示部１１０は、タッチパネル１１１と、ＬＣＤ（Liquid  Crystal  Display）や有機ＥＬ（Electro  Luminescence）等のディスプレイ１１２とから構成されている。タッチパネル１１１は、例えばディスプレイ１１２の表示画面上に配置された当面の座標検出装置から構成されている。タッチパネル１１１は、例えば筐体Ｂを把持したユーザの指によってタッチされた表示画面上の位置（タッチ位置）を検知することができる。このタッチパネル１１１の働きにより、ディスプレイ１１２の表示画面はいわゆるタッチスクリーンとして機能する。
【００１３】
ＣＰＵ１２０は、電子機器１００の動作を中央制御するプロセッサであり、システムコントローラ１３０を介して電子機器１００の各部を制御する。ＣＰＵ１２０は、不揮発性メモリ１７０からＲＡＭ１８０にロードされる、オペレーティングシステム、各種アプリケーションプログラムを実行することで、後述する各機能部（図３など参照）を実現する。ＲＡＭ１８０は、電子機器１００のメインメモリとして、ＣＰＵ１２０がプログラムを実行する際の作業領域を提供する。
【００１４】
システムコントローラ１３０には、不揮発性メモリ１７０及びＲＡＭ１８０をアクセス制御するメモリコントローラも内蔵されている。また、システムコントローラ１３０は、グラフィックスコントローラ１４０との通信を実行する機能も有している。また、システムコントローラ１３０は、通信部２４０、インターネット等を介して図示せぬ外部のサーバへ音声波形等の音声信号を送信しこの音声波形に対する音声認識の結果を必要によっては受信する機能も有している。
【００１５】
グラフィックスコントローラ１４０は、電子機器１００のディスプレイモニタとして使用されるディスプレイ１１２を制御する表示コントローラである。タッチパネルコントローラ１５０は、タッチパネル１１１を制御し、ユーザによってタッチされたディスプレイ１１２の表示画面上のタッチ位置を示す座標データをタッチパネル１１１から取得する。
【００１６】
加速度センサ１６０は、図１に示す３軸方向（Ｘ、Ｙ、Ｚ方向）や、これに各軸周りの回転方向の検出を加えた６軸方向の加速度センサ等であって、電子機器１００に対する外部からの加速度の向きと大きさを検出し、ＣＰＵ１２０に出力する。具体的に、加速度センサ１６０は、加速度を検出した軸、向き（回転の場合、回転角度）、及び大きさを含んだ加速度検出信号（傾き情報）をＣＰＵ１２０に出力する。なお、角速度（回転角度）検出のためのジャイロセンサを、加速度センサ１６０に統合する形態としてもよい。
【００１７】
音声処理部２００は、マイク２１０より入力される音声信号に、デジタル変換、ノイズ除去、エコーキャンセル等の音声処理を施してＣＰＵ１２０へ出力する。また、音声処理部２００は、ＣＰＵ１２０の制御のもとで、音声合成等の音声処理を施して生成した音声信号をスピーカ２２０へ出力し、スピーカ２２０による音声報知を行う。この音声処理部２００に、後述のユーザ-マイク間距離検出部１６がある。この中の音声処理部２００の詳細について次に説明する。
【００１８】
図３は、実施例にかかる音声処理部２００の詳細な構成を示すブロック図である。音声処理部２００は、音声復号部１１、ＤＡ変換器１２、増幅器１３、増幅器１４、ＡＤ変換器１５、ユーザ-マイク間距離検出部１６、音声符号部１７などから構成される。
音声復号部１１は、システムコントローラ１３０からの圧縮された音声信号を復号処理する。ＤＡ変換器１２は、それをＤＡ変換する。増幅器１３は、それを増幅して、スピーカ２２０へ送出する。
【００１９】
増幅器１４は、マイクロホン２１０からの音声信号を増幅する。ＡＤ変換器１５はそれをＡＤ変換する。ユーザ-マイク間距離検出部１６は、その信号に対して、ノイズの抑圧処理を行う。音声符号部１７は、それに対して、音声圧縮処理を行い、システムコントローラ１３０へ送出する。この中のユーザ-マイク間距離検出部１６の詳細について、以下の例で説明する。
【００２０】
図４は、ユーザ-マイク間距離検出部１６の詳細な構成を示すブロック図である。ユーザ-マイク間距離検出部１６は、周波数変換部２１、帯域パワー計算部２２、雑音推定部２３、ＳＮＲ計算部２４、ゲイン算出部２５、ゲイン加重部２６、周波数逆変換部２７などから構成される。この中のゲイン算出部２５は、更に 次の構成を備える。
図４により、ユーザ-マイク間距離検出部１６の各部の動作を説明する。まず、周波数変換部２１は、音声信号ｘ（ｔ）を所定時間長ずつ例えば１２８個ずつフレームに分割し、これらのフレームごとに時間／周波数領域変換処理を行う。これによりフレーム番号ｊにおける振幅スペクトル｜Ｘ（ｎ、ｊ）｜（ｎ＝０〜Ｎ−１。Ｎはフレーム長。）と位相スペクトルＰ（ｎ、ｊ）を得る。以下では、記述の簡略化のため、基本的に絶対値記号｜とフレーム番号ｊを省略して、振幅スペクトルＸ（ｎ）と称するが、数式の説明などでフレーム番号を区別する必要がある場合は、記述する。
【００２１】
なお、周波数変換部２１は、時間／周波数領域変換処理に先立って、スペクトル包絡を平坦化することを目的として、入力されたディジタル音声信号ｘ（ｔ）に対しプレエンファシス処理を設けたり、直流分をカットすることを目的として、ハイパスフィルタを設けたりしてもよい。
【００２２】
また、時間／周波数領域変換処理のフレーム長とシフト幅は同じでなくてもよく、例えばフレーム長を１２８、シフト幅を８０とした場合には、８０サンプル分の入力ディジタル音声信号ｘ（ｔ）をフレーム前半部に格納し、残りの４８サンプルについては０とした後に境界の不連続性を排除するために正弦波特性の窓掛けを行ってもよい。プレエンファシスおよび窓掛けのより具体的な手法は、米国ＴＩＡで標準化された符号化方式の規格である、TIA/EIA IS-127 EVRC、1997-01に詳述されている。
【００２３】
このように時間／周波数領域変換によって得られた振幅スペクトルＸ（ｎ）は、帯域パワー計算部２２及びゲイン加重部２６に出力される。また、位相スペクトルＰ（ｎ）は、周波数逆変換部２７に出力される。
【００２４】
帯域パワー計算部２２は、振幅スペクトルＸ（ｎ）を低域から高域まで例えば１６個の周波数帯域に分割し、これらの周波数帯域ごとに平均をとって各周波数帯域を代表する帯域パワーＸｄ（ｋ）（ｋ＝０〜Ｋ−１。Ｋは周波数帯域数で、例えば１６でｋが小さい方が低域、大きい方が高域とする。）を算出する。ここでは、等間隔に分割する例を示したが、バークスケールやメルスケール等のように、低域ほど分割幅を狭くして、人間の聴覚特性に適した分割幅を採用してもよい。また、瞬時的な変動の大きい振幅スペクトルのパワーを用いるよりも安定したパワーを得ることを目的として、周波数帯域に分割する例を示したが、特定の帯域（例えば、低域あるいは全帯域）で振幅スペクトルのパワーそのものを用いて、より細かく処理してもよい。このようにして求められた各周波数帯域を代表する帯域パワーＸｄ（ｋ）は、雑音推定部２３に出力される。
【００２５】
雑音推定部２３は、求められた各周波数帯域を代表する帯域パワーＸｄ（ｋ）を用いて、帯域毎の雑音帯域パワーＮｄ（ｋ）を推定する。雑音推定部２３は、その区間に音声が存在するか否か、もしくは両者の中間状態も考慮してどれぐらい雑音らしいかを判定し、この判定結果に応じて、雑音帯域パワーＮｄ（ｋ）を推定する。
【００２６】
具体的には、雑音と判定された区間のパワーをそのまま雑音帯域パワーＮｄ（ｋ）としてもよいし、雑音区間と判定された現在を含む過去Ｍ個のフレームの平均パワーを用いてもよい。また、雑音と判定されたときに巡回フィルタによって過去の推定雑音との重み付き和を用いてもよいし、雑音らしいと判定されたときほどその区間を重視して、重み付けを行ってもよい。このように、音声の影響、雑音の瞬時的な変動を受けにくくして、定常的な雑音成分の近似値を雑音帯域パワーＸｄ（ｋ）として推定する。
【００２７】
これらの判定処理と推定処理は、帯域毎に行ってもよいし、複数帯域を一つにまとめて行ってもよいし、両者の重み付き和でもよい。このようにして算出された雑音帯域パワーＮｄ（ｋ）は、ＳＮＲ計算部２４に出力される。
【００２８】
ＳＮＲ計算部２４は、帯域パワーＸｄ（ｋ）及び雑音帯域パワーＮｄ（ｋ）を用いて、帯域毎の信号対雑音比ＳＮＲ（ｋ）をＳＮＲ（ｋ）＝Ｘｄ（ｋ）／Ｎｄ（ｋ）と計算する。また、帯域全体の信号対雑音比ＳＮＲ_ａｌｌをＳＮＲ_ａｌｌ＝Σ（ｋ＝０〜Ｋ−１）Ｘｄ（ｋ）／Σ（ｋ＝０〜Ｋ−１）Ｎｄ（ｋ）と計算する。あるいは、ＳＮＲ_ａｌｌ＝（１／Ｋ）×Σ（ｋ＝０〜Ｋ−１）ＳＮＲ（ｋ）のように、帯域毎のＳＮＲ（ｋ）の平均値としてもよいし、ＳＮＲ_ａｌｌ＝（１／Ｋ）×ｍａｘ（ｋ＝０〜Ｋ−１）｛ＳＮＲ（ｋ）｝のように帯域毎のＳＮＲ（ｋ）の最大値としてもよい。要するに、ＳＮＲ_ａｌｌは帯域全体のＳＮＲを表すパラメータであればよく、これらに限定されるものではない。このように計算されたＳＮＲ（ｋ）、ＳＮＲ_ａｌｌは、ゲイン算出部２５に出力される。
【００２９】
本実施形態の中心となる動作を図５の機能ブロック図にて説明する。まずユーザ-マイク間距離検出部１６(100)は、上述のように言わば、音声区間（発話された区間）を検出して当該区間のパワーを計算する音声パワー検出部(110)（帯域パワー計算部２２）と、雑音区間（発話されてない区間）のパワーを計算する雑音パワー検出部(120)（雑音推定部２３）と、前記音声パワー検出部で計算された音声パワーと、前記雑音パワー検出部で計算された雑音パワーの比、いわゆる信号対雑音比を計算する信号対雑音比計算部(130)（ＳＮＲ計算部２４）と、前記信号対雑音比計算部で計算された信号対雑音比をユーザ-マイク間距離に変換するユーザ-マイク間距離算出部(140)（ゲイン算出部２５）、から構成される。
【００３０】
このユーザ-マイク間距離検出部１６の動作の一例としては、上記の各部により図７に示すように次のステップを踏む。
ステップＳ７１：  音声パワーを検出する。
ステップＳ７２：  雑音パワーを検出する。
ステップＳ７３：  ＳＮＲを計算する。
ステップＳ７４：  距離を算出する。
なお、ステップＳ７４としては、ＳＮＲに拠らず音声パワーに拠って距離を算出する構成でもよい。室内環境とそれ以外とで或いはユーザの設定により、これらどちらに拠るかを切替えられるようにしておくのも好適である。また音声パワーを得る帯域としては声道から発せられる基本周波数（ピッチ）を中心とする工夫をおこなってもよい。
【００３１】
また予め話者認識を行える構成などとして、個人を区別し、この個人ごとの声の大きさを記憶しておき距離の算出を調整してもよい。
音声パワー検出部(110)は、音声区間に対して、単位時間（例えば、20msec）毎に信号の二乗和Sを求め、10*log10(S)を計算する。また、雑音パワー検出部(120)は、雑音区間に対して、単位時間（例えば、20msec）毎に信号の二乗和Nを求め、10*log10(N)を計算する。
【００３２】
各検出部(110)、(120)では、突発的な変動を避けるために、スムージングをかけてもよい。例えば、S(k)=S(k-1)*a + (1-a)*10*log10(S)。ここで、kは時刻インデックス、aは0以上1以下の重み係数である。
【００３３】
ユーザ-マイク間距離算出部(140)では、信号対雑音比が小さいほど、ユーザ-マイク間距離が長くなるように変換する。例えば、以下のように対応付けてもよい。
【００３４】
[段階的な閾値判定で距離を算出する例]
If (SNR > 90) then distance = 10;
elseif (SNR > 80) then distance = 20;
elseif (SNR > 70) then distance = 50;
else distance = 100;
[関数で距離を算出する例]
distance_tmp = 100-SNR*SNR/100;
if (distance_tmp < 10) distance = 10;
elseif (distance_tmp > 100) distance_new = 100;
else  distance = distance_tmp;
ただし、SNRは信号対雑音比(単位はdB)、distanceはユーザ-マイク間距離(単位はcm)である。２例ともdistanceはSNRの広義の単調減少関数である。参考として２つ目の例におけるdistance_tmpを図６に示す。
【００３５】
図５に戻り音声認識切替部(200)では、ユーザ-マイク間距離検出部(100)で計算されたユーザ-マイク間距離に基づいて、サーバ上の音声認識(220)部を利用するか、クライアント上の音声認識(210)部を利用するか、を決定する。例えば、次のように判定して切り替える。
【００３６】
If (distance>50) then { /* クライアント上の音声認識装置を利用する */ };
else { /* サーバ上の音声認識装置を利用する */ }
かくして、ユーザ-マイク間距離が求まり、この距離に応じて音声認識辞書を切り替える。例えば、ユーザ-マイク間距離が長いときは、机上に置かれたタブレットPC（personal computer）でコマンド音声認識して、テレビの操作を実行する。一方、ユーザ-マイク間距離が短いときは、手元または口元にあるタブレットPCでディクテーション音声認識して、タブレットPCでの文字入力に利用する。
【００３７】
（変形例１）
音声情報以外に、加速度センサ１６０の情報から、タブレットPCが手元／口元にあるかを検出して、タブレットPCが机上に置かれているときには、タブレットPCでコマンド音声認識して、テレビの操作を実行する。一方、タブレットPCが手元または口元にあるときには、タブレットPCでディクテーション音声認識して、タブレットPCでの文字入力に利用するようにしてもよい。
【００３８】
（変形例２）
加速度センサ１６０のかわりに、図示せぬ距離センサ（例えば赤外光をユーザに反射させる構成）でタブレットが置かれているのか、手元／口元なのかを検出して、変形例１と同様の動作をしてもよい。あるいは、距離センサの替わりに、カメラからの映像情報、例えば、顔、目、鼻、口、耳、手、指、身体全体などの大きさや向きから手元／口元なのかを検出してもよい。
【００３９】
以上説明した実施例のポイントの一つは、何かをしながら音声認識することにある。いわゆる、「ながら」操作を音声認識で実現することにある。音声認識の際に使う音響モデルの辞書を、ユーザの発話位置に応じて自動的に切り替える。
【００４０】
例えば、ユーザがタブレットPCを見ながらテレビを視聴しているユースケースを想定する。タブレットPCの至近距離でユーザが発話したら、サーバ処理型音声認識で発話を音声認識し、認識結果をタブレットPCのカーソル位置に入力する。一方、タブレットPCから離れたところでユーザが発話したら、タブレットPC内蔵のコマンド音声認識で発話を音声認識し、認識結果に基づいて、手元／口元にはない遠くの機器（例えば、テレビ。携帯電話、音楽再生装置、録画装置、パソコン、エアコン、洗濯機などの家電でもよい）を操作する。このように、タブレットPCの操作方法に応じて音声認識の辞書を切り替えることにより、面倒な音声認識辞書の切替操作をすることなく、機器を操作したり、テキストを入力したりできる。
【００４１】
音声情報（信号）に基づいて音声認識部を自動的に切り替えることへの要望があり、本実施形態では、ＧＵＩを使うのではなく、マイクから入力された音声と環境雑音のいわゆる信号対雑音比に基づいてユーザと音声入力装置の間の距離を検出し、この距離に基づいて、サーバ上の音声認識装置を利用するか、クライアント上の音声認識装置を利用するか、を音声入力装置が自動的に決めるので、煩わしい操作が減り、使い勝手が向上する。公知例では、ユーザがＧＵＩ上で切り替える操作が必要であるが、本例では、この操作が不要となる点が異なる。
【００４２】
なお、この発明は上記実施形態に限定されるものではなく、この外その要旨を逸脱しない範囲で種々変形して実施することができる。
また、上記した実施の形態に開示されている複数の構成要素を適宜に組み合わせることにより、種々の発明を形成することができる。例えば、実施の形態に示される全構成要素から幾つかの構成要素を削除しても良いものである。さらに、異なる実施の形態に係わる構成要素を適宜組み合わせても良いものである。
【符号の説明】
【００４３】
１１…音声復号部、１２…ＤＡ変換器、１３…増幅器、１４…増幅器、１５…ＡＤ変換器、１６…ユーザ-マイク間距離検出部、１７…音声符号部、２１…周波数変換部、２２…帯域パワー計算部、２３…雑音推定部、２４…ＳＮＲ計算部、２５…ゲイン算出部、２６…ゲイン加重部、２７…周波数逆変換部、１００…電子機器、１１０…表示部、１２０…ＣＰＵ、１３０…システムコントローラ、１４０…グラフィックスコントローラ、１５０…タッチパネルコントローラ、１６０…加速度センサ、１７０…不揮発性メモリ、１８０…ＲＡＭ、１９０…操作スイッチ、２００…音声処理部、２１０…マイク、２２０…スピーカ、２３０…圧力センサ、２４０…通信部、１１１…タッチパネル、１１２…ディスプレイ、Ｂ…筐体。
【図１】
2013072904.tif 000003
【図２】
2013072904.tif 000004
【図３】
2013072904.tif 000005
【図４】
2013072904.tif 000006
【図５】
2013072904.tif 000007
【図６】
2013072904.tif 000008
【図７】
2013072904.tif 000009