(57)【要約】      （修正有）【課題】照明の条件に依存してシステムを較正することが不要な柱状入力装置を提供する。【解決手段】手によって操作される柱状オブジェクトは、一台のビデオカメラによって捕捉され、オブジェクトに係わる画像の部分を分離させ、オブジェクトの位置および方向を三次元空間にマッピングする。オブジェクトの三次元的な情報はメモリに格納され、ビデオ画面上のシーンにおける仮想オブジェクトのゲームプログラムにおけるアクションの制御に用いられる。種々の柱状オブジェクトについての三次元的な情報を得るためのアルゴリズムには、領域情報計算、エッジ検出および／または色遷移位置の特定を含むジオメトリ処理が用いられ、二次元的な画素データから柱状オブジェクトの位置と方向が求められる。柱状オブジェクトに付けられるストライプの色は、大幅な色遷移が検出されるように、二次元的なクロミナンス色空間における分離度が最大となるように決められる。【選択図】図３
2006178948.tif 000002
【特許請求の範囲】
【請求項１】
メモリと表示部とを有する処理ユニットに接続された一台のビデオカメラの視界の中で物理的なオブジェクトを操作するステップと、
前記ビデオカメラによって捕捉された二次元的な画素情報を前記処理ユニットに供給するステップと、
前記二次元的な画素情報から前記オブジェクトに対応する少なくとも一つの画素群を抽出するステップと、
前記少なくとも一つの画素群に基づいて二次元的な幾何学的形状を定義するための一組のパラメータを求めるステップと、
前記一組のパラメータに基づいて所定のアルゴリズムを実行して前記二次元的な幾何学的形状を幾何学的な数値による三次元的に定義されたデータにマッピングすることによって、操作された前記オブジェクトの位置および方向に対応する三次元における前記幾何学的な数値の情報を得るステップと、
前記三次元に定義されたデータを前記メモリに格納するステップと、
前記幾何学的な数値情報を用いて前記表示部上のアクションを制御するステップとを含むことを特徴とするゲームプログラムの制御方法。
【請求項２】
請求項１記載の方法において、前記オブジェクトが無地のシリンダからなり、前記抽出された画素群によって定義される幾何学的形状が四角形であり、前記所定のアルゴリズムが、
前記画素群の長さｌを求めるステップと、
前記画素群に沿った少なくとも二つの異なる長さの前記画素群の幅ｗ1およびｗ2を求めるステップと、
画像のＸ−Ｙ平面において、Ｙ軸と前記長さｌによって定義される方向との間の傾き（角度）θを求めるステップと、
前記二つの幅の比ｗ1：ｗ2に基づいてＹ−Ｚ平面における前記オブジェクトの傾きφを求めるステップと、
前記傾きφによって重み付けされた前記画素群の長さｌφ、または、前記傾きφによって重み付けされた前記画素群を構成する画素の合計数Ｎφに基づいて前記オブジェクトの奥行き値ｚを求めるステップとを含むことを特徴とするゲームプログラムの制御方法。
【請求項３】
請求項１記載の方法において、前記オブジェクトが無地のシリンダからなり、前記抽出された画素群によって定義される幾何学的形状が四角形であり、前記所定のアルゴリズムが、
前記画素群の長さｌを求めるステップと、
前記画素群に沿った少なくとも二つの異なる長さの前記画素群の幅ｗ1およびｗ2を求めるステップと、
画像のＸ−Ｙ平面において、Ｙ軸と前記長さｌによって定義される方向との間の傾き（角度）θを求めるステップと、
前記画素群の平均幅ｗavgに基づいて前記オブジェクトの奥行き値ｚを求めるステップと、
前記画素群の前記長さｌと前記平均幅ｗavgとの比ｌ：ｗavgに基づいてＹ−Ｚ平面における前記オブジェクトの傾きφを求めるステップとを含むことを特徴とするゲームプログラムの制御方法。
【請求項４】
請求項１記載の方法において、前記オブジェクトが無地のシリンダと該シリンダに取り付けられた無地の球体とからなり、前記シリンダの色と前記球体の色とが異なっており、前記抽出された画素群のうち、前記シリンダに対応する部分によって定義される幾何学的形状が四角形であり、球体に対応する部分によって定義される幾何学的形状が円形であり、前記所定のアルゴリズムが、
前記抽出された画素群のうちの前記球体に対応する部分によって定義される前記円の中心点（ポイントＰS）と該円全体の画素領域とを求めるステップと、
前記抽出された画素群のうちの前記シリンダに対応する部分によって定義される前記四角形の中心線における別のポイントＰを求めるステップと、
前記ポイントＰSと前記ポイントＰとの間の長さｌを求めるステップと、
画像のＸ−Ｙ平面において、Ｙ軸と前記長さｌによって定義される方向との間の前記オブジェクトの傾きθを求めるステップと、
前記抽出された画素群のうちの前記球体に対応する部分によって定義される前記円を構成する画素の合計数Ｎに基づいて前記オブジェクトの奥行き値ｚを求めるステップと、
前記ポイントＰSと前記ポイントＰとの間の前記長さｌと前記奥行き値ｚとに基づいて、Ｙ−Ｚ平面における前記オブジェクトの傾きφを求めるステップとを含むことを特徴とするゲームプログラムの制御方法。
【請求項５】
請求項１記載の方法において、前記オブジェクトが複数の周方向の無地のストライプが付けられた無地のシリンダからなり、前記ストライプの色と前記シリンダの色とが異なっており、前記画素群の抽出ステップにおいて前記シリンダと前記ストライプとの間の複数の色遷移が求められ、前記所定のアルゴリズムが、
二次元的なクロミナンス色空間における最大の分離度を定義する閾値Ｄtを設定するステップと、
前記ストライプの色および前記シリンダの色に対応する合成クロミナンス信号ＣｒおよびＣｂによって求められる値Ｄに基づいて色遷移を検出するステップと、
前記値Ｄが前記所定の閾値Ｄtを超えた際に、十分な度合いの色遷移が発生したことを判断するステップと、
前記十分な度合いの色遷移によって前記ストライプの間のそれぞれの長さｌ1およびｌ2を定義するステップと、
前記ストライプの間のそれぞれの長さｌ1およびｌ2の比ｌ1：ｌ2に基づいて、Ｙ−Ｚ平面における前記オブジェクトの傾きφを求めるステップと、
前記長さｌ1およびｌ2の合計と前記Ｙ−Ｚ平面における前記オブジェクトの傾きφとに基づいて前記オブジェクトの奥行き値ｚを求めるステップとを含むことを特徴とするゲームプログラムの制御方法。
【請求項６】
請求項１記載の方法において、前記オブジェクトがらせん状の無地のストライプが付けられた無地のシリンダからなり、前記ストライプの色と前記シリンダの色とが異なっており、前記画素群の抽出ステップにおいて前記ストライプに対応する少なくとも一つの画素群が抽出され、さらに、前記オブジェクトの回転度を求めるための所定のアルゴリズムを実行するステップを含むことを特徴とするゲームプログラムの制御方法。
【請求項７】
請求項６記載の方法において、前記オブジェクトの回転度を求めるための所定のアルゴリズムを実行するステップが、
前記シリンダに対応する画素群を抽出するステップと、
前記ストライプに対応する画素群に基づいてらせんＨを定義するステップと、
前記シリンダに対応する画素群の中心線を求めるステップと、
前記シリンダに対応する抽出された画素群の端部と、前記中心線が前記らせんＨに交差する該らせんＨ上のポイントとの間の高さｈを求めるステップとを含み、
前記シリンダの回転度が前記シリンダに対応する画素群の全長ｌに対する前記高さｈの比に基づいて求められることを特徴とするゲームプログラムの制御方法。
【請求項８】
二次元的な色空間において定義されるクロミナンス座標（Ｃｒ，Ｃｂ）を用いて色を検出するビデオカメラおよび画像処理システムを用いて捕捉されるオブジェクトに適用される色の選択方法において、
前記色空間において、各座標（Ｃｒ1，Ｃｂ1）および（Ｃｒ2，Ｃｂ2）によって定義される少なくとも二つの色を有するオブジェクトを前記ビデオカメラによって捕捉するステップと、
前記色空間によって定義される色相環上で所定の傾きθを有する直径を選択するステップと、
前記座標（Ｃｒ1，Ｃｂ1）および（Ｃｒ2，Ｃｂ2）によって定義される各ポイントから一対のラインを前記直径に対して法線方向に投影させるステップと、
前記ラインが前記直径に投影された各ポイント間の距離Ｄを算出するステップと、
前記算出された距離Ｄが所定の閾値を超えるような色のみを検出に適した色として選択するステップとを含むことを特徴とする色の選択方法。
【請求項９】
請求項８記載の色選択方法において、前記距離Ｄが次の式によって算出されることを特徴とする色の選択方法。
Ｄ＝［Ｃｒ1・ｃoｓθ＋Ｃｂ1・ｓｉｎθ］−［Ｃｒ2・ｃoｓθ＋Ｃｂ2・ｓｉｎθ］
【請求項１０】
ストライプが付けられたシリンダ本体と、ハンドルとからなる入力装置であって、
前記ストライプの色と前記シリンダ本体の色とが異なる色であり、
少なくとも前記ストライプに対応する画素群とシリンダ本体に対応する画素群とからなる二次元的な画像データをカメラを介して画像処理ユニットに入力することによって三次元的なデータを入力することが可能なことを特徴とする入力装置。
【請求項１１】
請求項１０記載の装置において、前記ストライプがらせん状であり、前記シリンダ本体の軸を中心とする回転データを入力することが可能なことを特徴とする入力装置。
【請求項１２】
ストライプが付けられたシリンダ本体と、ハンドルとからなる三次元オブジェクトを操作するステップと、
前記三次元オブジェクトの動作をカメラで捕捉して少なくとも前記シリンダ本体に対応する画素群と前記ストライプに対応する画素群とからなる二次元的な画像データを得るステップと、
前記二次元的な画像データを解析して前記オブジェクトの三次元的なデータを算出するステップとを含むことを特徴とする三次元オブジェクトの動作を入力する方法。
【請求項１３】
請求項１２記載の方法において、前記ストライプがらせん状であり、
前記二次元的な画像データの解析ステップが、前記シリンダ本体に対応する画素群と前記ストライプに対応する画素群との関係を解析して前記シリンダ本体の軸を中心とする回転に関するデータを算出するステップを含むことを特徴とする三次元オブジェクトの動作を入力する方法。
【請求項１４】
ストライプが付けられたシリンダ本体からなる入力装置と、
前記入力装置の動作を捕捉するカメラと、
画像処理ユニットとからなり、
前記カメラが前記入力装置の動作を捕捉して前記シリンダ本体に対応する画素群と前記ストライプに対応する画素群とからなる二次元的な画像データを前記画像処理ユニットに供給し、
前記画像処理ユニットが前記二次元的な画像データを解析して前記入力装置の動作に基づく三次元的なデータを算出することを特徴とする三次元オブジェクトの動作を入力するシステム。
【請求項１５】
請求項１４記載のシステムにおいて、前記ストライプがらせん状であり、前記画像処理ユニットが前記シリンダ本体に対応する画素群と前記ストライプに対応する画素群との関係を解析して前記シリンダ本体の軸を中心とする回転に関するデータを算出することを特徴とする三次元オブジェクトの動作を入力するシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータビジョンシステムに関し、より具体的には、ビデオカメラによってオブジェクトを捕捉し、カメラ画像の解析によってオブジェクトに関する画像の部分を分離させ、さらに、オブジェクトの位置および方向を三次元空間にマッピングするシステムに関する。オブジェクトの三次元的な情報はメモリに格納され、ビデオ画面上のシーンにおける仮想オブジェクトのレンダリング等、ゲームプログラムにおけるアクションの制御に用いられる。
【背景技術】
【０００２】
デジタルビデオカメラを用いて動いているオブジェクトを捕捉すること、また、このビデオカメラによって取り込まれたビデオ画像を処理して様々な画面を表示させることは公知の技術である。一例として、Ｓｅｇｅｎを発明者とする特許文献１（以下、Ｓｅｇｅｎ特許という）にはスポーツのイベントをアニメーションにする方法が開示されている。本発明は、このＳｅｇｅｎ特許を参照することによって、その開示内容を本明細書中に組み込んだものとする。この方法によれば、競技中のテニスボールの位置が複数のビデオカメラによって捕捉され、テニスコートにおける三次元的なポイントとカメラの視野の中のデジタル画像における二次元的なポイント（画素）との関連を示す一組の数式が用いられている。特定のデジタル画像において示されたボールを構成する各画素の位置は、競技に使用されているボールの具体的な三次元的な位置に関連付けられ、各ビデオ画像を三角形分割することによって、衝撃が加えられていない状態のボールの運動セグメントを示す軌跡式に、ボールの位置を合わせるように、一連の画像フレームが最小２乗法を用いて分析される。
【０００３】
Ｓｅｇｅｎ特許においてある程度説明されているが、オブジェクトの位置と運動に関する三次元的な情報が求められれば、本技術分野において公知となっている様々な方法を用いてオブジェクトの動作をアニメーションとして再現することができる。このような方法においては、ビデオゲームにおいてオブジェクトのアニメーションを適切に作り出すためのプログラムが用いられる。
【０００４】
つまり、Ｓｅｇｅｎ特許は、一定期間内に取り込まれた複数の二次元的なビデオ画像に基づいて運動中のオブジェクトの三次元的な位置を求めるようにしている。「現実」のオブジェクトの三次元的な位置を求めることができれば、この情報を用いて、ゲームプログラマに一般的に知られている様々な方法により、ゲームプログラムを制御することが可能となる。
【０００５】
しかしながら、Ｓｅｇｅｎ特許のシステムは、三角形分割を用いた分析に基づいてオブジェクトに関する位置情報を得るものであるため、複数のビデオカメラを必要とする。さらに、Ｓｅｇｅｎ特許によって検出されるオブジェクトは、単純な球体であるため、空間内におけるオブジェクトの方向の位置情報（例えば、傾き）を含んでいない。従って、Ｓｅｇｅｎ特許のシステムでは、オブジェクトが動いている場合であっても静止している場合であっても、一つのビデオカメラを使った二次元的なビデオ画像に基づいてオブジェクトの位置および方向を再現することができない。
【０００６】
ゲームプログラムは、通常、三次元的な幾何学的形状を組み合わせた仮想オブジェクトを用いている。ゲームプログラムの実行中、各オブジェクト間の三次元的な情報（位置および方向）は、ジョイスティック、ゲームコントローラ等の入力装置を用いて入力された制御入力パラメータによって決定される。仮想的なオブジェクトの三次元的な位置および情報は、背景設定、照明設定、さらに、陰影付け等を行った後、二次元的な画面に投影され、ゲーム機のレンダリング処理機能によって三次元的な遠近感のあるシーンが作り出される。
【０００７】
例として、画面に表示されている動画の一部として「現実」のオブジェクトの動作に従って動作する「仮想オブジェクト」を想定する。仮想オブジェクトを表示するために、算出された三次元的な情報は、ゲーム機のメモリ空間内で「仮想オブジェクト」の位置および方向の決定に用いられ、画像のレンダリングが公知の投影処理によって行われ、三次元的な情報が、遠近感のあるリアルな画像として画面に表示される。
【０００８】
しかしながら、上述した技術においては、種々の問題によって、オブジェクトの捕捉が成功しないことがある。即ち、対象となっているオブジェクトに明らかに対応するビデオ画像の画素のみを正確に抽出する際に、特に重大な問題がある。例えば、オブジェクトが単色であり、かつ、このオブジェクトの色とは大幅に異なる単色を背景に用いているような場合であれば、オブジェクトの動きを捕捉することは比較的容易である。しかしながら、オブジェクトに鮮やかな色が用いられていても、背景に複数の色が用いられていたり、背景が動いていたりしているのであれば、オブジェクトの捕捉は容易ではない。また、照明の条件が変更されれば、ビデオカメラによって捕捉されるオブジェクトの見かけの色に大きな影響が及ぼされる。従って、特定の色のオブジェクトを検出するようなオブジェクトの検出方法では、大きな誤差が生じやすく、照明条件の変更に伴い、常時、再較正を行わなければならない。ビデオゲームプログラムを一般的な家庭で使用するには、従来のオブジェクトを捕捉するためのコンピュータビジョンシステムの柔軟性かつ信頼性を飛躍的に高める必要がある。
【０００９】
【特許文献１】米国特許第６，０７２，５０４号明細書
【発明の開示】
【発明が解決しようとする課題】
【００１０】
本発明は、ビデオゲームプログラムに適したオブジェクト捕捉システムを提供することを目的とし、上述した従来技術における不都合を解決し、オブジェクト、即ち、入力装置として機能する柱状オブジェクトの位置および方向を捕捉してゲームプログラムにおけるアクションを実行させることが可能なオブジェクト捕捉システムを提供することを目的とする。
【００１１】
本発明の別の目的は、従来のジョイスティックに代替するゲームのためのインタフェースを提供することである。ユーザは、ゲーム機に接続されたビデオカメラの前に立ってカメラの視野内で物理的にオブジェクトを動作させる（操作する）ことによってゲームにおけるアクションを発生させることができる。
【００１２】
また、本発明の別の目的は、操作されたオブジェクトに対応すると識別された画素群の二次元的な情報を三次元空間にマッピングすることによって、一台のビデオカメラの画像から三次元におけるオブジェクトの三次元的な情報、即ち、位置および方向の情報を提供することにある。
【００１３】
さらに、本発明の別の目的は、操作されたオブジェクトの回転成分を含むオブジェクトの三次元的な情報を提供することにある。
【００１４】
またさらに、本発明の別の目的は、オブジェクトの三次元的な位置および方向の情報を求める際に必要な情報を得るために、ビデオ画像から操作されたオブジェクトに対応する画素群がはっきりと認識されるように、画素群を最も識別しやすくなるようなオブジェクトの色を色遷移に基づいて決定する技法を提供することにある。
【課題を解決するための手段】
【００１５】
本発明に係るゲームプログラムの制御方法は、メモリと表示部とを有する処理ユニットに接続された一台のビデオカメラの視界の中で物理的なオブジェクトを操作するステップと、前記ビデオカメラによって捕捉された二次元的な画素情報を前記処理ユニットに供給するステップと、前記二次元的な画素情報から前記オブジェクトに対応する少なくとも一つの画素群を抽出するステップと、前記少なくとも一つの画素群に基づいて二次元的な幾何学的形状を定義するための一組のパラメータを求めるステップと、前記一組のパラメータに基づいて所定のアルゴリズムを実行して前記二次元的な幾何学的形状を幾何学的な数値による三次元的に定義されたデータにマッピングすることによって、操作された前記オブジェクトの位置および方向に対応する三次元における前記幾何学的な数値の情報を得るステップと、前記三次元に定義されたデータを前記メモリに格納するステップと、前記幾何学的な数値情報を用いて前記表示部上のアクションを制御するステップとを含むことを特徴とする。
【００１６】
この場合、前記オブジェクトが無地のシリンダからなり、前記抽出された画素群によって定義される幾何学的形状が四角形であり、前記所定のアルゴリズムが、前記画素群の長さｌを求めるステップと、前記画素群に沿った少なくとも二つの異なる長さの前記画素群の幅ｗ1およびｗ2を求めるステップと、画像のＸ−Ｙ平面において、Ｙ軸と前記長さｌによって定義される方向との間の傾き（角度）θを求めるステップと、前記二つの幅の比ｗ1：ｗ2に基づいてＹ−Ｚ平面における前記オブジェクトの傾きφを求めるステップと、前記傾きφによって重み付けされた前記画素群の長さｌφ、または、前記傾きφによって重み付けされた前記画素群を構成する画素の合計数Ｎφに基づいて前記オブジェクトの奥行き値ｚを求めるステップとを含むようにしてもよい。
【００１７】
また、前記オブジェクトが無地のシリンダからなり、前記抽出された画素群によって定義される幾何学的形状が四角形であり、前記所定のアルゴリズムが、前記画素群の長さｌを求めるステップと、前記画素群に沿った少なくとも二つの異なる長さの前記画素群の幅ｗ1およびｗ2を求めるステップと、画像のＸ−Ｙ平面において、Ｙ軸と前記長さｌによって定義される方向との間の傾き（角度）θを求めるステップと、前記画素群の平均幅ｗavgに基づいて前記オブジェクトの奥行き値ｚを求めるステップと、前記画素群の前記長さｌと前記平均幅ｗavgとの比ｌ：ｗavgに基づいてＹ−Ｚ平面における前記オブジェクトの傾きφを求めるステップとを含むようにしてもよい。
【００１８】
また、前記オブジェクトが無地のシリンダと該シリンダに取り付けられた無地の球体とからなり、前記シリンダの色と前記球体の色とが異なっており、前記抽出された画素群のうち、前記シリンダに対応する部分によって定義される幾何学的形状が四角形であり、球体に対応する部分によって定義される幾何学的形状が円形であり、前記所定のアルゴリズムが、前記抽出された画素群のうちの前記球体に対応する部分によって定義される前記円の中心点（ポイントＰS）と該円全体の画素領域とを求めるステップと、前記抽出された画素群のうちの前記シリンダに対応する部分によって定義される前記四角形の中心線における別のポイントＰを求めるステップと、前記ポイントＰSと前記ポイントＰとの間の長さｌを求めるステップと、画像のＸ−Ｙ平面において、Ｙ軸と前記長さｌによって定義される方向との間の前記オブジェクトの傾きθを求めるステップと、前記抽出された画素群のうちの前記球体に対応する部分によって定義される前記円を構成する画素の合計数Ｎに基づいて前記オブジェクトの奥行き値ｚを求めるステップと、前記ポイントＰSと前記ポイントＰとの間の前記長さｌと前記奥行き値ｚとに基づいて、Ｙ−Ｚ平面における前記オブジェクトの傾きφを求めるステップとを含むようにしてもよい。
【００１９】
また、前記オブジェクトが複数の周方向の無地のストライプが付けられた無地のシリンダからなり、前記ストライプの色と前記シリンダの色とが異なっており、前記画素群の抽出ステップにおいて前記シリンダと前記ストライプとの間の複数の色遷移が求められ、前記所定のアルゴリズムが、二次元的なクロミナンス色空間における最大の分離度を定義する閾値Ｄtを設定するステップと、前記ストライプの色および前記シリンダの色に対応する合成クロミナンス信号ＣｒおよびＣｂによって求められる値Ｄに基づいて色遷移を検出するステップと、前記値Ｄが前記所定の閾値Ｄtを超えた際に、十分な度合いの色遷移が発生したことを判断するステップと、前記十分な度合いの色遷移によって前記ストライプの間のそれぞれの長さｌ1およびｌ2を定義するステップと、前記ストライプの間のそれぞれの長さｌ1およびｌ2の比ｌ1：ｌ2に基づいて、Ｙ−Ｚ平面における前記オブジェクトの傾きφを求めるステップと、前記長さｌ1およびｌ2の合計と前記Ｙ−Ｚ平面における前記オブジェクトの傾きφとに基づいて前記オブジェクトの奥行き値ｚを求めるステップとを含むようにしてもよい。
【００２０】
また、前記オブジェクトがらせん状の無地のストライプが付けられた無地のシリンダからなり、前記ストライプの色と前記シリンダの色とが異なっており、前記画素群の抽出ステップにおいて前記ストライプに対応する少なくとも一つの画素群が抽出され、さらに、前記オブジェクトの回転度を求めるための所定のアルゴリズムを実行するステップを含むようにしてもよい。
【００２１】
この場合、前記オブジェクトの回転度を求めるための所定のアルゴリズムを実行するステップが、前記シリンダに対応する画素群を抽出するステップと、前記ストライプに対応する画素群に基づいてらせんＨを定義するステップと、前記シリンダに対応する画素群の中心線を求めるステップと、前記シリンダに対応する抽出された画素群の端部と、前記中心線が前記らせんＨに交差する該らせんＨ上のポイントとの間の高さｈを求めるステップとを含み、前記シリンダの回転度を前記シリンダに対応する画素群の全長ｌに対する前記高さｈの比に基づいて求めるようにしてもよい。
【００２２】
次に、本発明に係る色の選択方法は、二次元的な色空間において定義されるクロミナンス座標（Ｃｒ，Ｃｂ）を用いて色を検出するビデオカメラおよび画像処理システムを用いて捕捉されるオブジェクトに適用される色の選択方法において、前記色空間において、各座標（Ｃｒ1，Ｃｂ1）および（Ｃｒ2，Ｃｂ2）によって定義される少なくとも二つの色を有するオブジェクトを前記ビデオカメラによって捕捉するステップと、前記色空間によって定義される色相環上で所定の傾きθを有する直径を選択するステップと、前記座標（Ｃｒ1，Ｃｂ1）および（Ｃｒ2，Ｃｂ2）によって定義される各ポイントから一対のラインを前記直径に対して法線方向に投影させるステップと、前記ラインが前記直径に投影された各ポイント間の距離Ｄを算出するステップと、前記算出された距離Ｄが所定の閾値を超えるような色のみを検出に適した色として選択するステップとを含むことを特徴とする。
【００２３】
この場合、前記距離Ｄが次の式によって算出されるようにしてもよい。
【００２４】
Ｄ＝［Ｃｒ1・ｃoｓθ＋Ｃｂ1・ｓｉｎθ］−［Ｃｒ2・ｃoｓθ＋Ｃｂ2・ｓｉｎθ］
次に、本発明に係る入力装置は、ストライプが付けられたシリンダ本体と、ハンドルとからなる入力装置であって、前記ストライプの色と前記シリンダ本体の色とが異なる色であり、少なくとも前記ストライプに対応する画素群とシリンダ本体に対応する画素群とからなる二次元的な画像データをカメラを介して画像処理ユニットに入力することによって三次元的なデータを入力することが可能なことを特徴とする。
【００２５】
この場合、前記ストライプがらせん状であり、前記シリンダ本体の軸を中心とする回転データを入力するようにしてもよい。
【００２６】
次に、本発明に係る三次元オブジェクトの動作を入力する方法は、ストライプが付けられたシリンダ本体と、ハンドルとからなる三次元オブジェクトを操作するステップと、前記三次元オブジェクトの動作をカメラで捕捉して少なくとも前記シリンダ本体に対応する画素群と前記ストライプに対応する画素群とからなる二次元的な画像データを得るステップと、前記二次元的な画像データを解析して前記オブジェクトの三次元的なデータを算出するステップとを含むことを特徴とする。
【００２７】
この場合、前記ストライプがらせん状であり、前記二次元的な画像データの解析ステップが、前記シリンダ本体に対応する画素群と前記ストライプに対応する画素群との関係を解析して前記シリンダ本体の軸を中心とする回転に関するデータを算出するステップを含むようにしてもよい。
【００２８】
次に、本発明に係る三次元オブジェクトの動作を入力するシステムは、ストライプが付けられたシリンダ本体からなる入力装置と、前記入力装置の動作を捕捉するカメラと、画像処理ユニットとからなり、前記カメラが前記入力装置の動作を捕捉して前記シリンダ本体に対応する画素群と前記ストライプに対応する画素群とからなる二次元的な画像データを前記画像処理ユニットに供給し、前記画像処理ユニットが前記二次元的な画像データを解析して前記入力装置の動作に基づく三次元的なデータを算出することを特徴とする。
【００２９】
この場合、前記ストライプがらせん状であり、前記画像処理ユニットが前記シリンダ本体に対応する画素群と前記ストライプに対応する画素群との関係を解析して前記シリンダ本体の軸を中心とする回転に関するデータを算出するようにしてもよい。
【００３０】
本発明の上述した目的、特徴および利点、さらに、その他の目的、特徴および利点は、本発明の好ましい実施の形態が例示された添付図面および以下の説明を併せ鑑みることによって良好に理解されるであろう。
【発明の効果】
【００３１】
以上説明したように、本発明によれば、以下の効果を奏することができる。
【００３２】
（１）  ビデオゲームプログラムに適したオブジェクト捕捉システム、例えばオブジェクト、即ち、入力装置として機能する柱状オブジェクトの位置および方向を捕捉してゲームプログラムにおけるアクションを実行させることが可能なオブジェクト捕捉システムを提供することができる。
【００３３】
（２）  従来のジョイスティックに代替するゲームのためのインタフェースを提供することができる。
【００３４】
（３）  操作されたオブジェクトに対応すると識別された画素群の二次元的な情報を三次元空間にマッピングすることによって、一台のビデオカメラの画像から三次元におけるオブジェクトの三次元的な情報、即ち、位置および方法を提供することができる。
【００３５】
（４）  操作されたオブジェクトの回転成分を含むオブジェクトの三次元的な情報を提供することができる。
【００３６】
（５）  オブジェクトの三次元的な位置および方向の情報を求める際に必要な情報を得るために、ビデオ画像から操作されたオブジェクトに対応する画素群がはっきりと認識されるように、画素群を最も識別しやすくなるようなオブジェクトの色を色遷移に基づいて決定する技法を提供することができる。
【発明を実施するための最良の形態】
【００３７】
本発明に係る柱状入力装置について好適な実施の形態を挙げ、添付の図面を参照しながら以下詳細に説明する。
【００３８】
図１は、ビデオゲーム機６０の要部の構成を示すブロック図である。このビデオゲーム機６０は、操作可能なオブジェクト（柱状オブジェクト）を従来の入力装置に代替して使用するために適したものである。
【００３９】
ビデオゲーム機６０は、図１に示す本発明に係るエンタテインメントシステム１１０の一部を構成している。ビデオゲーム機６０は、エンタテインメントシステム１１０の全体を制御するマイクロプロセッサ（ＭＰＵ）１１２と、種々のプログラムを実行し、データを記憶するメインメモリ１１４と、ジオメトリ処理に必要な浮動少数点ベクトル演算を行うベクトル演算ユニット１１６と、ＭＰＵ１１２による制御に基づいてデータを生成するイメージプロセッサ１２０と、ＣＲＴ等のビデオ信号を出力するモニタ８０と、ＭＰＵ１１２やベクトル演算ユニット１１６とイメージプロセッサ１２０との間の転送バスを介してデータの媒介等を行うグラフィックインタフェース（ＧＩＦ）１２２と、周辺機器とのデータの送受信を可能にする入出力ポート１２４と、カーネル等を制御するために、例えば、フラッシュメモリからなるＯＳＤ機能を内蔵したＲＯＭ（ＯＳＤＲＯＭ）１２６と、カレンダー機能およびタイマー機能を有するリアルタイムクロック１２８（ＲＴＣ）とを備える。
【００４０】
メインメモリ１１４、ベクトル演算ユニット１１６、ＧＩＦ１２２、ＯＳＤＲＯＭ１２６、ＲＴＣ１２８、および入出力ポート１２４は、データバス１３０を介してＭＰＵ１１２に接続されている。
【００４１】
データバス１３０には、画像データを取得するために圧縮された動画像やテクスチャ画像を展開する圧縮画像デコーダ（ＩＰＵ）１３８が接続されている。例えば、ＩＰＵ１３８は、標準的なＭＰＥＧ２形式に従ったビットストリームを復号してデータを取得する機能、マクロブロックの復号を行う機能、逆離散コサイン変換を行う機能、色空間変換を行う機能、さらに、ベクトル量子化を行う機能等を有する。
【００４２】
サウンドシステムは、ＭＰＵ１１２の指示に従って音楽的なエフェクト、または他のサウンドエフェクトを生成するサウンド処理ユニット（ＳＰＵ）１７１と、ＳＰＵ１７１によって波形データが記録されるサウンドバッファ１７３と、ＳＰＵ１７１によって生成された音楽的なエフェクト、または他のサウンドエフェクトを出力するスピーカ１７５とを含む。スピーカ１７５は、モニタ８０に組み込むようにしてもよいし、音声出力端子に接続された外部スピーカであってもよい。
【００４３】
また、データバス１３０には、本発明のデジタルコンテンツの入力を可能にするための、デジタルデータの入出力機能を有する通信インタフェース１４０が接続されている。この通信インタフェース１４０には、モデム５０やネットワークカード等を接続することができる。例えば、この通信インタフェース１４０を介してネットワーク上でサーバの端末にユーザの入力データを送信したり、ステータスデータをサーバの端末から受信したりすることが可能である。入出力ポート１２４には、キー入力データや座標データ等のデータをエンタテインメントシステム１１０に入力するための入力装置１３２（コントローラとも記す）と、各種プログラムおよびデータ（オブジェクトデータ、テクスチャデータ等）が記録されたＣＤ−ＲＯＭ等、光ディスク７０のコンテンツを再生するための光ディスクドライブ１３６とが接続されている。
【００４４】
本発明においては、この入力装置１３２に加えて、または、入力装置１３２に代替するものとして、デジタルビデオカメラ１９０が入出力ポート１２４に接続されている。入出力ポート１２４は、一個の入力インタフェースであってもよく、複数の入力インタフェースであってもよい。また、入出力ポート１２４は、シリアルインタフェースであってもよく、ＵＳＢインタフェースであってもよい。この利便性の高いＵＳＢ入力インタフェース、または他の従来のインタフェースを利用することによってデジタルビデオカメラ１９０の使用が可能となる。
【００４５】
上述したイメージプロセッサ１２０は、レンダリングエンジン１７０と、メモリインタフェース１７２と、画像メモリ１７４と、プログラマブルＣＲＴコントローラ等のディスプレイコントローラ１７６とを含む。
【００４６】
レンダリングエンジン１７０は、ＭＰＵ１１２によって与えられたレンダリングコマンドに従って、メモリインタフェース１７２を通じて画像メモリ１７４内で所定の画像データのレンダリングを行う。
【００４７】
第１バス１７８は、メモリインタフェース１７２とレンダリングエンジン１７０との間を接続し、第２バス１８０は、メモリインタフェース１７２と画像メモリ１７４との間を接続している。第１バス１７８および第２バス１８０は、それぞれ、例えば１２８ビットのビット幅を有し、レンダリングエンジン１７０は、画像メモリ１７４上でレンダリングを高速に行うことが可能である。
【００４８】
レンダリングエンジン１７０は、３２０×２４０画素または６４０×４８０画素の画像データ、もしくは、例えば標準的なＮＴＳＣ方式やＰＡＬ方式に準拠した画像データをリアルタイムで、即ち、１／６０秒毎〜１／３０秒毎に１０〜数十回のレンダリングを行うことが可能である。
【００４９】
画像メモリ１７４は、ユニファイドメモリ構造を採用しており、テクスチャレンダリング領域とディスプレイレンダリング領域とを同一の領域に設定することが可能である。
【００５０】
ディスプレイコントローラ１７６は、光ディスク７０から光ディスクドライブ１３６によって読み出したテクスチャデータ、または、メインメモリ１１４上で作成されたテクスチャデータを、画像メモリ１７４のテクスチャレンダリング領域にメモリインタフェース１７２を介して書き込み、画像メモリ１７４のディスプレイレンダリング領域でレンダリングされた画像データを、メモリインタフェース１７２を介して読み出し、この画像データをモニタ８０に出力してスクリーン上で表示することができるように構成されている。
【００５１】
次に、図２を参照し、柱状のオブジェクトを持ったユーザが、デジタルビデオカメラの正面でこのオブジェクトを操作してビデオゲーム内のアクションを発生させるシステム全体の構成を説明する。
【００５２】
図２に示すように、この柱状オブジェクトとして、通常は黒い色のハンドル３０３と色彩が鮮やかな（例えば飽和色の）シリンダ３０１とからなる棒状のオブジェクトを用いることができる。ユーザは、ソニーコンピュータエンタテインメント社によって製造された「プレイステーション２（商標名）」等のゲーム機の入出力ポート１２４に接続されたＵＳＢウエブカメラ（Webcam）やデジタルカムコーダ（camcorder）等のデジタルビデオカメラ１９０の前に立つ。ユーザがデジタルビデオカメラ１９０の前でオブジェクトを動かすと、オブジェクトのシリンダ３０１の特徴がデジタルビデオカメラ１９０によって検出され、シリンダ３０１のみに対応する画素群を分離して識別するために、後述する処理が行われる。まず、三次元空間における位置や方向等のシリンダ（オブジェクト）３０１に関する三次元的なデータが算出されてビデオゲーム機６０のメインメモリ１１４に格納される。次に、公知のレンダリング技術によってオブジェクトに関する三次元的なデータに基づいてモニタ８０の画面上に表示されているゲームプログラム内でのアクションが実行される。例えば、ユーザによる現実のオブジェクトの動作に対応して、トーチ等の仮想的なオブジェクトをゲームシーンの中で動かすことができる。ユーザがオブジェクトを動かすことによって、オブジェクトの位置や方向が変更され、メインメモリ１１４に格納されたオブジェクトのデータ、画像メモリ１７４のレンダリング領域内でのオブジェクトのレンダリングが継続的に更新され、モニタ８０上の仮想的なオブジェクト、即ち、トーチの位置や方向も変更される。
【００５３】
上述したように、必要な情報はオブジェクト（図２の場合はシリンダ３０１）の三次元的なデータである。しかしながら、デジタルビデオカメラ１９０によって捕捉される画像は、オブジェクトについての二次元的な画素情報でしかない。また、三次元的なオブジェクトのデータを算出する前に、オブジェクト自体に関する画素を識別することが必要である。
【００５４】
図３は、柱状オブジェクトがユーザによって操作される際に、この柱状オブジェクトに対応する画素群を捕捉して識別するために用いられる機能を示すブロック図である。各ブロックによって示された機能は、ビデオゲーム機６０のＭＰＵ１１２によって実行されるソフトウエアによって行われることが理解されよう。また、図３のブロックによって示されている全ての機能が用いられるものではない。特に、色遷移による位置の特定は、後述する図６Ａおよび図６Ｂに関係する実施の形態においてのみ用いられる。
【００５５】
まず、デジタルビデオカメラ１９０から入力された画素データは、入出力インタフェース（入出力ポート）１２４を通じてビデオゲーム機６０に供給され、以下の処理の実行が可能となる。図３に示すように、最初に、例えば、ラスタ毎に画像の各画素がサンプリングされると、色細分化処理（ステップＳ２０１）が行われる。この色細分化処理において、各画素の色が決定され、画像が異なる色の種々の二次元的なセグメントに分割される。次に、実施の形態によっては、色遷移による位置の特定（ステップＳ２０３）が行われる。この色遷移による位置の特定において、異なる色のセグメントが隣接している領域がより具体的に特定され、画像においてはっきりとした色遷移が起こった位置が定義される。次に、実施の形態によっては、ジオメトリ処理（ステップＳ２０５）が行われる。このジオメトリ処理は、エッジ検出処理、または、領域情報を得るための計算処理によって行われ、対象となっているオブジェクトのエッジに対応する輪郭線、曲線、および／またはポリゴンが代数的にもしくは幾何学的に定義される。例えば、図２に示すシリンダ３０１の場合、画素領域は、シリンダ３０１の正面図に対応する概ね矩形状になる。この矩形状の画素領域の代数的または幾何学的な情報によって、オブジェクトのみに対応する画素群の中心、幅、長さ、さらに、二次元的な方向を定義することが可能となる。
【００５６】
ステップＳ２０７において、本発明の好ましい実施の形態に関連して後述するアルゴリズムに従って、オブジェクトの三次元的な位置および方向が計算される。
【００５７】
最後に、三次元的な位置と方向のデータは、性能の向上のために、カルマンフィルタによって処理される（ステップＳ２０９）。このプロセスは、ある時間内にオブジェクトが移動する予定のポイントを推定し、あり得ないと推定される真のデータ集合から外れた偽の測定結果を除去するために行われるものである。また、カルマンフィルタ処理を行う別の理由は、デジタルビデオカメラ１９０が３０Ｈｚで画像を生成するのに対し、通常のディスプレイが６０Ｈｚで動作することから、この周波数の差、即ち、データ間のギャップを補償してゲームプログラムの中でのアクションを制御するためである。カルマンフィルタ処理によって離散データのスムージングを行うことはコンピュータビジョンの分野では公知となっているため、これ以上の詳細な説明は行わないものとする。
【００５８】
図４Ａに示すように、柱状のオブジェクトは、無地で単色のシリンダ３０１であり、好ましくは黒のハンドル３０３に取り付けられている。三次元空間においてオブジェクトの位置および方向を完全に定義するためには、所定のポイントｐ（通常はオブジェクトの中心）のＸ−Ｙ平面での位置および奥行き値ｚ（即ち、ポイントｐのＺ軸上での位置）、また、少なくとも２つの異なる平面におけるオブジェクトの角度情報、例えば、Ｘ−Ｙ平面における傾きθとＹ−Ｚ平面における傾きφが決定されなければならない。シリンダ３０１の実際上の物理的な長さおよび直径、カメラの焦点距離の情報は、スケーリングに用いることもできるが、ゲームプログラムにおけるアクションのプログラミングに必要なものではない。なぜならば、画面上の仮想オブジェクトは、柱状オブジェクト（シリンダ３０１）と同じ長さや直径を有している必要がなく、異なる形状であってもよいからである。
【００５９】
次に、図４Ｂを参照して説明する。図４Ｂは、デジタルビデオカメラ１９０によって生成されたオブジェクトの二次元的な画像３０５を示している。シリンダ状のオブジェクト３０１は、概ね矩形の画素群３０７としてビデオ画像３０５の中に取り込まれる。しかしながら、画素群３０７の長さｌによって定義される方向に沿った幅は、オブジェクトがφ方向の傾きや、デジタルビデオカメラ１９０と柱状オブジェクトの距離の影響を受けるため、変化していてもよい。オブジェクトのφ方向の傾きは、ビデオ画像３０５では直接には視認できないことが理解されよう。
【００６０】
上述したジオメトリ処理（ステップＳ２０５）に従って画素群３０７の長さ、中心点等を決定するためには、公知の領域情報計算法が用いられる。領域情報には、領域、重心、Ｘ軸を中心とするモーメント、Ｙ軸を中心とするモーメント、その他の重要な各モーメント、重要な各モーメントの角度等が含まれ、これらの情報は、通常、特定の軸を中心とするオブジェクトの慣性モーメントを計算するために用いられる。例えば、Ｘ軸とＹ軸を中心とするモーメントを求める場合には、画素群を構成する各画素が薄い均質なシートまたは薄板を構成するある均一な質量ｍの粒子に対応していれば、座標平面に存在するｎ個の粒子（画素）の座標系におけるＸ軸とＹ軸を中心とするモーメントＭｘは次の式によって定義される。
【００６１】
【数１】
2006178948.tif 000003
【００６２】
座標系における質量の中心は、以下の式によって定義されるポイント（ｘ，ｙ）に位置する。
【００６３】
【数２】
2006178948.tif 000004
【００６４】
また、薄板が、図４Ｂに示す矩形や、後述する図５Ｂに示す円形のように、幾何学的な図形中心を有する形状であると仮定すると、薄板の質量の中心は、幾何学的な図形中心に相当する。つまり、例えば、画素領域の二次元的な形状が矩形であるというように、画素領域の領域情報が分かっていれば、幅、高さ、さらに、方向を直接計算することができる。円形のものについても、中心点や半径を求める際に、同様の計算を行うことが可能である。矩形や円形のものについての代表的な計算方法は、標準的な大学レベルの微積分や物理のテキストに記載されている。
【００６５】
ビデオ画像３０５がＸ−Ｙ平面で既に表現されたため、ビデオ画像３０５から直接的に中心点ｐのｘ座標とｙ座標を求めることができる。また、角度θの値は、シリンダ３０１に対応する画素群３０７の長手方向の軸によって定義される方向を示すラインＬの情報が分かっていれば、上述したジオメトリ処理（ステップＳ２０５）を用いてビデオ画像３０５から直接求めることができる。通常、長手方向のラインＬとして、中心点ｐを通るものが用いられる。
【００６６】
傾きφの値を求めるためには、幾らかの他の情報、即ち、少なくとも２つの異なる位置での画素群の幅Ｗ1およびＷ2に関する情報が必要となる。画素群の幅ｗ1、ｗ2の値の比ｗ1：ｗ2を用いることによって傾きφを求めることができる。より具体的には、シリンダ３０１が、下端側よりも上端側がデジタルビデオカメラ１９０により近づくように傾斜している場合、シリンダ３０１の下端側がデジタルビデオカメラ１９０から離れているため、画像の画素群の幅ｗ2の値は、幅ｗ1の値よりも大きくなる。逆に、シリンダ３０１が、上端側よりも下端側がデジタルビデオカメラ１９０により近づくように傾斜している場合、シリンダ３０１の上端側がデジタルビデオカメラ１９０から離れているため、画像の画素群の幅ｗ1の値は、幅ｗ2の値よりも大きくなる。画素群の幅ｗ1、ｗ2の比率ｗ2／ｗ1は、Ｙ−Ｚ平面上のシリンダ３０１の傾きφに比例する。従って、この比率ｗ2／ｗ1を用いて傾きφの値の大きさを求めることができる。通常、より精度の高い値を得るために、画素群３０７の端辺の間で複数の等距離測定が行われ、平均値を用いて比率ｗ2／ｗ1が求められる。
【００６７】
奥行き値ｚはいろいろな方法によって求められる。しかしながら、二次元的な画素群３０７を構成する画素の大きさと数は、オブジェクトのφ方向への傾きと、デジタルビデオカメラ１９０からオブジェクトまでの実際の距離との双方の影響を受ける。より具体的には、オブジェクトがφ方向に傾くと、デジタルビデオカメラ１９０から見えるオブジェクトの見かけ上の長さは短くなるため、画素群３０７の長さｌも短くなる。さらに、Ｚ軸に沿ってデジタルビデオカメラ１９０からオブジェクトが離れると、長さｌを含め、オブジェクト全体の見かけの大きさは小さくなる。従って、単に長さｌだけをデジタルビデオカメラ１９０とオブジェクト間の距離を示す指標であるとみなすことはできない。つまり、奥行き値ｚは、長さｌと傾きφとの関数によって求める必要がある。
【００６８】
しかしながら、傾きφの値が分かっている場合であれば、ｌをφで重み付けした値を求めることができる。ｌをφで重み付けした値をｌφとし、φが一定であると仮定すれば、画像における画素の長さｌφは、オブジェクトがデジタルビデオカメラ１９０に近づいたり、デジタルビデオカメラ１９０から遠ざかったりすることによって変化する。ｌφは奥行き値ｚに比例するため、ｌφによって奥行き値ｚを求めることができる。
【００６９】
奥行き値ｚを求める別の方法は、画素群３０７のうち、オブジェクトに対応する画素の合計数を数えることによって行われる。オブジェクトがデジタルビデオカメラ１９０に近づいたり、デジタルビデオカメラ１９０から遠ざかったりすると、奥行き値ｚに比例して、ピクセル群３０７を構成する画素の数も多くなったり少なくなったりする。しかしながら，画素群３０７の画素の数は、φ方向の傾きに影響されるため、まず、画素の数Ｎをφで重み付けすることによって重み付けされた値Ｎφを求める必要がある。Ｎφは奥行き値ｚに比例するため、Ｎφによって奥行き値ｚを求めることができる。
【００７０】
奥行き値ｚを求める別の効果的な方法は、矩形（画素群）の平均幅ｗavgを用いることである。矩形の平均幅ｗavgは、矩形の幅を特定の回数だけ測定した後、測定値の合計を測定回数で割ることによって得ることができる。画素群の平均幅は、奥行き値ｚだけでなく、シリンダの傾きφの影響も受けることは明らかであろう。また、画素群の合計の長さと平均幅との比（ｌ：ｗavg）によってφを求めることもできる。さらに、画素幅ｗ1とｗ2の値の大きさを比較することによっても傾きφを求めることができる。
【００７１】
図５Ａは、別の実施の形態（第２の実施の形態）において使用される柱状オブジェクトを示している。また、図５Ｂは、図５Ａの柱状オブジェクトの三次元的な情報、即ち、柱状オブジェクトの位置および方向を二次元的なビデオ画像３０５から求める方法を示している。
【００７２】
第２の実施の形態に係る柱状オブジェクトは、図４Ａに示された第１の実施の形態に係る柱状オブジェクトと同様に、シリンダ状（棒状）のオブジェクトであるが、シリンダ３０１の一端部には、シリンダ３０１の色とは異なる色の球体オブジェクト３０９が固着されている。また、図示はしないが、シリンダ３０１の末端を若干突出させて球体オブジェクト３０９の上端から視認できるようにしてもよい。後述するように、球体オブジェクト３０９を設けることによって、奥行き値ｚおよびφ方向のオブジェクトの傾きを簡単に求めることができるようになる。奥行き値ｚを求めるために、シリンダ３０１の相対的な幅の測定を行うことが不要となり、傾きφを重み付けすることも不要となる。
【００７３】
図５Ｂに示すように、球体オブジェクト３０９に対応する画素群３１１は二次元的な円として画像上で表現される。本実施の形態によれば、円の半径Ｒおよび中心点ＰSは、上述した領域情報の計算によって求めることができる。さらに、この場合、円の画素群３１１を構成する画素の合計数は、円の画素領域によって計算することができる。円形の画素領域は、球体オブジェクト３０９がデジタルビデオカメラ１９０に近づくほど大きくなり、デジタルビデオカメラ１９０から遠ざかるほど小さくなることが理解されよう。円を構成する画素群３１１の画素の合計数は、奥行き値ｚに比例しているため、奥行き値ｚを求めることができる。
【００７４】
第２の実施の形態によれば、第１の実施の形態におけるシリンダとは異なり、円形の画素群の形状と大きさは、傾きφの角度の影響を受けないことが理解されよう。即ち、オブジェクト全体がφ方向に傾いた場合であっても、球体オブジェクト３０９および画素群３１１は、概ね同種の形状を維持し、シリンダ３０１の場合（長さ）とは異なり、傾きによって短くなるようなことがない。従って、画像における円を構成する画素群のピクセルの合計数は常に奥行き値ｚに比例しており、奥行き値ｚを求めるために、第１の実施の形態のように傾きφによる重み付けを行うことが不要となるという利点がある。
【００７５】
また、第１の実施の形態と同様に、θ方向のオブジェクトの傾きは、画像から直接求めることができる。即ち、θ方向のオブジェクトの傾きは、シリンダ３０１に対応する画素群３０７の長手方向の中心線とＹ軸との間の角度θによって求めることができる。
【００７６】
φ方向の傾きは、第１の実施の形態の方法とは別の方法によって求められる。即ち、上述したように求められた奥行き値ｚと、円３１１の中心点ＰSとシリンダ３０１に対応する画素群３０７の中心点Ｐとの間の長さｌとによって求められる。奥行き値ｚがどのような値であれ、決まった値であれば、デジタルビデオカメラ１９０から見た長さｌは、オブジェクトがφ方向に傾くにつれて短くなる。従って、奥行き値ｚが分かっていれば、長さｌによって簡単にφ方向の傾きの度合いを求めることができ、図４Ａおよび図４Ｂで示した第１の実施の形態のように相対的な幅の値や幅の比率を計算することが不要となる。
【００７７】
図６Ａは、本発明のさらに別の実施の形態に係る柱状オブジェクトを示している。
【００７８】
図６Ａに示すように、柱状オブジェクトは、概ねシリンダ状の本体３０１からなる。さらに、このシリンダ３０１には、該シリンダ３０１とは異なる色の三つのストライプＳ1、Ｓ2およびＳ3が付けられている。好ましくは、このストライプＳ1、Ｓ2およびＳ3は、同じ幅を有し、シリンダ３０１の両端と中央に等間隔で付けられている。
【００７９】
この実施の形態によれば、画像から抽出されたシリンダ３０１を構成する画素群には、二次元的なラインが形成されており、この二次元的なラインによって色の遷移を確認することができる。奥行き値ｚ、角度θおよび傾きφの値を求めるために、シリンダ３０１の長手方向によって定義されるラインＬに沿って発生する色遷移の位置が求められる。
【００８０】
即ち、図６Ｂに示すように、ラインＬにおいてはっきりとした色の遷移が起きている位置を特定するために、デジタルビデオカメラ１９０から見た場合の、シリンダ３０１の長手方向に沿ったラインＬに対応する画素群のサンプリングを行う必要がある。特に、このような色遷移を検出するために、デジタルビデオカメラ１９０から出力されるＹＣｒＣｂ信号中のクロミナンス値ＣｒおよびＣｂが検出される。ストライプの色を選択するための基準において、以下に説明する理由のため、シリンダ３０１、さらに、ストライプＳ1、Ｓ2およびＳ3の各色のクロミナンス信号ＣｒおよびＣｂをピタゴラスの距離を用いて合成することによって得られた合成クロミナンス値Ｄを用いることが好ましい。合成クロミナンス値Ｄは次の式によって求められる。
【００８１】
【数３】
2006178948.tif 000005
【００８２】
このようにして、デジタルビデオカメラ１９０によって使用される二次元的なクロミナンス色空間における分離度を定義することができる。
【００８３】
後述する合成クロミナンス値Ｄが最大になる色を選択することによって、閾値Ｄtを決めることが可能となる。合成クロミナンス値Ｄの値が閾値Ｄtより大きくなるような、特定の分離度を越えている場合にのみ、ストライプＳ1、Ｓ2およびＳ3に対応する色遷移が検出される。従って、このような閾値Ｄtを用いることによってシリンダ３０１のラインＬに沿った画素がフィルタにかけられ、ストライプＳ1、Ｓ2およびＳ3に対応する大きな色遷移が検出される。
【００８４】
図６Ｂに示すように、ラインＬに沿って色遷移が発生している各位置で、各ストライプＳ1、Ｓ2およびＳ3に対応する２つのスパイクが検出される。これらのスパイクの中心点がストライプの位置であるとみなされる。ストライプの位置が決定されると、ストライプ間の長さ（距離）ｌ1およびｌ2が求められる。シリンダ全体の長さはｌ1とｌ2の合計である。
【００８５】
次に、ストライプ間の長さ（距離）ｌ1とｌ2のデータに基づいて、三次元オブジェクトの位置と方向に関する情報を得るために必要な奥行き値ｚ、角度θおよび傾きφの値を求める方法について説明する。
【００８６】
まず、シリンダ３０１の全長に渡って連続する画素によって定義されるラインＬのデータが既に求められており、また、デジタルビデオカメラ１９０がＸ−Ｙ平面に対して法線方向に向いていると仮定すると、上述した実施の形態の場合と基本的に同じように、角度θは、シリンダ３０１の長手方向のラインＬとＹ軸との間の角度であるとみなして直接的に求めることができる。
【００８７】
φ方向の傾きを求めるためには、長さの比ｌ1：ｌ2が用いられる。例えば、シリンダ３０１がデジタルビデオカメラ１９０に向かってφ方向に傾いているような場合、シリンダ３０１の上端は下端よりもデジタルビデオカメラ１９０に近くなっている。つまり、長さｌ2よりも長さｌ1の方がデジタルビデオカメラ１９０に近くなっているため、長さｌ1の方が長くなる。長さｌ1および１2は、オブジェクトとデジタルビデオカメラ１９０との間の距離ｚに依存するが、角度φが一定であれば、これらの長さの比ｌ1：ｌ2は不変であるため、常にこの比ｌ1：ｌ2を指標としてφ方向のシリンダ３０１の傾きを求めることができる。
【００８８】
奥行き値ｚは、第１の実施の形態の場合と同じような方法で求めることができる。全体の長さｌ（ｌ＝ｌ1＋ｌ2）をφで重み付けした値ｌφを求めれば、奥行き値ｚを得ることができる。即ち、まず、オブジェクトの見かけ上の全体の長さｌに対する傾き（角度）φの影響度が求められる。この傾き（角度）φの影響度によって適切に重み付けを行った全体の長さは、オブジェクトとデジタルビデオカメラ１９０との間の距離（奥行き値）ｚと比例しているため、奥行き値ｚを求めることができる。
【００８９】
より簡単に言えば、傾きφは長さｌ1とｌ2の比によって求められ、傾きφの値が求められれば、奥行き値ｚは、長さｌ1とｌ2の合計によって求めることができる。
【００９０】
次に、図７を参照して柱状オブジェクトの回転成分を求める方法について説明する。この方法は、らせん状のストライプＳHを柱状オブジェクトに付けることによって、上述した実施の形態のいずれにも適用することができる。
【００９１】
上述した捕捉方法は、オブジェクトが有する６つの自由度のうちの５つを得るために用いられる。残りの１つの自由度は、シリンダ３０１の軸を中心とする回転である。シリンダ３０１は軸を中心に対称に形成されているため、シリンダ３０１の回転を求めることは困難であるように思われる。シリンダ３０１の回転成分を得るために本発明において採用した方法は、らせん状のストライプＳHを用いることである。このストライプＳHは、シリンダ３０１に単に一回だけ巻き付けられる。シリンダ３０１が回転した際、ストライプＳHの高さがシリンダの回転角度に対応する。
【００９２】
具体的には、図７に示すように、シリンダ３０１（図５Ａおよび図５Ｂの場合であれば、柱状オブジェクトのシリンダ部分）に一本のらせん状のストライプＳHが一回だけ巻き付けられる。らせん状のストライプＳHに関する情報は、該らせん状のストライプＳHを構成する画素群３１３全体から、または、らせん状のストライプＳHに対応する色遷移を用いて抽出される。このらせん状のストライプＳHに関する情報によって、上述したジオメトリ処理を用いてストライプＳHに最も適合したらせんＨを求めることができる。
【００９３】
また、らせんＨのほか、上述した方法によって、シリンダ３０１に対応する画素群３１３の中心線Ｌが求められる。さらに、画素群３１３の全体の長さｌが求められる。
【００９４】
シリンダ３０１の回転度を求めるため、各部位における高さｈ（説明の簡略化のため、ｈ1およびｈ2のみを図示している）が求められる。これらの高さｈは、シリンダ３０１の一端と中心線ＬがらせんＨに交差するポイントＰａとの間の距離によって定義される。
【００９５】
図７の右側に示すように、デジタルビデオカメラ１９０側からはシリンダ３０１の片側（正投影された状態）しか一度に見ることができない。従って、カメラ画像から領域を抽出してらせんＨを求めた上、このらせんＨに基づいてシリンダ３０１の回転角度が求められる。図７において、回転がない（回転成分が０である）と仮定した場合、シリンダ３０１の一端（下端）かららせんＨ上のあるポイントＰａまでが第１の高さｈ1で示されている。オブジェクトが４５度回転した場合、下端かららせんＨのポイントで交差するまでの中心線Ｌの高さｈ2はより短くなる。図７の一番右には、オブジェクトを９０度回転させた場合が示されている。この場合、中心線ＬがらせんＨと２つのポイントＰａ、Ｐａで交差するという、特別な状態になる。このように、中心線Ｌの高さを計算することによって、シリンダ３０１（またはシリンダ３０１に固着されて回転するほかのオブジェクト）の回転成分を求めることができる。
【００９６】
回転を求めるために用いられる具体的な数値は、画素群３１３の全体の長さｌに対する下端かららせんＨ上のポイントＰａまでの高さの比によって求められる。この比を用いて得られた数値ｋ（ｋ＝ｈmax／ｌ）によって直接０〜３６０度の範囲の回転を求めることができる。従って、オブジェクトに関する追加の情報として、三次元空間におけるシリンダ３０１の方向の情報を求めることができる。このような情報は、例えば、ゲームプログラムによって表示される仮想オブジェクトの回転の制御に用いることができる。
【００９７】
次に、図８Ａおよび図８Ｂを参照し、図６Ａおよび図６Ｂに示した実施の形態におけるストライプの色を決定する方法について説明する。具体的には、図８Ａは、輝度と、色相および彩度の動径座標とによって定義される色空間を示すダイアグラムである。輝度は、色の明るさまたは強度によって定義され、色相は、スペクトル分布の主波長の変化によって定義され、彩度は、ある波長でのスペクトル分布の密度によって定義される。
【００９８】
また、図８Ｂは、デジタルビデオカメラ１９０の出力信号（クロミナンス信号ＣｒおよびＣｂ）に対応する二次元的なクロミナンス色空間を示している。当業者であれば、デジタルビデオカメラ１９０がビデオ画像を構成する各画素の色を制御するための信号を出力することを理解できよう。図８Ａの色相環図に示すように、色は、色相と彩度に対応する各動径座標によって定義される。しかしながら、動径座標を用いることによってコンピュータによる画像処理を複雑にする必要はない。より有用なＹＣｒＣｂ方式による別の基準を用いて色を定義することもできる。この方法は、ビデオ業界において色を表す際に、最も一般的に用いられている方法である。ＹＣｒＣｂ方式は、一つのルマ（ｌｕｍａ）成分Ｙと２つのクロミナンス成分ＣｒおよびＣｂとによって各色を表すものである。Ｙは、明度や輝度に概ね相当するものであり、ＣｒやＣｂは概ね色相に相当するものである。これらの成分は、国際電気通信連合のＩＴＵ−Ｒ勧告  ＢＴ．６０１−４（アスペクト比が４：３の標準方式と１６：９のワイドスクリーン方式のためのデジタルテレビジョンのスタジオ符号化パラメータ）において厳格に定義されている。従って、各画素のクロミナンス信号ＣｒとＣｂは、デカルト座標によって定義され、このデカルト座標を特定の色相および彩度に対応する色相環内での位置を決定するために用いることができる。
【００９９】
本発明によれば、ストライプＳ1、Ｓ2およびＳ3の色およびシリンダの色は、デジタルビデオカメラ１９０によってストライプを最も検出しやすくなるように決められる。色ベースによる捕捉は、照明の違いによって見かけの色が変化するという大きな問題がある。結果として、例えば、ある照明の下でオブジェクトに相当する青の色を検出しようとする場合、カメラによって捉えられる青の色が変化するため、オブジェクトの正確な検出が困難である。本発明においては、絶対的な色を検出するのではなく、色の遷移を検出するため、より信頼性の高い色の捕捉を行うことができる。例えば、図６Ａおよび図６Ｂに示された実施の形態において、シリンダ３０１の色が青であり、ストライプＳ1、Ｓ2およびＳ3の色がオレンジである場合、照明の条件が変わって見かけの色が変化しても、図６Ｂに示すように、これらの色の遷移ははっきりとしたままである。
【０１００】
上述したように、デジタルビデオカメラ１９０は、図８Ｂに示す二次元的なクロミナンス色空間を用いてデータを捕捉する。この色空間内で、色の分離度Ｄが最大となるようにオブジェクトとストライプの色を決定することによって、色遷移の検出性能が大幅に向上する。
【０１０１】
具体的には、図８Ｂに示すように、彩度の高い青とオレンジの色は、色相環の概ね正反対端に位置しており、色空間において、距離Ｄが大きく離れている。実際の距離Ｄは、既に式（４）において説明したように、辺ΔＣｒ（青とオレンジの２つの色に対応する各クロミナンス信号値Ｃｒの差）と辺ΔＣｂ（青とオレンジの２つの色に対応する各クロミナンス信号値Ｃｂの差）を有する三角形の斜辺として、即ち、実際の距離Ｄは、（ΔＣｒ）2＋（ΔＣｂ）2の平方根として計算される。
【０１０２】
青とオレンジの組み合わせを例に挙げて説明したが、他の色の組み合わせでもよいことが理解されよう。例えば、同じように色空間内で距離が大きく離れている緑とマゼンタを用いることもできる。即ち、この方法は、色空間で色の分離度が最大になるようにクロミナンス信号ＣｒおよびＣｂを用いて色を決定するための一般的な基準を提供するものである。
【０１０３】
つまり、２つの色の間の距離の計算方法および色の決定方法は、２つの色の距離が、色相の車輪（色相環）における特定のスポーク（直径）に投影される距離として計算されるように行われる。まず、特定の傾き（角度）θを有する色相の車輪（色相環）のスポーク（直径）が決められる。色相環において決定された直径の傾きを決めることによって、検出されるべき色遷移を決めることができる。例えば、緑を（１、１）とし、マゼンタを（−１、−１）とすると、スポークの直径は４５度の傾き（角度）θに設定される。次に、色の分離度（距離）は、各色を４５度のラインに投影することによって計算される。このように、緑とマゼンタの場合、算出される距離は、上述したピタゴラスの距離Ｄと全く同じになる。しかしながら、直径（ライン）の方向が４５度である場合、青とオレンジの距離はゼロになる。なぜならば、青とオレンジは原点に投影されるからである。即ち、４５度に直径のラインが決められた場合、緑とマゼンタが検出に最適な色となる。なぜならば、この直径では、緑とマゼンタが色空間において分離度が最大になるからである。
【０１０４】
従って、０〜１８０度の範囲から決められる特定の角度θにおいて、２つの色（Ｃｒ1、Ｃｂ1）および（Ｃｒ2、Ｃｂ2）の分離度は、次の式によって求められる。
【０１０５】
【数４】
2006178948.tif 000006
【０１０６】
従って、式（５）によって計算される距離は、角度θによって定義される所定の方向に基づいて閾値Ｄtを設定するためにも用いられる。例えば、実際に、オブジェクトの色遷移が緑とマゼンタである場合、上述した一般的な距離計算方法を用いて、この式における角度θを４５度に決めて閾値Ｄtを設定できる。
【０１０７】
本明細書において、ビデオカメラの前で操作される現実のオブジェクトの位置および方向をカメラによって取り込まれたオブジェクトの二次元的な画像を三次元空間にマッピングすることによって求める幾つかの方法について説明した。オブジェクトの位置や方向などの三次元的な情報は、ゲームプログラムにおけるアクションの制御に用いられる。
【０１０８】
ゲームプログラムの制御に関する一つのわかりやすい例は、ゲームの画面上に表示される動画の一部をなす「仮想オブジェクト」を「現実」のオブジェクトの動作や位置に対応させることであるが、三次元的な情報は、当業者であれば考案可能な他の異なる方法でのゲームプログラムの制御にも用いられることが理解できよう。例えば、操作によるオブジェクトの位置や方向の変化をサウンドプロセッサによって生み出されるサウンドのボリューム、トーン、ピッチ、リズム等に関連付けて「テレミン」のような音楽効果を生み出すこともできる。このような音楽的な音声効果、または、リズムによる音声効果をゲーム機のスクリーンに表示される視覚的な効果と併せて用いることによって、ユーザ（例えばゲームプレイヤ）が体感する効果を高めるようにしてもよい。
【０１０９】
本発明の範囲と精神から逸脱することなく、この明細書に記載された実施の形態の内容を当業者によって改変または変形できることが、容易に理解できよう。従って、請求の範囲は、この明細書中に記載された内容に限定されるものではなく、当業者によって均等であると合理的に判断されるような特徴の全てを包含するものと解釈するべきである。
【図面の簡単な説明】
【０１１０】
【図１】デジタルビデオカメラからの入力の受信に適したビデオゲーム機の要部の構成例を示すブロック図である。
【図２】ゲームプログラムのビデオ画面上でアクションを発生させるための、デジタルビデオカメラの前での補助入力装置としてのハンドヘルド柱状オブジェクトの動作を示す図である。
【図３】ユーザによって操作される柱状オブジェクトの捕捉および識別に必要な機能を示すブロック図である。
【図４】図４Ａは、本発明の実施の形態に係る柱状入力装置を示す図であり、図４Ｂは、図４Ａに示す柱状入力装置に対応するシリンダの二次元的な画素データを三次元空間にマッピングする方法を示す図である。
【図５】図５Ａは、本発明の別の実施の形態に係る柱状入力装置を示す図であり、図５Ｂは、図５Ａに示す柱状入力装置に対応する球体およびシリンダの結合体の二次元的な画素データを三次元空間にマッピングする方法を示す図である。
【図６】図６Ａは、本発明のさらに別の実施の形態に係る柱状入力装置を示す図であり、図６Ｂは、図６Ａに示す柱状入力装置に対応するシリンダに付けられたストライプの二次元的な画素データをストライプの色遷移に基づいて三次元空間にマッピングする方法を示す図である。
【図７】らせん状のストライプが付けられた柱状入力装置を示し、また、本発明の別の実施の形態における柱状入力装置の回転成分を求める原理を説明する図である。
【図８】図８Ａおよび図８Ｂは、操作されるオブジェクトに付けられたストライプの色に基づいて最も検出しやすい色遷移を決めるための原理を示す二次元的なクロミナンス色空間の説明図である。
【符号の説明】
【０１１１】
５０…モデム                        ６０…ビデオゲーム機
７０…光ディスク                    ８０…モニタ
１１０…エンタテインメントシステム  １１２…ＭＰＵ
１１４…メインメモリ                １１６…ベクトル演算ユニット
１２０…イメージプロセッサ          １２２…ＧＩＦ
１２４…入出力ポート                １２６…ＯＳＤＲＯＭ
１２８…ＲＴＣ                      １３０…データバス
１３２…入力装置                    １３６…光ディスクドライブ
１３８…ＩＰＵ                      １４０…通信インタフェース
１７０…レンダリングエンジン        １７１…ＳＰＵ
１７２…メモリインタフェース        １７３…サウンドバッファ
１７４…画像メモリ                  １７５…スピーカ
１７６…ディスプレイコントローラ    １７８…第１バス
１８０…第２バス                    １９０…デジタルビデオカメラ
３０１…シリンダ                    ３０３…ハンドル
３０５…画像                        ３０７、３１１、３１３…画素群
３０９…球体オブジェクト
【図１】
2006178948.tif 000007
【図２】
2006178948.tif 000008
【図３】
2006178948.tif 000009
【図４】
2006178948.tif 000010
【図５】
2006178948.tif 000011
【図６】
2006178948.tif 000012
【図７】
2006178948.tif 000013
【図８】
2006178948.tif 000014
【手続補正書】
【提出日】平成17年12月27日(2005.12.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
色遷移を検出するための色選択方法であって、
色遷移が検出される少なくとも二つの色からなるオブジェクトであって、前記二つの色のうち第１の色が色空間における第１のクロミナンス座標により特定され、前記二つの色のうち第２の色が前記色空間における第２のクロミナンス座標により特定されるものを生成するステップと、
前記色空間によって定義される色相環において、所定の傾きθを有する直径に対し、前記第１及び第２のクロミナンス座標によって定義される各ポイントから法線方向にラインを投影させるステップと、
前記ラインそれぞれが前記直径と交差する各ポイント間の距離Ｄを算出するステップと、
前記算出された距離Ｄが所定の閾値を越えるような色のみを色遷移の検出に適した色として選択するステップとを含むことを特徴とする色選択方法。
【請求項２】
請求項１記載の色選択方法において、
前記色空間における前記第１の座標は、（Ｃｒ1、Ｃｂ1）であることを特徴とする色選択方法。
【請求項３】
請求項１記載の色選択方法において、
前記色空間における前記第２の座標は、（Ｃｒ2、Ｃｂ2）であることを特徴とする色選択方法。
【請求項４】
請求項１記載の色選択方法において、
カメラにより前記二つの色を検出することを特徴とする色選択方法。
【請求項５】
請求項１記載の色選択方法において、
前記色空間は二次元の色空間であることを特徴とする色選択方法。
【請求項６】
請求項１記載の色選択方法において、
前記距離Ｄが次の式によって算出されることを特徴とする色選択方法。
Ｄ＝［Ｃｒ1・ｃｏｓθ＋Ｃｂ1・ｓｉｎθ］−［Ｃｒ2・ｃｏｓθ＋Ｃｂ2・ｓｉｎθ］
【請求項７】
請求項１記載の色選択方法において、
前記距離Ｄが次の式によって算出されることを特徴とする色選択方法。
Ｄ＝［（ΔＣｒ）2＋（ΔＣｂ）2］1/2
【請求項８】
請求項１記載の色選択方法において、
前記少なくとも二つの色は、前記色空間において大きく離れていることを特徴とする色選択方法。
【請求項９】
請求項１記載の色選択方法において、
前記所定の傾きθを有する前記直径を選択するステップを含むことを特徴とする色選択方法。
【請求項１０】
ビデオ画像における色画素特定方法であって、
第１の色からなる対象となるオブジェクトを、第２の色からなる背景から捕捉するステップと、
前記第１及び第２の色を、色空間における色相環中の色クロミナンス座標として検出するステップと、
前記色空間により定義される前記色相環において、所定の傾きθを有する直径に対し、前記第１及び第２のクロミナンス座標によって定義される各ポイントから法線方向にラインを投影するステップと、
前記ラインそれぞれが前記直径と交差する各ポイント間の距離Ｄを算出するステップと、
前記算出された距離Ｄが所定の閾値を越えるような画素を特定するステップとを含むことを特徴とする色画素特定方法。
【請求項１１】
請求項１０記載の色画素特定方法において、
前記ビデオ画像において、複数の画素からなる前記対象となるオブジェクトを特定するステップを含むことを特徴とする色画素特定方法。
【請求項１２】
請求項１０記載の色画素特定方法において、
前記所定の傾きθを有する前記直径を選択するステップを含むことを特徴とする色画素特定方法。
【請求項１３】
請求項１０記載の色画素特定方法において、
前記背景は複数の色で構成されることを特徴とする色画素特定方法。
【請求項１４】
請求項１０記載の色画素特定方法において、
前記背景は非静止状態にあることを特徴とする色画素特定方法。
【請求項１５】
請求項１０記載の色画素特定方法において、
画素を特定した結果に基づき、前記対象となるオブジェクトの三次元的な位置情報を得るステップを含むことを特徴とする色画素特定方法。
【請求項１６】
請求項１０記載の色画素特定方法において、
前記距離Ｄが次の式によって算出されることを特徴とする色画素特定方法。
Ｄ＝［Ｃｒ1・ｃｏｓθ＋Ｃｂ1・ｓｉｎθ］−［Ｃｒ2・ｃｏｓθ＋Ｃｂ2・ｓｉｎθ］
【請求項１７】
所定の方法を実現するために機械により実行されるプログラムが記録された機械読取り可能な媒体であって、
前記所定の方法は、
第１の色からなる対象となるオブジェクトを、第２の色からなる背景から捕捉するステップと、
前記第１及び第２の色を、色空間における色相環中の色クロミナンス座標として検出するステップと、
前記色空間により定義される前記色相環において、所定の傾きθを有する直径に対し、前記第１及び第２のクロミナンス座標によって定義される各ポイントから法線方向にラインを投影するステップと、
前記ラインそれぞれが前記直径と交差する各ポイント間の距離Ｄを算出するステップと、
前記算出された距離Ｄが所定の閾値を越えるような画素を特定するステップとを含むことを特徴とする機械読取り可能な媒体。
【請求項１８】
請求項１７記載の機械読取り可能な媒体において、
前記所定の方法は、ビデオ画像において、複数の画素からなる前記対象となるオブジェクトを特定するステップを含むことを特徴とする機械読取り可能な媒体。
【請求項１９】
請求項１７記載の機械読取り可能な媒体において、
前記所定の方法は、画素を特定した結果に基づき、前記対象となるオブジェクトの三次元的な位置情報を得るステップを含むことを特徴とする機械読取り可能な媒体。
【請求項２０】
請求項１７記載の機械読取り可能な媒体において、
前記距離Ｄが次の式によって算出されることを特徴とする機械読取り可能な媒体。
Ｄ＝［Ｃｒ1・ｃｏｓθ＋Ｃｂ1・ｓｉｎθ］−［Ｃｒ2・ｃｏｓθ＋Ｃｂ2・ｓｉｎθ］