(57)【要約】【課題】検知対象エリアにいる人の動作を高精度に検出することができる動作推定装置、ロボット、及び動作推定方法を提供することを目的とする。【解決手段】動作推定装置は、センサと対象物との距離を取得する取得部と、人に対して挙手の終了を促した時刻に基づき設定される第１時刻における前記取得部によって取得された距離に基づいて人の反応を推定する状況推定部と、を備える。【選択図】図１
2015187856.tif 000002
【特許請求の範囲】
【請求項１】
センサと対象物との距離を取得する取得部と、
人に対して挙手の終了を促した時刻に基づき設定される第１時刻における前記取得部によって取得された前記距離に基づいて人の反応を推定する状況推定部と、
を備える動作推定装置。
【請求項２】
前記状況推定部は、
人に対して挙手の終了を促した時刻に基づき設定される第１期間における前記取得部によって取得された前記距離に基づいて人の反応を推定する請求項１に記載の動作推定装置。
【請求項３】
前記状況推定部は、
前記第１時刻と前記第１期間それぞれにおける対象物の高さ方向の距離を抽出し、前記第１時刻に前記抽出した高さ方向の距離と、前記第１期間に前記抽出した高さ方向の距離とを比較することで、人の反応を推定する請求項２に記載の動作推定装置。
【請求項４】
前記取得部によって取得された前記距離に基づいて人を検出し、前記検出した人毎に識別子を付与する人処理部、を備え、
前記状況推定部は、
前記人処理部によって前記識別子が付与された前記人の前記距離を用いて、前記第１時刻と前記第１期間それぞれにおける前記識別子毎の高さ方向の距離を抽出し、前記第１時刻と前記第１期間それぞれにおける前記抽出した前記識別子毎の高さ方向の距離同士を比較することで、人の反応を推定する請求項２に記載の動作推定装置。
【請求項５】
人の反応を推定する所定の範囲を１つ以上の領域に分割し、前記取得部によって取得された前記距離に基づいて該領域毎の距離を求める領域距離処理部、を備え、
前記状況推定部は、
前記人処理部によって前記識別子が付与された前記人の前記距離と、前記領域距離処理部によって求められた距離のうち、すくなくとも１つの距離によって人の反応を推定する請求項４に記載の動作推定装置。
【請求項６】
前記領域距離処理部は、
前記第１時刻と前記第１期間における前記領域毎の高さ方向の距離を抽出し、前記第１時刻と前記第１期間における前記抽出した前記領域毎の高さ方向の距離に基づく値を比較することで、人の反応を推定する請求項５に記載の動作推定装置。
【請求項７】
前記領域毎の高さ方向の距離に基づく値は、
前記第１時刻と前記第１期間における前記領域毎の高さ方向の距離が抽出された領域における前記高さ方向の距離の平均値である請求項６に記載の動作推定装置。
【請求項８】
前記人処理部が付与した識別子の距離を追跡する距離追跡部、を備え、
前記状況推定部は、
前記距離追跡部が付与した前記識別子の数を参照し、所定の期間に追跡不能になった前記識別子の数が所定の値を超えたとき、前記領域距離処理部によって求められた距離を用いて人の反応を推定し、所定の期間に追跡不能になった前記識別子の数が所定の値より少ないとき、前記人処理部によって求められた距離を用いて、人の反応を推定する請求項５から請求項７のいずれか１項に記載の動作推定装置。
【請求項９】
前記第１時刻または前記第１期間は、
前記領域距離処理部によって測定される前記距離の変化が所定の値より小さくなったときに対応して決定される請求項５から請求項８のいずれか１項に記載の動作推定装置。
【請求項１０】
前記状況推定部は、
人が挙手を行っていない第２期間における前記取得部によって取得された前記距離と、人の体格データとに基づいて算出される挙手をしたときに人の手が存在する高さ方向の範囲である挙手存在範囲を算出し、算出した前記挙手存在範囲にある前記第１時刻または前記第１期間における前記取得部によって取得された前記距離を抽出し、前記抽出した距離に基づいて人の反応を推定する請求項２から請求項９のいずれか１項に記載の動作推定装置。
【請求項１１】
前記人の反応は、人が挙手を行っている反応か挙手を行っていない反応かであり、
前記状況推定部は、
前記人の反応を複数回推定して、前記複数回推定した結果に基づいて、多数決の判定を行う請求項１から請求項１０のいずれか１項に記載の動作推定装置。
【請求項１２】
所定の範囲に対して自センサと対象物との距離の測定を行うセンサ、を備える請求項１から請求項１１のいずれか１項に記載の動作推定装置。
【請求項１３】
前記人に対して挙手の終了を促すこと示す信号を出力する出力部と、
前記請求項１から請求項１２のいずれか１項に記載の前記動作推定装置を備えるロボット。
【請求項１４】
取得部が、センサと対象物との距離を取得する取得手順と、
状況推定部が、人に対して挙手の終了を促した時刻に基づき設定される第１時刻における前記取得手順によって取得された前記距離に基づいて人の反応を推定する状況推定手順と、
を含む動作推定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作推定装置、ロボット、及び動作推定方法に関する。
【背景技術】
【０００２】
腕、手、指、足、頭などの身体の各部分の動きによって意志や感情が表現されるジェスチャーを認識する装置（以下、ジェスチャー認識装置という）が提案されている。
【０００３】
このようなジェスチャー認識装置では、画像センサによって生成された検知対象エリアに存在する物体までの距離値を画素値とする画像に基づいて、検知対象エリアに存在する人の特定部位を抽出する。そして、ジェスチャー認識装置では、抽出された特定部位の形状の時系列データに基づいて、特定空間での所定のジェスチャーを認識することが提案されている。なお、特定部位とは、例えば人の手の手首より先の部分であり、所定のジェスチャーとは、例えば、画像センサに向けて手がかざされる動作である（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００６−９９７４９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、例えば画像センサに向けて手をかざすタイミングはジェスチャー認識装置にとって予測が困難であった。このため、特許文献１に記載の技術では、検知対象エリアにいる人のジェスチャーを短時間で精度良く認識することができない場合がある。
【０００６】
本発明は、上記の問題点に鑑みてなされたものであって、検知対象エリアにいる人の動作を高精度に検出することができる動作推定装置、ロボット、及び動作推定方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
（１）上記目的を達成するため、本発明の一態様に係る動作推定装置は、センサと対象物との距離を取得する取得部と、人に対して挙手の終了を促した時刻に基づき設定される第１時刻における前記取得部によって取得された前記距離に基づいて人の反応を推定する状況推定部と、を備える。
（２）また、本発明の一態様に係る動作推定装置であって、前記状況推定部は、人に対して挙手の終了を促した時刻に基づき設定される第１期間における前記取得部によって取得された前記距離に基づいて人の反応を推定するようにしてもよい。
（３）また、本発明の一態様に係る動作推定装置であって、前記状況推定部は、前記第１時刻と前記第１期間それぞれにおける対象物の高さ方向の距離を抽出し、前記第１時刻に前記抽出した高さ方向の距離と、前記第１期間に前記抽出した高さ方向の距離とを比較することで、人の反応を推定するようにしてもよい。
（４）また、本発明の一態様に係る動作推定装置は、前記取得部によって取得された前記距離に基づいて人を検出し、前記検出した人毎に識別子を付与する人処理部、を備え、前記状況推定部は、前記人処理部によって前記識別子が付与された前記人の前記距離を用いて、前記第１時刻と前記第１期間それぞれにおける前記識別子毎の高さ方向の距離を抽出し、前記第１時刻と前記第１期間それぞれにおける前記抽出した前記識別子毎の高さ方向の距離同士を比較することで、人の反応を推定するようにしてもよい。
（５）また、本発明の一態様に係る動作推定装置は、人の反応を推定する所定の範囲を１つ以上の領域に分割し、前記取得部によって取得された前記距離に基づいて該領域毎の距離を求める領域距離処理部、を備え、前記状況推定部は、前記人処理部によって前記識別子が付与された前記人の前記距離と、前記領域距離処理部によって求められた距離のうち、すくなくとも１つの距離によって人の反応を推定するようにしてもよい。
（６）また、本発明の一態様に係る動作推定装置であって、前記領域距離処理部は、前記第１時刻と前記第１期間における前記領域毎の高さ方向の距離を抽出し、前記第１時刻と前記第１期間における前記抽出した前記領域毎の高さ方向の距離に基づく値を比較することで、人の反応を推定するようにしてもよい。
（７）また、本発明の一態様に係る動作推定装置であって、前記領域毎の高さ方向の距離に基づく値は、前記第１時刻と前記第１期間における前記領域毎の高さ方向の距離が抽出された領域における前記高さ方向の距離の平均値であるようにしてもよい。
（８）また、本発明の一態様に係る動作推定装置は、前記人処理部が付与した識別子の距離を追跡する距離追跡部、を備え、前記状況推定部は、前記距離追跡部が付与した前記識別子の数を参照し、所定の期間に追跡不能になった前記識別子の数が所定の値を超えたとき、前記領域距離処理部によって求められた距離を用いて人の反応を推定し、所定の期間に追跡不能になった前記識別子の数が所定の値より少ないとき、前記人処理部によって求められた距離を用いて、人の反応を推定するようにしてもよい。
（９）また、本発明の一態様に係る動作推定装置であって、前記第１時刻または前記第１期間は、前記領域距離処理部によって測定される前記距離の変化が所定の値より小さくなったときに対応して決定されるようにしてもよい。
（１０）また、本発明の一態様に係る動作推定装置であって、記状況推定部は、人が挙手を行っていない第２期間における前記取得部によって取得された前記距離と、人の体格データとに基づいて算出される挙手をしたときに人の手が存在する高さ方向の範囲である挙手存在範囲を算出し、算出した前記挙手存在範囲にある前記第１時刻または前記第１期間における前記取得部によって取得された前記距離を抽出し、前記抽出した距離に基づいて人の反応を推定するようにしてもよい。
（１１）また、本発明の一態様に係る動作推定装置であって、前記人の反応は、人が挙手を行っている反応か挙手を行っていない反応かであり、状況推定部は、人の反応を複数回推定して、複数回推定した結果に基づいて、多数決の判定を行う。
（１２）また、本発明の一態様に係る動作推定装置は、所定の範囲に対して自センサと対象物との距離の測定を行うセンサ、を備えるようにしてもよい。
【０００８】
（１３）上記目的を達成するため、本発明の一態様に係るロボットは、前記人に対して挙手の終了を促すこと示す信号を出力する出力部と、上記（１）から（１１）のいずれか１つに記載の前記動作推定装置を備える。
（１４）上記目的を達成するため、本発明の一態様に係る動作推定方法は、取得部が、センサと対象物との距離を取得する取得手順と、状況推定部が、人に対して挙手の終了を促した時刻に基づき設定される第１時刻における前記取得手順によって取得された前記距離に基づいて人の反応を推定する状況推定手順と、を含む。
【発明の効果】
【０００９】
本発明の態様（１）、（１２）、（１３）、及び（１４）によれば、手が挙げられる期間に比べて短時間に精度良く人の反応を推定することができる。
また、本発明の態様（２）、（３）、及び（４）によれば、人が手を下げる前の期間に人が手を挙げているときの高さ方向の値と、人が手を下げたときの高さ方向の値とに基づいて、手を挙げている人数を検出することができる。
また、本発明の態様（５）、（６）、及び（７）によれば、手を挙げている期間と、手を下げたときとの、領域における高さ方向の変化量を推定することができる。そして、動作推定装置３では、推定された結果に基づいて、多数決によってどの質問への挙手が最も多いかを推定することができる。
また、本発明の態様（８）によれば、検出結果に応じて、領域距離処理部によって求められた距離、または人処理部によって求められた距離を用いて、人の反応を推定することができる。
また、本発明の態様（９）によれば、人に対して挙手の終了を促すこと示すことにより設定されるときである手下げ時、及び人に対して挙手の終了を促すこと示すことにより設定される第１期間を、領域距離処理部によって検出された結果に基づいて決定することができる。
また、本発明の態様（１０）によれば、個人を特定する必要がないので人が密集している領域が存在しても、人の反応を推定することができる。
また、本発明の態様（１１）によれば、多数決の判定を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態に係るロボットの概略のブロック図である。
【図２】第１実施形態に係る音声信号の出力するタイミングと挙手を検出するタイミングを説明する図である。
【図３】第１実施形態に係るロボットによる挙手検出の処理手順のフローチャートである。
【図４】第１実施形態に係るＬＲＦセンサによる測定とセンシング処理部と人統合処理部とによる処理を説明する図である。
【図５】第１実施形態に係るクラスタリング処理、人クラスタデータの生成の処理手順のフローチャートである。
【図６】第１実施形態に係る人統合処理部によって行われる統合処理手順のフローチャートである。
【図７】第１実施形態に係るトラッキングを行った結果の例を示す図である。
【図８】第１実施形態に係るＬＲＦセンサによる測定とセンシング処理部とグリッド統合処理部による処理を説明する図である。
【図９】第１実施形態に係るグリッドデータの生成の処理手順のフローチャートである。
【図１０】第１実施形態に係るグリッド統合処理部によって行われる統合処理手順のフローチャートである。
【図１１】第１実施形態に係る第１処理及び第２処理を行うタイミングを説明する図である。
【図１２】第２実施形態に係るロボットの概略のブロック図である。
【図１３】第２実施形態に係る人の部位の高さを説明する図である。
【図１４Ａ】人が手を下げているイメージ図である。
【図１４Ｂ】第２実施形態に係る人が手を下げている期間のｘｙｚ値の第１マップの例を説明する図である。
【図１５Ａ】人が手を挙げているイメージ図である。
【図１５Ｂ】第２実施形態に係る人が手を挙げている期間のｘｙｚ値の第２マップの例を説明する図である。
【図１６】第２実施形態に係る状況推定部が第１マップ〜第５マップを用いて行う処理を説明する図である。
【図１７】第２実施形態に係る状況推定部がクラスタリングを行って手を挙げている人数を推定する処理を説明する図である。
【図１８】第２実施形態に係る状況推定部の処理手順のフローチャートである。
【図１９】人に対して挙手の終了を促した時刻、第１時刻、及び第１期間を説明する図である。
【発明を実施するための形態】
【００１１】
まず、本発明の概要を説明する。
例えば、イベント会場において、人型のロボットが司会進行を行う場合がある。このような状況では、予めロボットに、シナリオ、動作、及び音声信号などを記憶させておき、記憶させた動作を行わせながら、シナリオに応じたタイミングで記憶されている音声信号を再生させる場合がある。このようなロボットの動作では、会場にいる人と、ロボットとのコミュニケーションが取りにくい場合がある。
このため、本実施形態では、会場にいる人達の反応に応じて、ロボットが次に行う動作や、出力する音声信号を選択することで、ロボットと人とのコミュニケーションを豊かにする。本実施形態では、ロボットが、会場にいる人による挙手を推定して、推定した結果に基づいて多数決を行うことで、提示した話題の中から話題の選択を行う。
【００１２】
以下、図面を参照しながら本発明の実施形態について説明する。
【００１３】
［第１実施形態］
図１は、本実施形態に係るロボット１の概略のブロック図である。
図１に示すように、ロボット１は、処理部２、及び動作推定装置３を含んで構成される。ロボット１は、ｎ（ｎは１以上の整数）個のＬＲＦ（Ｌａｓｅｒ  Ｒａｎｇｅ  Ｆｉｎｄｅｒ；レーザレンジファインダー）センサ１０−１〜１０−ｎに無線または有線で接続される。なお、ＬＲＦセンサ１０−１〜１０−ｎのうちいずれか１つを特定しない場合は、ＬＲＦセンサ１０という。なお、本実施形態では、動作推定装置３をロボット１が備える例を説明するが、これに限られない。例えば、イベント会場等で用いられるガイドシステム等が動作推定装置３を備えるようにしてもよい。
【００１４】
ＬＲＦセンサ１０は、レーザ光を照射しながら、検知対象の空間を所定のピッチでスキャンして、物体に反射して戻ってくるまでの時間を測定することで、物体との距離と方向を検出する３次元の測域センサである。ＬＲＦセンサ１０−１〜１０−ｎそれぞれは、検出した物体との距離と方向を含む検出結果である測距点の情報を、対応するセンシング処理部２０−１〜２０−ｎ（取得部）に出力する。なお、測距点の情報には、ｘ軸成分、ｙ軸成分、及びｚ軸成分が含まれる。ＬＲＦセンサ１０−１〜１０−ｎそれぞれは、検知対象の空間の一部が重なるように、人を俯瞰できる位置、例えば検知対象の空間の天井や壁などに設置される。レーザ光の波長は、例えば９０５ｎｍ、７８５ｎｍ等である。また、１つのＬＲＦセンサ１０のスキャン範囲は、例えば、水平面おいて２７０度であり、ステップ角度が０．２５度、ステップ数が１０８０ステップである。なお、本実施形態では、センサの例として、ＬＲＦセンサ１０を用いる例を説明するが、これに限られず、他のセンサであってもよい。
【００１５】
まず、処理部２の構成について説明する。
処理部２は、ロボット１の動作等、各種の制御を行う。処理部２は、記憶部１０１、制御部１０２、及び音声出力部１０３を備える。
記憶部１０１には、ロボット１の制御に関する情報、音声出力データ、シナリオ情報等が記憶されている。なお、シナリオ情報とは、所定の動作を所定の時間に行うことが記述されている情報である。
【００１６】
制御部１０２は、記憶部１０１に記憶されているシナリオ情報を読み出し、読み出したシナリオ情報に基づいて、音声信号を音声出力部１０３から出力させる。また、制御部１０２は、音声信号を出力させるタイミングでトリガー信号ｄ５を生成し、生成したトリガー信号ｄ５を状況推定部５０に出力する。また、制御部１０２は、動作推定装置３から入力される検出結果を示す情報（以下、検出情報という）ｄ６に基づいて、シナリオ情報の中から次に行う処理を選択する。
音声出力部１０３は、制御部１０２の処理に応じて、音声信号を出力する。音声出力部１０３は、例えばスピーカーである。
【００１７】
次に、動作推定装置３の構成について説明する。
動作推定装置３は、ｎ個のセンシング処理部２０−１〜２０−ｎ、人統合処理部（人処理部、距離追跡部）３０、グリッド統合処理部（領域距離処理部）４０、状況推定部５０、及び記憶部６０を備える。センシング処理部２０−１〜２０−ｎのうちいずれか１つを特定しない場合は、センシング処理部２０という。また、ＬＲＦセンサ１０−１〜１０−ｎそれぞれは、対応するセンシング処理部２０−１〜２０−ｎに無線または有線を介して接続されている。また、動作推定装置３は、ＬＲＦセンサ１０を含んで構成されていてもよい。
【００１８】
センシング処理部２０は、ＬＲＦセンサ１０が出力した検出結果を取得する。センシング処理部２０は、ＬＲＦセンサ１０から入力された検出結果を用いて、例えば所定の周期毎に測距点を分類する（クラスタリング）。センシング処理部２０は、分類したクラスタ毎の重心位置を算出し、算出した重心位置を、位置を示す情報とする。センシング処理部２０は、分類したクラスタ毎に高さの最大値を抽出し、抽出した最大値を、高さを示す情報とする。そして、センシング処理部２０は、クラスタ毎に、位置を示す情報と高さを示す情報とを関連づけて人クラスタデータｄ１を生成し、生成した人クラスタデータｄ１を人統合処理部３０に出力する。
また、センシング処理部２０は、ＬＲＦセンサ１０から入力された検出結果を用いて、例えば所定の周期毎に測距点を、予め定められているグリッドに分類する。センシング処理部２０は、分類したグリッド毎に高さの最大値を抽出し、抽出した最大値を、高さを示す情報とする。そして、センシング処理部２０は、グリッド毎に、グリッドの位置を示す情報と高さを示す情報とを関連づけてグリッドデータｄ２を生成し、生成したグリッドデータｄ２をグリッド統合処理部４０に出力する。
【００１９】
センシング処理部２０は、測距点を、例えば最短距離法などの階層的手法や、ｋ−ｍｅａｎｓ法などの分割最適化手法を用いて、分類を行う。センシング処理部２０は、高さに対応するｚ軸方向の値が所定の範囲内または所定の高さ以上であり、かつｘｙ平面上に所定の密度ある測距点を１つのクラスタとして検出する。例えば、センシング処理部２０は、ｘｙ平面上に投影した測距点に対して、階層的クラスタリングを行うことで、得られた測距点を分類する。
【００２０】
人統合処理部３０は、センシング処理部２０−１〜２０−ｎそれぞれから入力された人クラスタデータｄ１を統合する。人統合処理部３０は、統合した人クラスタデータを用いて、人毎に識別子（ＩＤ）を割り当てる。人統合処理部３０は、ＩＤを割り当てた人クラスタデータに対してトラッキング（以下、ＩＤトラッキングという）を行う。なお、ＩＤトラッキングは、例えば、後述するように、測距点をｘｙ平面に投影し、投影した投影点が分類されたもの、クラスタの重心位置を用いて行う。人統合処理部３０は、ＩＤを割り当てた位置を示す情報（以下、人位置ともいう）と、ＩＤを割り当てた人クラスタデータと、割り当てたＩＤとを対応づけて人データを生成する。人統合処理部３０は、生成した人データｄ３を状況推定部５０に出力する。
【００２１】
グリッド統合処理部４０は、センシング処理部２０−１〜２０−ｎそれぞれから入力されたグリッドデータｄ２を統合する。グリッド統合処理部４０は、統合したグリッドデータを用いて、グリッド毎の高さの最大値を抽出する。そして、グリッド統合処理部４０は、グリッドの高さが抽出されたグリッドの数をカウントする。グリッド統合処理部４０は、グリッドの高さが抽出されたグリッドにおけるグリッドの高さの平均値を算出し、算出した高さを、グリッド高さを示す情報ｄ４として状況推定部５０に出力する。
【００２２】
状況推定部５０には、制御部１０２からシナリオ情報に基づくトリガー信号ｄ５が入力される。なお、トリガー信号ｄ５には、後述する音声信号の種類を示す情報が含まれているようにしてもよい。状況推定部５０は、入力されたトリガー信号ｄ５に応じて、人統合処理部３０から入力された人データｄ３を用いて、所定の期間（第１期間）、ＩＤ毎に人データに含まれる高さを示す情報の中から最大値を検出する。状況推定部５０は、所定の期間に検出された最大値を、そのＩＤの第１クラスタ高さ値として、記憶部６０に記憶させる。
また、状況推定部５０は、入力されたトリガー信号ｄ５に応じて、グリッド統合処理部４０から入力されたグリッド高さを示す情報ｄ４を用いて、所定の期間（第１期間）におけるグリッド高さを示す情報の最大値を検出し、所定の期間に検出された最大値を第１グリッド高さ値として、記憶部６０に記憶させる。
【００２３】
状況推定部５０は、入力されたトリガー信号ｄ５に応じて、人統合処理部３０から入力された人データｄ３を用いて、所定の時刻（第１時刻）に、ＩＤ毎に人データに含まれる高さを示す情報を、そのＩＤの第２クラスタ高さ値として、記憶部６０に記憶させる。
また、状況推定部５０は、入力されたトリガー信号ｄ５に応じて、所定の時刻のグリッド高さを示す情報の最大値を、第２グリッド高さ値として、記憶部６０に記憶させる。
【００２４】
状況推定部５０は、ＩＤ毎に、記憶部６０に記憶させた第１クラスタ高さ値と第２クラスタ高さ値とを読み出し、読み出した第１クラスタ高さ値と第２クラスタ高さ値とを比較することで、ＩＤ毎に手を挙げているか否かを判別する。
状況推定部５０は、例えば、第１クラスタ高さ値から第２クラスタ高さ値を減算した値が所定の値以上の時、手を挙げていると判別する。または、状況推定部５０は、例えば、第１クラスタ高さ値を第２クラスタ高さ値で除算した値が所定の値以上の時、手を挙げていると判別する。
【００２５】
記憶部６０には、第１クラスタ高さ値、第２クラスタ高さ値、第１グリッド高さ値、第２グリッド高さ値が記憶される。
【００２６】
図２は、本実施形態に係る音声信号の出力するタイミングと挙手を検出するタイミングを説明する図である。図２において、横軸は時間である。なお、図２に示す例では、ロボット１が提示する話題がＡとＢの２つの場合を示している。
まず、制御部１０２が、音声信号を出力するタイミングについて説明する。
時刻ｔ０において、人は、ロボット１から出力される音声を聞いている。この時点で人は挙手を行っていない。
時刻ｔ１のとき、制御部１０２は、記憶部１０１に記憶されているシナリオ情報に基づいて、音声信号「Ａについて聞きたい人は、手を挙げてください」を、音声出力部１０３からの出力を開始する。
【００２７】
また、時刻ｔ１１のとき、制御部１０２は、記憶部１０１に記憶されているシナリオ情報に基づいて、音声信号「Ｂについて聞きたい人は、手を挙げてください」を、音声出力部１０３からの出力を開始する。期間ｐ１は、時刻ｔ１またはｔ１１に出力を開始した音声信号が出力されている期間であり、時刻ｔ１〜ｔ２、または時刻ｔ１１〜ｔ１２の期間である。
【００２８】
時刻ｔ１から期間ｐ２経過後の時刻ｔ４のとき、制御部１０２は、記憶部１０１に記憶されているシナリオ情報に基づいて、音声信号「はい、わかりました」を、音声出力部１０３から出力する。また、時刻ｔ１１から期間ｐ２経過後の時刻ｔ１４のとき、制御部１０２は、記憶部１０１に記憶されているシナリオ情報に基づいて、音声信号「はい、わかりました」を、音声出力部１０３から出力する。期間ｐ２は、シナリオ情報に設定されている時刻ｔ１またはｔ１１からの所定時間であり、例えば１０秒間である。また、期間ｐ５は、時刻ｔ４または時刻ｔ１４に出力を開始した音声信号が出力されている期間であり、時刻ｔ４〜ｔ６、または時刻ｔ１４〜ｔ１６の期間である。時刻ｔ４及びｔ１４は、人に対して挙手の終了を促した時刻である。
【００２９】
時刻ｔ３は、時刻ｔ４から期間ｐ４（第１期間）だけ前の時刻である。また、時刻ｔ１３は、時刻ｔ１４から期間ｐ４だけ前の時刻である。期間ｐ４は、例えば、（所定の時間の）１／２である。例えば、所定の時間は４秒間であり、期間ｐ４は２秒間である。この期間ｐ４の間、人統合処理部３０は、ＩＤ毎にクラスタ高さを検出する。また、この期間ｐ４の間、グリッド統合処理部４０は、グリッド毎にグリッド高さを検出し、グリッド高さが検出された全てのグリッドにおいて、グリッド高さの平均値を算出する。
【００３０】
時刻ｔ５は、時刻ｔ４から期間ｐ６（第１期間）だけ後の時刻である。また、時刻ｔ１５は、時刻ｔ１４から期間ｐ６だけ後の時刻である。期間ｐ６は、例えば、（所定の時間）１／２である。例えば、所定の時間は４秒間であり、期間ｐ６は２秒間である。時刻ｔ５及びｔ１５のとき、人統合処理部３０は、ＩＤ毎にクラスタ高さを検出する。また、時刻ｔ５及びｔ１５のとき、グリッド統合処理部４０は、グリッド毎にグリッド高さを検出し、グリッド高さが検出された全てのグリッドにおいて、グリッド高さの平均値を算出する。
【００３１】
本実施形態では、図２に示したように、音声信号が出力されるタイミングである時刻ｔ４から期間ｐ４（第１期間）だけ前の間のデータを用いて検出されたＩＤ毎にクラスタ高さと、時刻ｔ４から期間ｐ６（第１期間）だけ後の時刻（第１時刻）のデータを用いて検出されたクラスタ高さとを状況推定部５０が比較することで、挙手されている人数を推定する。同様に、時刻ｔ１４から期間ｐ４だけ前の間のデータを用いて検出されたＩＤ毎にクラスタ高さと、時刻ｔ１４から期間ｐ６だけ後の時刻のデータを用いて検出された高さとを状況推定部５０が比較することで、挙手されている人数を推定する。そして、時刻ｔ１６後、制御部１０２は、質問Ａ及びＢに対して挙手されている人数を比較することで多数決を行う。
【００３２】
または、時刻ｔ４から期間ｐ４だけ前の間のデータを用いて算出されたグリッド高さの平均値と、時刻ｔ４から期間ｐ６だけ後の時刻のデータを用いて算出されたグリッド高さの平均値とを状況推定部５０が比較することで、グリッド高さを推定する。同様に、時刻ｔ１４から期間ｐ４だけ前の間のデータを用いて算出されたグリッド高さの平均値と、時刻ｔ１４から期間ｐ６だけ後の時刻のデータを用いて算出されたグリッド高さとを状況推定部５０が比較することで、グリッド高さを推定する。そして、時刻ｔ１６後、制御部１０２は、質問Ａ及びＢに対するグリッド高さを比較することで多数決を行う。
【００３３】
次に、ロボット１による挙手検出の処理手順を説明する。
図３は、本実施形態に係るロボット１による挙手検出の処理手順のフローチャートである。
（ステップＳ１）制御部１０２は、記憶部１０１に記憶されているシナリオ情報を読み出す。制御部１０２は、処理をステップＳ２に進める。
（ステップＳ２）制御部１０２は、読み出したシナリオ情報に基づいて、音声信号を音声出力部１０３から出力させる。制御部１０２は、処理をステップＳ３に進める。
【００３４】
（ステップＳ３）センシング処理部２０は、ＬＲＦセンサ１０から入力された検出結果の中から、ｚ軸成分の値が所定の値以上の測距点を抽出する。センシング処理部２０は、処理をステップＳ４に進める。
【００３５】
（ステップＳ４）センシング処理部２０は、ステップＳ３で抽出した測距点の情報を用いて、人クラスタデータを生成する。次に、センシング処理部２０は、ステップＳ３で抽出した測距点の情報を用いて、グリッド毎にグリッドデータを生成する。なお、生成する順番は、グリッドデータが先であってもよく、人クラスタデータの生成とグリッドデータの生成とが平行して行われてもよい。センシング処理部２０は、処理をステップＳ５に進める。
【００３６】
（ステップＳ５）人統合処理部３０は、ステップＳ４で生成された人クラスタデータを用いて統合処理を行う。
次に、グリッド統合処理部４０は、ステップＳ４で生成されたグリッドデータを用いて統合処理を行う。なお、処理する順番は、人統合処理部３０及びグリッド統合処理部４０のどちらかが先であってもよく、平行して行うようにしてもよい。人統合処理部３０及びグリッド統合処理部４０は処理をステップＳ６に進める。
【００３７】
（ステップＳ６）状況推定部５０は、期間（ｐ２−ｐ４）（所定の期間（第１期間））が経過したか否か、期間（ｐ２＋ｐ４）が経過したか否かを判別する。状況推定部５０は、期間（ｐ２−ｐ４）が経過していないと判別した場合（ステップＳ６；経過していない）、ステップＳ３に戻る。状況推定部５０は、期間（ｐ２−ｐ４）が経過したと判別した場合（ステップＳ６；期間（ｐ２−ｐ４）が経過）、ステップＳ７に進み、期間（ｐ２＋ｐ４）（所定の時刻）が経過したと判別した場合（ステップＳ６；期間（ｐ２＋ｐ４）が経過）、ステップＳ９に進む。
【００３８】
（ステップＳ７）状況推定部５０は、期間ｐ２が経過したか否かを判別する。状況推定部５０は、期間ｐ２が経過していないと判別した場合（ステップＳ７；ＮＯ）、ステップＳ８に進み、期間ｐ２が経過したと判別した場合（ステップＳ７；ＹＥＳ）、ステップＳ３に戻る。
（ステップＳ８）状況推定部５０は、第１処理を行う。状況推定部５０は、処理終了後、ステップＳ３に戻る。
（ステップＳ９）状況推定部５０は、第２処理を行う。状況推定部５０は、処理終了後、ステップＳ１０に進む。
【００３９】
（ステップＳ１０）状況推定部５０は、ステップＳ８の第１処理で検出した結果と、ステップＳ９の第２処理で検出した結果とを比較する。
（ステップＳ１１）状況推定部５０は、ステップＳ１０で比較された結果に基づいて、手を挙げた人数を推定する。次に、状況推定部５０は、ステップＳ１０で比較された結果に基づいて、グリッド高さの変化量を推定する。
動作推定装置３は、シナリオ情報に基づいて、所定の質問を所定回数提示するまで、ステップＳ２〜Ｓ１１を繰り返す。
【００４０】
（ステップＳ１２）状況推定部５０は、シナリオ情報に基づいて、所定の質問が所定回数提示された後、ステップＳ１１で推定された質問毎の推定結果に基づいて、多数決判定を行う。具体的には、状況推定部５０は、設定されている条件に応じて、人統合処理部３０またはグリッド統合処理部４０が処理した結果を用いるかを選択する。状況推定部５０は、ステップＳ１１で推定された質問毎の手を挙げた人数を比較し、最も人数が多い質問を選択する。または、状況推定部５０は、ステップＳ１１で推定された質問毎のグリッド高さの変化量を比較し、最も変化量が大きい質問を選択する。
以上で、挙手検出の処理を終了する。
【００４１】
＜人クラスタデータの生成＞
次に、ステップＳ４（図３）で行われる人クラスタデータの生成について説明する。
図４は、本実施形態に係るＬＲＦセンサ１０による測定とセンシング処理部２０と人統合処理部３０とによる処理を説明する図である。図４では、紙面に向かって左右方向をｘ軸方向、奥行き方向をｙ軸方向、高さ方向をｚ軸方向とする。
図４に示す例では、検出対象の空間の天井に２つのＬＲＦセンサ１０−１とＬＲＦセンサ１０−２が、距離Ｌ１の間隔で設置されている。符号１１１が示す領域は、ＬＲＦセンサ１０−１の検出可能な領域（以下、検出領域という）を示し、符号１１２が示す領域は、ＬＲＦセンサ１０−２の検出領域を示している。また、図４に示した例では、所定の高さ以上の測距点を示している。
【００４２】
また、図４に示す例では、ＬＲＦセンサ１０−１の検出領域１１１に人ｈｕ１がいて、ＬＲＦセンサ１０−２の検出領域１１２に人ｈｕ１と人ｈｕ２がいる。
測距点１２１〜１２６は、人ｈｕ１に対する測距点であり、測距点１３１〜１３３は、人ｈｕ２に対する測距点である。測距点は、例えば、人の頭部、耳、服の襟、肩などに対応する点である。これらの測距点には、ｘ、ｙ、ｚの各成分が含まれている。すなわち、測距点には、ｘｙ平面上における位置を示す情報と、高さを示す情報とが含まれている。
そして、図４に示す例では、測距点１２２〜１２６がＬＲＦセンサ１０−１によって測定された測距点であり、測距点１２１〜１２６及び１３１〜１３３がＬＲＦセンサ１０−２によって測定された測距点である。
また、図４において、投影点１４１〜１４６は、測距点１３１〜１３６をｘｙ平面に投影した点であり、投影点１５１〜１５３は、測距点１３１〜１３３をｘｙ平面に投影した点である。
【００４３】
次に、クラスタリング処理、人クラスタデータの生成の処理手順を説明する。
図５は、本実施形態に係るクラスタリング処理、人クラスタデータの生成の処理手順のフローチャートである。
（ステップＳ１０１）センシング処理部２０は、対応するＬＲＦセンサ１０から入力された測距点の情報のうち、ｚ軸成分の値が所定の値以上の測距点を、各測距点の情報に含まれるｘ軸成分とｙ軸成分を用いて、ｘｙ平面に投影する。センシング処理部２０は、処理をステップＳ１０２に進める。
【００４４】
（ステップＳ１０２）センシング処理部２０は、ｘｙ平面に投影した投影点を分類（クラスタ分け）する。センシング処理部２０は、処理をステップＳ１０３に進める。
【００４５】
（ステップＳ１０３）センシング処理部２０は、クラスタ分けしたクラスタ毎に、クラスタ内に含まれる投影点の重心位置を算出し、算出した重心位置をそのクラスタの位置を示す情報とする。センシング処理部２０は、処理をステップＳ１０４に進める。
（ステップＳ１０４）センシング処理部２０は、クラスタ分けしたクラスタ毎に、クラスタ内に含まれる投影点に対応する測距点のうち、ｚ軸成分の最大値を抽出し、抽出した最大値をそのクラスタの高さを示す情報とする。センシング処理部２０は、処理をステップＳ１０５に進める。
（ステップＳ１０５）センシング処理部２０は、クラスタ毎の位置を示す情報と、高さを示す情報とを関連づけて、クラスタ毎の人クラスタデータを生成する。
【００４６】
次に、図４を用いて、クラスタリング処理、人クラスタデータの生成の具体例を、図５を参照して説明する。
センシング処理部２０−１は、入力された測距点１２２〜１２６をｘｙ平面に投影し、投影点１４２〜１４６の情報を生成する。センシング処理部２０−２は、入力された測距点１２１〜１２６及び１３１〜１３３をｘｙ平面に投影し、投影点１４１〜１４６及び１５１〜１５３の情報を生成する（ステップＳ１０１）。
【００４７】
次に、センシング処理部２０−１は、投影点１４２〜１４６を１つのクラスタに分類する。また、センシング処理部２０−２は、投影点１４１〜１４６を１つのクラスタに分類し、投影点１５１〜１５３を１つのクラスタに分類する（ステップＳ１０２）。
センシング処理部２０−１は、クラスタリングされた投影点１４２〜１４６の重心位置を計算する。センシング処理部２０−１は、クラスタリングされた投影点１４１〜１４６の重心位置、投影点１５１〜１５３の重心位置を計算する（ステップＳ１０３）。
【００４８】
次に、センシング処理部２０−１は、分類したクラスタに含まれる投影点１４２〜１４６に対応する測距点１２２〜１２６のうち、ｚ軸成分の最大値である測距点１２２のｚ軸成分を抽出する。センシング処理部２０−２は、測距点１２１〜１２６のうち、ｚ軸成分の最大値である測距点１２１のｚ軸成分を抽出し、測距点１３１〜１３３のうち、ｚ軸成分の最大値である測距点１３２のｚ軸成分を抽出する（ステップＳ１０４）。
【００４９】
次に、センシング処理部２０−１は、投影点１４２〜１４６の重心位置である位置を示す情報と、測距点１２２の高さを示す情報とを関連づけて人クラスタデータｄ１（１１）を生成する。センシング処理部２０−２は、投影点１４１〜１４６の重心位置である位置を示す情報と、測距点１２１の高さを示す情報とを関連づけて人クラスタデータｄ１（２１）を生成し、投影点１５１〜１５３の重心位置である位置を示す情報と、測距点１３２の高さを示す情報とを関連づけて人クラスタデータｄ１（２２）を生成する（ステップＳ１０５）。
【００５０】
＜人統合処理部３０によって行われる第１統合処理＞
次に、人統合処理部３０によって行われるステップＳ５（図３）の第１統合処理について説明する。
図６は、本実施形態に係る人統合処理部３０によって行われる第１統合処理手順のフローチャートである。
【００５１】
（ステップＳ２０１）人統合処理部３０は、センシング処理部２０−１〜２０−ｎから入力される人クラスタデータを統合する。人統合処理部３０は、処理をステップＳ２０２に進める。
（ステップＳ２０２）人統合処理部３０は、統合された人クラスタデータを用いて、クラスタ毎にＩＤを割り当てる。人統合処理部３０は、処理をステップＳ２０３に進める。
【００５２】
（ステップＳ２０３）人統合処理部３０は、ＩＤ毎に、ＩＤが割り当てられたクラスタの位置を示す情報と、ＩＤが割り当てられたクラスタの高さを示す情報と、割り振られたＩＤとを関連づけて人データを生成する。人統合処理部３０は、処理をステップＳ２０４に進める。
（ステップＳ２０４）人統合処理部３０は、生成した人データを用いて、ＩＤ毎にＩＤが割り振られた人の位置、及び高さに対してトラッキングを行う。なお、人統合処理部３０は、トラッキングができなくなった場合、トラッキングできなくなったＩＤに対応する人データを削除する。
【００５３】
次に、人統合処理部３０によって行われる第１統合処理の具体例を、図４、図６を参照して説明する。
人統合処理部３０は、センシング処理部２０−１から入力される人クラスタデータｄ１（１１）と、センシング処理部２０−２とから入力される人クラスタデータｄ１（２１）を、位置を示す情報が所定の範囲内にあると判別して統合する（ステップＳ２０１）。次に、人統合処理部３０は、人クラスタデータｄ１（１１）とｄ１（２１）が統合されたクラスタデータに対して、例えばＩＤ１を割り当てる（ステップＳ２０２）。また、人統合処理部３０は、人クラスタデータｄ１（１１）とｄ１（２１）とに含まれる高さを示す情報のうち、最大値として測距点１２１のｚ軸成分の値を抽出する。
また、人統合処理部３０は、センシング処理部２０−２から入力される人クラスタデータｄ１（２２）と、位置を示す情報が所定の範囲内にある人クラスタデータが他にないと判別する。この場合、人統合処理部３０は、人クラスタデータｄ１（２２）に他の人クラスタデータを統合しない（ステップＳ２０１）。次に、人統合処理部３０は、人クラスタデータｄ１（２２）にＩＤ２を割り当てる（ステップＳ２０２）。また、人統合処理部３０は、人クラスタデータｄ１（２２）に含まれる高さを示す情報を抽出する。
【００５４】
次に、人統合処理部３０は、ＩＤ１の人データ、ＩＤ２の人データを生成する（ステップＳ２０３）。
次に、人統合処理部３０は、各ＩＤをトラッキングする。トラッキングは、例えば時刻ｔ１（図２）のときに割り当てられた各ＩＤに含まれる統合後の人クラスタデータが、サンプリング時間Δｔ毎に、所定の範囲ないにある場合、同じＩＤであると判別する。所定の範囲とは、例えば、サンプリング時間Δｔに人が歩いて移動したときに、人クラスタデータが移動可能な範囲等である。さらに、人統合処理部３０は、同じＩＤであると判別された人データに含まれる高さを示す情報をトラッキングする（ステップＳ２０４）。
【００５５】
図７は、本実施形態に係るトラッキングを行った結果の例を示す図である。なお、図７に示す例は、ＩＤ４〜ＩＤ７の４人が検出された例である。また、図７に示したクラスタ高さとは、人統合処理部３０によって抽出されたＩＤ毎の最も高さが高い測距点のｚ軸成分の値である。
【００５６】
図７において、横軸は時間、縦軸はクラスタの高さである。また、符号ｇ１０１の曲線は、人統合処理部３０によってＩＤ４が割り振られた人のクラスタ高さの時間変化、符号ｇ１０２の曲線は、ＩＤ５が割り振られた人のクラスタ高さの時間変化、符号ｇ１０３の曲線は、ＩＤ６が割り振られた人のクラスタ高さの時間変化、符号ｇ１０４の曲線は、ＩＤ７が割り振られた人のクラスタ高さの時間変化を表す曲線である。
【００５７】
時刻ｔ２１は、制御部１０２が、記憶部１０１に記憶されているシナリオ情報に基づいて、音声信号「Ａについて聞きたい人は、手を挙げてください」を、音声出力部１０３から出力した時刻である。
【００５８】
曲線ｇ１０１〜ｇ１０４それぞれは、ＩＤ４〜ＩＤ７が割り振られたクラスタ高さの変化である。曲線ｇ１０１が示すように、ＩＤ４のクラスタ高さは、約１６２０［ｍｍ］であり、時刻ｔ２２においてトラッキングが失敗している。なお、トラッキングが失敗するとは、トラッキングを行っていた人クラスタデータが消失した場合などに発生する。人クラスタデータが消失は、例えば、人が検出領域（所定の範囲）外に移動した場合などに発生する。
【００５９】
曲線ｇ１０２が示すように、ＩＤ５のクラスタ高さは、時刻ｔ２１〜ｔ２５の期間、約１５５０［ｍｍ］であり、時刻ｔ２５においてクラスタ高さが約１８００［ｍｍ］に変化している。
また、曲線ｇ１０３に示すように、ＩＤ６のクラスタ高さは、時刻ｔ２１〜ｔ２３の期間、約１５８０［ｍｍ］であり、時刻ｔ２３においてクラスタ高さが約１９００［ｍｍ］に変化し、時刻ｔ２４においてトラッキングが失敗している。
曲線ｇ１０４に示すように、ＩＤ７のクラスタ高さは、時刻ｔ２１〜ｔ２６の期間、約１４８０［ｍｍ］のまま、変化していない。
【００６０】
＜グリッドデータの生成＞
次に、ステップＳ４（図３）で行われるグリッドデータの生成について説明する。
図８は、本実施形態に係るＬＲＦセンサ１０による測定とセンシング処理部２０とグリッド統合処理部４０による処理を説明する図である。図８では、図４と同様に、紙面に向かって左右方向をｘ軸方向、奥行き方向をｙ軸方向、高さ方向をｚ軸方向とする。また、検出対象の空間には、予めグリッドａ（１、１）〜ａ（３、５）を設定しておく。グリッドは、縦Ｌ２、横Ｌ２であり、Ｌ２は例えば１０ｃｍである。なお、図４と同様のものについては、同じ符号を用いて説明を省略する。また、図８に示す例では、図４と同様に、所定の高さ以上の測距点を示している。
【００６１】
グリッドａ（１、１）〜ａ（３、５）の各頂点の座標値は、予めセンシング処理部２０に記憶されている。例えば、グリッドａ（１、１）のｘｙ座標値それぞれは、左下の頂点ｃ１（０、０）、左上の頂点ｃ２が（１０、０）、右上の頂点ｃ３が（１０、１０）、右下の頂点ｃ４が（０、１０）である。センシング処理部２０は、この範囲にある投影点を、このグリッドａ（１、１）の投影点として分類する。
【００６２】
図９は、本実施形態に係るグリッドデータの生成の処理手順のフローチャートである。
（ステップＳ３０１）センシング処理部２０は、ステップＳ１０１（図５）後、投影した投影点を、グリッド毎に分類する。センシング処理部２０は、処理をステップＳ３０２に進める。
（ステップＳ３０２）センシング処理部２０は、グリッド毎に、グリッドに含まれる投影点に対応する測距点のｚ軸成分の最大値を抽出し、抽出したｚ軸成分を、そのグリッドの高さを示す情報とする。センシング処理部２０は、処理をステップＳ３０３に進める。
（ステップＳ３０３）センシング処理部２０は、グリッド毎に、グリッドの位置を示す情報と、抽出したグリッドの高さを示す情報と関連づけてグリッドデータを生成する。
【００６３】
図８に示した例では、センシング処理部２０−１は、投影点１４２〜１４６をグリッドａ（１、４）に分類し、投影点１４２に対応する測距点１２２のｚ軸成分を、高さを示す情報として抽出する。そして、センシング処理部２０−１は、グリッドａ（１、４）の位置を示す情報と、測距点１２２のｚ軸成分である高さを示す情報とを関連づけてグリッドデータｄ２（１１）を生成する。
【００６４】
また、センシング処理部２０−２は、投影点１４１〜１４６をグリッドａ（１、４）に分類し、投影点１４１に対応する測距点１２１のｚ軸成分を、高さを示す情報として抽出する。さらに、センシング処理部２０−２は、投影点１５１〜１５３をグリッドａ（１、５）に分類し、投影点１５２に対応する測距点１３２のｚ軸成分を、高さを示す情報として抽出する。そして、センシング処理部２０−２は、グリッドａ（１、４）の位置を示す情報と、測距点１２１のｚ軸成分である高さを示す情報とを関連づけてグリッドデータｄ２（２１）を生成し、グリッドａ（１、５）の位置を示す情報と、測距点１３２のｚ軸成分である高さを示す情報とを関連づけてグリッドデータｄ２（２２）を生成する。
なお、センシング処理部２０は、高さを示す情報が抽出されたグリッドのみグリッドデータを作成する。
【００６５】
＜グリッド統合処理部４０によって行われる統合処理＞
次に、ステップＳ５（図３）で行われる統合処理について説明する。
図１０は、本実施形態に係るグリッド統合処理部４０によって行われる統合処理手順のフローチャートである。
（ステップＳ４０１）グリッド統合処理部４０は、グリッドデータｄ２に含まれる位置を示す情報が一致する、センシング処理部２０−１〜２０−ｎから入力されるグリッドデータｄ２を統合する。グリッド統合処理部４０は、処理をステップＳ４０２に進める。
【００６６】
（ステップＳ４０２）グリッド統合処理部４０は、統合後、グリッドの高さを示す情報が複数ある場合、最大値を抽出し、抽出した高さを示す情報を、そのグリッドの高さ値に決定する。グリッド統合処理部４０は、処理をステップＳ４０３に進める。
（ステップＳ４０３）グリッド統合処理部４０は、高さを示す情報を有している統合後のグリッド数をカウントし、グリッド数とする。次に、グリッド統合処理部４０は、高さを示す情報を有する全てのグリッドの高さ値を加算し、グリッド数で除算することで、グリッドの高さの平均値を算出する。
【００６７】
例えば、グリッド統合処理部４０は、高さを示す情報を有するグリッドの高さであるｚ軸方向の値の平均値Ｚａｖｅを、次式（１）を用いて算出する。
【００６８】
平均値Ｚａｖｅ＝Σ（各グリッドのｚ軸方向の高さ）／（高さを示す情報が付加されているグリッド数）  …（１）
【００６９】
図８に示す例において、平均値Ｚａｖｅは、｛グリッドａ（１、４）の高さ（測距点１２１のｚ軸方向の成分）＋グリッドａ（１、５）の高さ（測距点１３２のｚ軸方向の成分）｝／２である。
次に、グリッド統合処理部４０は、時刻ｔ５（図２）のときの高さを示す情報を有するグリッドの高さの平均値Ｚａｖｅを、式（１）を用いて算出する。
【００７０】
例えば、図８に示した人ｈｕ１の身長が１７３［ｃｍ］、人ｈｕ２の身長が１６８［ｃｍ］であり、人ｈｕ１が手を挙げたときの高さが２１０［ｃｍ］、人ｈｕ２が手を挙げたときの高さが１９５［ｃｍ］であるとする。
期間ｐ４（図２）のとき、人ｈｕ１と人ｈｕ２が２人とも手を挙げている場合、手を挙げている期間ｐ４におけるグリッドの高さの平均値Ｚａｖｅは、２０２．５［ｃｍ］（＝（２１０［ｃｍ］＋１９５［ｃｍ］）／２）である。この場合、期間ｐ４における最大値Ｚｍａｘは、平均値Ｚａｖｅであるとする。このまた、手を下げている時刻ｔ５のときのグリッドの高さの平均値Ｚａｖｅは、１７０．５［ｃｍ］（＝（１７３［ｃｍ］＋１６８［ｃｍ］）／２）である。期間ｐ４の最大値Ｚｍａｘ２０２．５［ｃｍ］と、時刻ｔ５のときの平均値Ｚａｖｅ１７０．５［ｃｍ］とを比較すると、差は３２［ｃｍ］である。
【００７１】
また、図８において、期間ｐ４のとき、人ｈｕ１のみが手を挙げている場合、手を挙げている期間ｐ４におけるグリッドの高さの平均値Ｚａｖｅは、１８９［ｃｍ］（＝（２１０［ｃｍ］＋１６８［ｃｍ］）／２）である。同様に、期間ｐ４における最大値Ｚｍａｘは、平均値Ｚａｖｅであるとする。また、手を下げている時刻ｔ５のときのグリッドの高さの平均値Ｚａｖｅは、１７０．５［ｃｍ］（＝（１７３［ｃｍ］＋１６８［ｃｍ］）／２）である。期間ｐ４の最大値Ｚｍａｘ１８９［ｃｍ］と、時刻ｔ５のときの平均値Ｚａｖｅ１７０．５［ｃｍ］とを比較すると、差は１８．５［ｃｍ］である。
すなわち、期間ｐ４の最大値Ｚｍａｘと時刻ｔ５のときの平均値Ｚａｖｅとの差が大きい程、手を挙げている人数が多いことになる。
【００７２】
例えば、ロボット１は、シナリオ情報に応じて、図３に示した処理を３回繰り返すことで、三択を検出領域にいる人たちに行わせるとする。
状況推定部５０は、１回目の時刻ｔ１（１）において、音声信号「Ａについて聞きたい人は、手を挙げてください」を、音声出力部１０３から出力させる。そして、１回目の期間ｐ４（１）の最大値と時刻ｔ５（１）のときの平均値との差Δｇ１を算出する。
次に、状況推定部５０は、２回目の時刻ｔ１（２）（＝時刻ｔ１１、図２）において、音声信号「Ｂについて聞きたい人は、手を挙げてください」を、音声出力部１０３から出力させる。そして、２回目の期間ｐ４（２）の平均値と時刻ｔ５（２）（＝時刻ｔ１５、図２）のときの平均値との差Δｇ２を算出する。
【００７３】
次に、状況推定部５０は、３回目の時刻ｔ１（３）において、音声信号「Ｃについて聞きたい人は、手を挙げてください」を、音声出力部１０３から出力させる。そして、３回目の期間ｐ４（３）の平均値と時刻ｔ５（３）のときの平均値との差Δｇ３を算出する。
状況推定部５０は、このように算出した差Δｇ１〜Δｇ３を比較することで、質問のＡ〜Ｃのうち、どの質問に対する挙手が最も多かったかを推定する。
【００７４】
以上のように、本実施形態に係る動作推定装置３において、人の反応は、人が挙手を行っている反応か挙手を行っていない反応かであり、状況推定部（例えば状況推定部５０）は、人の反応を複数回推定して、複数回推定した結果に基づいて、多数決の判定を行う。
この構成によって、本実施形態の動作推定装置３は、多数決の判定を行うことができる。
【００７５】
なお、上述した例では、センシング処理部２０が、高さ情報が抽出できたグリッドのみグリッドデータを生成する例を説明したが、これに限られない。センシング処理部２０は、高さを示す情報がないグリッドについては高さを示す情報として、例えば０を関連づけてグリッドデータを生成するようにしてもよい。この場合、グリッド統合処理部４０は、ステップＳ４０３において、高さ情報が０より大きい値のグリッドの数をグリッド数とし、また、高さを示す情報が０より大きい値をグリッドの高さ値とするようにしてもよい。
【００７６】
図８に示す例において、グリッド統合処理部４０は、センシング処理部２０−１から入力されたグリッドデータｄ２（１１）と、センシング処理部２０−２から入力されたグリッドデータｄ２（２１）とにそれぞれ含まれる位置を示す情報が一致するため、１つのグリッドのグリッドデータとして統合する。グリッド統合処理部４０は、複数のセンシング処理部２０から入力される高さを表す情報が一致しない場合、複数のセンシング処理部２０から入力される高さを表す情報のｚ軸成分同士を比較し、値が大きいｚ軸成分を最大値として抽出する。
また、グリッド統合処理部４０は、センシング処理部２０−２から入力されたグリッドデータｄ２（２２）に含まれる位置を示す情報と一致する他のグリッドデータがないため、他のグリッドデータとの統合を行わない。そして、グリッド統合処理部４０は、高さを表す情報である測距点１３２のｚ軸成分を最大値として抽出する。
そして、グリッド統合処理部４０は、測距点１２１と１３２とのｚ軸成分の加算値を、グリッド数の２で除算してグリッド高さを算出する。
【００７７】
＜第１処理及び第２処理を行うタイミング＞
次に、第１処理及び第２処理を行うタイミングについて説明する。
図１１は、本実施形態に係る第１処理及び第２処理を行うタイミングを説明する図である。
図１１において、図７と同様に、横軸は時間、縦軸はクラスタの高さである。また、曲線ｇ１１１〜ｇ１１４それぞれは、人統合処理部３０によってＩＤ４〜ＩＤ７が割り振られた人のクラスタ高さの時間変化である。図１１に示した例では、ＩＤ４〜ＩＤ７が割り振られた４人をトラッキングできたときの結果である。なお、制御部１０２は、時刻ｔ３１において時刻ｔ１（図２）と同様の音声信号「Ａについて聞きたい人は、手を挙げてください」の出力を開始させ、時刻ｔ３５において時刻ｔ４（図２）と同様の音声信号「はい、わかりました」の出力を開始させる。
【００７８】
時刻ｔ３２において、曲線ｇ１１３が示すようにＩＤ６が割り振られた人のクラスタ高さが増え、時刻ｔ３３において、曲線ｇ１１２が示すようにＩＤ５が割り振られた人のクラスタ高さが増え、時刻ｔ３４において、曲線ｇ１１１が示すようにＩＤ４が割り振られた人のクラスタ高さが増える。曲線ｇ１１４が示すようにＩＤ７が割り振られた人のクラスタ高さは、所定の閾値未満の変化である。
【００７９】
時刻ｔ３６において、符号ｇ１１３のようにＩＤ６が割り振られた人のクラスタ高さが減り、時刻ｔ３７において、符号ｇ１１１のようにＩＤ４が割り振られた人のクラスタ高さが減り、時刻ｔ３８において、符号ｇ１１２のようにＩＤ５が割り振られた人のクラスタ高さが減る。
【００８０】
図１１が示すように、検出領域に複数の人がいて、その中の何人かが手を挙げる場合、手を挙げるタイミングには、ばらつきが多い。例えば、周りにいる人が手を挙げたことを確認してから、手を挙げる場合もある。例えば、図１１に示した時刻ｔ３２と時刻３４との時間差は、例えば３秒である。さらに、複数の人がいつ手を挙げ始めるかが不明である。このように、手を挙げたことを検出しようとすると、図１１において、例えば時刻ｔ３１〜時刻３５の間、検出を行う必要がある。
【００８１】
一方、図１１に示した時刻ｔ３６と時刻ｔ３８との時間差は、例えば１秒である。すなわち、図１１に示すように、音声信号「はい、わかりました」が出力された時刻ｔ３５から所定の時間が経過すると、手を挙げていた人たちは、短い時間内に手を下げていることになる。
このため、本実施形態では、時刻ｔ３５において音声信号「はい、わかりました」が出力されたことをトリガー信号とし、手を挙げていると推定される、トリガー信号が入力される時刻より所定の時間前の間に第１処理を行う。そして、本実施形態では、トリガー信号が入力される時刻より所定の時間後に第２処理を行い、第１処理と第２処理との結果を比較することで、手を挙げている人数を検出する。所定の時間は、例えば２秒間である。
【００８２】
＜第１処理＞
次に、ステップＳ８（図３）で行われる第１処理について説明する。
まず、状況推定部５０が人データｄ３を用いて行う第１処理について、図２を用いて説明する。
状況推定部５０は、期間（ｐ２−ｐ４）経過後〜期間ｐ２経過後まで、すなわち時刻ｔ３〜ｔ４の間、ＩＤ毎に人データｄ３に含まれる高さを示す情報の中から最大値を検出する。最大値の検出は、例えば、時刻ｔ−Δｔ（サンプリング時間）と時刻ｔとの高さを示す情報を比較し、値が大きい方を最大値として保持することで検出する。
状況推定部５０は、時刻ｔ３〜ｔ４の間に検出された最大値を、そのＩＤの第１クラスタ高さ値として、記憶部６０に記憶させる。
【００８３】
次に、状況推定部５０がグリッド高さを示す情報ｄ４を用いて行う第１処理について、図２を用いて説明する。
状況推定部５０は、時刻ｔ３〜ｔ４の間、グリッド高さを示す情報ｄ４の中から最大値を検出する。状況推定部５０は、時刻ｔ３〜ｔ４の間に検出された最大値を、第１グリッド高さ値として、記憶部６０に記憶させる。
【００８４】
＜第２処理＞
次に、ステップＳ９（図３）で行われる第２処理について説明する。
まず、状況推定部５０が人データｄ３を用いて行う第２処理について、図２を用いて説明する。
状況推定部５０は、期間（ｐ２＋ｐ４）経過後、すなわち時刻ｔ５のとき、ＩＤ毎に人データに含まれる高さを示す情報を検出する。状況推定部５０は、時刻ｔ５のときに抽出された値を、そのＩＤの第２クラスタ高さ値として、記憶部６０に記憶させる。
【００８５】
次に、状況推定部５０がグリッド高さを示す情報ｄ４を用いて行う第２処理について、図２を用いて説明する。
状況推定部５０は、時刻ｔ５のときのグリッド高さを示す情報ｄ４を、第２グリッド高さ値として、記憶部６０に記憶させる。
【００８６】
＜比較処理＞
次に、ステップＳ１０及びＳ１１（図３）で行われる比較処理及び推定処理について説明する。
まず、状況推定部５０が人データｄ３に対して行う比較処理及び推定処理について説明する。
状況推定部５０は、ＩＤ毎に、記憶部６０に記憶させた第１クラスタ高さ値と第２クラスタ高さ値とを読み出し、読み出した第１クラスタ高さ値と第２クラスタ高さ値とを比較することで、ＩＤ毎に手を挙げているか否かを判別する。
状況推定部５０は、例えば、第１クラスタ高さ値から第２クラスタ高さ値を減算した値が所定の値以上の時、手を挙げていると判別する。または、状況推定部５０は、例えば、第１クラスタ高さ値を第２クラスタ高さ値で除算した値が所定の値以上の時、手を挙げていると判別する。
【００８７】
次に、状況推定部５０がグリッド高さを示す情報ｄ４に対して行う比較処理及び推定処理について説明する。
状況推定部５０は、記憶部６０に記憶させた第１グリッド高さ値と第２グリッド高さ値とを読み出し、読み出した第１グリッド高さ値と第２グリッド高さ値とを比較することでグリッド高さの変化量を算出する。
状況推定部５０は、例えば、第１グリッド高さ値から第２グリッド高さ値を減算した値をグリッド高さ変化量としてもよく、または、第１グリッド高さ値を第２グリッド高さ値で除算した値をグリッド高さ変化量としてもよい。
【００８８】
次に、状況推定部５０が、上述した人統合処理部３０が検出した検出結果と、グリッド統合処理部４０が検出した検出結果のいずれか一方を用いる例を説明する。
状況推定部５０は、以下のような条件に応じて、人統合処理部３０が検出した検出結果か、グリッド統合処理部４０が検出した検出結果かを選択する。
（条件１）人統合処理部３０から入力されたトラッキング結果に基づいて選択
トラッキングを失敗した回数または失敗した率が所定の値未満の場合、人統合処理部３０が検出した検出結果を選択し、トラッキングを失敗した回数または失敗した率が所定の値以上の場合、グリッド統合処理部４０が検出した検出結果を選択する。
（条件２）人の密集度に基づいて選択
グリッド毎の密集度を検出し、検出したグリッド毎の密集度が所定の値未満の場合、人統合処理部３０が検出した検出結果を選択し、検出したグリッド毎の密集度が所定の値以上の場合、グリッド統合処理部４０が検出した検出結果を選択する。なお、本実施形態における密集度とは、例えば、所定の面積内にいる人数に基づく指標である。
【００８９】
以上のように、本実施形態の動作推定装置３は、センサ（例えばＬＲＦセンサ１０）と対象物（人）との距離（例えば人の高さ方向の値）を取得する取得部（例えばセンシング処理部２０）と、人に対して挙手の終了を促した時刻（例えば時刻ｔ４）に基づき設定される第１時刻（例えば時刻ｔ３またはｔ５）における取得部によって取得された距離に基づいて人の反応を推定する状況推定部（例えば状況推定部５０）と、を備える。
【００９０】
この構成によって、本実施形態の動作推定装置３では、人が手を下げたタイミングで、ＬＲＦセンサ１０によって測定された測距点に基づいて、人の反応である手が下がった人数を、手を挙げた人数として推定し、または手を下げた人の割合（＝手を挙げた人の割合）である高さの変化量を推定する。これにより、本実施形態の動作推定装置３は、手が挙げられる期間に比べて短時間に精度良く人の反応を推定することができる。
【００９１】
また、本実施形態の動作推定装置３において、状況推定部（例えば状況推定部５０）は、人に対して挙手の終了を促した時刻に基づき設定される第１期間（例えば時刻ｔ３からｔ４の期間ｐ４、または時刻ｔ４〜ｔ５の期間ｐ６）における取得部によって取得された距離（例えば人の高さ方向の値）に基づいて人の反応を推定する。
また、本実施形態の動作推定装置３において、状況推定部（例えば状況推定部５０）は、第１時刻（例えば時刻ｔ３）と第１期間（例えば時刻ｔ３からｔ４の期間ｐ４）それぞれにおける対象物（例えば人）の高さ方向の距離を抽出し、第１時刻に抽出した高さ方向の距離と、第１期間に抽出した高さ方向の距離とを比較することで、人の反応を推定する。
【００９２】
また、本実施形態の動作推定装置３において、取得部（例えばセンシング処理部２０）によって取得された距離（例えば人の高さ方向の値）に基づいて人を検出し、検出した人毎に識別子（例えばＩＤ）を付与する人処理部（例えば人統合処理部３０）、を備え、状況推定部（例えば状況推定部５０）は、人処理部によって識別子が付与された人の距離を用いて、第１時刻（例えば時刻ｔ３）と第１期間（例えば時刻ｔ３からｔ４の期間ｐ４）それぞれにおける識別子毎の高さ方向の距離を抽出し、第１時刻と第１期間それぞれにおける抽出した識別子毎の高さ方向の距離同士を比較することで、人の反応を推定する。
【００９３】
この構成によって、本実施形態の動作推定装置３では、人が手を下げる前の期間に人が手を挙げているときの高さ方向の値と、人が手を下げたときの高さ方向の値とに基づいて、手を挙げている人数を検出することができる。
【００９４】
また、本実施形態の動作推定装置３において、人の反応を推定する所定の範囲を１つ以上の領域に分割し、取得部（例えばセンシング処理部２０）によって取得された距離に基づいて該領域毎の距離（例えば人の高さ方向の値）を求める領域距離処理部（例えばグリッド統合処理部４０）、を備え、状況推定部（例えば状況推定部５０）は、人処理部（例えば人統合処理部３０）によって識別子（例えばＩＤ）が付与された人の距離と、領域距離処理部によって求められた距離のうち、すくなくとも１つの距離によって人の反応を推定する。
【００９５】
この構成によって、本実施形態の動作推定装置３では、手を挙げている期間と、手を下げたときとの、領域における高さ方向の変化量を推定することができる。そして、動作推定装置３では、推定された結果に基づいて、多数決によってどの質問への挙手が最も多いかを推定することができる。
【００９６】
なお、本実施形態では、動作推定装置３の状況推定部５０が、人統合処理部３０の処理結果またはグリッド統合処理部４０の処理結果のいずれかを選択して、選択した結果を処理部２に出力する例を説明したが、これに限られない。状況推定部５０は、人統合処理部３０の処理結果、及びグリッド統合処理部４０の処理結果の両方を処理部２に出力し、処理部２がどちらの処理結果を用いるか選択するようにしてもよい。
【００９７】
また、本実施形態では、手を下げることに基づくタイミングに基づいて、トリガー信号ｄ５を生成する例を説明したが、これに限られない。動作推定装置３は、例えば手を挙げることを促すタイミングに基づいて、手を下げる音声信号を出力するまでの時刻を算出し、算出した時刻に基づいて、手を挙げている期間である期間ｐ４、また手を下げるときの時刻ｔ５を算出するようにしてもよく、このタイミングで制御部１０２が動作推定装置３にトリガー信号ｄ５を出力するようにしてもよい。
【００９８】
また、本実施形態では、シナリオ情報、手を下げることを促すタイミングに基づいて、第１処理及び第２処理（図３）を行う例を説明したが、これに限られない。
状況推定部５０は、グリッド統合処理部４０によって算出される高さを示す情報が抽出されたグリッドに高さの平均値をサンプリングタイム毎に取得するようにしてもよい。そして、状況推定部５０は、取得した高さを示す情報が抽出されたグリッドに高さの平均値が、予め定められている値より小さくなったか否かを判別し、予め定められている値より小さくなったと判別したとき、検出領域にいる人達の手が下がったときと判別するようにしてもよい。そして、状況推定部５０は、検出領域にいる人達の手が下がったときに基づいて、手が上がっている期間、及び手が下がっているときを決定するようにしてもよい。この場合、動作推定装置３は、人統合処理部３０によって処理された結果と、グリッド統合処理部４０によって処理された結果それぞれを、時刻を示す情報と関連づけて記憶部６０に記憶させ、決定した期間及び時刻の情報を記憶部６０から読み出して第１処理及び第２処理を行うようにしてもよい。
【００９９】
以上のように、本実施形態の動作推定装置３において、第１時刻（例えば時刻ｔ３またはｔ５）または第１期間（例えば時刻ｔ３からｔ４の期間ｐ４）は、領域距離処理部（例えばグリッド統合処理部４０）によって測定される距離（例えば高さ方向の値）の変化が所定の値より小さくなったときに対応して決定される。
【０１００】
この構成によって、本実施形態の動作推定装置３では、シナリオ情報によらず、ＬＲＦセンサ１０によって測定された測距点がグリッド統合処理部４０によって処理された結果にもとづいて、手を挙げている期間および手を下げた期間を決定することができる。この結果、本実施形態では、トリガー信号ｄ５を用いなくても、人が手を挙げている人数の推定、または人の手の高さの変化量を推定することができる。
【０１０１】
［第２実施形態］
図１２は、本実施形態に係るロボット１Ａの概略のブロック図である。
図１２に示すように、ロボット１Ａは、処理部２、及び動作推定装置３Ａを含んで構成される。ロボット１Ａは、ｎ（ｎは１以上の整数）個のＬＲＦセンサ１０−１〜１０−ｎに無線または有線で接続される。なお、ロボット１と同じ機能を有する機能部については、同じ符号を用いて説明を省略する。また、ＬＲＦセンサ１０−１〜１０−ｎのうちいずれか１つを特定しない場合は、ＬＲＦセンサ１０という。なお、イベント会場等で用いられるガイドシステム等が動作推定装置３Ａを備えるようにしてもよい。
【０１０２】
動作推定装置３Ａは、ｎ個のセンシング処理部２０Ａ−１〜２０Ａ−ｎ、人統合処理部３０、グリッド統合処理部４０、状況推定部５０Ａ、及び記憶部６０Ａを備える。センシング処理部２０Ａ−１〜２０Ａ−ｎのうちいずれか１つを特定しない場合は、センシング処理部２０Ａという。また、ロボット１と同様に、ＬＲＦセンサ１０−１〜１０−ｎそれぞれは、対応するセンシング処理部２０Ａ−１〜２０Ａ−ｎに無線または有線を介して接続されている。また、動作推定装置３Ａは、ＬＲＦセンサ１０を含んで構成されていてもよい。
【０１０３】
センシング処理部２０Ａは、ＬＲＦセンサ１０から入力された測距点の情報ｄ７を、状況推定部５０Ａに出力する。
センシング処理部２０Ａは、ＬＲＦセンサ１０から入力された検出結果を用いて、例えば所定の周期毎に測距点を分類する（クラスタリング）。センシング処理部２０Ａは、分類したクラスタ毎の重心位置を算出し、算出した重心位置を、位置を示す情報とする。センシング処理部２０Ａは、分類したクラスタ毎に高さの最大値を抽出し、抽出した最大値を、高さを示す情報とする。そして、センシング処理部２０Ａは、クラスタ毎に、位置を示す情報と高さを示す情報とを関連づけて人クラスタデータｄ１を生成し、生成した人クラスタデータｄ１を人統合処理部３０に出力する。
【０１０４】
また、センシング処理部２０Ａは、ＬＲＦセンサ１０から入力された検出結果を用いて、例えば所定の周期毎に測距点を、予め定められているグリッドに分類する。センシング処理部２０Ａは、分類したグリッド毎に高さの最大値を抽出し、抽出した最大値を、高さを示す情報とする。そして、センシング処理部２０Ａは、グリッド毎に、グリッドの位置を示す情報と高さを示す情報とを関連づけてグリッドデータｄ２を生成し、生成したグリッドデータｄ２をグリッド統合処理部４０に出力する。
【０１０５】
状況推定部５０Ａは、制御部１０２から入力されるトリガー信号ｄ５に基づいて、センシング処理部２０Ａから入力される測距点の情報ｄ７を統合して、手が下げられている期間の平均の第１マップ（Ａｚ）と、手が挙げられているときの第２マップ（Ｂ）とを生成する。なお、手が下げられている期間とは、手を挙げることを促す音声信号が出力されるまでの期間、例えば、図２において、時刻ｔ０〜ｔ１の間である。
【０１０６】
また、状況推定部５０Ａは、生成した平均の第１マップ（Ａｚ）に記憶部６０Ａに記憶されている体格データを乗じて、人の手が存在できるｚ値の最大値の第３マップ（ＡｚＭａｘ）と、ｚ値の最小値の第４マップ（ＡｚＭｉｎ）とを生成する。状況推定部５０Ａは、生成した第２マップと、第３マップ及び第４マップとを比較することで、手が挙げられていることによると推定されるｘｙ平面における第５マップ（Ｃ）を生成する。状況推定部５０Ａは、生成した第５マップに対してクラスタの分類を行って手を挙げている人数を推定する。
【０１０７】
状況推定部５０Ａは、状況推定部５０と同様に、人統合処理部３０によって処理された結果を用いて、手を挙げている人数を推定する。さらに、状況推定部５０Ａは、状況推定部５０と同様に、グリッド統合処理部４０によって処理された結果を用いて、グリッド高さの変化量を推定する。
さらに、状況推定部５０Ａは、予め定められている条件、または人統合処理部３０とグリッド統合処理部４０とセンシング処理部２０Ａとのうち少なくとも１つから入力された結果に基づいて、手を挙げている人数、または手を挙げていることによるグリッド高さの変化量を推定し、推定した結果を制御部１０２に出力する。
【０１０８】
記憶部６０Ａには、第１クラスタ高さ値、第２クラスタ高さ値、第１グリッド高さ値、第２グリッド高さ値に加えて、人の体格データが記憶される。人の体格データとは、身長と手首の橈骨茎突点との比、肩峰高と手首の橈骨茎突点との比である。なお、これらの人の体格データは、国や地域ごとに記憶されていてもよい。
【０１０９】
ここで、本実施形態における挙手判定における仮定と根拠とを説明する。
（仮定１）人の身長と腕の長さとには、統計的に相関があり、また、年齢、性別を問わずにほぼ一定であることが知られている。
（仮定２）一般的に、人は手をまっすぐ上に向けて上げる。
（仮定３）人が密集している場合、人は、近接する人の挙げた手と接触を避けるように、手を挙げることが多い。すなわち、人は、暗黙的に手のパーソナル空間のようなものを設定している。
（仮定４）人の体幹の厚さ（腹厚）以上には他人には近づけない傾向がある。
【０１１０】
図１３は、本実施形態に係る人の部位の高さを説明する図である。図１３において、肩峰高Ｈｓは、人が直立した時の床又は地面から肩峰付近までの高さである。身長Ｈｈは、人が直立した時の床又は地面から頭頂までの高さである。手首Ｈｗは、人が直立した時に、手を挙げた時の床又は地面から手首の橈骨茎突点までの高さである。
上述した仮定１のように、身長Ｈｈに対する手首Ｈｗの比率と、身長Ｈｈに対する肩峰高Ｈｓとの比率とには、大きな差異がない。このため、人が挙手した時に手がある手首Ｈｗの高さは、子供も大人も関係なく身長Ｈｈまたは肩峰高Ｈｓから暗黙的な比率によりにわかる。
このため、本実施形態では、測距点が、頭の位置の高さ（＝身長Ｈｈ）から手を挙げたときの高さ（＝手首Ｈｗ）の比率と、肩峰高Ｈｓから手を挙げたときの高さ（＝手首Ｈｗ）の比率との間にある場合、手であると判別する。
【０１１１】
図１４Ａは、人が手を下げているイメージ図である。図１４Ｂは、本実施形態に係る人が手を下げている期間のｘｙｚ値の第１マップの例を説明する図である。図１４Ａに示す例では、代表として１個のＬＲＦセンサ１０のみを示しているが、ＬＲＦセンサ１０は、第１実施形態と同様にｎ個が例えば天井に設置されている。また、図１４Ａ及び図１４Ｂに示す例では、５人（人ｈｕ１〜人ｈｕ５）に対応する測距点が、ＬＲＦセンサ１０によって測定された場合の例である。
図１４Ｂでは、紙面に向かって左右方向をｘ軸方向、奥行き方向をｙ軸方向、高さ方向をｚ軸方向とする。図１４Ｂにおいて、点は測距点を表している。また、図１４Ｂに示す第１マップは、１回のサンプリングによって取得された測距点による第１マップ（Ａ）である。
【０１１２】
図１５Ａは、人が手を挙げているイメージ図である。図１５Ｂは、本実施形態に係る人が手を挙げている期間のｘｙｚ値の第２マップの例を説明する図である。また、図１５Ａ及び図１５Ｂに示す例では、５人（人ｈｕ１〜人ｈｕ５）に対応する測距点が、ＬＲＦセンサ１０によって測定された場合の例である。
図１５Ｂでは、紙面に向かって左右方向をｘ軸方向、奥行き方向をｙ軸方向、高さ方向をｚ軸方向とする。図１５Ｂにおいて、点は測距点を表している。また、図１５Ｂに示す第１マップは、所定の時刻に取得された測距点による第２マップ（Ｂ）である。
図１５Ａ及び図１５Ｂに示した例では、人ｈｕ２と人ｈｕ４が手を挙げている例である。
【０１１３】
次に、状況推定部５０Ａが行う処理を説明する。
図１６は、本実施形態に係る状況推定部５０Ａが第１マップ〜第５マップを用いて行う処理を説明する図である。図１７は、本実施形態に係る状況推定部５０Ａがクラスタリングを行って手を挙げている人数を推定する処理を説明する図である。図１８は、本実施形態に係る状況推定部５０Ａの処理手順のフローチャートである。また、図１６では、紙面に向かって左右方向をｘ軸方向、奥行き方向をｙ軸方向、高さ方向をｚ軸方向とする。図１７では、紙面に向かって左右方向をｘ軸方向、奥行き方向をｙ軸方向とする。
また、以下の処理の説明において、状況推定部５０Ａが第１マップ〜第５マップを用いて行う処理のみを説明するが、状況推定部５０Ａは、第１実施形態と同様に、ステップＳ１〜Ｓ１１（図３）の処理も行う。
【０１１４】
（ステップＳ５０１）状況推定部５０Ａは、手が下げられている期間における測距点の情報をサンプリングタイミング毎にセンシング処理部２０Ａから取得して、取得した測距点を統合する。次に、状況推定部５０Ａは、統合された測距点を用いて図１６の符号ｍ３０１が示す領域の図のような第１マップ（Ａ）を生成する。例えば、時刻ｔ０（図２）から、制御部１０２から時刻ｔ１における音声信号を出力することを示すトリガー信号ｄ５が入力される時刻ｔ１までの間のサンプリング数が１０個の場合、第１マップ（Ａ）が状況推定部５０Ａによって１０個生成される。状況推定部５０Ａは、処理をステップＳ５０２に進める。
【０１１５】
（ステップＳ５０２）状況推定部５０Ａは、図１６の符号ｍ３０２が示す領域の図のような、手が下げられている期間におけるｘｙｚ値の平均値マップである平均の第１マップ（Ａｖ）を生成する。すなわち、ステップＳ５０２において、状況推定部５０Ａは、全ての測距点を手が下げられているときの値であるとみなす。状況推定部５０Ａは、処理をステップＳ５０３に進める。
（ステップＳ５０３）状況推定部５０Ａは、ステップＳ５０２で生成した平均の第１マップ（Ａｖ）のｚ軸成分の値に、記憶部６０Ａから読み出した手首Ｈｗと肩峰高Ｈｓとの比（Ｈｗ／Ｈｓ）を乗じて、図１６の符号ｍ３０３が示す領域の図のような第３マップ（ＡｚＭａｘ）を生成する。Ｈｗ／Ｈｓは、例えば、１．１である。この意味合いは、手が下げられているときに測定された測距点が肩峰だったとき、手が挙げられた場合の手首のｚ軸成分の値の上限値を算出している。状況推定部５０Ａは、処理をステップＳ５０４に進める。
【０１１６】
（ステップＳ５０４）状況推定部５０Ａは、ステップＳ５０２で生成した平均の第１マップ（Ａｖ）のｚ軸成分の値に、記憶部６０Ａから読み出した手首Ｈｗと身長Ｈｈとの比（Ｈｗ／Ｈｈ）を乗じて、図１６の符号ｍ３０４が示す領域の図のような第４マップ（ＡｚＭｉｎ）を生成する。Ｈｗ／Ｈｈは、例えば、１．３である。この意味合いは、手が下げられているときに測定された測距点が頭頂だったとき、手が挙げられた場合の手首のｚ軸成分の値の上限値を算出している。状況推定部５０Ａは、処理をステップＳ５０５に進める。
【０１１７】
（ステップＳ５０５）状況推定部５０Ａは、手が挙げられているときの測距点の情報をセンシング処理部２０Ａから取得して、取得した測距点を統合する。次に、状況推定部５０Ａは、統合された測距点を用いて図１６の符号ｍ３０５が示す領域の図のような第２マップ（Ｂ）を生成する。ステップＳ５０５においても、状況推定部５０Ａは、全ての測距点を手が下げられているときの値であるとみなす。状況推定部５０Ａは、処理をステップＳ５０６に進める。
【０１１８】
（ステップＳ５０６）状況推定部５０Ａは、ステップＳ５０５で生成した第２マップ（Ｂ）のうち、ステップＳ５０３で生成した第３マップ（ＡｚＭａｘ）より大きく、ステップＳ５０４で生成した第４マップ（ＡｚＭｉｎ）より小さいｚ軸成分の値を有する測距点を抽出する。状況推定部５０Ａは、この処理によって、手が挙げられたときに、手が存在すると思われるｚ軸成分の値を有する測距点を抽出している。状況推定部５０Ａは、処理をステップＳ５０７に進める。
【０１１９】
（ステップＳ５０７）状況推定部５０Ａは、抽出した測距点に含まれるｘ軸成分とｙ軸成分とをｘｙ平面に投影して、図１６の符号ｍ３０６が示す領域の図のような投影点による第５マップ（Ｃ）を生成する。すなわち、符号ｍ３０６が示す領域の図における点は投影点を表し、各投影は、ｘ軸成分及びｙ軸成分の各値を有している。状況推定部５０Ａは、処理をステップＳ５０８に進める。
【０１２０】
（ステップＳ５０８）状況推定部５０Ａは、ステップＳ５０７で生成した第５マップ（Ｃ）の投影点に対して、図１７の符号ｍ３０７が示す領域の図のように分類（クラスタリング）を行う。図１７において、符号ｃ１〜ｃ５が示す領域の投影点は、各クラスタに分類された投影点の集まりを表している。状況推定部５０Ａは、処理をステップＳ５０９に進める。
【０１２１】
（ステップＳ５０９）状況推定部５０Ａは、ステップＳ５０８で分類された結果に基づいて、手を挙げた人数を推定する。なお、状況推定部５０Ａは、ＬＲＦセンサ１０の測定性能に基づいて、クラスタに含まれる投影点が所定の値以下の場合、分類されたクラスタをノイズと判別する。図１７に示した例では、状況推定部５０Ａは、投影点が１つの場合、ノイズであると判別する。このため、符号ｃ１、ｃ４、及びｃ５に含まれる領域の投影点をノイズであると判別する。次に、状況推定部５０Ａは、ステップＳ５０９で判別された結果に基づいて、手を挙げている人数を推定する。図１７に示す例では、手を挙げていると判別されるクラスタは、符号ｃ２とｃ３に含まれる領域の投影点である。
動作推定装置３Ａは、シナリオ情報に基づいて、所定の質問を所定回数提示するまで、ステップＳ５０１〜Ｓ５０９を繰り返す。
【０１２２】
（ステップＳ５１０）状況推定部５０は、シナリオ情報に基づいて、所定の質問が所定回数提示された後、ステップＳ５０９で推定された質問毎の推定結果に基づいて、多数決判定を行う。具体的には、状況推定部５０は、設定されている条件に応じて、人統合処理部３０が処理した結果、グリッド統合処理部４０が処理した結果、また第１マップ〜第５マップを用いて処理した結果のうち、少なくとも１つを選択する。状況推定部５０Ａは、質問毎の手を挙げた人数に対する推定結果に応じて、対応する質問を選択する。
以上で、挙手検出の処理を終了する。
【０１２３】
以上のように、本実施形態の動作推定装置３Ａにおいて、状況推定部（例えば状況推定部５０）は、人が挙手を行っていない第２期間（例えば時刻ｔ０〜ｔ１の期間）における取得部（例えばセンシング処理部２０）によって取得された距離と、人の体格データとに基づいて算出される挙手をしたときに人の手が存在する高さ方向の範囲である挙手存在範囲（例えば第３マップ（ＡｚＭａｘ）〜第４マップ（ＡｚＭｉｎ））を算出し、算出した挙手存在範囲にある第１時刻（例えば時刻ｔ３またはｔ５）または第１期間（例えば時刻ｔ３からｔ４の期間ｐ４、または時刻ｔ４〜ｔ５の期間ｐ６）における取得部によって取得された距離（例えば第５マップ（Ｃ））を抽出し、抽出した距離に基づいて人の反応を推定する。
【０１２４】
この構成によって、本実施形態の動作推定装置３Ａは、個人を特定する必要がないので人が密集している領域が存在しても、挙手をした人数を推定することができる。また、本実施形態によれば、ＬＲＦセンサ１０の測定結果のバラツキによって測定値にばたつきがあっても、手を下げている所定の時間において、同期を行って加算しているため、ロバスト性を向上することができる。
【０１２５】
なお、第１実施形態及び第２実施形態では、記憶部１０１に記憶されているシナリオ情報に基づいて、処理部２がトリガー信号ｄ５を生成する例を説明したが、これに限られない。
例えば、プレゼンターが人であってもよい。この場合、プレゼンターは、検出領域にいる人に向けて質問を発するタイミングで、不図示の操作スイッチを押すことで、トリガー信号ｄ５を動作推定装置（３、または３Ａ）に出力するようにしてもよい。例えば、プレゼンターは、挙手を促す質問を発するときにＡボタンを押し、手を挙げることを促す音声を発するときにＢボタンを押し、全ての質問が終了したときにＣボタンを押すようにしてもよい。操作スイッチは、押されたボタンに応じたトリガー信号ｄ５を動作推定装置（３、または３Ａ）に出力するようにしてもよい。この場合であっても、動作推定装置（３、または３Ａ）は、入力されたトリガー信号ｄ５に応じて、所定の期間、及び所定の時刻に上述した処理を行うことで、多数決処理を行うことができる。
【０１２６】
なお、第１実施形態及び第２実施形態で説明した検出領域は、例えば１つの会場に限られない。検出領域は複数であってもよい。この場合、動作推定装置（３、または３Ａ）は、例えば会場毎に手を挙げている人数を推定、またはグリッド高さの変化量を推定し、全ての会場で推定した結果を状況推定部（５０、または５０Ａ）、あるいは制御部１０２が判別して多数決処理を行うようにしてもよい。そして、これらの会場は、離れていてもよく、会場が離れている場合は、複数の動作推定装置（３、または３Ａ）が処理結果を、例えば無線回線を介して、１つの動作推定装置（３、または３Ａ）に送信し、全ての処理結果を受信した動作推定装置（３、または３Ａ）が処理を行うようにしてもよい。動作推定装置（３、または３Ａ）が受信する処理結果は、例えばＬＲＦセンサ１０によって測距点の情報であってもよく、各会場に設置される動作推定装置（３、または３Ａ）によって処理された人データｄ３、グリッド高さ情報ｄ４、及び測距点の情報ｄ７であってもよい。
【０１２７】
このように、離れた複数の会場にロボット（１、１Ａ）を設置し、同期を行って処理を行う場合、ロボット（１、１Ａ）が出力する音声信号は、国や地域に合わせたものであってもよい。
【０１２８】
なお、第１実施形態及び第２実施形態では、人が質問に対して手を挙げたり下げたりする例を説明したがこれに限られない。例えば、検出領域にいる複数が、頭頂より高い高さにプラカード等を挙げたり下げたりする場合であっても、上述した処理によって多数決処理を行うことができる。
また、加速度センサやＧＰＳ（グローバル・ポジショニング・システム；Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）など位置検出を行える携帯端末を人が上げ下げするようにしてもよい。そして、動作推定装置（３、または３Ａ）は、これらの携帯端末が送信する情報を受信し、受信した情報も用いて、人が手を挙げたか否かの判別、手を挙げた人の人数等の人の反応を推定するようにしてもよい。
【０１２９】
なお、第１実施形態及び第２実施形態では、例えば図２を用いて説明したタイミングで処理を行う例を説明したが、これに限られない。
図１９は、人に対して挙手の終了を促した時刻、第１時刻、及び第１期間を説明する図である。
時刻ｔ１０１〜ｔ１０２の期間は、音声出力部１０３が人に対して挙手の終了を促す音声信号「てをさげてください」を出力した期間である。
【０１３０】
時刻ｔ４は、人に対して挙手の終了を促した時刻（第１時刻）である。すなわち、人に対して挙手の終了を促した時刻は、人に対して挙手の終了を促す音声信号が出力されている時刻ｔ１０１〜ｔ１０２の期間内であればよい。人に対して挙手の終了を促した時刻は、例えば、人に対して挙手の終了を促す音声信号が出力開始されたタイミングであってもよく、音声信号が終了したタイミングであってもよい。または、人に対して挙手の終了を促した時刻は、例えば、音声信号の「（を）さ（げ）」のタイミングであってもよく、音声信号の「だ」のタイミングであってもよい。
【０１３１】
時刻ｔ３及びｔ５は、人に対して挙手の終了を促した時刻に基づき設定される第１時刻である。
また、時刻ｔ３〜時刻ｔ４の期間ｐ４と、時刻ｔ４〜時刻ｔ５の期間ｐ６とは、人に対して挙手の終了を促した時刻に基づき設定される第１期間である。
【０１３２】
状況推定部５０は、例えば、第１実施形態と同様に、時刻ｔ４から期間ｐ４だけ前の間のデータ（例えば平均値、最大値、統計処理された値）を用いて検出された高さと、時刻ｔ４から期間ｐ６だけ後の時刻ｔ５のデータを用いて検出された高さと、を比較して挙手されている人数を推定する。
または、状況推定部５０は、時刻ｔ３のデータを用いて検出された高さと、時刻ｔ５のデータを用いて検出された高さと、を比較して挙手されている人数を推定するようにしてもよい。
または、状況推定部５０は、時刻ｔ３のデータを用いて検出された高さと、期間ｐ６のデータ（例えば平均値、最小値、統計処理された値）を用いて検出された高さと、を比較して挙手されている人数を推定するようにしてもよい。
または、状況推定部５０は、期間ｐ４のデータを用いて検出された高さと、期間ｐ６のデータ（例えば平均値、最小値、統計処理された値）を用いて検出された高さと、を比較して挙手されている人数を推定するようにしてもよい。
以上のように、状況推定部５０は、人が手を挙げていると推定される時刻または期間のいずれかの高さと、人が手を下げていると推定される時刻または期間のいずれかの高さと、を比較して挙手されている人数を推定するようにしてもよい。
【０１３３】
なお、本発明における動作推定装置（３、または３Ａ）の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより挙手の推定を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境（あるいは表示環境）を備えたＷＷＷシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１３４】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【０１３５】
１、１Ａ…ロボット、２…処理部、３、３Ａ…動作推定装置、１０、１０−１〜１０−ｎ…ＬＲＦセンサ、２０、２０Ａ、２０−１〜２０−ｎ、２０Ａ−１〜２０Ａ−ｎ…センシング処理部、３０…人統合処理部、４０…グリッド統合処理部、５０、５０Ａ…状況推定部、６０、６０Ａ…記憶部、１０１…記憶部、１０２…制御部、１０３…音声出力部、ｄ１…人クラスタデータ、ｄ２…グリッドデータ、ｄ３…人データ、ｄ４…グリッド高さを示す情報、ｄ５…トリガー信号、ｄ６…検出情報、ｄ７…測距点の情報、Ａｚ…第１マップ、Ｂ…第２マップ、ＡｚＭａｘ…第３マップ、ＡｚＭｉｎ…第４マップ、Ｃ…第５マップ
【図１】
2015187856.tif 000003
【図２】
2015187856.tif 000004
【図３】
2015187856.tif 000005
【図４】
2015187856.tif 000006
【図５】
2015187856.tif 000007
【図６】
2015187856.tif 000008
【図７】
2015187856.tif 000009
【図８】
2015187856.tif 000010
【図９】
2015187856.tif 000011
【図１０】
2015187856.tif 000012
【図１１】
2015187856.tif 000013
【図１２】
2015187856.tif 000014
【図１３】
2015187856.tif 000015
【図１４Ａ】
2015187856.tif 000016
【図１４Ｂ】
2015187856.tif 000017
【図１５Ａ】
2015187856.tif 000018
【図１５Ｂ】
2015187856.tif 000019
【図１６】
2015187856.tif 000020
【図１７】
2015187856.tif 000021
【図１８】
2015187856.tif 000022
【図１９】
2015187856.tif 000023