(57)【要約】【課題】複数のキーポイント候補の中からマーカ上のキーポイントを絞り込むことでマーカ位置を容易に認識すること。【解決手段】マーカ位置認識装置は、マーカ画像を取得する画像取得手段と、取得されたマーカ画像に対して外乱を与えることでスケールスペース画像群を生成し、該生成したスケールスペース画像群間の差分に基づいて、マーカ画像におけるキーポイント候補を検出する検出手段と、検出されたキーポイント候補の中から、該キーポイント候補のスケールスペース画像群間の差分に基づいて、光学特性の勾配と関係するヘッセ行列の行列式の値を算出し、該算出した行列式の値が所定値よりも大きくなるキーポイント候補を抽出し、該抽出したキーポイント候補をマーカ上のキーポイントとして選択する選択手段と、選択されたキーポイントの位置に基づいて、マーカの位置を認識する認識手段と、を備える。【選択図】図２
2017091130.tif 000002
【特許請求の範囲】
【請求項１】
光学特性が異なる領域が同心円状に配置されたマーカの位置を認識するマーカ位置認識装置であって、
前記マーカが含まれる画像を取得する画像取得手段と、
前記画像取得手段により取得されたマーカが含まれる画像に対して外乱を与えることでスケールスペース画像群を生成し、該生成したスケールスペース画像群間の差分に基づいて、前記マーカが含まれる画像におけるキーポイント候補を検出する検出手段と、
前記検出手段により検出されたキーポイント候補の中から、該キーポイント候補のスケールスペース画像群間の差分に基づいて、前記光学特性の勾配と関係するヘッセ行列の行列式の値を算出し、該算出した行列式の値が所定値よりも大きくなるキーポイント候補を抽出し、該抽出したキーポイント候補を前記マーカ上のキーポイントとして選択する選択手段と、
前記選択手段により選択されたキーポイントの位置に基づいて、前記マーカの位置を認識する認識手段と、
を備えることを特徴とするマーカ位置認識装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マーカ位置を認識するマーカ位置認識装置に関するものである。
【背景技術】
【０００２】
特定のＳＩＦＴ（Scale-Invariant Feature Transform）特徴量を含むマーカを生成するマーカ生成装置が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−２２８８１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば、ＳＩＦＴ特徴量を含むマーカ位置を認識する場合、マーカの入力画像から、ぼかし方を変えた複数の画像群を生成し、その画像群間の差分から、キーポイントを検出するスケールスペース処理を行う（本出願人が提案した特願２０１４−２４４３１２など）。この場合、マーカの存在位置を示すキーポイント候補が多数検出されることがあり、マーカ位置の認識が困難であった。
【０００５】
本発明は、このような問題点を解決するためになされたものであり、複数のキーポイント候補の中からマーカ上のキーポイントを絞り込むことで、マーカ位置を容易に認識できるマーカ位置認識装置を提供することを主たる目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するための本発明の一態様は、光学特性が異なる領域が同心円状に配置されたマーカの位置を認識するマーカ位置認識装置であって、前記マーカが含まれる画像を取得する画像取得手段と、前記画像取得手段により取得されたマーカが含まれる画像に対して外乱を与えることでスケールスペース画像群を生成し、該生成したスケールスペース画像群間の差分に基づいて、前記マーカが含まれる画像におけるキーポイント候補を検出する検出手段と、前記検出手段により検出されたキーポイント候補の中から、該キーポイント候補のスケールスペース画像群間の差分に基づいて、前記光学特性の勾配と関係するヘッセ行列の行列式の値を算出し、該算出した行列式の値が所定値よりも大きくなるキーポイント候補を抽出し、該抽出したキーポイント候補を前記マーカ上のキーポイントとして選択する選択手段と、前記選択手段により選択されたキーポイントの位置に基づいて、前記マーカの位置を認識する認識手段と、を備えることを特徴とするマーカ位置認識装置である。
この一態様によれば、マーカの光学特性の勾配を利用して、複数のキーポイント候補の中から、マーカ上のキーポイントを絞り込むことで、マーカ位置を容易に認識できる。
【発明の効果】
【０００７】
本発明によれば、複数のキーポイント候補の中からマーカ上のキーポイントを絞り込むことで、マーカ位置を容易に認識できるマーカ位置認識装置を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】マーカのパターン形状の一例を示す図である。
【図２】本発明の一実施形態に係るマーカ位置認識装置の概略的なシステム構成を示すブロック図である。
【図３】平滑画像群及び差分画像群の一例を示す図である。
【図４】キーポイントとなる画素の一例を示す図である。
【図５】エッジ、コーナー、及びフラットの領域の一例を示す図である。
【図６】（ａ）乃至（ｃ）本発明の一実施形態に係るマーカ位置認識装置により絞り込んだキーポイントを示す図である。
【図７】本発明の一実施形態に係るマーカ認識方法の処理フローを示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、図面を参照して本発明の実施の形態について説明する。
本発明の一実施形態に係るマーカ位置認識装置は、例えば、ロボットなどに搭載され、マーカはそのロボットが操作を行うアイテムに付けられる。マーカ位置認識装置はマーカの位置を認識することで、そのアイテムの位置、姿勢、距離などを認識することができる。特に、人型ロボットなどは、複雑な動作を行い異なる方向から及び距離でアイテムのマーカを見るため、そのマーカの見え方も大きく異なる。本実施形態に係るマーカ位置認識装置は、そのような見え方の異なるマーカでも、常時高精度に認識できるものである。
【００１０】
マーカは、例えば、ＳＩＦＴ（Scale-Invariant Feature Transform）特徴量を含むように設計されている。マーカは、例えば、その中心にＳＩＦＴ特徴量を含むように設計されている。ＳＩＦＴ特徴量は、並進、回転、スケールの拡縮、照明変化、などの外乱にロバストな所定の特徴量である。
【００１１】
なお、マーカは、ＳＩＦＴ特徴量を含むように設計されているが、これに限定されない。マーカは、例えば、ＳＵＲＦ（Speed-Up Robust Features）特徴量を含むように設計されていてもよく、並進、回転、スケールの拡縮、照明変化などにロバストな、任意の特徴量を含んでいてもよい。
【００１２】
マーカのパターン形状は、例えば、図１に示す如く、円形状を含むように設計されている。マーカのパターン形状には、光学特性（輝度や色相など）が異なる領域が同心円状に配置されている。マーカのパターン形状において、例えば、同心円の中心に後述のキーポイントが設けられ、１、３及び５番目の円環領域を白領域、２及び４番目の円環領域を緑領域としている。
【００１３】
マーカの円形状は、回転や傾きなどに対しロバストである。また、円形状が同心円形状の場合、スケール変化において複数回キーポイントが出現する。このため、回転や傾きなどに対しよりロバストである。
【００１４】
図２は、本発明の一実施形態に係るマーカ位置認識装置の概略的なシステム構成を示すブロック図である。本実施形態に係るマーカ位置認識装置１は、マーカの画像（マーカ画像）を取得する画像取得部２と、マーカ画像に基づいて処理を行うスケールスペース処理部３と、複数のキーポイント候補の中からキーポイント選択するキーポイント選択部４と、マーカを認識するマーカ認識部５と、を有している。
【００１５】
マーカ位置認識装置１は、例えば、演算処理等と行うＣＰＵ（Central Processing Unit）、ＣＰＵによって実行される演算プログラム、制御プログラム等が記憶されたＲＯＭ（Read Only Memory）やＲＡＭ（Random Access Memory）からなるメモリ、外部と信号の入出力を行うインターフェイス部（Ｉ／Ｆ）、などからなるマイクロコンピュータを中心にして、ハードウェア構成されている。ＣＰＵ、メモリ、及びインターフェイス部は、データバスなどを介して相互に接続されている。
【００１６】
画像取得部２は、画像取得手段の一具体例であり、例えば、カメラ２１を用いて、アイテムなどに付けられたマーカを撮影し、そのマーカ画像を取得する。画像取得部２は、取得したマーカ画像をスケールスペース処理部３に出力する。
【００１７】
スケールスペース処理部３は、検出手段の一具体例であり、画像取得部２から出力されるマーカ画像に対して、以下に述べるスケールスペース処理を行って、ＳＩＦＴのキーポイントを検出（SIFT-Localization）する。なお、キーポイントは、例えば、マーカ画像が並進、回転、スケールの拡縮、照明変化などしても、同一位置に出現し易い性質を有している。
【００１８】
スケールスペース処理部３は、まず、マーカ画像にスケールの異なるガウス関数を乗算して複数の平滑画像群（スケールスペース画像群）を生成する。スケールスペース処理部３は、生成した平滑画像群間の差分を示す差分画像群（ＤｏＧ（Difference-of-Gaussian）画像）を生成する。
【００１９】
例えば、スケールスペース処理部３は、図３に示す如く、各マーカ画像に対して、スケールの異なるガウス関数（σ０、ｋσ０、ｋ２σ０、ｋ３σ０、ｋ４σ０）を夫々乗算して複数の平滑画像群を生成する。スケールスペース処理部３は、生成した平滑画像群間の差分を示す差分画像群（Ｄ（σ０）、Ｄ（ｋσ０）、Ｄ（ｋ２σ０）、Ｄ（ｋ３σ０））を夫々生成する。
【００２０】
なお、スケールスペース処理部３は、マーカ画像にスケールの異なるガウス関数を乗算して（ガウイアンぼかしを与えて）、複数の平滑画像群を生成しているが、これに限定されない。スケールスペース処理部３は、マーカ画像にガウシアンぼかし以外の他の外乱（例えば、ガウス関数を近似したような変化ならよく、色調を変化させてもよい）を与えて、複数の平滑画像群を生成してもよい。  
【００２１】
スケールスペース処理部３は、生成した差分画像群の中で、極値（極小あるいは極大）を示す位置をキーポイントとし、そのＳＩＦＴの中心点として検出する。例えば、スケールスペース処理部３は、図４に示す如く、連続してスケールが異なる差分画像を３つ選択する。そして、スケールスペース処理部３は、その選択した差分画像において、注目画素の周辺の２６つの近傍画素を比較して、極値となる画素をキーポイントとして検出する。
スケールスペース処理部３は、以上のようにして、複数のキーポイント候補を検出する。
【００２２】
ところで、マーカは、上記の如くＳＩＦＴ特徴量を含む。このため、従来、実際にマーカの存在する位置でキーポイント候補を検出するが、そのマーカの位置以外の環境位置でもキーポイント候補を多数検出することがある。このようにマーカ位置以外でキーポイント候補が多数検出されると、マーカ位置の認識が困難となる。
ここで、マーカには、一般に、人工的に大きな光学特性（輝度や色相など）の勾配がつけられており、一方、マーカ以外の自然環境においては、それほど大きな光学特性の勾配がつけられていない。
【００２３】
本実施形態においては、このマーカの光学特性の勾配を利用して、複数のキーポイント候補の中から、マーカ上のキーポイントを絞り込む。これにより、マーカ位置を容易に認識できる。
【００２４】
キーポイント選択部４は、選択手段の一具体例である。キーポイント選択部４は、スケールスペース処理部３により検出されたキーポイント候補の中から、該キーポイント候補のＤｏＧ画像に基づいて、光学特性の勾配と関係するヘッセ行列の行列式の値を算出する。そして、キーポイント選択部４は、該算出した行列式の値が所定値よりも大きくなるキーポイント候補を抽出し、該抽出したキーポイント候補をマーカ上のキーポイントとして選択する。  
【００２５】
キーポイント選択部４は、スケールスペース処理部３により検出された複数のキーポイント候補の中から、例えば、マーカ上のキーポイントを以下のようにして選択する。
キーポイント選択部４は、スケールスペース処理部３により検出された各キーポイント候補に対応するＤｏＧ画像（スケールスペース画像群間の差分）に基づいて、ヘッセ行列Ｈを算出する。Ｄを、キーポイントとその周辺画素におけるＤｏＧ画像として、ヘッセ行列Ｈは下記式により表現できる。
【数１】
2017091130.tif 000003
【００２６】
キーポイント選択部４は、算出したヘッセ行列Ｈの主曲率（ヘッセ行列Ｈの第１固有値α及び第２固有値β）を算出する。
キーポイント選択部４は、下記行列式の値（αβ）を算出する。
行列式：Ｄｅｔ（Ｈ）＝αβ＝ＤｘｘＤｙｙ−（Ｄｘｙ）２
この行列式の値は、後述の如く、光学特性上の勾配と関係し、上記ＤｏＧ画像の２階微分値を表している。
【００２７】
キーポイント選択部４は、上記ヘッセ行列の行列式の値（αβ）に基づいて、エッジ又はコーナー上のキーポイント候補を判別する。
ここで、第１及び第２固有値α、βは、以下の特性を有している。図５に示す如く、第１及び第２固有値α、βがいずれも小さい場合、光学的な変化量が小さいフラット（Flat）となる。第１及び第２固有値α、βがいずれも大きい場合、ある２方向あるいはそれ以上の方向に光学的な変化量（光学特性の勾配）が大きい境界線が存在するコーナー（Corner）となる。第１固有値α＞＞第２固有値β、又は、第２固有値β＞＞第１固有値αの場合（第１及び第２固有値α、βの一方のみが大きい場合）、ある１方向にのみ光学的な変化量（光学特性の勾配）が大きい境界線が存在するエッジ（Edge）となる。
【００２８】
マーカのパターン形状には、上述の如く、光学特性が異なる領域が同心円状に配置されている。このため、マーカ上には、上述した光学特性の勾配が大きいエッジ又はコーナーが存在する。エッジ又はコーナーでは、上記の如く、第１及び第２固有値α、βのいずれか一方又は両方が大きくなるため、上記ヘッセ行列の行列式の値（αβ）は、ある一定値（所定値）よりも大きくなる。したがって、本実施形態においては、ヘッセ行列の行列式の値（αβ）を判定することで、エッジ又はコーナーを捉え、そのエッジ又はコーナー上のキーポイント候補を選択することで、マーカ上のキーポイント候補を選択できる。
【００２９】
キーポイント選択部４は、ａｂｓ（αβ）＞所定値であるか否かを判定することで、エッジ又はコーナー上のキーポイント候補を判別する。例えば、図５に示すようにエッジ領域又はコーナー領域にあるときのα、β値を求め、その求めたα、β値から上記所定値を設定する。所定値には、例えば、０．００００１が設定されている。この所定値は、予めマーカ毎に実験的に求めてメモリに設定されている。
【００３０】
キーポイント選択部４は、算出したａｂｓ（αβ）＞所定値であるとき、そのキーポイント候補がエッジ又はコーナー上、すなわち、マーカ上にあると判断し、キーポイントとして選択する。一方、キーポイント選択部４は、算出したａｂｓ（αβ）＞所定値でないとき、そのキーポイント候補がフラット上、すなわち、マーカ上にないと判断する。
【００３１】
図６（ａ）乃至（ｃ）は、本実施形態に係るマーカ位置認識装置により絞り込んだキーポイントを示す図であり、シミュレーション結果を示す図である。画像取得部２は、例えば、図６（ａ）に示すマーカ画像を取得する。スケールスペース処理部３は、画像取得部２から取得されたマーカ画像に対して、スケールスペース処理を行って、図６（ｂ）に示すような多数のキーポイント候補を検出する（スケール：σｋ２）。さらに、キーポイント選択部４は、スケールスペース処理部３により検出された多数のキーポイント候補の中から、図６（ｃ）に示すような単一のキーポイント候補を抽出し、該抽出したキーポイント候補をマーカ上のキーポイントとして選択できる。このように、図６（ｂ）のようにマーカ位置以外でも多数のキーポイント候補が検出されるが、図６（ｃ）のようにマーカ上に存在するキーポイントのみを選択できる。
【００３２】
マーカ認識部５は、認識手段の一具体例であり、キーポイント選択部４により選択されたキーポイントの位置に基づいて、マーカの位置を認識する。マーカ画像のキーポイントは、マーカが並進、回転、スケールの拡縮、照明変化などしても、変化し難い。したがって、マーカ画像のキーポイントの位置に基づいて、マーカの位置を認識することで、マーカの配置（向き、スケール）に依存することなく、正確にマーカの位置を認識できる。すなわち、マーカの見え方に依存せず、マーカを高精度に認識できる。
【００３３】
マーカ認識部５は、スケールスペース処理部３から出力されるキーポイントの位置をマーカの位置とする。そして、マーカ認識部５は、上記判断したマーカが存在するキーポイントの位置と、そのキーポイントのスケールと、に基づいてマーカの位置を認識する。
【００３４】
さらに、キーポイントに対応するスケール（ガウス関数）によって、その画像サイズが決まる。したがって、マーカ認識部５は、スケールスペース処理部３により検出されたキーポイントに対応するスケールに基づいて、マーカのサイズを認識することができる。例えば、マーカ認識部５は、上記判断したマーカ内に存在するキーポイントのスケールをマーカのサイズとして認識する。このように、マーカ画像のキーポイントを認識することで、マーカの位置だけでなく、マーカのサイズも同時に認識することができる。
【００３５】
図７は、本実施形態１に係るマーカ位置認識方法の処理フローを示すフローチャートである。画像取得部２は、カメラ２１を用いて、アイテムなどに付けられたマーカを撮影し、そのマーカ画像を取得する（ステップＳ１０１）。画像取得部２は、取得したマーカ画像をスケールスペース処理部３に出力する。
【００３６】
スケールスペース処理部３は、画像取得部２から出力されたマーカ画像にスケールの異なるガウス関数を乗算して平滑画像群を生成する（ステップＳ１０２）。スケールスペース処理部３は、生成した平滑画像群間の差分を示す差分画像群を生成する（ステップＳ１０３）。スケールスペース処理部３は、生成した差分画像群の中で、極値を示す位置をキーポイント候補として検出する（ステップＳ１０４）。
【００３７】
キーポイント選択部４は、スケールスペース処理部３により検出されたキーポイント候補の中から、該キーポイント候補のＤｏＧ画像に基づいて、光学特性の勾配と関係するヘッセ行列の行列式の値を算出する（ステップＳ１０５）。キーポイント選択部４は、該算出した行列式の値が所定値よりも大きくなるキーポイント候補を抽出し、該抽出したキーポイント候補をマーカ上のキーポイントとして選択する（ステップＳ１０６）。  
【００３８】
マーカ認識部５は、キーポイント選択部４により選択されたキーポイントの位置及びスケールに基づいて、マーカの位置を認識する（ステップＳ１０７）。さらに、マーカ認識部５は、スケールスペース処理部３から出力されるキーポイントのスケールに基づいて、マーカのサイズを認識する（ステップＳ１０８）。
【００３９】
以上、本実施形態に係るマーカ位置認識装置１において、キーポイント選択部４は、スケールスペース処理部３により検出されたキーポイント候補の中から、該キーポイント候補のＤｏＧ画像に基づいて、光学特性の勾配と関係するヘッセ行列の行列式の値を算出する。そして、キーポイント選択部４は、該算出した行列式の値が所定値よりも大きくなるキーポイント候補を抽出し、該抽出したキーポイント候補をマーカ上のキーポイントとして選択する。これにより、マーカの光学特性の勾配を利用して、複数のキーポイント候補の中から、マーカ上のキーポイントを絞り込む。したがって、マーカ位置を容易に認識できる。
【００４０】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【符号の説明】
【００４１】
１  マーカ位置認識装置、２  画像取得部、３  スケールスペース処理部、４  キーポイント選択部、５  マーカ認識部、２１  カメラ
【図１】
2017091130.tif 000004
【図２】
2017091130.tif 000005
【図３】
2017091130.tif 000006
【図４】
2017091130.tif 000007
【図５】
2017091130.tif 000008
【図６】
2017091130.tif 000009
【図７】
2017091130.tif 000010