(57)【要約】  ユーザを撮像して得られる撮像画像を用いてユーザからの操作入力を受け付ける場合に、画面内の位置を指定する操作入力を容易に実現できる情報処理装置を提供する。  ユーザの顔を含む撮像画像を取得し、取得した撮像画像に含まれるユーザの顔の位置を特定し、特定される顔の位置に応じて決まる撮像画像内の位置に操作領域を設定し、当該操作領域内から検出対象物を検出し、当該検出した検出対象物の操作領域内における相対位置に対応する画面内の位置を、ユーザが指定する位置として受け付ける情報処理装置である。
2014073384.tif 000002
【特許請求の範囲】
【請求項１】
ユーザの顔を含む撮像画像を取得する撮像画像取得部と、
前記撮像画像に含まれるユーザの顔の位置を特定する顔位置特定部と、
前記特定される顔の位置に応じて決まる前記撮像画像内の位置に操作領域を設定する操作領域設定部と、
前記操作領域内から検出対象物を検出し、当該検出した検出対象物の前記操作領域内における相対位置に対応する画面内の位置を、ユーザが指定する位置として受け付ける操作受付部と、
を含むことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記操作受付部は、前記操作領域内から、ユーザの手を前記検出対象物として検出する
ことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置において、
前記撮像画像取得部は、ステレオカメラによって撮像された二つの撮像画像を取得し、当該二つの撮像画像に基づいて前記ステレオカメラから被写体までの距離分布を示す距離分布データを生成し、
前記操作受付部は、前記操作領域内において最も前記ステレオカメラの近くにある被写体の位置を、前記ユーザの手の位置として検出する
ことを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置において、
前記操作受付部は、前記操作領域内から、ユーザが手で把持しているコントローラを前記検出対象物として検出する
ことを特徴とする情報処理装置。
【請求項５】
請求項４に記載の情報処理装置において、
前記コントローラは発光部を備えており、
前記操作受付部は、前記操作領域内から前記発光部が発する光の位置を前記コントローラの位置として検出する
ことを特徴とする情報処理装置。
【請求項６】
請求項１に記載の情報処理装置において、
前記撮像画像は第１ユーザ及び第２ユーザの二人のユーザの顔を含み、
前記顔位置特定部は、前記第１ユーザ及び第２ユーザそれぞれの顔の位置を特定し、
前記操作領域設定部は、前記第１ユーザの顔の位置に応じて第１操作領域を、前記第２ユーザの顔の位置に応じて第２操作領域を、それぞれ前記撮像画像内に設定し、
前記操作受付部は、前記第１操作領域から検出される検出対象物の相対位置に対応する画面内の位置を、前記第１ユーザが指定する位置として受け付け、前記第２操作領域から検出される検出対象物の相対位置に対応する画面内の位置を、前記第２ユーザが指定する位置として受け付ける
ことを特徴とする情報処理装置。
【請求項７】
請求項１に記載の情報処理装置において、
前記撮像画像内にオブジェクトを配置して表示画像を生成し、表示装置の画面に表示させる表示画像生成部をさらに含み、
前記表示画像生成部は、前記オブジェクトの配置位置を、前記撮像画像内から検出される、前記ユーザが手で把持しているコントローラの位置に応じて決定する
ことを特徴とする情報処理装置。
【請求項８】
ユーザからの操作入力に応じた処理を実行する情報処理装置の制御方法であって、
ユーザの顔を含む撮像画像を取得するステップと、
前記撮像画像に含まれるユーザの顔の位置を特定するステップと、
前記特定される顔の位置に応じて決まる前記撮像画像内の位置に操作領域を設定するステップと、
前記操作領域内から検出対象物を検出し、当該検出した検出対象物の前記操作領域内における相対位置に対応する画面内の位置を、ユーザが指定する位置として受け付けるステップと、
を含むことを特徴とする情報処理装置の制御方法。
【請求項９】
ユーザの顔を含む撮像画像を取得する撮像画像取得部、
前記撮像画像に含まれるユーザの顔の位置を特定する顔位置特定部、
前記特定される顔の位置に応じて決まる前記撮像画像内の位置に操作領域を設定する操作領域設定部、及び、
前記操作領域内から検出対象物を検出し、当該検出した検出対象物の前記操作領域内における相対位置に対応する画面内の位置を、ユーザが指定する位置として受け付ける操作受付部、
としてコンピュータを機能させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムを格納した、コンピュータ読み取り可能な情報記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザを撮像して得られる撮像画像を用いてユーザからの操作入力に応じた画像を表示する情報処理装置に関する。
【背景技術】
【０００２】
ゲームシステムなどの情報処理システムにおいては、ユーザから操作入力を受け付ける方法として各種のものが提案されている。その一つとして、ディスプレイの周辺に設置したカメラを使用してユーザが所持するコントローラやユーザ自身を撮像し、その結果得られる撮像画像の中から検出対象物（コントローラやユーザの手など）の位置を特定することによって、ユーザからの操作入力を受け付ける情報処理システムがある。このような情報処理システムによれば、ユーザは自分が所持しているコントローラ又は自分自身の手をカメラの前で動かすことによって情報処理システムに対する操作入力を行うことができる。
【発明の概要】
【０００３】
上述したような情報処理システムは、ディスプレイの画面に表示した複数のオブジェクトのいずれかをユーザに選ばせるときなど、画面内の一点を指定する操作入力をユーザから受け付けることがある。しかしながら、撮像画像を操作入力として用いる場合、ユーザは画面内の位置を指定する操作入力を行いにくいことがある。自身の手やコントローラの位置と画面内の位置との対応関係がわかりにくく、またその対応関係によっては画面内の一点を指定するために体を大きく動かす必要が生じたりするからである。
【０００４】
本発明は上記実情を考慮してなされたものであって、その目的の一つは、ユーザを撮像して得られる撮像画像を用いてユーザからの操作入力を受け付ける場合に、画面内の位置を指定する操作入力を容易に実現できる情報処理装置、その制御方法、その制御プログラム、及び当該プログラムを格納する情報記憶媒体を提供することにある。
【０００５】
本発明に係る情報処理装置は、ユーザの顔を含む撮像画像を取得する撮像画像取得部と、前記撮像画像に含まれるユーザの顔の位置を特定する顔位置特定部と、前記特定される顔の位置に応じて決まる前記撮像画像内の位置に操作領域を設定する操作領域設定部と、前記操作領域内から検出対象物を検出し、当該検出した検出対象物の前記操作領域内における相対位置に対応する画面内の位置を、ユーザが指定する位置として受け付ける操作受付部と、を含むことを特徴とする。
【０００６】
また、本発明に係る情報処理装置の制御方法は、ユーザからの操作入力に応じた処理を実行する情報処理装置の制御方法であって、ユーザの顔を含む撮像画像を取得するステップと、前記撮像画像に含まれるユーザの顔の位置を特定するステップと、前記特定される顔の位置に応じて決まる前記撮像画像内の位置に操作領域を設定するステップと、前記操作領域内から検出対象物を検出し、当該検出した検出対象物の前記操作領域内における相対位置に対応する画面内の位置を、ユーザが指定する位置として受け付けるステップと、を含むことを特徴とする。
【０００７】
また、本発明に係るプログラムは、ユーザの顔を含む撮像画像を取得する撮像画像取得部、前記撮像画像に含まれるユーザの顔の位置を特定する顔位置特定部、前記特定される顔の位置に応じて決まる前記撮像画像内の位置に操作領域を設定する操作領域設定部、及び、前記操作領域内から検出対象物を検出し、当該検出した検出対象物の前記操作領域内における相対位置に対応する画面内の位置を、ユーザが指定する位置として受け付ける操作受付部、としてコンピュータを機能させるためのプログラムである。このプログラムは、コンピュータ読み取り可能な情報記憶媒体に格納されてよい。
【図面の簡単な説明】
【０００８】
【図１】本発明の実施の形態に係る情報処理システムの全体構成図である。
【図２Ａ】コントローラの上側を臨む外観の一例を示す斜視図である。
【図２Ｂ】コントローラの前側を臨む外観の一例を示す斜視図である。
【図３】ゲーム装置の機能ブロック図である。
【図４】ユーザがポインティング操作を行う際に撮像される基準画像の一例を示す図である。
【図５】ポインティング操作に応じて表示される表示画像の一例を示す図である。
【図６】ゲーム装置が実行する処理の流れの一例を示す図である。
【図７】複数のユーザがポインティング操作を行う場合に撮像される基準画像の一例を示す図である。
【図８】メニューの表示例を示す図である。
【図９】コントローラの表示位置からオブジェクトが飛び出す様子の表示例を示す図である。
【図１０】特定されたユーザの顔に対して画像処理が施された様子の表示例を示す図である。
【図１１】コントローラの姿勢に応じて画面に表示する画像の内容が変化する場合に表示される表示画像の一例を示す図である。
【図１２Ａ】ユーザの顔の位置に応じて指定可能領域が決定される場合の基準画像の一例を示す図である。
【図１２Ｂ】ユーザの顔の位置に応じて指定可能領域が決定される場合の表示画像の一例を示す図である。
【図１３Ａ】車を操縦するゲーム処理を実行する場合の基準画像の一例を示す図である。
【図１３Ｂ】車を操縦するゲーム処理を実行する場合の表示画像の一例を示す図である。表示画像の別の例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明の一実施形態について図面に基づき詳細に説明する。
【００１０】
図１は、本発明の一実施形態に係る情報処理システムの一例であるゲームシステム１０の全体構成図である。図１に示すように、本実施形態に係るゲームシステム１０は、本実施形態に係る情報処理装置の一例であるゲーム装置１２、スピーカ等が内蔵された、家庭用テレビ受像機等のディスプレイ１４、ステレオカメラ１６、本実施形態に係る操作入力装置の一例であるコントローラ１８（１８−１〜１８−ｍ）、を含んでいる。
【００１１】
本実施形態では、ゲーム装置１２とディスプレイ１４とは、ケーブル（例えば、ＡＶケーブルや、ＨＤＭＩ（登録商標）（High-Definition Multimedia Interface）ケーブル等）を介して接続されている。また、ゲーム装置１２とステレオカメラ１６とは、ケーブル（例えば、ＵＳＢケーブルや、ＡＶケーブルや、ＨＤＭＩケーブル等）を介して接続されている。
【００１２】
ゲーム装置１２は、例えば、ゲーム装置１２にインストールされるプログラムに従って動作するＭＰＵ（Micro Processing Unit）等の制御部、ＲＯＭやＲＡＭ等の記憶素子やハードディスクドライブなどである記憶部、ＧＰＵ（Graphical Processing Unit）とフレームバッファとから構成される画像処理部、ＳＰＵ（Sound Processing Unit）とサウンドバッファとから構成される音声処理部、インターネット上のサーバ（図示せず）や、コントローラ１８などとの間で、有線又は無線によりデータの送受信を行う、ネットワークボードや無線ＬＡＮモジュールなどである通信部、ＤＶＤ−ＲＯＭやＢｌｕ−ｒａｙ（登録商標）ディスクなどの光ディスク（コンピュータ読み取り可能な情報記憶媒体）を読み取る光ディスクドライブ、ＵＳＢ（Universal Serial Bus）ポート、ＨＤＭＩポート等を含んでいる。これらの要素は互いにバスを介して相互にデータ授受可能に接続される。
【００１３】
画像処理部に含まれるＧＰＵは、制御部から供給される画像データに基づいて、画像処理部に含まれるフレームバッファに各種画面を描画する。フレームバッファに形成された画面は、所定のタイミングでビデオ信号に変換されてディスプレイ１４に出力される。
【００１４】
音声処理部に含まれるサウンドバッファには、光ディスクやハードディスクから読み出されたゲーム音楽、ゲーム効果音やメッセージなどの各種音声データが記憶される。音声処理部に含まれるＳＰＵは、これらの各種音声データを再生して、例えば、ディスプレイ１４に内蔵されているスピーカや、コントローラ１８に内蔵されているスピーカから出力させる。
【００１５】
ステレオカメラ１６は、左右に並べて配置された、レンズ及び撮像素子などを含んで構成されるデジタルカメラのそれぞれが、所定時間（例えば、１／６０秒）ごとに、画像を撮像して、ゲーム装置１２に出力する。
【００１６】
コントローラ１８は、本実施形態における操作入力装置であり、ユーザがコントローラ１８に対して行った操作に応じた信号を、ゲーム装置１２に送信する。コントローラ１８は、方向キー、ボタン、タッチセンサ、アナログスティック、スピーカ、コントローラ１８の姿勢や動きの検出に利用される種々のセンサ（加速度センサ、ジャイロセンサ、など）や、バッテリなどを内蔵している。
【００１７】
また、コントローラ１８は、ゲーム装置１２と通信可能となっている。図１に示すように、コントローラ１８は、ゲーム装置１２と無線通信（例えば、Ｂｌｕｅｔｏｏｔｈ（登録商標）等の通信規格に従った無線通信）によって接続されるが、コントローラ１８が、ゲーム装置１２と有線通信によって接続されていてもよい。
【００１８】
本実施形態に係るゲーム装置１２の制御部は、所定時間（例えば１／６０秒）ごとにコントローラ１８の各部の状態をスキャンして、ユーザによって行われた操作の内容をスキャンした状態に基づいて判断する。なお、ゲーム装置１２は、複数のコントローラ１８を接続可能に構成されており、各コントローラ１８から入力される操作状態に基づいて、制御部が各種処理を実行するようになっている。
【００１９】
図２Ａは、本実施形態に係るコントローラ１８の上側を臨む外観の一例を示す斜視図である。図２Ｂは、本実施形態に係るコントローラ１８の前側を臨む外観の一例を示す斜視図である。
【００２０】
図２Ａ及び図２Ｂに示すように、本実施形態に係るコントローラ１８は、その左部及び右部に、ユーザが保持するための被保持部をそれぞれ有している。左側の被保持部の上面には、方向キーが配置されている。右側の被保持部の上面には、ボタンが配置されている。また、本実施形態に係るコントローラ１８は、右側の被保持部の上面以外にも、様々なボタンが配置されている。
【００２１】
また、左側の被保持部の前部と右側の被保持部の前部とを連結する中央部の上面には、パネルと、タッチセンサと、を含む板状操作部材２２が配置されている。パネルは、タッチセンサの全体を覆っており、タッチセンサは、パネルの下面（裏面）に取り付けられている。タッチセンサは、検出面（本実施形態では、板状操作部材２２の上面）上における物体（ユーザの指やスタイラス等）の位置を検出可能なセンサであり、物体の検出位置に応じた信号を出力する。コントローラ１８は、当該信号をゲーム装置１２に送信する。
【００２２】
タッチセンサは、本実施形態では、例えば、静電容量式のセンサである。また、タッチセンサは、いわゆるマルチタッチが可能となっており、検出面上の物体の位置を複数同時に検出できるようになっている。また、板状操作部材２２は、ユーザの押下操作に応じて上下動できるように支持されている。コントローラ１８は、板状操作部材２２が押されたことを検出するスイッチを有し、板状操作部材２２は、オン／オフ操作が可能なボタンとして機能する。
【００２３】
図２Ｂに示すように、左側の被保持部の前部と右側の被保持部の前部とを連結する中央部の前面には発光部２４が設けられている。発光部２４は、左側の被保持部の突出部と右側の被保持部の突出部との間に位置している。また、発光部２４は、左右方向に細長い形状を有している。図２Ｂの例では、発光部２４は直線的に伸びる棒状である。なお、発光部２４の形状はこれに限られず、例えばＶ字形状でもよいし、弧状に湾曲してもよい。
【００２４】
本実施形態に係るゲーム装置１２は、ステレオカメラ１６を通して、発光部２４の光を取得する。ゲーム装置１２は、ステレオカメラ１６を通して取得した画像に対して画像処理を行い、取得した画像における発光部２４の位置や大きさに基づいて、コントローラ１８の位置を検出する。
【００２５】
発光部２４は任意の色で光ることができる。例えば発光部２４は、赤色、緑色、及び、青色の発光体（例えば、発光ダイオード）を含み、各発光体の輝度を調節することで、ゲーム装置１２が指定する色や、コントローラ１８の動作状態に応じた色で光る。このため、複数のコントローラ１８が同時に使用される場合であっても、ゲーム装置１２は各コントローラ１８の位置を検出できる。
【００２６】
また、本実施形態に係るコントローラ１８は、左側の被保持部の前部と右側の被保持部の前部とを連結する中央部にスピーカが内蔵されている。そして、当該中央部の上面の、スピーカに対応する位置には、通音孔が形成されている。なお、通音孔の位置に、スピーカとともに、又は、スピーカの代わりに、マイクが配置されていてもよい。
【００２７】
以下、本実施形態においてゲーム装置１２が実現する機能について、図３の機能ブロック図を用いて説明する。同図に示すように、ゲーム装置１２は、機能的に、撮像画像取得部５０と、顔検出部５２と、操作受付部５４と、表示画像生成部５６と、を含んで構成されている。これらの機能は、ゲーム装置１２内の記憶部に格納されたプログラムを制御部が実行することにより実現される。このプログラムは、インターネット等の通信回線を介してゲーム装置１２に提供されてもよいし、光ディスク等の情報記憶媒体に格納されてゲーム装置１２に提供されてもよい。これらの機能により、ゲーム装置１２はユーザの操作に応じたゲーム処理を実現し、その処理結果をディスプレイ１４の画面に表示する。特に本実施形態では、ユーザは、コントローラ１８又はユーザ自身の手を動かして画面内のいずれかの位置を指定する操作を行う。以下では、このような操作をポインティング操作という。ユーザがポインティング操作を自身の手を用いて行うか、それともコントローラ１８を用いて行うかは、ゲーム装置１２が実行するゲームの種類や設定に応じて決定される。ゲーム装置１２は、ユーザのポインティング操作によって指定された画面内の位置に応じたゲーム処理を実行する。
【００２８】
撮像画像取得部５０は、ステレオカメラ１６によって撮像された撮像画像を取得する。前述したようにステレオカメラ１６は左右に並んだ二つのデジタルカメラを含んで構成されており、これら二つのデジタルカメラのそれぞれが画像を撮像する。撮像画像取得部５０は、これら二つのデジタルカメラによって撮像された二つの撮像画像のうち、一方を基準画像Ｉｃ１、他方を比較用画像Ｉｃ２として取得する。基準画像Ｉｃ１は、後述する顔検出部５２及び操作受付部５４による処理の対象として使用される。比較用画像Ｉｃ２は、基準画像Ｉｃ１内における距離分布のデータを生成するために用いられる。二つのデジタルカメラで同じ被写体を撮像しても、視差によって、当該被写体の基準画像Ｉｃ１内における位置と比較用画像Ｉｃ２内における位置との間にはずれが生じる。撮像画像取得部５０は、このずれを測定することによって、ステレオカメラ１６の位置から被写体までの距離を特定することができる。具体的に撮像画像取得部５０は、基準画像Ｉｃ１を複数のブロックに分割し、各ブロックについて、比較用画像Ｉｃ２を用いて当該ブロックに写っている被写体までの距離を測定する。このようにして撮像画像取得部５０は、基準画像Ｉｃ１内における被写体の距離分布を示すデータを生成する。
【００２９】
顔検出部５２は、撮像画像取得部５０が取得した基準画像Ｉｃ１の中から人の顔を検出し、基準画像Ｉｃ１内における顔位置ＦＰを特定する。顔検出部５２が基準画像Ｉｃ１に対して顔の検出を行う具体的なアルゴリズムは、公知のものであってよい。なお、基準画像Ｉｃ１の中から複数の顔が検出された場合、顔検出部５２は実際にゲームをプレイ中のユーザと検出された顔との対応関係を決定する必要がある。例えば一人用のゲームを実行中の場合、顔検出部５２は基準画像Ｉｃ１の中心に最も近い位置で検出された顔をユーザの顔として特定してもよい。あるいは、基準画像Ｉｃ１に含まれる顔の中で最も大きな顔をユーザの顔として特定してもよい。また、前述した被写体の距離分布のデータを用いて、最もステレオカメラ１６に近い位置（すなわち、最も手前側）にある顔をユーザの顔として特定してもよい。また、Ｎ人用のゲームを実行中の場合、中心に近い順、大きさが大きな順、又は距離が近い順にＮ個の顔を、ゲームをプレイ中のユーザの顔として特定してもよい。図４は、ユーザＵ１の顔を含んだ基準画像Ｉｃ１の一例を示している。この図において顔検出部５２は、ユーザＵ１の顔を検出し、検出された顔の中心の位置座標を顔位置ＦＰとして特定する。
【００３０】
操作受付部５４は、ユーザからの操作を受け付けて、受け付けた操作の内容を示す情報を表示画像生成部５６に対して出力する。特に本実施形態では、操作受付部５４は、ユーザがポインティング操作によって指定する画面内の位置を特定し、その位置座標を表示画像生成部５６に対して出力する。その際に操作受付部５４は、顔検出部５２によって検出された基準画像Ｉｃ１内の顔位置ＦＰを基準位置として使用し、この顔位置ＦＰに応じて決まる基準画像Ｉｃ１内の位置に操作領域ＯＡを設定する。そして、操作領域ＯＡの中から検出対象とする物体の位置を検出し、当該物体の位置に対応する画面内の位置を、ユーザが指定する位置として取得する。以下では、操作領域ＯＡ内において検出対象物が検出された位置を検出位置ＤＰといい、検出位置ＤＰに対応する画面内の位置を指定位置ＰＰという。この指定位置ＰＰが、ポインティング操作によってユーザが指定する位置となる。操作領域ＯＡは基準画像Ｉｃ１内に設定される領域であるが、指定位置ＰＰは画面内の位置である。そのため操作受付部５４は、操作領域ＯＡ内の検出位置ＤＰを画面内の指定位置ＰＰに変換する必要がある。なお、検出対象物（操作受付部５４が検出対象とする物体）は、ユーザが動かして位置の指定に用いることができる物体であればよく、ユーザ自身の手などユーザの体の一部であってもよいし、ユーザが手で把持するコントローラ１８であってもよい。以下では具体例として、ユーザの一方の手が検出対象物である場合について説明する。
【００３１】
以下、操作受付部５４が指定位置ＰＰを取得する方法の具体例について、説明する。まず操作受付部５４は、顔位置ＦＰを用いて操作領域ＯＡを基準画像Ｉｃ１内に設定する。具体的に、操作領域ＯＡは顔位置ＦＰの下方に設定される。ユーザは自分の顔より下の範囲内で自分の手を動かしてポインティング操作を行うと想定されるからである。操作領域ＯＡの大きさは、予め定められた大きさであってもよいし、検出された顔の大きさやステレオカメラ１６から検出された顔までの距離に応じて決定されてもよい。例えば操作受付部５４は、検出された顔の大きさが大きいほど、あるいは顔までの距離が短いほど、操作領域ＯＡが大きくなるように操作領域ＯＡの大きさを決定する。ユーザがステレオカメラ１６の近くにいるほど、ユーザが自分の手を動かす範囲は基準画像Ｉｃ１内の比較的広い範囲に及ぶと考えられるからである。同様に、顔位置ＦＰから操作領域ＯＡの中心までの距離も、予め定められた値であってもよいし、検出された顔の大きさ、又は検出された顔までの距離に応じて決定されてもよい。このようにして操作領域ＯＡは、顔検出部５２が検出したユーザの顔を基準として、そのユーザが検出対象物（ここではユーザの手）を動かすと想定される範囲に対応するように設定されることになる。操作領域ＯＡの形状は、指定可能領域ＰＡ（ディスプレイ１４の画面内においてポインティング操作による位置の指定が可能な領域）の形状と対応するよう決定される。この指定可能領域ＰＡは、ディスプレイ１４の画面全体であってもよいし、画面内の一部の領域（例えば画面内に表示されているウィンドウ）であってもよい。また、操作領域ＯＡの形状は、指定可能領域ＰＡの形状と同一であってもよいし、指定可能領域ＰＡの縦横比を変化させた形状であってもよい。図４に示すように、操作領域ＯＡの形状は矩形であってよい。なお、図４では操作領域ＯＡの上端はユーザの顔より下方に配置されているが、操作領域ＯＡはユーザの顔の一部又は全部と重なる領域であってもよい。
【００３２】
また、図４の例では操作領域ＯＡは顔位置ＦＰの真下に設定されており、操作領域ＯＡの中心位置のＸ座標と顔位置ＦＰのＸ座標とは一致している。しかしながら、操作領域ＯＡは顔位置ＦＰに対して左右どちらかにずれた位置に設定されてもよい。特に操作受付部５４は、ユーザが左右どちらの手をポインティング操作に使用するかに応じて、操作領域ＯＡの位置を変化させてもよい。具体的に、例えば操作受付部５４は、ユーザが右手を使用してポインティング操作を行う場合、基準画像Ｉｃ１内において顔位置ＦＰよりも左寄りの位置（ユーザから見て右寄りの位置）を中心に操作領域ＯＡを設定し、ユーザが左手を使用してポインティング操作を行う場合には、顔位置ＦＰよりも右寄りの位置を中心に操作領域ＯＡを設定する。このとき操作受付部５４は、予め定められた距離だけ操作領域ＯＡの中心位置を顔位置ＦＰから左右にずらしてもよいし、検出された顔の大きさに応じた距離だけ操作領域ＯＡの中心位置を左右にずらしてもよい。あるいは操作受付部５４は、距離分布データを用いて、ユーザが右手を使用する場合にはユーザの右肩の位置を、左手を使用する場合には左肩の位置を特定し、当該特定された肩の位置に中心のＸ座標が一致するように操作領域ＯＡの位置を決定してもよい。ユーザが左右どちらの手を使用しているかは、例えば以下のようにして特定できる。すなわち、まず操作受付部５４は、ユーザがポインティング操作を開始する際に、後述する検出位置ＤＰの特定処理と同様に距離分布データを用いてユーザの手の位置を検出する。そして、検出されたユーザの手の位置が顔位置ＦＰより右手寄りであればユーザが右手を使用していると判定し、左手寄りであればユーザが左手を使用していると判定する。これにより操作受付部５４は、ユーザが使用するのが左右どちらの手なのかに合わせて、操作領域ＯＡを設定することができる。あるいはゲーム装置１２は、ポインティング操作の開始時に「左手を前に伸ばしてください」などのメッセージをディスプレイ１２の画面に表示することにより、ユーザに特定の手を意図的に使用させてもよい。この例では操作受付部５４は、ユーザが左手を使用してポインティング操作を行うと想定できるので、ユーザの左手寄りの位置に操作領域ＯＡを設定すればよい。
【００３３】
次に操作受付部５４は、操作領域ＯＡの中から検出対象物を検出し、その位置（検出位置ＤＰ）を特定する。例えば操作受付部５４は、前述した距離分布のデータを用いて、操作領域ＯＡ内において最もステレオカメラ１６の近くに存在する物体の位置を検出位置ＤＰとして特定する。ユーザは自身の手を前方に出してポインティング操作を行うので、操作領域ＯＡの範囲内でユーザの手は他の物体よりも前方（ステレオカメラ１６の近く）に位置すると考えられるからである。図４においては、ユーザの右手の位置が検出位置ＤＰとして特定されている。
【００３４】
最後に操作受付部５４は、検出位置ＤＰの操作領域ＯＡ内における相対位置座標を用いて、指定位置ＰＰの指定可能領域ＰＡ内における位置座標を算出する。ここで、検出位置ＤＰの相対位置座標とは、操作領域ＯＡの一点を原点位置とした場合の検出位置ＤＰの位置座標である。例えば検出位置ＤＰは、図４に示すように、操作領域ＯＡの左上の隅を原点としてＸ座標ＤＰｘ及びＹ座標ＤＰｙによって表される。ここで、操作領域ＯＡの横幅をＯＡｗ、高さをＯＡｈとし、画面内の指定可能領域ＰＡの横幅をＰＡｗ、高さをＰＡｈとする。この場合、指定位置ＰＰの指定可能領域ＰＡ内におけるＸ座標ＰＰｘ及びＹ座標ＰＰｙは、以下の計算式により算出される。
ＰＰｘ＝（ＤＰｘ／ＯＡｗ）・ＰＡｗ
ＰＰｙ＝（ＤＰｙ／ＯＡｈ）・ＰＡｈ
操作受付部５４は、このＸ座標ＰＰｘ及びＹ座標ＰＰｙを、指定位置ＰＰの情報として表示画像生成部５６に対して出力する。なお、基準画像Ｉｃ１がステレオカメラ１６からユーザを見る方向で撮像された画像であるのに対して、表示画像はその逆向きにユーザによって観覧される。そのため、指定可能領域ＰＡ内の位置座標と操作領域ＯＡの位置座標との対応関係は左右反転させる必要がある。具体的に、操作領域ＯＡのＸ座標ＤＰｘが操作領域ＯＡの左上隅を原点、向かって右方向を正方向として表される場合、指定位置ＰＰのＸ座標ＰＰｘは、指定可能領域ＰＡの右上隅を原点、向かって左方向を正方向として表される。
【００３５】
表示画像生成部５６は、操作受付部５４が出力する操作内容を示す情報を用いてゲーム処理を実行し、その実行結果を示す表示画像を生成する。生成された表示画像は、ゲーム装置１２のフレームバッファに描画され、ディスプレイ１４の画面に表示される。特に本実施形態では、表示画像生成部５６は、ユーザがポインティング操作によって指定した指定位置ＰＰに現在表示されているオブジェクト（表示要素）に応じた処理を実行する。例えば図５では、複数のオブジェクト（表示要素）Ｏ１〜Ｏ３が配置された３次元空間内の様子を示す画像がディスプレイ１４の画面に表示されており、この画面全体が指定可能領域ＰＡになっている。ここで、図５に示すように指定位置ＰＰがオブジェクトＯ１に重なる状態が一定時間以上続いた場合、表示画像生成部５６は、ユーザがポインティング操作によってオブジェクトＯ１を選択したと判断する。そして、この選択に応じてオブジェクトＯ１の状態を変化させるなどの処理を実行し、その結果を反映した表示画像を表示する。例えば表示画像生成部５６は、ユーザが自分の手を動かして指定位置を移動させた場合に、その軌跡に沿ってオブジェクトＯ１を移動させる処理を行う。さらに、オブジェクトＯ１を選択した状態でユーザが表示画像の中に設定された目標領域内に指定位置を移動させ、指定位置ＰＰが目標領域内に含まれる状態を一定時間以上維持した場合、選択されたオブジェクトＯ１を目標領域に表示されたオブジェクトにぶつける表示を行ってもよい。なお、表示画像生成部５６は、現在の指定位置ＰＰを示すマーカー画像を画面に表示させてもよい。こうすればユーザは指定位置ＰＰがどこかを確認しながらポインティング操作を行うことができ、任意の位置を指定しやすくなる。
【００３６】
以下、ユーザがポインティング操作を行う場合にゲーム装置１２が実行する処理の流れの一例について、図６のフロー図を用いて説明する。
【００３７】
まず撮像画像取得部５０が、ステレオカメラ１６によって撮像された二つの撮像画像、すなわち基準画像Ｉｃ１と比較用画像Ｉｃ２を取得する（Ｓ１）。そして、Ｓ１で取得した二つの撮像画像を用いて、被写体の距離分布データを生成する（Ｓ２）。
【００３８】
次に顔検出部５２が、Ｓ１で取得された基準画像Ｉｃ１の中からユーザの顔を検出する（Ｓ３）。操作受付部５４は、Ｓ３で検出されたユーザの顔位置ＦＰを用いて、基準画像Ｉｃ１内に操作領域ＯＡを設定する（Ｓ４）。さらに操作受付部５４は、Ｓ２で生成された距離分布データを用いて、Ｓ４で設定された操作領域ＯＡ内のピーク位置を検出位置ＤＰとして特定する（Ｓ５）。このピーク位置は、操作領域ＯＡ内において被写体が最もステレオカメラ１６に近くなっている位置であって、このピーク位置がユーザの手の位置と想定される。
【００３９】
次いで操作受付部５４は、Ｓ５で特定された検出位置ＤＰの操作領域ＯＡ内における相対位置座標を用いて、操作可能領域ＰＡ内における指定位置ＰＰの位置座標を算出し、表示画像生成部５６に対して出力する（Ｓ６）。表示画像生成部５６は、Ｓ６で算出された指定位置ＰＰの位置座標をユーザからの操作入力として用いてゲーム処理を実行し、新たな表示画像を生成する（Ｓ７）。このゲーム処理は、画面内の指定位置ＰＰに現在表示されているオブジェクトに対するユーザの操作を反映したものになる。Ｓ７で生成された表示画像は、ディスプレイ１４の画面に表示される。
【００４０】
ゲーム装置１２は、以上説明したＳ１からＳ７の処理を例えばディスプレイ１４の１フレームレートが経過するごとに実行する。
【００４１】
以上説明したポインティング操作は、複数のユーザが同時に行うこともできる。図７は、この場合における基準画像Ｉｃ１の一例を示している。この図の例では、ユーザＵ１とユーザＵ２の二人がステレオカメラ１６によって撮像されている。顔検出部５２は、この基準画像Ｉｃ１の中からユーザＵ１の顔位置ＦＰ１とユーザＵ２の顔位置ＦＰ２とを検出する。そして操作受付部５４は、顔位置ＦＰ１の位置に基づいて操作領域ＯＡ１を基準画像Ｉｃ１内に設定し、その中からユーザＵ１の手の位置を検出位置ＤＰ１として検出する。同様に、顔位置ＦＰ２の位置に基づいて操作領域ＯＡ２を基準画像Ｉｃ１内に設定し、その中からユーザＵ２の手の位置を検出位置ＤＰ２として検出する。最後に操作受付部５４は、検出位置ＤＰ１の操作領域ＯＡ１内における相対位置座標を用いて操作可能領域ＰＡ内における指定位置ＰＰ１の位置座標を算出し、検出位置ＤＰ２の操作領域ＯＡ２内における相対位置座標を用いて操作可能領域ＰＡ内における指定位置ＰＰ２の位置座標を算出する。このようにしてゲーム装置１２は、ユーザＵ１による指定位置ＰＰ１の指定、及びユーザＵ２による指定位置ＰＰ２の指定を同時に受け付けることができる。ここで、操作領域ＯＡ１及びＯＡ２は基準画像Ｉｃ１内において互いに別の位置に設定されるが、指定位置ＰＰ１及びＰＰ２はいずれも同じ指定可能領域ＰＡ内の位置として算出される。そのため二人のユーザは、互いに離れた位置でそれぞれ自分の体の前で手を動かせば、同じ指定可能領域ＰＡ内の位置を指定するポインティング操作を行うことができる。
【００４２】
また、以上の説明ではユーザは自分の手を用いてポインティング操作を行うこととした。しかしながら、これに限らずユーザはコントローラ１８を用いてポインティング操作を行ってもよい。この場合ユーザは、コントローラ１８の発光部２４をステレオカメラ１６の方に向けてコントローラ１８を手で把持し、自分の体の前でコントローラ１８を動かしてポインティング操作を行う。操作受付部５４は、顔位置ＦＰに基づいて基準画像Ｉｃ１内に操作領域ＯＡを設定した後、操作領域ＯＡの中から発光部２４が発する光の位置を検出する。この光の位置が、検出位置ＤＰとなる。なお、複数のユーザがそれぞれコントローラ１８を把持してポインティング操作を行う場合、前述したように複数のコントローラ１８が互いに異なる色で発光部２４を発光させることにより、ゲーム装置１２はそれぞれのコントローラ１８の位置を区別して検出できる。また、ユーザはコントローラ１８に限らず、例えば小型の表示画面を備えた携帯型デバイスを手で持ってポインティング操作を行ってもよい。この場合、携帯型デバイスが所定の符号画像を画面に表示した状態で、ユーザはその画面をステレオカメラ１６に向けて携帯型デバイスを把持し、携帯型デバイスの位置を動かしてポインティング操作を行う。これに応じてゲーム装置１２の操作受付部５４は、操作領域ＯＡ内に写っている符号画像をパターン認識処理によって検出し、検出位置ＤＰを特定する。
【００４３】
本実施形態に係るゲーム装置１２は、ポインティング操作に限らずユーザから各種の操作入力を受け付け、これに応じてディスプレイ１４の画面に各種の表示を行うことができる。以下では、このようなゲーム装置１２の表示処理の具体例について説明する。
【００４４】
例えば表示画像生成部５６は、指定位置ＰＰだけでなく、顔位置ＦＰに応じて表示画像を更新してもよい。具体的に表示画像生成部５６は、顔位置ＦＰの基準画像Ｉｃ１内における移動に応じて仮想三次元空間内に設定される視点の位置を移動させ、当該視点から見た仮想三次元空間内の様子を示す表示画像を生成してもよい。また、撮像画像取得部５０が生成する距離分布データを用いることにより、顔検出部５２はユーザの顔の上下左右の動きだけでなく、前後の動き（すなわち、ステレオカメラ１６からユーザの顔までの距離の変化）も特定することができる。表示画像生成部５６は、このようにして特定されたユーザの顔の前後の動きに応じて、視点位置を前後に移動させてもよい。こうすれば、ユーザがステレオカメラ１６の前で上下前後左右のどの方向に自分の顔を移動させた場合であっても、表示画像生成部５６は、その動きに合わせて仮想三次元空間内における視点の位置を移動させることができる。これにより、ユーザは自分が実際に仮想三次元空間内にいるかのような感覚を体験することができる。なお、ゲーム装置１２が複数人プレイ用のゲームを実行しており、基準画像Ｉｃ１内にユーザの顔が複数存在する場合、表示画像生成部５６は複数の顔の中から選択された一つの顔（例えば基準画像Ｉｃ１内において最も高い位置にある顔）を基準として視点を移動させてもよい。さらに表示画像生成部５６は、ユーザの顔位置ＦＰや指定位置ＰＰ、ユーザがコントローラ１８に対して入力する操作内容だけでなく、ユーザが発する音に基づいて表示画像を更新してもよい。この場合、例えばステレオカメラ１６に音の発生した方向を特定可能な集音デバイス（マイクロフォンアレイなど）が搭載される。表示画像生成部５６は、ユーザが手を叩いたり声をあげたりした場合、集音デバイスにより集音された音声を用いて音が発せられた方向を特定し、当該方向に応じたゲーム処理（例えば音が発生した方向に向けてオブジェクトを移動させるなど）を実行する。そして、当該ゲーム処理の内容を反映した表示画像を生成し、ディスプレイ１４に表示させる。
【００４５】
また、表示画像生成部５６は、撮像画像取得部５０によって取得された基準画像Ｉｃ１そのものに各種のオブジェクト（表示要素）を配置して表示画像を生成してもよい。さらにこの例において、操作受付部５４は、ユーザのコントローラ１８に対する操作を受け付けるとともに、基準画像Ｉｃ１内における当該コントローラ１８の位置を発光部２４からの光を検出することによって特定する。そして表示画像生成部５６は、コントローラ１８に対するユーザの操作内容に応じて画面に表示させるオブジェクトの位置を、当該コントローラ１８の基準画像Ｉｃ１内における位置に基づいて決定する。これにより、ユーザがディスプレイ１４の画面に写っている自分の姿を見ながら手元のコントローラ１８に対する操作を行うと、画面内で自分が操作を行ったコントローラ１８の位置を基準として表示画像の更新が行われる。そのためユーザは、より直接的に画面内のオブジェクトに対する操作を行っている感覚を得ることができる。
【００４６】
このような処理の具体例として、表示画像生成部５６は、ユーザがメニューを呼び出す操作をコントローラ１８に対して行った場合に、メニューをコントローラ１８の位置に対応する位置に表示してもよい。図８はこの場合の表示例を示している。この図の例では、ユーザがコントローラ１８に設けられたメニュー表示用のボタンを押下した場合に、当該操作を受け付けた操作受付部５４が基準画像Ｉｃ１の中からコントローラ１８の位置を検出する。そして、表示画像生成部５６は検出されたコントローラ１８の位置の上方に複数のメニュー項目を含んだメニュー画像Ｍを基準画像Ｉｃ１と重ねて表示画像を生成する。
【００４７】
また、表示画像生成部５６は、コントローラ１８に対してユーザが操作を行った場合に、コントローラ１８の表示位置からオブジェクトが飛び出す様子を画面に表示してもよい。図９はこの場合の表示例を示しており、この例では、コントローラ１８の板状操作部材２２をユーザが操作した場合に、表示画像生成部５６は基準画像Ｉｃ１内に写っているコントローラ１８からオブジェクトＯ４が飛び出す様子を示す動画像を生成し、ディスプレイ１４の画面に表示する。なお、図中における破線の矢印はオブジェクトＯ４の画面内における軌道を示しており、同図に示すように、オブジェクトＯ４はコントローラ１８の位置を起点として画面内に表れる。さらにその後、コントローラ１８から飛び出したオブジェクトＯ４から所定の距離まで近づくようにコントローラ１８をユーザが移動させて特定の操作ボタンを押下すると、画面内のコントローラ１８にオブジェクトＯ４が吸い込まれる様子を表示してもよい。また、オブジェクトＯ４が鳴き声やエンジン音などの音を立てる演出を行う場合、コントローラ１８からオブジェクトＯ４が飛び出している間はディスプレイ１４に設けられたスピーカからオブジェクトＯ４の音を再生し、オブジェクトＯ４がコントローラ１８に吸い込まれた後はコントローラ１８に設けられたスピーカからオブジェクトＯ４の音を再生してもよい。このような演出により、ユーザはオブジェクトＯ４を直接現実世界で操作しているのに近い感覚を得ることができる。このような制御を用いると、例えばユーザがコントローラ１８をシャンパンのボトルに見立てて左右に振り、その後に板状操作部材２２でスライド操作を行うことで、表示画像内におけるコントローラ１８の位置からシャンパンが吹き出す様子を表示するなどの演出を行うことができる。このとき、ユーザがコントローラ１８を左右に振る動きは、発光部２４が発する光の動きやコントローラ１８に内蔵されたセンサの出力により特定される。さらにこの場合、ユーザがコントローラ１８を振る動きやユーザによる板状操作部材２４の操作に応じて、コントローラ１８が内蔵するスピーカから音を出したり内蔵するモータにより振動を起こしたりすることで、よりリアリティのある演出を行うことができる。
【００４８】
また、基準画像Ｉｃ１内に複数の顔が写っている場合に、表示画像生成部５６は、コントローラ１８を操作しているユーザの顔が複数の顔のうちのどれかをコントローラ１８の位置を用いて特定し、特定されたユーザの顔に対して画像処理を実行してもよい。基準画像Ｉｃ１内には、コントローラ１８を手で持っているユーザのほかに、単にゲームを観戦している他の人の顔が写ることがある。その場合一般には、顔画像から個人を特定する顔認識技術を用いなければ、どれがユーザの顔かを識別することは困難である。しかしながら本実施形態では、コントローラ１８の基準画像Ｉｃ１内における位置を特定することが可能なので、このコントローラ１８の位置と対応する位置に存在する顔を、ユーザの顔として判別することができる。より具体的に、顔検出部５２が複数の顔を検出した場合、操作受付部５４は、基準画像Ｉｃ１内に含まれる発光部２４の光を検出することによって、現在使用されているコントローラ１８の位置を特定する。そして、顔検出部５２によって検出された複数の顔のうち、コントローラ１８の位置の上方に位置する顔を、コントローラ１８を使用しているユーザの顔であると判定する。ユーザが上体を大きく傾けているのでない限り、コントローラ１８は当該コントローラ１８を持っているユーザの顔の下方に存在すると考えられるからである。こうしてユーザの顔が特定されれば、当該ユーザの顔に対して何らかの画像処理を施して画面に表示するなどの処理が可能になる。
【００４９】
なお、以上の説明では一人のユーザが自分の持っているコントローラ１８に対して操作を行うことを想定しているが、複数のユーザがそれぞれコントローラ１８を所持して操作を行う場合であっても、以上説明したような表示処理を行うことができる。この場合ゲーム装置１２は、予め各コントローラ１８に他のコントローラ１８とは異なる識別番号を割り当てるとともに、各コントローラ１８の発光部２４を他のコントローラ１８とは異なる色で発光させる指示を行う。そして、各コントローラ１８に割り当てた識別番号と、当該コントローラ１８に指示した発光色との対応関係を示すテーブルを記憶しておく。その後、いずれかのコントローラ１８から操作入力を受け付けた場合、このテーブルを用いて操作入力を行ったコントローラ１８の識別番号に対応する色を特定し、当該色で発光している発光部２４の位置を、当該コントローラ１８の位置として特定する。このようにすれば、複数のユーザが同時にコントローラ１８を持ってゲームをプレイしている場合にも、各ユーザの操作を受け付けた場合に、当該操作を行ったユーザが持っているコントローラ１８の位置や当該操作を行ったユーザの顔の位置を特定することができる。
【００５０】
図１０は、二人のユーザＵ１及びＵ２とその他の観覧者が基準画像Ｉｃ１に写っている場合に、ユーザＵ１及びＵ２それぞれの顔を特定し、当該特定した顔に対して画像処理を施す場合の例を示している。この図の例では、ユーザＵ１が識別番号１を割り当てられたコントローラ１８−１を所持し、ユーザＵ２が識別番号２を割り当てられたコントローラ１８−２を所持している。そして、操作受付部５４は、発光色によってコントローラ１８−１及び１８−２それぞれの位置を特定し、コントローラ１８−１の上方にある顔Ｆ１をユーザＵ１の顔、コントローラ１８−２の上方にある顔Ｆ２をユーザＵ２の顔として特定する。そして、ユーザＵ１及びＵ２のうち、現在実行中のゲームにおいてより成績がよいユーザ（図１０の例ではユーザＵ２）の顔に対して、王冠Ｃをかぶせた様子を示す表示画像を生成し、画面に表示する。なお、複数のユーザのうち、成績がよいユーザではなく成績が悪いユーザの顔に対して、何らかの画像処理を実行してもよい。
【００５１】
また、表示画像生成部５６は、基準画像Ｉｃ１にオブジェクトを重ねて表示画像を生成する場合に、表示画像内におけるコントローラ１８の位置と、表示中のオブジェクトと、の間の位置関係に応じて各種の処理を実行してもよい。例えば操作対象のオブジェクトがコントローラ１８の位置から所定の距離範囲内にある場合と所定の距離範囲外にある場合とで、ユーザのコントローラ１８に対する操作に応じたオブジェクトの挙動を変化させてもよい。
【００５２】
また、表示画像生成部５６は、表示画像内に写っているユーザの手と表示画像内に配置されたオブジェクトとの間の距離に応じて、オブジェクトの挙動を制御してもよい。この場合においてユーザの手の位置は、前述したように基準画像Ｉｃ１の距離分布データを用いて指定位置ＰＰとして特定できる。例えば表示画像生成部５６は、ユーザの手を中心に表示画像内に所定の領域を設定し、当該領域外にオブジェクトが表示されている場合には、そのオブジェクトをユーザの手に向かって移動させ、当該領域内にオブジェクトが入った場合には、そのオブジェクトの移動を停止させてもよい。また、自身の手とオブジェクトとが重なるようにユーザが手を動かした場合、オブジェクトが指定位置ＰＰから離れるような制御を行ってもよい。さらに表示画像生成部５６は、手の動き（時間変化）をモニタし、その動きに応じてオブジェクトの向きや形状を変化させてもよい。こうすれば、あたかも画面内のオブジェクトがユーザの手の動きに反応するかのように演出することができる。
【００５３】
さらに操作受付部５４は、コントローラ１８に設けられたセンサによって検出されたコントローラ１８の姿勢を示す情報を取得し、表示画像生成部５６は、コントローラ１８の姿勢に応じて画面に表示する画像の内容を変化させてもよい。図１１は、このような処理によって表示される表示画像の例を示している。この図の例では、操作受付部５４は、加速度センサやジャイロセンサなどのコントローラ１８に内蔵された姿勢検出用センサの検出結果を用いて、コントローラ１８の向きを検出する。表示画像生成部５６は、このコントローラ１８の向きの変化に応じて、画面に表示されたスリングＳの向きを図中破線の矢印で示すように変化させる。そして、ユーザが例えば板状操作部材２２上においていずれかの方向に向けて指をスライドさせる操作を行うと、当該操作に応じて弾を撃ち出すショットが行われる。このとき、弾が飛んでいく方向は、コントローラ１８の向きに応じて決定される。そのためユーザは、スリングを動かして的を狙い、弾を撃ち出して的に当てるというゲームをより実際に近い動きで行うことができる。なお、この場合において弾が撃ち出される方向は、コントローラ１８の向きと、板状操作部材２２に対するスライド操作の向きとの双方に基づいて決定されてもよい。具体的に、例えばコントローラ１８が基準姿勢（ゲーム開始時の姿勢）に対してθｘ度回転しており、さらにユーザが行ったスライド操作の向きがコントローラ１８の前方に対してθｙ度傾いているとする。この場合に弾の撃ち出される向きは、ゲーム開始時の基準方向に対して（θｘ＋θｙ）度傾いた方向に設定される。
【００５４】
また、以上の説明では顔位置ＦＰに基づいて基準画像Ｉｃ１内における操作領域ＯＡが決定されることとしたが、画面内に設定される指定可能領域ＰＡも、基準画像Ｉｃ１から検出された人の顔の位置に応じて決定されてもよい。この場合の処理の具体例について、図１２Ａ及び図１２Ｂを用いて説明する。
【００５５】
図１２Ａは、撮像画像取得部５０が取得する基準画像Ｉｃ１の一例である。また、図１２Ｂは、表示画像生成部５６が生成する表示画像の一例である。図１２Ａの基準画像Ｉｃ１内には、コントローラ１８を用いてゲーム操作を行うユーザＵ１と、ユーザＵ１によるゲーム操作のターゲットとなるユーザＵ２とが写っている。顔検出部５２は、ユーザＵ１の顔Ｆ１とユーザＵ２の顔Ｆ２をそれぞれ検出する。ここで、コントローラ１８の位置の上方にある顔がゲーム操作を行うユーザＵ１の顔Ｆ１として特定される。また、複数の人が基準画像Ｉｃ１内に写っている場合、ユーザＵ１に最も近い位置にある顔が操作対象となるユーザＵ２の顔Ｆ２として特定される。前述したように、操作領域ＯＡはユーザＵ１の顔Ｆ１の位置に応じて決定される。さらにこの例においては、指定可能領域ＰＰはユーザＵ２の顔Ｆ２の位置に応じて決定される。具体的に、図１２Ｂの例では、指定可能領域ＰＡは顔Ｆ２の下方を中心位置としてユーザＵ２の上半身を含むような矩形の領域として設定されている。指定可能領域ＰＡの位置及び大きさは、検出された顔Ｆ２の大きさに応じて決定されてもよい。また、図１２Ｂの例では、基準画像Ｉｃ１に重ねて指定可能領域ＰＡ内に別の画像を配置して表示画像が生成されている。ここでユーザＵ１が操作領域ＯＡ内でコントローラ１８を動かすと、指定位置ＰＰはユーザＵ２の体に重なる指定可能領域ＰＡ内でコントローラ１８の動きに合わせて移動することになる。これにより、ユーザＵ１はユーザＵ２の体に配置された画像内でゲーム操作を行うことができる。
【００５６】
図１３Ａは、本実施形態に係るゲーム装置１２がさらに別のゲーム処理を実行する場合における基準画像の例を示している。図１３Ｂは、この場合の表示画像の例を示している。この例では、ユーザＵ１はコントローラ１８を用いてハンドル操作を行うことで、画面内に表示されている車を操縦するゲームを行う。具体的に、まず操作受付部５４が、基準画像Ｉｃ１内に含まれるコントローラ１８の位置を特定し、その上方にある顔を、ゲームをプレイするユーザＵ１の顔Ｆ１として特定する。表示画像生成部５６は、表示画像を生成する際に、基準画像Ｉｃ１の中から、特定された顔Ｆ１近傍の抽出領域ＥＡを抽出して表示画像内の車オブジェクトを表示する位置に重ねて貼り付ける。これによりユーザは、自分の顔が表示画像内の車の中に写っている状態でゲームを楽しむことができる。
【００５７】
さらにこの例では、ユーザの顔の位置に応じて基準画像Ｉｃ１内に検出対象領域ＤＡが設定される。具体的に、図１３Ａの例では抽出領域ＥＡを囲むように検出対象領域ＤＡが設定されている。操作受付部５４は、検出対象領域ＤＡ内の画像の時間変化を検出することにより、ユーザがこの検出対象領域ＤＡ内で手を動かしたことを検知できる。このようなユーザの手の動きの検知に応じて、表示画像生成部５６は、検知されたユーザの手の位置に対応する表示画像内の位置に配置しているオブジェクトを変化させる処理を行う。具体的に、図１３Ａ及び図１３Ｂでは、ユーザの左手の動きに応じて、この左手の位置に対応する画面内の位置に配置されたオブジェクトＯ５がはね飛ばされる表示を行っている。
【００５８】
さらにこの例において、ゲームをプレイするユーザを別のユーザに変更する制御も、検出される顔Ｆ１の位置に応じて実行されてもよい。具体例として、ゲーム装置１２は、ゲームをプレイ中のユーザＵ１の顔Ｆ１の位置の近くまで別のユーザＵ２が近づいた状態で、このユーザＵ２が所持するコントローラ１８−２から所定の操作入力を受け付けた場合に、ゲームをプレイするユーザをユーザＵ１からユーザＵ２に交代することとし、それ以降はコントローラ１８−２からの入力に応じて車を移動させる処理を行う。一方で、ユーザＵ２がユーザＵ１から離れた位置でユーザ交代の操作入力を行ったとしても、ゲーム装置１２はその操作入力を無視する。特に図１３Ａ及び図１３Ｂの例では、ユーザＵ２の顔が抽出領域ＥＡ内に入った状態で、ユーザ交代の指示を受け付けることとしてもよい。これにより、ユーザＵ２が車に乗り込んでから操縦を交代するような演出を行うことができる。
【００５９】
なお、本発明の実施の形態は以上説明したものに限られない。例えば、ゲーム装置１２の撮像画像取得部５０が、ステレオカメラ１６ではないカメラから、撮像画像を取得するようにしてもよい。
【００６０】
また、例えば、ゲーム装置１２が、赤外線を出力して、その赤外線が撮像対象オブジェクトに反射して戻ってくるまでの時間を測定して、その測定された時間に基づいて、被写体とゲーム装置１２との距離分布を測定する距離分布測定部から、距離分布の測定結果を受け付けるようにしてもよい。
【００６１】
また、例えば、ゲーム装置１２が、焦点距離の異なる複数のレンズから構成され、これらのレンズのうち、被写体に対してピントが合ったレンズに基づいて、被写体とゲーム装置１２との距離分布を測定する距離分布測定部から、距離分布の測定結果を受け付けるようにしてもよい。
【図１】
2014073384.tif 000003
【図２Ａ】
2014073384.tif 000004
【図２Ｂ】
2014073384.tif 000005
【図３】
2014073384.tif 000006
【図４】
2014073384.tif 000007
【図５】
2014073384.tif 000008
【図６】
2014073384.tif 000009
【図７】
2014073384.tif 000010
【図８】
2014073384.tif 000011
【図９】
2014073384.tif 000012
【図１０】
2014073384.tif 000013
【図１１】
2014073384.tif 000014
【図１２Ａ】
2014073384.tif 000015
【図１２Ｂ】
2014073384.tif 000016
【図１３Ａ】
2014073384.tif 000017
【図１３Ｂ】
2014073384.tif 000018
【手続補正書】
【提出日】平成27年5月11日(2015.5.11)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１ユーザ及び第２ユーザの顔を含む撮像画像を取得する撮像画像取得部と、
前記撮像画像に含まれる前記第１ユーザ及び第２ユーザそれぞれの顔の位置を特定する顔位置特定部と、
表示装置の画面に設定される指定可能領域に対応付けられる、前記第１ユーザの顔の位置に応じて決まる第１操作領域、及び、前記指定可能領域に対応付けられる、前記第２ユーザの顔の位置に応じて決まる第２操作領域を、それぞれ前記撮像画像内に設定する操作領域設定部と、
前記第１操作領域から第１検出対象物を検出し、当該検出した第１検出対象物の前記第１操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第１ユーザが指定する位置として受け付け、前記第２操作領域から第２検出対象物を検出し、当該検出した第２検出対象物の前記第２操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第２ユーザが指定する位置として受け付ける操作受付部と、
を含むことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記撮像画像内にオブジェクトを配置して表示画像を生成し、表示装置の画面に表示させる表示画像生成部をさらに含み、
前記表示画像生成部は、前記オブジェクトの配置位置を、前記撮像画像に含まれる検出対象物の位置に基づいて特定される、当該撮像画像に含まれる当該検出対象物を動かしているユーザの顔の位置に応じて決定する
ことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置において、
前記操作受付部は、前記検出対象物として発光部を備えたコントローラを検出し、
前記表示画像生成部は、前記オブジェクトの配置位置を、前記撮像画像に含まれる、特定の色で発光している前記発光部の位置に基づいて特定される、当該撮像画像に含まれる、当該発光部を備える前記コントローラを操作するユーザの顔の位置に応じて決定する
ことを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置において、
前記操作受付部は、前記第１操作領域内から、前記第１ユーザの手を前記第１検出対象物として検出し、前記第２操作領域内から、前記第２ユーザの手を前記第２検出対象物として検出する
ことを特徴とする情報処理装置。
【請求項５】
請求項４に記載の情報処理装置において、
前記撮像画像取得部は、ステレオカメラによって撮像された二つの撮像画像を取得し、当該二つの撮像画像に基づいて前記ステレオカメラから被写体までの距離分布を示す距離分布データを生成し、
前記操作受付部は、前記第１操作領域内において最も前記ステレオカメラの近くにある被写体の位置を、前記第１ユーザの手の位置として検出し、前記第２操作領域内において最も前記ステレオカメラの近くにある被写体の位置を、前記第２ユーザの手の位置として検出する
ことを特徴とする情報処理装置。
【請求項６】
請求項１に記載の情報処理装置において、
前記操作受付部は、前記第１操作領域内から、前記第１ユーザが手で把持しているコントローラを前記第１検出対象物として検出し、前記第２操作領域内から、前記第２ユーザが手で把持しているコントローラを前記第２検出対象物として検出する
ことを特徴とする情報処理装置。
【請求項７】
ユーザからの操作入力に応じた処理を実行する情報処理装置の制御方法であって、
第１ユーザ及び第２ユーザの顔を含む撮像画像を取得するステップと、
前記撮像画像に含まれる前記第１ユーザ及び第２ユーザそれぞれの顔の位置を特定するステップと、
表示装置の画面に設定される指定可能領域に対応付けられる、前記第１ユーザの顔の位置に応じて決まる第１操作領域、及び、前記指定可能領域に対応付けられる、前記第２ユーザの顔の位置に応じて決まる第２操作領域を、それぞれ前記撮像画像内に設定するステップと、
前記第１操作領域から第１検出対象物を検出し、当該検出した第１検出対象物の前記第１操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第１ユーザが指定する位置として受け付け、前記第２操作領域から第２検出対象物を検出し、当該検出した第２検出対象物の前記第２操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第２ユーザが指定する位置として受け付けるステップと、
を含むことを特徴とする情報処理装置の制御方法。
【請求項８】
第１ユーザ及び第２ユーザの顔を含む撮像画像を取得する撮像画像取得部、
前記撮像画像に含まれる前記第１ユーザ及び第２ユーザそれぞれの顔の位置を特定する顔位置特定部、
表示装置の画面に設定される指定可能領域に対応付けられる、前記第１ユーザの顔の位置に応じて決まる第１操作領域、及び、前記指定可能領域に対応付けられる、前記第２ユーザの顔の位置に応じて決まる第２操作領域を、それぞれ前記撮像画像内に設定する操作領域設定部、及び、
前記第１操作領域から第１検出対象物を検出し、当該検出した第１検出対象物の前記第１操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第１ユーザが指定する位置として受け付け、前記第２操作領域から第２検出対象物を検出し、当該検出した第２検出対象物の前記第２操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第２ユーザが指定する位置として受け付ける操作受付部、
としてコンピュータを機能させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを格納した、コンピュータ読み取り可能な情報記憶媒体。
【手続補正書】
【提出日】平成28年1月18日(2016.1.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１ユーザ及び第２ユーザの顔を含む撮像画像を取得する撮像画像取得部と、
前記撮像画像に含まれる前記第１ユーザ及び第２ユーザそれぞれの顔の位置を特定する顔位置特定部と、
表示装置の画面に設定される指定可能領域に対応付けられる、前記第１ユーザの顔の位置に応じて決まる第１操作領域、及び、前記指定可能領域に対応付けられる、前記第２ユーザの顔の位置に応じて決まる第２操作領域を、それぞれ前記撮像画像内に設定する操作領域設定部と、
前記第１操作領域から第１検出対象物を検出し、当該検出した第１検出対象物の前記第１操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第１ユーザが指定する位置として受け付け、前記第２操作領域から第２検出対象物を検出し、当該検出した第２検出対象物の前記第２操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第２ユーザが指定する位置として受け付ける操作受付部と、を含み、
前記第１検出対象物の前記第１操作領域内における相対位置と前記第２検出対象物の前記第２操作領域内における相対位置とが同じである場合は、前記第１ユーザが指定する位置として前記操作受付部が受け付ける画面内の位置と前記第２ユーザが指定する位置として前記操作受付部が受け付ける画面内の位置とは同じとなる、
ことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
前記撮像画像内にオブジェクトを配置して表示画像を生成し、表示装置の画面に表示させる表示画像生成部をさらに含み、
前記表示画像生成部は、前記オブジェクトの配置位置を、前記撮像画像に含まれる検出対象物の位置に基づいて特定される、当該撮像画像に含まれる当該検出対象物を動かしているユーザの顔の位置に応じて決定する
ことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置において、
前記操作受付部は、前記検出対象物として発光部を備えたコントローラを検出し、
前記表示画像生成部は、前記オブジェクトの配置位置を、前記撮像画像に含まれる、特定の色で発光している前記発光部の位置に基づいて特定される、当該撮像画像に含まれる、当該発光部を備える前記コントローラを操作するユーザの顔の位置に応じて決定する
ことを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置において、
前記操作受付部は、前記第１操作領域内から、前記第１ユーザの手を前記第１検出対象物として検出し、前記第２操作領域内から、前記第２ユーザの手を前記第２検出対象物として検出する
ことを特徴とする情報処理装置。
【請求項５】
請求項４に記載の情報処理装置において、
前記撮像画像取得部は、ステレオカメラによって撮像された二つの撮像画像を取得し、当該二つの撮像画像に基づいて前記ステレオカメラから被写体までの距離分布を示す距離分布データを生成し、
前記操作受付部は、前記第１操作領域内において最も前記ステレオカメラの近くにある被写体の位置を、前記第１ユーザの手の位置として検出し、前記第２操作領域内において最も前記ステレオカメラの近くにある被写体の位置を、前記第２ユーザの手の位置として検出する
ことを特徴とする情報処理装置。
【請求項６】
請求項１に記載の情報処理装置において、
前記操作受付部は、前記第１操作領域内から、前記第１ユーザが手で把持しているコントローラを前記第１検出対象物として検出し、前記第２操作領域内から、前記第２ユーザが手で把持しているコントローラを前記第２検出対象物として検出する
ことを特徴とする情報処理装置。
【請求項７】
ユーザからの操作入力に応じた処理を実行する情報処理装置の制御方法であって、
第１ユーザ及び第２ユーザの顔を含む撮像画像を取得するステップと、
前記撮像画像に含まれる前記第１ユーザ及び第２ユーザそれぞれの顔の位置を特定するステップと、
表示装置の画面に設定される指定可能領域に対応付けられる、前記第１ユーザの顔の位置に応じて決まる第１操作領域、及び、前記指定可能領域に対応付けられる、前記第２ユーザの顔の位置に応じて決まる第２操作領域を、それぞれ前記撮像画像内に設定するステップと、
前記第１操作領域から第１検出対象物を検出し、当該検出した第１検出対象物の前記第１操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第１ユーザが指定する位置として受け付け、前記第２操作領域から第２検出対象物を検出し、当該検出した第２検出対象物の前記第２操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第２ユーザが指定する位置として受け付けるステップと、を含み、
前記第１検出対象物の前記第１操作領域内における相対位置と前記第２検出対象物の前記第２操作領域内における相対位置とが同じである場合は、前記第１ユーザが指定する位置として受け付ける画面内の位置と前記第２ユーザが指定する位置として受け付ける画面内の位置とは同じとなる、
ことを特徴とする情報処理装置の制御方法。
【請求項８】
第１ユーザ及び第２ユーザの顔を含む撮像画像を取得する撮像画像取得部、
前記撮像画像に含まれる前記第１ユーザ及び第２ユーザそれぞれの顔の位置を特定する顔位置特定部、
表示装置の画面に設定される指定可能領域に対応付けられる、前記第１ユーザの顔の位置に応じて決まる第１操作領域、及び、前記指定可能領域に対応付けられる、前記第２ユーザの顔の位置に応じて決まる第２操作領域を、それぞれ前記撮像画像内に設定する操作領域設定部、及び、
前記第１操作領域から第１検出対象物を検出し、当該検出した第１検出対象物の前記第１操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第１ユーザが指定する位置として受け付け、前記第２操作領域から第２検出対象物を検出し、当該検出した第２検出対象物の前記第２操作領域内における相対位置に対応する前記指定可能領域内の位置を、前記第２ユーザが指定する位置として受け付ける操作受付部、としてコンピュータを機能させ、
前記第１検出対象物の前記第１操作領域内における相対位置と前記第２検出対象物の前記第２操作領域内における相対位置とが同じである場合は、前記第１ユーザが指定する位置として前記操作受付部が受け付ける画面内の位置と前記第２ユーザが指定する位置として前記操作受付部が受け付ける画面内の位置とは同じとなる、
ことを特徴とするプログラム。
【請求項９】
請求項８に記載のプログラムを格納した、コンピュータ読み取り可能な情報記憶媒体。
【国際調査報告】
2014073384.tif 000019
2014073384.tif 000020
2014073384.tif 000021
2014073384.tif 000022