(57)【要約】      （修正有）【課題】入力された画像に類似する画像を検索する画像処理装置であって、画像の局所的な特徴点を抽出する特徴点抽出手段と、前記抽出された特徴点における特徴量の揺らぎ分布を求め、分布された特徴量間の距離に基づき、前記画像の類似度を算出する類似度算出手段とを有する。【解決手段】入力された画像に類似する画像を検索する画像処理装置において、画像の局所的な特徴点を抽出し、抽出された特徴点における特徴量の揺らぎ分布を求め、分布された特徴量間の距離に基づき、画像の類似度を算出する。そして、入力された画像と登録された登録画像との類似度に従って登録画像を検索する。【選択図】図２
2008287439.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像に類似する画像を検索する画像処理装置であって、
画像の局所的な特徴点を抽出する特徴点抽出手段と、
前記抽出された特徴点における特徴量の揺らぎ分布を求め、分布された特徴量間の距離に基づき、前記画像の類似度を算出する類似度算出手段とを有することを特徴とする画像処理装置。
【請求項２】
前記特徴点抽出手段は、回転不変の性質を持つ特徴点を抽出することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記類似度算出手段は、前記特徴量間の距離を正規化し、正規化された距離に基づき、前記画像の類似度を算出することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記類似度算出手段は、前記特徴量間の距離を分散で割るか、又はマハラノビスの距離を用いて正規化することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記類似度算出手段は、正規化された距離の線形和、或いは重み付け線形和に基づき、前記画像の類似度を算出することを特徴とする請求項３又は４に記載の画像処理装置。
【請求項６】
前記重み付け線形和の重みは、分散の小さい特徴点に大きい重みを付けることを特徴とする請求項５に記載の画像処理装置。
【請求項７】
前記類似度算出手段は、入力された画像と登録された登録画像との類似度に従って前記登録画像を検索結果として出力することを特徴とする請求項１乃至６の何れか１項に記載の画像処理装置。
【請求項８】
入力された画像に類似する画像を検索する画像処理装置にて実行される画像検索方法であって、
画像の局所的な特徴点を抽出する特徴点抽出工程と、
前記抽出された特徴点における特徴量の揺らぎ分布を求め、分布された特徴量間の距離に基づき、前記画像の類似度を算出する類似度算出工程と、
入力された画像と登録された登録画像との類似度に従って前記登録画像を検索する工程とを有することを特徴とする画像検索方法。
【請求項９】
請求項８に記載の画像検索方法をコンピュータに実行させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムを記録したコンピュータにより読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像中の特徴点の類似度に基づき類似画像を検索する画像処理装置及び画像検索方法に関するものである。
【背景技術】
【０００２】
従来、回転に対応した検索は、クエリ画像を回転して特徴量を求める、或いは特徴量を回転変換したものを用いて検索を行っている。更に、学習画像（特徴量の値の分布を調べるサンプル画像）における各特徴量の値を正規化するための分布を考慮し、ベイズ距離尺度やマハラノビス距離尺度を用いたマッチングを行う技術もある。
【０００３】
しかし、これらは、登録される画像の理想としての学習画像における特徴量分布が正規化されたもので、クエリ画像そのものの回転や拡大縮小などの画像処理により、算出される特徴量がばらついてしまうことを考慮したものではない。そのため、特徴量の類似度を算出するための特徴量間の距離が、正しく算出されず、ばらつきを生じてしまっていた。
【０００４】
また、画像中の特徴点の類似度に基づく画像検索技術として、例えば、特許文献１が開示されている。これは、予め準備した学習用モデル画像を使い、画像認識処理用辞書に登録すべき特徴点の特徴量を取捨選択するものである。学習用の画像から特徴点及び特徴量を抽出した後、学習モデル画像のそれらと比較する。そして、最も対になった回数が多い特徴量が、認識処理に用いられる特徴量として認識処理用辞書に登録される。
【０００５】
多重解像度化／回転変換を行った上で特徴点検出、特徴量抽出を行い、更にこれを認識用の辞書を構築しやすいＴＲＥＥ構造でインデックス化している。ただし、画像の拡縮や特徴量の分布や、クエリ自身の特徴点の回転に関する耐性（ロバスト性）等の観点についての具体的な記述は無い。
【０００６】
一方、非特許文献１では、特徴点検出を行い、複数解像度で回転不変の性質を持つ特徴量を算出し、値が極大と成るものを耐性のある（ロバストな）特徴として採用する。更に、クエリとの比較は、登録画像の特徴量の分布を考慮したマハラノビス距離を用い、多次元特徴量の分布の偏りの問題を緩和している。
【特許文献１】特開2006-065399号公報
【非特許文献１】"Local Gray value Invariants for Image Retrieval" Cordelia Schmid
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、従来技術で用いられている理論的に回転不変の性質を持つはずの特徴量は、画像回転時に施される線形補間などのノイズにより、実際には変動が発生する。図８は、回転不変の性質を持つ特徴量の変動の一例を示す図である。従来技術で回転不変の性質を持つ特徴量として定義されている特徴量ベクトルについて、画像を０°〜９０°まで１５°ずつ回転させた時の特徴量の第０成分と第１成分の変動を散布図として示したものである。図８に見られるように、回転不変の性質を持つとされて算出された特徴量が変動している。特徴量が実際には変動してしまうという問題により、検索精度を低下させるという問題があった。また、同様に、拡大縮小により回転不変の性質を持つはずの特徴量が変動する。
【０００８】
即ち、登録特徴量の多次元特徴量の分布をマハラノビス距離尺度を用い正規化しているだけであり、クエリ自体の特徴量の分布の拡大縮小、回転により起こるばらつきについては考慮されていない。
【０００９】
このように、従来技術では、クエリ画像自身のクエリ自体の特徴量の分布の拡大縮小、回転により起こるばらつきを考慮していないので、画像同士の類似度の計算の精度が高いとは言えない。回転や拡大縮小と言った人間が簡単に同一と認知できる画像の変換が合った場合でも、高い類似度は保証されず、ユーザの感覚と類似度との間に大きなギャップを生じていた。ユーザが似ていると感じる画像と、従来技術で算出された類似度が高い画像とに隔たりがあった。
【００１０】
本発明は、画像の局所的な特徴点における特徴量の揺らぎ分布を求め、分布している特徴量間の距離に基づき、画像の類似度を算出することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、入力された画像に類似する画像を検索する画像処理装置であって、画像の局所的な特徴点を抽出する特徴点抽出手段と、前記抽出された特徴点における特徴量の揺らぎ分布を求め、分布された特徴量間の距離に基づき、前記画像の類似度を算出する類似度算出手段とを有することを特徴とする。
【００１２】
また、本発明は、入力された画像に類似する画像を検索する画像処理装置にて実行される画像検索方法であって、画像の局所的な特徴点を抽出する特徴点抽出工程と、前記抽出された特徴点における特徴量の揺らぎ分布を求め、分布された特徴量間の距離に基づき、前記画像の類似度を算出する類似度算出工程と、入力された画像と登録された登録画像との類似度に従って前記登録画像を検索する工程とを有することを特徴とする。
【発明の効果】
【００１３】
本発明によれば、画像に対して拡大縮小、回転、或いはそれらの組み合わせがあったとしても、画像中の特徴点における類似度演算の精度が高くなり、ユーザの直感と近い、画像同士の類似度演算の結果を得ることができる。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。
【００１５】
＜第１の実施形態＞
図１は、第１の実施形態における画像登録装置の構成例を示すブロック図である。図１に示すように、画像登録装置１００は、画像入力部１０２、縮小画像生成部１０３、局所特徴点抽出部１０４、局所特徴量算出部１０５、特徴量登録部１０６から構成される。
【００１６】
画像登録装置１００において、縮小画像生成部１０３が画像入力部１０２に入力された登録画像１０１の縮小画像を生成し、局所特徴点抽出部１０４が縮小画像から局所特徴点を抽出する。そして、局所特徴量算出部１０５がその局所特徴点の局所特徴量を算出し、特徴量登録部１０６が入力された登録画像１０１と算出された局所特徴量とを関連付けて画像特徴データベース１０７に登録する。尚、画像登録装置１００にて実行される画像の登録処理については、更に詳述する。
【００１７】
図２は、第１の実施形態における画像検索装置の構成例を示すブロック図である。図２に示すように、画像検索装置２００は、画像入力部２０２、縮小画像生成部２０３、局所特徴点抽出部２０４、局所特徴量算出部２０５、特徴量分布検定部２０６、画像間類似度算出部２０７から構成される。
【００１８】
画像検索装置２００において、縮小画像生成部２０３が画像入力部２０２に入力されたクエリ画像２０１の縮小画像を生成し、局所特徴点抽出部２０４が縮小画像から局所特徴点を抽出する。そして、局所特徴量算出部２０５がその局所特徴点の局所特徴量を算出し、特徴量分布検定部２０６が局所特徴量を検定する。この検定結果は画像間類似度算出部２０７に渡され、画像間類似度算出部２０７が検定結果に基づき、画像特徴データベース１０７からクエリ画像２０１に類似した画像を検索し、検索結果２０８として出力する。尚、画像検索装置２００にて実行される画像の検索処理については、更に詳述する。
【００１９】
［画像の登録処理］
まず、画像を登録する際に行う各部の動作について説明する。図３は、画像の登録処理の手順を表すフローチャートである。ステップＳ３０１で、図１に示す画像入力部１０２が登録画像１０１を読み込み、ステップＳ３０２で、当該登録画像１０１から輝度成分を抽出する。そして、抽出した輝度成分に基づき輝度成分画像を生成し、生成した輝度成分画像を縮小画像生成部１０３に渡す。また、登録画像１０１を後段の特徴量登録部１０６に渡す。
【００２０】
次に、ステップＳ３０３では、縮小画像生成部１０３が画像入力部１０２から渡された当該輝度成分画像を倍率ｐに従って順次縮小し、縮小画像をｎ枚生成して当該縮小画像を局所特徴点抽出部１０４に渡す。ただし、倍率ｐ及び縮小画像の枚数ｎは予め決められているものとする。
【００２１】
図４は、縮小画像を生成する縮小画像生成部１０３の処理の一例を示す図である。図４に示す例は、倍率ｐが２の−（１／４）乗、縮小画像の枚数ｎが９の場合である。図４において、４０１は画像入力部１０２から渡された輝度成分画像である。４０２は当該輝度成分画像から倍率ｐに従って４回縮小された縮小画像である。４０３は当該輝度成分画像から倍率ｐに従って８回縮小された縮小画像である。
【００２２】
この例では、縮小画像４０２は画像入力部１０２から渡された輝度成分画像が１／２に縮小された画像となり、縮小画像４０３は画像入力部１０２から渡された輝度成分画像が１／４に縮小された画像となる。尚、画像を縮小する方法は何れの方法でも良く、第１の実施形態では、線形補間による縮小方法により縮小画像を生成するものとする。
【００２３】
次に、ステップＳ３０４では、局所特徴点抽出部１０４が、縮小画像生成部１０３から渡されたｎ枚の縮小画像の各々に画像の回転があってもロバスト（robust）に抽出されるような局所的な特徴点（局所特徴点）を抽出する。ここで、ロバストな局所特徴点とは、画像を回転するときの画像処理で消えることなく安定的に抽出される、強健で耐性のある局所特徴点を意味する。抽出した局所特徴点は局所特徴量算出部１０５に渡される。この局所特徴点の抽出方法として、第１の実施形態ではHarris作用素を用いる。C.Harris and M.J. Stephens, "A combined corner and edge detector," In Alvey Vision Conference, pages 147-152, 1988.参照
具体的には、Harris作用素を作用させて得られた出力画像Ｈ上の画素について、当該画素及び当該画素の８近傍にある画素（合計９画素）の画素値を調べる。そして、当該画素が局所極大になる（当該９画素の中で当該画素の画素値が最大になる）点を局所特徴点として抽出する。ここで、当該画素が局所極大になったときでも、当該画素の値がしきい値以下の場合には局所特徴点として抽出しないようにする。画素値とは、各画素がどれぐらい局所としてふさわしいかを示す値である。
【００２４】
尚、局所特徴点を抽出可能な方法であれば、上述のHarris作用素による特徴点抽出方法に限らず、どのような特徴点抽出方法でも局所特徴点抽出部１０４に適用可能である。
【００２５】
次に、ステップＳ３０５で、局所特徴量算出部１０５が、局所特徴点抽出部１０４から渡された局所特徴点の各々に画像の回転があっても不変となるように定義された特徴量（局所特徴量）を算出する。ここで抽出された局所特徴量は座標情報と関連付けられた上で局所特徴量登録部１０６に渡される。この局所特徴量の算出方法として、第１の実施形態ではLocal Jet及びそれらの導関数の組み合わせを用いる。J.J.Koenderink and A.J.van Doorn, "Representation of local geometry in the visual system," Riological Cybernetics, vol.55, pp.367-375, 1987.参照
具体的には、以下の式（１）により局所特徴量を算出する。
【００２６】
【数１】
2008287439.tif 000003
【００２７】
ただし、式（１）の右辺で用いている記号は、以下に示す式（２）から式（７）で定義される。ここで、式（２）右辺のＧ（ｘ，ｙ）はガウス関数、Ｉ（ｘ，ｙ）は画像の座標（ｘ，ｙ）における画素値であり、“＊”は畳み込み演算を表す記号である。また、式（３）は式（２）で定義された変数Ｌのｘに関する偏導関数、式（４）は当該変数Ｌのｙに関する偏導関数である。式（５）は式（３）で定義された変数Ｌｘのｙに関する偏導関数、式（６）は式（３）で定義された変数Ｌｘのｘに関する偏導関数、式（７）は式（４）で定義されたＬｙのｙに関する偏導関数である。
【００２８】
【数２】
2008287439.tif 000004
【００２９】
尚、局所特徴量を算出可能な方法であれば、上述したような特徴量算出方法に限らず、どのような特徴量算出方法でも適用可能である。
【００３０】
次に、ステップＳ３０６で、特徴量登録部１０６が局所特徴量算出部１０５から渡された局所特徴量と画像入力部１０２から渡された登録画像１０１とを関連付けて、画像特徴データベース１０７に登録する。以上で画像の登録処理が終了する。
【００３１】
［画像の検索処理］
次に、画像を検索する際に行う各部の動作について説明する。図５は、画像の検索処理の手順を表すフローチャートである。ステップＳ５０１で、図２に示す画像入力部２０２がクエリ画像２０１を読み込み、ステップＳ５０２で、当該クエリ画像２０１から輝度成分を抽出する。そして、抽出した輝度成分に基づき輝度成分画像を生成し、生成した輝度成分画像を縮小画像生成部２０３に渡す。
【００３２】
次に、ステップＳ５０３では、縮小画像生成部２０３が画像入力部２０２から渡された当該輝度成分画像を倍率ｐに従って順次縮小し、縮小画像をｎ枚生成して当該縮小画像を局所特徴点抽出部２０４に渡す。ただし、倍率ｐ及び縮小画像の枚数ｎは上述した画像の登録処理で用いた値と同じ値にする。
【００３３】
次に、ステップＳ５０４では、局所特徴点抽出部２０４が、縮小画像生成部２０３から渡されたｎ枚の縮小画像の各々に画像の回転があってもロバストに抽出されるような局所的な特徴点（局所特徴点）を抽出する。抽出した局所特徴点は局所特徴量算出部２０５に渡される。この局所特徴点の抽出方法として、上述の画像の登録処理で用いた方法と同様に、Harris作用素を用いる。
【００３４】
具体的には、Harris作用素を作用させて得られた出力画像Ｈ上の画素について、当該画素及び当該画素の８近傍にある画素（合計９画素）の画素値を調べる。そして、当該画素が局所極大になる（当該９画素の中で当該画素の画素値が最大になる）点を局所特徴点として抽出する。ここで、当該画素が局所極大になったときでも、当該画素の値がしきい値以下の場合には局所特徴点として抽出しないようにする。
【００３５】
尚、局所特徴点を抽出可能な方法であれば、上述のHarris作用素による特徴点抽出方法に限らず、どのような特徴点抽出方法でも局所特徴点抽出部２０４に適用可能である。
【００３６】
次に、ステップＳ５０５で、局所特徴量算出部２０５が、局所特徴点抽出部２０４から渡された局所特徴点の各々に画像の回転があっても不変となるように定義された特徴量（局所特徴量）を算出する。ここで抽出された局所特徴量は座標情報と関連付けされた上で特徴量分布検定部２０６に渡される。この局所特徴量の算出方法は、上述した画像の登録処理で用いた方法と同じ方法を使用する。即ち、Local Jet及びそれらの導関数の組み合わせを用い、式（１）により局所特徴量を算出する。
【００３７】
次に、ステップＳ５０６で、特徴量分布検定部２０６が、局所特徴量算出部２０５から渡された各々の局所特徴量に対して縮小処理及び回転変換を行った場合の回転不変の性質を持つ特徴量分布の揺らぎを検定する。ここで、これ以降の説明を簡略化するため、局所特徴量算出部２０５から渡された回転不変の性質を持つ局所特徴量を、回転不変の性質を持つ特徴量（０°）と記載する。
【００３８】
第１の実施形態における特徴量分布検定では、既にＳ５０３にて生成している縮小画像を４５°単位の画像回転変換を行い、回転後の回転不変の性質を持つ特徴点に対する回転不変の性質を持つ特徴量を算出する。そして、回転により特徴量がどのぐらいの揺らぎを生じるかを検定する。
【００３９】
図８に示す散布図のように、同一の回転不変の性質を持つ特徴点であっても互いに特徴量の分布が異なることが多い。従って、分布を考慮した距離を算出しなければ、特徴点間の正しい距離比較はできない。具体的には、分布が多次元正規分布となるようにマハラノビス距離を導入するか、簡易的に特徴量の分散で割った値で正規化して距離を求めることになる。マハラノビス距離を用いる例を次に示す。
【００４０】
図８に示す散布図では、図９に示すように、ユークリッド距離の小さいＧ２の方が点Ｘに近いが、特徴量の揺らぎの分布を考慮した正規化距離ではＧ１の方が点Ｘに近い。
【００４１】
そこで、クエリ画像２０１の着目特徴点に対して、回転・拡縮した後で得られるｋ次元の特徴量空間上の散布した集合を１つの母集団と見立てる。ここで、特徴点をＮ個とし、母集団を母集団ID：ｊで区別する。
【００４２】
母集団ｊの平均をμj=(μ1j,μ2j,…,μpj)'(j=1,2,…,k)、観測値をX=(X1,X2,…,Xp)'とし、母集団ｊの分散共分散行列をΣj，その逆行列をΣj-1とする。すると、Ｘの母集団からの距離ｄjは以下の式で表される。
【００４３】
ｄj2=(Ｘ−μj)'Σj-1(Ｘ−μj)    …（８）
この式の作用は、図１０、図１１に示す概念図で感覚的に説明できる。しかし、分布が同一になるように、各特徴点の特徴量分布に対するマハラノビス距離により多次元正規分布を行う。即ち、分散共分散行列の逆行列を掛けることにより、図１０及び図１１に示す分布となり、ユークリッド距離では点ＸはＧ２の方が近いが、分布を考慮した正規化距離ではＧ１の方の距離が近いことがわかる。
【００４４】
局所特徴量算出部２０５から渡されたそれぞれの回転不変の性質を持つ特徴点に対して、マハラノビスの距離を算出するための分散共分散行列の逆行列と平均（重心）を記憶する。
【００４５】
この時、あまりに分布が広い特徴点に関しては、回転不変の性質を持つ特徴点から削除することも可能である。例えば、分散共分散行列の各項の共分散値が大きい程、分布が広いことを示しており、これを閾値処理することにより余りに分布が広い特徴点を検出できる。もちろん、分散共分散行列のノルムが大きい程分布が広くなると見なしても構わない。
【００４６】
尚、第１の実施形態では、検定時の回転角度を４５°とし、４５°回転検定だけを実施する場合を説明したが、４５°回転検定だけでなく、例えば０°〜ｎ°までｔ°単位に回転検定を実施してもよい。ただし、ｔは予め定められた０＜ｔ＜ｎを満たす値である。或いは、ｔ°づつ回転検定を実施するのでなく、ｔ°以下になるまで、９０°から２分割を繰り返して順次回転検定を行うことで、検定対象特徴点の削減を促進するようにしてもよい。
【００４７】
ここで図５に戻り、ステップＳ５０７で、画像間類似度算出部２０７が特徴量分布検定部２０６から渡された特徴量と画像特徴データベース１０７に登録されている特徴量とを比較する。この比較は、画像特徴データベース１０７に登録されている登録画像毎に実施され、比較の結果として登録画像毎に類似度を算出する。この類似度算出方法については、更に詳述する。
【００４８】
次に、ステップＳ５０８で、画像間類似度算出部２０７は、算出した類似度と当該類似度の算出元となった画像とを関連付けて検索結果リストを作成した後、当該類似度を降順にソートする。その後、類似度が大きい画像と当該画像の類似度とをソート順に検索結果２０８として出力する。
【００４９】
［類似度算出方法］
次に、類似度算出方法を説明する。ここで、局所特徴量検定部２０６から渡された回転不変の性質を持つ特徴量をＶｓ、回転不変の性質を持つ特徴量に関連付けされている座標をＳ（x，y）とする。また、画像特徴データベース１０７に登録されている画像Ｒ上に存在する回転不変の性質を持つ特徴量をＶｑ、回転不変の性質を持つ特徴量に関連付けされている座標をＱ（x’，y’）とする。
【００５０】
図６は、第１の実施形態における類似度の算出手順を示すフローチャートである。類似度の算出は投票処理（計数処理）によって行う。投票数＝類似度である。まず、ステップＳ６０１で、最大投票数を表す変数ＶｏｔｅＭａｘを０に初期化する。最大投票数は、複数回投票を行ったうち得られた最大の投票数である。次に、ステップＳ６０２で、ＶｑとＶｓとの特徴量間距離を全ての組み合わせについて計算し、最短距離対応点リストを作成する。この最短距離対応点を求める際に、先に、クエリ画像の各特徴点に対して記憶しているマハラノビスの距離を算出するための分散共分散行列の逆行列と平均（重心）を用いて式（８）に基づいて距離を求める。そして、求めた距離と分散共分散逆行列を含む最短距離対応点リストを作成する。
【００５１】
即ち、計算した特徴量間の距離がしきい値Ｔｖ以下となり、かつ、最短距離となるようなＶｑとＶｓとの組み合わせ（対応点）を抽出し、最短距離対応点リストに登録する。
【００５２】
これ以降、最短距離対応点リストに登録されたｋ番目の対応点について、当該対応点の局所特徴量をそれぞれＶｑ（ｋ）とＶｓ（ｋ）と記載する。更にＶｑ（ｋ）とＶｓ（ｋ）に対応付けられている局所特徴点をそれぞれＱｋ、Ｓｋ、座標をＱｋ（x’ｋ，y’ｋ）、Ｓｋ（xｋ，yｋ）などと添え字を合わせて記載する。またステップＳ６０２で作成された最短距離対応点リストに登録された対応点の組数をｍ組とする。
【００５３】
特徴量間距離がしきい値Ｔｖに関して、着目するクエリ画像の特徴点の特徴量の揺らぎ分布が広いほど閾値を大きくし、分布が狭いほど閾値を小さくする事により、好ましい閾値処理を行う方法も当然考えられる。例えば、分散共分散行列のノルムに反比例した閾値とする方法が簡単である。
【００５４】
次に、ステップＳ６０３で、類似度算出処理の反復カウント数を表す変数Ｃｏｕｎｔを０に初期化する。次に、ステップＳ６０４で、反復カウント数Ｃｏｕｎｔが予め定められた最大反復処理回数Ｒｎを超えていないかを判定する。ここで、超えている場合はステップＳ６１９へ進み、最大投票数ＶｏｔｅＭａｘを出力して、この処理を終了する。
【００５５】
また、ステップＳ６０４で、反復カウント数Ｃｏｕｎｔが最大反復処理回数Ｒｎを超えていない場合はステップＳ６０５へ進み、投票数を表す変数Ｖｏｔｅを０に初期化する。次に、ステップＳ６０６で、当該最短距離対応点リストから対応点の組の座標をランダムに２組抽出する。ここで、これらの座標をＱ１（ｘ’１，ｙ’１）、Ｓ１（ｘ１，ｙ１）及びＱ２（ｘ’２，ｙ’２）、Ｓ２（ｘ２，ｙ２）と記載する。次に、ステップＳ６０７で、抽出したＱ１（ｘ’１，ｙ’１）、Ｓ１（ｘ１，ｙ１）及びＱ２（ｘ’２，ｙ’２）、Ｓ２（ｘ２，ｙ２）が式（９）に示す変換を満たしていると仮定し、式（９）中の変数ａ〜ｆを求める。
【００５６】
ただし、図６に示すステップＳ６０７では、変数ａ〜ｄで構成される行列をＭで示し、変数ｅ〜ｆで構成される行列をＴで示している。
【００５７】
【数３】
2008287439.tif 000005
【００５８】
ここで、第１の実施形態では、簡略化のため、相似変換だけを考える。このとき、上記式（９）は以下の式（１０）のように書き換えられる。
【００５９】
【数４】
2008287439.tif 000006
【００６０】
このとき、変数ａ、ｂ、ｅ、ｆはｘ’１、ｙ’１、ｘ１、ｙ１、ｘ’２、ｙ’２、ｘ２、ｙ２を使って式（１１）から式（１４）で表される。
【００６１】
【数５】
2008287439.tif 000007
【００６２】
次に、ステップＳ６０８で、上述のステップＳ６０６で当該最短距離対応点リストからランダムに抽出された２組の点以外の点を選択するために、対応点選択変数ｋを３に初期化する。そして、ステップＳ６０９で、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えていないかを判定する。ここで、超えている場合はステップＳ６１５へ処理を移すが、これについては後述する。ステップＳ６０９における判定で対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えていない場合はステップＳ６１０へ処理を移す。
【００６３】
このステップＳ６１０では、上述のステップＳ６０６で当該最短距離対応点リストからランダムに抽出した２組の点Ｓ１（ｘ１，ｙ１）及びＳ２（ｘ２，ｙ２）以外の点を当該最短距離対応点リストから抽出する。第１の実施形態では、抽出された点をＳｋ（ｘｋ，ｙｋ）と記載する。
【００６４】
次に、ステップＳ６１１で、Ｓｋ（ｘｋ，ｙｋ）が式（１０）を使って移される座標Ｓｋ’（ｘ’ｋ，ｙ’ｋ）を求める。
【００６５】
その後、ステップＳ６１２では、座標Ｓｋ’（ｘ’ｋ，ｙ’ｋ）と座標Ｑｋ（ｘ’ｋ，ｙ’ｋ）との幾何学的距離をユークリッド距離で計算し、当該ユークリッド距離がしきい値Ｔｄ以下であるか否かを判定する。当該ユークリッド距離がしきい値Ｔｄ以下の場合はステップＳ６１３へ進み、投票数Ｖｏｔｅに対する対応点の対Ｓｋ’、Ｑｋを記憶する。そして、ステップＳ６１４で、投票数Ｖｏｔｅをインクリメントし、ステップＳ６１５へ処理を移す。また、当該ユークリッド距離がしきい値Ｔｄより大きい場合は、何もせずにステップＳ６１５へ処理を移す。当該ユークリッド距離がしきい値Ｔｄ以下の特徴点が、画像間で類似しているとみなす特徴点である。
【００６６】
このステップＳ６１５では、対応点選択変数ｋをインクリメントし、ステップＳ６０９に戻り、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えるまで、上述の処理を繰り返す。つまり、ステップＳ６０６でまた別の２組の点を抽出し、ステップＳ６０７で式（９）のパラメータ変数ａ、ｂ、ｅ、ｆを求め、ステップＳ６０８乃至ステップＳ６１２の処理を行い、投票することを繰り返す。
【００６７】
次に、ステップＳ６０９で、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えた場合の処理であるステップＳ６１６を説明する。ステップＳ６１６では、投票数Ｖｏｔｅの値と最大投票数ＶｏｔｅＭａｘの値とを比較し、投票数Ｖｏｔｅの値が最大投票数ＶｏｔｅＭａｘの値よりも大きい場合にはステップＳ６１７へ処理を移す。
【００６８】
このステップＳ６１７では、最大投票数ＶｏｔｅＭａｘの値を投票数Ｖｏｔｅの値で置き換えた後、ステップＳ６１８で反復カウント数Ｃｏｕｎｔをインクリメントし、上述のステップＳ６０４に処理を戻す。
【００６９】
また、ステップＳ６１６で、投票数Ｖｏｔｅの値が最大投票数ＶｏｔｅＭａｘの値以下の場合にはステップＳ６１８へ処理を移し、反復カウント数Ｃｏｕｎｔをインクリメントし、上述のステップＳ６０４に処理を戻す。
【００７０】
尚、第１の実施形態における類似度の算出方法の説明では、相似変換だけを考えて説明したが、アフィン変換などその他の幾何学変換についても、ステップＳ６０７でそれぞれに応じた変換行列を求めることにより、対応可能である。例えば、アフィン変換の場合には、まずステップＳ６０６で、ランダムに選択する対応点の組の座標数を３とする。次に、ステップＳ６０７で、式（１０）ではなく式（９）を使うこととし、ステップＳ６０６で選択した３組の対応点（合計６点）を使って変数ａ〜ｆを求めれば良い。
【００７１】
次に、図６に示すＳ６１９での総合類似度を算出する処理を、図７を用いて説明する。図７は、第１の実施形態における総合類似度算出処理を示すフローチャートである。
【００７２】
まず、ステップＳ７０１で、着目している特徴量の対の番号ｍを０で初期化し、各特徴量の対の類似度に対する重みの総和ＷＣＴを０で初期化し、更に累積類似度ＳimＴを０で初期化する。
【００７３】
次に、ステップＳ７０２で、着目する特徴量の対の個数が尽きているか否かを判断し、尽きていない場合にはステップＳ７０３へ処理を進め、上述したステップＳ６１３で作成したリストから、Vote=mの対応点の対S'm,Q'mを読み出す。
【００７４】
次に、ステップＳ７０４で、ステップＳ６０２で作成したリストからS'm,Q'mのマハラノビス距離を読み込み類似度へ変換し、Ｓim[m]へ記憶する。ここで距離を類似度に変換する関数としては、図１２に示すように、距離０のときに類似度を１００％とし、距離が大きくなる程、類似度が単調減少する特性のものを用いれば良い。図１２は、類似距離を類似度へ変換する関数の一例を示す図である。
【００７５】
次に、ステップＳ７０５で、ステップＳ６０２で作成したリストからS'm,Q'mのマハラノビス距離を求めるための分散共分散行列から仮の重みＷＣ[m]を決定する。この重みについては、マハラノビス距離を求める際に用いた分散共分散行列の各項の絶対値の平均などを用いて算出すればよい。
【００７６】
例えば、平均の分散が大きい場合には、分布が広がっており、これは、即ち距離による類似度の信頼度が低いことを意味している。従って、各特徴点の類似度の重み付け線形和で画像自身の総合類似度を求める際には、分散の大きな特徴点による類似度の重みは小さくすべきである。従って、求めた分散共分散行列の各項の絶対値の平均の逆数を仮の重みとしておき、トータルの重みで割って正規化することにより、より信頼性の高い画像自身の総合類似度を算出することが可能となる。
【００７７】
次に、ステップＳ７０６で、ここまでの重み付け線形和の部分和ＳimＴを求め、更に、ここまでのトータルの重みＷＣＴ＝ＷＣＴ＋ＷＣ[m]を算出する。そして、ステップＳ７０７で、ｍをインクリメントし、次の特徴点の対に処理を移す。
【００７８】
そして、ステップＳ７０２で、処理すべき特徴点の対が無くなればステップＳ７０８へ処理を進め、ＷＣＴが０かを判定し、０の場合はステップＳ７０９へ処理を進め、ＷＣＴに１を代入し、ステップＳ７１０へ処理を移す。これは、縮小・回転による特徴量の揺らぎが無い場合、分散が０になることを想定し、後のステップＳ７１０で零で割り算を行うことを避けるための例外処理である。
【００７９】
一方、ステップＳ７０８で、ＷＣＴが０で無い場合はステップＳ７１０へ処理を進め、仮に得た重み付け線形和による画像自身の総合類似度を、重みの総和で割って正規化する。そして、最後にステップＳ７１１で、画像自身の総合類似度を出力し、この処理を終了する。
【００８０】
第１の実施形態における画像検索装置によれば、クエリ画像から算出された回転不変の性質を持つ特徴量の変動を検定して変動の大きい回転不変の性質を持つ特徴量を検索時に使わないように構成したので、検索精度の低下を抑制することが可能になる。
【００８１】
＜第２の実施形態＞
次に、図面を参照しながら本発明に係る第２の実施形態を詳細に説明する。第２の実施形態では、画像間の類似距離を算出する処理に関して、マハラノビスの距離を用いたもので、その他の部分は第１の実施形態と同様である。第２の実施形態における装置構成は、第１の実施形態と同様であり、その説明は省略する。
【００８２】
ここでマハラノビスの距離を用いて画像間の類似距離を算出し、総合類似度を算出する処理を、図１３を用いて説明する。
【００８３】
図１３は、第２の実施形態における総合類似度算出処理を示すフローチャートである。まず、ステップＳ１３０１で、着目している特徴量の対の番号ｍを０で初期化し、各特徴量の対の類似度に対する重みの総和ＷＣＴを０で初期化し、更に累積類似距離ＤＭＴを０で初期化する。
【００８４】
次に、ステップＳ１３０２で、着目する特徴量の対の個数が尽きているか否かを判断し、尽きていない場合にはステップＳ１３０３へ処理を進め、上述したステップＳ６１３で作成したリストから、Vote=mの対応点の対S'm,Q'mを読み出す。
【００８５】
次に、ステップＳ１３０４で、ステップＳ６０２で作成したリストからS'm,Q'mのマハラノビス距離を読み込み、ＤＭ[m]へ記憶する。
【００８６】
次に、ステップＳ１３０５で、ステップＳ６０２で作成したリストからS'm,Q'mのマハラノビス距離を求めるための分散共分散行列から仮の重みＷＣ[m]を決定する。この重みについては、マハラノビス距離を求める際に用いた分散共分散行列の各項の絶対値の平均などを用いて算出すればよい。
【００８７】
例えば、平均の分散が大きい場合には、分布が広がっており、これは、即ち距離による類似度の信頼度が低いことを意味している。従って、各特徴点の類似度の重み付け線形和で画像自身の総合類似距離を求める際には、分散の大きな特徴点による距離の重みは小さくすべきである。従って、求めた分散共分散行列の各項の絶対値の平均の逆数を仮の重みとしておき、トータルの重みで割って正規化することにより、より信頼性の高い画像自身の総合類似度を算出することが可能となる。
【００８８】
次に、ステップＳ１３０６で、ここまでの重み付け線形和の部分和ＤＭＴを求め、更に、ここまでのトータルの重みＷＣＴ＝ＷＣＴ＋ＷＣ[m]を算出する。そして、ステップＳ１３０７で、ｍをインクリメントし、次の特徴点の対に処理を移す。
【００８９】
そして、ステップＳ１３０２で、処理すべき特徴点の対が無くなればステップＳ１３０８へ処理を進め、ＷＣＴが０かを判定し、０の場合はステップＳ１３０９へ処理を進め、ＷＣＴに１を代入し、ステップＳ１３１０へ処理を移す。これは、縮小・回転による特徴量の揺らぎが無い場合、分散が０になることを想定し、後のステップＳ１３１０で零で割り算を行うことを避けるための例外処理である。
【００９０】
一方、ステップＳ１３０８で、ＷＣＴが０で無い場合はステップＳ１３１０へ処理を進め、仮に得た重み付け線形和による画像自身の総合類似距離を、重みの総和で割って正規化する。そして、最後にステップＳ１３１１で、画像自身の総合類似距離を出力し、この処理を終了する。
【００９１】
第１及び第２の実施形態では、縮小と回転の組み合わせによる特徴量のゆらぎを求めたが、当然、ユーザが回転或いは拡大・縮小、更に或いは回転と拡大・縮小の組み合わせを行い、その指示に従って、揺らぎの分布を求めることも可能である。
【００９２】
尚、本発明は複数の機器（例えば、ホストコンピュータ，インターフェース機器，リーダ，プリンタなど）から構成されるシステムに適用しても、１つの機器からなる装置（例えば、複写機，ファクシミリ装置など）に適用しても良い。
【００９３】
また、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行する。これによっても、本発明の目的が達成されることは言うまでもない。
【００９４】
この場合、記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【００９５】
このプログラムコードを供給するための記録媒体として、例えばフレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【００９６】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、次の場合も含まれることは言うまでもない。即ち、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合である。
【００９７】
更に、記録媒体から読出されたプログラムコードがコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【００９８】
【図１】第１の実施形態における画像登録装置の構成例を示すブロック図である。
【図２】第１の実施形態における画像検索装置の構成例を示すブロック図である。
【図３】画像の登録処理の手順を表すフローチャートである。
【図４】縮小画像を生成する縮小画像生成部１０３の処理の一例を示す図である。
【図５】画像の検索処理の手順を表すフローチャートである。
【図６】第１の実施形態における類似度の算出手順を示すフローチャートである。
【図７】第１の実施形態における総合類似度算出処理を示すフローチャートである。
【図８】回転不変特徴量の変動の一例を示す図である。
【図９】多次元特徴空間上での分布の一例を示す図である。
【図１０】多次元特徴空間上である特徴点の揺らぎのグループで多次元分布化した一例を示す図である。
【図１１】多次元特徴空間上である特徴点の揺らぎのグループで多次元分布化した一例を示す図である。
【図１２】類似距離を類似度へ変換する関数の一例を示す図である。
【図１３】第２の実施形態における総合類似度算出処理を示すフローチャートである。
【符号の説明】
【００９９】
１００  画像登録装置
１０１  登録画像
１０２  画像入力部
１０３  縮小画像生成部
１０４  局所特徴点抽出部
１０５  局所特徴量算出部
１０６  特徴量登録部
１０７  画像特徴データベース
２００  画像検索装置
２０１  クエリ画像
２０２  画像入力部
２０３  縮小画像生成部
２０４  局所特徴点抽出部
２０５  局所特徴量算出部
２０６  特徴量分布検定部
２０７  画像間類似度算出部
２０８  検索結果
【図１】
2008287439.tif 000008
【図２】
2008287439.tif 000009
【図３】
2008287439.tif 000010
【図４】
2008287439.tif 000011
【図５】
2008287439.tif 000012
【図６】
2008287439.tif 000013
【図７】
2008287439.tif 000014
【図８】
2008287439.tif 000015
【図９】
2008287439.tif 000016
【図１０】
2008287439.tif 000017
【図１１】
2008287439.tif 000018
【図１２】
2008287439.tif 000019
【図１３】
2008287439.tif 000020