説明

情報処理装置、プログラム、および、情報処理装置におけるオブジェクト制御方法

【課題】 カメラで撮影したプレイヤの画像を入力インタフェースとして用いる情報処理システムにおいて、よりゲーム性を高める。
【解決手段】 プレイヤの鏡面動画像から動きのある領域を検出する検出手段と、移動対象のオブジェクトを含むコンピュータ画像を生成する制御手段と、前記鏡面動画像と、前記コンピュータ画像とを重ねた重畳動画像を表示装置に表示させる表示制御手段とを備え、前記制御手段は、前記移動対象のオブジェクトについて、複数の検出対象領域を設定し、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの移動態様を制御することを特徴とする情報処理装置を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、カメラで撮影したプレイヤの画像を用いてゲームシナリオを進行させる情報処理システムに関する。
【背景技術】
【0002】
カメラで撮影したプレイヤの画像をコマンド等を入力するための入力インタフェースとして利用した情報処理システムが提案されている。
【0003】
例えば、特許文献1には、プレイヤを写した鏡面動画像とメニュー画像等のコンピュータ画像との合成動画像を生成し、画像に表示されるプレイヤの手をポインティングデバイスに見立ててメニューの選択等の指示を受け付ける画像処理装置が開示されている。
【0004】
【特許文献1】特開2002−196855号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
特許文献1に開示されている入力インタフェースは、プレイヤの動作と画像処理装置に対する操作とが直接的に対応しているため、万人にわかりやすい操作性を有している。このため、特に、ユーザの年齢層が幅広いエンタテインメントシステムの分野での応用が期待される。一方、エンタテインメントシステムの分野での応用には、よりゲーム性を高めた工夫が要求される。
【0006】
本発明は、カメラで撮影したプレイヤの画像を入力インタフェースとして用いる情報処理システムにおいて、よりゲーム性を高めるための技術を提供することを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するための本発明の第1の態様である情報処理装置は、
プレイヤの鏡面動画像から動きのある領域を検出する検出手段と、
移動対象のオブジェクトを含むコンピュータ画像を生成する制御手段と、
前記鏡面動画像と、前記コンピュータ画像とを重ねた重畳動画像を表示装置に表示させる表示制御手段とを備え、
前記制御手段は、前記移動対象のオブジェクトについて、複数の検出対象領域を設定し、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの移動態様を制御することを特徴とする。
【0008】
本発明によれば、1つのオブジェクトについて複数の検出対象領域を設け、重畳表示されたプレイヤの動作に対する各検出対象領域の検出結果に応じてオブジェクトを移動させることにより、カメラで撮影したプレイヤの画像を入力インタフェースとして用いる情報処理システムにおいて、よりゲーム性を高めることができる。
【0009】
ここで、撮影装置でプレイヤを撮影したプレイヤ動画像の入力を受け付けるプレイヤ動画像受付手段と、
前記プレイヤ動画像を鏡面処理して鏡面動画像を生成する鏡面動画像処理手段とをさらに備えることができる。
【0010】
また、前記表示制御手段は、前記鏡面動画像を半透明処理して前記コンピュータ画像と重ね合わせることが望ましい。
【0011】
具体的には、前記制御手段は、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの進行方向を決定するようにすることができる。
【0012】
このとき、前記制御手段は、前記オブジェクトに2箇所の検出対象領域を設定し、
一方の検出対象領域で動きを検出した場合には、他方の検出対象領域側に進行するように、双方の検出対象領域で動きを検出した場合には、直進するように進行方向を決定することができる。
【0013】
また、前記検出手段は、前記鏡面動画像のフレーム間の差分に基づいて、動きのある領域を検出することができる。
【0014】
上記課題を解決するための本発明の第2の態様であるプログラムは、
プレイヤの鏡面動画像から動きのある領域を検出する検出手段と、
移動対象のオブジェクトを含むコンピュータ画像を生成する制御手段と、
前記鏡面動画像と、前記コンピュータ画像とを重ねた重畳動画像を表示装置に表示させる表示制御手段とを情報処理装置に機能させるプログラムであって、
前記制御手段は、前記移動対象のオブジェクトについて、複数の検出対象領域を設定し、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの移動態様を制御することを特徴とする。
【0015】
上記課題を解決するための本発明の第3の態様である情報処理装置におけるオブジェクト制御方法は、
プレイヤの鏡面動画像から動きのある領域を検出する検出処理と、
移動対象のオブジェクトを含むコンピュータ画像を生成する制御処理と、
前記鏡面動画像と、前記コンピュータ画像とを重ねた重畳動画像を表示装置に表示させる表示制御処理とを含み、
前記制御処理は、前記移動対象のオブジェクトについて、複数の検出対象領域を設定し、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの移動態様を制御することを特徴とする。
【発明を実施するための最良の形態】
【0016】
以下、本発明の実施形態について、図面を用いて説明する。
【0017】
本実施形態に係るエンタテインメントシステムの構成の一例を図1に示す。このエンタテインメントシステムは、ディスプレイ装置3に向き合った位置にいるプレイヤ4をアナログまたはデジタルのビデオカメラ1が撮影し、これにより得られた動画像をエンタテインメント装置2が連続的に連続に取り込んで、エンタテインメント装置2が生成したコンピュータ画像(CG)と、ビデオカメラ1から取り込んだ動画像の鏡面動画像とを重ね合わせた重畳画像をディスプレイ装置3上にリアルタイムに表示させるものである。したがって、重畳画像ではプレイヤ4の動作がリアルタイムに反映されることになり、この重畳画像でプレイヤ4はプレイを楽しむことができる。鏡面動画像は、ビデオカメラ1から取り込んだ動画像をエンタテインメント装置2で鏡面処理(画像の左右反転処理)することにより生成することができるが、他の方法であってもよい。例えば、ビデオカメラ1において鏡面処理を行なうようにしてもよい。
【0018】
エンタテインメント装置2は、コンピュータプログラムにより所要の機能を形成する情報処理装置により実現される。この実施形態によるエンタテインメント装置2は、例えば図2にそのハードウエア構成を示すように、それぞれ固有の機能を有する複数の半導体デバイスが接続されたメインバスB1とサブバスB2の2本のバスを有している。これらのバスB1、B2は、バスインタフェースINTを介して互いに接続され又は切り離されるようになっている。
【0019】
メインバスB1には、主たる半導体デバイスであるメインCPU310と、RAMで構成されるメインメモリ311と、メインDMAC(Direct Memory Access Controller)312と、MPEG(Moving Picture Experts Group)デコーダ(MDEC)313と、描画用メモリとなるフレームメモリ315を内蔵する描画処理装置(Graphic Processing Unit、以下、「GPU」)314が接続される。GPU314には、フレームメモリ315に描画されたデータをディスプレイ装置3で表示できるようにするためのビデオ信号を生成するCRTC(CRT Controller)316が接続される。
【0020】
メインCPU310は、コンピュータの起動時にサブバスB2上のROM323から、バスインタフェースINTを介して起動プログラムを読み込み、その起動プログラムを実行してオペレーティングシステムを動作させる。また、メディアドライブ327を制御するとともに、このメディアドライブ327に装着されたメディア328からアプリケーションプログラムやデータを読み出し、これをメインメモリ311に記憶させる。さらに、メディア328から読み出した各種データ、例えば複数の基本図形(ポリゴン)で構成された3次元オブジェクトデータ(ポリゴンの頂点(代表点)の座標値など)に対して、オブジェクトの形状や動き等を表現するためのジオメトリ処理(座標値演算処理)を行い、そして、ジオメトリ処理によるポリゴン定義情報(使用するポリゴンの形状およびその描画位置、ポリゴンを構成する素材の種類、色調、質感等の指定)をその内容とするディスプレイリストを生成する。
【0021】
GPU314は、描画コンテクスト(ポリゴン素材を含む描画用のデータ)を保持しており、メインCPU310から通知されるディスプレイリストにしたがって必要な描画コンテクストを読み出してレンダリング処理(描画処理)を行い、フレームメモリ315にポリゴンを描画する機能を有する半導体デバイスである。フレームメモリ315は、これをテクスチャメモリとしても使用できる。そのため、フレームメモリ315上のピクセルイメージをテクスチャとして、描画するポリゴンに貼り付けることができる。
【0022】
メインDMAC312は、メインバスB1に接続されている各回路を対象としてDMA転送制御を行うとともに、バスインタフェースINTの状態に応じて、サブバスB2に接続されている各回路を対象としてDMA転送制御を行う半導体デバイスであり、MDEC313は、メインCPU310と並列に動作し、MPEG(Moving Picture Experts Group)方式あるいはJPEG(Joint Photographic Experts Group)方式等で圧縮されたデータを伸張する機能を有する半導体デバイスである。
【0023】
サブバスB2には、マイクロプロセッサなどで構成されるサブCPU320、RAMで構成されるサブメモリ321、サブDMAC322、オペレーティングシステムなどの制御プログラムが記憶されているROM323、サウンドメモリ325に蓄積された音データを読み出してオーディオ出力として出力する音声処理用半導体デバイス(SPU(Sound Processing Unit))324、図示しないネットワークを介して外部装置と情報の送受信を行う通信制御部(ATM)326、CD−ROMやDVD−ROMなどのメディア328を装着するためのメディアドライブ327および入力部331が接続されている。
【0024】
サブCPU320は、ROM323に記憶されている制御プログラムにしたがって各種動作を行う。サブDMAC322は、バスインタフェースINTがメインバスB1とサブバスB2を切り離している状態においてのみ、サブバスB2に接続されている各回路を対象としてDMA転送などの制御を行う半導体デバイスである。入力部331は、操作装置335からの入力信号が入力される接続端子332、ビデオカメラ1からの画像信号が入力される接続端子333、およびビデオカメラ1等からの音声信号が入力される接続端子334を備える。なお、本明細書では、画像についてのみ説明を行い、便宜上、音声についての説明は省略する。
【0025】
このように構成されるコンピュータは、メインCPU310、サブCPU320、GPU314が、ROM323およびメディア328等の記録媒体から所要のコンピュータプログラムを読み込んで実行することにより、エンタテインメント装置2として動作する。
【0026】
このエンタテインメント装置2の機能ブロック図を図3に示す。すなわち、エンタテインメント装置2には、ビデオ画像入力部101と、差分検出部102と、主制御部103と、オブジェクトデータ記憶部104と、重畳画像生成部105と、表示制御部106とが形成される。エンタテインメント装置2は、DVD−ROM、CD−ROM等の記録媒体に記録されたプログラムを実行することで、図3に示したような機能ブロックを構成する。
【0027】
ビデオ画像入力部101は、ビデオカメラ1で撮影されたビデオ画像を取り込んで、鏡面処理、すなわち左右反転処理を施して出力する。ビデオ画像は動画像であり、ビデオ画像入力部101はビデオカメラ1から送られてくる画像を連続的に取り込む。このため、ビデオ画像入力部101は、鏡面処理部101aを備えている。これ以降の処理は、鏡面処理がされたビデオ画像に関して行われる。なお、ビデオ画像の鏡面処理をビデオカメラ1で行なうようにした場合には、鏡面処理部101aは省くことができる。
【0028】
差分検出部102は、鏡面処理されたビデオ画像を1フレーム毎に比較し、前後のフレームとの間の差分を検出する。その結果、差分値が生じている領域は、前後のフレームでビデオ画像が変化している領域である。すなわち、差分を検出することでビデオ画像の変化があった領域、具体的には、プレイヤの動作が行なわれた領域を取得することができる。
【0029】
差分値を導出するために、差分検出部102は、ある鏡面動画像を他のフレームの鏡面動画像との間の「参照用画像」としてメインメモリ311に記憶する。記憶しておく鏡面動画像は、1フレーム分の鏡面動画像の全体でもよいが、検出対象となる領域の差分値を導出できれば足りるので、注目する一部の領域について記憶するようにしてもよい。
【0030】
なお、差分値は、所定の期間累積加算して、ある閾値を超えた場合に差分値が検出されたものと扱うことが望ましい。これにより、プレイヤの意図しない軽微な動作を検出対象から除き、よりプレイヤの動作の明らかな領域を把握することができるからである。
【0031】
例えば、図4(a)に示すように、ビデオ画像に写っているプレイヤが連続的に手を振る動作を行なう場合を例にする。すると、差分検出部102は、手の動きに対応する領域で差分値が生じたとして、プレイヤ動作検出領域201を認識する。この認識結果は、主制御部103に通知され、ゲームシナリオに登場するオブジェクトの移動の判断に用いられる。なお、プレイヤの動作は、特徴部分のフレーム間の差分を抽出することでパターン認識を行なうことで検出するようにしてもよい。この場合は、プレイヤの動作の方向、速さ等も把握することができる。
【0032】
主制御部103は、エンタテインメントシステム全体の制御を行う。例えば、エンタテインメント装置2がゲームプログラムを実行しているときは、主制御部103がそのプログラムにしたがってゲームの進行などを決定する。また、主制御部103がゲームの進行、特に、ゲームに登場するオブジェクトの動きを決定するときに、差分検出部102の検出結果を参照する場合がある。
【0033】
主制御部が差分検出部102の検出結果を参照する場合について説明する。まず、主制御部103は、ビデオ画像中に1または複数の検出対象領域を設定することができる。この検出対象領域は、その領域においてプレイヤの動作があったかどうかを判別するために用いることができる。すなわち、差分検出部102は、検出対象領域内において差分値を求め、プレイヤの動作を検出すれば足りる。
【0034】
例えば、図5(a)は、主制御部103が設定した検出対象領域の例を示している。本図に例では、画像中に検出対象領域202と検出対象領域203とが設定されている。このような検出対象領域が設定されている場合において、図4(a)に示したプレイヤの動作に基づいて、差分検出部102が、図4(b)に示した領域201を検出したとする。
【0035】
図5(b)は、検出対象領域202、203と、プレイヤ動作検出領域201とを重ね合わせた図である。本図の例では、右側の検出対象領域、すなわち、検出対象領域203において、プレイヤの動作が検出されている。この結果、主制御部103は、図5(c)に示すように、検出対象領域203において、プレイヤの動作が検出されたと認識し、検出対象領域202では、プレイヤの動作が検出されないと認識する。なお、検出対象領域外でプレイヤの動作が検出されても、主制御部103は影響を受けない。
【0036】
ここで、検出対象領域同士が隣接していたり、プレイヤの動作によっては、プレイヤが意図していない検出対象領域でもプレイヤの動作が検出される場合がある。このような事態を防止するために、検出対象領域におけるプレイヤ動作検出に閾値を設定しておき、フレームの差分値に対応する評価値が、その閾値を超えた検出対象領域についてプレイヤの動作が検出されたと認定するようにすることが望ましい。
【0037】
また、閾値を設けた場合にも、複数の検出対象領域でプレイヤの動作が検出される場合がある。このような場合には、差分値に対応する評価値が最も大きい、すなわち、より動作が検出された領域の広い検出対象領域をプレイヤの動作が検出された検出対象領域と扱うようにしてもよいし、それぞれの検出対象領域についてプレイヤの動作が検出されたものと扱うようにしてもよい。いずれの検出方法を用いるかは、ゲームシナリオ等に応じて主制御部103が決定することができる。
【0038】
検出対象領域は、例えば、ゲームシナリオの進行に応じて移動等させることができる。例えば、ゲームにおける移動対象のオブジェクトの移動にあわせて位置、形状等を変化させるようにすることができる。
【0039】
また、主制御部103は、ゲームシナリオにしたがって、プレイヤに提示するためのコンピュータ画像を生成する。このため、CG生成部103aを備えている。CG生成部103aは、ゲームのストーリーに沿った種々のコンピュータ画像を生成する。この際に、オブジェクトデータ記憶部104に記録されたオブジェクトデータを参照する。
【0040】
重畳画像生成部105は、画像反転部102で鏡面処理されたビデオ画像とCG生成部103aで生成されたコンピュータ画像とを重ね合わせた重畳画像を生成する。この際、プレイヤが、コンピュータ画像をより確認しやすいように、ビデオ画像を半透明処理等して重ね合わせることができる。
【0041】
表示制御部106は、重畳画像生成部105で生成された重畳画像をディスプレイ装置3に表示させる。すなわち、プレイヤは、自身の鏡面動画像とコンピュータ画像との重ね合わせ画像を見ながら、エンタテインメントシステムに対する種々の操作を行なうことができる。
【0042】
つぎに、主制御部103が主として行なうオブジェクト移動処理の第1の実施例について説明する。本実施例では、コンピュータ画像として、図6(a)に示すように移動対象のオブジェクトとして玉210を表示する。そして、この玉210を、プレイヤの動作にしたがってコース211を移動させるものとする。なお、表示上は、コース211および背景を玉210に対して変化させることで、玉210がコース211上を転がるように表示させるようにすることができる。また、コンピュータ画像には、例えば、プレイ時間(制限時間)、得点、その他ゲームシナリオに応じてプレイヤに提示する情報を含めることができる。
【0043】
図6(b)は、図6(a)に示したコンピュータ画像に、プレイヤの鏡面動画像を重畳したプレイ時の画面を示す図である。このとき、移動対象の玉210、コース211をプレイヤが認識しやすくするために鏡面動画像を半透明にしてコンピュータ画像に重ねて表示させるようにする。また、コース211は、スタート地点とゴール地点とが定められており、スタートからゴールに向かって左右に曲がる道が設定されているものとする。コース211には、上り坂、下り坂を設けるようにしてもよい。玉210の画像データ、コース211の画像データおよび地理データ等は、オブジェクトデータ記憶部104にあらかじめ格納しておくようにする。また、玉210の移動にあわせて、玉210が転がるようなコンピュータ画像を作成することが望ましい。
【0044】
本実施例において、主制御部103は、図7(a)に示すように、玉210の領域に対応させて、検出対象領域210aおよび検出対象領域210bを設定する。そして、右側の検出対象領域210bでプレイヤの動作を検出した場合には、図7(b)に示すように玉210が左前に移動するような表示を行なう。また、左右の検出対象領域210a、210bでプレイヤの動作を検出した場合には、図7(c)に示すように玉210が前に移動するような表示を行なう。また、左側の検出対象領域210aでプレイヤの動作を検出した場合には、図7(d)に示すように玉210が右前に移動するような表示を行なう。また、いずれの検出対象領域においてもプレイヤの動作を検出しない場合には、玉210が静止しているときはそのままの状態を保ち、玉210が動いているときはその速度が遅くなるような表示を行なう。
【0045】
このとき、コースその他のコンピュータ画像を変化させることで、あたかも、玉210が移動しているように表示するようにしてもよい。また、コースに上り坂、下り坂等を設けた場合には、下り坂では玉210が加速するように、上り坂では減速するように制御することで、ゲームのエンタテインメント性がさらに高まることになる。
【0046】
さらには、玉210に、ヒト、動物等のキャラクタが乗っているようなコンピュータ画像を生成することで、あたかもキャラクタが玉乗りをしているようなゲームを提供することができる。
【0047】
本実施例において、プレイヤは、玉210の付近において動作、例えば、手を振ることで、玉210の移動をコントロールすることができる。具体的には、玉210の右側で動作を行なうと、玉210は左方向に移動し、玉210の左側で動作を行なうと、玉210は右方向に移動し、玉210の全面で動作を行なうと、玉210は直進する。これにより、プレイヤの動作でコースのスタート地点からゴール地点まで玉210を移動させるゲームが提供される。この際、制限時間を設けて、制限時間内にゴール地点まで到達するような課題をプレイヤに与えるようにしてもよい。
【0048】
図9は、第1の実施例におけるエンタテインメントシステムの処理を説明するフロー図である。エンタテインメントシステムは、プレイヤの指示に基づいてプレイを開始すると、ゲームの終了まで、所定の間隔、例えば1フレーム毎に、以下の処理を繰り返す。
【0049】
まず、エンタテインメントシステムは、検出対象領域210a、210bでプレイヤの動作が検出されたかどうかを判定する(S101)。
【0050】
その検出結果に応じて、あらかじめ定めた規則にしたがって玉210の移動値を算出する(S102)。あらかじめ定めた規則は、上述のように、左右の検出対象領域210a、210bの検出の有無で玉210の進行方向を定めるものである。また、移動量は、あらかじめ定めた所定の値とすることができる。ただし、玉210の移動状況に応じて、移動量を変化させるようにしてもよい。例えば、プレイヤの動作の検出が繰り返されると、次第に玉210が加速していったり、プレイヤの動作が検出されないと、玉210が減速していくようにすることもできる。さらには、コースの状況(上り坂、下り坂、道の種類)が玉210の移動に影響を与えるようにすることもできる。
【0051】
つぎに、算出された玉210の移動値に基づいて、玉210のコース上の位置を算出する(S103)。これは、前の時点の玉210の位置と算出された移動値とから求めることができる。
【0052】
そして、玉210のコース上の位置に基づく表示処理を行ない、コンピュータ画面を更新する(S104)。具体的には、算出された位置に対応するコースの風景等をコンピュータ画像で生成する。
【0053】
以上の処理を繰り返すことにより、プレイヤの動作に基づいて玉210が移動していく様子が表現される。
【0054】
このように、本実施例では、1つのオブジェクト(玉210)について、複数の検出対象領域(210a、210b)を設け、それぞれの検出対象領域の検出結果に基づいてオブジェクトを移動させることによりゲームシナリオが進行していくものである。
【0055】
なお、玉210の位置を算出した結果、コースから外れてしまった場合(S105:Y)には、コースアウト処理(S106)を行ない、ゲームオーバーとする。コースアウト処理では、例えば、玉が転落するコンピュータ画像を表示したり、ゲームオーバであることを示す表示を行なうようにすることができる。
【0056】
また、玉210の位置を算出した結果、ゴールに到着した場合(S107:Y)には、ゴール処理(S108)を行ない、ゲームクリヤとする。ゴール処理(S108)では、例えば、プレイヤに対して加点したり、ゲームクリアしたことを示す表示を行なうようにすることができる。
【0057】
上記の例では、玉210に2箇所の検出対象領域を設けていたが、図8(a)に示すように3箇所設けるようにしてもよい。本図の例では、玉210の左側に検出対象領域210cが設けられ、中央部分に検出対象領域210dが設けられ、右側に検出対象領域210eが設けられている。
【0058】
検出対処領域を3箇所設けた場合の、各検出対処領域における検出結果と玉210の動きの例について説明する。
【0059】
本例では、複数個の検出対象領域でプレイヤの動作を検出でき、さらに、検出された差分値の大きさに対応する評価値を算出するものとする。すなわち、プレイヤの動きが検出されたそれぞれの検出対象領域について、プレイヤの動きの大きさに対応する評価値が取得される。
【0060】
ここでは、取得された評価値を、さらに所定の基準により「大」「小」に区別するものとする。これにより、それぞれの検出対象領域について、プレイヤの動作の「大」「小」が検出されることになる。
【0061】
このような場合においては、検出結果に応じて様々な制御を行なうことができる。例えば、中央の検出対象領域210dのみでプレイヤの動作が検出された場合には、玉210が直進するようにする。
【0062】
また、右側の検出対象領域210eのみでプレイヤの大きな動作が検出された場合には、図8(b)に示すように、大きく左方向に速く進むようにする。このとき、検出されたプレイヤの動作が小さい場合には図8(c)に示すように大きく左方向にゆっくり進むようにする。これにより、プレイヤは動作の大きさを変化させることで玉210の早さを制御することができるようになる。
【0063】
また、右側の検出対象領域210eでプレイヤの大きな動作が検出され、左側の検出対象領域210cで小さな動作が検出された場合には、図8(d)に示すように少し左方向に進むようにする。これにより、プレイヤは左右の動作の大きさを変化させることで、玉210の進行方向を細かく制御することができるようになる。
【0064】
この状態で、例えば、プレイヤが左側の検出対象領域210cに対応する動作を大きくすると、右側の検出対象領域210eおよび左側の検出対象領域210cでプレイヤの大きな動作が検出されることになる。この場合は、例えば、図8(e)に示すように玉220を速く直進させるようにする。
【0065】
このように、玉220により多くの検出対象領域を設けたり、プレイヤの動作の大きさに基づく評価値を算出することで、玉220の移動について、より細かな制御を行なうことができるようになる。
【0066】
つぎに、主制御部103が主として行なうオブジェクト移動処理の第2の実施例について説明する。本実施例では、コンピュータ画像として、図10(a)に示すように移動対象のオブジェクトとしてキャラクタ220を表示する。キャラクタ220は、複数存在することができるものとする。そして、これらのキャラクタ220を、プレイヤの動作にしたがって移動させるものとする。コンピュータ画像内にはゴールが設けられており、ゴールには開閉式の扉が設けられている。この扉は適宜開いたり閉じたりするように制御される。プレイヤは開いている扉を通ってゴールに到達するように、キャラクタ220を操作するものとする。また、コンピュータ画像には、例えば、制限時間、得点、その他ゲームシナリオに応じてプレイヤに提示する情報を含めることができる。
【0067】
図10(b)は、図10(a)に示したコンピュータ画像に、プレイヤの鏡面動画像を重畳したプレイ時の画面を示す図である。このとき、移動対象のキャラクタ220、扉221、ゴール等をプレイヤが認識しやすくするために鏡面動画像を半透明にしてコンピュータ画像に重ねて表示させるようにする。キャラクタ220の画像データ等は、オブジェクトデータ記憶部104にあらかじめ格納しておくようにする。
【0068】
本実施例において、主制御部103は、キャラクタ220の存在する領域に対応させて、4箇所の検出対象領域220a、220b、220c、220dを設定する。すなわち、キャラクタ220を中心に、左上の検出対象領域220a、右上の検出領域220b、右下の検出対象領域220c、左下の検出対象領域220dが設定されている。
【0069】
そして、いずれかの検出対象領域でプレイヤの動作を検出した場合には、検出対象領域から遠ざかるようにキャラクタ220を移動させる。すなわち、左上の検出対象領域220aでプレイヤの動作を検出した場合には、図11(b)に示すように、キャラクタ220が右下に移動するような表示を行なう。同様に右上の検出対象領域220bでプレイヤの動作を検出した場合には、キャラクタ220が左下に移動するような表示を行ない、右下の検出対象領域220cでプレイヤの動作を検出した場合には、キャラクタ220が左上に移動するような表示を行ない、左下の検出対象領域220dでプレイヤの動作を検出した場合には、キャラクタ220が右上に移動するような表示を行なう。このため、本実施例では、複数の検出対象領域でプレイヤの動作が検出された場合には、差分値に対応する評価値が最も大きい、すなわち、より動作が検出された領域の広い検出対象領域をプレイヤの動作が検出された検出対象領域と扱うようにする。
【0070】
本実施例において、プレイヤは、キャラクタ220の付近において動作、例えば、手を振ることで、キャラクタ220の移動をコントロールすることができる。キャラクタ220は、複数存在することができるため、プレイヤは移動対象のキャラクタ220を指定してから移動のための操作を行なうようにする。
【0071】
移動対象のキャラクタ220の指定は、例えば、以下のように行なうことができる。すなわち、どのキャラクタ220も移動対象となっていない状態で、あるキャラクタ220のいずれかの検出対象領域においてプレイヤの動作が検出された場合に、そのキャラクタ220を移動対象として扱うものとする。移動対象となったキャラクタ220は、移動対象であることを明確にするため、例えば、色を変化させたり、マークを付すことにより、他のキャラクタ220と区別することが望ましい。
【0072】
図13は、第2の実施例におけるエンタテインメントシステムの処理を説明するフロー図である。エンタテインメントシステムは、プレイヤの指示に基づいてプレイを開始すると、ゲームの終了まで、所定の間隔、例えば1フレーム毎に、以下の処理を繰り返す。
【0073】
まず、エンタテインメントシステムは、いずれかのキャラクタ220が操作対象になっているかどうかを判断する(S201)。
【0074】
その結果、いずれのキャラクタ220も操作対象となっていない場合(S201:N)には、プレイヤの指示に基づいて、操作対象のキャラクタ220を設定する(S202)。すなわち、いずれかの検出対象領域においてプレイヤの動作を検出したキャラクタ220を操作対象とする。なお、複数のキャラクタ220について操作対象と設定可能としてもよい。
【0075】
操作対象のキャラクタ220が設定されている場合には(S201:Y、S202)、操作対象のキャラクタ220について、いずれかの検出対象領域でプレイヤの動作が検出されたかを判定する(S203)。
【0076】
その検出結果に応じて、あらかじめ定めた規則にしたがってキャラクタ220の移動値を算出して(S204)、キャラクタ220の移動先の位置を算出する(S205)。あらかじめ定めた規則は、上述のように、左上、右上、右下、左下の検出対象領域220a〜220dの検出結果に応じてキャラクタ220の進行方向を定めるものである。また、移動量は、あらかじめ定めた所定の値とすることができる。
【0077】
ただし、検出結果に基づいて、移動の目的地となる位置を決定して、順次その位置に近づくようにキャラクタ220を移動させるようにしてもよい。この場合は、キャラクタ220が目的地に到達するまで、そのキャラクタ220についてはフレーム単位で検出対象領域の判定を行なわなくてもよい。
【0078】
そして、キャラクタ220が移動していく表示処理を行ない、コンピュータ画面を更新する(S206)。
【0079】
以上の処理を制限時間が経過するまで(S209:Y)繰り返すことにより、プレイヤの動作に基づいてキャラクタ220が移動していく様子が表現される。
【0080】
このように、本実施例においても、1つのオブジェクト(キャラクタ220)について、複数の検出対象領域(220a、220b、220c、220d)を設け、それぞれの検出対象領域の検出結果に基づいてオブジェクトを移動させることによりゲームシナリオが進行していくことになる。
【0081】
なお、キャラクタ220の位置を算出した結果、ゴールに到達した場合(S207:Y)には、そのキャラクタ220についてゴール処理(S208)を行なう。ゴール処理では、例えば、プレイヤに対して加点を行なう。また、そのキャラクタ220を操作対象から除外する。
【0082】
上記の例では、キャラクタ220を中心とした円の領域に4箇所の検出対象領域を設けていたが、図12(a)に示すようにキャラクタ220の部分を除いたドーナツ状の領域に検出対象領域を設けるようにしてもよい。ここでは、キャラクタ220を中心に、左上の検出対象領域220e、右上の検出領域220f、右下の検出対象領域220g、左下の検出対象領域220gが設定されているものとする。
【0083】
そして、いずれかの検出対象領域でプレイヤの動作を検出した場合には、検出対象領域の方向に進むようにキャラクタ220を移動させる。すなわち、左上の検出対象領域220aでプレイヤの動作を検出した場合には、図12(b)に示すように、キャラクタ220が左上に移動するような表示を行なう。同様に右上の検出対象領域220bでプレイヤの動作を検出した場合には、キャラクタ220が右上に移動するような表示を行ない、右下の検出対象領域220cでプレイヤの動作を検出した場合には、キャラクタ220が右下に移動するような表示を行ない、左下の検出対象領域220dでプレイヤの動作を検出した場合には、キャラクタ220が左下に移動するような表示を行なう。
【0084】
本図に示すような検出対象領域を設定し、キャラクタ220の移動方向を定めると、例えば、右下の検出対象領域220gでプレイヤが動作を行なうと、キャラクタ220は右下方向に移動する。さらに、プレイヤが同じ位置で動作を続けると、やがてキャラクタ220がプレイヤの動作位置に移動してくる。すると、キャラクタ220の位置とプレイヤの動作位置とが重なり、プレイヤの動作が検出対象領域から外れることになる。この結果、プレイヤの動作が検出されず、キャラクタ220の移動が停止する。つまり、プレイヤは、移動目的の箇所で動作を行なうことで、キャラクタ220の移動位置を制御することができるようになる。
【0085】
なお、実施例1および実施例2において、プレイヤの動作の検出に特徴部分の差分を検出するようにして、いわゆるパターン認識を用いた場合には、認識したプレイヤの動作の方向、速さ等を考慮して操作対象である玉210、キャラクタ220を移動させるようにしてもよい。
【0086】
以上のように、本発明によれば、コンピュータ画像で表示された1つのオブジェクトについて複数の検出対象領域を設け、重畳表示されたプレイヤの動作に対する各検出対象領域の検出結果に応じてオブジェクトを移動させることによりゲームシナリオを進行させることで、カメラで撮影したプレイヤの画像を入力インタフェースとして用いる情報処理システムにおいて、よりゲーム性を高めることができる。
【図面の簡単な説明】
【0087】
【図1】本発明の一実施形態に係るエンタテインメントシステムの全体構成図である。
【図2】エンタテインメント装置の構成図である。
【図3】エンタテインメント装置の機能構成図である。
【図4】プレイヤの鏡面画像および検出された領域を示す図である。
【図5】検出対象領域を説明する図である。
【図6】第1の実施例のプレイ画面を示す図である。
【図7】第1の実施例の検出対象領域を示す図である。
【図8】第1の実施例の検出対象領域の別例を示す図である。
【図9】第1の実施例の制御を示すフロー図である。
【図10】第2の実施例のプレイ画面を示す図である。
【図11】第2の実施例の検出対象領域を示す図である。
【図12】第2の実施例の検出対象領域の別例を示す図である。
【図13】第2の実施例の制御を示すフロー図である。
【符号の説明】
【0088】
1…ビデオカメラ、2…エンタテインメント装置、3…ディスプレイ装置、101…ビデオ画像入力部、102…差分検出部、103…主制御部、104…オブジェクトデータ記憶部、105…重畳画像生成部、106…表示制御部

【特許請求の範囲】
【請求項1】
プレイヤの鏡面動画像から動きのある領域を検出する検出手段と、
移動対象のオブジェクトを含むコンピュータ画像を生成する制御手段と、
前記鏡面動画像と、前記コンピュータ画像とを重ねた重畳動画像を表示装置に表示させる表示制御手段とを備え、
前記制御手段は、前記移動対象のオブジェクトについて、複数の検出対象領域を設定し、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの移動態様を制御することを特徴とする情報処理装置。
【請求項2】
請求項1に記載の情報処理装置において、
撮影装置でプレイヤを撮影したプレイヤ動画像の入力を受け付けるプレイヤ動画像受付手段と、
前記プレイヤ動画像を鏡面処理して鏡面動画像を生成する鏡面動画像処理手段とをさらに備えることを特徴とする情報処理装置。
【請求項3】
請求項1に記載の情報処理装置において、
前記表示制御手段は、前記鏡面動画像を半透明処理して前記コンピュータ画像と重ね合わせることを特徴とする情報処理装置。
【請求項4】
請求項1に記載の情報処理装置において、
前記制御手段は、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの進行方向を決定することを特徴とする情報処理装置。
【請求項5】
請求項4に記載の情報処理装置において、
前記制御手段は、プレイヤに対する前記オブジェクトの進行方向のガイダンスとなる表示を前記コンピュータ画像に含めることを特徴とする情報処理装置。
【請求項6】
請求項4に記載の情報処理装置であって、
前記制御手段は、前記複数の検出対象領域のうちの2箇所の検出対象領域について、
一方の検出対象領域で動きを検出した場合には、他方の検出対象領域側に進行するように、双方の検出対象領域で動きを検出した場合には、直進するように進行方向を決定することを特徴とする情報処理装置。
【請求項7】
請求項1に記載の情報処理装置において、
前記検出手段は、前記鏡面動画像のフレーム間の差分に基づいて、動きのある領域を検出することを特徴とする情報処理装置。
【請求項8】
プレイヤの鏡面動画像から動きのある領域を検出する検出手段と、
移動対象のオブジェクトを含むコンピュータ画像を生成する制御手段と、
前記鏡面動画像と、前記コンピュータ画像とを重ねた重畳動画像を表示装置に表示させる表示制御手段とを情報処理装置に機能させるプログラムであって、
前記制御手段は、前記移動対象のオブジェクトについて、複数の検出対象領域を設定し、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの移動態様を制御することを特徴とするプログラム。
【請求項9】
請求項8に記載のプログラムにおいて、
撮影装置でプレイヤを撮影したプレイヤ動画像の入力を受け付けるプレイヤ動画像受付手段と、
前記プレイヤ動画像を鏡面処理して鏡面動画像を生成する鏡面動画像処理手段とをさらに情報処理装置に機能させることを特徴とするプログラム。
【請求項10】
請求項8に記載のプログラムにおいて、
前記表示制御手段は、前記鏡面動画像を半透明処理して前記コンピュータ画像と重ね合わせることを特徴とするプログラム。
【請求項11】
請求項8に記載のプログラムにおいて、
前記制御手段は、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの進行方向を決定することを特徴とするプログラム。
【請求項12】
請求項11に記載の情報処理装置において、
前記制御手段は、プレイヤに対する前記オブジェクトの進行方向のガイダンスとなる表示を前記コンピュータ画像に含めることを特徴とするプログラム。
【請求項13】
請求項11に記載のプログラムであって、
前記制御手段は、前記複数の検出対象領域のうちの2箇所の検出対象領域について、
一方の検出対象領域で動きを検出した場合には、他方の検出対象領域側に進行するように、双方の検出対象領域で動きを検出した場合には、直進するように進行方向を決定することを特徴とするプログラム。
【請求項14】
請求項8に記載のプログラムにおいて、
前記検出手段は、前記鏡面動画像のフレーム間の差分に基づいて、動きのある領域を検出することを特徴とするプログラム。
【請求項15】
請求項8〜14のいずれか一項に記載のプログラムを記録した情報処理装置読み取り可能な記録媒体。
【請求項16】
情報処理装置におけるオブジェクト制御方法であって、
プレイヤの鏡面動画像から動きのある領域を検出する検出処理と、
移動対象のオブジェクトを含むコンピュータ画像を生成する制御処理と、
前記鏡面動画像と、前記コンピュータ画像とを重ねた重畳動画像を表示装置に表示させる表示制御処理とを含み、
前記制御処理は、前記移動対象のオブジェクトについて、複数の検出対象領域を設定し、それぞれの検出対象領域に対応する領域における鏡面動画像の動きの検出結果に応じて、前記オブジェクトの移動態様を制御することを特徴とするオブジェクト制御方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate


【公開番号】特開2006−14875(P2006−14875A)
【公開日】平成18年1月19日(2006.1.19)
【国際特許分類】
【出願番号】特願2004−194815(P2004−194815)
【出願日】平成16年6月30日(2004.6.30)
【出願人】(395015319)株式会社ソニー・コンピュータエンタテインメント (871)
【Fターム(参考)】