JP2001109885A - 画像処理方法及び画像処理装置 - Google Patents

画像処理方法及び画像処理装置

Info

Publication number
JP2001109885A
JP2001109885A JP28495499A JP28495499A JP2001109885A JP 2001109885 A JP2001109885 A JP 2001109885A JP 28495499 A JP28495499 A JP 28495499A JP 28495499 A JP28495499 A JP 28495499A JP 2001109885 A JP2001109885 A JP 2001109885A
Authority
JP
Japan
Prior art keywords
image processing
matching
processing apparatus
image
point
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
JP28495499A
Other languages
English (en)
Other versions
JP2001109885A5 (ja
Inventor
Nielsen Frank
ニールセン フランク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP28495499A priority Critical patent/JP2001109885A/ja
Publication of JP2001109885A publication Critical patent/JP2001109885A/ja
Publication of JP2001109885A5 publication Critical patent/JP2001109885A5/ja
Abandoned legal-status Critical Current

Links

Landscapes

  • Image Processing (AREA)
  • Image Analysis (AREA)

Abstract

(57)【要約】 【課題】 幾何学的モデルを適用することで異なるソー
ス間でのオブジェクトの同定を効率的に行う。 【解決手段】 画像処理装置10は、2以上の画像のそ
れぞれについての特徴点を抽出し、2以上の画像のう
ち、一の画像と他の画像との特徴点を比較してマッチン
グを行い、このマッチングの結果に基づいて、一の画像
に含まれるオブジェクトを、他の画像に含まれるオブジ
ェクトに対して同定する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、画像中のオブジェ
クトを、他の画像中のオブジェクトに対して同定する画
像処理方法及び画像処理装置に関する。
【0002】
【従来の技術】画像処理は、コンピュータの高性能化に
ともない、多くの技術分野において多種多様な処理アル
ゴリズムが開発され、多大な成果を得るまでになってい
る。このような画像処理技術の1つとして注目されてい
るものに、パターンマッチングがある。
【0003】ここで、互いに異なる濃度を有するユーク
リッドd次元空間Edにおける2つの点集合S=
{S1,・・・,Sn}及びQ={Q1,・・・,Qm
において、例えば角検出アルゴリズムにより与えられる
特徴点といったように、点集合の点の座標がやや不正確
であるような場合におけるパターンマッチングの問題に
ついて考える。このような場合になすべきことは、マッ
チする点である“インライア”をマッチしない点である
“アウトライア”から識別することである。
【0004】変換Tが与えられた場合、そのマッチング
の正確性を百分率表示のハウスドルフ(Hausdorff)距
離を用いて計算することができる。すなわち、このハウ
スドルフ距離を用いることによって、いわゆるn−kア
ウトライアの効果を除去した状態で、マッチングの正確
性が次式(1)に示すように与えられる。
【0005】
【数1】
【0006】この上式(1)において、minkは、最
小のk番目の要素を返すことを意味しており、d(・,
・)は、距離関数である。このハウスドルフ指標の欠点
は、“A. Efrat and M. J. Katz, Computing fair and
bottleneck matchings in geometric graphs, In Proc.
7th Annu. Internat. Sympos. Algorithms Comput.,pa
ges 115-125, 1996”に記載されているように、1つの
点が複数回マッチすることがあり、そのような場合、視
覚幾何学においては意味のある結果が得られないことで
ある。
【0007】パターンマッチングの最近の技術として
は、“H. Alt and L. Guibas, Resemblance of geometr
ic objects, In Jorg-Rudiger Sack and Jorge Urruti
a, editors, Handbook of Computational Geometry, El
sevier Science Publishers B.V. North-Holland, Amst
erdam, 1998”に記載されているものがある。また、Ira
ni及びRaghavanは、“Sandy Irani and Prabhakar Ragh
avan, Combinatorial and experimental results for r
andomized point matching algorithms, In Proc. 12th
Annual ACM Symposium on Computational Geometry, p
ages 68-77, 1996”にて、集合S,Qが少なくとも
稠密にマッチするという仮定、すなわち、少なくとも一
部の点がマッチするという仮定のもとに変換を見出す手
法として、ランダム配置モンテカルロ法を提案してい
る。このランダム配置モンテカルロ法は、変換を定義す
る特徴点の対に基づいたものであり、グローバルな処理
である。
【0008】パターンマッチングにおいて非常に広く用
いられている局所的処理は、変換行列Tの空間を定義
するパラメータの空間を考え、“Michiel Hagedoorn an
d Remco C. Veltkamp, Reliable and efficient patter
n matching using an affineinvariant metric, Techni
cal Report UU-CS-1997-33, Utrecht University, Depa
rtment of Computing Science, October 1997”や“D.
Mount, N. Netanyahu, and J. Le Moigne, Improved al
gorithms for robust point pattern matching and app
lications to image registration, In 14th Annual AC
M Symposium on Computational Geometry, 1998”に示
されている分岐限界法をこれらの生成パラメータに適用
する方法によるものである。例えば、平面が転移及び/
又は回転することを許容されている場合には、転移の量
とその方向を表す3つのパラメータ(x,y,θ)によ
り生成される3×3行列(同次座標を用いてT=R
2×[0,2π]のように表される。)が定義される。
【0009】また、パターンマッチングを求める他の手
法としては、“T. Akutsu, H. Tamaki, and T. Tokuyam
a, Distribution of distances and triangles in a po
intset and algorithms for computing the largest co
mmon point set, Discreteand Computational Geometr
y, pages 207-331, 1998”に記載されているように、い
わゆるハフ(Hough)変換を一般化したものの1つであ
る多数決法がある。さらに、最近ではIndykらが“P. In
dyk, R. Motwani, and S. Venkatasubramanian, Geomet
ric matching under noise:Combinatorial bounds and
algorithms,In SODA:Symposium of Datastructures and
Algorithms 1999”や“M. Gavrilov, P. Indyk, R. Mo
twani, and S. Venkatasubramanian, Geometric patter
n matching:A performance study, In Proc. of the 15
th Symp. of Comp. Geo., 1999”にて、雑音が存在する
場合に、点集合の直径を考慮することによって、パター
ンマッチングを行うアルゴリズムを提案している。さら
にまた、Cardoze及びSchulmanは、“Cardoze and Schul
man, Pattern matching for spatial point sets, In F
OCS:IEEE Symposium on Foundations of Computer Scie
nce (FOCS), 1988”にて、パターンマッチングを数論と
関係付け、点集合の直径にしたがってフーリエ変換を行
う高速アルゴリズムを提案している。
【0010】
【発明が解決しようとする課題】ところで、上述した画
像処理分野においては、例えば、画像中の任意のオブジ
ェクトを、異なるソースからの画像中の任意のオブジェ
クトに対して、効率的に同定するための手法が要望され
ている。
【0011】しかしながら、幾何学的モデルをオブジェ
クトの同定に応用することは困難である場合が多く、計
算量が膨大となり処理に多大な時間を要するものが多か
った。そのため、最近では、幾何学的モデルを応用して
効率的にオブジェクトの同定を行う手法の確立に対する
要求が高まっている。
【0012】本発明は、このような実情に鑑みてなされ
たものであり、幾何学的モデルを適用することで異なる
ソース間でのオブジェクトの同定を効率的に行うことが
できる画像処理方法及び画像処理装置を提供することを
目的とする。
【0013】
【課題を解決するための手段】上述した目的を達成する
本発明にかかる画像処理方法は、2以上の画像のそれぞ
れについての特徴点を抽出する特徴抽出工程と、2以上
の画像のうち、一の画像と他の画像との特徴点を比較し
てマッチングを行うマッチング工程と、このマッチング
工程の結果に基づいて、一の画像に含まれるオブジェク
トを、他の画像に含まれるオブジェクトに対して同定す
る同定工程とを備えることを特徴としている。
【0014】このような本発明にかかる画像処理方法
は、2以上の画像のそれぞれについての特徴点を抽出
し、2以上の画像のうち、一の画像と他の画像との特徴
点を比較してマッチングを行い、このマッチングの結果
に基づいて、一の画像に含まれるオブジェクトを、他の
画像に含まれるオブジェクトに対して同定する。
【0015】また、上述した目的を達成する本発明にか
かる画像処理装置は、2以上の画像のそれぞれについて
の特徴点を抽出する特徴抽出手段と、2以上の画像のう
ち、一の画像と他の画像との特徴点を比較してマッチン
グを行うマッチング手段と、このマッチング手段による
マッチングの結果に基づいて、一の画像に含まれるオブ
ジェクトを、他の画像に含まれるオブジェクトに対して
同定する同定手段とを備えることを特徴としている。
【0016】このような本発明にかかる画像処理装置
は、特徴抽出手段によって、2以上の画像のそれぞれに
ついての特徴点を抽出し、マッチング手段によって、2
以上の画像のうち、一の画像と他の画像との特徴点を比
較してマッチングを行い、同定手段によって、マッチン
グの結果に基づいて、一の画像に含まれるオブジェクト
を、他の画像に含まれるオブジェクトに対して同定す
る。
【0017】
【発明の実施の形態】以下、本発明を適用した具体的な
実施の形態について図面を参照しながら詳細に説明す
る。
【0018】本発明の実施の形態として図1に示す画像
処理装置10は、例えば、カメラ部20により撮像され
た静止画及び/又は動画像やグラフィックス画像といっ
た画像中の任意のオブジェクトを、データ入力部30か
らの画像中の任意のオブジェクトに対して同定する機能
を有するものである。
【0019】この画像処理装置10は、同図に示すよう
に、カメラ部20により撮像された画像を捕捉するビデ
オキャプチャー部11と、このビデオキャプチャー部1
1により捕捉された画像データI1から特徴点を抽出す
る特徴抽出部12と、データ入力部30から入力した画
像データI2から特徴点を抽出する特徴抽出部13と、
特徴抽出部12及び特徴抽出部13により抽出された特
徴点群が互いに合同であるか否かを検出する等、各種処
理を実行する処理実行部14と、この処理実行部14に
より行われた合同検出の結果を評価する評価部15とを
備える。また、画像処理装置10は、ビデオキャプチャ
ー部11により捕捉された画像データI1及びデータ入
力部30から入力した画像データI2をそれぞれ一時的
に保持するバッファ、各種プログラムやデータを記憶す
る図示しないメモリ、各種処理におけるワークエリアと
しての図示しないメモリ等を備える。
【0020】画像処理装置10は、例えばカメラ部20
により撮像された静止画及び/又は動画像やグラフィッ
クス画像といった画像データI1と、例えば複数の画像
データをデータベースとして保持しているデータ入力部
30に保持されている画像データI2を入力する。これ
らの画像データI1及び画像データI2は、具体的にはそ
れぞれ、例えば図2に示すように、ある風景をカメラ部
20により撮像した画像と、図3に示すように、同じ風
景の一部を拡大して撮像し、データ入力部30に保持し
ていた画像とであるように、異なるカメラ方向で撮像さ
れて得られた約100万画素オーダの2次元画像であ
る。画像処理装置10は、画像データI1に含まれる任
意のオブジェクトと、画像データI2に含まれる任意の
オブジェクトとが合同であるか否かを検出し、これらの
オブジェクトを同定して表示部40に出力する。なお、
これらの画像データI1及び画像データI2は、それぞ
れ、図2及び図3に示すような例にとらわれないもので
あることはいうまでもない。
【0021】ビデオキャプチャー部11は、カメラ部2
0により撮像された画像データI1を入力し、捕捉す
る。そして、ビデオキャプチャー部11は、捕捉した画
像データI1を後段の特徴抽出部12に供給する。
【0022】特徴抽出部12,13は、それぞれ、画像
データI1及び画像データI2を入力し、画像データI1
及び画像データI2のそれぞれから特徴点を抽出する。
すなわち、特徴抽出部12,13は、それぞれ、画像デ
ータI1と画像データI2との少なくとも一部を、例えば
ユーザによる命令にしたがって、或いは、自動的に重複
させるとともに、画像データI1及び画像データI2のそ
れぞれについて、特徴点を抽出する。
【0023】ここで、画像データI1と画像データI2
の少なくとも一部が重複されて形成される重複部分は、
図4(A)に示すように、3次元空間上の点Mをカメラ
等により撮像することによって、2次元画像上で点m1
及び点m2に投影されて得られる画像データI1及び画像
データI2を、同図(B)に示すように、重複させて構
成される部分である。例えば3次元空間上の点Mの座標
が(x,y,z)と表されるとき、点m1及び点m2は、
それぞれ、(x1/w1,y1/w1)、(x2/w2,y2
/w2)と表される。
【0024】特徴抽出部12,13は、それぞれ、画像
データI1及び画像データI2に含まれる絵柄のエッジ、
角、連結等を検出することによって、可能な限りに多く
の特徴点を抽出する。このとき、特徴抽出部12,13
は、それぞれ、重複部分とその近傍に位置する画像デー
タI1及び画像データI2の特徴点を優先的に抽出するこ
ともできる。また、特徴抽出部12,13は、それぞ
れ、画像データI1又は画像データI2についてディジタ
ルズームを行い、特徴点を抽出することもできる。特徴
抽出部12,13は、それぞれ、抽出した特徴点からな
る点集合を後段の処理実行部14に供給する。
【0025】また、特徴抽出部12,13は、それぞ
れ、画像データI1と画像データI2との重複部分の割合
を示す重複率に応じて、画像データI1と画像データI2
との位置関係を調整する際に用いるマッチング処理の手
法を選択する選択信号を生成する。すなわち、特徴抽出
部12,13は、それぞれ、図5に示すように、重複率
が100%に近いほど、特徴点の数に比例したパラメー
タである特徴量を用いてマッチング処理を行う手法を選
択する旨の選択信号を生成し、重複率が小さいほど、画
素値を用いてマッチング処理を行う手法を選択する旨の
選択信号を生成する。特徴抽出部12,13は、それぞ
れ、生成した選択信号を後段の処理実行部14に供給す
る。
【0026】処理実行部14は、特徴抽出部12,13
のそれぞれから供給された2つの点集合と、選択信号と
に基づいて、幾何学的な処理を行う。特に、処理実行部
14は、画像データI1に含まれるオブジェクトを、画
像データI2に含まれるオブジェクトに対して同定する
ために、特徴抽出部12,13のそれぞれから供給され
た2つの点集合が合同であるか否かを検出する。この合
同の検出処理については、後に詳述する。
【0027】処理実行部14は、選択信号に基づいて、
特徴点を用いてマッチングを行うと判断した場合には、
画像データI1及び画像データI2を構成する複数の画素
の強度値等に着目し、例えば画像データI1についての
特徴点群S1に含まれる特徴点p1と、画像データI2
についての特徴点群S2に含まれる特徴点p2とがマッ
チングするための条件として、次式(2)を満たす場合
に、画像データI1と画像データI2とのマッチングがと
れていることを認識する。
【0028】
【数2】
【0029】ここで、上式(2)において、εは、ε≧
0を満たす値を有するものであり、d2は、ユークリッ
ド距離である。また、Hは、画像データI1と画像デー
タI2とを合成する際に用いるマトリックスである。
【0030】また、処理実行部14は、マッチング処理
としては、上述したものの他、いわゆるハウスドルフ
(Hausdorff)マッチング処理や、いわゆるボトルネッ
ク(Bottleneck)マッチング処理であっても、上述した
ように、画像データI1についての特徴点と画像データ
2についての特徴点とを用いて、共通点を探索するこ
とができる。
【0031】ハウスドルフマッチング処理は、画像デー
タI2についての特徴点群S2に含まれる特徴点p2
近接して位置する画像データI1についての特徴点p1
を接続する処理である。このハウスドルフマッチング処
理においては、このような処理を行うことによって、画
像データI1と画像データI2との一致度を示す評価値で
あるハウスドルフ距離を生成する。
【0032】一方、ボトルネックマッチング処理は、画
像データI1と画像データI2との類似性を調べるのに好
適なマッチング処理である。このボトルネックマッチン
グ処理においては、ハウスドルフマッチング処理と同様
に、画像データI1と画像データI2との重複部分と、画
像データI1と画像データI2との類似度を示す評価値を
生成する。
【0033】また、処理実行部14は、上述したマッチ
ング処理の他に、特徴点の特性を用いたことを考慮した
モンテカルロ法を用いて、マッチングの正確性をより向
上させることもできる。図6に、モンテカルロ法のアル
ゴリズムの一例を示す。すなわち、処理実行部14は、
マッチング処理を行う際に、kを、2k個の特徴点によ
り完全にマッチングがとれる基本的な変換を演算するた
めに必要な特徴点の数とし、ランダムにkの個数を選択
するとともに、特徴点群S2のk個の特徴点を用い
て、モンテカルロ法を適用したマッチング処理を行う。
【0034】この処理実行部14は、画像データI2
含まれる画像データI1の特徴にマッチングしている画
像データI1及び画像データI2についての転移量及び回
転移動量を探索する処理を行う。すなわち、処理実行部
14は、図7に示すように、画像データI1に含まれる
特徴点(L1,L2)を選択する。このとき、処理実行部
14は、後の幾何学的フィルタリングにて用いる画像デ
ータI2に含まれる特徴点(R1,R2)を含むような領
域を避けて、画像データI1に含まれる特徴点(L1,L
2)を選択する。ここで、画像データI2に含まれる特徴
点(R1,R2)は、円領域(d2(L1,L2)−2μ,
2(L1,L2)+4μ)から選択されている。そし
て、処理実行部14は、特徴抽出部12,13のそれぞ
れにより抽出した特徴点の位置的な誤差等を考慮し、4
μだけ半径の大きい円領域を設定する。
【0035】また、処理実行部14は、図8に示す幾何
学的フィルタリングアルゴリズムを用いて、特徴点p*
を特徴点pに接する特徴点とする。この幾何学的フィル
タリングアルゴリズムを適用することで、特徴点pと特
徴点p*との関係は、次式(3)のように表される。
【0036】
【数3】
【0037】そして、処理実行部14は、検出した特徴
点について、適応的に幾何学的フィルタリングアルゴリ
ズムを用いる。図8に示した幾何学的フィルタリングア
ルゴリズムにおいては、ランダムに選択したk個の特徴
点からなる画像データI1についての特徴点群S1(L
1,L2,・・・,Lk)を用いて、順次画像データI2
ついての特徴点p2を、特徴点群S2(R1,R2,・・
・,Rk)から選択し、特徴点群S1に含まれる特徴点
とマッチングする特徴点を探索する。ここで、R2は、
円領域(R1,L12−2μ,4μ)に含まれる特徴点
であり、R3は、円領域(R2,L23−2μ,4μ)に
含まれる特徴点であり、Rkは、円領域(Rk-1,Lk-1
k−2μ,4μ)に含まれる特徴点である。
【0038】さらに、処理実行部14は、図9に示すよ
うなアルゴリズムと、図8に示した幾何学的フィルタリ
ングアルゴリズムとをランダムに組み合わせることによ
って、画像データI1と画像データI2とのマッチングを
とる。そして、処理実行部14は、マッチングを行った
結果を評価部15に供給する。
【0039】評価部15は、上述したマッチング処理に
よる結果を処理実行部14から入力し、例えば処理実行
部14により行われた合同の検出処理を評価して評価値
を生成する。また、評価部15は、評価関数として、上
述したハウスドルフマッチング処理や、ボトルネックマ
ッチング処理を行うとともに、画素値でマッチングをと
る場合には、画像データI1と画像データI2との画素値
を検出し、これらの画像データI1と画像データI2との
画素値の相互相関を利用して評価値を生成する。評価部
15は、評価が最良となった場合に、画像データI1
画像データI2とが合同である旨を示す信号を表示部4
0に出力するとともに、画像データI1又は画像データ
2を表示部40に出力する。そして、表示部40は、
評価部15からの信号に基づいて、画像データI1と画
像データI2とが合同である旨を図示しない表示画面に
表示したり、画像データI1又は画像データI2を表示画
面に表示することができる。
【0040】このような画像処理装置10は、例えば図
10に示すような一連の処理を行うことによって、画像
データI1に含まれるオブジェクトを、画像データI2
含まれるオブジェクトに対して同定する。
【0041】まず、画像処理装置10は、同図に示すよ
うに、ステップS1において、カメラ部20からの画像
データI1を入力する。なお、画像データI1は、必ずし
もカメラ部20から供給されるものでなくてもよく、例
えばユーザが指定することにより同定を行う対象として
選択されたものであってもよい。また、画像処理装置1
0は、入力した画像データI1を、例えばズーム率を変
化させることにより拡大及び/又は縮小した画像データ
からなるピラミッドを生成する。
【0042】続いて、画像処理装置10は、ステップS
2において、ユーザの指定に基づいて、同定の対象とす
る画像データI1中のオブジェクトを選択する。
【0043】続いて、画像処理装置10は、ステップS
3において、ステップS1にて生成された画像データI
1のピラミッドを、特徴抽出部12に供給し、特徴抽出
部12によって、各画像データについて、上述したよう
に特徴点を抽出する。なお以下では、画像データI1
ついての適切な縮尺率における画像データを画像データ
1と称するものとする。特徴抽出部12は、特徴点を
抽出する際に、画像データI1の所定の3次元方向にお
ける特徴点を抽出する。
【0044】続いて、画像処理装置10は、ステップS
4において、データ入力部30からの画像データI2
入力する。なお、画像データI2は、必ずしもデータ入
力部30から供給されるものでなくてもよく、例えばユ
ーザが指定することにより同定を行う対象として選択さ
れたものであってもよい。また、画像処理装置10は、
入力した画像データI2を、例えばズーム率を変化させ
ることにより拡大及び/又は縮小した画像データからな
るピラミッドを生成する。
【0045】続いて、画像処理装置10は、ステップS
5において、ステップS4にて生成された画像データI
2のピラミッドを、特徴抽出部13に供給する。画像処
理装置10は、特徴抽出部12,13によって、画像デ
ータI1のピラミッドを構成する各画像データと、画像
データI2のピラミッドを構成する各画像データとを、
例えばユーザによる命令にしたがって、或いは、自動的
に重複させるとともに、各画像データについて、上述し
たように特徴点を抽出する。画像処理装置10は、この
ようにすることによって、画像データI2に含まれるオ
ブジェクトに対して、縮尺率が異なる画像データI1
含まれるオブジェクトを同定する際にも、互いの縮尺率
を変化させ、適切な縮尺率の画像データ同士を同定する
ことができる。なお以下では、画像データI2について
の適切な縮尺率における画像データを画像データI2
称するものとする。特徴抽出部13は、特徴点を抽出す
る際に、画像データI2の所定の3次元方向における特
徴点を抽出する。また、画像処理装置10は、特徴抽出
部12,13のそれぞれによって、画像データI1と画
像データI2との重複率を参照し、マッチング処理の手
法を選択する選択信号を生成する。
【0046】続いて、画像処理装置10は、ステップS
6において、処理実行部14による初期化を行う。
【0047】続いて、画像処理装置10は、ステップS
7において、処理実行部14により画像データI1につ
いての特徴点のうちから任意の1組の特徴点F1を選択
する。
【0048】続いて、画像処理装置10は、ステップS
8において、処理実行部14により画像データI2につ
いての特徴点のうちから任意の1組の特徴点F2を選択
する。
【0049】続いて、画像処理装置10は、ステップS
9において、処理実行部14により特徴点F1と特徴点
2とを用いて、マッチング処理を行い、特徴点F1と特
徴点F2とが一致しているか否かを判別する。
【0050】ここで、特徴点F1と特徴点F2とが一致し
ていない場合には、画像処理装置10は、ステップS8
へと処理を移行し、他の特徴点F2を選択し、再びマッ
チング処理を行う。
【0051】一方、特徴点F1と特徴点F2とが一致して
いる場合には、画像処理装置10は、ステップS10に
おいて、評価部15によって、評価値を生成する。
【0052】続いて、画像処理装置10は、ステップS
11において、処理実行部14によって、いわゆるハン
ガリー理論で用いられるO(1)が上述した処理におけ
るサンプル数よりも大きいか否かを判別する。
【0053】ここで、O(1)がサンプル数よりも大き
くない場合には、画像処理装置10は、ステップS7へ
と処理を移行し、ステップS7以降の処理を再び繰り返
す。
【0054】一方、O(1)がサンプル数よりも大きい
場合には、画像処理装置10は、ステップS12におい
て、評価部15によって、ステップS10にて生成した
評価値が以前にマッチング処理を行ったときの評価値よ
りも良好であるか否かを判別する。
【0055】ここで、評価値が良好でない場合には、画
像処理装置10は、ステップS4へと処理を移行し、デ
ータ入力部30から他の画像データI2を入力し、ステ
ップS4以降の処理を再び繰り返す。
【0056】一方、評価値が良好である場合には、画像
処理装置10は、画像データI1と画像データI2とが合
同である旨を示す信号を表示部40に出力するととも
に、画像データI1又は画像データI2を表示部40に出
力し、一連の処理を終了する。
【0057】なお、画像処理装置10は、画像データI
1と、データ入力部30に保持されている全ての画像デ
ータI2とのマッチング処理を行い、予め決められた数
だけ評価値が良好である画像データI2を図示しないメ
モリ等に保持し、これらの画像データI2を表示部40
に出力することもでき、最良の評価値を有する画像デー
タI2のみを表示部40に出力することもできる。
【0058】このように、画像処理装置10は、画像デ
ータI1中のオブジェクトを画像データI2中のオブジェ
クトに対して同定することができ、例えば画像データI
1中のオブジェクトをデータ入力部30に保持されてい
る画像データI2の中から検索することができる。
【0059】このような画像処理装置10は、マッチン
グ処理において、画像データI1と画像データI2との特
徴点を上述したような幾何学的手法を用いてマッチング
することから、効率的に画像データI1中のオブジェク
トを画像データI2中のオブジェクトに対して同定する
ことができる。
【0060】以下、このような画像処理装置10におけ
る各種処理を詳細に説明する。以下では、上述した画像
データI1及び画像データI2のそれぞれにおける特徴点
群を、それぞれ、点集合S,Qとし、これらの合同
の検出処理、対称性の検出処理、パターンマッチング、
最大共通点集合の検出処理等について説明し、これらの
応用についても言及する。
【0061】上述した画像処理装置10は、ユークリッ
ドd次元空間Edにおける2つの点集合S={S1
・・・,Sn},Q={Q1,・・・,Qm}に関し
て、変換空間Tにおける変換Tを点集合Sに対して
適用した場合の{T(S),Q}のマッチングが最
大となる変換Tを見出すことができる。また、画像処理
装置10は、変換Tに対して幾何学的制約を付すことに
よって、パターンマッチングを条件付きで行うための決
定論的なアルゴリズムとランダムアルゴリズムとを実現
することができる。
【0062】画像処理装置10は、各点がある小量εだ
け揺らいだ場合であっても、ほぼ正確に点集合パターン
マッチングを求めることができる。この許容揺動量ε
は、点集合の最小点間距離dminと点間距離dとにより
表されるdmin/2√dによって変化する。この画像処
理装置10は、例えばいわゆるハウスドルフ指標や対称
性差異指標といったマッチング{S,Q}に点数付
けを行う連続的な指標を採用する代わりに、許容揺動量
εの最大値の誤差を許容するような1対1でマッチする
点の数を計数することによって、マッチングの指標とす
る。
【0063】なお、以下の説明では、1ε(P,Q)
は、d2(P,Q)≦2εの場合且つそのときに限って
1ε(P,Q)=1であり、その他の場合には1ε
(P,Q)=0であるような{0,1}関数であるもの
とする。また、以下の説明では、マッチングの正確性を
表す点数score({S,Q})は、点集合Q
の順列m!の全体にわたって変化する値であるσを用い
て、次式(4)のように定義するものとする。
【0064】
【数4】
【0065】ここで、上式(4)に示す定義は、全ての
ε≧0に対して成立する。
【0066】画像処理装置10は、まず最初に、マッチ
する点である“インライア”をマッチしない点である
“アウトライア”から区別し、次に、マッチする点に同
一のラベルを付与する。画像処理装置10は、このよう
な予備的な処理を行うことによって、Rにおける連続
距離指標を取り扱うことが可能となるとともに、局所的
な極小部のそれぞれのマッチを改良することができる。
【0067】例えば、画像処理装置10は、最近提案さ
れた“D. Mount, N. Netanyahu, and J. Le Moigne, Im
proved algorithms for robust point pattern matchin
g and applications to image registration, In COMPG
EOM:Annual ACM Symposium on Computational Geometr
y, 1998”や“M. Hagedoorn and R. Veltkamp, A gener
al method for partial point set matching, In Proce
edings of the 13th International Annual Symposium
on Computational Geometry (SCG-97), pages 406-408,
New York, June 4-6 1997, ACM Press”における変換
空間の分岐限界法(局所処理)を用いることができる。
すなわち、画像処理装置10は、上位レベルにおいて
は、マッチする変換のほぼ全てを見出すことができ、下
位レベルにおいては、それぞれの局所的極小部に対し
て、マッチする変換をより正確となるように改良するこ
とができる。
【0068】概略的には、画像処理装置10は、図11
に示すような手法により幾何学的パターンマッチングを
行う。すなわち、画像処理装置10は、入力した2つの
点集合S,Qと許容揺動量εとに基づいて、グロー
バルな処理として、点集合S,Qの両者におけるイ
ンライアとアウトライアとを区別して検出し、マッチす
る点に同一のラベルを付与する。この処理は、上述した
ように、マッチング{S,Q}に点数付けを行う連
続的な指標を採用して行われるものではなく、不連続な
指標により行われる。そして、画像処理装置10は、局
所的な処理として、ラベル付けされた点集合Sl
lを形成し、上述した連続的な指標を採用してパタ
ーンマッチングを改良し、変換空間Tにおける変換T
の集合を出力する。
【0069】また、視覚幾何学では抽出された不正確な
特徴点から候補を選択する必要が頻繁に生じることか
ら、画像処理装置10は、ある特徴を有する全ての変換
を報告するとともに、そのような変換の数を計数する。
【0070】以下、このような画像処理装置10におけ
る処理を詳細に説明していく。
【0071】まず、2次元、3次元及びd次元空間にお
ける合同問題の定義を行い、その際、合同演算子がどの
ように数の対称性に関係付けられるかについて説明す
る。また、合同問題と、グラフ理論、対称性及び数論と
の関係について説明する。なお、以下の説明では、正確
なマッチングを接頭辞Eで表すとともに、雑音を含むマ
ッチングを接頭辞Nで表すものとする。また、以下の説
明では、例証、質問、報告及びカウントを、それぞれ、
W,Q,R,Cで表すものとする。そのため、例えば、
“EW合同問題”とは、T(S)=Qとなる変換T
∈T、すなわち、点集合S,Qが合同である
(S≡Qで表す)ことを報告するように求めてい
る問題のことを示す。また、TI,TR,T
T,TH,TS,TAは、それぞれ、等
長変換(isometry)、回転(rotational)、転移(tran
slational)、相似(homothetic)、類似(similitud
e、等長変換とスケーリングとを行ったもの)、アフィン
変換群空間を表すものとする。
【0072】「合同問題」とは、一般に、2つの点集合
S,Qが合同であるかどうかを問うものである。な
お、以下の説明では、環境空間を強調して表したい場合
には、添え字を用いることとする。例えば、S≡TH
Qは、相似空間において点集合Sが点集合Qに対
して合同であることを表す。なお、添え字が明示的に示
されていない場合には、“≡”は、“≡TH”であるもの
とする。
【0073】ここで、次のような合同問題を考える。
「2つのd次元ユークリッドn点集合S={S1,・
・・,Si=(Si,1,・・・Si,d),・・・,Sn}及
びQ={Q1,・・・,Qi=(Qi,1,・・・
i,d),・・・,Qn}が与えられたとき、点集合S
は、点集合Qと合同であるか?すなわち、S≡
Qであるか?」
【0074】この問題は、2次元空間E2及び3次元
空間E3においては、“M. D. Atkinson, An optimal
algorithm for geometrical congruence, J. Algorithm
s, 8:159-172, 1987”や“H. Alt, K. Mehlhorn, H. Wa
gener, and Emo Welzl, Congruence, similarity and s
ymmetries of geometric objects, Discrete Comput.Ge
om., 3:237-256, 1988”に記載されているように、いわ
ゆる実RAMモデルによりO(n log n)時間で解
を求めることができるが、それ以外の任意の次元に対し
ては、いわゆるグラフ同型問題と同様に、解を求めるこ
とが困難である。なお、このグラフ同型問題の困難さが
なぜどのように生じるのかを特徴付けることは、“J. K
obler, U. Schoning, and J. Toran, The Graph Isomor
phism Problem:Its Structual Complexity, Birkhause
r, Boston, 1993”にて示されているように、未だに解
決されていない。
【0075】Alt等は、上述した“H. Alt, K. Mehlhor
n, H. Wagener, and Emo Welzl, Congruence, similari
ty and symmetries of geometric objects, Discrete C
omput. Geom., 3:237-256, 1988”にて、d次元の点集
合に対するO(nd-2 logn)時間の確定論的アルゴ
リズムについて論じている。また、最近Akutsuは、“Ta
tsuya Akutsu, On determining the congruence of poi
nt sets in d dimensions, Comput. Geom. Theory App
l., 9(4):247-256, 1998”にて、“Meijer, Cryptology
and the birthday paradox, UMAP:The Journal of Und
ergraduate Mathematics and its Applications, 17, 1
996”に示されているバースディパラドックスに基づ
く、ランダムO^(nd-1/2 log2 n)時間O^(n
d-1/2)空間アルゴリズムを提案している。なお、O^
(・)は、ランダム化されたアルゴリズムの処理能力を
表す。
【0076】ここで、Ed→Edで等長写像を表すも
のとする。すなわち、d(P,Q)=d(T(P),T
(Q))∀P,Q∈Edである。等長写像は、剛体運
動とも称され、鏡映をともなってもよく、鏡映をともな
っていなくてもよい。任意の等長変換T∈TIは、
d×d直交行列Rd∈TRと転移部td∈TTと
に分解することができる。すなわち、T(x):=Rd
x+tdと表すことができる。なお、d×d直交行列Rd
の行列式の符号によって、等長変換のキラリティが決ま
る。すなわち、det(Rd)=1のとき、その等長変
換は正則であるといい、det(Rd)=−1のとき、
その等長変換は変則であるといわれる。なお、2つの等
長変換の合成は、やはり等長変換である。例えば、滑空
鏡映は、鏡映と転移との合成であり、例えば規則的に繰
り返されたパターンを生成するのに用いられている。図
12に等長変換の幾つかの例を示す。
【0077】以下の説明では、正則な等長変換のみにつ
いて議論するものとする。なぜならば、変則等長変換の
場合には、まず最初に集合の1つ、例えばSに対し
て、x1→−x1といった鏡映変換を施せばよいからであ
る。点集合Sの標準形は、全てのQ≡Sに対し
て、O(S)=O(Q)となるオブジェクト(カテ
ゴリとも称される。)O(S)である。
【0078】したがって、合同を検出するために行う必
要があることとしては、最初に、点集合S,Qの両
方の標準型O(S)及びO(Q)を計算することで
あり、次に、これらの標準型O(S)及びO(Q)
が等しいかどうかを調べることである。ここで、規則的
な多面体に対しては、組み合わせ標準型として、“E.Sc
hulte, Symmetry of polytopes and polyhedra, In Jac
ob E. Goodman and Joseph O'Rourke, editors, Handbo
ok of Discrete and Computational Geometry, chapter
16, pages 311-330, CRC Press LLC, Boca Raton, FL,
1997”に示されているSchlafliの記号を用いることが
できる。Schlafliの記号{p1,・・・,pd-1}は、規
則的な多面体の局所的構造を次のように符号化する。す
なわち、任意の(i+1)面Fにおいて、piは、Fの
与えられた(i−1)面を含むi面の数を表す。例え
ば、2次元の正p角形は、記号{p}の組み合わせによ
り表すことができ、対称群は、2p次の二面体群であ
る。ここで、p≧3のとき、超越数を取り扱う必要があ
るが、循環群Cp及びその鏡映Cp’となる。さらに、任
意のd次元多面体は、“J. E. Goodman and J. O'Rourk
e, editors, Handbookof Discrete and Computational
Geometry, CRC Press LLC, Boca Raton, FL,1997”に示
されているWythoffの構成法のように、一般化されたSch
lafliの記号の組み合わせにより一意に表現することが
できる。したがって、2つの点集合S,Qが与えら
れたときには、まず、その凸閉包の対応する一般化Schl
afli記号を計算して求め、それらが一致するかどうかを
調べる。このとき、組み合わせ標準形式が2つの点集合
S,Qの間で異なる場合には、結果は否である。一
方、組み合わせ標準形式が2つの点集合S,Qで一
致する場合には、全体のテストを行う。
【0079】つぎに、平面上における合同の検出につい
て説明する。平面上において合同を検出する簡単な方法
は、上述した“M. D. Atkinson, An optimal algorithm
forgeometrical congruence, J. Algorithms, 8:159-1
72, 1987”に記載されているように、次式(5)及び次
式(6)をそれぞれ計算して点集合S,Qのそれぞ
れのセントロイドcS,cQを求め、次に、セントロイド
SがセントロイドcQに写像されるように転移を行う。
【0080】
【数5】
【0081】
【数6】
【0082】これは、任意のアフィン変換Tに対して、
すなわち、剛体運動に対して、cT(S)=T(cS)が成
立するためである。ここで、S≡Qである場合に
は、Q=T(S)となるような変換T∈Tが存在
するとともに、任意のT∈TAに対して、cQ
T(S)=T(cS)であることから、点集合S,Q
のそれぞれのセントロイドcS,cQは、互いに完全に一
致する。
【0083】ここで、それぞれのセントロイドを中心と
した極座標(θ,r)を用いて各点の座標を表すことに
する。このとき、辞書式順序に整列された極座標とマッ
チする完全循環パターンが存在する場合には、例えば
“D. E. Knuth, J. H. Morris,and V. R. Pratt, Fast
pattern matching in strings, SIAM Journal on Compu
ting, 6:323-350, 1977”に示されているMorris-Knuth-
Prattアルゴリズムを用いて直線時間軸上で求められる
ように、そのときに限って点集合Sは、点集合Qに
対して合同である。ここで循環パターンマッチングは、
長さが2nである文字列における長さがnである部分文
字列パターンマッチングとして捉えることができる。
【0084】なお、最大で2n=O(n)個である複数
の等長変換が存在し得るが、それらは、S≡Qで
あるか或いはS≡Qではないかもしれない。これ
らの全てを列挙してその数を計数し、さらに例証を行
う。図13に対合的回転対称の幾つかの例を示す。S
≡Qであるか否かを検出することは、それ程困難な
ことではないが、T(S)=Qとなるような全ての
変換Tを列挙することは困難である。ここで、点集合
Sの変換群をT(S)={T|T(S)=
S}と表すものとする。なお、“H. S. M. Coxeter,
Introduction to Geometry, John Wiley & Sons, New Y
ork, 2nd edition, 1969”、“H. S. M. Coxeter, Regu
lar Polytopes, Dover, New York, NY, 2nd edition, 1
973”及び“H. S.M. Coxeter, Regular Complex Polyto
pes, Cambridge University Press, Cambridge, Englan
d, 2nd edition, 1991”に示されている対称群又は鏡映
群も、T(S)={T|T(S)=S}と表す
ものとする。
【0085】Atallahは、“M. J. Atallah, On symmetr
y detection, IEEE Trans. Comput., C-34:663-666, 19
85”にて、平面上の対称を検出するアルゴリズムを提示
している。また、“S. Iwanowski, Testing approximat
e symmetry in the plane isNP-hard, Theoret. Compu
t. Sci., 80:227-262, 1991”に示されているように、
点が揺動することを許容した場合には、問題はいわゆる
NP困難となることが知られている。これは、各点に対
して、点集合を合同とするような揺動を求める必要があ
ることによるものである。なお、アルゴリズムの安定性
に関する改良については、後述するものとする。
【0086】ここで、点集合の類似性を検出するアルゴ
リズムを困難とする問題について説明する。ここで、次
のような全ての部分集合文字列のマッチングの問題を考
える。「有限のアルファベットΣ上の文字列s[1..
n]及びパターンp[1..m]が与えられ、パターン
p[1..m]が文字列s[1..n]の中に循環的に
現れる場合且つそのときに限ってo[i]=1となるブ
ール配列を求めよ。」
【0087】ここで、全ての部分集合文字列のマッチン
グの問題は、“Richard Cole and Ramesh Hariharan, T
ree pattern matching and subset matching in random
izedO(n log3 m)time, In Proceedings of the Twenty-
Ninth Annual ACM Symposium on Theory of Computing,
pages 66-75, El Paso, Texas, 4-6 May 1997”や“Ri
chard Cole, Ramesh Hariharan, and Piotr Indyk, Tre
e pattern matchingand subset matching in randomize
d O(n log3 m)time, In Proceedings of SODA 1999, Ja
n. 1999”に示されているように、O(n log3 m)
時間内に解くことが可能である。
【0088】ソートされた1次元点集合S,Qに対
しては、素朴なアルゴリズムを用いてO(nm)時間内
に解くことが可能である。Akutsuは、上述した“Tatsuy
a Akutsu, On determining the congruence of point s
ets in d dimensions, Comput. Geom. Theory Appl., 9
(4):247-256, 1998”にて、点集合Sが点集合Qに
含まれるか否かを検出するには、O^((m/n+
2) polylog n)時間が必要であることを述
べている。また、最近では、CardozeとSchulmanは、“C
ardoze and Schulman, Pattern matching for spatial
point sets, In FOCS:IEEE Symposium on Foundations
of Computer Science (FOCS), 1988”にて、O^(N
log N + polylog Δ)アルゴリズムを提案
している。ここで、N=max{n,m}であり、Δ
は、点集合Qの直径である。格子を符号化した無限d
次元点集合として取り扱う結晶学においては、変換Tに
より結晶を分類することが行われており、変換は、変換
群によりラベル付けがなされる。例えば、2次元空間
2では17個、3次元空間E3では320個、4次
元空間E4では4783個の結晶学的群が存在するこ
とが知られている。
【0089】雑音のモデルとして、中心がpであり半径
がεである球を次式(7)により表す。
【0090】
【数7】
【0091】また、揺動を含む点集合を次式(8)によ
り表す。
【0092】
【数8】
【0093】ただし、各点S∈Sは、半径がεである
球の中に移動されているものとする。図14に点集合
S及び雑音を含む点集合Sεを示す。ここで、点集
合の最小点間距離dmin>εである場合には、同図
(B)に示すように、点集合S内の各点を中心とする
球は、互いに素となる。このことは、後述するように、
パターンマッチングアルゴリズムを強固なものとする。
【0094】さらに、上述した2次元空間における合同
の検出原理を3次元空間における合同の検出に拡張する
ことができる。すなわち、点集合S,Qの両方のセ
ントロイドを計算し、各集合に対して、それらのセント
ロイドを中心とする単位球面上に全ての点を射影する。
次に、射影された点の凸閉包を計算する。さらに、射影
された各点に対して、セントロイドからの元の距離をラ
ベルとして付加し、凸閉包の互いに隣接する点により構
成される角の頂点の時計方向の隣接リストを作成する。
そして、“J. E. Hopcroft and R. E. Tarjan, A VlogV
algorithm forisomorphism of triconnected planar g
raphs, Journal of Computer and System Sciences, 7
(3), June 1973”に示されているTarjan平面グラ
フ合同アルゴリズムの変形を用いて、これらの2つの注
釈付き平面グラフが同型であるか否かをO(n log
n)時間内に評価する。ここで、スケーリングを行うこ
とが可能な場合には、全ての固定次元に対して、まず最
初に、最小点間距離を“1”として、“F. P. Preparat
a and M. I. Shamos, Computational Geometry:AnIntro
duction, Springer-Verlag, New York, NY, 1985”に示
されているように、点集合S,Qの両方をO(n
log n)時間内に規格化する。なお、次元が“3”
以上の場合には、“Sergei N. Bespamyatnikh, An effi
cient algorithm for the three-dimensional diameter
problem, In Proc. 9th ACM-SIAM Sympos. Discrete A
lgorithms, pages 137-146, 1998”に記載されているよ
うに、d次元空間Edのn点集合の直径をOd(n l
og n)時間で計算する決定論的アルゴリズムは知ら
れていないことから、最小点間距離を採用する。
【0095】また、剛体ユークリッド運動(≡TI)では
なく、アフィン変換(≡TA)である場合にも、時間複雑
性が同じであることをSprinzakとWermanが“J. Sprinza
k and M. Werman, Affine point matching, Pattern Re
cogn. Lett., 15:337-339, 1994”にて報告している。
これは、2次元画像から正射影(アフィン変換)による
3次元物体を認識するのに特に有用である。なお、可能
なO(n)個の変換を全て列挙することが必要な場合に
は、他の有効なアルゴリズムを用いることが必要であ
る。Wolter等は、“Jan D. Wolter, Tony C. Woo, and
Richard A. Volz,Optimal algorithms for symmetry de
tection in two and three dimensions,Thw Visual Com
puter, 1(1):37-48, July 1985”や“Xiaoyi Jiang, Ke
ren Yu,and Horst Bunke, Detection of rotational an
d involutional symmetries andcongruity of polyhedr
a, The Visual Computer, 12(4):193-201, 1996, ISSN0
178-2789”にて、2次元及び3次元多面体の対称性の検
出方法として、最適2次時間及び線形空間アルゴリズム
を提案している。この方法は、“K. Sugihara,An nlogn
algorithm for determining the congruity of polyhe
dra, J. Comput. Syst. Sci., 29:36-47, 1984”に示さ
れている最適合同3次元多面体検出器と同様に、対称性
と合同性の両方を検出するのに用いることができる。
【0096】さらに、より高い次元における合同の検出
は、より困難なものとなる。任意の一定次元における合
同の検出として、Alt等は、“H. Alt and L. Guibas, R
esemblance of geometric objects, In Jorg-Rudiger S
ack and Jorge Urrutia, editors, Handbook of Comput
ational Geometry, Elsevier Science Publishers B.V.
North-Holland, Amsterdam, 1998”に示しているよう
に、空間を縮小することによって、“H. Alt, K. Mehlh
orn, H. Wagener, and Emo Welzl, Congruence, simila
rity and symmetries of geometric objects, Discrete
Comput. Geom., 3:237-256, 1988”に示したOd(n
d-2 log n)時間のアルゴリズムを得ている。実際
に、d次元空間における合同の検出は、(d−1)次元
空間における合同検出をn回行うことにより実現するこ
とができる。最近、Akutsuは、上述したように、“Tats
uya Akutsu, On determining the congruence of point
sets in d dimensions, Comput. Geom. Theory Appl.,
9(4):247-256, 1998”にて、ランダム時間及び空間ア
ルゴリズムを提案している。集合S,QがS≡
Qであるか否かを解く原始的な手法としては、集合
Sの任意の(d−1)シンプレックスσS={S1,・
・・,Sd}を選択し、集合Qへのx個の変換を全て
計算することである。なお、xは、次式(9)で表され
る。
【0097】
【数9】
【0098】各変換が剛体運動に対応する場合には、物
理的同一性の評価をOd(n logn)時間で行う。非
縮退d組集合S=(S1,・・・,Sd)及び集合Q
のd個の点からなる部分集合が与えられたとき、チェッ
クすべき可能な変換は、シンプレックスσSの点の異な
る順列であるd!個存在し、これらは必ずしも剛体運動
ではない。すなわち、行列及びRdは必ずしも直交では
ない。ここで、アフィン変換における全てのi∈{1,
・・・,d}に対する写像Si→Qiを与える変換を次式
(10)により表すことにする。
【0099】
【数10】
【0100】このような変換は、次式(11)に示すよ
うに計算される。
【0101】
【数11】
【0102】ここで、Rdを次式(12)のように記載
すると、次式(13)を得る。
【0103】
【数12】
【0104】
【数13】
【0105】上式(13)におけるQi,jは、点Qiのj
番目の成分である。
【0106】このとき、集合S,Qのセントロイド
はマッチすることから、(d−1)組について、すなわ
ち、(d−2)個のシンプレックスを考慮すればよい。
したがって、原始的な方法の線形空間を用いた計算時間
は、Od(nd log n)である。なお、アフィン変換
の場合にも、同様に合同が検出される。ここで、点集合
へのd次元合同演算子に対する、O(nfloor[d/2])空
間を用いた時間複雑性がO(nfloor[(d+1)/2] log
n)であるような簡単な決定論アルゴリズムを提案す
る。ここで、floor[A]は、Aを下回らない最小
の整数である。この方法は、集合S,Qとこれらの
凸閉包conv(S),conv(Q)との関係
が、次式(14)により表されるという原理に基づいて
いる。
【0107】
【数14】
【0108】これは、アフィン変換T∈TAに対し
ては、次式(15)が成立することによる。
【0109】
【数15】
【0110】ここで、次式(16)及び次式(17)の
ように表すものとする。
【0111】
【数16】
【0112】
【数17】
【0113】画像処理装置10は、図15及び図16に
示す一連の工程を行うことによって、点集合S,Q
が合同であるか否かを検出する。
【0114】まず、画像処理装置10は、図15に示す
ように、ステップS21において、d次元n点集合
S,Qを入力し、これらの点集合S,Qの各点
を辞書式順序に整列する。
【0115】続いて、画像処理装置10は、ステップS
22において、Od(n log n)時間において点集
合S,Qの全ての最近接点対が一致する距離を有す
るか否かを判別する。すなわち、画像処理装置10は、
各点S∈Sに対して、次式(18)及び次式(19)
を計算するとともに、各点Q∈Qに対して、次式(2
0)及び次式(21)を計算する。なお、最近接点対に
ついては、“P. M. Vaidya, An O(nlogn) algorithm fo
r the all-nearest-neighbors problem, Discrete Comp
ut. Geom., 4:101-115, 1989”に記載されている。
【0116】
【数18】
【0117】
【数19】
【0118】
【数20】
【0119】
【数21】
【0120】ここで、点集合S,Qの全ての最近接
点対が一致する距離を有さない場合には、点集合S,
Qは合同ではなく、画像処理装置10は、図16中ス
テップS39へと処理を移行して点集合S,Qが合
同でないことを報告し、一連の処理を終了する。
【0121】一方、点集合S,Qの全ての最近接点
対が一致する距離を有する場合には、画像処理装置10
は、図15中ステップS23へと処理を移行し、点集合
S,Qが多重集合であるため、これらの要素の全て
の濃度を調べる必要があることから、ステップS23に
おいて、次式(22)及び次式(23)とし、全てのl
∈nn(S)∪nn(Q)に対して、|NN
l(S)|=|NNl(Q)|であるか否かを判別す
る。すなわち、画像処理装置10は、点の多重度を検出
し、その後別個の点集合を取り扱うこととなる。
【0122】
【数22】
【0123】
【数23】
【0124】ここで、全てのl∈nn(S)∪nn
(Q)に対して、|NNl(S)|=|NN
l(Q)|でない場合には、点集合S,Qは合同
ではなく、画像処理装置10は、図16中ステップS3
9へと処理を移行して点集合S,Qが合同でないこ
とを報告し、一連の処理を終了する。
【0125】一方、全てのl∈nn(S)∪nn
(Q)に対して、|NNl(S)|=|NN
l(Q)|である場合には、画像処理装置10は、図
15中ステップS24へと処理を移行し、厳密に“0”
よりも大きい最小点間距離をOd(n log n)時間
に計算することによって、点集合S,Qの両方を正
規化する。そのため、画像処理装置10は、“J. L. Be
ntley and M. I. Shamos, Divide-and-conquer in mult
idimensional space, In Proc. 8th Annu. ACM Sympos.
Theory Comput. pages 220-230, 1976”や“F. P. Pre
parata and M. I. Shamos,Computational Geometry:An
Introduction, Springer-Verlag, New York, NY,1985”
を参照してもわかるように、≡TSの代わりに≡TIを用い
ることによって、均一なズーム値を得ることができる。
均一でないズーム値は、最小密閉直交ボックスを計算す
ることにより求めることができるが、この計算は困難で
ある。
【0126】続いて、画像処理装置10は、ステップS
25において、正規化された集合のセントロイドを計算
し、これらのセントロイド同士を重ねる。すなわち、画
像処理装置10は、cS=cQとし、変換tdをcQ−cS
に固定する。
【0127】続いて、画像処理装置10は、ステップS
26において、セントロイドcS,cQのそれぞれからの
各点の距離fS(Si),fQ(Qi)を、それぞれ、次式
(24)及び次式(25)により求める。
【0128】
【数24】
【0129】
【数25】
【0130】続いて、画像処理装置10は、ステップS
27において、関連する半径関数FS,FQ,F
S(r),FQ(r)を、それぞれ、次式(26)乃至次
式(29)により求める。
【0131】
【数26】
【0132】
【数27】
【0133】
【数28】
【0134】
【数29】
【0135】続いて、画像処理装置10は、ステップS
28において、スペクトルが全てのlに対して|F
Q(l)|=|FS(l)|であるか否かを判別する。
【0136】ここで、スペクトルが全てのlに対して|
Q(l)|≠|FS(l)|である場合には、点集合
S,Qは合同ではない、すなわち、Od(n log
n)時間であり、画像処理装置10は、図16中ステ
ップS39へと処理を移行して点集合S,Qが合同
でないことを報告し、一連の処理を終了する。
【0137】一方、スペクトルが全てのlに対して|F
Q(l)|=|FS(l)|である場合には、画像処理装
置10は、図16に示すように、ステップS29におい
て、FS +,FQ +,FS -,FQ -を、それぞれ、次式(3
0)乃至次式(33)により求める。
【0138】
【数30】
【0139】
【数31】
【0140】
【数32】
【0141】
【数33】
【0142】続いて、画像処理装置10は、ステップS
30において、|FS -|≧d−1であるか否かを判別す
る。
【0143】ここで、|FS -|≧d−1である場合に
は、画像処理装置10は、ステップS31において、少
なくともd−1個の点を有するFS -の最小個数の層を選
択し、最大O((2d−3)!)=Od(l)の変換を
調べる。なお、画像処理装置10は、FQ -についても同
様の処理を行う。
【0144】一方、|FS -|≧d−1でない場合には、
画像処理装置10は、ステップS32へと処理を移行
し、r’を次式(34)により求める。
【0145】
【数34】
【0146】続いて、画像処理装置10は、ステップS
33において、Q’,S’を、それぞれ、次式(3
5)及び次式(36)により求める。
【0147】
【数35】
【0148】
【数36】
【0149】続いて、画像処理装置10は、ステップS
34において、“H. P. Lenhof andM. Smid, Sequentia
l and parallel algorithms for the k closest pairs
problem, Internat. J. Comput. Geom. Appl., 5:273-2
88, 1995”に記載されているように、S’,Q’の
幾何学的グラフを計算し、これらが同一の数の反復距離
を有しているか否か、すなわち、l∈D(S’)∪D
(Q’)のlに対して、|DS'(l)|=|D
Q'(l)|が成立するか否かをS’,Q’の全ての
距離を整列された順番に列挙することによって、O(n
2)時間内に判別する。
【0150】ここで、S’,Q’の幾何学的グラフ
が同一の数の反復距離を有していない場合には、点集合
S,Qは合同ではなく、画像処理装置10は、ステ
ップS39へと処理を移行して点集合S,Qが合同
でないことを報告し、一連の処理を終了する。
【0151】一方、S’,Q’の幾何学的グラフが
同一の数の反復距離を有している場合には、画像処理装
置10は、ステップS35において、“R. Seidel, Con
structing higher-dimensional convex hulls at logar
ithmic cost per face, In Proc. 18th Annu. ACM Symp
os. Theory Comput., pages 404-413, 1986”に記載さ
れているように、S’の凸閉包の(d−2)面F、す
なわち、稜線を線形プログラム及びQ’の凸閉包co
nv(Q’)を用いて算出する。
【0152】続いて、画像処理装置10は、ステップS
36において、稜線Fを、一般にd−1個の点を定義す
る(d−2)面である凸閉包conv(Q’)の他の
いずれかの稜線に対してマッチさせる。各稜線対は、最
大(d−1)!個の剛体運動を定義する。
【0153】そして、画像処理装置10は、ステップS
37において、与えられた剛体運動T∈Tに対して、
T(S)=Qとなっているか否かを判別する。
【0154】ここで、与えられた剛体運動T∈Tに対
して、T(S)=Qとなっていない場合には、点集
合S,Qは合同ではなく、画像処理装置10は、ス
テップS39へと処理を移行して点集合S,Qが合
同でないことを報告し、一連の処理を終了する。
【0155】一方、与えられた剛体運動T∈Tに対し
て、T(S)=Qとなっている場合には、画像処理
装置10は、ステップS38において、点集合S,
Qは合同であることを報告し、一連の処理を終了す
る。
【0156】なお、画像処理装置10は、剛体運動ばか
りではなく、アフィン変換についても同様に取り扱うこ
とが可能である。
【0157】このようにして、画像処理装置10は、点
集合S,Qが合同であるか否かを検出することがで
きる。画像処理装置10は、例えば、図17(A)に示
すように、同一の半径を有する円上に単一の点のみを有
する点集合S,Qも、同図(B)に示すように、同
一の半径を有する円上に複数の点を有する点集合S,
Qが合同であることを検出することができる。画像処
理装置10は、このようにして合同を検出することによ
って、例えば、画像データ中の任意のオブジェクトを、
異なるソースからの画像データ中の任意のオブジェクト
に対して、同定することができる。
【0158】ここで、点集合S’,Q’のいずれも
S=cQを中心とする球であることから、点は非縮退位
置にあることに注意すべきである。このことによって、
画像処理装置10においては、凸閉包アルゴリズムをよ
り簡単なものとすることができる。このアルゴリズムの
時間複雑性は、凸閉包conv(Q’)のファセット
の数であるhと、これらの全てのファセットを算出する
際の時間複雑性であるC(n,h)とを用いてO(hn
log n + C(n,h))と表される。例えば、
“Bernard Chazelle, An optimal convex hull algorit
hm in any fixeddimension, Discrete Comput. Geom.,
10:377-409, 1993”に示されているChazelleの最適アル
ゴリズムを採用し、O(nfloor[d/2])空間を用いる
と、O(nfloor[(d+1)/2] log n)時間アルゴリズ
ムが得られる。なお、“R. Seidel,Constructing highe
r-dimensional convex hulls at logarithmic cost per
face, In Proc. 18th Annu. ACM Sympos. Theory Comp
ut., pages 404-413, 1986”に記載されているSeidelの
殻化法を用いると、リニアなメモリ空間を用いることが
可能となる。この結果は、“E. Schulte, Symmetry of
polytopes and polyhedra, In Jacob E. Goodman and J
oseph O'Rourke, editors, Handbook of Discrete and
Computational Geometry, chapter 16, pages 311-330,
CRC Press LLC, Boca Raton, FL, 1997”に記載されて
いるように、合同変換の最大数が多面体の対称性と関連
していることをも示している。より正確には、このアル
ゴリズムの計算時間は、1つの変換をチェックするのに
必要な実行時間であるTc(n)と、点集合S,Q
の(d−1)組により定義される剛体運動の数であるt
とを用いて、O(nfloor[d/2]+tTc(n))時間と
表される。なお、画像処理装置10は、これらの組によ
り予め定義されるシンプレックスの体積の一致性につい
てもチェックを行う。
【0159】点の揺動の程度が、集合Sの任意の2点
間及び集合Qの任意の2点間の最近接距離と比較して
小さい場合には、図15及び図16に示したアルゴリズ
ムは強力である。すなわち、半径方向の分解を考える代
わりに、互いに素である対の薄い球状層を考えればよ
く、画像処理装置10は、次式(37)として処理す
る。なお、白色雑音に対するセントロイドの変化は、ε
と比較して小さい。
【0160】
【数37】
【0161】次式(38)により与えられる別個の点の
点間距離の最小値に対する点間距離の最大値の比ΔQ
して定義することができる点集合Qの直径が、例え
ば、最もよい場合でO(n1/d)により制限されている
場合には、画像処理装置10は、“P. Indyk, R. Motwa
ni, and S. Venkatasubramanian, Geometric matchingu
nder noise:Combinatorial bounds and algorithms, In
SODA:Symposium of Datastructures and Algorithms 1
999”にて、最小距離を“1”に固定する提案がなされ
ているように、より良い結果を得ることができる。
【0162】
【数38】
【0163】実際に、画像処理装置10は、標準的なバ
ケット法を用いることによって、大きさがO(Δd)の
バケット内への点集合S,Qの前処理を、O(Δd
+dn)時間内に行うことができる。各バケットの側面
は、点集合Qの最小点間距離をdmin(Q)で表す
とき、(dmin(Q)−2ε)/√dを越えることは
ない。したがって、各バケットは、最大で点集合Qの
1個の点を有する。そして、画像処理装置10は、セン
トロイドが一致していることから、(d−1)個の点の
点集合Sの選択された(d−2)シンプレックスに対
して、次数がOd(1)の代数的オブジェクトのバケッ
ト化された点集合Qの点に関するO(nd)の幾何学
的問い合わせを、後述するように、総費用Od(nΔ
d(d-1)/2)で行う。なお、代数的オブジェクトは、点集
合Qのシンプレックスについても求める。1度基準点
が選択されると、シンプレックスσ∈Sの各点は、d
個の球又はカップの共通部分に属する。画像処理装置1
0は、点集合Qの各(d−2)シンプレックスに対し
て、剛体変換の下での最大(d−1)!個のシンプレッ
クスマッチングを計算し、マッチングしているものがあ
るかどうかをO(dn)時間内に調べる。このアルゴリ
ズムの総費用は、Od(Δd+min{λ(d,d−2,
n),nΔd(d-1)/2}Tc(n,m))である。ただ
し、λ(d,d−2,n)は、“T. Akutsu, H. Tamak
i, and T. Tokuyama, Distribution of distances and
triangles in a point set and algorithms for comput
ing the largestcommon point set, Discrete and Comp
utational Geometry, pages 207-331, 1998”にて示さ
れている記号であり、d次元n点集合における(d−
2)シンプレックスの合同複写の最大個数である。ここ
で、明らかにλ(d,d−2,n)=O(nd-1)であ
る。したがって、このアルゴリズムにおいては、稠密な
点集合に対する実行時間は、Od(n(d+3)/2)となる。
【0164】なお、Δがn1/dで大きくなっていくかど
うかは、議論の余地があり、実際には、不一致理論に関
係付けられる。一方、Δがnと関係付けがなされていな
い場合には、点集合の“形状”又は主軸を、合同の検出
に用いることができる可能性がある。また、2つの凸で
ある層S’,Q’が点集合S,Qから選択され
た場合には、画像処理装置10は、Sd-1における合
同を検出する必要がある。これは、少なくとも1/
d、すなわち、マッチングポイントの割合に等しい密
度を有する稠密な[0,4π]d-1の特別な部分集合の
マッチングを検出することにより可能である。より正確
には、画像処理装置10は、2dnの点集合の部分集合
であるn点の集合を求める。
【0165】つぎに、d次元空間Edの点集合に対す
る対称性検出アルゴリズムについて説明する。上述して
きた合同の検出に用いるアルゴリズムは、点集合の対称
性を効率よく求めるための中核となるものである。ここ
では、T(S)=Sとなる全ての変換T(S)を
列挙することを考える。
【0166】画像処理装置10は、図18に示すような
一連の工程を経ることによって、2次元の点集合Sの
対称性を検出する。
【0167】まず、画像処理装置10は、同図に示すよ
うに、ステップS41において、点集合Sのセントロ
イドcSを算出する。セントロイドcSは、例えば2次元
の点集合S={pi=(xi,yi)}(n=1,・・
・,n)を入力した場合、セントロイドcSは、次式
(39)により求められる。画像処理装置10は、T
(S)に対して恒等写像である変換Idを追加する。
【0168】
【数39】
【0169】続いて、画像処理装置10は、ステップS
42において、セントロイドcSからの各点の距離f
S(Si)を上式(24)により求める。
【0170】続いて、画像処理装置10は、ステップS
43において、関連する半径関数FS,FS(r)を、そ
れぞれ、上式(26)及び上式(28)により求める。
【0171】続いて、画像処理装置10は、ステップS
44において、FS +,FS -を、それぞれ、上式(30)
及び上式(32)により求める。
【0172】続いて、画像処理装置10は、ステップS
45において、|FS -|≧1であるか否かを判別する。
【0173】ここで、|FS -|≧1である場合には、画
像処理装置10は、ステップS46において、p∈FS -
である点pを選択し、ステップS47において、選択さ
れた点pにおいてp⊂Sである軸が対称であるか否か
を判別する。
【0174】ここで、p⊂Sである軸が対称である場
合には、画像処理装置10は、ステップS48におい
て、T(S)={対称軸(p⊂S),Id}を報告
し、一連の処理を終了する。
【0175】一方、p⊂Sである軸が対称でない場合
には、画像処理装置10は、ステップS49において、
T(S)=Id、すなわち同一であることを報告し、
一連の処理を終了する。
【0176】また、ステップS45において、|FS -
≧1でない場合には、画像処理装置10は、ステップS
50において、各Si∈FS +に対して、その凸閉包c
onv(Si)を計算し、ステップS51において、
凸閉包conv(Si)を用いて全ての変換T
(Si)={T|T(Si)=Si}を列挙する。
【0177】続いて、画像処理装置10は、ステップS
52において、全ての変換集合の共通部分、すなわち論
理積を次式(40)により計算する。
【0178】
【数40】
【0179】そして、画像処理装置10は、ステップS
53において、T’(S)=T(S)を報告し、一
連の処理を終了する。
【0180】このようにして、画像処理装置10は、2
次元の点集合Sの対称性を検出することができる。
【0181】また、画像処理装置10は、図19に示す
ような一連の工程を経ることによって、d次元の点集合
Sの対称性を検出する。
【0182】まず、画像処理装置10は、同図に示すよ
うに、ステップS61において、点集合Sのセントロ
イドcSを算出する。画像処理装置10は、T(S)
に対して恒等写像である変換Idを追加する。
【0183】続いて、画像処理装置10は、ステップS
62において、セントロイドcSからの各点の距離f
S(Si)を上式(24)により求める。
【0184】続いて、画像処理装置10は、ステップS
63において、関連する半径関数FS,FS(r)を、そ
れぞれ、上式(26)及び上式(28)により求める。
【0185】続いて、画像処理装置10は、ステップS
64において、FS +,FS -を、それぞれ、上式(30)
及び上式(32)により求める。
【0186】続いて、画像処理装置10は、ステップS
65において、|FS -|≧d−1であるか否かを判別す
る。
【0187】ここで、|FS -|≧d−1である場合に
は、画像処理装置10は、ステップS66において、少
なくともd−1個、多くとも2d−3個の点を有するF
S -の層の最小値を選択する。
【0188】そして、画像処理装置10は、ステップS
67において、最大O((2d−3)!)の変換を調
べ、ステップS68において、T(S)を報告し、一
連の処理を終了する。
【0189】一方、ステップS65において、|FS -
≧d−1でない場合には、画像処理装置10は、ステッ
プS69において、各球状点集合Si∈FS +に対し
て、その凸閉包conv(Si)を計算し、ステップ
S70において、対称演算アルゴリズムを凸球面体に対
して適用することによって、全ての変換T(Si)=
{T|T(Si)=Si}を列挙する。
【0190】続いて、画像処理装置10は、ステップS
71において、全ての変換集合の共通部分、すなわち論
理積を上式(40)により計算する。
【0191】続いて、画像処理装置10は、ステップS
72において、T(FS -)=FS -となるものを変換Tの
中から選択する。
【0192】そして、画像処理装置10は、ステップS
68において、T(S)={T∈T’(S) s.
t. T(FS -)=FS -}を報告し、一連の処理を終了
する。
【0193】このようにして、画像処理装置10は、d
次元の点集合Sの対称性を検出することができる。
【0194】画像処理装置10は、以上のようにして対
称性を検出することによって、検出した対称性に基づい
て、データを圧縮することができる。
【0195】これらのアルゴリズムの時間複雑性は、同
心n点集合の合同を検出する際の時間複雑性であるTd
(n)を用いて、O(Td(n) log n)と表され
る。ここで、全ての変換T∈T(S)について調べ
る必要はないことから、画像処理装置10は、チェック
時間を節約することができる。
【0196】ところで、これらのアルゴリズムは、計算
に実RAMモデルを用いているために、上述したよう
に、大きな雑音に対する問題として知られているNP困
難性をともなうといった雑音に対する許容性が低いこと
がある。しかしながら、画像処理装置10は、次式(4
1)とするとき、T(S)=Qであるかを判別する
際に、最大Dmin/2まで雑音を許容することができ
る。また、アルゴリズムの費用が直交領域問い合わせア
ルゴリズム係数だけ大きくなるものの、画像処理装置1
0は、次式(42)とするとき、これらのアルゴリズム
をε≦dmin/2√dの雑音に対してさらに信頼性の高
いものとすることができる。さらに、画像処理装置10
は、次式(43)により表される全てのεに対するアル
ゴリズムの頑強性を、アルゴリズムに係数O(d×d
!)を積算することによりチェックすることもできる。
このとき、画像処理装置10は、d!個のマッチング点
の中で、最も近いものを選択してマッチング点のチェッ
クを行う。なお、ε≦dmin/2の精度を得たい場合に
は、高次元における最も近い隣接点を正確に計算する必
要がある。
【0197】
【数41】
【0198】
【数42】
【0199】
【数43】
【0200】画像処理装置10は、上述した“P. M. Va
idya, An O(nlogn) algorithm forthe all-nearest-nei
ghbors problem, Discrete Comput. Geom., 4:101-115,
1989”に記載されている最近接点アルゴリズムに基づ
いて、奇数次元に対して、同一の時間複雑性を有する類
似のアルゴリズムを設計することができる。
【0201】このとき、画像処理装置10は、点集合
S,Qの最近傍グラフnn(S),nn(Q),N
N(S),NN(Q)を、それぞれ、上式(18)乃至
次式(21)により計算した後、nn(S),NNl
(S)を、それぞれ、上式(22)及び上式(23)
としたとき、全てのl∈nn(S)∪nn(Q)に
対して、|NNl(S)|=|NNl(Q)|である
か否かを判別する。すなわち、画像処理装置10は、点
の多重度を検出し、その後別個の点集合を取り扱うこと
となる。
【0202】ここで、全てのl∈nn(S)∪nn
(Q)に対して、|NNl(S)|=|NN
l(Q)|でない場合には、点集合S,Qは合同
ではない。点S∈Sは、制約されてはいるがkd≧2d
である点集合Sの他の点に対して、kd=Od(1)=
|NN(S)|の最近接点でのみあり得る。nn
(S)にOkd(1)個の別個の距離が存在する場合に
は、画像処理装置10は、Od(Tc(n))において合
同のチェックを行う。また、nn(S)にOkd(1)
個の別個の距離が存在しない場合には、距離の値lが存
在する。この距離の値lは、頻繁に反復し、すなわち、
n≫dのときΩ(n)となる。
【0203】続いて、画像処理装置10は、この距離の
値lを有するceil[(d−1)/2]個の完全にマ
ッチングするエッジを選択した後、エッジ値lを有し、
サイズがceil[(d−1)/2]である点集合Q
の完全にマッチする可能な組み合わせの全てを調べる。
このとき、画像処理装置10は、変換を計算するため
に、セントロイドも追加している。ここで、ceil
[A]は、Aを越えない最大の整数である。
【0204】このアルゴリズムの時間複雑性は、O(n
ceil[(d-1)/2]c(n))=O(nceil[(d+1)/2] lo
g n)となる。
【0205】なお、画像処理装置10は、上述したバケ
ッティング法を同様にして適用することも可能である。
アルゴリズムの実行時間は、2次関数であることから、
画像処理装置10は、O(n2)時間内に全てのNN’
を計算することができる。
【0206】つぎに、厳密な自己類似性に関する説明を
行う。T(Q)=QとなるようなT≠Idが存在す
る場合には、そのときに限って、集合Qは自己類似性
があるという。また、集合Sから集合S自身への異
なるr個の写像が存在する場合には、そのときに限っ
て、集合Sはr重の類似性があるという。n又はn−
1がpで割り切れる場合には、2pの類似性を有する平
面点集合Sが存在し、それぞれ、図20に示すよう
に、2n/p又は2(n−1)/pの類似性がある。さ
らに、鏡映性が存在するために、任意のnに対して、2
重の類似性を有する集合が存在する。ここで、与えられ
た整数nに対して、集合Sがr重の類似性を有するよ
うなrの値を求めることや、与えられたnに対して、r
重の類似性を有するn点の集合を作成することが、1つ
の興味をひく問題となる。また、他の興味をひく問題と
しては、環境空間とも称される変換Tの空間におい
て、特徴付けを行い、与えられた整数r及びnに対し
て、r重の類似性を有する別個の点からなるn点の集合
が存在するか否かを答えることがある。さらに、r重の
類似性を有するn点集合は、大きなrに対しては必然的
に同心球点となることにも注意する必要がある。Zabrod
sky等は、“Hagit Zabrodsky, Shmuel Peleg, and Davi
d Avnir, Symmetry as a continuous feature, Pattern
Analysis and Machine Intelligence, August 93”に
て、入力点の揺動を最小にすることによって、対称性の
連続指標を導入している。この連続指標は、合同検出ア
ルゴリズムの強固性の指標としても用いることが可能な
ものである。
【0207】次表1乃至次表3に、幾何学的合同問題に
おいて知られている結果をまとめて示す。また、近似的
パターンマッチングについての参考文献についても示し
ている。なお、近似係数は、記号*で表される雑音パラ
メータと相互作用することに注意が必要である。
【0208】
【表1】
【0209】
【表2】
【0210】
【表3】
【0211】近似アルゴリズムにおける問題は、“P.
J. Heffernan and S. Schirra, Approximate decision
algorithms for point set congruence, Comput. Geom.
Theory Appl., 4:137-156, 1994”、“M. T. Goodric
h, Joseph S. B. Mitchell, and M. W. Orletsky, Prac
tical methods for approximate geometric pattern ma
tching under rigid motion, In Proc. 10th Annu. ACM
Sympos, Comput. Geom., pages 103-112, 1994”又は
“A. Efrat, Finding approximate matching of points
and segments under translation, Unpublished manus
cript, 1995”を参照してもわかるように、曖昧さの程
度によって、合同が存在するか否かの問いに対して、変
換を正しく報告しないことがあることである。これは、
問題のモデル化が簡略すぎるために生じる。ここで、様
々なランダム化アルゴリズムの中で、“P. Indyk, R. M
otwani, and S. Venkatasubramanian, Geometric match
ing under noise:Combinatorial bounds and algorithm
s, In SODA:Symposium of Datastructures and Algorit
hms 1999”に示されているように、変換が存在するにも
かかわらず、変換を報告しないようなアルゴリズムであ
る間違った否定と、“Cardoze and Schulman, Pattern
matching for spatial point sets, In FOCS:IEEE Symp
osium on Foundations of Computer Science (FOCS), 1
988”に示されているように、何らかの問題還元のため
に間違った変換を報告するアルゴリズムである間違った
肯定とを区別することにする。後者の場合には、報告さ
れた変換が正しいものであるか否かをチェックするため
に、より長い時間が必要となる。
【0212】定理1:S及びQをd次元のn点集合
であるとする。このとき、S≡Qであるか否かの
検出をO(nfloor[(d+1)/2] log n)時間内に確定
的に行うことができる。
【0213】“J. -D. Boissonnat and M. Yvinec, Alg
orithmic geometry, Cambridge University Press, UK,
1998”には、d次元球Sd-1上に最大の多面体が存在
することが示されている。
【0214】ここで、興味ある問題としては、自己類似
性に次式(44)のように関係付けられた関数F
S(k,ε)のスペクトルを調べることがある。
【0215】
【数44】
【0216】ただし、上式(44)において、Sεは
次式(45)のように表される。
【0217】
【数45】
【0218】このスペクトルは、幾何学的パターンマッ
チングアルゴリズムの雑音許容性と実行時間との両方に
関与する。ここで、fS(k,ε)=|FS(k,ε)|
とする。特に、入力が信頼できるものであると見なせる
場合、すなわち、ε=0であると見なせる場合には、F
S(k,0)=FS(k)と記すものとする。fS(n)
=rとなるようなn点集合Sが存在する場合且つその
ときに限って、n点集合は、r重の類似性を有する。
【0219】さらに、自然な拡張として次式(46)に
示す定義を行う。
【0220】
【数46】
【0221】また、その濃度関数を次式(47)により
表す。
【0222】
【数47】
【0223】これは、Akutsu等により“T. Akutsu, H.
Tamaki, and T. Tokuyama, Distribution of distances
and triangles in a point set and algorithms for c
omputing the largest common point set, Discrete an
d Computational Geometry,pages 207-331, 1998”にて
定義された次式(48)に示す距離の「内積」の概念と
関連している。
【0224】
【数48】
【0225】ここで例として、次式(49)とする。
【0226】
【数49】
【0227】ただし、上式(49)において、その濃度
関数は、次式(50)により表され、C(・)は、例え
ば、ズーム範囲、表面の制約又はマッチの直径といった
非組み合わせパラメータに依存する制約条件である。
【0228】
【数50】
【0229】このようにすることによって、マッチング
の組み合わせに対してばかりではなく、数値に対しても
制約を課すことができるようになる。例えば、視覚シス
テムにおいては、角度が−30゜〜+30゜の範囲で且
つズームが1/4〜4の範囲であるようなもののみの変
換を報告するようにするのが望ましい。また、C()を
満たす全ての変換を、例えば(θ,ズーム)のように辞
書編集順に報告するようにすることが望まれる。これを
制約付きパターンマッチングと称する。
【0230】つぎに、集合Sが集合Qの部分集合と
合同であるか否かの検出について説明する。ここでは、
上述してきた「合同問題」の一般化を行う。「部分集合
合同問題」は、以下のように定義される。すなわち、
「部分集合合同問題」は、「2つの点集合S及びQ
が与えられたとき、S≡Q’となるような点集合
Qの部分集合Q’を求め、それを数え、その1つを
示し、その全てを報告する。」ことである。例えば、図
21(A)に示すように、ある自動車を象った画像等か
ら角検出プログラムにより特徴が抽出されて得られる点
集合Sと、同図(B)に示すように、点集合Sの複
製が3つ含まれるあるシーンを示す点集合Qとが与え
られた場合、点集合Qから点集合Sを探索すること
である。
【0231】束縛されていないd次元において、この幾
何学的問題は、“Tatsuya Akutsu,On determining the
congruence of point sets in d dimensions, Comput.
Geom. Theory Appl., 9(4):247-256, 1998”に記載され
ているように、部分グラフ合同に還元することによりN
P完全となることが示されている。
【0232】ここで、|S|=1である場合には、問
題は自明であり、|Q|個の解が存在する。|S|
=2である場合には、問題は理論的、応用上においてよ
り困難なものとなり、反復単位距離の最大個数と関連す
る。この問題は、かつてPaulErdosが提示したものであ
る。この手法は、許容摂動が最小点間距離よりも小さい
という仮定のもとに、不正確な入力に対して適用するこ
とができる。Amin=maxl=1,・・・,dmin
i,j=1,・・・,n,ij|Qi,l−Qj,l|とするとき、係数O
(d×d!)を積算するのみで、最大Amin/2の摂動
まで許容することができるようになる。この場合、L2
最近接点と同じ結果を与えるL∞最近接点が存在するこ
とによる。L∞NNを計算する際に、全ての可能な軸の
置換を行い、それぞれの置換に対して、d回の1次元N
N探索を対数時間内に行ったときに得られる最も近いも
のを選択する。NN’を見つけるための直交範囲問い合
わせにおいて、ε≦dmin/2√d以内の点の揺動を許
容することができる。ここで、dminは、次式(51)
により表される。
【0233】
【数51】
【0234】問題の特徴の1つとして、図21に示した
ように、点集合Qにはアウトライアが存在するが、点
集合Sにはアウトライアが存在しない、すなわち、全
てがインライアであることが挙げられる。問題は、基本
的に2つの因子からなる。すなわち、まず最初にマッチ
する変換T∈Tを見つけ出し、次に部分集合マッチン
グの問題を解くことである。なお、同格数の問題に対し
ては、依然として無限アルファベット符号を取り扱う必
要がある。点集合Sの全ての点がマッチするはずであ
ることから、また、特徴点の対{S1,S2}、{Q1
2}が与えられたとき、これらを完全にマッチさせる
2つの方法があり、これらの方法を用いて剛体変換が点
集合Qの1つの対{Q1,Q2}にマッチするSの点
の対{S1,S2}により決まることから、画像処理装置
10は、平面の場合であって、ズームを許容しない場
合、図22に示す一連の工程を経ることによって、部分
合同であるかを検出することができる。
【0235】まず、画像処理装置10は、同図に示すよ
うに、ステップS81において、集合S,Qの幾何
学的グラフを計算し、列挙アルゴリズムによって、集合
Sの点の対により定義されるO(n2)個のソートさ
れた全ての距離及び集合Qの点の対により定義される
O(m2)個の全ての距離を算出する。
【0236】続いて、画像処理装置10は、ステップS
82において、集合S,Qの共通距離の値D
(S)∩D(Q)のうち、集合Qにおける反復距
離が次式(52)により表される最小値kminを有する
ものであるlminを選択する。なお、拘束選択の場合に
は、集合Qにおける反復距離が最大値を有するものを
選択する。
【0237】
【数52】
【0238】続いて、画像処理装置10は、ステップS
83において、集合Sの任意に選択された点の対{S
1,S2}のうち、d2(S1,S2)=lminであるような
1,S2の対を選択する。画像処理装置10は、S1
2の対により定義される2kmin個の変換T[(S1
2),(Q1,Q2)]及びT[(S1,S2),(Q2
1)]を調べる。
【0239】続いて、画像処理装置10は、ステップS
84において、集合Qのその他の全ての点の対
{Qi,Qj}のうち、d2(Qi,Qj)=lminであるよ
うなQi,Qjの対の全てに対して、Qi,Qjの対により
定義される全ての変換T[(S1,S2),(Qi
j)]及びT[(S1,S2),(Qj,Qi)]を調べ
る。
【0240】そして、画像処理装置10は、ステップS
85において、各変換に対して部分合同を調べ、全ての
事象を報告し、一連の処理を終了する。
【0241】画像処理装置10は、このようにすること
によって、2次元の集合S,Qにおいて、集合Q
における集合Sの全ての事象を探索することができ
る。
【0242】このアルゴリズムの実行時間は、O(m2
+kminc(n,m))である。ただし、kmin=O
(m4/3)であり、この値はおおよそO(m1+ε)に等
しい。また、Tc(n,m)は、1つの変換を調べるの
に必要な時間である。なお、Tc(n,m)は、許容雑
音パラメータεにも依存し、ε=0の場合には、任意の
距離の点集合に対して、T(n,m)=n log mと
なる。したがって、このアルゴリズムは、O(N2+ε)
時間に等しいであろうO(N7/3 log N)時間で実
行することができ、単純でありながら効率化を図ること
ができる。ただしここでは、スケーリングが許容されて
いないことと、アルゴリズムの実行時間が共通距離のう
ちの反復距離の最大個数に依存することに留意する必要
がある。すなわちここでは、集合Qの離間した距離を
選択することはできない。なお、点集合の最小点間距離
が“1”であるとき、そのような点集合は“1”だけ離
間しているという。画像処理装置10においては、これ
らのアルゴリズムを、全て線形時間メモリを用い、また
任意の距離列挙アルゴリズムを用いてインプリメントす
ることができる。
【0243】ここで、シーンにパターンが存在する場合
には、少なくとも次式(53)により表されるx個の共
通距離がD(S)∩D(Q)に存在することに注意
する必要がある。集合Sにおける別個の距離の数は、
少なくともΩ(n4/5)であることが知られている。し
たがって、集合Sにおける同一距離の最小値は、最大
でO(n2-4/5)=O(n1.2)である。kminについて
さらに注意深く検討すると、kminは、次式(54)に
より表されることがわかっている。そのため、m≪n
6/5であれば、kminは、次式(55)により表される。
したがって、kminの上限は、“J. E. Goodman and J.
O'Rourke, editors, Handbook of Discrete and Comput
ational Geometry, CRC Press LLC, Boca Raton, FL, 1
997”に示されているように、n1.2・・・m1.333・・・
ある。
【0244】
【数53】
【0245】
【数54】
【0246】
【数55】
【0247】このアルゴリズムは、1つのバーS1
2(機構)を点集合Sの中に選択し、これを点集合
Qにロックさせるものであると見なすこともできる。
【0248】ここで、点集合Qの距離をΔQで表すこ
とにする。すると、点集合Qの処理(バケッティン
グ)は、O(Δ2)時間で行うことが可能であり、また
1つの変換のテストは、Tc(n,m)=OΔ(n)時
間内に行うことが可能である。
【0249】また、画像処理装置10は、集合S,
Qがd次元である場合、図23に示す一連の工程を経
ることによって、部分合同であるかを検出することがで
きる。
【0250】まず、画像処理装置10は、同図に示すよ
うに、ステップS91において、集合S,Qの幾何
学的グラフを計算し、それらに容量d(e)、g
(S)、g(Q)を与える。
【0251】続いて、画像処理装置10は、ステップS
92において、集合S,Qの共通の容量D(S)
∩D(Q)である全てのハイパーエッジをアクティブ
とする。
【0252】続いて、画像処理装置10は、ステップS
93において、g(Q)における反復ハイパーエッジ
容量が最小値を有するものであるVminを選択する。
【0253】続いて、画像処理装置10は、ステップS
94において、d(δS)=Vminであるような単方向δ
Sを選択する。
【0254】続いて、画像処理装置10は、ステップS
95において、d(σ)=Vminであるような集合Q
の全てのハイパーエッジeに対して、Vminとσ,δS
により誘起される全ての厳密な変換を調べる。
【0255】そして、画像処理装置10は、ステップS
96において、各変換に対して部分合同を調べ、全ての
事象を報告し、一連の処理を終了する。
【0256】画像処理装置10は、このようにすること
によって、d次元の集合S,Qにおいて、集合Q
における集合Sの全ての事象を探索することができ
る。
【0257】定理2:Sが2次元空間E2のn点集
合であり、Qが2次元空間E2のm点集合であると
き、点集合Sが点集合Qに存在するか否かの判定を
任意の点集合に対してO(m2+min{m4/3,m2
4/5}Tc(n,m))時間内に行うことができる。こ
こで、diameter(S)=diameter
(Q)である場合には、O(m log m + mTc
(n,m))時間内に、また、凸部に対しては、O(m
log m + min{m log m,m2/n}n l
og m)時間内に行うことができる。
【0258】上述してきた結果は、“T. Akutsu, H. Ta
maki, and T. Tokuyama, Distribution of distances a
nd triangles in a point set and algorithms for com
puting the largest common point set, In Proc. 13th
Annu. ACM Symps. Comput.Geom., pages 314-323, 199
7”の精神に基づいて、m≪n6/5に対する改良を加えた
ものである。
【0259】画像処理装置10における制限要因は、次
の2つである。すなわち、最初に、特に集合Qの幾何
学的グラフを計算し、次に、可能な変換のそれぞれを独
立にテストすることである。
【0260】画像処理装置10は、kminが小さい場
合、或いは、m≫nである場合には、集合S,Qの
幾何学的グラフである次式(56)及び次式(57)に
より表されるx個及びy個の距離の全てを計算せずに済
ませることができる。まず、画像処理装置10は、集合
Sの任意の点の対(S1,S2)を拾い上げる。続い
て、画像処理装置10は、全てのi∈[1,m]に対し
て、縮退した環形問い合わせを行う。すなわち、画像処
理装置10は、中心がQiで半径がd2(S1,S2)の円
の問い合わせを行う。共通距離lの最大個数は、m個の
円においてn個の点の発生確率と関係する。これは、O
(n2/3+m2/3+n+m)により制約されることが知ら
れている。
【0261】
【数56】
【0262】
【数57】
【0263】画像処理装置10は、この幾何学的問い合
わせに代わる方法として、“T. M.Chan, On enumeratin
g and selecting distances, In Proc. of the 14th Sy
mp.of Comp. Geo., 1998”にて示されている出力に依存
するアルゴリズムを用いて、選択された距離だけを列挙
するようにすることもできる。画像処理装置10は、距
離lが与えられたとき、集合Qにおいて同じ距離を有
するt2個の対をO(n4/3 log8/3 n)時間内に報
告することができる。すなわち、“T. Akutsu, H. Tama
ki, and T. Tokuyama, Distribution of distances and
triangles in a point set and algorithms for compu
ting the largest common point set,Discrete and Com
putational Geometry, pages 207-331, 1998”にて述べ
られているように、O(n4/3 log8/3 n + t2
log m)時間アルゴリズムが得られる。制約は、
“T. M. Chan, On enumerating and selecting distanc
es, In Proc. of the 14th Symp. of Comp. Geo., 199
8”を参照してもわかるように、出力に対して、O(n
log n + n2/31/3 log6/3 n)のように依存
する。
【0264】他の手法は、格子又は多重格子を用いて、
上述したようにしてバケットを作成することである。バ
ケットの各位置には最大で1つの点しか存在しないこと
から、バケットは、例えば図24に示すようなブーリア
ンバケットで足りる。画像処理装置10は、1つの問い
合わせS12に対して、集合Qの各点に対して1回問
い合わせを行い、全部でO(n)回の問い合わせを実行
することによって、バケットの中のO(nΔ)個の位置
を調べる。
【0265】実際には、画像処理装置10は、特徴点の
対(S1,S2)が与えられたとき、|d2(S1,S2
−d2(Q1,Q2)|≦γとなる全ての点の対(Q1,Q
2)を選択する。ここで、γは、範囲をズームした場合
において、γ≧4である。これは、集合Qにおける各
点Qiに対して、中心がQiであり内径がd2(S1
2)−2εで外径がd2(S1,S2)+2εである環形
内の全ての点を問い合わせることによりなされる。1つ
の方法は、距離DS,DQをソートし、与えられた問い合
わせlに対して、集合Qにおいて距離がl−2εから
l+2εまでの範囲にある全ての対をO(log n +
k)時間内に報告するようにすることである。したが
って、この原始的な方法の実行時間は、O(m2 log
m + kTc(n,m))となる。パターンマッチング
アルゴリズムをズーム範囲[zmin,zmax]において実
行するように制限した場合には、画像処理装置10は、
与えられた点の対S12(b=d2(S1,S2))に対
して、以下のように範囲問い合わせを行う。すなわち、
画像処理装置10は、(b−2ε)*zmin≦d
2(Qi,Qj)≦(b+2ε)*zmaxを満たす集合Q
の全ての点の対Qijを報告する。また、画像処理装置
10は、S12のQijに対する角度の制約を加えるこ
ともできる。例えば、画像処理装置10は、傾きが30
゜以上異ならないものだけに制約する。
【0266】つぎに、環形問い合わせのためのデータ構
造について説明する。「環形問い合わせ」の問題は、例
えば、図25(A)に示すものや、同図(B)に示す扇
形問い合わせのように、「E2におけるn点集合が与
えられたとき、環形問い合わせに対して、リングの中の
全ての点を報告する。」ことである。
【0267】この目的のために、画像処理装置10は、
“P. Gupta, R. Janardan, and M.Smid, On intersecti
on searching problems involving curved objects, In
Proc. 4th Scand. Workshop Algorithm Theory, volum
e 824 of Lecture Notes Comput. Sci., pages 183-19
4, Springer-Verlag, 1994”や“P. Gupta, R. Janarda
n, and M. Smid, Further results on generalized int
ersection searchingproblems:counting, reporting an
d dynamization, J. Algorithms, 19:282-317, 1995”
によるデータ構造を用いることができる。問い合わせの
リング内のt個の点を報告するのに必要な問い合わせ時
間は、O(log n + t log2 n)であり、前処
理時間としてO(n3/log n)が必要である。数を
数えるためには、O(n4 log2 n)の前処理時間の
後に、O(log2 n)のカウント処理時間が必要であ
る。ここでの課題は、距離がd−2εからd+2εの範
囲にある点の対pqの全てを報告することである。
【0268】グループ化及び問い合わせの実例を以下に
示す。画像処理装置10は、サイズが最大で|n/p|
であるようなp個のグループを作成し、各グループに対
して、総費用O(n3/p3 log n/p)の処理を行
う。次に、画像処理装置10は、R=[d−2ε,d+
2ε]の距離範囲に対して、d(p,q)∈Rである点
の対pqを全て報告する。画像処理装置10は、各点Q
i∈Qに対して1回ずつ、点集合Qに対してm回の
環形問い合わせを行う。したがって、総費用は、O(n
2/p log n/p + t log2 n/p)時間とな
る。問い合わせ時間と前処理時間とのバランスをとるた
めには、pを次式(58)のように選べばよい。
【0269】
【数58】
【0270】このとき、2つの場合があり得る。すなわ
ち、t≦n2/(p log n/p)である場合には、
p=n1/2-εを選択する。この場合には、O(n
3/2+ε)時間アルゴリズムが得られる。また、t≧n2
/(p log n/p)である場合には、p=n/t
1/3-εを選択する。この場合には、O(t log2
t)時間アルゴリズムとなる。
【0271】画像処理装置10は、tの値を予め知るこ
とができないことから、差し当たって、“F. Nielsen,
Algorithmes Geometriques Adoptatifs-Adoptive Compu
tational Geometry, Ph.D. thesis, isbn-2-7261-1017-
7, Nice Univ. (Franc), 1996”に示されているよう
に、t≒22(i/2)(i≦2log log t)を採用し
て大まかな見積もりを行う。この方法の長所は、tの大
きな値に対して、出力に依存するアルゴリズムが得られ
ることである。
【0272】このアルゴリズムの隘路は、各変換の評価
をそれぞれ独立に行うのに費用がかかることである。そ
こで、画像処理装置10は、各変換の評価を独立に行わ
ずに済ませることもできる。
【0273】ここで、T(t2)を上述したアルゴリズ
ムにより報告された変換の集合であるとする。画像処理
装置10は、D(S)の異なる長さのバーを1度に1
つ選択し、反復処理を以下のように行う。画像処理装置
10においては、各ステージにおいて、多数の異なる変
換t2 (1),・・・,t2 (l)が得られる。画像処理装置1
0は、パターンが存在するものと仮定し、最初のl個の
類似の距離D(S)∩D(Q)を選択する。続い
て、画像処理装置10は、次式(59)により表される
共通部分を計算する。最後に、画像処理装置10は、各
変換T∈T’のスコアを計算し、最も高いスコアを得
たものを選択する。このときの総費用は、O(|T’
|Tc(n,m))=O(|T’|n log m)で
ある。
【0274】
【数59】
【0275】なおここでは、このアルゴリズムが部分合
同の複写を全て報告することに注意する必要がある。
【0276】具体的には、画像処理装置10は、図26
に示す一連の工程を経ることによって、転移及び/又は
回転を含むパターンマッチングを行う。ここでは、2次
元の点集合Sε,Qεがεの揺動を有する集合であ
るものとする。
【0277】まず、画像処理装置10は、同図に示すよ
うに、ステップS101において、最大の辺の長さがb
であるような点集合Sの直交境界領域を算出する。点
集合Sの直径の上限をΔ=√(2b)とする。
【0278】続いて、画像処理装置10は、ステップS
102において、大きさがceil[Δ/ε]+2で、
全ての元が初期値として“0”に設定されている1次元
の2値ブーリアンバケットBSを作成する。このブーリ
アンバケットBSは、点間距離のバケッティングを行う
ために用いられる。
【0279】続いて、画像処理装置10は、ステップS
103において、Sj≠Siである任意の(Si,Sj)の
対の点間距離d2(Si,Sj)に対して、そのインデッ
クスをl=floor[d2(Si,Sj)/ε]とし、
S[l−1]、BS[l]、BS[l+1]のマークを
付す。そして、画像処理装置10は、各バケットBS
対して、点間距離のリストを作成する。ただし、点間距
離のリストは、初期状態では空である。
【0280】続いて、画像処理装置10は、ステップS
104において、ステージの初期値としてk=1とす
る。
【0281】続いて、画像処理装置10は、ステップS
105において、k≦νであるか否かを判別する。
【0282】ここで、k≦νでない場合には、画像処理
装置10は、ステップS109へと処理を移行し、点集
合Sの対S1 (k),S2 (k)をランダムに選択する。
【0283】続いて、画像処理装置10は、ステップS
110において、lk=d2(S1 (k),S2 (k))とし、l
k=floor[lk/ε]とする。画像処理装置10
は、PS(lbk−1)∪PS(lbk)∪PS(lbk
1)の全ての対(Qi,Qj)を調べ、|d2(Qi
j)−lk|≦2εである全ての対を選択する。これら
の点により定義される変換の集合をTkで表す。なお
ここでは、一定のズームを行っていると仮定しているこ
とから、パラメータとして回転と転移だけを考慮すれば
よい。
【0284】続いて、画像処理装置10は、ステップS
111において、BS,Tkを用いて、点集合Qの可
能な転移の全てを得る。
【0285】そして、画像処理装置10は、ステップS
112において、k=k+1とし、再びステップS10
5以降の処理を繰り返す。
【0286】一方、ステップS105において、k≦ν
であると判別した場合には、画像処理装置10は、ステ
ップS106において、次式(60)により表される共
通転移μの集合Tを計算する。ここで、共通転移μの
集合Tを計算するためには、いつ2つの変換の類似性
がμ重となるかを定義しておく必要がある。2つの変換
1,T2は、全てのP∈Sに対して、d2(T
1(P),T2(P))≦μである場合に、類似度がμで
あるという。画像処理装置10は、点集合Sの全ての
点に対して検査を行う代わりに、点集合Sの境界ボッ
クスの角を順次検査していくことによって、近似的な検
査を行う。
【0287】
【数60】
【0288】続いて、画像処理装置10は、ステップS
107において、Tの転移が事象を誘起するかどうか
を調べる。画像処理装置10は、例えば、点集合Sを
バッケティングするか、或いは、2 1−d回の2分探
索等を行うことにより調べる。バケットを用いた場合に
は、先に図24に示したように、各バケットの幅はεと
なる。
【0289】そして、画像処理装置10は、ステップS
108において、報告や変換の列挙等を行い、一連の処
理を終了する。
【0290】このようにすることによって、画像処理装
置10は、εの揺動を有する2次元の点集合Sε,
Qεにおける転移及び/又は回転を含むパターンマッ
チングを行うことができる。
【0291】このアルゴリズムを用いてマッチする変換
を全て列挙するときの時間複雑性は、O((ΔS/ε)
+n2+m2+ν+tt’+t’Tc(n,m))であ
る。このとき、ΔQ≧ΔSであることに注意が必要であ
る。ただし、μ=0である場合には、画像処理装置10
は、行列をソートし、O(t log t’)時間内に次
式(61)により表されるTを算出する。したがっ
て、時間複雑性は、O((ΔS/ε)+n2+m2+ν+
(t log t’)+t’Tc(n,m))となる。
【0292】
【数61】
【0293】ここで、εは、ε=dmin/2に固定して
いる。ただし、dmin=min{dminS,dminQ}であ
る。
【0294】また、画像処理装置10においては、例え
ば、N2がRAMメモリサイズよりも大きい場合や、リ
アルタイムにおいて必要となるような場合といった大き
な点集合濃度に対しては、図27に示す一連の処理を行
うのが好適である。
【0295】まず、画像処理装置10は、同図に示すよ
うに、ステップS121において、最大の辺の長さがb
であるような点集合Sの直交境界領域を算出し、点集
合Sの直径の上限をΔ=√(2b)とする。
【0296】続いて、画像処理装置10は、ステップS
122において、点集合Q上に大きさがγのバケット
Qを作成し、各Qi∈Qに対して、Qiを対応する位
置に追加する。ここでは、先に図24に示したように、
1つのバケットに複数の点が存在し得ることに注意する
必要がある。
【0297】続いて、画像処理装置10は、ステップS
123において、ステージの初期値としてk=1とす
る。
【0298】続いて、画像処理装置10は、ステップS
124において、k≦νであるか否かを判別する。
【0299】ここで、k≦νでない場合には、画像処理
装置10は、ステップS128へと処理を移行し、点集
合Sの対S1 (k),S2 (k)をランダムに選択する。
【0300】続いて、画像処理装置10は、ステップS
129において、lk=d2(S1 (k),S2 (k))とし、バ
ケッティング法を用いて、(Qi,Qj) s.t. |d
2(S1 (k),S2 (k))−d2(Qi,Qj)|≦2εとなる
全ての対を検索する。実際には、画像処理装置10は、
超集合を検索する。このようにして点の対から得られる
変換の集合をTkとする。
【0301】続いて、画像処理装置10は、ステップS
130において、BQ,Tkを用いて、点集合Qの可
能な転移の全てを得る。
【0302】そして、画像処理装置10は、ステップS
131において、k=k+1とし、再びステップS12
4以降の処理を繰り返す。
【0303】一方、ステップS124において、k≦ν
であると判別した場合には、画像処理装置10は、ステ
ップS125において、上式(59)により表される共
通転移μの集合Tを計算する。画像処理装置10は、
図26中ステップS106と同様に、点集合Sの全て
の点に対して検査を行う代わりに、点集合Sの境界ボ
ックスの角を順次検査していくことによって、近似的な
検査を行う。なお、類似度がμであるかどうかの正確な
チェックは、凸閉包上の点を調べることによってのみ可
能である。
【0304】続いて、画像処理装置10は、ステップS
126において、Tの転移が事象を誘起するかどうか
を調べる。画像処理装置10は、例えば、点集合Sを
バッケティングするか、或いは、2 1−d回の2分探
索等を行うことにより調べる。バケットを用いた場合に
は、先に図24に示したように、各バケットの幅はεと
なる。
【0305】そして、画像処理装置10は、ステップS
127において、報告や変換の列挙等を行い、一連の処
理を終了する。
【0306】このアルゴリズムの実行時間は、O((Δ
Q/γ)2+νnΔ/γ+tt’+t’Tc(n,m))
である。ここで、パラメータγは、実際の目的に応じて
チューニングする必要がある。画像処理装置10は、図
28に示す一連の工程を経ることによって、γを推定す
る。
【0307】まず、画像処理装置10は、同図に示すよ
うに、ステップS141において、プログラム又はユー
ザによって、γを初期化する。
【0308】続いて、画像処理装置10は、ステップS
142において、テストする変換の数をWσとする。
【0309】続いて、画像処理装置10は、ステップS
143において、Wσ×check>CT(γ)である
か否かを判別する。
【0310】ここで、Wσ×check>CT(γ)で
ある場合には、画像処理装置10は、ステップS144
において、γについてより良好且つ小さな値を得る。す
なわち、画像処理装置10は、γ=γ/2とするか、或
いは、点座標から選択された何らかの値をγとする。そ
して、画像処理装置10は、ステップS143からの処
理を再び繰り返す。
【0311】一方、Wσ×check>CT(γ)でな
い場合には、画像処理装置10は、ステップS145に
おいて、γを返し、一連の処理を終了する。
【0312】このようにして、画像処理装置10は、γ
を推定することができる。
【0313】画像処理装置10は、パターンマッチング
を行うことによって、いわゆる情景分析(シーンアナリ
シス)を行うことができる。
【0314】画像処理装置10は、点集合が稠密であり
且つ均一に分布している、すなわち、Δ=O(√n)で
あるものと仮定すると、複雑さの解析を以下のように洗
練することが可能である。
【0315】すなわち、各バケットは、平均して、nγ
2/Δ2の点を有する。画像処理装置10は、これらの点
のうち、nΔ/γ個について調べていることから、大き
さがn2γ/Δの点の対の超集合が得られる。そこで、
γ=Δ/n2/3とすることによって、画像処理装置10
は、前処理を行うコスト、すなわち、O((Δ/
γ)2)と、問い合わせを行うコストとのバランスをと
ることができる。したがって、アルゴリズムの複雑さ
は、μの値が小さい場合には、O(n4/3+(t log
t’)+t’Tc(n,m))となる。また、t≦n4/3
であることにも注意する必要がある。なお、画像処理装
置10においては、チェックすべき対の数は、容易に数
えることができる。
【0316】この方法は、全ての次元において適用する
ことができる。ただし、より高い次元においては、単純
なバー方式ではなく、d次元のシンプレックスを取り扱
う必要がある。次元が“4”よりも大きくなると、1つ
の点集合により定義される同じ距離の数が2次式にした
がって増加する。ラスヴェガス及びモンテカルロアルゴ
リズムの設計において、ランダム性を汎用的に用いるた
めの最近の正確な境界手法については、“T. Akutsu,
H. Tamaki, and T. Tokuyama, Distribution ofdistanc
es and triangles in a point set and algorithms for
computing thelargest common point set, In Proc. 1
3th Annu. ACM Symps. Comput. Geom.,pages 314-323,
1997”や“T. Akutsu, H. Tamaki, and T. Tokuyama, D
istribution of distances and triangles in a point
set and algorithms for computing the largest commo
n point set, Discrete and Computational Geometry,p
ages 207-331, 1998”に記載されている。
【0317】また、ε>0であるεが与えられたとき、
多数の縮退を生じるような点の揺動があり得る。このよ
うな揺動は、パターンマッチングアルゴリズムを遅くす
る要因となる。さらに、雑音を含むパターンのマッチン
グが、雑音を含まない正確なパターンのマチングと比較
して繊細なものとなる。他の方法は、ε’が与えられた
ときの全ての揺動に対して、同一のマッチングを許容す
ることである。画像処理装置10においては、εの境界
が0,Dmin/2√2,Amin/2,dmin/2のいずれ
かとなるように制約することによって、安定なマッチン
グだけを扱うようにしている。
【0318】上述したアルゴリズムにおいては、例えば
図29(A)に示す集合Sと同図(B)に示す集合
Qとについて、集合Qの中に集合Sの部分集合と
大きさが異なる部分合同が含まれる場合といったよう
に、スケーリングについては考慮していなかった。そこ
で以下では、均一スケーリングを行った場合における部
分合同について説明する。スケーリングを許容した場合
には、問題の解決の方法は、上述したものとは異なるも
のとなる。この場合には、集合Q上にバーを固定し、
これによる変換を調べる方法を採用することがもはや不
可能となる。その理由は単純であり、すなわち、Sが
2点からなる集合であるとき、次式(62)により表さ
れるx個の正確なマッチが集合Qに存在するからであ
る。結果を組み合わせてより効率のよいアルゴリズムを
得ることを考える。ElekesとErdosによれば、類似の三
角形の数は、Ω(n2)であり、また、相似の三角形の
対の数は、Θ(n3/2)である。そこで、画像処理装置
10においては、集合Sの類似の三角形の最大個数t
3に応じてアルゴリズムを変えるものとする。まず、画
像処理装置10は、集合S,Qの幾何学的グラフを
O(N2)時間で計算し、各点Qi∈Qに対して、循環
する連続点の角度により定義される1次元の幾何学的グ
ラフを対応付ける。そして、画像処理装置10は、各ノ
ードに対して、それぞれの距離を表す注釈を付ける。
【0319】
【数62】
【0320】集合Sの三角形TS=(S1,S2,S3
が選択されたとき、画像処理装置10は、単純に以下の
ように処理を進める。なお、集合Sが存在するとき、
そのような三角形は、集合Qに現れる。まず、画像処
理装置10は、集合Qにおける全ての類似な三角形を
探索する。ここで、各マッチによって、チェックすべき
6つの可能な剛体運動が定義される。このアルゴリズム
の総費用は、O(N2log N + t3c(n,m))
=O(N3 log N)である。さらに、画像処理装置
10は、三角形を選択する代わりに、単純に集合Sの
k部分集合を選択し、同様のアルゴリズムを、総費用O
k(N2 log N + tkc(N,M))で実行するよ
うにしてもよい。ここで、tk=Ω(n)であり、大き
なkの値に対しては、反復単位距離の下の境界にマッチ
する。このアルゴリズムの実行時間は、O(N2+ε l
og N)である。
【0321】ここで、r=d2(S1,S2)/d
2(S1,S3)、α=∠S213とおく。なお、集合
Qにおいて、角αを最大O(n2 log n)時間内
に見つけることができることが知られている。
【0322】画像処理装置10は、図30に示す一連の
工程を経ることによって、部分合同を検出する。
【0323】まず、画像処理装置10は、同図に示すよ
うに、ステップS151において、G(Q)を計算
し、各ノードに対して、その循環的にソートされた角度
のリストを関連づける。画像処理装置10は、繰り返し
角度に対しては、半径方向にソートする。
【0324】続いて、画像処理装置10は、ステップS
152において、G(Q)において、角度を有する3
点の組み合わせの全てに対して標識をO(m2 log
m)時間内に付与する。画像処理装置10は、3点の組
み合わせに対して、その比がr又は1/rでないかを確
認する。三角形xabの頂点xに対する比は、xに入射
する辺の長さの比、すなわち、d2(x,a)/d
2(x,b)により定義される。なお、同一直線上に存
在する3点の組は、多数存在し得る。これは、S1
におけるパターンマッチング問題である。ここで、有効
であると認められた三角形により得られる変換の集合を
S(Γ)で表す。
【0325】そして、画像処理装置10は、ステップS
153において、t3個の有効な全ての3点の組をチェ
ックし、一連の処理を終了する。
【0326】このときのアルゴリズムの総費用は、O
(m2 log m + t3c(n,m))=O(N3
og N)時間である。
【0327】実際には、絶対誤差εが存在し、|T
S(Γ)|が大きくなることから、画像処理装置10
は、図31に示す反復法を用いて改良された一連の工程
を経ることによって、部分合同を検出する。
【0328】まず、画像処理装置10は、同図に示すよ
うに、ステップS161において、iからlまで、集合
S内の三角形Γiをランダムに描き、TS(Γi)を計
算する。
【0329】続いて、画像処理装置10は、ステップS
162において、次式(63)により表されるTを計算
する。
【0330】
【数63】
【0331】そして、画像処理装置10は、ステップS
163において、全ての変換T∈TSに対して部分合同
性を調べ、一連の処理を終了する。
【0332】この方法の実行時間は、O(lN2 log
N + |T|Tc(n,m))である。
【0333】画像処理装置10は、1つの三角形が与え
られたとき、図32に示すように、問い合わせによっ
て、集合Q内の類似の三角形を見つけることができ
る。実際には、画像処理装置10は、マッチする合同三
角形及びマッチする鏡映合同三角形を全て見つけ出す。
また、画像処理装置10は、選択された1つの点Q1
ら出発して、|d2(S1,S2)−d2(Q1,Q2)|≦
2εで定義されるリング内に存在するQ2があるか否か
を問い合わせる。画像処理装置10は、この問い合わせ
により得られた各点に対して、交差する2つのリング
|d2(S1,S3)−d2(Q1,Q3)|≦2ε及び|d
2(S2,S3)−d2(Q2,Q3)|≦2εにより定義さ
れる2つの結合された要素内の全ての点Q3を選択す
る。
【0334】画像処理装置10は、2つの代数的リング
の交差点から掃引を行うことによって、この処理をO
(1)時間内に実行することができる。したがって、こ
のアルゴリズムの実行時間は変化しない。p個の点の部
分集合を選択したとき、第i番目の点を選択するために
は、次式(64)により表されるx個のリングの代数的
交差を計算する。ただし、i≧3の場合には、1つのド
メインに崩壊する。
【0335】
【数64】
【0336】上述した処理は、すでに合同アルゴリズム
の説明の際に述べたように、任意の次元に自然に拡張す
ることができる。
【0337】最大がεであるσS=(S1,・・・,
d)に類似の全てのシンプレックスを探索することを
考える。ここで、各点Qi∈Qに対して、類似のシン
プレックスをアンカーすることを考える。画像処理装置
10は、点Q1にアンカーされたシンプレックスに対し
て、まず最初に、Ring(Q1,d2(S1,S2)−2
ε,d2(S1,S2)+2ε)の内部に存在する全ての
2を探し出す。このようなQ2は、最大でO(Δd-1
個存在する。次に、画像処理装置10は、リングとリン
グとの共通部分Ring(Q1,d2(S1,S3)−2
ε,d2(S1,S3)+2ε)∩Ring(Q1,d
2(S2,S3)−2ε,d2(S2,S3)+2ε)に存在
するQ3を探し出す。このようなQ3は、バケッティング
を行った場合、最大でO(Δd-2)個存在する。画像処
理装置10は、このような処理を繰り返し行うことによ
って、次式(65)により表される共通部分の内部に存
在するQiを探し出す。
【0338】
【数65】
【0339】このようなQiは、最大でO(Δd-i)個存
在する。したがって、アンカー点Q1には、最大で次式
(66)個が存在する。すなわち、集合Qにおいて、
σSに類似のシンプレックスが最大でO(n
Δd(d-1)/2)個存在する。
【0340】
【数66】
【0341】つぎに、最大共通点集合(S,Q)に
ついて説明する。すなわち、ここでは、S’⊆S,
Q’⊆Q,S’≡Q’となる|S’|の最大
のものを求める。これは、「最大共通点集合問題」と称
される。与えられたk個の集合の共通点集合のうちの最
大のものを求める問題は、“T. Akutsu and M. M. Hall
dorsson, On the approximation of largest common su
btrees and largest common point sets, In Proc. 5th
Annu. Internat. Sympos. Algorithms Comput., volum
e 834 of Lecture Notes Comput. Sci., pages 405-41
3, Beijing, China, 1994, Springer-Verlag”に記載さ
れているように、NP完全であることがわかっている。
【0342】ここで、次のような最大共通点集合問題を
考える。「2つのd次元点集合S,Qが与えられた
とき、S’≡Q’⊆Qとなる最大の部分集合
S’⊆Sを見出す。」
【0343】全ての次式(67)により表されるx個の
変換をテストし、最良のものを選択する、或いは、投票
する単純自明なアルゴリズムは、O(N5 log N)
時間を要する。ただし、N=max{n,m}である。
【0344】
【数67】
【0345】さて、次の決定問題について考える。すな
わち、k−共通点集合問題として、「2つのd次元点集
合S,Qが与えられたとき、S’⊂S,Q’
⊂Qであり、且つ、|S’|=|Q’|=kであ
りS’≡Q’となるものが存在するであろうか?」
【0346】図33に、最大共通点集合の例として、最
大共通点集合及び次に大きい共通点集合を示す。最大共
通点集合は、O(log n)TD(n,m)時間内に求
めることができる。ただし、TD(n,m)は、決定問
題を解くのに必要な時間である。
【0347】決定問題を解くためのアルゴリズムを以下
に提案する。画像処理装置10は、上述してきたよう
に、ステージ毎に処理を行うが、各ステージは、図34
に示すようなものである。
【0348】まず、画像処理装置10は、同図に示すよ
うに、ステップS171において、集合SのO
(n2)個の距離DS及び集合QのO(m2)個の距離
Qを全て計算する。ここで、エッジ値eは、e∈DS
Qであるとき、可能性ありという。画像処理装置10
は、全ての可能性のあるエッジをマークし、可能性のな
いものをDS,DQから除去する。
【0349】続いて、画像処理装置10は、ステップS
172において、集合S,Qの共通距離の中で、次
式(68)により表される最小反復距離数を有するもの
を選択する。
【0350】
【数68】
【0351】続いて、画像処理装置10は、ステップS
173において、2DS(lmin)*DQ(lmin)個の全
ての位置についてテストを行う。1つの位置についてマ
ッチングのサイズを計算するのにTc(n,m)=O
(n log m)時間を要する。ここで、mは、このス
テージにおけるマッチングのサイズを表す。
【0352】画像処理装置10は、次のステージにおい
て、マッチングのサイズを少なくともmであるものに限
定して、他の距離値を選択する。画像処理装置10は、
アルゴリズムの速度を向上させるために、距離d=d2
(pi,pj)についてのテストを行うにあたって、アウ
トライアの一部を除いて点集合を簡単なものとする。こ
こで、大きな“マッチング”が存在しない場合には、少
なくとも点の1つがアウトライアであることが知られて
いる。同様に、全ての類似の距離、すなわち、DS−DQ
は、1つのアウトライア点を必ず有しており、スケーリ
ングを許容しなければ、既知である。このアルゴリズム
の時間複雑性は、O(N log N ×N
16/92-4/3)、すなわち、O(N31/9 log n)=
O(n3.445 log n)時間である。
【0353】また、画像処理装置10においては、多数
決法を次のように用いる。すなわち、画像処理装置10
は、回転空間をO(Δ)の小さな回転量で離散化する。
次に、画像処理装置10は、ある固定回転において、よ
く知られているBallardの手法を適用する。画像処理装
置10においては、点の対S∈S,Q∈Qに対し
て、Q’がリングRing(Q,d2(S,S’)−2
ε,d2(S,S’)+2ε)に存在するような全ての
変換T[S,S’;Q,Q’],T[S,S’;Q’,
Q]を考察する。画像処理装置10は、このような変換
が見つかるたび毎に、票を加えていく。最後に、画像処
理装置10は、最大の票を得た変換を全て選択又は報告
する。例えば、投票数がpである変換は、サイズがp+
1である共通点集合を有する。
【0354】つぎに、ズームを行った場合における最大
共通点集合について説明する。上述したように、ここで
も類似の三角形を選択する。さらに、いわゆるハフ(Ho
ugh)法と類似の多数決アルゴリズムをこれに適用す
る。
【0355】これまでに述べたアルゴリズムは、全て部
分対称性の概念に依存する実行時間を有している。ここ
で、2つの変換が少なくとも2つの点とマッチし、これ
らの変換が等価なモジュロ回転行列TRである場合
に、これらの2つの変換は、部分対称性を有するとい
う。
【0356】したがって、画像処理装置10は、点とマ
ッチする変換T∈Tが見出されたとき、すなわち、|
M|=rとしてS∩T(Q)=Mであるとき、
次式(69)により定義されるQの部分点集合Q’
を有するMのr個の点とマッチする回転変換を計算す
ることができる。
【0357】
【数69】
【0358】ここで、Mの対称群T(M)は、すで
に加えてある。画像処理装置10は、変換の計算を2回
行うことを避けるために、変換のリストをメモリ中に保
存する。
【0359】つぎに、ランダム制約配置法について説明
する。kを変換T∈Tを定義するのに必要な点の対の
数であるとする。例えば、並進、回転、均一スケーリン
グすなわちズームに対しては、k=2である。ここで、
点のα%がマッチするものと仮定する。このとき、画像
処理装置10は、およそ1−αkの確率で条件を満たす
変換を得ることができる。さらに、画像処理装置10
は、k−部分集合について調べる場合に、変換がα%の
点をマッチさせるならば、まず最初にサイズがrの部分
集合について調べる。画像処理装置10は、この部分集
合が少なくともβ%とマッチする場合には、全ての集合
についてテストを行い、部分集合が少なくともβ%とマ
ッチしない場合には、この変換を棄却する。画像処理装
置10は、このような処理をO(1)回繰り返す。すな
わち、次式(70)により表されるt時間アルゴリズム
が得られる。ここで、次式(71)は、Qの類似性に
関連し、C(・,・)は、マッチングアルゴリズムの正
確性を測定する際の費用である。なお、画像処理装置1
0は、バースディパラドックス法を用いても同様に行う
ことができ、両方の集合の次式(72)により表される
x個の点を繰り返しサンプリングする。
【0360】
【数70】
【0361】
【数71】
【0362】
【数72】
【0363】ここで、ある応用において意味のある変換
T∈Tのみに関心があるものとする。例えば、|d
(T(Si),T(Sj))−d(Si,Sj)|≦ωとな
るような変換に関心をもっているものとする。ここで、
ωは、入力の信頼度に依存する量である。画像処理装置
10は、Qのk−部分集合(S1,・・・,Sk)の全
てをテストする代わりに、まず最初に、点Q1∈Qを
選択し、この点Q1を中心とするリングであり、その内
径がd(S1,S2)−ωであり幅が2ωであるようなリ
ングの内部の点のみを、Q2の候補として選択する。た
だし、ωは、規定パラメータである。画像処理装置10
は、このような処理を反復実施し、上述した制約を変換
Tに課す幾何学的範囲内において集合Qに対する問い
合わせを行う。ここで、次式(73)を上述した制約を
満足するQのk個からなる点の組の数であるとする。
ただし、tは、点集合Qの自己類似性に依存する量で
ある。
【0364】
【数73】
【0365】例えばk=2とする。ここで、画像処理装
置10は、集合Sからランダムにとった点の対
{S1,S2}が与えられたとき、|d(Q1,Q2)−d
(S1,S2)|≦ωとなるようなQの点の対{Q1
2}を探索する。理想的には、距離がd(S1,S2
−ωとd(S1,S2)+ωとの間にあるようなQの点
の対を全て列挙するのが望ましいが、それ自体が困難な
問題である。したがって、画像処理装置10は、以下の
ように処理を進める。すなわち、画像処理装置10は、
Qの点を順次選択し、現在の点Qiに対して、半径が
d(S1,S2)−ωで幅が2ωのリングを描く。そし
て、画像処理装置10は、このリングの内部のQの点
の全てを報告する。さて、tを全てのステージにおいて
報告される点の数とする。このとき、ω=0である場合
には、tも完全幾何学的グラフにおける距離反復数によ
り制約される。または、tは、m個の点を有するm個の
円の最大出現率により制約される。この出現率は、O
(m4/3)=o(m2)であることがわかっており、Erdo
sによれば、この値は、O(n1+ε)であると推測され
ている。画像処理装置10は、“P. Gupta, R. Janarda
n, and M. Smid, On intersection searching problems
involving curved objects, In Proc. 4th Scand. Wor
kshop Algorithm Theory, volume 824 of Lecture Note
s Comput. Sci., pages 183-194, Springer-Verlag, 19
94”に記載されている方法に基づいてデータ構造を作成
し、テストすべきt個の点の対を報告する。この手法
は、任意の次元に一般化することができるが、d≧4で
ある場合には、単位距離の数は、2次関数で与えられ
る。この問い合わせの方法を、与えられた変換Tがマッ
チするのかしないのかをチェックするためにも用いるこ
とが可能である。この場合、まず最初にO(1)個の点
についてチェックし、次に集合全体に拡張する。配置法
における幾何学的フィルタリングは、一般的な手法とし
て用いることができるが、具体的な応用に合わせてチュ
ーニングする必要がある。
【0366】画像処理装置10は、以上のようにして最
大共通点集合を検出することによって、画像を合成する
ことができ、例えばパノラマ状の合成画像や遠近感に優
れた斜視状の合成画像等を生成することができる。
【0367】つぎに、条件付き幾何学的ハッシングにつ
いて説明する。幾何学的ハッシングは、最初に“Y. Lam
dan and H. J. Wolfson, Geometric hashing:a general
andefficient model-based recognition scheme, In 2
nd Inter. Conf. on Comput. Vision, pages 238-249,
1988”により導入され、“Y. Lamdan, J. T. Schwartz,
and H. J. Wolfson, Object recognition by affine i
nvariant mapping, In Proc. IEEE Internat. Conf. Co
mput. Vision Pattern. Recogn., pages 335-344, 198
8”や“Y. Lamdan and H. J. Wolfson, On the error a
nalysis of geometric hashing, In Proc. IEEE Intern
at. Conf. Comput. Vision Pattern. Recogn., pages 2
2-27, 1991”により発展改良された。幾何学的ハッシン
グは、固定された点集合Q、すなわちモデルと、様々
なシーン、すなわち点集合Sとの間の多重問い合わせ
をするのに用いることができる。ここでは、形式化を行
い、幾何学的制約を幾何学的ハッシングに適用する方法
を示す。幾何学的ハッシングは、おおよそ、前処理ステ
ージと問い合わせステージとの2つのステージに分けら
れる。前処理ステージでは、モデルをそれ自身にマップ
し、問い合わせステージでは、マッチするものがあるか
どうかを短時間内に答える。ここで、QからSへの
変換は、2つのk個の点からなる組により定義される。
【0368】画像処理装置10は、モデルQの前処理
として、Qのk個の点からなる組のうち任意の組Q
Tを選択する。次に、画像処理装置10は、Qのk個
の点からなる組に対して、可能な全ての順列である可能
なk!個の変換の全てを検討する。画像処理装置10
は、QT及び他のk個の点の組から得られる変換であ
る与えられた変換Tiに対して、集合Ti(Q)を作成
し、ラベル‘Ti’を各点P∈Ti(Q)毎にハッシュ
テーブルに保存する。すなわち、画像処理装置10は、
ラベル‘Ti’を直交座標を用いて、H(P)に保存
する。
【0369】そして、画像処理装置10は、シーンS
の問い合わせとして、Sのk−点組の全てを調べ、
Tに関する変換であるモデルからシーンへの変換
i’の全てを探索する。画像処理装置10は、各変換
i’に対して、集合Ti’(S)を作成してハッシュ
テーブルに保存する。さらに正確には、画像処理装置1
0は、全ての点Pj∈Ti’(S)を順次調べて、H
(Pj)に保存されている全ての変換に対して票を1つ
ずつ加える。画像処理装置10は、全ての変換Ti’を
調べ終わると、得票数が最大のものを選択又は列挙す
る。最後に、画像処理装置10は、後述するように、モ
デルからシーンへの直接変換を行う。
【0370】幾何学的ハッシングの作用は、基本的に
は、変換空間が例えば行列の積であると見なせるよう
に、変換空間がその任意の変換を2つの変換T=T1×
2に分解することができるような群であることに基づ
いている。そこで、画像処理装置10は、点の組をモデ
ルTQからシーンTSの点の組にマップするために、まず
最初に、TQをQにおける基準の組であるQTにマッ
プし、次にQTをTSにマップする。したがって、次式
(74)となる。
【0371】
【数74】
【0372】なお、幾何学的フィルタリング技術を上述
した幾何学的ハッシングに適用することが可能である。
例えば、一定ズームで処理を行いたい場合には、画像処
理装置10は、ズーム率がbである次式(75)により
表される現在の変換に対応するズーム率が1/bである
変換をハッシュテーブルHで調べるだけでよい。この
とき、εの項もε/bに置換される。完全なハッシュテ
ーブルを作成することは、時間的にもメモリ容量の点か
らも困難であることから、画像処理装置10は、ランダ
ム法、すなわち、モデルQの部分集合Q’を用い
る。したがって、画像処理装置10は、SがQ’に
対してよくマッチするかをハッシュテーブルで調べ、
SがQ’に対してよくマッチする場合には、全ての
対を調べる。また、SがQ’に対してよくマッチし
ない場合には、画像処理装置10は、正しい変換を失う
可能性があるが、その確率は、“Sandy Irani and Prab
hakarRaghavan, Combinatorial and experimental resu
lts for randomized point matching algorithms, In P
roc. 12th Annual ACM Symposium on Computational Ge
ometry, pages 68-77, 1996”に記載されているよう
に、実用上十分に小さい。
【0373】
【数75】
【0374】以上説明したように、画像処理装置10
は、画像中の任意のオブジェクトを、異なるソースから
の画像中の任意のオブジェクトに対して、効率的に同定
することができる。このような画像処理装置10は、オ
ブジェクトの同定を行うばかりではなく、画像合成、デ
ータ圧縮、情景分析等に応用することができ、例えばモ
ザイク化への応用も図ることができる。
【0375】なお、本発明は、上述した実施の形態に限
定されるものではなく、例えば、複数のオブジェクトの
同定を行う場合にも、上述した処理を行うことによっ
て、効率的にオブジェクトの同定を行うことができるこ
とは勿論である。
【0376】このように、本発明は、その趣旨を逸脱し
ない範囲で適宜変更が可能であることはいうまでもな
い。
【0377】
【発明の効果】以上詳細に説明したように、本発明にか
かる画像処理方法は、2以上の画像のそれぞれについて
の特徴点を抽出する特徴抽出工程と、2以上の画像のう
ち、一の画像と他の画像との特徴点を比較してマッチン
グを行うマッチング工程と、このマッチング工程の結果
に基づいて、一の画像に含まれるオブジェクトを、他の
画像に含まれるオブジェクトに対して同定する同定工程
とを備える。
【0378】したがって、本発明にかかる画像処理方法
は、2以上の画像のそれぞれについての特徴点を抽出
し、2以上の画像のうち、一の画像と他の画像との特徴
点を比較してマッチングを行い、このマッチングの結果
に基づいて、一の画像に含まれるオブジェクトを、他の
画像に含まれるオブジェクトに対して同定することによ
って、例えば汎用のコンピュータを用いて効率的に異な
るソース間でのオブジェクトの同定を行うことができ
る。
【0379】また、本発明にかかる画像処理装置は、2
以上の画像のそれぞれについての特徴点を抽出する特徴
抽出手段と、2以上の画像のうち、一の画像と他の画像
との特徴点を比較してマッチングを行うマッチング手段
と、このマッチング手段によるマッチングの結果に基づ
いて、一の画像に含まれるオブジェクトを、他の画像に
含まれるオブジェクトに対して同定する同定手段とを備
える。
【0380】したがって、本発明にかかる画像処理装置
は、特徴抽出手段によって、2以上の画像のそれぞれに
ついての特徴点を抽出し、マッチング手段によって、2
以上の画像のうち、一の画像と他の画像との特徴点を比
較してマッチングを行い、同定手段によって、マッチン
グの結果に基づいて、一の画像に含まれるオブジェクト
を、他の画像に含まれるオブジェクトに対して同定する
ことによって、例えば汎用のコンピュータを用いて効率
的に異なるソース間でのオブジェクトの同定を行うこと
ができる。
【図面の簡単な説明】
【図1】本発明の実施の形態として示す画像処理装置の
構成を説明するブロック図である。
【図2】画像データの例を示す図である。
【図3】画像データの他の例を示す図である。
【図4】重複部分を説明する図であって、(A)は、3
次元空間上の点を撮像して2次元画像上に投影されて得
られる2枚の画像データを示す図であり、(B)は、2
枚の画像データを重複させている様子を示す図である。
【図5】重複率に応じてマッチング処理を行う手法を変
化させることを説明するための図である。
【図6】特徴点の特性を用いたことを考慮したマッチン
グ処理を行う際に適用されるモンテカルロ法のアルゴリ
ズムの例を示す図である。
【図7】処理実行部で行うマッチング処理について説明
するための図である。
【図8】幾何学的フィルタリングアルゴリズムの例を示
す図である。
【図9】図8に示した幾何学的フィルタリングアルゴリ
ズムとランダムに組み合わせることによって、マッチン
グ処理を行うアルゴリズムの例を示す図である。
【図10】同画像処理装置において、一の画像データ中
に含まれるオブジェクトを、他の画像データに含まれる
オブジェクトに対して同定する際の一連の処理を説明す
るフローチャートである。
【図11】同画像処理装置における幾何学的パターンマ
ッチングの手法を説明する図である。
【図12】等長変換の例を示す図であって、あるパター
ンに対する転移、回転及び鏡映を示す図である。
【図13】対合的回転対称の例を示す図であって、
(A)は、あるパターンを回転させた合同の例と、アウ
トライアが存在する非合同の例とを示す図であり、
(B)は、あるパターンに対する転移、転移及び回転、
鏡映である合同の例を示す図である。
【図14】点集合及び雑音を含む点集合を示す図であっ
て、(A)は、点集合の最小点間距離が球の半径よりも
小さい場合を示す図であって、(B)は、点集合の最小
点間距離が球の半径よりも大きい場合を示す図である。
【図15】同画像処理装置において、2つの点集合が合
同であるか否かを検出する際の一連の処理を説明するフ
ローチャートであって、前半部分の処理を説明する図で
ある。
【図16】同画像処理装置において、2つの点集合が合
同であるか否かを検出する際の一連の処理を説明するフ
ローチャートであって、後半部分の処理を説明する図で
ある。
【図17】合同である2つの点集合の例を示す図であっ
て、(A)は、同一の半径を有する円上に単一の点のみ
を有する2つの点集合を示す図であって、(B)は、同
一の半径を有する円上に複数の点を有する2つの点集合
を示す図である。
【図18】同画像処理装置において、2次元の点集合の
対称性を検出する際の一連の処理を説明するフローチャ
ートである。
【図19】同画像処理装置において、d次元の点集合の
対称性を検出する際の一連の処理を説明するフローチャ
ートである。
【図20】類似性を有する点集合の例を示す図である。
【図21】部分集合合同問題を説明するための図であっ
て、(A)は、ある点集合を示す図であり、(B)は、
(A)に示す点集合の複製が含まれるあるシーンを示す
点集合を示す図である。
【図22】同画像処理装置において、2つの集合が平面
の場合でありズームを許容しない場合に部分合同を検出
する際の一連の処理を説明するフローチャートである。
【図23】同画像処理装置において、2つの集合がd次
元の場合に部分合同を検出する際の一連の処理を説明す
るフローチャートである。
【図24】ブーリアンバケットの例を示す図である。
【図25】環形問い合わせの例を示す図であって、
(A)は、環形問い合わせのバケットを示す図であり、
(B)は、扇形問い合わせのバケットを示す図である。
【図26】同画像処理装置において、転移及び/又は回
転を含むパターンマッチングを行う際の一連の処理を説
明するフローチャートである。
【図27】同画像処理装置において、大きな点集合濃度
に対して、転移及び/又は回転を含むパターンマッチン
グを行う際の一連の処理を説明するフローチャートであ
る。
【図28】同画像処理装置において、パラメータγを推
定する際の一連の処理を説明するフローチャートであ
る。
【図29】スケーリングを行った場合における部分合同
の例を示す図であって、(A)は、ある集合を示す図で
あり、(B)は、(A)に示す集合の部分集合と大きさ
が異なる部分合同が含まれている集合を示す図である。
【図30】同画像処理装置において、部分合同を検出す
る際の一連の処理を説明するフローチャートである。
【図31】同画像処理装置において、部分合同を検出す
る際の一連の処理を説明するフローチャートであって、
反復法を用いて改良された一連の処理を説明する図であ
る。
【図32】ある集合の三角形による他の集合に対する問
い合わせの例を説明するための図である。
【図33】最大共通点集合の例を示す図であって、最大
共通点集合及び次に大きい共通点集合を示す図である。
【図34】同画像処理装置において、決定問題を解く際
の各ステージにおける一連の処理を説明するフローチャ
ートである。
【符号の説明】
10 画像処理装置、 11 ビデオキャプチャー部、
12,13 特徴抽出部、 14 処理実行部、 1
5 評価部、 20 カメラ部、 30 データ入力
部、 40 表示部

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 2以上の画像のそれぞれについての特徴
    点を抽出する特徴抽出工程と、 上記2以上の画像のうち、一の画像と他の画像との特徴
    点を比較してマッチングを行うマッチング工程と、 上記マッチング工程の結果に基づいて、上記一の画像に
    含まれるオブジェクトを、上記他の画像に含まれるオブ
    ジェクトに対して同定する同定工程とを備えることを特
    徴とする画像処理方法。
  2. 【請求項2】 上記マッチング工程では、ハウスドルフ
    マッチングを行うことを特徴とする請求項1記載の画像
    処理方法。
  3. 【請求項3】 上記マッチング工程では、ボトルネック
    マッチングを行うことを特徴とする請求項1記載の画像
    処理方法。
  4. 【請求項4】 上記マッチング工程では、上記一の画像
    についての全ての特徴点からなる特徴点群を示す第1の
    集合と、上記他の画像についての全ての特徴点からなる
    特徴点群を示す第2の集合との合同を検出することを特
    徴とする請求項1記載の画像処理方法。
  5. 【請求項5】 上記マッチング工程は、 上記第1の集合及び上記第2の集合のそれぞれの全ての
    最近接点対を求め、これらの最近接点対が一致する距離
    を有するか否かを判別する最近接点対距離判別工程と、 上記最近接点対距離判別工程にて一致すると判別された
    上記第1の集合及び上記第2の集合のそれぞれの最近接
    点対が同じ基本性質を有するか否かを判別する最近接点
    対性質判別工程と、 上記第1の集合及び上記第2の集合のそれぞれを正規化
    する正規化工程と、 上記第1の集合のセントロイドと、上記第2の集合のセ
    ントロイドとを求めて重複させるセントロイド重複工程
    と、 上記第1の集合を構成する全ての特徴点群と上記第1の
    集合のセントロイドとの距離と、上記第2の集合を構成
    する全ての特徴点群と上記第2の集合のセントロイドと
    の距離とを求める距離計算工程と、 上記第1の集合及び上記第2の集合のそれぞれの半径関
    数を計算する半径関数計算工程と、 上記半径関数計算工程にて計算された上記第1の集合の
    半径関数の濃度が最小となる距離における上記第1の集
    合及び上記第2の集合のそれぞれの半径関数である第3
    の集合及び第4の集合を求める集合検出工程と、 上記集合検出工程にて求められた上記第3の集合及び上
    記第4の集合の幾何学的グラフを計算し、これらの幾何
    学的グラフが同一の数の反復距離を有しているか否かを
    判別する反復距離数判別工程と、 上記反復距離数判別工程にて上記第3の集合及び上記第
    4の集合の幾何学的グラフが同一の数の反復距離を有し
    ていると判別された場合に、上記第3の集合の凸閉包の
    1つの面である稜線を算出する稜線算出工程と、 上記稜線算出工程にて算出された稜線を、上記第4の集
    合の凸閉包のいずれかの稜線に対してマッチさせる稜線
    マッチ工程と、 上記稜線マッチ工程にてマッチさせた稜線対に基づいて
    与えられる全ての変換をテストするテスト工程とを有
    し、 上記第1の集合と上記第2の集合との合同を検出するこ
    とを特徴とする請求項4記載の画像処理方法。
  6. 【請求項6】 上記稜線マッチ工程にてマッチさせた稜
    線対は、剛体運動を定義することを特徴とする請求項5
    記載の画像処理方法。
  7. 【請求項7】 上記稜線マッチ工程にてマッチさせた稜
    線対に基づいて与えられる変換は、アフィン変換である
    ことを特徴とする請求項5記載の画像処理方法。
  8. 【請求項8】 2以上の画像のそれぞれについての特徴
    点を抽出する特徴抽出手段と、 上記2以上の画像のうち、一の画像と他の画像との特徴
    点を比較してマッチングを行うマッチング手段と、 上記マッチング手段によるマッチングの結果に基づい
    て、上記一の画像に含まれるオブジェクトを、上記他の
    画像に含まれるオブジェクトに対して同定する同定手段
    とを備えることを特徴とする画像処理装置。
  9. 【請求項9】 上記マッチング手段は、ハウスドルフマ
    ッチングを行うことを特徴とする請求項8記載の画像処
    理装置。
  10. 【請求項10】 上記マッチング手段は、ボトルネック
    マッチングを行うことを特徴とする請求項8記載の画像
    処理装置。
  11. 【請求項11】 上記マッチング手段は、上記一の画像
    についての全ての特徴点からなる特徴点群を示す第1の
    集合と、上記他の画像についての全ての特徴点からなる
    特徴点群を示す第2の集合との合同を検出することを特
    徴とする請求項8記載の画像処理装置。
  12. 【請求項12】 上記マッチング手段は、上記第1の集
    合及び上記第2の集合のそれぞれの全ての最近接点対を
    求め、これらの最近接点対が一致する距離を有するか否
    かを判別し、一致すると判別された上記第1の集合及び
    上記第2の集合のそれぞれの最近接点対が同じ基本性質
    を有するか否かを判別し、上記第1の集合及び上記第2
    の集合のそれぞれを正規化し、上記第1の集合のセント
    ロイドと、上記第2の集合のセントロイドとを求めて重
    複させ、上記第1の集合を構成する全ての特徴点群と上
    記第1の集合のセントロイドとの距離と、上記第2の集
    合を構成する全ての特徴点群と上記第2の集合のセント
    ロイドとの距離とを求め、上記第1の集合及び上記第2
    の集合のそれぞれの半径関数を計算し、上記第1の集合
    の半径関数の濃度が最小となる距離における上記第1の
    集合及び上記第2の集合のそれぞれの半径関数である第
    3の集合及び第4の集合を求め、上記第3の集合及び上
    記第4の集合の幾何学的グラフを計算し、これらの幾何
    学的グラフが同一の数の反復距離を有しているか否かを
    判別し、上記第3の集合及び上記第4の集合の幾何学的
    グラフが同一の数の反復距離を有していると判別された
    場合に、上記第3の集合の凸閉包の1つの面である稜線
    を算出し、算出された稜線を、上記第4の集合の凸閉包
    のいずれかの稜線に対してマッチさせ、このマッチさせ
    た稜線対に基づいて与えられる全ての変換をテストする
    ことによって、上記第1の集合と上記第2の集合との合
    同を検出することを特徴とする請求項11記載の画像処
    理装置。
  13. 【請求項13】 マッチさせた稜線対は、剛体運動を定
    義することを特徴とする請求項12記載の画像処理装
    置。
  14. 【請求項14】 マッチさせた稜線対に基づいて与えら
    れる変換は、アフィン変換であることを特徴とする請求
    項12記載の画像処理装置。
JP28495499A 1999-10-05 1999-10-05 画像処理方法及び画像処理装置 Abandoned JP2001109885A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28495499A JP2001109885A (ja) 1999-10-05 1999-10-05 画像処理方法及び画像処理装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28495499A JP2001109885A (ja) 1999-10-05 1999-10-05 画像処理方法及び画像処理装置

Publications (2)

Publication Number Publication Date
JP2001109885A true JP2001109885A (ja) 2001-04-20
JP2001109885A5 JP2001109885A5 (ja) 2006-05-25

Family

ID=17685238

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28495499A Abandoned JP2001109885A (ja) 1999-10-05 1999-10-05 画像処理方法及び画像処理装置

Country Status (1)

Country Link
JP (1) JP2001109885A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007058811A (ja) * 2005-08-26 2007-03-08 Matsushita Electric Works Ltd パターンマッチング方法
US7298880B2 (en) 2003-03-07 2007-11-20 Kabushiki Kaisha Toshiba Image processing apparatus and image processing method
US7983482B2 (en) 2005-11-08 2011-07-19 Kitakyushu Foundation For The Advancement Of Industry, Science And Technology Matching apparatus, image search system, and histogram approximate restoring unit, and matching method, image search method, and histogram approximate restoring method
US8155451B2 (en) 2004-11-12 2012-04-10 Kitakyushu Foundation For The Advancement Of Industry, Science And Technology Matching apparatus, image search system, and histogram approximate restoring unit, and matching method, image search method, and histogram approximate restoring method
CN117990204A (zh) * 2024-04-03 2024-05-07 深圳市美格信测控技术有限公司 一种电动汽车多工况下的电机噪声评价方法及系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7298880B2 (en) 2003-03-07 2007-11-20 Kabushiki Kaisha Toshiba Image processing apparatus and image processing method
US8155451B2 (en) 2004-11-12 2012-04-10 Kitakyushu Foundation For The Advancement Of Industry, Science And Technology Matching apparatus, image search system, and histogram approximate restoring unit, and matching method, image search method, and histogram approximate restoring method
JP2007058811A (ja) * 2005-08-26 2007-03-08 Matsushita Electric Works Ltd パターンマッチング方法
JP4525526B2 (ja) * 2005-08-26 2010-08-18 パナソニック電工株式会社 パターンマッチング方法及び装置
US7983482B2 (en) 2005-11-08 2011-07-19 Kitakyushu Foundation For The Advancement Of Industry, Science And Technology Matching apparatus, image search system, and histogram approximate restoring unit, and matching method, image search method, and histogram approximate restoring method
CN117990204A (zh) * 2024-04-03 2024-05-07 深圳市美格信测控技术有限公司 一种电动汽车多工况下的电机噪声评价方法及系统

Similar Documents

Publication Publication Date Title
JP2000215317A (ja) 画像処理方法及び画像処理装置
Shi et al. ROBIN: a graph-theoretic approach to reject outliers in robust estimation using invariants
Chen Digital and discrete geometry: Theory and algorithms
Wang et al. Discrete minimum distortion correspondence problems for non-rigid shape matching
Hamza et al. Geodesic matching of triangulated surfaces
Xue et al. Example-based 3D object reconstruction from line drawings
Bai et al. Deep depth-based representations of graphs through deep learning networks
Demirci et al. Indexing through laplacian spectra
JP2001109885A (ja) 画像処理方法及び画像処理装置
Lai et al. Multi-scale non-rigid point cloud registration using robust sliced-wasserstein distance via laplace-beltrami eigenmap
Yang et al. Automatic 3D reconstruction of a polyhedral object from a single line drawing under perspective projection
Friedrich et al. Accelerating evolutionary construction tree extraction via graph partitioning
JP2001109882A (ja) 画像処理方法及び画像処理装置
Piquer et al. Skewed mirror symmetry in the 3D reconstruction of polyhedral models
JP5986681B2 (ja) モデルの形状記述子を生成する方法及び装置
JP2001109886A (ja) 画像処理方法及び画像処理装置
Sharma et al. Parameter Extraction and Performance Analysis of 3D Surface Reconstruction Techniques
Talker et al. Estimating the number of correct matches using only spatial order
Ozay et al. Compositional hierarchical representation of shape manifolds for classification of non-manifold shapes
Martin et al. Turning shape decision problems into measures
Soysal et al. Joint utilization of local appearance and geometric invariants for 3D object recognition
Joan-Arinyo et al. Decomposition of geometric constraint graphs based on computing fundamental circuits. Correctness and complexity
Jribi et al. A stable and invariant three-polar surface representation: application to 3D face description
Bellaire Feature-based computation of hierarchical aspect-graphs
Brimkov Digital geometry for image analysis and processing

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060315

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060315

A762 Written abandonment of application

Free format text: JAPANESE INTERMEDIATE CODE: A762

Effective date: 20070622