(57)【要約】【課題】  入力画像を登録、或いは入力画像に類似する登録画像を検索する際に、画像の局所的な特徴点に関する情報に基づいて作成された検索インデックス情報を用いる。【解決手段】  入力された画像を登録、或いは入力された画像に類似する画像を検索する画像処理装置において、画像の局所的な特徴点における局所特徴量と、該特徴点に関する情報とを抽出する。特徴点に関する情報に基づいて、入力された画像を登録、或いは入力された画像に類似する画像を検索する際に用いる検索インデックス情報を作成し、検索インデックス情報を用いて画像を検索し、局所特徴量に基づいて、検索された画像の類似度を算出する。【選択図】      図２
2008287438.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像を登録、或いは入力された画像に類似する画像を検索する画像処理装置であって、
画像の局所的な特徴点における局所特徴量と、該特徴点に関する情報とを抽出する抽出手段と、
前記特徴点に関する情報に基づいて、入力された画像を登録する際に用いる検索インデックス情報、或いは入力された画像に類似する画像を検索する際に用いる検索インデックス情報を作成する作成手段と、
前記検索インデックス情報を用いて画像を検索し、該検索された画像に対して前記局所特徴量に基づいて前記検索された画像の類似度を算出する類似度算出手段とを有することを特徴とする画像処理装置。
【請求項２】
前記特徴点に関する情報は、前記特徴点の位置と領域の相対的な大きさを示すスケールに関する情報であることを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記特徴点に関する情報は、前記特徴点の領域の相対的な大きさを示すスケールと相対的な角度に関する情報であることを特徴とする請求項１に記載の画像処理装置。
【請求項４】
前記作成手段は、前記特徴点に関する情報を集合の情報として作成し、前記類似度算出手段は、前記集合の情報を用いて画像を検索し、前記局所特徴量に基づき、入力された画像と前記検索された画像との類似度を算出することを特徴とする請求項２又は３に記載の画像処理装置。
【請求項５】
前記作成手段は、前記特徴点に関する情報を列の組み合わせの情報として作成し、前記類似度算出手段は、前記列の組み合わせの情報を用いて画像を検索し、前記局所特徴量に基づき、入力された画像と前記検索された画像との類似度を算出することを特徴とする請求項２又は３に記載の画像処理装置。
【請求項６】
前記列の組み合わせは、前記特徴点の相対的な角度に基づいて作成されることを特徴とする請求項５記載の画像処理装置。
【請求項７】
入力された画像を登録、或いは入力された画像に類似する画像を検索する画像処理装置にて実行される画像検索方法であって、
画像の局所的な特徴点における局所特徴量と、該特徴点に関する情報とを抽出する抽出工程と、
前記特徴点に関する情報に基づいて、入力された画像を登録する際に用いる検索インデックス情報、或いは入力された画像に類似する画像を検索する際に用いる検索インデックス情報を作成する作成工程と、
前記検索インデックス情報を用いて画像を検索し、該検索された画像に対して前記局所特徴量に基づいて前記検索された画像の類似度を算出する類似度算出工程とを有することを特徴とする画像検索方法。
【請求項８】
請求項７に記載の画像検索方法をコンピュータに実行させるためのプログラム。
【請求項９】
請求項８に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、入力された画像に類似する画像を検索する画像処理装置及び画像検索方法に関するものである。
【背景技術】
【０００２】
近年、デジタルカメラやデジタルビデオカムコーダなどの普及により、容易に静止画や動画などを撮影し、画像データとして利用できるようになっている。また、文書の表現力を高めることを、画像データを利用することで実現できる場合が多数あり、このような画像データを活用した文書が多数作成されるようになってきている。
【０００３】
しかし、大量の画像データを蓄積することになるため、蓄積された画像データの中から利用に適した画像データを探す方法が重要になってくる。そこで、予め画像データに分類用の情報や説明情報などを付加しておき、それらの情報を利用して検索・分類するという方法がある。しかし、分類用の情報や説明情報などを自動的に付加するには、画像の内容を理解することが重要であり、汎用的な画像の内容の理解や認識を行う技術は、実現することが非常に難しく、現状では、人手でそのような情報の付加を行っている。
【０００４】
そこで、画像データの画像的な特徴量を比較し、その特徴量の類似する画像を検索するという技術が提案され、利用されている。この技術は、画像内の色やその配置、画像内の線などの成分の量や配置、画像内の物体の形状など画像内の様々な特徴量を用いるものである。しかし、特に文書内で利用されている画像などの場合、画像の大きさやレイアウトに応じて、画像の拡大縮小、回転、画像中の一部だけを利用、他の画像の一部として利用などの行為を行った状態で利用される場合がある。そのため、このような利用がされている場合でも、画像の検索を可能とすることが必要である。
【０００５】
特に近年、このような画像データの再利用を促進することで作成作業を簡便化するためや、セキュリティなどでの文書内容の検閲を行うためなど、様々な目的で利用される状態にある。そのため、画像の拡大縮小、回転、画像中の一部だけを利用、他の画像の一部として利用などの行為が行われても、これらに対して耐性をもった検索ができるように画像の特徴量や特徴量の類似度の計算に工夫をしたものがある。
【０００６】
例えば、特許文献１には、画像の回転が行われていても、正しい画像検索が行われるようにした技術が開示されている。これは、印像の画像を固定サイズの領域に分割し、その分割領域内の画像特徴量を計算する。回転耐性があるように、個々の画像特徴量を回転軸方向に集めることで個々の特徴量から印像の特徴量を計算し、これを利用した検索を行うというものである。しかし、これは、拡大縮小の耐性は有するが、回転耐性については、印像の画像のように、回転の中心が明確な場合にのみ、有効な方式である。
【０００７】
また、例えば、特許文献２は、検索時の耐性を持つように、画像特徴量として画像内の部分の色を利用するものである。その特徴量とその特徴量の算出の基となった位置の情報でクラスタリングし、インデキシングしている。このように、画像の特徴量の類似度計算において、相対的に精度の高い類似度を得る計算を行おうとすると、その類似度計算の計算コストが高くなるため、検索時の類似度計算の計算量を少なくするための手段が重要である。
【０００８】
そこで、検索対象画像を、インデックスを利用して絞り込み、類似度が相対的に高くならない検索対象画像を類似度計算の対象から除外することで、類似度計算の対象となる画像もしくは画像の特徴量の数を減少させることも行われている。このようなインデックスは、一次絞込み用のインデキシングと呼ばれるもので、検索時の効率を向上させる有効な手法である。このような一次絞込みインデキシングを作成するためには、特徴量と位置情報のクラスタリングや自己組織マップなどの計算を行い、グループ化することで、実現可能とすることが普通である。しかし、そのクラスタリングや自己組織マップなどの計算は、比較的計算コストが大きく、画像を検索対象にできるように登録する際の計算負荷や、登録時間の増大を引き起こすこととなる。
【特許文献１】特開平８−２７９０２１号公報
【特許文献２】特開平６−３１８２５６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
近年、画像の局所的な特徴量として、画像内の画像の輝度などの変化が大きい点や部分を画像特徴量の抽出対象の特徴点とし、画像中の特徴点同士の距離や位置関係などの形で利用する方法がある。このように、画像の拡大縮小や回転などに依存しない特徴量を使用することで、拡大縮小や回転などに耐性を有する検索方法が利用可能である。
【００１０】
このような方法では、通常、検索の精度を高くするために、多数の特徴点が得られるようにするのが一般的で、また１つの画像から得られる特徴点の個数が画像によって異なることが多い。このような状態になると、その多数の特徴点の特徴量を比較する際の計算が複雑になるか、計算量が非常に大きくなることになる。そのため、類似計算時の計算負担を軽減や、高速な検索を実現するために、一次絞込みのインデックスを利用するのが一般的である。
【００１１】
しかし、一次絞込みのインデックスを形成する際には、ただでさえ画像の特徴量が増大しているため、そのクラスタリングや自己組織マップなどの計算は、かなり計算コストが大きなものとなる。そして、検索対象としたい画像を登録する場合の計算負担は、非常に大きなものとなる。そのため、登録時の時間の制約や計算量の制限がある場合には、一次絞込みのインデックスを形成することが難しくなってしまう。
【００１２】
本発明は、入力画像を登録、或いは入力画像に類似する登録画像を検索する際に、画像の局所的な特徴点に関する情報に基づいて作成された検索インデックス情報を用いることを目的とする。
【課題を解決するための手段】
【００１３】
本発明は、入力された画像を登録、或いは入力された画像に類似する画像を検索する画像処理装置であって、画像の局所的な特徴点における局所特徴量と、該特徴点に関する情報とを抽出する抽出手段と、前記特徴点に関する情報に基づいて、入力された画像を登録する際に用いる検索インデックス情報、或いは入力された画像に類似する画像を検索する際に用いる検索インデックス情報を作成する作成手段と、前記検索インデックス情報を用いて画像を検索し、該検索された画像に対して前記局所特徴量に基づいて前記検索された画像の類似度を算出する類似度算出手段とを有することを特徴とする。
【００１４】
また、本発明は、入力された画像を登録、或いは入力された画像に類似する画像を検索する画像処理装置にて実行される画像検索方法であって、画像の局所的な特徴点における局所特徴量と、該特徴点に関する情報とを抽出する抽出工程と、前記特徴点に関する情報に基づいて、入力された画像を登録する際に用いる検索インデックス情報、或いは入力された画像に類似する画像を検索する際に用いる検索インデックス情報を作成する作成工程と、前記検索インデックス情報を用いて画像を検索し、該検索された画像に対して前記局所特徴量に基づいて前記検索された画像の類似度を算出する類似度算出工程とを有することを特徴とする。
【発明の効果】
【００１５】
本発明によれば、画像の局所的な特徴点に関する情報に基づいて作成された検索インデックス情報を用いることで、高速な検索と、高速な検索対象画像の登録が可能となる。
【発明を実施するための最良の形態】
【００１６】
以下、図面を参照しながら発明を実施するための最良の形態について詳細に説明する。
【００１７】
尚、以下の実施形態では、大量の画像に対して、画像の特徴量を用いた画像処理装置について説明する。
【００１８】
図１は、本実施形態における画像処理装置の概略構成を示す図である。図１において、ＣＰＵ１０１は、本実施形態の画像処理装置における各種制御を実行する。その作業内容は、後述するＲＯＭ１０２やＲＡＭ１０３上のプログラムによって指示される。また、ＣＰＵ自身の機能や計算機プログラムの機構により、複数の計算機プログラムを並列に動作させることもできる。
【００１９】
ＲＯＭ１０２は、ＣＰＵ１０１による制御手順を記憶させた計算機プログラムや制御データが格納されている。ＲＡＭ１０３は、ＣＰＵ１０１が処理するための制御プログラムを格納すると共に、ＣＰＵ１０１が各種制御を実行する際の様々なデータの作業領域を提供するものである。
【００２０】
キーボード１０４は、アルファベットキー、ひらがなキー、カタカナキー、句点などの文字記号入力キー、及び、カーソル移動を指示するカーソル移動キーのような各種の機能キーを備え、ユーザによる各種入力操作環境を提供する。
【００２１】
尚、キーボード１０４は、マウスのようなポインティングデバイスも含むことができる。また、キーボード１０４やマウスは、ユーザからの各種入力操作環境を提供するものであれば、タッチパネル、スタイラスペンなど、何でもよい。
【００２２】
システムバス１０５は、各構成に接続されているアドレスバス、データバスなどである。外部記憶装置１０６は、様々なデータを記憶する。外部記憶装置としては、ハードディスクやフレキシブルディスク、光ディスク、磁気ディスク、光磁気ディスク、磁気テープ、不揮発性のメモリカード等の記録媒体と、記憶媒体を駆動し、情報を記録するドライブなどがある。また、外部記憶装置に保管された計算機プログラムやデータはキーボード等の指示や各種計算機プログラムの指示により、必要な時にＲＡＭ１０３上に完全もしくは部分的に呼び出される。
【００２３】
表示器１０７は、ディスプレイなどで構成され、各種入力操作の状態をユーザに対して表示する。通信デバイス（ＮＣＵ）１０８は、他のコンピュータと通信するためのもので、ネットワーク（ＬＡＮ）を介して不図示の遠隔地に存在する装置と通信し、本実施形態のプログラムやデータを共有することが可能となる。
【００２４】
尚、通信デバイス１０８は、ＲＳ２３２ＣやＵＳＢ、ＩＥＥＥ１３９４、Ｐ１２８４、ＳＣＳＩ、モデム、イーサネット（登録商標）などの有線通信や、Ｂｌｕｅｔｏｏｔｈ、赤外線通信、ＩＥＥＥ８０２．１１ｂ等の無線通信などを行ってもよい。また、本発明の装置と接続されている機器と通信可能なものであれば、何でもかまわない。
【００２５】
イメージスキャナ１０９は画像を読み取るもので、セットされた原稿を１枚ずつ光学的に読み取り、イメージ信号をデジタル信号列に変換し、画像データとして出力する。ここで読み取られた画像データは、外部記憶装置１０６やＲＡＭ１０３などに格納することができる。
【００２６】
また、画像データはイメージスキャナ１０９ではなく、通信デバイス１０８により接続されたネットワークスキャナ、コピー装置、デジタルスチルカメラ、フィルムスキャナなどの入力機器を介して入力されてもよい。また、デジタル画像データを保持する外部記憶装置から通信デバイスを介して入力されてもよい。更に、読み取られた画像データも外部記憶装置やＲＡＭではなく、通信デバイスによって接続されたサーバやコピー装置などの外部記憶装置などに格納してもよい。
【００２７】
以上述べてきた構成は、あくまでも、本実施形態における一例であり、本発明においては、特にこれに限定されるものでない。
【００２８】
本実施形態の画像処理装置は、大きく分けて、２つの処理を有する。１つは検索対象としたい画像を登録することで、実際に検索可能にする、画像の登録処理である。そして、もう一つが、予め登録された画像に対して、利用者などが検索したい画像を提示し（これをクエリ画像という）、それに類似する画像の検索を行い、検索結果を得る処理である。まず、本実施形態における画像の登録処理を、図２を用いて説明する。
【００２９】
［画像の登録処理］
図２は、本実施形態における画像の登録処理の概要を説明するためのブロック図である。図２において、登録画像入力部２０１は、通信デバイス１０８により接続されたネットワークスキャナ、デジタルスチルカメラ、デジタル画像データを保持した外部記憶装置やイメージスキャナ１０９を介して検索対象となる画像データを入力する。入力された画像データは、一時的にＲＡＭ１０３や外部記憶装置１０６などに保持される。
【００３０】
画像特徴抽出部２０２は、登録画像入力部２０１で入力された画像データを解析することによって画像特徴量を抽出する。この画像特徴量としては、色、輝度、エッジ、テクスチャなどを示す情報がある。しかし、抽出される画像特徴量は、画像内の１つ又は複数の特徴点から抽出された、各特徴点の局所的な特徴量及びその局所的な特徴量の元となった領域の位置と大きさの値を含むものを利用する。
【００３１】
ここで、上述の局所的な特徴量の抽出処理の詳細を、図３を用いて説明する。図３は、局所的な特徴量を抽出する処理を示すフローチャートである。まず、ステップＳ３０１で、検索対象画像にするための画像を読み込む。即ち、図２に示す登録画像入力部２０１で入力された画像を登録画像として読み込む。
【００３２】
次に、ステップＳ３０２で、ステップＳ３０１で読み込んだ登録画像の輝度成分を抽出して輝度成分画像を生成する。そして、ステップＳ３０３で、ステップＳ３０２で生成した輝度成分画像を倍率ｐに従って順次縮小し、縮小画像をｎ枚生成する。ただし、倍率ｐ及び縮小画像の枚数ｎは予め定めておくものとする。
【００３３】
図４は、縮小画像を生成する縮小画像生成処理の一例を示す図である。図４に示す例は、倍率ｐが２の−（１／４）乗、縮小画像の枚数ｎが９の場合であり、ステップＳ３０３で生成する縮小画像の例である。図４において、４０１は輝度成分画像でこれが元の輝度成分画像である。４０２は元の輝度成分画像から倍率ｐに従って４回縮小された縮小画像である。４０３は元の輝度成分画像から倍率ｐに従って８回縮小された縮小画像である。
【００３４】
この例では、縮小画像４０２は、元の輝度成分画像が１／２に縮小された画像となり、縮小画像４０３は元の輝度成分画像が１／４に縮小された画像となる。尚、本実施形態における縮小画像は、線形補間による縮小方法により生成するものとする。
【００３５】
次に、ステップＳ３０４で、ステップＳ３０３で作成されたｎ枚の縮小画像それぞれに対して、特徴量を計算すべき特徴点を抽出する。抽出した特徴点は次のステップＳ３０５で局所特徴量の計算対象となる。ここで、本実施形態では、この特徴点の抽出方法としてHarris作用素を用いる。C.Harris and M.J. Stephens, "A combined corner and edge detector," In Alvey Vision Conference, pages 147-152, 1988.参照
具体的には、まずｎ枚の縮小画像のそれぞれに対して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.参照
これらにより、算出される局所特徴量は、拡大縮小、回転に対して、比較的高い耐性を持つような特性を持たせることができる。具体的には、式（１）に示す局所的な特徴量を算出する。
【００３８】
【数１】
2008287438.tif 000003
【００３９】
ただし、式（１）の右辺で用いている記号は、以下に示す式（２）から式（７）で定義される。ここで、式（２）右辺のＧ（ｘ，ｙ）はガウス関数、Ｉ（ｘ，ｙ）は画像の座標（ｘ，ｙ）における画素値であり、“＊”は畳み込み演算を表す記号である。また、式（３）は式（２）で定義された変数Ｌのｘに関する偏導関数、式（４）は当該変数Ｌのｙに関する偏導関数である。式（５）は式（３）で定義された変数Ｌｘのｙに関する偏導関数、式（６）は式（３）で定義された変数Ｌｘのｘに関する偏導関数、式（７）は式（４）で定義されたＬｙのｙに関する偏導関数である。
【００４０】
【数２】
2008287438.tif 000004
【００４１】
尚、局所特徴量を算出可能な方法であれば、上述したような特徴量算出方法に限らず、どのような特徴量算出方法でも適用可能である。
【００４２】
以上で、この画像特徴量登録部の局所的な特徴量の抽出処理が終了する。
【００４３】
尚、上述した画像の特徴点及び特徴量は、特徴点の元となった領域の相対的な大きさに関する情報であるスケールを持ち、画像の拡大縮小、回転などに対して不変の特性を持たせることで、検索時の耐性を持つものになっている。
【００４４】
また、この画像の特徴点の抽出、特徴量の算出において、従来の画像の特徴量に比べ、複雑な計算を行っているが、その代わり、特徴点及び特徴量について特徴点の元となった領域の相対的な大きさに関する情報も一緒に得ている。画像の検索を行う際に、このような情報があれば、これを用いて検索処理を軽減するための一次絞込みインデックス（検索インデックス情報）を容易に作成できるようになる。そのため、本実施形態では、画像の検索時の検索精度を低下させることなく、高速な画像の検索、或いは高速な画像の登録が可能となる。尚、一次絞込みインデックス（検索インデックス情報）の作成処理の詳細については、後述する。
【００４５】
また、本発明の適用可能な画像の特徴点と特徴量は、特徴点の元となった領域の相対的な大きさに関する情報を持つものであれば、どのような手法でも構わない。また、特徴点の元となった領域の相対的な大きさに関する情報は、特徴点の抽出時に算出されるものでも、特徴量の算出時に算出されるものでもどちらでも構わない。
【００４６】
図２に示す画像特徴抽出部２０２における画像の特徴量は、このようにして抽出される。
【００４７】
ここで図２の説明を行う。画像特徴登録部２０３は、画像特徴抽出部２０２で抽出した画像特徴量を、登録する画像を特定するための画像ＩＤなどと共に、画像特徴量データベース（ＤＢ）２０４に登録する処理を行う。ここで、画像特徴量データベース２０４は、外部記憶装置１０６に格納されているが、通信デバイス１０８により接続されたサーバやコピー装置などの外部記憶装置に格納されていても構わない。
【００４８】
通常、大量の画像の検索を行うためには、検索時の処理時間を短くするために、画像の登録処理の際に、予め検索対象となる画像の特徴量を抽出し、これをデータベースなどに登録しておくという手法をとる。これにより、検索時に検索対象の画像から特徴量を抽出する必要がなくなるため、その分だけ、検索時間が短縮でき、特に大量の画像を検索対象とする場合には、殆ど必須の処理であると言える。
【００４９】
更に、高速な画像検索を実現するためには、画像の登録処理の際に、画像の特徴を抽出するだけでなく、その画像の特徴量から一次絞込みのためのインデックスを作成しておく手法が用いられる。これは、画像検索時に、登録した画像の特徴量とクエリ画像の特徴量を比較して類似度の計算を行うが、計算負担が大きいため、全ての検索対象画像の特徴量に対してクエリ画像の特徴量と比較することを、なるべく避けるためのものである。尚、類似度の計算の詳細については、更に後述する。
【００５０】
一次絞込み用情報抽出部２０５は、画像特徴抽出部２０２で抽出した画像の特徴点や特徴量の情報を基に、一次絞込みを行う際に用いるインデックスに登録、もしくは、検索時の一次絞込みを行うための情報を抽出する。通常は、特徴点の位置関係などの情報を用いてクラスタリング計算などを行うのであるが、一次絞込み用情報抽出部２０５は、画像特徴抽出部２０２で抽出した特徴点の元となった領域の相対的な大きさに関する情報であるスケールを利用する。これにより、各特徴点の近傍（スケールの大きささに応じて近傍の範囲は定まる）にある点を判定することにより絞込みインデックス用の情報を作成できる。逆に言えば、クラスタリングなどの計算は、このスケールに相当する値がわからないために、行われるのであって、その計算負担は、本発明の方法に比べて非常に大きいものである。
【００５１】
ここで、スケールを用いた絞込みインデックス情報の作成の一例を、図５を用いて説明する。図５は、本実施形態における絞込みインデックス情報の作成例を示す図である。図５において、５０１は自動車の絵であり、この画像の画像ＩＤとして、００１が割り当てられているものとする。本実施形態の計算を行うと、５０１の絵について多数の特徴点が抽出されるが、そのような事例を使用するとわかりにくくなるので、ここでは、特徴点として抽出された各点のうち、特徴点Ａ、Ｂ、Ｃの３点に着目し、これを例として挙げ説明する。
【００５２】
５０２は特徴点Ａを中心に、特徴点Ａのスケールから算出された半径の円領域であり、５０３は特徴点Ｂに対する円領域、５０４は特徴点Ｃに対する円領域である。ここでは、各特徴点のスケールから円領域の半径を計算するために、スケールを定数Ｍ倍しているものとするが、スケールを基に計算するものであればなんでも構わない。
【００５３】
図５に示すように、円領域５０２には特徴点Ａ以外に含まれる特徴点はなく、特徴点Ａの特徴量の近傍にある特徴量の集合の要素は「なし」となる。また、円領域５０３には、特徴点Ｂ以外に特徴点Ａと特徴点Ｃが含まれているので、特徴点Ｂの特徴量の近傍にある特徴点の集合の要素は「特徴点Ａの特徴量と特徴点Ｃの特徴量」となる。また同様に、円領域５０４には、特徴点Ｃ以外に特徴点Ｂが含まれているので、特徴点Ｃの特徴量の近傍にある特徴点の集合の要素は「特徴点Ｂの特徴量」となる。このように、各特徴点に対して、スケールを利用して定めた範囲の近傍（円）に、どの特徴点が含まれるかという情報が、図５に示す画像ＩＤ：００１に対して、図２に示す一次絞込み用情報抽出部２０５が抽出する一次絞込み用情報である。
【００５４】
検索時の一次絞込みは、検索時の類似度計算の対象となる画像の候補について、必要な類似度を持つ候補が一次絞込みでなくならないように、かつ必要な類似度を持たない候補が一次絞込みでなるべくなくなるようにするものである。つまり、類似度計算より小さな計算負担か高速に行うことを狙うものある。
【００５５】
上述したスケールの計算におけるＭをあまりに大きい値にすると、検索時の一次絞込みで検索対象の画像の絞込みが有効に働かなくなる。これは、検索時の速度低下などを引き起こす。逆に、Ｍをあまりに小さい値にすると、検索対象の画像の絞込みが過剰に効くようになり、必要な検索結果の候補まで検索結果の精度が低下することとなる。したがって、このＭの値を予め適当に調整しておく必要がある。
【００５６】
ここで図２に戻り、２０６は一次絞込みインデックス作成部であり、一次絞込み用情報抽出部２０５で抽出された情報から、２０７の一次絞込みインデックスに登録する処理を行う。一次絞込み用インデックスは、外部記憶装置１０６に格納されているが、通信デバイス１０８により接続されたサーバやコピー装置などの外部記憶装置に格納されていても構わない。
【００５７】
ここで実際に格納されている一次絞込みインデックスの一例を、図７を用いて説明する。通常、画像特徴量データベース２０４は、特定の画像ＩＤに対して画像の持つ特徴量が対応して格納されるような形式で、インデックス（見出し）は画像ＩＤになる。しかし、この一次絞込みインデックスは、検索用のインデックスなので、転地されており、図７に示すようなインデックス（見出し）は特徴量の近傍位置に関する情報であり、そのような特徴点の関係を保有する画像ＩＤが対応付けられている。
【００５８】
以上のようにして、検索対象の画像の登録処理が行われる。
【００５９】
［画像の検索処理］
次に、クエリ画像から登録画像を検索する画像の検索処理の概要を、図８を用いて説明する。図８は、本実施形態における画像の検索処理の概要を説明するためのブロック図である。図８において、クエリ画像入力部８０１は、通信デバイス１０８により接続されたネットワークスキャナ、デジタルスチルカメラ、デジタル画像データを保持した外部記憶装置やイメージスキャナ１０９を介して検索元となる画像データを入力する。そして、これを検索クエリ画像とする。入力された画像データは、一時的にＲＡＭ１０３や外部記憶装置１０６などに保持され、利用されることとなる。
【００６０】
画像特徴抽出部８０２は、処理対象の画像がクエリ画像入力部８０１で得られたクエリ画像であり、得られる特徴量が検索用に使用されること以外は図２に示す画像特徴抽出部２０２と同じ処理なので、説明は省略する。
【００６１】
一次絞込み用情報抽出部８０３は、処理対象の特徴量が画像特徴抽出部８０２で得られたクエリ画像の特徴量であり、得られる一次絞込み情報が検索に使用されること以外は図２に示す一次絞込み用情報抽出部２０５と同じ処理なので、説明は省略する。
【００６２】
一次絞込みインデックス８０５は、図２に示す一次絞込みインデックス２０７と同じなので、説明は省略する。画像特徴量データベース８０７は、図２に示す画像特徴量データベース２０４と同じなので、説明は省略する。
【００６３】
一次絞込み処理部８０４は、一次絞込みインデックス８０５から、一次絞込み用情報抽出部８０３で抽出した一次絞込み情報を探し出す。これは、単純なインデックス検索であり、高速に行われる。特に、後述する画像特徴量の類似計算などに比べれば、相対的に非常に高速に行われるものである。
【００６４】
ここで、一次絞込み用情報抽出部８０３で得られたクエリ画像の一次絞込み情報の一例例を図９に示す。そして、図９に示すクエリ画像のインデックス情報が得られた場合に、図７に示す一次絞込みインデックスが一次絞込みインデックス８０５に対して検索を行う処理を説明する。
【００６５】
一次絞込みインデックスのインデックス部分は、これをキーとして検索処理することを前提にしているために、この部分で有名なハッシュ関数やＢ木などの計算方式を適用して高速にその情報の格納位置を得られるようになっている。これにより、インデックス情報を指定された場合に高速にそのインデックス情報に対応する画像ＩＤの集合を見つけ出し、それを結果として示せるのである。
【００６６】
そこで、図９に示す９０１と９０２のインデックス情報を提示し、該当する７０２と７０３を選び、それぞれの画像ＩＤの集合を取り出し、集合積を計算して、その結果として画像ＩＤの集合を得る。この例の場合は、画像ＩＤ：００１が得られることとなる。このような計算により、一次絞込みの処理を行う。これは、後述する画像の特徴量の類似度を計算するのに比べ、非常に単純な計算だけで簡潔にできているので、相対的に処理負担が小さく、高速である。
【００６７】
また、画像の特徴量のスケールの値を利用して、適切な絞込みになるように、予め一次絞込みインデックスを作成する。これにより、一次絞込みで、画像の特徴量の類似度計算の際に、十分低い類似度しか出せない検索対象画像の候補を検索対象画像の候補から外すようにする。
【００６８】
尚、一次絞り込みの結果は、一時的にＲＡＭ１０３や外部記憶装置１０６に保持され、利用される。
【００６９】
ここで図８に戻り、８０６は画像特徴比較部であり、一次絞込み処理部８０４で絞り込まれた検索結果の画像の候補について、各候補画像の画像ＩＤから、それに対応した局所特徴量を画像特徴量データベース８０７から取得する。そして、画像特徴抽出部８０２で抽出したクエリ画像の局所特徴量と比較して類似度を計算する。この類似度の計算方式については後述する。この類似度計算を各候補画像に対して行うことにより候補画像の画像ＩＤと、その候補画像とクエリ画像との類似度の組の情報が、候補画像の数だけ作られ、一時的にＲＡＭ１０３や外部記憶装置１０６に保持される。
【００７０】
［類似度の算出方法］
次に、本実施形態における類似度の算出方法を、図６を用いて説明する。ここで、クエリ画像の特徴量をＶｓ、その特徴量の特徴点の位置座標をＳ（x，y）とする。また、画像特徴量データベース８０７に登録されている候補画像Ｒ上に存在する特徴量をＶｑ、特徴量の特徴点の位置座標をＱ（x’，y’）とする。
【００７１】
図６は、本実施形態における類似度算出処理を示すフローチャートである。類似度の算出は投票処理（計数処理）によって行う。各計算時に類似していると判定された場合に、投票を行い、その投票の集計結果をもって、最終的な類似度と見なすのである。まず、ステップＳ６０１で、最大投票数を表す変数ＶｏｔｅＭａｘを０に初期化する。最大投票数は、複数回投票を行ったうち得られた最大の投票数である。次に、ステップＳ６０２で、ＶｑとＶｓとの特徴量間距離を全ての組み合わせについて計算し、最短距離対応点リストを作成する。即ち、計算した特徴量間の距離がしきい値Ｔｖ以下となり、かつ、最短距離となるようなＶｑとＶｓとの組み合わせ（対応点）を抽出し、最短距離対応点リストに登録する。
【００７２】
これ以降、最短距離対応点リストに登録されたｋ番目の対応点について、当該対応点の局所特徴量をそれぞれＶｑ（ｋ）とＶｓ（ｋ）と記載する。更にＶｑ（ｋ）とＶｓ（ｋ）に対応付けられている局所特徴点をそれぞれＱｋ、Ｓｋ、座標をＱｋ（x’ｋ，y’ｋ）、Ｓｋ（xｋ，yｋ）などと添え字を合わせて記載する。またステップＳ６０２で作成された最短距離対応点リストに登録された対応点の組数をｍ組とする。
【００７３】
次に、ステップＳ６０３で、類似度算出処理の反復カウント数を表す変数Ｃｏｕｎｔを０に初期化する。次に、ステップＳ６０４で、反復カウント数Ｃｏｕｎｔが予め定められた最大反復処理回数Ｒｎを超えていないを判定する。ここで、超えている場合はステップＳ６１８へ進み、最大投票数ＶｏｔｅＭａｘを出力して、この処理を終了する。
【００７４】
また、ステップＳ６０４で、反復カウント数Ｃｏｕｎｔが最大反復処理回数Ｒｎを超えていない場合はステップＳ６０５へ進み、投票数を表す変数Ｖｏｔｅを０に初期化する。次に、ステップＳ６０６で、当該最短距離対応点リストから対応点の組の座標をランダムに２組抽出する。ここで、これらの座標をＱ１（ｘ’１，ｙ’１）、Ｓ１（ｘ１，ｙ１）及びＱ２（ｘ’２，ｙ’２）、Ｓ２（ｘ２，ｙ２）と記載する。次に、ステップＳ６０７で、抽出したＱ１（ｘ’１，ｙ’１）、Ｓ１（ｘ１，ｙ１）及びＱ２（ｘ’２，ｙ’２）、Ｓ２（ｘ２，ｙ２）が式（８）に示す変換を満たしていると仮定し、式（８）中の変数ａ〜ｆを求める。
【００７５】
ただし、図６に示すステップＳ６０７では、変数ａ〜ｄで構成される行列をＭで示し、変数ｅ〜ｆで構成される行列をＴで示している。
【００７６】
【数３】
2008287438.tif 000005
【００７７】
ここで、第１の実施形態では、簡略化のため、相似変換だけを考える。このとき、上記式（８）は以下の式（９）のように書き換えられる。
【００７８】
【数４】
2008287438.tif 000006
【００７９】
このとき、変数ａ、ｂ、ｅ、ｆはｘ’１、ｙ’１、ｘ１、ｙ１、ｘ’２、ｙ’２、ｘ２、ｙ２を使って式（１０）から式（１３）で表される。
【００８０】
【数５】
2008287438.tif 000007
【００８１】
次に、ステップＳ６０８で、上述のステップＳ６０６で当該最短距離対応点リストからランダムに抽出された２組の点以外の点を選択するために、対応点選択変数ｋを３に初期化する。そして、ステップＳ６０９で、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えていないかを判定する。ここで、超えている場合はステップＳ６１５へ処理を移すが、これについては後述する。ステップＳ６０９における判定で対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えていない場合はステップＳ６１０へ処理を移す。
【００８２】
このステップＳ６１０では、上述のステップＳ６０６で当該最短距離対応点リストからランダムに抽出した２組の点Ｓ１（ｘ１，ｙ１）及びＳ２（ｘ２，ｙ２）以外の点を当該最短距離対応点リストから抽出する。第１の実施形態では、抽出された点をＳｋ（ｘｋ，ｙｋ）と記載する。
【００８３】
次に、ステップＳ６１１で、Ｓｋ（ｘｋ，ｙｋ）が式（９）を使って移される座標Ｓｋ’（ｘ’ｋ，ｙ’ｋ）を求める。
【００８４】
その後、ステップＳ６１２では、座標Ｓｋ’（ｘ’ｋ，ｙ’ｋ）と座標Ｑｋ（ｘ’ｋ，ｙ’ｋ）との幾何学的距離をユークリッド距離で計算し、当該ユークリッド距離がしきい値Ｔｄ以下であるか否かを判定する。当該ユークリッド距離がしきい値Ｔｄ以下の場合はステップＳ６１３へ進み、類似している候補であると見なして投票数Ｖｏｔｅをインクリメントし、ステップＳ６１４へ処理を移す。また、当該ユークリッド距離がしきい値Ｔｄより大きい場合は、類似していない候補と見なして何もせずにステップＳ６１４へ処理を移す。
【００８５】
このステップＳ６１４では、対応点選択変数ｋをインクリメントし、ステップＳ６０９に戻り、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えるまで、上述の処理を繰り返す。つまり、ステップＳ６０６でまた別の２組の点を抽出し、ステップＳ６０７で式（９）のパラメータ変数ａ、ｂ、ｅ、ｆを求め、ステップＳ６０８乃至ステップＳ６１２の処理を行い、投票することを繰り返す。
【００８６】
次に、ステップＳ６０９で、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えた場合の処理であるステップＳ６１５を説明する。ステップＳ６１５では、投票数Ｖｏｔｅの値と最大投票数ＶｏｔｅＭａｘの値とを比較し、投票数Ｖｏｔｅの値が最大投票数ＶｏｔｅＭａｘの値よりも大きい場合にはステップＳ６１６へ処理を移す。
【００８７】
このステップＳ６１６では、最大投票数ＶｏｔｅＭａｘの値を投票数Ｖｏｔｅの値で置き換えた後、ステップＳ６１７で反復カウント数Ｃｏｕｎｔをインクリメントし、上述のステップＳ６０４に処理を戻す。
【００８８】
また、ステップＳ６１５で、投票数Ｖｏｔｅの値が最大投票数ＶｏｔｅＭａｘの値以下の場合にはステップＳ６１７へ処理を移し、反復カウント数Ｃｏｕｎｔをインクリメントし、上述のステップＳ６０４に処理を戻す。
【００８９】
このように処理することで、クエリ画像と個々の候補画像の特徴量が近い特徴点同士がクエリ画像と個々の候補画像内の両方の画像内の位置的な関係においても近い状態が保有できるか否かを投票する。そして、個々の投票を集計した結果をクエリ画像と個々の候補画像の類似度とする。このようにして、クエリ画像と個々の候補画像の類似度が計算される。
【００９０】
ここで図８に戻り、８０８は検索結果表示部であり、画像特徴比較部８０６で得られた検索結果の画像や類似度、その画像の属性情報を表示する。
【００９１】
尚、本実施形態における類似度の算出方法の説明では、相似変換だけを考えて説明したが、アフィン変換などその他の幾何学変換についても、ステップＳ６０７でそれぞれに応じた変換行列を求めることにより、対応可能である。例えば、アフィン変換の場合には、まずステップＳ６０６で、ランダムに選択する対応点の組の座標数を３とする。次に、ステップＳ６０７で、式（９）ではなく式（８）を使うこととし、ステップＳ６０６で選択した３組の対応点（合計６点）を使って変数ａ〜ｆを求めれば良い。
【００９２】
図１０は、本実施形態における検索クエリ画像入力時の画像検索支持画面の一例を示す図である。この画面はクエリ画像入力部８０１によって表示される。図１０に示す例は、専用のアプリケーションによりウィンドウシステムを利用した場合の画面の一例であるが、Ｗｅｂブラウザなどによって同様の機能が提供されてもかまわない。
【００９３】
図１０において、１００１はタイトルバーで、この画面のタイトル表示と全体の操作、例えば大きさの変更等を行う部分である。１００３は検索で使用するクエリ画像の入力を指示するためのボタンである。このボタン１００３を押下すると、通信デバイス１０８により接続されたスキャナ、デジタルスチルカメラ、コピー装置などの外部記憶装置を指定するための画面が表示される。そして、クエリ画像が入力できるようになり、クエリ画像入力部８０１でクエリ画像の入力処理が行われる。
【００９４】
１００２は入力された検索元のクエリ画像のサムネイル画像を表示する検索元画像表示部分である。１００４は検索元画像表示部分１００２のクエリ画像に類似した画像の検索を指示するためのボタンである。ここで、このボタン１００４が押下されると、画像特徴抽出部８０２以降の画像の検索処理が行われ、図１１に示す画面によって検索結果が表示される。
【００９５】
図１１は、本実施形態における検索結果一覧を表示する検索結果表示画面の一例を示す図である。この画面は、検索結果表示部８０８によって表示される。図１１に示す例は、専用のアプリケーションによりウィンドウシステムを利用した場合の画面の一例であるが、Ｗｅｂブラウザなどによって同様の機能が提供されてもかまわない。
【００９６】
図１１において、１１０１はタイトルバーで、この画面のタイトル表示と全体の操作、例えば大きさの変更等を行う部分である。１１０２は検索の元となったクエリ画像のサムネイルを表示する部分である。
【００９７】
１１０３は検索結果を表示するための領域であり、画像特徴比較部８０６で検索結果として得られた画像ＩＤに対応した画像のサムネイルや画像ファイル名などを一覧表示する領域である。サムネイルは、画像登録時に作成され、画像ＩＤに対応付けて外部記憶装置１０６などに登録されている。検索結果数が多く、一つの画面で表示できない場合には、表示サイズに応じた件数ずつ組にして表示を行う。この例では、６件ずつ検索結果が表示されている。
【００９８】
１１０４は現在表示している検索結果の前の６件を表示するためのボタンであり、１１０５は現在表示している検索結果の次の６件を表示するためのボタンである。また、この例では、サムネイルと画像ファイル名を表示しているが、画像特徴比較部８０６で求めた類似度や画像に付与されているメタデータなどを各画像に対する詳細情報として表示してもよい。
【００９９】
また、１１０３に示す領域に表示されているサムネイルの一つを選択すると、別の画面を表示し、画像に付与されているメタデータ等を各画像に対する詳細情報として表示するようにしてもよい。
【０１００】
以上の説明から明らかなように、本実施形態の画像の特徴量を用いた画像検索装置は、以下の特徴を有する。即ち、大量の検索画像を登録して検索する際に、その画像の特徴量の基となった領域的な大きさの情報を利用することで、容易、かつ精度の高い一次絞込みインデックスを形成できる。これにより、大量の検索画像を登録して検索する場合、検索対象の登録を行う際に、高速で処理負担が低い処理で実現でき、高速、かつ高精度の検索処理も実現できる。
【０１０１】
［他の実施形態］
他の実施形態として、一次絞込みのインデックスを特徴量のある特徴点の近傍の特徴点の特徴量とする際に、その集合ではなく列の組み合わせとして扱う方法を説明する。
【０１０２】
図１２は、他の実施形態における一次絞込みインデックスの一例を示す図である。一次絞込み用のデータベースに特徴点Ｂの特徴量のスケールから計算される近傍の中に特徴点Ａと特徴点Ｃの特徴点がある場合、１２０３、１２０４の２つのインデックス情報を作成する。このようにすることで、集合ではなく、単純なデータ列となるので、インデックスに対する計算が、作成時、検索時の片方もしくは両方で簡便になる。
【０１０３】
ただし、インデックスの冗長性が増すために、インデックス情報の格納領域はより多く必要となる。また、列の組み合わせにする際に、近い順の列だけにしてもよい。この場合、インデックス情報の作成時、検索時に、特徴点間の距離の比較をしないといけないが、インデックス情報の冗長性が増えないため、効率の良い格納が可能となる。
【０１０４】
また、３つ以上の特徴点がある場合には、その相対的な角度を利用してもよい。例えば、一番近い特徴点から時計回りに特徴点の列を作成する方法などでもよい。このように、単純な距離に相当する情報を扱っている場合には、スケールなどの利用により、検索対象画像に対する拡大縮小、回転に対する特徴量と類似度計算が耐性を有するため、一次絞込みも同様の耐性を持ったものを利用するのが適切である。
【０１０５】
また、一次絞込みインデックスの作成・利用方法として、様々なものが考えられるが、特徴点の元となった領域の相対的な大きさに関する情報であるスケールを利用して計算を行うものであれば、何でも適用可能である。
【０１０６】
本実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ（ＣＰＵ若しくはＭＰＵ）が記録媒体に格納されたプログラムコードを読出し実行する。これによっても、本発明の目的が達成されることは言うまでもない。
【０１０７】
この場合、コンピュータ読み取り可能な記録媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記録媒体は本発明を構成することになる。
【０１０８】
このプログラムコードを供給するための記録媒体として、例えばフレキシブルディスク，ハードディスク，光ディスク，光磁気ディスク，ＣＤ−ＲＯＭ，ＣＤ−Ｒ，磁気テープ，不揮発性のメモリカード，ＲＯＭなどを用いることができる。
【０１０９】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、次の場合も含まれることは言うまでもない。即ち、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（オペレーティングシステム）などが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合である。
【０１１０】
更に、記録媒体から読出されたプログラムコードがコンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込む。その後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理により前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
【図面の簡単な説明】
【０１１１】
【図１】本実施形態における画像処理装置の概略構成を示す図である。
【図２】本実施形態における画像の登録処理の概要を説明するためのブロック図である。
【図３】局所的な特徴量を抽出する処理を示すフローチャートである。
【図４】縮小画像を生成する縮小画像生成処理の一例を示す図である。
【図５】本実施形態における絞込みインデックス情報の作成例を示す図である。
【図６】本実施形態における類似度算出処理を示すフローチャートである。
【図７】一次絞込みインデックス情報の一例を示す図である。
【図８】本実施形態における画像の検索処理の概要を説明するためのブロック図である。
【図９】一次絞込み用情報抽出部８０３で得られたクエリ画像の一次絞込み情報の一例例を示す図である。
【図１０】本実施形態における検索クエリ画像入力時の画像検索支持画面の一例を示す図である。
【図１１】本実施形態における検索結果一覧を表示する検索結果表示画面の一例を示す図である。
【図１２】他の実施形態における一次絞込みインデックスの一例を示す図である。
【符号の説明】
【０１１２】
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  キーボード
１０５  システムバス
１０６  外部記憶装置
１０７  表示器
１０８  通信デバイス（ＮＣＵ）
１０９  イメージスキャナ
２０１  登録画像入力部
２０２  画像特徴抽出部
２０３  画像特徴登録部
２０４  画像特徴量データベース（ＤＢ）
２０５  一次絞込み用情報抽出部
２０６  一次絞込みインデックス作成部
２０７  一次絞込みインデックス
８０１  クエリ画像入力部
８０２  画像特徴抽出部
８０３  一次絞込み用情報抽出部
８０４  一次絞込み処理部
８０５  一次絞込みインデックス
８０６  画像特徴比較部
８０７  画像特徴量データベース（ＤＢ）
８０８  検索結果表示部
【図１】
2008287438.tif 000008
【図２】
2008287438.tif 000009
【図３】
2008287438.tif 000010
【図４】
2008287438.tif 000011
【図５】
2008287438.tif 000012
【図６】
2008287438.tif 000013
【図７】
2008287438.tif 000014
【図８】
2008287438.tif 000015
【図９】
2008287438.tif 000016
【図１０】
2008287438.tif 000017
【図１１】
2008287438.tif 000018
【図１２】
2008287438.tif 000019