JP2015175983A - 音声認識装置、音声認識方法及びプログラム - Google Patents
音声認識装置、音声認識方法及びプログラム Download PDFInfo
- Publication number
- JP2015175983A JP2015175983A JP2014052360A JP2014052360A JP2015175983A JP 2015175983 A JP2015175983 A JP 2015175983A JP 2014052360 A JP2014052360 A JP 2014052360A JP 2014052360 A JP2014052360 A JP 2014052360A JP 2015175983 A JP2015175983 A JP 2015175983A
- Authority
- JP
- Japan
- Prior art keywords
- voice
- command
- gesture
- registration
- recognition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Studio Devices (AREA)
Abstract
【課題】装置の利便性の低下を防ぎつつ、音声認識精度を向上させることを目的とする。
【解決手段】撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識手段と、登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定手段と、始点及び終点のうち少なくとも一方が区間決定手段により決定された抽出区間の標本音声を登録コマンドとして記憶手段に登録する登録手段と、登録コマンドに基づいて、集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識手段とを有する。
【選択図】図1
【解決手段】撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識手段と、登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定手段と、始点及び終点のうち少なくとも一方が区間決定手段により決定された抽出区間の標本音声を登録コマンドとして記憶手段に登録する登録手段と、登録コマンドに基づいて、集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識手段とを有する。
【選択図】図1
Description
本発明は、音声認識装置、音声認識方法及びプログラムに関する。
従来、カメラ等の撮像装置において、装置から離れた位置でシャッター操作が可能な装置が既に実用化されている。このような装置においては、赤外線リモコンから送信される赤外線や、操作者による発話の音声をシャッターコマンドとして受け付けるものが知られている。
音声を用いた技術としては、シャッターコマンドとして利用する音声を予め登録しておき、登録音声との比較によりシャッターコマンドとしての音声を認識する技術が知られている。さらに、特許文献1には、シャッターコマンドの音声認識の際に、シャッターコマンドの発声タイミングを通知するためにジェスチャを利用する技術が開示されている。
音声を用いた技術としては、シャッターコマンドとして利用する音声を予め登録しておき、登録音声との比較によりシャッターコマンドとしての音声を認識する技術が知られている。さらに、特許文献1には、シャッターコマンドの音声認識の際に、シャッターコマンドの発声タイミングを通知するためにジェスチャを利用する技術が開示されている。
しかしながら、シャッター操作にリモコンを用いることとした場合には、撮影者は、リモコンを携帯する必要があり、面倒であり、また紛失の可能性もある。
また、シャッター操作に音声を用いることとした場合には、音声登録時と実際のシャッターコマンドの発話時の周辺雑音の環境が著しく異なる可能性がある。さらに、登録音声は、撮影装置に内蔵されたマイク近くで発声されるのに対し、実際のシャッターコマンドは、撮影装置から離れた位置で発声される。このため、距離の違いに起因し、音声の歪みや反響等の効果に差が生じることがあり、誤認識の可能性が高くなる。
さらに、ジェスチャ検出を契機に音声認識を開始することとした場合には、撮影直前に被写体となっている撮影者がジェスチャを行う必要があり、不便である。
また、シャッター操作に音声を用いることとした場合には、音声登録時と実際のシャッターコマンドの発話時の周辺雑音の環境が著しく異なる可能性がある。さらに、登録音声は、撮影装置に内蔵されたマイク近くで発声されるのに対し、実際のシャッターコマンドは、撮影装置から離れた位置で発声される。このため、距離の違いに起因し、音声の歪みや反響等の効果に差が生じることがあり、誤認識の可能性が高くなる。
さらに、ジェスチャ検出を契機に音声認識を開始することとした場合には、撮影直前に被写体となっている撮影者がジェスチャを行う必要があり、不便である。
本発明はこのような問題点に鑑みなされたもので、装置の利便性の低下を防ぎつつ、音声認識精度を向上させることを目的とする。
そこで、本発明は、音声認識装置であって、撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識手段と前記登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定手段と、前記始点及び前記終点のうち少なくとも一方が前記区間決定手段により決定された前記抽出区間の標本音声を前記登録コマンドとして記憶手段に登録する登録手段と、前記登録コマンドに基づいて、前記集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識手段とを有する。
本発明によれば、装置の利便性の低下を防ぎつつ、音声認識精度を向上させることができる。
以下、本発明の実施形態について図面に基づいて説明する。
(第1の実施形態)
図1は、音声認識装置及び撮像装置の一例としてのカメラ装置を示す図である。カメラ装置は、CPU101と、ROM102と、RAM103と、HDD104と、操作部105と、表示部106と、写真撮像部107と、ジェスチャ撮像部108と、集音部109と、スピーカ110とを有している。
CPU101は、カメラ装置の全体を総括的に制御する。ROM102は、制御プログラム等を記憶する。RAM103は、CPU101の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD104は、画像データや各種プログラム等を記憶する。操作部105は、ユーザによる各種操作を受け付ける。表示部106は、各種情報を表示する。
なお、後述するカメラ装置の機能や処理は、CPU101がROM102又はHDD104に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
図1は、音声認識装置及び撮像装置の一例としてのカメラ装置を示す図である。カメラ装置は、CPU101と、ROM102と、RAM103と、HDD104と、操作部105と、表示部106と、写真撮像部107と、ジェスチャ撮像部108と、集音部109と、スピーカ110とを有している。
CPU101は、カメラ装置の全体を総括的に制御する。ROM102は、制御プログラム等を記憶する。RAM103は、CPU101の主メモリ、ワークエリア等の一時記憶領域として用いられる。HDD104は、画像データや各種プログラム等を記憶する。操作部105は、ユーザによる各種操作を受け付ける。表示部106は、各種情報を表示する。
なお、後述するカメラ装置の機能や処理は、CPU101がROM102又はHDD104に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
写真撮像部107は、シャッター、レンズ、ミラー、感光素子、これらを駆動するモーター等を有している。写真撮像部107は、CPU101の制御の下、写真の撮像や、絞りの変更等を行う。ジェスチャ撮像部108は、写真撮像部107と同様に、レンズ、感光素子等を有している。ジェスチャ撮像部108は、ジェスチャ認識のための動画像を撮像して、画像データの系列に変換する。
集音部109は、複数のマイクロホン、A/Dコンバータ等を有している。集音部109は、カメラ装置外部の音声を集音し、音声データに変換する。集音部109はまた、複数のマイクロホンからの音声信号の位相差に基づいて、音源の方向を測定する。集音部109はさらに、特定の方向からの音を強調することができる。スピーカ110は、音声を出力する。
集音部109は、複数のマイクロホン、A/Dコンバータ等を有している。集音部109は、カメラ装置外部の音声を集音し、音声データに変換する。集音部109はまた、複数のマイクロホンからの音声信号の位相差に基づいて、音源の方向を測定する。集音部109はさらに、特定の方向からの音を強調することができる。スピーカ110は、音声を出力する。
図2は、カメラ装置の外観図である。カメラ前面210には、写真撮像部107のレンズ201及びシャッターボタン202が設けられている。カメラ前面210にはまた、ジェスチャ撮像部108のレンズ203が設けられている。なお、他の例としては、写真撮像部107及びジェスチャ撮像部108のレンズは、共通であってもよい。さらに、写真撮像部107及びジェスチャ撮像部108のミラー等の内部構成も、共通であってもよい。
カメラ前面210には、マイクロホンアレイを構成すべく、集音部109の複数のマイクロホン204a〜204cが配置されている。カメラ前面210にはまた、発光ダイオード(LED)205a,205bが設けられている。LED205a,205bは、適宜点灯又は消灯することにより、カメラ装置の状態等をユーザに通知する。例えば、LED205aは、後述する音声登録の状態の開始時に点灯し、終了時に消灯する。また、LED205bは、音声登録のエラーが発生した際に点灯する。
カメラ前面210には、マイクロホンアレイを構成すべく、集音部109の複数のマイクロホン204a〜204cが配置されている。カメラ前面210にはまた、発光ダイオード(LED)205a,205bが設けられている。LED205a,205bは、適宜点灯又は消灯することにより、カメラ装置の状態等をユーザに通知する。例えば、LED205aは、後述する音声登録の状態の開始時に点灯し、終了時に消灯する。また、LED205bは、音声登録のエラーが発生した際に点灯する。
カメラ裏面220には、表示部106及び操作部105が設けられている。ユーザは、表示部106の表示内容に従って操作部105を操作することにより、動作モードの切り替えを行う。ここで、動作モードとしては、音声シャッターモードと、通常シャッターモードとがある。ここで、音声シャッターモードとは、シャッターコマンドの音声認識により、撮像を開始するモードである。通常シャッターモードとは、シャッターボタン202の押下により、撮像を開始するモードである。
カメラ装置は、動作モードを切り替えるための構成として、不図示の電気回路や操作部105としてのスイッチを有している。なお、スイッチは、接点式の開閉器に限らず、例えばタッチパネルに表示される仮想的なスイッチでもよい。このように、スイッチは、ユーザからのモード切替指示を受け付け可能なものであればよく、そのための具体的な構成は、実施形態に限定されるものではない。カメラの底部には、カメラ装置を三脚などの架台に設置するためのネジ穴209が設けられている。
カメラ装置は、動作モードを切り替えるための構成として、不図示の電気回路や操作部105としてのスイッチを有している。なお、スイッチは、接点式の開閉器に限らず、例えばタッチパネルに表示される仮想的なスイッチでもよい。このように、スイッチは、ユーザからのモード切替指示を受け付け可能なものであればよく、そのための具体的な構成は、実施形態に限定されるものではない。カメラの底部には、カメラ装置を三脚などの架台に設置するためのネジ穴209が設けられている。
次に、音声シャッターモードにおけるユーザの操作手順の概略を説明する。ユーザはまず音声シャッターモードに設定し、自身が被写体としての撮影が行われる撮影位置(カメラ装置の前)に移動する。なお、このときの撮影位置と撮影時の実際の位置とを一致させるのは、音声認識における音源位置を一致させるためのものであり、両者は音声認識精度が低下しない程度に一致すればよく、厳密に一致する必要はない。
撮影位置において、ユーザは、シャッターコマンドとして登録する登録コマンドを実際に発声する。これに対応し、カメラ装置は、登録コマンドの標本音声の登録を行う。なお、音声登録に先立ち、ユーザは、登録ジェスチャを行うこととする。これにより、カメラ装置は、登録対象となるシャッターコマンドの発声開始タイミングを特定することができる。ここで、登録ジェスチャは、事前に定義された一連の動作である。本実施形態においては、右手を左右に振る動作を登録ジェスチャとする。
なお、登録ジェスチャは、実施形態に限定されるものではない。他の例としては、登録ジェスチャは、足や首を動かす動作でも良く、目を瞑る、所定の数の指を立てるなどの動作でも良い。登録ジェスチャは、人間に限らず、物体の動作でもよく、例えば白黒の縞模様を示す二本の棒が、離れた状態から平行に合わさる動きを登録ジェスチャとしてもよい。
撮影位置において、ユーザは、シャッターコマンドとして登録する登録コマンドを実際に発声する。これに対応し、カメラ装置は、登録コマンドの標本音声の登録を行う。なお、音声登録に先立ち、ユーザは、登録ジェスチャを行うこととする。これにより、カメラ装置は、登録対象となるシャッターコマンドの発声開始タイミングを特定することができる。ここで、登録ジェスチャは、事前に定義された一連の動作である。本実施形態においては、右手を左右に振る動作を登録ジェスチャとする。
なお、登録ジェスチャは、実施形態に限定されるものではない。他の例としては、登録ジェスチャは、足や首を動かす動作でも良く、目を瞑る、所定の数の指を立てるなどの動作でも良い。登録ジェスチャは、人間に限らず、物体の動作でもよく、例えば白黒の縞模様を示す二本の棒が、離れた状態から平行に合わさる動きを登録ジェスチャとしてもよい。
そして、ユーザは、登録コマンドとしてのシャッターコマンドの標本音声の登録後、実際のシャッタータイミングにおいて、シャッターコマンドを発声する。これに対応し、カメラ装置は、発声内容の音声認識を行い、シャッターコマンドが特定されると、撮像を行う。
このように、本実施形態にかかるカメラ装置は、ジェスチャを併用することにより、適切な発話内容を登録コマンドとして登録することができる。さらに、カメラ装置は、実際にシャッターコマンドが発声される環境において、発声された音声を登録コマンドとして登録する。したがって、カメラ装置は、標本音声との比較により、高精度に音声認識を行うことができる。なお、音声シャッターモードにおいて、ユーザは、上述の撮影手順の途中で処理を中断し、通常シャッターモードに切り替えることもできる。
このように、本実施形態にかかるカメラ装置は、ジェスチャを併用することにより、適切な発話内容を登録コマンドとして登録することができる。さらに、カメラ装置は、実際にシャッターコマンドが発声される環境において、発声された音声を登録コマンドとして登録する。したがって、カメラ装置は、標本音声との比較により、高精度に音声認識を行うことができる。なお、音声シャッターモードにおいて、ユーザは、上述の撮影手順の途中で処理を中断し、通常シャッターモードに切り替えることもできる。
図3は、カメラ装置による、音声シャッターモードにおける処理を示すフローチャートである。S301において、カメラ装置のCPU101は、ユーザによる操作部105の操作に応じて、動作モードを通常シャッターモードから音声シャッターモードに切り替える。次に、S302において、CPU101は、集音部109に集音を指示する。これに対応し、集音部109は、CPU101の制御の下、周辺の雑音を集音する。そして、CPU101は、集音部109により得られた雑音をRAM103に記録する。なお、CPU101は、S303において、登録ジェスチャが認識されるまで雑音の収録を継続する。なお、他の例としては、CPU101は、例えば5秒など一定期間雑音の収録を継続することとしてもよい。
次に、S303において、CPU101は、ジェスチャ認識を用いた音声登録を行う。なお、S303の処理については、後に詳述する。次に、S304において、CPU101は、S303において、登録コマンドとしてのシャッターコマンドの標本音声の登録が正しく行われたか否かを確認する。具体的には、CPU101は、RAM103に格納されているエラーフラグの値を参照することにより、エラーの有無、すなわち登録が正しく行われたか否かを確認する。
次に、S303において、CPU101は、ジェスチャ認識を用いた音声登録を行う。なお、S303の処理については、後に詳述する。次に、S304において、CPU101は、S303において、登録コマンドとしてのシャッターコマンドの標本音声の登録が正しく行われたか否かを確認する。具体的には、CPU101は、RAM103に格納されているエラーフラグの値を参照することにより、エラーの有無、すなわち登録が正しく行われたか否かを確認する。
CPU101は、音声登録時にエラーが発生した場合には(S304でYes)、RAM103に格納されている雑音、標本音声及び撮影画像等、音声登録に利用される情報を削除する。そして、CPU101は、処理をS302へ進め、再び音声登録処理を行う。CPU101は、音声登録時にエラーが発生しなかった場合には(S304でNo)、音声登録処理を終了し、処理をS305へ進める。すなわち、CPU101は、音声登録処理を終了し、シャッターコマンドの音声認識処理を開始する。
S305において、CPU101は、ユーザによる発話を、RAM103に格納されている標本音声や、予め定義されたキャンセルコマンド等の音声と比較して、音声認識を行う。S306において、CPU101は、音声認識による認識結果がキャンセルコマンドである場合には(S306でYes)、処理をS302へ進める。CPU101は、認識結果がキャンセルコマンドでない場合には(S306でNo)、処理をS307へ進める。
S305において、CPU101は、ユーザによる発話を、RAM103に格納されている標本音声や、予め定義されたキャンセルコマンド等の音声と比較して、音声認識を行う。S306において、CPU101は、音声認識による認識結果がキャンセルコマンドである場合には(S306でYes)、処理をS302へ進める。CPU101は、認識結果がキャンセルコマンドでない場合には(S306でNo)、処理をS307へ進める。
S307において、CPU101は、認識結果に対応するコマンドを発行し、コマンドに応じた処理を行う。ここで、CPU101は、シャッターコマンドの標本音声に対応する認識結果が得られた場合には、シャッターコマンドを発行する。そして、CPU101は、写真撮像部107に対し撮像開始を指示する。これに対応し、写真撮像部107は、撮像指示に従い、写真撮像を開始する。ここで、S307の処理は、撮像制御処理の一例である。
次に、S308において、CPU101は、音声シャッターモードの終了指示を操作部105を介して受け付けたか否かを確認する。CPU101は、終了指示を受け付けた場合には(S308でYes)、動作モードを通常シャッターモードに切り替えた後、処理をS309へ進める。S309においては、CPU101は、音声登録、音声認識に利用された、RAM103に格納されているデータを破棄し、音声シャッターモードにおける処理を終了する。CPU101は、終了指示を受け付けていない場合には(S308でNo)、処理をS305へ進める。
次に、S308において、CPU101は、音声シャッターモードの終了指示を操作部105を介して受け付けたか否かを確認する。CPU101は、終了指示を受け付けた場合には(S308でYes)、動作モードを通常シャッターモードに切り替えた後、処理をS309へ進める。S309においては、CPU101は、音声登録、音声認識に利用された、RAM103に格納されているデータを破棄し、音声シャッターモードにおける処理を終了する。CPU101は、終了指示を受け付けていない場合には(S308でNo)、処理をS305へ進める。
図4は、音声登録処理(S303)における詳細な処理を示すフローチャートである。S401において、CPU101は、ジェスチャ撮像部108に対し撮像を指示する。これに対応し、ジェスチャ撮像部108は、動画像の撮像を開始する。そして、CPU101は、ジェスチャ撮像部108により得られた動画像を時刻情報に対応付けてRAM103に記録していく。なお、動画像の撮像及び記録は、S408の処理が終了するまで継続する。
次に、S402において、CPU101は、S401の処理によりRAM103に動画像を構成するフレームが格納されると、格納されたフレームを処理対象の対象フレームとし、対象フレームにおいて、人間の顔を認識する。具体的には、CPU101は、例えばROM102等に予め登録された、目や鼻の統計的特徴モデルに対するパターンマッチングにより、人間の顔の認識を行うものとする。そして、CPU101は、認識した人間の顔を数える。
次に、S402において、CPU101は、S401の処理によりRAM103に動画像を構成するフレームが格納されると、格納されたフレームを処理対象の対象フレームとし、対象フレームにおいて、人間の顔を認識する。具体的には、CPU101は、例えばROM102等に予め登録された、目や鼻の統計的特徴モデルに対するパターンマッチングにより、人間の顔の認識を行うものとする。そして、CPU101は、認識した人間の顔を数える。
次に、S403において、CPU101は、S402において得られた人間の顔の数と、対象フレームの直前のフレームにおいて得られた人物の顔の数とを比較する。CPU101は、顔の数が増加した場合には(S403でYes)、撮影者が被写体となるべく、カメラ装置の設置位置から撮影位置への移動が完了したと考えられるため、処理を404へ進める。CPU101は、顔の数が増加していない場合には(S403でNo)、S402において算出された人間の顔の数をRAM103に格納して、処理をS402へ進める。
S402において、動画像の1番目のフレームが処理対象となる場合には、直前のフレームは存在しない。そこで、この場合は、CPU101は、S403の処理を行うことなく、算出した人間の顔の数をRAM103に格納して、処理をS402へ進める。
S402において、動画像の1番目のフレームが処理対象となる場合には、直前のフレームは存在しない。そこで、この場合は、CPU101は、S403の処理を行うことなく、算出した人間の顔の数をRAM103に格納して、処理をS402へ進める。
なお、他の例としては、S403において、人間の顔の数が減少した場合には、CPU101は、エラーとして、処理を終了してもよい。
また、上記処理において、時系列に沿って、人間の顔の数が一旦減少した後に増加したとする。この場合、本実施形態においては、CPU101は、増加時点で顔の数が増加したと判断するが、他の例としては、減少前の顔の数を基準とし、この基準値から増加した時点で、顔の数が増加したと判断してもよい。例えば、顔の数が5から3に減少し、その後4に増加したとする。この場合、本実施形態においては、4に増加した時点で顔の数が増加したと判断されるが、他の例においては、6に増加して初めて、顔の数が増加したと判断されることになる。
また、CPU101は、顔を数える際に、鮮明でない顔や、正面を向いていない顔、また画角の隅に現れる顔などを数から除外するようにしてもよい。また、CPU101は、時系列に顔の画像を追跡し、大きく移動した顔をカウントから除外してもよい。これにより、偶発的に通りかかる通行人を除外することができる。
また、上記処理において、時系列に沿って、人間の顔の数が一旦減少した後に増加したとする。この場合、本実施形態においては、CPU101は、増加時点で顔の数が増加したと判断するが、他の例としては、減少前の顔の数を基準とし、この基準値から増加した時点で、顔の数が増加したと判断してもよい。例えば、顔の数が5から3に減少し、その後4に増加したとする。この場合、本実施形態においては、4に増加した時点で顔の数が増加したと判断されるが、他の例においては、6に増加して初めて、顔の数が増加したと判断されることになる。
また、CPU101は、顔を数える際に、鮮明でない顔や、正面を向いていない顔、また画角の隅に現れる顔などを数から除外するようにしてもよい。また、CPU101は、時系列に顔の画像を追跡し、大きく移動した顔をカウントから除外してもよい。これにより、偶発的に通りかかる通行人を除外することができる。
次に、S404において、CPU101は、対象フレームと、その直前フレームの差分画像を作成する。そして、CPU101は、差分画像において、顔が特定された領域を基に、予めROM102等に格納されている人体の統計的特徴のモデルに対するパターンマッチングにより、人物の右腕と右手を検出する。そして、CPU101は、検出した右腕と右手の位置情報と、対象フレームに対応する時刻情報をRAM103に記憶する。具体的には、CPU101は、右腕は手首を始点、肘を終点とする線分として近似し、右手は一方の径が右腕の線分を延長した直線と重なる楕円として近似する。そして、CPU101は、右腕の始点、終点、右手の楕円の長径、短径、及び中心を位置情報として記憶する。なお、対象フレームにおいて、複数の人物が検出されている場合には、CPU101は、顔領域の面積が最も大きい顔を処理対象とし、対応する人物の右腕と右手の位置情報を記憶する。
なお、S404の処理時も、動画像の収録は継続している。そして、S404において、CPU101は、対象フレーム以降のフレームがRAM103に格納される度に、差分画像を作成し、右腕と右手を検出し、これらの位置情報をRAM103に格納する処理を継続する。
なお、S404の処理時も、動画像の収録は継続している。そして、S404において、CPU101は、対象フレーム以降のフレームがRAM103に格納される度に、差分画像を作成し、右腕と右手を検出し、これらの位置情報をRAM103に格納する処理を継続する。
次に、S405において、CPU101は、ジェスチャ認識を行う。具体的には、CPU101は、S404において得られた時系列順の複数の位置情報を、登録ジェスチャのHMMと照合することにより、登録ジェスチャが行われたか否かを判断する。ここで、HMMは、登録ジェスチャ、すなわち右手を振る動きで予め学習することにより得られたモデルである。ここで、S405の処理は、ジェスチャ認識処理の一例である。
次に、S406において、CPU101は、登録ジェスチャが検出されたか否かを確認する。具体的には、CPU101は、時系列順の複数の位置情報と登録ジェスチャのHMMとの尤度を算出し、尤度と閾値とを比較する。そして、CPU101は、尤度が閾値以上である場合に、登録ジェスチャが検出されたと判断する。
CPU101は、登録ジェスチャが検出された場合には(S406でYes)、画像の撮影及び記録を終了し、処理をS407へ進める。CPU101は、登録ジェスチャが検出されなかった場合には(S406でNo)、処理をS404へ進める。すなわち、CPU101は、登録ジェスチャが検出されるまで、S404〜S406の処理を繰り返すが、S406の後、S404の処理を実行するタイミング、すなわち繰り返し処理の間隔は、任意である。
次に、S406において、CPU101は、登録ジェスチャが検出されたか否かを確認する。具体的には、CPU101は、時系列順の複数の位置情報と登録ジェスチャのHMMとの尤度を算出し、尤度と閾値とを比較する。そして、CPU101は、尤度が閾値以上である場合に、登録ジェスチャが検出されたと判断する。
CPU101は、登録ジェスチャが検出された場合には(S406でYes)、画像の撮影及び記録を終了し、処理をS407へ進める。CPU101は、登録ジェスチャが検出されなかった場合には(S406でNo)、処理をS404へ進める。すなわち、CPU101は、登録ジェスチャが検出されるまで、S404〜S406の処理を繰り返すが、S406の後、S404の処理を実行するタイミング、すなわち繰り返し処理の間隔は、任意である。
次に、S407において、CPU101は、登録ジェスチャの認識結果に基づいて、登録コマンドとしての音声の抽出区間の始点を決定する。ここで、抽出区間とは、集音部109により得られた音声のうち、登録コマンドに相当する区間である。具体的には、CPU101は、右手の位置情報から、右手の加速度の絶対値が閾値(例えば10cm毎秒毎秒)以上である区間をジェスチャの区間であるとし、その始点を、抽出区間の始点として決定する。ここで、S407の処理は、区間決定処理の一例である。
なお、CPU101は、登録ジェスチャが行われたタイミングに基づいて、抽出区間の始点を決定すればよく、そのための具体的な処理は、実施形態に限定されるものではない。他の例としては、CPU101は、ジェスチャ区間の終点、始点と終点の平均の時点、もしくは右手の加速度が最大となった時点のいずれかを抽出区間の始点としてもよい。
なお、CPU101は、登録ジェスチャが行われたタイミングに基づいて、抽出区間の始点を決定すればよく、そのための具体的な処理は、実施形態に限定されるものではない。他の例としては、CPU101は、ジェスチャ区間の終点、始点と終点の平均の時点、もしくは右手の加速度が最大となった時点のいずれかを抽出区間の始点としてもよい。
次に、S408において、CPU101は、ジェスチャが行われたジェスチャ方向を特定する。具体的には、CPU101は、HMMと照合された複数の位置情報における、右手の位置の平均値をジェスチャ方向としてRAM103に格納する。ここで、S408の処理は、ジェスチャ方向特定処理の一例である。
次に、S409において、CPU101は、音声登録の状態が開始したことをユーザに通知すべく、LED205aに点灯を指示する。これに対応し、LED205aが発光する。ユーザは、LED205aが発光したのを確認することにより、登録すべきシャッターコマンドの発声タイミングであることを認識することができる。そして、LED205aの点灯後、ユーザは、登録コマンドとしてのシャッターコマンドを発声する。
次に、S409において、CPU101は、音声登録の状態が開始したことをユーザに通知すべく、LED205aに点灯を指示する。これに対応し、LED205aが発光する。ユーザは、LED205aが発光したのを確認することにより、登録すべきシャッターコマンドの発声タイミングであることを認識することができる。そして、LED205aの点灯後、ユーザは、登録コマンドとしてのシャッターコマンドを発声する。
次に、S410において、CPU101は、集音部109に対し、ジェスチャ方向の音を強調して集音することを指示する。これに対し、集音部109は、ジェスチャ方向の音を強調し、集音する。CPU101は、抽出区間の始点以降の音声を登録コマンドの標本音声としてRAM103への記録を開始する。なお、登録コマンドの集音及び標本音声の記録は、S415の処理時まで継続して実行される。次に、S411において、CPU101は、登録コマンドの標本音声の音源方向を特定し、これをRAM103に記録する。ここで、S411の処理は、音源方向特定処理の一例である。
次に、S412において、CPU101は、標本音声に対し、VAD(Voice Activity Detection)を行い、人間の声を検出する。CPU101は、VADに、音声及び非音声の隠れマルコフモデル(HMM)を用いる。そして、CPU101は、それぞれの尤度を比較して音声のHMMにおける尤度が高ければ音声と判断する方法を用いる。なお、VADの方法はこれに限るものではなく、例えば音声信号のエネルギーが特定の閾値を越えたものを人間の声と判断してもよい。ここで、S412の処理は、検出処理の一例である。
次に、S412において、CPU101は、標本音声に対し、VAD(Voice Activity Detection)を行い、人間の声を検出する。CPU101は、VADに、音声及び非音声の隠れマルコフモデル(HMM)を用いる。そして、CPU101は、それぞれの尤度を比較して音声のHMMにおける尤度が高ければ音声と判断する方法を用いる。なお、VADの方法はこれに限るものではなく、例えば音声信号のエネルギーが特定の閾値を越えたものを人間の声と判断してもよい。ここで、S412の処理は、検出処理の一例である。
次に、S413において、CPU101は、人間の声の検出結果に基づいて、人間による発声が終了したか否かを確認する。CPU101は、人間による発声が終了した場合には(S413でYes)、処理をS414へ進める。S414において、CPU101は、人間による発声が終了したタイミングを登録コマンドとしての音声の抽出区間の終点として決定する。ここで、S414の処理は、区間決定処理の一例である。次に、S415において、CPU101は、終点において、登録コマンドの標本音声の記録を終了する。
一方、S413において、CPU101は、人間による発声が終了していない場合には(S413でNo)、処理をS411へ進め、登録コマンドの標本音声の記録と、音源方向の記録を継続する。なお、S411〜S413の繰り返し処理において、S413の後、再度S411の処理を実行するタイミング、すなわち、繰り返し処理の間隔は、任意である。
以上のように、CPU101は、抽出区間を定め、抽出区間において得られた音声データを標本音声としてRAM103に記録し、さらに、抽出区間において得られた音源方向の系列をRAM103に記録する。
一方、S413において、CPU101は、人間による発声が終了していない場合には(S413でNo)、処理をS411へ進め、登録コマンドの標本音声の記録と、音源方向の記録を継続する。なお、S411〜S413の繰り返し処理において、S413の後、再度S411の処理を実行するタイミング、すなわち、繰り返し処理の間隔は、任意である。
以上のように、CPU101は、抽出区間を定め、抽出区間において得られた音声データを標本音声としてRAM103に記録し、さらに、抽出区間において得られた音源方向の系列をRAM103に記録する。
次に、S416において、CPU101は、集音部109に対し、雑音データの収集を指示する。これに対し、集音部109は、一定期間雑音データを集音する。集音部109は、例えば1秒間の雑音データを得る。なお、雑音データの長さは、固定値であってもよく、また他の例としては、標本音声の長さの10分の1等動的に決定される値であってもよい。次に、S417において、CPU101は、登録コマンドの標本音声の音声辞書等への登録を行う。以上で、ジェスチャ認識を用いた音声登録処理(S302)が終了する。ここで、S417の処理は、登録処理の一例である。
図5は、カメラ装置による、標本音声登録処理(S417)における詳細な処理を示すフローチャートである。S501において、CPU101は、得られた登録音声の標本音声、すなわちRAM103に記録されている標本音声の長さと長さ閾値とを比較する。ここで、長さ閾値は、予めROM102等に設定されているものとする。長さ閾値は、例えば0.3秒とする。CPU101は、得られた標本音声の長さが長さ閾値以上である場合には(S501でYes)、処理をS502へ進める。CPU101は、得られた標本音声の長さが閾値未満である場合には(S501でNo)、処理をS511へ進める。
S511において、CPU101は、登録エラーのフラグを立てる。次に、S512において、CPU101は、登録エラーをユーザに通知し、標本音声登録処理を終了する。具体的には、CPU101は、LED205bを点灯する。他の例としては、CPU101は、「エラーが発生しました」等の音声をスピーカ110から出力してもよい。
S511において、CPU101は、登録エラーのフラグを立てる。次に、S512において、CPU101は、登録エラーをユーザに通知し、標本音声登録処理を終了する。具体的には、CPU101は、LED205bを点灯する。他の例としては、CPU101は、「エラーが発生しました」等の音声をスピーカ110から出力してもよい。
S502において、CPU101は、標本音声の音源方向の系列を分析して、音源方向のぶれの程度(ぶれ量)を算出する。具体的には、CPU101は、音源方向の系列における標準偏差をぶれ量として算出する。次に、S503において、CPU101は、ぶれ量とぶれ閾値とを比較する。ここで、ぶれ閾値は、予めROM102等に設定されているものとする。ぶれ閾値は、例えば立体角にして1/32πステラジアンである。
CPU101は、ぶれ量がぶれ閾値未満である場合(S503でYes)、処理をS504へ進める。一方で、CPU101は、ぶれ量がぶれ閾値以上である場合(S503でNo)、処理をS511へ進める。このように、CPU101は、標本音声の発声時の発話者の移動が多い場合には、登録エラーと判断するものとする。
CPU101は、ぶれ量がぶれ閾値未満である場合(S503でYes)、処理をS504へ進める。一方で、CPU101は、ぶれ量がぶれ閾値以上である場合(S503でNo)、処理をS511へ進める。このように、CPU101は、標本音声の発声時の発話者の移動が多い場合には、登録エラーと判断するものとする。
S504において、CPU101は、音源方向とジェスチャ方向の方向差分を算出する。次に、S505において、CPU101は、方向差分と、方向差分閾値とを比較する。ここで、差分閾値は、予めROM102等に設定されているものとする。差分閾値は、例えば1/32πステラジアンである。なお、方向差分閾値は、固定値でなくてもよく、他の例としては、CPU101は、画角や被写体までの距離に応じて動的に方向差分閾値を決定してもよい。
CPU101は、方向差分が方向差分閾値未満である場合(S505でYes)、処理をS506へ進める。一方で、CPU101は、方向差分が方向差分閾値以上である場合(S505でNo)、処理をS511へ進める。このように、CPU101は、音源方向とジェスチャ方向の差が大きい場合には、登録エラーと判断するものとする。
CPU101は、方向差分が方向差分閾値未満である場合(S505でYes)、処理をS506へ進める。一方で、CPU101は、方向差分が方向差分閾値以上である場合(S505でNo)、処理をS511へ進める。このように、CPU101は、音源方向とジェスチャ方向の差が大きい場合には、登録エラーと判断するものとする。
次に、S506において、CPU101は、S302において記録された雑音と、S415において記録された雑音の差分(雑音差分)を算出する。次に、S507において、CPU101は、雑音差分と雑音差分閾値とを比較する。CPU101は、雑音差分が雑音差分閾値未満の場合には(S507でYes)、処理をS508へ進める。CPU101は、雑音差分が雑音差分閾値以上の場合には(S507でNo)、処理をS511へ進める。なお、CPU101は、スペクトル間の距離や音量レベルの差を用いて雑音の比較を行う。
S508において、CPU101は、登録コマンドの標本音声の音声辞書をRAM103に登録する。音声辞書は、標本音声の特徴を示す情報のレコードである。レコードの数は、特に限定されるものではないが、S606において参照される閾値と同じ個数以上であることが好ましい。CPU101は、具体的には、登録コマンドの標本音声をメル周波数ケプストラム係数(MFCC)の系列に変換して、音声辞書のレコードとして追加する。なお、音声辞書に登録されるレコードは、MFCC系列に限らず、標本音声の音波波形そのもの、MFCCから算出される隠れマルコフモデル(HMM)等の統計的モデル、音素タイプライタによって標本音声から求められた音素系列であってもよい。
S508において、CPU101は、登録コマンドの標本音声の音声辞書をRAM103に登録する。音声辞書は、標本音声の特徴を示す情報のレコードである。レコードの数は、特に限定されるものではないが、S606において参照される閾値と同じ個数以上であることが好ましい。CPU101は、具体的には、登録コマンドの標本音声をメル周波数ケプストラム係数(MFCC)の系列に変換して、音声辞書のレコードとして追加する。なお、音声辞書に登録されるレコードは、MFCC系列に限らず、標本音声の音波波形そのもの、MFCCから算出される隠れマルコフモデル(HMM)等の統計的モデル、音素タイプライタによって標本音声から求められた音素系列であってもよい。
次に、S509において、CPU101は、登録コマンドの標本音声から、音響モデルを生成する。そして、CPU101は、例えば「フラッシュ」等の非登録コマンド音響モデルと区別すべく、生成した音響モデルを登録コマンド音響モデルとしてRAM103に登録する。次に、S510において、CPU101は、音声登録の状態が終了したことをユーザに通知すべく、LED205aを消灯し、登録された標本音声をスピーカ110から再生出力する。以上で、標本音声登録処理(S416)が終了する。
ユーザは、再生された標本音声を実際に聞くことにより、所望の音声が登録コマンド(シャッターコマンド)として登録されたことを確認することができる。なお、標本音声の再生は、カメラ装置本体から行うことに限らず、カメラ装置は、遠隔の操作者が装着する無線イヤホン等に出力してもよい。
ユーザは、再生された標本音声を実際に聞くことにより、所望の音声が登録コマンド(シャッターコマンド)として登録されたことを確認することができる。なお、標本音声の再生は、カメラ装置本体から行うことに限らず、カメラ装置は、遠隔の操作者が装着する無線イヤホン等に出力してもよい。
図6は、図3を参照しつつ説明した音声認識処理(S305)における詳細な処理を示すフローチャートである。なお、前提として、カメラ装置は、S509で登録された登録コマンドの標本音声の音声辞書と、登録コマンド音響モデルに加えて、例えば「フラッシュ」等シャッターコマンド以外の単語を認識するための非登録コマンド音響モデルを予め記憶している。非登録コマンド音響モデルは、HMMによって構成され、不特定話者の音声の学習によって作られる。なお、非登録コマンド音響モデルは、例えばユーザの声を事前に学習するなどして、ユーザの声に話者適応したものでもよい。
非登録コマンド音響モデルの認識対象の単語は、登録キャンセルコマンドに割り当てられた単語を1つ含む。ここでは「キャンセル」とする。なお、複数の単語を登録キャンセルコマンドに割り当ててもよい。また、非登録コマンド音響モデルは、認識対象の単語以外を認識するガベージモデルを有する。ガベージが認識された場合は、どの認識対象の単語にも当てはまらなかったことを意味する。
非登録コマンド音響モデルの認識対象の単語は、登録キャンセルコマンドに割り当てられた単語を1つ含む。ここでは「キャンセル」とする。なお、複数の単語を登録キャンセルコマンドに割り当ててもよい。また、非登録コマンド音響モデルは、認識対象の単語以外を認識するガベージモデルを有する。ガベージが認識された場合は、どの認識対象の単語にも当てはまらなかったことを意味する。
図6のS601において、CPU101は、集音部109に対しS411において特定した音源方向の音を強調して集音するよう指示する。これに対応し、集音部109は、集音を開始する。そして、CPU101は、集音部109により得られた音声の記録を開始する。次に、S602において、CPU101は、集音部109により得られた音声に対しVADを行い、人間の声を検出する。そして、CPU101は、検出結果に基づいて、人間による発話が開始したか否かを判断する。
CPU101は、人間による発話が開始した場合には(S602でYes)、処理をS603へ進める。CPU101は、人間による発声が開始していない場合には(S602でNo)、処理をS602へ進める。すなわち、CPU101は、人間による発声が開始していない場合には、人間による発声が開始するまで待機する。なお、人間の声を検出する処理は、実施形態に限定されるものではない。
CPU101は、人間による発話が開始した場合には(S602でYes)、処理をS603へ進める。CPU101は、人間による発声が開始していない場合には(S602でNo)、処理をS602へ進める。すなわち、CPU101は、人間による発声が開始していない場合には、人間による発声が開始するまで待機する。なお、人間の声を検出する処理は、実施形態に限定されるものではない。
S603において、CPU101は、集音部109により得られた音声を、音声認識の対象のコマンド音声としてRAM103に記録する。次に、S604において、CPU101は、人間による発声が終了したか否かを確認する。CPU101は、人間による発声が終了した場合には(S604でYes)、コマンド音声の記録を終了し、集音部109に対し集音の終了を指示した後、処理をS605へ進める。CPU101は、人間による発声が終了していない場合には(S604でNo)、処理をS603へ進め、コマンド音声の記録を継続する。
S605において、CPU101は、コマンド音声の長さと長さ閾値とを比較する。ここで、長さ閾値は、例えばROM102等に予め設定されているものとする。長さ閾値は、例えば0.3秒とする。他の例としては、CPU101は、長さ閾値の値を動的に決定してもよい。CPU101は、コマンド音声の長さが閾値以上である場合には(S605でYes)、処理をS606へ進める。CPU101は、コマンド音声の長さが閾値未満である場合には(S605でNo)、処理をS601へ進める。このように、CPU101は、コマンド音声が短すぎる場合には、このコマンド音声を棄却する。
S605において、CPU101は、コマンド音声の長さと長さ閾値とを比較する。ここで、長さ閾値は、例えばROM102等に予め設定されているものとする。長さ閾値は、例えば0.3秒とする。他の例としては、CPU101は、長さ閾値の値を動的に決定してもよい。CPU101は、コマンド音声の長さが閾値以上である場合には(S605でYes)、処理をS606へ進める。CPU101は、コマンド音声の長さが閾値未満である場合には(S605でNo)、処理をS601へ進める。このように、CPU101は、コマンド音声が短すぎる場合には、このコマンド音声を棄却する。
S606において、CPU101は、音声認識が行われた認識回数を特定する。具体的には、CPU101は、図3に示す処理が開始してから、S305の処理に進んだ回数を音声認識が行われた認識回数として特定する。そして、CPU101は、認識回数と回数閾値とを比較する。ここで、回数閾値は、ROM102に予め格納されているものとする。回数閾値は、例えば5回とする。
CPU101は、認識回数が回数閾値未満の場合には(S606でNo)、処理をS607へ進める。CPU101は、認識回数が回数閾値以上の場合には(S606でYes)、処理をS610へ進める。
CPU101は、認識回数が回数閾値未満の場合には(S606でNo)、処理をS607へ進める。CPU101は、認識回数が回数閾値以上の場合には(S606でYes)、処理をS610へ進める。
S607において、CPU101は、コマンド音声を音声辞書に含まれる各標本音声と比較する。CPU101は、コマンド音声がいずれかの標本音声に近いと判断した場合には(S607でYes)、処理をS608へ進める。CPU101は、コマンド音声がいずれの標本音声にも近くないと判断した場合には(S607でNo)、処理をS610へ進める。
具体的には、CPU101は、コマンド音声をMFCCに変換し、音声辞書の各標本音声のMFCCと動的時間伸縮法によって距離を求める。そして、CPU101は、いずれかの標本音声との距離が所定の閾値未満であれば、標本音声に近いと判断する。ここで、閾値は一定値でもよいが、標本音声に近いと判断される確率が音声辞書の標本音声の数に大きく依存しないように、標本音声の数が多いほど閾値を小さくするようにしてもよい。例えば標本音声数が1の場合の閾値に対して、標本音声数の逆数のD乗根(DはMFCCの次元数)倍とする方法が考えられる。
具体的には、CPU101は、コマンド音声をMFCCに変換し、音声辞書の各標本音声のMFCCと動的時間伸縮法によって距離を求める。そして、CPU101は、いずれかの標本音声との距離が所定の閾値未満であれば、標本音声に近いと判断する。ここで、閾値は一定値でもよいが、標本音声に近いと判断される確率が音声辞書の標本音声の数に大きく依存しないように、標本音声の数が多いほど閾値を小さくするようにしてもよい。例えば標本音声数が1の場合の閾値に対して、標本音声数の逆数のD乗根(DはMFCCの次元数)倍とする方法が考えられる。
なお、音声辞書がMFCCの代わりに音素系列を格納している場合は、CPU101は、コマンド音声を音素タイプライタによって音素列に変換する。そして、CPU101は、コマンド音声の音素列と音声辞書の音素系列とを比較して、いずれかと一致すれば標本音声に近いと判断する。なおCPU101は、正確に一致しなくとも、例えばいずれかの標本音声の音素列とのレーベンシュタイン距離が所定の値、例えば2以下であれば標本音声に近いと判断してもよい。
S608において、CPU101は、コマンド音声を新たに音声辞書に追加する。次に、S609において、コマンド音声による学習により、登録コマンド音響モデルを更新する。以上で、音声認識処理(S305)が終了する。ここで、S608の処理は、音響モデル生成処理の一例である。
S608において、CPU101は、コマンド音声を新たに音声辞書に追加する。次に、S609において、コマンド音声による学習により、登録コマンド音響モデルを更新する。以上で、音声認識処理(S305)が終了する。ここで、S608の処理は、音響モデル生成処理の一例である。
一方、S610において、CPU101は、コマンド音声を、登録コマンド音響モデル及び非登録コマンド音響モデルと照合して、ガベージを含む各単語についてスコアを求める。そして、CPU101は、最も高いスコアを得た単語をコマンド音声に対する認識結果として特定する。
S611において、CPU101は、認識結果がガベージか否かを確認する。CPU101は、認識結果がガベージである場合には(S611でYes)、処理をS601へ進める。CPU101は、認識結果がガベージでない場合には(S611でNo)、処理をS612へ進める。
S612において、CPU101は、認識結果が登録コマンド(シャッターコマンド)か否かを確認する。CPU101は、認識結果が登録コマンドである場合には(S612でYes)、処理をS609へ進める。CPU101は、認識結果が登録コマンドでない場合には(S612でNo)、音声認識処理(S305)を終了する。以上のように、S609を経由して音声認識処理(S305)を終了した場合には、登録コマンドが認識結果として得られる。
S611において、CPU101は、認識結果がガベージか否かを確認する。CPU101は、認識結果がガベージである場合には(S611でYes)、処理をS601へ進める。CPU101は、認識結果がガベージでない場合には(S611でNo)、処理をS612へ進める。
S612において、CPU101は、認識結果が登録コマンド(シャッターコマンド)か否かを確認する。CPU101は、認識結果が登録コマンドである場合には(S612でYes)、処理をS609へ進める。CPU101は、認識結果が登録コマンドでない場合には(S612でNo)、音声認識処理(S305)を終了する。以上のように、S609を経由して音声認識処理(S305)を終了した場合には、登録コマンドが認識結果として得られる。
以上のように、本実施形態にかかるカメラ装置は、撮影時と同様の環境において登録された登録コマンドを用いて、コマンド音声を認識し、撮影を開始することができる。
また、カメラ装置は、登録コマンドとして認識されたコマンド音声を用いて、登録コマンド音響モデルを更新し、登録コマンド音響モデルに利用されるコマンド音声の数が閾値以上となった場合に、登録コマンド音響モデルを用いた音声認識を行う。これにより、より精度よく音声認識を行うことができる。また、カメラ装置は、標本音声に近いコマンド音声に加えて、事前に定義した非登録コマンドの単語も、標本音声と区別して認識することが出来る。
また、カメラ装置は、登録コマンドとして認識されたコマンド音声を用いて、登録コマンド音響モデルを更新し、登録コマンド音響モデルに利用されるコマンド音声の数が閾値以上となった場合に、登録コマンド音響モデルを用いた音声認識を行う。これにより、より精度よく音声認識を行うことができる。また、カメラ装置は、標本音声に近いコマンド音声に加えて、事前に定義した非登録コマンドの単語も、標本音声と区別して認識することが出来る。
(第2の実施形態)
第2の実施形態にかかるカメラ装置は、登録コマンドとしての音声の抽出区間の始点だけでなく終点も登録ジェスチャにより決定する。以下、第2の実施形態にかかるカメラ装置について、第1の実施形態にかかるカメラ装置と異なる点について説明する。図7は、第2の実施形態にかかるカメラ装置による、音声登録処理(S303)における詳細な処理を示すフローチャートである。なお、図7中、図4に示す処理と同一の処理には、同一番号を付している。
S403において、CPU101は、顔の数が増加した場合(S403でYes)、処理をS701へ進める。S701において、CPU101は、集音部109に対し、集音を指示する。これに対応し、集音部109は、集音を開始する。そして、CPU101は、得られた音声のRAM103への記録を開始する。なお、音声の記録は、後述するS704の処理時まで継続して実行される。
第2の実施形態にかかるカメラ装置は、登録コマンドとしての音声の抽出区間の始点だけでなく終点も登録ジェスチャにより決定する。以下、第2の実施形態にかかるカメラ装置について、第1の実施形態にかかるカメラ装置と異なる点について説明する。図7は、第2の実施形態にかかるカメラ装置による、音声登録処理(S303)における詳細な処理を示すフローチャートである。なお、図7中、図4に示す処理と同一の処理には、同一番号を付している。
S403において、CPU101は、顔の数が増加した場合(S403でYes)、処理をS701へ進める。S701において、CPU101は、集音部109に対し、集音を指示する。これに対応し、集音部109は、集音を開始する。そして、CPU101は、得られた音声のRAM103への記録を開始する。なお、音声の記録は、後述するS704の処理時まで継続して実行される。
次に、CPU101は、処理をS409へ進め、音声登録の状態が開始したことをユーザに通知すべく、LED205aに点灯を指示する。ユーザは、LED205aの点灯を確認した後、登録ジェスチャを開始し、登録ジェスチャを行いながら、登録コマンドを発声し、登録コマンドの発声の終了とともに、登録ジェスチャも停止することとする。
そして、CPU101は、処理をS404へ進める。そして、CPU101は、S404〜S406の処理を行う。CPU101は、登録ジェスチャを検出した場合には(S406でYes)、処理をS702へ進める。S702において、CPU101は、検出された登録ジェスチャのタイミングに基づいて抽出区間の始点及び終点を決定する。具体的には、登録ジェスチャが認識された開始タイミング及び終了タイミングをそれぞれ抽出区間の始点及び終点として決定する。
そして、CPU101は、処理をS404へ進める。そして、CPU101は、S404〜S406の処理を行う。CPU101は、登録ジェスチャを検出した場合には(S406でYes)、処理をS702へ進める。S702において、CPU101は、検出された登録ジェスチャのタイミングに基づいて抽出区間の始点及び終点を決定する。具体的には、登録ジェスチャが認識された開始タイミング及び終了タイミングをそれぞれ抽出区間の始点及び終点として決定する。
次に、S408において、CPU101は、ジェスチャ方向を特定し、処理をS703へ進める。S703において、CPU101は、音声の記録を終了する。次に、S704において、CPU101は、抽出区間の音声を登録コマンドとして、その標本音声を抽出する。次に、S705において、CPU101は、抽出区間の終点から一定時間前までの標本音声の音源方向を特定し、これをRAM103に記録し、処理をS416へ進める。ここで、一定時間は、例えば0.2秒間とする。
以上のように、本実施形態のカメラ装置は、1つの登録ジェスチャの開始タイミング及び終了タイミングをそれぞれ抽出区間の始点及び終点として決定する。なお、第2の実施形態にかかるカメラ装置のこれ以外の構成及び処理は、第1の実施形態にかかるカメラ装置の構成及び処理と同様である。
以上のように、本実施形態のカメラ装置は、1つの登録ジェスチャの開始タイミング及び終了タイミングをそれぞれ抽出区間の始点及び終点として決定する。なお、第2の実施形態にかかるカメラ装置のこれ以外の構成及び処理は、第1の実施形態にかかるカメラ装置の構成及び処理と同様である。
(第3の実施形態)
第3の実施形態にかかるカメラ装置は、登録コマンドとしての音声の抽出区間の始点及び終点をそれぞれ別に認識された登録ジェスチャにより決定する。以下、第3の実施形態にかかるカメラ装置について、他の実施形態にかかるカメラ装置と異なる点について説明する。図8は、第3の実施形態にかかるカメラ装置による、音声登録処理(S303)における詳細な処理を示すフローチャートである。なお、図8中、図4、図7に示す処理と同一の処理には、同一番号を付している。
CPU101は、S406において登録ジェスチャを検出すると(S406でYes)、処理をS407へ進め、第1の実施形態と同様に、登録ジェスチャの認識結果に基づいて、抽出区間の始点を決定し、処理をS802へ進める。なお、S802〜S805の処理は、S404〜S406の処理と同様である。そして、CPU101は、登録ジェスチャが検出された場合には(S804でYes)、処理をS805へ進める。S805において、CPU101は、S804において検出された登録ジェスチャの認識結果に基づいて、抽出区間の終点を決定し、処理をS408へ進める。
第3の実施形態にかかるカメラ装置は、登録コマンドとしての音声の抽出区間の始点及び終点をそれぞれ別に認識された登録ジェスチャにより決定する。以下、第3の実施形態にかかるカメラ装置について、他の実施形態にかかるカメラ装置と異なる点について説明する。図8は、第3の実施形態にかかるカメラ装置による、音声登録処理(S303)における詳細な処理を示すフローチャートである。なお、図8中、図4、図7に示す処理と同一の処理には、同一番号を付している。
CPU101は、S406において登録ジェスチャを検出すると(S406でYes)、処理をS407へ進め、第1の実施形態と同様に、登録ジェスチャの認識結果に基づいて、抽出区間の始点を決定し、処理をS802へ進める。なお、S802〜S805の処理は、S404〜S406の処理と同様である。そして、CPU101は、登録ジェスチャが検出された場合には(S804でYes)、処理をS805へ進める。S805において、CPU101は、S804において検出された登録ジェスチャの認識結果に基づいて、抽出区間の終点を決定し、処理をS408へ進める。
なお、CPU101は、登録ジェスチャが行われたタイミングに基づいて、抽出区間の終点を決定すればよく、そのための具体的な処理は、始点と同様に、実施形態に限定されるものではない。
以上のように、本実施形態のカメラ装置は、1つの登録ジェスチャの認識結果に基づいて、抽出区間の始点を決定し、その後さらに認識された別の登録ジェスチャの認識結果に基づいて、抽出区間の終点を決定する。なお、第3の実施形態にかかるカメラ装置のこれ以外の構成及び処理は、他の実施形態にかかるカメラ装置の構成及び処理と同様である。
以上のように、本実施形態のカメラ装置は、1つの登録ジェスチャの認識結果に基づいて、抽出区間の始点を決定し、その後さらに認識された別の登録ジェスチャの認識結果に基づいて、抽出区間の終点を決定する。なお、第3の実施形態にかかるカメラ装置のこれ以外の構成及び処理は、他の実施形態にかかるカメラ装置の構成及び処理と同様である。
第3の実施形態にかかるカメラ装置の変更例について説明する。本実施形態においては、抽出区間の始点及び終点を決定するための認識対象となる登録ジェスチャは同一のものであったが、これに限定されるものではない。例えば、始点を決定するための登録ジェスチャと終点を決定するための登録ジェスチャとは異なる種類のジェスチャであってもよい。例えば、カメラ装置は、右手を振るジェスチャに基づいて、始点を決定し、胸の前で拍手をするジェスチャに基づいて、終点を決定してもよい。
(第4の実施形態)
第4の実施形態にかかるカメラ装置は、人間による発声の検出結果に基づいて、抽出区間の始点を決定し、登録ジェスチャの認識結果に基づいて、抽出区間の終点を決定する。以下、第4の実施形態にかかるカメラ装置について、他の実施形態にかかるカメラ装置と異なる点について説明する。図9は、第4の実施形態にかかるカメラ装置による、音声登録処理(S303)における詳細な処理を示すフローチャートである。なお、図9中、図4、図7、図8に示す処理と同一の処理には、同一番号を付している。
S403において、CPU101は、顔の数が増加した場合(S403でYes)、処理をS409へ進める。S409において、CPU101は、音声登録の状態が開始したことをユーザに通知すべく、LED205aに点灯を指示する。これに対応し、LED205aが点灯する。ユーザは、LED205aが発行したのを確認することにより、登録コマンドの発声タイミングであることを認識することができる。そして、LED205aの点灯後、ユーザは、登録コマンドとしてのシャッターコマンドを発声する。本実施形態においては、ユーザは、さらに登録コマンドの発声後、登録ジェスチャを行う。
第4の実施形態にかかるカメラ装置は、人間による発声の検出結果に基づいて、抽出区間の始点を決定し、登録ジェスチャの認識結果に基づいて、抽出区間の終点を決定する。以下、第4の実施形態にかかるカメラ装置について、他の実施形態にかかるカメラ装置と異なる点について説明する。図9は、第4の実施形態にかかるカメラ装置による、音声登録処理(S303)における詳細な処理を示すフローチャートである。なお、図9中、図4、図7、図8に示す処理と同一の処理には、同一番号を付している。
S403において、CPU101は、顔の数が増加した場合(S403でYes)、処理をS409へ進める。S409において、CPU101は、音声登録の状態が開始したことをユーザに通知すべく、LED205aに点灯を指示する。これに対応し、LED205aが点灯する。ユーザは、LED205aが発行したのを確認することにより、登録コマンドの発声タイミングであることを認識することができる。そして、LED205aの点灯後、ユーザは、登録コマンドとしてのシャッターコマンドを発声する。本実施形態においては、ユーザは、さらに登録コマンドの発声後、登録ジェスチャを行う。
次に、S901において、CPU101は、集音部109に対し、集音を指示する。これに対応し、集音部109は、集音を開始する。そして、CPU101は、得られた音声のRAM103への記録を開始する。次に、S412において、CPU101は、人間の声を検出し、S902において、人間による発声が開始したか否かを確認する。CPU101は、人間による発声が開始した場合には(S902でYes)、処理をS903へ進める。CPU101は、人間による発声が開始していない場合には(S902でNo)、処理をS412へ進める。
S903において、CPU101は、人間による発話の開始タイミングを、抽出区間の始点として決定する。以下、S802〜S417までの処理は、第3の実施形態にかかる対応する処理と同様である。すなわち、CPU101は、抽出区間の終点については、登録ジェスチャの認識結果に基づいて決定する。
以上のように、本実施形態のカメラ装置は、人間による発声の検出結果に基づいて、抽出区間の始点を決定し、登録ジェスチャの認識結果に基づいて、抽出区間の終点を決定する。なお、第4の実施形態にかかるカメラ装置のこれ以外の構成及び処理は、他の実施形態にかかるカメラ装置の構成及び処理と同様である。
S903において、CPU101は、人間による発話の開始タイミングを、抽出区間の始点として決定する。以下、S802〜S417までの処理は、第3の実施形態にかかる対応する処理と同様である。すなわち、CPU101は、抽出区間の終点については、登録ジェスチャの認識結果に基づいて決定する。
以上のように、本実施形態のカメラ装置は、人間による発声の検出結果に基づいて、抽出区間の始点を決定し、登録ジェスチャの認識結果に基づいて、抽出区間の終点を決定する。なお、第4の実施形態にかかるカメラ装置のこれ以外の構成及び処理は、他の実施形態にかかるカメラ装置の構成及び処理と同様である。
<その他の実施形態>
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア(プログラム)を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ(又はCPUやMPU等)がプログラムを読み出して実行する処理である。
以上、上述した各実施形態によれば、装置の利便性の低下を防ぎつつ、音声認識精度を向上させることができる。
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
101 CPU、102 ROM、103 RAM、104 HDD、105 操作部、106 表示部、107 写真撮像部、108 ジェスチャ撮像部、109 集音部、110 スピーカ
Claims (14)
- 撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識手段と、
前記登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定手段と、
前記始点及び前記終点のうち少なくとも一方が前記区間決定手段により決定された前記抽出区間の標本音声を前記登録コマンドとして記憶手段に登録する登録手段と、
前記登録コマンドに基づいて、前記集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識手段と
を有する音声認識装置。 - 前記区間決定手段は、前記登録ジェスチャが認識された開始タイミング及び終了タイミングをそれぞれ前記抽出区間の前記始点及び前記終点として決定する請求項1に記載の音声認識装置。
- 前記集音手段が集音した音声から人間の声を検出する検出手段を更に有し、
前記区間決定手段は、人間の声の検出結果に基づいて、前記抽出区間の始点及び終点のうち少なくとも一方を決定する請求項1に記載の音声認識装置。 - 前記区間決定手段は、前記登録ジェスチャが認識されたタイミングに基づいて、前記抽出区間の始点を決定し、前記人間の声の検出結果に基づいて、前記抽出区間の終点を決定する請求項3に記載の音声認識装置。
- 前記区間決定手段は、前記人間の声の検出結果に基づいて、前記抽出区間の始点を決定し、前記登録ジェスチャが認識されたタイミングに基づいて、前記抽出区間の終点を決定する請求項3に記載の音声認識装置。
- 前記区間決定手段は、前記登録ジェスチャが認識された第1のタイミングと、前記第1のタイミングの後、前記登録ジェスチャが認識された第2のタイミングとをそれぞれ前記抽出区間の始点及び終点として決定する請求項1に記載の音声認識装置。
- 前記登録ジェスチャが行われたジェスチャ方向を特定するジェスチャ方向特定手段と、
前記抽出区間において集音された音声の音源方向を特定する音源方向特定手段と
をさらに有し、
前記登録手段は、前記音源方向と前記ジェスチャ方向の差が閾値未満の場合に、前記抽出区間の前記標本音声を前記登録コマンドとして登録する請求項1乃至6何れか1項に記載の音声認識装置。 - 前記登録コマンドが認識された前記コマンド音声に基づいて、音響モデルを生成する音響モデル生成手段をさらに有し、
前記音声認識手段は、前記音響モデルの生成に利用された前記コマンド音声の数が閾値以上である場合に、前記音響モデルに基づいて、前記音声認識を行う請求項1乃至7何れか1項に記載の音声認識装置。 - 前記音声認識手段は、前記音響モデルの生成に利用された前記コマンド音声の数が閾値未満である場合に、前記コマンド音声の音素列に基づいて、前記音声認識を行う請求項8に記載の音声認識装置。
- 撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識手段と、
前記登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定手段と、
前記始点及び前記終点のうち少なくとも一方が前記区間決定手段により決定された前記抽出区間の標本音声を前記登録コマンドとして記憶手段に登録する登録手段と、
前記登録コマンドに基づいて、前記集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識手段と、
前記音声認識の結果、前記登録コマンドが特定された場合に、撮像開始を指示する撮像制御手段と
を有する撮像装置。 - 音声認識装置が実行する音声認識方法であって、
撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識ステップと、
前記登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定ステップと、
前記始点及び前記終点のうち少なくとも一方が前記区間決定ステップにおいて決定された前記抽出区間の標本音声を前記登録コマンドとして記憶手段に登録する登録ステップと、
前記登録コマンドに基づいて、前記集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識ステップと
を含む音声認識方法。 - 撮像装置が実行する撮像制御方法であって、
撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識ステップと、
前記登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定ステップと、
前記始点及び前記終点のうち少なくとも一方が前記区間決定ステップにおいて決定された前記抽出区間の標本音声を前記登録コマンドとして記憶手段に登録する登録ステップと、
前記登録コマンドに基づいて、前記集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識ステップと、
前記音声認識の結果、前記登録コマンドが特定された場合に、撮像を開始する撮像制御ステップと
を含む撮像制御方法。 - コンピュータを、
撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識手段と、
前記登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定手段と、
前記始点及び前記終点のうち少なくとも一方が前記区間決定手段により決定された前記抽出区間の標本音声を前記登録コマンドとして記憶手段に登録する登録手段と、
前記登録コマンドに基づいて、前記集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識手段と
して機能させるためのプログラム。 - コンピュータを、
撮像手段によって撮像された画像から、登録ジェスチャを認識するジェスチャ認識手段と、
前記登録ジェスチャが認識されたタイミングに基づいて、集音手段が集音した音声のうち、登録コマンドとして抽出する音声の抽出区間の始点及び終点のうち少なくとも一方を決定する区間決定手段と、
前記始点及び前記終点のうち少なくとも一方が前記区間決定手段により決定された前記抽出区間の標本音声を前記登録コマンドとして記憶手段に登録する登録手段と、
前記登録コマンドに基づいて、前記集音手段が集音した音声認識の対象のコマンド音声の音声認識を行う音声認識手段と、
前記音声認識の結果、前記登録コマンドが特定された場合に、撮像を開始する撮像制御手段と
して機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014052360A JP2015175983A (ja) | 2014-03-14 | 2014-03-14 | 音声認識装置、音声認識方法及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014052360A JP2015175983A (ja) | 2014-03-14 | 2014-03-14 | 音声認識装置、音声認識方法及びプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015175983A true JP2015175983A (ja) | 2015-10-05 |
Family
ID=54255228
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014052360A Pending JP2015175983A (ja) | 2014-03-14 | 2014-03-14 | 音声認識装置、音声認識方法及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015175983A (ja) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017102522A (ja) * | 2015-11-30 | 2017-06-08 | 京セラドキュメントソリューションズ株式会社 | 電子機器 |
JP2017167270A (ja) * | 2016-03-15 | 2017-09-21 | 本田技研工業株式会社 | 音声処理装置および音声処理方法 |
CN107276962A (zh) * | 2016-04-07 | 2017-10-20 | 北京得意音通技术有限责任公司 | 一种可结合任意手势的动态密码语音认证系统及方法 |
WO2017203764A1 (ja) * | 2016-05-23 | 2017-11-30 | ソニー株式会社 | 情報処理装置および情報処理方法 |
JPWO2017104207A1 (ja) * | 2015-12-16 | 2018-11-08 | ソニー株式会社 | 情報処理装置、情報処理方法、及びプログラム |
JP2019519830A (ja) * | 2016-03-24 | 2019-07-11 | シェンジェン ピーアールテック カンパニー リミテッド | スマート端末を制御する方法、及びスマート端末 |
JP2019520626A (ja) * | 2016-04-29 | 2019-07-18 | ブイタッチ・カンパニー・リミテッド | 動作−音声の多重モード命令に基づいた最適制御方法およびこれを適用した電子装置 |
-
2014
- 2014-03-14 JP JP2014052360A patent/JP2015175983A/ja active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017102522A (ja) * | 2015-11-30 | 2017-06-08 | 京セラドキュメントソリューションズ株式会社 | 電子機器 |
JPWO2017104207A1 (ja) * | 2015-12-16 | 2018-11-08 | ソニー株式会社 | 情報処理装置、情報処理方法、及びプログラム |
JP2017167270A (ja) * | 2016-03-15 | 2017-09-21 | 本田技研工業株式会社 | 音声処理装置および音声処理方法 |
JP2019519830A (ja) * | 2016-03-24 | 2019-07-11 | シェンジェン ピーアールテック カンパニー リミテッド | スマート端末を制御する方法、及びスマート端末 |
CN107276962A (zh) * | 2016-04-07 | 2017-10-20 | 北京得意音通技术有限责任公司 | 一种可结合任意手势的动态密码语音认证系统及方法 |
CN107276962B (zh) * | 2016-04-07 | 2023-04-07 | 北京得意音通技术有限责任公司 | 一种可结合任意手势的动态密码语音认证系统 |
JP2019520626A (ja) * | 2016-04-29 | 2019-07-18 | ブイタッチ・カンパニー・リミテッド | 動作−音声の多重モード命令に基づいた最適制御方法およびこれを適用した電子装置 |
US10796694B2 (en) | 2016-04-29 | 2020-10-06 | VTouch Co., Ltd. | Optimum control method based on multi-mode command of operation-voice, and electronic device to which same is applied |
WO2017203764A1 (ja) * | 2016-05-23 | 2017-11-30 | ソニー株式会社 | 情報処理装置および情報処理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2015175983A (ja) | 音声認識装置、音声認識方法及びプログラム | |
JP6635049B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
CN108133709B (zh) | 语音识别装置和语音识别方法 | |
JP6230726B2 (ja) | 音声認識装置および音声認識方法 | |
JP5456832B2 (ja) | 入力された発話の関連性を判定するための装置および方法 | |
KR101749100B1 (ko) | 디바이스 제어를 위한 제스처/음향 융합 인식 시스템 및 방법 | |
JP2020518844A (ja) | 口の画像を入力コマンドと相互に関連付けるシステム及び方法 | |
JP2014153663A (ja) | 音声認識装置、および音声認識方法、並びにプログラム | |
US20130321625A1 (en) | Electronic device and information transmission system | |
JP2012205240A (ja) | 電子機器及び情報伝達システム | |
CN108665907B (zh) | 声音识别装置、声音识别方法、记录介质以及机器人 | |
WO2019147034A1 (ko) | 사운드를 제어하는 전자 장치 및 그 동작 방법 | |
JP7533472B2 (ja) | 情報処理装置、及びコマンド処理方法 | |
JP2019217122A (ja) | ロボット、ロボットの制御方法及びプログラム | |
KR101590053B1 (ko) | 음성 인식을 이용한 비상벨 장치, 이의 작동 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체 | |
JP3838159B2 (ja) | 音声認識対話装置およびプログラム | |
JP2012205242A (ja) | 電子機器及び情報伝達システム | |
JP6798258B2 (ja) | 生成プログラム、生成装置、制御プログラム、制御方法、ロボット装置及び通話システム | |
JP2019175432A (ja) | 対話制御装置、対話システム、対話制御方法及びプログラム | |
JP2001067098A (ja) | 人物検出方法と人物検出機能搭載装置 | |
US12051412B2 (en) | Control device, system, and control method | |
JP2015194766A (ja) | 音声認識装置および音声認識方法 | |
CN110033790B (zh) | 声音认识装置、机器人、声音认识方法以及记录介质 | |
US20240331693A1 (en) | Speech recognition apparatus, speech recognition method, speech recognition program, and imaging apparatus | |
JP2020122861A (ja) | ロボットおよびロボットの音声処理方法 |