(57)【特許請求の範囲】
【請求項１】
任意の２色からなる縞模様と、
前記縞模様の上に付けられたレンチキュラレンズとを備え、
前記レンチキュラレンズに含まれるシリンダー状のレンズの間隔と、前記縞模様のラインの間隔とが異なり、前記レンチキュラレンズを観測する方向に応じて前記レンチキュラレンズ上に観測される濃淡パターンが変化し、前記レンチキュラレンズを観測する視点との相対関係が計測されることを特徴とするマーカユニット。
【請求項２】
請求項１に記載のマーカユニットと、
複数の計測基準点と
を備えたことを特徴とするマーカ。
【請求項３】
２次元パターンコードをさらに備えたことを特徴とする請求項２に記載のマーカ。
【請求項４】
前記２次元パターンコードは、ＡＲマーカであることを特徴とする請求項３に記載のマーカ。
【請求項５】
請求項１に記載のマーカユニットであって、正三角形上に３つのマーカユニットが配置されていることを特徴とするマーカ。
【請求項６】
複数のドットからなる模様と、
前記ドットの上に付けられた複数のレンズからなり、２次元平面上に配列されたレンズアレイとを備え、
前記複数のレンズの中心の間隔と、前記複数のドットの間隔とが異なり、前記レンズアレイを観測する方向に応じて前記レンズアレイ上に観測される濃淡パターンが変化し、前記レンズアレイを観測する視点との相対関係が計測されることを特徴とするマーカ。
【請求項７】
前記複数のレンズは、蜂の巣状に２次元平面上に配列されていることを特徴とする請求項６に記載のマーカ。
【請求項８】
前記複数のレンズは、格子状に２次元平面上に配列されていることを特徴とする請求項６に記載のマーカ。
【請求項９】
前記複数のレンズの各々は、凸レンズであることを特徴とする請求項６ないし８のいずれかに記載のマーカ。
【請求項１０】
任意の２色からなる縞模様および前記縞模様の上に付けられたレンチキュラレンズを有するマーカユニットと、計測基準点とを含むマーカを観測して、前記マーカに対する前記レンチキュラレンズを観測する視点の視線角度を求める方法であって、
前記レンチキュラレンズに含まれるシリンダー状のレンズの間隔と、前記縞模様のラインの間隔とが異なり、前記レンチキュラレンズを観測して、前記縞模様の濃淡パターンを取得するステップと、
前記濃淡パターンの輝度の極値を求めるステップと、
前記極値が観測される位置と前記計測基準点との距離から視線角度を算出するステップと
を備えたことを特徴とする方法。
【請求項１１】
前記マーカは、第１のマーカユニットと第２のマーカユニットとを含み、
前記第１のマーカユニットから算出した視線角度、前記第２のマーカユニットから算出した視線角度、および前記第１のマーカユニットと前記第２のマーカユニットとの間の距離から、前記マーカを含む平面と前記視点との間の距離を算出するステップをさらに備えたとことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記マーカは、第１のマーカユニットと第２のマーカユニットとを含み、
前記第１のマーカユニットから算出した視線角度により求まる視点平面と、前記第２のマーカユニットから算出した視線角度により求まる視点平面とから、前記マーカを含む平面と前記視点との間の相対位置を示す交線を算出するステップをさらに備えたとことを特徴とする請求項１０に記載の方法。
【請求項１３】
複数のドットからなる模様、および各々のドットの上に付けられた複数のレンズからなり、２次元平面上に配列されたレンズアレイを有するマーカユニットと、計測基準点とを含むマーカを観測して、前記マーカに対する前記レンズアレイを観測する視点の視線角度を求める方法であって、
前記複数のレンズの中心の間隔と、前記複数のドットの間隔とが異なり、前記レンズアレイを観測して、前記模様の濃淡パターンを取得するステップと、
前記濃淡パターンの輝度の極値を求めるステップと、
前記極値が観測される位置と前記計測基準点との距離から視線角度を算出するステップと
を備えたことを特徴とする方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物体に付けることのできるマーカに関する。
【背景技術】
【０００２】
AR（Augmented Reality:拡張現実感）やロボティクスの分野において、ロボットなどが、物体の位置や姿勢を認識するために、マーカが用いられている。マーカとは、物体に付けることのできる平面パターンである。
【０００３】
マーカは、特に、今後のサービスロボットの実用化に際して、サービスロボットによる確実な自律作業を支援するシステムの構築に不可欠な要素である（非特許文献１、２、３）。
【０００４】
マーカのうち代表的なものは、正方形の黒い枠とその内部に印刷された２次元パターンコードを含む。そして、マーカをカメラで認識することにより、マーカとカメラの相対的な位置と姿勢を認識し、マーカの付けられた物体の位置や姿勢を認識することができる。また、カメラにより、マーカに記録された情報を読み取ることもできる。
【０００５】
図１は、一般的なARマーカの例（非特許文献７）を示す図である。図１には、ARToolKitマーカ、ARTagマーカ、CyberCodeマーカ、およびARToolKitPlusマーカが示されている。また、QRCode（非特許文献８）のようにより多くの情報を記録可能なマーカを、ARマーカとして用いることもできる（非特許文献１、２）
【０００６】
AR分野では、例えば、実世界の画像に対してCG（Computer Graphics:コンピュータグラフィクス）のモデルを、実世界の画像中の物体に付けられたARマーカの位置に合わせて重ねて表示することが行われている。
【０００７】
ロボティクス分野では、例えば、物体に付けられたARマーカをロボットに計測させることにより、ロボットにARマーカが付けられた物体の位置や姿勢を認識させて、物体を操作させることが行われている。
【０００８】
図２は、ロボティクス分野における、マーカを用いたロボットタスクの例を示す図である。図２の例では、車椅子に装着された、車椅子に乗る人の生活支援のためのロボットアームの先のロボットハンドにつけられたカメラにマーカが付けられた冷蔵庫の取っ手を認識させて、ロボットハンドに、冷蔵庫の扉の開閉を自動的に行わせている。図２に示されているタスクでは、カメラがマーカを認識した後、ロボットは自律的にマーカの位置および姿勢を基準として所定のロボットアームの軌道を生成することにより、冷蔵庫の扉を開けることができる。
【０００９】
カメラによるマーカの計測は、以下で説明するように従来行われている。まず、カメラが、マーカの画像を読み取る。次に、マーカの画像が、画像処理されて、マーカの４つのコーナー（４角）が検出される。そして、カメラに読み取られた画像内でのマーカの４つのコーナーの位置関係を用いた幾何学的計算により、マーカの計測が行われ、マーカが付けられた物体の位置や姿勢を、カメラが認識することができる。
【先行技術文献】
【非特許文献】
【００１０】
【非特許文献１】J.Ota, et al., “Environmnetal support method for mobile robots using visual marks with memory storage”, in Proc. 1999 IEEE Intl. Conf. on Robotics and Automation (ICRA), vol.4, pp.2976-2981, 1999.
【非特許文献２】K.Ohara, et al., “Visual Mark for Robot Manipulation and Its RT-Middleware Component”, Advanced Robotics, Vol. 22, No. 6, pp.633-655, 2008.
【非特許文献３】H.Tanaka et al., “Visual Marker System for Control of Flexible Manipulator Supporting Daily Living”, in Proc. ICROSSICE Intl. Joint Conf. 2009, pp.1666-1670, 2009.
【非特許文献４】Y.Uematsu and H.Saito, “Improvement of Accuracy for 2D Marker-Based Tracking Using Particle Filter”, in Proc. 17th Intl. Conf. Artificial Reality and Telexistence 2007, pp.183-189, 2007.
【非特許文献５】D.Abawi, J.Bienwald and R.Dorner, “Accuracy in Optical Tracking with Fiducial Markers:An Accuracy Function for ARToolKit”,in Proc. The Third IEEE and ACM Intl. Symp. On Mixed and Augmented Reality (ISMAR 2004), pp.260-261, 2004.
【非特許文献６】K.Pentenrieder, et al., “Analysis of tracking accuracy for single-camera square-marker-based tracking”, in Proc. Dritter Workshop Virtuelle und Erweiterte Realitt der GIFachgrupper VR/AR, Koblenz, Germny, 2006.
【非特許文献７】M.Fiala, “ARTag Fiducial Marker System Applied to Vision Based Spacecraft Docking”, in Proc. Intl. Conf. on Intelligent Robots and Systems (IROS) 2005 Workshop on Robot Vision for Space Applications, pp.35-40, 2005.
【非特許文献８】QRcode Web Site, “http://www.denso-wave.com/qrcode/index-e.html”
【非特許文献９】H.Kato, “Inside ARToolKit”, http://www.hitl.washington.edu/artoolkit/Papers/ART02-Tutorial.pdf
【非特許文献１０】M.Rubio, et al., “Jittering Reduction in Marker-Based Augmented Reality Systems”, in Proc. ICCSA(1), 2006, pp.510-517, 2006.
【非特許文献１１】D.Wagner and D.Schmalstieg, “ARToolKitPlus for Pose Tracking on Mobile Devices”, Proc. 12th Computer Vision Winter Workshop (CVWW’07), 2007.
【発明の概要】
【発明が解決しようとする課題】
【００１１】
しかしながら、上記のような従来技術によると、マーカのサイズが小さいときに、マーカとカメラが正対する付近で、マーカの計測誤差が大きくなってしまう（非特許文献４、５、６）。また、たとえカメラでフィルタ（平均フィルタ、カルマンフィルタ、パーティクルフィルタ等）や計測履歴を用いることにより、マーカの計測値の分散を小さくすることができても（非特許文献４、９、１０）、マーカの計測値が真値となっている保証はなかった。
【００１２】
図２４は、上記のような従来のマーカのもつ課題を定性的に説明するための図である。従来のマーカを用いるシステムでは、射影変換の原理を用いた幾何的計算により、マーカの位置と回転角（姿勢）が計測される。このような従来のシステムでは、まず、図２４に示されているように、例えば、マーカの４つのコーナー２４０１、２４０２、２４０３、２４０４の位置が、カメラにより観測される。そして、コーナーの位置からマーカを観測するカメラとマーカとの相対的な位置と姿勢が一意に決定される。このため、図２４の（Ｂ）に示されているように、マーカを観測するカメラとマーカとが正対しない場合には、マーカのコーナーの位置の計測誤差が小さいと、マーカの回転角には小さな計測誤差しか生じない。一方、図２４の（Ａ）に示されているように、マーカを観測するカメラとマーカとが正対する付近にある場合には、たとえマーカのコーナーの位置の計測誤差が小さくても、マーカの回転角には大きな計測誤差が生じてしまう。
【課題を解決するための手段】
【００１３】
上記の課題を解決するために、本発明に係るマーカは、模様と、模様の上に付けられたレンズであって、レンズを観測する方向に応じてレンズ上に観測される濃淡パターンが変化するレンズとを含むマーカユニットを備えることを特徴とする。
【発明の効果】
【００１４】
本発明によれば、マーカとマーカの観測物が正対する付近でも、マーカを観測物により正確に計測することができる。
【図面の簡単な説明】
【００１５】
【図１】一般的なARマーカの例を示す図である。
【図２】マーカを用いたロボットタスクの例を示す図である。
【図３】本発明に係るRASマーカの濃淡パターンの変化の例を示す図である。
【図４】本発明に係るRASマーカの基本構造の例を示す図である。
【図５】本発明に係るRASマーカを観測する角度によって観測される色が変化する原理を示す図である。
【図６】本発明に係るRASマーカにおいて白黒縞模様の黒色のラインの間隔とレンチキュラレンズの間隔が等しい場合に観測される濃淡パターンの変化を示す図である。
【図７】本発明に係るRASマーカにおいて白黒縞模様の黒色のラインの間隔がレンチキュラレンズの間隔より少し広い場合に観測される濃淡パターンの変化を示す図である。
【図８】本発明に係るRASマーカにおける、黒ピークの周期とレンチキュラレンズのレンズの数および白黒縞模様の黒色のラインの数の関係を示す図である。
【図９】本発明に係るRASマーカにおける、視線角度と黒ピーク位置の関係を示す図である。
【図１０】本発明に係るRASマーカのデザインの例を示す図である。
【図１１】本発明に係るRASマーカのデザインの例を示す図である。
【図１２】本発明に係るRASマーカの黒ピーク位置の計測のための画像処理アルゴリズムの例を説明するための図である。
【図１３】本発明に係るRASマーカの性能を検証するための装置の例を示す図である。
【図１４】本発明に係るRASマーカの性能の検証結果を表示するためのＧＵＩの例を示す図である。
【図１５】本発明に係るRASマーカの性能と従来のARToolKitPlusマーカの性能を比較した図である。
【図１６】本発明に係るRASマーカの性能と従来のARToolKitPlusマーカの性能を比較した図である。
【図１７】本発明に係る２つのRASマーカユニットを用いた距離計測の方法を示す図である。
【図１８】本発明に係るRASマーカをロボットハンドの制御に利用している様子を示す図である。
【図１９】本発明に係るRASマーカの例を示す図である。
【図２０】本発明に係るRASマーカの例を示す図である。
【図２１】本発明に係る画像処理アルゴリズムの例のフローチャートである。
【図２２】２つの直交するRASマーカユニットを用いた場合に定まる視点の位置を示す図である。
【図２３】三角形状に配置した３つのRASマーカユニットを用いた場合に定まる視点の位置を示す図である。
【図２４】従来のマーカのもつ課題を定性的に説明するための図である。
【図２５】本発明に係るRASマーカに含まれる白黒縞模様の黒い線の太さに応じて、RASマーカ上で計測される濃淡パターンがどのように変化するかを示す図である。
【図２６】本発明に係るRASマーカユニットのコーナーと計測基準点の画像を２種類の閾値によって二値化したものを示す図である。
【図２７】本発明に係るRASマーカユニットにおける、視線角度と黒ピーク位置の関係を示す図である。
【図２８】本発明に係る光学モデルを説明するための図である。
【図２９】本発明に係るRASマーカを実測することにより得られた値の組合せを示す図である。
【図３０】視線角度の計測値と、様々なｘa、ｘb、ｄa、ｄbの値を用いて、本発明に係る光学モデルにより計算された視線角度θpとを比較した図である。
【図３１】本発明に係るRASマーカの観測点のRASマーカからの距離を変化させたときに、RASマーカによる計測の安定性がどのように変化するかを示す図である。
【図３２】本発明に係るRASマーカへの照度を変化させたときに、本発明に係るRASマーカによる計測の安定性がどのように変化するかを示す図である。
【図３３】本発明に係るRASマーカ上で計測される濃淡パターンが、強い光が照射される
【図３４】本発明に係るRASマーカをマーカとして用いないときの図２に示されているロボットタスクにおける車椅子の作業可能範囲について示す図である。
【図３５】本発明に係るRASマーカを用いたときの図２に示されているロボットタスクを実現するシステムにおける、ロボットハンドの位置決めのための制御アルゴリズムを説明するための図である。
【図３６】本発明に係るRASマーカを用いる前の車椅子の作業可能範囲と、本発明に係るRASマーカを用いた際の車椅子の作業可能範囲を比較した図である。
【図３７】本発明に係る２次元化されたRASマーカを示す図である。
【図３８】本発明に係る２次元化されたRASマーカ３８００におけるレンズとドットパターンに含まれるドットの位置との位置関係を示す図である。
【図３９】本発明に係る２次元化されたRASマーカを観測する角度によって観測される濃淡パターンがどのように変化するかを示す図である。
【図４０】本発明に係る２次元化されたRASマーカの例を示す図である。
【図４１】本発明に係る２次元化されたRASマーカを観測する角度によって観測される濃淡パターンがどのように変化するかを示す図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態について、詳細に説明する。  
（本発明の概要）
まず、本発明の概要について説明する。本発明では、マーカを観測する方向に応じて、観測されるマーカの濃淡パターンが変化する。そして、マーカの濃淡パターンから、マーカとマーカを観測する観測物との相対的な関係（位置や角度等）が計測されることができる。
【００１７】
（RASマーカ）
具体的には、本発明において、上記の処理を可能にするために、レンチキュラレンズと白黒縞模様とを組み合わせたRAS（Rotation Angle Scale(回転角度物差し)）マーカを用いる。なお、以下では、白黒縞模様を一例として用いて説明するが、レンチキュラレンズに組み合わせられる図柄は、白黒縞模様でない任意の色の任意の模様であってもよい。RASマーカをカメラが観測する際に、RASマーカに対するカメラの視線角度に応じて、カメラが観測することができるRASマーカの濃淡パターンが変化する。
【００１８】
RASマーカに対するカメラの視線角度の真値と、カメラが観測するRASマーカの濃淡パターンの変化は、一対一に対応して不変である。したがって、RASマーカに対するカメラの視線角度と、カメラが観測するRASマーカの濃淡パターンとの対応関係を用いて、例えば、カメラが観測するRASマーカの濃淡パターンから、RASマーカに対するカメラの視線角度を正確に求めることができる。
【００１９】
図３は、本発明に係るRASマーカの濃淡パターンの変化の例を示している。図３は、軸３０１の周りにRASマーカ３０２を回転させたときに、視点が固定されたカメラが観測するRASマーカ３０２の濃淡パターンが、矢印３０３の方向に変化していくことを示している。具体的には、図３に示されているように、軸３０１の周りにRASマーカ３０２を回転させると、カメラに観測される濃淡パターンのうちの濃い部分と薄い部分のRASマーカ上での位置が変化する。すなわち、図３では、軸３０１の周りにRASマーカ３０２が回転されると、濃淡パターンのうち色の濃い部分が移動しているようにカメラに観測される。
【００２０】
図４は、本発明に係るRASマーカの基本構造の例を示す図である。図４に示されているように、RASマーカは、レンチキュラレンズを、矢印４０１の方向に、白黒縞模様に貼り付けることにより作成される。ここでは、一例としてRASマーカでレンチキュラレンズが用いられているが、図３に示されているような濃淡パターンのふるまいが得られるならば、RASマーカにおいて、レンチキュラレンズ以外のレンズが用いられてもよい。
【００２１】
以下で、図５を用いて、本発明に係るRASマーカを観測する角度によって観測される色が変化する原理を説明する。RASマーカが含むレンチキュラレンズは、シリンダー状の小さなレンズを等間隔に並べたレンズである。図５に示されているように、レンチキュラレンズを観測する視線の角度に応じて、レンチキュラレンズの下の白黒縞模様の黒色の部分の異なる部分が拡大して観測される。このようにして、図５に示されているように、RASマーカに対する観測視線の方向に応じて、レンチキュラレンズの下の白黒縞模様上の焦点が変わり、観測される色が白から黒の間で変化する。
【００２２】
以下で、図６を用いて、本発明に係るRASマーカにおいて白黒縞模様の黒色のラインの間隔とレンチキュラレンズの間隔が等しい場合に、観測される濃淡パターンがどのように変化するかを説明する。図６に示されているように、RASマーカにおいて白黒縞模様の黒色のラインの間隔とレンチキュラレンズの間隔が等しい場合には、カメラの視線角度の変化に応じて、濃淡パターンが全体的に変化してカメラに観測される。
【００２３】
また、以下で、図７を用いて、本発明に係るRASマーカにおいて白黒縞模様の黒色のラインの間隔がレンチキュラレンズの間隔より少し広い場合に、観測される濃淡パターンがどのように変化するかを説明する。図７に示されているように、RASマーカにおいて白黒縞模様の黒色のラインの間隔がレンチキュラレンズの間隔より少し広い場合には、カメラの視線角度の変化に応じて、色の濃い部分が移動しているように観測される。これが、図３において、軸３０１の周りにRASマーカ３０２が回転され、カメラのRASマーカ３０２に対する視線角度が変化すると、濃淡パターンのうち色の濃い部分が移動しているようにカメラに観測される原理である。以下で説明する本発明の実施形態では、一例として、白黒縞模様の黒色のラインの間隔がレンチキュラレンズの間隔より少し広いRASマーカを用いる。
【００２４】
カメラにより、RASマーカを観測したときに、最も黒く観測される部分を、以下の説明では、黒ピークと呼ぶ。上述したように、カメラでRASマーカを観測すると、黒ピークが周期的に現れる。図８は、本発明に係るRASマーカにおける、黒ピークの周期とレンチキュラレンズのレンズの数および白黒縞模様の黒色のラインの数の関係を示している。図８に示されているように、黒ピークは、レンチキュラレンズのレンズの数と白黒縞模様の黒色のラインの数との差が１になる位置ごとに現れる。
【００２５】
図９は、本発明に係るRASマーカにおける、視線角度と黒ピーク位置の関係を示す図である。図９において、ｘが黒ピーク位置、θが視線角度を表す。視点平面Ｓｖ上の点からカメラがRASマーカを観測した場合、黒ピークはいつでも同じ位置ｘに観測される。このとき、RASマーカ平面Ｓｍに垂直な面とＳｖの成す角が視線角度θに相当する。レンズ断面形状が円筒形（の一部）であるレンチキュラレンズの場合、視線角度θと黒ピーク位置ｘの関係は、θ＝ｔａｎ-1（ａ（ｘ−ｂ）＋ｃ）のようになる。θ＝ｔａｎ-1（ａ（ｘ−ｂ）＋ｃ）において、ａ、ｂ、ｃはレンチキュラレンズおよび白黒縞模様の各種パラメータ（レンズの厚み，間隔，縞模様の間隔等）に応じて決まる定数である。
【００２６】
後述するRASマーカにおいても、同様に、図２７に示されているように視点ｐと黒ピーク位置ｘを含む視点平面と、RASマーカユニットを含む平面Ｓｍに垂直な面との角度を視線角度θと定義することができる。ここで、θは、後述するRASマーカユニットの回転軸周り（図２７では、例えばｙ軸周り）の角度となる。
【００２７】
（RASマーカのデザイン）
以下では、本発明に係るRASマーカから観測される画像を処理して解析するために適したRASマーカのデザインについて説明する。
【００２８】
図１０は、本発明に係るRASマーカユニットを有するRASマーカのデザインの例を示す図である。図１０に示されているRASマーカユニットの部分の長さを表す数値は無単位であり、比率が一定であれば、RASマーカユニットの大きさはどのようなものでもよい。図１０に示されているRASマーカユニットは、図４に示されているものと同様の構造を有し、軸１００１の周りの角度をカメラにより検知するために用いられる。一つのRASマーカは、4つの計測基準点１０１０〜１０１３と濃淡パターン表示部１０１４を含む。計測基準点１０１０〜１０１３は、以下で説明する画像処理を確実に行うためのものである。
【００２９】
図２５は、RASマーカに含まれる白黒縞模様の黒い線の太さに応じて、RASマーカ上で計測される濃淡パターンがどのように変化するかを示す図である。例えば、図２５のｎ＝２の濃淡パターンは、最も明瞭に黒ピークの位置の検出が可能であるので、本実施形態では、ｎ＝２の濃淡パターンをRASマーカ上で計測可能なRASマーカを、一例として用いている。
【００３０】
図１１は、本発明に係るRASマーカのデザインの例を示す図である。図１１に示されているRASマーカは、一例として、RASマーカユニット（ｘ軸用）とRASマーカユニット（ｙ軸用）の２つのRASマーカユニットを含んでいる。RASマーカは、２つ以上のRASマーカユニットを含んでいてもよいし、１つだけのRASマーカユニットを含んでもよい。
【００３１】
RASマーカユニット（ｘ軸用）は、RASマーカが付けられた物体のx軸周りの回転をカメラにより検知するために用いられる。また、RASマーカユニット（ｙ軸用）は、RASマーカが付けられた物体のｙ軸周りの回転をカメラにより検知するために用いられる。
【００３２】
また、図１１のRASマーカは、一例として、ARToolKitPlusマーカ（非特許文献１１）を含んでいる。ARToolKitPlusマーカは、図１に示されている２次元パターンコードを含む既存のARマーカの一つである。RASマーカは、ARToolKitPlusマーカ以外のARマーカを含んでもよいし、ARマーカを含まなくてもよい。ARToolKitPlusマーカは、画像処理の際、主にRASマーカユニットのおよその位置と向きをカメラにより観測するために用いられる。
【００３３】
図２６は、RASマーカユニットのコーナーと計測基準点の画像を２種類の閾値によって二値化したものを示す図である。図２６に示されている画像において、二値化は、灰色と黒色によって行われている。図２６の画像２６０１は、RASマーカユニットの検出の際に、照明変動があった場合の画像である。また、図２６の画像２６０２は、RASマーカユニットの検出の際に、カメラの焦点のブレがあった場合の画像である。図２６に示されているように、RASマーカユニットの検出の際に、照明変動やカメラの焦点のブレがあった場合でも、計測基準点２６０３、２６０４の形状を円形とすることにより、RASマーカユニットのコーナー２６０５と比較して、RASマーカユニットの計測基準点の中心（重心）の位置２６０６を精度良く検出することができる。そのため、本実施形態では、一例として、図２１のステップＳ１２０７において、環境条件に対して変動の少ない画像変換が可能となるように、円形の計測基準点を、RASマーカユニットにおいて用いた。
【００３４】
（画像処理アルゴリズム）
以下で、RASマーカをカメラで観測し、カメラに読み込まれた画像を処理してRASマーカの黒ピークの位置を計測するための画像処理アルゴリズムの例について図１２と図２１を用いて、説明する。なお、以下の画像処理アルゴリズムは、例えば、RASマーカを観測するカメラによって実行されてもよいし、カメラとは別体のコンピュータにより実行されてもよい。また、以下の画像処理アルゴリズムは、コンピュータプログラムの形式で、メモリに格納されてもよい。また、メモリからコンピュータプログラムを読み出して、ＣＰＵがコンピュータプログラムを実行することにより、以下の画像処理アルゴリズムが実現されてもよい。また、RASマーカを観測するカメラは、例えば、ロボットやロボットハンドに搭載されていてもよい。また、以下の画像処理アルゴリズムを実行するコンピュータは、上記カメラを搭載したロボットに組み込まれていてもよい。
【００３５】
画像処理アルゴリズムでは、まず、ステップＳ１２０１で、カメラが、RASマーカを観測して、RASマーカに含まれるARToolKitPlusマーカ（図１２の（１））を検出し、ARToolKitPlusマーカの画像を読み込む。そして、カメラに読み込まれた画像の中のARToolKitPlusマーカの２次元パターンコードを用いて、ARToolKitPlusマーカの位置と姿勢が算出される。一例として、ステップＳ１２０１で、ARToolKitPlusマーカの検出とARToolKitPlusマーカの画像の読み込みが行われるが、ARToolKitPlusマーカ以外のマーカがRASマーカに含まれていて、ARToolKitPlusマーカ以外のマーカの検出と、ARToolKitPlusマーカ以外のマーカの画像の読み込みがステップＳ１２０１で行われてもよい。
【００３６】
次に、ステップＳ１２０２で、ステップＳ１２０１で算出されたARToolKitPlusマーカの位置を基準として、カメラが観測したRASマーカに含まれるRASマーカユニットの存在する領域の画像（図１２の（２））が、カメラに読み込まれた画像から抽出される。
【００３７】
次に、ステップＳ１２０３で、ステップＳ１２０２で抽出されたRASマーカユニットの存在する領域の画像が一定の大きさにリサイズされた画像（図１２の（３））が生成される。
【００３８】
次に、ステップＳ１２０４で、ステップＳ１２０３で生成された画像（図１２の（３））の二値化と領域分割が行われる。
【００３９】
次に、ステップＳ１２０５で、ステップＳ１２０４で行われた二値化と領域分割の結果から、ステップＳ１２０３で生成された画像に含まれる、カメラが観測したRASマーカ中のRASマーカユニットの４つの計測基準点（図１２の（５）の符号１２０５−１〜１２０５−４）が抽出される。この際に、予め定められたRASマーカユニットの計測基準点の面積、寸法、縦横比等の基準を用いたフィルタリングが活用されてもよい。
【００４０】
次に、ステップＳ１２０６で、４つの計測基準点（図１２の（５）の符号１２０５−１〜１２０５−４）から射影変換行列が算出される。
【００４１】
次に、ステップＳ１２０７で、ステップＳ１２０６で算出された射影変換行列を用いて、ステップＳ１２０３で生成された画像に含まれる、カメラが観測したRASマーカ中のRASマーカユニットを正面から観測した画像（図１２の（７）、正面画像）が生成される。
【００４２】
次に、ステップＳ１２０８で、RASマーカユニットの濃淡パターン表示部の濃淡パターンの中心軸１２０８−１上の３２点の輝度が取得される。
【００４３】
次に、ステップＳ１２０９で、Ｓ１２０８で取得された輝度の極値が図１２の（９）に示されているようなパラボラ近似により算出される。通常、黒い部分は輝度が小さいが、ここでは輝度の大小関係を逆にして表示している。
【００４４】
ステップＳ１２０９では、Ｓ１２０８で取得された輝度の値にばらつきがあったり、ステップＳ１２０１で、カメラが、RASマーカを観測する際に、焦点のブレがある場合でも、輝度の極値をロバストに算出するために、一例として、パラボラ近似が用いられている。
【００４５】
パラボラ近似は、一例であり、ステップＳ１２０９では、極値を求めるためにパラボラ近似以外の近似が用いられてもよい。また、Ｓ１２０８で取得される輝度の点数は、３２点でなくてもよく、ステップＳ１２０９において、精度良く極値が求められるならば、Ｓ１２０８で取得される輝度の点数は何点でもよい。ステップＳ１２０９において、求められた極値が、RASマーカに含まれるRASマーカユニットの濃淡パターンの黒ピークの位置として計測される。
【００４６】
（黒ピークの位置から視線角度への変換）
以下で、図２８を用いて、RASマーカ上で観測される黒ピークの位置から視線角度を求めるために用いることができる光学モデルについて説明する。
【００４７】
光学モデルでは、一例として以下のような（１）〜（４）のような仮定をおくことができる。
【００４８】
（１）RASマーカに含まれるレンズの表面は、半径ｒの円筒表面の一部である。
【００４９】
（２）RASマーカ上の黒ピークが観測される位置では、視線と黒ピークを形成している黒い線の中心が交わっている。
【００５０】
（３）RASマーカに含まれるレンズの形状および白黒縞模様の形状に関する様々なパラメータの正確な値は未知である。
【００５１】
（４）RASマーカに含まれるレンズの軸と白黒縞模様の黒色のラインは平行である。（RASマーカに含まれるレンズの軸と白黒縞模様の黒色のラインが平行でない場合には、RASマーカ上で観測される濃淡パターンに明確な変化が現れるため、仮定（４）を満たさないRASマーカを排除することは容易である。）
【００５２】
図２８は、上記の仮定に基づいた光学モデルを示している。図２８において、ｐLは、RASマーカに含まれるレンズの間隔を示しており、ｐSは、RASマーカに含まれる白黒縞模様の間隔を示している。また、図２８において、ｘは、RASマーカの原点とRASマーカ上で観測される黒ピークとの距離を示している。また、図２８において、θa、θbは、視線角度を示している。また、図２８において、ｈは、RASマーカに含まれるレンズの円筒中心と、RASマーカに含まれる白黒縞模様との距離を示している。また、図２８において、ｄは、RASマーカの観測視点とRASマーカが含まれる平面との距離を示している。また、図２８において、ｅは、RASマーカに含まれるレンズの中心線と、RASマーカに含まれる白黒縞模様の黒色のラインの中心との距離を示している。
【００５３】
以下では、上記の光学モデルを用いて、RASマーカに含まれる白黒縞模様との距離ｄa、ｄb、およびRASマーカの原点とRASマーカ上で観測される黒ピークとの距離ｘa、ｘbの観測値が得られているときに、視線角度θpがどのように求まるかを示す。
【００５４】
まず、ある自然数ｎbを用いて、ｘb＝ｘa＋ｎbｐS  （式（１））と表せる。
【００５５】
式（１）より、δｐ＝ｐS−ｐL  （式（２））とすると、ｅb＝ｅa＋ｎbδｐ  （式（３））が成り立つ。
【００５６】
式（１）よりｎb＝（ｘb−ｘa）／ｐS  （式（４））である。
【００５７】
また、ｘa／ｄa＝ｅa／ｈ  （式（５））、ｘb／ｄb＝ｅb／ｈ  （式（６））が、幾何的相似により成り立つ。
【００５８】
ここで、観測された黒ピークの位置ｘpから視線角度θpが求まるとする。
【００５９】
そうすると、ｘp＝ｘa＋ｎbｐS  （式（７））、ｅp＝ｅa＋ｎpδｐ  （式（８））、θp＝ｔａｎ-1（ｅp／ｈ）  （式（９））が成り立つ。
【００６０】
また、式（７）よりｎp＝（ｘp−ｘa）／ｐS  （式（１０））となる。
【００６１】
また、式（８）、（１０）よりｅp＝ｅa＋δｐ（ｘp−ｘa）／ｐS  （式（１１））となる。
【００６２】
また、式（３）、（４）、（６）より、以下の式（１２）が求まる。
ｅb＝ｅa＋δｐ（ｘb−ｘa）／ｐS＝ｈｘb／ｄb  （式（１２））
【００６３】
また、式（５）、（１２）より、以下の式（１３）が求まる。
ｈｘa／ｄa＋δｐ（ｘb−ｘa）／ｐS＝ｈｘb／ｄb  （式（１３））
【００６４】
ここで、ｘb／ｄb−ｘa／ｄa＝Ａ  （式（１４））、ｘb−ｘa＝Ｂ  （式（１５））とすると、式（１３）より、ｈ＝Ｂδｐ／（ＡｐS）  （式（１６））が求まる。
【００６５】
また、式（５）、（１６）より、ｅa＝ｘaＢδｐ／（ｄaＡｐS）  （式（１７））が求まる。
【００６６】
また、式（１１）、（１７）より、以下の式（１８）が求まる。
ｅp＝ｘaＢδｐ／（ｄaＡｐS）＋δｐ（ｘp−ｘa）／ｐS  （式（１８））
【００６７】
また、式（１６）、（１８）より、以下の式（１９）が求まる。
ｅp／ｈ＝ｘa／ｄa＋（ｘp−ｘa）Ａ／Ｂ  （式（１９））
【００６８】
また、式（１４）、（１５）、（１９）より、以下の式（２０）が求まる。
ｅp／ｈ＝ｘa／ｄa＋（ｘb／ｄb−ｘa／ｄa）（ｘp−ｘa）／（ｘb−ｘa）  （式（２０））
【００６９】
そして、式（９）、（２０）より、以下の式（２１）が求まる。
θp＝ｔａｎ-1（ｘa／ｄa＋（ｘb／ｄb−ｘa／ｄa）（ｘp−ｘa）／（ｘb−ｘa））  （式（２１））
【００７０】
ここで、RASマーカの濃淡パターン表示部の長さをｗとし、図２１のステップＳ１２０９により計測された黒ピークの位置をｐ［ｐｉｘｅｌ］とすると、ｘp／ｗ＝ｐ／４８０  （式（２２））が成立する。
【００７１】
ここで、式（２１）、（２２）から、黒ピークの位置ｐと、視線角度θpの関係が以下の式（２３）のように求まる。
θp＝ｔａｎ-1（ｘa／ｄa＋（ｘb／ｄb−ｘa／ｄa）（ｗｐ／４８０−ｘa）／（ｘb−ｘa））  （式（２３））
【００７２】
（RASマーカの性能）
以下で、本発明に係るRASマーカの性能について説明する。
【００７３】
RASマーカの性能の検証のために、一例として、図１３に示されているような装置を用いる。図１３の装置により、回転台でRASマーカを回転させて、回転したRASマーカをカメラで観測することができる。
【００７４】
RASマーカの性能の検証結果は、例えば、図１４に示されているようなＧＵＩ（グラフィカルユーザインタフェース）に、以下のように表示されることができる。カメラに読み込まれたRASマーカを含む画像は、ＧＵＩ１４０１に表示される。ステップＳ１２０７で生成される画像は、ＧＵＩ１４０２に表示される。ステップＳ１２０８の中心軸１２０８−１を含む画像は、ＧＵＩ１４０３に表示される。ステップＳ１２０９のパラボラ近似と、ステップＳ１２０９で求められた極値は、ＧＵＩ１４０４に表示される。
【００７５】
図１３の装置を、RASマーカの性能の検証のために、一例として、以下の条件で用いる。図１３の装置は、通常の白色蛍光灯による照明がされたオフィス環境で用いられる。また、図１３の装置に含まれるカメラは、USB CMOSカメラ（対角画角56.3°、VGA）であり、回転台との中心軸とカメラとの距離は、133mmとされている。また、図１３の装置のRASマーカに含まれるARToolKitPlusマーカの部分は、一辺が10mmの正方形である。また、RASマーカで用いられるレンチキュラレンズは、75LPI（1インチあたりのレンズ列数が75）のものであり、計測可能な視線角度範囲はおよそ±30°である（計測可能な視線角度範囲は、RASマーカで用いられるレンチキュラレンズの仕様によって決まる。）。
【００７６】
また、図１３の装置を用いて、RASマーカの性能を検証する際には、カメラとRASマーカが正対した状態を回転台の回転の角度（回転角）が0°の状態であるとし、回転台は、ｙ軸のまわりに回転する。
【００７７】
上記の場合に、RASマーカのｙ軸のまわりの回転角とRASマーカの黒ピークの位置ｘを、図１３の装置を用いて、どの程度正確に計測できるかを、以下で検証する。
【００７８】
図１５の（１）は、図１３の装置を用いて得られた、本発明に係るRASマーカの性能を示す図である。図１５の（１）の横軸は、図１３の回転台の回転角であり、縦軸は、計測されたRASマーカの黒ピークの位置ｘである。黒ピークの位置は、RASマーカのRASマーカユニットから計測される濃淡パターンの左端から右端の一次元の座標を表す０〜４８０の値をとる。図１５の（１）の図に示されているように、回転角が大きくなると、RASマーカの黒ピークの位置が連続的に増加しており、RASマーカの黒ピークの位置から回転角を求めることが可能であることがわかる。また、図１５の（１）の図より、RASマーカの黒ピークの位置に基づいて、1°未満の精度で、回転角を求めることが可能であり、RASマーカとカメラが正対している状態（回転角が0°の場合）でも、精密かつ安定して、RASマーカの黒ピークの位置から、回転角を計測できることがわかる。図１５の（１）では、各回転角で２０回の計測の平均がプロットされており、データのばらつきを示す標準偏差がエラーバーで示されているが、エラーバーの幅は非常に小さくて目立たない。図１５の（１）のデータの標準偏差は、角度に変換すると約0.2°〜0.4°であり、幅広い回転角にわたって、非常に精密かつ安定して、RASマーカの黒ピークの位置から、回転角を計測できることがわかる。
【００７９】
図１５の（２）は、図１３の装置を用いて得られた、ARToolKitPlusマーカの性能を示す図である。図１５の（２）では、各回転角で２０回の計測の平均がプロットされており、データのばらつきを示す標準偏差がエラーバーで示されている。図１５の（２）の横軸は、図１３の回転台の回転角であり、縦軸は、計測されたARToolKitPlusマーカの回転角（計測角Θ）である。図１５の（２）に示されているように、従来のARToolKitPlusマーカを用いた場合、回転角と計測角Θは連続的に一致することはなく、計測角Θのふるまいは、非常に不安定である。すなわち、図１５の（２）では、計測角Θの精度が良ければ、図１５の（２）のデータは、右肩上がりの直線上にのるはずであるが、図１５の（２）に示されているように、回転角が0°の付近で非常に精度が悪く、またデータのばらつきも大きく、安定しない。
【００８０】
図１５の（１）と図１５の（２）との比較により、RASマーカを用いることにより、従来のARToolKitPlusマーカよりも、精密かつ安定して、マーカの回転角を計測することができることがわかる。
【００８１】
図１６は、本発明に係るRASマーカの性能と従来のARToolKitPlusマーカの性能を比較した図である。図１６の横軸は、図１３の回転台の回転角であり、縦軸は、計測角の標準偏差である。図１６のRASマーカの数値は、図１５の（１）の結果から求められたRASマーカが1°回転すると黒ピークの位置が3.4移動するという関係を用いて、RASマーカの黒ピークの位置xを計測角（deg）に変換することにより算出されている。図１６のARToolKitPlusマーカの数値は、計測角Θの値の標準偏差である。図１６に示されているように、マーカとカメラが正対している状態（回転角が0°の場合）において、従来のARToolKitPlusマーカの計測角の標準偏差は不安定であるが、本発明に係るRASマーカの計測角の標準偏差は非常に安定していることがわかる。本発明に係るRASマーカの計測角の標準偏差のばらつきは、上述したように約0.2°〜0.4°である。
【００８２】
（計測値と光学モデルとの比較）
次に、式（２３）で表される光学モデルと計測値とを比較する。
【００８３】
ここでは、式（２３）の視線角度θpを計算するために必要なｘa、ｘb、ｄa、ｄbの値として、RASマーカを実測することにより得られた、図２９に示されている４つの値の組合せ（（ｉ）、（ｉｉ）、（ｉｉｉ）、（ｉｖ））を用いる。
【００８４】
図３０は、視線角度の計測値と、様々なｘa、ｘb、ｄa、ｄbの値を用いて式（２３）で表された光学モデルにより計算された視線角度θpとを比較した図である。図３０に示されているように、光学モデルにおいて用いるｘa、ｘb、ｄa、ｄbの値によって、光学モデルにより計算される視線角度θpと視線角度の計測値との一致度は異なる。例えば、図３０に示されているように、ｘa、ｘb、ｄa、ｄbの値の組合せとして、図２９の（ｉｖ）と（ｉ）の値の組合せを用いて光学モデルにより計算された視線角度θpは、視線角度の計測値と良く一致する。一方、図３０に示されているように、ｘa、ｘb、ｄa、ｄbの値の組合せとして、図２９の（ｉｖ）と（ｉ）の値の組合せ以外の組合せを用いて光学モデルにより計算された視線角度θpは、視線角度の計測値との一致度が低くなる。これは、理想的な仮定に基づいて構築された光学モデルでも、光学モデルの導出に用いられている仮定を満たすｘa、ｘb、ｄa、ｄbの値の組合せを用いて視線角度θpを計算すれば、視線角度の計測値を良く再現することができることを示している。
【００８５】
（RASマーカのロバスト性）
図３１は、RASマーカの観測点のRASマーカからの距離を変化させたときに、RASマーカによる計測の安定性がどのように変化するかを示す図である。図３１の３１０１において、横軸は、RASマーカの観測点のRASマーカからの距離であり、縦軸は、各距離におけるRASマーカ上の黒ピークの位置の標準偏差を、図３０に示されている視線角度と黒ピークの位置との関係から得られる係数（０．１６８［ｄｅｇ／ｐｉｘｅｌ］）によって角度に変換したものである。また、図３１の３１０２は、RASマーカの観測点のRASマーカからの距離が２７７ｍｍのときに、観測されるRASマーカの画像の一例を示している。また、図３１の３１０３は、RASマーカの観測点のRASマーカからの距離が９２ｍｍのときに、観測されるRASマーカの画像の一例を示している。
【００８６】
図３１の３１０１に示されているように、従来のARToolKitPlusマーカと比較して、RASマーカの角度は、RASマーカの観測点のRASマーカからの距離を変化させても大きく変化しない。したがって、RASマーカを用いることにより、従来のARToolKitPlusマーカよりロバストな観測が可能である。
【００８７】
図３２は、RASマーカへの照度を変化させたときに、RASマーカによる計測の安定性がどのように変化するかを示す図である。図３２の３２０１において、横軸は、RASマーカへの照度であり、縦軸は、各照度におけるRASマーカ上の黒ピークの位置の標準偏差を、図３０に示されている視線角度と黒ピークの位置との関係から得られる係数（０．１６８［ｄｅｇ／ｐｉｘｅｌ］）によって角度に変換したものである。また、図３２の３２０３は、RASマーカの外観の画像を示している。また、図３２の３２０４は、RASマーカへの照度が３２０１の（１）であるときに観測されるRASマーカの画像を示している。また、図３２の３２０５は、RASマーカへの照度が３２０１の（２）であるときに観測されるRASマーカの画像を示している。また、図３２の３２０６は、RASマーカへの照度が３２０１の（３）であるときに観測されるRASマーカの画像を示している。また、図３２の３２０７は、RASマーカへの照度が３２０１の（４）であるときに観測されるRASマーカの画像を示している。
【００８８】
図３２の３２０１に示されているように、従来のARToolKitPlusマーカと比較して、RASマーカの角度は、照度を変化させても大きく変化しない。したがって、RASマーカを用いることにより、従来のARToolKitPlusマーカよりロバストな観測が可能である。
【００８９】
図３２の３２０２は、図３２の３２０１の照度（１）、（２）、（３）、（４）のときの黒ピークの位置を示している。図３２の３２０２に示されているように、照度の変化により黒ピークの位置が、1.8°変化する。これは、図３３に示されているように、RASマーカ上で計測される濃淡パターンが、強い光が照射されると、濃淡パターン３３０１から濃淡パターン３３０２に変化する場合があるからであると考えられる。この程度の変化は、通常の照明条件下では深刻な問題を起こすことはないが、以下で説明するような照度対策をとることもできる。
【００９０】
以下で説明する照度対策は、例えば、日中の屋外等で、光が強く、光のRASマーカへの入射角度が変動する環境において有効である。
【００９１】
照度対策として、例えば、RASマーカ上で、光の強さの影響を受けやすい白黒の濃淡パターンではなくて、光の強さの影響を受けにくいRGBやHSV等の色の濃淡パターンのピークを計測することにより、RASマーカへの光の入射角度の変動の影響を取り除くことができる。例えば、図３３の濃淡パターン３３０３に示されているように、RGBのうちB（青）の値のみを用いて青ピークを計測して、照度対策を行うことができる。このようにすることにより、RASマーカ上で、白黒の濃淡パターンを計測する場合と比較して、RASマーカ上で計測されるピークの位置の変動を約半分とすることができる。
【００９２】
（RASマーカの使用例）
上記で説明したように、本発明に係るRASマーカを用いることにより、従来のARマーカよりも安定かつ正確な、RASマーカの姿勢計測が可能である。特に、マーカとマーカの観測物であるカメラが正対に近い状態のときでも、従来のARマーカと比べて、RASマーカは安定かつ正確な姿勢計測が可能である。したがって、本発明に係るRASマーカは、より安定かつ正確な姿勢計測が必要なアプリケーションにおいて従来のARマーカに代わるものとして利用価値が高い。
【００９３】
図１７は、本発明に係る2つのRASマーカユニットを用いた距離計測の方法を示す図である。図１７に示されているように、２つのRASマーカユニット（RASマーカユニット１、RASマーカユニット２）との視線角度θ1、θ2を計測することにより、２つのRASマーカユニットの間の距離wが既知であれば、２つのRASマーカユニットを含む平面と視点（RASマーカユニットを観測する位置）との距離ｄを算出することができる。このように、複数のRASマーカユニットを効果的に組み合わせることにより、距離計測を行うことができる。
【００９４】
図１８は、本発明に係るRASマーカをロボットハンドの制御に利用している様子を示す図である。図１８に示されているように、RASマーカを観測することができるカメラを搭載するロボットハンドを、カメラにより計測されるRASマーカの黒ピークが所定の位置に来るように制御するだけで、操作対象物体に対する位置姿勢合わせを完了できる。このとき明示的な姿勢計測を行う必要はないため、シンプルな制御ルールによる作業現場での位置合わせが可能となる。
【００９５】
図３４は、RASマーカをマーカとして用いないときの図２に示されているロボットタスクにおける車椅子の作業可能範囲について示す図である。図２に示されているようなロボットタスクを実現するシステムでは、マーカとして、ARToolKitPlusマーカが用いられてきた。しかし、図１５の（２）に示されているように、ARToolKitPlusマーカとカメラが正対している状態（回転角が0°の場合）において、ARToolKitPlusマーカから計測される回転角の情報の精度が悪い。このため、図２に示されているようなロボットタスクを実現するシステムでは、ARToolKitPlusマーカから計測される回転角の情報（姿勢情報）は用いられていなかった。
【００９６】
姿勢情報を用いることができないため、ARToolKitPlusマーカを用いた従来のシステムでは、ARToolKitPlusマーカと正対する姿勢で車椅子を位置決めしなければならない。このため、従来のシステムでは、ARToolKitPlusマーカと正対する姿勢で位置決めされた車椅子につけられたロボットハンドのカメラは、ARToolKitPlusマーカと正対しているという前提で、ロボットアームの軌道が生成されなければならない。このような制約のために、従来のシステムでは、冷蔵庫の扉開け動作のようなロボットタスクの成否は、車椅子の初期位置と姿勢に大きく依存してしまう。例えば、冷蔵庫の扉開け動作を成功させるために、従来のシステムでは、車椅子の初期位置と姿勢を、図３４の作業可能範囲３４０１に示されている範囲内にする必要があり、実用上の大きな制約となっている。
【００９７】
ここで、図３４の作業可能範囲３４０１の記号の意味の一例が、図３４の定義３４０２に示されている。定義３４０２の記号３４０３は、○が車椅子の初期位置を表し、姿勢が、初期位置から冷蔵庫のハンドル方向から左に12°から右に6°であることを示している。
【００９８】
図３５は、本発明に係るRASマーカを用いたときの図２に示されているロボットタスクを実現するシステムにおける、ロボットハンドの位置決めのための制御アルゴリズムを説明するための図である。以下で説明する制御アルゴリズムを用いることより、車椅子の初期位置と姿勢についての制約を従来システムよりゆるめることができる。
【００９９】
図３５に基づく制御アルゴリズムは、以下の通りである。
【０１００】
（１）車椅子の位置決め完了時におけるRASマーカ上で計測される黒ピークの位置の値ｐgoalを記録しておく。そして、車椅子の位置決め完了時におけるRASマーカとロボットハンドとの距離ｄgoalを記録しておく。ｄgoalは、例えば、RASマーカに含まれるARToolKitPlusマーカを利用することにより求めることができる。
【０１０１】
（２）RASマーカとロボットハンドとの距離がｄgoalとなり、ロボットハンドの中心軸３５０１がRASマーカの中心３５０２を通るようにロボットハンドの位置と姿勢を修正する。
【０１０２】
（３）上記（２）のRASマーカとロボットハンドとの位置関係を保ちつつ、RASマーカ上で計測される現在の黒ピークの位置の値ｐcrntとｐgoalとの差が正の場合には、ロボットハンドの姿勢を-2°修正し、RASマーカ上で計測される現在の黒ピークの位置の値ｐcrntとｐgoalとの差が負の場合には、ロボットハンドの姿勢を+2°修正する。
【０１０３】
（４）｜ｐcrnt−ｐgoal｜＜９（視線角度の±1.5°に相当）となるまで、上記の（３）を繰り返す。
【０１０４】
上記の制御アルゴリズムでは、RASマーカで計測される黒ピークの位置を、角度の情報に変換せずに、ロボットハンドを制御するものである。しかし、上記の制御アルゴリズムを用いることにより、実用上の性能が十分な図２に示されているロボットタスクを実現するシステムを構築可能である。実際に、上記の制御アルゴリズムを用いることにより、２０パターンの初期位置から試行して、上記の制御アルゴリズムを用いて、１〜８回のロボットハンドの位置と姿勢の修正を繰り返すことにより、失敗なく、2°以内の精度でRASマーカに対するロボットハンドの位置決めをすることができる。
【０１０５】
図３６は、RASマーカを用いる前の車椅子の作業可能範囲と、RASマーカを用いた際の車椅子の作業可能範囲を比較した図である。図３６に示されているように、RASマーカを用いた際の車椅子の作業可能範囲３６０２は、RASマーカを用いる前の車椅子の作業可能範囲３６０１よりも拡大しており、RASマーカを用いることにより、車椅子の作業可能範囲を広げることができることがわかる。
【０１０６】
（その他のタイプのRASマーカ）
以上説明してきた、RASマーカは、図１９に示されているように、横軸１９０１の周りに回転し、RASマーカの濃淡パターンの移動方向が横軸１９０１の方向と直交する。
【０１０７】
一方、図２０に示されているようなタイプのRASマーカは、縦軸２００１の周りに回転し、RASマーカの濃淡パターンの移動方向が縦軸２００１の方向と同一である。白黒縞模様の黒色のライン方向に沿って少しずつ黒色のラインの位相がずれていくようにし、黒色のライン間の間隔はレンチキュラレンズの間隔と等しくすることで、図２０のタイプのRASマーカを作成することができる。図１９や図２０に示されているような、濃淡パターンの移動方向が異なる様々なタイプのRASマーカを、RASマーカを貼付する場所等の制約に応じて使い分けることができる。
【０１０８】
（RASマーカユニットの数と、RASマーカと視点との位置関係について）
図２２は、図１１に示すような２つのRASマーカユニットを直交配置したRASマーカによって定まる観測視点の位置を示す。このタイプのRASマーカをカメラで観測することで、その観測視点が、それぞれのRASマーカユニットが定める視点平面（図９参照）の交線２２０１上に位置することが分かる。
【０１０９】
一方、図２３は３個のRASマーカユニットを正三角形状に配置したRASマーカによって定まる観測視点の位置を示す。このタイプのRASマーカをカメラで観測することで、その観測視点が、それぞれのRASマーカユニットが定める視点平面（図９参照）の交点２３０１上に位置することが分かる。このように、RASマーカユニットを３つ用いることで、３つのRASマーカユニットの濃淡パターンに基づいて、マーカと視点との相対位置関係（x,y,z）を定めることができる。
【０１１０】
図１７、２２、２３を用いて説明したように、複数のRASマーカユニットの情報を融合することで距離を測定したり視点の位置を一意に定めることができる。
【０１１１】
（２次元化されたRASマーカ）
図３７は、２次元化されたRASマーカを示す図である。図３７に示されているように、２次元化されたRASマーカは、例えば、多数のレンズが２次元上に配列されたレンズアレイを、矢印３７０１の方向に、ドットパターンに貼り付けることにより作成される。ここで、レンズアレイに含まれるレンズは、例えば、凸レンズでもよい。また、ドットパターンは、例えば、紙に印刷されていてもよい。また、図３７に示されているレンズアレイの例では、一例としてレンズが蜂の巣状に配列されているが、例えば、レンズアレイにおいて、レンズの配列とドットパターンに含まれているドットの配列とが相似の関係にあれば、レンズが格子状に配列されていてもよい。また、図３７に示されているレンズアレイに含まれているレンズの形状は、一例として、円であるが、例えば、矩形でもよいし、凸レンズとして機能すればどのような形状でもよい。
【０１１２】
図３８は、２次元化されたRASマーカ３８００におけるレンズとドットパターンに含まれるドットの位置との位置関係を示す図である。図３８に示されているように、例えば、レンズ３８０１において、ドットの位置３８０２は、レンズの中心の位置３８０３からずれている。
【０１１３】
また、図３８に示されている例では、レンズの中心の間隔は、ドットパターンに含まれるドットの間隔よりも小さくなっている。そして、図３８に示されている例では、２次元化されたRASマーカ３８００の中心から離れた周囲の領域ほど、レンズの中心の位置とドットの位置の差が、レンズの半径の方向に大きくなっている。
【０１１４】
図３９は、２次元化されたRASマーカを観測する角度によって観測される濃淡パターンがどのように変化するかを示す図である。例えば、レンズの中心の間隔がドットパターンに含まれるドットの間隔よりも小さくなっている場合に、視線角度３９０１で、２次元化されたRASマーカを観測すると、濃淡パターン３９０３が観測される。また、例えば、レンズの中心の間隔がドットパターンに含まれるドットの間隔よりも小さくなっている場合に、視線角度３９０２で、２次元化されたRASマーカを観測すると、濃淡パターン３９０４が観測される。
【０１１５】
図３９に示されているように、視線角度と、２次元化されたRASマーカ上で観測される濃淡パターンの位置が関連付いている。したがって、図３７に示されているように、２次元化されたRASマーカ上の濃淡パターンの位置３７０３を観測することにより、２次元化されたRASマーカを観測している視線３７０２の視線角度を計測することができる。
【０１１６】
図４０は、２次元化されたRASマーカの例を示す図である。図４０の２次元化されたRASマーカ４００１では、一例として、２次元化されたRASマーカユニット上の濃淡パターン表示部の周囲に３つの黒色の正方形の点と１つの黒色の正方形の線が設けられている。また、図４０の２次元化されたRASマーカ４００２では、一例として、２次元化されたRASマーカユニット上の濃淡パターン表示部の周囲に線が設けられている。また、図４０の２次元化されたRASマーカ４００３では、一例として、２次元化されたRASマーカユニット上の濃淡パターン表示部の周囲に３つの黒色の円形の線と１つの黒色の円形の点が設けられている。
【０１１７】
図４０に示されている２次元化されたRASマーカユニット上の濃淡パターン表示部の周囲の点や線の位置は、濃淡パターンの位置がどこにあるかを計測するときの基準となる位置とされてもよい。
【０１１８】
図４１は、２次元化されたRASマーカを観測する角度によって観測される濃淡パターンがどのように変化するかを示す図である。例えば、レンズの中心の間隔がドットパターンに含まれるドットの間隔よりも大きくなっている場合に、視線角度４１０１で、２次元化されたRASマーカを観測すると、濃淡パターン４１０３が観測される。また、例えば、レンズの中心の間隔がドットパターンに含まれるドットの間隔よりも小さくなっている場合に、視線角度４１０２で、２次元化されたRASマーカを観測すると、濃淡パターン４１０４が観測される。このように、レンズの中心の間隔がドットパターンに含まれるドットの間隔よりも大きくなっている場合には、レンズの中心の間隔がドットパターンに含まれるドットの間隔よりも小さくなっている場合とは、逆の方向に、視線角度を変えると、濃淡パターンが変化する。
【符号の説明】
【０１１９】
３０１  軸
１００１  軸
１０１０  計測基準点
１０１１  計測基準点
１０１２  計測基準点
１０１３  計測基準点
【図１】
0005842248.tif 000002
【図２】
0005842248.tif 000003
【図３】
0005842248.tif 000004
【図４】
0005842248.tif 000005
【図５】
0005842248.tif 000006
【図６】
0005842248.tif 000007
【図７】
0005842248.tif 000008
【図８】
0005842248.tif 000009
【図９】
0005842248.tif 000010
【図１０】
0005842248.tif 000011
【図１１】
0005842248.tif 000012
【図１２】
0005842248.tif 000013
【図１３】
0005842248.tif 000014
【図１４】
0005842248.tif 000015
【図１５】
0005842248.tif 000016
【図１６】
0005842248.tif 000017
【図１７】
0005842248.tif 000018
【図１８】
0005842248.tif 000019
【図１９】
0005842248.tif 000020
【図２０】
0005842248.tif 000021
【図２１】
0005842248.tif 000022
【図２２】
0005842248.tif 000023
【図２３】
0005842248.tif 000024
【図２４】
0005842248.tif 000025
【図２７】
0005842248.tif 000026
【図２８】
0005842248.tif 000027
【図２９】
0005842248.tif 000028
【図３０】
0005842248.tif 000029
【図３４】
0005842248.tif 000030
【図３５】
0005842248.tif 000031
【図３６】
0005842248.tif 000032
【図３７】
0005842248.tif 000033
【図３８】
0005842248.tif 000034
【図３９】
0005842248.tif 000035
【図４０】
0005842248.tif 000036
【図４１】
0005842248.tif 000037
【図２５】
0005842248.tif 000038
【図２６】
0005842248.tif 000039
【図３１】
0005842248.tif 000040
【図３２】
0005842248.tif 000041
【図３３】
0005842248.tif 000042