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

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

Info

Publication number
JP2011258159A
JP2011258159A JP2010134583A JP2010134583A JP2011258159A JP 2011258159 A JP2011258159 A JP 2011258159A JP 2010134583 A JP2010134583 A JP 2010134583A JP 2010134583 A JP2010134583 A JP 2010134583A JP 2011258159 A JP2011258159 A JP 2011258159A
Authority
JP
Japan
Prior art keywords
information
operator
image
skeleton
unit
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.)
Pending
Application number
JP2010134583A
Other languages
English (en)
Inventor
Yasuhiro Nishimoto
泰大 西本
Chihiro Ozasa
千紘 小笹
Tadatsugu Sakakibara
忠嗣 榊原
Daisuke Sekioka
大翼 関岡
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.)
Bandai Namco Entertainment Inc
Original Assignee
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 Namco Bandai Games Inc filed Critical Namco Bandai Games Inc
Priority to JP2010134583A priority Critical patent/JP2011258159A/ja
Priority to US13/158,003 priority patent/US8655015B2/en
Priority to EP11169647A priority patent/EP2394711A1/en
Publication of JP2011258159A publication Critical patent/JP2011258159A/ja
Pending legal-status Critical Current

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
    • A63F13/428Processing 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 involving motion or position input signals, e.g. signals representing the rotation of an input controller or a player's arm motions sensed by accelerometers or gyroscopes
    • 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/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
    • A63F13/422Processing 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 automatically for the purpose of assisting the player, e.g. automatic braking in a driving game
    • 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; CALCULATING OR 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • 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/50Features 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 details of game servers
    • A63F2300/55Details of game data or player data management
    • A63F2300/5546Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history
    • A63F2300/5553Details of game data or player data management using player registration data, e.g. identification, account, preferences, game history user representation in the game field, e.g. avatar
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】操作者のスケルトン情報を利用した多様な画像を生成できるプログラム、情報記憶媒体、画像生成システム等の提供。
【解決手段】画像生成システムは、画像センサからの画像情報を取得する画像情報取得部と、画像センサからの画像情報に基づいて、画像センサから見える操作者の動作を特定するスケルトン情報を取得するスケルトン情報取得部と、スケルトン情報で表されるスケルトンの骨の位置情報についての補正処理を行う補正処理部と、補正処理の結果に応じた画像を生成する画像生成部を含む。
【選択図】図5

Description

本発明は、プログラム、情報記憶媒体及び画像生成システム等に関する。
近年、従来の操作ボタンや方向キーを備えたコントローラに代わって、モーションセンサを内蔵するコントローラを用いて操作が可能なゲーム装置が人気を博している。このような操作インターフェースを備えるゲーム装置によれば、操作者(プレーヤ、ユーザ)の直感的な操作入力が可能になり、ゲーム操作の簡素化等を図れる。このような直感的なインターフェースを可能にするゲーム装置の従来技術としては例えば特許文献1に開示される技術がある。
一方、このような直感的なインターフェースを実現する他の手法として、画像センサにより操作者を撮像して、操作者の動きによる操作入力を実現する手法が考えられる。
しかしながら、操作者には、身長差や年齢差などの個人差があり、このような多様な操作者に対応しながら、操作者の操作入力を適切に認識することは容易ではない。
特開2008−1336695号公報
本発明の幾つかの態様によれば、操作者のスケルトン情報を利用した多様な画像を生成できるプログラム、情報記憶媒体、画像生成システム等の提供。プログラム、情報記憶媒体、画像生成システム等を提供できる。
本発明の一態様は、画像センサからの画像情報を取得する画像情報取得部と、前記画像センサからの前記画像情報に基づいて、前記画像センサから見える操作者の動作を特定するスケルトン情報を取得するスケルトン情報取得部と、前記スケルトン情報で表されるスケルトンの骨の位置情報についての補正処理を行う補正処理部と、前記補正処理の結果に応じた画像を生成する画像生成部とを含む画像生成システムに関係する。また本発明は、上記各部としてコンピュータを機能させるプログラム、又は該プログラムを記憶したコンピュータ読み取り可能な情報記憶媒体に関係する。
本発明の一態様では、画像センサから画像情報が取得され、画像情報から操作者のスケルトン情報が取得される。そしてスケルトン情報で表されるスケルトンの骨の位置情報についての補正処理が行われ、補正処理の結果に応じた画像が生成される。従って、操作者のスケルトン情報を利用して、多様な画像を生成できるようになり、例えば、体格等が異なる多様な操作者に対応等することも可能になる。
また本発明の一態様では、前記操作者の動きに応じて移動又は動作するオブジェクトの制御を行うオブジェクト制御部を含み(オブジェクト制御部としてコンピュータを機能させ)、前記オブジェクト制御部は、前記補正処理の結果に基づいて前記オブジェクトの制御を行ってもよい。
このようにすれば、スケルトンの骨の位置情報についての補正処理の結果を反映させたオブジェクト制御を実現できるようになる。
また本発明の一態様では、前記補正処理部は、前記スケルトンの骨の位置情報の補正処理を行って、補正位置情報を求め、前記オブジェクト制御部は、前記補正位置情報に基づいて、前記オブジェクトの制御を行い、前記画像生成部は、前記補正位置情報に対応する画面上の表示位置に前記オブジェクトが表示される画像を生成してもよい。
このようにすれば、スケルトンの骨の位置情報の補正処理を行って、求められた補正位置情報に対応する表示位置にオブジェクトを表示できるようになる。
また本発明の一態様では、前記オブジェクトは、前記操作者の所定部位の動きに応じて移動するオブジェクトであってもよい。
このようにすれば、操作者の所定部位の動きに応じてオブジェクトを移動させることができると共に、そのオブジェクトの移動等の制御に補正処理の結果を反映させることが可能になる。
また本発明の一態様では、前記所定部位は前記操作者の手であり、前記オブジェクトは、前記操作者の手の動きに応じて移動する手オブジェクトであってもよい。
このようにすれば、操作者の手の動きに応じて手オブジェクトを移動させることができると共に、その手オブジェクトの移動等の制御に補正処理の結果を反映させることが可能になる。
また本発明の一態様では、前記オブジェクト制御部は、第1のモードでは、前記補正処理の結果を用いてオブジェクトの制御を行い、第2のモードでは、前記補正処理の結果を用いずに、前記スケルトン情報を用いてオブジェクトの制御を行ってもよい。
このような第1、第2のモードを設けることで、ゲームの種類等に応じた適切なオブジェクト制御を効率的に実現できる。
また本発明の一態様では、前記補正処理部は、第1の操作者のスケルトンの状態が第1の状態である時の前記オブジェクトの表示位置と、第2の操作者のスケルトンの状態が前記第1の状態である時の前記オブジェクトの表示位置とが同じ位置になるように前記補正処理を行ってもよい。
このようにすれば、操作者が第1の操作者であるか第2の操作者であるかに依存しないオブジェクト制御を実現できる。
また本発明の一態様では、前記補正処理部は、前記操作者の体格情報を用いて前記補正処理を行ってもよい。
このようにすれば、操作者の体格情報を補正処理に反映させることが可能になり、操作者の体格等の違いを吸収した補正処理を実現できる。
また本発明の一態様では、前記補正処理部は、前記スケルトンの第1の関節と第2の関節の間の関節間距離情報を、前記体格情報として用いて、前記補正処理を行ってもよい。
このようにすれば、例えばスケルトン情報から、関節間距離情報を体格情報として取得して、操作者の体格等の違いを吸収した補正処理を実現できる。
また本発明の一態様では、前記補正処理部は、複数フレームに亘って取得された前記関節間距離情報から得られる距離情報を、前記体格情報として用いて、前記補正処理を行ってもよい。
このようにすれば、特異な関節間距離情報が得られた場合にも、これに対処して、適正な補正処理を実現できる。
また本発明の一態様では、前記補正処理部は、前記操作者の位置と前記画像センサとを結ぶ第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)は第1、第2の方向のなす角度を用いた補正処理の説明図。 図9(A)、図9(B)は補正移動量情報に基づくゲーム演算処理の説明図。 図10(A)、図10(B)は第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)は信頼度の説明図。 図17(A)、図17(B)は操作者の操作動作を示す図。 図18(A)、図18(B)は信頼度情報に基づき画像の表示態様を変化させる手法の説明図。 図19(A)、図19(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が操作者の動き情報を取得する。そして補正処理部108が、この動き情報についての補正処理を行う。
ここで動き情報としては、例えば動きベクトルなどのオプティカルフローの情報や、操作者の部位の動きを表す情報や、操作者のスケルトン情報などを想定できる。オプティカルフローの情報は、画像センサの撮像画像での操作者の動きを動きベクトルで表現した情報である。操作者の部位の動きを表す情報は、操作者の各部位がどのように動いているかを特定するための情報である。またスケルトン情報は、画像センサから見える操作者の動作を特定するための情報であり、操作者の複数の関節に対応する複数の関節位置情報を有し、各関節位置情報は3次元座標情報により構成される。各関節を結合するものが骨(ボーン)となり、複数の骨の結合によりスケルトンが構成される。関節位置情報は骨の位置情報として用いられる。
例えばスケルトン情報取得部105は、画像センサからの画像情報に基づいて、操作者のスケルトン情報を取得する。すると、補正処理部108は、スケルトン情報で表されるスケルトンの骨の位置情報(関節位置情報)についての補正処理を行い、画像生成部120は、この補正処理の結果に応じた画像を生成する。ここで、骨の位置情報についての補正処理は、骨の位置情報自体の補正処理であってもよいし、他の情報を補正することで、骨の位置情報自体を補正するのと同様の効果が得られる補正処理であってもよい。例えば骨の位置情報についての補正処理には、スケルトンの全体的な形状を変形するような補正手法も含まれる。また画像生成部120は、このような補正処理の結果が反映された画像を生成して、表示部190に表示する。
例えばオブジェクト制御部114は、操作者の動きに応じて移動又は動作するオブジェクトの制御を行う。ここでオブジェクトは2次元オブジェクトであってもよいし、3次元オブジェクトであってもよい。そしてオブジェクト制御部114は、補正処理の結果に基づいてオブジェクトの制御を行う。
具体的には、補正処理部108は、スケルトンの骨の位置情報(関節位置情報)の補正処理を行って、補正位置情報を求める。するとオブジェクト制御部114は、補正処理により得られた補正位置情報に基づいて、オブジェクトの制御を行う。例えば補正位置情報に基づいて、オブジェクトの描画位置などを決定する。そして画像生成部120は、補正位置情報に対応する画面上の表示位置にオブジェクトが表示される画像を生成する。このようにすることで、補正処理の結果に応じた画像(補正処理が反映された画像)が生成されるようになる。
ここで、オブジェクトは、操作者の所定部位(例えば手、足等)の動きに応じて移動するオブジェクトである。具体的には、所定部位は操作者の手であり、オブジェクトは、操作者の手の動きに応じて移動する手オブジェクト(アイコン、カーソル)である。
またオブジェクト制御部114は、第1のモード(第1の種類のゲーム)では、補正処理の結果を用いてオブジェクトの制御を行う。例えば補正処理により補正位置情報等を求めて、この補正位置情報等に基づいて、オブジェクトを移動、動作させる制御を行う。
一方、第2のモード(第2の種類のゲーム)では、補正処理の結果を用いずに、スケルトン情報を用いてオブジェクトの制御を行う。例えばオブジェクトがキャラクタである場合には、画像センサからの画像情報により得られるスケルトン情報により、キャラクタのモーションを特定し、特定されたモーションでキャラクタを動作させる制御を行う。この場合に、スケルトン情報により設定されるモーションデータをそのまま用いて、キャラクタのモーション再生を行ってもよい。或いは、複数のモーションパターンの中から、取得されたスケルトン情報に対応するモーションパターンを選択し、選択されたモーションパターンのモーションデータで、キャラクタのモーション再生を行ってもよい。
また補正処理部108は、第1の操作者のスケルトンの状態が第1の状態である時のオブジェクトの表示位置と、第2の操作者のスケルトンの状態が第1の状態である時のオブジェクトの表示位置とが同じ位置になるように補正処理を行う。例えば第1の操作者が大人であり、第2の操作者が子供である場合に、その大人のスケルトンが第1の状態(例えば右手を上げるなどの姿勢状態)である時のオブジェクト(例えば右手オブジェクト)の表示位置と、その子供が同じ姿勢状態である時のオブジェクトの表示位置とが同じ位置になるように、補正処理を行う。
また補正処理部108は、操作者の体格情報を用いて補正処理を行ってもよい。体格情報は、操作者の体の大きさや体型等を表す情報である。具体的には、補正処理部108は、スケルトンの第1の関節(例えば肩の関節)と第2の関節(例えば手の関節)の間の関節距離情報を、体格情報として用いて、補正処理を行う。或いは、複数フレームに亘って取得された関節間距離情報から得られる距離情報を、体格情報として用いて、補正処理を行ってもよい。例えば複数フレーム分の関節間距離情報の平均化処理を行い、平均化処理により得られた距離情報を用いて補正処理を行う。
また補正処理部108は、操作者の位置(代表位置)と画像センサとを結ぶ第1の方向と、操作者の位置と所定部位(例えば手、足)に対応する関節の位置とを結ぶ第2の方向とのなす角度を求めて、補正処理を行ってもよい。例えば求められた角度に基づいて、オブジェクトの表示位置を求める。このようにすることで、骨の位置情報の補正位置情報を直接求めなくても、オブジェクトの描画位置を求めることが可能になる。
またゲーム演算部110が、補正処理の結果(補正位置情報、第1、第2の方向のなす角度等)に応じたゲーム演算処理を行ってもよい。そして画像生成部120が、このゲーム演算処理の結果に基づいて画像を生成することで、補正処理の結果に応じた画像(補正処理を反映させた画像)が生成されるようになる。例えばゲーム演算部110は、ゲーム演算処理として、補正処理の結果に応じたゲーム結果演算処理を行う。即ち、ゲーム結果の演算に、補正処理の結果を反映させる。具体的には補正処理部108は、スケルトンの骨の位置の移動量情報についての補正処理を行って、補正移動量情報を求める。するとゲーム演算部110は、補正移動量情報に基づいてゲーム結果演算処理を行う。例えば補正移動量情報を利用してゲーム結果を調整することで、大人と子供などの個人差で不利が生じないようにする。なお、この場合の移動量情報は、例えば所定時間単位(例えば1フレーム)におけるスケルトンの骨の位置の移動量などを示す情報である。
また補正処理部108は、キャラクタのサイズを変更する補正処理を行ってもよい。具体的には補正処理部108は、キャラクタの接触対象となる接触対象オブジェクト(ヒット対象オブジェクト、プレイ対象オブジェクト)とキャラクタとの位置関係に応じた拡縮率(拡大率、縮小率)で、キャラクタのサイズを変更する補正処理を行う。例えばキャラクタの部位が接触対象オブジェクトに接触できるようなサイズに、キャラクタのサイズを変更する。ここで位置関係は、接触対象オブジェクトとキャラクタとの距離や、接触対象オブジェクトとキャラクタの配置関係などである。更に補正処理部108は、接触対象オブジェクトとキャラクタとの位置関係に応じて、キャラクタの配置位置を調整する補正処理を行ってもよい。即ちキャラクタのサイズのみならず、配置位置についても調整する。
また補正処理部108は、画像センサのアスペクト比(例えば4対3)と表示部190のアスペクト比(例えば16対9)との関係を表すアスペクト比情報に基づいて、補正処理を行ってもよい。例えばアスペクト比情報に基づいて、動き情報取得部104により取得された動き情報についての補正処理を行う。またアスペクト比情報に基づいて、オブジェクトの移動又は動作についての補正処理を行う。具体的には、操作者の動きに対して、表示部190の画面の水平方向でのオブジェクトの移動量の方が、表示部の画面の垂直方向での移動量よりも大きくなるように、補正処理を行う。
信頼度情報取得部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により得られた操作者のデプス情報やカラー画像情報を用いて、操作者の体型・体格と、これらの複数のモデルの体型・体格とのマッチング処理を行い、体型・体格が類似するモデルを特定する。そして、特定されたモデルの関節位置の情報等を用いて、操作者の関節位置(骨の位置、部位の位置)を推定して、スケルトン情報を取得する。
このようなスケルトン情報を用いれば、操作者の動作をリアルタイムに特定することができ、従来にない操作インターフェース環境を実現できる。また、このスケルトン情報は、オブジェクト空間に配置されるキャラクタのモーションデータとの親和性が高い。従って、このスケルトン情報を例えばキャラクタのモーションデータとして利用することで、オブジェクト空間において、操作者に対応するキャラクタ(アバター)を動作させることが可能になる。
しかしながら、操作者の体型・体格は様々であり、身長差や年齢差などの個人差がある。一方、操作者の動きに連動して画面上のオブジェクトを移動、動作させる場合、その移動、動作範囲は、画面全体に亘ることが望ましい。
そこで本実施形態では、図3のスケルトン情報で表される骨の位置情報(関節位置情報)についての補正処理を行って、補正処理の結果に応じた画像を生成する手法を採用する。
例えば図4(A)は、画像センサISEにより大人の操作者を撮った時の撮像画像(カラー画像等の画像情報)の例であり、この撮像画像から同図に示すような大人の操作者のスケルトン情報が取得されている。
図4(A)の操作者のスケルトンの動きに連動して、図4(B)に示すような画像が生成されて、表示部190に表示される。具体的には、図4(A)の操作者のスケルトンの右手の動きに連動して、図4(B)の右手オブジェクトHRが画面上で移動し、スケルトンの左手の動きに連動して、左手オブジェクトHLが画面上で移動する。例えば操作者が右手を上下左右に動かすと、右手オブジェクトHRが画面上で上下左右に移動し、操作者が左手を上下左右に動かすと、左手オブジェクトHLが上下左右に移動する。そして、例えば画面上に表示される風船を模したオブジェクトOBJ(接触対象オブジェクト)に、手オブジェクトHR、HLを素速く接触させることで、風船を割るミニゲームを操作者は楽しむことができる。なおCH1は、大人の操作者のアバターとなるキャラクタである。
一方、図5(A)は、画像センサISEにより子供の操作者を撮った時の撮像画像の例であり、この撮像画像から同図に示すように子供の操作者のスケルトン情報が取得されている。
図5(A)の操作者のスケルトンの動きに連動して、図5(B)に示すような画像が生成されて、表示部190に表示される。即ち、図5(A)の操作者のスケルトンの右手、左手の動きに連動して、図5(B)の右手、左手オブジェクトHR、HLが画面上で移動する。なおCH2は、子供の操作者のアバターとなるキャラクタである。
このように操作者のスケルトン情報を取得して、画面上の手オブジェクトHR、HLを移動させる場合に、スケルトン情報の骨の位置情報をそのまま使用して手オブジェクトHR、HLを移動させてしまうと、操作者が大人である場合と子供である場合とで、手オブジェクトHR、HLの移動範囲に広狭の差が生じてしまう。
例えば図4(A)のように操作者が大人である場合には、手オブジェクトHR、HLの移動範囲は広くなる一方で、図5(A)のように操作者が子供である場合には、手オブジェクトHR、HLの移動範囲は狭くなってしまう。そして手オブジェクトHR、HLの移動範囲が狭くなると、手オブジェクトHR、HLを、接触対象のオブジェクトOBJに接触させることが難しくなる。例えばオブジェクトOBJが画面の端部付近に配置されていた場合には、子供の操作者では、このオブジェクトOBJに手オブジェクトHR、HLを接触させることができなくなるおそれがある。従って、体格差、年齢差などの個人差によって、ゲームプレイに有利、不利が生まれてしまい、ゲームバランスが崩れてしまう。
この点、本実施形態では、スケルトン情報の骨の位置情報をそのまま使用して手オブジェクトHR、HLを移動(又は動作)させるのではなく、骨の位置情報の補正処理を行って、手オブジェクトHR、HLを移動させている。即ち補正処理の結果に基づいて、オブジェクトの移動等が制御される。従って、図4(A)のように大人の操作者が両手を一杯に広げた場合のみならず、図5(A)のように子供の操作者が両手を一杯に広げた場合においても、図4(B)、図5(B)に示すように手オブジェクトHR、HLは画面端に移動するようになる。即ち大人の操作者(広義には第1の操作者)のスケルトンの状態が手を一杯に広げた状態(広義には第1の状態)である時のオブジェクトHR、HLの表示位置と、子供の操作者(広義には第2の操作者)のスケルトンの状態が手を一杯に広げた状態(第1の状態)である時のオブジェクトHR、HLの表示位置が、同じ位置(ほぼ同じ位置)になるように、補正処理が行われる。
このようにすれば、大人の操作者であるか子供の操作者であるかに依らずに、操作者が手を動かすことで、例えば画面のほぼ全体の領域を移動範囲として、手オブジェクトHR、HLを移動させることができる。従って、体格差、年齢差などの個人差によって、ゲームプレイに有利、不利が生まれてしまう事態を防止することができ、ゲームバランスを保つことなどが可能になる。
次に図6(A)、図6(B)を用いて本実施形態の補正処理の一例を説明する。本実施形態では、スケルトンの骨の位置情報の補正処理により、補正位置情報を求める。そして補正位置情報に基づいて、オブジェクトの制御を行い、補正位置情報に対応する画面上の表示位置にオブジェクトが表示される画像を生成している。
図6(A)は本実施形態の補正処理を行わない場合の説明図である。図6(A)においてCCは例えば手の関節(手の先、手首)である。補正処理を行わない場合には、関節CCの位置PCにより画面上の表示位置PDSを求める。例えば位置CCをスクリーンに投影等することにより、表示位置PDSを求める。そしてこの表示位置PDSにオブジェクトOBが表示される画像を生成する。
図6(B)は本実施形態の補正処理を行う場合の説明図である。図6(B)では、関節CCの位置PC(手の骨の位置)の補正処理により、補正位置PC’を求める。例えば図5(A)のように子供の操作者である場合には、基準となる操作者よりも手の長さが短いと考えられるため、位置PCを手に沿った方向で延長した位置を、補正位置PC’として求める。そして、この補正位置PC’により画面上の表示位置PDSを求め、この表示位置PDSにオブジェクトOBが表示(配置)される画像を生成する。このようにすれば、子供の操作者であっても、手を一杯に広げた時に、図5(B)に示すように手オブジェクトHR、HLが画面端に届くようになる。一方、例えば体格の大きな大人の操作者である場合には、基準となる操作者よりも手の長さが長いと考えられるため、位置PCを手に沿った方向で短縮した位置を、補正位置PC’として求めればよい。
このように基準となる操作者との比較により補正処理を行う場合には、操作者の体格情報を用いて、この補正処理を行えばよい。ここで体格情報(体型情報、骨格情報)は、操作者の体格の大小等を表す情報であり、例えば操作者の関節間の距離情報や各部位の長さ情報などにより表される情報である。この体格情報は、図3のスケルトン情報などにより求めることができる。
即ち、図3のスケルトン情報は、後述するように、操作者のスケルトンを構成する各骨の位置情報である関節位置情報を含む。従って、この場合にはスケルトンの第1の関節と第2の関節の間の距離情報を、体格情報として採用することができ、この体格情報である距離情報を用いて図6(B)等の補正処理を行う。
例えば図7(A)のSC1は、体格の大きな第1の操作者のスケルトン情報であり、図7(B)のSC2は、体格の小さな第2の操作者のスケルトン情報である。この場合に、図7(A)のスケルトン情報SC1から、肩の関節C4と手(手先、手首)の関節C7の間の関節間距離LD1を求める。また図7(B)のスケルトン情報SC2から、肩の関節C4と手の関節C7の間の関節間距離LD2を求める。そして、これらの距離LD1、LD2を用いて、図6(B)等の補正処理を行う。
例えば画像センサによって取得された操作者のスケルトン情報が、図7(A)のように体格の大きなスケルトン情報SC1であった場合には、関節間距離LD1と基準距離LDRとの比などの情報に基づいて、図6(B)の補正位置PC’を求める補正処理を行う。一方、操作者のスケルトン情報が、図7(B)のように体格の小さなスケルトン情報SC2であった場合には、関節間距離LD2と基準距離LDRとの比などの情報に基づいて、図6(B)の補正位置PC’を求める補正処理を行う。こうすることで、操作者の体格情報の差を吸収する補正処理を実現できる。
なお、体格情報として使用する距離情報は、操作者の体格・体型を表す情報であればよく、図7(A)、図7(B)のような関節間距離には限定されず、種々の変形実施が可能である。例えば左手の関節間距離と右手の関節間距離の両方により得られた距離情報を用いて、補正処理を行ってもよい。
或いは複数フレームに亘って取得された関節間距離から得られる距離情報を用いて、補正処理を行ってもよい。例えば複数フレーム分の関節間距離の平均化処理を行い、得られた距離情報を用いて補正処理を行う。即ち画像センサの画像情報からスケルトン情報を取得した場合、スケルトン情報から得られる関節間距離にはバラツキが生じ、特定のフレームで得られた関節間距離が特異な距離になってしまうおそれがある。そして、このような特異な関節間距離を用いて補正処理を行うと、図6(B)のオブジェクトOBの表示位置PDSが変動してしまい、オブジェクトOBが操作者の予期しない位置に表示されたり、オブジェクトOBの画像がちらつくなどの問題が生じる可能性がある。
この点、複数フレーム分の関節間距離の平均化処理等を行えば、特定のフレームでの関節間距離が特異な距離であっても、その影響が平均化される。従って、オブジェクトOBが操作者の予期しない位置に表示されたり、表示位置PDSが変動してオブジェクトOBの画像がちらつくなどの問題を抑止できる。
図8(A)、図8(B)に本実施形態の補正処理の他の例を示す。この補正処理では、操作者OPの位置と画像センサISEとを結ぶ第1の方向DR1と、操作者OPの位置(例えば肩)と所定部位(例えば手)に対応する関節CCの位置とを結ぶ第2の方向DRとのなす角度θY、θXを求めて、補正処理を行う。
例えば図8(A)のθYは、垂直方向(縦方向)の座標軸であるY軸回りの角度(回転角度)であり、θXは、水平方向(Y方向)の座標軸であるX軸回りの角度(回転角度)である。角度θYを用いることで、画面上でのオブジェクトの表示位置のX座標を特定できる。角度θXを用いることで、画面上でのオブジェクトの表示位置のY座標を特定できる。例えば角度θYが90度又は−90度に近づくと、オブジェクトの表示位置は画面の左端又は右端に近づき、θYが0度に近づくと、表示位置は画面中心に近づく。また角度θXが90度又は−90度に近づくと、オブジェクトの表示位置は画面の上端又は下端に近づき、θXが0度に近づくと、表示位置は画面中心に近づく。
図8(A)、図8(B)の手法によれば、角度θY、θXを求めて、骨の位置情報の補正処理を行って、オブジェクトの表示位置を求めているため、操作者の体格の違い(手の長さ等の違い)を自動的に吸収した補正処理を実現できる。なお、操作者が手を曲げた場合などに対応するためには、図7(A)、図7(B)の関節間距離LD1、LD2などを用いて角度θY、θXを補正すればよい。例えば操作者が手を曲げて関節間距離LD1、LD2が短くなった場合には、それに連動して角度θY、θXの絶対値を小さくすればよい。
2.2 ゲーム演算処理への適用
本実施形態では、補正処理の結果をゲーム演算処理に反映させることもできる。例えば補正処理の結果に応じたゲーム結果演算処理やゲーム進行処理などのゲーム演算処理を行う。
例えば図9(A)、図9(B)において、操作者は、画面上に表示された矢印の指示にしたがって両手を広げたり、閉じたりする。すると、操作者のアバターとなるキャラクタCHが、操作者の動きに応じて、その両手を広げたり、閉じたりする。そして、指示通りの動作を指示通りのタイミングで行うことで、操作者に対して得点が加算される。
この場合に、画面上の指示にしたがって、単に両手を広げたり、閉じたりするだけでは、得点は加算されず、得点の加算のためには、手の位置の移動量が所定しきい値を超える必要がある。即ち手の位置の移動量が少ない場合には得点は加算されない。
ところが、図5(A)のように操作者が体格の小さな子供である場合には、大人と同じように両手を広げたり、閉じたりしても、その時の手の位置の移動量は大人に比べて小さい。従って、大人の操作者ならば移動量がしきい値を超えるような手の動きであっても、子供の操作者ではしきい値を超えない事態が生じてしまう。従って、ゲームに有利、不利が生じてしまい、ゲームバランスが崩れる。
そこで本実施形態では、スケルトンの骨の位置の移動量情報(例えば手の位置の移動量)についての補正処理を行って、補正移動量情報を求め、この補正移動量情報に基づいてゲーム結果演算処理を行う。
例えば子供の操作者である場合には、そのスケルトンの骨の位置の移動量の補正処理を行って、当該移動量よりも大きな補正移動量を求める。そして、求められた補正移動量に基づいて、図9(A)、図9(B)のゲーム結果の演算処理を行う。一方、体格が大きな大人の操作者である場合には、そのスケルトンの骨の位置の移動量の補正処理を行って、当該移動量よりも小さな補正移動量を求める。そして、求められた補正移動量に基づいて、図9(A)、図9(B)のゲーム結果の演算処理を行う。
なお、大人の操作者か子供の操作者であるかは、図7(A)、図7(B)で説明した手法により判別できる。従って、例えば図7(A)の関節間距離LD1と基準距離LDRとの比や、図7(B)の関節間距離LD2と基準距離LDRとの比などの情報に基づいて、補正移動量を求めれば、大人の操作者である場合と子供の操作者である場合とで、同じ動きの時の補正移動量を例えば同じ値にできる。例えば大人の操作者である場合には、LD1とLDRの比に基づいて、スケルトンでの移動量を小さくする補正処理が行われて、補正移動量が求められる。一方、子供の操作者である場合には、LD2とLDRの比に基づいて、スケルトンでの移動量を大きくする補正処理が行われて、補正移動量が求められる。このようにすることで、子供の操作者では、実際の手の位置の移動量が小さくても、補正移動量は大きくなるため、図9(A)、図9(B)のゲーム結果演算処理において、移動量(補正移動量)がしきい値を超えたと判断されて、得点が加算されるようになる。即ち補正処理の結果に応じたゲーム演算処理(ゲーム結果演算処理)が行われるようになる。従って、子供と大人とでゲームの有利、不利が生じる事態が抑止され、ゲームバランスを保つことなどが可能になる。
なお補正処理の結果を反映させるゲームとしては種々のゲームを想定できる。例えばボートを漕いで競争するゲームにおいては、子供の操作者は、大人の操作者に比べて、同じような動きの漕ぎ動作であっても、漕ぐ量や漕ぐ速度・加速度が小さくなる。従って、大人に比べてゲームが不利になってしまう。そこで、例えば図7(A)、図7(B)で説明した体格情報(LD1、LD2)などを用いて、漕ぐ量や漕ぐ速度・加速度等の補正処理を行う。即ち、同じような動きの漕ぎ動作であれば、子供であっても大人であっても、漕ぐ量や漕ぐ速度・加速度が同等になるように、補正処理を行う。こうすることで、子供と大人とでゲームの有利、不利が生じる事態が抑止され、ゲームバランスを保つことができる。
また本実施形態では、第1、第2のモードを設け、第1のモードでは、補正処理の結果を用いてオブジェクトの制御を行い、第2のモードでは、補正処理の結果を用いずに、スケルトン情報を用いてオブジェクトの制御を行う。
例えば図4(A)〜図5(B)や図9(A)、図9(B)は、第1のモードで行われるゲームである。即ちスケルトン情報の骨の位置情報についての補正処理を行い、補正処理の結果(補正位置、補正移動量、補正速度、補正加速度等)に基づいてオブジェクトの制御を行う。即ち図4(A)〜図5(B)では、大人と子供とで、同じ動きならば手オブジェクトHR、HLの位置が同じ位置になるように補正処理を行う。また図9(A)、図9(B)では、大人と子供とで、同じ動きならばキャラクタCHの手の移動量が同じ移動量になるように補正処理を行う。このようにすることで、体格差や年齢差などの個人差を吸収したゲームを実現できる。
一方、図10(A)、図10(B)は、第2のモードで行われるゲームである。この第2のモードのゲームでは、スケルトン情報の骨の位置についての補正処理は行われずに、スケルトン情報に基づくオブジェクトの制御が行われる。なお図10(A)は操作者をその後方から見た図である。
例えば図10(A)、図10(B)では、操作者は、両手を使って、画面上に表示された時間に対応する時計の針と同じ形のポーズをとる。例えば図10(B)では、「10時20分」の時間が指示されているため、操作者は、時計の短針に対応する右手が「10時」を示す方向になり、時計の長針に対応する左手が「20分」を示す方向になるポーズをとる。そして、時間に対応する時計の針の状態と操作者のポーズが一致すると、操作者に得点が加算される。
図10(A)、図10(B)のような第2のモードのゲームでは、手の角度だけが問われ、手の骨の位置については問われない。従って、この第2のモードのゲームでは、図6(A)、図6(B)等で説明した補正処理は行わずに、画像センサにより取得された操作者のスケルトン情報を例えばそのまま用いて、時計の針等のオブジェクトの制御を行う。
このような第1、第2のモードを設けることで、ゲームの種類等に応じた適切なオブジェクト制御を効率的に実現できる。
2.3 キャラクタのサイズ等の補正処理
ゲームにおいては、操作者のアバターとなるキャラクタとして、体格・体型等が異なる様々なキャラクタが登場する。例えば体格が大きな大人のアバターのキャラクタや、体格が小さな子供のアバターのキャラクタなどである。これらの各キャラクタの体格・体型は、そのモデルデータにより決められている。
しかしながら、操作者の動きに応じて移動又は動作するキャラクタのオブジェクトの制御を行うゲームにおいては、モデルデータに基づく体格・体型のキャラクタをそのままゲームに登場させると、不具合が生じる場合がある。
そこで本実施形態では、操作者のアバター等となるキャラクタのサイズを変更したり、キャラクタの配置位置を調整する補正処理を行う。なお、以下では、体格の大きなキャラクタとして、大人のキャラクタをその一例として用い、体格の小さなキャラクタとして、子供キャラクタをその一例として用いて説明する。
例えば図11(A)、図11(B)のCH1は、大人のアバターとなるキャラクタであり、図12(A)、図12(B)のCH2は、子供のアバターとなるキャラクタである。
図11(A)、図11(B)のゲームでは、操作者が手を動かすことで、対応するキャラクタCH1もそれに連動してその手が動く。そして、画面に表示される爆弾等を模した接触対象オブジェクトOBC1、OBC2に対して、キャラクタCH1の手が素速く触れるように操作者が手を動かすことで、操作者はゲームプレイを楽しむ。
そして図11(A)、図11(B)のように大人の体型のキャラクタCH1であれば、例えば操作者が手を一杯に広げることで、キャラクタCH1の手を接触対象オブジェクトOBC1、OBC2に接触させることができる。
しかしながら、図12(A)に示すような子供の体型のキャラクタCH2では、操作者が両手を一杯に広げても、キャラクタCH2の手を接触対象オブジェクトOBC1、OBC2に接触させることはできない。即ち、オリジナルのモデルデータを用いた子供のキャラクタCH2では、図11(A)、図11(B)のような接触対象オブジェクトOBC1、OBC2への接触動作を実現できず、操作者は、この子供のキャラクタCH2を使用したゲームをプレイできなくなる。
そこで本実施形態では図12(B)に示すように、キャラクタCH2のサイズを変更する補正処理を行う。具体的には、キャラクタCH2の接触対象となる接触対象オブジェクトOBC1、OBC2とキャラクタCH2との位置関係(距離、配置位置等)に応じた拡縮率で、キャラクタCH2のサイズを変更する。即ち、キャラクタCH2のオリジナルのモデルデータのサイズを変更する。例えばキャラクタCH2の手等の部位と接触対象オブジェクトOBC1、OBC2との距離が遠い場合には、大きな拡縮率(拡大率)で、キャラクタCH2のサイズを大きくする。一方、キャラクタCH2の手等の部位と接触対象オブジェクトOBC1、OBC2との距離が近い場合には、小さな拡縮率(拡大率)でキャラクタCH2のサイズを大きくする。
このようにすることで図12(B)に示すように、子供のキャラクタCH2であっても、その手が接触対象オブジェクトOBC1、OBC2に接触するようになる。従って、操作者が、このような体格の小さなキャラクタCH2を選択した場合にも、支障なくゲームをプレイすることが可能になる。そして、このようなサイズ変更が必要のないゲームにおいては、このようなサイズ変更の補正処理を行わずに、オリジナルのモデルデータのサイズのキャラクタを使用することで、そのキャラクタにマッチした自然なゲームプレイを実現できる。
また、例えば図3のスケルトン情報により、操作者の体型等を判別し、その判別結果に応じて、操作者が使用するキャラクタを自動選択する手法を採用してもよい。例えばスケルトン情報の解析結果により、操作者が大人であると判定された場合には、その操作者のアバターとなるキャラクタとして、図11(A)、図11(B)に示すような大人のキャラクタを自動選択する。一方、操作者が子供であると判定された場合には、図12(A)、図12(B)に示すような子供のキャラクタを自動選択する。
そして、このようなスケルトン情報に基づくキャラクタの自動選択を行った場合にも、キャラクタと接触対象オブジェクト(ヒット対象オブジェクト、プレイ対象オブジェクト)との位置関係に応じて、自動選択されたキャラクタのサイズが変更される補正処理が行われる。従って、操作者は、自動選択されたキャラクタを用いて支障なくゲームを楽しむことができる。
更に本実施形態では、接触対象オブジェクトとキャラクタとの位置関係に応じて、キャラクタの配置位置を調整する補正処理を行ってもよい。
例えば図13(A)は、車を模したオブジェクトOBDを、キャラクタCH2の体を使って、オブジェクトOBDに対応する色の道に誘導して移動するゲームである。このゲームにおいても、キャラクタCH2の接触対象オブジェクトOBE1、OBE2、OBE3、OBE4、OBE5、OBE6との位置関係に応じた拡縮率で、キャラクタCH2のサイズを変更する補正処理を行う。
しかしながら、単なるキャラクタCH2のサイズの変更だけでは、例えば図13(A)のB1に示すオブジェクトOBE2の高さと、B2に示すキャラクタCH2の肩の高さを一致させる調整を行うことができない。
そこで図13(B)では、キャラクタCH2のサイズの変更のみならず、その配置位置(キャラクタを配置する場所)についても調整する補正処理を行っている。例えば図13(B)では、キャラクタCH2の配置位置を、肩の高さとオブジェクトOBE2の高さが一致するように上下に移動する調整を行っている。このようにすることで、車のオブジェクトOBDを、キャラクタCH2の手や肩を通って、OBDの色に対応する道のオブジェクトOBE6に誘導して移動させることが可能になる。従って、様々なキャラクタを使用した場合にも、スムーズなゲームを実現できるようになる。
2.4 信頼度情報
次にスケルトン情報の信頼度情報と、信頼度情報に基づく画像生成手法について説明する。
前述のように図3に示すスケルトン情報を用いれば、操作者の動作をリアルタイムに特定することができ、従来にない操作インターフェース環境を実現できる。
しかしながら、操作者の動きや体型・体格は種々様々である。また操作者が画像センサISEの撮像範囲の外に出てしまう場合もある。従って、完全に100パーセントの信頼度のスケルトン情報を取得することは困難である。このため、操作者のスケルトンの骨(部位)を完全にはトラッキングできない場合には、骨の位置(関節位置)の推測処理を行い、推測処理により得られた骨の位置等に対しては、その推測処理の確からしさの程度を表す信頼度を関連づける。
例えば図14(A)にスケルトン情報のデータ構造の例を示す。このスケルトン情報は、各骨(各関節)に対して、その位置情報が関連づけられている。この各骨(各関節)の位置情報は、例えば画像センサISEのカメラ座標系での3次元座標情報である。また、各骨(各関節)は、操作者の各部位に対応づけられている。例えばC0、C1、C2は、各々、腰、胸、首の部位に対応づけられている。この対応づけは、骨の番号(関節番号)などにより実現される。
図14(B)に信頼度情報のデータ構造の例を示す。図14(B)に示すように、本実施形態の信頼度情報は、スケルトン情報により表されるスケルトンを構成する各骨(各関節)に対して、信頼度が関連づけられた情報である。この信頼度は、各骨の情報の信頼度を表している。具体的には、図14(A)に示すように、スケルトン情報は、操作者の各部位に対応づけられた各骨の位置情報を含み、図14(B)の信頼度は、操作者の各部位と各骨(各関節)との対応づけや、各骨(各関節)の位置情報に関する信頼度である。なお、「骨」と「関節」は対応しているため、以下では、適宜、「骨」を「関節」として説明したり、「関節」を「骨」として説明する。
例えば図15(A)において、関節C1とC7の距離は遠く離れている。PR1、PR7は関節C1、C7の位置についての存在確率の範囲を表すものである。例えば、ある測定タイミングで関節C1、C7が図15(A)に示す位置にあった場合には、次の測定タイミングにおいても、関節C1、C7の位置は、これらの存在確率の範囲PR1、PR7内に位置することが予想される。骨のトラッキングによるスケルトン情報の推定処理の際には、この存在確率の概念を用いる。そして、図15(A)に示すように関節C1、C7の距離が離れている場合には、存在確率の範囲PR1、PR7の間に重なりが無いため、関節C1、C7の情報(部位との対応づけや位置情報)の信頼度は高い。
一方、図15(B)では関節C1、C7の距離が近づいており、存在確率の範囲PR1、PR7の間に重なりが生じている。従って、この場合には、次の測定タイミングで、関節C1をC7と判断したり、関節C7をC1と判断してしまう可能性があり、骨のトラッキングの推定処理の際に、誤った判断をする可能性がある。従って、図15(B)の場合には、図15(A)に比べて関節C1、C7の情報(部位への対応づけや位置情報)の信頼度が低くなる。
また図16(A)では、画像センサISEと操作者の距離が適正な距離になっている。従って、画像センサISEの撮像により得られる画像情報の信頼度(解像度等)が高くなり、この画像情報から得られるスケルトン情報の信頼度も高くなる。
一方、図16(B)では、画像センサISEと操作者の距離が長く、操作者が画像センサISEから所定の距離(許容距離)LM以上離れている。従って、画像センサISEの撮像により得られる画像情報の信頼度が低くなり、この画像情報から得られるスケルトン情報の信頼度も低くなる。
以上のように本実施形態で用いられる信頼度情報は、例えば図15(A)、図15(B)に示すように操作者の所定部位(例えば手、足)が他の部位(例えば胸、腰、頭、他方の手・足)に近づくほど信頼度が低くなる情報である。また図16(A)、図16(B)に示すように、操作者が画像センサISEから所定距離LM(例えば4〜5m)以上離れた場合に信頼度が低くなる情報である。但し本実施形態の信頼度情報は、これに限定されない。例えば他の人間が近づくことで、操作者の認識の精度が低下し、操作者のスケルトン情報の信頼度が低くなるような情報であってもよい。
本実施形態では、以上のように説明した信頼度情報を用いた画像を生成して、表示部190に表示している。具体的には、信頼度情報に基づいて、表示部190に表示される画像の表示態様を変化させたり、信頼度情報に基づくオブジェクト制御やゲーム演算処理を行い、そのオブジェクト制御やゲーム演算結果により生成された画像を表示部190に表示する。
例えば図17(A)、図17(B)は、図2(A)のように表示部190の前方に立って、その体の動きにより操作情報を入力している操作者の様子を示す図である。図17(A)では、操作者は、自身の体(胴体)から手を離した状態で、手を動かすことで操作情報を入力している。一方、図17(B)では、自身の体に手が近い状態で、手を動かすことで操作情報を入力している。
図17(A)では、図15(A)に示すように手の関節と胸の関節は遠くなっているため、手の関節の信頼度は高くなり、手の位置情報等は、より確からしい情報になっている。一方、図17(B)では、手の関節と胸の関節は近くなっているため、手の関節の信頼度は低くなり、手の位置情報等は、図17(A)に比べて不確かな情報になっている。即ち図17(B)では、実際には胸の位置情報であるものを、手の位置情報として誤認識している可能性がある。
そして、本来は操作者は図17(A)のような状態の手の動きで操作すべきであるのに、図17(B)のような状態の手の動きでの操作を許容すると、操作者の操作をシステム側が誤認識してしまうおそれがある。即ち、システム側が認識した操作と、操作者が意図する操作との間に不一致が生じるおそれがある。
そこで本実施形態では、図17(B)のような不適切な操作状態になっていることを操作者に認知させるために、図18(A)、図18(B)に示すように信頼度情報に基づいて画像の表示態様を変化させている。
例えば図18(A)において、HR、HLは、操作者の手(広義には所定部位)に対応して表示部190に表示される手オブジェクト(アイコン、カーソル)である。またCHは、操作者に対応するキャラクタ(アバター)のオブジェクトである。
そして図17(A)のように操作者が手を動かすと、その手の動きに応じて図18(A)の手オブジェクトHR、HLが移動(又は動作)する。例えば操作者が右手を上下左右に動かすと、右手オブジェクトHRが画面上で上下左右に移動し、操作者が左手を上下左右に動かすと、左手オブジェクトHLが上下左右に移動する。操作者は、このように手オブジェクトHR、HLを動かすことで、プレイしたいミニゲームを選択したり、ゲームのスタートを選択する。
そして図18(A)は、図17(A)のように手が体から離れた状態の時に表示される画像の例であり、図18(B)は、図17(B)のように手が体の近くにある状態の時に表示される画像の例である。
図17(A)のようにスケルトン情報の信頼度が高いと考えられる状態では、図18(A)に示すように、手オブジェクトHR、HLは、はっきりとした画像になる。一方、図17(B)のように、スケルトン情報の信頼度が低いと考えられる状態では、図18(B)に示すように、手オブジェクトHR、HLは、図18(A)に比べて例えばぼけた画像になったり、透明に近づいた画像になる。或いは手オブジェクトHR、HLの色が薄い色等に変化する。
このように本実施形態では、操作者の手の骨の情報の信頼度(所定部位に対応する骨の情報の信頼度)が低くなるにつれて、手(所定部位)に対応する手オブジェクトHR、HL(広義にはオブジェクト)をぼかす処理、透明に近づける処理、或いは色を変化させる処理などを行う。
ぼかし処理は、例えば手オブジェクトHR、HLに対してぼかしフィルタ等を適用することなどで実現できる。具体的には、バイリニアフィルタリングによるぼかし処理である線形テクスチャフィルタリングの手法や、何枚ものテクスチャを同時に使用するマルチテクスチャによるぼかし処理であるボックスフィルタサンプリングの手法などを採用できる。透明に近づける処理は、手オブジェクトHR、HLのα値を、透明に近いα値に変化させることで実現できる。色を変化させる処理は、手オブジェクトHR、HLをターゲット色に近づけることで実現できる。
なお手オブジェクトHR、HLの表示態様の変化処理は、これらの処理には限定されない。例えばスケルトン情報の信頼度が低くなるにつれて、手オブジェクトHR、HLの明度(輝度)を変化させる処理や、輪郭線の表示態様を変化させる処理や、サイズを変化させる処理や、オブジェクトHR、HLに施されるエフェクトを変化させる処理などを行ってもよい。例えば信頼度が低くなるにつれて、手オブジェクトHR、HLの明度を暗くしたり、輪郭線を薄くしたり、細くしたり、サイズを拡大又は縮小する。或いは、手オブジェクトHR、HLに施されるエフェクトを用いて、上述した処理と同等の映像効果を実現してもよい。或いはスケルトン情報の信頼度に応じて手オブジェクトHR、HLを変形させてもよい。またスケルトン情報の信頼度に基づいて、図18(A)、図18(B)のキャラクタCH(アバター)の画像の表示態様(ぼかし度、透明度、色等)を変化させてもよい。また、スケルトン情報の信頼度が低くなった場合に、信頼度が低くなったことを警告するアイコンオブジェクトを表示してもよい。
以上のように、信頼度に応じて手オブジェクトHR、HLの表示態様を変化させれば、手の操作についての信頼度が低下していることを、操作者は容易に把握できるようになる。例えば図17(B)のように手が体に近い状態で操作している場合には、図18(B)のように手オブジェクトHR、HLがぼけた画像になるため、これを見た操作者は、図17(A)のように手を伸ばして操作するようになる。従って、結局、操作者は、図17(A)のようにスケルトン情報の信頼度が高い状態で手を動かして操作を行うようになり、操作者の操作が誤認識されてしまう事態を抑止できる。従って、誤操作等が抑止され、快適な操作インターフェース環境を操作者に提供できる。
なお、以上では本実施形態の手法をゲーム装置に適用した場合について主に説明したが、本実施形態の手法はゲーム装置以外の種々の機器に適用できる。
例えば図19(A)は、映像機器の1つであるテレビ(表示装置)への本実施形態の手法の適用例である。図19(A)において、操作対象オブジェクトOBD、OBE、OBF、OBG、OBHは、操作者の操作の対象となるオブジェクトであり、例えば映像機器(又はゲーム装置)に対して操作指示を行うためのオブジェクトである。具体的には、映像機器(ゲーム装置)に対してコンテンツ選択、所定の機器動作、及びコンテンツ再生・記録の少なくも1つを操作指示するためのオブジェクトである。例えばOBD、OBE、OBFは、各々、チャンネル選択(広義にはコンテンツ選択)、ボリュームの操作(広義には機器動作の選択)、消音の操作(広義には機器動作の選択)を行うための操作対象オブジェクトである。OBG、OBHは、各々、コンテンツの再生・記録操作(プレイ、停止、早送り、巻き戻し、録画等)、放送種別(地上デジタル放送、衛星放送等)の選択操作を行うための操作対象オブジェクトである。
操作者は、チャンネルを切り替えたい場合には、表示部190の方に手を伸ばし、手オブジェクトHRの位置をチャンネル操作用の操作対象オブジェクトOBDの位置に合わせる。そして手を回すなどの操作を行うことで、チャンネルを切り替えて、所望の放送番組を視聴する。
また操作者は、ボリュームを変えたい場合には、手を伸ばして、手オブジェクトHRの位置をボリューム操作用の操作対象オブジェクトOBEの位置に合わせる。そして手を左右に動かすなどの操作を行うことで、音のボリュームを変更する。同様に消音を行いたい場合には、手オブジェクトHRの位置を消音操作用の操作対象オブジェクトOBFの位置に合わせて、手の指で押すなどの操作を行うことで、音声を消音する。操作対象オブジェクトOBG、OBHの操作も同様にして実現できる。
そして、操作者が手を伸ばしており、右手と左手が交差していないというように、スケルトン情報の信頼度が高い場合には、図19(A)に示すように操作対象オブジェクトOBD〜OBHや手オブジェクトHR、HLは、はっきりとした画像で表示部190に映し出される。
また、スケルトン情報の信頼度が高い場合には、操作対象オブジェクトOBD〜OBHの操作が許可され、操作者の手等の動きに応じて操作対象オブジェクトOBD〜OBHが操作されるようになる。即ち、操作者は、手を回したり、手を左右に動かすことで、チャンネル用の操作対象オブジェクトOBDを操作したり、ボリューム用の操作対象オブジェクトOBEを操作できる。
一方、操作者の手が体の近くにあったり、右手と左手が交差しているというように、スケルトン情報の信頼度が低い場合には、図19(B)に示すように、操作対象オブジェクトOBD〜OBHや手オブジェクトHR、HLは、ぼかした画像や透明に近い画像(或いは透明な画像)になる。即ち、信頼度情報に基づいて操作対象オブジェクトOBD〜OBHや手オブジェクトHR、HLの表示態様が変化し、信頼度が低い場合には、操作対象オブジェクトOBD〜OBHに対してぼかし処理、透明に近づける処理などが行われるようになる。
また、信頼度が低い場合には、操作対象オブジェクトOBD〜OBHに対する操作者の操作が制限又は不許可にされる。即ち、操作者が、手を回したり、手を左右に動かしても、チャンネル用の操作対象オブジェクトOBDやボリューム用の操作対象オブジェクトOBEに対する操作は実行されない。
このようにすれば、例えば操作者が手を伸ばすことで、図19(A)に示すように操作対象オブジェクトOBD〜OBHが画面に映し出され、これらの操作対象オブジェクトOBD〜OBHを操作することで、コンテンツ(映像、音)選択の操作や、機器動作の操作や、コンテンツ再生・記録の操作を行うことが可能になる。
一方、操作者が手を体の方に近づけて曲げる等の動きをすると、図19(B)に示すように操作対象オブジェクトOBD〜OBHがぼけて薄い画像になったり、透明になって見えないようになる。従って、画面上において操作対象オブジェクトOBD〜OBHが目立たなくなり、操作者は、映像等のコンテンツの視聴を妨げられることなく楽しめるようになる。
以上のように本実施形態では、スケルトン情報の信頼度が低くなった場合には、操作対象オブジェクトOBD〜OBHに対する操作者の操作が制限又は不許可にされる。一方、信頼度が高くなった場合には、操作対象オブジェクトOBD〜OBHに対する操作者の操作が許可される。従って、これまでにないタイプの操作インターフェース環境を操作者に提供できる。
そして図19(A)、図19(B)に示すような操作インターフェース環境を実現した場合に、操作者が大人であった場合と子供であった場合とで、手オブジェクトHR、HLの移動範囲が異なってしまうと、操作者にとって使いにくいインターフェース環境になってしまうおそれがある。
この点、本実施形態では、図4(A)〜図8(B)等で説明したような補正処理を行っているため、操作者の個人差に依存せずに、手オブジェクトHR、HLの移動範囲を同じ範囲に設定することができ、広い範囲に設定することが可能になる。従って、操作者にとって使いやすいインターフェース環境を提供することができ、操作者の利便性等を向上できる。
2.5 詳細な処理例
次に本実施形態の詳細な処理例について図20、図21のフローチャートを用いて説明する。図20は、スケルトン情報の補正処理を行って画像を生成する処理の具体例を示すフローチャートである。
まず、図2(A)、図2(B)で説明したように画像センサからの画像情報を取得する(ステップS1)。次に、図3で説明したように、画像情報に基づきスケルトン情報を取得する(ステップS2)。
次に、図4(A)〜図8(B)等で説明したように、体格情報、アスペクト比情報を用いて、スケルトン情報の骨の位置情報についての補正処理を行って、補正位置情報を求める(ステップS3)。そして、求められた補正位置情報により手オブジェクトの描画位置を求め(ステップS4)、手オブジェクト、キャラクタ等の描画処理を行う(ステップS5)。
図21は、信頼度情報を用いた画像の表示態様の変化処理の具体例を示すフローチャートである。
まず、スケルトン情報の手の骨(関節)の位置等に基づき、手オブジェクトの描画位置を求める(ステップS11)。そして手の骨等についての信頼度を取得する(ステップS12)。
次に、取得された信頼度に基づいて、手オブジェクトのぼかし度合、α値、色等を設定する(ステップS13)。そして、このようにぼかし度合、α値、色等が設定された手オブジェクト、キャラクタ等の描画処理を実行する(ステップS14)。このようにすることで、図18(A)、図18(B)に示すような画像の表示態様の変化処理を実現できる。
なお、上記のように本実施形態について詳細に説明したが、本発明の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本発明の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語(動き情報、所定部位、オブジェクト等)と共に記載された用語(スケルトン情報、手、手オブジェクト等)は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また、スケルトン情報の取得手法、スケルトン情報等についての補正処理手法、オブジェクトの制御手法、ゲーム演算手法、信頼度情報の取得手法、画像の表示態様の変化手法等も本実施形態で説明したものに限定されず、これらと均等な手法も本発明の範囲に含まれる。また本発明は種々のゲームに適用できる。また本発明は、業務用ゲームシステム、家庭用ゲームシステム、多数のプレーヤが参加する大型アトラクションシステム、シミュレータ、マルチメディア端末、ゲーム画像を生成するシステムボード、携帯電話、映像機器、音響機器、家電機器等の種々の画像生成システムに適用できる。
ISE 画像センサ、SC 画面(スクリーン)、HL、HR 手オブジェクト、
CH、CH1、CH2 キャラクタ(アバター)、C0〜C19 関節(骨)、
OB、OBJ、OBC1〜OBC4、OBD、OBE1〜OBE6 オブジェクト、
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 (22)

  1. 画像センサからの画像情報を取得する画像情報取得部と、
    前記画像センサからの前記画像情報に基づいて、前記画像センサから見える操作者の動作を特定するスケルトン情報を取得するスケルトン情報取得部と、
    前記スケルトン情報で表されるスケルトンの骨の位置情報についての補正処理を行う補正処理部と、
    前記補正処理の結果に応じた画像を生成する画像生成部として、
    コンピュータを機能させることを特徴とするプログラム。
  2. 請求項1において、
    前記操作者の動きに応じて移動又は動作するオブジェクトの制御を行うオブジェクト制御部として、
    コンピュータを機能させ、
    前記オブジェクト制御部は、
    前記補正処理の結果に基づいて前記オブジェクトの制御を行うことを特徴とするプログラム。
  3. 請求項2において、
    前記補正処理部は、
    前記スケルトンの骨の位置情報の補正処理を行って、補正位置情報を求め、
    前記オブジェクト制御部は、
    前記補正位置情報に基づいて、前記オブジェクトの制御を行い、
    前記画像生成部は、
    前記補正位置情報に対応する画面上の表示位置に前記オブジェクトが表示される画像を生成することを特徴とするプログラム。
  4. 請求項2又は3において、
    前記オブジェクトは、前記操作者の所定部位の動きに応じて移動するオブジェクトであることを特徴とするプログラム。
  5. 請求項4において、
    前記所定部位は前記操作者の手であり、前記オブジェクトは、前記操作者の手の動きに応じて移動する手オブジェクトであることを特徴とするプログラム。
  6. 請求項2乃至5のいずれかにおいて、
    前記オブジェクト制御部は、
    第1のモードでは、前記補正処理の結果を用いてオブジェクトの制御を行い、
    第2のモードでは、前記補正処理の結果を用いずに、前記スケルトン情報を用いてオブジェクトの制御を行うことを特徴とするプログラム。
  7. 請求項1乃至6のいずれかにおいて、
    前記補正処理部は、
    第1の操作者のスケルトンの状態が第1の状態である時の前記オブジェクトの表示位置と、第2の操作者のスケルトンの状態が前記第1の状態である時の前記オブジェクトの表示位置とが同じ位置になるように前記補正処理を行うことを特徴とするプログラム。
  8. 請求項1乃至7のいずれかにおいて、
    前記補正処理部は、
    前記操作者の体格情報を用いて前記補正処理を行うことを特徴とするプログラム。
  9. 請求項8において、
    前記補正処理部は、
    前記スケルトンの第1の関節と第2の関節の間の関節間距離情報を、前記体格情報として用いて、前記補正処理を行うことを特徴とするプログラム。
  10. 請求項9において、
    前記補正処理部は、
    複数フレームに亘って取得された前記関節間距離情報から得られる距離情報を、前記体格情報として用いて、前記補正処理を行うことを特徴とするプログラム。
  11. 請求項1乃至7のいずれかにおいて、
    前記補正処理部は、
    前記操作者の位置と前記画像センサとを結ぶ第1の方向と、前記操作者の位置と前記操作者の所定部位に対応する関節の位置とを結ぶ第2の方向とのなす角度を求めて、前記補正処理を行うことを特徴とするプログラム。
  12. 請求項1乃至11のいずれかにおいて、
    ゲーム演算処理を行うゲーム演算部として、
    コンピュータを機能させ、
    前記ゲーム演算部は、
    前記補正処理の結果に応じた前記ゲーム演算処理を行うことを特徴とするプログラム。
  13. 請求項12において、
    前記ゲーム演算部は、
    前記ゲーム演算処理として、前記補正処理の結果に応じたゲーム結果演算処理を行うことを特徴とするプログラム。
  14. 請求項13において、
    前記補正処理部は、
    前記スケルトンの骨の位置の移動量情報についての補正処理を行って、補正移動量情報を求め、
    前記ゲーム演算部は、
    前記補正移動量情報に基づいて前記ゲーム結果演算処理を行うことを特徴とするプログラム。
  15. 請求項1乃至14のいずれかにおいて、
    前記操作者の動きに応じて移動又は動作するキャラクタのオブジェクトの制御を行うオブジェクト制御部として、
    コンピュータを機能させ、
    前記補正処理部は、
    前記キャラクタの接触対象となる接触対象オブジェクトと前記キャラクタとの位置関係に応じた拡縮率で、前記キャラクタのサイズを変更する補正処理を行うことを特徴とするプログラム。
  16. 請求項15において、
    前記補正処理部は、
    前記接触対象オブジェクトと前記キャラクタとの位置関係に応じて、前記キャラクタの配置位置を調整する補正処理を行うことを特徴とするプログラム。
  17. 請求項1乃至16のいずれかにおいて、
    前記スケルトン情報の信頼度を表す信頼度情報を取得する信頼度情報取得部として、
    コンピュータを機能させ、
    前記画像生成部は、
    前記表示部に表示される画像として、取得された前記信頼度情報に応じた画像を生成することを特徴とするプログラム。
  18. 請求項17において、
    前記画像生成部は、
    前記信頼度情報に基づいて、前記表示部に表示される画像の表示態様を変化させることを特徴とするプログラム。
  19. 画像センサからの画像情報を取得する画像情報取得部と、
    前記画像センサからの前記画像情報に基づいて、前記画像センサから見える操作者の動作を特定するスケルトン情報を取得するスケルトン情報取得部と、
    前記スケルトン情報に基づいて、前記操作者の動きに応じて移動又は動作するキャラクタのオブジェクトの制御を行うオブジェクト制御部と、
    前記キャラクタの接触対象となる接触対象オブジェクトと前記キャラクタとの位置関係に応じた拡縮率で、前記キャラクタのサイズを変更する補正処理を行う補正処理部と、
    前記補正処理の結果に応じた画像を生成する画像生成部として、
    コンピュータを機能させることを特徴とするプログラム。
  20. コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至19のいずれかに記載のプログラムを記憶したことを特徴とする情報記憶媒体。
  21. 画像センサからの画像情報を取得する画像情報取得部と、
    前記画像センサからの前記画像情報に基づいて、前記画像センサから見える操作者の動作を特定するスケルトン情報を取得するスケルトン情報取得部と、
    前記スケルトン情報で表されるスケルトンの骨の位置情報についての補正処理を行う補正処理部と、
    前記補正処理の結果に応じた画像を生成する画像生成部と、
    を含むことを特徴とする画像生成システム。
  22. 画像センサからの画像情報を取得する画像情報取得部と、
    前記画像センサからの前記画像情報に基づいて、前記画像センサから見える操作者の動作を特定するスケルトン情報を取得するスケルトン情報取得部と、
    前記スケルトン情報に基づいて、前記操作者の動きに応じて移動又は動作するキャラクタのオブジェクトの制御を行うオブジェクト制御部と、
    前記キャラクタの接触対象となる接触対象オブジェクトと前記キャラクタとの位置関係に応じた拡縮率で、前記キャラクタのサイズを変更する補正処理を行う補正処理部と、
    前記補正処理の結果に応じた画像を生成する画像生成部と、
    を含むことを特徴とする画像生成システム。
JP2010134583A 2010-06-11 2010-06-11 プログラム、情報記憶媒体及び画像生成システム Pending JP2011258159A (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010134583A JP2011258159A (ja) 2010-06-11 2010-06-11 プログラム、情報記憶媒体及び画像生成システム
US13/158,003 US8655015B2 (en) 2010-06-11 2011-06-10 Image generation system, image generation method, and information storage medium
EP11169647A EP2394711A1 (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
JP2010134583A JP2011258159A (ja) 2010-06-11 2010-06-11 プログラム、情報記憶媒体及び画像生成システム

Publications (1)

Publication Number Publication Date
JP2011258159A true JP2011258159A (ja) 2011-12-22

Family

ID=44645371

Family Applications (1)

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

Country Status (3)

Country Link
US (1) US8655015B2 (ja)
EP (1) EP2394711A1 (ja)
JP (1) JP2011258159A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017138914A (ja) * 2016-02-05 2017-08-10 株式会社バンダイナムコエンターテインメント 画像生成システム及びプログラム
JP2017146607A (ja) * 2013-06-07 2017-08-24 株式会社ソニー・インタラクティブエンタテインメント ヘッドマウントディスプレイでユーザーの動きに応答する画像レンダリング
JPWO2017047178A1 (ja) * 2015-09-16 2018-07-05 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
KR20200076267A (ko) * 2018-12-19 2020-06-29 전자부품연구원 골격의 길이 정보를 이용한 제스쳐 인식 방법 및 처리 시스템
KR20230076966A (ko) * 2021-11-23 2023-06-01 한국공학대학교산학협력단 인간 친화형 로봇의 감정 표현을 위한 몸짓 시각화 정보 생성 방법 및 장치

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2011203028B1 (en) * 2011-06-22 2012-03-08 Microsoft Technology Licensing, Llc Fully automatic dynamic articulated model calibration
US9360932B1 (en) * 2012-08-29 2016-06-07 Intellect Motion Llc. Systems and methods for virtually displaying real movements of objects in a 3D-space by means of 2D-video capture
USD748148S1 (en) * 2013-02-23 2016-01-26 Samsung Electronics Co., Ltd. Display screen or portion thereof with icon
USD737326S1 (en) * 2013-02-23 2015-08-25 Samsung Electronics Co., Ltd. Display screen or portion thereof with icon
USD747743S1 (en) * 2013-02-23 2016-01-19 Samsung Electronics Co., Ltd. Display screen or portion thereof with icon
US10217284B2 (en) * 2013-09-30 2019-02-26 Qualcomm Incorporated Augmented virtuality
JP6315407B2 (ja) * 2014-09-17 2018-04-25 株式会社セガゲームス ゲームプログラム及びゲーム装置
EP3274986A4 (en) * 2015-03-21 2019-04-17 Mine One GmbH METHODS, SYSTEMS, AND SOFTWARE FOR VIRTUAL 3D
CN109558000B (zh) * 2017-09-26 2021-01-22 京东方科技集团股份有限公司 一种人机交互方法及电子设备
KR20200080047A (ko) * 2018-12-26 2020-07-06 삼성전자주식회사 진정 사용자의 손을 식별하는 방법 및 이를 위한 웨어러블 기기
US10705597B1 (en) * 2019-12-17 2020-07-07 Liteboxer Technologies, Inc. Interactive exercise and training system and method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6554706B2 (en) * 2000-05-31 2003-04-29 Gerard Jounghyun Kim Methods and apparatus of displaying and evaluating motion data in a motion game apparatus
US8114172B2 (en) * 2004-07-30 2012-02-14 Extreme Reality Ltd. System and method for 3D space-dimension based image processing
JP5085112B2 (ja) 2006-12-01 2012-11-28 株式会社バンダイナムコゲームス プログラム、情報記憶媒体及びゲーム装置
US20090069096A1 (en) * 2007-09-12 2009-03-12 Namco Bandai Games Inc. Program, information storage medium, game system, and input instruction device
JP2010237882A (ja) * 2009-03-30 2010-10-21 Namco Bandai Games Inc プログラム、情報記憶媒体及び画像生成システム
US8744121B2 (en) * 2009-05-29 2014-06-03 Microsoft Corporation Device for identifying and tracking multiple humans over time

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017146607A (ja) * 2013-06-07 2017-08-24 株式会社ソニー・インタラクティブエンタテインメント ヘッドマウントディスプレイでユーザーの動きに応答する画像レンダリング
JPWO2017047178A1 (ja) * 2015-09-16 2018-07-05 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US10977774B2 (en) 2015-09-16 2021-04-13 Sony Corporation Information processing apparatus, information processing method, and program for estimating prediction accuracy
JP2017138914A (ja) * 2016-02-05 2017-08-10 株式会社バンダイナムコエンターテインメント 画像生成システム及びプログラム
KR20200076267A (ko) * 2018-12-19 2020-06-29 전자부품연구원 골격의 길이 정보를 이용한 제스쳐 인식 방법 및 처리 시스템
KR102371127B1 (ko) * 2018-12-19 2022-03-07 한국전자기술연구원 골격의 길이 정보를 이용한 제스쳐 인식 방법 및 처리 시스템
KR20230076966A (ko) * 2021-11-23 2023-06-01 한국공학대학교산학협력단 인간 친화형 로봇의 감정 표현을 위한 몸짓 시각화 정보 생성 방법 및 장치
KR102669074B1 (ko) 2021-11-23 2024-05-24 한국공학대학교산학협력단 인간 친화형 로봇의 감정 표현을 위한 몸짓 시각화 정보 생성 방법 및 장치

Also Published As

Publication number Publication date
US20110306422A1 (en) 2011-12-15
EP2394711A1 (en) 2011-12-14
US8655015B2 (en) 2014-02-18

Similar Documents

Publication Publication Date Title
JP5148660B2 (ja) プログラム、情報記憶媒体及び画像生成システム
JP2011258160A (ja) プログラム、情報記憶媒体及び画像生成システム
JP2011258159A (ja) プログラム、情報記憶媒体及び画像生成システム
US10733781B2 (en) Virtual reality
US10445917B2 (en) Method for communication via virtual space, non-transitory computer readable medium for storing instructions for executing the method on a computer, and information processing system for executing the method
US8520901B2 (en) Image generation system, image generation method, and information storage medium
US9724609B2 (en) Apparatus and method for augmented reality
JP5081964B2 (ja) ゲーム装置、ゲーム装置の制御方法、及びプログラム
JP2011258158A (ja) プログラム、情報記憶媒体及び画像生成システム
JP7496460B2 (ja) 画像生成装置および画像生成方法
US20190018479A1 (en) Program for providing virtual space, information processing apparatus for executing the program, and method for providing virtual space
EP2395454A2 (en) Image generation system, shape recognition method, and information storage medium
US8684837B2 (en) Information processing program, information processing system, information processing apparatus, and information processing method
US10860089B2 (en) Method of suppressing VR sickness, system for executing the method, and information processing device
US20180299948A1 (en) Method for communicating via virtual space and system for executing the method
JP7104539B2 (ja) シミュレーションシステム及びプログラム
JP5213913B2 (ja) プログラム及び画像生成システム
JP2020184150A (ja) 情報処理装置、情報処理方法、及びプログラム
US20230360316A1 (en) Information processing device, information processing method, and information distribution system
WO2022107688A1 (ja) 画像生成装置、画像生成方法、およびプログラム
Luo et al. Research and simulation on virtual movement based on kinect