(57)【特許請求の範囲】
【請求項１】
操作者の人体の少なくとも一部の画像を取得し、取得した画像の画像データを生成す
るカメラと、
前記画像データから、前記人体の特徴部位を含み２次元の画像データの空間で画定さ
れる第１特徴領域を検出し、前記第１特徴領域を定義する第１特徴領域情報を生成する第
１特徴領域検出部と、
前記第１特徴領域情報及び前記カメラの視野角に基づいて、３次元の仮想空間におい
て、第１特徴領域に対応する第２特徴領域を定義する第２特徴領域情報を生成する第２特
徴領域検出部と、
前記カメラの視野角で画定される前記仮想空間内の複数の部分空間に対応した操作コ
マンドを生成する複数の操作コマンド生成部と、
前記第２特徴領域情報に基づき、前記複数の操作コマンド生成部の中から１つを選択
する選択部と、
を備えることを特徴とする情報処理装置。
【請求項２】
前記第２特徴領域情報は、前記第２特徴領域の中心座標を含む、請求項１に記載の情報
処理装置。
【請求項３】
前記選択部は、前記第２特徴領域の中心が属する部分空間と、前記第２特徴領域が前記
部分空間に連続して滞留する滞留時間と、に基づいて、前記複数の操作コマンド生成部の
中から１つを選択する、請求項１又は２に記載の情報処理装置。
【請求項４】
前記選択部は、前記滞留時間と所定の時間閾値とを比較し、前記滞留時間が前記時間閾
値より大きい場合に、前記複数の操作コマンド生成部の中から１つを選択する、請求項３
に記載の情報処理装置。
【請求項５】
前記カメラは、前記画像データを取得した撮影時刻を含むカメラパラメータをさらに生
成し、
前記選択部は、２つの画像データの前記撮影時刻の差を、前記滞留時間として計算する
、請求項３又は４に記載の情報処理装置。
【請求項６】
前記第１特徴領域検出部は、前記人体の特徴部位としての頭部を含む第１特徴領域を検
出し、
前記第２特徴領域検出部は、前記頭部についての所定の値を用いて、前記第２特徴領域
情報を生成する、請求項１乃至５の何れかに記載の情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置に関する。
【背景技術】
【０００２】
従来の情報処理装置（例えば、携帯電話）として、タッチパネルやキーボード等の入力デバイスに加えて、静的加速度を検出する加速度センサが設けられた情報処理装置が知られている。このような情報処理装置では、加速度センサの出力に応じて、カーソルの移動又は３次元（以下「３Ｄ」という）画像の表示が制御される。
【０００３】
また、加速度センサの欠点を補う技術として、特許文献１のユーザインタフェース装置が知られている。特許文献１のユーザインタフェース装置は、ユーザの顔画像を取得し、取得された顔画像をもとにユーザの顔の向きを推定し、推定された顔の向きに応じて所定の入力処理を実行する。
【０００４】
しかしながら、一般に、ユーザの顔の向きは、左右方向の自由度は高いが、上下方向の自由度が低い。例えば、顔の向きを上方向に大きく向けると、ユーザの視野から画面が外れてしまう。即ち、顔の向きのみに応じて情報処理装置を操作する技術は、操作性が低い。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−１１２３６０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明が解決しようとする課題は、人体の動きに応じて情報処理装置を操作するときの操作性を改善することである。
【課題を解決するための手段】
【０００７】
本発明の実施形態の情報処理装置１０は、カメラと、第１特徴領域情報生成部と、第２特徴領域検出部と、複数の操作コマンド生成部と、選択部と、を備える。カメラは、操作者の人体の少なくとも一部の画像を取得し、取得した画像の画像データを生成する。第１特徴領域情報生成部は、前記画像データから、前記人体の特徴部位を含む第１特徴領域を検出し、第１特徴領域を定義する第１特徴領域情報を生成する。第２特徴領域検出部は、前記第１特徴領域情報に基づいて、仮想空間において、第１特徴領域に対応する第２特徴領域を定義する第２特徴領域情報を生成する。複数の操作コマンド生成部は、仮想空間内の複数の部分空間に対応した操作コマンドを生成する。選択部は、第２特徴領域情報に基づき、前記複数の操作コマンド生成部の中から１つを選択する。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態の情報処理装置１０のブロック図。
【図２】第１実施形態の制御部１２が実現する人体位置計測部１２２、ＵＩ制御部１２４、及びアプリケーション制御部１２６の説明図。
【図３】第１実施形態のアプリケーション制御のフローチャート。
【図４Ａ】第１実施形態のユーザの画像の取得の説明図。
【図４Ｂ】第１実施形態の第１特徴領域の検出の説明図。
【図４Ｃ】第１実施形態の第２特徴領域の検出の説明図。
【図５】第１実施形態の操作コマンド生成部１２４Ｂの選択のフローチャート。
【図６】第１実施形態の操作コマンド生成部１２４Ｂの割り当ての一例を説明する図。
【図７Ａ】第１実施形態の滞留時間の計算の説明図。
【図７Ｂ】第１実施形態の滞留時間の計算の説明図。
【図８】第１実施形態の選択テーブルのデータ構造を示す図。
【図９】第１実施形態の操作コマンドの生成の一例を説明する図。
【図１０】第２実施形態の操作コマンドの生成の一例を説明する図。
【図１１】第３実施形態の操作コマンドの生成の一例を説明する図。
【図１２】第４実施形態の操作コマンドの生成の一例を説明する図。
【図１３】第５実施形態の操作コマンドの生成の一例を説明する図。
【発明を実施するための形態】
【０００９】
本実施形態について、図面を参照して説明する。
【００１０】
（第１実施形態）
第１実施形態では、情報処理装置１０の基本的機能について説明する。図１は、第１実施形態の情報処理装置１０のブロック図である。第１実施形態の情報処理装置１０は、制御部１２と、記憶部１４と、操作部１６と、アプリケーション１７と、カメラ１８と、ディスプレイ１９と、を備える。制御部１２は、情報処理装置１０の操作を制御する。記憶部１４には、様々なデータが記憶される。操作部１６は、アプリケーション１７に対するユーザの指示を受け付ける。アプリケーション１７は、情報処理装置１０の機能を実現する。カメラ１８は、画像（複数の静止画像、又は動画像）を取得する。ディスプレイ１９は、画像データを表示する。ディスプレイ１９に表示される画像データは、例えば、アプリケーション１７の画像（メニュー画面の画像、テキスト画面の画像、平面図形の画像、３次元コンピュータグラフィックスのレンダリング画像、又は再生画像（静止画像又は動画像））である。
【００１１】
制御部１２は、例えばコンピュータプロセッサである。制御部１２は、記憶部１４に記憶された制御プログラムを実行することにより、人体位置計測部１２２、ユーザインタフェース（以下「ＵＩ」という）制御部１２４、及びアプリケーション制御部１２６としての機能を実現する。また、制御部１２は、記憶部１４に記憶されたアプリケーションプログラムを実行することにより、アプリケーション１７を実現する。
【００１２】
第１実施形態の制御部１２が実現する機能について説明する。図２は、第１実施形態の制御部１２が実現する人体位置計測部１２２、ＵＩ制御部１２４、及びアプリケーション制御部１２６の説明図である。
【００１３】
人体位置計測部１２２は、第１特徴領域検出部１２２Ａと、第２特徴領域検出部１２２Ｂと、から構成される。第１特徴領域検出部１２２Ａは、カメラ１８が取得した画像の画像データから、人体の特徴部位を含む第１特徴領域を検出する。第１特徴領域は、画像データの空間において画定される領域である。第２特徴領域検出部１２２Ｂは、第１特徴領域に対応する第２特徴領域を検出する。第２特徴領域は、画像データの空間とは異なる空間において画定される領域である。
【００１４】
ＵＩ制御部１２４は、選択部１２４Ａと、複数の操作コマンド生成部１２４Ｂと、を備える。図１では、一例として、３つの操作コマンド生成部１２４Ｂを示している。選択部１２４Ａは、複数の操作コマンド生成部１２４Ｂの中から、特徴部位の動きに応じた操作コマンド生成部１２４Ｂ（１）〜１２４Ｂ（３）を選択する。選択された操作コマンド生成部１２４Ｂは、特徴部位の動きに応じた操作コマンドを生成し、生成した操作コマンドをアプリケーション制御部１２６へ出力する。
【００１５】
アプリケーション制御部１２６は、選択された操作コマンド生成部１２４Ｂが出力した操作コマンドに基づいて、アプリケーション１７を制御する。その結果、アプリケーション１７は、ユーザの特徴部位の動きに応じた処理を実行する。
【００１６】
第１実施形態の情報処理について説明する。図３は、第１実施形態のアプリケーション制御のフローチャートである。第１実施形態のアプリケーション制御は、ユーザの動きに応じてアプリケーション１７を制御するための処理である。
【００１７】
＜Ｓ３００＞  第１特徴領域検出部１２２Ａは、ユーザの画像を取得するように、カメラ１８を制御する。カメラ１８は、ユーザの画像を取得し、ユーザの画像を含む画像データを生成する。図４Ａは、第１実施形態のユーザの画像の取得の説明図である。カメラ１８は、図４Ａに示すように、ユーザＵの画像を取得し、ユーザＵの画像を含む画像データＩＭＧと、カメラパラメータＣＰと、を生成する。画像データＩＭＧの画素数は、水平方向（Ａ方向）にＣｗピクセルであり、垂直方向（Ｂ方向）にＣｈピクセルである。カメラパラメータＣＰは、カメラ１８の水平方向の水平視野角Ｃθａと、カメラ１８の垂直方向の垂直視野角Ｃθｂと、画像データＩＭＧの画素数Ｃｗ×Ｃｈと、カメラ１８が画像データＩＭＧを取得した撮影時刻ｔと、を含む。
【００１８】
＜Ｓ３０２＞  第１特徴領域検出部１２２Ａは、Ｓ３００で得られた画像データＩＭＧから、ユーザＵの体の特徴部位を含む第１特徴領域Ｒ１を検出し、第１特徴領域情報を生成する。第１特徴領域情報とは、第１特徴領域Ｒ１を定義する情報である。
【００１９】
図４Ｂは、第１実施形態の第１特徴領域の検出の説明図である。第１特徴領域Ｒ１は、画像データＩＭＧの画像空間ＡＢにおいて、特徴部位を含む矩形領域である。第１特徴領域情報は、第１特徴領域Ｒ１の水平方向のサイズＲ１ｗと、垂直方向のサイズＲ１ｈと、中心Ｏｒ１の座標（Ｏｒ１ａ，Ｏｒ１ｂ）と、を含む。第１特徴領域情報のパラメータ（Ｒ１ａ，Ｒ１ｂ，（Ｏｒ１ｗ，Ｏｒ１ｈ））の単位は、ピクセルである。
【００２０】
例えば、第１特徴領域検出部１２２Ａは、所定の特徴検出アルゴリズムを用いて、画像データＩＭＧ内の特徴部位（例えば、頭部）を検出し、テンプレートマッチング技術を用いて、特徴部位の、水平方向のサイズと、垂直方向のサイズと、中心の座標と、を第１特徴領域情報として生成する。より具体的には、第１特徴領域検出部１２２Ａは、所定のテンプレート画像を移動させながら、テンプレート画像と画像データＩＭＧが表す画像との相関値を計算し、最も高い相関値に対応する領域の水平方向のサイズと、垂直方向のサイズと、中心の座標と、を第１特徴領域情報として生成する。特徴検出アルゴリズムは、例えば、固有空間法、部分空間法、又はＨａａｒ  ｌｉｋｅ特徴量及びAdaboostアルゴリズムの組み合わせの何れかである。
【００２１】
＜Ｓ３０４＞  第２特徴領域検出部１２２Ｂは、Ｓ３０２で生成した第１特徴領域情報に基づいて、第２特徴領域情報を生成する。第２特徴領域情報は、画像空間ＡＢとは異なる仮想空間において、第１特徴領域Ｒ１に対応する第２特徴領域Ｒ２を定義する情報である。
【００２２】
図４Ｃは、第１実施形態の第２特徴領域の検出の説明図である。第２特徴領域Ｒ２は、仮想空間ＸＹＺにおいて、第１特徴領域Ｒ１に対応する領域である。第２特徴領域情報は、第２特徴領域Ｒ２の中心Ｏｒ２の座標（Ｏｒ２ｘ，Ｏｒ２ｙ，Ｏｒ２ｚ）を含む。第２特徴領域情報のパラメータ（Ｏｒ２ｘ，Ｏｒ２ｙ，Ｏｒ２ｚ）の単位は、ミリメートルである。
【００２３】
例えば、第２特徴領域検出部１２２Ｂは、式１を用いて、第２特徴領域情報を生成す
る。式１において、Ｏｒ１ａ及びＯｒ１ｂはそれぞれ、第１特徴領域の中心Ｏｒ１の水平
方向（図４ＡのＡ方向）の座標及び垂直方向（図４ＡのＢ方向）の座標である。Ｕｗ及び
Ｕｈはそれぞれ、ユーザＵの特徴部位の水平方向の統計値及び垂直方向の統計値である。
Ｒ１ｗ及びＲ１ｈはそれぞれ、第１特徴領域の水平方向のサイズ及び垂直方向のサイズで
ある。Ｃｗは、画像データＩＭＧの水平方向の画素数である。Ｃθｂは、カメラ１８の垂
直視野角である。例えば、特徴部位が頭部の場合には、Ｕｗは、頭部の水平方向の統計値
（１５７ｍｍ×０．８５〜１５７ｍｍ×１．１５）であり、Ｕｈは、頭部の垂直方向の統
計値（１８５ｍｍ×０．８７〜１８５ｍｍ×１．１３）である。
【００２４】
＜Ｓ３０６＞  選択部１２４Ａは、第２特徴領域情報に基づいて、複数の操作コマンド生成部１２４Ｂ（１）〜１２４Ｂ（３）の中から１つを選択する。図５は、第１実施形態の操作コマンド生成部１２４Ｂの選択のフローチャートである。操作コマンド生成部１２４Ｂは、仮想空間ＸＹＺ内における中心Ｏｒ２の動きに基づいて選択される。
【００２５】
＜Ｓ５００＞  アプリケーション制御部１２６は、仮想空間ＸＹＺ内の複数の部分空間を、複数の操作コマンド生成部１２４Ｂのそれぞれに割り当て、割り当てた結果（複数の部分空間と複数の操作コマンド生成部１２４Ｂの関係）を、選択部１２４Ａに通知する。図６は、第１実施形態の操作コマンド生成部１２４Ｂの割り当ての一例を説明する図である。アプリケーション制御部１２６は、カメラ１８の位置に対応する点Ｃを中心としてカメラ１８の垂直視野角Ｃθｂで画定される仮想空間ＸＹＺ内の３個の部分空間ＰＳ１〜ＰＳ３を、それぞれ、複数の操作コマンド生成部１２４Ｂ（１）〜１２４Ｂ（３）に割り当てる。
【００２６】
＜Ｓ５０２＞  選択部１２４Ａは、複数の画像データＩＭＧの撮影時刻を用いて、滞留時間Ｔを計算する。滞留時間Ｔは、第２特徴領域の中心Ｏｒ２が、同一の部分空間ＰＳ１〜ＰＳ３の何れかに連続して滞留した時間である。図７Ａ及び７Ｂは、第１実施形態の滞留時間の計算の説明図である。
【００２７】
図７Ａは、中心Ｏｒ２が時刻ｔ１〜ｔ２の間（即ち、画像データＩＭＧ１が取得されてから画像データＩＭＧ２が取得されるまでの間）に、連続して部分空間ＰＳ１に存在している例である。図７Ａに示すように時刻ｔ１〜ｔ２の間に、中心Ｏｒ２が１つの部分空間ＰＳ１内で移動した場合、選択部１２４Ａは、時刻ｔ１からの経過時間をカウントする。この場合には、時刻ｔ２における滞留時間Ｔは、カウントされた値ｔ１−ｔ２である。
【００２８】
一方、図７Ｂは、時刻ｔ１（即ち、画像データＩＭＧ１が取得されたとき）に部分空間ＰＳ１に存在していた中心Ｏｒ２が、時刻ｔ２（即ち、画像データＩＭＧ２が取得されたとき）に部分空間ＰＳ２に移動し、時刻ｔ２〜ｔ３の間（即ち、画像データＩＭＧ２が取得されて２から画像データＩＭＧ３が取得されるまでの間）に、中心Ｏｒ２が連続して部分空間ＰＳ２に存在している例である。図７Ｂに示すように、時刻ｔ１〜ｔ２の間に、中心Ｏｒ２が、部分空間ＰＳ１から部分空間ＰＳ２（即ち、対応する操作コマンドが異なる別の部分空間）に移動した場合、選択部１２４Ａは、時刻ｔ１からの経過時間をリセットし、時刻ｔ２からの経過時間をカウントする。この場合には、時刻ｔ２における滞留時間Ｔはゼロである。その後、時刻ｔ２から時刻ｔ３の間に、中心Ｏｒ２が、１つの部分空間ＰＳ２内で移動した場合、選択部１２４Ａは、時刻ｔ２からの経過時間をカウントする。この場合には、時刻ｔ３における滞留時間Ｔは、カウントされた値ｔ３−ｔ２である。
【００２９】
＜Ｓ５０４＞  選択部１２４Ａは、滞留時間Ｔと所定の第１時間閾値Ｔｈ１とを比較する。第１時間閾値Ｔｈ１は、例えば５００ｍｓｅｃである。滞留時間Ｔが第１時間閾値Ｔｈ１より大きい場合には（Ｓ５０４−Ｙ）、Ｓ５０６が実行される。滞留時間Ｔが第１時間閾値Ｔｈ１以下の場合には（Ｓ５０４−Ｎ）、Ｓ５０２に戻る。Ｓ５０２及びＳ５０４で構成されるループは、滞留時間Ｔが第１時間閾値Ｔｈ１を超えるまで繰り返される。
【００３０】
＜Ｓ５０６＞  選択部１２４Ａは、Ｓ５００で通知された割り当て結果に基づいて選択テーブルを生成し、生成した選択テーブルを用いて、第２特徴領域の中心Ｏｒ２が属する部分空間ＰＳに対応する操作コマンド生成部１２４Ｂを選択する。図８は、第１実施形態の選択テーブルのデータ構造を示す図である。選択部１２４Ａは、Ｓ５００部分空間ＰＳ１〜ＰＳ３と、部分空間ＰＳ１〜ＰＳ３のそれぞれに対応する操作コマンド生成部１２４Ｂ（１）〜１２４（３）と、の関係を示す選択テーブルを生成する。例えば、選択部１２４Ａは、第２特徴領域の中心Ｏｒ２が、第１時間閾値Ｔｈ１より大きい滞留時間Ｔだけ部分空間ＰＳ１に存在する場合には、選択テーブルにおいて部分空間ＰＳ１に対応する操作コマンド生成部１２４Ｂ（１）を選択する。Ｓ５０６が終了すると、図３のＳ３０８が実行される。
【００３１】
＜Ｓ３０８＞  Ｓ５０６で選択された操作コマンド生成部１２４Ｂは、第２特徴領域の中心Ｏｒ２の動きに基づいて、操作コマンドを生成する。操作コマンド生成部１２４Ｂは、第２特徴領域の中心Ｏｒ２の滞留時間Ｔと所定の第２時間閾値Ｔｈ２との差に応じて、所定の操作コマンドを生成する。第２時間閾値Ｔｈ２は、第１時間閾値Ｔｈ１と等しくても良いし、異なっても良い。図９は、第１実施形態の操作コマンドの生成の一例を説明する図である。
【００３２】
Ｓ５０６で操作コマンド生成部１２４Ｂ（１）が選択された場合には、操作コマンド生成部１２４Ｂ（１）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には「ＹＥＳ」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ１に第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、「ＹＥＳ」という操作コマンドが生成される。
【００３３】
Ｓ５０６で操作コマンド生成部１２４Ｂ（２）が選択された場合には、操作コマンド生成部１２４Ｂ（２）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には「ＮＯ」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ２に第１時間閾値Ｔｈ１及び第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、「ＮＯ」という操作コマンドが生成される。例えば、ユーザＵが前のめりに頷くと、「ＹＥＳ」という操作コマンドが生成され、ユーザＵが左右に首を振ると、「ＮＯ」という操作コマンドが生成され、ユーザＵが頭部を動かし続けると、「未定」という操作コマンドが生成される。
【００３４】
Ｓ５０６で操作コマンド生成部１２４Ｂ（３）が選択された場合には、操作コマンド生成部１２４Ｂ（３）は、滞留時間Ｔにかかわらず、「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ３に位置するように、ユーザＵが頭部を動かすと、「未定」という操作コマンドが生成される。
【００３５】
＜Ｓ３１０＞  アプリケーション制御部１２６は、Ｓ３０８で生成した操作コマンドをアプリケーション１７へ出力する。これにより、ユーザＵの特徴部位の動きに従って、アプリケーション１７が制御される。
【００３６】
第１実施形態によれば、人体の特徴部位の中心を仮想空間上に写像し、中心の動きと、仮想空間内の複数の部分空間の何れかに中心が滞留する滞留時間と、に基づいて、操作コマンドが生成される。これにより、人体の動きに応じて情報処理装置１０を操作するときの操作性を改善できる。具体的には、ユーザＵは、カメラ１８で撮影される特徴部位を実空間上で動かすだけで、操作部１６に触れることなく、アプリケーション１７を操作できる。
【００３７】
また、第１実施形態では、ユーザＵの特徴部位の統計値Ｕｗ及びＵｈを用いて、仮想空間ＸＹＺにおける第２特徴領域の中心の座標を計算するので、複数のユーザＵに対して同一の計算式（式１）を適用可能である。
【００３８】
また、第１実施形態では、画像空間ＡＢから仮想空間ＸＹＺに特徴部位が写像されるので、ユーザＵは、静止した状態でも、連続的な操作コマンドを与えることができる。
【００３９】
また、第１実施形態では、操作コマンドの生成のルールを部分空間ＰＳ毎に割り当てることができる。
【００４０】
なお、第１実施形態では、２つの操作コマンド生成部１２４Ｂ（１）及び１２４Ｂ（２）の例について説明したが、操作コマンド生成部１２４Ｂの数は２つに限られない。また、説明を簡単にするために、平面的な（２次元の）複数の部分空間ＰＳから構成される仮想空間ＸＹＺの例を示したが、仮想空間ＸＹＺは、立体的な（３次元の）複数の部分空間ＰＳから構成されても良い。
【００４１】
また、第１実施形態では、Ｓ３０４において、第１特徴領域検出部１２２Ａは、矩形の第１特徴領域を検出する代わりに、他の形状の第１特徴領域を検出しても良い。第１特徴領域検出部１２２Ａは、例えば、楕円の第１特徴領域を検出しても良い。この場合には、第１特徴領域検出部１２２Ａは、ユーザＵの特徴部位に外接する楕円の短軸長と、長軸長と、短軸の回転角と、中心の座標と、を第１特徴領域情報として生成する。
【００４２】
また、第１実施形態では、Ｓ５００において、アプリケーション制御部１２６は、三角形の仮想空間ＸＹＺの代わりに、球形、円錐、又は楕円等の任意の三次元形状の仮想空間ＸＹＺを用いても良い。
【００４３】
（第２実施形態）
第２実施形態では、情報処理装置１０の応用的機能の一例として、３次元コンピュータグラフィックスを描画するときの操作コマンドの生成について説明する。なお、第１実施形態と同様の説明は省略する。図１０は、第２実施形態の操作コマンドの生成の一例を説明する図である。ユーザの画像の取得から操作コマンド生成部の選択までの工程と、アプリケーション制御の工程とは、第１実施形態と同様である。
【００４４】
Ｓ５０６で操作コマンド生成部１２４Ｂ（１）が選択された場合には、操作コマンド生成部１２４Ｂ（１）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には、視点パラメータＰｖを伴う「視点変更（Ｐｖ）」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ１に第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、ディスプレイ１９に表示された３次元コンピュータグラフィックスの視点が、視点パラメータＰｖに応じて変化する。
【００４５】
操作コマンド生成部１２４Ｂ（１）は、第２特徴領域の中心Ｏｒ２の位置に基づいて、視点パラメータＰｖを生成する。視点パラメータＰｖは、３次元コンピュータグラフィックスの視点を画定する３つの視点角度θ，φ，ｒを含む。例えば、操作コマンド生成部１２４Ｂ（１）は、式２を用いて、視点パラメータＰｖを生成する。式２において、Ｏｒ２ｘ、Ｏｒ２ｙ、及びＯｒ２ｚは、それぞれ、第２特徴領域の中心Ｏｒ２のＸ座標、Ｙ座標、及びＺ座標であり、α、β、及びγは、所定の係数であり、δは、所定の定数である。例えば、ユーザＵが頭部をカメラ１８に近づけると、３次元コンピュータグラフィックスが拡大して表示され、ユーザＵが頭部をカメラ１８から遠ざけると、３次元コンピュータグラフィックスが縮小して表示される。
【数２】
0005840399.tif 000002
【００４６】
一方、Ｓ５０６で操作コマンド生成部１２４Ｂ（２）が選択された場合には、操作コマンド生成部１２４Ｂ（２）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には、動作パラメータＰｍを伴う「動作（Ｐｍ）」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ１に第１時間閾値Ｔｈ１及び第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、ディスプレイ１９に表示された３次元コンピュータグラフィックスの少なくとも一部が、動作パラメータＰｍに応じて変化する。
【００４７】
操作コマンド生成部１２４Ｂ（１）は、第２特徴領域の中心Ｏｒ２の位置に基づいて、動作パラメータＰｍを生成する。動作パラメータＰｍは、３次元コンピュータグラフィックスの少なくとも一部の動作ベクトル（Ｐｍｘ，Ｐｍｙ，Ｐｍｚ）を含む。例えば、操作コマンド生成部１２４Ｂ（１）は、式３を用いて、動作パラメータＰｍを生成する。式３において、Ｏｒ２ｘ、Ｏｒ２ｙ、及びＯｒ２ｚは、それぞれ、第２特徴領域の中心Ｏｒ２のＸ座標、Ｙ座標、及びＺ座標であり、ＣＧｘ、ＣＧｙ、及びＣＧｚは、それぞれ、３次元コンピュータグラフィックスの少なくとも一部のＸ座標、Ｙ座標、及びＺ座標である。例えば、ユーザＵが頭部を動かすと、３次元コンピュータグラフィックスの人形の眼球がユーザの頭部を追いかけるように動く。これにより、３次元コンピュータグラフィックスの人形がユーザを見つめ続けるような演出可能になる。
【数３】
0005840399.tif 000003
【００４８】
第２実施形態によれば、第２特徴領域の中心Ｏｒ２の座標に所定の係数及び定数を適用することによって、３つの視点角度θ，φ，ｒ又は３次元コンピュータグラフィックスの少なくとも一部の動作ベクトル（Ｐｍｘ，Ｐｍｙ，Ｐｍｚ）が計算される。これにより、ユーザＵは、特徴部位を動かすことによって、３次元コンピュータグラフィックスをより自然に操作できる。
【００４９】
なお、第２実施形態では、操作コマンド生成部１２４Ｂ（２）が、３次元コンピュータグラフィックスの少なくとも一部の動作ベクトル（Ｐｍｘ，Ｐｍｙ，Ｐｍｚ）を生成する代わりに、滞留時間Ｔに関わらず、「視点固定」という操作コマンドを生成しても良い。この場合には、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ２に第１時間閾値Ｔｈ１を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、ディスプレイ１９に表示された３次元コンピュータグラフィックスの視点が固定される。
【００５０】
（第３実施形態）
第３実施形態では、情報処理装置１０の応用的機能の一例として、電子書籍を閲覧するときの操作コマンドの生成について説明する。なお、第１及び第２実施形態と同様の説明は省略する。図１１は、第３実施形態の操作コマンドの生成の一例を説明する図である。ユーザの画像の取得から操作コマンド生成部の選択までの工程と、アプリケーション制御の工程とは、第１実施形態と同様である。
【００５１】
Ｓ５０６で操作コマンド生成部１２４Ｂ（１）が選択された場合には、操作コマンド生成部１２４Ｂ（１）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には、第１ビューポートパラメータＰｖｐ１を伴う「ビューポート移動（Ｐｖｐ１）」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ１に第１時間閾値Ｔｈ１及び第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、ディスプレイ１９に表示された電子書籍のビューポートが、第１ビューポートパラメータＰｖｐ１に応じて移動する。ビューポートとは、仮想的に広大な平面画像の一部を閲覧するときに、画面に表示すべき平面画像を画定する点である。
【００５２】
操作コマンド生成部１２４Ｂ（１）は、第２特徴領域の中心Ｏｒ２の位置に基づいて、第１ビューポートパラメータＰｖｐ１を生成する。第１ビューポートパラメータＰｖｐ１は、ビューポートの中心の座標の変量（ΔＶｘ，ΔＶｙ）と、ビューポートの範囲の変量（ΔＶｗ）と、を含む。例えば、操作コマンド生成部１２４Ｂ（１）は、式４を用いて、第１ビューポートパラメータＰｖｐ１を生成する。式４において、Ｏｒ２ｘ、Ｏｒ２ｙ、及びＯｒ２ｚは、それぞれ、第２特徴領域の中心Ｏｒ２のＸ座標、Ｙ座標、及びＺ座標であり、α及びβは、所定の係数であり、γは、所定の定数である。式４では、ビューポートの中心の座標の変量（ΔＶｘ，ΔＶｙ）が第２特徴領域の中心Ｏｒ２の座標（Ｏｒ２ｘ，Ｏｒ２ｙ，Ｏｒ２ｚ）の二乗で計算される。例えば、ユーザＵが頭部を動かすと、中心から離れた場所ではビューポートが高速で移動し、中心に近い場所ではビューポートが低速で移動する。
【数４】
0005840399.tif 000004
【００５３】
一方、Ｓ５０６で操作コマンド生成部１２４Ｂ（２）が選択された場合には、操作コマンド生成部１２４Ｂ（２）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には、「ビューポート移動（Ｐｖｐ２）」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ２に第１時間閾値Ｔｈ１及び第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、ディスプレイ１９に表示された電子書籍のビューポートが、第２ビューポートパラメータＰｖｐ２に応じて移動する。
【００５４】
操作コマンド生成部１２４Ｂ（２）は、第２特徴領域の中心Ｏｒ２の位置に基づいて、第２ビューポートパラメータＰｖｐ２を生成する。第２ビューポートパラメータＰｖｐ２は、ビューポートの中心の座標の変量（ΔＶｘ，ΔＶｙ）と、ビューポートの範囲の変量（ΔＶｗ）と、を含む。例えば、操作コマンド生成部１２４Ｂ（２）は、式５を用いて、第２ビューポートパラメータＰｖｐ２を生成する。式５において、Ｏｒ２ｘ、Ｏｒ２ｙ、及びＯｒ２ｚは、それぞれ、第２特徴領域の中心Ｏｒ２のＸ座標、Ｙ座標、及びＺ座標であり、α及びβは、所定の係数であり、γは、所定の定数である。式５では、ビューポートの中心の座標の変量（ΔＶｘ，ΔＶｙ）が第２特徴領域の中心Ｏｒ２の座標（Ｏｒ２ｘ，Ｏｒ２ｙ，Ｏｒ２ｚ）の一乗で計算される。例えば、ユーザＵが頭部を動かすと、中心からの距離に比例してビューポートが一定速度で移動する。
【数５】
0005840399.tif 000005
【００５５】
第３実施形態によれば、第２特徴領域の中心Ｏｒ２の座標及び範囲に所定の係数及び定数を適用することによって、中心からの距離に応じた速度又は中心からの距離に依存しない一定速度で、電子書籍のビューポートを移動させることができる。特に、第２特徴領域の中心Ｏｒ２が部分領域ＰＳ１にある場合には、中心から離れた場所ではビューポートを高速で移動させ、中心に近い場所ではビューポートを低速で移動させることができる。また、第２特徴領域の中心Ｏｒ２が部分領域ＰＳ２にある場合には、ビューポートを安定的に移動させることができる。
【００５６】
（第４実施形態）
第４実施形態では、情報処理装置１０の応用的機能の一例として、マウスポインタを動かすときの操作コマンドの生成について説明する。なお、第１〜第３実施形態と同様の説明は省略する。図１２は、第４実施形態の操作コマンドの生成の一例を説明する図である。ユーザの画像の取得から操作コマンド生成部の選択までの工程と、アプリケーション制御の工程とは、第１実施形態と同様である。
【００５７】
Ｓ５０６で操作コマンド生成部１２４Ｂ（１）が選択された場合には、操作コマンド生成部１２４Ｂ（１）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には、ポインタパラメータＰｐを伴う「ポインタ移動（Ｐｐ１）」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ１に第１時間閾値Ｔｈ１及び第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、ディスプレイ１９に表示されたマウスポインタが、ポインタパラメータＰｐに応じて移動する。
【００５８】
操作コマンド生成部１２４Ｂ（１）は、第２特徴領域の中心Ｏｒ２の位置に基づいて、ポインタパラメータＰｐを生成する。ポインタパラメータＰｐは、Ｘ方向及びＹ方向の変量（Δｘ，Δｙ）を含む。例えば、操作コマンド生成部１２４Ｂ（１）は、式６を用いて、ポインタパラメータＰｐを生成する。式６において、Ｏｒ２ｘ、Ｏｒ２ｙ、及びＯｒ２ｚは、それぞれ、第２特徴領域の中心Ｏｒ２のＸ座標、Ｙ座標、及びＺ座標であり、αは、所定の係数であり、βｔｈは、所定の閾値である。式６では、マウスポインタの座標の変量（Δｘ，Δｙ）が第２特徴領域の中心Ｏｒ２の座標（Ｏｒ２ｘ，Ｏｒ２ｙ）と閾値βｔｈとの差に応じて決まる。例えば、ユーザＵが頭部を動かすと、中心から離れるほどマウスポインタが加速し、中心に近づくほどマウスポインタが減速し、中心からの距離が所定範囲内になるとマウスポインタが静止する。
【数６】
0005840399.tif 000006
【００５９】
一方、Ｓ５０６で操作コマンド生成部１２４Ｂ（２）が選択された場合には、操作コマンド生成部１２４Ｂ（２）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には、「停止」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ２に第１時間閾値Ｔｈ１及び第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、マウスポインタが停止する。
【００６０】
第４実施形態によれば、第２特徴領域の中心Ｏｒ２の座標（Ｏｒ２ｘ，Ｏｒ２ｙ）と閾値βｔｈとの関係に基づいてポインタパラメータＰｐを計算することによって、中心からの距離に応じて、マウスポインタを加速、減速又は停止させることができる。特に、閾値βｔｈにより、ユーザの頭部Ｕと中心との間の距離が所定範囲内になったときの使用感を改善できる。
【００６１】
（第５実施形態）
第５実施形態では、情報処理装置１０の応用的機能の一例として、動画を再生するときの操作コマンドの生成について説明する。なお、第１〜第４実施形態と同様の説明は省略する。図１３は、第５実施形態の操作コマンドの生成の一例を説明する図である。ユーザの画像の取得から操作コマンド生成部の選択までの工程と、アプリケーション制御の工程とは、第１実施形態と同様である。
【００６２】
Ｓ５０６で操作コマンド生成部１２４Ｂ（１）が選択された場合には、操作コマンド生成部１２４Ｂ（１）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には、「１倍速」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ１に第１時間閾値Ｔｈ１及び第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、動画が１倍速で再生される。
【００６３】
一方、Ｓ５０６で操作コマンド生成部１２４Ｂ（２）が選択された場合には、操作コマンド生成部１２４Ｂ（２）は、滞留時間Ｔが第２時間閾値Ｔｈ２より大きい場合には、速度パラメータＰｓを伴う「再生速度変更（Ｐｓ）」という操作コマンドを生成し、滞留時間Ｔが第２時間閾値Ｔｈ２以下の場合には「未定」という操作コマンドを生成する。例えば、第２特徴領域の中心Ｏｒ２が部分空間ＰＳ２に第１時間閾値Ｔｈ１及び第２時間閾値Ｔｈ２を超える時間だけ滞留するように、ユーザＵが頭部を動かすと、動画の再生速度が速度パラメータＰｓに応じて変化する。
【００６４】
操作コマンド生成部１２４Ｂ（２）は、第２特徴領域の中心Ｏｒ２の位置に基づいて、速度パラメータＰｓを生成する。例えば、操作コマンド生成部１２４Ｂ（２）は、式７を用いて、速度パラメータＰｓを生成する。式７において、Ｏｒ２ｘ及びＯｒ２ｚは、それぞれ、第２特徴領域の中心Ｏｒ２のＸ座標及びＺ座標であり、α、β、γ及びδは、所定の定数である。式７では、速度パラメータＰｓが第２特徴領域の中心Ｏｒ２の座標（Ｏｒ２ｘ，Ｏｒ２ｙ）に応じて決まる。例えば、ユーザＵが、カメラ１８から遠い位置で左右に頭部を動かすと、頭部の位置に応じて再生速度が変化し、カメラ１８から近づくように頭部を動かすと再生速度が１倍速になる。
【数７】
0005840399.tif 000007
【００６５】
第５実施形態によれば、第２特徴領域の中心Ｏｒ２の座標（Ｏｒ２ｘ，Ｏｒ２ｚ）に基づいて速度パラメータＰｓを計算することによって、中心からの距離に応じて、再生速度を制御できる。
【００６６】
なお、第５実施形態は、動画の再生速度だけでなく、音楽の再生速度の制御にも適用可能である。
【００６７】
本実施形態に係る情報処理装置１０の少なくとも一部は、ハードウェアで構成しても良いし、ソフトウェアで構成しても良い。ソフトウェアで構成する場合には、情報処理装置１０の少なくとも一部の機能を実現するプログラムをフレキシブルディスクやＣＤ−ＲＯＭ等の記録媒体に収納し、コンピュータに読み込ませて実行させても良い。記録媒体は、磁気ディスクや光ディスク等の着脱可能なものに限定されず、ハードディスク装置やメモリなどの固定型の記録媒体でも良い。
【００６８】
また、本実施形態に係る情報処理装置１０の少なくとも一部の機能を実現するプログラムを、インターネット等の通信回線（無線通信も含む）を介して頒布しても良い。さらに、同プログラムを暗号化したり、変調をかけたり、圧縮した状態で、インターネット等の有線回線や無線回線を介して、あるいは記録媒体に収納して頒布しても良い。
【００６９】
なお、本発明は、上述した実施形態に限定されるものではなく、その要旨を逸脱しない範囲で構成要素を変形して具体化される。また、上述した実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明が形成可能である。例えば、上述した実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【００７０】
１０  情報処理装置
１２  制御部
１２２  人体位置計測部
１２２Ａ  第１特徴領域検出部
１２２Ｂ  第２特徴領域検出部
１２４  ＵＩ制御部
１２４Ａ  選択部
１２４Ｂ  操作コマンド生成部
１２６  アプリケーション制御部
１４  記憶部
１６  操作部
１７  アプリケーション
１８  カメラ
１９  ディスプレイ
【図１】
0005840399.tif 000008
【図２】
0005840399.tif 000009
【図３】
0005840399.tif 000010
【図４Ａ】
0005840399.tif 000011
【図４Ｂ】
0005840399.tif 000012
【図４Ｃ】
0005840399.tif 000013
【図５】
0005840399.tif 000014
【図６】
0005840399.tif 000015
【図７Ａ】
0005840399.tif 000016
【図７Ｂ】
0005840399.tif 000017
【図８】
0005840399.tif 000018
【図９】
0005840399.tif 000019
【図１０】
0005840399.tif 000020
【図１１】
0005840399.tif 000021
【図１２】
0005840399.tif 000022
【図１３】
0005840399.tif 000023