JP2012529112A - オブジェクト追跡のための色較正 - Google Patents

オブジェクト追跡のための色較正 Download PDF

Info

Publication number
JP2012529112A
JP2012529112A JP2012514024A JP2012514024A JP2012529112A JP 2012529112 A JP2012529112 A JP 2012529112A JP 2012514024 A JP2012514024 A JP 2012514024A JP 2012514024 A JP2012514024 A JP 2012514024A JP 2012529112 A JP2012529112 A JP 2012529112A
Authority
JP
Japan
Prior art keywords
color
colors
images
computing device
optical sensor
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
JP2012514024A
Other languages
English (en)
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.)
Sony Interactive Entertainment Inc
Original Assignee
Sony Interactive Entertainment Inc
Sony Computer Entertainment 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 Sony Interactive Entertainment Inc, Sony Computer Entertainment Inc filed Critical Sony Interactive Entertainment Inc
Publication of JP2012529112A publication Critical patent/JP2012529112A/ja
Pending legal-status Critical Current

Links

Images

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/20Input arrangements for video game devices
    • A63F13/22Setup operations, e.g. calibration, key configuration or button assignment
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/74Circuits for processing colour signals for obtaining special effects
    • H04N9/75Chroma key
    • 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/24Constructional details thereof, e.g. game controllers with detachable joystick handles
    • 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/80Special adaptations for executing a specific game genre or game mode
    • A63F13/843Special adaptations for executing a specific game genre or game mode involving concurrently two or more players on the same game device, e.g. requiring the use of a plurality of controllers or of a specific view of game data for each player
    • 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/1018Calibration; Key and button assignment
    • 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/1043Features 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 being characterized by constructional details
    • 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/301Features 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 using an additional display connected to the game console, e.g. on the controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【解決手段】追跡システムを較正するために、計算装置は、光学センサにより撮像された1以上の画像におけるオブジェクトの位置を検出する。計算装置は、1以上の画像に含まれる、1以上の画像においてオブジェクトにより発せられていない色である環境色を決定する。計算装置は、オブジェクトにより呈された場合に、オブジェクトを計算装置が追跡することを可能とする1以上の追跡可能な色を決定する、
【選択図】図1

Description

本出願は、米国特許法第119条(e)に基づいて米国仮出願第61/217,393号(2009年5月30日出願)の優先権を主張し、この出願は本明細書に援用される。
本発明は、一般に、追跡システムの較正に関し、とくに、追跡システムにより観測されるオブジェクトの色の較正に関する。
コンピュータゲーム産業において、ユーザとゲームシステムとの間のインタラクションを増加させるゲームの開発がトレンドになっている。よりリッチな対話式の体験を達成するための一つの方法は、ゲームコントローラを用いて、ゲームシステムがゲームコントローラの動きを追跡することによりユーザの動きを追跡し、その動きをゲームの入力として用いることである。一般に、ジェスチャー入力は、コンピュータシステム、ビデオゲームコンソール、スマートアプライアンスなどの電子機器を、オブジェクトを追跡するビデオカメラ又は他の位置センサにより取得されたジェスチャーに反応させるために適用される。
ユーザの位置及び動きの信頼できる測定を行うためには、一般に、ゲームシステムを較正する必要がある。このような較正は、ゲームシステムが使用されるたびに必要となる。従来のシステムにおいては、コントローラの色は変更されず、コントローラの位置の追跡もコントローラの色に基づくものではない。従来のゲームシステムにおける較正は、コントローラの色の較正を含まない。
本発明は、本発明の実施の形態を説明するために用いられる、下記の説明及び添付の図面を参照することにより、最も良く理解されうる。
図1は、本発明の一つの実施の形態における、追跡システムの透視図を示す図である。 図2Aは、本発明の一つの実施の形態における、ボール部を有するゲームコントローラを示す図である。 図2Bは、本発明の一つの実施の形態における、ボール部を有する別のゲームコントローラを示す図である。 図3は、本発明の一つの実施の形態における、ユーザに配置された複数のモーションキャプチャボールを示す図である。 図4は、本発明の一つの実施の形態における、追跡システムのブロック図を示す図である。 図5は、本発明の一つの実施の形態における、マルチプレイヤー環境の概略図を示す図である。 図6Aは、追跡システムを較正する方法の一つの実施の形態のフロー図を示す図である。 図6Bは、追跡システムを較正する方法の別の実施の形態のフロー図を示す図である。 図7Aは、追跡システムを較正する方法の更に別の実施の形態のフロー図を示す図である。 図BAは、追跡システムを較正する方法の更に別の実施の形態のフロー図を示す図である。 図8Aは、追跡システムを部分的に再較正する方法の一つの実施の形態のフロー図を示す図である。 図8Bは、光学センサの露出設定が変更されたときに追跡システムを再較正する方法の一つの実施の形態のフロー図を示す図である。 図8Cは、オブジェクトの色の偏差及び/又は光学センサのヴィネッティングをマッピングする方法の一つの実施の形態のフロー図を示す図である。 図9Aは、較正及び/又は色の再設定を実行した後に達成される較正結果を示す図である。 図9Bは、較正及び/又は色の再設定を実行した後に達成される較正結果を示す図である。 図9Cは、較正及び/又は色の再設定を実行した後に達成される較正結果を示す図である。 図9Dは、較正及び/又は色の再設定を実行した後に達成される較正結果を示す図である。 図9Eは、較正及び/又は色の再設定を実行した後に達成される較正結果を示す図である。 図10は、本発明の一つの実施の形態における、コントローラの位置を決定するために用いられうるハードウェア及びユーザインタフェースを示す図である。 図11は、本発明の一つの実施の形態における、命令の処理に利用可能な追加のハードウェアを示す図である。
本明細書では、ゲームシステム又は他の計算装置において用いられる追跡システムを較正するための方法及び装置が説明される。一つの実施の形態において、追跡システムを較正するために、計算装置は、光学センサにより撮像される1以上の画像においてオブジェクトの位置を検出する。計算装置は、画像に含まれる環境色を決定する。環境色は、1以上の画像におけるオブジェクトにより発光されていない色である。計算装置は、つづいて、もしオブジェクトにより呈されたとしたら計算装置がオブジェクトを追跡することが可能となるであろう1以上の追跡可能な色を決定する。
一つの実施の形態において、オブジェクトの位置の検出は、オブジェクトが予め定義された複数の色を順に呈するようにさせることを含む。1以上の画像は、予め定義された複数の色のそれぞれ別々の画像を含んでもよい。異なる画像において異なる色を有するピクセルの集合がオブジェクトとして識別されてもよい。一つの実施の形態において、環境色を決定するために、処理装置はオブジェクトの発光を停止させ、オブジェクトが発光していない間に1以上の画像が撮像される。オブジェクトが発光しない間に撮像された画像におけるオブジェクトの色は、オブジェクトにより出力される真の色を識別するために、オブジェクトが発光している間に撮像された画像のオブジェクトの色から減じられる。計算装置は、真の色出力情報及び環境色情報を用いて、いずれの色が追跡可能な色であるかを判定してもよい。これは、いずれの色が追跡可能な色であるかを決定するためにテストされる色をオブジェクトが実際に呈するようにすることなく実行されてもよい。
下記の説明においては、特定の数値的な詳細が示される。しかしながら、本発明が、これらの特定の詳細なしに実施されることが可能であることは、当業者には明らかである。いくつかの例において、本発明を不明瞭にするのを避けるために、詳細よりもむしろ、既知の構造及び装置がブロック図の形で示される。
下記の詳細な説明のいくつかの部分は、コンピュータメモリ内のデータビット上の演算のアルゴリズム及び記号表現の観点から示される。これらのアルゴリズムの記述及び表現は、その成果を最も効果的に他の当業者に伝えるために、データ処理の分野の当業者により用いられる手段である。アルゴリズムは、本明細書において、及び一般的に、所望の結果を達成する自己矛盾のない一連のステップであると理解されている。ステップは、物理量の必要な物理操作である。通常、必然的ではないが、これらの量は格納可能な電気的又は磁気的信号の形式をとり、送信され、結合され、比較され、及びその他の操作を受ける。これらの信号を、ビット、値、要素、記号、文字、項、数などと呼ぶことが、主に共通の使用のために、時に便利であることが立証されている。
しかしながら、これらの語及び類義語の全ては、適当な物理量に関連付けられるもので、これらの量に適用される単なる便利なラベルであることに留意するべきである。以下の議論から明らかであるように、とくにそうではないと断らない限り、詳細な説明の全体にわたって、「位置の検出」「決定」「追跡」「識別」「除外」などの語を用いた議論は、物理的(例えば電気的)な量としてコンピュータシステムのレジスタ及びメモリ内で表現されるデータを操作し、コンピュータシステムのメモリ又はレジスタ、又は、他の同様な情報ストレージ、通信又は表示装置の中で物理量として同様に表現される他のデータに変換するコンピュータシステム又は同様の電気的計算装置の動作及び処理のことを指すことが理解される。
本発明は、また、本明細書の手順を実行するための装置に関する。この装置は、要求される目的のために特別に構築されてもよいし、コンピュータに格納されたコンピュータプログラムにより選択的に作動された又は再構成された汎用コンピュータを備えてもよい。一つの実施の形態において、本明細書の手順を実行するための装置は、ゲームコンソール(例えば、ソニープレイステーション(登録商標)、ニンテンドーWii(登録商標)、マイクロソフトXbox(登録商標)など)を含む。コンピュータプログラムは、例えば、フロッピー(登録商標)ディスクを含む任意の種類のディスク、光ディスク(例えば、コンパクトディスクリードオンリーメモリ(CD−ROM)、ディジタルビデオディスク(DVD)、ブルーレイディスク(登録商標)など)、及び磁気光学ディスク、リードオンリーメモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気又は光学カード、又は電気的命令を格納するために適した任意の種類の媒体などのコンピュータ読み取り可能な記録媒体に格納されてもよい。
図1は、本発明の一つの実施の形態における、追跡システム100の透視図を示す。追跡システム100は、光学センサ105、光学センサ105により追跡されるオブジェクト110、及び光学センサ105及びオブジェクト110により取得されたデータを処理する計算装置115を含む。一つの実施の形態において、追跡システム100は、ゲームシステムの構成要素である。または、追跡システム100は、モーションキャプチャシステム又は他の計算システムの構成要素であってもよい。
光学センサ105は、二次元又は三次元空間におけるオブジェクト110の光学センサ105に対する位置を測定するセンサである。光学センサ105により検知される位置データ(例えば画像)は、撮像平面と撮像平面に垂直なベクトルにより定義される光学センサ105の参照フレーム150内のデータである。本明細書では、参照フレームは、オブジェクトの位置、方向及び他のプロパティを測定するための座標系として定義される。参照フレーム及び座標系という語は、本出願を通して交換可能に用いられる。
図示されるように、光学センサ105は、テレビジョンセット120の上面に、床150に対して負のピッチ145をもって設置される。ピッチ145は、光学センサ105の測定平面内にある光学センサの参照フレーム150の水平軸と重力135に垂直な平面との間の角である。
本発明の一つの実施の形態において、光学センサ105は標準的なビデオカメラである。この実施の形態において、光学センサ105は、深さ方向の情報(光学センサ105及びオブジェクト110の間の距離)を、オブジェクト110の大きさを特定する予め定義された情報及び/又は光学センサ105の視野(field of view:FOV)を特定する予め定義された情報に基づいて取得してもよい。視野125は、光学センサ105により撮像される所与のシーンの角度範囲である。視野は、カメラのレンズにより発生する画像の歪み(例えばズームの量)を定義する。オブジェクト110が光学センサ105から遠くへ移動するにつれて(すなわち、距離130が増加するにつれて)、光学センサ105により撮像されるオブジェクト110の画像は小さくなる。したがって、光学センサ105に対するオブジェクト110の距離130は、光学センサ105の視野125が既知であれば、追跡対象のオブジェクト110の画像の大きさ(例えば、ピクセルで測定される)の、追跡対象のオブジェクト110の既知の実際の大きさに対する比に基づいて決定できる。
本発明の別の実施の形態において、光学センサ105は、Zカメラ(映像を深さ方向の情報とともに撮像可能な単一レンズのビデオカメラ)又はステレオカメラ(三次元画像を撮像可能な2以上のレンズを有するビデオカメラ)である。この実施の形態において、光学センサ105は、オブジェクト110の大きさを特定するための情報を予め設定することなく、深さ方向の情報を取得することができる。
オブジェクト110は、赤・青・緑の光を発光するダイオード(RGB LED)などのマルチカラー発光体を含む電子機器である。マルチカラー発光体は、様々な色相及び輝度の光を発光することが可能である。一つの実施の形態において、オブジェクト110は、図2A及び2Bに示されたゲームコントローラなどの携帯型電子機器又は携帯型電子機器の一部である。別の実施の形態において、オブジェクト110は、図2Cに示すように、モーションキャプチャ(モーキャプ)ボールである。オブジェクト110は、正方形、球、三角形、又はより複雑な形状など、任意の形状を有してもよい。一つの実施の形態において、オブジェクト110は、球状の形状を有する。
図2Aは、本発明の一つの実施の形態における、ボール部205を有するゲームコントローラ200を示す。図2Bは、本発明の別の実施の形態における、ボール部215を有する別のゲームコントローラ210を示す。ある実施の形態において、ボール部205及び215は、図1のオブジェクト110に相当する。
ボール部205及び215は、異なる色であってもよく、一つの実施の形態において、ボール部205及び215は、発光してもよい。一つの実施の形態において、ボール部205、215は、多数の異なる色を呈するために、発光することができる。一つの実施の形態において、RGBのLEDなどの発光体がボール部205、215の内部に配置される。球状のボール部が示されているが、ボール205及び215は、球の一部、完全ではない球、アメリカンフットボール又はラグビーで使われるような引き伸ばされたボール、立方体状の形状など、視覚的に追跡する目的のために、他の形状を有していてもよい。一つの実施の形態において、ボール部205及び215は、直径4cmである。しかしながら、より大きい、又は、より小さい大きさであってもよい。より大きい場合は、視覚的に認識しやすい。例えば、直径が5cmのボールでは、4cmのボールに比べて、画像認識におけるピクセル数が約55パーセント多くなる。
図3は、本発明の一つの実施の形態における、ユーザ325に配置された複数のモーキャプボール320を示す。モーキャプボール320は、光学センサがモーキャプボール320の間の位置又は角度に基づいてユーザの動きを取得し認識するために、それぞれ近接して接合するようにユーザ325により装着されるマーカである。一つの実施の形態において、モーキャプボール320は、モーションキャプチャスーツに装着される。一つの実施の形態において、それぞれのモーキャプボール320は、マルチカラー発光体を含む。受信したコマンドに応じて、それぞれのモーキャプボール320は、割り当てられた色を呈することができる。一つの実施の形態において、全てのモーキャプボールに同じ色(例えば、特定の緑の色調)が割り当てられる。または、異なるモーキャプボールに、同一の色の異なる色調や、異なる原色など、異なる色が割り当てられてもよい。
図1に戻り、オブジェクト110及び/又は光学センサ105は、有線及び/又は無線接続を介して計算装置115に接続される。有線接続は、例えば、IEEE1394(ファイヤーワイヤー(登録商標))ケーブル、イーサネット(登録商標)ケーブル、及びユニバーサルシリアルバス(USB)ケーブルなどを介した接続を含む。無線接続は、例えば、無線忠実(WiFi)接続、ブルートゥース(登録商標)接続、ジグビー(登録商標)接続などを含む。図示された実施の形態において、光学センサ105は、有線により計算装置115に接続する。
計算装置115は、ビデオゲームコンソール、パーソナルコンピュータ、ゲーム機、又は他の計算装置であってもよい。計算装置115は、オブジェクト110からのユーザ入力に応答可能なゲーム又は他のアプリケーションを実行してもよい。オブジェクト110は追跡され、オブジェクト110の動きはユーザ入力を提供する。
室内光、様々な色の背景オブジェクトの存在、ユーザの衣服、日時などの環境条件が追跡可能な色に影響を与える。さらに、輝度や色相などの色の属性はオブジェクトの間で様々でありうる。さらに、単一のオブジェクトの色であっても、オブジェクトの表面にわたって様々でありうる。したがって、追跡システム100がオブジェクトの色を用いてオブジェクト110を正確に追跡可能とするために、事前に追跡システム100を較正する必要がある。追跡システム100の較正は、追跡可能な色の決定を含む。追跡可能な色は、オブジェクト110により呈された場合にオブジェクトを追跡可能となる色である。一つの実施の形態において、光学センサ105の視野125に含まれない(又は含まれる色の量が閾値よりも少ない)色が追跡可能な色である。追跡システム100の較正は、ボールが特定の色を発光するときに、どの色を探索するかの決定を更に含んでもよい。例えば、オブジェクト110が赤い光を発光する場合、計算装置115は、オレンジから深い赤までの範囲の色を探索してもよい。色の較正は、環境光の条件(例えば環境色)の決定及びその補償を更に含んでもよい。色の較正は、図6A〜9Eを参照して、以下に詳述される。
図4は、本発明の一つの実施の形態における、追跡システム400のブロック図を示す。追跡システム400は、光学センサ405に物理的に接続された計算装置415を含む。一つの実施の形態において、計算装置415は、光学センサ405により追跡されるオブジェクト410に無線接続される。計算装置415は、光学センサ405に無線接続され、及び/又は、オブジェクト410に物理的に接続されてもよいことが留意されるべきである。一つの実施の形態において、追跡システム400は、図1の追跡システム100に相当する。
オブジェクト410は、マルチカラー発光体420を含む。一つの実施の形態において、マルチカラー発光体420は、RGBのLEDである。または、マルチカラー発光体420は、分離した赤のLED、緑のLED、及び青のLEDを含んでもよい。マルチカラー発光体420は、他の種別のカラー光源を含んでもよいが、全ての範囲の色を発光可能であることが望ましい。
光学センサ405は、ビデオカメラ、Z−カメラ、ステレオカメラ、又は画像を撮像可能な他の装置であってもよい。オブジェクト410が移動されるとき、光学センサ405は、オブジェクト410を含む画像を撮像する。光学センサ405は、計算装置415へ画像を送信する。一つの実施の形態において、光学センサ405は、画像データが取得されるとリアルタイムに計算装置415に画像データを流す。
計算装置415は、ビデオゲームコンソール、パーソナルコンピュータ、ゲーム機などであってもよい。計算装置415は、撮像された画像に含まれる特定の色を探索することによりオブジェクト410を追跡するオブジェクト追跡部440を含む。オブジェクト追跡部440は、特定の色を用いてエッジ分析を更に実行し、エッジ分析からオブジェクト410の形状を決定してもよい。オブジェクト追跡部440は、色追跡だけでなくエッジ分析を用いることにより、正確さ及び精度を向上させることができる。
一つの実施の形態において、光学センサ405により画像が撮像され、オブジェクト410がオブジェクト追跡部440により追跡されるとき、オブジェクト410の位置の変更は、計算装置415がゲームやコンピュータアプリケーションなどを制御するための入力として用いられる。例えば、オブジェクト410の位置の変更は、本人又は第三者視点のゲームにおけるキャラクタを制御したり、画面上のマウスカーソルを移動させたりするために用いることができる。別の実施の形態において、オブジェクト410から受信された慣性データは、計算装置415への入力として用いられる。または、慣性データは、光学センサ405から取得された位置データと組み合わせて、計算装置415に対する正確かつ精密な入力を提供するために用いられてもよい。
一つの実施の形態において、計算装置415は、オブジェクト410及び取得した画像の残り(例えば、背景オブジェクトによる環境色、環境光など)の色データに基づいて追跡システム400を較正する較正ロジック432を含む。較正ロジック432は、1以上のハードウェア論理回路であってもよい。または、較正ロジックは、処理装置(例えば、セルプロセッサ、中央処理装置、又は他の処理装置)により実行されるロジックであってもよい。較正ロジック432は、ハードウェア論理回路と処理装置により実行されるソフトウェアロジックとの組み合わせを含んでもよい。
一つの実施の形態において、較正ロジック432は、較正中にオブジェクト410がどこにあるかの初期決定を行うオブジェクト位置検出部436を含む。較正ロジック432は、オブジェクトが一連の色(例えば、原色)の間で循環されている間に、複数の画像を光学センサに撮像させてもよい。オブジェクト位置検出部436は、画像内のどのピクセルが画像間で変化するか(例えば、オブジェクト410が緑であるときに緑であり、オブジェクト410が青であるときに青であり、オブジェクト410が赤であるときに赤であるピクセル)を決定してもよい。オブジェクト位置検出部436は、これらのピクセルを、オブジェクトを表すものとして識別してもよい。
オブジェクト位置検出部436によりオブジェクト410の画像内の位置が特定されると、色評価部438は、画像内に含まれる環境色(背景色などのオブジェクト410を原因としない色)を決定する。色評価部438は、オブジェクト410により呈された場合に(例えば、マルチカラー発光体420により発光された場合に)容易に追跡可能な色、及び、正確に追跡することが困難又は不可能な色を更に決定する。色評価部438は、検出された、室内光により生じたオブジェクトの色(環境色の寄与)から、検出された、オブジェクトにより発光された色(オブジェクト発光色)を分離することにより、追跡可能な色の集合を決定してもよい。色評価部438は、複数の異なる可能な色についてのしきい値の組を算出し、背景画像が色のしきい値の範囲内にある色を含むか否かを判定してもよい。
色評価部438が追跡可能な色の集合を決定すると、追跡可能色データ構造442に追跡可能な色を追加してもよい。追跡可能色データ構造442は、メモリに格納されてもよい。一つの実施の形態において、色評価部438は、光学センサ405の特定の露出設定について、追跡可能な色の集合を決定する。色評価部438は、特定の露出設定における追跡可能な色の強度設定だけでなく色相設定を決定してもよい。一つの実施の形態において、光学センサの露出設定が変更されると、色評価部438は、追跡可能な色を再計算し、追跡可能色データ構造442を更新する。色較正は、図6A−9Eを参照して、以下に詳述される。
図5は、一つの実施の形態における、プレイヤーにより把持された異なるコントローラの位置を決定するために視覚情報が用いられる、マルチプレイヤー環境500の概略図を示す。マルチプレイヤー環境500において、光学センサ508はプレイフィールド518の画像データを取得し、画像データはボールが設けられたコントローラC、C、C、及びCの位置を取得するために分析される(例えば、背景色及びボールが設けられたコントローラの色に基づいて)。距離dz1、dz2、dz4、及びdz5は、取得された画像におけるそれぞれのボールの形状及び大きさを分析することにより推定される。
ゲームプレーの前に、ボールが設けられたコントローラC、C、C、及びCのそれぞれについて較正が実行される。室内光及び色の条件が全てのコントローラについてほぼ同一であったとしても、一つの実施の形態において、それぞれのコントローラについて独立して較正が実行されるべきである(それぞれのコントローラの較正は同時に実行してもよい)。このような独立した較正により、例えばそれぞれのコントローラに含まれるRGBのLEDなどのマルチカラー発光体における偏差や、それぞれのコントローラの位置における室内光の差違を調整することができる。例えば、コントローラC及びコントローラCは、青色を発光するよう指示されたとき、わずかに異なる色相及び/又は強度の青色を発光するかもしれない。独立した較正により、このような相違を補償することができる。
使用されるコントローラのそれぞれのプロファイルが既に計算装置502に保持されている一つの実施の形態において、それぞれのコントローラの独立した較正は不要である。このような実施の形態においては、一つだけのコントローラを用いた一回の較正が実行可能である。較正の結果は、較正が行われたコントローラのプロファイルと他のコントローラのプロファイルとの間の差に基づいて修正することができる。例えば、計算装置502が、コントローラCがCよりも明るい緑の色調を生じることを知っている場合、色の較正をCにより実行し、コントローラCに適用するために修正することができる。
コントローラが較正されると、計算装置502は、計算装置502上で実行されているゲームにおいて発生する事象に基づいて、コントローラ(又はコントローラの一部)が使用可能(追跡可能)な色を呈するようにさせることができる。例えば、プレイヤーBがゲームにおいて水の魔法をかけようとするとき、コントローラCを青色にすることができる。計算装置502は、コントローラが呈するよう指示された色に依存する特定の色又は色の集合を探索することによりコントローラを追跡する。ゲーム中に、異なるコントローラが異なる色を呈してもよい。計算装置は、取得した座標及び距離を用いて、画面504におけるプレイヤーの表現であるアバター512a及び512bをそれぞれ生成する。良好な画像認識のための典型的な距離は、約10フィート(3メートル)である。視覚認識を用いることの一つの利点は、コントローラを変更する必要なく、画像取得及び画像認識の向上をシステムに取り込めることである。
図6は、一つの実施の形態に係る追跡システム較正する方法600の例を示すフロー図である。方法は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(例えば、処理装置上で実行される命令)、又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。一つの実施の形態において、方法600は、図1の計算装置115により実行される。
図6Aを参照して、ブロック602において、計算装置は、複数の色を呈することができるオブジェクトの色較正を開始する。一つの実施の形態において、色較正は、ゲーム又は他のアプリケーションが計算装置115において開始されるたびに実行される。または、色較正は、追跡対象のオブジェクトが、一定期間の静止の後、動きが検出されるたびに実行されてもよい。または、色較正は、較正信号を受け付けたときに実行されてもよい。較正信号は、ユーザが追跡対象のオブジェクトに含まれる特定のボタン又は一連のボタンを押したときに、追跡対象のオブジェクトにより生成されてもよい。色較正は、継続的に実行されてもよい。
一つの実施の形態において、計算装置は、色較正の開始にあたって、オブジェクトを所定の色に呈させる(発光させる)コマンドをオブジェクトに送信する。別の実施の形態において、計算装置は、オブジェクトを一連の複数の色(例えば原色)に呈させるコマンドをオブジェクトに送信する。別の実施の形態において、ユーザは、色較正の間、オブジェクトを特定の位置に保つよう要求される。例えば、画面の特定の位置に円が表示されてもよい。ユーザは、画面におけるオブジェクトの画像が円に揃うまでオブジェクトを移動するように要求されてもよい。
ブロック605において、光学センサは、1以上の画像を撮像する。複数の画像が撮像される場合、画像のそれぞれは、オブジェクトが異なる色を発光している間に撮像されてもよい。例えば、オブジェクトは、順に、赤、緑、及び青の原色を発光するようにされてもよい。オブジェクトが赤、緑、及び青の光を発光している間、別々の画像が撮像されてもよい。全ての色は、赤、緑、及び青の一次結合であるから、これらの色の特性が明らかになれば、全ての色の較正情報を決定することができる。オブジェクトがいずれの色の光も発光していないときに、1以上の画像が撮像されてもよい。一つの実施の形態において、画像は、光学センサの最小又は低い露出設定において撮像される。低い露出設定により、彩度及び動きのぶれが低減される。光学センサは、画像を計算装置へ送信する。一つの実施の形態において、計算装置は、光学センサの二次元参照フレームにおける画像を受信する。
ブロック610において、計算装置は、画像(又は複数の画像)内のオブジェクトの位置を検出する。一つの実施の形態において、計算装置は、オブジェクトが画像において呈する所定の色を探索する。所定の色(又は所定の色からわずかにずれた色)に対応する画像内のピクセルが、オブジェクトであると決定される。例えば、マゼンタは、画像内に通常現れない比較的希少な色である。オブジェクトはマゼンタに変更されてもよく、計算装置は光学センサにより撮像された画像におけるマゼンタのピクセルを探索してもよい。別の実施の形態において、計算装置は、オブジェクトが特定の位置にあると仮定する。
ブロック615において、計算装置は、画像の環境色を決定する。一つの実施の形態において、環境色は、オブジェクトに対応しない画像のピクセルに含まれる全ての色を含む。一つの実施の形態において、計算装置は、画像の色のヒストグラムを生成し、オブジェクトに対応する画像のピクセルをヒストグラムから減じる。残りの色は、画像の背景に含まれる全ての環境色を表す。一つの実施の形態において、環境色の決定は、オブジェクトがいずれの光も発光していなかったときの(ブロック610において識別された)オブジェクトを表すピクセルの色の識別を含む。これらの色は、オブジェクトにより反射された環境色であると決定される。
ブロック630において、計算装置は、どの色がオブジェクトに使用可能であるか(どの色が追跡可能な色であるか)を決定する。追跡可能な色は、オブジェクトにより呈された場合に、環境色から容易に区別することができる色(例えば、背景オブジェクト及び環境光に起因する色)である。計算装置は、色相及び強度の小さな差違を検出可能である。したがって、同一の色の間の(例えば、明るい青と暗い青の間の)わずかな違いを容易に区別することができる。計算装置は、異なる色(例えば、異なる原色)の間でも容易に区別することができる。使用可能な色は、オブジェクトを光学センサ及び計算装置により正確に追跡されることを可能とする。一つの実施の形態において、使用可能な色の決定は、一連の色を循環させ、それらの色を用いて背景からオブジェクトを区別することがどの程度容易であるかを確認することを含む。これは、以前に取得された画像に基づいて計算的に実行されてもよい。したがって、オブジェクトは、それらの色が追跡可能な色であるかを決定するために、テストされる色を呈する必要がない。使用可能な色が決定されると、方法は終了する。
図6Bは、追跡システムを較正する方法686の別の実施の形態のフロー図を示す。方法は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(例えば、処理装置上で実行される命令)、又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。一つの実施の形態において、方法686は、図1の計算装置115により実行される。
図6Bを参照して、ブロック687において、計算装置は、複数の色を呈することができるオブジェクトの色較正を開始する。ブロック688において、計算装置は、オブジェクトに特定の色を呈する(発光する)ように、又はいずれの色も発光しないように指示する。一つの実施の形態において、計算装置はオブジェクトに原色を発光するよう指示する。オブジェクトは、特定の色を特定の輝度レベルで発光するように指示されてもよい。ブロック689において、光学センサは、オブジェクトを含むシーンのディジタル画像を撮像する。光学センサは、所定の露出設定でディジタル画像を撮像してもよい。
光学センサはフレームレートを有し、それぞれのフレームの別々の画像を撮像する。一つの実施の形態において、光学センサは、1秒に60フレームのフレームレートを有し、それぞれのフレームは、光学センサにより1/60秒間に観測された全てを含む。オブジェクトがフレームの中間で色を変更すると、フレームはオブジェクトの2つの色を含み、不正確となる。一つの実施の形態において、計算装置は、光学センサのクロックとは非同期のクロックを有する。この場合、一つの実施の形態において、オブジェクトがフレーム全体にわたって特定の色(又は無色)を有している画像が撮像されることを保証するために、オブジェクトは、少なくとも3フレームの間(例えば、3つの画像が撮られる)、特定の色に呈される。このため、オブジェクトの色が一定に保たれたフレームが少なくとも1つある。
別の実施の形態において、光学センサのクロックは、計算装置のクロックに同期されてもよい。光学センサのフレームレートとオブジェクトが特定の色を呈されているときとの間のタイミングは、計算装置により管理される。計算装置は、オブジェクトの色が光学センサのフレームと揃い、フレームが完了するまでオブジェクトが色を変更しないことを保証することができるように、オブジェクトの色のタイミングを図る。この実施の形態において、オブジェクトは、たかだか1つのフレーム(例えば1つの画像)の間、それぞれの試される色に呈されてもよい。光学センサのクロックが計算装置のクロックに同期される場合、全ての画像は人間が目で見ることができるよりも速く撮像することができる。さらに、色較正は、オブジェクトが素早く移動しているのでなければ、オブジェクトが移動していても実行することができる。
オブジェクトが特定の色に呈されているとき、オブジェクトの異なる部分が異なる方法で背景の環境(例えば、環境光)と相互作用しうる。したがって、オブジェクトの異なる部分が異なる色を有するように見えうる。換言すれば、オブジェクトは、通常、単一の色ではなく色の集合として観測される。さらに、異なる色がサンプリングされると、オブジェクト全体にわたる色の分布が異なる。例えば、オブジェクトが赤く光るとき、オブジェクトはオレンジから明るい赤まで分布しうる。オブジェクトが青く光るとき、オブジェクトは中間から暗い青の、狭い範囲の色となりうる。
ブロック690において、計算装置は、更に画像を撮像する必要があるか決定する。一つの実施の形態において、計算装置は、オブジェクトに複数の色を順に発光させる。ブロック688及び689は、オブジェクトが呈されるそれぞれの色について繰り返されてもよい。一つの実施の形態において、オブジェクトは、原色(赤、緑、及び青)のそれぞれに呈される。一つの実施の形態において、オブジェクトは、更にどの色も発光しないようにされ、どの色も発光していない間(例えば、オブジェクトのマルチカラー発光体がオフにされている間)に1以上の画像が撮像される。
ブロック691において、計算装置は、オブジェクトが異なる色を発光している間に撮像された画像を用いて、画像内のオブジェクトの位置を検出する。それぞれの画像について、画像が撮像されたときにオブジェクトが呈されていた色に対応する画像内のピクセルが識別されてもよい。オブジェクトが赤色を発光していたときに撮像された画像について、赤いピクセルが識別され、オブジェクトが緑色を発光していたときに撮像された画像について、緑のピクセルが識別され、オブジェクトが青色を発光していたときに撮像された画像について、青いピクセルが識別されてもよい。赤の画像における赤いピクセル、緑の画像における緑のピクセル、及び青の画像における青いピクセルは、オブジェクトを表すピクセルとして識別されてもよい。こうして画像の位置が検出される。
一つの実施の形態において、画像が撮像される間、オブジェクトはほぼ静止しているべきである。ほぼ静止した状態は、画像における位置の差を生じる動きが、ピクセル数のしきい値よりも小さいと定義されてもよい。したがって、ブロック692において、計算装置は、画像が撮像される間にオブジェクトが移動したか否かを判定する。一つの実施の形態において、オブジェクトは、加速度計、磁力計、及び/又はジャイロスコープなどの1以上の慣性センサを含む。慣性センサが撮像中の移動を伝達する場合、計算装置は、オブジェクトが移動したと判定してもよい。さらに、オブジェクトの形状が計算装置により知られてもよい。オブジェクトが撮像中に移動した場合、オブジェクトの形状は、オブジェクトが画像内で示すと予期される形状に比べて圧縮されて見えうる。例えば、オブジェクトがボールである場合、画像におけるオブジェクトの縦横比は1対1となるはずである。オブジェクトが1対1の縦横比を有しない(圧縮されて見える)場合、計算装置は、オブジェクトが撮像中に移動していたと判定してもよい。オブジェクトが撮像中に移動していた場合、方法はブロック688に戻る。オブジェクトが撮像中にほぼ静止していた場合、方法はブロック693へ続く。
オブジェクトにより発光された光に起因しない全ての色は、環境色とみなされる。一つの実施の形態において、オブジェクトは、発光していない間、それ自身の色を有しない。したがって、オブジェクトがいずれの光の発光しなかったときに撮像された画像は、環境色を決定するために用いられる。オブジェクトは、それが存在する環境の照明に基づいた色を有するように見えうる。照明環境により追加された色は、オブジェクトがいずれの色も発光していないとき(例えば、オブジェクトがオフにされているとき)に撮像された画像を分析することにより決定することができる。オブジェクトの位置が分かっているので、計算装置は、画像において、オブジェクトによるのではなく、環境の照明条件により生じているオブジェクトの色を決定することができる。
一つの実施の形態において、環境光に基づいて、オブジェクトのある部分は室内光により大きく影響された色を有し、他方、オブジェクトの他の部分はあまり影響されないということがありうる。一つの実施の形態において、計算装置は、信頼できない(例えば、大きな影響を受けている)オブジェクトの部分を識別し、それらの部分のピクセルを追跡又は較正に用いないようにする。例えば、計算装置は、照明が点けられていないオブジェクト(いずれの色の光も発光していないときのオブジェクト)に基づいて、オブジェクトの上半分は白く飽和していると決定してもよい。したがって、全ての色について、オブジェクトの上半分は、追跡又は較正に考慮されない。
ブロック693において、計算装置は、オブジェクトの色に対する環境色の寄与を決定する。オブジェクトがいずれの光も発光していないとき、オブジェクトに対応するピクセルの全ての色は環境色(例えば、環境光)に起因する。この同一の環境色は、他の全ての画像におけるオブジェクトに含まれる。したがって、計算装置は、オブジェクトが光を発光している他の画像において観測されたオブジェクトの色から環境色を減じることにより、オブジェクトにより発光されている実際の色を決定することができる。
ブロック694において、計算装置は、オブジェクトが異なる色を発光していたときに撮像された画像のそれぞれに含まれるオブジェクトの色から、環境色の寄与を減じる。残りの値は、オブジェクトにより発光された現実の色を表す。
オブジェクトにより発光された色は、光学センサにより観測された色と同一ではない。例えば、オブジェクトが最大の赤を発光し、緑と青を発光しないとき、光学センサは、0.7の赤、0.2の青、及び0.1の緑を測定しうる。オブジェクトが呈されたそれぞれの色(例えば、原色のそれぞれ)について、光学センサにより観測されたカラー値から環境色が減じられる。結果のカラー値は、特定の原色の設定のためのオブジェクトの発光色として記録される。このように、オブジェクトにより発光された色付きの光による現実の色が決定される。したがって、環境色とオブジェクトの色は分離することができる。
一つの実施の形態において、オブジェクトが発光した色の値のそれぞれは、画像においてオブジェクトを表す全てのピクセルの平均である。または、オブジェクトが発光した色の値は、オブジェクトを表すピクセルの中央値を用いて算出されてもよい。一つの実施の形態において、エッジ検出がオブジェクトのエッジを識別するために用いられ、オブジェクトのエッジに位置するピクセルは、オブジェクトが発光した色の決定(例えば、オブジェクトを表すピクセルの平均値又は中央値の算出)には用いられない。
一つの実施の形態において、オブジェクトの色から環境色を分離することにより、オブジェクトのカラー値は、露出及びゲインに不可知的になる。したがって、光学センサの露出設定は、色の較正を完全に再実行する必要を生じさせることなく、いつでも変更することができる。さらに、オブジェクトの色と環境色を別々に決定することにより、計算装置は、この情報を用いて、オブジェクトの異なる色相及び輝度の設定において、及び、光学センサの異なる露出及びゲインの設定において、オブジェクトがどのように見えるか(オブジェクトが何色を有するか)を予測することができる。露出及びゲインは線形であるから、露出を倍にすると、環境色及びオブジェクトが発光した色の双方の色の寄与は倍になる。
ブロック695において、計算装置は、追跡可能な色を決定する。一つの実施の形態において、計算装置は、複数の異なる色について、カラー値のしきい値を設定する。カラー値のしきい値は、オブジェクトの特定の色設定について、オブジェクトに関連付けられる色の集合を表す。カラー値のしきい値のそれぞれについて、計算装置は、カラー値のしきい値内に入る背景(環境色)のピクセルの数を決定する。特定の色設定において、カラー値のしきい値内に入るピクセルの量が最大値よりも多ければ、その色設定は追跡のために使用できない(追跡可能な色ではない)。一つの実施の形態において、カラー値のしきい値内に入るピクセルが画像内で20ピクセルよりも多ければ、そのカラー値のしきい値に関連付けられた色設定は追跡可能な色ではない。シーンと衝突しない色(環境色に含まれない色、又は環境色にたかだか数ピクセルしか含まれない色)は、追跡可能な色であると決定される。これは、単純に静的な計算であってもよい。
一つの実施の形態において、オブジェクトがいずれの色も発光していなかったときに撮像された画像は、可能性のある色に関連付けられた色のしきい値と比較するために用いられる。または、オブジェクトに対応するピクセルがマスクされている場合は、オブジェクトが色を発光していたときに撮像された画像のうちの1つが用いられてもよい。結果は、それぞれの色のピクセル(その色のしきい値内にあるピクセル)が画像内にいくつあるのかを識別する配列であってもよい。この情報は、追跡可能でない色のギャップを含む色相のバーとして出力されてもよい。
一つの実施の形態において、カラー値のしきい値は、360の異なる色設定についてチェックされる。それぞれの色設定は、光学センサの特定のゲイン設定及び露出設定においてチェックされてもよい。使用される色のしきい値は、使用される色空間に依存する。例えば、YUV色空間が用いられる場合、UVしきい値が設定される(色設定の矩形として表される)。他方、RGB色空間が用いられる場合、RGBしきい値が設定される(カラー値の円錐、円、又は球として表される)。
光学センサは、それぞれの原色について飽和点を有する(例えば、赤の飽和点、青の飽和点、及び緑の飽和点)。オブジェクトは、シーンの残りに比べて顕著に明るく保たれるのがよい。したがって、追跡可能な色を識別するために探索される色は、三原色のうちの1つ又は2つについて、環境色とオブジェクトが発光する色との和が飽和点に近いように設定される。全ての色は、たかだか2つの原色の組み合わせである。したがって、全ての探索される色は、せいぜい、三原色のうちの2つの強度値の組み合わせのいくつかを含む。一つの実施の形態において、飽和点の値は255であり、1つ又は2つの原色の強度は、オブジェクトが発光する光と環境色の和の値が235に等しくなるように設定される。
オブジェクトの色は、下記の式により記述できる。
(オブジェクト色)*(露出)+(環境色)*(露出)=合計色
したがって、オブジェクトが発光した色と環境色を分離することにより、露出が調整されるときに、オブジェクトが発光する色を調整して合計の色を制御することができる。
一つの実施の形態において、色のしきい値は、30%の色の偏差を許容する。したがって、対象色から30%未満ずれた色は、特定の追跡可能な色に含まれる。別の実施の形態において、より小さな色の偏差又はより大きな色の偏差が、それぞれの色のしきい値において許容される。単一の色設定について許容される偏差を縮小する利点は、より多くの色が使用できることである。
一つの実施の形態において、追跡可能な色の集合を決定する前に、画像はぼかされる。ぼかしは、ピクセルのカラー値を、周囲のいくつかのピクセルの組み合わせ(例えば、平均)に置換することにより実行されてもよい。これにより、光学センサのドット落ち(例えば、常に緑を検知するピクセル)により生じる問題を回避することができる。これにより、モアレパターン(背景オブジェクトが高いコントラストの境界を有する場合に生じうる)を回避することもできる。
以下の例について考える。背景画像が黄色の壁、緑色の植物、及び赤色のソファを含むと仮定する。この場合、画像の多く(例えば、多くのピクセル)が、特定の色調の黄色、緑色、及び赤色を含みうる。例えば、オブジェクトが特定の色調の赤色を呈するようにされるとき、オブジェクトのほとんどは、ソファの色と同一又は類似の色を有するように観測されうる。したがって、画像においてソファとオブジェクトを区別することは困難であろう。オブジェクトが正確に追跡できない状況を避けるために、オブジェクトは、ソファのために背景に含まれる赤色の色調を有するように観測されるような色を呈するようにはされないべきである。同様に、オブジェクトは、壁及び植物に起因する特定の色調の緑色又は黄色を呈するようにされないべきである。
ブロック696において、計算装置は、使用可能な色が十分あるかを決定する。一つの実施の形態において、少なくとも存在するオブジェクトと同じ数の追跡可能な色があれば、使用可能な色が十分ある。それぞれのオブジェクトは異なる色を呈し、独立に追跡されることができる。または、追跡可能な色のしきい値(例えば、15色)があってもよく、追跡可能な色がしきい値よりも少なければ、追跡可能な色が十分でないとされてもよい。一つの実施の形態において、追跡可能な色が十分なければ、方法はブロック697へ続く。別の実施の形態において、追跡可能な色が十分なければ、方法はブロック699へ続く。追跡可能な色が十分あれば、方法はブロック698へ進む。
ブロック697において、計算装置は、ユーザに環境を変更するよう指示する。一つの実施の形態において、計算装置は、光学センサにより測定された環境光の量を決定することができる。環境光が強すぎる場合、色が飽和するので、追跡を困難にし、追跡可能な色の量を低減させる。したがって、環境光が強い場合、計算装置は、照明を消す、及び/又は、ブラインド/カーテンを閉じるようユーザに指示してもよい。
一つの実施の形態において、背景が異なる色を多く含み過ぎる場合、使用可能な色が十分でなくなりうる。多くの異なる色を有する一般的な背景オブジェクトは、テレビジョン、ラーヴァランプ、ネオンサイン、クリスマスツリーなどの発光可能なオブジェクトである。使用可能な色が十分ない場合、ユーザは、背景のテレビジョン、ラーヴァランプなどを消すように指示されてもよい。背景が単に多くの異なる色のオブジェクトを含む場合も、追跡可能な色の数を限定させる。一つの実施の形態において、特定の色が使用されることを妨げている背景オブジェクトを強調表示した画像をユーザに表示する。これらの背景オブジェクトは、振動されてもよいし、残りの画像がグレースケールを用いて表示される中でカラー表示されてもよいし、それらを指す矢印とともに表示されてもよい。ユーザは、識別されたオブジェクトのいずれかを背景から移動させれば、更なる色が使用可能となることを通知されてもよい。ユーザが背景を変更すると(例えば、オブジェクトを移動させたり、発光するオブジェクトを消したり、ブラインドを閉じたりすることにより)、方法はブロック688に戻る。
ブロック699において、計算装置は、追跡可能な色を決定するために用いられる1以上の要求を緩和する。一つの実施の形態において、要求の緩和は、色のしきい値内にあることを許容される背景画像のピクセルの最大量を増加させることを含む。例えば、追跡可能な色について許容されるピクセルの最大値は、40ピクセル、60ピクセルなどに増加されてもよい。これにより追跡の質は低下するかもしれないが、追跡に使用可能な色の数は増加する。
ブロック698において、計算装置は、特定の追跡可能な色をオブジェクトに割り当て、追跡を開始する。オブジェクトに割り当てられる色は、アクティブなゲーム又は他のアプリケ−sひょんに基づいてもよい。一つの実施の形態において、計算装置は、ゲーム又はアプリケーションに追跡に使用可能な色を通知し、ゲーム/アプリケーションは、追跡可能な色のいずれかを動的に選択してもよい。または、最良の追跡を提供する色が特定されてもよく、オブジェクトはこの色に呈されてもよい。一つの実施の形態において、最良の追跡を提供する色は、環境色のいずれとも最も異なる色である。一つの実施の形態において、計算装置は、オブジェクトが追跡容易な色を有することを保証するために、オブジェクトの色を動的に変更する。一つの実施の形態において、計算装置は、特定の色の範囲内にある色の間でオブジェクトを自動的に変更する。例えば、オブジェクトが赤色である場合、オブジェクトは、最良の追跡色を維持するために、追跡可能な赤色の間で自動的に切り替えられる。さらに、いずれかの地点でオブジェクトの位置が分からなくなった場合、オブジェクトは新しい追跡可能な色で発光するようにされてもよい。
光学センサのクロックが計算装置のクロックと同期していない一つの実施の形態において、較正はおよそ4分の1秒かかる。別の実施の形態において、較正にかかる時間は4分の1秒よりも短い(例えば、16分の1秒)。このような高速な較正は、例えば、同期したクロックが用いられるときに実現可能である。
図7Aは、追跡システムを較正する方法750の更に別の実施の形態のフロー図を示す。方法は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(例えば、処理装置上で実行される命令)、又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。一つの実施の形態において、方法750は、図1の計算装置115により実行される。
図7Aを参照して、ブロック755において、計算装置は、複数の色を呈することが可能なオブジェクトの色較正を開始する。ブロック760において、光学センサは、第1の画像を撮像する。第1の画像は、オブジェクトのマルチカラー発光体が消されている間に撮像される。光学センサは、計算装置へ画像を送信する。
ブロック765において、計算装置は、画像の背景色を決定する。一つの実施の形態において、オブジェクトは、いずれの色の光も発光していないとき、いずれの色も有しない。したがって、画像における全ての色は背景からのものである。
ブロック770において、計算装置は、背景にない色にオブジェクトを呈させる。例えば、背景が青ければ、オブジェクトは赤い光を発光するようにされてもよい。ブロック775において、光学センサは第2の画像を撮像し、計算装置へ第2の画像を送信する。ブロック780において、計算装置は、オブジェクトが発光している色(又はわずかにずれた色)に対応する画像内のピクセルを識別することにより、画像におけるオブジェクトの位置を検出する。
ブロック785において、計算装置は、オブジェクトに使用可能な色を決定する。一つの実施の形態において、使用可能な色の決定は、オブジェクトを一連の色の間で循環させ、これらの色を用いて、背景からオブジェクトを区別する容易さを検証することを含む。
使用可能な色が決定されると、方法は終了する。
図7Bは、追跡システムを較正する方法786の別の実施の形態のフロー図を示す。方法は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(例えば、処理装置上で実行される命令)、又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。一つの実施の形態において、方法786は、図1の計算装置115により実行される。
図7Bを参照して、ブロック787において、計算装置は、複数の色を呈することが可能なオブジェクトの色較正を開始する。一つの実施の形態において、色較正の実行は、オブジェクトを少しの間1以上の色に呈させること、一連の色の間で循環させること、繰り返しオンオフさせること、又は、光学センサにより撮像された1以上の画像においてオブジェクトを識別することを容易にする別のアクション又は複数のアクションを実行させることを含む。
ブロック788において、計算装置は、画像又は複数の画像におけるオブジェクトの位置を決定する。オブジェクトの位置を検出する方法は、色較正が開始されたときに行われたアクション又は複数のアクションに依存する。例えば、特定の色がオブジェクトにより呈された場合、オブジェクトの位置の検出は、特定の色に対応する画像内のピクセルを識別することを含む。オブジェクトが循環的にオンオフされる場合、複数の画像の間で同様に変化するピクセルの集合がオブジェクトを表すものとして識別されてもよい。オブジェクトの位置を検出するための他の技術が用いられてもよい。
ブロック789において、オブジェクトは、予め定められた色を呈するようにされる。オブジェクトが予め定められた色を呈している間、光学センサの視野にある全ての1以上の画像が撮像される。
ブロック790において、計算装置は、オブジェクトが予め定められた色を呈しているときに観測されるオブジェクトの色の集合を決定する。この決定は、光学センサにより1以上の画像を撮像し、オブジェクトを表すことが知られているピクセルの色を分析することによりなされる。計算装置は、オブジェクトを表す全てのピクセルが満たすような、所定の色のカラー値のしきい値を設定する。
ブロック791において、計算装置は、サンプリングされるべき予め定められた色が更にあるかを判定する。更なる予め定められた色が残っていれば、方法は、残りの色について、ブロック789及び790を繰り返す。更なる予め定められた色がなければ、方法はブロック792へ続く。一つの実施の形態において、予め定められた色は、三原色(例えば、赤、緑、及び青)を含む。別の実施の形態において、予め定められた色は、三原色及び3つの第二色(例えば、黄、シアン、及びマゼンタ)を含む。または、予め定められた色は、三原色及び3以上の第二色、又は、三原色、3つの第二色、及び1以上の更なる色(例えば、第三色)を含んでもよい。
ブロック792において、計算装置は、オブジェクトが他の色を呈する場合に光学センサにより観測されるであろう更なる色の集合を補間するために、サンプリングされた色を用いる。例えば、第1の観測された色の集合はオブジェクトが赤いときに識別され、第2の観測された色の集合はオブジェクトが緑のときに識別された場合、オブジェクトが黄色を呈した場合の第3の色の集合が補間されてもよい。更なる色は、異なる色の色相及び/又は強度の間の既知の関係に基づいて補間することができる。補間された色の集合のそれぞれについて、色のしきい値が決定される。サンプリングされた色が多いほど、補間の精度は向上する。
ブロック793において、予め定められたそれぞれの色及びオブジェクトが呈する可能性のある他のそれぞれの色について、計算装置は、関連付けられた(測定又は補間された)色の集合のしきい値の量が画像の背景に含まれるか否かを決定する。
ブロック794において、計算装置は、背景の多くに含まれる色(例えば、しきい値を超える色)を光学センサに観測させる予め定義された色及び他の色を除外する。除外は、計算装置がオブジェクトにこれらの色を呈するよう指示(又は許可)しないことを意味する。除外は、追跡に使用可能な色のリスト又はテーブルからの除外であってもよい。一般に、照明が暗い条件(例えば、背景がほぼ黒であるとき)においては、より多くの色が使用可能となる。方法はこれで終了する。
一つの実施の形態における計算装置は、人間の目ではほとんど気づかないほどの色調の違いを区別することができる。したがって、背景が異なる緑の色調で満たされていたとしても、オブジェクトが呈することが可能な緑の色調がなおあり、追跡可能でありうる。
いったん較正を実行すると、オブジェクトは、特定の組の色を有するピクセルの集合を画像内で探索することにより追跡可能である。一つの実施の形態において、オブジェクトの形状を検証するために、追跡中にエッジ変換が実行されてもよい。オブジェクトの形状が予想されたものではない場合、再較正が実行されてもよい。
方法600、686、750、及び786により達成される較正は、一般に、照明条件が一定であり、背景画像が変化しない限り、正確なままである。しかし、室内光が変化したり(例えば、日が落ちる、又は、ランプがオン又はオフにされたため)、背景が変化したり(例えば、新しい人が光学センサの視野にいる場合)すると、較正はもはや正確ではないかもしれない。これにより、オブジェクトの追跡が困難になりうる。
一つの実施の形態において、方法600、686、750、及び786は、光学センサのガンマブースト設定が使用不可能である間に実行される。更なる実施の形態において、光学センサにより撮像される画像は、生の画像である。
ときに、照明条件はオブジェクトの位置に依存して変わりうる。例えば、オブジェクトは、較正が実行された当初は天空光のもとで保持されていたが、オブジェクトが追跡される間に、天空光から離れたところに定期的に移動されるかもしれない。このような状況において、計算装置は、オブジェクトについて複数回の較正を実行してもよく、オブジェクトが検出された画像の位置に基づいて、オブジェクトに適用すべき較正を決定してもよい。例えば、第1の較正はスポットライトのもとで実行されてもよく、第2の較正はスポットライトの外側で実行されてもよい。オブジェクトがスポットライトの中に移動されたとき、第1の較正の設定が使用され、オブジェクトがスポットライトの外側に移動されたとき、第2の較正の設定が使用されてもよい。
図8Aは、追跡システムを再較正する方法850の実施の形態のフロー図を示す。方法は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(例えば、処理装置上で実行される命令)、又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。一つの実施の形態において、方法850は、図1の計算装置115により実行される。
図8Aを参照して、ブロック855において、計算装置は、部分的な再較正を開始する。一つの実施の形態において、部分的な再較正は、色の再設定又は色の更新を含む。一つの実施の形態において、部分的な再較正は、定期的(例えば、1分ごと、30秒ごとなど)に実行される。別の実施の形態において、部分的な再較正は、継続的に実行される。別の実施の形態において、部分的な再較正は、ユーザの入力を受け付けたときに実行される。または、部分的な再較正は、オブジェクトの位置が不確かになるたびに実行されてもよい。一つの実施の形態において、部分的な再較正は、光学センサの露出設定が変更されたときに実行される。一つの実施の形態において、部分的な再較正は、追跡に失敗したときに実行される。他のアクションを色の再設定の契機としてもよい。
一つの実施の形態において、環境光又は背景の変更が検出されると、部分的な再較正が実行されてもよい。例えば、誰かが緑の光を点けたとき、色の較正はオフにされる。赤であったものが、今は赤緑になっているだろう。したがって、処理装置が探索している色は、もはやオブジェクトの色ではない。一つの実施の形態において、計算装置は、オブジェクトが特定の色を呈するようにされているとき、オブジェクトにより出力されるべき色を正確に予測することができる(オブジェクトが発光している色及び環境色の寄与を含む)。オブジェクトの検出された色が予測された色とは異なる場合、計算装置は、環境光の条件が変化したことを検出してもよい。さらに、計算装置は、初期較正中に撮像された画像(例えば、オブジェクトがいずれの色も発光していなかったときに撮像された画像)を格納してもよい。この画像は、背景が変化したか判定するために、現在の画像と定期的に比較されてもよい。
ブロック860において、処理装置は、オブジェクトに、いずれの色も発光しない(例えば、マルチカラー発光体をオフにする)ようにさせる。ブロック865において、光学センサは、オブジェクトがいずれの色も発光していない間に画像を撮像する。ブロック870において、処理装置は、オブジェクトに、以前に用いられていた色を発光するようにさせる。ブロック875において、光学センサは、別の画像を撮像する。このように、部分的な再較正は、オブジェクトの位置が失われたときに、3未満の色(例えば、1つだけの色)をストロボ発光することを含んでもよい。例えば、オブジェクトは、現在割り当てられた追跡可能な色の発光を高速にオンオフするようにされてもよい。
ブロック880において、処理装置は、2つの撮像された画像の間で変化したピクセルを識別することにより、オブジェクトの位置を検出してもよい。ブロック885において、処理装置は、追跡可能な色を再決定する。追跡可能な色の再決定は、それぞれの色の再チェックを含み、プロセッサ集約的なタスクでありうる。したがって、一つの実施の形態において、画像はチェックの実行のために格納され、ブロック885は数フレームの期間にわたって実行される。それぞれのフレームについて、色の一部が追跡可能な色であるかを決定するのみにすることにより、処理性能を減衰させないようにすることができる。例えば、360色をチェックする必要があり、それぞれのフレームにつき1色がチェックされる場合(それぞれのフレームは60分の1秒続く)、全ての色を6秒でチェックすることができる。
実行されるべき部分的な再較正の種別に依存して、及び/又は、部分的な再較正を開始する契機に基づいて、方法850の1以上のブロックが省略されてもよい。例えば、一つの実施の形態において、ブロック860−880は実行されない。このような実施の形態において、処理装置は、オブジェクトの既知の位置をマスクし、残りの環境色を用いることにより、継続的に再計算して追跡可能な色を更新してもよい。別の実施の形態において、オブジェクトの位置がまだ高い確度で分かっている間に部分的な再較正が実行される場合、ブロック880は実行されなくてもよい。
図8Bは、光学センサの露出設定が変更されたときに追跡システムを再較正する方法887の実施の形態のフロー図を示す。方法は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(例えば、処理装置上で実行される命令)、又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。一つの実施の形態において、方法887は、図1の計算装置115により実行される。
図8Bを参照して、ブロック888において、計算装置は、光学センサの露出設定を変更する。露出設定は、ゲームが新しい画質の値を選択したこと、又は、新しい露出設定が手動で選択されたことに応じて変更されてもよい。現実感が増大されたゲーム(仮想オブジェクトだけでなくプレイヤーの画像も示される)は、一般に、増大された現実感を用いないゲームよりも長い露出を必要とする。露出を長くすることにより、画質が向上する。
ゲームが増大されたリアリティを用いない場合、一般に、低い露出設定が用いられる。低い露出設定は彩度を低くし、追跡の質を向上させ、動きぶれを低減させる。低い露出設定により、環境色はぼやけ、オブジェクトは相対的に明るくなる。露出設定を高くするほど、オブジェクトは環境色に比してぼやける。したがって、オブジェクトが発光する色の輝度と環境の輝度の比は、露出設定に反比例する。
一つの実施の形態において、追跡の質の値が露出設定を決定するために用いられる。追跡の質が高く設定された場合、露出設定は低く、追跡の質が低く設定された場合、露出設定は高い。ゲームが最大の露出設定を設定してもよい。露出及びゲイン(センサのゲイン)の双方は線形に変化する。例えば、100の露出と2のゲインは、200の露出と1のゲインと同じである。ゲインを増加させることにより、ノイズと引き換えに、明るい画像を得ることができる。露出を増加させることにより、動きのぶれ及び追跡の質と引き換えに、明るい画像を得ることができる。最大の露出設定は、露出設定を通じてどの程度の画像の輝度が達成されるか、及び、ゲイン設定を通じてどの程度が達成されるかを決定する。一つの実施の形態において、ゲームは、これらの設定をいつでも動的に変更することができる。
ブロック889において、処理装置は、オブジェクトにいずれの色も発光しないようにさせ、ブロック890において、光学センサは画像を撮像する。ブロック891において、処理装置は、追跡に使用可能な色を再計算する。光学センサにおいて、それぞれのピクセルは、0から255の値をとることができる(8ビットの光学センサにおいて)。または、ハイダイナミックレンジの光学センサ(例えば、16ビットの光学センサ)が用いられる場合、光学センサのそれぞれのピクセルは、より多くの値をとることができる。ピクセルは、値が255に達すると飽和する。オブジェクトは、一般に、環境色に追加されたときに輝度が飽和値よりもわずかに低い値(例えば、235)になるような強度で発光するようにされる。これは、オブジェクトがより明るい又は暗い領域を有する室内で移動されたときに、オブジェクトの色が飽和しない、又は飽和したとしてもわずかであるようにするためのバッファを提供する。
ピクセルが飽和したとき、色はより明るくなりうるが、この増加した輝度はピクセルにより認識されない。一つの色が飽和すると、色の間の差は変化する(色相が変化する)。さらに、飽和が発生すると、エッジ検出アルゴリズムがもはや適切に機能しない可能性があるので、オブジェクトの形状が変化しうる。したがって、露出が増加されると、処理装置は、以前に算出した追跡可能な色を用いてオブジェクトを発見することができなくなるかもしれない。したがって、一つの実施の形態において、露出が変更されるたびに、新しい追跡可能な色が決定される。
図8Cは、オブジェクトの色の偏差及び/又は光学センサのヴィネッティングをマッピングする方法892の実施の形態のフロー図を示す。方法は、ハードウェア(例えば、回路、専用ロジック、プログラマブルロジック、マイクロコードなど)、ソフトウェア(例えば、処理装置上で実行される命令)、又はそれらの組み合わせを含む処理ロジックにより実行されてもよい。一つの実施の形態において、方法892は、図1の計算装置115により実行される。一つの実施の形態において、方法892は、室内が暗いときに実行される。
図8Cを参照して、ブロック893において、計算装置は、特定の領域(例えば、光学センサの視野の中心)にオブジェクトを保つようユーザに指示する。計算装置は、複数の軸を中心としてオブジェクトを回転させるよう更にユーザに指示する。ブロック894において、光学センサは、オブジェクトが回転するときの画像を撮像する。
オブジェクトは、いずれの色についても、色の均一性を有しない可能性がある。例えば、オブジェクトが赤色に呈されているとき、オブジェクトの片側は逆側よりも赤いかもしれず、オブジェクトが青色に呈されているとき、オブジェクトの片側は逆側よりも青い(より明るい青)かもしれない。例えば、オブジェクトの表面にわたって、15%の色の偏差があるかもしれない。
オブジェクトの向きは、加速度計、ジャイロスコープ、及び磁力計などの慣性センサを用いて追跡することができる。したがって、オブジェクトが回転されるとき、任意の時点での正確な向きを識別することができる。一つの実施の形態において、オブジェクトの複数の向きについて、異なる輝度値が決定される。これらの輝度レベル及び角度は、ブロック895において、オブジェクトの色分布のマップを生成するために用いられてもよい。原色のそれぞれについて別々のマップが生成されてもよい。
したがって、オブジェクトが移動及び回転されるとき、計算装置は、カラーマッピングを用いて、検出された色の変化が環境光の変化によるものか、オブジェクト自身の色偏差によるものかを判定してもよい。特定のオブジェクトのマップは、時間によって変化しないであろうから、マップを格納しておき、以降のオブジェクトの追跡中に使用してもよい。
光学センサは、一般に、光学センサの周縁部において光学センサの視野の中心よりも画像中の輝度が低下する原因となる口径食(ヴィネッティング:vignetting)を有する。しかし、それぞれの光学センサにより経験される正確なヴィネッティングは異なる。したがって、ブロック896において、処理装置は、オブジェクトを動きパターンにおいて移動させるようユーザに指示する。オブジェクトがパターンに沿って移動されるとき、ブロック897において、光学センサはオブジェクトの画像を撮像する。パターンは、オブジェクトが光学センサの視野の周縁部の周りを移動されるパターン、及び、オブジェクトが光学センサの視野の中心に移動されるパターンであってもよい。
ブロック898において、光学センサのヴィネッティングが記録される。光学センサの視野の異なる領域におけるオブジェクトの輝度の差違は、ヴィネッティングが発生している位置及びそれらの位置におけるヴィネッティングの強度を識別するために用いられる。オブジェクトの無機による色の輝度の偏差は既に計算されているので、このような偏差はヴィネッティングの算出の前に減じられてもよい。光学センサのヴィネッティングは変化しないであろうから、ヴィネッティングのマップは格納されてもよい。追跡中、処理装置は、オブジェクトが画像中のどこで検出されたかに依存して、ヴィネッティングを調整することができる。
一つの実施の形態において、方法892は、色の差違が環境光により生じているのではないことを保証するために、暗い室内で実行されるべきである。方法892を実行することにより、処理装置は、よりタイトな色のしきい値を用いることができ、追跡可能な色の利用可能性を高めることができる。一つの実施の形態において、追跡可能な色を選択するために用いられる色のしきい値は、オブジェクトの色マップの異なる向きの色の極限値の結合に基づいて設定される。
図9A〜9Eは、方法600、686、750、786、850、887、及び892の1以上を実行した後に達成される較正結果を示す。
図9Aは、画像902、色グラフ906、及びオブジェクト色設定914を含む較正結果900を含む。画像902は、暗い室内で撮像され、オブジェクト904を含む。画像が暗い室内で撮像されたので、画像の残り(背景)は黒い。図示されるように、オブジェクト904は赤い円又はボールである。
色グラフ906は、UV色空間の二次元グラフであり、オブジェクトが呈するようにされたそれぞれの色のデータ点912(例えば、それぞれの原色のデータ点)を含む。それぞれのデータ点912は、オブジェクトが所定の色を呈するように指示されたときのオブジェクトの色のサンプルを表す。一つの実施の形態において、それぞれのデータ点912は、オブジェクトが所定の色を呈するようにされたときに観測された色の集合の平均を表す。または、それぞれのデータ点912は、観測された色の集合の中央値を表してもよい。別の実施の形態において、それぞれのデータ点912は、オブジェクトが呈するように指示された色を表す。
マルチカラー六角形908は、それぞれの可能な色についての理論上の理想値(例えば、完全な彩度、完全な輝度、完全な色相)を表す。グラフ906の原点から六角形908に伸びる線910の角度は、オブジェクト904の現在の色を表す。彩度は、原点からの距離として表される。六角形908に沿った任意の点は、2つの原色の組み合わせである。図示されるように、真の赤を示す線は、六角形908の頂点を指す。オブジェクト色設定914は、オブジェクトが現在、R=1、G=0、B=0の色座標にプログラムされていることを示す。ここで、Rは赤、Gは緑、Bは青である。この色設定は、UV色空間において、U=−0.17、V=0.50と表される。本明細書ではUV色空間が用いられるが、他の色空間も利用可能である。例えば、RGB色空間が用いられてもよい。
図9Bは、現在の色データ(例えば、光学センサによりリアルタイムに収集されたもの)を示す更新された色グラフ907を有する、図9Aの較正結果900を反映する較正結果901を含む。更新された色グラフ907は、オブジェクト904からのピクセルのヒストグラム915を含む。更新された色グラフ907は、2組のしきい値914及び916を含む。第1の組のしきい値914(赤い矩形で示される)は、オブジェクトが真の赤を呈するときのオブジェクトの色の集合を含む上限及び下限のU及びVカラー値を表す。したがって、較正が実行されたとき、第1のU値より大きい、又は、第2のU値よりも小さいオブジェクトのピクセルはなく、第1のV値よりも大きい、又は、第2のV値よりも小さいオブジェクトのピクセルはないと判定された。これらの上限値及び下限値は、第1の組のしきい値914により示されるように、UV空間における矩形を形成する。第2の組のしきい値916(黄色い矩形で示される)は、現在のオブジェクトの色の集合を含む上限及び下限のU及びVのカラー値を表す。較正が成功した場合、2組のしきい値914及び916は重なるはずである。
図9Cは、撮像されたシーンに光が当てられた後の現在の色データを示す更新された色データグラフ909を有する、図9Bの較正結果901を反映する較正結果930を含む。図示されるように、新しい画像903は、様々な色調の赤色を含む背景を含む。
更新された色グラフ909は、オブジェクト904からのピクセルの新しいヒストグラム917を含む。図示されるように、較正が実行されたときに設定されたしきい値を表す第1の組のしきい値914は変わらない。しかし、撮像されたシーンに光が導入されたことにより、光学センサにより観測されるオブジェクトの色は変化した。したがって、新しい組のしきい値922(黄色い矩形で示される)は、光が導入された現在のオブジェクトの色の集合を含む上限及び下限のU及びVのカラー値を表す。室内光を調整しなければ、システムは、オブジェクトが以前に較正された色を有すると予想する。しかし、室内光を追加することにより、オブジェクトの色及び輝度は変化している。したがって、画像におけるオブジェクトのピクセルのいくつかは、較正された値を用いると、もはや位置を検出されない。
図9Dは、システムが部分的な再較正を行った後の新しい較正結果932を含む。図示されるように、画像903は、図9Cの画像903から変更されていない。しかし、更新された色グラフ935が示される。更新された色グラフ935において、画像は変更されていないので、オブジェクトの全てのピクセルが含まれる必要がある同じ組の現在のしきい値922が示される。しかし、色の再設定の後、新しい組のUVしきい値937が用いられる。
図9Eは、画像942、色グラフ954、オブジェクト色設定958、フルカラースペクトル950、及び利用可能な色のスペクトル970を含む較正結果940を含む。画像942は、オブジェクト944及び複数の背景アイテム946を含む。背景アイテム946は、緑のアイテムである。図示された較正結果940において、オブジェクトの現在の色は、線956及び948により示されるように、緑の色調に設定される。緑の背景アイテムのために、緑の色空間の大部分は利用できない(追跡可能な色ではない)。これは、フルカラースペクトル950と利用可能な色のスペクトル970を比較することにり理解されよう。
オブジェクト944が現在緑の色調に設定されているので、オブジェクト944と緑の背景アイテムを区別することは困難でありうる。利用可能な色のスペクトル970に示されるように、緑の色調の中にも依然として利用可能なものがある。例えば、青緑の色調は利用可能であるし、黄緑の色調も同様である。
図10は、本発明の一つの実施の形態に関連して、コントローラの位置を決定するために用いられうるハードウェア及びユーザインタフェースを示す。図10は、本発明の一つの実施の形態に係る三次元コントローラ位置探索システムの実装に互換性のあるコンソールであるソニープレイステーション3(登録商標)エンタテインメント装置の全体システム構成を概略的に示す。システムユニット1400とともに、システムユニット1400に接続可能な種々の周辺装置が設けられる。システムユニット1400は、セルプロセッサ1428、ランバス(登録商標)ダイナミックランダムアクセスメモリ(XDRAM)ユニット1426、専用のビデオランダムアクセスメモリ(VRAM)ユニット1432とともに設けられたリアリティシンセサイザーグラフィックスユニット1430、及び入出力ブリッジ1434を備える。システムユニット1400は、さらに、入出力ブリッジ1434を介してアクセス可能な、ディスク1440Aから読み出すためのブルーレイ(登録商標)ディスクBD−ROM光ディスクリーダ1440及び脱着可能なスロットインハードディスクドライブ(HDD)1436を備える。システムユニット1400は、オプションで、入出力ブリッジ1434を介して同様にアクセス可能な、コンパクトフラッシュ(登録商標)メモリカード、メモリスティック(登録商標)メモリカードなどを読み出すためのメモリカードリーダ1438をさらに備える。
入出力ブリッジ1434は、さらに、複数のユニバーサルシリアルバス(USB)2.0ポート1424、ギガビットイーサネット(登録商標)ポート1422、IEEE802.11b/g無線ネットワーク(Wi−Fi)ポート1420、7つのブルートゥース(登録商標)接続までサポート可能なブルートゥース無線リンクポート1418に接続する。
動作中、入出力ブリッジ1434は、1以上のゲームコントローラ1402〜1403からのデータを含む全ての無線、USB及びイーサネット(登録商標)データを扱う。例えば、ユーザがゲームをプレーするとき、入出力ブリッジ1434は、ブルートゥースリンクを介してゲームコントローラ1402〜1403からデータを受信し、セルプロセッサ1428に伝える。セルプロセッサ1428は、ゲームの現在の状態をそのように更新する。
無線、USB及びイーサネット(登録商標)ポートは、ゲームコントローラ1402〜1403に加えて、リモートコントローラ1404、キーボード1406、マウス1408、ソニープレイステーションポータブル(登録商標)エンタテインメント装置などの携帯型エンタテインメント装置1410、アイトイ(登録商標)ビデオカメラなどのビデオカメラ1412、マイクロフォンヘッドセット1414、及びマイクロフォン1415などの他の周辺装置との接続も提供する。これらの周辺装置は、原則として、システムユニット1400に無線で接続されてもよい。例えば、携帯型エンタテインメント装置1410は、Wi−Fiアドホック接続を介して通信してもよいし、マイクロフォンヘッドセット1414は、ブルートゥースリンクを介して通信してもよい。
これらのインタフェースの提供は、プレイステーション3装置が、ディジタルビデオレコーダ(DVR)、セットトップボックス、ディジタルカメラ、携帯型メディアプレーヤ、ボイスオーバーIP電話、携帯電話、プリンタ、及びスキャナなどの他の周辺装置との互換性をも潜在的に有することを意味する。
さらに、プレイステーション(登録商標)又はプレイステーション2(登録商標)装置により用いられる種類のメモリカード1448の読み出しを可能にするレガシーメモリカードリーダ1416が、USBポート1424を介してシステムユニットに接続されてもよい。
ゲームコントローラ1402〜1403は、ブルートゥースリンクを介してシステムユニット1400と無線通信可能であるか、USBポートを介して接続して、ゲームコントローラ1402〜1403のバッテリを充電するための電源も提供可能である。ゲームコントローラ1402〜1403は、メモリ、プロセッサ、メモリカードリーダ、フラッシュメモリなどの永続メモリ、LED又は赤外光などの光照射部、超音波通信のためのマイクロフォン及びスピーカ、音響チャンバ、ディジタルカメラ、内部クロック、ゲームコンソールに面した球などの認識可能な形状、及びブルートゥース、WiFiなどのプロトコルを用いた無線通信を含んでもよい。
図2A〜2Bにおいて前述したように、ゲームコントローラ1402は両手で用いられるように設計されたコントローラであり、ゲームコントローラ1403は、ボールが設けられた、片手で扱うコントローラである。1以上のアナログジョイスティック及び従来の制御ボタンに加えて、ゲームコントローラは、三次元位置決定が可能である。したがって、ゲームコントローラのユーザのジェスチャー及び動きが、従来のボタン又はジョイスティックのコマンドに加えて、又はそれに代えて、ゲームに対する入力として翻訳されてもよい。オプションとして、プレイステーションポータブル装置などの他の無線通信可能な周辺装置がコントローラとして用いられてもよい。プレイステーションポータブル装置の場合、装置の画面に、更なるゲーム又は制御情報(例えば、制御命令又はライフの数)が提供されてもよい。ダンスマット(図示せず)、モーキャプボール(図示せず)、光線銃(図示せず)、ステアリングホイール及びペダル(図示せず)、又は早押しクイズゲームのための単一又はいくつかの大きなボタンなどの専用コントローラ(図示せず)などの他の代替又は追加の制御装置が用いられてもよい。
リモートコントローラ1404は、ブルートゥースリンクを介してシステムユニット1400と無線通信可能である。リモートコントローラ1404は、ブルーレイディスクBD−ROMリーダ1440の動作及びディスク内容のナビゲーションのために適した制御を備える。
ブルーレイディスクBD−ROMリーダ1440は、従来の記録済み及び記録可能なCD及びいわゆるスーパーオーディオCDに加えて、プレイステーション及びプレイステーション2装置に互換なCD−ROMを読み出し可能である。リーダ1440は、従来の記録済み及び記録可能なDVDに加えて、プレイステーション2及びプレイステーション3装置に互換なDVD−ROMを更に読み出し可能である。リーダ1440は、さらに、従来の記録済み及び記録可能なブルーレイディスクだけでなく、プレイステーション3装置に互換なBD−ROMを読み出し可能である。
システムユニット1400は、生成された、又は、リアリティシンセサイザーグラフィックスユニット1430を介してプレイステーション3装置によりデコードされた音声及び映像を、音声及び映像コネクタを介して、モニタ又はディスプレー1444と1以上のラウドスピーカ1446を有するテレビジョンセットなどの表示及び音声出力装置1442に対して供給可能である。音声コネクタ1450は、従来のアナログ及びディジタル出力を含んでもよく、映像コネクタ1452は、コンポーネントビデオ、S−ビデオ、コンポジットビデオ、及び1以上の高解像度マルチメディアインタフェース(HDMI)出力などを含んでもよい。結果として、映像出力は、PAL又はNTSC、又は、720p、1080i又は1080p高解像度の形式であってもよい。
音声処理(生成、デコードなど)は、セルプロセッサ1428により実行される。プレイステーション3装置のオペレーティングシステムは、ドルビー(登録商標)5.1サラウンド音声、ドルビーシアターサラウンド(DTS)、及びブルーレイディスクからの7.1サラウンド音声のデコードをサポートする。
一つの実施の形態によれば、ビデオカメラ1412は、単一の電荷結合素子(CCD)、LEDインジケータ、及びハードウェアベースのリアルタイムデータ圧縮エンコード装置を備え、圧縮されたビデオデータは、システムユニット1400によりデコードするために、画像間ベースのMPEG(motion picture expert group)スタンダードなどの適当な形式で送信されてもよい。カメラLEDインジケータは、例えば逆光条件を知らせるなどのシステムユニット1400からの適切な制御データに応答して光るようにされてもよい。ビデオカメラ1412の実施の形態は、USB、ブルートゥース、又はWi−Fiの通信ポートを介してシステムユニット1400に接続してもよい。ビデオカメラの実施の形態は、1以上の結合されたマイクロフォンを含み、音声データを送信可能であってもよい。ビデオカメラの実施の形態において、CCDは、高精細ビデオキャプチャに適した解像度を有してもよい。使用中、ビデオカメラにより撮像された画像は、例えば、ゲーム内に組み込まれてもよいし、ゲーム制御入力として解釈されてもよい。カメラの別の実施の形態において、カメラは、赤外光を検出するのに適した赤外線カメラである。
一般に、システムユニット1400の通信ポートの一つを介して、ビデオカメラ又はリモートコントローラなどの周辺装置との間で発生するデータ通信を成功させるために、デバイスドライバなどの適切なソフトウェアが提供されるべきである。デバイスドライバの技術は既知であり、ここでは詳述しないが、本実施の形態においてデバイスドライバ又は類似のソフトウェアインタフェースが要求されることは、当業者には理解されるところである。
図11は、本発明の一つの実施の形態における、命令の処理に利用可能な追加のハードウェアを示す。図11は、セルプロセッサ1500の構成要素を示す。本発明の一つの実施の形態において、これは図10のセルプロセッサ1428に対応してもよい。図11のセルプロセッサ1500は、メモリコントローラ1560及びデュアルバスインタフェースコントローラ1570A、1570Bを備える外部入出力構成、パワープロセッシングエレメント(PPE)1550と呼ばれるメインプロセッサ、シナジスティックプロセッシングエレメント(SPE)1510A〜Hと呼ばれる8個のコプロセッサ、要素相互接続バス1580と呼ばれる、上記の要素を接続する環状データバスの4つの基本要素を備えた構成を有する。セルプロセッサの全体の浮動小数点演算は、プレイステーション2装置のエモーションエンジンの6.2Gフロップスであるのに対して、218Gフロップスである。
パワープロセッシングエレメント(PPE)1550は、3.2GHzの内部クロックで動作するパワーPC(PowerPC)コア(PPU)1555に互換な、双方向平行マルチスレッドパワー1470に基づいている。これは、512kBのレベル2(L2)キャッシュ及び32kBのレベル1(L1)キャッシュを備える。PPE1550は、クロックサイクルごとに8つの単精度演算を行うことができ、これは3.2GHzにおいて25.6ギガフロップスにあたる。PPE1550の主要な役割は、ほとんどの計算作業負荷を扱うSPE1510A〜Hのためのコントローラとして機能することである。動作において、PPE1550は、ジョブのキューを保持し、SPE1510A〜Hのジョブをスケジューリングし、それらの進行を監視する。それぞれのSPE1510A〜Hは、ジョブを取ってきて実行するのが役割であるカーネルを実行し、それをPPE1550に同期させる。
それぞれのSPE1510A〜Hは、シナジスティックプロセッシングユニット(SPU)1520A〜Hを備え、それぞれのメモリフローコントローラ(MFC:Memory Flow Controller)1540A〜Hは、ダイナミックメモリアクセスコントローラ(DMAC:Dynamic Memory Access Controller)1542A〜H、メモリ管理ユニット(MMU)1544A〜H、及びバスインタフェース(図示せず)を備える。それぞれのSPU1520A〜Hは、クロックが3.2GHzで、原則として4GBまで拡張可能な256kBのローカルRAM1530A〜Hを備える、RISCプロセッサである。それぞれのSPEは、理論上、25.6GFLOPSの単精度性能を与える。SPUは、4つの単精度浮動小数演算、4つの32ビット演算、8つの16ビット整数演算、又は16の8ビット整数演算を、1つのクロックサイクルで実行可能である。同じクロックサイクルにて、メモリ命令を実行することもできる。SPU1520A〜Hは、システムメモリXDRAM1426に直接アクセスしない。SPU1520A〜Hにより生成される64ビットのアドレスは、MFC1540A〜Hに渡され、要素相互接続バス1580及びメモリコントローラ1560を介してメモリにアクセスするためのDMAコントローラ1542A〜Hに命令される。
要素相互接続バス(EIB)1580は、セルプロセッサ1500の内部の論理的に巡回した通信バスである。EIBは、上述のプロセッサエレメント、すなわち、PPE1550、メモリコントローラ1560、デュアルバスインタフェース1570A、B、及び8つのSPE1510A〜Hの、合計12の要素を接続する。要素は、クロックサイクルごとに8バイトの速度でバスを同時に読み、及び書き込むことができる。前述したように、それぞれのSPE1510A〜Hは、より長いリード又はライトシーケンスをスケジュールするためのDMAC1542A〜Hを備える。EIBは4つのチャンネルを備え、2つは時計回りで、2つは反時計回りの方向である。12の要素の間で、任意の2つの要素の間のうち最も長いデータフローは、適切な方向に6ステップとなる。EIBの12スロットの帯域の理論上のピークの瞬間は、要素間の調停を通じて全てが利用されたとき、クロックごとに96バイトである。これは、クロックレートが3.2GHzのときの理論上のピークバンド幅の307.2GB/s(ギガバイト毎秒)と同じである。
メモリコントローラ1560は、ランバス社により開発されたXDRAMインタフェース1562を備える。メモリコントローラは、理論上はピークバンド幅毎秒25.6ギガバイトで、ランバスXDRAMと接続する。
デュアルバスインタフェース1570A、Bは、ランバスフレックスIO(登録商標)システムインタフェース1572A、Bを備える。インタフェースは、それぞれが8ビット幅である、入力5経路、出力7経路の12チャンネルに組織化される。これは、セルプロセッサ及びコントローラ1570Aを介した入出力ブリッジ及びコントローラ1570Bを介したリアリティシミュレータグラフィックスユニットの間の62.4GB/s(出力36.4GB/s、入力26GB/s)の理論的ピークバンド幅を提供する。
上述の説明は、例示を意図しており、制限を意図していないことが理解されるべきである。上述の説明を読み、理解した当業者には、多数の別の実施の形態が明らかとなろう。本発明が、いくつかの特定の実施の形態に関して説明されたが、本発明は説明された実施の形態に限られず、添付された特許請求の範囲の精神及び範囲内で変更及び代替が可能であることは、当業者に認識されるところである。したがって、詳細な説明は、限定ではなく例示であるとみなされるべきである。本発明の範囲は、特許請求の範囲に与えられる全ての範囲の均等物とともに、特許請求の範囲を参照して決定されるべきである。

Claims (31)

  1. 追跡システムを較正する方法であって、
    較正ロジックを実行する計算装置が、光学センサにより撮像された1以上の画像におけるオブジェクトの位置を検出するステップと、
    計算装置が、前記1以上の画像に含まれる、前記1以上の画像において前記オブジェクトにより発せられていない色である環境色を決定するステップと、
    前記オブジェクトにより呈された場合に、前記オブジェクトを前記計算装置が追跡することを可能とする1以上の追跡可能な色を決定するステップと、
    を備えることを特徴とする方法。
  2. 前記環境色に含まれる色の量がしきい値よりも少ない色が追跡可能な色であることを特徴とする請求項1に記載の方法。
  3. 前記1以上の画像における前記オブジェクトの位置を検出するステップは、
    前記オブジェクトを複数の予め定義された色に順次呈させるステップと、
    前記1以上の画像は、前記複数の予め定義された色のそれぞれについて別々の画像を含み、
    前記1以上の画像のそれぞれにおいて異なる色を有するピクセルの集合を識別するステップと、
    を備えることを特徴とする請求項1に記載の方法。
  4. 予め定められた色のそれぞれについて、前記光学センサにより観測された前記オブジェクトの色の関連付けられた集合を決定するステップと、
    前記オブジェクトが他の色を呈した場合に前記光学センサにより観測されるであろう色の更なる集合を予測するステップと、
    を更に備えることを特徴とする請求項3に記載の方法。
  5. 前記オブジェクトに特定の色を呈させるステップと、
    前記特定の色に関連付けられた特定の色の集合が観測される後続の画像中の位置を識別することにより、前記オブジェクトを追跡するステップと、
    を更に備えることを特徴とする請求項4に記載の方法。
  6. 前記オブジェクトの追跡に失敗するステップと、
    前記オブジェクトに新たな特定の色を呈させるステップと、
    を更に備えることを特徴とする請求項5に記載の方法。
  7. 前記複数の予め定義された色は、三原色を含むことを特徴とする請求項3に記載の方法。
  8. 前記光学センサはフレームレートを有し、
    前記方法は、前記オブジェクトに、前記光学センサの少なくとも3フレームの間、前記複数の予め定義された色のそれぞれを呈させるステップを更に備える
    ことを特徴とする請求項3に記載の方法。
  9. 前記光学センサはフレームレートを有し、
    前記光学センサのフレームは前記計算装置のクロックに同期され、
    前記方法は、前記オブジェクトに、3フレーム未満の間、前記複数の予め定義された色のそれぞれを呈させるステップを更に備える
    ことを特徴とする請求項3に記載の方法。
  10. 前記環境色を決定するステップは、
    前記オブジェクトに光を発光させないステップと、
    前記1以上の画像は、前記オブジェクトが光を発光しない間に撮像された画像を含み、
    前記オブジェクトが光を発光しない間に撮像された画像から、前記オブジェクトにより反射された環境色を表す前記オブジェクトの色を識別するステップと、
    を備えることを特徴とする請求項1に記載の方法。
  11. 前記オブジェクトにより発光される真の色を識別するために、前記オブジェクトが予め定義された色の光を発光する間に撮像された前記1以上の画像における前記オブジェクトの色から、前記オブジェクトが光を発光しない間に撮像された画像における前記オブジェクトの色を減じるステップを更に備えることを特徴とする請求項10に記載の方法。
  12. 前記オブジェクトに一瞬光を発光させず、前記オブジェクトが光を発光しない間に画像を撮像することにより、前記環境色を定期的に更新するステップと、
    前記1以上の追跡可能な色を再決定するステップと、
    を更に備えることを特徴とする請求項1に記載の方法。
  13. 前記光学センサの露出設定の変更を検出するステップと、
    前記オブジェクトの輝度を調整するステップと、
    を更に備えることを特徴とする請求項1に記載の方法。
  14. 前記追跡システムの追跡の質が次善であることを判定するステップと、
    環境光がしきい値を超えた場合、前記計算装置のユーザに、照明を消す又はブラインドを閉じるよう通知するステップと、
    追跡可能な色の数がしきい値よりも少ない場合、色の衝突の原因となっている前記1以上の画像に含まれる更なるオブジェクトを前記ユーザに示すステップと、
    を更に備えることを特徴とする請求項1に記載の方法。
  15. 1以上の画像を撮像するための光学センサと、
    較正ロジックの命令を実行するための処理装置と、を備え、
    前記命令は前記処理装置に、
    前記1以上の画像においてオブジェクトの位置を検出させ、
    前記1以上の画像に含まれる、前記1以上の画像において前記オブジェクトにより発せられていない色である環境色を決定させ、
    前記オブジェクトにより呈された場合に、前記オブジェクトを前記処理装置が追跡することを可能とする1以上の追跡可能な色を決定させる
    ことを特徴とする計算装置。
  16. 前記環境色に含まれる色の量がしきい値よりも少ない色が追跡可能な色であることを特徴とする請求項15に記載の計算装置。
  17. 前記1以上の画像における前記オブジェクトの位置を検出することは、
    前記オブジェクトを複数の予め定義された色に順次呈させることと、
    前記1以上の画像は、前記複数の予め定義された色のそれぞれについて別々の画像を含み、
    前記1以上の画像のそれぞれにおいて異なる色を有するピクセルの集合を識別することと、
    を備えることを特徴とする請求項15に記載の計算方法。
  18. 前記命令は、前記処理装置に、
    予め定められた色のそれぞれについて、前記光学センサにより観測された前記オブジェクトの色の関連付けられた集合を決定させ、
    前記オブジェクトが他の色を呈した場合に前記光学センサにより観測されるであろう色の更なる集合を予測させる
    ことを特徴とする請求項17に記載の計算装置。
  19. 前記命令は、前記処理装置に、
    前記オブジェクトに特定の色を呈させ、
    前記特定の色に関連付けられた特定の色の集合が観測される後続の画像中の位置を識別することにより、前記オブジェクトを追跡させる、
    ことを特徴とする請求項18に記載の計算装置。
  20. 前記命令は、前記処理装置に、
    前記処理装置が前記オブジェクトの追跡に失敗したときに、前記オブジェクトに新たな特定の色を呈するよう指示させる
    ことを特徴とする請求項19に記載の計算装置。
  21. 前記複数の予め定義された色は、三原色を含むことを特徴とする請求項17に記載の計算装置。
  22. 前記光学センサはフレームレートを有し、
    前記命令は、前記処理装置に、
    前記オブジェクトに、前記光学センサの少なくとも3フレームの間、前記複数の予め定義された色のそれぞれを呈するよう指示させる
    ことを特徴とする請求項17に記載の計算装置。
  23. 前記光学センサはフレームレートを有し、
    前記光学センサのフレームは前記計算装置のクロックに同期され、
    前記命令は、前記処理装置に、
    前記オブジェクトに、3フレーム未満の間、前記複数の予め定義された色のそれぞれを呈するよう指示させる
    ことを特徴とする請求項17に記載の計算装置。
  24. 前記環境色を決定することは、
    前記オブジェクトに光を発光させないことと、
    前記1以上の画像は、前記オブジェクトが光を発光しない間に撮像された画像を含み、
    前記オブジェクトが光を発光しない間に撮像された画像から、前記オブジェクトにより反射された環境色を表す前記オブジェクトの色を識別することと、
    を備えることを特徴とする請求項15に記載の計算装置。
  25. 前記命令は、前記処理装置に、
    前記オブジェクトにより発光される真の色を識別するために、前記オブジェクトが予め定義された色の光を発光する間に撮像された前記1以上の画像における前記オブジェクトの色から、前記オブジェクトが光を発光しない間に撮像された画像における前記オブジェクトの色を減じさせる
    ことを特徴とする請求項24に記載の計算装置。
  26. 前記命令は、前記処理装置に、
    前記オブジェクトに一瞬光を発光させず、前記オブジェクトが光を発光しない間に画像を撮像することにより、前記環境色を定期的に更新させ、
    前記1以上の追跡可能な色を再決定させる、
    を更に備えることを特徴とする請求項15に記載の計算装置。
  27. 前記命令は、前記処理装置に、
    前記光学センサの露出設定の変更を検出させ、
    前記オブジェクトの輝度を調整させる、
    を更に備えることを特徴とする請求項15に記載の計算装置。
  28. 前記命令は、前記処理装置に、
    前記追跡システムの追跡の質が次善であることを判定させ、
    環境光がしきい値を超えた場合、前記計算装置のユーザに、照明を消す又はブラインドを閉じるよう通知させ、
    追跡可能な色の数がしきい値よりも少ない場合、色の衝突の原因となっている前記1以上の画像に含まれる更なるオブジェクトを前記ユーザに示させる、
    を更に備えることを特徴とする請求項15に記載の計算装置。
  29. 処理装置により実行されたとき、前記処理装置に方法を実行させる命令を含むコンピュータ読み取り可能な記録媒体であって、
    前記方法は、
    較正ロジックを実行する計算装置が、光学センサにより撮像された1以上の画像におけるオブジェクトの位置を検出するステップと、
    計算装置が、前記1以上の画像に含まれる、前記1以上の画像において前記オブジェクトにより発せられていない色である環境色を決定するステップと、
    前記オブジェクトにより呈された場合に、前記オブジェクトを前記計算装置が追跡することを可能とする1以上の追跡可能な色を決定するステップと、
    を備えることを特徴とするコンピュータ読み取り可能な記録媒体。
  30. 前記1以上の画像における前記オブジェクトの位置を検出するステップは、
    前記オブジェクトを複数の予め定義された色に順次呈させるステップと、
    前記1以上の画像は、前記複数の予め定義された色のそれぞれについて別々の画像を含み、
    前記1以上の画像のそれぞれにおいて異なる色を有するピクセルの集合を識別するステップと、
    を備えることを特徴とする請求項29に記載のコンピュータ読み取り可能な記録媒体。
  31. 前記環境色を決定するステップは、
    前記オブジェクトに光を発光させないステップと、
    前記1以上の画像は、前記オブジェクトが光を発光しない間に撮像された画像を含み、
    前記オブジェクトが光を発光しない間に撮像された画像から、前記オブジェクトにより反射された環境色を表す前記オブジェクトの色を識別するステップと、
    を備えることを特徴とする請求項29に記載のコンピュータ読み取り可能な記録媒体。
JP2012514024A 2009-05-30 2010-05-28 オブジェクト追跡のための色較正 Pending JP2012529112A (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US21739309P 2009-05-30 2009-05-30
US61/217,393 2009-05-30
US12/789,389 2010-05-27
US12/789,389 US20100303297A1 (en) 2009-05-30 2010-05-27 Color calibration for object tracking
PCT/US2010/036699 WO2010141378A1 (en) 2009-05-30 2010-05-28 Color calibration for object tracking

Publications (1)

Publication Number Publication Date
JP2012529112A true JP2012529112A (ja) 2012-11-15

Family

ID=43220267

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012514024A Pending JP2012529112A (ja) 2009-05-30 2010-05-28 オブジェクト追跡のための色較正

Country Status (5)

Country Link
US (1) US20100303297A1 (ja)
EP (1) EP2435957B1 (ja)
JP (1) JP2012529112A (ja)
CN (1) CN102449641A (ja)
WO (1) WO2010141378A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101398968B1 (ko) 2014-03-04 2014-06-27 엘아이지넥스원 주식회사 적외선 탐색기 성능 시험 방법

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5101677B2 (ja) * 2010-09-14 2012-12-19 株式会社ソニー・コンピュータエンタテインメント 情報処理システム
US10960300B2 (en) 2011-11-23 2021-03-30 Sony Interactive Entertainment LLC Sharing user-initiated recorded gameplay with buffered gameplay
US10525347B2 (en) 2012-03-13 2020-01-07 Sony Interactive Entertainment America Llc System and method for capturing and sharing console gaming data
US9116555B2 (en) 2011-11-23 2015-08-25 Sony Computer Entertainment America Llc Gaming controller
US10486064B2 (en) 2011-11-23 2019-11-26 Sony Interactive Entertainment America Llc Sharing buffered gameplay in response to an input request
JP5174978B1 (ja) * 2012-04-26 2013-04-03 株式会社三菱東京Ufj銀行 情報処理装置、電子機器およびプログラム
US10150028B2 (en) * 2012-06-04 2018-12-11 Sony Interactive Entertainment Inc. Managing controller pairing in a multiplayer game
US9182813B2 (en) 2012-08-10 2015-11-10 Ulsee Inc. Image-based object tracking system in 3D space using controller having multiple color clusters
JP6178066B2 (ja) * 2012-11-06 2017-08-09 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理方法、プログラム及び情報記憶媒体
US9317136B2 (en) * 2013-01-10 2016-04-19 UL See Inc. Image-based object tracking system and image-based object tracking method
CN104134070B (zh) * 2013-05-03 2018-05-29 仁宝电脑工业股份有限公司 交互式对象追踪系统及其交互式对象与追踪方法
JP2015088096A (ja) * 2013-11-01 2015-05-07 株式会社ソニー・コンピュータエンタテインメント 情報処理装置および情報処理方法
CN104461009B (zh) * 2014-12-22 2018-01-09 百度在线网络技术(北京)有限公司 物体的测量方法和智能设备
EP3308608B1 (en) 2015-06-09 2023-08-30 Feeney, Liam A visual tracking system and method
EP4254035A3 (en) * 2016-10-12 2023-12-06 Samsung Electronics Co., Ltd. Method, apparatus, and recording medium for processing image
US10552961B2 (en) * 2016-12-19 2020-02-04 Htc Corporation Method, device, and non-transitory computer readable storage medium for object tracking
US10228543B2 (en) * 2017-03-31 2019-03-12 Sony Interactive Entertainment Inc. Zoom apparatus and associated methods
US10467456B2 (en) * 2017-04-17 2019-11-05 Htc Corporation Tracking system for tracking an object based on silhouette
US10338695B1 (en) * 2017-07-26 2019-07-02 Ming Chuan University Augmented reality edugaming interaction method
TWI637363B (zh) * 2017-07-26 2018-10-01 銘傳大學 擴增實境之人機互動系統
CN111034185B (zh) * 2017-08-23 2021-07-27 索尼公司 影像处理装置、影像处理方法、程序和远程通信系统
US10635116B2 (en) * 2017-10-19 2020-04-28 Ford Global Technologies, Llc Video calibration with illumination invariant image
US11599192B2 (en) * 2018-04-26 2023-03-07 Sony Interactive Entertainment Inc. Image presentation apparatus, image presentation method, recording medium, and program
WO2020010043A1 (en) * 2018-07-06 2020-01-09 Brain Corporation Systems, methods and apparatuses for calibrating sensors mounted on a device
GB2581247B (en) * 2018-12-10 2021-06-02 Electronic Theatre Controls Inc Systems and methods of directing a lighting fixture in a venue
CN111833403B (zh) * 2020-07-27 2024-05-31 闪耀现实(无锡)科技有限公司 用于空间定位的方法和装置
US20220067949A1 (en) * 2020-08-25 2022-03-03 Htc Corporation Object tracking method and object tracking device
JP2022135263A (ja) * 2021-03-05 2022-09-15 シャープ株式会社 画像処理装置、画像処理プログラムおよび画像処理方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06301475A (ja) * 1993-04-14 1994-10-28 Casio Comput Co Ltd 位置検出装置
JPH0895157A (ja) * 1994-09-27 1996-04-12 Hitachi Ltd 表示装置
JPH09265346A (ja) * 1996-03-29 1997-10-07 Bijiyuaru Sci Kenkyusho:Kk 空間マウス及びマウス位置検出装置及び映像化装置
JP2007527573A (ja) * 2004-01-16 2007-09-27 株式会社ソニー・コンピュータエンタテインメント 光入力デバイス用の装置及びその方法
WO2008120189A1 (en) * 2007-03-29 2008-10-09 Cam-Trax Technologies Ltd System and method for tracking an electronic device
JP2009508581A (ja) * 2005-09-15 2009-03-05 株式会社ソニー・コンピュータエンタテインメント 強度のコンピュータ画像および音声処理、ならびにコンピュータプログラムとインタフェースするための入力装置
JP2009514106A (ja) * 2005-10-26 2009-04-02 株式会社ソニー・コンピュータエンタテインメント コンピュータプログラムとインタフェースするためのシステムおよび方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4843568A (en) * 1986-04-11 1989-06-27 Krueger Myron W Real time perception of and response to the actions of an unencumbered participant/user
US4787051A (en) * 1986-05-16 1988-11-22 Tektronix, Inc. Inertial mouse system
GB2218237B (en) * 1986-06-30 1991-01-16 Wang Laboratories Inductively-powered data storage card
GB2193021B (en) * 1986-07-24 1990-07-25 Stanley Electric Co Ltd Optical identification card system
US5128671A (en) * 1990-04-12 1992-07-07 Ltv Aerospace And Defense Company Control device having multiple degrees of freedom
US5423554A (en) * 1993-09-24 1995-06-13 Metamedia Ventures, Inc. Virtual reality game method and apparatus
US5528265A (en) * 1994-07-18 1996-06-18 Harrison; Simon J. Orientation-operated cursor control device
SE504846C2 (sv) * 1994-09-28 1997-05-12 Jan G Faeger Styrutrustning med ett rörligt styrorgan
US20010008561A1 (en) * 1999-08-10 2001-07-19 Paul George V. Real-time object tracking system
US7121946B2 (en) * 1998-08-10 2006-10-17 Cybernet Systems Corporation Real-time head tracking system for computer games and other applications
US6766036B1 (en) 1999-07-08 2004-07-20 Timothy R. Pryor Camera based man machine interfaces
US6375572B1 (en) * 1999-10-04 2002-04-23 Nintendo Co., Ltd. Portable game apparatus with acceleration sensor and information storage medium storing a game progam
US20020085097A1 (en) * 2000-12-22 2002-07-04 Colmenarez Antonio J. Computer vision-based wireless pointing system
KR100459893B1 (ko) * 2002-01-08 2004-12-04 삼성전자주식회사 동영상에서 칼라 기반의 객체를 추적하는 방법 및 그 장치
US7627139B2 (en) * 2002-07-27 2009-12-01 Sony Computer Entertainment Inc. Computer image and audio processing of intensity and input devices for interfacing with a computer program
US20040212589A1 (en) * 2003-04-24 2004-10-28 Hall Deirdre M. System and method for fusing and displaying multiple degree of freedom positional input data from multiple input sources
IL155921A (en) * 2003-05-14 2010-11-30 P W Precyse Wireless Ltd Tracking system using optical tags
US8287373B2 (en) * 2008-12-05 2012-10-16 Sony Computer Entertainment Inc. Control device for communicating visual information
JP2006185109A (ja) 2004-12-27 2006-07-13 Hitachi Ltd 画像計測装置及び画像計測方法
US20060238347A1 (en) * 2005-04-22 2006-10-26 W.R. Parkinson, Co., Inc. Object tracking system
DE502005003462D1 (de) * 2005-05-11 2008-05-08 Vdo Automotive Ag Elektrische Maschine mit vorgespanntem Kugellager und Verfahren zur Herstellung derselben
US7364306B2 (en) * 2005-06-20 2008-04-29 Digital Display Innovations, Llc Field sequential light source modulation for a digital display system
US20080026838A1 (en) * 2005-08-22 2008-01-31 Dunstan James E Multi-player non-role-playing virtual world games: method for two-way interaction between participants and multi-player virtual world games
US8111290B2 (en) * 2008-06-06 2012-02-07 Microsoft Corporation Radiometric calibration using temporal irradiance mixtures
US7884721B2 (en) * 2008-08-25 2011-02-08 James Edward Gibson Devices for identifying and tracking wireless microphones

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06301475A (ja) * 1993-04-14 1994-10-28 Casio Comput Co Ltd 位置検出装置
JPH0895157A (ja) * 1994-09-27 1996-04-12 Hitachi Ltd 表示装置
JPH09265346A (ja) * 1996-03-29 1997-10-07 Bijiyuaru Sci Kenkyusho:Kk 空間マウス及びマウス位置検出装置及び映像化装置
JP2007527573A (ja) * 2004-01-16 2007-09-27 株式会社ソニー・コンピュータエンタテインメント 光入力デバイス用の装置及びその方法
JP2009508581A (ja) * 2005-09-15 2009-03-05 株式会社ソニー・コンピュータエンタテインメント 強度のコンピュータ画像および音声処理、ならびにコンピュータプログラムとインタフェースするための入力装置
JP2009514106A (ja) * 2005-10-26 2009-04-02 株式会社ソニー・コンピュータエンタテインメント コンピュータプログラムとインタフェースするためのシステムおよび方法
WO2008120189A1 (en) * 2007-03-29 2008-10-09 Cam-Trax Technologies Ltd System and method for tracking an electronic device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101398968B1 (ko) 2014-03-04 2014-06-27 엘아이지넥스원 주식회사 적외선 탐색기 성능 시험 방법

Also Published As

Publication number Publication date
CN102449641A (zh) 2012-05-09
US20100303297A1 (en) 2010-12-02
EP2435957A1 (en) 2012-04-04
EP2435957B1 (en) 2021-07-28
WO2010141378A1 (en) 2010-12-09
EP2435957A4 (en) 2017-03-15

Similar Documents

Publication Publication Date Title
JP2012529112A (ja) オブジェクト追跡のための色較正
US10445884B2 (en) Control device for communicating visual information
JP5512804B2 (ja) オブジェクトの位置及び向きを用いた追跡システムの較正
JP5972966B2 (ja) 投影された参照パターンによるオブジェクト追跡
CN102257456B (zh) 校正跟踪系统中的角度误差
TWI517881B (zh) 決定附球控制器的位置與移動
US8142288B2 (en) Base station movement detection and compensation
JP5469179B2 (ja) 最小限のユーザ入力による追跡システムの較正
US8393964B2 (en) Base station for position location
US20120108332A1 (en) Entertainment Device, System, and Method
US9390487B2 (en) Scene exposure auto-compensation for differential image comparisons
JP7315489B2 (ja) 周辺機器追跡システムおよび方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130924

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20140204