JP5148660B2 - プログラム、情報記憶媒体及び画像生成システム - Google Patents

プログラム、情報記憶媒体及び画像生成システム Download PDF

Info

Publication number
JP5148660B2
JP5148660B2 JP2010134585A JP2010134585A JP5148660B2 JP 5148660 B2 JP5148660 B2 JP 5148660B2 JP 2010134585 A JP2010134585 A JP 2010134585A JP 2010134585 A JP2010134585 A JP 2010134585A JP 5148660 B2 JP5148660 B2 JP 5148660B2
Authority
JP
Japan
Prior art keywords
information
movement
operator
image
hand
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2010134585A
Other languages
English (en)
Other versions
JP2011258161A (ja
Inventor
泰大 西本
千紘 小笹
忠嗣 榊原
大翼 関岡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Kabushiki Kaisha Bandai Namco Entertainment (also trading as Bandai Namco Entertainment Inc.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Kabushiki Kaisha Bandai Namco Entertainment (also trading as Bandai Namco Entertainment Inc.)
Namco Ltd
Namco Bandai Games Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kabushiki Kaisha Bandai Namco Entertainment (also trading as Bandai Namco Entertainment Inc.), Namco Ltd, Namco Bandai Games Inc filed Critical Kabushiki Kaisha Bandai Namco Entertainment (also trading as Bandai Namco Entertainment Inc.)
Priority to JP2010134585A priority Critical patent/JP5148660B2/ja
Priority to EP11169649.8A priority patent/EP2394718A3/en
Priority to US13/158,000 priority patent/US8854304B2/en
Publication of JP2011258161A publication Critical patent/JP2011258161A/ja
Application granted granted Critical
Publication of JP5148660B2 publication Critical patent/JP5148660B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/40Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment
    • A63F13/42Processing input control signals of video game devices, e.g. signals generated by the player or derived from the environment by mapping the input signals into game commands, e.g. mapping the displacement of a stylus on a touch screen to the steering angle of a virtual vehicle
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/573Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using trajectories of game objects, e.g. of a golf ball according to the point of impact
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • A63F2300/1093Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera using visible light
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/308Details of the user interface
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/6045Methods for processing data by generating or executing the game program for mapping control signals received from the input arrangement into game commands
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6607Methods for processing data by generating or executing the game program for rendering three dimensional images for animating game characters, e.g. skeleton kinematics
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6653Methods for processing data by generating or executing the game program for rendering three dimensional images for altering the visibility of an object, e.g. preventing the occlusion of an object, partially hiding an object
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • A63F2300/6692Methods for processing data by generating or executing the game program for rendering three dimensional images using special effects, generally involving post-processing, e.g. blooming

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)
  • Closed-Circuit Television Systems (AREA)

Description

本発明は、プログラム、情報記憶媒体及び画像生成システム等に関する。
近年、従来の操作ボタンや方向キーを備えたコントローラに代わって、モーションセンサを内蔵するコントローラを用いて操作が可能なゲーム装置が人気を博している。このような操作インターフェースを備えるゲーム装置によれば、操作者(プレーヤ、ユーザ)の直感的な操作入力が可能になり、ゲーム操作の簡素化等を図れる。このような直感的なインターフェースを可能にするゲーム装置の従来技術としては例えば特許文献1に開示される技術がある。
一方、このような直感的なインターフェースを実現する他の手法として、画像センサにより操作者を撮像して、操作者の動きによる操作入力を実現する手法が考えられる。
しかしながら、例えば操作者の手等の動きを画像センサにより抽出して、画面上のオブジェクトを移動させた場合に、当該オブジェクトが、操作者の意図しない動きをしてしまう可能性があることが判明した。
特開2008−136695号公報
本発明の幾つかの態様によれば、操作者の動き情報に基づき移動するオブジェクトの適正な制御を実現できるプログラム、情報記憶媒体、画像生成システム等を提供できる。
本発明の一態様は、画像センサからの画像情報を取得する画像情報取得部と、前記画像センサからの前記画像情報に基づいて、操作者の動き情報を取得する動き情報取得部と、前記操作者の前記動き情報に基づいてオブジェクトを移動エリアにおいて移動させる制御を行うオブジェクト制御部と、表示部に表示される画像を生成する画像生成部とを含み、前記オブジェクト制御部は、前記移動エリアに設定された移動制限境界を前記オブジェクトが越えたと前記動き情報に基づき判断された場合にも、前記移動制限境界を超えて前記オブジェクトが移動することを制限する制御を行う画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
本発明の一態様では、画像センサから画像情報が取得され、画像情報から操作者の動き情報が取得される。そして動き情報に応じて、オブジェクトが移動エリアにおいて移動するようになる。この際に、移動制限境界をオブジェクトが越えたと動き情報に基づき判断されたとしても、移動制限境界を超えてオブジェクトが移動するのが制限される。このように、移動制限境界を超えて移動することを制限することで、操作者の動き情報に基づき移動するオブジェクトの適正な制御の実現が可能になる。
また本発明の一態様では、前記オブジェクト制御部は、前記オブジェクトの接触対象となる複数の接触対象オブジェクトに対応して設定された前記移動制限境界を超えて、前記オブジェクトが移動することを制限する制御を行ってもよい。
このようにすれば、複数の接触対象オブジェクトに対応して設定された移動制限境界を超えないように、オブジェクトの移動が制限されるため、操作者の動き情報に基づきオブジェクトを移動制御した際に、オブジェクトと接触対象オブジェクトとの接触イベントの発生を容易化できる。
また本発明の一態様では、前記複数の接触対象オブジェクトは、前記移動制限境界の前記オブジェクト側のエリアに配置設定され、前記オブジェクト制御部は、前記複数の接触対象オブジェクトに外接するように設定された前記移動制限境界を超えて、前記オブジェクトが移動することを制限する制御を行ってもよい。
このようにすれば、複数の接触対象オブジェクトに外接するように設定された移動境界を超えないようにオブジェクトの移動が制限されるため、例えばオブジェクトと複数の接触対象オブジェクトとの連続した接触イベントの発生等を容易化できる。
また本発明の一態様では、前記移動エリアとして、第1の移動エリアと第2の移動エリアが設定され、前記オブジェクト制御部は、前記第1の移動エリアにおいて第1のオブジェクトが移動し、前記第2の移動エリアにおいて第2のオブジェクトが移動する制御を行うと共に、前記第1の移動エリアと前記第2の移動エリアの間に設定された前記移動制限境界を超えて、前記第1、第2のオブジェクトが移動することを制限する制御を行ってもよい。
このようにすれば、第1のオブジェクトは第1の移動エリア内で移動し、第2のオブジェクトは第2の移動エリア内で移動するように制御できる。そして第1のオブジェクトが移動制限境界を越えて第2の移動エリアに侵入したり、第2のオブジェクトが移動制限境界を越えて第1の移動エリアに侵入することを制限できるようになり、第1、第2の各オブジェクトを、第1、第2の各移動エリア内に限定して移動させることが可能になる。
また本発明の一態様では、前記オブジェクト制御部は、前記操作者の第1の部位の前記動き情報に基づいて、前記第1の移動エリアでの前記第1のオブジェクトの移動を制御し、前記操作者の第2の部位の前記動き情報に基づいて、前記第2の移動エリアでの前記第2のオブジェクトの移動を制御してもよい。
このようにすれば、操作者の第1の部位の動きに連動して、第1の移動エリア内で第1のオブジェクトが移動し、操作者の第2の部位の動きに連動して、第2の移動エリア内で第2のオブジェクトが移動するようになる。従って、操作者は、第1、第2の各部位を別々に使って、それぞれに対応するオブジェクトを移動させることができ、これまでにないタイプの操作インターフェース環境を実現できる。
また本発明の一態様では、前記オブジェクト制御部は、前記表示部の画面の端辺に対応して設けられた画面端辺用の移動制限境界を超えて、前記オブジェクトが移動することを制限する制御を行ってもよい。
このようにすれば、オブジェクトが画面端辺用の移動制限境界を超えて移動してしまい、画面上から消失してしまうなどの事態を抑止できる。
また本発明の一態様では、前記画面端辺用の移動制限境界は前記画面の端辺の外側に設けられていてもよい。
このようにすれば、より広い移動範囲でオブジェクトを移動させることが可能になり、開放感のある操作インターフェース環境を実現できるようになる。
また本発明の一態様では、前記画面端辺用の移動制限境界と前記画面の端辺との距離は、前記オブジェクトの幅よりも短くなるようにしてもよい。
このようにすれば、オブジェクトが画面の端辺付近に移動した場合にも、オブジェクトの少なくとも一部が画面に表示されるようになるため、操作者が、オブジェクトを見失ってしまうなどの事態の発生を抑止できる。
また本発明の一態様では、前記動き情報取得部は、前記動き情報として、前記操作者の動作を特定するスケルトン情報を取得し、前記オブジェクト制御部は、前記スケルトン情報に基づいて前記移動エリアで前記オブジェクトを移動させる制御を行ってもよい。
このようにすれば、操作者の部位等の動きに応じたオブジェクトの移動制御を実現できるようになる。
また本発明の一態様では、前記スケルトン情報で表されるスケルトンの骨の位置情報についての補正処理を行う補正処理部を含み(補正処理部としてコンピュータを機能させ)、前記オブジェクト制御部は、前記補正処理の結果に基づいて前記オブジェクトの制御を行ってもよい。
このようにすれば、操作者のスケルトン情報を利用して、多様な画像を生成できるようになり、例えば、体格等が異なる多様な操作者に対応等することも可能になる。
また本発明の一態様では、前記補正処理部は、前記スケルトンの骨の位置情報の補正処理を行って、補正位置情報を求め、前記オブジェクト制御部は、前記補正位置情報に基づいて、前記オブジェクトの制御を行い、前記画像生成部は、前記補正位置情報に対応する画面上の表示位置に前記オブジェクトが表示される画像を生成してもよい。
このようにすれば、スケルトンの骨の位置情報の補正処理を行って、求められた補正位置情報に対応する表示位置にオブジェクトを表示できるようになる。
また本発明の一態様では、前記補正処理部は、第1の操作者のスケルトンの状態が第1の状態である時の前記オブジェクトの表示位置と、第2の操作者のスケルトンの状態が前記第1の状態である時の前記オブジェクトの表示位置とが同じ位置になるように前記補正処理を行ってもよい。
このようにすれば、操作者が第1の操作者であるか第2の操作者であるかに依存しないオブジェクト制御を実現できる。
また本発明の一態様では、前記補正処理部は、前記操作者の体格情報を用いて前記補正処理を行ってもよい。
このようにすれば、操作者の体格情報を補正処理に反映させることが可能になり、操作者の体格等の違いを吸収した補正処理を実現できる。
また本発明の一態様では、前記スケルトン情報の信頼度を表す信頼度情報を取得する信頼度情報取得部を含み(信頼度情報取得部としてコンピュータを機能させ)、前記画像生成部は、前記表示部に表示される画像として、取得された前記信頼度情報に応じた画像を生成してもよい。
このようにすれば、表示部に表示される画像にスケルトン情報の信頼度を反映することが可能になり、これまでにない画像生成システムの提供が可能になる。
また本発明の一態様では、前記画像生成部は、前記信頼度情報に基づいて、前記表示部に表示される画像の表示態様を変化させてもよい。
このようにすれば、信頼度情報により表される信頼度が増減すると、表示部に表示される画像の表示態様が変化するため、信頼度の増減を、画像の表示態様の変化を通じて操作者に伝えることが可能になる。
本実施形態の画像生成システムの構成例。 図2(A)、図2(B)は画像センサからの撮像情報を用いた本実施形態の操作インターフェースの説明図。 デプス情報等に基づいて操作者のスケルトン情報を求める手法の説明図。 図4(A)、図4(B)は操作者の動き情報に応じてオブジェクトを移動させる手法の説明図。 図5(A)、図5(B)は操作者の動き情報に応じてオブジェクトを移動させる手法の説明図。 図6(A)、図6(B)は比較例の問題点について説明する図。 図7(A)、図7(B)は本実施形態のオブジェクト制御手法の説明図。 図8(A)、図8(B)は比較例との比較による本実施形態のオブジェクト制御手法の説明図。 移動制限境界を越えないようにオブジェクトを制御する手法の説明図。 図10(A)、図10(B)は第1、第2の移動エリアで移動するオブジェクトの制御手法の説明図。 図11(A)、図11(B)は画面端辺用の移動制限境界の設定手法の説明図。 図12(A)、図12(B)は骨の位置情報の補正処理の説明図。 図13(A)、図13(B)は骨の位置情報の補正処理の説明図。 図14(A)、図14(B)は補正位置情報により描画位置を求める手法の説明図。 図15(A)、図15(B)は操作者の体格情報に基づく補正処理の説明図。 図16(A)、図16(B)は第1、第2の方向のなす角度を用いた補正処理の説明図。 図17(A)、図17(B)はスケルトン情報、信頼度情報のデータ構造の例。 図18(A)、図18(B)は信頼度、存在確率範囲の説明図。 図19(A)、図19(B)は信頼度の説明図。 図20(A)、図20(B)は操作者の操作動作を示す図。 図21(A)、図21(B)は信頼度情報に基づき画像の表示態様を変化させる手法の説明図。 図22(A)、図22(B)は映像機器への本実施形態の手法の適用例。 図23(A)、図23(B)は映像機器への本実施形態の手法の適用例。 図24(A)、図24(B)は操作者の操作動作を示す図。 本実施形態の処理を説明するフローチャート。 本実施形態の処理を説明するフローチャート。
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
1.構成
図1に本実施形態の画像生成システム(ゲーム装置、映像機器等)のブロック図の例を示す。なお、本実施形態の画像生成システムの構成は図1に限定されず、その構成要素(各部)の一部を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
操作部160は、操作者が操作情報を入力するためのものである。この操作部160は、例えばカラー画像センサやデプスセンサなどにより実現される画像センサを含む。なお操作部160の機能を、画像センサだけで実現してもよいし、画像センサ以外の操作デバイス(方向指示キー、操作ボタン、アナログスティック、レバー、角速度センサ・加速度センサ等のセンサ、マイク、或いはタッチパネル型ディスプレイ)を用いて実現してもよい。
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(DRAM、VRAM)などにより実現できる。そしてゲームプログラムや、ゲームプログラムの実行に必要なゲームデータは、この記憶部170に保持される。
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(DVD)、HDD(ハードディスクドライブ)、或いはメモリ(ROM等)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体180には、本実施形態の各部としてコンピュータ(操作部、処理部、記憶部、出力部を備える装置)を機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、LCD、有機ELディスプレイ、CRT、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
補助記憶装置194(補助メモリ、2次メモリ)は、記憶部170の容量を補うために使用される記憶装置であり、SDメモリーカード、マルチメディアカードなどのメモリーカードなどにより実現できる。
通信部196は、有線や無線のネットワークを介して外部(例えば他の画像生成システム、サーバ、ホスト装置)との間で通信を行うものであり、その機能は、通信用ASIC又は通信用プロセッサなどのハードウェアや、通信用ファームウェアにより実現できる。
なお本実施形態の各部としてコンピュータを機能させるためのプログラム(データ)は、サーバ(ホスト装置)が有する情報記憶媒体からネットワーク及び通信部196を介して情報記憶媒体180(あるいは記憶部170、補助記憶装置194)に配信してもよい。このようなサーバ(ホスト装置)による情報記憶媒体の使用も本発明の範囲内に含めることができる。
処理部100(プロセッサ)は、操作部160からの操作情報やプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などを行う。処理部100は記憶部170をワーク領域として各種処理を行う。この処理部100の機能は、各種プロセッサ(CPU、GPU等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
処理部100は、画像情報取得部102、動き情報取得部104、信頼度情報取得部106、補正処理部108、ゲーム演算部110、オブジェクト空間設定部112、オブジェクト制御部114、仮想カメラ制御部118、画像生成部120、音生成部130を含む。なおこれらの一部の構成要素を省略したり、他の構成要素を追加するなどの種々の変形実施が可能である。
画像情報取得部102は、画像センサからの画像情報を取得する。例えば画像センサにより撮像された画像の情報は、記憶部170の画像情報記憶部171に保存される。具体的には、画像センサのカラー画像センサにより撮像されたカラー画像の情報はカラー画像情報記憶部172に保存され、画像センサのデプスセンサにより撮像されたデプス画像の情報はデプス情報記憶部173に保存される。画像情報取得部102は、これらの画像情報を画像情報記憶部171から読み出すことで画像情報を取得する。
動き情報取得部104は操作者の動き情報を取得する。動き情報取得部104が含むスケルトン情報取得部105はスケルトン情報を取得し、信頼度情報取得部106は、スケルトン情報の信頼度情報を取得する。スケルトン情報、信頼度情報はスケルトン情報記憶部174、信頼度情報記憶部175に記憶される。補正処理部108は種々の補正処理を行う。動き情報取得部104、スケルトン情報取得部105、信頼度情報取得部106、補正処理部108の詳細については後述する。
ゲーム演算部110はゲーム演算処理を行う。ここでゲーム演算処理としては、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、ゲーム結果を演算する処理、或いはゲーム終了条件が満たされた場合にゲームを終了する処理などがある。
オブジェクト空間設定部112は、複数のオブジェクトが配置されるオブジェクト空間の設定処理を行う。例えば、キャラクタ(人、動物、ロボット、車、船舶、飛行機等)、マップ(地形)、建物、コース(道路)、樹木、壁などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェイスなどのプリミティブ面で構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行う。即ちオブジェクトが3次元オブジェクトである場合には、ワールド座標系でのオブジェクトの位置や回転角度(向き、方向と同義)を決定し、その位置(X、Y、Z)にその回転角度(X、Y、Z軸回りでの回転角度)でオブジェクトを配置する。具体的には、記憶部170のオブジェクトデータ記憶部176には、オブジェクト(パーツオブジェクト)の位置、回転角度、移動速度、移動方向等のデータであるオブジェクトデータがオブジェクト番号に対応づけて記憶される。オブジェクト空間設定部112は、例えば各フレーム毎にこのオブジェクトデータを更新する処理などを行う。
オブジェクト制御部114は、オブジェクトの制御を行う。例えば、操作部160により操作者(プレーヤ、ユーザ)が入力した操作情報や、プログラム(移動・動作アルゴリズム)や、各種データなどに基づいて、オブジェクトの移動及び動作の少なくとも一方を制御する。具体的には、オブジェクトの移動情報(位置、回転角度、速度、或いは加速度)を、1フレーム(例えば1/60秒)毎に順次求めるシミュレーション処理を行う。或いはオブジェクトのモーション処理やアニメーション処理などの動作制御を行う。なおフレームは、オブジェクトの移動・動作処理や画像生成処理を行う時間の単位である。
オブジェクト制御部114により制御されるオブジェクトは、3次元オブジェクト空間に配置設定される3次元オブジェクトであってもよいし、2次元スクリーン(表示画面)に描画される2次元オブジェクトであってもよい。オブジェクトが、3次元モデルにより表されるキャラクタのオブジェクトである場合には、オブジェクト制御部114は、キャラクタにモーションを行わせるモーション処理(モーション再生、モーション生成)を行う。このモーション処理は、キャラクタのモーションを、モーションデータ記憶部177に記憶されているモーションデータ等に基づいて再生することなどで実現できる。ここで、モーションデータ記憶部177には、キャラクタ(モデルオブジェクト)のスケルトンを構成する各骨(キャラクタを構成する各パーツオブジェクト)の位置又は回転角度(親の骨に対する子の骨の3軸周りの回転角度)等を含むモーションデータが記憶されている。またモデルデータ記憶部178には、キャラクタを表すモデルオブジェクトのモデルデータが記憶される。
仮想カメラ制御部118は、オブジェクト空間内の所与(任意)の視点から見える画像を生成するための仮想カメラ(視点、基準仮想カメラ)の制御処理を行う。具体的には、仮想カメラの位置(X、Y、Z)又は回転角度(X、Y、Z軸回りでの回転角度)を制御する処理(視点位置、視線方向あるいは画角を制御する処理)を行う。
画像生成部120は、処理部100で行われる種々の処理(ゲーム処理、シミュレーション処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。具体的には、座標変換(ワールド座標変換、カメラ座標変換)、クリッピング処理、透視変換、或いは光源処理等のジオメトリ処理が行われ、その処理結果に基づいて、描画データ(プリミティブ面の頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値等)が作成される。そして、この描画データ(プリミティブ面データ)に基づいて、透視変換後(ジオメトリ処理後)のオブジェクト(1又は複数プリミティブ面)を、描画バッファ179(フレームバッファ、ワークバッファ等のピクセル単位で画像情報を記憶できるバッファ)に描画する。これにより、オブジェクト空間内において仮想カメラ(所与の視点)から見える画像が生成される。なお、描画処理は頂点シェーダ処理やピクセルシェーダ処理により実現することができる。
なお、画像生成部120が、いわゆる立体視用の画像を生成するようにしてもよい。この場合には、基準となる仮想カメラの位置とカメラ間距離を用いて、左目用仮想カメラと右目用仮想カメラを配置設定する。そして画像生成部120が、オブジェクト空間内において左目用仮想カメラから見える左目用画像と、オブジェクト空間内において右目用仮想カメラから見える右目用画像を生成する。そしてこれらの左目用画像、右目用画像を用いて、眼分離眼鏡方式や、レンティキュラーレンズなどを用いた裸眼方式などにより、立体視を実現すればよい。
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。
そして本実施形態では、画像情報取得部102が、画像センサからの画像情報を取得すると、動き情報取得部104が操作者の動き情報を取得する。そしてオブジェクト制御部114が、動き情報に基づいてオブジェクトを移動させる制御を行う。
ここで動き情報としては、例えば動きベクトルなどのオプティカルフローの情報や、操作者の部位の動きを表す情報や、操作者のスケルトン情報などを想定できる。オプティカルフローの情報は、画像センサの撮像画像での操作者の動きを動きベクトルで表現した情報である。操作者の部位の動きを表す情報は、操作者の各部位がどのように動いているかを特定するための情報である。またスケルトン情報は、画像センサから見える操作者の動作を特定するための情報であり、操作者の複数の関節に対応する複数の関節位置情報を有し、各関節位置情報は3次元座標情報により構成される。各関節を結合するものが骨(ボーン)となり、複数の骨の結合によりスケルトンが構成される。関節位置情報は骨の位置情報として用いられる。
そしてオブジェクト制御部114は、操作者の動き情報に基づいて移動エリア(操作フィールド)においてオブジェクトを移動させる制御を行う。例えば動き情報取得部104のスケルトン情報取得部105が、動き情報として、操作者の動作を特定するスケルトン情報を取得した場合には、オブジェクト制御部114は、スケルトン情報に基づいて移動エリアでオブジェクトを移動させる制御を行う。例えばスケルトン情報を用いて、操作者の手、足等の所定部位の動きを特定し、当該所定部位の動きに連動するようにオブジェクトを移動させる制御を行う。ここで、オブジェクトは2次元オブジェクトであってもよいし、3次元オブジェクトであってもよい。また移動エリアも、2次元のエリアであってもよいし、3次元のエリアであってもよい。
そしてオブジェクト制御部114は、移動制限境界を超えてオブジェクトが移動することを制限する制御を行う。具体的には、移動エリアに設定された移動制限境界をオブジェクトが越えたと動き情報(スケルトン情報)に基づき判断された場合にも、移動制限境界を超えてオブジェクトが移動することを制限する制御を行う。例えば、動き情報に基づき移動したオブジェクトが移動制限境界を越えたか否かを判断し、超えたと判断された場合には、オブジェクトの位置を例えば移動制限境界付近の位置に再設定する処理を行う。
ここで移動制限境界は、2次元的な線の境界であってもよいし、3次元的な面の境界であってもよい。この移動制限境界は、移動制限境界の位置を特定するデータにより実現してもよいし、オブジェクト制御部114が、数式的な処理等で移動制限境界を設定してもよい。また、オブジェクトの移動を制限する制御は、オブジェクトを移動制限境界(移動制限境界付近)で停止する制御であってもよいし、オブジェクトが移動制限境界を若干だけ超えるのを許容するような制御であってもよい。
またオブジェクト制御部114は、オブジェクトの接触対象となる複数の接触対象オブジェクト(ヒット対象オブジェクト、プレイ対象オブジェクト)に対応して設定された移動制限境界を超えて、オブジェクトが移動することを制限する制御を行う。例えば複数の接触対象オブジェクトが、移動制限境界のオブジェクト側(移動制限境界の内周側)のエリアに配置設定される場合には、複数の接触対象オブジェクトに外接(略外接する場合を含む)するように設定された移動制限境界を超えて、オブジェクトが移動することを制限する制御を行う。この場合に、移動制限境界の形状、配置等を、複数の接触対象オブジェクトの配置位置の変更に応じて可変に設定してもよい。
また移動エリアとして、第1の移動エリアと第2の移動エリアが設定された場合に、オブジェクト制御部114は、第1の移動エリアにおいて第1のオブジェクトが移動し、第2の移動エリアにおいて第2のオブジェクトが移動する制御を行う。例えば第1のオブジェクトは、第1の移動エリア内だけで移動し、第2のオブジェクトは、第2の移動エリア内だけで移動するような制御を行う。
そしてオブジェクト制御部114は、第1の移動エリアと第2の移動エリアの間に設定された移動制限境界を超えて、第1、第2のオブジェクトが移動することを制限する制御を行う。例えば第1のオブジェクトが移動制限境界を越えて第2の移動エリアに侵入するのを制限したり、第2のオブジェクトが移動制限境界を越えて第1の移動エリアに侵入するのを制限する制御を行う。なお移動エリアの数は2つに限定されず、3つ以上の移動エリア(第1〜第Nの移動エリア)を設定してもよい。
またオブジェクト制御部114は、操作者の第1の部位の動き情報に基づいて、第1の移動エリアでの第1のオブジェクトの移動を制御し、操作者の第2の部位の動き情報に基づいて、第2の移動エリアでの第2のオブジェクトの移動を制御する。ここで第1の部位は例えば操作者の右手(或いは右足等)であり、第1の部位の動き情報は、操作者のスケルトンの右手の骨の位置情報から得ることができる。また第2の部位は例えば操作者の左手(或いは左足等)であり、第2の部位の動き情報は、操作者のスケルトンの左手の骨の位置情報から得ることができる。この場合には、第1のオブジェクトは、右手に対応する右手オブジェクト(カーソル、アイコン)であり、第2のオブジェクトは、左手に対応する左手オブジェクト(カーソル、アイコン)になる。
またオブジェクト制御部114は、画像が表示される画面の端辺(端部)に対応して設けられた画面端辺用の移動制限境界を超えて、オブジェクトが移動することを制限する制御を行ってもよい。この画面端辺用の移動制限境界は、例えば画面(描画スクリーン)の左端辺、右端辺、上端辺、下端辺の少なくとも1つの端辺に対応して設けることができ、例えば全ての端辺に対応して設けることができる。
ここで画面端辺用の移動制限境界は、画面の端辺(左端辺、右端辺、上端辺、下端辺)上に設けてもよいし、画面の端辺の外側(外周側)に設けてもよい。そして画面の端辺の外側に画面端辺用の移動制限境界を設ける場合には、画面端辺用の移動制限境界と画面の端辺との距離は、オブジェクトの幅(最少幅)よりも短いことが望ましい。このようにすれば、オブジェクトが、画面の端辺付近を移動した場合にも、オブジェクトの一部が画面上に表示されるようになる。
またスケルトン情報取得部105は、画像センサからの画像情報に基づいて、操作者のスケルトン情報を取得する。すると、補正処理部108は、スケルトン情報で表されるスケルトンの骨の位置情報(関節位置情報)についての補正処理を行い、画像生成部120は、この補正処理の結果に応じた画像を生成する。ここで、骨の位置情報についての補正処理は、骨の位置情報自体の補正処理であってもよいし、他の情報を補正することで、骨の位置情報自体を補正するのと同様の効果が得られる補正処理であってもよい。また画像生成部120は、このような骨の位置情報についての補正処理の結果が反映された画像を生成して、表示部190に表示する。
具体的には、補正処理部108は、スケルトンの骨の位置情報(関節位置情報)の補正処理を行って、補正位置情報を求める。するとオブジェクト制御部114は、補正処理により得られた補正位置情報に基づいて、オブジェクトの制御を行う。例えば補正位置情報に基づいて、オブジェクトの描画位置などを決定する。そして画像生成部120は、補正位置情報に対応する画面上の表示位置にオブジェクトが表示される画像を生成する。このようにすることで、補正処理の結果に応じた画像(補正処理が反映された画像)が生成されるようになる。
ここで、オブジェクトは、操作者の所定部位(例えば手、足等)の動きに応じて移動するオブジェクトである。具体的には、所定部位は操作者の手であり、オブジェクトは、操作者の手の動きに応じて移動する手オブジェクト(アイコン、カーソル)である。
また補正処理部108は、第1の操作者のスケルトンの状態が第1の状態である時のオブジェクトの表示位置と、第2の操作者のスケルトンの状態が第1の状態である時のオブジェクトの表示位置とが同じ位置になるように補正処理を行う。例えば第1の操作者が大人であり、第2の操作者が子供である場合に、その大人のスケルトンが第1の状態(例えば右手を上げるなどの姿勢状態)である時のオブジェクト(例えば右手オブジェクト)の表示位置と、その子供が同じ姿勢状態である時のオブジェクトの表示位置とが同じ位置になるように、補正処理を行う。
また補正処理部108は、操作者の体格情報を用いて補正処理を行ってもよい。体格情報は、操作者の体の大きさや体型等を表す情報である。具体的には、補正処理部108は、スケルトンの第1の関節(例えば肩の関節)と第2の関節(例えば手の関節)の間の関節距離情報を、体格情報として用いて、補正処理を行う。或いは、複数フレームに亘って取得された関節間距離情報から得られる距離情報を、体格情報として用いて、補正処理を行ってもよい。例えば複数フレーム分の関節間距離情報の平均化処理を行い、平均化処理により得られた距離情報を用いて補正処理を行う。
また補正処理部108は、操作者の位置(代表位置)と画像センサとを結ぶ第1の方向と、操作者の位置と所定部位(例えば手、足)に対応する関節の位置とを結ぶ第2の方向とのなす角度を求めて、補正処理を行ってもよい。例えば求められた角度に基づいて、オブジェクトの表示位置を求める。このようにすることで、骨の位置情報の補正位置情報を直接求めなくても、オブジェクトの描画位置を求めることが可能になる。
信頼度情報取得部106は、スケルトン情報の信頼度(情報の確からしさ)を表す信頼度情報を取得する。そして画像生成部120は、表示部190に表示される画像として、取得された信頼度情報に応じた画像を生成する。例えば画像生成部120は、信頼度情報に基づいて、表示部190に表示される画像の表示態様を変化させる。またゲーム演算部110が信頼度情報に応じたゲーム演算処理を行った場合や、オブジェクト制御部114が信頼度情報に応じたオブジェクト制御を行った場合には、当該ゲーム演算処理やオブジェクト制御に基づく画像を生成することで、信頼度情報に応じた画像が生成されるようになる。
例えば信頼度情報取得部106は、スケルトン情報により表されるスケルトンを構成する各骨(各関節)に対して、各骨の情報(位置情報、対応づけ情報)の信頼度が関連づけられた情報を、信頼度情報として取得する。ここで、スケルトン情報は、操作者の各部位(手、足、腰、胴体、首、頭等)に対応づけられた各骨(各関節)の位置情報を含む。この場合には、信頼度情報により表される信頼度は、操作者の各部位と各骨との対応づけと、各骨の位置情報に関する信頼度となる。
また信頼度情報取得部106は、操作者の所定部位(例えば手、足等)が操作者の他の部位(例えば胴体、頭、他方の手・足等)、に近づくほど、所定部位に対応する骨の情報(位置情報、対応づけ情報)の信頼度が低くなる情報を、信頼度情報として取得する。即ち所定部位と他の部位との区別がつかなくなった場合に信頼度が低くなるような情報を、信頼度情報として取得する。或いは、信頼度情報取得部106は、操作者が画像センサから所定距離以上離れた場合に、スケルトン情報の骨の情報の信頼度が低くなる情報を、信頼度情報として取得する。即ち、操作者が画像センサから遠く離れてしまい、画像センサからの画像情報から信頼度情報を取得できなくなったり取得するのが極めて困難になった場合に信頼度が低くなるような情報を、信頼度情報として取得する。なおスケルトン情報と信頼度情報は一体となった情報であってもよい。
画像生成部120は、取得された信頼度情報に基づいて、表示部190に表示される画像の表示態様を変化させる。この場合に、信頼度情報により表される信頼度の変化の予測情報(変化率情報等)に基づいて、表示部190に表示される画像の表示態様を変化させてもよい。例えば信頼度が所定しきい値以下になることが前もって予測された場合に、画像の表示態様を変化させる。
具体的には画像生成部120は、操作者の所定部位(例えば手、足)に対応する骨(手、足の骨・関節)の情報の信頼度に基づいて、所定部位に対応して表示部190に表示されるオブジェクトの表示態様を変化させる。ここで所定部位に対応して表示されるオブジェクトは、所定部位の動きに連動して移動又は動作するオブジェクトであり、2次元オブジェクトであってもよいし、3次元オブジェクトであってもよい。
そして画像生成部120は、所定部位に対応する骨の情報の信頼度が低くなるにつれて、所定部位に対応するオブジェクトをぼかす処理(ぼかしフィルタ処理)、オブジェクトを透明に近づける処理(α値を変化させる処理)、及びオブジェクトの色を変化させる処理(ターゲット色に近づける処理)の少なくとも1つの処理を行う。或いは、所定部位に対応する骨の情報の信頼度が低くなるにつれて、オブジェクトの明度(輝度)を変化させる処理、オブジェクトの輪郭線の表示態様(太さ、濃さ)を変化させる処理、オブジェクトのサイズを変化(変形)させる処理、及びオブジェクトに施されるエフェクトを変化させる処理の少なくとも1つの処理を行ってもよい。
2.本実施形態の手法
次に本実施形態の手法について具体的に説明する。
2.1 移動制限境界の設定
一般的に、ゲーム装置や、テレビや記録・再生機器等の映像機器では、コントローラ(リモコン)のボタンやレバーを用いて操作を指示する。またコントローラにモーションセンサ(6軸センサ)を設け、操作者がコントローラそのものを動かすことで操作を指示する機器も考えられる。
しかしながら、このような操作インターフェースの機器では、操作にコントローラが必要になり、操作者の手の動きなどのジェスチャをそのまま反映させるような操作については実現できなかった。
そこで本実施形態では、画像センサで撮像された画像情報に基づき操作者の操作入力を可能にする操作インターフェースを採用している。
例えば図2(A)では、表示部190(画面SC)に対応する位置に、デプスセンサ(赤外線センサ等)やカラー画像センサ(CCDやCMOSセンサなどのRGBセンサ)により実現される画像センサISEが設置されている。この画像センサISEは、例えばその撮像方向(光軸方向)が表示部190から操作者の方に向く方向になるように設置されており、表示部190側から見た操作者のカラー画像情報やデプス情報を撮像する。なお画像センサISEは、表示部190に内蔵されるものであってもよいし、外付け部品として用意されるものであってもよい。また画像センサISEの設置位置は図2(A)に限定されず、任意の位置(例えば表示部190の下部)に設定できる。
そして図2(A)の画像センサISEを用いて、図2(B)に示すようなカラー画像情報とデプス情報を取得する。例えばカラー画像情報では、操作者やその周りの風景の色情報が得られる。一方、デプス情報では、操作者やその周りの風景のデプス値(奥行き値)が、例えばグレースケール値として得られる。例えばカラー画像情報は、その各画素位置にカラー値(RGB)が設定された画像情報であり、デプス情報は、その各画素位置にデプス値(奥行き値)が設定された画像情報である。なお、画像センサISEは、デプスセンサとカラー画像センサとが別々に設けられたセンサであってもよいし、デプスセンサとカラー画像センサとが複合的に組み合わせられたセンサであってもよい。
デプス情報の取得手法としては、公知に種々の手法を想定できる。例えば画像センサISE(デプスセンサ)から赤外線等の光を投射し、その投射光の反射強度や、投射光が戻ってくるまでの時間(Time Of Flight)を検出することで、デプス情報を取得し、画像センサISEの位置から見た操作者などの物体のシェイプを検出する。具体的には、デプス情報は、例えば画像センサISEから近い物体では明るくなり、画像センサISEから遠い物体では暗くなるグレースケールデータとして表される。
なおデプス情報の取得手法としては種々の変形実施が可能であり、例えばCMOSセンサなどの画像センサを用いて、カラー画像情報と同時にデプス情報(被写体までの距離情報)を取得するようにしてもよい。また超音波などを用いた測距センサなどによりデプス情報を取得してもよい。
そして本実施形態では、画像センサISEからの画像情報に基づき、画像センサISEから見える操作者(プレーヤ、ユーザ)の動き情報を取得する。そして、取得された動き情報に基づいて、画面上に表示されるオブジェクトの制御を行う。ここで動き情報は、前述のように、オプティカルフローの情報や、操作者の部位の動きを表す情報や、操作者のスケルトン情報などである。
例えば本実施形態では図3に示すように、図2(B)のデプス情報等に基づいて、操作者の動作を特定するためのスケルトン情報(広義には動き情報)を取得する。図3ではスケルトン情報として、スケルトンを構成する骨の位置情報(3次元座標)が、関節C0〜C19の位置情報として取得されている。このスケルトンを構成する各骨は、画像センサISEに映る操作者の各部位(手、足、胸等)に対応するものであり、関節C0〜C19は、画像センサISEに映る操作者の関節に対応するものである。
例えば図2(B)のデプス情報を用いれば、画像センサISE側から見た操作者等の3次元形状を特定できる。またカラー画像情報を組み合わせれば、顔画像認識などにより操作者の顔等の部位の領域も特定できる。そこで、これらの3次元形状の情報等や画像の動きベクトル(オプティカルフロー)などを用いて、操作者の各部位を推定し、各部位の関節位置を推定する。そして推定された関節位置に対応するデプス情報の画素位置の2次元座標と、画素位置に設定されたデプス情報に基づいて、スケルトンの関節位置の3次元座標情報を求め、図3に示すようなスケルトン情報を取得する。更に具体的には、体型・体格が異なる複数のモデルを用意する。そして画像センサISEにより得られた操作者のデプス情報やカラー画像情報を用いて、操作者の体型・体格と、これらの複数のモデルの体型・体格とのマッチング処理を行い、体型・体格が類似するモデルを特定する。そして、特定されたモデルの関節位置の情報等を用いて、操作者の関節位置(骨の位置、部位の位置)を推定して、スケルトン情報を取得する。
このようなスケルトン情報を用いれば、操作者の動作をリアルタイムに特定することができ、従来にない操作インターフェース環境を実現できる。また、このスケルトン情報は、オブジェクト空間に配置されるキャラクタのモーションデータとの親和性が高い。従って、このスケルトン情報を例えばキャラクタのモーションデータとして利用することで、オブジェクト空間において、操作者に対応するキャラクタ(アバター)を動作させることが可能になる。
そして本実施形態では、このようなスケルトン情報などの動き情報を用いて、画面の移動エリアにおいてオブジェクトを移動させる制御を行っている。
例えば図4(A)、図5(A)は、画像センサISEにより操作者を撮像した撮像画像の例であり、図4(B)、図5(B)は表示部190に表示される画像(ゲーム画像)の例である。
図4(A)に示すように操作者が右手(広義には第1の部位)を動かすと、操作者のスケルトンの右手の動きに連動して、図4(B)の右手オブジェクトHR(広義には第1のオブジェクト)も画面上で移動する。例えば操作者が右手を上下左右に動かすと、右手オブジェクトHRが画面上で上下左右に移動する。この右手オブジェクトHRの移動制御は、操作者のスケルトン情報の右手の骨の位置情報(関節位置情報)を用いて行われる。即ち、右手の骨の位置情報から、右手オブジェクトHRの表示位置を求めることで、スケルトン情報を用いた右手オブジェクトHRの移動制御が実現される。
また図5(A)に示すように操作者が左手(広義には第2の部位)を動かすと、操作者のスケルトンの左手の動きに連動して、図5(B)の左手オブジェクトHL(広義には第2のオブジェクト)も画面上で移動する。例えば操作者が左手を上下左右に動かすと、左手オブジェクトHLが画面上で上下左右に移動する。この左手オブジェクトHLの移動制御は、操作者のスケルトン情報の左手の骨の位置情報を用いて行われる。即ち、左手の骨の位置情報から、左手オブジェクトHLの表示位置を求めることで、スケルトン情報を用いた左手オブジェクトHLの移動制御が実現される。
そして図4(B)、図5(B)では、風船を模した接触対象オブジェクトOBJ1〜OBJ4が画面上に表示されている。OBJ1〜OBJ4の各接触対象オブジェクトには数字が付されており、操作者は、この数字の順番で、OBJ1〜OBJ4の各接触対象オブジェクトに対して手オブジェクトHR、HLを接触させることで、風船を割るミニゲームを楽しむ。
例えば図4(B)では、操作者は右手を動かすことで、「1」の数字が付された接触対象オブジェクトOBJ1に右手オブジェクトHRを接触させている。図5(B)では、操作者は左手を動かすことで、「2」の数字が付された接触対象オブジェクトOBJ2に左手オブジェクトHLを接触させている。このように数字の順番で接触対象オブジェクトに触れることに成功すると、操作者に対して得点が加算される。
しかしながら、図4(A)、図5(A)に示すように、操作者は実3次元空間において自身の左手や右手を自由に動かすことができる。従って、図6(A)に示すように、右手を高く上げすぎると、図6(B)に示すように、右手オブジェクトHRが、接触対象となるオブジェクトを通過した位置に移動してしまう事態が生じる。
即ち、操作者の周りの実3次元空間には、風船のオブジェクトは存在しないため、操作者は、表示部190に映し出される画面を見ながら、自身の直感にしたがって、右手や左手を上げ下げする。このため、本当はオブジェクトOBJ1、OBJ2等に触れようとして右手を上げているのに、図6(B)に示すように、右手オブジェクトHRが、これらのオブジェクトOBJ1、OBJ2等の場所を通過して、OBJ1、OBJ2を超えた場所に移動してしまう事態が生じる。
このような事態が生じると、操作者は、自身が意図するように手オブジェクトHR、HLが移動しないことに、不自然さや苛立ちを感じるようになり、スムーズなゲーム進行を実現できなくなる。
そこで本実施形態では、図7(B)に示すように、操作者の操作対象となる手オブジェクトHR、HL(広義にはオブジェクト)の移動エリアAR(画面エリア)に対して、移動制限境界BLA(移動制限境界線、移動制限境界面)を設定する。例えば図7(B)では、手オブジェクトHR、HLの接触対象となる複数の接触対象オブジェクトOBJ1〜OBJ4に対応して移動制限境界BLAが設定される。具体的には、接触対象オブジェクトOBJ1〜OBJ4は、移動制限境界BLAの手オブジェクトHR、HL側(BLAの内周側)のエリアに配置設定されている。この場合には、接触対象オブジェクトOBJ1〜OBJ4に外接するように移動制限境界BLAを設定する。即ち、OBJ1〜OBJ4の外周側の面に接するように移動制限境界BLAを設定する。
そして本実施形態では、この移動制限境界BLAを超えて手オブジェクトHR、HLが移動することを制限する制御を行う。即ち、図7(A)の操作者のスケルトン情報(右手の骨の位置情報)からは、移動制限境界BLAを超えて右手オブジェクトHRが移動していると判断される場合であっても、図7(B)に示すように、右手オブジェクトHRが移動制限境界BLAを超えて移動しないように、右手オブジェクトHRの移動を制限する。
例えば本実施形態の手法を用いなかった場合には、操作者が、数字の順番で風船のオブジェクトOBJ1、OBJ2、OBJ3に触れようとすると、右手オブジェクトHRの移動軌跡は図8(A)に示すような軌跡になってしまう。即ち、操作者は風船に触れたいのにもかかわらず、右手オブジェクトHRは、風船のオブジェクトOBJ1、OBJ2、OBJ3の外周側を超えた移動軌跡で移動してしまい、操作者は得点を得ることができなくなってしまう。
これに対して本実施形態では、図8(B)に示すような移動制限境界BLAを設定しているため、右手オブジェクトHRの移動軌跡は、この移動制限境界BLAに沿った軌跡又はBLAの内周側の軌跡になる。従って、右手オブジェクトHRが、風船のオブジェクトOBJ1、OBJ2、OBJ3に接触できるようになり、操作者は容易に得点を得ることが可能になる。従って、図8(A)の比較例に比べて、操作者が感じる不自然感を軽減することが可能になり、スムーズなゲーム進行を実現できる。
図9には、右手オブジェクトHRの移動を制限する手法の具体例が示されている。例えば位置PSは右手オブジェクトHRの移動開始位置であり、位置PEは、スケルトン情報の右手の骨の位置情報から求められる右手オブジェクトHRの移動到達位置である。スケルトン情報をそのまま用いて、右手オブジェクトHRを移動させると、右手オブジェクトHRは、位置PEまで移動することになる。
これに対して本実施形態では、移動制限境界BLAを設定しているため、右手オブジェクトHRは、位置PEまでは移動せずに、例えば位置PSとPEを結ぶ線分LNと移動制限境界BLAの交点位置PCRに移動するようになる。こうすることで、スケルトン情報に依らずに、右手オブジェクトHRが、移動制限境界BLAを超えて移動しないように制限することが可能になる。
なお、本実施形態のオブジェクトの移動制限手法は図9等で説明した手法に限定されず、種々の変形実施が可能である。例えば図9に示すように右手オブジェクトHRを移動制限境界BLA上の位置PCRで完全に停止させるのではなく、右手オブジェクトHRの移動に対して慣性を持たせるなどして、移動制限境界BLAを超えた移動を、ある程度許容するようにしてもよい。
以上の本実施形態の手法によれば、移動制限境界を設けることで、操作者が意図しない場所にオブジェクトが移動してしまう事態を防止することができる。従って、操作者の動き情報に基づき移動するオブジェクトの適正な移動制御を実現できる。
特に、後述するような骨の位置情報の補正処理を行えば、オブジェクトの移動範囲を広範囲の移動範囲にすることが可能になり、例えば画面の隅々に亘ってオブジェクトを移動させることが可能になる。そして、このように広い移動範囲においてオブジェクトが移動できるように補正処理を行うと、それが原因となって、図6(A)、図6(B)や図8(A)で説明した不具合が生じてしまう。
この点、本実施形態の手法によれば、このようにオブジェクトの移動範囲が、全画面に亘るような広い移動範囲になったとしても、移動制限境界を設けることで、図6(A)、図6(B)や図8(A)で説明した不具合についても解消できる。従って、オブジェクトの移動範囲の拡大と、それによって生じる不具合の発生の抑止とを、両立して実現できるようになる。
2.2 複数の移動エリアの設定
次に、複数の移動エリアを設定してオブジェクトを移動させる場合の例について説明する。
例えば図10(A)、図10(B)のゲームでは、図10(A)に示すように操作者が右手を動かすと、その右手の動きに連動して、図10(B)のゲーム画面の第1の移動エリアAR1において右手オブジェクトHR(広義には第1のオブジェクト)が移動する。また操作者が左手を動かすと、その左手の動きに連動して、第2の移動エリアAR2において左手オブジェクトHL(広義には第2のオブジェクト)が移動する。
そして第1の移動エリアAR1では、操作者は右手を動かして、フルーツを模したオブジェクトOBAに右手オブジェクトHRが常に接触するように、右手オブジェクトHRを移動させる。また第2の移動エリアAR2では、操作者は左手を動かして、キャラクタのオブジェクトOBBに左手オブジェクトHLを接触させて、敵キャラクタのオブジェクトOBCに捕まらないようにオブジェクトOBBを移動させる。
このように図10(B)では、第1の移動エリアAR1では、操作者の右手(広義には第1の部位)の動き情報(スケルトン情報)に基づいて、右手オブジェクトHR(第1のオブジェクト)が移動するように制御される。また、第2の移動エリアAR2では、操作者の左手(広義には第2の部位)の動き情報に基づいて、左手オブジェクトHLが移動するように制御される。
そして移動エリアAR1と移動エリアAR2の間には、移動制限境界BLB1、BLB2が設定され、移動制限境界BLB1、BLB2を超えて、右手、左手オブジェクトHR、HLが移動するのが制限される。
即ち右手オブジェクトHRは移動エリアAR1内においてだけ移動し、例えば図10(A)において操作者が右手を左側の方に持って行ったとしても、右手オブジェクトHRは移動制限境界BLB1を超えて移動エリアAR2側に侵入することはない。また左手オブジェクトHLは移動エリアAR2内においてだけ移動し、例えば図10(A)において操作者が左手を右側の方に持って行ったとしても、左手オブジェクトHLは移動制限境界BLB2を超えて移動エリアAR1側に侵入することはない。
このように図10(A)、図10(B)のゲームでは、操作者は、右手と左手を別々に使って、移動エリアAR1では右手オブジェクトHRを動かしてゲーム操作を行い、移動エリアAR2では左手オブジェクトHLを動かしてゲーム操作を行って、ゲームを楽しむ。従って、右手、左手を別々に使ってそれぞれに対応するオブジェクトを移動させることができ、これまでにないタイプのゲームを実現できる。
そして図10(B)では、移動エリアAR1、AR2の間に移動制限境界BLB1、BLB2が設定されている。このため、操作者の右手に対応する右手オブジェクトHRが、左側の移動エリアAR2に移動したり、操作者の左手に対応する左手オブジェクトHLが、右側の移動エリアAR1に移動したりするような事態を防止できる。例えば操作者が右手と左手を交差させるようなポーズをとったとしても、右手オブジェクトHRは移動制限境界BLB1の付近で停止し、左手オブジェクトHLは移動制限境界BLB2の付近で停止するようになる。従って、操作者の混乱を招くような事態が抑止され、使い易く、直感的に分かりやすい操作インターフェース環境を実現できる。
そして図10(B)では、ゲーム画像が表示される画面の端辺に対しても、画面端辺用の移動制限境界を設けている。そして、この画面端辺用の移動制限境界を超えないように、手オブジェクトHR、HLの移動を制限する制御を行う。
具体的には図11(A)に示すように、画面端辺用の移動制限境界BLBを、画面SCの端辺EDの外側に設けている。即ち画面SCの外周に沿って、画面端辺用の移動制限境界BLBを設定している。このような移動制限境界BLBを設定することで、操作者は、広い移動範囲で右手、左手オブジェクトHR、HLを移動させることが可能になり、スムーズで開放感のある操作インターフェース環境を提供できるようになる。
また図11(A)のように画面端辺用の移動制限境界BLBを設定する場合には、図11(B)に示すような関係が成り立っていることが望ましい。即ち図11(B)において、画面端辺用の移動制限境界BLBと、画面SCの端辺EDとの距離をLBEとする。またオブジェクトの幅(短辺側の幅)をWHとする。すると図11(B)では、WH>LBEの関係が成り立つ。即ち距離LBEの方が幅WHよりも短くなっている。
このようなWH>LBEの関係が成り立てば、例えば右手オブジェクトHRが画面の端辺付近に移動した場合にも、図11(B)に示すように、右手オブジェクトHRの少なくとも一部が画面SCに表示されるようになる。従って、右手オブジェクトHRが画面の端辺付近に移動した時に、操作者が、右手オブジェクトHRを見失ってしまうような事態を防止することができ、操作者にとって更に好適で利便性の高い操作インターフェース環境を提供できる。
2.3 スケルトンの骨の位置情報の補正処理
さて、本実施形態では、オブジェクトの移動範囲を広げたり、操作者の個人差を吸収するために、スケルトンの骨の位置情報についての補正処理を行っている。
例えば操作者の体型・体格は様々であり、身長差や年齢差などの個人差がある。一方、操作者の動きに連動して画面上のオブジェクトを移動、動作させる場合、その移動、動作範囲は、画面全体に亘ることが望ましい。
そこで本実施形態では、図3のスケルトン情報で表される骨の位置情報(関節位置情報)についての補正処理を行って、補正処理の結果に応じた画像を生成する手法を採用する。
例えば図12(A)は、画像センサISEにより大人の操作者を撮った時の撮像画像(カラー画像等の画像情報)の例であり、この撮像画像から同図に示すような大人の操作者のスケルトン情報が取得されている。
図12(A)の操作者のスケルトンの動きに連動して、図12(B)に示すような画像が生成されて、表示部190に表示される。具体的には、図12(A)の操作者のスケルトンの右手、左手の動きに連動して、図12(B)の右手、左手オブジェクトHR、HLが画面上で移動する。なおCH1は、大人の操作者のアバターとなるキャラクタである。
一方、図13(A)は、画像センサISEにより子供の操作者を撮った時の撮像画像の例であり、この撮像画像から同図に示すように子供の操作者のスケルトン情報が取得されている。
図13(A)の操作者のスケルトンの動きに連動して、図13(B)に示すような画像が生成されて、表示部190に表示される。即ち、図13(A)の操作者のスケルトンの右手、左手の動きに連動して、図13(B)の右手、左手オブジェクトHR、HLが画面上で移動する。なおCH2は、子供の操作者のアバターとなるキャラクタである。
このように操作者のスケルトン情報を取得して、画面上の手オブジェクトHR、HLを移動させる場合に、スケルトン情報の骨の位置情報をそのまま使用して手オブジェクトHR、HLを移動させてしまうと、操作者が大人である場合と子供である場合とで、手オブジェクトHR、HLの移動範囲に広狭の差が生じてしまう。
例えば図12(A)のように操作者が大人である場合には、手オブジェクトHR、HLの移動範囲は広くなる一方で、図13(A)のように操作者が子供である場合には、手オブジェクトHR、HLの移動範囲は狭くなってしまう。そして手オブジェクトHR、HLの移動範囲が狭くなると、手オブジェクトHR、HLを、接触対象のオブジェクトOBJに接触させることが難しくなる。例えばオブジェクトOBJが画面の端部付近に配置されていた場合には、子供の操作者では、このオブジェクトOBJに手オブジェクトHR、HLを接触させることができなくなるおそれがある。従って、体格差、年齢差などの個人差によって、ゲームプレイに有利、不利が生まれてしまい、ゲームバランスが崩れてしまう。
この点、本実施形態では、スケルトン情報の骨の位置情報をそのまま使用して手オブジェクトHR、HLを移動(又は動作)させるのではなく、骨の位置情報の補正処理を行って、手オブジェクトHR、HLを移動させている。即ち補正処理の結果に基づいて、オブジェクトの移動等が制御される。従って、図12(A)のように大人の操作者が両手を一杯に広げた場合のみならず、図13(A)のように子供の操作者が両手を一杯に広げた場合においても、図12(B)、図13(B)に示すように手オブジェクトHR、HLは画面端に移動するようになる。即ち大人の操作者(広義には第1の操作者)のスケルトンの状態が手を一杯に広げた状態(広義には第1の状態)である時のオブジェクトHR、HLの表示位置と、子供の操作者(広義には第2の操作者)のスケルトンの状態が手を一杯に広げた状態(第1の状態)である時のオブジェクトHR、HLの表示位置が、同じ位置(ほぼ同じ位置)になるように、補正処理が行われる。
このようにすれば、大人の操作者であるか子供の操作者であるかに依らずに、操作者が手を動かすことで、例えば画面のほぼ全体の領域を移動範囲として、手オブジェクトHR、HLを移動させることができる。従って、体格差、年齢差などの個人差によって、ゲームプレイに有利、不利が生まれてしまう事態を防止することができ、ゲームバランスを保つことなどが可能になる。
次に図14(A)、図14(B)を用いて本実施形態の補正処理の一例を説明する。本実施形態では、スケルトンの骨の位置情報の補正処理により、補正位置情報を求める。そして補正位置情報に基づいて、オブジェクトの制御を行い、補正位置情報に対応する画面上の表示位置にオブジェクトが表示される画像を生成している。
図14(A)は本実施形態の補正処理を行わない場合の説明図である。図14(A)においてCCは例えば手の関節(手の先、手首)である。補正処理を行わない場合には、関節CCの位置PCにより画面上の表示位置PDSを求める。例えば位置CCをスクリーンに投影等することにより、表示位置PDSを求める。そしてこの表示位置PDSにオブジェクトOBが表示される画像を生成する。
図14(B)は本実施形態の補正処理を行う場合の説明図である。図14(B)では、関節CCの位置PC(手の骨の位置)の補正処理により、補正位置PC’を求める。例えば図13(A)のように子供の操作者である場合には、基準となる操作者よりも手の長さが短いと考えられるため、位置PCを手に沿った方向で延長した位置を、補正位置PC’として求める。そして、この補正位置PC’により画面上の表示位置PDSを求め、この表示位置PDSにオブジェクトOBが表示(配置)される画像を生成する。このようにすれば、子供の操作者であっても、手を一杯に広げた時に、図13(B)に示すように手オブジェクトHR、HLが画面端に届くようになる。一方、例えば体格の大きな大人の操作者である場合には、基準となる操作者よりも手の長さが長いと考えられるため、位置PCを手に沿った方向で短縮した位置を、補正位置PC’として求めればよい。
このように基準となる操作者との比較により補正処理を行う場合には、操作者の体格情報を用いて、この補正処理を行えばよい。ここで体格情報(体型情報、骨格情報)は、操作者の体格の大小等を表す情報であり、例えば操作者の関節間の距離情報や各部位の長さ情報などにより表される情報である。この体格情報は、図3のスケルトン情報などにより求めることができる。
即ち、図3のスケルトン情報は、後述するように、操作者のスケルトンを構成する各骨の位置情報である関節位置情報を含む。従って、この場合にはスケルトンの第1の関節と第2の関節の間の距離情報を、体格情報として採用することができ、この体格情報である距離情報を用いて図14(B)等の補正処理を行う。
例えば図15(A)のSC1は、体格の大きな第1の操作者のスケルトン情報であり、図15(B)のSC2は、体格の小さな第2の操作者のスケルトン情報である。この場合に、図15(A)のスケルトン情報SC1から、肩の関節C4と手(手先、手首)の関節C7の間の関節間距離LD1を求める。また図15(B)のスケルトン情報SC2から、肩の関節C4と手の関節C7の間の関節間距離LD2を求める。そして、これらの距離LD1、LD2を用いて、図14(B)等の補正処理を行う。
例えば画像センサによって取得された操作者のスケルトン情報が、図15(A)のように体格の大きなスケルトン情報SC1であった場合には、関節間距離LD1と基準距離LDRとの比などの情報に基づいて、図14(B)の補正位置PC’を求める補正処理を行う。一方、操作者のスケルトン情報が、図15(B)のように体格の小さなスケルトン情報SC2であった場合には、関節間距離LD2と基準距離LDRとの比などの情報に基づいて、図14(B)の補正位置PC’を求める補正処理を行う。こうすることで、操作者の体格情報の差を吸収する補正処理を実現できる。
なお、体格情報として使用する距離情報は、操作者の体格・体型を表す情報であればよく、図15(A)、図15(B)のような関節間距離には限定されず、種々の変形実施が可能である。例えば左手の関節間距離と右手の関節間距離の両方により得られた距離情報を用いて、補正処理を行ってもよい。
或いは複数フレームに亘って取得された関節間距離から得られる距離情報を用いて、補正処理を行ってもよい。例えば複数フレーム分の関節間距離の平均化処理を行い、得られた距離情報を用いて補正処理を行う。即ち画像センサの画像情報からスケルトン情報を取得した場合、スケルトン情報から得られる関節間距離にはバラツキが生じ、特定のフレームで得られた関節間距離が特異な距離になってしまうおそれがある。そして、このような特異な関節間距離を用いて補正処理を行うと、図14(B)のオブジェクトOBの表示位置PDSが変動してしまい、オブジェクトOBが操作者の予期しない位置に表示されたり、オブジェクトOBの画像がちらつくなどの問題が生じる可能性がある。
この点、複数フレーム分の関節間距離の平均化処理等を行えば、特定のフレームでの関節間距離が特異な距離であっても、その影響が平均化される。従って、オブジェクトOBが操作者の予期しない位置に表示されたり、表示位置PDSが変動してオブジェクトOBの画像がちらつくなどの問題を抑止できる。
図16(A)、図16(B)に本実施形態の補正処理の他の例を示す。この補正処理では、操作者OPの位置と画像センサISEとを結ぶ第1の方向DR1と、操作者OPの位置(例えば肩)と所定部位(例えば手)に対応する関節CCの位置とを結ぶ第2の方向DR2とのなす角度θY、θXを求めて、補正処理を行う。
例えば図16(A)のθYは、垂直方向(縦方向)の座標軸であるY軸回りの角度(回転角度)であり、θXは、水平方向(Y方向)の座標軸であるX軸回りの角度(回転角度)である。角度θYを用いることで、画面上でのオブジェクトの表示位置のX座標を特定できる。角度θXを用いることで、画面上でのオブジェクトの表示位置のY座標を特定できる。例えば角度θYが90度又は−90度に近づくと、オブジェクトの表示位置は画面の左端又は右端に近づき、θYが0度に近づくと、表示位置は画面中心に近づく。また角度θXが90度又は−90度に近づくと、オブジェクトの表示位置は画面の上端又は下端に近づき、θXが0度に近づくと、表示位置は画面中心に近づく。
図16(A)、図16(B)の手法によれば、角度θY、θXを求めて、骨の位置情報の補正処理を行って、オブジェクトの表示位置を求めているため、操作者の体格の違い(手の長さ等の違い)を自動的に吸収した補正処理を実現できる。なお、操作者が手を曲げた場合などに対応するためには、図15(A)、図15(B)の関節間距離LD1、LD2などを用いて角度θY、θXを補正すればよい。例えば操作者が手を曲げて関節間距離LD1、LD2が短くなった場合には、それに連動して角度θY、θXの絶対値を小さくすればよい。
2.4 信頼度情報
次にスケルトン情報の信頼度情報と、信頼度情報に基づく画像生成手法について説明する。
前述のように図3に示すスケルトン情報を用いれば、操作者の動作をリアルタイムに特定することができ、従来にない操作インターフェース環境を実現できる。
しかしながら、操作者の動きや体型・体格は種々様々である。また操作者が画像センサISEの撮像範囲の外に出てしまう場合もある。従って、完全に100パーセントの信頼度のスケルトン情報を取得することは困難である。このため、操作者のスケルトンの骨(部位)を完全にはトラッキングできない場合には、骨の位置(関節位置)の推測処理を行い、推測処理により得られた骨の位置等に対しては、その推測処理の確からしさの程度を表す信頼度を関連づける。
例えば図17(A)にスケルトン情報のデータ構造の例を示す。このスケルトン情報は、各骨(各関節)に対して、その位置情報が関連づけられている。この各骨(各関節)の位置情報は、例えば画像センサISEのカメラ座標系での3次元座標情報である。また、各骨(各関節)は、操作者の各部位に対応づけられている。例えばC0、C1、C2は、各々、腰、胸、首の部位に対応づけられている。この対応づけは、骨の番号(関節番号)などにより実現される。
図17(B)に信頼度情報のデータ構造の例を示す。図17(B)に示すように、本実施形態の信頼度情報は、スケルトン情報により表されるスケルトンを構成する各骨(各関節)に対して、信頼度が関連づけられた情報である。この信頼度は、各骨の情報の信頼度を表している。具体的には、図17(A)に示すように、スケルトン情報は、操作者の各部位に対応づけられた各骨の位置情報を含み、図17(B)の信頼度は、操作者の各部位と各骨(各関節)との対応づけや、各骨(各関節)の位置情報に関する信頼度である。なお、「骨」と「関節」は対応しているため、以下では、適宜、「骨」を「関節」として説明したり、「関節」を「骨」として説明する。
例えば図18(A)において、関節C1とC7の距離は遠く離れている。PR1、PR7は関節C1、C7の位置についての存在確率の範囲を表すものである。例えば、ある測定タイミングで関節C1、C7が図18(A)に示す位置にあった場合には、次の測定タイミングにおいても、関節C1、C7の位置は、これらの存在確率の範囲PR1、PR7内に位置することが予想される。骨のトラッキングによるスケルトン情報の推定処理の際には、この存在確率の概念を用いる。そして、図18(A)に示すように関節C1、C7の距離が離れている場合には、存在確率の範囲PR1、PR7の間に重なりが無いため、関節C1、C7の情報(部位との対応づけや位置情報)の信頼度は高い。
一方、図18(B)では関節C1、C7の距離が近づいており、存在確率の範囲PR1、PR7の間に重なりが生じている。従って、この場合には、次の測定タイミングで、関節C1をC7と判断したり、関節C7をC1と判断してしまう可能性があり、骨のトラッキングの推定処理の際に、誤った判断をする可能性がある。従って、図18(B)の場合には、図18(A)に比べて関節C1、C7の情報(部位への対応づけや位置情報)の信頼度が低くなる。
また図19(A)では、画像センサISEと操作者の距離が適正な距離になっている。従って、画像センサISEの撮像により得られる画像情報の信頼度(解像度等)が高くなり、この画像情報から得られるスケルトン情報の信頼度も高くなる。
一方、図19(B)では、画像センサISEと操作者の距離が長く、操作者が画像センサISEから所定の距離(許容距離)LM以上離れている。従って、画像センサISEの撮像により得られる画像情報の信頼度が低くなり、この画像情報から得られるスケルトン情報の信頼度も低くなる。
以上のように本実施形態で用いられる信頼度情報は、例えば図18(A)、図18(B)に示すように操作者の所定部位(例えば手、足)が他の部位(例えば胸、腰、頭、他方の手・足)に近づくほど信頼度が低くなる情報である。また図19(A)、図19(B)に示すように、操作者が画像センサISEから所定距離LM(例えば4〜5m)以上離れた場合に信頼度が低くなる情報である。但し本実施形態の信頼度情報は、これに限定されない。例えば他の人間が近づくことで、操作者の認識の精度が低下し、操作者のスケルトン情報の信頼度が低くなるような情報であってもよい。
本実施形態では、以上のように説明した信頼度情報を用いた画像を生成して、表示部190に表示している。具体的には、信頼度情報に基づいて、表示部190に表示される画像の表示態様を変化させたり、信頼度情報に基づくオブジェクト制御やゲーム演算処理を行い、そのオブジェクト制御やゲーム演算結果により生成された画像を表示部190に表示する。
例えば図20(A)、図20(B)は、図2(A)のように表示部190の前方に立って、その体の動きにより操作情報を入力している操作者の様子を示す図である。図20(A)では、操作者は、自身の体(胴体)から手を離した状態で、手を動かすことで操作情報を入力している。一方、図20(B)では、自身の体に手が近い状態で、手を動かすことで操作情報を入力している。
図20(A)では、図18(A)に示すように手の関節と胸の関節は遠くなっているため、手の関節の信頼度は高くなり、手の位置情報等は、より確からしい情報になっている。一方、図20(B)では、手の関節と胸の関節は近くなっているため、手の関節の信頼度は低くなり、手の位置情報等は、図20(A)に比べて不確かな情報になっている。即ち図20(B)では、実際には胸の位置情報であるものを、手の位置情報として誤認識している可能性がある。
そして、本来は操作者は図20(A)のような状態の手の動きで操作すべきであるのに、図20(B)のような状態の手の動きでの操作を許容すると、操作者の操作をシステム側が誤認識してしまうおそれがある。即ち、システム側が認識した操作と、操作者が意図する操作との間に不一致が生じるおそれがある。
そこで本実施形態では、図20(B)のような不適切な操作状態になっていることを操作者に認知させるために、図21(A)、図21(B)に示すように信頼度情報に基づいて画像の表示態様を変化させている。
例えば図21(A)において、HR、HLは、操作者の手(広義には所定部位)に対応して表示部190に表示される手オブジェクト(アイコン、カーソル)である。またCHは、操作者に対応するキャラクタ(アバター)のオブジェクトである。
そして図20(A)のように操作者が手を動かすと、その手の動きに応じて図21(A)の手オブジェクトHR、HLが移動(又は動作)する。操作者は、手オブジェクトHR、HLを動かすことで、プレイしたいミニゲームを選択したり、ゲームのスタートを選択する。
そして図21(A)は、図20(A)のように手が体から離れた状態の時に表示される画像の例であり、図21(B)は、図20(B)のように手が体の近くにある状態の時に表示される画像の例である。
図20(A)のようにスケルトン情報の信頼度が高いと考えられる状態では、図21(A)に示すように、手オブジェクトHR、HLは、はっきりとした画像になる。一方、図20(B)のように、スケルトン情報の信頼度が低いと考えられる状態では、図21(B)に示すように、手オブジェクトHR、HLは、図21(A)に比べて例えばぼけた画像になったり、透明に近づいた画像になる。或いは手オブジェクトHR、HLの色が薄い色等に変化する。
このように本実施形態では、操作者の手の骨の情報の信頼度(所定部位に対応する骨の情報の信頼度)が低くなるにつれて、手(所定部位)に対応する手オブジェクトHR、HL(広義にはオブジェクト)をぼかす処理、透明に近づける処理、或いは色を変化させる処理などを行う。
ぼかし処理は、例えば手オブジェクトHR、HLに対してぼかしフィルタ等を適用することなどで実現できる。具体的には、バイリニアフィルタリングによるぼかし処理である線形テクスチャフィルタリングの手法や、何枚ものテクスチャを同時に使用するマルチテクスチャによるぼかし処理であるボックスフィルタサンプリングの手法などを採用できる。透明に近づける処理は、手オブジェクトHR、HLのα値を、透明に近いα値に変化させることで実現できる。色を変化させる処理は、手オブジェクトHR、HLをターゲット色に近づけることで実現できる。
なお手オブジェクトHR、HLの表示態様の変化処理は、これらの処理には限定されない。例えばスケルトン情報の信頼度が低くなるにつれて、手オブジェクトHR、HLの明度(輝度)を変化させる処理や、輪郭線の表示態様を変化させる処理や、サイズを変化させる処理や、オブジェクトHR、HLに施されるエフェクトを変化させる処理などを行ってもよい。例えば信頼度が低くなるにつれて、手オブジェクトHR、HLの明度を暗くしたり、輪郭線を薄くしたり、細くしたり、サイズを拡大又は縮小する。或いは、手オブジェクトHR、HLに施されるエフェクトを用いて、上述した処理と同等の映像効果を実現してもよい。或いはスケルトン情報の信頼度に応じて手オブジェクトHR、HLを変形させてもよい。またスケルトン情報の信頼度に基づいて、図21(A)、図21(B)のキャラクタCH(アバター)の画像の表示態様(ぼかし度、透明度、色等)を変化させてもよい。また、スケルトン情報の信頼度が低くなった場合に、信頼度が低くなったことを警告するアイコンオブジェクトを表示してもよい。
以上のように、信頼度に応じて手オブジェクトHR、HLの表示態様を変化させれば、手の操作についての信頼度が低下していることを、操作者は容易に把握できるようになる。例えば図20(B)のように手が体に近い状態で操作している場合には、図21(B)のように手オブジェクトHR、HLがぼけた画像になるため、これを見た操作者は、図20(A)のように手を伸ばして操作するようになる。従って、結局、操作者は、図20(A)のようにスケルトン情報の信頼度が高い状態で手を動かして操作を行うようになり、操作者の操作が誤認識されてしまう事態を抑止できる。従って、誤操作等が抑止され、快適な操作インターフェース環境を操作者に提供できる。
なお、以上では本実施形態の手法をゲーム装置に適用した場合について主に説明したが、本実施形態の手法はゲーム装置以外の種々の機器に適用できる。
例えば図22(A)は、映像機器の1つであるテレビ(表示装置)への本実施形態の手法の適用例である。図22(A)において、操作対象オブジェクトOBD、OBE、OBF、OBG、OBHは、操作者の操作の対象となるオブジェクトであり、例えば映像機器(又はゲーム装置)に対して操作指示を行うためのオブジェクトである。具体的には、映像機器(ゲーム装置)に対してコンテンツ選択、所定の機器動作、及びコンテンツ再生・記録の少なくも1つを操作指示するためのオブジェクトである。例えばOBD、OBE、OBFは、各々、チャンネル選択(広義にはコンテンツ選択)、ボリュームの操作(広義には機器動作の選択)、消音の操作(広義には機器動作の選択)を行うための操作対象オブジェクトである。OBG、OBHは、各々、コンテンツの再生・記録操作(プレイ、停止、早送り、巻き戻し、録画等)、放送種別(地上デジタル放送、衛星放送等)の選択操作を行うための操作対象オブジェクトである。
操作者は、チャンネルを切り替えたい場合には、表示部190の方に手を伸ばし、手オブジェクトHRの位置をチャンネル操作用の操作対象オブジェクトOBDの位置に合わせる。そして手を回すなどの操作を行うことで、チャンネルを切り替えて、所望の放送番組を視聴する。
また操作者は、ボリュームを変えたい場合には、手を伸ばして、手オブジェクトHRの位置をボリューム操作用の操作対象オブジェクトOBEの位置に合わせる。そして手を左右に動かすなどの操作を行うことで、音のボリュームを変更する。同様に消音を行いたい場合には、手オブジェクトHRの位置を消音操作用の操作対象オブジェクトOBFの位置に合わせて、手の指で押すなどの操作を行うことで、音声を消音する。操作対象オブジェクトOBG、OBHの操作も同様にして実現できる。
そして、操作者が手を伸ばしており、右手と左手が交差していないというように、スケルトン情報の信頼度が高い場合には、図22(A)に示すように操作対象オブジェクトOBD〜OBHや手オブジェクトHR、HLは、はっきりとした画像で表示部190に映し出される。
また、スケルトン情報の信頼度が高い場合には、操作対象オブジェクトOBD〜OBHの操作が許可され、操作者の手等の動きに応じて操作対象オブジェクトOBD〜OBHが操作されるようになる。即ち、操作者は、手を回したり、手を左右に動かすことで、チャンネル用の操作対象オブジェクトOBDを操作したり、ボリューム用の操作対象オブジェクトOBEを操作できる。
一方、操作者の手が体の近くにあったり、右手と左手が交差しているというように、スケルトン情報の信頼度が低い場合には、図22(B)に示すように、操作対象オブジェクトOBD〜OBHや手オブジェクトHR、HLは、ぼかした画像や透明に近い画像(或いは透明な画像)になる。即ち、信頼度情報に基づいて操作対象オブジェクトOBD〜OBHや手オブジェクトHR、HLの表示態様が変化し、信頼度が低い場合には、操作対象オブジェクトOBD〜OBHに対してぼかし処理、透明に近づける処理などが行われるようになる。
また、信頼度が低い場合には、操作対象オブジェクトOBD〜OBHに対する操作者の操作が制限又は不許可にされる。即ち、操作者が、手を回したり、手を左右に動かしても、チャンネル用の操作対象オブジェクトOBDやボリューム用の操作対象オブジェクトOBEに対する操作は実行されない。
このようにすれば、例えば操作者が手を伸ばすことで、図22(A)に示すように操作対象オブジェクトOBD〜OBHが画面に映し出され、これらの操作対象オブジェクトOBD〜OBHを操作することで、コンテンツ(映像、音)選択の操作や、機器動作の操作や、コンテンツ再生・記録の操作を行うことが可能になる。
一方、操作者が手を体の方に近づけて曲げる等の動きをすると、図22(B)に示すように操作対象オブジェクトOBD〜OBHがぼけて薄い画像になったり、透明になって見えないようになる。従って、画面上において操作対象オブジェクトOBD〜OBHが目立たなくなり、操作者は、映像等のコンテンツの視聴を妨げられることなく楽しめるようになる。
以上のように本実施形態では、スケルトン情報の信頼度が低くなった場合には、操作対象オブジェクトOBD〜OBHに対する操作者の操作が制限又は不許可にされる。一方、信頼度が高くなった場合には、操作対象オブジェクトOBD〜OBHに対する操作者の操作が許可される。従って、これまでにないタイプの操作インターフェース環境を操作者に提供できる。
そして図22(A)、図22(B)に示すような操作インターフェース環境を実現した場合に、操作者が大人であった場合と子供であった場合とで、手オブジェクトHR、HLの移動範囲が異なってしまうと、操作者にとって使いにくいインターフェース環境になってしまうおそれがある。
この点、本実施形態では、前述したような補正処理を行っているため、操作者の個人差に依存せずに、手オブジェクトHR、HLの移動範囲を同じ範囲に設定することができ、広い範囲に設定することが可能になる。従って、操作者にとって使いやすいインターフェース環境を提供することができ、操作者の利便性等を向上できる。
図23(A)、図23(B)は、映像機器の1つである録画・再生機器(HDDレコーダ、DVDレコーダ等)への本実施形態の手法の適用例である。例えば図23(A)に示すように、操作者が手を伸ばしていない状態で、例えば左手オブジェクトHLで番組表を選択すると、番組表の概略表示が行われる。この時、右手、左手オブジェクトHR、HLは、信頼度が低いため、ぼけた画像や透明に近い画像になっている。
一方、図23(B)では、操作者が手を伸ばしており、信頼度が高いため、右手、左手オブジェクトHR、HLは、はっきりとした画像になっている。また、番組表の詳細が表示されると共に、例えば番組表において右手オブジェクトHRにより選択された番組の録画等を、左手オブジェクトHLで選択できるようになる。また、左手オブジェクトHLにより、録画の画質(HD、HP、LP、SP)や放送番組の種別(地上デジタル放送、衛星放送、CATV)についても、選択できるようになる。更に、右手オブジェクトHRにより選択された番組の内容も詳細に表示されるようになる。
そして図23(A)、図23(B)では、右手操作用の第1の移動エリアAR1と、左手操作用の第2の移動エリアAR2が設けられている。また移動エリアAR1、AR2の間には移動制限境界BLCが設定されている。
従って、図24(A)に示す操作者は、その右手を動かすことで、図23(A)、図23(B)の右側の移動エリアAR1において、右手オブジェクトHRを移動させ、移動エリアAR1(第1の操作エリア)に割り当てられた様々な操作指示を行うことが可能になる。また操作者は、その左手を動かすことで、左側の移動エリアAR2において、左手オブジェクトHLを移動させ、移動エリアAR2(第2の操作エリア)に割り当てられた様々な操作指示を行うことが可能になる。
そして図23(A)、図23(B)では、移動エリアAR1、AR2の間には移動制限境界BLCが設けられている。従って、図24(B)に示すように操作者が右手と左手を交差させるなどの不適切な動きをした場合にも、右手オブジェクトHRが左側の移動エリアAR2側に侵入したり、左手オブジェクトHLが右側の移動エリアAR1側に侵入したりするなどの事態を防止できる。
また、図24()に示すように操作者が右手と左手を交差させると、右手、左手についての信頼度情報が低下し、図23(A)のように右手オブジェクトHR、HLの画像がぼけた画像になるなどして、その表示態様が変化する。従って、操作者は、図24(B)のような不適切な動きをしてしまっていることを、迅速且つ容易に把握できるたようになるめ、操作者の操作インターフェース環境を向上できる。
2.5 詳細な処理例
次に本実施形態の詳細な処理例について図25、図26のフローチャートを用いて説明する。図25は、移動制限境界を用いたオブジェクトの移動制御を行って画像を生成する処理の具体例を示すフローチャートである。
まず、図2(A)、図2(B)で説明したように画像センサからの画像情報を取得する(ステップS1)。次に、図3で説明したように、画像情報に基づきスケルトン情報を取得する(ステップS2)。
次に、図12(A)〜図16(B)等で説明したように、体格情報、アスペクト比情報を用いて、スケルトン情報の骨の位置情報についての補正処理を行って、補正位置情報を求める(ステップS3)。そして、求められた補正位置情報により手オブジェクトの描画位置を求める(ステップS4)。
次に、求められた描画位置が移動制限境界を越えているか否かを判断する(ステップS5)。そして、超えている場合には、図9で説明した手法等により、移動制限境界を超えない位置に、描画位置を再設定する(ステップS6)。そして、求められた描画位置等に基づいて、手オブジェクト、キャラクタ等の描画処理を行う(ステップS7)。
図26は、信頼度情報を用いた画像の表示態様の変化処理の具体例を示すフローチャートである。
まず、スケルトン情報の手の骨(関節)の位置等に基づき、手オブジェクトの描画位置を求める(ステップS11)。そして手の骨等についての信頼度を取得する(ステップS12)。
次に、取得された信頼度に基づいて、手オブジェクトのぼかし度合、α値、色等を設定する(ステップS13)。そして、このようにぼかし度合、α値、色等が設定された手オブジェクト、キャラクタ等の描画処理を実行する(ステップS14)。このようにすることで、図21(A)、図21(B)に示すような画像の表示態様の変化処理を実現できる。
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(動き情報、所定部位、オブジェクト等)と共に記載された用語(スケルトン情報、手、手オブジェクト等)は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、移動制限境界を用いたオブジェクトの制御手法、オブジェクトの移動制限手法、スケルトン情報の取得手法、スケルトン情報についての補正処理手法、信頼度情報の取得手法、画像の表示態様の変化手法等も本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。また本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話、映像機器、音響機器、家電機器等の種々の画像生成システムに適用できる。
ISE 画像センサ、SC 画面(スクリーン)、HL、HR 手オブジェクト、
CH、CH1、CH2 キャラクタ(アバター)、C0〜C19 関節(骨)、
OB、OBJ、OBJ1〜OBJ4、OBA〜OBH オブジェクト、
DR1、DR2 第1、第2の方向、θY、θX DR1とDR2のなす角度、
100 処理部、102 画像情報取得部、104 動き情報取得部、
105 スケルトン情報取得部、106 信頼度情報取得部、108 補正処理部、
110 ゲーム演算部、112 オブジェクト空間設定部、114 オブジェクト制御部、
118 仮想カメラ制御部、120 画像生成部、130 音生成部、
160 操作部、170 記憶部、171 画像情報記憶部、
172 カラー画像情報記憶部、173 デプス情報記憶部、
174 スケルトン情報記憶部、175 信頼度情報記憶部、
176 オブジェクトデータ記憶部、177 モーションデータ記憶部、
178 モデルデータ記憶部、179 描画バッファ、180 情報記憶媒体、
190 表示部、192 音出力部、194 補助記憶装置、196 通信部

Claims (16)

  1. 画像センサからの画像情報を取得する画像情報取得部と、
    前記画像センサからの前記画像情報に基づいて、操作者の動き情報を取得する動き情報取得部と、
    前記操作者の前記動き情報に基づいてオブジェクトを移動エリアにおいて移動させる制御を行うオブジェクト制御部と、
    表示部に表示される画像を生成する画像生成部として、
    コンピュータを機能させ、
    前記オブジェクト制御部は、
    前記移動エリアに設定された移動制限境界を前記オブジェクトが越えと前記動き情報に基づき判断された場合に、前記移動制限境界を超えて前記オブジェクトが移動することを制限する制御を行い、
    前記移動エリアとして、第1の移動エリアと第2の移動エリアが設定され、
    前記オブジェクト制御部は、
    前記第1の移動エリアにおいて第1のオブジェクトが移動し、前記第2の移動エリアにおいて第2のオブジェクトが移動する制御を行うと共に、
    前記第1の移動エリアと前記第2の移動エリアの間に設定された前記移動制限境界を超えて、前記第1、第2のオブジェクトが移動することを制限する制御を行うことを特徴とするプログラム。
  2. 請求項1において、
    前記オブジェクト制御部は、
    前記オブジェクトの接触対象となる複数の接触対象オブジェクトに対応して設定された前記移動制限境界を超えて、前記オブジェクトが移動することを制限する制御を行うことを特徴とするプログラム。
  3. 請求項2において、
    前記複数の接触対象オブジェクトは、前記移動制限境界の前記オブジェクト側のエリアに配置設定され、
    前記オブジェクト制御部は、
    前記複数の接触対象オブジェクトに外接するように設定された前記移動制限境界を超えて、前記オブジェクトが移動することを制限する制御を行うことを特徴とするプログラム。
  4. 請求項1乃至3のいずれかにおいて、
    前記オブジェクト制御部は、
    前記操作者の第1の部位の前記動き情報に基づいて、前記第1の移動エリアでの前記第1のオブジェクトの移動を制御し、前記操作者の第2の部位の前記動き情報に基づいて、前記第2の移動エリアでの前記第2のオブジェクトの移動を制御することを特徴とするプログラム。
  5. 請求項1乃至のいずれかにおいて、
    前記オブジェクト制御部は、
    前記表示部の画面の端辺に対応して設けられた画面端辺用の移動制限境界を超えて、前記オブジェクトが移動することを制限する制御を行うことを特徴とするプログラム。
  6. 請求項において、
    前記画面端辺用の移動制限境界は前記画面の端辺の外側に設けられていることを特徴とするプログラム。
  7. 請求項において、
    前記画面端辺用の移動制限境界と前記画面の端辺との距離は、前記オブジェクトの幅よりも短いことを特徴とするプログラム。
  8. 請求項1乃至のいずれかにおいて、
    前記動き情報取得部は、
    前記動き情報として、前記操作者の動作を特定するスケルトン情報を取得し、
    前記オブジェクト制御部は、
    前記スケルトン情報に基づいて前記移動エリアで前記オブジェクトを移動させる制御を行うことを特徴とするプログラム。
  9. 請求項において、
    前記スケルトン情報で表されるスケルトンの骨の位置情報についての補正処理を行う補正処理部として、
    コンピュータを機能させ、
    前記オブジェクト制御部は、
    前記補正処理の結果に基づいて前記オブジェクトの制御を行うことを特徴とするプログラム。
  10. 請求項において、
    前記補正処理部は、
    前記スケルトンの骨の位置情報の補正処理を行って、補正位置情報を求め、
    前記オブジェクト制御部は、
    前記補正位置情報に基づいて、前記オブジェクトの制御を行い、
    前記画像生成部は、
    前記補正位置情報に対応する画面上の表示位置に前記オブジェクトが表示される画像を生成することを特徴とするプログラム。
  11. 請求項9又は10において、
    前記補正処理部は、
    第1の操作者のスケルトンの状態が第1の状態である時の前記オブジェクトの表示位置と、第2の操作者のスケルトンの状態が前記第1の状態である時の前記オブジェクトの表示位置とが同じ位置になるように前記補正処理を行うことを特徴とするプログラム。
  12. 請求項9乃至11のいずれかにおいて、
    前記補正処理部は、
    前記操作者の体格情報を用いて前記補正処理を行うことを特徴とするプログラム。
  13. 請求項8乃至12のいずれかにおいて、
    前記スケルトン情報の信頼度を表す信頼度情報を取得する信頼度情報取得部として、
    コンピュータを機能させ、
    前記画像生成部は、
    前記表示部に表示される画像として、取得された前記信頼度情報に応じた画像を生成することを特徴とするプログラム。
  14. 請求項13において、
    前記画像生成部は、
    前記信頼度情報に基づいて、前記表示部に表示される画像の表示態様を変化させることを特徴とするプログラム。
  15. コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至14のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
  16. 画像センサからの画像情報を取得する画像情報取得部と、
    前記画像センサからの前記画像情報に基づいて、操作者の動き情報を取得する動き情報取得部と、
    前記操作者の前記動き情報に基づいてオブジェクトを移動エリアにおいて移動させる制御を行うオブジェクト制御部と、
    表示部に表示される画像を生成する画像生成部とを含み、
    前記オブジェクト制御部は、
    前記移動エリアに設定された移動制限境界を前記オブジェクトが越えと前記動き情報に基づき判断された場合に、前記移動制限境界を超えて前記オブジェクトが移動することを制限する制御を行い、
    前記移動エリアとして、第1の移動エリアと第2の移動エリアが設定され、
    前記オブジェクト制御部は、
    前記第1の移動エリアにおいて第1のオブジェクトが移動し、前記第2の移動エリアにおいて第2のオブジェクトが移動する制御を行うと共に、
    前記第1の移動エリアと前記第2の移動エリアの間に設定された前記移動制限境界を超えて、前記第1、第2のオブジェクトが移動することを制限する制御を行うことを特徴とする画像生成システム。
JP2010134585A 2010-06-11 2010-06-11 プログラム、情報記憶媒体及び画像生成システム Active JP5148660B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010134585A JP5148660B2 (ja) 2010-06-11 2010-06-11 プログラム、情報記憶媒体及び画像生成システム
EP11169649.8A EP2394718A3 (en) 2010-06-11 2011-06-10 Image generation system, image generation method, and information storage medium for video games
US13/158,000 US8854304B2 (en) 2010-06-11 2011-06-10 Image generation system, image generation method, and information storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010134585A JP5148660B2 (ja) 2010-06-11 2010-06-11 プログラム、情報記憶媒体及び画像生成システム

Publications (2)

Publication Number Publication Date
JP2011258161A JP2011258161A (ja) 2011-12-22
JP5148660B2 true JP5148660B2 (ja) 2013-02-20

Family

ID=44650480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010134585A Active JP5148660B2 (ja) 2010-06-11 2010-06-11 プログラム、情報記憶媒体及び画像生成システム

Country Status (3)

Country Link
US (1) US8854304B2 (ja)
EP (1) EP2394718A3 (ja)
JP (1) JP5148660B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024232503A1 (ko) * 2023-05-09 2024-11-14 삼성전자주식회사 제스쳐를 이용하여 가상 객체를 이동하기 위한 웨어러블 장치 및 그 방법

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9207717B2 (en) 2010-10-01 2015-12-08 Z124 Dragging an application to a screen using the application manager
US9457256B2 (en) 2010-11-05 2016-10-04 Nike, Inc. Method and system for automated personal training that includes training programs
WO2012061804A1 (en) 2010-11-05 2012-05-10 Nike International Ltd. Method and system for automated personal training
US9977874B2 (en) * 2011-11-07 2018-05-22 Nike, Inc. User interface for remote joint workout session
US9852271B2 (en) 2010-12-13 2017-12-26 Nike, Inc. Processing data of a user performing an athletic activity to estimate energy expenditure
US12334204B2 (en) * 2010-11-05 2025-06-17 Nike, Inc. User interface for remote joint workout session
US9283429B2 (en) * 2010-11-05 2016-03-15 Nike, Inc. Method and system for automated personal training
US10420982B2 (en) 2010-12-13 2019-09-24 Nike, Inc. Fitness training system with energy expenditure calculation that uses a form factor
US20130080932A1 (en) 2011-09-27 2013-03-28 Sanjiv Sirpal Secondary single screen mode activation through user interface toggle
US9811639B2 (en) 2011-11-07 2017-11-07 Nike, Inc. User interface and fitness meters for remote joint workout session
WO2013074939A2 (en) * 2011-11-18 2013-05-23 Arginsky, Irwin System and method for monitoring the use of an exercise apparatus
US9423877B2 (en) 2012-02-24 2016-08-23 Amazon Technologies, Inc. Navigation approaches for multi-dimensional input
JP6185053B2 (ja) 2012-06-04 2017-08-23 ナイキ イノベイト シーブイ フィットネスサブスコアとアスレチックサブスコアを含む組み合わせスコア
JP5651639B2 (ja) * 2012-06-29 2015-01-14 株式会社東芝 情報処理装置、情報表示装置、情報処理方法およびプログラム
JP6014162B2 (ja) * 2012-11-08 2016-10-25 アルプス電気株式会社 入力装置
JP5856045B2 (ja) * 2012-12-26 2016-02-09 三井ホーム株式会社 住宅設備制御装置
CN103226387B (zh) * 2013-04-07 2016-06-22 华南理工大学 基于Kinect的视频人手指尖定位方法
KR102265143B1 (ko) * 2014-05-16 2021-06-15 삼성전자주식회사 입력 처리 장치 및 방법
JP6560074B2 (ja) * 2015-09-16 2019-08-14 グリー株式会社 ゲーム処理プログラム、ゲーム処理装置及びゲーム処理方法
JP6736944B2 (ja) 2016-03-29 2020-08-05 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
JP6140871B1 (ja) * 2016-08-09 2017-05-31 株式会社コロプラ 情報処理方法及び当該情報処理方法をコンピュータに実行させるためのプログラム
US10255658B2 (en) * 2016-08-09 2019-04-09 Colopl, Inc. Information processing method and program for executing the information processing method on computer
JP2018101019A (ja) * 2016-12-19 2018-06-28 セイコーエプソン株式会社 表示装置及び表示装置の制御方法
JP6470356B2 (ja) * 2017-07-21 2019-02-13 株式会社コロプラ 仮想空間を提供するコンピュータで実行されるプログラム、方法、および当該プログラムを実行する情報処理装置
US10916059B2 (en) * 2017-12-06 2021-02-09 Universal City Studios Llc Interactive video game system having an augmented virtual representation
US11297296B2 (en) * 2018-05-30 2022-04-05 Sony Corporation Display control apparatus, program, and display control method
US11338438B2 (en) * 2019-01-25 2022-05-24 Bear Robotics, Inc. Method, system and non-transitory computer-readable recording medium for determining a movement path of a robot
JP7546877B2 (ja) * 2019-12-23 2024-09-09 株式会社タニタ ゲーム装置及びプログラム
JP2023087130A (ja) 2020-05-18 2023-06-23 ソニーグループ株式会社 情報処理装置、情報処理方法、およびプログラム
JP7421452B2 (ja) * 2020-09-02 2024-01-24 株式会社日立国際電気 骨格検出システム
JP7379302B2 (ja) * 2020-09-09 2023-11-14 高木 りか 姿勢評価プログラム、姿勢評価装置、姿勢評価方法、及び姿勢評価システム。
JP2022096252A (ja) * 2020-12-17 2022-06-29 シャープ株式会社 表示装置、表示方法、及び表示プログラム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5594469A (en) 1995-02-21 1997-01-14 Mitsubishi Electric Information Technology Center America Inc. Hand gesture machine control system
JP3819096B2 (ja) * 1997-01-22 2006-09-06 株式会社東芝 ユーザインタフェース装置及び操作範囲呈示方法
US6266061B1 (en) 1997-01-22 2001-07-24 Kabushiki Kaisha Toshiba User interface apparatus and operation range presenting method
US9177387B2 (en) * 2003-02-11 2015-11-03 Sony Computer Entertainment Inc. Method and apparatus for real time motion capture
JP3746060B2 (ja) * 2004-07-20 2006-02-15 コナミ株式会社 ゲーム装置、コンピュータの制御方法及びプログラム
US20090305207A1 (en) * 2005-12-12 2009-12-10 Hiromu Ueshima Training method, training device, and coordination training method
JP5085112B2 (ja) 2006-12-01 2012-11-28 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及びゲーム装置
US8284157B2 (en) * 2010-01-15 2012-10-09 Microsoft Corporation Directed performance in motion capture system
JP5039808B2 (ja) * 2010-03-16 2012-10-03 株式会社コナミデジタルエンタテインメント ゲーム装置、ゲーム装置の制御方法、及びプログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024232503A1 (ko) * 2023-05-09 2024-11-14 삼성전자주식회사 제스쳐를 이용하여 가상 객체를 이동하기 위한 웨어러블 장치 및 그 방법

Also Published As

Publication number Publication date
JP2011258161A (ja) 2011-12-22
US8854304B2 (en) 2014-10-07
US20110304540A1 (en) 2011-12-15
EP2394718A2 (en) 2011-12-14
EP2394718A3 (en) 2014-02-12

Similar Documents

Publication Publication Date Title
JP5148660B2 (ja) プログラム、情報記憶媒体及び画像生成システム
US8655015B2 (en) Image generation system, image generation method, and information storage medium
US8559677B2 (en) Image generation system, image generation method, and information storage medium
US8520901B2 (en) Image generation system, image generation method, and information storage medium
CN109690633B (zh) 模拟系统、处理方法以及信息存储介质
EP2662838B1 (en) Apparatus and method for augmented reality
JP2011258158A (ja) プログラム、情報記憶媒体及び画像生成システム
EP2395454A2 (en) Image generation system, shape recognition method, and information storage medium
KR20050061607A (ko) 게임 화상의 표시 제어 프로그램 및 게임 장치 및 기억매체
US10860089B2 (en) Method of suppressing VR sickness, system for executing the method, and information processing device
US20190114841A1 (en) Method, program and apparatus for providing virtual experience
JP7576591B2 (ja) 設定装置、設定方法及びプログラム
US20220152475A1 (en) Boundary display control device, boundary display control method, and program
JP2025114850A (ja) エンターテインメントシステム及びプログラム
JP5213913B2 (ja) プログラム及び画像生成システム
JP2022090964A (ja) ゲームプログラム、ゲーム処理方法、及びゲーム装置
KR102772657B1 (ko) 게임 프로그램, 게임 처리 방법 및 게임 장치
JP2022090965A (ja) ゲームプログラム、ゲーム処理方法、及びゲーム装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120717

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120724

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120924

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121113

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121128

R150 Certificate of patent or registration of utility model

Ref document number: 5148660

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151207

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250