以下、本発明に係るマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムの好ましい実施形態について、図面を参照して説明する。
[マーカ生成装置及びマーカ生成方法の第一実施形態]
まず、本発明のマーカ生成装置及びマーカ生成方法の第一実施形態について、図1を参照して説明する。同図は、本実施形態のマーカ生成装置の構成を示すブロック図である。
(マーカ生成装置)
図1に示すように、マーカ生成装置1aは、特異特徴選択手段10と、マーカパターン生成手段20aとを備えている。
ここで、特異特徴選択手段10は、図2に示すように、特異特徴記憶部11と、特異特徴選択部12とを有している。
特異特徴記憶部11は、「特徴点検出テーブル」と「特異特徴テーブル」とを記憶する。
「特徴点検出テーブル」は、特徴空間における各区画の座標と、各区画に配置された特徴点の数を示すテーブルである。この「特徴点検出テーブル」は、図3に示すように、「区画番号」(ア)と、「区画のx座標」(イ)と、「区画のy座標」(ウ)と、「特徴点数」(エ)とを項目として構成することができる。
「区画番号」は、特徴空間を複数の区画に区切ったときに、各区画ごとに付されたシリアル番号である。
「区画のx座標」は、その区画が位置するx座標である。
「区画のy座標」は、その区画が位置するy座標である。
「特徴点数」は、その区画に位置する特徴点の数である。
なお、特徴空間が三次元で表わされるときは、「特徴点検出テーブル」には、さらに「区画のz座標」を項目として設けることができる。
「特異特徴テーブル」は、特異特徴に関する情報で構成されたテーブルである。この「特異特徴テーブル」は、図4に示すように、「特異特徴番号」(ア)と、「区画番号」(イ)と、「区画のx座標」(ウ)と、「区画のy座標」(エ)と、「特徴点数」(オ)とを項目として構成することができる。
「特異特徴番号」は、各特異特徴ごとに付されたシリアル番号である。
「区画番号」は、特異特徴として選択された区画の区画番号である。
「区画のx座標」は、その特異特徴として選択された区画の位置するx座標である。
「区画のy座標」は、その特異特徴として選択された区画の位置するy座標である。
「特徴点数」は、その特異特徴に位置する特徴点の数である。
なお、「特異特徴テーブル」の「区画番号」、「区画のx座標」、「区画のy座標」、「特徴点数」は、「特徴点検出テーブル」の「区画番号」、「区画のx座標」、「区画のy座標」、「特徴点数」に対応している。また、特徴空間が三次元で表わされるときは、「特異特徴テーブル」には、さらに「区画のz座標」を項目として設けることができる。
特異特徴選択部12は、外部から「特徴点検出テーブル」を入力すると、これを特異特徴記憶部11に記憶させる。
また、特異特徴選択部12は、特徴空間において特徴点の数が所定数以下の区画を特異特徴として選択する。すなわち、特異特徴選択部12は、所定のタイミングで、特異特徴記憶部11から「特徴点検出テーブル」を取り出す。そして、特異特徴選択部12は、この取り出した「特徴点検出テーブル」の「特徴点数」を参照し、この「特徴点数」に示された特徴点数のうち、所定数以下である特徴点数を抽出し、この抽出した特徴点数に関連付けられた区画番号の区画を特異特徴として選択する。
具体的には、例えば、所定数を「1」とした場合、図3に示す「特徴点検出テーブル」においては、区画番号k51、k85、k96が特異特徴として選択される。なお、所定数は、本実施形態においては、所定数を「1」としたが、「1」に限るものではなく、「0」や「2」以上であってもよい。
続いて、特異特徴選択部12は、選択した特異特徴に関連するデータを「特徴点検出テーブル」から抽出し、「特異特徴テーブル」としてまとめる。このとき、各特異特徴にシリアル番号(特異特徴番号)を付して、「特異特徴テーブル」に追加する。そして、特異特徴選択部12は、その「特異特徴テーブル」を特異特徴記憶部11に記憶させる。
このように、特異特徴選択部12は、特徴空間において特徴点が所定数以下(0を含む)の区画を特異特徴として選択する。つまり、特異特徴選択部12は、第三実施形態でも説明するように、背景映像から抽出した特徴点が所定数以下の特徴空間の部位を特異特徴として選択する。これにより、特異特徴選択部12は、背景パターンと一致しない特徴を抽出でき、マーカパターン生成手段20aは、その特異特徴を用いて、背景パターンと一致しないマーカパターンを生成することができる。
ただし、事後に、意に反して特徴点の抽出誤差などにより、特異特徴が背景パターンと類似してしまうことを避けるために、特徴空間内で背景パターンの特徴が存在しないより大きな領域から特異特徴を選択するようにしてもよい。
この特異特徴の選択処理は、特徴空間中の特徴点の分布から大きな空白を見つける問題と同一視できるから、例えば、2003年文書解析認識国際会議予稿集に掲載されている「An algorithm for Finding Maximal Whitespace Rectangles at Arbitrary Orientations for Document Layout Analysis」などのアルゴリズムを使用して、大きな空白領域を抽出しても良いし、得られた特徴点を含まない矩形領域の中心を特異特徴としても良い。
その他の方法としては、特徴空間を特定の大きさのメッシュで量子化し、1次元もしくは多次元のヒストグラムを生成し、特徴点の発生頻度が0又は所定数以下となるメッシュの中心を特異特徴とするなどしても良い。頻度が0又は所定数以下となるメッシュが存在しない場合、メッシュの大きさを小さくして、ヒストグラムをとり、頻度が0又は所定数以下となるメッシュが現れた場合、このときのメッシュから特異特徴を選択するようにしても良い。頻度が0又は所定数以下となるメッシュが見つからない場合は、ヒストグラムを既定値で閾値処理し、既定値以下のメッシュから特異特徴を選択しても良い。
特異特徴選択部12が選択した特異特徴の例を、図5、図6に示す。図5に示す特徴空間(特異特徴配置図)においては、特異特徴とされた区画を白色で表し、特異特徴とされなかった区画をグレーの網掛けで表している。図6は、図5に示す特異特徴配置図にもとづき、特異特徴のそれぞれを黒丸「●」で表した図である。なお、特異特徴は、特徴点が所定数以下の区画で構成することもでき、また、これら区画とともに、特徴空間(特異特徴配置図)の中心点を加えて特異特徴とすることもできる。
マーカパターン生成手段20aは、図2に示すように、マーカパターン生成部21と、マーカ記憶部22とを有している。
マーカパターン生成部21は、特異特徴記憶部11から「特異特徴テーブル」を取り出す。そして、マーカパターン生成部21は、その「特異特徴テーブル」に示された特異特徴を用いてマーカパターンを生成する。
ここで、マーカパターン生成部21は、複数の特異特徴の中から一又は二以上の特異特徴を選択し、これを使用特異特徴とする。そして、マーカパターン生成部21は、この使用特異特徴を用いてマーカパターンを生成する。
使用特異特徴は、一又は二以上の特異特徴の組み合わせによって構成される。この特異特徴の組み合わせの数は、特異特徴の数に応じて決まる。つまり、特異特徴の数が複数個(tn個)の場合、特異特徴の組み合わせは、{(2tn)−1}通りとなる。具体的には、例えば、特異特徴が、図6に示すように、五個(t1〜t5)の場合、特異特徴の組み合わせは、図7に示すように、31通りとなる。すなわち、特異特徴が五つあるときは、最大で31種類マーカパターンを生成できることになる。
なお、ここでいう「組み合わせ」は、1からtnまでの間のすべての数を対象とした組み合わせをいう。このため、例えば、nCmで表される「重複を持たない組み合わせ」や、nHrで表される「重複組み合わせ」のように、n個の数字の中から取り出される数字の数がmやrのように一つに限定されるものではない。ただし、ここでいう「組み合わせ」は、1〜tnのうちの一つの数を対象とした組み合わせとすることもできる。
マーカパターン生成部21は、このように、複数通りある特異特徴の組み合わせの中から、一又は二以上の組み合わせを選択する。この選択は、ランダムに行なうこともできるが、ある規則性をもって行なうこともできる。この特異特徴の組み合わせの選択方法については、後記の「使用特異特徴の選択方法」で詳述する。
続いて、マーカパターン生成部21は、使用特異特徴を用いてマーカパターンを生成する。
マーカパターンの生成方法には、種々の方法がある。例えば、画像中の頂点、交差点、端点を特徴点として使用する場合を例に説明する。
前述した「On the option detection of curves in noisy pictures」に記載の方法などにもとづく場合、マーカパターンの生成に必要になる、特徴点群の検出は、特徴抽出手段40で使用している特徴点検出アルゴリズムに依存する。
例えば、下記のようなマーカパターンの生成方法が例として挙げられる。
(1)特異特徴位置に交差点(十字マーク)を配置したパターン(図8(i))
(2)特異特徴の凸包を求め、内部を特定の色で塗り潰す。さらに、凸包に使用されなかった特異特徴を用いて再度凸包を求め、内部を別の色で塗り潰す。このような処理を、すべての特徴が使用されるまで反復して生成されるパターン(図8(ii))
(3)特異特徴位置を頂点にもつ、水平垂直の辺を有する、塗り潰した矩形の集合からなるパターン(図8(iii))
(4)特異特徴点の最近傍点間を線分で結んだパターン(図8(iv))
なお、図8(i)〜(iv)に示したパターンは、図6に示す五つの特異特徴のすべてを使用特異特徴として選択した場合である。
これに対し、図6に示す五つの特異特徴のうち四つの特異特徴を使用特異特徴として選択した場合は、図9(i)〜(iv)に示すようなパターンを生成できる。
また、特徴抽出手段(後述)が明度値又は色差値を使用して特徴を抽出した場合、マーカを物体に付する装置は、特異特徴に対応する明度値、色差値に対応する塗料でマーカを印刷してもよい。
また、頂点、交差点、端点を図形的な特徴として利用する方法と、明度値や色差値を特徴として利用する方法とを併用することも可能である。この場合、マーカパターン生成部21は、選定された特異特徴に対応する明度、色、形状に対応するマーカを生成すればよい。
マーカ記憶部22は、マーカパターン生成部21で生成されたマーカに関するデータを記憶する。
例えば、マーカパターンが図8(i)に示すような場合は、特異特徴の座標が記憶される。また、図8(ii)に示すような場合は、特異特徴の座標の他に、凸包を構成する座標が記憶される。
(使用特異特徴の選択方法)
次に、マーカパターン生成部21で実行される使用特異特徴の選択方法について、説明する。
マーカパターン生成部21は、「特異特徴テーブル」に示された特異特徴を用いてマーカパターンを生成する。
ここで、マーカパターン生成部21は、複数の特異特徴の中から、マーカパターンの生成に用いる特異特徴を一又は二以上選択し、これを使用特異特徴とする。
使用特異特徴を選択する手法には、次の四つがある。
(1)特異特徴の数が多くなるように、使用特異特徴を選択する
(2)各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する
(3)二つの使用特異特徴群における各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する
(4)二つのマーカについてそれらの形状の相違の程度が大きくなるように、使用特異特徴を選択する
以下、(1)〜(4)の順に説明する。
(1)特異特徴の数が多くなるように、使用特異特徴を選択する
特異特徴選択手段10で特異特徴が複数選択された場合、マーカパターン生成部21は、それら複数の特異特徴の中から一又は二以上の特異特徴を使用特異特徴として選択することができる。
例えば、図6に示すように、特異特徴が五つある場合、選択可能な特異特徴の組み合わせは、図7に示すように、31通りとなる。このとき、使用特異特徴として選択される特異特徴の数は、一つ、二つ、三つ、四つ、五つのうちのどれかである。
ここで、マーカの頑健性に着目すると、使用特異特徴として選択される特異特徴の数は、多い方がよい。
マーカの頑健性とは、環境に左右されないマーカ検出の確実さをいう。
例えば、マーカ検出時において、そのマーカの一部が何らかの理由で遮られた場合を想定する。ここで、マーカ全体から抽出される特徴点が3個のとき、うち2個が遮られると、このマーカの検出は、残り1個で判断することになる。一方、マーカ全体の特徴点が10個のとき、うち2個が遮られても、他の8個で判断できる。つまり、特徴点の数が異なるマーカが同様の環境下に置かれた場合、特徴点が多い方が、判断要素が多くなるので、マーカを確実に検出できる。このことから、特徴点の数が多いマーカは、少ないマーカに比べて頑健性が高いと言える。
そこで、頑健性の高いマーカを生成するためには、マーカパターン生成部21に、使用特異特徴として特異特徴の数を多く選択させることがよい。
例えば、マーカパターンを一つだけ生成する場合は、特異特徴のすべて(図6においては、特異特徴t1,t2,t3,t4,t5のすべて)を使用特異特徴として選択する。
また、マーカパターンを二つ生成する場合は、五つの特異特徴のすべてを第一の使用特異特徴として選択し、四つの特異特徴の組み合わせ(例えば、t1,t2,t3,t4)を第二の使用特異特徴として選択することができる。
さらに、マーカパターンを三つ生成する場合は、五つの特異特徴のすべてを第一の使用特異特徴として選択し、四つの特異特徴の組み合わせ(例えば、t1,t2,t3,t4)を第二の使用特異特徴として選択し、この第二の使用特異特徴として選択された四つの特異特徴の組み合わせ以外の四つの特異特徴の組み合わせ(例えば、t2,t3,t4,t5)を第三の使用特異特徴として選択することができる。
ここで、五つの特異特徴(t1,t2,t3,t4,t5)のすべてを選択した使用特異特徴群を全指定特異特徴群と称する場合、マーカパターン生成部21は、生成する二以上のマーカパターンのうちの一つのマーカパターンの使用特異特徴群を全指定特異特徴群とすることができる。また、マーカパターン生成部21は、全指定特異特徴群を用いずに(四つ、三つ又は二つの特異特徴で構成される使用特異特徴群のみによって)、二以上のマーカパターンの使用特異特徴のすべてを選択することもできる。
これは、全指定特異特徴群と、これ以外の使用特異特徴群とを比べたときに、これら二つのマーカの形状が非常に近似しているために混同を生じやすいときは、この混同を回避する必要があるからである。例えば、いずれの使用特異特徴群も四つの特異特徴で構成した方が混同が避けられるときは、全指定特異特徴群を選択しないようにすることが望ましい。
なお、四つの特異特徴で構成された使用特異特徴群を用いる場合と、三つの特異特徴で構成された使用特異特徴群を用いる場合とを比較したときに、混同の程度がそれほど変わらないときは、頑健性を優先して、四つの特異特徴で構成された使用特異特徴群を用いることができる。
(2)各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する
一つのマーカパターンから抽出される二つの特徴点間の距離が近い場合と遠い場合とでは、遠い方が頑健性が高いといえる。
これは、マーカが付された物体が映像入力手段(後述)から離れた位置に配置されている場合において、マーカから抽出される特徴点群のうちの二つの特徴点(t1、t2)の間の距離が非常に近いときは、これら二つの特徴点(t1、t2)の区別がつかなくなることがあり、これにより、それら二つの特徴点が一つの特徴点として処理されるか、あるいは、それら二つの特徴点が特徴空間で同じ区画内に現れてしまい検出される特異特徴の数が減少してマーカとして検出されなくなることが想定され、頑健性が低くなるためである。これに対し、一つのマーカパターンから抽出される二つの特徴点の間の距離が遠いときは、これら二つの特徴点を十分に区別できるため頑健性が高くなる。
そこで、マーカの頑健性を高めるためには、各特異特徴間の距離の総和が大きくなるように使用特異特徴を選択することがよい。
ここで、特異特徴は、図6に示すように、五つ(t1,t2,t3,t4,t5)が選択されたとする。また、特異特徴の各間の距離は、図10に示すように、「t1-2」,「t1-3」,「t1-4」,「t1-5」,「t2-3」,「t2-4」,「t2-5」,「t3-4」,「t3-5」,「t4-5」として表すものとする。これらのうち、例えば、「t1-2」は、特異特徴t1と特異特徴t2との間の距離を表す。
特異特徴の組み合わせは、図7に示すように31通りである。このため、各組み合わせにおける特異特徴間の距離の総和は、次のように算出することができる。
例えば、五つの特異特徴で使用特異特徴を構成する場合、特異特徴間の距離の総和Σt12345は、次式で算出することができる。
Σt12345=(t1-2)+(t1-3)+(t1-4)+(t1-5)+(t2-3)+(t2-4)+(t2-5)+(t3-4)+(t3-5)+(t4-5) ・・・(式1)
次いで、各特異特徴の座標は、次の値であるとする。
t1の座標:(6,9)
t2の座標:(0,7)
t3の座標:(1,3)
t4の座標:(5,0)
t5の座標:(11,7)
続いて、各特異特徴間の距離を算出する。各特異特徴間の距離は、次のようにして算出することができる。
例えば、特異特徴の距離は、所定の空間におけるn次元ユークリッド距離で表すことができる。具体的には、例えば、特異特徴が二つある場合に、第一の特異特徴の座標が(x1,y1)であり、第二の特異特徴の座標が(x2,y2)であるときは、それらのユークリッド距離L1は、次式で算出できる。
L1={(x2-x1)2+(y2-y1)2}1/2 ・・・(式2)
この式2と、各特異特徴の座標とを用いて各特異特徴間の距離を算出すると、次のような値が得られる。
(t1-2)=6.3246 ・・・(式3)
(t1-3)=7.8102 ・・・(式4)
(t1-4)=9.0554 ・・・(式5)
(t1-5)=5.3852 ・・・(式6)
(t2-3)=4.1231 ・・・(式7)
(t2-4)=8.6023 ・・・(式8)
(t2-5)=11.0000 ・・・(式9)
(t3-4)=5.0000 ・・・(式10)
(t3-5)=10.7703 ・・・(式11)
(t4-5)=9.2195 ・・・(式12)
これら各特異特徴間の距離を式1に代入すると、特異特徴間の距離の総和Σt12345は、次の値となる。
Σt12345=77.2906 ・・・(式13)
同様に、例えば、四つの特異特徴(t1,t2,t3,t4)で使用特異特徴を構成する場合、特異特徴間の距離の総和Σt1234は、次式で算出することができる。
Σt1234=(t1-2)+(t1-3)+(t1-4)+(t2-3)+(t2-4)+(t3-4) ・・・(式14)
この式14に、式3、式4、式5、式7、式8、式10で表した特異特徴間の距離を代入すると、特異特徴間の距離の総和Σt1234は、次の値となる。
Σt1234=40.9156 ・・・(式15)
このような順序で、図7に示す使用特異特徴の組み合わせごとに、特異特徴間の距離の総和を算出することができる。この算出された、特異特徴間の距離の総和を図11に示す。同図の左欄は、使用特異特徴の組み合わせ、中欄は、特異特徴間の距離の総和を算出するための計算式、右欄は、算出された特異特徴間の距離の総和である。なお、使用特異特徴が一つの場合は、特異特徴間の距離が存在しないため、総和は0となる。
特異特徴間の距離の総和の算出が終わると、これら総和のうち値の大きいものから順番に使用特異特徴を選択する。
図11において、特異特徴間の距離の総和が最も大きいのは、五つの特異特徴で構成された使用特異特徴(t1,t2,t3,t4,t5)である。次に、特異特徴間の距離の総和が大きいのは、四つの特異特徴で構成された使用特異特徴(t1,t2,t4,t5)である。その次に、特異特徴間の距離の総和が大きいのは、四つの特異特徴で構成された使用特異特徴(t2,t3,t4,t5)である。
そして、使用特異特徴を二つ選択する場合は、使用特異特徴(t1,t2,t3,t4,t5)と(t1,t2,t4,t5)が選択される。また、使用特異特徴を三つ選択する場合は、使用特異特徴(t1,t2,t3,t4,t5)と(t1,t2,t4,t5)と(t2,t3,t4,t5)が選択される。
このように、特異特徴間の距離の総和が大きくなるように使用特異特徴とすることで、そのマーカの頑健性を高めることができる。
なお、特異特徴間の距離の総和は、特異特徴の数が多くなれば、必然的に大きくなる。このため、この手法では、特異特徴の数が最も多い使用特異特徴群が最終的に選択される。ただし、前もって「特異特徴の数は、四つとする」などの条件を設けておくことで、特異特徴の数が最も多い使用特異特徴群が選択されないようにすることもできる。
(3)二つの使用特異特徴群における各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する
複数の特異特徴から二つの使用特異特徴群を選択する場合、これら二つの使用特異特徴群が特徴空間で互いに近い位置にあると、これらマーカパターンの間で誤認混同が生じやすい。
これは、二つの使用特異特徴群が(t1,t2,t3)と(t1,t2,t4)である場合において、マーカ検出時に検出対象映像から抽出された特徴点又は不変特徴が(t1,t2,t3)であると、t3のみによって、いずれのマーカを検出したかを判断しなければならない。
これに対し、二つの使用特異特徴群が(t1,t2,t3)と(t4,t5,t6)である場合において、マーカ検出時に検出対象映像から抽出された特徴点又は不変特徴が(t1,t2,t3)であると、これらt1,t2,t3のすべてによって、いずれのマーカを検出したかを判断できる。つまり、それら二つの使用特異特徴群が互いに遠い位置にあると、頑健性が高くなり、誤認混同が生じにくくなる。
そこで、二つのマーカの形状がどの程度異なっているかを数値化する手法として、一方の使用特異特徴群の各特異特徴と他方の使用特徴特徴群の各特異特徴との各間の距離の総和を算出するものがある。
説明をわかりやすくするために、三つの特異特徴で一の使用特異特徴群を構成する場合について説明する。
特異特徴選択手段10aで選択された特異特徴が図6に示すように五つあり、一の使用特異特徴群を三つの特異特徴で構成する場合の組み合わせは、図7に示すように、十通りある。また、十通りの使用特異特徴群の中から二つの使用特異特徴群を選択するときに、選択される二つの使用特異特徴群の組み合わせは、図12に示すように、45通りある。
これら45通りの組み合わせのそれぞれについて、一方の使用特異特徴群の各特異特徴と他方の使用特徴特徴群の各特異特徴との各間の距離の総和を算出する。
例えば、図6に示すように、特異特徴が五つある場合において、図13に示すように、二つの使用特異特徴群α(t1,t2,t3)とβ(t3,t4,t5)が選択されたものとする。
ここで、それら使用特異特徴群αとβは、いずれも三つの特異特徴で構成されている。また、使用特異特徴群αのt3と使用特異特徴群βのt3は、同じ特異特徴t3であって互いに共有している。
それら使用特異特徴群αとβについて、各特異特徴間の距離の総和を算出する。
例えば、使用特異特徴群αの特異特徴t1と、使用特異特徴群βの各特異特徴(t3、t4、t5)との距離の和Dt1は、次式で算出できる。
Dt1=(t1-3)+(t1-4)+(t1-5) ・・・(式16)
また、使用特異特徴群αの特異特徴t2と、使用特異特徴群βの各特異特徴(t3、t4、t5)との距離の和Dt2は、次式で算出できる。
Dt2=(t2-3)+(t2-4)+(t2-5) ・・・(式17)
さらに、使用特異特徴群αの特異特徴t3と、使用特異特徴群βの各特異特徴(t3、t4、t5)との距離の和Dt3は、次式で算出できる。
Dt3=(t3-3)+(t3-4)+(t3-5) ・・・(式18)
なお、式18において、使用特異特徴群αの特異特徴t3と、使用特異特徴群βの特異特徴t3との距離(t3-3)は、0である。
そして、使用特異特徴群αの各特異特徴(t1,t2,t3)と使用特徴特徴群βの各特異特徴(t3,t4,t5)との各間の距離の総和Dtotalは、次式で算出できる。
Dtotal=Dt1+Dt2+Dt3 ・・・(式19)
このような手順にしたがって、具体的に式3〜式12の数値を式16〜式18に代入し、式19を用いてDtotalを算出すると、61.7466という値が得られる。
二つの使用特異特徴群α(t1,t2,t3)とβ(t3,t4,t5)の組み合わせ以外の組み合わせ(図12で示した二つの使用特異特徴群の組み合わせのそれぞれ)についても、同様な手順で、各特異特徴間の距離の総和Dtotalを算出することができる。
こうして算出された総和Dtotalを図14に示す。同図に示す算出結果は、図12に示す使用特異特徴群の組み合わせの配置に合わせて配置したものである。また、図14に示す算出結果は、図11の「特異特徴間距離算出テーブル」の「総和」を各特異特徴間の距離として用いたものである。
次いで、マーカパターン生成部21は、二つの使用特異特徴の組み合わせのうち、各特異特徴間の距離の総和Dtotalが最も大きい組み合わせを選ぶ。
図14に示す算出結果においては、使用特異特徴群(t1,t4,t5)と使用特異特徴(t2,t3,t4)の組み合わせが、各特異特徴間の距離の総和の最も大きい組み合わせとなっている。
この手法を用いることで、最も誤認の生じにくい使用特異特徴群の組み合わせを選択できる。
(4)二つのマーカについてそれらの形状の相違の程度が大きくなるように、使用特異特徴を選択する
二つのマーカを生成する場合、それらの形状が近似していると、頑健性が低くなり、誤認混合が生じやすくなる。これは、(3)の場合と同様である。
そこで、二つのマーカについて、それらの形状の相違の程度が大きくなるように、使用特異特徴を選択するのが望ましい。
二つのマーカの各形状がどれだけ相違しているかについては、次の手法で算出できる。
例えば、一方の使用特異特徴群αにおける特異特徴の一つ(例えば、t1)に、他方の使用特異特徴群βにおける特異特徴の一つ(例えば、t3)を重ね合わせ、このときの各特異特徴間の距離の総和を算出する。次いで、使用特異特徴群αにおける特異特徴の一つ(例えば、t1)に、使用特異特徴群βにおける特異特徴の他の一つ(例えば、t4)を重ね合わせ、このときの各特異特徴間の距離の総和を算出する。このように、一方の使用特異特徴群における特異特徴のそれぞれに、他方の使用特異特徴群における特異特徴の一つを順次重ね合わせていき、その重ね合わせを行なうたびに、各特異特徴間の距離の総和を算出していく。そして、一方の使用特異特徴群における特異特徴のすべてに対して、他方の使用特異特徴群における特異特徴のすべての重ね合わせが終わると、距離の総和が最も小さくなるときの重ね合わせ方を近似状態として記憶する。
この処理を、二つの使用特異特徴群の組み合わせごとに行なって、各組み合わせにおける近似状態を求める。そして、すべての組み合わせについて、近似状態を求めると、これら近似状態における各特異特徴間の距離の総和のうち大きいものから所定数を選択し、この選択した近似状態における二つの使用特異特徴群をマーカ生成に用いる使用特異特徴とする。
具体的には、次の手法で算出することができる。
図15に示すように、複数の特異特徴(同図においては、t1,t2,t3,t4,t5)のうち、三つの特異特徴(t1,t2,t3)を使用特異特徴群αとして選び、三つの特異特徴(t3,t4,t5)を使用特異特徴群βとして選ぶ。なお、特異特徴t3は、共通しているため、使用特異特徴群βの特異特徴t3をt3'とする。
次いで、使用特異特徴群αの有する複数の特異特徴のうちの一つと、使用特異特徴群βの有する複数の特異特徴のうちの一つとを重ね合わせる。例えば、図16(i)に示すように、使用特異特徴群αの特異特徴t1に、使用特異特徴群βのt3'を重ね合わせる。
そして、その重ね合わせた状態において、重なっていない特異特徴の各間の距離を算出し、それらの総和を求める。
例えば、図16(i)に示す状態においては、使用特異特徴群αの特異特徴t2とt3、使用特異特徴群βの特異特徴t4とt5が重なっていない特異特徴である。このため、図17(i)に示すように、それら特異特徴t2、t3と特異特徴t4、t5の各間の距離を算出する。
この算出は、次の式を用いて行なうことができる。
Σt1(t3')=(t2-t4)+(t2-t5)+(t3-t4)+(t3-t5) ・・・(式20)
なお、「t2-t4」は、特異特徴t2と特異特徴t4との間の距離を示す。
ここで、各特異特徴の座標は、次の値とする。
t2=(0,4)
t3=(1,0)
t4=(10,3)
t5=(16,10)
これら特異特徴の座標を式2に代入すると、各特異特徴間の距離は、次のように算出される。
(t2-t4)=10.0499 ・・・(式21)
(t2-t5)=17.0880 ・・・(式22)
(t3-t4)=9.4868 ・・・(式23)
(t3-t5)=18.0278 ・・・(式24)
それら各特異特徴間の距離を式20に代入すると、使用特異特徴群αの特異特徴t2、t3と使用特異特徴群βの特異特徴t4、t5の各間の距離との総和は、次の値となる。
Σt1(t3')=54.6525
このΣt1(t3')の値と、式21〜式24で算出された数値は、図18(i)に示す。
次いで、図16(ii)に示すように、使用特異特徴群αの特異特徴t1に、使用特異特徴群βのt4を重ね合わせる。
そして、図17(ii)に示すように、重なっていない使用特異特徴群αの特異特徴t2、t3と使用特異特徴群βの特異特徴t4、t5の各間の距離を算出する。
この算出は、次の式を用いて行なうことができる。
Σt1(t4)=(t2-t3')+(t2-t5)+(t3-t3')+(t3-t5) ・・・(式25)
ここで、各特異特徴の座標は、次の値とする。
t2=(0,4)
t3=(1,0)
t3'=(2,6)
t5=(12,13)
これら特異特徴の座標を式2に代入すると、各特異特徴間の距離は、次のように算出される。
(t2-t3')=5.3852 ・・・(式26)
(t2-t5)=15.0000 ・・・(式27)
(t3-t3')=9.0554 ・・・(式28)
(t3-t5)=17.0294 ・・・(式29)
これら各特異特徴間の距離を式25に代入すると、使用特異特徴群αの特異特徴t2、t3と使用特異特徴群βの特異特徴t4、t5の各間の距離との総和は、次の値となる。
Σt1(t4)=46.4699
このΣt1(t4)の値と、式26〜式29で算出された数値は、図18(ii)に示す。
同様にして、図16(iii)に示すように、使用特異特徴群αの特異特徴t1に、使用特異特徴群βのt5を重ね合わせた場合、使用特異特徴群αの特異特徴t2、t3と使用特異特徴群βの特異特徴t3'、t4の各間の距離との総和は、次の値となる。
Σt1(t5)=16.2715
このΣt1(t5)の値と、重なっていない特異特徴間の距離は、図18(iii)に示す。
続いて、使用特異特徴群αの特異特徴t2に、使用特異特徴群βのt3'、t4、t5をそれぞれ重ね合わせ、重なっていない特異特徴の各間の距離を算出し、それらの総和を求める。
さらに、使用特異特徴群αの特異特徴t3に、使用特異特徴群βのt3'、t4、t5をそれぞれ重ね合わせ、重なっていない特異特徴の各間の距離を算出し、それらの総和を求める。
これら重ね合わせた状態における重なっていない特異特徴の各間の距離の総和を図19に示す。
同図において、使用特異特徴群αの特異特徴t1と使用特異特徴群βの特異特徴t3'が交差する欄に示された「54.6525」は、使用特異特徴群αの特異特徴t1に使用特異特徴群βの特異特徴t3'を重ねたときの重なっていない特異特徴(t1,t2,t4,t5)の各間の距離の総和を示したものである。
そして、マーカパターン生成部21は、同図に示された総和の中から、最も値の小さいものを選択する。ここでは、使用特異特徴群αの特異特徴t1に使用特異特徴群βの特異特徴t5を重ねたときの値が最も小さい値である(同図の網掛け部分)。この数値を、使用特異特徴群αと使用特異特徴群βの形状近似値とする。
このように、形状近似値を選ぶことによって、使用特異特徴群αにもとづくマーカと使用特異特徴群βにもとづくマーカの各形状がどの程度近似しているかがわかる。これは、使用特異特徴αにもとづくマーカの形状と使用特異特徴群βにもとづくマーカの形状が完全に同一であれば、これらを重ね合わせたときに一致し、ズレが生じない。一方、使用特異特徴αにもとづくマーカの形状と使用特異特徴群βにもとづくマーカの形状が相違していれば、これらを重ね合わせたときに、その相違している分だけズレが生じる。使用特異特徴αの特異特徴の一つと使用特異特徴βの特異特徴の一つとを重ね合わせたときの重なっていない特異特徴の各間の距離の総和が最も小さい場合とは、そのズレが最も小さい場合であり、言い換えれば、使用特異特徴αにもとづくマーカと使用特異特徴βにもとづくマーカが最も重なった状態である。つまり、使用特異特徴αにもとづくマーカと使用特異特徴βにもとづくマーカが最も重なった状態を探すために形状近似値を算出するものであり、同時に各形状のズレの程度もわかるものである。これは、使用特異特徴αと使用特異特徴βの各配置が図15(i)〜(iii)に示した状態である場合、同図(iii)のときが最も重なった状態となっており、この場合に、特異特徴の各間の距離の総和が最も小さく、形状近似値として選択されていることからも明らかである(図19参照)。
次いで、この形状近似値を、二つのマーカの組み合わせごとに算出する。
特異特徴が図6に示すように五つ選択された場合において、三つの特異特徴により一つの使用特異特徴群を構成するときの二つの使用特異特徴群の組み合わせは、図12に示すようになる。
そして、これら二つの使用特異特徴群の組み合わせごとに、形状近似値を算出すると、この算出結果は、図20に示すようになる。同図において、形状近似値が小さいほど、二つの使用特異特徴群にもとづく二つのマーカの各形状が近似していると言える。一方、形状近似値が大きいほど、二つの使用特異特徴群にもとづく二つのマーカの各形状が相違していると言える。
そして、二つのマーカの各形状が相違している方が、それらマーカ間の誤認混同は生じにくいといえるので、図20に示す形状近似値の中から最も大きいものを選ぶ。同図においては、29.5316が最も大きい値である(グレーで示した数値)。
そして、この値が示された使用特異特徴群の組み合わせを選択する。前述の29.5316は、使用特異特徴群αが(t1,t3,t4)、βが(t2,t3,t5)のときの値である。
このように、二つの使用特異特徴群の組み合わせごとに形状近似値を算出し、この形状近似値が最も大きい使用特異特徴群の組み合わせを選択することで、誤認混同の少ない複数のマーカを生成できる。
なお、使用特異特徴群を三つ以上選択するときは、図20を参照して、形状近似値が大きい使用特異特徴群の組み合わせを選択するようにすればよい。
例えば、二つの使用特異特徴群は、上述したように、(t1,t3,t4)と(t2,t3,t5)であるとすると、(t1,t3,t4)との比較で次に形状近似値が大きい組み合わせの(t2,t4,t5)を選択することができる。あるいは、(t2,t3,t5)との比較で次に形状近似値が大きい組み合わせの(t1,t4,t5)を選択することができる。
ここまで、四つの手法(1)〜(4)について説明したが、使用特異特徴を選択する場合は、それらの手法のうちの一つだけ用いるようにしてもよく、又は、複数の手法を組み合わせて用いるようにしてもよい。
また、複数の手法を組み合わせる場合は、各手法に優先順位を付けて行なうこともできる。
さらに、ここまで説明した手法のうち(2)〜(4)の手法は、使用特異特徴に関する距離が大きくなるように特異特徴を選択する手法である。この距離は、本実施形態においては、二次元空間を想定して説明したが、二次元空間に限るものではなく、三次元空間など多次元空間においても同様の手法で算出することができる。
(マーカ生成方法)
次に、マーカ生成装置の動作手順(マーカ生成方法)について、図21〜図25を参照して説明する。
図21は、マーカ生成方法の処理手順を示すフローチャートである。図22は、
(ア)マーカ生成の手順
マーカ生成装置1aにおいて、特異特徴選択手段10の特異特徴選択部12は、特異特徴記憶部11から「特徴点検出テーブル」を取り出す。
そして、特異特徴選択部12は、「特徴点検出テーブル」を参照して、各区画ごとの特徴点数の中から、0又は所定数以下のものを選択し、これを特異特徴とする(ステップ10)。
次いで、特異特徴選択部12は、選択した特異特徴に関するデータを「特異特徴テーブル」にまとめる(ステップ11)。そして、特異特徴選択部12は、その「特異特徴テーブル」を特異特徴記憶部11に記憶させる。
マーカパターン生成手段20のマーカパターン生成部21は、特異特徴記憶部11から、「特異特徴テーブル」を取り出す。そして、マーカパターン生成部21は、「特異特徴テーブル」に示された複数の特異特徴の中から、マーカパターンの生成に用いる特異特徴を一又は二以上選択し、これらを使用特異特徴とする(ステップ12)。
この使用特異特徴の選択処理は、前述した[使用特異特徴の選択方法]における四つの手法のうちの一又は二以上の手法を用いることができる。これら手法の手順については、後記の(イ)〜(オ)で詳述する。
次いで、マーカパターン生成部21は、使用特異特徴を用いてマーカパターンを一又は二以上生成する(ステップ13)。マーカ記憶部22は、マーカパターン生成部21で生成されたマーカパターンに関するデータを記憶する。
(イ)特異特徴の選択処理(i)
(特異特徴の数が多くなるように、使用特異特徴を選択する)
マーカパターン生成部21は、マーカの数を特定する(ステップ20)。
次いで、マーカパターン生成部21は、「特異特徴テーブル」を参照して、特異特徴の数を確認する(ステップ21)。ここでは、図6に示すように、五つの特異特徴があるものとする。
続いて、マーカパターン生成部21は、特異特徴の組み合わせの一覧を「使用特異特徴組合せテーブル」として作成する(ステップ22)。ここでは、図7に示すように、一つ〜五つの特異特徴により構成される31通りの使用特異特徴の組み合わせが一覧表示された「使用特異特徴組合せテーブル」が作成されたものとする。
そして、マーカパターン生成部21は、それら使用特異特徴の組み合わせの中から、特異特徴の数が多いものを、特定したマーカの数と同じ数だけ選択する(ステップ23)。ここで、特定されたマーカの数が三つであるとすると、マーカパターン生成部21は、五つの特異特徴により構成された使用特異特徴と、四つの特異特徴で構成された使用特異特徴の組み合わせのうちの二つを選択する。
(ウ)特異特徴の選択処理(ii)
(各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する)
マーカパターン生成部21は、マーカの数を特定する(ステップ30)。
次いで、マーカパターン生成部21は、「特異特徴テーブル」を参照して、特異特徴の数を確認する(ステップ31)。ここでは、図6に示すように、五つの特異特徴があるものとする。
続いて、マーカパターン生成部21は、特異特徴の組み合わせの一覧を「使用特異特徴組合せテーブル」として作成する(ステップ32)。ここでは、図7に示した「使用特異特徴組合せテーブル」が作成されたものとする。
さらに、マーカパターン生成部21は、「使用特異特徴組合せテーブル」に示された使用特異特徴の各組み合わせについて、特異特徴間の距離の総和を算出する(ステップ33)。この算出の結果は、「特異特徴間距離算出テーブル」としてまとめられる(図11参照)。
そして、マーカパターン生成部21は、それら使用特異特徴の組み合わせの中から、特異特徴間の距離の総和が大きいものを、特定したマーカの数と同じ数だけ選択する(ステップ34)。ここで、特定されたマーカの数が三つであるとすると、マーカパターン生成部21は、「特異特徴間距離算出テーブル」(図11)を参照し、総和が最も大きい使用特異特徴の組み合わせ(五つの特異特徴により構成された使用特異特徴)と、総和が次に大きい使用特異特徴の組み合わせ(四つの特異特徴で構成された使用特異特徴の組み合わせのうち、総和が「49.5870」のもの)と、総和がその次に大きい使用特異特徴の組み合わせ(四つの特異特徴で構成された使用特異特徴の組み合わせのうち、総和が「48.7152」のもの)を選択する。
(エ)特異特徴の選択処理(iii)
(二つの使用特異特徴群における各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する)
マーカパターン生成部21は、マーカの数を特定する(ステップ40)。
次いで、マーカパターン生成部21は、「特異特徴テーブル」を参照して、特異特徴の数を確認する(ステップ41)。ここでは、図6に示すように、五つの特異特徴があるものとする。
続いて、マーカパターン生成部21は、特異特徴の組み合わせの一覧を「使用特異特徴組合せテーブル」として作成する(ステップ42)。ここでは、図7に示した「使用特異特徴組合せテーブル」が作成されたものとする。
さらに、マーカパターン生成部21は、「使用特異特徴組合せテーブル」に示された使用特異特徴の組み合わせの一つ一つを使用特異特徴群とする。そして、マーカパターン生成部21は、それら複数の使用特異特徴群のうちの二以上の使用特異特徴群を選出し(ステップ43)、この選出した二以上の使用特異特徴群における各特異特徴間の距離の総和を算出する(ステップ44)。この各特異特徴間の距離の総和の算出は、「使用特異特徴組合せテーブル」に示された複数の使用特異特徴群のうち、選出可能な二以上の使用特異特徴群の組み合わせのすべてについて行なう(ステップ45)。
なお、使用特異特徴群を構成する特異特徴の数は、限定することができる。例えば、図14に示すように、使用特異特徴群を構成する特異特徴の数は、二つに限定することができる。この場合、選出される二つの使用特異特徴群の組み合わせは、同図に示すように、80通りとなる。そして、これら選出される二つの使用特異特徴群における各特異特徴間の距離の総和は、図14に示すように求められる。
さらに、マーカパターン生成部21は、それら使用特異特徴群の組み合わせの中から、複数の使用特異特徴群における各特異特徴間の距離の総和が大きいものを、特定したマーカの数と同じ数だけ選択する(ステップ46)。ここで、図14を参照して、マーカ生成に用いる二つの使用特異特徴群を選択する場合、マーカパターン生成部21は、総和が最も大きい使用特異特徴群の組み合わせとして、総和が「67.7824」である使用特異特徴群(t1,t4,t5)と(t2,t3,t4)を選択する。
(オ)特異特徴の選択処理(iv)
(二つのマーカについてそれらの形状の相違の程度が大きくなるように、使用特異特徴を選択する)
マーカパターン生成部21は、マーカの数を特定する(ステップ50)。
次いで、マーカパターン生成部21は、「特異特徴テーブル」を参照して、特異特徴の数を確認する(ステップ51)。ここでは、図6に示すように、五つの特異特徴があるものとする。
続いて、マーカパターン生成部21は、特異特徴の組み合わせの一覧を「使用特異特徴組合せテーブル」として作成する(ステップ52)。ここでは、図7に示した「使用特異特徴組合せテーブル」が作成されたものとする。
さらに、マーカパターン生成部21は、「使用特異特徴組合せテーブル」に示された使用特異特徴の組み合わせの一つ一つを使用特異特徴群とする。そして、マーカパターン生成部21は、それら複数の使用特異特徴群のうちの二以上の使用特異特徴群を選出し(ステップ53)、この選出した二以上の使用特異特徴群における形状近似値を算出する(ステップ54)。この形状近似値の算出は、「使用特異特徴組合せテーブル」に示された複数の使用特異特徴群のうち、選出可能な二以上の使用特異特徴群の組み合わせのすべてについて行なう(ステップ55)。
なお、使用特異特徴群を構成する特異特徴の数は、限定することができる。例えば、図20に示すように、使用特異特徴群を構成する特異特徴の数は、二つに限定することができる。この場合、選出される二つの使用特異特徴群の組み合わせは、同図に示すように、80通りとなる。そして、これら選出される二つの使用特異特徴群における形状近似値は、図20に示すように求められる。
さらに、マーカパターン生成部21は、それら使用特異特徴群の組み合わせの中から、複数の使用特異特徴群における形状近似値が大きいものを、特定したマーカの数と同じ数だけ選択する(ステップ56)。ここで、図20を参照して、マーカ生成に用いる二つの使用特異特徴群を選択する場合、マーカパターン生成部21は、形状近似値が最も大きい使用特異特徴群の組み合わせとして、総和が「29.5316」である使用特異特徴群(t1,t3,t4)と(t2,t3,t5)を選択する。
なお、マーカパターン生成部21で選択される使用特異特徴の数、使用特異特徴の組合せ方、生成されるマーカパターンの種類及び数は、それぞれ任意とすることができる。
以上説明したように、本実施形態のマーカ生成装置及びマーカ生成方法によれば、複数の特異特徴のうちの一部又は全部を用いて、マーカパターンを複数種類生成することができる。
また、生成されるマーカパターンについて、その特異特徴の数を多くしたり、特異特徴間の距離を長くしたりすることで、頑健性が高く誤認の生じにくいマーカパターンを複数生成できる。
[マーカ生成装置及びマーカ生成方法の第二実施形態]
次に、本発明のマーカ生成装置及びマーカ生成方法の第二の実施形態について、図26を参照して説明する。同図は、本実施形態のマーカ生成装置におけるマーカパターン生成手段の構成を示すブロック図である。
本実施形態は、第一実施形態と比較して、マーカパターン生成手段の構成が相違する。すなわち、第一実施形態では、マーカパターン生成手段がマーカパターン生成部とマーカ記憶部とを有していたのに対し、本実施形態では、さらにマーカID設定部を有している。他の構成要素は第一実施形態と同様である。したがって、図26において、図1と同様の構成部分については同一の符号を付して、その詳細な説明を省略する。
(マーカ生成装置)
図26に示すように、マーカ生成装置1bは、特異特徴選択手段10と、マーカパターン生成手段20bとを有している。ここで、マーカパターン生成手段20bは、マーカパターン生成部21と、マーカ記憶部22と、マーカID設定部23とを有している。
マーカID設定部(マーカ設定手段)23は、マーカパターン生成部21で生成された複数のマーカパターンをIDとして使用するにあたり、どのマーカをどの物体に付すかを決める。
この決める手順は、例えば、(1)「物体の種類の特定」、(2)「使用特異特徴群の特定」、(3)「使用特異特徴群を並べる」、(4)「使用特異特徴群の絞り込み」、(5)「物体に付す順番の設定」の手順とすることができる。
(1)「物体の種類の特定」
マーカID設定部23は、マーカによって区別する物体の種類、つまり、マーカ検出装置に識別させる物体の種類を特定する。
例えば、物体が「飲料容器」である場合、「アルミ缶」、「スチール缶」、「ペットボトル」などを物体の種類とすることができる。また、物体が「小売業者に卸す商品」の場合、卸す先の「A店」、「B店」、「C店」、・・・を物体の種類とすることができる。
なお、本実施形態においては、図27(i)に示すように、物体の種類が八種類(物体a,b,c,d,e,f,g,h)あるものとする。ただし、物体の種類は、八つに限るものではなく、任意の数とすることができる。
(2)「使用特異特徴群の特定」
次に、マーカID設定部23は、物体の種類と同数の使用特異特徴群を特定する。
ここで、マーカID設定部23は、まず、使用特異特徴群を構成する特異特徴の数を決める。
使用特異特徴群を構成する特異特徴の数は、特異特徴選択手段10で選択された特異特徴の数によって決まる。例えば、特異特徴選択手段10で選択された特異特徴の数が図6に示すように五つある場合、使用特異特徴群を構成する特異特徴の数は、図7に示すように、「特異特徴の数」として、「1」、「2」、「3」、「4」、「5」のいずれかとなる。
また、特異特徴の組み合わせの数は、同図に示すように、「1」が5、「2」が10、「3」が10、「4」が5、「6」が1である。
ここで、物体の種類は八種類であるため、マーカも八つ必要になる。そこで、組み合わせの数が「8」以上のものを選ぶ。図7に示す場合では、特異特徴の数の「2」と「3」が、それに該当する。そして、マーカの頑健性から言えば、特異特徴の数は多い方がよい。このため、特異特徴の数は、「2」ではなく「3」を選ぶのが望ましい。
なお、本実施形態においては、特異特徴の数がいずれも同じになるように特異特徴の組み合わせ(使用特異特徴群)を選択するが、使用特異特徴群は、特異特徴の数がいずれも同じである必要はなく、異なっていてもよい。例えば、特異特徴の数が「5」の使用特異特徴群を一つ、「4」の使用特異特徴群を五つ、「3」の使用特異特徴群を二つ選択するようにすることもできる。
(3)「使用特異特徴群を並べる」
複数の使用特異特徴群を選択すると、マーカID設定部23は、それらを、任意にあるいはある一定の法則(所定の距離算出処理により算出される距離)にしたがって並べ、この並びに応じて番号を付し、この番号に応じて物体に付すマーカを選択することができる。
その複数の使用特異特徴群の並べ方として、(i)任意に並べる、(ii)レーベンシュタイン距離を用いて並べる、(iii)二つの使用特異特徴群の各特異特徴間の距離を用いて並べる、(iv)二つの使用特異特徴群の形状近似値にもとづいて並べるがある。
これらのうち、レーベンシュタイン距離、二つの使用特異特徴群の各特異特徴間の距離、二つの使用特異特徴群の形状近似値が、「所定の距離算出処理により算出される距離」に相当する。また、二つの使用特異特徴群の各特異特徴間の距離と、二つの使用特異特徴群の形状近似値が、ユークリッド距離を用いて算出されるとき、このユークリッド距離が、「所定の距離算出処理により算出される距離」に相当する。
さらに、レーベンシュタイン距離を算出する処理、二つの使用特異特徴群の各特異特徴間の距離を算出する処理、二つの使用特異特徴群の形状近似値を算出する処理、ユークリッド距離を算出する処理が、「所定の距離算出処理」に相当する。
(i)任意に並べる
マーカID設定部23は、例えば、図27(ii)に示すように、複数(同図においては十通り)の特異特徴の組み合わせを並べ、それらに番号を付す。
複数の特異特徴の組み合わせの並べ方は、任意(ランダム)とすることができる。
なお、図27(ii)においては、特異特徴の番号を三桁の数と捉え、これらを昇順に並べてある。例えば、「t1,t2,t3」は「123」、「t1,t2,t4」は「124」、「t3,t4,t5」は「345」として、これらを昇順に並べたものである。
(ii)レーベンシュタイン距離を用いて並べる
レーベンシュタイン距離とは、情報処理理論において、二つの文字列がどの程度異なっているかを示す数値をいう。例えば、文字の挿入や削除、置換によって、一つの文字列を別の文字列に変形するのに必要な手順の最小回数として与えられる。
具体例をもって説明する。
三つの特異特徴の組み合わせは、図7に示すように十通りある。具体的には、(t1,t2,t3),(t1,t2,t4),(t1,t2,t5),・・・(t3,t4,t5)が、それらの組み合わせである。
ここで、各特異特徴に付された特異特徴番号に着目する。例えば、(t1,t2,t3)と(t1,t2,t4)とを比較した場合、前者の「t3」を「t4」に置換することで後者と同じになる。つまり、一回の置換で前者から後者に変換できることから、それらのレーベンシュタイン距離は、「1」となる。
また、(t1,t2,t3)と(t1,t4,t5)とを比較した場合、前者の「t2」を「t4」に置換し、さらに前者の「t3」を「t5」に置換することで後者と同じになる。つまり、二回の置換で前者から後者に変換できることから、それらのレーベンシュタイン距離は、「2」となる。
このように複数の使用特異特徴群の各間のレーベンシュタイン距離を算出すると、図28に示すような結果が得られる。
同図において、例えば、使用特異特徴群の番号「2」である(t1,t2,t4)と番号「4」である(t1,t3,t4)のレーベンシュタイン距離は、「1」であり、使用特異特徴群の番号「6」である(t1,t4,t5)と番号「7」である(t2,t3,t4)のレーベンシュタイン距離は、「3」である。
そして、複数の使用特異特徴群を、そのレーベンシュタイン距離にもとづいて並べる。
まず、基準となる使用特異特徴群を一つ決める。ここでは、番号「1」の「t1,t2,t3」を基準となる使用特異特徴群とする。この基準となる使用特異特徴群を、複数の使用特異特徴群の最初に配置する。
次いで、基準となる使用特異特徴群以外の使用特異特徴群を、レーベンシュタイン距離の小さいものから順に、二番目以降に並べる。
例えば、レーベンシュタイン距離の最も小さい値が「1」である。そして、基準となる使用特異特徴群「t1,t2,t3」とのレーベンシュタイン距離が「1」である使用特異特徴群は、番号「2」と「3」である。そこで、これら番号「2」と「3」を、二番目と三番目に配置する。なお、番号「2」と「3」は、いずれもレーベンシュタイン距離が「1」であるため、どちらを二番目にしてもよく、どちらを三番目にしてもよい。
続いて、「1」の次にレーベンシュタイン距離の小さい値は、「2」である。この場合に、基準となる使用特異特徴群「t1,t2,t3」とのレーベンシュタイン距離が「2」である使用特異特徴群は、番号「4」と「5」と「6」である。そこで、これら番号「4」と「5」と「6」を、四番目と五番目と六番目に配置する。なお、番号「4」と「5」と「6」は、いずれもレーベンシュタイン距離が「2」であるため、それらは、四番目、五番目、六番目のいずれに配置してもよい。
さらに、レーベンシュタイン距離が「3」についても同様に行なう。
その結果、複数の使用特異特徴群は、図27(ii)の左欄と同様に配置される。
また、基準となる使用特異特徴群を番号「2」である「t1,t2,t4」にした場合、複数の使用特異特徴群は、レーベンシュタイン距離にもとづいて、図29(i)のように配置される。
さらに、基準となる使用特異特徴群を番号「8」である「t2,t3,t5」にした場合、複数の使用特異特徴群は、図29(ii)のように配置される。
なお、番号「3」〜「7」、「9」、「10」の使用特異特徴群についても、これらを基準とした場合に、レーベンシュタイン距離にもとづいて配置をすることができる。
(iii)二つの使用特異特徴群の各特異特徴間の距離を用いて並べる
複数の使用特異特徴群を並べる場合に、それら使用特異特徴群の各特異特徴間の距離を用いることができる。
複数の使用特異特徴群の各特異特徴間の距離は、第一実施形態の「(使用特異特徴の選択方法)」の「(3)二つの使用特異特徴群における各特異特徴間の距離の総和が大きくなるように、使用特異特徴を選択する」で説明した。
この説明にしたがい、例えば、特異特徴が図6に示すように五つ選択された場合において、うち三つの特異特徴でマーカを生成するときに、二つの使用特異特徴群の各特異特徴間の距離の総和は、図14に示すように算出される。
ここで、番号「1」である使用特異特徴群「t1,t2,t3」を基準となる使用特異特徴群とすると、この基準となる使用特異特徴群と他の使用特異特徴群との距離は、図30に示すようになる。同図は、図14に示す総和のうち、使用特異特徴群「t1,t2,t3」に関するものを抽出して、使用特異特徴群の番号順に並べたものである。
次いで、基準となる使用特異特徴群以外の使用特異特徴群を、総和の小さいもの(距離の近いもの)から順に並べる。この並べた結果を、図31に示す。このように、二つの使用特異特徴群間の距離を用いて複数の使用特異特徴群を並べると、同図に示すように、「1」、「7」、「2」、「4」、「8」、「3」、「5」、「9」、「10」、「6」の順になる。
同様に、番号「2」の使用特異特徴群を基準とした場合、これと他の使用特異特徴群との距離は、図32に示すようになる。
そして、それら使用特異特徴群の各特異特徴間の距離の総和にもとづいて各使用特異特徴群を並べ替えると、図33に示すようになる。すなわち、複数の使用特異特徴群は、「2」、「1」、「7」、「4」、「3」、「8」、「5」、「9」、「6」、「10」の順に並べられる。
さらに、番号「8」の使用特異特徴群を基準とした場合、これと他の使用特異特徴群との距離は、図34に示すようになる。
そして、それら使用特異特徴群の各特異特徴間の距離にもとづいて各使用特異特徴群を並べ替えると、図35に示すようになる。すなわち、複数の使用特異特徴群は、「8」、「1」、「7」、「5」、「3」、「4」、「2」、「10」、「9」、「6」の順に並べられる。
(iv)二つの使用特異特徴群の形状近似値にもとづいて並べる 複数の使用特異特徴群を並べる場合に、それら使用特異特徴群の各間の形状近似値を用いることができる。
二つの使用特異特徴群の形状近似値は、第一実施形態の「(使用特異特徴の選択方法)」の「(4)二つのマーカについてそれらの形状の相違の程度が大きくなるように、使用特異特徴を選択する」で説明した。この説明にしたがい、特異特徴が図6に示すように選択された場合において、三つの特異特徴でマーカを生成するときに、二つの使用特異特徴群の形状近似値は、図20に示すように算出される。
ここで、番号「1」である使用特異特徴群「t1,t2,t3」を基準となる使用特異特徴群とすると、この基準となる使用特異特徴群と他の使用特異特徴群との形状近似値は、図36に示すようになる。
そして、この形状近似値の小さいものから順に使用特異特徴群を並べることができる。この並べた結果を、図37に示す。このように、二つの使用特異特徴群の形状近似値を用いて複数の使用特異特徴群を並べると、同図に示すように、「1」、「10」、「7」、「2」、「6」、「9」、「8」、「4」、「3」、「5」の順になる。
同様に、番号「2」の使用特異特徴群を基準とした場合、これと他の使用特異特徴群との形状近似値は、図38に示すようになる。
そして、それら使用特異特徴群の形状近似値にもとづいて各使用特異特徴群を並べ替えると、図39に示すようになる。すなわち、複数の使用特異特徴群は、「2」、「1」、「4」、「7」、「6」、「9」、「3」、「10」、「8」、「5」の順に並べられる。
さらに、番号「8」の使用特異特徴群を基準とした場合、これと他の使用特異特徴群との形状近似値は、図40に示すようになる。
そして、それら使用特異特徴群の形状近似値にもとづいて各使用特異特徴群を並べ替えると、図41に示すようになる。すなわち、複数の使用特異特徴群は、「8」、「9」、「10」、「3」、「5」、「1」、「7」、「2」、「6」、「4」の順に並べられる。
(4)「使用特異特徴群の絞り込み」
複数の使用特異特徴群が並べられると、マーカID設定部23は、次に、それら複数の使用特異特徴群の中から、マーカの生成に用いる使用特異特徴群を選ぶ。
例えば、使用特異特徴群が十通りあり、物体の種類が八つあるときは、十の使用特異特徴群の中から八つを選ぶ。
この選び方には、「番号で選ぶ」ものと、「物体の種類に応じて選ぶ」ものと、「マーカの頑健性に応じて選ぶ」ものとがある。
(i)「番号で選ぶ」
複数の使用特異特徴群のそれぞれに番号を付し、物体の種類と同数の使用特異特徴群を番号の順に選び出し、これらをマーカの生成に用いる使用特異特徴群とするものである。
具体的には、例えば、図27(i)〜(iii)に示すように、物体の種類が八つある場合において(同図(i))、複数の使用特異特徴群のそれぞれに「1」から順番に番号が付されていたとすると(同図(ii))、この番号の順に「1」から「8」までの使用特異特徴群を選び出し、これらをマーカの生成に用いる使用特異特徴群として、物体の種類ごとに対応付けるものである(同図(iii))。
なお、番号の順に使用特異特徴群を選ぶ場合として、本実施形態においては、「1」から「8」までのように、「1」から昇順で八つ選ぶこととしているが、これに限るものではなく、例えば、「3」〜「10」のように「1」以外の番号から開始した連続した八つの番号で選んでもよく、「1」〜「4」と「7」〜「10」のように連続した所定数個の番号を複数選んで全体で八つの番号が選ばれるようにしてもよい。
また、物体の種類が四種類の場合、使用特異特徴群は、例えば、「1」と「3」と「5」と「7」とを選ぶようにしてもよい。
(ii)「マーカの頑健性に応じて選ぶ」
二つの使用特異特徴群がある場合、これらの間の形状近似値が大きい方が、互いの頑健性が高いといえる。そこで、使用特異特徴群の選択に際しては、形状近似値が高くなるように選ぶとよい。
ここで、番号「1」の使用特異特徴群を基準とした場合の他の使用特異特徴群との間の形状近似値は、図36に示すようになる。
そして、同図の中から、形状近似値が高いものを選び出す。
例えば、基準となる使用特異特徴群「1」から見て形状近似値の最も大きいのは、番号「5」の使用特異特徴群である。
次に形状近似値が大きいのは、番号「3」の使用特異特徴群である。
このようにして、番号「1」の使用特異特徴群を基準とし、形状近似値が昇順となるように他の使用特異特徴群を並べた状態を、図37に示す。
そして、同図を用いて、基準となる使用特異特徴群に対し形状近似値が大きくなるように、マーカ生成用の使用特異特徴群を選ぶことができる。具体的に、図37の場合、選ばれるのは、「1」の他に、「5」、「3」、「4」、「8」、「9」、「6」、「2」である。
なお、ここで、「5」〜「2」は、「1」に対して頑健性が高いものの、「5」と「3」との間や「9」と「6」との間などは、頑健性が高いかどうか、図37からはわからない。この場合は、「5」を基準としたときの「3」の形状近似値を用いたり、「9」を基準としたときの「6」の形状近似値を用いたりするなどして、マーカ生成用の使用特異特徴群を選ぶことができる。
(iii)「物体の種類に応じて選ぶ」
物体の種類は、マーカ生成装置やマーカ検出装置の使用者などにより任意に決めることができる。
例えば、前述したように、物体が飲料容器であり、物体の種類がアルミ缶、スチール缶、ペットボトルなどの場合、これら種類の間に上下関係(階層)はなく対等であるため、種類ごとに異なるマーカを付すようにすれば識別可能となる。
これに対し、物体の種類に上下関係(階層)がある場合には、マーカの選択も、それに合わせることが望ましい。
例えば、物体がレトルト食品であり、物体の種類がカレー、シチュー、中華丼などであり、カレーの中に、甘口、辛口、中辛などの種類を設けることが考えられる。この場合、カレー、シチュー、中華丼がそれぞれ上位レベルの階層であり、甘口、辛口、中辛などは、カレーに対して下位レベルの階層である。このとき、カレーとシチューで誤認識が生じるのと、甘口と辛口で誤認識が生じるのとを比べると、前者の方がより誤認識を無くすべきである。つまり、下位の階層よりも、上位の階層の方で、各種類間の頑健性を高くしておくことが望ましい。
そこで、物体の種類の階層レベルに応じて頑健性の高低をつけるように、使用特異特徴群を選択する。これは、マーカ間の形状近似値を用いて行なう。
マーカ間の形状近似値については、図20に示した。同図において、形状近似値が最も高いのは、番号「4」と番号「8」の使用特異特徴群間である。
次いで、マーカID設定部23は、番号「4」の使用特異特徴群を基準として、他の使用特異特徴群を並べて配置する。この配置した結果を図43に示す。
同図に示すように、番号「4」の使用特異特徴群を基準とした場合、使用特異特徴群は、「4」、「2」、「7」、「1」、「5」、「10」、「6」、「3」、「9」、「8」のように並べて配置される。
続いて、マーカID設定部23は、使用特異特徴群の配置にもとづいて、マーカ生成用の使用特異特徴群を選択する。ここでは、上位レベルの種類として三つ(カレー、シチュー、中華丼)、カレーの下位レベルの種類として三つ(甘口、辛口、中辛)を選択するものとする。
まず、「4」と「8」は、最も頑健性が高いので、これらは選択するようにする。
次いで、「4」をカレーとしたときに、カレーの下位レベルの種類は、この「4」の近傍の番号から選択する。具体的には、「4」の次の「2」と「7」を選択する。
さらに、「7」と「8」との中程にある番号を選択する。図43に示す配置では、例えば、「6」を選択する。これは、上位レベルの種類の一つが、他の上位レベルの種類との間でできる限り頑健性が高くなるようにするためである。
これらにより、「4」、「2」、「7」、「6」、「8」を選択することができる。
(5)「物体に付す順番の設定」
マーカID設定部23は、複数の使用特異特徴群の中からマーカ生成用の使用特異特徴群を選択すると、それら選択した使用特異特徴群をそれぞれどの物体の種類に付すかを決める。
前述の例では、マーカ生成用の使用特異特徴群として、「4」、「2」、「7」、「6」、「8」を選択した。
これらのうち、「4」、「2」、「7」は、各間の形状近似値が小さいため、下位レベルの種類に割り当てる。具体的には、「4」、「2」、「7」を、それぞれカレーの甘口、辛口、中辛に割り当てる。
また、「6」と「8」は、「4」との間の形状近似値が大きいため、上位レベルの種類に割り当てる。具体的には、「6」、「8」を、それぞれシチューと中華丼に割り当てる。
この割り当てにしたがって、物体にマーカを付した様子を図44に示す。
次いで、マーカID設定部23は、割り当ての結果を、「物体−マーカ対応テーブル」としてまとめる。
この「物体−マーカ対応テーブル」の構成例を図45に示す。
同図に示すように、「物体−マーカ対応テーブル」は、「物体の種類」と、「マーカパターンの番号」とを項目として構成することができる。
この「物体−マーカ対応テーブル」を参照することで、検出されたマーカがどの物体の種類に対応しているかがわかる。
この「物体−マーカ対応テーブル」は、マーカ記憶部23に記憶される。
これら(1)〜(5)の手順を実行することで、複数の使用特異特徴群の中から二以上の使用特異特徴群を選び出し、これらを物体の各種類に対応付け、その対応した物体にマーカを付すことで、物体の種類ごとに異なるマーカを付すことができ、マーカ検出段階で、各物体の種類を区別して検出することができる。
(マーカ生成方法)
次に、マーカ生成装置の動作手順(マーカ生成方法)について、図45を参照して説明する。
図45は、マーカ生成方法の処理手順を示すフローチャートである。
マーカ生成装置1aにおいて、特異特徴選択手段10の特異特徴選択部12は、特異特徴記憶部11から「特徴点検出テーブル」を取り出す。
そして、特異特徴選択部12は、「特徴点検出テーブル」を参照して、各区画ごとの特徴点数の中から、0又は所定数以下のものを選択し、これを特異特徴とする(ステップ60)。
次いで、特異特徴選択部12は、選択した特異特徴に関するデータを「特異特徴テーブル」にまとめる(ステップ61)。そして、特異特徴選択部12は、その「特異特徴テーブル」を特異特徴記憶部11に記憶させる。
マーカパターン生成手段20のマーカパターン生成部21は、特異特徴記憶部11から、「特異特徴テーブル」を取り出す。そして、マーカパターン生成部21は、「特異特徴テーブル」に示された複数の特異特徴の中から、マーカパターンの生成に用いる特異特徴を一又は二以上選択し、これらを使用特異特徴とする(ステップ62)。
この使用特異特徴の選択は、前述した[使用特異特徴の選択方法]における四つの手法のうちの一又は二以上の手法を用いることができる。
次いで、マーカパターン生成部21は、使用特異特徴を用いてマーカパターンを複数生成する(ステップ63)。
マーカ記憶部22は、マーカパターン生成部21で生成されたマーカパターンに関するデータを記憶する。
続いて、マーカパターン生成手段20のマーカID設定部23は、マーカパターン生成部21で生成された複数のマーカパターンを複数ある物体の種類にそれぞれ割り当てる(ステップ64)。そして、この割り当てた結果を、「物体−マーカ対応テーブル」にまとめ、これをマーカ記憶部22に記憶させる。
次に、物体へのマーカの割り当て処理について、図47を参照して説明する。
マーカID設定部23は、マーカパターン生成部21で生成された複数のマーカパターンをIDとして使用するにあたり、どのマーカをどの物体に付すかを決める(物体へのマーカの割り当て処理)。
まず、マーカID設定部23は、マーカによって区別する物体の種類、つまり、マーカ検出装置に識別させる物体の種類を特定する(ステップ70)。
次いで、マーカID設定部23は、物体の種類と同数の使用特異特徴群を特定する(ステップ71)。
続いて、マーカID設定部23は、特定した複数の使用特異特徴群を、任意にあるいはある一定の法則にしたがって並べ、この並びに応じて番号を付し、この番号に応じて物体に付すマーカを選択する(ステップ72)。
複数の使用特異特徴群の並べ方としては、例えば、(i)任意に並べる、(ii)レーベンシュタイン距離を用いて並べる、(iii)二つの使用特異特徴群の各特異特徴間の距離を用いて並べる、(iv)二つの使用特異特徴群の形状近似値にもとづいて並べるなどがある。
また、物体に付すマーカの選択の仕方には、例えば、「番号で選ぶ」ものと、「物体の種類に応じて選ぶ」ものと、「マーカの頑健性に応じて選ぶ」ものとがある。
そして、マーカID設定部23は、複数の使用特異特徴群の中からマーカ生成用の使用特異特徴群を選択すると、それら選択した使用特異特徴群をそれぞれどの物体の種類に付すかを決める(物体の種類と使用特異特徴群との対応付け、ステップ73)。
次いで、マーカID設定部23は、割り当ての結果を、「物体−マーカ対応テーブル」としてまとめる。この「物体−マーカ対応テーブル」は、マーカ記憶部23に記憶される。
このような手順を実行することにより、物体の種類ごとに異なるマーカを付すことができる。このため、マーカ検出段階で、各物体の種類を識別して検出することができる。
また、生成した複数のマーカは、オブジェクトIDとして使用できる。この場合、距離が近いものから遠い順に並べると、順序付きのID(例えば、4、2、7・・・)を作ることができる。
さらに、物体の種類が階層構造の場合、上位レベルに対しては、距離の遠い使用特異特徴群を用いるようにし、一方、下位レベルに対しては、距離の近い使用特異特徴群を用いるようにすることで、検出時に仮に誤認が生じても、下位レベルで誤りやすく、上位レベルで誤りにくくすることができる。これにより、誤認への耐久性を高めることができ、順序情報をほぼ正しく検出できる。
[マーカ生成装置及びマーカ生成方法の第三実施形態]
次に、本発明のマーカ生成装置及びマーカ生成方法の第三実施形態について、図48を参照して説明する。
同図は、本実施形態のマーカ生成装置の構成を示すブロック図である。
図48に示すように、マーカ生成装置1cは、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、配置手段である特徴抽出手段40とを備えている。
ここで、映像入力手段30は、図49に示すように、映像入力部31と、映像記憶部32とを有している。
映像入力部31は、背景映像を入力する。
背景映像は、マーカ生成装置1cにより生成されるマーカを使用する前の環境(マーカが存在しない環境)を撮影したものである。例えば、マーカが付された物体を搬送するベルトコンベアがある場合に、その物体を搬送していない状態のベルトコンベア及びその周辺を撮影した映像などが該当する。
この背景映像は、動画像(映像)であってもよく、また、所定時間間隔で撮影した複数枚の静止画像であってもよい。
さらに、背景映像には、ライブ映像、録画映像、配信映像などを含むことができる。
また、映像入力部31は、自身が撮像デバイスを有することができる。この場合、映像入力部31は、当該マーカ生成装置1cが設置された場所の周囲の様子を背景映像として撮影することができる。
さらに、映像入力部31は、当該マーカ生成装置1c以外の装置で取り込まれた背景映像を、通信ネットワークや通信ケーブルなどを介して入力することもできる。
この映像入力部31が撮影又は入力した背景映像の例を、図50に示す。
映像記憶部32は、背景映像を構成する静止画フレームを、ディジタイズされたフレーム画像として記憶する。
また、映像記憶部32は、複数のフレーム画像のそれぞれに付された番号(例えば、シリアル番号)を記憶する。この番号は、一枚のフレーム画像を一意に特定する。図50においては、(i-11)が該当する。
さらに、映像記憶部32は、フレーム画像が撮影された時刻、フレーム画像を撮影した装置を特定する情報(フレーム画像が外部入力されたものである場合)などを記憶することもできる。
特徴抽出手段40は、図49に示すように、特徴抽出部41と、特徴記憶部42とを有している。
特徴抽出部41は、映像記憶部32からフレーム画像を取り出す。そして、特徴抽出部41は、取り出したフレーム画像中の特徴的なパターンを含む画像特徴を抽出する。
特徴抽出部41は、画像特徴として、例えば、図形的に特徴的な特性を数値化したものを用いることができる。
これには、例えば、1998年IEEEコンピュータビジョン・パターン認識会議予稿集に掲載されているTommasiniらによる「Making good features track better」に記載されている方法を使用することができる。この方法は、画像中の物体形状に頂点、線状の物体の交差点、端点などを抽出することができる。そして、それらの点の画像上での位置座標情報の系列を図形的特徴とすることができる。例えば、図50(i-11)のフレーム画像に対して、この方法で特徴点を抽出すると、図51に示すように、特徴点が複数配置される。特徴点の一つ一つは、座標により管理することができる。
なお、特徴点が配置された空間を特徴空間という。この特徴空間は、二次元空間であってもよく、また、三次元空間であってもよい。本実施形態の特徴空間は、二次元空間とする。
また、他の方法としては、例えば、Montanariによる1971年Communications of ACM、14巻に掲載されている「On the option detection of curves in noisy pictures」に記載の方法がある。これは、基準点からの距離、相対角度を記憶するRテーブルの内容を特徴として使用することができる。この際、基準点をすべての特徴位置に対して設定し、網羅的に特徴を抽出しておくことで、部分的な特徴の欠損に対してマーカの検出が頑健となる。
さらに、他の特徴抽出方法としては、例えば、画像上の各画素の輝度値、あるいは色差値を特徴とする方法がある。
次いで、特徴抽出部41は、図52に示すように、特徴点のそれぞれにシリアル番号を付与する。このシリアル番号は、例えば、最も上に位置するものから順番に1、2、3、4、・・・のように付与することができる。
続いて、特徴抽出部41は、特徴点のそれぞれの座標を求める。座標は、図52に示すように、特徴空間にX軸とY軸を設定し、Y軸からの距離をX座標、X軸からの距離をY座標とすることができる。
そして、特徴抽出部41は、それら特徴点のシリアル番号や座標を特徴記憶部42に記憶させる。特徴記憶部42は、それらシリアル番号等を、図53に示すように、「特徴点情報テーブル」として記憶することができる。
「特徴点情報テーブル」は、同図に示すように、「フレーム画像のシリアル番号」(ア)と、「特徴点のシリアル番号」(イ)と、「特徴点のx座標」(ウ)と、「特徴点のy座標」(エ)と、「特徴点を位置する区画の座標」(オ)と、「特徴点に関する情報」(カ)を項目として構成することができる。
「フレーム画像のシリアル番号」は、特徴点を抽出したフレーム画像に付された番号を示す。
「特徴点に関する情報」は、例えば、特徴として認識された要素(エッジ、交差など)、特徴点が位置する画素の色相、明度、彩度などを含むことができる。
なお、「特徴点を位置する区画の座標」については、後述する。
次いで、特徴抽出部41は、図54に示すように、特徴空間に格子状のメッシュを付して、複数の区画に分ける。
このとき、特徴抽出部41は、各区画の座標を算出する。この各区画の座標は、各区画を仕切る線(区画線)の座標で表すことができる。
例えば、図55に示すように、仕切り線の座標を、x1,x2,x3,・・・、y1,y2,y3,・・・とする。
また、各区画の名称を、区画(1,1)、区画(1,2)、区画(1,3)、・・・、区画(2,1)、区画(2,2)、区画(2,3)、・・・とする。このうち、区画(1,1)は、座標(0,0)-(x1,0)-(x1,y1)-(0,y1)-(0,0)で囲まれた範囲となる。
ここで、x1は、X方向の第一本目の区画線のx座標である。また、y1は、Y方向の第一本目の区画線のy座標である。これにより、区画(1,1)の座標は、図56に示すように、(x1,y1)として表すことができる。
同様に、区画(2,1)の座標は、(x2,y1)、区画(3,1)の座標は、(x3,y1)、区画(1,2)の座標は、(x1,y2)、区画(2,2)の座標は、(x2,y2)として表すことができる。
これら各区画の名称と座標との関係を、図56に示す。それら各区画の名称と座標は、区画座標テーブルとして、特徴記憶部42に記憶させることができる。
また、一つの区画の大きさは、任意に設定できる。ただし、一つの区画の大きさは、特徴点が存在しない区画が特徴空間の中で少なくとも2〜3個以上存在するように定めるのが望ましい。
続いて、特徴抽出部41は、各区画ごとに特徴点の数を求める。
この各区画ごとの特徴点の数の算出は、各区画の座標と、各特徴点の座標とを用いて行うことができる。
算出された各区画ごとの特徴点の数は、図57に示すように、「特徴点数分布図」として表すことができる。この「特徴点数分布図」は、特徴記憶部42に記憶される。
なお、図57においては、わかりやすいように、特徴点が1つ以上存在した区画にグレーの網掛けを付して表示してある。
また、特徴抽出部41は、特徴点ごとに、当該特徴点と、当該特徴点が位置する区画の座標を関連付ける。例えば、特徴点1が位置する区画の座標は、図54に示すように、(x7,y1)である。そこで、特徴抽出部41は、図58に示すように、「特徴点情報テーブル」の「特徴点が位置する区画の座標」において、特徴点1と、区画の座標(x7,y1)とを関連付け、これを特徴記憶部42に記憶させる。
特徴記憶部42は、所定のメモリ領域を保持している。この特徴記憶部42は、特徴抽出部41で実行された処理に関する各種データを記憶する。特に、特徴記憶部42は、「特徴点情報テーブル」、「フレーム画像−特徴空間対応テーブル」、「区画座標テーブル」、「特徴点数分布図」を記憶することができる。
なお、特徴抽出手段40は、特徴点を抽出して所定の空間(特徴空間)に配置することから、「配置手段」としての機能を有している。
特異特徴選択手段10は、図49に示すように、特異特徴記憶部11と、特異特徴選択部12とを有している。
特異特徴記憶部11は、「特徴点情報テーブル」、「フレーム画像−特徴空間対応テーブル」、「区画座標テーブル」、「特徴点数分布図」、特異特徴の座標を記憶する。
特異特徴選択部12は、特徴記憶部42から、「特徴点数分布図」を取り出して、特異特徴記憶部11に記憶させる。
また、特異特徴選択部12は、取り出した「特徴点数分布図」を参照し、各区画ごとの特徴点数のうち、0又は所定値以下の特徴点が配置された区画を特異特徴として選択する。
具体的には、図57の特徴点累計数分布図においては、「0」が記載された区画が選択される。これにより、特異特徴選択部12は、映像入力手段30で入力された背景映像に現れていない画像特徴を特異特徴として選択することができる。
このように、特異特徴選択部12は、背景パターンと一致しない特徴、すなわち背景映像から抽出した特徴群が現れていない特徴空間の部位を特異特徴として選択することができる。事後に、意に反して特徴点の抽出誤差などにより、特異特徴が背景パターンと類似してしまうことを避けるために、特徴空間内で背景パターンの特徴が存在しないより大きな領域から特異特徴を選択するようにしてもよい。
この特異特徴の選択処理は、特徴空間中の特徴点の分布から大きな空白を見つける問題と同一視できるから、例えば、2003年文書解析認識国際会議予稿集に掲載されている「An algorithm for Finding Maximal Whitespace Rectangles at Arbitrary Orientations for Document Layout Analysis」などのアルゴリズムを使用して、大きな空白領域を抽出しても良いし、得られた特徴点を含まない矩形領域の中心を特異特徴としても良い。
その他の方法としては、特徴空間を特定の大きさのメッシュで量子化し、1次元もしくは多次元のヒストグラムを生成し、特徴点の発生頻度が0となるメッシュの中心を特異特徴とするなどしても良い。頻度が0となるメッシュが存在しない場合、メッシュの大きさを小さくして、ヒストグラムをとり、頻度が0となるメッシュが現れた場合、このときのメッシュから特異特徴を選択するようにしても良い。頻度が0となるメッシュが見つからない場合は、ヒストグラムを既定値で閾値処理し、既定値以下のメッシュから特異特徴を選択しても良い。
特異特徴選択部12が選択した特異特徴の例を、図59、図60に示す。図59に示す特異特徴配置図においては、特異特徴とされた区画を白色で表し、特異特徴とされなかった区画をグレーの網掛けで表している。図60は、図59に示す特異特徴配置図にもとづき、特異特徴の中心と特異特徴配置図の中心点とを黒丸「●」で表した図である。
なお、図57においては、特異特徴(特徴点数の累計数が0の区画)が82個存在するが、マーカパターンの生成処理の説明を容易にするため、特異特徴は、図59、図60に示すように選択されたものとする。
特異特徴選択部12は、選択した特異特徴の座標を求める。例えば、特異特徴選択部12は、図59に示す特異特徴配置図において、特異特徴の座標を(2,6)、(5,2)、(5,4)、(5,5)、(7,6)とする。これら特異特徴の座標は、特異特徴記憶部11に記憶される。
マーカパターン生成手段20は、図49に示すように、マーカパターン生成部21と、マーカ記憶部22とを有している。
マーカパターン生成部21は、特異特徴記憶部11から特異特徴の座標を取り出し、この特異特徴の座標にもとづいてマーカパターンを生成する。
マーカパターンの生成方法には、種々の方法がある。
例えば、画像中の頂点、交差点、端点を特徴点として使用する場合を例に説明する。前述した「On the option detection of curves in noisy pictures」に記載の方法などにもとづく場合、マーカパターンの生成に必要になる、特徴点群の検出は、特徴抽出手段40で使用している特徴点検出アルゴリズムに依存する。
例えば、図8(i)〜(iv)に示すようなマーカパターンの生成方法が例として挙げられる。
なお、特徴抽出手段40が明度値又は色差値を使用して特徴を抽出した場合、マーカを物体に付する装置は、特異特徴に対応する明度値、色差値に対応する塗料でマーカを印刷してもよい。
また、頂点、交差点、端点を図形的な特徴として利用する方法と、明度値や色差値を特徴として利用する方法とを併用することも可能である。この場合、マーカパターン生成部21は、選定された特異特徴に対応する明度、色、形状に対応するマーカを生成すればよい。
マーカ記憶部22は、マーカパターン生成部21で生成されたマーカに関するデータを記憶する。
例えば、マーカパターンが図18(1)に示すような場合は、特異特徴の座標が記憶される。また、図18(2)に示すような場合は、特異特徴の座標の他に、凸包を構成する線分の座標が記憶される。
次に、マーカ生成装置の動作手順(マーカ生成方法)について、図61を参照して説明する。
図61は、マーカ生成方法の処理手順を示すフローチャートである。
マーカ生成装置1cにおいて、映像入力手段30の映像入力部31は、背景映像を入力する(ステップ40)。この背景映像は、複数枚のフレーム画像で構成される。映像入力手段30の映像記憶部32は、映像入力部31で入力された背景映像をフレーム画像として記憶する。
特徴抽出手段40の特徴抽出部41は、映像記憶部32からフレーム画像を取り出し、このフレーム画像から特徴点を抽出し、これら特徴点を特徴空間に配置する(ステップ41)。
また、特徴抽出部41は、特徴空間における特徴点の座標を算出する(ステップ42)。この算出した座標は、特徴記憶部42に記憶される。
次いで、特徴抽出部41は、特徴空間に格子状のメッシュを付して、複数の区画に分ける(ステップ43)。
続いて、特徴抽出部41は、各区画ごとに特徴点の数を求める(ステップ44)。
さらに、特徴抽出部41は、複数のフレーム画像のそれぞれについて、特徴点の抽出、特徴空間への配置、区画ごとの特徴点数の算出を行い、これら算出した特徴点数を各区画ごとに累計する(ステップ45)。
特徴記憶部42は、それら区画及び区画線の座標、各区画毎の特徴点の数を記憶する。
続いて、特異特徴選択手段10の特異特徴選択部12は、特徴記憶部42から各区画ごとの特徴点を取り出す。
そして、特異特徴選択部12は、各区画ごとの特徴点の中から、0又は所定数以下のものを選択し、これを特異特徴とする(ステップ46)。
特異特徴記憶部11は、特異特徴選択部12で特異特徴とされた区画の座標を記憶する。
マーカパターン生成手段20のマーカパターン生成部21は、特異特徴記憶部11から、特異特徴の座標を取り出す。そして、マーカパターン生成部21は、その特異特徴の座標にもとづいてマーカパターンを複数生成する(ステップ47)。
マーカ記憶部22は、マーカパターン生成部21で生成されたマーカパターンに関するデータを記憶する。
以上説明したように、本実施形態のマーカ生成装置及びマーカ生成方法によれば、特徴空間における特徴点が所定数以下の箇所を特異特徴とし、この特異特徴にもとづいてマーカパターンが生成されることから、映像入力手段で入力された背景映像のいずれの背景パターンにも現れていないパターンによって、頑健性の高いマーカパターンを生成できる。
[マーカ生成装置及びマーカ生成方法の第四実施形態]
次に、本発明のマーカ生成装置及びマーカ生成方法の第四の実施形態について、図62を参照して説明する。
図62は、本実施形態のマーカ生成装置の構成を示すブロック図である。
本実施形態は、第一実施形態と比較して、特異特徴を選択する空間が相違する。すなわち、第一実施形態では、特徴空間から特異特徴を選択していたのに対し、本実施形態では、不変量特徴空間から特異特徴を選択する。他の構成要素は第一実施形態と同様である。
したがって、図62において、図1と同様の構成部分については同一の符号を付して、その詳細な説明を省略する。
図62に示すように、マーカ生成装置1dは、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、特徴抽出手段40と、不変特徴変換手段50とを備えている。
なお、本実施形態においては、特徴抽出手段40と不変特徴変換手段50が、「配置手段」に相当する。
ここで、不変特徴変換手段50は、図62に示すように、不変特徴変換部51と、不変特徴記憶部52とを有している。
不変特徴変換部51は、特徴点を不変特徴に変換する。この不変特徴変換部51は、特徴抽出手段40の特徴記憶部42から「特徴点情報テーブル」を取り出し、その特徴点を不変特徴に変換し、不変特徴記憶部52に記憶させる。
画像の特徴的な部位を抽出しその画像上での位置座標情報の系列を図形的特徴とする場合(例えば、図50に示す背景映像から図51に示す特徴点を抽出する処理の場合)、それらの不変特徴への変換は、例えば、次のように行なうことができる。便宜的に、ここでは、位置座標情報の系列を特徴点群と呼ぶこととする。ここで、簡単のため、背景が遠方にある場合の幾何学的な不変特徴について説明する。ただし、光学歪みの影響で、画像が剪断変形歪みを被る場合も特徴量が不変となるように配慮する。なお、背景が遠方にない場合などより自由度の高い不変特徴に拡張することは容易である。幾何学的不変特徴すなわちカメラと撮影対象のシーンが相対的に回転、平行移動し、剪断変形歪みを被る場合に、その相対的な位置関係変化によらず、不変な特徴量を、特徴点群の位置関係から、生成する方法の一例を説明する。
特徴点群から任意の3点の特徴点を選択する。他方で不変量特徴空間を直交する2軸の張る2次元平面として定義する。特徴点群から選択した特徴点のうちの一点を不変量特徴空間での原点に対応付ける。その他の2点を不変量特徴空間での、位置座標(1,0)及び(0,1)にそれぞれ対応付ける。これら3点を基底と呼ぶことにする。このとき、原画像空間から、不変量特徴空間への1対1線形写像がアフィン変換として定義できる。基底を除くすべての特徴点群を、基底により特徴付けられた同一のアフィン変換を用いて不変特徴空間へ写像すると、これら特徴点群はカメラとシーンの相対的位置関係によらず不変となる。ただし、実際には、シーンから常に同じ基底を選択できるとは限らないため、特徴点群のすべての3点の順列組み合わせから基底選択を行い、各基底に対する非基底特徴点を不変量特徴空間に写像する必要がある。
こうして作られた全基底と、不変量特徴空間への全特徴点の写像は、不変特徴として、不変特徴記憶部52に記憶される。これら特徴点群が幾何変形に対して不変である理由は、他の物体を含む映像中で、マーカから選択される基底により、得られる不変特徴は、常に一致するためである。
ここまで説明した手法は、基底を3点とした場合であるが、基底は3点に限るものではなく、1点、2点あるいは4点以上とすることができる。次に、基底を1点にした場合について説明する。
あるフレーム画像から抽出した特徴点は、図51に示すように、特徴空間に配置されているものとする。また、各特徴点には、図52に示すように、シリアル番号が付されているものとする。
不変特徴変換部51は、一つの特徴点を基底として定め、この基底が不変量特徴空間の座標(0,0)のところにくるように移動し、この移動量を求め、他のすべての特徴点についても、その移動量で不変量特徴空間に移動する。
例えば、図63に示すように、シリアル番号5番の特徴点を基底とし、この5番の特徴点が不変量特徴空間で座標(0,0)のところにくるように、すべての特徴点を平行移動する。これにより、不変量特徴空間には、同図右に示すように特徴点が配置される。なお、不変量特徴空間に配置された特徴点を不変特徴という。
また、図64に示すように、シリアル番号15番の特徴点を基底とし、この15番の特徴点が不変量特徴空間で座標(0,0)のところにくるように、すべての特徴点を平行移動すると、同図右の不変量特徴空間に示すように、不変特徴群が配置される。
さらに、図65に示すように、シリアル番号89番の特徴点を基底とし、この89番の特徴点が不変量特徴空間で座標(0,0)のところにくるように、すべての特徴点を平行移動すると、同図右の不変量特徴空間に示すように、不変特徴群が配置される。
そして、図66に示すように、シリアル番号91番の特徴点を基底とし、この91番の特徴点が不変量特徴空間で座標(0,0)のところにくるように、すべての特徴点を平行移動すると、同図右の不変量特徴空間に示すように、不変特徴群が配置される。
このように、一つの特徴点を基底として定め、この基底を不変量特徴空間の原点に移動するのに伴って、その移動量と同じ移動量ですべての特徴点を移動させる処理を、各特徴点を順次基底として定めるごとに行い、これら移動後の特徴点を重ね合わせることで、特徴点を不変量特徴空間に写像する。
図51に示す特徴点を不変量特徴空間に写像した結果は、図67に示すようになる。これが、不変量特徴空間における不変特徴の配置された状態である。
なお、本実施形態において、特徴点を不変量特徴空間へ写像する方法は、図63〜図67に示す方法とするが、写像方法は、この方法に限るものではなく、種々の方法を用いることができる。
例えば、複数の特徴点のうちの一つを第一基底、他の一つを第二基底として定め、第一基底を不変量特徴空間の座標(0,0)に移動し、第二基底を(0,1)に移動することにともない、この移動規則と同一の変換規則にしたがって、すべての特徴点を移動させ、不変量特徴空間における移動後の各特徴点(不変特徴)の座標を記憶する。続いて、他の二つの特徴点を第一基底及び第二基底として定め、これら第一及び第二基底の移動にともない同一変換規則にしたがってすべての特徴点を移動させ、不変量特徴空間における不変特徴の座標を記憶する。そして、すべての特徴点が第一及び第二基底として定められ、不変量特徴空間における不変特徴の座標の蓄積が完了すると、不変量特徴空間への写像が終了する。
また、上述の説明は、幾何学的不変量に関するものであるが、幾何学的不変量のほかに種々の不変量を使用してもよい。
例えば、物体色を不変量として用いることができる。
物体の色は、同一物体であっても撮影環境に存在する光源色に依存して、異なった色で撮影されてしまう。画像上から光源色変動の影響を分離して取り除くことができれば、実際の物体色を得ることができる。得られる実際の物体色を物体色不変量として使用してもよい。鏡面反射している箇所は光源色の影響が支配的で、輝度値が光源色成分において飽和しやすいため、これを光源色とみなして、飽和箇所に対応する色成分を不変特徴として選択しないようにしてもよい。
他にも、画像から物体色を推定する方法には、Robby T. Tan and Katsushi Ikeuchiによる、IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE、VOL. 27、NO. 2、FEBRUARY 2005、pp.178-193に記載の「Separating Reflection Components of Textured Surfaces Using a Single Image」や、Graham D. Finlayson、Steven D. Hordley、Cheng Lu、and Mark S. Drewによる、IEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENT、 VOL.28、NO.1、JANUARY 2006、pp.59-68、に記載の「On the Removal of Shadows from Images」などを使用してもよい。
さらに、テクスチャを不変量として用いることができる。
画像の部分領域の輝度分布に対して数値演算を施し得られた数値またはベクトルを特徴量とする。図形的不変量と同様にテクスチャ不変量はカメラと撮影対象との相対位置関係に影響を受けやすいため、この影響を受けにくい特徴量を算出し、テクスチャ不変量とする。例えば、カメラと対象の距離やズームに不変な特徴量は、注目している部分画像を極座標変換し、動径方向にパワースペクトルをとることで実装可能である。さらに、上記パワースペクトルに対して方位角方向に再度パワースペクトルを求めるとカメラの光軸周りの回転に対して不変な特徴量となる。その他、Chi-Man Pun and Moon-Chuen LeeによるIEEE TRANSACTIONS ON PATTERN ANALYSIS AND MACHINE INTELLIGENCE、VOL. 25、NO. 5、MAY 2003記載の「Log-Polar Wavelet Energy Signatures for Rotation and Scale Invariant Texture Classification」などの方法を用いてもよい。
また、幾何学的不変量についても、Richard Hartley and Andrew Zissermanによる「Multiple View Geometry in Computer Vision」などに記載されているような他の幾何学的不変量を使用してもよい。同一シーンを複数のカメラで観測する場合には、同文献に記載の方法により、距離もしくは深さ方向の相対位置関係の情報を得ることが可能となるが、この場合、同一平面にない4点を基底に選択し、不変量特徴空間を3次元とすると、3次元の幾何学的不変量を作ることができる。この際には、特徴点群から選択した基底4点のうち1点を不変量空間の原点、その他の基底の特徴点を不変量空間における位置座標(1,0,0)および(0,1,0)、(0,0,1)に対応付ける変換写像を求め、その他特徴をこの変換写像を使用して不変量空間に写像するようにする。
特徴点を不変量特徴空間に写像した不変特徴変換部51は、図68に示すように、不変量特徴空間に格子状のメッシュを付して、複数の区画に分ける。
続いて、不変特徴変換部51は、各区画ごとに不変特徴の数を求める。この算出結果を、図69に示す。図69は、不変量特徴空間において、不変特徴の数が1以上の区画にグレーを付した図である。
不変特徴記憶部52は、所定のメモリ領域を保持している。この不変特徴記憶部52は、不変特徴変換部51で求められた各種データを記憶する。各種データには、例えば、不変量特徴空間に配置された各不変特徴の座標、各区画の座標(範囲)、各区画ごとの不変特徴数などが含まれる。
特異特徴選択手段10は、図62に示すように、特異特徴選択部11と、特異特徴記憶部12とを有している。
特異特徴選択部11は、図70に示すように、不変量特徴空間の中で、マーカパターンの生成を行う範囲を、マーカパターン生成範囲として決定する。このマーカパターン生成範囲は、静止画フレームの大きさと同じ大きさとすることができる。
次いで、特異特徴選択部11は、そのマーカパターン生成範囲における各区画ごとの不変特徴数を、不変特徴記憶部52から取り出す。この取り出した各区画ごとの不変特徴数を図71に示す。なお、図71は、マーカパターン生成範囲において、不変特徴の数が1以上の区画にグレーを付した図である。
続いて、特異特徴選択部11は、マーカパターン生成範囲における各区画ごとの不変特徴数のうち、0又は所定値以下のものを特異特徴として選択する。これにより、特異特徴選択部11は、記憶された特徴群から、シーンには現れていない画像特徴を特異特徴として選択することができる。
なお、図71においては、白色の区画が、不変特徴数が0の区画である。
特異特徴記憶部12は、特異特徴選択部11で選択された特異特徴の座標を記憶する。
マーカパターン生成手段20は、第一実施形態におけるマーカパターン生成手段20と同様の機能を有している。
不変特徴変換部51は、図51に示された特徴点を、不変量特徴空間に写像する。
次いで、不変特徴変換部51は、その不変量特徴空間にメッシュを掛け、各区画ごとに特徴点を算出する。
さらに、図69における不変量特徴空間のうち、マーカパターン生成範囲を取り出すと、図71に示すようになる。
なお、2種類以上の不変量を組み合わせた場合における不変特徴への変換から特異特徴の選択までの処理は、概略つぎのように動作することができる。
ここでは、幾何学的不変量と物体色不変量を併用する場合について説明する。
物体色不変量には、幾何学的不変量を求める際に抽出された特徴点群の近傍画素について、前述したTanらの方法により得た物体色の輝度値を使用するものとする。まず、前述した幾何学的不変量を求める手順と同様に、特徴点群から3点を基底として選択し、2次元平面で記述される幾何学的不変量空間に射影する。各特徴位置に対応する物体色不変量を求め、幾何学的不変量平面に直交する軸、すなわち物体色不変量座標を含めた3次元空間を想定する。3次元空間の各軸を量子化して既定の大きさの直方体メッシュに分割し、直方体ごとのヒストグラムを生成する。あらゆる基底の組み合わせに対して同様の計算を行ない、ヒストグラムが0となったメッシュの中心値を特異特徴とする。マーカの生成は、各特異特徴に対応する位置および色でマーカを生成すればよい。
次に、本実施形態のマーカ生成装置の動作(マーカ生成方法)について、図72を参照して説明する。
同図は、本実施形態のマーカ生成方法の処理手順を示すフローチャートである。
マーカ生成装置1cにおいて、映像入力手段30の映像入力部31は、背景映像を入力する(ステップ30)。この背景映像は、複数枚のフレーム画像で構成される。映像入力手段30の映像記憶部32は、映像入力部31で入力された背景映像をフレーム画像として記憶する。
特徴抽出手段40の特徴抽出部41は、映像記憶部32からフレーム画像を取り出し、このフレーム画像から特徴点を抽出する(ステップ31)。
また、特徴抽出部41は、抽出した特徴点の座標を算出する(ステップ32)。この算出した座標は、特徴記憶部42に記憶される。
不変特徴変換手段50の不変特徴変換部51は、特徴記憶部42から特徴点の座標を取り出す。次いで、不変特徴変換部51は、取り出した特徴点の座標にもとづいて、各特徴点を不変量特徴空間に写像する(ステップ33)。
続いて、不変特徴変換部51は、不変量特徴空間にメッシュを掛けて区画化する(ステップ34)。
さらに、不変特徴変換部51は、各区画ごとに不変特徴数を算出する(ステップ35)。
また、不変特徴変換部51は、複数のフレーム画像のそれぞれについて各区画ごとの不変特徴数を算出し、これらを累計する(ステップ36)。
不変特徴記憶部52は、不変特徴変換部51で算出された各区画ごとの不変特徴数の累計を記憶する。
特異特徴選択手段10の特異特徴選択部11は、不変特徴記憶部52から各区画ごとの不変特徴数を取り出す。このとき、マーカパターン生成範囲における各区画ごとの不変特徴数を取り出すこともできる。
そして、特異特徴選択部11は、各区画ごとの不変特徴数の中から、0又は所定数以下のものを選択し、これを特異特徴とする(ステップ37)。
特異特徴記憶部12は、特異特徴選択部11で特異特徴とされた区画の座標を記憶する。
マーカパターン生成手段20のマーカパターン生成部21は、特異特徴記憶部12から、特異特徴の座標を取り出す。そして、マーカパターン生成部21は、その特異特徴の座標にもとづいてマーカパターンを複数生成する(ステップ38)。
マーカ記憶部22は、マーカパターン生成部21で生成されたマーカパターンに関するデータを記憶する。
以上説明したように、本実施形態のマーカ生成装置及びマーカ生成方法によれば、映像入力手段が複数のフレーム画像を入力し、これらフレーム画像のすべてから特徴点を抽出し、この特徴点を不変特徴として不変量特徴空間に写像し、この不変量特徴空間において特異特徴を選択し、この特異特徴にもとづいてマーカパターンを生成することとしたので、どのフレーム画像に対しての頑健性の高いマーカパターンを生成できる。
[マーカ検出装置及びマーカ検出方法]
(マーカ検出装置)
次に、マーカ検出装置について、図73、図74を参照して説明する。
図73は、マーカ検出装置の構成を示すブロック図である。図74は、マーカ検出装置の詳細構成を示すブロック図である。
図73に示すように、マーカ検出装置100は、映像入力手段30と、特徴抽出手段40と、マーカ記憶手段130と、照合手段140と、報知手段150とを備えている。
ここで、映像入力手段30は、図74に示すように、映像入力部311と、映像記憶部32とを有している。
映像入力部311は、マーカが存在する可能性のある環境を検出対象映像として撮影(入力)する。例えば、映像入力部311は、図75に示すように、マーカを含む検出対象映像を入力することができる。
映像記憶部32は、検出対象映像を構成する静止画フレームを、ディジタイズされたフレーム画像として記憶する。
特徴抽出手段40は、図74に示すように、特徴抽出部41と、特徴記憶部42とを有している。
特徴抽出部41は、映像記憶部32からフレーム画像を取り出す。そして、特徴抽出部41は、取り出したフレーム画像中の特徴的なパターンを含む画像特徴を抽出する。
例えば、検出対象映像が図75に示すような画像の場合、特徴抽出部41は、その検出対象映像から図76に示すような特徴点を抽出する。
特徴記憶部42は、特徴抽出部41で抽出された特徴点の各座標を記憶する。
マーカ記憶手段130は、マーカ生成装置1で生成された複数種類のマーカパターンのそれぞれに関するデータを記憶する。このマーカ記憶手段130は、例えば、マーカパターンにもとづく特徴点を記憶することができる。
照合手段140は、図74に示すように、照合部141と、照合結果記憶部142とを有している。
照合部141は、検出対象映像にもとづく特徴点の各座標を特徴記憶部42から取り出すとともに、複数種類のマーカパターンのそれぞれにもとづく特徴点の各座標をマーカ記憶手段130から取り出し、それらを照合する。そして、照合部141は、複数種類のマーカパターンのいずれかにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあるか否かを判断する。
例えば、マーカパターンの特徴の一つと検出対象映像から生成された特徴の一つとを比較して、特徴空間でのユークリッド距離が既定値以下である場合には、それら特徴が一致したとして、一致した特徴の数をスコアとして累積し、スコアが閾値に達すると、マーカの検出を受諾するようにしても良い。また、前述のユークリッド距離の累積値が既定値以下である条件を付加しても良い。
また、例えば、マーカ生成装置1cの特徴抽出部41が、特異特徴の決定を量子化した特徴空間で実行した場合、マーカ記憶手段130は、その特異特徴の座標を記憶しておく。そして、照合部141は、マーカ設計時に頻度が0であったメッシュに、検出対象映像からの特徴が1回でも投影されたときには、マーカパターンからの寄与であるとして検出を確定することができる。これによれば、マーカ検出は、高速に行える。
ノイズや特徴抽出計算の誤差による誤対応を避けるために、受諾する投影の頻度を1回以上の既定値に設定してもよい。または、量子化した特徴空間をマーカパターンから生成可能である場合には、これを利用しても良い。この場合、検出対象映像から得た特異特徴が、マーカパターンの投影される特徴空間メッシュに1回、又は既定回数一致した場合に、マーカパターン検出を受諾するようにしても良い。
これら照合の結果、マーカパターンにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあるときは、照合部141は、検出対象映像における当該特徴点の座標を検出し、これを照合結果記憶部142に記憶させる。また、照合部141は、報知手段150へ報知信号を送る。
一方、マーカパターンにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にないときは、照合部141は、特徴点の座標の検出及び報知信号の送出を行わない。
具体的には、照合部141は、図76に示す特徴点群の中から、マーカ記憶手段130から取り出したマーカパターンにもとづく特徴点と一致する特徴点を探し出す。このとき、照合部141は、マーカパターンにもとづく特徴点群を拡大又は縮小して、特徴空間における特徴点群と照合する。
その結果、図76に示す特徴点群の中から、マーカ記憶手段130から取り出したマーカパターンにもとづく特徴点と一致する特徴点が見つかると、照合部141は、図76に示す特徴空間における当該特徴点の座標を検出し、これを照合結果記憶部142に記憶させる。
照合結果記憶部142は、照合部141で行われた照合に関するデータを記憶する。
例えば、照合結果記憶部142は、検出対象映像にもとづく特徴点のうち、マーカパターンにもとづく特徴点と一致する特徴点(図76においては、左方の楕円で囲まれた特徴点)の各座標を記憶する。
報知手段150は、照合部141から報知信号を受けると、マーカパターンにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあったことを外部に報知する。この報知の方法には、例えば、音声出力や、画面表示などがある。
(マーカ検出方法)
次に、本実施形態のマーカ検出方法について、図77を参照して説明する。
マーカ記憶手段130は、マーカ生成装置1で生成された複数種類のマーカパターンのそれぞれに関するデータを予め記憶している(ステップ110)。このマーカ記憶手段130は、例えば、マーカパターンにもとづく特徴点を記憶することができる。
映像入力手段30の映像入力部311は、マーカが存在する可能性のある環境を検出対象映像として入力する(ステップ111)。
映像記憶部32は、検出対象映像を構成する静止画フレームを、ディジタイズされたフレーム画像として記憶する。
特徴抽出手段40の特徴抽出部41は、映像記憶部32からフレーム画像を取り出す。そして、特徴抽出部41は、取り出したフレーム画像中の特徴的なパターンを含む画像特徴を抽出する(ステップ112)。
また、特徴抽出部41は、抽出した特徴点の座標を算出する(ステップ113)。
特徴記憶部42は、特徴抽出部41で算出された特徴点の各座標を記憶する。
照合手段140の照合部141は、検出対象映像にもとづく特徴点の各座標を特徴記憶部42から取り出すとともに、複数種類のマーカパターンのそれぞれにもとづく特徴点の各座標をマーカ記憶手段130から取り出し、それらを照合する(ステップ114)。そして、照合部141は、複数種類のマーカパターンのいずれかにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあるか否かを判断する。
判断の結果、複数種類のマーカパターンのいずれかにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあるときは、照合部141は、検出対象映像における当該特徴点の座標を検出し、これと一致したマーカパターンとともに、照合結果記憶部142に記憶させる。また、照合部141は、報知手段150へ報知信号を送る。
一方、複数種類のマーカパターンのそれぞれにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にないときは、照合部141は、特徴点の座標の検出及び報知信号の送出を行わない。
報知手段150は、照合部141から報知信号を受けると、複数種類のマーカパターンのいずれかにもとづく特徴点と一致する特徴点が、検出対象映像にもとづく特徴点の中にあったことを外部に報知する(ステップ115)。
その後は、終了するか否かが判断され(ステップ116)、終了しないときは、ステップ111〜ステップ116の処理が繰り返される。
以上説明したように、本実施形態のマーカ検出装置及びマーカ検出方法によれば、マーカ生成装置で生成されたマーカパターンを用いて、検出対象映像に映し出されたマーカを確実に検出することができる。
また、本実施形態においては、マーカの検出を特徴空間において行なうこととしたが、マーカの検出は、特徴空間に限るものではなく、例えば、不変量特徴空間において行なうこともできる。この場合、マーカ生成段階で、特異特徴を選択した特異特徴配置図を記憶しておき、マーカ検出段階で、検出対象映像から特徴点を抽出し、この特徴点を不変量特徴空間に写像して不変特徴し、この不変量特徴空間と前述の特異特徴配置図とを重ね合わせ、特異特徴配置図に示された特異特徴に不変量特徴空間に示された不変特徴が現れたときは、この不変特徴をマーカにもとづく不変特徴として検出することができる。
さらに、マーカパターンの生成において、物体色不変量やテクスチャ不変量を用いた場合には、マーカ検出において、それら物体色不変量やテクスチャ不変量を用いてマーカ検出を行なう。この場合、マーカ生成段階で、背景映像から物体色不変量やテクスチャ不変量を抽出し、これらにもとづく特異特徴を選択して記憶しておき、マーカ検出段階において、検出対象映像から物体色不変量やテクスチャ不変量を抽出し、これら物体色不変量やテクスチャ不変量が特異特徴と一致したときは、それら物体色不変量やテクスチャ不変量をマーカとして検出することができる。
[マーカ生成検出装置及びマーカ生成検出システム]
(マーカ生成検出装置)
次に、マーカ生成検出装置について、図78を参照して説明する。
図78は、マーカ生成検出装置の構成を示すブロック図である。
図78に示すように、マーカ生成検出装置200は、マーカ生成装置1と、マーカ検出装置100とを備えている。
ここで、マーカ生成装置1は、前述した第一実施形態〜第四実施形態のいずれかにおけるマーカ生成装置1(1a〜1d)を用いることができる。
マーカ検出装置100は、前述した図73に示すマーカ検出装置100を用いることができる。
このように、マーカ生成検出装置200は、マーカ生成装置1とマーカ検出装置100とを一体化した構成とすることができる。
また、マーカ生成装置1とマーカ検出装置100とは、共有化できる機能があるため、図79に示すような構成とすることもできる。
例えば、マーカ生成検出装置200は、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、特徴抽出手段40と、照合手段140と、報知手段150とを有している。また、マーカパターン生成手段20は、マーカ生成部21と、マーカ記憶部22とを有している。
これらのうち、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、特徴抽出手段40が、マーカ生成装置としての機能を有している。
一方、映像入力手段30と、特徴抽出手段40と、マーカ記憶部22と、照合手段140と、報知手段150が、マーカ検出装置としての機能を有している。
そして、映像入力手段30と、特徴抽出手段40と、マーカ記憶部22が、マーカ生成装置とマーカ検出装置に共通している部分である。
マーカ生成装置におけるマーカ生成方法は、前述した第一〜第四実施形態におけるマーカ生成方法と同様である。
また、マーカ検出装置におけるマーカ検出方法は、前述した実施形態におけるマーカ検出方法と同様である。
(マーカ生成検出システム)
次に、本実施形態のマーカ生成検出システムについて、図80を参照して説明する。
同図に示すように、マーカ生成検出システム300は、マーカ生成装置1と、マーカ検出装置100とを備えている。これらマーカ生成装置1とマーカ検出装置100は、通信ネットワーク又は通信ケーブル400などで接続することができる。
マーカ生成装置1は、特異特徴選択手段10と、マーカパターン生成手段20と、映像入力手段30と、特徴抽出手段40と、通信手段60とを有している。
通信手段60は、マーカ記憶部22に記憶されているマーカに関するデータを取り出し、これをマーカ検出装置100へ送信する。
マーカ検出装置100は、映像入力手段110と、特徴抽出手段120と、マーカ記憶部130と、照合手段140と、報知手段150と、通信手段160とを有している。
通信手段160は、マーカ生成装置1から送信されてきたマーカに関するデータを受信する。また、通信手段160は、その受信したマーカに関するデータをマーカ記憶部130に記憶させる。
以上説明したように、マーカ生成検出装置及びマーカ生成検出システムによれば、マーカ生成検出装置又はマーカ生成検出システムのマーカ生成機能において、マーカパターンを複数種類生成することができる。これにより、例えば、マーカパターンの種類と物体の種類を対応付けておけば、マーカ検出段階において、検出対象である物体だけでなく、その物体の種類についても検出できる。
また、複数の使用特異特徴群を距離にもとづいて並べておき、その距離が遠くなるように二以上の使用特異特徴群を選択して物体に付すことにより、頑健性の高いマーカによって物体の種類を検出できる。
[マーカ生成プログラム及びマーカ検出プログラム]
次に、マーカ生成プログラム及びマーカ検出プログラムについて説明する。
上記の各実施形態におけるコンピュータ(マーカ生成装置、マーカ検出装置、マーカ生成検出装置、マーカ生成検出システム)のマーカ生成機能(マーカ生成方法を実行するための機能)やマーカ検出機能(マーカ検出方法を実行するための機能)は、記憶手段(例えば、ROM(Read only memory)やハードディスクなど)に記憶されたマーカ生成プログラム又はマーカ検出プログラムにより実現される。
マーカ生成プログラム及びマーカ検出プログラムは、コンピュータの制御手段(CPU(Central Processing Unit)など)に読み込まれることにより、コンピュータの構成各部に指令を送り、所定の処理、たとえば、マーカ生成装置の映像入力処理、特徴抽出処理、特異特徴選択処理、マーカパターン複数種類生成処理、物体−使用特異特徴群対応付け処理、不変特徴変換処理、不変特徴累計処理、不変特徴合成処理、映像入力制御処理、マーカ検出装置の映像入力処理、特徴抽出処理、照合処理、報知処理などを行わせる。
これによって、マーカ生成機能又はマーカ検出機能は、ソフトウエアであるマーカ生成プログラムとハードウエア資源であるコンピュータ(マーカ生成装置、マーカ検出装置、マーカ生成検出装置、マーカ生成検出システム)の各構成手段とが協働することにより実現される。
なお、マーカ生成機能又はマーカ検出機能を実現するためのマーカ生成プログラムは、コンピュータのROMやハードディスクなどに記憶される他、コンピュータ読み取り可能な記録媒体、たとえば、外部記憶装置及び可搬記録媒体等に格納することができる。
外部記憶装置とは、CD−ROM(Compact disk−Read only memory)等の記憶媒体を内蔵し、マーカ生成装置に外部接続されるメモリ増設装置をいう。一方、可搬記録媒体とは、記録媒体駆動装置(ドライブ装置)に装着でき、かつ、持ち運び可能な記録媒体であって、たとえば、フレキシブルディスク,メモリカード,光磁気ディスク等をいう。
そして、記録媒体に記録されたプログラムは、コンピュータのRAM(Random access memory)等にロードされて、CPU(制御手段)により実行される。この実行により、上述した各実施形態のマーカ生成装置の機能が実現される。
さらに、コンピュータでマーカ生成プログラムをロードする場合、他のコンピュータで保有されたマーカ生成プログラムを、通信回線を利用して自己の有するRAMや外部記憶装置にダウンロードすることもできる。このダウンロードされたマーカ生成プログラムも、CPUにより実行され、上記各実施形態のマーカ生成装置のマーカ生成機能を実現する。
以上、本発明のマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムの好ましい実施形態について説明したが、本発明に係るマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムは上述した実施形態にのみ限定されるものではなく、本発明の範囲で種々の変更実施が可能であることは言うまでもない。
例えば、上述した実施形態では、一回のマーカ生成処理において、複数種類のマーカを生成することを示したが、マーカ生成処理は一回に限定されるものではなく、複数会実行することができる。そして、二回目以降は、それまでに生成されたマーカを生成しないようにすることもできる。
なお、本発明のマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムは、第一実施形態〜第四実施形態のそれぞれにおけるマーカ生成装置、マーカ生成検出システム、マーカ生成検出装置、マーカ、マーカ生成方法及びマーカ生成プログラムを任意に組み合わせたものであってもよい。
また、上記の実施の形態の内容は、以下のようにも表現されうる。
(付記1) 画像から特徴点が抽出され、前記特徴点が所定の空間に表わされ、前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する特異特徴選択手段と、
前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成するマーカパターン生成手段と
を有するマーカ生成装置。
(付記2) 前記マーカパターンを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
付記1に記載のマーカ生成装置。
(付記3) 前記マーカパターン生成手段は、一の前記使用特異特徴群を構成する複数の特異特徴の各間の距離の総和が大きくなるように、当該複数の特異特徴を選択する
付記2記載のマーカ生成装置。
(付記4) 前記マーカパターン生成手段は、一の前記使用特異特徴群を構成する複数の特異特徴と、他の使用特異特徴群を構成する複数の特異特徴との各間の距離の総和が大きくなるように、一の前記使用特異特徴群を構成する複数の特異特徴と、他の使用特異特徴群を構成する複数の特異特徴を選択する
付記2に記載のマーカ生成装置。
(付記5) 前記マーカパターン生成手段は、
一の前記使用特異特徴群に含まれる一の特異特徴と、他の使用特異特徴群に含まれる一の特異特徴とを重ね合わせ、前記一の使用特異特徴群において重なっていない一又は二以上の特異特徴と前記他の使用特異特徴群において重なっていない一又は二以上の特異特徴との各間の距離の総和を算出する処理を、前記一の使用特異特徴群を構成する複数の特異特徴のそれぞれに前記他の使用特異特徴群を構成する複数の特異特徴のそれぞれを重ね合わせるたびに実行し、この実行により算出した複数の総和のうち最も小さい総和を形状近似値とし、
この形状近似値が大きい値となるように、前記一の使用特異特徴群を構成する一又は二以上の特異特徴と前記他の使用特異特徴群を構成する一又は二以上の特異特徴を、前記特異特徴選択手段で選択された複数の特異特徴の中から選択する
付記2に記載のマーカ生成装置。
(付記6) 前記マーカパターン生成手段で選択された複数の使用特異特徴群のうちの二以上の使用特異特徴群を、複数の物体のいずれかに対応付けるマーカ設定手段を有する付記1から付記5のいずれかに記載のマーカ生成装置。
(付記7) 前記マーカ設定手段は、所定の距離算出処理にしたがって算出された前記使用特異特徴群に関する距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記6に記載のマーカ生成装置。
(付記8) 前記所定の距離算出処理により算出される距離が、レーベンシュタイン距離であり、
前記マーカ設定手段は、前記複数の使用特異特徴群の各間のレーベンシュタイン距離を算出するとともに、この算出したレーベンシュタイン距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記7に記載のマーカ生成装置。
(付記9) 前記所定の距離算出処理により算出される距離が、所定の空間におけるユークリッド距離であり、
前記マーカ設定手段は、前記複数の使用特異特徴群の各間のユークリッド距離を算出するとともに、この算出したユークリッド距離が遠くなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記7に記載のマーカ生成装置。
(付記10) 前記所定の距離算出処理により算出される距離が、二つの使用特異特徴群の各特異特徴間の距離の総和であり、
前記マーカ設定手段は、前記複数の使用特異特徴群について二つの使用特異特徴群の各特異特徴間の距離の総和を算出するとともに、この算出した総和が大きくなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記7に記載のマーカ生成装置。
(付記11) 前記所定の距離算出処理により算出される距離が、二つの使用特異特徴群の間の形状近似値であり、
前記マーカ設定手段は、前記複数の使用特異特徴群について二つの使用特異特徴群の間の形状近似値を算出するとともに、この算出した形状近似値が大きくなるように、前記複数の物体に対応する使用特異特徴群を選択する
付記7に記載のマーカ生成装置。
(付記12) 前記複数の物体が、二以上の種類で分類でき、
前記二以上の種類のうちの少なくとも一つの種類が、さらに下位レベルの種類で分類でき、
前記マーカ設定手段は、上位レベルの種類ごとに距離の遠い使用特異特徴群を対応付け、下位レベルの種類ごとに距離の近い使用特異特徴群を対応付ける
付記6から付記11のいずれかに記載のマーカ生成装置。
(付記13) マーカ生成装置とマーカ検出装置とを備え、
前記マーカ生成装置は、
画像を入力する第一映像入力手段と、
この第一映像入力手段で入力された前記画像から特徴点を抽出し、これらの抽出した特徴点を所定の空間に表す第一配置手段と、
前記空間における前記特徴点が所定数以下の部分を特異特徴として選択する特異特徴選択手段と、
前記特異特徴を用いてマーカパターンを複数種類生成するマーカ生成手段と
を有し、
前記マーカ検出装置は、
複数種類の前記マーカパターンを記憶するマーカ記憶手段と、
画像を入力する第二映像入力手段と、
この第二映像入力手段で入力された前記画像にもとづいて特徴点を抽出し、この抽出した特徴点を所定の空間に表す第二配置手段と、
前記所定の空間に表された特徴点群の配置の中に、前記マーカパターンにもとづく特徴点の配置があるか否かを判断する照合手段と
を有する
マーカ生成検出システム。
(付記14) 前記マーカパターンを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
付記13に記載のマーカ生成検出システム。
(付記15) 画像を入力する第一映像入力手段と、
この第一映像入力手段で入力された前記画像から特徴点を抽出し、これらの抽出した特徴点を所定の空間に表す第一配置手段と、
前記空間における前記特徴点が所定数以下の部分を特異特徴として選択する特異特徴選択手段と、
前記特異特徴を用いてマーカパターンを複数種類生成するマーカ生成手段と、
前記マーカパターンを記憶するマーカ記憶手段と、
画像を入力する第二映像入力手段と、
この第二映像入力手段で入力された前記画像にもとづいて特徴点を抽出し、この抽出した特徴点を所定の空間に表す第二配置手段と、
前記所定の空間に表された特徴点群の配置の中に、前記マーカパターンに対応する特徴点の配置があるか否かを判断する照合手段と
を有するマーカ生成検出装置。
(付記16) 前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記マーカパターン生成手段は、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する
付記15に記載のマーカ生成検出装置。
(付記17) 画像ごとに特徴点を抽出し、これらの抽出した特徴点を所定の空間に表し、この所定の空間において前記特徴点が所定数以下の部分を特異特徴として選択し、この選択された特異特徴を用いて複数種類生成された
マーカ。
(付記18) 前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出し、この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群が選択された
付記17に記載のマーカ。
(付記19) 画像を入力する工程と、
前記画像から特徴点を抽出する工程と、
前記特徴点を所定の空間に表す工程と、
前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する工程と、
前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成する工程と
を有するマーカ生成方法。
(付記20) 前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出する工程と、
この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する工程と
を有する付記19に記載のマーカ生成方法。
(付記21) 画像を入力する処理と、
前記画像から特徴点を抽出する処理と、
前記特徴点を所定の空間に表す処理と、
前記空間のうち前記特徴点が所定数以下の部分を特異特徴として複数選択する処理と、
前記複数の特異特徴のうちの全部又は一部を用いてマーカパターンを複数種類生成する処理と
を情報処理装置に実行させるマーカ生成プログラム。
(付記22) 前記マーカを一つ生成するのに用いる一又は二以上の特異特徴を使用特異特徴群とし、前記マーカパターンを複数種類生成するための複数の使用特異特徴群がそれぞれ異なる特異特徴の組み合わせで構成されており、前記特異特徴選択手段で選択された複数の特異特徴の中から前記使用特異特徴群を複数選ぶときに、前記所定の空間における前記特異特徴の座標にもとづいて、前記使用特異特徴群を構成する特異特徴に関する距離のデータを算出する処理と、
この距離のデータにもとづいて、前記マーカの生成に用いる使用特異特徴群を選択する処理と
を情報処理装置に実行させる付記21に記載のマーカ生成プログラム。
本出願は、2009年7月23日に出願された日本出願特願2009−171838号を基礎とする優先権を主張し、その開示の全てをここに取り込む。