(57)【特許請求の範囲】
【請求項１】
撮像装置による撮像画像に基づく処理を実行する手持ち型の情報処理装置であって、
前記撮像画像に基づいて、各画素の明るさに関する情報を取得する取得手段と、
前記撮像画像について、各画素の明るさを重みとしたときの偏りを表す位置情報を算出する位置算出手段と、
前記撮像画像における明るさとして、当該撮像画像に含まれる物体の画像の領域とは独立して設定される対象領域の各画素の明るさの平均を算出する明るさ算出手段と、
前記位置情報と前記撮像画像における明るさとに基づいて、所定の情報処理を実行する処理実行手段とを備える、情報処理装置。
【請求項２】
前記処理実行手段は、前記位置情報に基づいて、前記撮像画像に含まれる物体の位置の変化を表す情報を算出し、当該情報に基づく情報処理を実行する、請求項１に記載の情報処理装置。
【請求項３】
前記撮像装置は赤外線カメラであり、
前記取得手段は、赤外線画像における輝度を表す情報を取得する、請求項１または請求項２に記載の情報処理装置。
【請求項４】
前記処理実行手段は、前記位置情報に基づいて、前記撮像画像に含まれる物体の形状を表す情報を算出し、当該情報に基づく情報処理を実行する、請求項１に記載の情報処理装置。
【請求項５】
前記処理実行手段は、前記位置情報によって特定される前記撮像画像上における位置に基づいて当該撮像画像上において判別範囲を設定し、当該判別範囲と前記物体の画像の領域との関係に基づいて前記物体の形状を算出する、請求項４に記載の情報処理装置。
【請求項６】
前記位置算出手段は、前記対象領域に対応する位置情報を算出する、請求項１から請求項５のいずれか１項に記載の情報処理装置。
【請求項７】
前記処理実行手段は、前記撮像画像における明るさに基づいて、前記撮像装置の撮像方向に関する位置および／または動きを表す情報を算出し、当該情報に応じて前記情報処理を実行する、請求項１から請求項５のいずれか１項に記載の情報処理装置。
【請求項８】
前記処理実行手段は、前記位置情報に基づいて、前記撮像方向に略垂直な方向に関する２次元の位置および／または動きを表す情報を算出し、当該情報に応じて前記情報処理を実行する、請求項６または請求項７に記載の情報処理装置。
【請求項９】
前記位置算出手段は、前記位置情報として、前記撮像画像の全体または一部の所定領域における、各画素の明るさを重みとしたときの重心位置を算出する、請求項１から請求項８のいずれか１項に記載の情報処理装置。
【請求項１０】
撮像装置による撮像画像に基づく処理を実行する手持ち型の情報処理装置を含む情報処理システムのコンピュータにおいて実行される情報処理プログラムであって、
前記撮像画像に基づいて、各画素の明るさに関する情報を取得する取得手段と、
前記撮像画像について、各画素の明るさを重みとしたときの偏りを表す位置情報を算出する位置算出手段と、
前記撮像画像における明るさとして、当該撮像画像に含まれる物体の画像の領域とは独立して設定される対象領域の各画素の明るさの平均を算出する明るさ算出手段と、
前記位置情報と前記撮像画像における明るさとに基づいて、所定の情報処理を実行する処理実行手段として前記コンピュータを機能させる、情報処理プログラム。
【請求項１１】
撮像装置による撮像画像に基づく処理を実行する手持ち型の情報処理装置を含む情報処理システムであって、
前記撮像画像に基づいて、各画素の明るさに関する情報を取得する取得手段と、
前記撮像画像について、各画素の明るさを重みとしたときの偏りを表す位置情報を算出する位置算出手段と、
前記撮像画像における明るさとして、当該撮像画像に含まれる物体の画像の領域とは独立して設定される対象領域の各画素の明るさの平均を算出する明るさ算出手段と、
前記位置情報と前記撮像画像における明るさとに基づいて、所定の情報処理を実行する処理実行手段とを備える、情報処理システム。
【請求項１２】
撮像装置による撮像画像に基づく処理を実行する手持ち型の情報処理装置を含む情報処理システムにおいて実行される情報処理方法であって、
前記撮像画像に基づいて、各画素の明るさに関する情報を取得する取得ステップと、
前記撮像画像について、各画素の明るさを重みとしたときの偏りを表す位置情報を算出する位置算出ステップと、
前記撮像画像における明るさとして、当該撮像画像に含まれる物体の画像の領域とは独立して設定される対象領域の各画素の明るさの平均を算出する明るさ算出ステップと、
前記位置情報と前記撮像画像における明るさとに基づいて、所定の情報処理を実行する処理実行ステップとを備える、情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、撮像装置による撮像画像に基づいて処理を実行する情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法に関する。
【背景技術】
【０００２】
従来、撮像装置によって撮像された撮像画像に対して画像認識処理を実行し、撮像画像に含まれる物体の位置（撮像装置と物体との位置関係）を算出する技術がある（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−１５４６９９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記の技術においては、撮像画像に含まれる物体を特定する処理、あるいは、その物体の位置を特定する処理が実行される。これらの処理は、処理を実行する装置の処理負担を低減するべく、簡易な方法であることが好ましい。
【０００５】
それ故、本発明の目的は、撮像画像に含まれる物体の位置等を簡易な処理で算出することができる情報処理プログラム、情報処理装置、情報処理システム、および情報処理方法を提供することである。
【課題を解決するための手段】
【０００６】
上記の課題を解決すべく、本発明は、以下の（１）〜（１０）の構成を採用した。
【０００７】
（１）
本発明の一例は、撮像装置による撮像画像に基づく処理を実行する手持ち型の情報処理装置である。情報処理装置は、取得手段と、位置算出手段と、処理実行手段とを備える。取得手段は、撮像画像に基づいて、各画素の明るさに関する情報を取得する。位置算出手段は、撮像画像について、各画素の明るさを重みとしたときの偏りを表す位置情報を算出する。処理実行手段は、位置情報に基づいて、所定の情報処理を実行する。
【０００８】
（２）
処理実行手段は、位置情報に基づいて、撮像画像に含まれる物体の位置の変化を表す情報を算出し、当該情報に基づく情報処理を実行してもよい。
【０００９】
（３）
撮像装置は赤外線カメラであってもよい。取得手段は、赤外線画像における輝度を表す情報を取得してもよい。
【００１０】
（４）
処理実行手段は、位置情報に基づいて、撮像画像に含まれる物体の形状を表す情報を算出し、当該情報に基づく情報処理を実行してもよい。
【００１１】
（５）
処理実行手段は、位置情報によって特定される撮像画像上における位置に基づいて当該撮像画像上において判別範囲を設定し、当該判別範囲と物体の画像の領域との関係に基づいて物体の形状を算出してもよい。
【００１２】
（６）
情報処理装置は、撮像画像における明るさを算出する明るさ算出手段をさらに備えてもよい。処理実行手段は、位置情報と明るさとに基づいて情報処理を実行してもよい。
【００１３】
（７）
情報処理装置は、撮像画像における明るさを算出する明るさ算出手段をさらに備えていてもよい。処理実行手段は、明るさに基づいて、撮像装置の撮像方向に関する位置および／または動きを表す情報を算出し、当該情報に応じて情報処理を実行してもよい。
【００１４】
（８）
処理実行手段は、位置情報に基づいて、撮像方向に略垂直な方向に関する２次元の位置および／または動きを表す情報を算出し、当該情報に応じて情報処理を実行してもよい。
【００１５】
（９）
位置算出手段は、位置情報として、撮像画像の全体または一部の所定領域における、各画素の明るさを重みとしたときの重心位置を算出してもよい。
【００１６】
（１０）
位置算出手段は、撮像画像に含まれる物体の画像の領域とは独立して設定される、当該撮像画像における対象領域に対応する位置情報を算出してもよい。
【００１７】
また、本発明の別の一例は、上記情報処理装置の各手段として情報処理システムのコンピュータを機能させる情報処理プログラムであってもよい。なお、情報処理システムのコンピュータとは、上記情報処理装置が備えるコンピュータであってもよいし、上記情報処理装置とは別体の情報処理装置が備えるコンピュータであってもよい。また、本発明の別の一例は、上記情報処理装置の各手段を備える情報処理システムであってもよい。また、本発明の別の一例は、上記情報処理システムにおいて実行される情報処理方法であってもよい。
【発明の効果】
【００１８】
本発明によれば、撮像画像に含まれる物体の位置等を簡易な処理で算出することができる。
【図面の簡単な説明】
【００１９】
【図１】本実施形態における携帯機器の一例の正面図
【図２】携帯機器の一例の右側面図
【図３】携帯機器の一例の背面図
【図４】携帯機器の内部構成の一例を示すブロック図
【図５】携帯機器の使用状態の一例を示す図
【図６】撮像画像の一例を示す図
【図７】図６に示す状態から、手の位置が移動した場合における撮像画像の一例を示す図
【図８】図６に示す状態から、手の位置が移動した場合における撮像画像の他の一例を示す図
【図９】手が開いた形状である場合における撮像画像の一例を示す図
【図１０】手が閉じた形状である場合における撮像画像の一例を示す図
【図１１】携帯機器１によって実行される処理の流れの一例を示すフローチャート
【図１２】ユーザがあおぎ操作を行う様子の一例を示す図
【図１３】ユーザが回転操作を行う様子の一例を示す図
【図１４】ユーザがはじき操作を行う様子の一例を示す図
【図１５】撮像画像から検出された手の領域の一例を示す図
【図１６】手が閉じた形状である場合において撮像画像から抽出される手の領域を示す図
【図１７】第２の実施形態において行われる操作の一例を示す図
【図１８】カーソルを用いて仮想空間内のオブジェクトを移動させる一例を示す図
【図１９】第２の実施形態における携帯機器１によって実行される処理の流れの一例を示すフローチャート
【図２０】第２の実施形態の変形例においてユーザが向き変更操作を行う様子の一例を示す図
【図２１】手の向きが異なる２つの場合において撮像画像から検出された手の領域の一例を示す図
【図２２】第３の実施形態において行われる操作の一例を示す図
【図２３】手の位置と情報処理との関係の一例を示す図
【図２４】ガイド画像の一例を示す図
【図２５】手の位置が事前警告範囲となった場合に表示されるガイド画像の一例を示す図
【図２６】手の位置が算出不可能となった場合に表示されるガイド画像の一例を示す図
【図２７】第３の実施形態における携帯機器１によって実行される処理の流れの一例を示すフローチャート
【図２８】ガイド画像の変形例の一例を示す図
【図２９】ガイド画像の変形例の他の一例を示す図
【図３０】携帯機器１に対してユーザがタッチ操作を行う様子の一例を示す図
【図３１】タッチ操作が行われる際に取得される撮像画像の変化の一例を示す図
【図３２】タッチ操作を用いた行われるゲームの流れの一例を示す
【図３３】第４の実施形態における携帯機器１によって実行される処理の流れの一例を示すフローチャート
【図３４】手を用いた操作の一例を示す図
【発明を実施するための形態】
【００２０】
＜第１の実施形態＞
以下、本発明の実施形態に係る情報処理装置、情報処理システム、情報処理プログラム、および、情報処理方法について説明する。第１の実施形態における情報処理装置は、カメラ（赤外線カメラ）によってユーザの手等の物体を撮像し、撮像画像に基づいてユーザの操作を判別するものである。
【００２１】
［１．携帯機器の構成］
まず、図１〜図５を参照して、情報処理装置の一例である携帯機器の構成の一例について説明する。図１は、第１の実施形態における携帯機器の一例の正面図である。図２は、携帯機器の一例の右側面図である。図３は、携帯機器の一例の背面図である。第１の実施形態において、携帯機器１は、ユーザが手で持って操作可能な携帯型（可搬型ということもできる）の情報処理装置である。携帯機器１は、例えば、携帯ゲーム機、携帯電話機、スマートフォン、タブレット端末、カメラ等の手持ち型の機器であってもよいし、腕時計型の端末等、ユーザが身に付けることが可能な端末であってもよい。
【００２２】
図１に示すように、携帯機器１は、ディスプレイ２と、タッチパネル３と、赤外線カメラ４と、測距センサ５と、入力ボタン６（６Ａ〜６Ｄ）と、照射部７と、プロジェクタ８とを備え、これらはハウジング１０に収納される。ハウジング１０（携帯機器１）は、板状の形状であり、ユーザが片手又は両手で把持可能な大きさである。また、ハウジング１０は、横長の形状である。
【００２３】
ディスプレイ２としては、例えば、液晶表示装置や有機ＥＬ表示装置等が用いられ、その他、任意の表示装置が用いられてもよい。ディスプレイ２の画面は、ハウジング１０の正面（Ｔ５面）に露出するように設けられる。タッチパネル３は、ディスプレイ２の画面上に設けられ、ユーザによってタッチされた画面上の位置を検出する。タッチパネル３としては、１点検出が可能なものや多点検出が可能なものが用いられ、例えば、静電容量方式、抵抗膜方式等、任意のものが用いられてもよい。
【００２４】
入力ボタン６Ａ〜６Ｄは、ユーザによる入力（押下）を受け付ける。入力ボタン６Ａ〜６Ｄは、ユーザが携帯機器１の両端を把持したときにユーザの指が届く位置に設けられる。具体的には、入力ボタン６Ａおよび６Ｃは、ユーザが右手で携帯機器１を把持したときに右手の指が届く位置にあり、入力ボタン６Ａは右手の親指が届く位置に、入力ボタン６Ｃは右手の人差し指又は中指が届く位置に設けられる。また、入力ボタン６Ｂおよび６Ｄは、ユーザが左手で携帯機器１を把持したときに左手の指が届く位置にあり、入力ボタン６Ｂは左手の親指が届く位置に、入力ボタン６Ｄは左手の人差し指又は中指が届く位置に設けられる。図１に示すように、入力ボタン６Ａおよび６Ｂは、ハウジング１０の正面（Ｔ５面）に設けられ、入力ボタン６Ｃおよび６Ｄは、ハウジング１０の上面（Ｔ４面）に設けられる。なお、ユーザによる入力を受け付ける入力部としては、入力ボタン６Ａ〜６Ｄの他に、方向入力のための十字キー、アナログスティック等が設けられてもよい。
【００２５】
赤外線カメラ４は、レンズと光（赤外線。具体的には近赤外線）に感光するセンサとを備える。赤外線カメラ４のセンサは、赤外線に感光する素子を縦横に複数並べたイメージセンサであり、当該イメージセンサの各素子が赤外線を受光して電気信号に変換することで２次元の赤外線画像を出力する。
【００２６】
測距センサ５は、測距センサ５に設けられた光源から射出された光（例えば、赤外光）が物体に反射し、当該反射光を受光素子で受光することで物体との間の距離を測定する。測距センサ５としては、三角測距方式、ＴＯＦ（Ｔｉｍｅ  Ｏｆ  Ｆｌｉｇｈｔ）方式等任意のものが用いられてもよい。測距センサ５の光源としては、特定方向に赤外光を射出するＬＥＤやレーザダイオード等が用いられる。
【００２７】
照射部７は、赤外線を所定の時間間隔（例えば、１／６０秒間隔）で照射する。赤外線カメラ４が画像を撮像するタイミングと同期して、照射部７が赤外線を照射する。照射部７は、携帯機器１の右側面方向の所定の範囲に赤外線を照射する。照射部７によって照射された赤外線が物体によって反射され、当該反射された赤外線が赤外線カメラ４によって受光されることで、赤外線の画像が取得される。なお、照射部７は、赤外線カメラ４による赤外線画像の撮像のため、および、測距センサ５による距離の測定のために用いられてもよい。すなわち、照射部７からの赤外光を利用して、赤外線カメラ４によって画像が撮像されるとともに、測距センサ５によって距離が測定されてもよい。
【００２８】
また、プロジェクタ８は、可視光を射出する光源を有し、当該光源からの光を用いて文字や画像等を投影面（スクリーンや後述するようにユーザの手等）に投影する。
【００２９】
赤外線カメラ４、測距センサ５、照射部７、およびプロジェクタ８は、ハウジング１０の側面（例えば右側面：Ｔ１面）に設けられる。具体的には、赤外線カメラ４の撮像方向（光軸）は、右側面に垂直な方向を向く。測距センサ５の検出方向、プロジェクタ８が光を照射する方向もまた同様に右側面に垂直な方向である。すなわち、赤外線カメラ４は、ユーザが左手で携帯機器１を把持した際に、携帯機器１の右側面方向の空間を撮像し、測距センサ５は、携帯機器１の右側面方向の空間に存在する物体までの距離を測定する。また、プロジェクタ８は、赤外線カメラ４および測距センサ５と同じ方向に可視光を照射することで画像等を投影する。
【００３０】
携帯機器１の背面（Ｔ６面）には、外側カメラ９が設けられる（図３）。外側カメラ９は、典型的には、赤外線カメラ４の撮像方向とは垂直な方向を撮像可能であり、背面と垂直な方向を撮像可能である。外側カメラ９は、レンズと可視光に感光するイメージセンサとを備える。外側カメラ９は、背面方向の空間を撮像し、カラー画像（ＲＧＢ画像）を取得する。なお、背面の外側カメラ９に加えて正面にもカメラが設けられてもよいし、背面の外側カメラ９は設けられず、正面（ディスプレイ２の画面が設けられた面）にカメラが設けられてもよい。
【００３１】
図４は、携帯機器１の内部構成の一例を示すブロック図である。図４に示すように、携帯機器１は、上述した各部の他、バイブレータ１１、マイク１２、スピーカ１３、制御部１４、通信部１５、姿勢検出部１６、ＧＰＳレシーバ１７、および地磁気センサ１８を備える。また、携帯機器１は、図示しないバッテリーを備え、当該バッテリーから電源が供給される。これら各部はハウジング１０内に収納される。
【００３２】
制御部１４は、ディスプレイ２、タッチパネル３、赤外線カメラ４、測距センサ５、入力ボタン６、照射部７、プロジェクタ８、バイブレータ１１、マイク１２、スピーカ１３、通信部１５、姿勢検出部１６、ＧＰＳレシーバ１７、地磁気センサ１８等、各部に接続され、各部を制御する。
【００３３】
具体的には、制御部１４は、ＣＰＵやメモリ等を含み、携帯機器１に備えられた図示しない記憶装置（例えば、不揮発性メモリやハードディスク等）に記憶された所定のプログラム（例えば、ゲーム処理や画像処理、各種演算を行うためのアプリケーションプログラム）に基づいて所定の処理を行う。例えば、制御部１４は、赤外線カメラ４からの画像を取得して当該画像を解析したり、測距センサ５からの信号に基づいて物体までの距離を算出したり、タッチパネル３や入力ボタン６からの入力信号に応じた処理を行う。そして、制御部１４は、所定の処理の結果に基づく画像を生成し、ディスプレイ２に当該画像を出力する。なお、所定の処理を行うためのプログラムは、通信部１５を介して外部からダウンロードされてもよい。
【００３４】
バイブレータ１１は、制御部１４からの命令に基づいて動作し、携帯機器１全体を振動させる。バイブレータ１１は、ユーザの手に振動が伝わりやすい所定の位置（例えば、ハウジング１０内の中央部や左右の何れかに偏った位置）に設けられる。
【００３５】
マイク１２およびスピーカ１３は、音声を入力／出力するために用いられる。通信部１５は、所定の通信方式（例えば、無線ＬＡＮ等）で他の機器と通信を行うために用いられる。また、姿勢検出部１６は、例えば、加速度センサや角速度センサであり、携帯機器１の姿勢を検出する。
【００３６】
ＧＰＳレシーバ１７は、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）衛星からの信号を受信し、当該信号を受信することで携帯機器１は自機の位置を計算することができる。例えば、携帯機器１は、特定の位置で所定の操作（例えば、後述する赤外線カメラ４を用いたジェスチャ入力やボタン入力、携帯機器１を振るなどの動作）が行われた場合に、当該特定の位置に対応付けられたオブジェクトを表示してもよい。例えば、携帯機器１においてゲームが行われる場合において、携帯機器１が特定の位置にある場合、当該特定の位置に対応したオブジェクトを当該ゲームに登場させてもよい。
【００３７】
また、地磁気センサ１８は、磁気の方向および大きさを検出可能なセンサである。例えば、携帯機器１は、地磁気センサ１８の検出結果に基づいて、特定の方位を向いているか否かを判定し、特定の方位で所定の操作（上記ジェスチャ入力等）が行われた場合に、オブジェクトを表示してもよい。例えば、携帯機器１においてゲームが行われる場合、特定の方位に対応したオブジェクトが当該ゲームに登場してもよい。また、携帯機器１は、ＧＰＳレシーバ１７を用いたＧＰＳ情報と地磁気センサを用いた方位情報とを組み合わせてもよい。例えば、携帯機器１が、特定の位置にあり、かつ、特定の方位を向いている場合、当該特定の位置及び特定の方位に対応するオブジェクトを表示したり、当該オブジェクトをゲームに登場させてもよい。
【００３８】
図５は、携帯機器１の使用状態の一例を示す図である。図５に示すように、ユーザは、携帯機器１を一方の手で把持した状態で、他方の手を用いてジェスチャ入力を行うことができる。なお、ジェスチャ入力は、ユーザが操作する（動かす）操作対象物によって行われる任意の入力であってよい。操作対象物は、ユーザの体（手や顔等のように体の一部であってもよいし、体全体であってもよい）であってもよいし、ユーザが把持する物体であってもよいし、その両方であってもよい。携帯機器１は、操作対象物の形状をジェスチャ入力として認識してもよいし、操作対象物の動きをジェスチャ入力として認識してもよいし、形状と動きの組み合わせをジェスチャ入力として認識してもよい。例えば、ユーザは、手の形状、手の動き、（携帯機器１を基準とした）手の位置、手の向き（姿勢）等によってジェスチャ入力を行うことができる。
【００３９】
第１の実施形態においては、携帯機器１は、赤外線カメラ４で画像（赤外線画像）を撮像し、撮像画像に基づいてジェスチャ入力を判別する。具体的には、撮像画像が赤外線カメラ４から取得されると、携帯機器１は、取得された撮像画像に基づいて、対象物の形状、位置、および／または、向き（姿勢）を算出する。なお、携帯機器１は、繰り返し取得される複数の撮像画像に基づいて、対象物の動き（形状の変化や、移動方向や、移動速度等）を算出してもよい。携帯機器１は、これらの算出結果に基づいてジェスチャ入力を判別する。
【００４０】
［２．携帯機器１における処理の概要］
次に、第１の実施形態において、携帯機器１によって実行される処理の概要を説明する。以下では、図６〜図１０を参照して、携帯機器１が赤外線カメラによってユーザの手を検出し、手の位置および形状を算出する処理について説明する。
【００４１】
なお、第１の実施形態（および後述する第２〜第４の実施形態においても同様）においては、ユーザが手を用いてジェスチャ入力を行う場合を想定し、携帯機器１は、ユーザの手を検出し、その位置および形状を算出するものとする。ただし、携帯機器１が検出する対象となる物体は任意であってよい。例えば、他の実施形態においては、携帯機器１は、ユーザが把持する所定の操作用部材（例えばペン等）を検出するようにしてもよい。
【００４２】
図６は、撮像画像の一例を示す図である。第１の実施形態では、赤外線カメラ４によって撮像される撮像画像（赤外線画像）は、各画素について輝度の情報を含んでいる。ここで、赤外線カメラ４の撮像範囲に位置する物体（図６ではユーザの手）に対して照射部７による赤外線が照射され、その反射光が赤外線カメラ４によって検出されるので、撮像画像における当該物体の領域については輝度が高くなる。例えば、赤外線カメラ４の近く（例えば、４０ｃｍ以内の範囲）にユーザが手を配置すると、図６に示すように、撮像画像には手の領域２１が含まれることになる。また、手のひらの部分が赤外線カメラ４に近く、腕の部分が赤外線カメラ４から次第に離れている場合には、手の領域２１における腕の部分の輝度は、手のひらの部分から離れるにつれて輝度が低くなる。
【００４３】
なお、第１の実施形態において、撮像画像における各画素の輝度は、多段階（例えば２５６段階）で表現されるものとする。ただし、図６では、図面を見やすくする目的で、輝度が相対的に低い部分を斜線領域で表し、相対的に高い部分を白色領域（手の領域２１）で表している。
【００４４】
第１の実施形態において、携帯機器１は、撮像画像に基づいて手の位置を算出する。第１の実施形態においては、携帯機器１は、手の３次元位置、すなわち、赤外線カメラ４の撮像方向に垂直な２次元方向（図に示すｘ軸方向およびｙ軸方向）の位置と、赤外線カメラ４の撮像方向（図に示すｚ軸方向）に関する位置とを算出する。
【００４５】
（ｘ軸方向およびｙ軸方向に関する位置の算出）
赤外線カメラ４の撮像方向に垂直な２次元方向の位置は、撮像画像の輝度に関する重心位置（図６に示す位置Ｐ１）を用いて算出される。ここで、撮像画像における重心位置とは、撮像画像の各画素の輝度を重みとした、撮像画像全体における重心位置である。重心位置は、画素の位置を表す２次元座標にその画素の輝度を乗算した２次元値を各画素について算出し、算出された各２次元値の総和を、各画素の輝度の総和で除算することによって得ることができる。なお、撮像画像において、手の領域２１以外に、輝度が高くかつ面積の大きい領域がない場合（赤外線カメラ４に手以外の物体が写っていない場合）には、重心位置は、手の領域２１の内側の領域となる。
【００４６】
図７は、図６に示す状態から、手の位置が移動した場合における撮像画像の一例を示す図である。図７に示すように、撮像画像内における手の領域２１が移動すると、重心位置もそれに応じて移動する。したがって、上記重心位置は、手の位置を表すと言うことができ、手の位置として用いることができる。つまり、携帯機器１は、重心位置を算出することによって、上記２次元方向に関する手の位置を検出することができる。
【００４７】
なお、携帯機器１は、重心位置自体を手の位置として用いることに限らず、重心位置に基づいて決定される任意の位置を手の位置として用いてもよい。例えば、手の位置は、重心位置を所定の移動方向に所定の移動量だけ移動させた位置として算出されてもよい。また、上記移動方向および／または移動量は、固定であってもよいし、可変であってもよい。例えば、上記移動方向および／または移動量は、手の形状、撮像方向に関する手の位置、撮像画像全体の明るさの少なくとも１つに応じて可変に設定されてもよい。つまり、携帯機器１は、重心位置から手の位置を算出する方法を、手の形状、撮像方向に関する手の位置、撮像画像全体の明るさの少なくとも１つに応じて決定してもよい。これによって、手の位置をより正確に算出することができる。なお、手の形状、撮像方向に関する手の位置、および、撮像画像全体の明るさの算出方法については後述する。
【００４８】
以上のように、第１の実施形態においては、携帯機器１は、撮像画像における手の領域２１を特定することなく、撮像画像の重心位置を用いて手の位置を算出する。これによれば、手の領域（手の輪郭）を特定するための画像認識処理の必要がなく、簡易な方法で手の位置を算出することができる。換言すれば、手の位置を算出する処理の処理負荷を軽減することができ、処理の高速化を図ることができる。
【００４９】
なお、重心位置を算出する対象となる領域は、撮像画像全体の領域である必要はなく、手の領域２１とは独立して設定される任意の領域であってもよい。携帯機器１は、例えば、撮像画像の端部（周）から所定距離よりも内側の領域を対象として、上記重心位置を算出してもよい。このとき、当該内側領域に手の領域２１が存在する場合に手の位置が算出されるので、この場合にのみジェスチャ入力が受け付けられることとなる。
【００５０】
（ｚ軸方向に関する位置の算出）
第１の実施形態においては、携帯機器１は、撮像方向（ｚ軸方向）に関する位置を撮像画像に基づいて算出する。撮像方向に関する位置（赤外線カメラ４からの距離）は、撮像画像（全体）の明るさに基づいて算出される。具体的には、携帯機器１は、撮像画像の各画素の輝度の平均値を算出し、当該平均値に基づいて上記距離を算出する。
【００５１】
図８は、図６に示す状態から、手の位置が移動した場合における撮像画像の他の一例を示す図である。図８に示す撮像画像は、図６に示す撮像画像に比べて、赤外線カメラ４に近い方向へ手が移動した場合を示している。この場合、撮像画像において手の領域２１が占める割合は、図６に示す状態に比べて大きくなるので、撮像画像の明るさ（上記平均値）は、図６に示す状態に比べて大きくなる。このように、撮像画像全体の明るさは、赤外線カメラ４からの手の距離に応じて変化する。そのため、携帯機器１は、撮像画像の明るさに基づいて手の距離を算出することができる。
【００５２】
撮像画像の明るさに基づいて距離を算出する具体的な方法は任意である。例えば、第１の実施形態においては、携帯機器１は、明るさと距離との対応関係を表す情報（テーブルでもよいし、関数でもよい）を予め記憶しておき、当該対応関係に基づいて距離を算出する。なお、他の実施形態においては、携帯機器１は、ある基準時点（例えば撮像画像の取得を開始した時点）を基準とした撮像画像の明るさの変化量に基づいて、当該基準時点の位置を基準とした距離（基準時点の位置を基準とした相対位置）を算出してもよい。
【００５３】
なお、携帯機器１は、手の距離に関わらず、上述の重心位置から手の２次元位置を算出することが可能である。ただし、重心位置と手の領域２１との位置関係は、上記距離に応じて変化するおそれがある。したがって、携帯機器１は、重心位置から手の位置を特定する処理（方法）を、上記距離に応じて変更するようにしてもよい。例えば、携帯機器１は、重心位置を所定の移動方向に所定の移動量だけ移動させた位置として手の位置を算出する場合、移動方向および／または移動量を、上記距離に応じて変化させるようにしてもよい。
【００５４】
以上のように、第１の実施形態においては、携帯機器１は、撮像画像における手の領域２１を特定することなく、撮像画像の明るさを用いて赤外線カメラ４からの手の距離を算出する。これによれば、手の領域２１を特定するための画像認識処理の必要がなく、簡易な方法で手の距離を算出することができる。換言すれば、手の距離を算出する処理の処理負荷を軽減することができ、処理の高速化を図ることができる。
【００５５】
なお、撮像画像の明るさ（上記平均値）を算出する対象となる領域は、撮像画像全体の領域である必要はなく、手の領域２１とは独立して設定される任意の領域であってもよい。例えば、上記重心位置を算出する場合と同様、携帯機器１は、撮像画像の端部（周）から所定距離よりも内側の領域を対象として、上記平均値を算出してもよい。
【００５６】
（手の形状の特定）
また、第１の実施形態においては、携帯機器１は、手の形状を撮像画像に基づいて算出する。第１の実施形態においては、携帯機器１は、手の形状として、手が開いた形状（パーの形状）であるか、それとも、手が閉じた形状（グーの形状）であるかを特定する。
【００５７】
図９は、手が開いた形状である場合における撮像画像の一例を示す図である。なお、図９においては、図面を見やすくする目的で、（図６等とは異なり）輝度の低い領域を斜線では示していない。第１の実施形態においては、携帯機器１は、図９に示すように、手の形状を判別するための判別範囲２２を撮像画像上に設定する。判別範囲２２は、上述の重心位置Ｐ１に基づいて設定される。具体的には、第１の実施形態においては、携帯機器１は、重心位置Ｐ１を中心とする所定長さの半径を有する円形領域として判別範囲２２を設定する。なお、重心位置に基づく判別範囲２２の設定方法は任意である。例えば、他の実施形態において、重心位置とは異なる位置を手の位置として算出する場合、携帯機器１は、当該手の位置を中心とする円形領域として判別範囲２２を設定してもよい。
【００５８】
また、判別範囲２２の大きさおよび形状は任意である。第１の実施形態においては、判別範囲２２の大きさ（円形領域の直径）は、閉じた状態における手の領域よりも大きく、開いた状態における手の領域よりも小さくなるように設定される。換言すれば、判別範囲は、手を閉じた状態では手の領域がその内部に含まれ、手を開いた状態では手の領域の一部（指先の部分）が外部に出る位置および大きさに設定される。したがって、判別範囲２２の大きさは、赤外線カメラ４からの手の距離（換言すれば、撮像画像の明るさ）に応じて変化するように設定されてもよい。
【００５９】
図９に示すように、手が開いた形状である場合には、手の領域２１のうちの指の領域および手首（腕）の領域（図９に示す斜線領域）が判別範囲２２の外側に位置する。一方、図１０は、手が閉じた形状である場合における撮像画像の一例を示す図である。図１０に示すように、手が閉じた形状である場合には、手の領域２１のうちの手首の領域のみが判別範囲２２の外側に位置する。したがって、判別範囲２２と手の領域との関係に基づいて、手の形状を判別することができる。
【００６０】
具体的には、携帯機器１は、手の領域２１のうちで判別範囲２２の外側に存在する領域（外部領域と呼ぶ）の数に応じて、手が開いた形状か、それとも、手が閉じた形状かを判別する。なお、外部領域は、判別範囲２２の外側に存在し、かつ、輝度が相対的に高い領域（例えば輝度が所定値以上である領域）として検出することができる。第１の実施形態においては、携帯機器１は、上記外部領域の数が５個以上であれば、手が開いた形状であると判別し、外部領域の数が１個以下であれば、手が閉じた形状であると判別する。なお、上記において、「（６個ではなく）５個以上」および「（１個ではなく）１個以下」としているのは、外部領域のうちの１つ（例えば、手首の領域）が、輝度が低いために検出されない場合でも、手の形状を判別することができるようにするためである。
【００６１】
なお、他の実施形態においては、携帯機器１は、３種類の以上の形状のうちから、手の形状を判別してもよい。例えば、外部領域の数に基づいて、手の形状が、グーであるか、チョキであるか、あるいはパーであるかを判別することができる。具体的には、携帯機器１は、判別範囲２２の外側に存在する領域の数が５個以上である場合、手が開いた形状（パーの形状）であると判別し、当該領域の数が２個または３個である場合、２本の指が伸びた形状（チョキの形状）であると判別し、当該領域の数が１個以下である場合、手が閉じた形状（グーの形状）であると判別することができる。
【００６２】
また、他の実施形態においては、携帯機器１は、複数個の判別範囲を設定するようにしてもよい。そして、携帯機器１は、各判別範囲と手の領域とのそれぞれの関係に基づいて、手の形状を判別してもよい。具体的には、携帯機器１は、手の位置を中心とした半径の異なる円形領域である２つの判別範囲を設定してもよい。これによれば、携帯機器１は、手の形状として、手が閉じている形状と、手が開きかけている形状と、手が開いた形状とを判別することができる。このように、複数の判別範囲を設定することによって、手の形状をより詳細に特定することができる。
【００６３】
以上のように、第１の実施形態においては、携帯機器１は、撮像画像における手の領域２１を特定することなく、重心位置に基づく判別範囲２２を用いて手の形状を特定する。これによれば、手の領域２１を特定するための画像認識処理の必要がなく、簡易な方法で手の形状を特定することができる。換言すれば、手の形状を特定する処理の処理負荷を軽減することができ、処理の高速化を図ることができる。
【００６４】
［３．携帯機器１における処理の具体例］
次に、携帯機器１において実行される処理の具体例について説明する。図１１は、携帯機器１によって実行される処理の流れの一例を示すフローチャートである。図１１に示す一連の処理は、任意の条件およびタイミングで実行されてよい。第１の実施形態においては、上記一連の処理は、ジェスチャ入力を受け付ける所定のアプリケーションプログラム（例えばゲームプログラム）の実行中において実行される。
【００６５】
なお、本出願において、図面に示すフローチャートにおける各ステップの処理は、単なる一例に過ぎず、同様の結果が得られるのであれば、各ステップの処理順序を入れ替えてもよいし、各ステップの処理に加えて（または代えて）別の処理が実行されてもよい。また、本明細書では、上記フローチャートの各ステップの処理を携帯機器１のＣＰＵが実行するものとして説明するが、上記フローチャートにおける一部のステップの処理を、ＣＰＵ以外のプロセッサや専用回路が実行するようにしてもよい。また、携帯機器１において実行される処理の一部は、携帯機器１と通信可能な他の情報処理装置（例えば、携帯機器１とネットワークを介して通信可能なサーバ）によって実行されてもよい。すなわち、図１１に示す各処理（図１９、図２７、および図３３における各処理についても同様）は、携帯機器１を含む複数の情報処理装置が協働することによって実行されてもよい。
【００６６】
また、制御部１４は、図１１に示す各処理（図１９、図２７、および図３３における各処理についても同様）を、メモリを用いて実行する。すなわち、制御部１４は、各処理ステップによって得られる情報（データ）をメモリに記憶し、それ以降の処理ステップにおいて当該情報を用いる場合には、メモリから当該情報を読み出して利用する。
【００６７】
まずステップＳ１において、携帯機器１の制御部１４は、赤外線カメラ４による撮像画像を赤外線カメラ４から取得する。すなわち、赤外線カメラ４は所定の時間間隔で画像を撮像するので、制御部１４は、撮像画像を赤外線カメラ４から取得し、撮像画像のデータをメモリに記憶する。
【００６８】
ステップＳ２において、制御部１４は、ステップＳ１で取得された撮像画像に基づいて、当該撮像画像に含まれる手の２次元位置（赤外線カメラ４の撮像方向に垂直な方向に関する位置）を算出する。この２次元位置は、上記“（ｘ軸方向およびｙ軸方向に関する位置の算出）”で述べた方法で算出される。
【００６９】
ステップＳ３において、制御部１４は、ステップＳ１で取得された撮像画像に基づいて、当該撮像画像に含まれる手の距離（赤外線カメラ４の撮像方向に関する位置）を算出する。この距離は、上記“（ｚ軸方向に関する位置の算出）”で述べた方法で算出される。
【００７０】
ステップＳ４において、制御部１４は、ステップＳ１で取得された撮像画像に基づいて、当該撮像画像に含まれる手の形状（手が開いた形状であるか閉じた形状であるか）を特定する。手の形状は、上記“（手の形状の算出）”で述べた方法で算出される。
【００７１】
ステップＳ５において、制御部１４は、ステップＳ２〜Ｓ４の一連の処理によって算出された手の３次元位置および形状に基づいて所定の処理を実行する。この所定の処理は、手の３次元位置および形状を入力とする任意の情報処理であってよい。例えば、制御部１４は、仮想空間におけるオブジェクト（例えば、ゲーム空間に登場するプレイヤキャラクタや、カーソル等）を、手の３次元位置および形状に応じて制御する処理を実行してもよい。また例えば、制御部１４は、手の３次元位置および形状に基づいてジェスチャ入力を検出し、検出されたジェスチャ入力に応じた処理を実行してもよい。また、ステップＳ５の処理において、制御部１４は、上記所定の処理の結果を表す画像をディスプレイ２に表示してもよい。
【００７２】
ステップＳ６において、制御部１４は、手の位置および形状に応じた一連の処理を終了するか否かを判定する。ステップＳ６における判定の具体的な方法は任意である。第１の実施形態においては、ユーザが所定の終了指示（例えば、アプリケーションを終了する指示）を行った場合、上記一連の処理を終了すると判定される。ステップＳ６の判定結果が肯定である場合、制御部１４は、図１１に示す処理を終了する。一方、ステップＳ６の判定結果が否定である場合、制御部１４は、ステップＳ１の処理を再度実行する。以降、ステップＳ６において処理を終了すると判定されるまで、ステップＳ１〜Ｓ６の一連の処理が繰り返し実行される。
【００７３】
［４．第１の実施形態の作用効果］
以上のように、第１の実施形態においては、携帯機器１は、撮像画像に基づいて、各画素の明るさに関する情報を取得し（ステップＳ１）、撮像画像について、各画素の明るさを重みとしたときの偏りを表す位置情報（重心位置の情報）を算出する（ステップＳ２）。そして、携帯機器１は、位置情報に基づいて、所定の情報処理を実行する（ステップＳ５）。なお、上記位置情報を算出する対象となる（撮像画像中における）領域は、上記実施形態においては撮像画像の全領域であったが、上記物体（手）の画像の領域とは独立して設定される任意の領域であってよい。つまり、「撮像画像について位置情報を算出する」とは、撮像画像の全領域を対象として位置情報を算出する態様と、撮像画像の一部領域を対象として位置情報を算出する態様との両方を含む意味である。また、所定の情報処理は、任意の処理でよく、例えば、物体（手）の位置、形状、および／または動きに応じた情報処理である。
【００７４】
上記によれば、携帯機器１は、物体の位置を簡易な処理で算出することができる。携帯機器１は、例えば画像認識処理等によって物体の領域を特定することなく、簡易な方法で物体の位置を算出することができる。
【００７５】
なお、携帯機器１は、上記位置情報に基づいて、物体の位置を表す情報を算出してもよいし、物体の位置の変化（速度）を表す情報を算出し、算出された情報に基づく情報処理を実行してもよい。これによれば、物体の位置および／または移動をユーザ入力として用いる情報処理を実行することができる。
【００７６】
携帯機器１は、上記位置情報に基づいて、撮像画像に含まれる物体の形状を表す情報を算出し（ステップＳ４）、当該情報に基づく情報処理を実行してもよい（ステップＳ５）。なお、情報処理は、物体の形状を入力とする処理であってもよいし、物体の形状の変化（動き）を入力とする処理であってもよい。上記によれば、物体の形状および／またはその変化をユーザ入力として用いる情報処理を実行することができる。
【００７７】
なお、上記実施形態においては、携帯機器１は、位置情報によって特定される撮像画像上における位置（重心位置）に基づいて当該撮像画像上において判別範囲を設定し、当該判別範囲と物体の画像の領域との関係に基づいて物体の形状（手が開いた形状であるか、それとも、手が閉じた形状であるか）を算出する（ステップＳ４）。これによれば、携帯機器１は、撮像画像における物体の領域を特定することなく、物体の形状を特定することができる。携帯機器１は、画像認識処理等によって物体の領域を特定しなくてもよいので、物体の形状を簡易な処理で特定することができる。
【００７８】
なお、携帯機器１は、撮像画像における明るさ（輝度の平均値）を算出し（ステップＳ３）、位置情報と明るさとに基づいて情報処理を実行する（ステップＳ５）。これによれば、位置情報と明るさとを入力として用いることでより多彩な操作を行うことが可能となる。なお、撮像画像における明るさを算出する対象となる領域は、位置情報を算出する対象となる領域と同じであってもよいし、異なっていてもよい。また、撮像画像における明るさを算出する対象となる領域は、撮像画像における物体の画像の領域とは独立して設定されてもよい。
【００７９】
また、携帯機器１は、算出された明るさに基づいて、赤外線カメラ４の撮像方向（ｚ軸方向）に関する位置および／または動きを表す情報を算出し（ステップＳ３）、当該情報に応じて情報処理を実行する（ステップＳ５）。これによれば、撮像方向に関する位置を、簡易な処理で算出することができる。
【００８０】
さらに、携帯機器１は、上記位置情報に基づいて、撮像方向に略垂直な方向（ｘ軸方向およびｙ軸方向）に関する２次元の位置を表す情報を算出し（ステップＳ２）、当該情報に応じて上記情報処理を実行してもよい（ステップＳ５）。なお、上記情報は、上記２次元の位置に加えて、または代えて、２次元の動きを表す情報であってもよい。これによれば、携帯機器１は、撮像画像に基づいて物体の３次元位置を算出することができる。
【００８１】
上記実施形態においては、携帯機器１は、上記位置情報として、撮像画像の全体または一部の所定領域における、各画素の明るさを重みとしたときの重心位置を算出する。これによれば、携帯機器１は、各画素の明るさを重みとしたときの上記所定領域における明るさの偏りを表す指標を容易に算出することができる。なお、他の実施形態においては、携帯機器１は、重心位置に限らず、領域の偏りを表す任意の指標を上記位置情報として算出してもよい。
【００８２】
［５．変形例］
第１の実施形態における情報処理を用いた変形例（応用例）として、例えば次に示す例が挙げられる。図１２は、ユーザがあおぎ操作を行う様子の一例を示す図である。また、図１３は、ユーザが回転操作を行う様子の一例を示す図である。また、図１４は、ユーザがはじき操作を行う様子の一例を示す図である。携帯機器１は、第１の実施形態における情報処理を用いて、これらの操作をジェスチャ入力として検出して、これらの操作に応じた処理を実行するようにしてもよい。
【００８３】
図１２に示すように、ユーザが、手を上下に動かす操作（あおぎ操作）を行う場合、携帯機器１は、第１の実施形態における方法を用いて、手の位置（ｘ軸方向に関する位置）を算出する。すなわち、携帯機器１は、撮像画像上においてｘ軸方向に対応する方向（例えば、図６における上下方向）に関する重心位置を算出する。このように、他の実施形態において、携帯機器１は、手の３次元位置を算出しなくてもよく、少なくとも１方向に関する位置を算出してもよい。また、携帯機器１は、手の形状を算出しなくてもよい。
【００８４】
携帯機器１は、算出された手の位置に基づいてあおぎ操作を検出し、あおぎ操作に応じた情報処理を実行する。具体的には、携帯機器１は、算出された手の位置の変化によって、あおぎ操作が行われたか否かを判定する。すなわち、算出された手の位置が上下方向の移動を繰り返している場合には、あおぎ操作が行われたと判定される。そして、あおぎ操作が行われたと判定された場合、携帯機器１は、例えば、仮想空間内のオブジェクトを移動させる処理を実行する。また、携帯機器１は、算出された位置の変化速度を算出し、変化速度に応じてあおぎ操作の速さ（激しさ）を算出してもよい。このとき、携帯機器１は、あおぎ操作の速さに応じて処理内容を変化させてもよい。例えば、オブジェクトの移動速度があおぎ操作の速さに応じて制御されてもよい。
【００８５】
また、図１３に示すように、ユーザが手を回転移動させる操作（回転操作）を行う場合、携帯機器１は、第１の実施形態における方法を用いて、手の２次元位置（ｘ軸方向およびｙ軸方向に関する位置）を算出する。携帯機器１は、算出された２次元位置に基づいて回転操作を検出し、回転操作に応じた情報処理を実行する。具体的には、携帯機器１は、算出された２次元位置が２次元座標上を移動する軌跡に基づいて、回転操作が行われているか否かを判定する。例えば、上記軌跡が環状の形状である場合、回転操作が行われたと判定される。回転操作が行われたと判定された場合、携帯機器１は、仮想空間内のオブジェクトを移動（例えば回転移動）させる処理を実行する。上記処理は、例えば、プレイヤキャラクタが乗る一輪車の車輪を回転させる処理であってもよいし、釣りゲームにおいてリールを巻く動作を行う処理であってもよい。なお、携帯機器１は、回転操作における回転角度（例えば、回転の中心位置から、手の位置への方向を表す角度）を算出し、回転角度に応じた処理（例えば、回転角度に応じてオブジェクトを回転させる処理）を実行してもよい。また、携帯機器１は、２次元位置の回転速度を算出し、当該回転速度に応じて回転操作の速さを算出してもよい。このとき、携帯機器１は、回転操作の速さに応じて処理内容を変化させてもよい。例えば、オブジェクトの回転速度が回転操作の速さに応じて制御されてもよい。
【００８６】
なお、上記においては、上下方向（ｘ軸方向）に関するあおぎ操作と、左右方向（ｚ軸方向）を軸とした回転操作とを例として説明した。ここで、第１の実施形態における手の位置の算出方法によれば、手の３次元位置を算出することが可能であるので、他の方向に関するあおぎ操作および回転操作を検出することができる。したがって、他の実施形態においては、携帯機器１は、他の方向に関するあおぎ操作を検出してもよいし、他の方向を軸とした回転操作を検出してもよい。
【００８７】
また、他の実施形態においては、携帯機器１は、あおぎ操作と回転操作の両方を検出してもよい。具体的には、携帯機器１は、第１の実施形態における方法を用いて手の形状を特定し、いずれの操作を検出するかを手の形状に応じて切り替えるようにしてもよい。例えば、携帯機器１は、手の形状が開いた形状（パーの形状）であると特定された場合にあおぎ操作を検出し、手の形状が閉じた形状（グーの形状）であると特定された場合に回転操作を検出するようにしてもよい。
【００８８】
また、図１４に示すように、ユーザが所定方向（図１４ではｚ軸方向）に手を移動させる操作と、指をはじく操作（はじき操作）とを行う場合、携帯機器１は、第１の実施形態における方法を用いて、手の位置（ｚ軸方向に関する位置）を算出するとともに、手の形状を特定する。図１４に示す例においては、携帯機器１は、第１の実施形態における判定範囲を用いて、手が閉じた形状であるか、それとも、指をはじいた形状であるかを判別する。そして、手が閉じた形状から指をはじいた形状（１本の指が伸びた形状）へと変化した場合、携帯機器１は、はじき操作が行われたと判定する。
【００８９】
携帯機器１は、手の位置に応じて仮想空間内のオブジェクトを移動させる処理を実行すると共に、上記はじき操作に応じて当該オブジェクトに所定の動作を実行させてもよい。例えば、携帯機器１は、仮想空間において大砲のオブジェクトを手の位置に応じて移動させるとともに、はじき操作に応じて大砲から弾を発射するようにしてもよい。
【００９０】
＜第２の実施形態＞
次に、本発明の第２の実施形態について説明する。第２の実施形態においては、携帯機器１は、第１の実施形態とは異なる方法を用いて、撮像画像に基づいて手の３次元位置を算出する。また、携帯機器１は、算出された３次元位置を用いて、３次元の仮想空間においてカーソルの移動を制御する。なお、第２の実施形態における携帯機器１のハードウェア構成は第１の実施形態と同じであるので、ハードウェア構成の詳細な説明を省略する。
【００９１】
［１．携帯機器１における処理の概要］
（手の位置および形状の算出）
第２の実施形態においては、携帯機器１は、撮像画像に含まれるユーザの手の領域を検出する。図１５は、撮像画像から検出された手の領域の一例を示す図である。ここで、手の領域（撮像画像における、手の画像の領域）３１は、撮像画像に対する所定の画像認識処理によって検出される。画像認識処理は、従来における処理であってもよく、例えば、輪郭抽出処理や、パターンマッチングにより手の領域を検出する処理や、ノイズ領域（手以外の領域）を除去する処理等を含む。なお、後述するように、手の領域３１を検出する画像認識処理によって、手の形状（例えば、手が閉じた形状であるか、それとも、開いた形状であるか）を特定することが可能である。また、手の領域３１を検出することによって、当該手の領域３１のうちの指の領域を特定することも可能である。
【００９２】
手の領域３１を検出すると、携帯機器１は、手の領域３１に基づいて手の３次元位置を算出する。手の３次元位置を算出する具体的な方法は任意である。第２の実施形態においては、携帯機器１は、撮像画像上における手の領域３１の位置に基づいて、赤外線カメラ４の撮像方向に垂直な２次元方向（ｘ軸方向およびｙ軸方向）の位置を算出する。手の２次元位置（ｘ軸方向およびｙ軸方向に関する位置）は、例えば、手の領域３１の中心位置（図１５に示す位置Ｐ２）として算出される。なお、他の実施形態においては、携帯機器１は、手の２次元位置として、手の領域３１内の各画素の輝度を重みとした重心位置を算出してもよい。なお、この重心位置は、手の領域３１を算出対象とした重心位置であるので、第１の実施形態における重心位置とは異なるものである。
【００９３】
また、携帯機器１は、撮像画像上における手の領域３１の大きさに基づいて、赤外線カメラ４の撮像方向（ｚ軸方向）に関する位置（赤外線カメラ４からの距離）を算出する。手の領域３１から手の距離（ｚ軸方向に関する位置）を算出する方法は任意である。例えば、携帯機器１は、手の領域３１の大きさと距離との対応関係を表す情報（テーブルでもよいし、関数でもよい）を予め記憶しておき、当該対応関係に基づいて距離を算出する。
【００９４】
また、第２の実施形態において、携帯機器１は、撮像画像に基づいて手の形状を特定する。上記図１５は、手が開いた形状である場合において撮像画像から抽出される手の領域を示す図である。一方、図１６は、手が閉じた形状である場合において撮像画像から抽出される手の領域を示す図である。第２の実施形態においては、携帯機器１は、手の形状として、手が開いた形状（パーの形状）であるか、それとも、手が閉じた形状（グーの形状）であるかを特定する。
【００９５】
手の形状を特定する方法は任意である。例えば、手の形状は、手の領域３１を検出するための画像認識処理において特定することができる。第２の実施形態においては、携帯機器１は、手が開いた形状に対応する基準画像と、手が閉じた形状に対応する基準画像とを用意しておき、上記画像認識処理においてこれら２つの基準画像を用いてパターンマッチングを行うことによって、手がいずれの形状であるかを特定する。
【００９６】
以上のようにして、第２の実施形態においては、携帯機器１は、画像認識処理によって手の領域を検出することによって、手の３次元位置および手の形状を算出する。なお、携帯機器１は、第２の実施形態においても、第１の実施形態における方法を用いて手の位置および／または形状を算出してもよい。
【００９７】
（手の位置および形状に基づくカーソル制御）
第２の実施形態においては、携帯機器１は、上記のようにして算出された手の３次元位置に基づいて、３次元仮想空間においてカーソルを制御する。また、上記のようにして特定された手の形状に基づいて、カーソルの選択状態または非選択状態を切り替える。これによって、第２の実施形態においては、ユーザは、手を３次元的に動かすことによってカーソルを３次元的に移動制御することができるとともに、カーソルを用いていわゆるドラッグアンドドロップの操作を行うことができる。
【００９８】
図１７は、第２の実施形態において行われる操作の一例を示す図である。図１７に示すように、ユーザは、手を上下（ｘ軸方向）、左右（ｚ軸方向）、および前後（ｙ軸方向）の３次元方向に移動させることによって、ディスプレイ２に表示される仮想空間においてカーソル３３を３次元方向に移動させることができる。すなわち、携帯機器１は、撮像画像に基づいて算出された手の３次元位置に基づいて、カーソル３３の仮想空間における３次元位置を算出する。カーソル３３の位置の具体的な算出方法は任意である。携帯機器１は、仮想空間におけるカーソル３３の３次元位置が現実空間における手の３次元位置に対応するように、カーソル３３の位置を算出してもよい。また例えば、携帯機器１は、現実空間における基準位置に対する手の３次元位置の方向に応じた（仮想空間における）方向へカーソル３３を移動させるように、カーソル３３の位置を算出してもよい。
【００９９】
ここで、本実施形態においては、手の移動方向と、ディスプレイ２上におけるカーソル３３の移動方向とが概ね一致するように、カーソル３３の移動が制御される（図１７の矢印参照）。すなわち、携帯機器１は、上記のように、（ａ）側面方向（ｚ軸方向）に関する第１位置と、（ｂ）側面方向に垂直で、かつ、ディスプレイ２の画面に垂直な方向（ｙ軸方向）に関する第２位置と、（ｃ）側面方向に垂直で、かつ、画面に平行な方向（ｘ軸方向）に関する第３位置とを含む３次元位置を算出する。そして、携帯機器１は、（ａ）画面における左右方向に対応する仮想空間内の方向に関するカーソル移動処理を第１位置に基づいて実行し、（ｂ）画面における奥行き方向に対応する仮想空間内の方向に関するカーソル移動処理を第２位置に基づいて実行し、（ｃ）画面における上下方向に対応する仮想空間内の方向に関するカーソル移動処理を第３位置に基づいて実行する。これによれば、現実空間におけるユーザの手の移動方向と、ディスプレイ２に表示される仮想空間におけるカーソル３３の移動方向とが概ね一致するので、直感的な操作が可能となり、カーソル３３の操作性を向上することができる。
【０１００】
また、携帯機器１は、撮像画像に基づいて特定された手の形状に応じて、カーソル３３の選択状態と非選択状態とを切り替える。ここで、選択状態とは、カーソル３３が仮想空間内のオブジェクトを選択可能な状態であり、非選択状態とは、カーソル３３がオブジェクトを選択不可能な状態である。また、カーソル３３がオブジェクトを選択している場合、カーソル３３の移動に伴ってオブジェクトも移動される。第２の実施形態においては、閉じた形状の手が検出された場合、カーソル３３が選択状態に設定され、開いた形状の手が検出された場合、カーソル３３が非選択状態に設定される。
【０１０１】
図１８は、カーソル３３を用いて仮想空間内のオブジェクトを移動させる一例を示す図である。図１８は、非選択状態でカーソル３３が移動した後、カーソル３３がオブジェクト３４を指定した状態において選択状態に切り替わり、選択状態となったカーソル３３がオブジェクト３４とともに移動する様子を表している。図１８においては、ユーザはまず、手を開いた状態で手を移動する。これに応じて、携帯機器１は、非選択状態でカーソル３３を移動する。ユーザは、カーソル３３がオブジェクト３４を指定する位置となるまで、開いた状態で手を移動する。カーソル３３がオブジェクト３４を指定する位置となると、ユーザは、手を閉じた状態とする。これに応じて、携帯機器１は、カーソル３３を非選択状態から選択状態へと切り替える。このとき、カーソル３３によって指定されるオブジェクト３４は被選択状態となる。次に、ユーザは、閉じた状態にしたまま手を移動する。これに応じて、携帯機器１は、カーソル３３とともにオブジェクト３４を移動する。これによって、ユーザは、オブジェクト３４に対してドラッグ操作を行うことができる。この後、ユーザが手を閉じた状態から手を開いた状態へと変化させることに応じて、カーソル３３が非選択状態となり、オブジェクト３４の移動は停止される。これによって、ユーザは、オブジェクト３４に対してドロップ操作を行うことができる。
【０１０２】
以上のように、第２の実施形態によれば、ユーザは、手を３次元的に動かす動作と、手を閉じた状態と開いた状態とで変化させる動作とによって、仮想空間においてドラッグアンドドロップの操作を行うことができる。また、ユーザは、携帯機器１の側面方向の空間において手を動作させるので、手がディスプレイの邪魔になりにくく、ユーザはディスプレイが見やすい状態でカーソル操作を行うことができる。
【０１０３】
なお、他の実施形態においては、カーソルは、２次元方向にのみ移動するものであってもよい。すなわち、携帯機器１は、所定の２次元方向について手の位置を算出し、算出される２次元位置に基づいて、仮想空間におけるカーソルの２次元位置を算出してもよい。
【０１０４】
［２．携帯機器１における処理の具体例］
次に、第２の実施形態における携帯機器１において実行される処理の具体例について説明する。図１９は、第２の実施形態における携帯機器１によって実行される処理の流れの一例を示すフローチャートである。図１９に示す一連の処理は、任意の条件およびタイミングで実行されてよい。例えば、上記一連の処理は、ジェスチャ入力を受け付ける所定のアプリケーションプログラム（例えばゲームプログラム）の実行中において実行される。
【０１０５】
ステップＳ１０において、制御部１４は、第１の実施形態におけるステップＳ１の処理と同様、赤外線カメラ４による撮像画像を赤外線カメラ４から取得する。続くステップＳ１１において、制御部１４は、ステップＳ１１で取得された撮像画像における手の領域を検出する。さらに、ステップＳ１２において、制御部１４は、ステップＳ１１で検出された手の領域に基づいて手の３次元位置を算出する。続くステップＳ１３において、制御部１４は、ステップＳ１で取得された撮像画像に基づいて手の形状を特定する。上記ステップＳ１１〜Ｓ１３の一連の処理は、上記“（手の位置および形状の算出）”で述べた方法によって実行される。
【０１０６】
ステップＳ１４において、制御部１４は、カーソル３３が選択状態であるか否かを判定する。この判定は、ステップＳ１３で特定された手の形状が、手が開いた形状であるか否かによって行われる。ステップＳ１４の判定結果が肯定である場合、ステップＳ１５の処理が実行される。一方、ステップＳ１４の判定結果が否定である場合、後述するステップＳ１６の処理が実行される。
【０１０７】
ステップＳ１５において、制御部１４は、カーソル３３がオブジェクトを選択中であるか否かを判定する。この判定は、カーソル３３がオブジェクトを指定する位置であるか否かによって行われる。ステップＳ１５の判定結果が否定である場合、ステップＳ１６の処理が実行される。一方、ステップＳ１５の判定結果が肯定である場合、後述するステップＳ１７の処理が実行される。
【０１０８】
ステップＳ１６において、制御部１４は、ステップＳ１２で算出された手の３次元位置に基づいて、仮想空間におけるカーソル３３の移動を制御する。カーソル３３の移動制御は、上記“（手の位置および形状に基づくカーソル制御）”で述べた方法によって実行される。ステップＳ１６の次に、後述するステップＳ１８の処理が実行される。
【０１０９】
一方、ステップＳ１７において、制御部１４は、ステップＳ１２で算出された手の３次元位置に基づいて、仮想空間においてカーソル３３と、カーソル３３によって指定されるオブジェクトとの移動を制御する。カーソル３３およびオブジェクトの移動制御方法は、カーソル３３とともにオブジェクトが移動される点を除いて、上記ステップＳ１６における移動制御方法と同じである。ステップＳ１７の次に、後述するステップＳ１８の処理が実行される。
【０１１０】
ステップＳ１８において、制御部１４は、ステップＳ１６またはＳ１７の処理の結果を表す仮想空間の画像を生成し、生成した画像をディスプレイ２に表示する。続くステップＳ１９において、制御部１４は、手の位置および形状に応じたカーソル移動制御を終了するか否かを判定する。ステップＳ１９における判定の具体的な方法は任意である。第２の実施形態においては、ユーザが所定の終了指示（例えば、アプリケーションを終了する指示）を行った場合、上記カーソル移動制御処理を終了すると判定される。ステップＳ１９の判定結果が肯定である場合、制御部１４は、図１９に示す処理を終了する。一方、ステップＳ１９の判定結果が否定である場合、制御部１４は、ステップＳ１０の処理を再度実行する。以降、ステップＳ１９において処理を終了すると判定されるまで、ステップＳ１０〜Ｓ１９の一連の処理が繰り返し実行される。
【０１１１】
［３．第２の実施形態の作用効果］
以上のように、第２の実施形態においては、携帯機器１は、ハウジングの側面方向（の空間）を撮像する赤外線カメラ４を備え、赤外線カメラ４による撮像画像に基づいて、当該撮像画像に含まれる物体（ユーザの手）の３次元位置を算出する（ステップＳ１２）。そして、携帯機器１は、３次元位置に応じた情報処理を実行する（ステップＳ１６，Ｓ１７）。上記によれば、携帯機器１は、ユーザが手等を動かす操作を入力として情報処理を実行する。ユーザは、手等を動かすことで入力操作を行うことができるので、多様な入力を行うことができる。また、赤外線カメラ４は、携帯機器１の側面方向の空間を撮像するので、ユーザは、携帯機器１の側面方向において手等を動かせばよいので、例えば、携帯機器１を片手で持った状態で、もう一方の手で入力操作を行うことができる（図５参照）。したがって、ユーザにとって操作しやすい状態で入力操作を行うことができる。
【０１１２】
なお、第１の実施形態でも第２の実施形態と同様、物体の３次元位置を算出し、算出された３次元位置に応じた情報処理が実行される。したがって、第１の実施形態でも第２の実施形態と同様、上記の効果を奏することができる。
【０１１３】
また、第２の実施形態においては（第１の実施形態についても同様である）、携帯機器１は、撮像画像に基づいて、物体（手）の形状を特定し（ステップＳ１３）、物体の３次元位置および形状に応じた情報処理を実行する（ステップＳ１４）。上記によれば、ユーザは、手の形状によって入力操作を行うことができるので、より多様な入力を行うことができる。
【０１１４】
また、第２の実施形態においては（第１の実施形態についても同様である）、携帯機器１は、３次元位置に基づいて３次元仮想空間における位置（カーソルの位置）を特定する。これによれば、ユーザは、手を３次元的に動かす操作によって仮想空間における３次元位置を指定することができる。さらに、携帯機器１は、特定された位置に関して、物体（手）の形状に応じて異なる情報処理を実行する（例えば、カーソルを選択状態にするか、非選択状態にするかを切り替えて処理を実行する（ステップＳ１４，Ｓ１６，Ｓ１７））。上記によれば、ユーザは、手を動かすことによって仮想空間における位置を指定することができるとともに、手の形状によって情報処理の内容を指定することができ、操作性の良い位置指定操作をユーザに提供することができる。
【０１１５】
なお、第２の実施形態においては、携帯機器１は、撮像画像に含まれる物体（手）の画像領域を特定し（ステップＳ１１）、当該画像領域に基づいて当該物体の形状を特定する（ステップＳ１３）。そして、携帯機器１は、特定された物体の画像領域に基づいて当該物体の位置を算出する（ステップＳ１２）。これによれば、携帯機器１は、物体の領域を特定することによって物体の位置および形状を算出することができる。
【０１１６】
なお、第１の実施形態のように、携帯機器１は、撮像画像上における物体の２次元位置を算出し、当該２次元位置に基づいて３次元位置を算出してもよい（例えば、当該２次元位置を含む３次元位置を算出してもよい）。また、携帯機器１は、算出された２次元位置に基づいて物体の形状を特定してもよい（例えば、２次元位置に基づいて設定される判別範囲を用いて形状を特定してもよい）。これによれば、携帯機器１は、簡易な処理で物体の位置および形状を特定することができる。
【０１１７】
また、第２の実施形態においては（第１の実施形態についても同様である）、携帯機器１は、ハウジングの正面に設けられるディスプレイ２を備え、３次元位置に応じた画像をディスプレイ２に表示する情報処理を実行する（ステップＳ１８）。これによれば、ユーザが手を動かす操作による処理結果がディスプレイに表示される。ここで、ユーザは携帯機器１の側面方向において手を動かすので、手がディスプレイに表示される画像の邪魔になりにくく、画像の視認性を向上することができる。
【０１１８】
［４．変形例］
（手の向きを算出する変形例）
第２の実施形態のように撮像画像における手の領域を検出する場合、携帯機器１は、手の向きを算出するようにしてもよい。ここで、撮像方向（ｚ軸方向）を軸とした回転に関する手の向きについては、撮像画像における手の領域の向きに基づいて算出することができる。また、撮像方向に垂直な方向（ｘ軸方向またはｙ軸方向等）を軸とした回転に関する手の向きについては、撮像画像における手の領域の輝度に基づいて算出することができる。以下、第２の実施形態の変形例として、撮像方向に垂直な方向を軸とした回転に関する手の向きを算出する例について説明する。
【０１１９】
図２０は、第２の実施形態の変形例においてユーザが向き変更操作を行う様子の一例を示す図である。図２０に示すように、本変形例では、ユーザは、人差し指を伸ばした形状で、上下方向（ｘ軸方向）を軸とした回転方向に手の向きを変更する操作（向き変更操作）を行う。携帯機器１は、撮像画像に基づいて手の向きを算出し、手の向きに応じた情報処理を実行する。
【０１２０】
図２１は、手の向きが異なる２つの場合において撮像画像から検出された手の領域の一例を示す図である。図２１では、撮像画像から検出された手の領域３１について、濃淡によって輝度を表している。
【０１２１】
上述したように、赤外線カメラ４により撮像される物体の輝度は、赤外線カメラ４からの位置が近いほど高くなる。そのため、図２０に示す（ａ）の状態のように、人差し指がユーザから見て正面方向（ｙ軸負方向）より左を向く場合、すなわち、赤外線カメラ４から見て手の指先が手首よりも手前にある向きとなる場合、撮像画像における手の領域３１は、図２１に示す（ａ）のような輝度の分布となる。すなわち、手の領域３１のうちの左側領域（指先）が右側領域（手首）よりも輝度が高くなる。一方、図２０に示す（ｂ）の状態のように、ユーザから見て人差し指が正面方向より右を向く場合、すなわち、赤外線カメラ４から見て手の指先が手首よりも奥にある向きとなる場合、撮像画像における手の領域３１は、図２１に示す（ｂ）のような輝度の分布となる。すなわち、手の領域３１のうちの左側領域（指先）が右側領域（手首）よりも輝度が低くなる。また、図示しないが、人差し指が正面方向を向く場合、すなわち、赤外線カメラ４から見て手の指先と手首とがほぼ同じ距離にある向きとなる場合、手の領域３１のうちの左側領域（指先）の輝度と右側領域（手首）の輝度はほぼ同じになる。
【０１２２】
以上より、ｘ軸回りの回転に関する手の向きについては、撮像画像における左側領域と右側領域との輝度の差に基づいて算出することができる。本変形例において、携帯機器１は、撮像画像から検出された手の領域３１のうちから、左側領域の位置と、右側領域の位置とを特定し、特定した２つの位置の輝度を比較する。なお、特定される２つの位置は、手の領域３１から決められる任意の位置であってよい。例えば、携帯機器１は、手の領域の左端から所定距離にある位置と、手の領域の右端から所定距離にある位置とを特定してもよい。
【０１２３】
携帯機器１は、左側領域の輝度と、右側領域の輝度とに基づいて、上下方向（ｘ軸方向）を軸とした回転に関する手の向きを算出する。すなわち、左側領域の輝度と右側領域の輝度とが略同じである場合（差が所定値よりも小さい場合）、携帯機器１は、ユーザから見て手が正面方向を向いていると特定する。また、左側領域の輝度が右側領域の輝度より所定値以上高い場合、携帯機器１は、（ユーザから見て）手が正面方向より左を向いていると特定する。また、左側領域の輝度が右側領域の輝度より所定値以上低い場合、携帯機器１は、（ユーザから見て）手が正面方向より右を向いていると特定する。このようにして、本変形例では、携帯機器１は、手が正面を向いているか、正面より左を向いているか、それとも、正面より右を向いているかを特定することができる。なお、他の実施形態においては、携帯機器１は、手の向きを表す角度を算出してもよい。
【０１２４】
なお、上記においては、上下方向（ｘ軸方向）を軸とした回転に関する手の向きを算出する場合について説明したが、上記と同様の方法で、前後方向（ｙ軸方向）を軸とした回転に関する手の向きを算出することも可能である。すなわち、携帯機器１は、手の領域３１のうちの上側領域の輝度と下側領域の輝度とに基づいて、前後方向を軸とした回転に関する手の向きを算出してもよい。
【０１２５】
携帯機器１は、以上のようにして算出された手の向きに応じた情報処理を実行する。この情報処理の内容は任意である。例えば、携帯機器１は、仮想空間においてオブジェクトの向き（姿勢）を手の向きに応じて制御する情報処理を実行する。ここで、携帯機器１は、手の向きに加えて、手の位置を算出するようにしてもよい。このとき、携帯機器１は、仮想空間においてオブジェクトの向き（姿勢）を手の向きに応じて制御するとともに、当該オブジェクトの位置を手の位置に応じて制御するようにしてもよい。
【０１２６】
＜第３の実施形態＞
次に、本発明の第３の実施形態について説明する。携帯機器１の周囲でユーザが手等を動かして操作を行う場合、ユーザにとっては、例えば、所望の入力を行うための手の位置や、赤外線カメラ４（携帯機器１）と手との位置関係がわかりにくいおそれがある。そこで、第３の実施形態においては、携帯機器１は、手の位置を表すためのガイド画像を表示する。なお、第３の実施形態における携帯機器１のハードウェア構成は第１の実施形態と同じであるので、ハードウェア構成の詳細な説明を省略する。
【０１２７】
［１．携帯機器１における処理の概要］
図２２は、第３の実施形態において行われる操作の一例を示す図である。図２２に示すように、第３の実施形態においては、ユーザは、手を撮像方向（ｚ軸方向）に動かすことで、仮想空間内のオブジェクト（プレイヤキャラクタ）４１を操作する。すなわち、携帯機器１は、撮像方向に関する手の位置を算出し、オブジェクト４１の移動を制御する。
【０１２８】
なお、図２２においては、レースゲームにおいてユーザがプレイヤキャラクタを操作する場合を例として説明するが、手による操作を入力として実行される情報処理は任意であってよい。第３の実施形態においては、携帯機器１は、撮像方向に関する手の位置（距離）に応じて、オブジェクト４１の曲がり具合（左右に関する移動）を制御するものとする（図２２に示す矢印参照）。また、携帯機器１は、手の操作によって（例えば、ｙ軸方向に関する手の位置や、手の形状に応じて）オブジェクトの速度等をさらに制御するようにしてもよい。
【０１２９】
また、図２２に示すように、ディスプレイ２には、ユーザによる操作に基づく処理結果を表す画像（ゲーム空間の画像）に加えて、ガイド画像４２が表示される。ガイド画像４２の詳細については後述する。
【０１３０】
（手の位置に基づく処理の概要）
図２３は、手の位置と情報処理との関係の一例を示す図である。携帯機器１は、撮像画像に基づいて手の位置を算出するので、赤外線カメラ４から手が離れすぎると（例えば、赤外線カメラ４からの距離が４０ｃｍを超えると）、手を検出することができず、手の位置を算出することができなくなる。ここでは、手の位置を算出することが可能な範囲を算出可能範囲と呼び、手の位置を算出することが不可能な範囲を算出不可能範囲と呼ぶ。図２３に示すように、第３の実施形態においては、赤外線カメラ４から所定距離以内の範囲が算出可能範囲となり、赤外線カメラ４から当該所定距離よりも離れた範囲が算出不可能範囲となる。
【０１３１】
第３の実施形態において、携帯機器１は、算出可能範囲内の所定範囲を、処理範囲として用いる。処理範囲とは、算出された手の位置に応じて処理内容が変化する範囲である。すなわち、携帯機器１は、処理範囲内において、手の位置の変化に応じて処理内容（ここでは、オブジェクトの曲がり具合）を変化させる。具体的には、第３の実施形態においては、携帯機器１は、算出された手の位置が処理範囲内の所定の基準位置となる場合、オブジェクト４１を直進させ、算出された手の位置と当該基準位置との差に応じてオブジェクト４１の曲がり具合を制御する。図２３に示すように、算出された手の位置が、ユーザから見て基準位置よりも左側（赤外線カメラ４に近い側）となる場合、オブジェクト４１は、左に曲がるように制御され、算出された手の位置が、ユーザから見て基準位置よりも右側（赤外線カメラ４から遠い側）となる場合、オブジェクト４１は、右に曲がるように制御される。なお、基準位置は、処理範囲内の任意の位置でよいが、第３の実施形態では、処理範囲における中央の位置であるとする。
【０１３２】
また、携帯機器１は、算出された手の位置が処理範囲外となる場合には、携帯機器１は、オブジェクト４１の曲がり具合を、処理範囲の境界のうちで当該算出された手の位置に近い方の境界に手の位置がある場合における曲がり具合に設定する。つまり、手の位置が処理範囲内から処理範囲外へ出ても、オブジェクト４１の曲がり具合は大きくならない。
【０１３３】
なお、図２３に示すように、第３の実施形態においては、算出可能範囲内において事前警告範囲が設定される。事前警告範囲は、手の位置が算出不可能となることを事前に警告するために設定される。事前警告範囲は、算出可能範囲内における所定位置（例えば上記基準位置）から、算出不可能範囲への方向に所定距離だけ離れた範囲として設定される。なお、事前警告範囲は、赤外線カメラ４の位置から所定距離よりも離れる範囲に設定されると言うこともできる。また、図２３においては、事前警告範囲は、処理範囲とは重複しないが、他の実施形態においては、処理範囲と重複するように設定されてもよい。
【０１３４】
また、他の実施形態においては、携帯機器１は、撮像方向に関する手の位置（距離）に限らず、他の方向に関する手の位置を算出してもよい。
【０１３５】
（ガイド画像の具体例）
図２４は、ガイド画像の一例を示す図である。図２４に示すように、ガイド画像４２は、範囲画像４５と、指示画像４６とを含む。範囲画像４５は、現実空間における上記処理範囲の領域を表す。範囲画像４５の形状はどのようなものであってもよい。第３の実施形態においては、範囲画像は、撮像方向（ユーザから見て左右方向）における位置に関する処理範囲を表すべく、横方向に延びる棒状の形状である。
【０１３６】
また、指示画像４６は、手の位置を表すための画像である。指示画像４６は、算出された手の位置に応じて、範囲画像４５が表す範囲内において移動する。なお、上述のように、第３の実施形態においては、算出された手の位置に応じて携帯機器１における出力（オブジェクト４１の曲がり具合）が変化する。したがって、指示画像４６の位置は出力に応じて変化するということができる。
【０１３７】
ここで、第３の実施形態のような、携帯機器１の周囲で手を動かす操作方法においては、手を自由に動かすことができる一方、基準となる位置がユーザにとってわかりにくいおそれがある。これに対して、第３の実施形態においては、ガイド画像４２によってユーザは手の位置を把握しやすくなる。すなわち、ユーザは、ガイド画像４２を見ることによって手の位置と出力との関係を把握することができ、操作を行いやすくなる。
【０１３８】
なお、第３の実施形態においては、指示画像４６は、操作を行うための物体として想定される（ユーザの）手を表す画像である。これによって、指示画像４６が、操作を行うための物体を表すことをユーザにわかりやすく認識させることができる。また、操作方法（手を使って操作を行うこと）をユーザにわかりやすく認識させることができる。
【０１３９】
なお、他の実施形態においては、携帯機器１は、特定された手の形状に応じて指示画像４６の表示態様を変更するようにしてもよい。例えば、携帯機器１は、特定した手の形状を表す指示画像を表示するようにしてもよい。具体的には、手が閉じた形状であるか開いた形状であるかを携帯機器１が特定する場合、携帯機器１は、手が閉じた形状が特定された場合にはグーの形状を表す指示画像を表示し、手が開いた形状が特定された場合にはパーの形状を表す指示画像を表示してもよい。
【０１４０】
図２４に示すように、ガイド画像４２は、処理基準画像４７を含む。処理基準画像４７は、手が上記基準位置に位置する場合に、指示画像４６が配置される位置を表す。つまり、算出される手の位置が上記基準位置となる場合、処理基準画像４７が表す位置に指示画像４６が配置される。したがって、ユーザは、指示画像４６が処理基準画像４７の位置となるように手を配置することによって、オブジェクト４１を直進させることができる。なお、基準位置が変更される場合（例えば、ユーザの設定変更操作に応じて基準位置が変更されてもよい）、処理基準画像４７の位置も変更される。
【０１４１】
以上のように、携帯機器１は、算出された手の位置と所定の基準位置との関係に応じた出力となるように出力を制御し、処理基準画像を含むガイド画像をディスプレイ２に表示させる。これによれば、ユーザは、ガイド画像を見ることで、基準位置に配置されるように手を調整することができるので、操作をより行いやすくなる。
【０１４２】
また、図２４に示すように、ガイド画像４２は、カメラ基準画像４８を含む。カメラ基準画像４８は、範囲画像４５が表す処理範囲の領域と、赤外線カメラ４（携帯機器１）との位置関係を表すために表示される。すなわち、カメラ基準画像４８は、範囲画像４５とカメラ基準画像４８との位置関係が、処理範囲の領域と赤外線カメラ４（携帯機器１）との位置関係に対応する位置関係となる位置に配置される。なお、カメラ基準画像４８は、ユーザの手と、赤外線カメラ４（携帯機器１）との位置関係を表すために表示されるとも言うことができる。すなわち、カメラ基準画像４８は、指示画像４５とカメラ基準画像４８との位置関係が、ユーザの手と赤外線カメラ４（携帯機器１）との位置関係に対応する位置関係となる位置に配置されると言うことができる。
【０１４３】
第３の実施形態においては、赤外線カメラ４は処理範囲の左側（ｚ軸不方向側）に存在するので、図２４に示すように、カメラ基準画像４８は、範囲画像４５の左側に表示される。カメラ基準画像４８によって、赤外線カメラ４（携帯機器１）に対してどの辺りに手を配置すればよいかを、ユーザに対してわかりやすく認識させることができる。
【０１４４】
なお、ガイド画像４２は、図２２においてはディスプレイ２の画面の左上の位置に表示されたが、ガイド画像４２が表示される位置は任意である。例えば、ガイド画像４２は、画面において、赤外線カメラ４が設けられる側（換言すれば、赤外線カメラ４の撮像方向にある側）の領域に表示されてもよい。すなわち、本実施形態においては、ガイド画像４２は、画面の中央よりも右側の領域に表示されてもよい。これによれば、ユーザは、手を操作する際にガイド画像４２が見やすくなり、ガイド画像４２の表示（範囲画像４５に対する指示画像４６の位置）と手との関係を確認しやすくなる。
【０１４５】
図２５は、手の位置が事前警告範囲となった場合に表示されるガイド画像の一例を示す図である。第３の実施形態においては、手の位置が事前警告範囲となった場合、携帯機器１は、指示画像４６の表示態様を（手の位置が事前警告範囲でない算出可能範囲にある場合と比べて）変化させる。図２５においては、指示画像４６の色が変化するものとするが、他の実施形態においては、指示画像４６の大きさおよび／または形状が変化してもよい。
【０１４６】
上記より、ユーザの手の位置が処理範囲から算出不可能範囲へ近づくと、手の位置が事前警告範囲に含まれる結果、指示画像４６の表示形態が変化する。したがって、上記によれば、ユーザが手の位置を算出不可能範囲へと移動させようとした場合には、携帯機器１は、手の位置が算出不可能となることを、指示画像４６の変化によってユーザに事前に通知することができる。これによれば、ユーザが手の位置を算出不可能範囲へと移動させてしまう可能性を低減することができ、手を用いた操作の操作性を向上することができる。
【０１４７】
なお、第３の実施形態においては、処理範囲の右側に事前警告範囲が設定されるので、手の位置が事前警告範囲となる場合、手の位置は処理範囲の右端を越えて移動したことになる。したがって、第３の実施形態においては、手の位置が事前警告範囲となる場合には指示画像４６は範囲画像４５の右端に表示される。このように、手の位置が事前警告範囲となる場合、指示画像４６は、範囲画像４５のうちで、処理範囲に対する事前警告範囲の方向に対応する側の端部に表示される。これによって、手の位置が処理範囲からどちらの方向に外れているかをユーザにわかりやすく通知することができる。
【０１４８】
なお、他の実施形態においては、処理範囲の両側に事前警告範囲が設定されてもよい。例えば、赤外線カメラ４に近すぎると手の位置が算出不可能となる場合には、処理範囲に対して、赤外線カメラ４に近い側にも事前警告範囲が設定されてもよい。
【０１４９】
図２６は、手の位置が算出不可能となった場合に表示されるガイド画像の一例を示す図である。第３の実施形態においては、手の位置が算出不可能範囲となった場合（手の位置が算出不可能となった場合）、携帯機器１は、手の位置が算出される場合と比べて指示画像４６の表示態様を変化させる。具体的には、図２６に示すように、携帯機器１は、手の位置が算出不可能範囲となった場合、指示画像４６を、手が検出不可能であることを表す形状（図２６では「？」を表す形状）に変化させる。これによって、手の位置が検出（算出）することができない状態であることを、ユーザにわかりやすく通知することができる。なお、図２６においては、指示画像４６の形状が変化するものとするが、他の実施形態においては、指示画像４６の大きさおよび／または色が変化してもよい。また、手の位置が算出不可能範囲にある場合の指示画像４６の表示態様は、手の位置が事前警告範囲にある場合の表示態様とは異なっている。
【０１５０】
また、手の位置が算出不可能範囲にある場合、指示画像４６は、範囲画像４５のうちで、処理範囲に対する算出不可能範囲の方向に対応する側の端部に表示される。したがって、第３の実施形態においては、上記の場合も事前警告範囲にある場合と同様、指示画像４６は範囲画像４５の端部に配置される。ただし、他の実施形態においては、手の位置が算出不可能範囲にある場合、指示画像４６は他の位置（例えば、処理基準画像４７が示す位置）に配置されてもよい。
【０１５１】
なお、本実施形態においては、手の位置が事前警告範囲または算出不可能範囲となった場合、携帯機器１は指示画像４６の表示形態を変化させた。ここで、他の実施形態においては、上記の場合、携帯機器１は、指示画像４６に限らず、ガイド画像４２の一部または全部の表示形態を変化させてもよい。例えば、上記の場合、携帯機器１は、範囲画像４５および／または処理基準画像４７の表示態様を変化させてもよい。
【０１５２】
（ガイド画像の表示タイミング）
本実施形態においては、携帯機器１は、ゲーム処理中においてゲーム画像と共にガイド画像４２を表示する（図２２参照）。したがって、ユーザは、ゲームのプレイ中においてガイド画像４２を見ることによって、手の位置と出力との関係を確認することができるので、操作が行いやすくなる。
【０１５３】
なお、他の実施形態においては、ガイド画像４２が表示されるタイミングは任意である。例えば、ガイド画像４２は、ゲームのプレイ前において表示されてもよい。すなわち、携帯機器１は、手の操作に応じたゲームを開始する前にガイド画像４２を表示し、上記実施形態と同様に、手の動きに応じて指示画像を移動させる。そして、所定の開始条件が充足されたこと（例えば、ユーザがゲームを開始する指示を行ったこと、あるいは、ガイド画像４２が表示されてから所定時間が経過したこと等）に応じて、携帯機器１は、手の操作に応じたゲーム処理を開始する。このように、ゲーム開始前からガイド画像４２を表示することによって、ユーザは、手によるゲーム操作の感覚をゲーム開始前にある程度把握することができるので、ユーザにとってゲーム操作をより行いやすくすることができる。なお、ゲームのプレイ前にゲーム画像４２が表示される場合、ゲーム中においては、ゲーム画像４２が表示されなくてもよいし、ゲーム中の一部または全部の期間にゲーム画像４２が表示されてもよい。
【０１５４】
［２．携帯機器１における処理の具体例］
次に、第３の実施形態における携帯機器１において実行される処理の具体例について説明する。図２７は、第３の実施形態における携帯機器１によって実行される処理の流れの一例を示すフローチャートである。図２７に示す一連の処理は、任意の条件およびタイミングで実行されてよい。例えば、上記一連の処理は、ジェスチャ入力を受け付ける所定のアプリケーションプログラム（例えばゲームプログラム）の実行中において実行される。
【０１５５】
まずステップＳ２１において、制御部１４は、第１の実施形態におけるステップＳ１の処理と同様、赤外線カメラ４による撮像画像を赤外線カメラ４から取得する。続くステップＳ２２において、制御部１４は、ステップＳ２１で取得された撮像画像に基づいて手の距離（ｚ軸方向に関する位置）を算出する。手の距離の算出方法は任意であり、例えば、上記第１の実施形態における算出方法によって手の距離が算出される。なお、上述のように、手の位置が算出不可能範囲となる場合や、撮像画像に手の位置が含まれない場合には、手の距離の算出に失敗することがある。
【０１５６】
ステップＳ２３において、制御部１４は、ステップＳ２２において算出された手の距離に基づく情報処理を実行する。この情報処理の内容は任意である。第３の実施形態においては、制御部１４は、手の距離を入力とするゲーム処理を実行する。具体的には、制御部１４は、仮想ゲーム空間内において、手の距離に応じてオブジェクト４１の曲がり具合を制御する処理を実行する。なお、ステップＳ２２において手の距離が算出されない場合には、入力が行われていないものとして上記情報処理が実行される。
【０１５７】
ステップＳ２４において、制御部１４は、ステップＳ２２の処理において手の距離の算出が成功したか否かを判定する。ステップＳ２４の判定結果が肯定である場合、ステップＳ２５の処理が実行される。一方、ステップＳ２４の判定結果が否定である場合、後述するステップＳ２８の処理が実行される。
【０１５８】
ステップＳ２５において、制御部１４は、ステップＳ２２で算出された手の位置（距離）が上記事前警告範囲に含まれるか否かを判定する。ステップＳ２５の判定結果が否定である場合、ステップＳ２６の処理が実行される。一方、ステップＳ２４の判定結果が肯定である場合、後述するステップＳ２７の処理が実行される。
【０１５９】
ステップＳ２６において、制御部１４は、ステップＳ２３における情報処理の処理結果を表す画像をディスプレイ２に表示させるとともに、通常の表示態様でガイド画像４２をディスプレイ２に表示させる（図２２参照）。なお、通常の表示態様とは、手の位置が算出可能範囲にあり、かつ、事前警告範囲にない場合における表示態様（図２４参照）である。また、ステップＳ２６の処理においては、範囲画像４５上において、ステップＳ２２において算出された手の距離に応じた位置に指示画像４６が配置される。ステップＳ２６の処理の次にステップＳ２９の処理が実行される。
【０１６０】
ステップＳ２７において、制御部１４は、ステップＳ２３における情報処理の処理結果を表す画像をディスプレイ２に表示させるとともに、事前警告態様でガイド画像４２をディスプレイ２に表示させる。なお、事前警告態様とは、手の位置が事前警告範囲にある場合における表示態様（図２５参照）である。また、ステップＳ２７の処理においては、範囲画像４５上における右端の位置に指示画像４６が配置される。ステップＳ２７の処理の次にステップＳ２９の処理が実行される。
【０１６１】
ステップＳ２８において、制御部１４は、ステップＳ２３における情報処理の処理結果を表す画像をディスプレイ２に表示させるとともに、操作不可能であることを通知する表示態様でガイド画像４２をディスプレイ２に表示させる。なお、「操作不可能であることを通知する表示態様」とは、手の位置が算出不可能範囲にある場合における表示態様である（図２６参照）。また、ステップＳ２８の処理においては、範囲画像４５上において、範囲画像４５上における右端の位置に指示画像４６が配置される。ステップＳ２８の処理の次にステップＳ２９の処理が実行される。
【０１６２】
ステップＳ２９において、制御部１４は、手の距離を入力とする一連の情報処理を終了するか否かを判定する。ステップＳ２９における判定の具体的な方法は任意である。第３の実施形態においては、ユーザが所定の終了指示（例えば、アプリケーションを終了する指示）を行った場合、上記一連の情報処理を終了すると判定される。ステップＳ２９の判定結果が肯定である場合、制御部１４は、図２７に示す処理を終了する。一方、ステップＳ２９の判定結果が否定である場合、制御部１４は、ステップＳ２１の処理を再度実行する。以降、ステップＳ２９において処理を終了すると判定されるまで、ステップＳ２１〜Ｓ２９の一連の処理が繰り返し実行される。
【０１６３】
［３．第３の実施形態における作用効果］
以上のように、第３の実施形態においては、手持ち型の情報処理装置（携帯機器１）は、赤外線カメラ４による撮像画像に基づいて、当該撮像画像に含まれる物体（ユーザの手）の位置を算出する（ステップＳ２２）。また、情報処理装置は、物体の位置に応じた出力を出力装置（ディスプレイ２）に出力させる（ステップＳ２３）。情報処理装置は、範囲を表す範囲画像４５と、当該範囲内において出力の変化に応じて位置が変化する指示画像４６とを含むガイド画像４２を所定の表示装置（ディスプレイ２）に表示させる（ステップＳ２６，Ｓ２７）。
【０１６４】
上記「物体の位置に応じた出力」とは、第３の実施形態のような画像表示の出力であってもよいし、スピーカからの音出力であってもよい。すなわち、携帯機器１は、手の位置に応じて音の出力を変化させる場合に、ガイド画像をディスプレイ２に表示するようにしてもよい。また、上記「所定の表示装置」とは、情報処理装置が備える表示装置（ディスプレイ２）であってもよいし、情報処理装置とは別体の表示装置（例えば、テレビ）であってもよい。
【０１６５】
上記によれば、携帯機器１は、ユーザが手等を動かす操作を入力として情報処理を実行する。すなわち、ユーザは、手等を動かすことで入力操作を行うことができるので、多様な入力を行うことができる。また、上記によれば、携帯機器１はガイド画像を表示するので、手等の位置をユーザに認識させることができる。これによって、手等を用いた操作の操作性を向上することができる。
【０１６６】
なお、第３の実施形態において、赤外線カメラ４は、携帯機器１のハウジングの側面方向を撮像する。したがって、ユーザは、携帯機器１の側面方向において手等を動かせばよいので、ユーザにとって操作しやすい状態で入力操作を行うことができる。
【０１６７】
また、携帯機器１は、指示画像４６と所定の装置基準画像（カメラ基準画像４８）との位置関係が、手と赤外線カメラ４との位置関係に対応する位置関係となるように、所定の装置基準画像を含むガイド画像４２をディスプレイ２に表示させる（図２４）。これによれば、携帯機器１は、手が赤外線カメラ４（携帯機器１）に対してどの辺りにあるかを、ユーザに対して提示することができる。これによって、手等を用いた操作の操作性を向上することができる。
【０１６８】
なお、携帯機器１は、範囲画像４５と所定の装置基準画像（カメラ基準画像４８）との位置関係が、上記領域と赤外線カメラ４との位置関係に対応する位置関係となるように、所定の装置基準画像を含むガイド画像をディスプレイ２に表示させると言うこともできる。このとき、携帯機器１は、少なくとも所定の領域内（図２３に示す処理範囲内）における物体の位置を算出する。これによれば、携帯機器１は、手等を用いた操作を行うことが可能な領域が赤外線カメラ４（携帯機器１）に対してどの辺りにあるかを、ユーザに対して提示することができる。これによって、手等を用いた操作の操作性を向上することができる。
【０１６９】
また、携帯機器１は、物体の位置を算出することができない場合、当該物体の位置が算出される場合と比べてガイド画像の表示態様を変化させる（図２６、図２７に示すステップＳ２８）。これによれば、手の位置が検出（算出）することができない状態であることを、ユーザに通知することができ、手等を用いた操作の操作性を向上することができる。
【０１７０】
また、携帯機器１は、算出された物体の位置が、所定の基準位置から当該位置が算出不可能な領域への方向に所定距離よりも離れた場合（算出された位置が事前警告範囲内となる場合）、当該算出された位置が所定距離以内となる場合と比べてガイド画像の表示態様を変化させる（図２５、図２７に示すステップＳ２７）。上記によれば、ユーザが物体（手等）の位置を算出不可能範囲へと移動させようとした場合には、携帯機器１は、物体の位置が算出不可能となることを、ユーザに事前に通知することができる。これによれば、ユーザが物体の位置を算出不可能な領域へと移動させてしまう可能性を低減することができ、手等を用いた操作の操作性を向上することができる。
【０１７１】
また、携帯機器１は、赤外線カメラ４の撮像方向に関する物体の位置を撮像画像に基づいて算出する。このとき、物体の位置の算出方法としては、撮像画像における明るさに基づく方法（第１の実施形態）、あるいは、撮像画像における当該物体の大きさに基づく方法（第２の実施形態）が考えられる。ここで、上記物体の色や大きさが既知ではない場合（例えば、物体が、ユーザの手のように個人差があるものである場合）、これらの方法では、赤外線カメラ４からの絶対的な位置（距離）を正確に算出することは難しい。そのため、これらの方法では、所望の出力を得るために手をどのくらいの位置に配置すればよいかがユーザにとってわかりにくいおそれがある。これに関して、上記によれば、ガイド画像によって、手をどのくらいの位置に配置すればよいかをユーザにわかりやすく提示することができ、手を用いた操作の操作性を向上することができる。
【０１７２】
また、携帯機器１は、算出された物体の位置と所定の基準位置との関係に応じた出力となるように出力を制御する（図２３）。このとき、携帯機器１は、範囲画像４５が表す範囲内における、基準位置に対応する位置に配置される処理基準画像４７を含むガイド画像４２をディスプレイ２に表示させる（図２４）。これによれば、ユーザは、ガイド画像４２を見ることによって、基準位置に配置されるように手を調整することができるので、操作をより行いやすくなる。
【０１７３】
［４．変形例］
上記第３の実施形態においては、携帯機器１は、所定の一方向に関する手の移動操作を検出し、当該一方向に関する位置を表すガイド画像を表示するものであった。ここで、携帯機器１が検出する操作は任意であり、また、ガイド画像の表示態様は任意である。以下、ガイド画像の変形例について説明する。
【０１７４】
図２８は、ガイド画像の変形例の一例を示す図である。例えば、携帯機器１は、第１の実施形態において説明した回転操作を検出してもよく、このとき、図２８に示すガイド画像をディスプレイ２に表示してもよい。図２８に示すガイド画像は、範囲画像５１と、指示画像５２とを含む。範囲画像５１は円形領域であり、指示画像５２は、範囲画像５１上に配置される線状の画像である。
【０１７５】
なお、上記ガイド画像は、上記第３の実施形態と同様、回転操作による出力結果を表す画像（ゲーム画像等）とは異なる画像として表示されてもよい。また、上記ガイド画像は、回転操作による出力結果を表す画像の一部として表示されてもよい。例えば、プレイヤキャラクタが乗る一輪車が回転操作に応じて進むゲーム処理が実行される場合において、上記ガイド画像は、当該一輪車の車輪として表示されてもよい。
【０１７６】
本変形例においては、携帯機器１は、上記回転操作に応じて範囲画像５１および指示画像５２が回転するように表示制御を行う。例えば、携帯機器１は、回転操作に応じた回転角度を算出し、算出された回転角度を指示画像５２が表すように、範囲画像５１および指示画像５２を回転させて表示する。これによって、指示画像５２の向きは、算出される回転角度を表すことになる。したがって、ユーザは、指示画像５２の向きによって回転角度を知ることができる。なお、他の実施形態においては、範囲画像５１は固定され（すなわち、回転操作に応じて回転せず）、指示画像５２のみが回転操作に応じて回転するように表示されてもよい。
【０１７７】
上記のように、携帯機器１は、撮像画像に基づいて物体の向き（回転角度）を算出してもよく、当該向きに応じた出力（範囲画像５１の回転表示）を行うものであってもよい。このとき、ガイド画像は、範囲画像の範囲内において（出力の変化に応じて）向きが変化する指示画像を含んでいてもよい。これによれば、ガイド画像によって手等の向きをユーザに認識させることができ、手等を用いた操作の操作性を向上することができる。
【０１７８】
また、他の実施形態においては、携帯機器１は、物体（例えば手）に関する２次元の位置を算出してもよく、このとき、ガイド画像は、２次元の範囲を表すものであってもよい。すなわち、ガイド画像は、２次元の範囲を表す範囲画像と、当該２次元の範囲において、算出された２次元の位置を表す指示画像とを含むものであってもよい。
【０１７９】
また、他の実施形態においては、ガイド画像に含まれる範囲画像は、仮想空間（例えばゲーム空間）に配置されるオブジェクトを兼ねていてもよい。図２９は、ガイド画像の変形例の他の一例を示す図である。図２９は、携帯機器１によってディスプレイ２に表示されるゲーム画像を示している。図２９に示す例では、携帯機器１は、撮像画像に基づいてユーザの手の位置を算出し、算出された手の位置に応じて、仮想空間において大砲５５をレール５６上で移動する制御を行うものとする。
【０１８０】
具体的には、携帯機器１は、手の位置に基づいてレール５６上の目標位置を算出し、当該目標位置まで大砲５５を移動させる。なお、大砲５５の移動速度には上限があり、手の位置に応じた目標位置の移動が上限速度よりも速い場合、大砲５５は、目標位置の移動から遅れて移動するように制御される。
【０１８１】
ここで、携帯機器１は、レール５６上の目標位置を表す指示画像５７をディスプレイ２に表示する（図２９参照）。このとき、上記レール５６は範囲画像であるということができる。このように、ガイド画像は、その一部（範囲画像等）が仮想空間に登場するオブジェクトの画像であってもよい。なお、図２９に示す例においても上記第３の実施形態と同様、指示画像５７は、ユーザによる操作対象（大砲５５）とは異なる画像である。
【０１８２】
また、上記実施形態においては、携帯機器１は、撮像手段（赤外線カメラ４）による撮像画像に基づいて手の位置を算出する場合にガイド画像を表示するものとした。ここで、携帯機器１と離れた位置に存在する物体を検出し、検出結果に基づいて物体の位置（または向き）を算出する方法は、任意である。例えば、他の実施形態においては、携帯機器１は、測距センサ５の検出結果に基づいて手の位置（距離）を算出する場合においてガイド画像を表示するようにしてもよい。すなわち、携帯機器１は、測距センサ５の出力に基づいて物体（手）の位置を算出し、当該物体の位置に応じた出力を所定の出力装置に出力させてもよい。そして、携帯機器１は、上記出力の変化に応じて位置が変化する指示画像を含むガイド画像を表示するようにしてもよい。測距センサ５が用いられる場合においても上記実施形態と同様、ガイド画像によって、手等を用いた操作の操作性を向上することができる。
【０１８３】
＜第４の実施形態＞
次に、本発明の第４の実施形態について説明する。第４の実施形態においては、携帯機器１は、携帯機器１の側面にタッチする操作（タッチ操作）を撮像画像に基づいて検出する。また、携帯機器１は、タッチ操作に応じて各種の情報処理（例えば、ゲームを開始する処理等）を実行する。このようなタッチ操作を可能とすることによって、操作性を向上することができる。なお、第４の実施形態における携帯機器１のハードウェア構成は第１の実施形態と同じであるので、ハードウェア構成の詳細な説明を省略する。
【０１８４】
図３０は、携帯機器１に対してユーザがタッチ操作を行う様子の一例を示す図である。図３０に示すように、タッチ操作は、ユーザが手を赤外線カメラ４に接触させる操作である。タッチ操作は、赤外線カメラ４（のレンズ部分）を手で覆う操作であると言うこともできる。なお、詳細は後述するが、第４の実施形態において、携帯機器１は、撮像画像の明るさ（例えば、撮像画像全体の明るさの平均値）を用いてタッチ操作を検出する。したがって、手が赤外線カメラ４に接触しなくても、手が赤外線カメラ４の近傍に位置した場合には、タッチ操作が検出されることもある。つまり、第４の実施形態において、タッチ操作は、厳密な意味で手が赤外線カメラ４に接触することを要求するものではなく、手が赤外線カメラ４の近傍に配置されればよい。例えば、ユーザの手が赤外線カメラ４に触れないように、赤外線カメラ４が周囲のハウジング２１よりも凹んだ位置に配置されてもよい。このとき、タッチ操作は、厳密には、赤外線カメラ４の周囲のハウジング２１に接触する操作となる。本実施形態では、このような操作も、手を赤外線カメラ４に接触させる操作とみなし、タッチ操作と呼ぶ。
【０１８５】
［１．携帯機器１における処理の概要］
（タッチ操作の検出方法）
次に、タッチ操作の検出方法について説明する。図３１は、タッチ操作が行われる際に取得される撮像画像の変化の一例を示す図である。タッチ操作が行われる前からタッチ操作が行われた時点までに取得される撮像画像は、例えば、図３１に示すように変化する。
【０１８６】
図３１の（ａ）に示す撮像画像は、タッチ操作が行われる前の時点で取得されるものである。この時点では、ユーザの手は赤外線カメラ４からある程度離れた位置にあり、撮像画像にはユーザの手の全体が含まれている。この場合、撮像画像は、通常の明るさ（図３１（ａ）〜（ｃ）のうちでは、相対的に低い明るさ）である。
【０１８７】
図３１の（ｂ）に示す撮像画像は、タッチ操作が行われる直前の時点で取得されるものである。この時点では、ユーザの手は赤外線カメラ４にかなり近づいており、ユーザの手は撮像画像からはみ出している。この撮像画像では、ユーザの手の領域が図３１の（ａ）に示す撮像画像よりも広くなっているので、撮像画像はより明るくなっている。すなわち、撮像画像は、通常よりも明るくなっている（図３１（ａ）〜（ｃ）のうちでは、相対的に中程度の明るさである）。
【０１８８】
図３１の（ｃ）に示す撮像画像は、タッチ操作が行われた時点で取得されるものである。この時点では、ユーザの手が赤外線カメラ４に接触しているので、手が赤外線カメラ４をほぼ覆っている状態となる。したがって、撮像画像の（ほぼ）全領域が手の領域となっているので、撮像画像は（図３１の（ｂ）の場合と比べて）さらに明るくなっている。すなわち、撮像画像は、通常よりもさらに明るくなっている（図３１（ａ）〜（ｃ）のうちでは、相対的に高い明るさである）。
【０１８９】
以上より、携帯機器１は、取得した撮像画像の明るさに基づいて、タッチ操作が行われたか否かを判定することができる。具体的には、携帯機器１は、撮像画像の明るさとして、撮像画像の各画素の輝度の平均値を算出する。そして、携帯機器１は、撮像画像の明るさが所定値以上となる場合、タッチ操作が行われたと判定する。
【０１９０】
なお、他の実施形態においては、携帯機器１は、例えば測距センサ５を用いて手の距離を算出してもよい。このとき、携帯機器１は、測距センサ５の検出結果に基づいて赤外線カメラ４に手が接触したか否かを判定し、この判定結果に応じてタッチ操作を検出してもよい。
【０１９１】
（タッチ操作に基づく情報処理）
次に、タッチ操作を入力として用いる情報処理の例について説明する。第４の実施形態においては、携帯機器１がゲーム処理を実行する場合において、タッチ操作は、ゲームの開始のための操作として用いられる。
【０１９２】
図３２は、タッチ操作を用いた行われるゲームの流れの一例を示す図である。なお、第４の実施形態においては、レースゲームが実行される場合を例とするが、ゲームの内容は任意である。
【０１９３】
第４の実施形態において、ゲームは、タッチ操作に応じて開始される（図３２の（ａ））。すなわち、携帯機器１は、ゲームが開始される前の状態において、タッチ操作を検出したことに応じてゲーム（レース）を開始する。なお、携帯機器１は、タッチ操作の検出と同時にゲームを開始してもよいし、タッチ操作の検出に応じてカウントダウンを開始し、カウントが０になった時点でゲームを開始してもよい。
【０１９４】
ゲーム中（ゲームプレイ中）においては、ユーザの手の操作を入力としてゲームが実行される（図３２の（ｂ））。すなわち、携帯機器１は、撮像画像に基づいてユーザの手の位置（向きでもよい）を算出し、手の動きに応じた情報処理（ゲーム処理）を実行する。第４の実施形態においては、携帯機器１は、算出された手の位置に基づいてオブジェクト（プレイヤキャラクタ）を移動させたり動作させたりする制御を実行する。
【０１９５】
ゲームにおいて所定のゲーム条件が満たされた場合、ゲームオーバーとなる（図３２の（ｃ））。すなわち、携帯機器１は、ゲーム中において上記ゲーム条件が満たされた場合、ゲームの進行を停止し、ゲームオーバーであることを通知するゲーム画像をディスプレイ２に表示する。
【０１９６】
ゲームオーバーであることを通知するゲーム画像が表示される状態において、ユーザがタッチ操作を行うと、ゲームが開始（再開）される（図３２の（ｄ））。すなわち、携帯機器１は、上記状態においてタッチ操作を検出した場合、ゲームを再開する。なお、ゲームの再開とは、任意の状態でゲームを開始することを含む意味である。例えば、携帯機器１は、ゲームオーバーとなった状態からゲームを再開してもよいし、最初からゲームを再開してもよい。
【０１９７】
以上のように、第４の実施形態によれば、ユーザは、携帯機器１の側面に対するタッチ操作によって、ゲームを開始することができる。ここで、タッチ操作を行った後、ユーザは赤外線カメラ４から手を離すので、ユーザの手は赤外線カメラ４の視野範囲に自然と配置されることになる。つまり、ユーザは、タッチ操作を行った後、手によるゲーム操作を行う位置へと手を自然に持って行くことになるので、タッチ操作に続けてゲーム操作をスムーズに行うことができる。したがって、第４の実施形態によれば、ゲームの開始時の操作の操作性を向上することができる。
【０１９８】
なお、他の実施形態においては、タッチ操作に応じて実行される情報処理の内容は任意である。例えば、携帯機器１は、タッチ操作に応じて、ゲームを一時停止させたり、終了させたりする処理を実行してもよい。また例えば、携帯機器１は、タッチ操作に応じて、オブジェクト（プレイヤキャラクタ）に所定の動作を行わせる処理を実行してもよい。例えば、携帯機器１は、撮像画像に基づいて算出される手の位置に応じて、仮想空間におけるオブジェクトを移動させるとともに、タッチ操作に応じてオブジェクトの所定の動作を行わせるようにしてもよい。
【０１９９】
［２．携帯機器１における処理の具体例］
次に、第４の実施形態における携帯機器１において実行される処理の具体例について説明する。図３３は、第４の実施形態における携帯機器１によって実行される処理の流れの一例を示すフローチャートである。図３３に示す一連の処理は、任意の条件およびタイミングで実行されてよい。例えば、上記一連の処理は、タッチ操作を受け付ける所定のアプリケーションプログラム（例えばゲームプログラム）の実行中において実行される。
【０２００】
まずステップＳ３１において、制御部１４は、第１の実施形態におけるステップＳ１の処理と同様、赤外線カメラ４による撮像画像を赤外線カメラ４から取得する。続くステップＳ２２において、制御部１４は、ステップＳ１で取得された撮像画像に基づいて手の位置を算出する。ここで、手の位置の算出方法は任意であり、例えば、上記第１の実施形態における算出方法によって手の位置が算出される。また、算出される手の位置は、所定の一方向に関する位置であってもよいし、２次元または３次元の位置であってもよい。
【０２０１】
ステップＳ３３において、制御部１４は、ステップＳ１で取得された撮像画像の明るさを算出する。なお、上記ステップＳ３２において、手の距離（ｚ軸方向に関する位置）を算出するために撮像画像の明るさを算出している場合、制御部１４は、ステップＳ３３において再度明るさを算出しなくてもよい。
【０２０２】
また、第４の実施形態において、ステップＳ３２において手の距離を算出し、手の距離をゲーム処理（ステップＳ３７）において用いる場合でも、携帯機器１は、タッチ操作を検出することが可能である。つまり、携帯機器１は、ゲーム入力として手の距離を算出しつつ、タッチ操作を検出することが可能である。例えば、携帯機器１は、撮像画像の明るさが所定の閾値以下である場合には、手の距離をゲーム入力に用いるとともに、撮像画像の明るさが所定の閾値よりも大きい場合には、タッチ操作が行われたと判定するようにしてもよい。
【０２０３】
ステップＳ３４において、制御部１４は、ゲーム中（ゲームプレイ中）であるか否かを判定する。ステップＳ３４の判定結果が否定である場合、ステップＳ３５の処理が実行される。一方、ステップＳ３４の判定結果が肯定である場合、後述するステップＳ３７の処理が実行される。
【０２０４】
ステップＳ３５において、制御部１４は、タッチ操作が行われたか否かを判定する。この判定は、上記“（タッチ操作の検出方法）”で述べた方法で行われる。ステップＳ３５の判定結果が肯定である場合、ステップＳ３６の処理が実行される。一方、ステップＳ３５の判定結果が否定である場合、ステップＳ３１の処理が再度実行される。この場合、タッチ操作が検出されるまで、ゲームの開始が待機されることとなる。
【０２０５】
ステップＳ３６において、制御部１４は、ゲームを開始する。上記ステップＳ３６の後、ステップＳ３１の処理を再度実行する。すなわち、ステップＳ３６の処理以降、上記ステップＳ３４における判定結果が肯定となり、ユーザの手の操作に応じたゲーム処理（ステップＳ３７）が実行されることになる。
【０２０６】
一方、ステップＳ３７において、制御部１４は、ユーザの手の動きに応じた情報処理（ゲーム処理）を実行する。また、制御部１４は、情報処理の結果を示すゲーム画像を生成してディスプレイ２に表示する。上記情報処理の内容は任意であるが、第４の実施形態においては、制御部１４は、レースゲームにおけるプレイヤキャラクタを手の位置に応じて移動制御する情報処理を実行する。
【０２０７】
ステップＳ３８において、制御部１４は、ゲームオーバーとなったか否かを判定する。
ステップＳ３８の具体的な判定方法は任意である。例えば、制御部１４は、所定のゲーム条件（プレイヤキャラクタが障害物にぶつかったり、谷に落ちたりしたこと）が満たされたか否かを判定する。ステップＳ３８の判定結果が肯定である場合、ステップＳ３９の処理が実行される。一方、ステップＳ３８の判定結果が否定である場合、ステップＳ３１の処理が再度実行される。したがって、ゲームオーバーとなるまで、ステップＳ３１〜Ｓ３４，Ｓ３７，Ｓ３８の一連の処理が繰り返し実行され、ゲームが進行する。
【０２０８】
ステップＳ３９において、制御部１４は、ゲームを終了するか否かを判定する。ステップＳ２９における判定の具体的な方法は任意である。第４の実施形態においては、ユーザが所定の終了指示（例えば、ゲームアプリケーションを終了する指示）を行った場合、上記ゲームを終了すると判定される。ステップＳ３９の判定結果が肯定である場合、制御部１４は、図３３に示す処理を終了する。一方、ステップＳ３９の判定結果が否定である場合、制御部１４は、ステップＳ３１の処理を再度実行する。以降、ステップＳ３９において処理を終了すると判定されるまで、ステップＳ３１〜Ｓ３９の一連の処理が繰り返し実行される。
【０２０９】
なお、第４の実施形態において、ゲームを終了するか否かの判定処理（ステップＳ３９）は、ゲームオーバーとなった場合にのみ行われた。ここで、他の実施形態においては、ゲームを終了するか否かの判定処理は、図３３に示す一連の処理における任意のタイミングで実行されてもよい。例えば、上記判定処理は、ゲームが一時停止された場合に実行されてもよい。
【０２１０】
図３３に示す処理によれば、ユーザのタッチ操作に応じてゲームが開始され（ステップＳ３６）、以降、ゲームオーバーとなるまで、ユーザの手の動きをゲーム入力とするゲーム処理が実行される（ステップＳ３１〜Ｓ３４、Ｓ３７）。そして、ゲームオーバーとなった場合には、再度タッチ操作が行われたことに応じて、ゲームが再開される（ステップＳ３６）。
【０２１１】
［３．第４の実施形態における作用効果］
以上のように、第４の実施形態においては、携帯機器１は撮像画像に基づいて、赤外線カメラ４に物体（ユーザの手）を接触させる操作（タッチ操作）を検出し（ステップＳ３５）、操作の検出結果に基づいて所定の情報処理を実行する（ステップＳ３６）。これによれば、ユーザは、赤外線カメラ４にタッチする操作によって携帯機器１に対する指示を行うことができる。すなわち、第４の実施形態によれば、従来にはない操作が可能となり、携帯機器１の操作性を向上することができる。
【０２１２】
また、第４の実施形態において、赤外線カメラ４は、携帯機器１のハウジング１０において、当該ハウジング１０の側面方向（の空間）を撮像するように設けられる。したがって、ユーザは、ハウジング１０の側面方向から撮像装置をタッチする操作を行うことができる。これによれば、例えば、ユーザは、片方の手で携帯機器１を把持しながら、もう一方の手でタッチ操作を行うことができるので、操作性の良い携帯機器を提供することができる。
【０２１３】
また、第４の実施形態においては、携帯機器１は、上記タッチ操作が検出されたことに応じて上記所定の情報処理の実行を開始する。ここで、「所定の情報処理の実行の開始」とは、停止（一時停止を含む）されていた情報処理の実行を再開することを含む意味である。なお、他の実施形態においては、タッチ操作が検出されたことに応じて上記所定の情報処理の実行が停止（一時停止を含む）されてもよい。上記によれば、ユーザは、情報処理の実行の開始および／または停止をタッチ操作によって指示することができる。
【０２１４】
上記において、携帯機器１は、撮像画像に基づいて物体の位置を表す物体情報を算出し（ステップＳ３２）、上記所定の情報処理として、物体情報に基づく情報処理を実行する（ステップＳ３７）。なお、他の実施形態においては、物体情報は、物体の位置に限らず、物体の形状、および／または、物体の動きを表す情報であってもよい。上記によれば、ユーザは、タッチ操作と、手等の物体を動かす操作とを行うことができ、さらに、これら２つの操作をスムーズに切り替えることができる。したがって、上記によれば、上記２つの操作の操作性を向上することができる。
【０２１５】
また、第４の実施形態において、携帯機器１は、撮像画像に基づいて物体（手）が赤外線カメラ４またはその近傍に接触していない状態における当該物体について物体情報を算出する（ステップＳ３２）。これによれば、携帯機器１は、操作を検出する処理と、物体情報と算出する処理とを容易に切り替えることができる。
【０２１６】
第４の実施形態において、携帯機器１は、撮像画像における所定領域内の画素における明るさに関する情報（輝度の平均値）に基づいて、タッチ操作を検出する（図３１）。なお、上記「所定領域」は、第４の実施形態においては撮像画像の全領域としたが、他の実施形態においては、上記物体の画像の領域とは独立して設定される任意の領域であってよい。上記によれば、携帯機器１は、明るさに関する情報を用いることによって上記操作を容易に検出することができる。
【０２１７】
［４．変形例］
なお、他の実施形態においては、携帯機器１は、タッチ操作に加えて、タッチ操作の速度、および／または、タッチ操作の位置を算出し、入力として用いるようにしてもよい。以下、上記第４の実施形態の変形例として、タッチ操作の速度、または、タッチ操作の位置を算出する例について説明する。
【０２１８】
携帯機器１は、タッチ操作の速度（手が赤外線カメラ４に接触する際の速度）を算出してもよい。すなわち、携帯機器１は、撮像画像の明るさが相対的に低い状態から、相対的に高い状態（タッチ操作が行われた状態）へと変化するまでの時間を算出し、当該時間に基づいてタッチ操作の速度を算出してもよい。具体的には、携帯機器１は、撮像画像の明るさが第１の閾値以下である状態から、明るさが第２の閾値よりも大きくなる状態までの時間を算出する。なお、第２の閾値は、第１の閾値よりも大きい値であり、タッチ操作が行われたか否かを判定するための閾値である。
【０２１９】
上記のように、携帯機器１は、タッチ操作が検出されるまでに取得された撮像画像に基づいて、タッチ操作の速度を算出してもよい。このとき、携帯機器１は、算出された速度に応じて所定の情報処理の処理内容を変化させてもよい。この所定の情報処理は、任意である。例えば、携帯機器１は、速度が所定値よりも大きい場合には上記所定の情報処理として第１の処理（例えば、上述したゲーム処理を開始する処理）を実行し、速度が当該所定値以下である場合には、第１の処理とは異なる第２の処理（例えば、プレイヤキャラクタに所定の動作を行わせる処理）を上記所定の情報処理として実行してもよい。
【０２２０】
また、携帯機器１は、タッチ操作の位置（赤外線カメラ４に対する手の接触位置）を算出してもよい。例えば、携帯機器１は、ユーザの手が赤外線カメラ４に接触した際、手が赤外線カメラ４の上側をタッチしたか、下側をタッチしたか、それとも、中央部分をタッチしたかを判別してもよい。
【０２２１】
具体的には、携帯機器１は、タッチ操作が行われる前に取得された撮像画像における手の位置、および／または、タッチ操作が行われた時に取得された撮像画像における手の位置、タッチ操作の位置を判別してもよい。携帯機器１は、タッチ操作が行われる直前に取得された撮像画像（例えば、図３１の（ｂ）に示す撮像画像）において、当該撮像画像における手の位置を算出する。この手の位置は、例えば、上記第１の実施形態において算出される重心位置であってもよい。携帯機器１は、算出された手の位置（重心位置）に基づいて、タッチ操作の位置を判別する。例えば、携帯機器１は、重心位置が撮像画像の中央から所定距離よりも上方の位置であれば、ユーザは上側をタッチしたと判別し、重心位置が撮像画像の中央から所定距離よりも下方の位置であれば、ユーザは下側をタッチしたと判別し、重心位置が撮像画像の中央から所定距離以内であれば、ユーザは中央をタッチしたと判別する。なお、他の実施形態においては、携帯機器１は、タッチ操作の位置を座標として算出してもよい。
【０２２２】
なお、他の実施形態においては、タッチ操作が行われた時までに取得された複数の撮像画像に基づいて、タッチ操作の位置が判別されてもよい。例えば、携帯機器１は、複数の撮像画像について上記重心位置を算出し、重心位置の変化に基づいてタッチ操作の位置を判別してもよい。
【０２２３】
上記のように、携帯機器１は、タッチ操作が検出されたときに取得された、および／または、検出されるまでに取得された撮像画像に基づいて、赤外線カメラ４に対するタッチ操作が行われた位置（タッチ操作の位置）を判別してもよい。このとき、携帯機器１は、判別された位置に応じて所定の情報処理の処理内容を変化させてもよい。この所定の情報処理は、任意である。例えば、携帯機器１は、タッチ操作の位置が、赤外線カメラ４の中央より下側の位置である場合には、上記所定の情報処理として第１の処理（例えば、上述したゲーム処理を開始する処理）を実行し、タッチ操作の位置が、赤外線カメラ４の中央より上側の位置である場合には、第１の処理とは異なる第２の処理（例えば、プレイヤキャラクタに所定の動作を行わせる処理）を上記所定の情報処理として実行してもよい。
【０２２４】
＜変形例＞
（携帯機器に関する変形例）
上記第１〜第４の実施形態においては、撮像装置（赤外線カメラ４）を備える情報処理装置が携帯機器である場合について説明したが、撮像画像を備える情報処理装置はどのような種類のものであってもよい。例えば、他の実施形態においては、ユーザが手に持って操作を行うための操作装置が撮像装置を備えていてもよい。このとき、撮像画像を取得し、撮像画像に基づく情報処理を実行する装置は、操作装置であってもよいし、操作装置と通信可能な他の情報処理装置であってもよい。例えば、据置型のゲーム装置に対する入力を行うためのコントローラが撮像装置を備えており、当該ゲーム装置が、コントローラから取得された撮像画像に基づく情報処理を実行してもよい。このとき、上記コントローラが撮像画像に基づいて手の位置等（位置、向き、形状、および／または、これらの変化等）に関する情報を算出してゲーム装置へ送信し、ゲーム装置は、コントローラから受信した情報に基づいて情報処理（ゲーム処理）を実行するようにしてもよい。
【０２２５】
（撮像装置に関する変形例）
上記第１〜第４の実施形態においては、撮像装置の一例として赤外線カメラ４が用いられ、携帯機器１は、赤外線画像における輝度を表す情報（当該情報を含む撮像画像）を取得した。ここで、他の実施形態においては、赤外線カメラ４に限らず、任意の撮像装置が用いられてもよい。例えば、他の実施形態においては、画素毎にＲＧＢ値を有する撮像画像を出力するカメラが撮像装置として用いられてもよい。
【０２２６】
（撮像画像に基づいて算出される情報に関する変形例）
上記第１〜第４の実施形態においては、携帯機器１は、物体（手）の位置および／または形状を撮像画像に基づいて算出した。ここで、上述したように、他の実施形態においては、携帯機器１は、物体の動きを算出してもよい。
【０２２７】
例えば、他の実施形態においても上記実施形態と同様、携帯機器１は、手持ち型の情報処理装置であって、ハウジングと、ハウジングの側面方向を撮像する想像装置（赤外線カメラ４）とを備えていてもよい。このとき、携帯機器１は、撮像画像に基づいて、当該撮像画像に含まれる物体の回転および／または速度を検出してもよい。また、携帯機器１は、検出された結果に応じた情報処理を実行してもよい。例えば、携帯機器１は、物体の回転として、上記回転操作（図１３参照）を検出してもよいし、物体の速度として、上記あおぎ操作（図１２参照）の速度や、タッチ操作（図３０参照）の速度を検出してもよい。このとき、携帯機器１は、検出された回転に応じてオブジェクトを回転させる処理を実行してもよい。また、携帯機器１は、検出された速度に応じた速度でオブジェクトを移動させる処理を実行してもよい。
【０２２８】
また、他の実施形態においては、携帯機器１は、物体の位置と形状との組み合わせに基づいて操作を検出してもよい。図３４は、手を用いた操作の一例を示す図である。図３４においては、ユーザは、手を閉じた状態から、手を開きながら赤外線カメラ４に近づける操作を行う。携帯機器１は、このような操作を検出し、操作に応じて所定の情報処理を実行するようにしてもよい。例えば、図３４において、携帯機器１は、ディスプレイの右端から所定のオブジェクトが次第に現れるような画像（動画）を生成して表示するようにしてもよい。これによれば、手の動きに合わせてディスプレイ２にオブジェクトが登場したかのような感覚をユーザに与えることができ、直感的でわかりやすい操作を提供することができる。
【０２２９】
上記操作を検出する場合、携帯機器１はまず、撮像画像に基づいて、撮像画像に含まれる物体の形状と位置（具体的には、撮像方向に関する物体の位置）とを算出する。そして、携帯機器１は、算出された物体の形状および位置の組み合わせに基づいて、上記操作を検出する。具体的には、携帯機器１は、手の位置が赤外線カメラ４に近づいており、かつ、手の形状が第１の形状（閉じた形状）から第２の形状（開いた形状）に変化しているか否かによって、上記操作が行われたか否かを判定する。なお、手の位置を算出する方法、および、手の形状を特定する方法は、上述の第１または第２の実施形態における方法を用いることができる。また、手の位置が赤外線カメラ４に近づいているか否かは、例えば、手の位置が所定距離以上（および／または、所定速度以上で）ｚ軸負方向に移動しているか否かによって判定することができる。
【０２３０】
上記操作が検出されたことに応じて、携帯機器１は、所定の情報処理を実行する。具体的には、携帯機器１は、ディスプレイ２の右端（赤外線カメラ４が設けられる側の端部）から登場するオブジェクトが画面中央に向かって移動する画像（動画）を生成してディスプレイ２に表示する。上記操作は、携帯機器１に対して何かを入れることをユーザにイメージさせる操作であると言える。そのため、上記操作に応じてオブジェクトが画面に表示される処理を行うことで、直感的でわかりやすい操作をユーザに提供することができる。なお、上記操作に応じて実行される情報処理は、任意であり、例えば、携帯機器１にアプリケーションをインストールする処理、フォルダにデータファイルを入れる処理、あるいは、データを携帯機器１に保存する処理であってもよい。これらの処理を実行する場合も、直感的でわかりやすい操作をユーザに提供することができる。
【０２３１】
また、携帯機器１は、上記操作とは逆の操作、すなわち、手を開いた状態から、手を閉じながら赤外線カメラ４から遠ざける操作を検出するようにしてもよい。具体的には、携帯機器１は、手の位置が赤外線カメラ４から遠ざかっており、かつ、手の形状が上記第２の形状（開いた形状）から上記第１の形状（閉じた形状）に変化しているか否かによって、上記操作が行われたか否かを判定する。この操作を検出したことに応じて、携帯機器１は、上記所定の情報処理とは異なる情報処理を実行する。例えば、携帯機器１は、ディスプレイ２に表示されているオブジェクトを、ディスプレイ２の右端（赤外線カメラ４が設けられる側の端部）へ移動させて右端から画面外へ消える画像（動画）を生成してディスプレイ２に表示してもよい。上記操作は、携帯機器１から何かを出す（引き出す）ことをユーザにイメージさせる操作であると言える。そのため、上記操作に応じてオブジェクトが画面から消える処理を行うことで、直感的でわかりやすい操作をユーザに提供することができる。なお、上記操作に応じて実行される情報処理は、任意であり、例えば、ファイルを削除する処理、オブジェクトを掴む（ドラッグ操作が可能な状態にする）処理等であってもよい。これらの処理を実行する場合も、直感的でわかりやすい操作をユーザに提供することができる。
【０２３２】
（手の位置の算出に関する変形例）
上記第１または第２の実施形態における方法で撮像画像から手の位置を算出する場合、実際の手の位置はほとんど移動していないにもかかわらず、ユーザの手の形状または向きが変化したことに応じて、算出される手の位置が変化してしまうおそれがある。したがって、携帯機器１は、撮像画像から手の位置を算出する処理を、手の形状および／または手の向きに応じて決定するようにしてもよい。例えば、第１の実施形態のように重心位置から手の位置を決定する場合、携帯機器１は、手の形状が閉じた形状であるか開いた形状であるかによって、重心位置から手の位置を決定する処理（計算方法）を異なるようにしてもよい。
【０２３３】
（入力に関する変形例）
上記第１〜第４の実施形態においては、携帯機器１は、赤外線カメラ４による撮像画像に基づいて検出される入力（ユーザの手の位置等）に応じて所定の情報処理（ステップＳ５，Ｓ１６，Ｓ１７，Ｓ２３，Ｓ３７等）を実行した。ここで、他の実施形態においては、携帯機器１は、上記入力と、他の入力部に対する入力とのいずれかに基づいて情報処理を実行するようにしてもよい。他の入力部は、例えば、上記入力ボタン６、および／または、上記タッチパネル３である。これによって、多様な操作方法をユーザに提供することができる。例えば、上記第４の実施形態においては、ユーザは、携帯機器１の側面（赤外線カメラ４の位置）にタッチするとともに、ディスプレイ２にもタッチすることができ、新規な操作を提供することができる。
【産業上の利用可能性】
【０２３４】
以上のように、上記実施形態は、撮像画像を用いて多様な入力を行うこと等を目的として、例えば、携帯機器等の情報処理装置として利用することができる。
【符号の説明】
【０２３５】
１    携帯機器
２    ディスプレイ
４    赤外線カメラ
７    照射部
１４  制御部
２２  判別範囲
３３  カーソル
３４  オブジェクト
４２  ガイド画像
４５，５１  範囲画像
４６，５２，５７  指示画像
４７  処理基準画像
４８  カメラ基準画像
【図１】
0006603024.tif 000002
【図２】
0006603024.tif 000003
【図３】
0006603024.tif 000004
【図４】
0006603024.tif 000005
【図５】
0006603024.tif 000006
【図６】
0006603024.tif 000007
【図７】
0006603024.tif 000008
【図８】
0006603024.tif 000009
【図９】
0006603024.tif 000010
【図１０】
0006603024.tif 000011
【図１１】
0006603024.tif 000012
【図１２】
0006603024.tif 000013
【図１３】
0006603024.tif 000014
【図１４】
0006603024.tif 000015
【図１５】
0006603024.tif 000016
【図１６】
0006603024.tif 000017
【図１７】
0006603024.tif 000018
【図１８】
0006603024.tif 000019
【図１９】
0006603024.tif 000020
【図２０】
0006603024.tif 000021
【図２１】
0006603024.tif 000022
【図２２】
0006603024.tif 000023
【図２３】
0006603024.tif 000024
【図２４】
0006603024.tif 000025
【図２５】
0006603024.tif 000026
【図２６】
0006603024.tif 000027
【図２７】
0006603024.tif 000028
【図２８】
0006603024.tif 000029
【図２９】
0006603024.tif 000030
【図３０】
0006603024.tif 000031
【図３１】
0006603024.tif 000032
【図３２】
0006603024.tif 000033
【図３３】
0006603024.tif 000034
【図３４】
0006603024.tif 000035