(57)【特許請求の範囲】
【請求項１】
３次元位置・姿勢検出装置に撮像画像を入力することによって、その３次元位置および姿勢を検出することが可能な立体であって、表面の少なくとも一部分が球面であり、前記球面に描かれ、撮影可能な最小の大きさである、形状が同一の２つ以上の点もしくは該点を頂点とする形状が同一の２つ以上の回転対称図形と、前記球面に描かれ、姿勢により見え方が異なり、かつ前記球面上に描かれた前記点もしくは前記回転対称図形とは異なる１つ以上の互いに異なる図形と、を有する、３次元位置・姿勢検出用立体と、
前記立体と、該立体に描かれている２つ以上の点もしくは２つ以上の回転対称図形と、姿勢により見え方の異なる１つ以上の図形を撮影するカメラと、
前記カメラから得られた、前記立体の画像から球面の輪郭画像を取得し、該輪郭画像から空間における前記球面の位置を算出する球面位置算出手段と、
前記の算出された位置を元に前記球面の画像を正規化し、該正規化された画像中の２つ以上の点もしくは２つ以上の回転対称図形の位置に基づいて前記立体の姿勢候補を算出する球姿勢候補算出手段と、
前記の正規化された画像中の１つ以上の姿勢により見え方の異なる図形を、予め用意されている、前記球面の種々の姿勢に対応するテンプレート画像群の中の前記姿勢候補のテンプレートとマッチングを行い、前記球の姿勢を算出する球姿勢算出手段と
を有する３次元位置・姿勢検出装置。
【請求項２】
前記球面は、内部に赤外線発光手段を備え、散乱面を有する半透明の球であり、前記カメラは赤外線のみを透過させるフィルタを備えている、請求項１に記載の３次元位置・姿勢検出装置。
【請求項３】
３次元位置・姿勢検出装置に撮像画像を入力することによって、その３次元位置および姿勢を検出することが可能な立体であって、表面の少なくとも一部分が球面であり、前記球面に描かれ、撮影可能な最小の大きさである、形状が同一の２つ以上の点もしくは該点を頂点とする形状が同一の２つ以上の回転対称図形と、前記球面に描かれ、姿勢により見え方が異なり、かつ前記球面上に描かれた前記点もしくは前記回転対称図形とは異なる１つ以上の互いに異なる図形と、を有する、３次元位置・姿勢検出用立体を用いて、該立体の撮像画像から、該立体の３次元位置および姿勢を検出する方法であって、
前記立体と、該立体に描かれている２つ以上の点もしくは２つ以上の回転対称図形と、姿勢により見え方の異なる１つ以上の図形を撮影する撮影段階と、
前記撮影段階で得られた、前記立体の画像から球面の輪郭画像を取得し、該輪郭画像から空間における前記球面の位置を算出する球面位置算出段階と、
前記の算出された位置を元に前記球面の画像を正規化し、該正規化された画像中の２つ以上の点もしくは回転対称図形の位置に基づいて前記立体の姿勢候補を算出する球姿勢候補算出段階と、
前記の正規化された画像中の１つ以上の姿勢により見え方の異なる図形を、予め用意されている、前記球面の種々の姿勢に対応するテンプレート画像群の中の前記姿勢候補のテンプレートとマッチングを行い、前記球の姿勢を算出する球姿勢算出段階と
を有する３次元位置・姿勢検出方法。
【請求項４】
請求項３に記載の３次元位置・姿勢検出方法をコンピュータに実行させるための３次元位置・姿勢検出プログラム。
【請求項５】
請求項３に記載の３次元位置・姿勢検出方法をコンピュータに実行させるための３次元位置・姿勢検出プログラムを記録した、コンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はカメラで撮像した画像から対象物の３次元位置・姿勢を特定するための３次元位置・姿勢検出用立体、方法および装置に関する。
【０００２】
【従来の技術】
ＣＡＤ用デバイスなどでは、３次元の位置と姿勢を入力する装置として、複数のＬＥＤを利用するもの、ボールを利用するものがあった。
【０００３】
また、デザインが既知である立体をカメラで撮像し、その画像において、立体の「辺」や「頂点」といった特徴点の位置を基にするか、立体全体の画像のテンプレート（３次元モデル）を用いるなどして、該立体の位置および姿勢を算出していた。
【０００４】
【特許文献１】
特許第２７３０４５７号
【特許文献２】
特許第２７９１２７５号
【特許文献３】
特許第３１９２７７９号
【特許文献４】
特許第２５６４９６３号
【特許文献５】
特許第３０５６７６４号
【０００５】
【発明が解決しようとする課題】
複数のＬＥＤを利用するものでは、姿勢に制限があった。また、ボールを利用するものでは、少なくとも３個のボールが必要であり、かつ、位置と姿勢を算出するための計算が複雑であった。さらに、３Ｄデジタイザなどでは、プローブにリンクが付けられており、自由な動きが妨げられる場合があった。
【０００６】
特許第２７３０４５７号については、対象物を撮像した画像上での特徴点の見え方のパターンが対象物の位置・姿勢により変化するため、実際には、カメラの位置・姿勢を特定するパラメータの探索空間が非常に広く、また、仮想画像を内部的に作成しながら、画像上での特徴点の位置から対象物の位置・姿勢を同時に求める方式であるため、一般に膨大な計算コストがかかるという欠点がある。
【０００７】
特許第２７９１２７５号については、変換行列およびその逆行列を予め求めておいてルックアップテーブルとして利用するという方法であるが、画像上での特徴点の位置から対象物の位置・姿勢を同時に求める方法であるため、一般に計算コストがかかり、さらには、対象物の位置・姿勢の基準位置・姿勢からの誤差計測といった意味合いが強く、基準位置・姿勢からのずれが大きな場合にはその計測精度は非常に低いという欠点がある。
【０００８】
特許第３１９２７７９号については、各色領域の面積および重心位置から対象物の位置・姿勢を算出する過程において、複数の領域の輪郭を求める必要がある。
【０００９】
特許第２５６４９６３号については、光源を同軸とした光学系を必要とし、また、画像上での特徴点の位置から対象物の位置・姿勢を同時に求める方法であるため、一般に計算コストがかかるという欠点がある。
【００１０】
特許第３０５６７６４号については、標的の位置検出と識別とを手動で行っており、また、画像上での特徴点の位置から対象物の位置・姿勢を同時に求める方式であるため、一般に計算コストがかかるという欠点がある。
【００１３】
本発明の目的は、３次元位置・姿勢を検出することが可能な立体の撮像から、該立体の３次元位置・姿勢を少ない計算コストで検出する３次元位置検出方法、装置、プログラム、およびプログラムを記録した記録媒体を提供することにある。
【００１６】
【課題を解決するための手段】
本発明では、表面の少なくとも一部分が球面であり、球面上に姿勢により見え方が異なる図形を有する３次元位置・姿勢検出用立体の撮像画像から立体の輪郭画像を得、輪郭画像から立体の３次元位置を算出し、撮像画像と立体の種々の姿勢に対応する立体の全体または部分のテンプレート画像群とを比較することにより立体の姿勢を算出する。
【００１７】
この立体は姿勢が変化しても見え方が変化しないため、撮像した画像において、その輪郭である楕円から球の３次元位置を非常に少ない計算コストで算出できる。例えば、２変数方程式のNewton-Raphson法（ニュートン法）による解法を利用する。
【００１８】
一方、球表面に設けられたドット（回転対称図形）の画像上での位置を検出し、該球の３次元位置と併せることで、該ドットの３次元位置を非常に少ないコストで算出でき、該球および該ドットの３次元位置から立体の３次元姿勢を算出できる。
【００１９】
このように、位置の算出と姿勢の算出とを独立に行っているため、全体の計算コストを非常に低く抑えることができる。
【００２０】
また、輪郭を求める際に、複数のエッジポイントを利用できるため、非常に高い精度で輪郭を検出でき、すなわち非常に高い精度で立体の３次元位置を算出できる。
【００２１】
さらに、できるだけ小さなサイズのドットを用いることにより、高精度にその位置を検出でき、加えて、立体とドットのサイズが有意に異なるため、高精度に立体の３次元姿勢を算出できる。
【００２２】
さらに、球面上に全てが同一ではない色の２個以上の回転対称図形を有する３次元位置・姿勢検出用立体を用い、撮像画像の、回転対称図形の色情報に基づき、姿勢候補の中から正確な姿勢を選択することにより、回転対称図形の近傍に描かれた図形によって姿勢を判別する方法に比べ、計算コストをさらに低減できる。
【００２３】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して説明する。
【００２４】
第１の実施形態
図１を参照すると、本発明の第１の実施形態の３次元位置・姿勢検出装置は球１とカメラ２と球位置算出部３と球姿勢算出部４で構成されている。
【００２５】
球１は表面に散乱面を備え、世界地図（日本地図以外の図示が省略されている）が描かれ、内部に赤外線光源１aを備えた半透明での球である。カメラ２は赤外線のみを通過させる赤外線通過フィルタ２aを備えている。ここで、赤外線光源１aを用いるのは、画像上で球部位を切り出す際に、環境光の影響を極力少なくするためである。また、半透明の散乱面からなる球を用いるのは、画面上で球部位を切り出す際に、球の輪郭を極力鮮明にするためである。赤外線は輪郭線のみ透過しない。球位置算出部３は、画像の二値化処理を行う二値化処理エンジン３aと、画像の楕円部分を検出する楕円検出エンジン３ｂと、球１の位置（ｘ, ｙ, ｚ）を算出するための非線型連立方程式ソルバ３ｃを有し、球１の位置（中心）（ｘ, ｙ, ｚ）を算出する。球姿勢検出部４は、球１の種々の姿勢に対応するテンプレート画像群４aと、算出された球１の位置（ｘ, ｙ, ｚ）を元に球１の画像を正規化する正規化相関エンジン４ｂを有し、正規化された画像をテンプレート画像群４aと比較することにより、球１の姿勢（θ, φ, ψ）を算出する。
【００２６】
次に、本装置における球１の位置および姿勢の算出処理を図７により、図２から図６を参照して詳しく説明する。
【００２７】
１.  世界地図が描かれた、内部に赤外線光源１aを具備した半透明の散乱面からなる球１を、赤外線通過フィルタ２aを具備したカメラ２で撮影し、画像I0（図２(a)）を得、同画像I0の光学的歪みを補正し、補正画像I1（図２(ｂ)）を得る（ステップ２１）。ここで、図２(a), (ｂ)中の同心円のパターン歪みの方向を説明するためのものである。
【００２８】
２.  次に、補正画像I1を二値化処理エンジン３aで二値化処理して、球１の輪郭画像I2（図３）を得る（ステップ２２）。エッジ検出を行ってから輪郭を得る方法など、他にも方法はあるが、ここでは、二値化処理を用いる方法を示した。球１の部分の輝度が十分高く、かつそれ以外の部分の輝度が十分に低いため、適当な閾値で画像を二値化することにより、球１の領域だけを抽出することができる。この領域に対して、輪郭追跡法などを適用すると、輪郭を構成する画素の集合が得られる。これらの画素に楕円を最小２乗法でフィットさせる楕円検出エンジン３ｂにより、楕円のパラメータを算出する。
【００２９】
３.  次に、輪郭画像I2上での球１の位置（ξとs）と大きさ（aまたはｂ、もしくは両方）とから、レンズ中心Ｃを原点とした、空間における球１の位置（中心）（ｘ, ｙ, ｚ）を算出する（ステップ２３、図４）。ここで、レンズ中心Ｃとはカメラ２をピンホールカメラにモデル化した際のピンホールの位置に一致する。２.で算出した楕円は、位置および幾何学パラメータがわかっているので、例えばNewton-Raphson法などの非線型連立方程式ソルバ３ｃによりそのパラメータを基に球１の位置（ｘ, ｙ, ｚ）を算出する。
【００３０】
４.  次に、既知である、カメラ２の撮像素子平面π1の位置と、レンズ中心Ｃの位置と、球１の輪郭とレンズ中心Ｃとによって空間に作られる錐の位置とを元に、平面π1上の画像である補正画像I1からの切り出し画像I3を、この錐の軸に垂直な平面π2上の画像I4に変換する（ステップ２４、図５）。
【００３１】
５.  最後に、画像I4をテンプレート画像群４aのテンプレート画像と同じ大きさの画像I5に正規化し、予め用意しておいた、球１の様々な姿勢に対応するテンプレート画像群Ｔnと、正規化された画像I5との比較から、空間における球１の姿勢（θ, φ, ψ）を算出する（ステップ２５、図６）。テンプレート画像とのマッチングには正規化相関マッチングなどの手法を使用する。なお、テンプレート画像はとびとびの姿勢なので、正規化された画像I5とテンプレート画像が完全に一致するケースは稀である。そこで、実際には、正規化相関の値が最大となるテンプレート画像の姿勢をもって球１の姿勢とする。
【００３２】
図８は本発明の応用例を示している。図８（a）は球を手に把持して利用する場合で、ＣＡＤ用の位置・姿勢入力デバイスとして利用する場合である。図８（ｂ)は、球をペンシル型のプローブに取り付けて利用する場合で、３Ｄデジタイザのプローブとして利用する場合である。なお、カメラ、球位置算出部、球姿勢算出部は図示を省略している。
【００３３】
なお、本実施形態では、球１として、内部に赤外線光源１aを備えた半透明の球を用い、カメラ２として、赤外線通過フィルタ２aを備えたカメラを用いる例を示したが、球１として、光源を備えない球を用い、カメラ２として、赤外線通過フィルタを備えないカメラを用いても、本発明は同様の効果を奏する。
【００３４】
第２の実施形態
図９は本発明の第２の実施形態の３次元位置・姿勢検出用立体と３次元位置・姿勢検出装置を示す図、図１０は立体１１の画像を示す図である。
【００３５】
立体１１は、表面の少なくとも一部分が球面であり、立体１１の球面には「Ａ」の文字が描かれている。
【００３６】
３次元位置・姿勢検出装置１３は位置算出部１３aと姿勢算出部１３ｂからなる。位置算出部１３aは、立体１１をカメラ１２で撮影して得られた画像（図１０(a)）に二値化処理を施すことで立体１１の輪郭画像（図１０(ｂ)）を得、その輪郭画像上での立体の輪郭の位置と大きさとから立体１１の実空間での位置ｘ, ｙ, ｚを算出する。姿勢算出部１３ｂは、輪郭画像（図１０(ｂ)）を基に立体１１（図１０(a)）上での立体部位を切り出し、その画像（図１０(ｃ)）との図形の種々の姿勢に対応する図形の全体または部分のテンプレート画像群とを比較することにより立体１１の姿勢θ, φ, ψを算出する。
【００３７】
以下では、全て同一の２個以上の回転対称図形と、これらの回転対称図形と異なる１個以上の互いに異なる図形とを有しており、かつ、これらの回転対称図形が立体球面上の一点を中心とする回転対称の位置に配置されている立体１１を用いて、その立体の３次元位置および姿勢を検出する例について詳細に説明する。
【００３８】
図１１は立体１１の例を示している。この立体１１では球面に内接する正五角形と正六角形とから構成される準正多角形の３個の頂点が該球面と接する点の位置に全て同じサイズのドットが、また該準多面体の中心と該準多面体の面の重心とを結ぶ直線が該球面と交わる点の位置に１個の文字が、それぞれ設けられている。これらのドットは、サイズを小さくするほど、高精度にその位置検出ができ、また、立体１１とのサイズ差が大きくなるため、高精度の立体の３次元姿勢を算出できる。したがって、撮像画像上で識別可能な最小のサイズとすることが望ましい。
【００３９】
図１２は、レンズの光学中心Ｃを原点とし、レンズの光軸をＺ軸とするカメラ１２を基準とする実空間での座標系において、位置（ｘ, ｙ, ｚ）に立体１１が置かれている様子を示した図である。立体１１は、図１１に示したものと同一のデザインである。カメラ１２については、第１の実施形態と同様の方法で撮像画像の光学的歪みを補正することにより、レンズ歪み等のない理想的なカメラとして扱うことができる。
【００４０】
図１３は立体１１を撮像した画像を示している。uは画像の水平方向の軸、vは画像の垂直方向の軸である。図において、１４は、検出した立体のエッジに楕円をフィットさせて得られた輪郭である。ξは、輪郭の重心と画像原点とを結ぶ直線がu軸となる角である。ｄは輪郭の重心と画像原点との距離である。ｂは輪郭楕円の長径である。
【００４１】
図１４は、撮像画像上でのドットの位置Ｐsと実空間でのドットの位置Ｐとの幾何的関係を示す図である。図において、点Ｐは、撮像画像上でのドットの位置Ｐsとレンズの光学中心Ｃとを結ぶ直線が立体１１の球面と交わる点である。
【００４２】
図１５は、撮像画像上で検出された３個のドットの位置（図１５(a)）と、これらドットの位置を基にして計算により作成された３枚の文字用テンプレートを示す図（図１５(ｂ)）である。ここで、ドットが図の位置となるような球の姿勢は３通りに限られる。それら３通りの姿勢の全てについて、例えば以下のような方法でテンプレートを作成する。
【００４３】
図１６および図１７は図形のテンプレートの計算機による作成方法を説明するための図である。図１６において、Ｃvは無限遠に配置してある仮想カメラである。Ｏは計算機内の仮想空間の原点、Ｘは水平方向の軸、Ｙは垂直方向の軸、Ｚは仮想カメラＣvの光軸である。Ｒは軸Ｚ上の点であり、距離ＯＲは仮想球の半径に等しい。線分ＯＧは線分ＯＲを軸Ｚから角度Ｑ1だけ回転させた線分である。ＳｖはＧを通り線分ＯＧに垂直な仮想平面である。Ｇを通る直線Ｔは、軸Ｙと軸Ｚとを含む平面上にあり、線分ＯＧに垂直である。角度Ｑ2は仮想平面Ｓｖが線分ＯＧを軸として回転した際の、直線Ｔからの偏角である。なお、図形はその重心がＧに一致するように仮想平面Ｓｖ上に配置してある。説明のために、図形については輪郭のみを示してある。
【００４４】
図１７は仮想平面Ｓｖ上に配置した図形をＸＹ平面に射影して得られた仮想カメラＣvの画像である。ＧTはＧの画像上での位置である。テンプレートは、この仮想カメラＣvの画像を図形を含みかつ位置ＧTを中心とする矩形領域で切り出した部分画像にガウシアンフィルタ等によるぼかし処理を施して作成する。
【００４５】
図１８は、図１１の立体１１を撮像した画像から、図９の装置によって、実空間での立体１１の位置・姿勢を算出する方法を示すフローチャートである。なお、立体１１の球面部の半径は既知であるとする。
１.  第１の実施形態と同様の方法で立体１１を撮像した画像の光学的歪みを補正し、補正画像を得る（ステップ３１）。
２.  補正画像において、ハフ変換等を用いて球の輪郭である楕円を検出し、図１３で示した楕円パラメータ（ξ, ｄ, ｂ）を算出する（ステップ３２）。
３.  図１２で示した立体１１の位置（ｘ, ｙ, ｚ）と図１３で示した楕円のパラメータ（ξ, ｄ, ｂ）との間には、球の半径が既知であるため、固定した１対１の対応関係がある。この対応関係を表わす方程式をNewton-Raphson法等を用いて解くことにより、（ξ, ｄ, ｂ）から（ｘ ｙ, ｚ）を算出する（ステップ３３）。
４.  補正画像において、１個のドット図形用のテンプレートを用いたパターンマッチング処理により比較し、３個のドットの画像上での位置を各々独立に検出し、図１４に示した幾何的関係を用いて３個のドットの実空間での位置を算出する。算出された３個のドットの位置と立体１１の位置（ｘ, ｙ, ｚ）とを基に、立体１１の姿勢を算出する（ステップ３４）。ただし、３個のドットの位置を基にした場合、得られる立体１１の姿勢は３通りあるため、それら３通りの姿勢の全てを算出し、これらを立体１１の姿勢の候補とする。立体１１の姿勢の算出方法は次の通りである。立体１１のモデルとして、表面に３個のドットを有する球を考え、図１４に示す実空間での各ドットの位置をそれぞれＰ１、Ｐ２、Ｐ３とする各ドットは球に固定されているので、球の姿勢が変化すると、各位置Ｐ１、Ｐ２、Ｐ３も変化する。算出された３個のドットの位置Ｑ１、Ｑ２、Ｑ３として、
【００４６】
【数１】
0004056891.tif 000002
【００４７】
を最小にする球の姿勢を求め、これを立体１１の姿勢とする。ただし、
【００４８】
【外１】
0004056891.tif 000003
【００４９】
はそれぞれＰ１とＱ１、Ｐ２とＱ２、Ｐ３とＱ３の距離である。
５.  算出された３通りの姿勢の全てについて、図１６および図１７で説明した方法等により、文字の部分を切り出したテンプレートを３個作成する。ドットの文字との位置関係は既知であり、この関係から補正画像上での文字の位置（重心位置）を求めることができるため、この位置を基準として、これら３個のテンプレートを用いたパターンマッチング処理を逐次行う。得られた各テンプレートと補正画像とのマッチングの程度を比較し、最も評価の高いテンプレートに対応する姿勢を選択し、これを立体１１の正確な姿勢とする（ステップ３５）。
【００５０】
第３の実施形態
本実施形態は、全て同一の２個以上の回転対称図形と、これらの回転対称図形と異なる１個以上の互いに異なる図形とを有しており、かつ、これらの回転対称図形が立体球面上の一点およびその一点を中心とする回転対称の位置の双方に配置されている立体１１を用いて、その立体の３次元位置および姿勢を検出する例である。
【００５１】
図１９は、立体１１の球面上に設けられる図形の例である。球面に内接する正二十面体の２個の頂点が該球面と接する点の位置に互いに異なる図形が、該正二十面体の中心と該正二十面体の面の重心とを結ぶ直線が該球面と交わる点の位置に４個のドットが、それぞれ設けられている。これらのドットは、第２の実施形態と同様、撮像画像上で識別可能な最小のサイズとすることが望ましい。図１９（a）において図形は「Ｏ」と「ハ」に似た図形であり、図１９（ｂ）において図形は、「コ」と「ハ」に似た図形である。なお、図では平面的に示してある。
【００５２】
本実施形態の立体においても、第２の実施形態と同様の装置により３次元位置・姿勢を検出することができる。本実施形態によれば、文字の代わりに単純な図形を用いているため、さらなる計算コストの低減、処理の高速化が図れる。
【００５３】
なお、第２および第３の実施形態においても、第１の実施形態と同様に、立体１１として、内部に赤外線光源を備えた半透明の立体を用い、カメラ１２として、赤外線通過フィルタを備える等の方法により赤外線像を撮像可能なカメラを用いてもよい。こうすることにより、撮像画像上で立体１１の部位を切り出す際に、環境光の影響を少なくし、立体１１の輪郭を鮮明にすることができる。
【００５４】
また、第２および第３の実施形態では、立体１１の球面に内接する正多面体もしくは準正多面体の頂点の位置に３ないし４個の同じサイズのドットを設け、該多面体の中心と該多面体の面の重心とを結ぶ直線が球面と交わる点の位置に１ないし２個の互いに異なる図形を設けた例、および、ドットと互いに異なる図形との位置関係をこれとは逆にした例を示した。しかし、これらのドットの代わりに円など他の回転対称図形を用いてもよく、また、これら回転対称図形のサイズは必ずしも全て同じでなくてもよく、個数は５個以上であっても、画像上に撮像されていれば２個だけであってもよい。さらに、回転対称図形と互いに異なる図形との位置関係は、既知であれば、必ずしも上記実施形態で示した関係でなくてもよい。
【００５５】
第４の実施形態
第２および第３の実施形態では、検出された各ドット、すなわち回転対称図形をそれらの近傍に描かれた文字等の図形を基にして識別する。しかし、文字等の図形の判別には、テンプレートを用いたパターンマッチング処理など、計算コストのかかる処理が不可欠である。そこで、本実施形態では、検出された各回転対称図形をその色に基づき識別する。この処理には、パターンマッチング処理に比べ、計算コストがかからないという利点がある。
【００５６】
図２０は本発明の第４の実施形態における３次元位置・姿勢検出用立体と３次元位置・姿勢検出装置を示す図である。
【００５７】
立体４１は、表面の少なくとも一部分が球面であり、立体４１の球面には全てが同一ではない色の回転対称図形（ドット）が複数個描かれている。
【００５８】
３次元位置・姿勢検出装置４３では、カメラ４２で撮像された立体４１のカラー画像を入力し、この撮像画像を輝度情報のみによるモノクロ画像と色情報まで含めたカラー画像とに分離した上でそれぞれを使い分ける。すなわち、位置算出部４３aでは、モノクロ画像を用いて、第２の実施形態と同様の方法で立体４１の実空間での位置ｘ, ｙ, ｚを算出する。また、姿勢算出部４３ｂでは、まずモノクロ画像を用いて、回転対称図形の位置を検出し、次にカラー画像を用いて、回転対称図形を特定することにより、立体４１の姿勢θ, φ, ψを算出する。
【００５９】
以下では、全て同一形状かつ同一サイズであり、かつ全てが同一ではない色の２個以上の回転対称図形が、球面上の一点およびその一点を中心とする回転対称の位置の双方に配置されている立体４１を用いて、立体４１の３次元位置および姿勢を検出する例について詳細に説明する。
【００６０】
図２１は立体４１の例を示している。立体４１の表面の色は橙であり、その球面上の一点に黒のドットが、その黒のドットを中心とする回転対称の３つの位置にそれぞれ赤、緑、青のドットが設けられている。これらのドットは、第２の実施形態と同様、撮像画像上でその色までが識別可能な最小のサイズとすることが望ましい。
【００６１】
図２２は、入力された撮像画像を輝度情報のみのモノクロチャネル、および赤、緑、青の色情報まで含めた各カラーチャネルに分離した撮像画像である。
【００６２】
図２３は、図２２（a)のモノクロチャネルにおける撮像画像上で検出された４個のドットの位置Ｐ1〜Ｐ4および球の輪郭である楕円の中心の位置を表わしている。
【００６３】
図２４は、検出されたドットの画像上での位置の色相を各カラーチャネルにおける撮像画像に基づき決定する方法を示すフローチャートである。
【００６４】
まず、球の輪郭である楕円の中心に最も近い２点をＰ1, Ｐ2とする（ステップ５１）。楕円の中心に近い点を用いるのは計測の精度が高くなるためである。次に、各カラーチャネル画像（図２２）の点Ｐ1, Ｐ2における輝度をそれぞれ（Ｒ1, Ｇ1, Ｂ1）、（Ｒ2, Ｇ2, Ｂ2）とする（ステップ５２）。次に、色相の判定のため閾値ＭTを
0004056891.tif 000004
により計算する（ステップ５３）。Ｒ1, Ｇ1, Ｂ1 のうちＭTより大きいな値が１つもなければ、点Ｐ1の色は黒と判定する（ステップ５４、５５）。Ｒ1, Ｇ1,Ｂ1のうちＭTより大きな値が１個以上であれば点Ｐ1の色はＲ,Ｇ,ＢのうちＭTより大きな値に対応する色と判定する（ステップ５６）。点Ｐ2についても同様にして色相を判定する（ステップ５７〜５９）。
【００６５】
なお、立体４１上の図形とその位置関係は既知であるため、本実施形態では、姿勢を決定するために必要な２個の点位置が、図２４の処理により求められるＰ1、Ｐ2の色相情報から決定されるため、残りの２つのドットについての図２４と同様の処理は不要である。
【００６６】
図２５は、図２１の立体４１を撮像した画像から、図２０の装置によって、実空間での立体４１の位置・姿勢を算出する方法を示すフローチャートである。なお、立体４１の球面部の半径は既知であるとする。
１.  第１の実施形態と同様の方法で立体４１を撮像した画像の光学的歪みを補正し、補正画像を得る（ステップ６１）。
２.  補正画像を図２２で示したモノクロチャネルと各カラーチャネルに分離する（ステップ６２）。
３.  モノクロチャネルにおける補正画像（モノクロ画像）を用いて、第２の実施形態と同様の方法で立体４１の位置（ｘ, ｙ, ｚ)を算出する（ステップ６３）。
４.  モノクロ画像を用いて、第２の実施形態と同様の方法で全てのドットの画像上での位置を算出する（ステップ６４）。
５.  各カラーチャネルにおける補正画像を用いて、図２４の手順によりドットの画像上での位置の色相を決定し、対応するドットを特定する（ステップ６５）。
６.  第２の実施形態と同様の方法で、特定されたドットの実空間での位置およびこれに基づく立体４１の姿勢（θ, φ, ψ）を算出する（ステップ６６）。
【００６７】
本実施形態においても、ドットの代わりに他の回転対称図形を用いてもよく、また、これら回転対称図形のサイズは必ずしも全て同じでなくてもよく、個数は２個以上が画像上に撮像されていれば幾つであってもよい。
【００６８】
なお、以上説明した３次元位置・姿勢検出装置は専用のハードウェアにより実現されるもの以外に、以上説明した方法を実行するためのプログラムを、コンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行するものであってもよい。コンピュータ読み取り可能な記録媒体とは、フレキシブルディスク、光磁気ディスク、CD―ROM等の記録媒体、コンピュータシステムに内蔵されるハードディスク装置等の記憶装置を指す。さらに、コンピュータ読み取り可能な記録媒体は、インターネットを介してプログラムを送信する場合のように、短時間の間、動的にプログラムを保持するもの（伝送媒体もしくは伝送波）、その場合のサーバとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含む。
【００６９】
【発明の効果】
以上説明したように本発明によれば、下記の効果がある。
・球がどのような姿勢にあっても、画像上の球の模様から空間におけるその姿勢を算出できるため、位置の算出と姿勢の算出を分離でき、その結果計算が簡易となる。
・球を用いて位置と姿勢とを独立に算出するため、計算コストを低減できる。
・ドットの位置に基づき立体の姿勢の候補を算出するため、計算コストを大幅に低減できる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態の３次元位置・姿勢検出装置の構成図である。
【図２】球１を撮影した画像と（図２(a)) その補正画像を（図２(ｂ)）示す図である。
【図３】球１の輪郭画像を示す図である。
【図４】空間における球１の位置を算出する処理の説明図である。
【図５】空間における球１の姿勢を算出する処理の説明図である。
【図６】正規化画像I5とテンプレート画像群Ｔnとの比較を示す図である。
【図７】第１の実施形態における、３次元位置・姿勢を検出する処理を示すフローチャートである。
【図８】本発明の応用例を示す図である。
【図９】本発明の第２の実施形態の３次元位置・姿勢検出装置の構成図である。
【図１０】図９中のカメラ１２で得られた画像（同図(a)）、３次元位置・姿勢検出装置で得られる画像（同図(ｂ), (ｃ)）を示す図である。
【図１１】立体１１の例を示す図である。
【図１２】カメラ１２を基準とする実空間での座標系において立体１１が置かれている様子を示す図である。
【図１３】立体１１を撮像した画像を示す図である。
【図１４】撮像画像上でのドットの位置Ｐと実空間でのドットの位置Ｐとの幾何学的関係を示す図である。
【図１５】撮像画像上で検出された３個のドットの位置と、これらドットの位置により作成された３枚の文字用のテンプレートを示す図である。
【図１６】計算機を用いた、図形テンプレートの作成方法を説明するための図である。
【図１７】計算機で算出された、仮想カメラの画像を示す図である。
【図１８】第２の実施形態における、立体１１の位置・姿勢を算出する処理を示すフローチャートである。
【図１９】立体１１の球面上に設けられる図形の例を示す図である。
【図２０】本発明の第４の実施形態の３次元位置・姿勢検出用立体と３次元位置・姿勢検出装置の構成を示す図である。
【図２１】立体４１の例を示す図である。
【図２２】モノクロチャネルおよび各カラーチャネルにおける立体４１の撮像画像を示す図である。
【図２３】モノクロチャネルにおける撮像画像上で検出された立体４１のドットの位置を示す図である。
【図２４】ドットの画像上での位置の色相をカラー画像に基づき決定する方法を示すフローチャートである。
【図２５】図２１の立体４１を撮像した画像から、図２０の３次元位置・姿勢検出装置によって、実空間での立体４１の位置・姿勢を算出する方法を示すフローチャートである。
【符号の説明】
１    球
１a    赤外線光源
２    カメラ
２a    赤外線透過フィルタ
３    球位置算出部
３a    二値化処理エンジン
３ｂ    楕円検出エンジン
３ｃ    非線型連立方程式ソルバ
４    球姿勢算出部
４a    テンプレート画像群
４ｂ    正規化相関エンジン
１１    立体
１２    カメラ
１３    ３次元位置・姿勢検出装置
１３a    位置算出部
１３ｂ    姿勢算出部
１４    輪郭
２１〜２５、３１〜３５    ステップ
４１    立体
４２    カメラ
４３    ３次元位置・姿勢検出装置
４３a    位置算出部
４３ｂ    姿勢算出部
５１〜５９、６１〜６６    ステップ
【図１】
0004056891.tif 000005
【図２】
0004056891.tif 000006
【図３】
0004056891.tif 000007
【図４】
0004056891.tif 000008
【図５】
0004056891.tif 000009
【図６】
0004056891.tif 000010
【図７】
0004056891.tif 000011
【図８】
0004056891.tif 000012
【図９】
0004056891.tif 000013
【図１０】
0004056891.tif 000014
【図１１】
0004056891.tif 000015
【図１２】
0004056891.tif 000016
【図１３】
0004056891.tif 000017
【図１４】
0004056891.tif 000018
【図１５】
0004056891.tif 000019
【図１６】
0004056891.tif 000020
【図１７】
0004056891.tif 000021
【図１８】
0004056891.tif 000022
【図１９】
0004056891.tif 000023
【図２０】
0004056891.tif 000024
【図２１】
0004056891.tif 000025
【図２２】
0004056891.tif 000026
【図２３】
0004056891.tif 000027
【図２４】
0004056891.tif 000028
【図２５】
0004056891.tif 000029