(57)【特許請求の範囲】
【請求項１】
特定情報を有するパターン(pattern)及び前記パターンから離隔されて配置され第１焦点距離を有する第１レンズを含むマーカー(marker)部と、
第２焦点距離を有する第２レンズ及び前記第２レンズから離隔されて配置され、前記第１レンズと前記第２レンズによって前記パターンのイメージが結像される結像ユニットを含む結像部と、
前記パターンのパターン面上の座標と前記パターンのイメージ上のピクセル座標の間の座標変換式からマーカー部の姿勢を決定し、決定された前記マーカー部の姿勢を用いて前記マーカー部をトラッキングする処理部と
を含むオプティカルトラッキングシステム。
【請求項２】
前記処理部は、前記パターンのパターン面上の座標に該当する第１座標を前記マーカー部の前記第１レンズに対する３次元的座標に該当する第２座標に変換する第１変換行列及び前記第２座標の前記第２レンズに対する３次元的座標に該当する第３座標を前記結像部の前記パターンのイメージ上のピクセル座標に該当する第４座標に変換する第２変換行列を取得し、
前記座標変換式は、前記第１変換行列及び前記第２変換行列を含んで前記第１座標を前記第４座標に変換するように定義され、
前記処理部は、前記座標変換式から前記マーカー部の姿勢を定義する姿勢定義行列を取得することを特徴とする、請求項１に記載のオプティカルトラッキングシステム。
【請求項３】
前記座標変換式は、下記の数式により定義されることを特徴とする、請求項２に記載のオプティカルトラッキングシステム。
0006370478.tif 000026
((u,v)は前記第１座標、(u',v')は前記第４座標、[C]は前記第１変換行列、[A]は前記第２変換行列、[R]は前記姿勢定義行列、sは比例定数)
【請求項４】
前記第１変換行列は、下記の数式により定義されることを特徴とする、請求項３に記載のオプティカルトラッキングシステム。
0006370478.tif 000027
((uc,vc)は前記パターンの中心の座標、fbは前記第１焦点距離)
【請求項５】
前記処理部は、少なくとも３つ以上の撮影イメージからuc、vc及びfbのキャリブレーション値を取得することにより前記第１変換行列を取得することを特徴とする、請求項４に記載のオプティカルトラッキングシステム。
【請求項６】
前記第２変換行列は、下記の数式により定義されることを特徴とする、請求項３に記載のオプティカルトラッキングシステム。
0006370478.tif 000028
((u'c,v'c)は前記パターンの中心に対応する前記パターンのイメージ上のピクセル座標、fcは前記第２焦点距離、pwは前記パターンのイメージのピクセルの幅、phは前記パターンのイメージのピクセルの高さ)
【請求項７】
前記処理部は、少なくとも３つ以上の撮影イメージからfc、pw、phのキャリブレーション値を取得することにより前記第２変換行列を取得することを特徴とする、請求項６に記載のオプティカルトラッキングシステム。
【請求項８】
前記処理部は、前記第１座標及び前記第４座標に対する複数のデータを取得し、前記取得された複数のデータが適用された下記の数式により前記姿勢定義行列を取得することを特徴とする、請求項３に記載のオプティカルトラッキングシステム。
0006370478.tif 000029
((u1,v1), …, (un,vn)は前記第１座標のデータ、(u'1,v'1), …, (u'n,v'n)は前記第４座標のデータ)
【請求項９】
前記処理部は、前記第１座標及び前記第４座標に対する複数のデータを取得し、前記取得された複数のデータが適用された下記の数式により前記姿勢定義行列を取得することを特徴とする、請求項３に記載のオプティカルトラッキングシステム。
0006370478.tif 000030
((u1,v1), …, (un,vn)は前記第１座標のデータ、(u'1,v'1), …, (u'n,v'n)は前記第４座標のデータ、(u'c,v'c)は前記パターンの中心に対応する前記パターンのイメージ上のピクセル座標、fcは前記第２焦点距離、pwは前記パターンのイメージのピクセルの幅、phは前記パターンのイメージのピクセルの高さ)
【請求項１０】
特定情報を有するパターン(pattern)及び前記パターンから離隔されて配置され第１焦点距離を有する第１レンズを含むマーカー(marker)部、及び第２焦点距離を有する第２レンズ及び前記第２レンズから離隔されて配置され前記第１レンズと前記第２レンズによって前記パターンのイメージが結像される結像ユニットを含む結像部を含み、マーカー部をトラッキングするように前記マーカー部の姿勢を算出するためのオプティカルトラッキングシステムのマーカー部の姿勢算出方法において、
前記パターンのパターン面上の座標に該当する第１座標を前記マーカー部の前記第１レンズに対する３次元的座標に該当する第２座標に変換する第１変換行列及び前記第２座標の前記第２レンズに対する３次元的座標に該当する第３座標を前記結像部のイメージ上のピクセル座標に該当する第４座標に変換する第２変換行列を取得する段階と、
前記第１変換行列及び前記第２変換行列を含み、前記第１座標を前記第４座標に変換する座標変換式から前記マーカー部の姿勢を定義する姿勢定義行列を取得する段階と
を含むオプティカルトラッキングシステムのマーカー部の姿勢算出方法。
【請求項１１】
前記座標変換式は、下記の数式により定義されることを特徴とする、請求項１０に記載のオプティカルトラッキングシステムのマーカー部の姿勢算出方法。
0006370478.tif 000031
((u,v)は前記第１座標、(u',v')は前記第４座標、[C]は前記第１変換行列、[A]は前記第２変換行列、[R]は前記姿勢定義行列、sは比例定数)
【請求項１２】
前記第１変換行列は、下記の数式により定義され、
0006370478.tif 000032
((uc,vc)は前記パターンの中心の座標、fbは前記第１焦点距離)
前記第２変換行列は、下記の数式により定義されることを特徴とする、請求項１１に記載のオプティカルトラッキングシステムのマーカー部の姿勢算出方法。
0006370478.tif 000033
((u'c,v'c)は前記パターンの中心に対応する前記パターンのイメージ上のピクセル座標、fcは前記第２焦点距離、pwは前記パターンのイメージのピクセルの幅、phは前記パターンのイメージのピクセルの高さ)
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オプティカルトラッキングシステム及びオプティカルトラッキングシステムのマーカー部の姿勢算出方法に関し、詳しくは、パターン情報を用いたオプティカルトラッキングシステム及びオプティカルトラッキングシステムのマーカー部の姿勢算出方法に関する。
【背景技術】
【０００２】
一般に、所定の物体の位置を追跡するために、オプティカルトラッキングシステム(optical tracking system)が用いられる。例えば、前記オプティカルトラッキングシステムは、手術ロボットのような装備で目的物をリアルタイムで追跡するために活用され得る。
【０００３】
前記オプティカルトラッキングシステムは、通常、目的物に取り付けられる複数のマーカーと前記マーカーによって放出される光を結像させる結像ユニットを含み、前記結像ユニットから取得された情報を数学的に計算して位置情報などを取得する。
【０００４】
しかし、従来のオプティカルトラッキングシステムは、複数のマーカーを含むことにより装備の大きさが大きくなる欠点があり、これにより小型の精密性が求められるトラッキングの場合、不適切であり得る。
【０００５】
よって、マーカーを単純化すると共に、正確且つ容易にトラッキングできるオプティカルトラッキングシステムが求められる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
よって、本発明が解決しようとする課題は、マーカーを単純化すると共に、正確且つ容易にトラッキングできるオプティカルトラッキングシステムを提供することにある。
【０００７】
本発明が解決しようとする他の課題は、上記のオプティカルトラッキングシステムに適用可能なオプティカルトラッキングシステムのマーカー部の姿勢算出方法を提供することにある。
【課題を解決するための手段】
【０００８】
本発明の例示的な一実施例によるオプティカルトラッキングシステムは、マーカー(marker)部、結像部及び処理部を含む。前記マーカー部は、特定情報を有するパターン(pattern)、及び前記パターンから離隔されて配置され、第１焦点距離を有する第１レンズを含む。前記結像部は、第２焦点距離を有する第２レンズ、及び前記第２レンズから離隔されて配置され、前記第１レンズと前記第２レンズによって前記パターンのイメージが結像される結像ユニットを含む。前記処理部は、前記パターンのパターン面上の座標と前記パターンのイメージ上のピクセル座標との間の座標変換式から前記マーカー部の姿勢を決定し、決定された前記マーカー部の姿勢を用いて前記マーカー部をトラッキングする。
【０００９】
一実施例として、前記処理部は、前記パターンのパターン面上の実際座標に該当する第１座標を前記マーカー部の前記第１レンズに対する３次元的ローカル座標に該当する第２座標に変換する第１変換行列、及び前記第２座標の前記第２レンズに対する３次元的ローカル座標に該当する第３座標を前記結像部の前記パターンのイメージ上のピクセル座標に該当する第４座標に変換する第２変換行列を取得することができ、前記座標変換式は、前記第１変換行列及び前記第２変換行列を含んで前記第１座標を前記第４座標に変換するように定義され得、前記処理部は、前記座標変換式から前記マーカー部の姿勢を定義する姿勢定義行列を取得することができる。
【００１０】
前記座標変換式は、下記の数式により定義され得る。
0006370478.tif 000002
((u,v)は前記第１座標、(u',v')は前記第４座標、[C]は前記第１変換行列、[A]は前記第２変換行列、[R]は前記姿勢定義行列、sは比例定数)
【００１１】
前記第１変換行列は、下記の数式により定義され得る。
0006370478.tif 000003
((uc,vc)は前記パターンの中心の実際座標、fbは前記第１焦点距離)
【００１２】
前記処理部は、少なくとも３つ以上の撮影イメージから前記第１座標及び前記第４座標のデータを取得することができ、前記取得されたデータを下記の数式に適用してuc、vc及びfbのキャリブレーション値を取得することにより前記第１変換行列を取得することができる。
【００１３】
前記第２変換行列は、下記の数式により定義され得る。
0006370478.tif 000004
((u'c,v'c)は前記パターンの中心に対応する前記パターンのイメージ上のピクセル座標、fcは前記第２焦点距離、pwは前記パターンのイメージのピクセルの幅、phは前記パターンのイメージのピクセルの高さ)
【００１４】
前記処理部は、少なくとも3つ以上の撮影イメージから前記第1座標及び前記第4座標のデータを取得することができ、前記取得されたデータを下記の数式に適用してfc、pw、phのキャリブレーション値を取得することにより前記第２変換行列を取得することができる。
【００１５】
前記処理部は、前記第１座標及び前記第４座標に対する複数のデータを取得し、前記取得された複数のデータが適用された下記の数式により前記姿勢定義行列を取得することができる。
0006370478.tif 000005
((u1,v1), …, (un,vn)は前記第１座標のデータ、(u'1,v'1), …, (u'n,v'n)は前記第４座標のデータ)
【００１６】
前記処理部は、前記第１座標及び前記第４座標に対する複数のデータを取得し、前記取得された複数のデータが適用された下記の数式により前記姿勢定義行列を取得することができる。
0006370478.tif 000006
((u1,v1), …, (un,vn)は前記第１座標のデータ、(u'1,v'1), …, (u'n,v'n)は前記第４座標のデータ、(u'c,v'c)は前記パターンの中心に対応する前記パターンのイメージ上のピクセル座標、fcは前記第２焦点距離、pwは前記パターンのイメージのピクセルの幅、phは前記パターンのイメージのピクセルの高さ)
【００１７】
本発明の例示的な他の実施例によるオプティカルトラッキングシステムのマーカー部の姿勢算出方法は、特定情報を有するパターン(pattern)及び前記パターンから離隔されて配置され第１焦点距離を有する第１レンズを含むマーカー(marker)部、及び第２焦点距離を有する第２レンズ及び前記第２レンズから離隔されて配置され前記第１レンズと前記第２レンズによって前記パターンのイメージが結像される結像ユニットを含む結像部を含み、前記マーカー部をトラッキングするように前記マーカー部の姿勢を算出するために提供される。前記オプティカルトラッキングシステムのマーカー部の姿勢算出方法は、前記パターンのパターン面上の実際座標に該当する第１座標を前記マーカー部の前記第１レンズに対する３次元的ローカル座標に該当する第２座標に変換する第１変換行列、及び前記第２座標の前記第２レンズに対する３次元的ローカル座標に該当する第３座標を前記結像部のイメージ上のピクセル座標に該当する第４座標に変換する第２変換行列を取得する段階と、前記第１変換行列及び前記第２変換行列を含み、前記第１座標を前記第４座標に変換する座標変換式から前記マーカー部の姿勢を定義する姿勢定義行列を取得する段階とを含む。
【００１８】
前記座標変換式は、下記の数式により定義され得る。
0006370478.tif 000007
((u,v)は前記第１座標、(u',v')は前記第４座標、[C]は前記第１変換行列、[A]は前記第２変換行列、[R]は前記姿勢定義行列、sは比例定数)
【００１９】
前記第１変換行列は、下記の数式により定義され得、
0006370478.tif 000008
((uc,vc)は前記パターンの中心の実際座標、fbは前記第１焦点距離)
【００２０】
前記第２変換行列は、下記の数式により定義され得る。
0006370478.tif 000009
((u'c,v'c)は前記パターンの中心に対応する前記パターンのイメージ上のピクセル座標、fcは前記第２焦点距離、pwは前記パターンのイメージのピクセルの幅、phは前記パターンのイメージのピクセルの高さ)
【発明の効果】
【００２１】
本発明によれば、マーカー部をトラッキングするオプティカルトラッキングシステムにおいて、トラッキングが可能なようにマーカー部が特定情報のパターンを含んでマーカー部を小型化することができ、前記マーカー部と前記結像部の光学系を座標変換式でモデリングすることにより前記マーカー部の姿勢を決定することができるため、さらに単純で且つ容易な方法で正確なマーカー部のトラッキングを可能にすることができる。
【図面の簡単な説明】
【００２２】
【図１】本発明の一実施例によるオプティカルトラッキングシステムを示す概念図である。
【図２】図1のオプティカルトラッキングシステムの処理部がマーカー部の姿勢を決定するために必要な問題解決の過程を概略的に示すフローチャートである。
【図３】図２の問題解決の過程のうちシステムモデリングを行う過程を示すフローチャートである。
【図４】図３のシステムモデリングを行う過程を説明するための概念図である。
【図５】図２の問題解決の過程のうち第２変換行列をキャリブレーションする過程を示すフローチャートである。
【図６】図２の問題解決の過程のうち第１変換行列をキャリブレーションする過程を示すフローチャートである。
【図７】図２の問題解決の過程のうち姿勢定義行列を取得する過程の一例を示すフローチャートである。
【図８】図２の問題解決の過程のうち姿勢定義行列を取得する過程の他の例を示すフローチャートである。
【図９】本発明の一実施例によるオプティカルトラッキングシステムのマーカー部の姿勢算出方法を示すフローチャートである。
【発明の具体的な説明】
【００２３】
本発明は、多様な変更を加えることができ、様々な形態を有することができるところ、特定の実施例を図面に例示して本文に詳細に説明する。しかし、これは本発明を特定の開示形態に対して限定しようとするものではなく、本発明の思想及び技術範囲に含まれる全ての変更、均等物ないし代替物を含むものとして理解されるべきである。
【００２４】
第１、第２などの用語は多様な構成要素を説明するのに用いられるが、上記構成要素は上記用語によって限定されてはならない。上記用語は１つの構成要素を他の構成要素から区別する目的でのみ用いられる。例えば、本発明の権利範囲を逸脱しないと共に、第１構成要素は第２構成要素と名づけられ得、同様に第２構成要素も第１構成要素と名づけられ得る。
【００２５】
本出願で用いた用語は、単に特定の実施例を説明するために用いられるものであり、本発明を限定しようとする意図ではない。単数の表現は文脈上明白に異なる意味ではない限り、複数の表現を含む。本出願で「含む」または「有する」などの用語は、明細書に記載された特徴、数、段階、動作、構成要素、部分品またはこれらを組み合わせたものが存在することを指定しようとするのであり、１つまたはそれ以上の他の特徴や数、段階、動作、構成要素、部分品またはこれらを組み合わせたもの等の存在または付加の可能性を予め排除しないものと理解されるべきである。
【００２６】
異なって定義されない限り、技術的または科学的な用語を含み、ここで用いられる全ての用語は、本発明の属する技術分野における通常の知識を有する者により一般的に理解されるのと同一の意味を有する。
【００２７】
一般に用いられる予め定義されているような用語は、関連技術の文脈上の意味と一致する意味を有すると解釈されるべきであり、本出願で明白に定義しない限り、理想的であったり過度に形式的な意味として解釈されない。
【００２８】
以下、添付の図面を参照して、本発明の望ましい実施例をさらに詳細に説明する。
【００２９】
図1は、本発明の一実施例によるオプティカルトラッキングシステムを示す概念図である。
【００３０】
図1を参照すると、本発明の例示的な一実施例によるオプティカルトラッキングシステム１００は、マーカー(marker)部１１０、結像部１２０及び処理部１３０を含む。
【００３１】
前記マーカー部１１０は、パターン(pattern)１１２及び第１レンズ１１４を含む。
【００３２】
前記パターン１１２は、特定情報を有する。例えば、前記特定情報は、前記パターンは後述する結像部１２０でトラッキングのために認識できる情報であって、バーコード(bar code)と類似の1次元的パターン、ＱＲコードと類似の２次元的パターンなどを含むことができる。
【００３３】
前記第１レンズ１１４は、前記パターン１１２から離隔されて配置され、第１焦点距離を有する。例えば、前記第１レンズ１１４と前記パターン１１２との間の離隔距離は、後述する結像部１２０が遠距離においても前記パターン１１２を結像してトラッキングできるように、前記第１レンズ１１４の第１焦点距離と同一であり得る。この場合、前記第１レンズ１１４を通過する前記パターン１１２に対する光束(bundle of rays)は平行をなし得る。前記第１レンズ１１４は、例えば、顕微鏡の対物レンズと類似の機能を行うことができる。
【００３４】
前記マーカー部１１０は、光源を含めないことがあり、この場合、前記マーカー部１１０は外部に位置する照明を用いるパッシブマーカー(passive marker)として活用され得る。これとは異なって、前記マーカー部１１０は、光源を含むこともでき、この場合、前記マーカー部１１０は自らの照明を用いるアクティブマーカー(active marker)として活用され得る。
【００３５】
前記結像部１２０は、第２レンズ１２２及び結像ユニット１２４を含む。
【００３６】
前記第２レンズ１２２は、第２焦点距離を有する。前記第２レンズ１２２は、例えば、顕微鏡の接眼レンズと類似の機能を行うことができる。
【００３７】
前記結像ユニット１２４は、前記第２レンズ１２２から離隔されて配置され、前記第１レンズ１１４と前記第２レンズ１２２によって前記パターン１１２のイメージが結像される。例えば、前記結像ユニット１２４と前記第２レンズ１２２との間の離隔距離は、前記第１レンズ１１４を通過して平行をなす前記パターン１１２に対する光束を結像することができるように、前記第２レンズ１２２の第２焦点距離と同一であり得る。例えば、前記結像ユニット１２４は、ＣＣＤ(charge coupled device)、ＣＭＯＳ(complementary metal-oxide semiconductor)などのようなイメージセンサを含むことができる。
【００３８】
前記処理部１３０は、前記パターン１１２のパターン面上の座標と前記パターン１１２のイメージ上のピクセル座標のと間の座標変換式から前記マーカー部１１０の姿勢を決定する。前記処理部１３０は、決定された前記マーカー部１１０の姿勢を用いて前記マーカー部１１０をトラッキングする。前記処理部１３０は、例えば、コンピュータまたはさらに具体的に中央処理装置(CPU)を含むことができる。
【００３９】
以下、前記処理部１３０の機能の根拠になるシステムモデリングの過程及びこれにより前記マーカー部１１０の姿勢を決定する過程を図面を参照してさらに詳細に説明する。
【００４０】
図２は、図1のオプティカルトラッキングシステムの処理部がマーカー部の姿勢を決定するために必要な問題解決の過程を概略的に示すフローチャートである。
【００４１】
図２を参照すると、まずは上述した構成を有する前記オプティカルトラッキングシステム１００に対してシステムモデリングを行う(S100)。
【００４２】
図1に示すようなオプティカルトラッキングシステム１００において、前記パターン１１２のパターン面上の座標と前記パターン１１２のイメージ上のピクセル座標との間の座標変換は、前記オプティカルトラッキングシステム１００の光学系により行われるため、前記オプティカルトラッキングシステム１００の光学系による座標変換をモデリングすることにより前記座標変換式を設定することができる。このとき、前記オプティカルトラッキングシステム１００の光学系による座標変換は、前記マーカー部１１０及び前記結像部１２０のそれぞれの光学系、及びこれらの間の関係によってモデリングされ得る。
【００４３】
続いて、システムモデリングの結果として取得された座標変換式のうち後述する第１及び第２変換行列をキャリブレーション(calibration)する(S200)。
【００４４】
図1に示す前記パターン１１２のパターン面上の座標を第１座標、前記第１座標の前記第１レンズ１１４に対する３次元的座標を第２座標、前記第２座標の前記第２レンズ１２２に対する３次元的座標を第３座標、そして前記結像部１２０の前記パターン１１２のイメージ上のピクセル座標を第４座標とそれぞれ定義するとき、前記第１変換行列は、前記第１座標を前記第２座標に変換する行列であり、前記第２変換行列は、前記第３座標を前記第４座標に変換する行列である。
【００４５】
前記システムモデリングの結果として取得された座標変換式は、図1に示す前記マーカー部１１０及び前記結像部１２０の光学系の各種のパラメータに対する式で定められるが、前記パラメータを正確に取得できなかったり機構的な配置状態などによって値が変わることがあるため、前記第１及び第２変換行列をキャリブレーションすることにより正確なシステムモデリングを可能にすることができる。
【００４６】
次に、キャリブレーションの結果を用いて姿勢定義行列を取得する(S300)。
【００４７】
ここで、姿勢は、前記マーカー部１１０が向かっている方向を意味し、前記姿勢定義行列は、前記マーカー部１１０の姿勢に関する情報を提供する行列であって、前記姿勢定義行列から前記マーカー部１１０のロール(roll)、ピッチ(pitch)、ヨー(yaw)などを把握することができる。
【００４８】
以下、図２に示す各段階について図面を参照してさらに具体的に説明する。
【００４９】
図３は、図２の問題解決の過程のうちシステムモデリングを行う過程を示すフローチャートであり、図４は、図３のシステムモデリングを行う過程を説明するための概念図である。
【００５０】
図３及び図４を参照すると、まず前記マーカー部１１０と前記結像部１２０との間の光経路による３つの直線の方程式を取得する(S110)。
【００５１】
具体的には、前記第１レンズ１１４の中心点を第１中心点A、前記第２レンズ１２２の中心点を第２中心点Oとし、前記パターン１１２上の任意の点をBとする。前記任意の点Bに対する光が前記第１レンズ１１４の第１中心点Aを通過する光は直進し、前記第１中心点Aを通過した光が前記第２レンズ１２２と会う点をDとし、前記D点で前記第２レンズ１２２により屈折されて前記結像ユニット１２４に結像される点をEとする。また、前記第１レンズ１１４の第１中心点Aを経て前記第２レンズ１２２の第２中心点Oを通過する光は直進し、この光が線分DEの延長線と会う点をCとする。
【００５２】
このとき、線分AO（または線分AC）に対する直線の方程式、線分ADに対する直線の方程式、及び線分DCに対する直線の方程式を図４に示すようにそれぞれL1、L2及びL3と定義する。
【００５３】
ワールド座標系(world coordinate system)において、前記第１中心点Aの座標は(X,Y,Z)、前記第２中心点Oの座標は原点である(0,0,0)と設定する。前記第２レンズ１２２の第２中心点Oの座標を原点と設定するため、前記第２レンズ１２２に対する３次元的ローカル座標系は、前記ワールド座標系と同一である。
【００５４】
また、前記パターン１１２上の任意の点(B点に対応)の座標を(u,v)、前記パターン１１２の中心点の座標を(uc,vc)、前記結像ユニット１２４に結像される前記パターン１１２のイメージのピクセル(E点に対応)の座標を(u',v')と定める。前記座標(u,v)、(uc,vc)は、一例として前記パターン１１２の左上側を基準に設定され得、前記座標(u',v')は一例として前記パターン１１２のイメージの左上側を基準に設定され得る。
【００５５】
一方、前記結像ユニット１２４を前記第２レンズ１２２の焦点距離fcに位置させると、前記結像ユニット１２４のz軸座標は-fcになる。
【００５６】
以上の情報を用いて前記３つの直線の方程式を順に取得する。
【００５７】
直線L1の方程式は線分AOから求め、ここでC点の位置を取得する。直線L2の方程式は線分ABから求め、ここでD点の位置を取得する。直線L3の方程式は、線分DCから求める。このとき、A点とO点のワールド座標が分かるので、B点のワールド座標のみ分かれば、前記３つの直線の方程式が分かる。
【００５８】
前記マーカー部１１０の姿勢を定義する姿勢定義行列を3*3行列[R]と定義し、行列[R]の各成分をそれぞれr11、r12、r13、r21、r22、r23、r31、r32、r33と定義すれば、B点のワールド座標はB点のパータン上座標(u,v)を行列[R]と前記第１レンズ１１４の焦点距離fbに基づいて変換した(r11u+r12v+r13fb+X, r21u+r22v+r23fb+Y, r31u+r32v+r33fb+Z)と定めることができる。
【００５９】
よって、A点、O点及びB点のワールド座標から３つの直線の方程式を取得することができる。
【００６０】
続いて、前記取得された３つの直線の方程式から前記パターン１１２及びパターンのイメージの間の関係式を誘導する(S120)。
【００６１】
先に求めた直線L3の方程式でE点の位置(E点のワールド座標)を取得することができるため、これからE点のピクセル座標(u',v')が分かる。
【００６２】
これにより、E点のピクセル座標(u',v')をB点のパータン上座標(u,v)で示すことができるため、B点に対応する前記パターン１１２及びE点に対応するパターンのイメージの間の関係式を定めることができる。
【００６３】
次に、前記関係式を行列方程式で表して前記座標変換式として設定する(S130)。
【００６４】
前記関係式は、下記の数式１のような行列方程式で表すことができ、このような座標変換に関する行列方程式を前記座標変換式に設定することができる。
【００６５】
【数１】
0006370478.tif 000010
ここで、(u,v)は前記第１座標、(u',v')は前記第４座標、[C]は前記第１変換行列、[A]は前記第２変換行列、そして[R]は前記姿勢定義行列を意味する。また、(uc,vc)は前記パターンの中心のパターン面上の座標、fbは前記第１焦点距離、fcは前記第２焦点距離、pwは前記パターンのイメージのピクセルの幅、phは前記パターンのイメージのピクセルの高さである。また、(ui,vi)、(u'i,v'i)においてiは所定のi番目のパターンであることを意味する。
【００６６】
前記座標変換式は、図1で説明した前記第１及び第２変換行列及び前記姿勢定義行列の積でなされていることが分かる。
【００６７】
具体的には、前記座標変換式を概念的に詳察すると、図1で説明した通り、前記パターン１１２のパターン面上の実際座標を第１座標((u,v))、前記第１座標の前記第１レンズ１１４に対する３次元的ローカル座標を第２座標、前記第２座標の前記第２レンズ１２２に対する３次元的ローカル座標(ワールド座標と同一)を第３座標、そして前記結像部１２０の前記パターン１１２のイメージ上のピクセル座標を第４座標((u',v'))とそれぞれ定義するとき、前記座標変換式は、前記第１座標を前記第２座標に変換する第１変換行列[C]、前記第２座標を前記第３座標に変換する姿勢定義行列[R]、及び前記第３座標を前記第４座標に変換する第２変換行列[A]の積である[A][R][C]で示されることが分かる。
【００６８】
次に、前記システムモデリングの結果として取得された座標変換式のうち、前記第１及び第２変換行列をキャリブレーションする過程(S200)を図面を参照してさらに詳細に説明する。
【００６９】
前記キャリブレーションは、前記第２変換行列に対してまず行って、続いて前記第１変換行列に対して行う。
【００７０】
図５は、図２の問題解決の過程のうち第２変換行列をキャリブレーションする過程を示すフローチャートである。
【００７１】
図５を参照すると、まずキャリブレーションのための数学的な解析が容易であるように、行列[B]と行列[H]を定義する(S210)。
【００７２】
具体的には、前記第２変換行列[A]を用いて行列[B]を定義すれば、数式２の通りであり、前記第１変換行列[C]、前記第２変換行列[A]及び前記姿勢定義行列[R]を用いて行列[H]を定義すれば、数式３の通りである。
【００７３】
【数２】
0006370478.tif 000011
【００７４】
【数３】
0006370478.tif 000012
ここで、各行列[A]、[B]、[C]、[H]、[R]は全て3*3の形態を有し、[H]=[h1, h2, h3]、[R]=[r1, r2, r3]で示すことができる。
【００７５】
数式３の両辺にA-1を乗じれば、数式４が取得される。
【００７６】
【数４】
0006370478.tif 000013
【００７７】
続いて、行列[R]の正規直交性(orthonormality)を用いて[H]と[B]の成分からなる方程式を設定する(S220)。
【００７８】
具体的には、回転行列(rotation matrix)に該当する姿勢定義行列[R]の正規直交性を用いれば、行列[B]を数式５のように定義することができる。
【００７９】
【数５】
0006370478.tif 000014
ここで、α=-fc/pw、β=-fc/phであり、fcは前記結像部１２０の第２レンズ１２２の焦点距離、pwとphはそれぞれピクセルの幅と高さを意味する。
【００８０】
行列[B]の0でない成分を用いて、列ベクトルbとvijを数式６のように定義する。
【００８１】
【数６】
0006370478.tif 000015
【００８２】
数式６に行列[R]の正規直交性を用いれば、数式７を得ることができる。
【００８３】
【数７】
0006370478.tif 000016
【００８４】
次に、３枚以上の映像データを[H]に適用して[B]の解を求める(S230)。
【００８５】
具体的には、少なくとも３枚以上の映像を数式７に適用した後、一例として特異値分解(singular value decomposition、SVD)のような方法を用いて列ベクトルbを求めることができる。列ベクトルbを求めれば、行列[B]の全ての成分が分かる。
【００８６】
続いて、最終的にキャリブレーションされた[A]を取得する(S240)。
【００８７】
具体的には、行列[B]の全ての成分が分かれば、下記の数式８を通じてv'c、α、β、u'cを求めることができる(λ、γをパラメータで表す)。
【００８８】
【数８】
0006370478.tif 000017
【００８９】
よって、数式９から行列[A]の全ての成分が分かる。
【００９０】
【数９】
0006370478.tif 000018
【００９１】
次に、先にキャリブレーションした第２変換行列[A]を用いて第１変換行列[C]をキャリブレーションする。
【００９２】
図６は、図２の問題解決の過程のうち第１変換行列をキャリブレーションする過程を示すフローチャートである。
【００９３】
図６を参照すると、まずキャリブレーションされた行列[A]を行列[H]に代入し、整理して行列[R]を取得する(S250)。
【００９４】
具体的には、数式９の前記第２変換行列[A]を数式３に代入し、数式1の[R][C]を整理して数式１０を取得する。
【００９５】
【数１０】
0006370478.tif 000019
【００９６】
数式１０において、行列[R]を[R]=[r1r2 r3]と置けば、[R]は数式１１で列ベクトル成分別に取得することができる。
【００９７】
【数１１】
0006370478.tif 000020
【００９８】
続いて、行列[HK]を[HK]=[A][R]と定義して前記座標変換式に代入して整理する(S260)。
【００９９】
具体的には、行列[A]と行列[R]の積を行列[HK]として定義して数式1の座標変換式に代入して行列[HK]と行列[C]の成分からなるように整理する。
【０１００】
このとき、数式９で求めた行列[A]と数式１１で求めた行列[R]を用いて行列[HK]を求めることができ、これを数式1の座標変換式に適用すれば、行列[HK]と行列[C]の成分からなる数式１２が得られる。
【０１０１】
【数１２】
0006370478.tif 000021
【０１０２】
次に、整理された式を[AA][CC]=[BB]の形態に変形する(S270)。
【０１０３】
具体的には、整理された式で行列[C]の成分のみからなる行列を[CC]と定義して分離した後、整理された式を[AA][CC]=[BB]の形態に変形する。このとき、行列[HK]を知っているため、行列[HK]を用いて行列[AA]、行列[BB]及び行列[CC]を数式１３のように定義することができる。
【０１０４】
【数１３】
0006370478.tif 000022
【０１０５】
続いて、[CC]=[AA]-1[BB]から[CC]を求めてキャリブレーションされた行列[C]を取得する(S280)。
【０１０６】
具体的には、式[AA][CC]=[BB]を変形した[CC]=[AA]-1[BB]から[CC]の成分を取得して最終的にキャリブレーションされた前記第１変換行列[C]を取得する。
【０１０７】
次に、前記キャリブレーションされた第１及び第２変換行列を用いて前記姿勢定義行列を取得する過程(S300)を図面を参照してさらに詳細に説明する。
【０１０８】
図７は、図２の問題解決の過程のうち姿勢定義行列を取得する過程の一例を示すフローチャートである。
【０１０９】
図７を参照すると、前記姿勢定義行列[R]を取得する一例として、まず両辺に自らを外積した方程式を設定する(S310)。
【０１１０】
具体的には、前記数式1の両辺に自らを外積すれば0になるので、これを方程式に設定すると、数式１４を得ることができる。
【０１１１】
【数１４】
0006370478.tif 000023
【０１１２】
続いて、行列[H]を、一例として特異値分解(SVD)のような方法を用いて取得する(S320a)。
【０１１３】
具体的には、数式１４に数式３の[H]=[A][R][C]を適用した後、行列[H]の各成分(H1, H2,…, H9)に関する方程式で整理して数式１５を取得する。
【０１１４】
【数１５】
0006370478.tif 000024
【０１１５】
数式１５の2n個の式を一例として特異値分解(SVD)のような方法を用いて取得する。
【０１１６】
次に、[R]=[A]-1[H][C]-1から[R]を取得する(S330a)。
【０１１７】
具体的には、数式３の[H]=[A][R][C]を変形した[R]=[A]-1[H][C]-1から[R]を取得する。
【０１１８】
前記姿勢定義行列は、他の方法で取得されることもできる。
【０１１９】
図８は、図２の問題解決の過程のうち姿勢定義行列を取得する過程の他の例を示すフローチャートである。
【０１２０】
図８を参照すると、前記姿勢定義行列[R]を取得する他の例として、まず両辺に自らを外積した方程式を設定する(S310)。本過程は図７の過程と同一であるため、重複する説明は省略する。
【０１２１】
続いて、r11〜r33に対する方程式で整理する(S320b)。
【０１２２】
具体的には、数式１４から前記姿勢定義行列[R]の各成分r11、r12、r13、r21、r22、r23、r31、r32、r33に対する方程式で整理して数式１６を取得する。
【０１２３】
【数１６】
0006370478.tif 000025
【０１２４】
次に、行列[R]を、一例として特異値分解(SVD)のような方法を用いて取得する(S330b)。
【０１２５】
具体的には、数式１６の2n個の式を特異値分解(SVD)のような方法を用いて取得する。
【０１２６】
このように最終的に前記姿勢定義行列[R]を取得することができる。
【０１２７】
前記のようなシステムモデリングの過程及び姿勢定義行列[R]の取得方法を図1に示す前記オプティカルトラッキングシステム１００に適用して前記マーカー部１１０の姿勢を算出することができる。
【０１２８】
以下、前記処理部１３０で前記マーカー部１１０の姿勢を算出する方法を図面を参照してさらに詳細に説明する。
【０１２９】
図９は、本発明の一実施例によるオプティカルトラッキングシステムのマーカー部の姿勢算出方法を示すフローチャートである。
【０１３０】
図９を参照すると、まず前記処理部１３０で少なくとも３つの映像から第１及び第２変換行列をキャリブレーションする(S510)。
【０１３１】
前記キャリブレーションは、図２で説明された段階S200と、図５及び図６で具体的に説明された段階S210ないし段階S280の過程と実質的に同一であり、前記処理部１３０では前記過程のうち段階S230と段階S280のようにキャリブレーションのための最終方程式のみを用いて前記第１及び第２変換行列をキャリブレーションすることができる。
【０１３２】
次に、前記第１及び第２変換行列を含む座標変換式から姿勢定義行列を取得する(S520)。
【０１３３】
前記姿勢定義行列の取得は、図２で説明された段階S300と、図７及び図８で具体的に説明された段階S310ないし段階S330a、及び段階S310ないし段階S330bの過程と実質的に同一であり、前記処理部１３０では前記過程のうち段階S320aとS320a、または、段階S320bのように前記姿勢定義行列の取得のための最終方程式のみを用いて前記姿勢定義行列を取得することができる。
【０１３４】
よって、前記処理部１３０は、前記第１座標を前記第２座標に変換する第１変換行列及び前記第３座標を前記第４座標に変換する第２変換行列を予めキャリブレーションして予め取得した後、前記座標変換式から前記マーカー部１１０の姿勢を定義する姿勢定義行列を取得することができる。
【０１３５】
前記姿勢定義行列を取得すれば、前記マーカー部１１０の姿勢が分かる。例えば、前記姿勢定義行列から前記マーカー部１１０のロール(roll)、ピッチ(pitch)、ヨー(yaw)などを把握することができる。
【０１３６】
前記のようなオプティカルトラッキングシステムによれば、マーカー部をトラッキングするオプティカルトラッキングシステムにおいて、トラッキングが可能なようにマーカー部が特定情報のパターンを含んでマーカー部を小型化することができ、前記マーカー部と前記結像部の光学系を座標変換式でモデリングすることにより前記マーカー部の姿勢を決定することができるため、さらに単純で且つ容易な方法で正確なマーカー部のトラッキングを可能にすることができる。
【０１３７】
上述した本発明の詳細な説明では、本発明の望ましい実施例を参照して説明したが、該当技術分野の熟練した当業者または該当技術分野における通常の知識を有する者であれば、後述する特許請求の範囲に記載された本発明の思想及び技術領域から逸脱しない範囲内で本発明を多様に修正及び変更させられるであろう。よって、上述した説明及び下の図面は本発明の技術思想を限定するのではなく、本発明を例示するものと解釈されなければならない。
【０１３８】
(符号の説明)
１００：オプティカルトラッキングシステム  １１０：マーカー部
１１２：パターン                                 １１４：第１レンズ
１２０：結像部                                   １１２：第２レンズ
１２４：結像ユニット                      １３０：処理部?
【図１】
0006370478.tif 000034
【図２】
0006370478.tif 000035
【図３】
0006370478.tif 000036
【図４】
0006370478.tif 000037
【図５】
0006370478.tif 000038
【図６】
0006370478.tif 000039
【図７】
0006370478.tif 000040
【図８】
0006370478.tif 000041
【図９】
0006370478.tif 000042