(57)【要約】画像上の平面指標２の配置と、予め定められた平面指標２の配置を比較することにより、マーカに対するカメラの位置と姿勢を第１の推定手段により推定する。マーカに１点の立体指標３を配置し、平面指標２に対する配置、高さ、そして、推定されたマーカに対するカメラの位置に基づいて、カメラの画像上における立体指標３の上面及び下面の中央位置を第２の推定手段により推定する。推定された立体指標３の上面及び下面の中央位置と、画像から検出したこれらの位置とを、カメラからみた３次元ベクトルに基づいて比較し、その誤差が所定値以上になったとき、第１の推定手段により推定された姿勢に基づいて、平板型マーカに対するカメラ視線角度の符号を反転させた上で、回転変換を行う。このように、平板指標２に配置する１点の立体指標３により、カメラの姿勢データを一定の規則に従って変換するだけで簡単に修正することができる。
2015045834.tif 000002
【特許請求の範囲】
【請求項１】
平面指標を有するマーカを用いて、該マーカに対するカメラの位置及び姿勢を認識する画像処理システムにおいて、
前記マーカに、予め定められた高さを有するひとつの立体指標を、前記平面指標に対して予め定められた位置に配置し、
前記カメラの画像により抽出された前記平面指標の配置と、予め定められた前記平面指標の配置を比較することにより、前記マーカに対するカメラの位置と姿勢を推定する第１の推定手段と、
前記立体指標の配置及び高さ、並びに、前記第１の推定手段により推定された前記マーカに対するカメラの位置に基づいて、前記カメラの画像上における前記立体指標の上面及び下面の中央位置を推定する第２の推定手段と、
前記カメラの画像に基づいて、前記立体指標の上面の中央位置を検出する検出手段と、
前記第２の推定手段により推定された前記立体指標の上面及び下面の中央位置と、前記検出手段が検出した前記立体指標の上面及び下面の中央位置とを、前記カメラからみた３次元ベクトルに基づいて比較し、その誤差が所定値以上になったとき、前記第１の推定手段により推定された前記マーカに対するカメラの姿勢が誤りであると判定する判定手段とを備え、
前記判定手段が誤りと判定したときは、前記第１の推定手段が推定した前記マーカに対するカメラの姿勢が正しいものとなるよう、前記第１の推定手段により推定された姿勢に基づく前記カメラのＸ軸回りの視線角度及びＹ軸回りの視線角度の符号をそれぞれ反転させた上で、回転変換を行うことにより前記マーカに対するカメラの姿勢を再演算する演算手段を備えたことを特徴とする画像処理システム。
ただし、Ｘ軸とＹ軸は、前記マーカ平面上の１点を原点とする３次元座標において、該マーカ平面上で互いに直交する座標軸をそれぞれ示す。
【請求項２】
平面指標を有するマーカの予め定められた位置に、予め定められた高さを有する立体指標が配置されてなる請求項１に記載の画像処理システムに使用されるマーカ。
【請求項３】
前記マーカにおける前記立体指標の配置及び高さが、前記マーカにデータとして記録されていることを特徴とする請求項２に記載のマーカ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マーカを画像処理して様々な情報を抽出するためのマーカ画像処理システムに関する。
【背景技術】
【０００２】
こうしたマーカは、ＡＲ(Augmented Reality:拡張現実感)、局所的な部位の計測分野、さらには、ロボティクスの分野において、カメラが、物体の位置や姿勢を認識するために用いられており、対象とする物体に貼付することができる平面パターンを備えた平板型のマーカが一般的に広く採用されている。【０００３】
例えば、今後のサービスロボットの実用化に際して、サービスロボットによる確実な自律作業を支援するシステムを構築する上で、マーカは、必要不可欠な要素である。
マーカのうち代表的なものは、正方形の黒い枠とその内部に印刷された２次元パターンとコードを含む。そして、マーカをカメラで認識することにより、マーカに対するカメラの相対的な位置と姿勢を認識し、マーカの付けられた物体の位置や姿勢を認識することができる。また、カメラにより、マーカに記録された情報を読み取ることもできる。【０００４】
図１は、一般的に使用されているARToolKitマーカ、ARTagマーカ、CyberCodeマーカ、およびARToolKitPlusマーカの例が示されている。また、こうしたマーカのほか、QRCodeのように、より多くの情報を記録可能なマーカを利用することもできる。【０００５】
例えば、ＡＲ分野では、実世界の画像に対してＣＧ(Computer Graphics：コンピュータグラフィクス)のモデルを、実世界の画像中の物体に付けられたＡＲマーカの位置に合わせて重ねて表示することが行われている。【０００６】
また、ロボティクス分野では、例えば、物体に付けられたマーカをロボットに計測させることにより、ロボットにマーカが付けられた物体の位置や姿勢を認識させて、物体を操作させることが行われている。【０００７】
図２は、一例として、ロボティクス分野における、マーカを用いたロボットタスクの例を示す図である。車椅子に装着された、車椅子に乗る人の生活支援のため、ロボットアーム先端のロボットハンドに装着されたカメラに、マーカが付けられた冷蔵庫の取っ手を認識させて、ロボットハンドに、冷蔵庫の扉の開閉を自動的に行わせている。図２に示されているタスクでは、カメラがマーカを認識した後、ロボットは自律的にマーカの位置と、これに対する姿勢を基準として所定のロボットアームの軌道を生成することにより、冷蔵庫の扉を開けることができる。【０００８】
カメラによるマーカの計測は、例えば、次のように行われている。
まず、カメラが、例えば、正方形の外枠を備えた平板型マーカの場合、読み取った画像データを画像処理することにより外枠を抽出し、４つのコーナーが検出される。そして、予め既知となっている、このマーカにおける４つのコーナーの位置(正方形の各頂点)と、カメラに読み取られた画像内における４つのコーナーとの位置関係を用いた幾何学的計算により、マーカに対するカメラの位置及び姿勢を解析し、マーカが付けられた物体の位置や姿勢を認識することができる。【０００９】
しかし、マーカとカメラが正対する付近で、マーカの計測誤差が大きくなってしまう。また、たとえカメラでフィルタ(平均フィルタ、カルマンフィルタ、パーティクルフィルタ等)や計測履歴を用いることにより、マーカの計測値の分散を小さくすることができても、マーカの計測値が真値となっているかを確実に判定することが困難であった。【００１０】
こうした平板型のマーカを利用した、カメラの位置や姿勢に関する計測精度の悪化を防止するため、特許文献１には、マーカを構成する模様の上に、観測する方向に応じてその濃淡パターンを変化させるレンズを設け、濃淡パターンを変化させることにより、マーカに対するカメラの位置や姿勢を正確に計測し、マーカが付けられた物体の位置や姿勢を正確に認識することが記載されている。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２０１２−１４５５５９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかし、従来の平板型マーカでは、マーカに対するカメラの姿勢によって計測誤差が発生し、例えば、マーカの大きさ、カメラとマーカとの距離、そして、カメラの画角(焦点距離)に応じて、マーカが付けられた物体の位置や姿勢の認識が不定になるという問題が発生するおそれがある。【００１３】
図３左側は、カメラとマーカが近接している場合、あるいはカメラの画角が大きい(広角レンズ)の場合、図３中央は、カメラとマーカが離隔している場合、あるいはカメラの画角が小さい(望遠レンズ)の場合を示している。
カメラとマーカが離隔しているとき、あるいはカメラの画角が小さい(望遠レンズ)ときは、マーカの外枠がレンズの中心軸を法線とする撮像面に投影されると、図３右側に示すように、レンズ中心点とマーカの中心点を通る直線(Visual line)とマーカの平面がなす角度が逆向きに傾斜している場合でも、撮像面におけるマーカ外枠の偏差が小さくなり、両者の判別が不定となり、例えば、ロボティクスの分野では、マーカに対するカメラの姿勢を誤推定し、ロボットハンドが誤った動作を行う原因となる。【００１４】
図４は、レンズ中心とマーカの中心点を通るVisual lineとマーカ中心点における法線がなす角度が４５°のときの実際に撮像された画像を示し、(Camera1)は画角が７.１°のレンズで撮像したときの画像、(Camera2)は画角が４０.０°のレンズで撮像したときの画像である。(Camera2)の画像と比較して、(Camera1)の画像では、正対した場合と大きな差が生じないことが確認できる。【００１５】
図５は、手に持った平板型マーカの姿勢を画像処理により連続的に解析し、得られたマーカの中心点を通る法線(Ｚ軸)のベクトルを矢印で示している。
手の動きに応じて０２、０６、０８では、法線ベクトルが向きが逆転し、この段階で、ＡＲマーカに対するカメラの姿勢推定に揺らぎが発生していることが分かる。【００１６】
こうした誤推定を防止するために、平板型マーカに、高さが互いに異なる立体指標を含め、６点の指標を形成し、外枠に加え、各指標を特定し、平板型マーカに対する各立体指標の位置と高さのデータに基づいて、Ｘ軸、Ｙ軸(マーカ平面上の２次元座標)、Ｚ軸、及び各軸回りの回転角度を解析することが考えられる。
しかし、こうした手法では、マーカに対するカメラの位置や姿勢を確定するために、画像処理により６点の指標を正確に特定する必要がある。しかし、立体指標の陰となる指標については特定できないため、カメラが、６点すべてを正確に撮像できる、限定的な範囲を外れると、正確な位置と姿勢の特定が不可能になってしまう。しかも、各立体指標の位置や、高さをきわめて高精度に選定する必要があり、マーカのコストが大幅に上昇するという問題がある。【００１７】
そこで、本発明では、平板型マーカに付加する立体指標を１点のみとし、しかも、この立体指標を、推定した姿勢が妥当なものかどうかを判定するのみに使用する。そして、誤推定した場合には、すでに演算したマーカに対するカメラの姿勢データを、一定の規則に従って変換するだけで簡単に修正できるようにすることを目的とする。
【課題を解決するための手段】
【００１８】
上記の課題を解決するため、本発明は、平面指標を有するマーカを用いて、該マーカに対するカメラの位置及び姿勢を認識する画像処理システムにおいて、前記マーカに、予め定められた高さを有するひとつの立体指標を、前記平面指標に対して予め定められた位置に配置し、前記カメラの画像により抽出された前記平面指標の配置と、予め定められた前記平面指標の配置を比較することにより、前記マーカに対するカメラの位置と姿勢を推定する第１の推定手段と、前記立体指標の配置及び高さ、並びに、前記第１の推定手段により推定された前記マーカに対するカメラの位置に基づいて、前記カメラの画像上における前記立体指標の上面及び下面の中央位置を推定する第２の推定手段と、前記カメラの画像に基づいて、前記立体指標の上面の中央位置を検出する検出手段と、前記第２の推定手段により推定された前記立体指標の上面及び下面の中央位置と、前記検出手段が検出した前記立体指標の上面及び下面の中央位置とを、前記カメラからみた３次元ベクトルに基づいて比較し、その誤差が所定値以上になったとき、前記第１の推定手段により推定された前記マーカに対するカメラの姿勢が誤りであると判定する判定手段とを備え、前記判定手段が誤りと判定したときは、前記第１の推定手段が推定した前記マーカに対するカメラの姿勢が正しいものとなるよう、前記第１の推定手段により推定された姿勢に基づく前記カメラのＸ軸回りの視線角度及びＹ軸回りの視線角度の符号をそれぞれ反転させた上で、回転変換を行うことにより前記マーカに対するカメラの姿勢を再演算する演算手段を備えようにした。
ただし、Ｘ軸とＹ軸は、前記マーカ上の１点を原点とする３次元座標において、該マーカ平面上で互いに直交する座標軸をそれぞれ示す。
【発明の効果】
【００１９】
本発明によれば、予め定められた高さを有するひとつの立体指標を、平面指標を有するマーカの予め定めた位置に配置するだけで、推定した姿勢が妥当なものかどうかを判定することができ、誤推定した場合には、すでに演算したマーカに対するカメラの姿勢データを、一定の規則に従って変換するだけで簡単に修正できる。したがって、低コストで、しかも、他の立体指標に阻害されることなく、正確かつ確実な姿勢推定が可能となる。
【図面の簡単な説明】
【００２０】
【図１】図１は、一般的なマーカの例を示す図である。
【図２】図２は、マーカを用いたロボットタスクの例を示す図である。
【図３】図３は、カメラとマーカが近接している場合、あるいはカメラの画角が大きい場合(左側)と、カメラとマーカが離隔している場合、あるいはカメラの画角が小さい場合(中央)とを対比し、誤推定が発生するケース(右側)を示す図である。
【図４】図４は、画角が小さいときの画像(Camera1)と、大きいときの画像(Camera2)を対比した図である。
【図５】図５は、手に持ったマーカの姿勢を画像処理により連続的に解析し、得られたマーカの中心点を通る法線(Ｚ軸)方向を示す図である。
【図６】図６は、実施例で用いるマーカの一例を示す図である。
【図７】図７は、立体指標底面の中央部と上面の中央部に形成された白いマーカの推定位置、検出位置の関係を示す図である。
【図８】図８は、カメラを固定し、手に持ったマーカの角度を変えた場合に、正しく推定された場合と誤って推定された場合を対比した図である。
【図９】図９は、マーカの中心点ｃを原点とした３次元座標を示す図である。
【図１０】図１０は、マーカの角度を連続的にゆっくり変化させた場合に、推定された姿勢に基づいて算出された視線角度θVXCの変化を示す図である。
【図１１】図１１は、カメラを固定し、手に持ったマーカの角度を２とおりに変えて、それぞれについて推定された姿勢に基づいて、Ｘ軸回りの視線角度θVXC、Ｙ軸回りの視線角度θVYCを求めた結果を示す図である。
【図１２】図１２は、回転変換を適用した姿勢推定値の修正を説明する図である。
【図１３】図１３は、本実施例の効果を示す実験結果である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施例を図面を用いて説明する。
【実施例】
【００２２】
まず、本実施例で採用するマーカについて説明する。
図６に示すように、平板型マーカは、外枠が２０ｍｍの正方形に、中央に直径１２ｍｍの白色円１、外枠の各頂点から対角線上同一の位置に直径３ｍｍの白色円２、その他の部分が黒色の正方形で構成されている。本実施例では、この平板型マーカの外枠底辺の中心から５ｍｍ離れた地点に、外径４.９ｍｍ、高さ３.２ｍｍの円筒体から立体指標３を貼付した。なお、この立体指標３の上面には、中央部に直径２.２ｍｍの白い円部分を残し、外周が黒塗りされたマーカが形成されている。【００２３】
従来の同様の手法により、まず、画像データから、マーカの四隅に設けた白色円２を平面指標として抽出し、これを解析処理することにより、予め既知となっている、マーカにおける白色円２の位置(この例では、四隅にある白色円の中心で形成される１辺１３.５ｍｍの正方形の各頂点)と対比する。そして、画像処理システムにおける第１の推定手段により、幾何学的な解析に基づいて、カメラの位置(３自由度)及び姿勢(３自由度)を推定する。マーカの四隅にある白色円２を設けることなく、正方形の外枠を画像処理することで４頂点を平面指標として求め、１辺２０.０ｍｍの正方形と対比することにより、マーカに対するカメラの位置を推定してもよい。【００２４】
しかし、これには、前述のように、姿勢を誤推定した場合が含まれる。そこで、図７に示すように、画像処理システムにおける第２の推定手段により、第１の推定手段により推定した平面指標を基準とした、立体指標３上面の中央部に形成された白いマーカの位置Pt,estimatedと、立体指標底面中央部の位置Pb,estimatedの画像平面上の座標を推定する。
一方、画像処理システムにおける検出手段により、画像データから立体指標３上面中央部の白いマーカ中央部の位置を特定し、その位置Pt,detectedを検出する。
姿勢が正確に推定された場合は、Pt,estimatedとPt,detected間の誤差は少ないが、姿勢を誤推定した場合は、Pt,estimatedとPt,detected間の誤差が大きな値となってしまう。【００２５】
そこで、ベクトルＶｄを、Pb,estimatedを起点、Pt,detectedの終点とするベクトル、ベクトルＶｅをPb,estimatedを起点、Pt,estimatedの終点とするベクトル、θをベクトルＶｄとベクトルＶｅのなす角と定義したとき、両ベクトルの内積Ｖｄ・Ｖｅを、
|Ｖｄ||Ｖｄ|で除算することにより、ｃｏｓθの値であるｄを求めることができる。
図８は、カメラを固定し、手に持ったマーカの角度を変えて、それぞれｄの値を求めたものである。左側では正しく判定され、ｄ＝０.９９９９、すなわち、θがほぼゼロとなり、ベクトルＶｄとベクトルＶｅがほぼ同じ向きとなっていることを示している。一方、中央ではｄ＝−０.９９９２、すなわち、θがほぼ１８０°、すなわち、ベクトルＶｄとベクトルＶｅがほぼ逆向きであることを示している。【００２６】
上述のように、カメラに読み取られた画像内でのマーカの位置関係を用いて幾何学的解析を行う際、図９に示されるように、マーカの中心点Ｃを原点とした３次元座標(Ｘ座標、Ｙ座標、Ｚ座標)において、レンズ中心点(Viewpoint)を通る法線(Visual line)をマーカの中心点Ｃに合致させた状態を前提に、この法線(以下、Visual lineと称する。)とＸ軸により規定される平面ＳVXとＸ−Ｚ平面のなす角を、Ｘ軸回りの視線角度θVXCと定義する。
同様に、Visual lineとＹ軸により規定される平面ＳVYとＹ−Ｚ平面のなす角を、Ｙ軸回りの視線角度θVYCと定義する。
Visual lineの３次元ベクトルは、平面ＳVXと平面ＳVYの交線により特定され、これが、マーカに対するカメラの姿勢を示すパラメータとなる。なお、３次元座標の原点は、マーカの中心点ｃに限られることはなく、マーカ平面上のいずれか１点に定めればよい。【００２７】
図１０は、マーカの角度を連続的にゆっくり変化させた場合に、推定された姿勢に基づいて算出された視線角度θVXCの変化(実線の折れ線)と、そのときのｄ(×１０)の値の変化(○印)を示している。この図から分かるように急激に反転した後復帰する点が、誤判定の発生したことを示している。これらの地点では、ｄの値のほとんどが、−０.６以下となっている。したがって、ｄ(×１０)の値が、−６より小さいとき、すなわち、ｄ＜−０.６のとき、第１の推定手段により姿勢が誤推定されたと判定することが可能となる。【００２８】
図１１は、カメラを固定し、手に持ったマーカの角度を２とおりに変えて、それぞれの状態で推定された姿勢に基づいて、Ｘ軸回りの視線角度θVXC、Ｙ軸回りの視線角度θVYCを求めた結果を示している。
各角度とも、手の微小な揺れに応じて姿勢の誤判定が発生し、θVXC、θVYCが急激に変化している。このとき、基本的には、妥当な姿勢推定値と誤った姿勢推定値との間では、Ｘ軸回りの視線角度θVXC、Ｙ軸回りの視線角度θVYCの符号が逆転するという関係にあることが分かる。【００２９】
したがって、姿勢の誤推定が判定されたときは、図１２に示すように、θVXCあるいはθVYCを反転させた位置に正しい視点Ｐmを設定し、誤推定値から計算された誤った視点ＰiをＰmに戻すような回転変換を適用して姿勢推定値を修正することができる。【００３０】
ここで、誤って判定されたマーカに対する視点をＰi、修正された視点をＰmとする。
マーカの中心点ＣとＰiを結ぶベクトルをＣＰi、マーカの中心点ＣとＰmを結ぶベクトルをＣＰm、両ベクトルのなす角をρとしたとき、ベクトルＣＰiとベクトルＣＰmの外積により、両ベクトルに垂直方向の回転軸ベクトルａ(ａx ａy ａz)Tを求めることができる。
すなわち、
【数１】
2015045834.tif 000003
そして、回転変換マトリクスＲρは、次のように求めることができる。
【数２】
2015045834.tif 000004
ただし、ｃ＝ｃｏｓρ、ｓ＝ｓｉｎρ、Ｃ＝(１−ｃｏｓρ)である。【００３１】
変換マトリクスＭと、回転変換マトリクスＲρは、幾何学的にＭ＝Ｒρ-1の関係にあることから、画像処理システムにおける演算手段により、修正前のマーカに対する姿勢をＲini、修正後のマーカに対する姿勢をＲmodとしたとき、Ｒmod＝Ｒini・Ｍを用いて修正後の姿勢を表すＲmodを求めることができる。【００３２】
図１３を用いて、本実施例による効果を検証する。図１３左側はＸ軸回り(θVXC)、右側がＹ軸回り(θVYC)の計測結果を示し、上から順に、従来の解析結果、濃淡パターンを変化させるレンズを用いた場合の解析結果(ＶＭＰ)、濃淡パターンを変化させるレンズと本実施例を組み合わせた場合の解析結果、本実施例のみを利用した解析結果を示している。
この結果、濃淡パターンを変化させるレンズを用いたＶＭＰの場合、誤判定が最も低減されているが、濃淡パターンを変化させるレンズを用いなくても、誤判定が最も効果的に低減されていることが分かる。【００３３】
次に本実施例で用いる立体指標を付加したマーカについて説明する。本実施例では、既存の外枠が２０ｍｍの正方形のマーカを用いて、外枠底辺の中心から５ｍｍ離れた地点に、外径４.９ｍｍ、高さ３.２ｍｍの円筒体から立体指標を接着剤などにより貼付して形成したが、例えば、平板型マーカの台紙に立体指標を一体形成する等、様々な形態を採用することができる。
ただし、こうした立体指標の平面指標に対する配置や高さは、上記の変換を行う際、画像処理装置が既知のデータとして所得する必要があるため、これらのパラメータは画像処理装置内のデータファイルに予め記憶しておく必要がある。もちろん、平板型マーカ自体にQRCode等を組み込み、画像処理装置側で、立体指標に関わる各データを読み込むようにする。
なお、各平板型マーカに貼付する立体指標の配置、高さなどの仕様を予め定めておいて、画像処理側に初期値として記録しておいてもよい。
【産業上の利用可能性】
【００３４】
以上説明したように、本発明によれば、予め定められた高さを有するひとつの立体指標を、平面指標を有するマーカの予め定めた位置に配置するだけで、推定した姿勢が妥当なものかどうかを判定することができ、誤推定した場合には、すでに演算したマーカに対するカメラの姿勢データを、一定の規則に従って変換するだけで簡単に修正できる。
したがって、低コストで、しかも、他の立体指標を阻害することなく、正確かつ確実な姿勢推定が可能な画像処理システムとして広く採用されることが期待できる。
【符号の説明】
【００３５】
１      マーカ中央の白色円
２      外枠の各頂点から対角線上同一の位置に配置した白色円
３      立体指標
【図１】
2015045834.tif 000005
【図２】
2015045834.tif 000006
【図３】
2015045834.tif 000007
【図４】
2015045834.tif 000008
【図５】
2015045834.tif 000009
【図６】
2015045834.tif 000010
【図７】
2015045834.tif 000011
【図８】
2015045834.tif 000012
【図９】
2015045834.tif 000013
【図１０】
2015045834.tif 000014
【図１１】
2015045834.tif 000015
【図１２】
2015045834.tif 000016
【図１３】
2015045834.tif 000017
【国際調査報告】
2015045834.tif 000018
2015045834.tif 000019
2015045834.tif 000020
2015045834.tif 000021