(57)【要約】【課題】対象者の音声期間を適切に検出することを可能とする。【解決手段】音声期間検出部３０１は、撮像手段で撮像された対象者の口唇の撮像画像に基づいて、対象者が発声している期間である音声期間を検出する。呼吸期間判定部３０４は、対象者の口唇の撮像画像に基づいて、対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する。音声期間検出部３０１は、呼吸期間判定部３０４により判定された発声直前呼吸期間を対象者の音声期間に含めずに、対象者の音声期間を検出する。【選択図】図３
2020003783.tif 000002
【特許請求の範囲】
【請求項１】
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出する音声期間検出手段と、
前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する呼吸期間判定手段と、を備え、
前記音声期間検出手段は、前記呼吸期間判定手段により検出された前記発声直前呼吸期間を前記対象者の音声期間に含めずに、前記対象者の音声期間を検出することを特徴とする音声期間検出装置。
【請求項２】
前記呼吸期間判定手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されてから第１所定時間が経過するまで、前記対象者の口唇の開閉動作が繰り返して実行されていないときに、前記対象者の口唇の開閉動作が開始されてから前記対象者の口唇の前記開閉動作が行われなくなったときまでの期間を、前記発声直前呼吸期間として判定することを特徴とする、請求項１に記載の音声期間検出装置。
【請求項３】
前記対象者から入力された音声に基づいて前記対象者の発声が開始されたタイミングである発声開始タイミングを検出する発声開始タイミング検出手段と、
前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されたタイミングである口唇の開閉動作開始タイミングを検出する開閉動作開始タイミング検出手段と、
前記検出された発声開始タイミング及び口唇の開閉動作開始タイミングに応じて、前記第１所定時間を設定する第１所定時間設定手段と、
をさらに備えることを特徴とする、請求項２に記載の音声期間検出装置。
【請求項４】
前記音声期間検出手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が終了したタイミングから第２所定時間前のタイミングを前記音声期間の終了タイミングとして前記音声期間を検出することを特徴とする、請求項１から３のいずれか１項に記載の音声期間検出装置。
【請求項５】
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、当該音声期間の検出において、前記対象者の口唇の開閉動作が終了したタイミングから所定時間前のタイミングを前記音声期間の終了タイミングとすることを特徴とする音声期間検出装置。
【請求項６】
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であるか否かを判定する判定手段と、
前記撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、前記判定手段により前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作であると判定された場合には、前記対象者の口唇の開閉動作が開始されたタイミングである開閉動作開始タイミングを、前記音声期間の開始タイミングとして設定せず、前記判定手段により前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作でないと判定された場合には、前記開閉動作開始タイミングを前記音声期間の開始タイミングとして設定する音声期間検出手段と、
を備えることを特徴とする音声期間検出装置。
【請求項７】
前記判定手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されてから第１所定時間が経過するまで、前記対象者の口唇の開閉動作が繰り返して実行されていないときに、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であると判定することを特徴とする、請求項６に記載の音声期間検出装置。
【請求項８】
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記撮像された前記対象者が発声している期間である音声期間を検出する音声期間検出ステップと、
前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する呼吸期間判定ステップと、を含み、
前記音声期間検出ステップでは、前記呼吸期間判定ステップにより検出された前記発声直前呼吸期間を前記対象者の音声期間に含めずに、前記対象者の音声期間を検出することを特徴とする音声期間検出方法。
【請求項９】
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、当該音声期間の検出において、前記対象者の口唇の開閉動作が終了したタイミングから所定時間前のタイミングを前記対象者の前記音声期間の終了タイミングとする音声期間検出ステップを含むことを特徴とする音声期間検出方法。
【請求項１０】
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であるか否かを判定する判定ステップと、
前記撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、前記判定ステップにより前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作であると判定された場合には、前記対象者の口唇の開閉動作が開始されたタイミングである開閉動作開始タイミングを、前記音声期間の開始タイミングとして設定せず、前記判定ステップにより前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作でないと判定された場合には、前記開閉動作開始タイミングを前記音声期間の開始タイミングとして設定する音声期間検出ステップと、
を含むことを特徴とする音声期間検出方法。
【請求項１１】
前記判定ステップでは、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されてから第１所定時間が経過するまで、前記対象者の口唇の開閉動作が繰り返して実行されていないときに、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であると判定することを特徴とする、請求項１０に記載の音声期間検出方法。
【請求項１２】
コンピュータに、請求項８から１１のいずれか１項に記載の音声期間検出方法を実行させるためのプログラム。
【請求項１３】
対象者の音声を取得する音声取得手段と、
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出する音声期間検出手段と、
前記音声期間検出手段により検出された前記対象者の音声期間内に前記音声取得手段により取得された前記対象者の音声に基づいて、前記対象者の音声を認識する音声認識手段と、
前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する呼吸期間判定手段と、を備え、
前記音声期間検出手段は、前記呼吸期間判定手段により検出された前記発声直前呼吸期間を前記対象者の音声期間に含めずに、前記対象者の音声期間を検出することを特徴とする音声認識装置。
【請求項１４】
対象者の音声を取得する音声取得手段と、
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出する音声期間検出手段と、
前記音声期間検出手段により検出された前記対象者の音声期間内に前記音声取得手段により取得された前記対象者の音声に基づいて、前記対象者の音声を認識する音声認識手段と、を備え、
前記音声期間検出手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が終了したタイミングから所定時間前のタイミングを前記対象者の前記音声期間の終了タイミングとして前記音声期間を検出することを特徴とする音声認識装置。
【請求項１５】
対象者の音声を取得する音声取得手段と、
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であるか否かを判定する判定手段と、
前記撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、前記判定手段により前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作であると判定された場合には、前記対象者の口唇の開閉動作が開始されたタイミングである開閉動作開始タイミングを、前記音声期間の開始タイミングとして設定せず、前記判定手段により前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作でないと判定された場合には、前記開閉動作開始タイミングを前記音声期間の開始タイミングとして設定する音声期間検出手段と、
前記音声期間検出手段により検出された前記対象者の音声期間内に前記音声取得手段により取得された前記対象者の音声に基づいて、前記対象者の音声を認識する音声認識手段と、
を備えることを特徴とする音声認識装置。
【請求項１６】
前記判定手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されてから第１所定時間が経過するまで、前記対象者の口唇の開閉動作が繰り返して実行されていないときに、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であると判定することを特徴とする、請求項１５に記載の音声認識装置。
【請求項１７】
請求項１３から１６のいずれか１項に記載の音声認識装置を備えるロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声期間検出装置、音声期間検出方法、プログラム、音声認識装置及びロボットに関する。
【背景技術】
【０００２】
従来、雑音による影響を抑制しながら発話する対象者（以下「対象者」）の音声を認識するために、対象者の口唇の動き情報に基づいて対象者が発声している期間である音声期間（音声区間）を検出する技術が知られている（例えば特許文献１に記載の技術）。この従来の音声期間検出装置では、口唇の動き情報がウェーブレット変換され、それにより得られたウェーブレット変換情報から音声期間が検出される。あるいは、口唇の動き情報からニューラルネットを用いて音声期間が検出される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−３０１３９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一方、対象者の口唇の開閉動作（口唇を開いたり閉じたりする動作）のタイミングと対象者の発声のタイミングは、必ずしも一致しているとは限らない。上記の従来の音声認識装置は、この点を何ら考慮していないため、対象者が発声していない期間が、検出された音声期間に含まれてしまい、音声期間の検出を適切に行うことができなくなってしまうおそれがある。
【０００５】
本発明は、以上のような課題を解決するためのものであり、対象者の音声期間を適切に検出することを目的とする。
【課題を解決するための手段】
【０００６】
前記目的を達成するため、本発明に係る音声認識装置の一様態は、撮像手段で撮像された対象者の口唇の撮像画像に基づいて、対象者が発声している期間である音声期間を検出する音声期間検出手段と、対象者の口唇の撮像画像に基づいて、対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する呼吸期間判定手段と、を備え、音声期間検出手段は、呼吸期間判定手段により検出された発声直前呼吸期間を対象者の音声期間に含めずに、対象者の音声期間を検出する。
【発明の効果】
【０００７】
本発明によれば、対象者の音声期間を適切に検出することが可能となる。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態にかかるロボットの外観図である。
【図２】ロボットの構成を示すブロック図である。
【図３】ロボットの対話機能の構成を示すブロック図である。
【図４】ロボットの対話機能における音声期間検出処理と音声認識処理を実行するための処理の一例を示すフローチャートである。
【図５】口開閉判定処理の一例を示すフローチャートである。
【図６】ラベル付けされた顔パーツ検出結果のフォーマット例を示す図である。
【図７】頭部の回転の自由度を模式的に表した図である。
【図８】第１所定時間の設定処理の例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。図１は、実施の形態に係る音声期間検出装置及び音声認識装置を備えたロボット１００を正面から見た場合の外観を模式的に示した図である。ロボット１００は、頭部１０１と胴体１０２とを備えた人型のコミュニケーションロボットである。ロボット１００は、例えば住宅内に設置され、所定の対象である住人等（以下「対象者」と記載）に呼びかけられると、呼びかけた対象者と会話する。
【００１０】
図１に示すように、ロボット１００の頭部１０１には、カメラ１０４と、音声取得手段として機能するマイクアレイ１０３と、スピーカ１０５と、センサ群１０６と、首関節駆動部１０７と、足回り駆動部１０８と、が設けられている。
【００１１】
カメラ１０４は、頭部１０１の前面の下側、人の顔でいうところの鼻の位置に設けられている。カメラ１０４は、後述する制御部２０１の制御の下、所定のフレームレート（例えば３０ｆｐｓ（フレーム／秒））で連続的に撮像を行う。なお、このフレームレートは、後述する口開閉判定部３０８による口唇の開閉判定（図５のステップＳ５０４）を適切に実行できるような値に、実験などにより予め設定されている。
【００１２】
マイクアレイ１０３は、例えば１３個のマイクからなる。１３個のマイクのうちの８個のマイクが、人の顔でいうところの額の高さの位置であって、頭部１０１の周回りに等間隔で配置されている。これら８個のマイクよりも上側に、４個のマイクが頭部１０１の周回りに等間隔で配置されている。更に、１個のマイクが頭部１０１の頭頂部に配置されている。マイクアレイ１０３はロボット１００の周囲で発生した音を検出する。
【００１３】
スピーカ１０５は、カメラ１０４より下側、人の顔でいうところの口の位置に設けられている。スピーカ１０５は、制御部２０１の制御の下、制御部２０１からの制御信号を音声に変換し、各種の音声を出力する。
【００１４】
センサ群１０６は、人の顔でいうところの目の位置と耳の位置とに設けられている。センサ群１０６は、加速度センサ、障害物検知センサ等を含み、ロボット１００の姿勢制御や、安全性の確保のために使用される。
【００１５】
首関節駆動部１０７は、頭部１０１と胴体１０２とを連結する部材である。頭部１０１は、破線で示される首関節駆動部１０７によって、胴体１０２に連結されている。首関節駆動部１０７は、複数のモータを含む。制御部２０１がこれら複数のモータを駆動すると、ロボット１００の頭部１０１が回転する。首関節駆動部１０７は、ロボット１００の頭部１０１を回転させると共にその回転量を取得する役割を有する。
【００１６】
足回り駆動部１０８は、ロボット１００を移動させる役割を有する。特には図示しないが、足回り駆動部１０８は、胴体１０２の下側に設けられた４つの車輪（ホイール）を含む。４つの車輪のうち、２つが胴体１０２の前側に、残り２つが後ろ側に配置されている。車輪として、例えば、オムニホイール、メカナムホイールが使用される。制御部２０１は、足回り駆動部１０８の車輪を回転させることにより、ロボット１００を移動させる。
【００１７】
図２は、図１の外観を有するロボット１００の制御系であるロボット制御システム２００を示すブロック図である。図２において、図１と同じ参照番号を付した部分は図１と同じものである。図２において、胴体１０２内に設置される制御部２０１は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ：中央演算処理装置）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ：ランダムアクセスメモリ）等を含む。制御部２０１は、頭部１０１内のマイクアレイ１０３、カメラ１０４、スピーカ１０５、センサ群１０６、胴体１０２内の首関節駆動部１０７及び足回り駆動部１０８と、それぞれ電気的に接続され、ＲＡＭを作業領域として、後述する記憶部２０２に記憶されている制御プログラム２０５を読み出して実行することにより、前記各部を制御する。
【００１８】
記憶部２０２は、ソリッドステートディスクドライブ、ハードディスクドライブ、フラッシュメモリ等を含み、胴体１０２の内部に設けられている。記憶部２０２は、制御部２０１によって実行される制御プログラム２０５、マイクアレイ１０３が集音した音声データ、カメラ１０４が撮像した画像データ等を含む各種データを記憶する。記憶部２０２が記憶する制御プログラム２０５には、後述する音源分離情報検出プログラム、移動プログラム、及び対話プログラム等が含まれる。
【００１９】
操作ボタン２０３は、胴体１０２の背中に設けられている（図１において不図示）。操作ボタン２０３は、ロボット１００を操作するための各種のボタンであり、電源ボタン、スピーカ１０５の音量調節ボタン等を含む。
【００２０】
電源部２０４は、胴体１０２に内蔵された充電池であり、ロボット制御システム２００の各部に電力を供給する。
【００２１】
図３は、図２の制御部２０１が記憶部２０２内の制御プログラム２０５を実行する機能の一部として実現される対話機能の構成を示すブロック図である。この対話機能の構成として、音声期間検出部３０１、音声入力部３０２、音声認識部３０３、呼吸期間判定部３０４、画像入力部３０５、顔検出部３０６、口パーツ検出部３０７、口開閉判定部３０８、及び発声部３０９を備えている。なお、図３に示される各機能部は、制御部２０１内のＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ａｒｒａｙ）等のハードウェアによって実現されてもよい。
【００２２】
図３において、音声取得手段として機能する音声入力部３０２は、図１のマイクアレイ１０３を構成する各マイクから、音声を入力し、音声認識部３０３による後述する音声認識のために、入力した音声を適宜、前記ＲＡＭに記憶する。
【００２３】
上記の画像入力部３０５、顔検出部３０６、及び口パーツ検出部３０７は、音声入力部３０２が音声を取得するタイミングで、対象者の口唇画像を取得する。具体的には、画像入力部３０５が、図１のカメラ１０４から、前記所定のフレームレートで連続的に撮像された画像を入力する。次に、顔検出部３０６が、入力された画像から顔領域を検出する顔検出処理を実行する。そして、口パーツ検出部３０７が、検出された顔領域から口パーツを検出する口パーツ検出処理を実行し、口唇の撮像画像（以下「口唇画像」と呼ぶ）とする。
【００２４】
口開閉判定部３０８は、口パーツ検出部３０７が出力する対象者の口唇画像に基づいて、対象者の口唇の開閉動作（口唇を開いたり閉じたりする動作）が行われている状態と、口唇の開閉動作が行われていない状態とを判定する口開閉判定処理を実行する。
【００２５】
呼吸期間判定手段として機能する呼吸期間判定部３０４は、口パーツ検出部３０７が出力する対象者の口唇画像に基づく口開閉判定部３０８の判定結果に基づいて、対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する呼吸期間判定処理を実行する。
【００２６】
音声期間検出手段として機能する音声期間検出部３０１は、口パーツ検出部３０７が出力する対象者の口唇画像に基づく口開閉判定部３０８の判定結果に基づいて、対象者が発声している期間である対象者の音声期間を検出する音声期間検出処理を実行する。このとき、音声期間検出部３０１は、呼吸期間判定部３０４により判定された発声直前呼吸期間を対象者の音声期間に含めずに、対象者の音声期間を検出する。これは次の理由による。すなわち、対象者によっては、発声する直前に呼吸するために口唇を動かす場合があり、また、この発声直前の呼吸に伴う発声直前呼吸期間では、対象者が呼吸しているだけで実際には発声していない（対象者の音声が発生していない）ため、そのような発声直前呼吸期間を音声期間に含めると、発声直前呼吸期間中に発生した雑音が、音声認識部３０３により認識される音声に含まれる可能性があるためである。
【００２７】
また、音声期間検出部３０１は、口開閉判定部３０８の判定結果に基づき、口唇の開閉動作が終了したタイミングから所定時間（これを「ＥＲＴ」とおく）前のタイミングを音声期間の終了タイミングとして検出する。これは次の理由による。すなわち、発声が実際に終了するタイミングは、口唇の開閉動作が終了するタイミングよりも若干早いタイミングになる傾向にあるため、口唇の開閉動作が終了するタイミングを音声期間の終了タイミングとして検出すると、発声が実際に終了してから口唇の開閉動作が終了するまでの期間に発生した雑音が、音声認識部３０３により認識される音声に含まれる可能性があるためである。
【００２８】
音声認識手段として機能する音声認識部３０３は、音声期間検出部３０１により検出された音声期間内に音声入力部３０２により取得され、記憶された対象者の音声に基づいて、既知の音声認識技術を使って、対象者の音声を認識する音声認識処理を実行する。
【００２９】
発声部３０９は、音声認識部３０３での音声認識結果に応じて、対話アルゴリズムに従って、既知の音声合成技術を使って音声合成による発声処理を実行する。発声処理により合成された音声は、図１及び図２のスピーカ１０５を介して、対象者に対して発声され、対象者と図１のロボット１００との対話が行われる。
【００３０】
音声認識部３０３は例えば、音源到来方向推定処理、音源分離処理、音量算出処理、Ｓ／Ｎ比算出処理などを実行してよい。
【００３１】
音声認識部３０３は、音源到来方向推定処理において、音声期間検出部３０１が音声期間を検出しているときに、音声入力部３０２が入力する音声を信号音声として、口パーツ検出部３０７が出力する口唇画像及びその信号音声の信号音声パワーに基づいて、信号音声の到来方向を推定してよい。
【００３２】
一方、音声認識部３０３は、音源到来方向推定処理において、音声期間検出部３０１が音声期間を検出していないときに、音声入力部３０２が入力する音を雑音として、その雑音の雑音パワーに基づいて、雑音の到来方向を推定してよい。このとき、音源到来方向推定処理において、音源定位手法の一手法であるＭＵＳＩＣ（ＭＵｌｔｉｐｌｅ  ＳＩｇｎａｌ  Ｃｌａｓｓｉｆｉｃａｔｉｏｎ）法に基づく処理を実行することにより、対象者以外の音源からの雑音の音源定位（雑音源の位置）を推定してよい。
【００３３】
音声認識部３０３は、音源分離処理において、例えば下記文献１で示されているビームフォーミング技術に基づく演算処理を実行することにより、音源到来方向推定処理により現在得られている信号音声の到来方向又は雑音の到来方向を入力として、対象者が発声する信号音声を強調し又は信号音声以外の雑音を抑圧する音源分離の処理を実行してよい。
【００３４】
＜文献１＞
浅野  太、“音源分離”、[online]、2011年11月受領、電子情報通信学会『知識の森』、[2017年6月15日検索]、インターネット
<URL:http://www.ieice-hbkb.org/files/02/02gun_06hen_02.pdf>
【００３５】
具体的には、音声認識部３０３は、音源分離処理において、口開閉判定部３０８が口唇の開閉動作が行われている状態を判定しているときには、上記ビームフォーミングの演算処理により、信号音声を音源到来方向推定処理により現在得られている信号音声の到来方向にビームステアリング（強調）するビームステアリング演算処理を実行することにより、強調された信号音声を得てよい。
【００３６】
一方、音声認識部３０３は、音源分離処理において、口開閉判定部３０８が口唇の開閉動作が行われていない状態を判定しているときには、上記ビームフォーミングの演算処理により、雑音を音源到来方向推定処理により現在得られている雑音の到来方向にヌルステアリング（抑圧）するヌルステアリング演算処理を実行することにより、抑圧された雑音を得てよい。
【００３７】
音声認識部３０３は、音量算出処理において、音源分離処理で得られるビームステアリング（強調）された信号音声又はヌルステアリング（抑圧）された雑音のそれぞれの音量を算出する。
【００３８】
音声認識部３０３は、Ｓ／Ｎ比算出処理において、音量算出処理で算出した信号音声の音量と雑音の音量とに基づいて、信号対雑音比（以下「Ｓ／Ｎ比」と記載）を算出し、そのＳ／Ｎ比が閾値よりも大きいか否かを判定する。
【００３９】
Ｓ／Ｎ比算出処理での判定の結果、Ｓ／Ｎ比が閾値以下である場合には、音声認識部３０３は、音声認識のための十分なＳ／Ｎ比が得られていないと判定する。この場合、図２の制御部２０１は例えば、図１又は図２の足回り駆動部１０８を制御することにより、例えば対象者に対して一定の関係（例えば一定の距離又は一定の角度等）を維持しながら、ロボット１００を移動させる。
【００４０】
ロボット１００の移動の後、音声認識部３０３は再び、上述と同様のＳ／Ｎ比の判定動作を実行する。この結果、Ｓ／Ｎ比が閾値よりも大きくなると、音声認識部３０３は、音声認識のための十分なＳ／Ｎ比が得られ、対象者に対するロボット１００の位置関係が、信号音声を雑音から最も良く分離できる最適化された位置である音源分離位置になったと判定する（又は、対象者に対するロボット１００の方向関係が、信号音声を雑音から最も良く分離できる最適化された方向である音源分離方向になったと判定する）。この場合、音声認識部３０３は、音源分離処理で得たビームステアリング（強調）された信号音声に対する音声認識処理を実行させることにより、対象者の発声内容を理解する。
【００４１】
図４は、図３のブロック図で示される対話機能における音声期間検出処理と音声認識処理を実行するための処理の一例を示すフローチャートである。このフローチャートの処理例は、図３のブロック図の構成を実現する制御部２０１のハードウェアが実行する処理として、又は図２の制御部２０１が実行する制御プログラム２０５の処理として実現される。
【００４２】
まず、制御部２０１が、特には図示しない内部のＲＡＭに変数として持つ「開フラグ」の値を０に初期化する（ステップＳ４０１）。なお、図４において、開フラグの値が０であることを「開＝０」と表記する。
【００４３】
次に、図３の顔検出部３０６が、顔検出処理を実行する（ステップＳ４０２）。この顔検出処理では、カメラ１０４から画像入力部３０５を介して入力された画像から、顔領域を検出する。顔検出処理としては、既知の顔検出技術を使用することができる。例えば、下記文献２に記載されている何れかの顔検出技術が適用されてよい。
【００４４】
＜文献２＞
堀田  一弘、“小特集  顔認識技術  1.顔認識の研究動向” 、[online]、2012年3月28日公開、映像情報メディア学会誌、Vol.64,No.4(2010),p.459-462、[2017年6月15日検索］、インターネット
<URL: https://www.jstage.jst.go.jp/article/itej/64/4/64_4_455/_pdf>
【００４５】
次に、図３の口パーツ検出部３０７が、顔検出処理で検出された顔領域の画像を用いて、口パーツ検出処理を実行する（ステップＳ４０３）。口パーツ検出処理としては、既知の顔パーツ検出技術を使用することができる。例えば、下記文献３に記載されている何れかの顔パーツ検出技術が採用されてよい。
【００４６】
＜文献３＞
littlewing、“WEBカメラで利用できる顔認識技術まとめ-その2”、[online]、2015年4月7日公開、[2017年6月15日検索]、インターネット
<URL: http://littlewing.hatenablog.com/entry/2015/04/07/221856>
【００４７】
ステップＳ４０３の口パーツ検出処理により、まず例えばラベル付けされた座標値である顔パーツ検出結果が得られる。ラベル付けされた顔パーツ検出結果のフォーマット例としては、例えば図６の６０１として示されるように、下記文献４のFigure2として記載されている例を採用することができる。
【００４８】
＜文献４＞
C.sagonas,”Facial point annotations”、[online]、[2017年6月15日検索]、インターネット
<URL: https://ibug.doc.ic.ac.uk/resources/facial-point-annotations/>
【００４９】
ステップＳ４０３の口パーツ検出処理では、図６の６０１として例示される顔パーツ検出結果のうちの例えば、ラベル４９から６８が口パーツとして検出され、またラベル２８から３６が鼻パーツとして検出される。
【００５０】
次に、制御部２０１は、特には図示しないタイマを参照することにより、現在時刻ｔを取得する（ステップＳ４０４）。
【００５１】
その後、図３の口開閉判定部３０８は、ステップＳ４０３で算出された口パーツと鼻パーツのラベル付けされた座標値（例えば図６の６０１のラベル４９〜６８、ラベル２８〜３６）を用いて、対象者の口唇の開閉動作が行われている状態と、口唇の開閉動作が行われていない状態とを判定する口開閉判定処理を実行する（ステップＳ４０５）。
【００５２】
図５は、図４のステップＳ４０５の口開閉判定処理の詳細例を示すフローチャートである。
【００５３】
まず、図３の口開閉判定部３０８は、口唇の縦座標（顔の上下方向）における口唇の上唇と下唇との相対的な移動の変化量（以下「上下唇縦移動変化量」という）Δｙを算出する（図５のステップＳ５０１）。今、ある時刻のフレームＦ（ｔ）にて、下記（１）式の演算により、ｙ座標量差分総計ｙ（ｔ）が算出される。
【００５４】
ｙ（ｔ）＝ｙｙ１＋ｙｙ２  ・・・（１）
【００５５】
（１）式において、ｙｙ１は、上唇の下側ラインと下唇の上側ラインのｙ座標量差分総計であり、図６の６０１における関係より、下記（２）式から（７）式の累算演算により算出される。これらの式において、演算子「＋＝」は、左辺の値に右辺の値を累算する演算を示す。また、関数「ｆａｂｓ（）」は、括弧内の数値に対する絶対値を浮動小数で算出する関数である。また例えば、「ｄａｔａ．ｙ［６１］（ｔ）」は、時刻ｔのフレーム画像Ｆ（ｔ）内における図６のラベル６１番のｙ座標データ値を示す。他も同様である。
【００５６】
ｙｙ１＋＝ｆａｂｓ（ｄａｔａ．ｙ［６１］（ｔ）
−ｄａｔａ．ｙ［６７］（ｔ））・・・（２）
ｙｙ１＋＝ｆａｂｓ（ｄａｔａ．ｙ［６１］（ｔ）
−ｄａｔａ．ｙ［５８］（ｔ））・・・（３）
ｙｙ１＋＝ｆａｂｓ（ｄａｔａ．ｙ［６２］（ｔ）
−ｄａｔａ．ｙ［６６］（ｔ））・・・（４）
ｙｙ１＋＝ｆａｂｓ（ｄａｔａ．ｙ［６２］（ｔ）
−ｄａｔａ．ｙ［５７］（ｔ））・・・（５）
ｙｙ１＋＝ｆａｂｓ（ｄａｔａ．ｙ［６３］（ｔ）
−ｄａｔａ．ｙ［６５］（ｔ））・・・（６）
ｙｙ１＋＝ｆａｂｓ（ｄａｔａ．ｙ［６３］（ｔ）
−ｄａｔａ．ｙ［５６］（ｔ））・・・（７）
【００５７】
（１）式において、ｙｙ２は、鼻下部と下口唇（上側）のｙ座標量差分総計であり、図６の６０１の関係より、下記（８）式から（１２）式の演算により算出される。
【００５８】
ｙｙ２＋＝ｆａｂｓ（ｄａｔａ．ｙ［３１］（ｔ）
−ｄａｔａ．ｙ［６０］（ｔ））・・・（８）
ｙｙ２＋＝ｆａｂｓ（ｄａｔａ．ｙ［３２］（ｔ）
−ｄａｔａ．ｙ［６１］（ｔ））・・・（９）
ｙｙ２＋＝ｆａｂｓ（ｄａｔａ．ｙ［３３］（ｔ）
−ｄａｔａ．ｙ［６２］（ｔ））・・・（１０）
ｙｙ２＋＝ｆａｂｓ（ｄａｔａ．ｙ［３４］（ｔ）
−ｄａｔａ．ｙ［６３］（ｔ））・・・（１１）
ｙｙ２＋＝ｆａｂｓ（ｄａｔａ．ｙ［３４］（ｔ）
−ｄａｔａ．ｙ［６４］（ｔ））・・・（１２）
【００５９】
口開閉判定部３０８は次に、下記（１３）式により、時刻ｔのフレーム画像Ｆ（ｔ）に対して（１）式の演算で算出したｙ座標量差分総計ｙ（ｔ）と、時刻ｔより１フレーム前の時刻（ｔ−１）のフレーム画像Ｆ（ｔ−１）に対して（１）式と同様の演算で算出したｙ座標量差分総計ｙ（ｔ−１）との差分絶対値を、前記上下唇縦移動変化量Δｙとして求める。ここで、関数「ａｂｓ（）」は、括弧内の数値に対する絶対値を整数で算出する関数である。
【００６０】
Δｙ＝ａｂｓ（ｙ（ｔ）−ｙ（ｔ−１））・・・（１３）
【００６１】
（１３）式で算出されるΔｙは、顔の上下方向における上唇と下唇との相対的な移動の変化量を示しており、上唇と下唇が離れる方向もしくは近づく方向に移動している時に大きくなる。
【００６２】
次に、口開閉判定部３０８は、口唇の横座標（顔の左右方向）における移動の変化量（以下「口唇横移動変化量」という）Δｘについても、前記上下唇縦移動変化量Δｙの場合と同様の演算で算出する（図５のステップＳ５０２）。
【００６３】
即ち今、ある時刻のフレームＦ（ｔ）にて、下記（１４）式の演算によって、ｘ座標量差分総計ｘ（ｔ）が算出される。（１４）式で例えば、「ｄａｔａ．ｘ［６１］（ｔ）」は、時刻ｔのフレーム画像Ｆ（ｔ）内における図６のラベル６１番のｘ座標データ値を示す。他も同様である。
【００６４】
ｘ（ｔ）＝ｄａｔａ．ｘ［６１］（ｔ）＋ｄａｔａ．ｘ［６２］（ｔ）
＋ｄａｔａ．ｘ［６３］（ｔ）＋ｄａｔａ．ｘ［６７］（ｔ）
＋ｄａｔａ．ｘ［６６］（ｔ）＋ｄａｔａ．ｘ［６５］（ｔ）
・・・（１４）
【００６５】
次に、下記（１５）式により、時刻ｔのフレーム画像Ｆ（ｔ）に対して（１４）式の演算で算出したｘ座標量差分総計ｘ（ｔ）と、１フレーム前の時刻（ｔ−１）のフレーム画像Ｆ（ｔ−１）に対し（１４）式と同様の演算で算出したｘ座標量差分総計ｘ（ｔ−１）との差分絶対値が、前記口唇横移動変化量Δｘとして算出される。
【００６６】
Δｘ＝ａｂｓ（ｘ（ｔ）−ｘ（ｔ−１））・・・（１５）
【００６７】
（１５）式で算出される口唇横移動変化量Δｘは、顔の左右方向における口唇（上唇及び下唇の全体）の移動の変化量を示しており、口唇が左右どちらかに移動している時に大きくなる。
【００６８】
続いて、口開閉判定部３０８は、図１の頭部１０１の回転判定を行う（図５のステップＳ５０３）。口開閉判定部３０８は、図１又は図２の首関節駆動部１０７から口開閉判定部３０８に入力する信号に基づいて、フレーム時刻ｔのフレーム画像Ｆ（ｔ）と、フレーム時刻ｔのフレームより１フレーム前のフレーム時刻（ｔ−１）のフレーム画像Ｆ（ｔ−１）における、頭部１０１の姿勢の変化量をそれぞれ表すロール角度差分値Δｒｏｌｌ、ヨー角度差分値Δｙａｗ及びピッチ角度差分値Δｐｉｔｃｈを、下記（１６）式、（１７）式及び（１８）式によりそれぞれ算出する。
【００６９】
Δｒｏｌｌ＝ａｂｓ（Ｆ（ｔ）ｒｏｌｌ−Ｆ（ｔ−１）ｒｏｌｌ）
・・・（１６）
Δｙａｗ＝ａｂｓ（Ｆ（ｔ）ｙａｗ−Ｆ（ｔ−１）ｙａｗ）
・・・（１７）
Δｐｉｔｃｈ＝ａｂｓ（Ｆ（ｔ）ｐｉｔｃｈ−Ｆ（ｔ−１）ｐｉｔｃｈ）
・・・（１８）
【００７０】
ここで例えば、Ｆ（ｔ）ｒｏｌｌは、時刻ｔのフレーム画像Ｆ（ｔ）に対応して首関節駆動部１０７から口開閉判定部３０８に入力するロール角度値、Ｆ（ｔ−１）ｒｏｌｌは、時刻（ｔ−１）のフレーム画像Ｆ（ｔ−１）に対応して首関節駆動部１０７から口開閉判定部３０８に入力するロール角度値である。ヨー角度値Ｆ（ｔ）ｙａｗ及びＦ（ｔ−１）ｙａｗ、ピッチ角度値Ｆ（ｔ）ｐｉｔｃｈ及びＦ（ｔ−１）ｐｉｔｃｈについても、それぞれ同様である。図７は、図１のロボット１００の頭部１０１の回転の自由度を模式的に表した図である。図１又は図２の首関節駆動部１０７により、ロボット１００の頭部１０１は、胴体１０２に対して、ピッチ軸Ｘｍの軸回り、ロール軸Ｚｍの軸回り、ヨー軸Ｙｍの軸回りにそれぞれ回転可能である。首関節駆動部１０７は、ピッチ軸Ｘｍの軸回りのピッチ角度値、ロール軸Ｚｍの軸回りのロール角度値及びヨー軸Ｙｍの軸回りのヨー角度値をそれぞれ、上記のようにして制御部２０１に出力する。
【００７１】
口開閉判定部３０８は、上記（１６）式、（１７）式及び（１８）式の演算の結果、ロール角度差分値Δｒｏｌｌ、ヨー角度差分値Δｙａｗ及びピッチ角度差分値Δｐｉｔｃｈをそれぞれ、ロール軸Ｚｍ、ヨー軸Ｙｍ及びピッチ軸Ｘｍにおける頭部１０１の回転角度の変化量として算出する。
【００７２】
なお、頭部１０１の回転角度の推定方式としては様々な手法が知られており、上記以外の技術が採用されてもよい。
【００７３】
そして、口開閉判定部３０８は、ステップＳ５０１で算出した上下唇縦移動変化量Δｙと、ステップＳ５０２で算出した口唇横移動変化量Δｘと、ステップＳ５０３で算出したロボット１００の頭部１０１の回転角度の変化量としてロール角度差分値Δｒｏｌｌ、ヨー角度差分値Δｙａｗ及びピッチ角度差分値Δｐｉｔｃｈに基づいて、以下のルールにより口唇の開閉判定を行う（図５のステップＳ５０４）。即ち、制御部２０１は、下記（１９）式の論理式で示される条件が満たされたときに、口唇の開閉動作が行われている状態を判定し、その条件が満たされないときに、口唇の開閉動作が行われていない状態（停止している状態）を判定する。なお、（１９）式において、第１の閾値であるｙ_ｔｈ、第２の閾値であるｘ_ｔｈ、並びに、第３の閾値群であるｒｏｌｌ_ｔｈ、ｙａｗ_ｔｈ及びｐｉｔｃｈ_ｔｈはそれぞれ、Δｙ、Δｘ、Δｒｏｌｌ、Δｙａｗ及びΔｐｉｔｃｈの判定閾値である。
【００７４】
Δｙ＞ｙ_ｔｈ  ＆＆
Δｘ＜ｘ_ｔｈ  ＆＆
Δｒｏｌｌ＜ｒｏｌｌ_ｔｈ  ＆＆
Δｙａｗ＜ｙａｗ_ｔｈ  ＆＆
Δｐｉｔｃｈ＜ｐｉｔｃｈ_ｔｈ
・・・（１９）
【００７５】
即ち、口開閉判定部３０８は、上口唇と下口唇が離れる方向もしくは近づく方向に移動しており、顔の横方向における口唇の移動の変化量は少なく、かつロボット１００の頭部１０１があまり回転していない場合に、口唇の開閉動作が行われている状態を判定する。Δｙだけでなく、Δｘ、Δｒｏｌｌ、Δｙａｗ、及びΔｐｉｔｃｈも口唇の開閉判定に用いることにより、イヤイヤ（左右に首を振る）、考えるために首を傾げるといった動作でも、誤判定を起こりにくくすることができる。
【００７６】
図４の説明に戻り、制御部２０１は、ステップＳ４０５での口開閉判定処理により、口唇の開閉動作が行われている状態を判定すると、以下のステップＳ４０６からステップＳ４０８までの一連の処理を実行する。
【００７７】
まず、制御部２０１は、前述した「開フラグ」の値が０、すなわち、いままで口唇の開閉動作が行われていなかったか否かを判定する（ステップＳ４０６）。
【００７８】
制御部２０１は、ステップＳ４０６の判定がＹＥＳならば、特には図示しないＲＡＭに変数として記憶される開始時刻ＴＳに、ステップＳ４０４で取得した現在時刻ｔをセットする。また、制御部２０１は、「開フラグ」の値を１にセットする。なお、図４において、開フラグの値が１であることを「開＝１」と表記する（以上、ステップＳ４０７）。
【００７９】
その後、制御部２０１は、次の撮像フレームの処理に移り（ステップＳ４０８）、ステップＳ４０２の処理から繰り返す。
【００８０】
一方、制御部２０１は、ステップＳ４０６の判定がＮＯならば、そのまま次の撮像フレームの処理に移り（ステップＳ４０８）、ステップＳ４０２の処理から繰り返す。
【００８１】
一方、制御部２０１の口開閉判定部３０８は、ステップＳ４０５での口開閉判定処理により、口唇の開閉動作が行われていない状態を判定すると、以下のステップＳ４０９からステップＳ４１２までの一連の処理を実行する。
【００８２】
まず、制御部２０１は、「開フラグ」の値が１、すなわち、いままで口唇の開閉動作が行われていたか否かを判定する（ステップＳ４０９）。
【００８３】
制御部２０１は、ステップＳ４０９の判定がＮＯならば、口唇の開閉動作が以前から行われていなかったので、何もせずにそのまま次の撮像フレームの処理に移り（ステップＳ４０８）、ステップＳ４０２の処理から繰り返す。
【００８４】
制御部２０１の呼吸期間判定部３０４は、ステップＳ４０９の判定がＹＥＳ、すなわち、いままで口唇の開閉動作が行われていた状態から行われていない状態に変化したと判定したときには、呼吸期間判定処理を実行する（ステップＳ４１０）。すなわち、制御部２０１は、ステップＳ４０７で更新した開始時刻ＴＳからの、ステップＳ４０４で取得した現在時刻ｔまでの経過時間が所定時間ＥＲＴ以上であるか否か、つまり「（ｔ−ＴＳ）≧ＥＲＴ」であるか否かを判別する。ここで、所定時間ＥＲＴは、例えば５００ミリ秒に予め設定されており、記憶部２０２に記憶されている。
【００８５】
このステップＳ４１０における呼吸期間判定処理では、対象者の口唇の開閉動作が開始されてから所定時間ＥＲＴが経過するまで、対象者の口唇動作が繰り返して実行されていないときに、対象者の口唇の開閉動作が開始されてからこの対象者の口唇の開閉動作が行われなくなったとき（対象者の口唇の開閉動作が終了したとき）までの期間を、前記発声直前呼吸期間として判定する。
【００８６】
呼吸期間判定部３０４は、ステップＳ４１０の判定がＮＯ、すなわち、対象者の口唇の開閉動作が開始されてから、対象者の口唇の開閉動作が行われなくなったときまでの経過時間（ｔ−ＴＳ）が所定時間ＥＲＴよりも短く、対象者の口唇の開閉動作が開始されてから所定時間ＥＲＴが経過するまで、対象者の口唇動作が繰り返して実行されていないときには、対象者が発声直前の一呼吸を行ったとみなし、対象者の口唇の開閉動作が開始されてからこの対象者の口唇の開閉動作が行われなくなったときまでの期間を、発声直前呼吸期間として判定する。そして、音声期間検出部３０１により検出される対象者の音声期間に、発声直前呼吸期間を含めないようにするために、ステップＳ４０１の処理に戻って、「開フラグ」の値を０に初期化する。
【００８７】
一方、呼吸期間判定部３０４は、ステップＳ４１０の判定がＹＥＳ、すなわち、対象者の口唇の開閉動作が開始されてから、この対象者の口唇の開閉動作が行われなくなったとき（終了したとき）までの経過時間（ｔ−ＴＳ）が所定時間ＥＲＴ以上で、対象者の口唇の開閉動作が開始されてから所定時間ＥＲＴが経過するまで、対象者の口唇の開閉動作が繰り返して実行されていたときには、対象者は発声のための口唇の開閉動作を行ったと判定する。なお、対象者が発声のための口唇の開閉動作を行った場合には、この口唇の開閉動作が繰り返し行われる音声期間は、発声直前呼吸期間（所定時間ＥＲＴよりも短い時間）よりも長くなる。
【００８８】
次いで、制御部２０１の音声期間検出部３０１は、上記ステップＳ４１０の判定結果を受けて、前記ステップＳ４０７で更新した開始時刻ＴＳ（口唇の開閉動作が開始された時刻）を、音声期間の開始タイミングＳＴとして設定する（ステップＳ４１１）。
【００８９】
以上のように、本実施形態では、対象者が一瞬だけ（所定時間ＥＲＴよりも短い時間だけ）口唇を開閉動作した場合（ステップＳ４１０：ＮＯ）には、対象者が発声直前の呼吸を行ったとみなし、「開フラグ」の値を０に初期化する（ステップＳ４０１）ことによって、その後のステップＳ４０５〜Ｓ４０７の実行により開始時刻ＴＳを更新し、この呼吸した期間である発声直前呼吸期間を音声期間に含めないようにすることで、音声期間を適切に検出することが可能となる。
【００９０】
上記のステップＳ４１１に続くステップＳ４１２では、次に、音声期間検出部３０１は、対象者の音声期間の終了タイミングＥＴを、現在時刻ｔから所定時間ＥＲＴを減算することによって計算する「ＥＴ＝ｔ−ＥＲＴ」。
【００９１】
このように、音声期間検出部３０１は、口唇の開閉動作が行われなくなったタイミングから所定時間ＥＲＴ前（例えば−５００ミリ秒）のタイミングを音声期間の終了タイミングＥＴとすることで、実際の発声終了タイミングに対する口唇の開閉動作が行われなくなったタイミングのずれを補正し、音声期間の終了タイミングＥＴの精度を向上させることが可能となる。なお、所定時間ＥＲＴは、上述したようにして算出された終了タイミングＥＴが対象者の音声期間の実際の終了タイミングとなるように、実験などにより予め設定されている。ちなみに、所定時間ＥＲＴの設定によっては、発声の終端が多少切れてしまうことも考えられるが、語尾はかならず母音で終わるため、発声の終端が多少切れてしまったとしても、正しく音声認識されるので問題ない。
【００９２】
上記ステップＳ４１２に続くステップＳ４１３では、制御部２０１の音声認識部３０３は、前記ステップ４１１及び４１２でそれぞれ設定された音声期間の開始タイミングＳＴ及び終了タイミングＥＴで規定される音声期間内に音声入力部３０２により取得され、記憶された対象者の音声に基づいて、対象者の音声を認識する音声認識処理を実行する。その後、制御部２０１は、図４のフローチャートで示される音声期間検出処理を終了する。以上のように、本処理では、音声期間の検出が、その開始タイミングＳＴ及び終了タイミングＥＴを検出することによって行われる。
【００９３】
なお、図４のフローチャートでは、発声期間の終了が確定してから音声認識処理が行われているが、口唇の開閉動作が行われている状態にある場合（ステップＳ４０５）において、開始時刻ＴＳから所定時間ＥＲＴが経過した時点で、音声認識処理が開始されてもよい。その場合は、音声期間の終了タイミングＥＴが確定した時点で音声認識を終了すれば、音声認識の終了タイミングは、口唇の開閉動作が行われなくなったタイミングの所定時間ＥＲＴ前のタイミングとなるので、音声期間は図４のフローチャートの場合と同一の期間になる。
【００９４】
以上のように、本実施形態によれば、音声期間を適切に検出することが可能となる。
【００９５】
具体的には、本実施形態では、発声直前呼吸期間を対象者の音声期間に含めずに対象者の音声期間を適切に検出することできる。これにより、対象者によって発声する直前に呼吸するために口唇を動かす場合等において、発声直前呼吸期間中に発生した雑音を音声認識の対象から除去することが可能となる。
【００９６】
また、本実施形態では、対象者の口唇の開閉動作が開始されてから所定時間ＥＲＴ（特許請求の範囲に記載の第１所定時間）が経過するまで、対象者の口唇の開閉動作が繰り返して実行されていないときに、対象者の口唇の開閉動作が開始されてからこの対象者の口唇の開閉動作が行われなくなったときまでの期間を発声直前呼吸期間として判定することにより、発声する直前に呼吸するために口唇を動かす期間を確実に検出することが可能となる。
【００９７】
一方、本実施形態では、対象者の口唇の開閉動作が終了したタイミングから所定時間ＥＲＴ（特許請求の範囲に記載の第２所定時間）前のタイミングを音声期間の終了タイミングとして音声期間を検出することにより、発声が実際に終了するタイミングが口唇の開閉動作が終了するタイミングよりも若干早いタイミングとなるような場合に、それに応じて音声期間を適切に検出することができる。これにより、発声が実際に終了してから口唇の開閉動作が終了するまでの期間に発生した雑音を音声認識の対象から除去することが可能となる。この場合に、上記期間の設定によっては発声の終端が多少切れてしまうことも考えられるが、語尾はかならず母音で終わるため、発声の終端が多少切れてしまったとしても、正しく音声認識されるので問題ない。
【００９８】
本実施形態では、上記のような音声認識システムがロボットに組み込まれることにより、高度な対話機能を備えたロボットを実現することが可能となる。
【００９９】
また、上記実施形態では、本発明における第１及び第２所定時間を、互いに同じ所定時間ＥＲＴに設定しているが、互いに異なる所定時間に設定してもよい。あるいは、呼吸期間判定部３０４が例えば図４のステップＳ４１０で判定する発声直前呼吸期間は、個人差により異なる場合があるので、その発声直前呼吸期間を判定するための本発明の第１所定時間としての所定時間ＥＲＴを、第２所定時間とは別個に、対象者ごとに求めた値に設定してもよい。
【０１００】
図８は、上述の第１所定時間としての所定時間ＥＲＴの設定処理の例を示すフローチャートである。このフローチャートの処理例は、図４の場合と同様に、図２の制御部２０１のハードウェアが実行する処理として、又は図２の制御部２０１が実行する制御プログラム２０５の処理として実現される。
【０１０１】
まず、制御部２０１は、顔ＩＤの決定処理を実行する（ステップＳ８０１）。制御部２０１は、顔検出部３０６において検出された顔画像に対して個人識別の処理を実行し、未登録の顔であれば新たなＩＤ（識別子）を割り振り、その顔を新規登録する。顔画像からの個人識別には様々な方法がありどの手法を用いても構わないが、例えば下記文献５に記載されている技術が適用されてよい。
【０１０２】
＜文献５＞
“顔認識ソフトウェアFaceU”、[online]、PUX株式会社ホームページ [2018年6月12日検索］、インターネット
<URL:https://www.pux.co.jp/%E8%A3%BD%E5%93%81%E6%83%85%E5%A0%B1/%E7%94%BB%E5%83%8F%E8%AA%8D%E8%AD%98/%E9%A1%94%E8%AA%8D%E8%AD%98/>
【０１０３】
次に、制御部２０１は、環境ノイズの測定処理を実行する（ステップＳ８０２）。制御部２０１は、図３の口開閉判定部３０８による口唇の開閉動作が行われていない状態を判定し、その間の音量を図１又は図２のマイクアレイ１０３により測定し、その測定結果を環境のノイズ音量とする。音量測定はマイクアレイ１０３のすべてでもマイクアレイ１０３のうちの一つのマイクでもどちらでも良い。
【０１０４】
次に、制御部２０１は、環境のノイズ音量が所定の閾値（ＴＨ）よりも小さいか否か、例えば３０ｄＢ（デシベル）程度といった十分静かな環境か否かを確認する（ステップＳ８０３）。この処理は、後述する音声による音声区間検出例の正しさを担保するものである。制御部２０１は、このステップＳ８０３の判定がＮＯならば、何もせずにステップＳ８０１に戻って処理を繰り返す。
【０１０５】
一方、制御部２０１は、ステップＳ８０３の判定がＹＥＳで、環境のノイズ音量が所定の閾値よりも小さいと判定したときには、制御部２０１の口開閉判定部３０８（図３）が、図４のステップＳ４０５の場合と同様の、口開閉判定処理を実行する（ステップＳ８０４）。この動作は、口開閉があったと判定されるまで繰り返し実行される（ステップＳ８０４の判定が「開閉動作なし」の繰返し）。なお、ステップＳ８０４において、口開閉判定処理ではなく、後述の音声区間検出処理が実行されてもよい。
【０１０６】
次に、制御部２０１は、ＩＤ別統計処理を実行する（ステップＳ８０５）。このＩＤ別統計処理では、まず、制御部２０１は、ＩＤ別に、例えば下記文献６に記載の音声区間検出技術例に従い、音声入力部３０２に入力された音声に基づいて、対象者の発声が開始されたタイミングである発声開始タイミングを検出する。このとき制御部２０１は、発声開始タイミング検出手段として動作する。次に、制御部２０１は、ＩＤ別に、制御部２０１の口開閉判定部３０８による口唇の開閉動作の判定結果に基づいて、対象者の口唇の開閉動作が開始されたタイミングである口唇の開閉動作開始タイミングを検出する。このとき制御部２０１は、開閉動作開始タイミング検出手段として動作する。次いで、制御部２０１は、検出した発声開始タイミングと口唇の開閉動作開始タイミングとの差分値（発声開始タイミングの時刻−口唇の開閉動作開始タイミングの時刻。以下「開始タイミング差分値」という）を算出し、ＩＤ別に、この開始タイミング差分値の頻度値を算出する。
【０１０７】
＜文献６＞
LEE Akinobu“第5章 音声区間検出・入力棄却”、[online]、The Julius book [2018年6月12日検索］、インターネット
<URL: https://julius.osdn.jp/juliusbook/ja/desc_vad.html>
【０１０８】
更に、制御部２０１は、統計量判定処理を実行する（ステップＳ８０６）。この処理において、制御部２０１は、ステップＳ８０５で算出した開始タイミング差分値の頻度値の母数が十分に（所定値と比較して）大きいか否かを判定する。
【０１０９】
制御部２０１は、開始タイミング差分値の頻度値の母数が十分に大きくはないと判定した場合（ステップＳ８０６の判定がＮＯの場合）には、ステップＳ８０１に戻って処理を繰り返す。
【０１１０】
制御部２０１は、頻度の母数が十分に大きくなったと判定した場合（ステップＳ８０６の判定がＹＥＳの場合）には、時間設定処理を実行し、例えば開始タイミング差分値の頻度値の平均や、メディアン、Ｎパーセンタイル（Ｎは任意）等の値を、前述した第１所定時間としての所定時間ＥＲＴとして、図３の呼吸期間判定部３０４に設定する（ステップＳ８０７）。なお、ステップＳ８０６において、母数に代えて、開始タイミング差分値の頻度値のサンプル数を用い、このサンプル数が所定数よりも大きいことを条件として判別してもよい。以上のステップＳ８０５、Ｓ８０６，及びＳ８０７を実行する制御部２０１は、第１所定時間設定手段として動作する。
【０１１１】
上述のように発声直前呼吸期間を判定するための所定時間ＥＲＴ（第１所定時間）を、発声開始タイミング及び口唇の開閉動作開始タイミングに応じて設定することにより、対象者の個人差により異なる発声直前呼吸期間による影響を適切に補償しながら、音声期間を適切に検出することが可能となる。この場合、開始タイミング差分値をそのまま用いるのではなく、開始タイミング差分値の頻度値の平均や、メディアン、Ｎパーセンタイル（Ｎは任意）等の値を所定時間ＥＲＴとして設定するので、この設定を統計的に適切に行うことができる。
【０１１２】
なお、発声直前呼吸期間は、対象者の癖によるものであるので、頻繁に変化するようなものではない。このため、図８に示す処理は、所定時間ＥＲＴの設定が一旦行われた後には、比較的長い時間、例えば、所定時間ＥＲＴの設定が行われてから対象者の発声回数が比較的大きい所定の回数にならない限り、再度実行されず、所定時間ＥＲＴの更新が行われることはない。その他、頻度を一定期間毎にグラフに記録し、その頻度グラフの形状変化（統計量や包絡等）を判断して所定時間ＥＲＴが変更されるようにしてもよい。
【０１１３】
また、図８に示す処理では、発声開始タイミングと口唇の開閉動作開始タイミングとの差分値に基づいて、所定時間ＥＲＴを設定しているが、発声開始タイミングと口唇の開閉動作開始タイミングの関係を表す他の適当なパラメータ（例えば比）に応じて設定してもよく、あるいは、発声開始タイミング及び口唇の開閉動作開始タイミングに応じ、所定のマップ（図示せず）を検索することによって設定したり、適当な所定の算出式を用いて設定したりしてもよい。
【０１１４】
さらに、実施形態では、図４のステップＳ４１０の判定がＮＯのときに、対象者が発声直前の一呼吸を行ったとみなし、対象者の口唇の開閉動作が開始されてからこの対象者の口唇の開閉動作が行われなくなったときまでの期間を、発声直前呼吸期間として判定している。これに代えて、ステップＳ４１０の判定がＮＯのときに、ステップＳ４０９の判定がＹＥＳになるまで行われていた対象者の口唇の開閉動作が対象者の発声直前の呼吸に伴う開閉動作であると判定し、ステップＳ４１０の判定がＹＥＳのときに、この対象者の口唇の開閉動作が対象者の発声直前の呼吸に伴う開閉動作でないと判定してもよい。この場合、このステップＳ４１０において、呼吸期間判定部３０４が、特許請求の範囲に記載の判定手段として機能する。また、この場合、対象者の口唇の開閉動作が対象者の発声直前の呼吸に伴う開閉動作であると判定された場合（Ｓ４１０：ＮＯ）には、開始時刻ＴＳ（すなわち対象者の口唇の開閉動作が開始されたタイミング）が音声期間の開始タイミングＳＴとして設定されず（Ｓ４０１〜Ｓ４０９）、対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作でないと判定された場合（Ｓ４１０：ＹＥＳ）には、開始時刻ＴＳが音声期間の開始タイミングＳＴとして設定される（Ｓ４１１）。開始タイミングＳＴを用いた音声期間の検出手法は、前述したとおりである。
【０１１５】
さらに、実施形態では、音声期間の開始タイミングＳＴを、発声直前呼吸期間を音声期間に含めないように設定しているが、対象者の口唇の開閉動作が開始されたタイミングを常に、音声期間の開始タイミングＳＴとして設定してもよい。また、実施形態では、音声期間の終了タイミングＥＴを、対象者の口唇の開閉動作が行われなくなったタイミングから所定時間ＥＲＴ前のタイミングに設定しているが、対象者の口唇の開閉動作が行われなくなったタイミングに設定してもよい。
【０１１６】
以上説明した実施形態において、図２の制御部２０１が記憶部２０２に記憶され図４や図５、又は図８のフローチャートの処理例で示される制御プログラム２０５を実行することにより図３で示される機能を実現する場合、制御プログラム２０５は、例えば外部記憶装置や可搬記録媒体に記録して配布してもよく、あるいは特には図示しない無線や有線の通信インタフェースを介してネットワークから取得できるようにしてもよい。
【０１１７】
以上の実施形態に関して、更に以下の付記を開示する。
（付記１）
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出する音声期間検出手段と、
前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する呼吸期間判定手段と、を備え、
前記音声期間検出手段は、前記呼吸期間判定手段により検出された前記発声直前呼吸期間を前記対象者の音声期間に含めずに、前記対象者の音声期間を検出することを特徴とする音声期間検出装置。
（付記２）
前記呼吸期間判定手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されてから第１所定時間が経過するまで、前記対象者の口唇の開閉動作が繰り返して実行されていないときに、前記対象者の口唇の開閉動作が開始されてから前記対象者の口唇の前記開閉動作が行われなくなったときまでの期間を、前記発声直前呼吸期間として判定することを特徴とする、付記１に記載の音声期間検出装置。
（付記３）
前記対象者から入力された音声に基づいて前記対象者の発声が開始されたタイミングである発声開始タイミングを検出する発声開始タイミング検出手段と、
前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されたタイミングである口唇の開閉動作開始タイミングを検出する開閉動作開始タイミング検出手段と、
前記検出された発声開始タイミング及び口唇の開閉動作開始タイミングに応じて、前記第１所定時間を設定する第１所定時間設定手段と、
をさらに備えることを特徴とする、付記２に記載の音声期間検出装置。
（付記４）
前記音声期間検出手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が終了したタイミングから第２所定時間前のタイミングを前記音声期間の終了タイミングとして前記音声期間を検出することを特徴とする、付記１から３のいずれか１項に記載の音声期間検出装置。
（付記５）
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、当該音声期間の検出において、前記対象者の口唇の開閉動作が終了したタイミングから所定時間前のタイミングを前記音声期間の終了タイミングとすることを特徴とする音声期間検出装置。
（付記６）
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であるか否かを判定する判定手段と、
前記撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、前記判定手段により前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作であると判定された場合には、前記対象者の口唇の開閉動作が開始されたタイミングである開閉動作開始タイミングを、前記音声期間の開始タイミングとして設定せず、前記判定手段により前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作でないと判定された場合には、前記開閉動作開始タイミングを前記音声期間の開始タイミングとして設定する音声期間検出手段と、
を備えることを特徴とする音声期間検出装置。
（付記７）
前記判定手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されてから第１所定時間が経過するまで、前記対象者の口唇の開閉動作が繰り返して実行されていないときに、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であると判定することを特徴とする、付記６に記載の音声期間検出装置。
（付記８）
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記撮像された前記対象者が発声している期間である音声期間を検出する音声期間検出ステップと、
前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する呼吸期間判定ステップと、を含み、
前記音声期間検出ステップでは、前記呼吸期間判定ステップにより検出された前記発声直前呼吸期間を前記対象者の音声期間に含めずに、前記対象者の音声期間を検出することを特徴とする音声期間検出方法。
（付記９）
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、当該音声期間の検出において、前記対象者の口唇の開閉動作が終了したタイミングから所定時間前のタイミングを前記対象者の前記音声期間の終了タイミングとする音声期間検出ステップを含むことを特徴とする音声期間検出方法。
（付記１０）
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であるか否かを判定する判定ステップと、
前記撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、前記判定ステップにより前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作であると判定された場合には、前記対象者の口唇の開閉動作が開始されたタイミングである開閉動作開始タイミングを、前記音声期間の開始タイミングとして設定せず、前記判定ステップにより前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作でないと判定された場合には、前記開閉動作開始タイミングを前記音声期間の開始タイミングとして設定する音声期間検出ステップと、
を含むことを特徴とする音声期間検出方法。
（付記１１）
前記判定ステップでは、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されてから第１所定時間が経過するまで、前記対象者の口唇の開閉動作が繰り返して実行されていないときに、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であると判定することを特徴とする、付記１０に記載の音声期間検出方法。
（付記１２）
コンピュータに、付記８から１１のいずれか１項に記載の音声期間検出方法を実行させるためのプログラム。
（付記１３）
対象者の音声を取得する音声取得手段と、
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出する音声期間検出手段と、
前記音声期間検出手段により検出された前記対象者の音声期間内に前記音声取得手段により取得された前記対象者の音声に基づいて、前記対象者の音声を認識する音声認識手段と、
前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇が発声直前の呼吸に伴って動いた期間である発声直前呼吸期間を判定する呼吸期間判定手段と、を備え、
前記音声期間検出手段は、前記呼吸期間判定手段により検出された前記発声直前呼吸期間を前記対象者の音声期間に含めずに、前記対象者の音声期間を検出することを特徴とする音声認識装置。
（付記１４）
対象者の音声を取得する音声取得手段と、
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出する音声期間検出手段と、
前記音声期間検出手段により検出された前記対象者の音声期間内に前記音声取得手段により取得された前記対象者の音声に基づいて、前記対象者の音声を認識する音声認識手段と、を備え、
前記音声期間検出手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が終了したタイミングから所定時間前のタイミングを前記対象者の前記音声期間の終了タイミングとして前記音声期間を検出することを特徴とする音声認識装置。
（付記１５）
対象者の音声を取得する音声取得手段と、
撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であるか否かを判定する判定手段と、
前記撮像手段で撮像された対象者の口唇の撮像画像に基づいて、前記対象者が発声している期間である音声期間を検出し、前記判定手段により前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作であると判定された場合には、前記対象者の口唇の開閉動作が開始されたタイミングである開閉動作開始タイミングを、前記音声期間の開始タイミングとして設定せず、前記判定手段により前記対象者の口唇の開閉動作が発声直前の呼吸に伴う開閉動作でないと判定された場合には、前記開閉動作開始タイミングを前記音声期間の開始タイミングとして設定する音声期間検出手段と、
前記音声期間検出手段により検出された前記対象者の音声期間内に前記音声取得手段により取得された前記対象者の音声に基づいて、前記対象者の音声を認識する音声認識手段と、
を備えることを特徴とする音声認識装置。
（付記１６）
前記判定手段は、前記対象者の口唇の撮像画像に基づいて、前記対象者の口唇の開閉動作が開始されてから第１所定時間が経過するまで、前記対象者の口唇の開閉動作が繰り返して実行されていないときに、前記対象者の口唇の開閉動作が前記対象者の発声直前の呼吸に伴う開閉動作であると判定することを特徴とする、付記１５に記載の音声認識装置。
（付記１７）
付記１３から１６のいずれか１項に記載の音声認識装置を備えるロボット。
【符号の説明】
【０１１８】
１００  ロボット
１０１  頭部
１０２  胴体
１０３  マイクアレイ
１０４  カメラ
１０５  スピーカ
１０６  センサ群
１０７  首関節駆動部
１０８  足回り駆動部
２００  ロボット制御システム
２０１  制御部
２０２  記憶部
２０３  操作ボタン
２０４  電源部
２０５  制御プログラム
３０１  音声期間検出部
３０２  音声入力部
３０３  音声認識部
３０４  呼吸期間判定部
３０５  画像入力部
３０６  顔検出部
３０７  口パーツ検出部３０７
３０８  口開閉判定部
３０９  発声部
【図１】
2020003783.tif 000003
【図２】
2020003783.tif 000004
【図３】
2020003783.tif 000005
【図４】
2020003783.tif 000006
【図５】
2020003783.tif 000007
【図６】
2020003783.tif 000008
【図７】
2020003783.tif 000009
【図８】
2020003783.tif 000010