(57)【要約】【課題】  同じ画像から抽出した局所特徴量は登録せずに、かつ、それらの画像を検索可能とする。【解決手段】  登録対象の画像を入力する入力部と、入力した画像を、当該画像に応じて複数の領域に分割する分割部と、分割した画像の領域毎に、画像の特徴量を算出する算出部と、分割した領域ごとに、前記特徴量を用いて、既に登録済み画像から類似画像を検索する検索部と、該検索部で類似画像が存在しない場合、前記分割した該当する領域の画像の特徴量を登録する登録部とを有する。【選択図】  図２
2015203978.tif 000002
【特許請求の範囲】
【請求項１】
画像検索装置に画像を登録する画像処理装置であって、
登録対象の画像を入力する入力手段と、
入力した画像を、当該画像に応じて複数の領域に分割する分割手段と、
分割した領域毎に、画像の特徴量を算出する算出手段と、
分割した領域毎に、前記特徴量を用いて、既に登録済み画像から類似画像を検索する検索手段と、
該検索手段の検索結果に類似画像が存在しない場合、前記分割した該当する領域の画像の特徴量を登録する登録手段と、
を有することを特徴とする画像処理装置。
【請求項２】
前記分割手段は、
前記入力手段による入力画像が、複数ページを１枚の画像に割り付けた画像であるか否か、割り付けた画像であれば、その割り付けページ数を判定するページ数判定手段を含み、
前記ページ数判定手段で判定されたページ数に従って、前記入力画像を分割する
ことを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記入力手段は、登録対象の１枚の画像が何ページで構成されるかを示す設定情報を更に入力し、
前記ページ数判定手段は、前記設定情報を参照してページ数を判定することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記ページ数判定手段は、
前記入力手段による入力画像を２値化する２値化手段と、
該２値化手段で得られた２値画像から、黒画素が連続する領域を求め、各領域の大きさ形状に基づき複数の矩形領域を求める矩形領域決定手段と、
１枚の画像に含まれるページ数で決まるページ境界位置の情報を参照し、前記矩形領域決定手段で決定した各矩形領域が、前記ページ境界にまたがらない最大となるページ数を、前記分割するページ数として決定する手段と
を有する請求項２に記載の画像処理装置。
【請求項５】
前記分割手段は、
前記入力手段による入力画像を２値化する２値化手段と、
該２値化手段で得られた２値画像中の黒画素が連続する領域の属性を判定し、同じ属性を持つ領域どうしを連結した領域を、分割する領域として決定する手段と
を有することを特徴とする請求項１に記載の画像処理装置。
【請求項６】
前記登録手段は、
前記検索手段が前記分割した領域の画像に類似する類似画像を検索したときの、前記分割した領域の画像が前記類似画像を包含する関係にある場合、前記類似する画像を分割し、各分割した領域の画像の特徴量を、前記検索手段で検索する基準画像の特徴量として再登録する第１の登録手段と、
前記検索手段が前記分割した領域の画像に類似する類似画像を検索したときの、前記分割した領域の画像が前記類似画像に包含される関係にある場合、前記分割した領域の画像の特徴量を、前記類似する画像へのリンクする画像の特徴量として登録する第２の登録手段とを含む
ことを特徴とする請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記第１の登録手段は、
前記検索手段が前記分割した領域の画像と、検索で得られた類似画像それぞれが一致する領域の割合の比に基づき、前記類似画像が複数ページが割り当てられた画像か否かを判定する手段を有し、
当該手段で複数ページが割り当てられた画像であると判定された場合に、前記類似画像を分割して登録を行うことを特徴とする請求項６に記載の画像処理装置。
【請求項８】
検索元となるクエリ画像を入力する手段と、
前記クエリ画像の特徴量を算出する手段と、
該手段で算出した特徴量を用いて、請求項１乃至７のいずれか１項に記載の画像処理装置から類似画像を検索する手段と、
前記類似画像とのリンク情報を持つ画像を検索する手段と
を有することを特徴とする画像検索装置。
【請求項９】
画像検索装置に画像を登録する画像処理装置の制御方法であって、
入力手段が、登録対象の画像を入力する入力工程と、
分割手段が、入力した画像を、当該画像に応じて複数の領域に分割する分割工程と、
算出手段が、分割した領域毎に、画像の特徴量を算出する算出工程と、
検索手段が、分割した領域毎に、前記特徴量を用いて、既に登録済み画像から類似画像を検索する検索工程と、
登録手段が、該検索工程の検索結果に類似画像が存在しない場合、前記分割した該当する領域の画像の特徴量を登録する登録工程と、
を有することを特徴とする画像処理装置の制御方法。
【請求項１０】
コンピュータが読み込み実行することで、前記コンピュータを、請求項１乃至８のいずれか１項に記載の装置が有する各手段を機能させるためのプログラム。
【請求項１１】
請求項１０に記載のプログラムを格納したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像検索技術に関するものである。
【背景技術】
【０００２】
画像の局所的な特徴量（局所特徴量）を用いて類似画像を検索する方法が提案されている。この方法では、まず、画像から特徴的な点（局所特徴点）を抽出する（非特許文献１）。次に、当該局所特徴点とその周辺の画像情報とに基づいて、当該局所特徴点に対応する特徴量（局所特徴量）を計算する（非特許文献２）。
【０００３】
局所特徴量を利用する手法においては、局所特徴量を回転不変、拡大・縮小不変となる複数の要素で構成される情報として定義する。これにより、画像を回転させたり、拡大又は縮小させたりした場合であっても、検索を可能にする。局所特徴量は一般的にベクトルとして表現される。
【０００４】
回転不変の局所特徴量抽出のために、たとえば非特許文献２では、局所特徴点周辺の局所領域の画素パターンから主方向を算出し、局所特徴量算出時に主方向を基準に局所領域を回転させて方向の正規化を行う。また、拡大・縮小不変の局所特徴量を算出するために、異なるスケールの画像を内部で生成し、各スケールの画像からそれぞれ局所特徴点の抽出と局所特徴量の算出を行う。ここで、内部で生成した一連の異なるスケールの画像集合は一般的にスケールスペースと呼ばれる。
【０００５】
上述の方式により、１枚の画像から複数の局所特徴点が抽出される。局所特徴量を用いた画像検索では、それぞれの局所特徴点から算出した局所特徴量同士の比較を行うことによりマッチングを行う。多く利用されている投票方式（特許文献１）は、検索元画像から抽出された各特徴点の局所特徴量に所定以上類似する特徴点を最近傍処理で見つけ、存在すれば「画像」に対して１票を投票し、その投票数の多いものほど類似するとするものである。
【０００６】
一方、ユーザがプリンタなどから出力したジョブの内容を蓄積し、いつ、誰が、どのようなジョブを実行したのかを追跡可能とする情報漏洩抑止システムに関する技術が提案されている（特許文献２）。画像の漏洩を抑止するために、画像から抽出した特徴量を登録しておき、類似画像の検索を行うことで、画像を出力したジョブを特定する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開2009-284084号公報
【特許文献２】特許4921202号公報
【非特許文献】
【０００８】
【非特許文献１】C.Harris and M.J. Stephens,“A combined corner and edge detector," In Alvey Vision Conference,pages 147-152, 1988.
【非特許文献２】David G. Lowe, “Distinctive Image Features from Scale-Invariant Keypoints," International Journal of Computer Vision, 60, 2 (2004), pp.91-110.
【発明の概要】
【発明が解決しようとする課題】
【０００９】
オフィスでは、複数の人が同じドキュメントを印刷する機会が多々ある。前述の情報漏洩抑止システムにおいて、同じドキュメントが印刷された場合、印刷する度に特徴量をシステムに登録していた。したがって、同じ特徴量がシステムに複数回登録されているという冗長な状態であった。そして、登録されているすべての特徴量との比較を行い、検索結果を生成していた。
【００１０】
従来使用していた非局所的（グローバル）特徴量は、固定サイズで、特徴量サイズも小さく、高速な検索も可能であったため、冗長なデータベースではあったが、大きな問題にはなっていなかった。
【００１１】
しかしながら、局所特徴量のサイズは、従来の特徴量サイズと比較して数百倍から数千倍大きくなる。したがって、登録数が多くなったときには、データベースの肥大化が課題となる。更にデータベースの肥大化は、検索速度にも影響を及ぼす。従来の方法では、冗長な登録が行われるため、データベースの肥大化を加速させてしまうという課題があった。
【００１２】
また、オフィスでドキュメントを印刷する際、用紙やトナーなどを節約するため、複数ページのドキュメントを縮小し、１ページに割りつけて印刷する機会も多い。そのような縮小した画像からも、原理的にほぼ同じ局所特徴量が抽出されるため、これらをそのまま登録すると、同様に冗長な登録が行われてしまうという課題があった。
【００１３】
本発明は、同じ画像から抽出した局所特徴量を冗長して登録せずに、かつ、それらの画像の検索が可能な方法を提供しようとするものである。
【課題を解決するための手段】
【００１４】
この課題を解決するため、例えば本発明の画像処理装置は以下の構成を備える。すなわち、
画像検索装置に画像を登録する画像処理装置であって、
登録対象の画像を入力する入力手段と、
入力した画像を、当該画像に応じて複数の領域に分割する分割手段と、
分割した領域毎に、画像の特徴量を算出する算出手段と、
分割した領域毎に、前記特徴量を用いて、既に登録済み画像から類似画像を検索する検索手段と、
該検索手段の検索結果に類似画像が存在しない場合、前記分割した該当する領域の画像の特徴量を登録する登録手段とを有する。
【発明の効果】
【００１５】
本発明によれば、同じ画像から抽出した局所特徴量を冗長して登録せずに、かつ、それらの画像の検索が可能となる。
【図面の簡単な説明】
【００１６】
【図１】第１の実施形態を適用するコンピュータ装置の構成図。
【図２】第１の実施形態における画像処理装置の機能構成例を示すブロック図。
【図３】第１の実施形態における入力画像の一例を示す図。
【図４】第１の実施形態における登録処理の一例を示すフローチャート。
【図５】第１の実施形態における画像特徴量の抽出処理の一例を示すフローチャート。
【図６】第１の実施形態における縮小画像生成処理の一例を示す図。
【図７】第１の実施形態における２次元の特徴量空間の格子形状への分割例を示す図。
【図８】第１の実施形態における画像登録処理手順の一例を示すフローチャート。
【図９】第１の実施形態における画像特徴量をデータベースに登録するときのスキーマの一例を示す図。
【図１０】第１の実施形態における一致領域特定処理結果の一例を示す図。
【図１１】第１の実施形態におけるリンク情報を登録後のデータベーステーブルの一例を示す図。
【図１２】第１の実施形態における割り付け画像判定処理手順を示すフローチャート。
【図１３】第１の実施形態における割り付け画像に関しての情報の一例を示す図。
【図１４】第１の実施形態における処理対象画像における一致領域を処理対象画像全体に広げた時の領域に対応する検索結果画像の領域を説明する図。
【図１５】第１の実施形態における画像の分割再登録処理手順を示すフローチャート。
【図１６】第１の実施形態における画像の分割再登録後のデータベーステーブルの一例を示す図。
【図１７】第１の実施形態における類似基準画像検索処理手順を示すフローチャート。
【図１８】第１の実施形態における一致領域特定処理手順を示すフローチャート。
【図１９】第１の実施形態における最短距離対応点リストのスキーマの一例を示す図。
【図２０】第１の実施形態における正対応点リスト作成処理手順を示すフローチャート。
【図２１】第１の実施形態における検索処理手順の一例を示すフローチャート。
【図２２】第２の実施形態における割り付け画像判定処理手順を示すフローチャート。
【図２３】第２の実施形態における像域分離結果の一例を示す図。
【図２４】第２の実施形態における像域分離結果の画像を割り付け分割するときの分割位置の例を示す図。
【図２５】第３の実施形態における登録処理手順を示すフローチャート。
【図２６】第３の実施形態における画像登録処理手順を示すフローチャート。
【発明を実施するための形態】
【００１７】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【００１８】
［第１の実施形態］
まず、第１の実施形態におけるサーバ装置やクライアント装置を構成するコンピュータ装置の構成について、図１のブロック図を参照して説明する。サーバ装置やクライアント装置はそれぞれ単一のコンピュータ装置で実現してもよいし、必要に応じた複数のコンピュータ装置に各機能を分散して実現するようにしてもよい。複数のコンピュータ装置で構成される場合は、互いに通信可能なようにＬｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ（ＬＡＮ）などで接続されている。コンピュータ装置は、パーソナルコンピュータ（ＰＣ）やワークステーション（ＷＳ）等の情報処理装置によって実現することができる。
【００１９】
図１において、ＣＰＵ１０１はコンピュータ装置１００全体を制御するＣｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔである。ＲＯＭ１０２は変更を必要としないプログラムやパラメータを格納するＲｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙである。ＲＡＭ１０３は外部装置などから供給されるプログラムやデータを一時記憶するＲａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙである。外部記憶装置１０４はコンピュータ装置１００に固定して設置されたハードディスクやメモリカードなどの記憶装置である。なお、外部記憶装置１０４は、コンピュータ装置１００から着脱可能なフレキシブルディスク（ＦＤ）やＣｏｍｐａｃｔ  Ｄｉｓｋ（ＣＤ）等の光ディスク、磁気や光カード、ＩＣカード、メモリカードなどを含んでもよい。入力デバイスインターフェイス１０５はユーザの操作を受け、データを入力するポインティングデバイスやキーボードなどの入力デバイス１０９とのインターフェイスである。出力デバイスインターフェイス１０６はコンピュータ装置１００の保持するデータや供給されたデータを表示するためのモニタ１１０とのインターフェイスである。通信インターフェイス１０７はインターネットなどのネットワーク回線１１１や、デジタルカメラ１１２，デジタルビデオカメラ１１３，スマートフォン１１４などに接続するための通信インターフェイスである。システムバス１０８は１０１〜１０７の各ユニットを通信可能に接続する伝送路である。
【００２０】
後述する各動作は、ＲＯＭ１０２等のコンピュータ読み取り可能な記憶媒体に格納されたプログラムをＣＰＵ１０１が実行することにより実行される。
【００２１】
図２は、第１の実施形態における画像処理装置の機能構成例を示すブロック図である。図２に示す各構成における動作の詳細については、後述する。
【００２２】
第１の実施形態は、画像特徴量を用いて類似画像を検索するにあたって、入力画像から画像特徴量を算出し、登録する処理に関する。更に、入力画像から画像特徴量を算出し、登録されている画像特徴量と比較することにより、類似する画像を検索する処理に関する。また、複数の画像を割り付けることによって生成された画像（以降、割り付け画像）を登録する場合は、元の複数の画像に分割し、それらの画像ごとに画像特徴量を算出し、登録する。ここでは、分割された元の複数の画像のそれぞれを基準画像という。
【００２３】
図２において、画像入力部２０１は、登録する画像（登録対象画像）、および、検索元画像（クエリ画像）の入力を行う。本実施形態では、図３（Ａ）に一例を示すように、ドキュメントをラスタライズして画像としたものを対象画像として説明する。この入力画像は、ドキュメントを印刷する際に、プリンタドライバで生成することもできる。特にプリンタドライバで生成した場合、その印刷データには１枚の記録紙に何ページを印刷するかを示す情報を含ませることができるので、実施形態では好都合と言える。
【００２４】
割り付け画像判定部２０２は、画像入力部２０１から入力された入力画像が、割り付け画像であるかどうかを判定すると共に、割り付け画像である場合には割り付けたページ数を判定する。ここで、割り付け画像とは、図３（Ｂ）〜（Ｇ）に例を示すように、ドキュメントの複数ページを１つ（１枚）にまとめた画像のことである。ドキュメントを印刷する際に、このような設定をすることができる。割り付け印刷を行う際は、複数のページを同じ大きさで縮小し、１枚の記録紙（１個の画像内）に割り付ける。したがって、割り付け印刷可能なページ数は、２ページ、４ページ、６ページ、８ページ、９ページ、１６ページ、３２ページなどである。一般に、１枚の記録紙にＮページを割り付けて印刷することをＮｉｎ１と呼ばれる。３２ページを超えるページ数を１枚（１ページ）に均等に割り付けることも理論的には可能であり、これらのページ数に限定するものではない。割り付けを行う際、例えば３ページのドキュメントから４ページの割り付け画像を生成する場合は、４ページ目の位置には空白のページが入る。割り付け画像判定部２０２では、割り付け画像と判定された場合は、更に、何ページの割り付け画像であるかを判定する。ここでは、Ｎページの割り付け画像であると判定されたとして説明する。
【００２５】
領域分割部２０３は、割り付け画像判定部２０２によりＮページの割り付け画像と判定された場合、入力画像をＮ個の領域に分割する。割り付け方法はあらかじめ定められており、その方法にしたがって分割する。画像特徴量算出部２０４は、入力画像が割り付け画像で無い場合は、その入力画像、割り付け画像の場合は領域分割部２０３で分割した領域ごとの画像について、画像特徴量を算出する。
【００２６】
画像検索部２０５は、画像特徴量算出部２０４で算出された画像特徴量を検索元とし、既に登録されている画像の画像特徴量との比較を行い、類似画像を検索する。画像検索部２０５で類似画像が見つかった場合、リンク情報登録部２０６は、検索元とした画像特徴量の画像が、類似画像と同じ画像であるというリンク情報を登録する。画像検索部２０５で類似画像が見つからなかった場合は、画像特徴量登録部２０７は、検索元とした画像特徴量を登録する。記憶部２０８は、処理中のデータ、各種インデックス、画像ファイル等を記憶するメモリ・ＨＤＤ等である。なお、これら各構成は、不図示のＣＰＵにより統括的に制御されている。
【００２７】
［登録処理］
図４は、第１の実施形態の画像処理装置における登録処理手順の一例を示すフローチャートである。
【００２８】
まず、ステップＳ４０１において、画像入力部２０１を介して登録対象の画像が入力される。入力された登録対象の画像には、画像ＩＤが割り振られる。第１の実施形態では、一例として、ドキュメントを印刷する際にプリンタドライバでラスタライズした画像を入力とした場合について述べる。入力された画像は、記憶部２０８に保存される。
【００２９】
ステップＳ４０２では、割り付け画像判定部２０２において、入力した登録対象画像が割り付け画像であるかどうかを判定する。前述のように、ドキュメントを印刷する際のプリンタドライバの設定で、割り付け印刷の指示をすることができる。本実施形態では、入力した画像に付随する、その情報を利用する。ステップＳ４０３で、入力画像が割り付け画像でない場合はステップＳ４０４へ進み、入力画像を処理対象画像に設定する。入力画像が割り付け画像の場合は、ステップＳ４０５で、入力した登録対象画像が、何ページの画像で構成されているのかを示す割り付け数Ｎを取得する。割り付け数Ｎも、プリンタドライバで設定した情報を利用する。ただし、プリンタドライバの設定情報を利用する場合に限定するものではなく、プリンタや複合機などの機器の操作情報を利用してもよい。例えば、複合機でコピーする際、２枚の用紙を１枚に割りつけてコピーするようなことも可能であり、そのような情報も利用可能である。
【００３０】
次にステップＳ４０６で、領域分割部２０３において、入力画像をＮ個の領域に分割する。この分割はあらかじめ定められた分割方法であり、均等サイズの領域に分割する。次にステップＳ４０７でＮ分割した最初の領域の画像を処理対象画像に設定する。ステップＳ４０８では、画像特徴量算出部２０４において、ステップＳ４０４又はステップＳ４０７で決定した処理対象画像の画像特徴量を抽出する。
【００３１】
図５は、ステップＳ４０８における画像特徴量抽出処理手順の一例を示すフローチャートである。第１の実施形態では、画像特徴量として画像の局所的な特徴量（局所特徴量）を用いる。まず、ステップＳ５０１で、処理対象の画像から輝度成分を抽出し、抽出した輝度成分に基づいて輝度成分画像を生成する。次にステップＳ５０２で、輝度成分画像を倍率（縮小率）ｐに従って順次縮小することを繰り返し、オリジナルのサイズの画像から段階的に縮小した、オリジナルの画像を含めてｎ枚の縮小画像を生成する。ここで、倍率ｐ及び縮小画像の枚数ｎは予め決められているものとする。
【００３２】
図６は、縮小画像生成処理の一例を示す図である。図６に示す例は、倍率ｐが「２の−（１／４）乗」、縮小画像の枚数ｎが「９」の場合である。もちろん、倍率ｐは必ずしも「２の−（１／４）乗」で無くとも良い。図６において、６０１はステップＳ５０１で生成された輝度成分画像である。６０２は当該輝度成分画像６０１から倍率ｐに従って再帰的に４回の縮小処理を行って得られた縮小画像である。そして、６０３は当該輝度成分画像６０１から倍率ｐに従って８回縮小された縮小画像である。
【００３３】
この例では、縮小画像６０２は輝度成分画像６０１が１／２に縮小された画像となり、縮小画像６０３は輝度成分画像６０１が１／４に縮小された画像となる。尚、画像を縮小する方法は何れの方法でも良く、第１の実施形態では、線形補間による縮小方法により縮小画像を生成するものとする。
【００３４】
次に、ステップＳ５０３では、ｎ枚の縮小画像の各々に画像の回転があってもロバスト（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.参照）。
【００３８】
具体的には、以下の式（１）により局所特徴量Ｖを算出する。
【数１】
2015203978.tif 000003
ただし、式（１）の右辺で用いている記号は、以下に示す式（２）から式（７）で定義される。ここで、式（２）右辺のＧ（ｘ，ｙ）はガウス関数、Ｉ（ｘ，ｙ）は画像の座標（ｘ，ｙ）における画素値であり、“＊”は畳み込み演算を表す記号である。また、式（３）は式（２）で定義された変数Ｌのｘに関する偏導関数、式（４）は当該変数Ｌのｙに関する偏導関数である。式（５）は式（３）で定義された変数Ｌｘのｙに関する偏導関数、式（６）は式（３）で定義された変数Ｌｘのｘに関する偏導関数、式（７）は式（４）で定義されたＬｙのｙに関する偏導関数である。
【数２】
2015203978.tif 000004
尚、局所特徴量を算出可能な方法であれば、上述したような特徴量算出方法に限らず、どのような特徴量算出方法でも適用可能である。
【００３９】
対象画像のすべての局所特徴点に対する局所特徴量をひとまとめにすることで画像特徴量群を得ることができる。
【００４０】
次に、ステップＳ５０５で、ステップＳ５０４で抽出した画像特徴量を量子化し、処理対象画像の量子化画像特徴量を生成する。
【００４１】
第１の実施形態で使用している画像特徴量、すなわち、Local Jetおよびそれらの導関数の組み合わせにより各局所特徴点から算出される局所特徴量は、Ｎ次元のベクトルである。ここでは、Ｎ次元のうちのｎ番目の次元の特徴量について、Ｋｎ階調に量子化を行う。ここで、ＮおよびＫｎはあらかじめ決められているものとする。
【００４２】
具体的には以下の式（８）により、量子化を行う。
Ｑn＝（Ｖn＊Ｋn）／（Ｖn_max−Ｖn_min＋１）    …（８）
ここで、Ｑnは、Ｎ次元のうちのｎ番目の次元の特徴量Ｖnを量子化した値である。Ｖn_maxとＶn_minそれぞれｎ番目の次元の特徴量の取りうる値の最大値、および、最小値である。
【００４３】
各次元の量子化値をひとまとめにすることで量子化画像特徴量を得ることができ、対象画像のすべての量子化画像特徴量をひとまとめにすることで量子化画像特徴量群を得ることができる。
【００４４】
尚、上記の量子化では、次元ごとに量子化階調数を定めているが、全次元、もしくは、いくつかの次元で共通の階調数にしてもよい。この量子化方法は、図７（ａ）に示すように、特徴量空間を格子状に分割する方法であるが、図７（ｂ）のような格子形状に分割してもよい。この図で、７０１の格子は特徴量空間における量子化領域、７０２は各特徴を表している。図７（ａ）、（ｂ）ともに、二次元の特徴量空間を量子化分割している例であるが、これを局所特徴量の次元数分の多次元に拡張した分割を行う。
【００４５】
また、特徴量空間を分割可能な方法であれば、上述したような規則に基づいて量子化する方法に限らずに、どのような分割方法でも適用可能である。例えば、複数の画像を機械学習させることによりクラスタリングのルールを作成し、そのルールに則って特徴量空間を分割し、量子化するようにしてもよい。
【００４６】
また、各次元についての量子化を行った後、以下の式（９）により、量子化値群のラベル化を行うことで、実質的に一次元の特徴量と同等に扱うことも可能である。
IDX＝Ｑ1+Ｑ2*Ｋ1+Ｑ3*Ｋ1*Ｋ2+…+Ｑn*Ｋ1*Ｋ2*…*Ｋn-1      …（９）
また、全次元の階調数が共通の場合は、以下の式（１０）により、量子化値群のラベル化が可能である。ここで、Ｋは階調数である。
【数３】
2015203978.tif 000005
尚、ラベル化可能な算出方法であれば、上述したような算出方法に限らずに、どのようなラベル化方法でも適用可能である。第１の実施形態では、ラベル化値ＩＤＸを特徴量ＩＤという。
【００４７】
以上、図４のステップＳ４０８の処理内容を説明した。次のステップＳ４０９では、画像検索部２０５において、画像特徴量算出部２０４で算出された画像特徴量を検索元とし、すでに登録されている画像特徴量との比較を行い、類似画像を検索する。そして、その結果をもとに、リンク情報登録部２０６、もしくは、画像特徴量登録部２０７で処理対象画像を登録する。
【００４８】
ここで、ステップＳ４０９における画像登録処理手順の一例を、図８のフローチャートを参照して説明する。
【００４９】
まず、ステップＳ８０１で、画像検索部２０５において、ステップＳ４０８で算出された画像特徴量を検索元とし、すでに登録されている基準画像の画像特徴量との比較を行い、類似する基準画像を検索する。類似基準画像検索処理では、登録済みの基準画像の画像特徴量との比較が行われ、類似度が算出される。そして、類似度の高い順にソートされた結果が得られる。この類似基準画像検索処理の詳細に関しては、後述する。
【００５０】
ステップＳ８０２で、所定類似度以上の検索結果が無い場合は、ステップＳ８０３に進み、処理対象画像の画像特徴量を登録する。つまり、処理対象画像を、新たな基準画像の１つとして登録する。
【００５１】
ここで、図９は、画像特徴量をデータベースに登録するときのスキーマ例である。これらは、例であり、違う型のスキーマであっても構わない。
【００５２】
図９（Ａ）は、画像ＩＤと基準画像ＩＤを関連付けるスキーマ例である。ここで、画像ＩＤは登録対象画像に付与されるＩＤである。また、基準画像ＩＤは、登録対象画像が割り付け画像のとき、ページごとに分割した基準画像それぞれに対して付与されるＩＤである。登録対象画像が割り付け画像でないときは、登録対象画像に対して基準画像ＩＤが付与される。本スキーマでは、更に、登録される画像のどの領域が基準画像なのかを領域情報として記憶する。領域情報としては、例えば、左上座標、右下座標の画素値を記憶する。基準画像ＩＤ、画像ＩＤは、登録される画像の枚数にもよるが、それぞれ８バイトの型を用いて記憶される。領域情報は、２バイトの型の４つの値を用いて記憶される。したがって、１枚の基準画像を登録するにあたり、２４バイトの記憶領域を必要とする。ただし、この記憶サイズは、一例であり、この値に限定するものではない。
【００５３】
図９（Ｂ）は、特徴量ＩＤと基準画像ＩＤを関連付けるスキーマ例である。ここで、特徴量ＩＤは画像特徴量をラベル化したときのラベル値である。複数の基準画像から、同じ特徴量ＩＤになる画像特徴量が算出されることがあるため、１つの特徴量ＩＤに対し、複数の基準画像ＩＤが関連付けられることがある。本スキーマでは、更に、特徴点の座標の画素値を記憶する。１枚の基準画像から、同じ特徴量ＩＤになる画像特徴量が算出されることがあり、その場合は、それらの特徴点座標をリストとし、そのリスト自体をリストとして保持する。また、画像特徴量の値も記憶する。特徴量ＩＤ、基準画像ＩＤは、それぞれ８バイトの型を用いて記憶される。特徴点座標は、２バイトの型の２つの値を用いて記憶される。ここでは１２８次元の倍精度小数型で表される画像特徴量を想定しており、８バイトの型の１２８個の値を用いて記憶される。したがって、１点の特徴点を登録するにあたり、約１キロバイトの記憶領域を必要とする。１枚の基準画像から数１０００点の特徴点が抽出されることが一般的である。ここで、１枚の基準画像から抽出される特徴点の数を３０００点とすると、１枚の基準画像を登録するにあたり、約３メガバイトの記憶領域を必要とする。もちろん、主成分分析等により画像特徴量の次元数を減らしたり、倍精度小数型を用いる代わりに固定小数型を用いたりすることにより、記憶領域を小さくすることは可能である。
【００５４】
図８のフローに戻り、ステップＳ８０２で、所定類似度以上の検索結果がある場合は、ステップＳ８０４に進む。ステップＳ８０４では、処理対象画像と検索結果画像の一致領域を特定する。一致領域特定処理では、図１０の例で示すように、処理対象画像における一致領域の包含割合ＲＱと場所、および、検索結果画像における一致領域の包含割合ＲＳと場所が得られる。
【００５５】
図１０（Ａ）〜（Ｄ）は処理対象画像と検索結果画像との関係を示している。同図（Ａ）乃至（Ｄ）の左側の符号１００乃至１０３が処理対象画像の例を示し、右側の符号１１０乃至１１３が検索結果画像の例を示してる。各図において、太線の矩形で囲まれた範囲が、一致領域とその場所を示している。点線で一致領域の位置を対応付けて表している。また、各画像の横に記載しているＲＱで始まる数値（％）が、処理対象画像における一致領域の割合を示し、ＲＳで始まる数値が検索結果画像における一致領域の割合を示している。１００％は、一致領域が、該当する画像全体であることを表している。
【００５６】
処理対象画像と検索結果画像の一致領域の関係としては、図１０（Ａ）の関係のようにほぼ全面一致している場合、図１０（Ｂ）の関係のように処理対象画像が検索結果画像を包含している場合がある。また、図１０（Ｃ）や、図１０（Ｄ）の関係のように処理対象画像が検索結果画像の一部になっている場合がある。ここで、図１０（Ｃ）の検索結果画像１１２は２ページ分を包含しているものであり、本来、ページ単位で登録されるべき画像である。本画像は、登録時のステップＳ４０２において、何らかの影響により、割り付け画像と判断されないまま登録されてしまった画像ということになる。この一致領域特定処理の詳細に関しては、後述する。
【００５７】
ステップＳ８０５では、処理対象画像における一致領域の包含割合ＲＱと検索結果画像における一致領域の包含割合ＲＳを比較し、ほぼ同じ割合であればステップＳ８０６へ進む。ここで、ほぼ同じ割合とは、ＲＱに対し例えば±１０％程度のマージンをもたせた範囲内にＲＳが収まっていることとする。ここで、１０％のマージンの値は一例であり、この値は実験により求めるようにしてもよいし、システム管理者が設定できるようにしても良い。ＲＱとＲＳがほぼ同じ割合のときは、処理対象画像と検索結果画像が同じ画像であると考えることができる。したがって、ステップＳ８０６では、処理対象画像から検索結果画像へのリンク情報を登録する。ここでは、新たに画像特徴量を登録するのではなく、すでに登録されている画像特徴量と同じであるという情報のみを登録する。
【００５８】
一例として、処理対象画像の画像ＩＤが５で、検索結果基準画像ＩＤが１であったとする。この場合、図９（Ａ）に示した画像ＩＤと基準画像ＩＤとを管理するテーブルは、図１１に示すように更新あれる。すなわち、図１１のように、基準画像ＩＤが“１”のレコード中の、「画像ＩＤ」フィールドに“５”を挿入（追加）し、領域情報に処理対象画像の一致領域の座標情報を挿入する。１枚の基準画像を登録するにあたって必要な記憶容量は、画像ＩＤの８バイトと領域情報の８バイトの合計１６バイトのみである。画像特徴量を登録する場合は、約３メガバイトの記憶領域を必要としていたため、大幅な削減が可能であることがわかる。
【００５９】
ステップＳ８０５で、ＲＱとＲＳの値がほぼ同じでない場合はステップＳ８０７へ進む。ステップＳ８０７で、ＲＱがＲＳよりも小さい場合は、ステップＳ８０３に進み、処理対象画像の画像特徴量を登録する。ＲＱがＲＳよりも小さい場合とは、図１０（Ｂ）のように、処理対象画像が検索結果画像を包含している場合である。
【００６０】
ステップＳ８０７で、ＲＱがＲＳよりも大きい場合は、ステップＳ８０８に進む。ＲＱがＲＳよりも大きい場合は、図１０（Ｃ）や（Ｄ）のように、検索結果画像が処理対象画像を包含している場合である。ここで、図１０（Ｃ）は、割り付け画像の１ページであり、図１０（Ｄ）は割り付け画像の１ページではなく、単に検索結果画像の一部分である。ステップＳ８０８では、処理対象画像がこれらのどちらであるか、すなわち、検索結果画像が割り付け画像であるかどうかの判定を行う。更に、検索結果画像が割り付け画像である場合は、割り付け数、および、割り付け位置を取得する。
【００６１】
図１２は、ステップＳ８０８における検索結果画像の割り付け画像判定処理手順の一例を示すフローチャートである。
【００６２】
まず、ステップＳ１２０１で、ＲＳ／ＲＱの値により割り付け数候補を取得する。ここでは、図３（Ｂ）〜（Ｇ）で示した、２ページ、４ページ、６ページ、８ページ、９ページ、１６ページの割り付け画像を例に説明する。図１３は、割り付け画像に関しての情報をまとめた表である。図１３の表中の割合は、割り付けることによる各ページの縮小率である。回転は、割り付ける際に９０度回転させるかどうかであり、Ｙｅｓは回転させることを示しており、Ｎｏは回転させないことを示している。回転させる場合は、割り付ける画像の向きと、割り付けた画像の向きが９０度回転した状態になる。中心ｘ座標、中心ｙ座標は、割り付けたページの中心のｘ座標、ｙ座標を幅もしくは高さを１としたときの割合で示したものである。中心ｘ座標のうちのいずれか１つと中心ｙ座標のうちのいずれか１つを組み合わせた座標が、割り付けたページの中心座標となる。
【００６３】
ステップＳ１２０１では、ＲＳ／ＲＱの値が、図１３の表の割合とほぼ同じ値の割り付け数を割り付け数候補とする。ここで、ほぼ同じ値とは、図１３の表の割合に対し例えば±１０％程度のマージンを持たせた範囲内にＲＳ／ＲＱの値が収まっていることとする。ここで、１０％のマージンの値は一例であり、この値は実験により求めるようにしてもよい。また、割り付け数ごとにマージンの値を変えるようにしてもよい。この時点では、複数の候補が存在することもある。
【００６４】
次に、ステップＳ１２０２で、割り付け数候補が無い場合は、ステップＳ１２０３に進み、検索結果画像は割り付け画像ではないと判定する。ステップＳ１２０２で、割り付け数候補がある場合は、ステップＳ１２０４に進む。
【００６５】
ステップＳ１２０４では、処理対象画像と検索結果画像の向き、すなわち、縦長画像であるか横長画像であるか、により割り付け数候補を絞る。画像の向きが同じ場合は、図１３の表の回転がＮｏである割り付け数のみを割り付け数候補に残し、それ以外は割り付け数候補から除く。画像の向きが異なる場合は、図１３の表の回転がＹｅｓである割り付け数のみを割り付け数候補に残し、それ以外は割り付け数候補から除く。
【００６６】
次に、ステップＳ１２０５で、割り付け数候補が無い場合は、ステップＳ１２０３に進み、検索結果画像は割り付け画像ではないと判定する。ステップＳ１２０５で、割り付け数候補がある場合は、ステップＳ１２０６に進む。
【００６７】
ステップＳ１２０６では、処理対象画像における一致領域を処理対象画像全体に広げたときの領域に対応する、検索結果画像における領域を求め、その領域の中心座標を取得する。図１４の処理対象画像１４００の中の細い線１４０１で囲った領域が一致領域であり、この領域を太い線で囲った画像全体の領域に広げることを考える。そのとき、検索結果画像１４１０の中の細い線１４１１で囲った一致領域を、同じ方向に同じ割合だけ広げることで、処理対象画像の全体の領域に対応する検索結果画像の領域を得ることができる。そして、その領域の中心座標を取得する。
【００６８】
ステップＳ１２０７では、検索結果画像の領域の中心座標により割り付け数候補を絞る。すなわち、図１３の表の中心ｘ座標、および、中心ｙ座標のいずれかが、検索結果画像の領域の中心座標とほぼ同じ値である割り付け数のみを割り付け数候補に残し、それ以外は割り付け数候補から除く。
【００６９】
ステップＳ１２０８で、割り付け数候補が無い場合は、ステップＳ１２０３に進み、検索結果画像は割り付け画像ではないと判定する。ステップＳ１２０８で、割り付け数候補がある場合は、ステップＳ１２０９に進み、検索結果画像は割り付け画像であると判定する。更に、ステップＳ１２０７において、どの中心ｘ座標、中心ｙ座標とほぼ同じであったかにより、包含位置、すなわち、割り付け位置を取得する。
【００７０】
以上で、ステップＳ８０８における検索結果画像の割り付け画像判定処理は終了である。
【００７１】
図８のフローに戻り、ステップＳ８０９では、検索結果画像が割り付け画像でない場合は、ステップＳ８０３に進み、処理対象画像の画像特徴量を登録する。検索結果画像が割り付け画像の場合は、ステップＳ８１０に進み、検索結果画像を割り付け方法に沿って分割した状態で再登録する。
【００７２】
図１５は、ステップＳ８１０における検索結果画像の分割再登録処理手順の一例を示すフローチャートである。以下、同図に従い、ステップＳ８１０の詳細を説明する。まず、ステップＳ１５０１で、検索結果画像の割り付け数をＫに、登録済みの基準画像ＩＤの最大数をＮに代入する。次にステップＳ１５０２で、基準画像ＩＤと画像ＩＤとの関連付けテーブルを参照し、検索結果画像の基準画像ＩＤから画像ＩＤ、領域情報を取得する。ステップＳ１５０３では、割り付け数によってあらかじめ定められている割り付け方法にしたがって、得られた領域情報をＫ個に分割する。
【００７３】
次に、ステップＳ１５０４で、基準画像ＩＤと画像ＩＤとの関連付けテーブルに対し、Ｎ＋１からＮ＋Ｋの基準画像ＩＤを追加する。さらに、それらの基準画像ＩＤに対し、ステップＳ１５０２で得られた画像ＩＤとステップＳ１５０３で得られたＫ分割した領域情報を関連付けて登録する。ステップＳ１５０５では、基準画像ＩＤと画像ＩＤとの関連付けテーブルから、検索結果画像の基準画像ＩＤを削除する。
【００７４】
ステップＳ１５０６で、特徴量ＩＤと基準画像ＩＤとの関連付けテーブルを参照し、検索結果画像の基準画像ＩＤの特徴点座標を取得する。次にステップＳ１５０７では、ステップＳ１５０６で得られた特徴点座標が、Ｋ分割した領域のうちどの領域に含まれるのかを求め、対応する基準画像ＩＤを取得する。そして、検索結果画像の基準画像ＩＤを、Ｋ分割後の基準画像ＩＤに書き換える。
【００７５】
図８のフローに戻り、ステップＳ８１１で、検索結果画像を割り付け分割した複数の画像のうち、処理対象画像から該当する分割画像へのリンク情報を登録する。ステップＳ８１１の処理は、ステップＳ８０６の処理と同等である。このステップＳ８１０、Ｓ８１１の処理により、割り付け画像が何らかの原因で基準画像として一旦は登録されたとしても、その割り付け画像に含まれる１ページの画像が処理対象として入力された場合、割り付け画像に含まれていた各ページが、基準画像として再登録されることになる。
【００７６】
ここで、ステップＳ８１０およびＳ８１１の処理を具体例を用いて説明する。図９の状態から追加登録する場合について説明する。ここでは、処理対象画像と検索結果画像との関係が図１０（Ｃ）であったとする。そして、処理対象画像の画像ＩＤは５とし、検索結果画像の画像ＩＤは４とする。図１０（Ｃ）に示すように、検索結果画像は２ページの割り付け画像であり、その左側半分が処理対象画像と一致している。検索結果画像に対しては１枚の基準画像（基準画像ＩＤは５）が登録されていたので、これを２枚の基準画像として登録しなおす。登録済みの最大基準画像ＩＤは５だったとすると、左側ページを基準画像ＩＤの６、右側ページを基準画像ＩＤの７として登録する。図１６（Ａ），（Ｂ）に分割再登録後の各テーブルの状態を示す。
【００７７】
図１６（Ａ）の基準画像ＩＤと画像ＩＤとの関連付けに対しては、基準画像ＩＤの６と７を追加し、基準画像ＩＤの５に登録されていた画像ＩＤの４を挿入する。更に、基準画像ＩＤが６の行に対しては基準画像ＩＤの５に登録されていた画像ＩＤが４の領域情報の左側の領域情報を、基準画像ＩＤが７の行に対しては右側の領域情報を、それぞれの領域情報として挿入する。基準画像ＩＤが５の行については、削除する。さらに、処理対象画像のリンク情報を追加する。すなわち、基準画像ＩＤが６の行の画像ＩＤに５を挿入し、領域情報に処理対象画像の座標情報を挿入する。
【００７８】
図１６（Ｂ）の特徴量ＩＤと基準画像ＩＤとの関連付けに対しては、基準画像ＩＤの５が登録されている特徴量ＩＤを検索する。図９（Ｂ）から、特徴量ＩＤの１と４が取得される。そして、それらの特徴点の座標情報を取得する。特徴量ＩＤの１に登録されている特徴点の座標は、検索結果画像の左側ページ内に存在する点であることがわかるので、基準画像ＩＤを５から６に変更する。特徴量ＩＤの４に登録されている特徴点の座標は、検索結果画像の右側ページ内に存在する点であることがわかるので、基準画像ＩＤを５から７に変更する。
【００７９】
以上で、図４のステップＳ４０９における画像登録処理は終了である。次に、図４のフローに戻り、ステップＳ４１０にて、入力画像が割り付け画像でない場合は、第１の実施形態の登録処理を終了する。入力画像が割り付け画像の場合は、ステップＳ４１１に進む。
【００８０】
ステップＳ４１１ですべての画像の処理が終了した場合は、第１の実施形態の画像登録処理を終了する。すべての画像の処理が終了していない場合は、ステップＳ４１２で次の領域の画像を処理対象画像に設定し、ステップＳ４０８以降の処理を繰り返す。
【００８１】
［類似基準画像検索処理］
ここで、図８のステップＳ８０１の類似基準画像検索処理の詳細について、図１７のフローチャートを用いて説明する。ここで説明する検索処理方式は、投票方式ともいわれる方式である。
【００８２】
まず、ステップＳ１７０１で、登録されている基準画像数分の投票箱を用意する。技術的には、ＲＡＭ上に、各基準画像用の投票数を格納するための変数を確保する処理である。
【００８３】
次に、ステップＳ１７０２で、すべての投票箱の投票数を０でリセットする。ステップＳ１７０３では、カウンタｋを１でリセットする。ステップＳ１７０４では、処理対象画像のｋ番目の特徴量ＩＤを取得し、ステップＳ１７０５で特徴量ＩＤのｋに登録されている基準画像ＩＤリストを取得する。ステップＳ１７０６で、基準画像ＩＤリスト中のすべての基準画像ＩＤの投票箱に、投票を行う。投票を行う際の投票数は、常に１にしてもよいし、特徴量の類似度をもとにした投票数にしてもよい。また、特徴点の座標をもとにした投票数にしてもよい。
【００８４】
ステップＳ１７０７で、カウンタｋに１を加える（インクリメント）。ステップＳ１７０８で、カウンタｋが処理対象画像の特徴点数以下である場合はステップＳ１７０４に戻り、特徴点数を超えた場合はステップＳ１７０９に進む。最後に、ステップＳ１７０９で、投票数の多い順にソートする。
【００８５】
なお、特徴量を量子化した際に、特徴量は類似していても、量子化値が異なる場合がある。その場合は、特徴量ＩＤが異なってしまう。その対策として、ステップＳ１７０５において、特徴量ＩＤのｋに登録されている基準画像ＩＤリストを取得するだけでなく、特徴量ＩＤのｋと類似度が高い特徴量ＩＤに登録されている基準画像ＩＤも取得する。そして、ステップＳ１７０６で、それらすべての基準画像ＩＤに投票するという方式が採られることもある。
【００８６】
［一致領域特定処理］
ここで、図８のステップＳ８０４の一致領域特定処理の詳細について、図１８のフローチャートを用いて説明する。
【００８７】
まず、ステップＳ１８０１で、比較元画像の特徴点に対して最も特徴量間距離が短い比較先画像の特徴点を対応点とし、それらのリストを最短距離対応点リストとして作成する。具体的には、比較元画像のある特徴点の特徴量と比較先画像のすべての特徴量との特徴量間距離を計算する。その中で、最も短い距離が閾値Ｔｖ以内であれば、比較先画像の特徴点ＩＤと最も近い距離になった比較先画像の特徴点ＩＤとを最短距離対応点とし、最短距離対応点リストに登録する。その際、それらの特徴点の座標、特徴量間距離も合わせて登録する。比較元画像のすべての特徴点に対してこの処理を行うことにより、最短距離対応点リストが作成できる。最短距離対応点リストのスキーマは、例えば図１９のように、比較元画像の特徴点ＩＤとその座標、比較先画像の特徴点ＩＤとその座標からなる。ただし、必ずしも１つのスキーマにこれらの項目がある必要はなく、複数のスキーマの結合により、これらの情報が得られれば良い。
【００８８】
これ以降、最短距離対応点リストにはｍ組の最短距離対応点が登録されたとして説明する。また、最短距離対応点リストに登録されたｋ番目の対応点について、比較元画像、比較先画像の特徴点ＩＤをそれぞれＱｋ、Ｓｋと表し、それらの特徴点座標をそれぞれ（ｘ’ｋ，ｙ’ｋ）、（ｘｋ，ｙｋ）と表す。
【００８９】
次に、ステップＳ１８０２では、ステップＳ１８０１で作成された最短距離対応点リストの中から、実際の画像上で正しい対応点と推測される対応点のみを選別し、正対応点リストを作成する。１枚の画像の中には、類似する特徴量も存在する。したがって、特徴量間距離が最短であるというだけで対応付けた対応点、すなわち、ステップＳ１８０１で作成された対応点の中には、実際の画像上では正しく対応した点ではない点が含まれる。本処理では、複数の特徴点の位置関係を用いることにより、正しい対応点と推測される対応点を選別する。
【００９０】
図２０は、ステップＳ１８０２における正対応点リストの作成処理手順の一例を示すフローチャートである。ここで説明する方式は、ＲＡＮＳＡＣ（ＲＡＮｄｏｍ  ＳＡｍｐｌｅ  Ｃｏｎｓｅｎｓｕｓ）といわれる方式である。
【００９１】
まず、ステップＳ２００１で、最終投票数を表す変数ＶｏｔｅＭａｘを０に初期化する。次に、ステップＳ２００２で、類似度算出処理の反復カウント数を表す変数Ｃｏｕｎｔを０に初期化する。
【００９２】
ステップＳ２００３で、反復カウント数Ｃｏｕｎｔが最大反復処理回数Ｒｎを超えていない場合はステップＳ２００４へ進み、投票数を表す変数Ｖｏｔｅを０に初期化する。次に、ステップＳ２００５で、当該最短距離対応点リストから対応点の組をランダムに２組抽出する。ここでは、最短距離対応点リストのｉ番目の対応点とｊ番目の対応点を抽出した場合を説明する。ｉ番目の対応点の特徴点ＩＤは、ＱｉとＳｉであり、それらの座標はそれぞれ（ｘ’ ｉ，ｙ’ ｉ）、（ｘｉ，ｙｉ）である。また、ｊ番目の対応点の特徴点ＩＤは、ＱｊとＳｊであり、それらの座標はそれぞれ（ｘ’ ｊ，ｙ’ ｊ）、（ｘｊ，ｙｊ）である。
【００９３】
次に、ステップＳ２００６で、抽出したＱｉ（ｘ’ｉ，ｙ’ ｉ）、Ｓｉ（ｘｉ，ｙｉ）及びＱｊ（ｘ’ｊ，ｙ’ｊ）、Ｓｊ（ｘｊ，ｙｊ）が式（１１）に示す変換を満たしていると仮定し、式（１１）中の変数ａ〜ｆを求める。
【００９４】
ただし、図２０に示すステップＳ２００６では、変数ａ〜ｄで構成される行列をＭで示し、変数ｅ〜ｆで構成される行列をＴで示している。
【数４】
2015203978.tif 000006
ここで、第１の実施形態では、簡略化のため、相似変換だけを考える。このとき、上記式（１１）は以下の式（１２）のように書き換えられる。
【数５】
2015203978.tif 000007
このとき、変数ａ、ｂ、ｅ、ｆはｘ’ｉ、ｙ’ｉ、ｘｉ、ｙｉ、ｘ’ｊ、ｙ’ｊ、ｘｊ、ｙｊを使って式（１３）から式（１６）で表される。
【数６】
2015203978.tif 000008
【００９５】
次に、ステップＳ２００７で、対応点選択変数ｋを１で初期化する。ステップＳ２００８では、上述のステップＳ２００５で当該最短距離対応点リストからランダムに抽出された２組の点以外の点を選択するために、ｋがｉでもｊでもないかを判定する。ｋがｉかｊのときは、ステップＳ２０１５に進み、ｋをインクリメントした後、ステップＳ２００８に戻る。ｋがｉでもｊでもないときは、ステップＳ２００９に進み、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えていないかを判定する。ここで、超えている場合はステップＳ２０１６へ処理を移すが、これについては後述する。ステップＳ２００９における判定で対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えていない場合はステップＳ２０１０へ処理を移す。このステップＳ２０１０では、上述のステップＳ２００６で当該最短距離対応点リストからランダムに抽出した２組の点Ｓｉ及びＳｊ以外の点を当該最短距離対応点リストから抽出する。第一の実施形態では、抽出された点をＳｋとし、Ｓｋの座標は（ｘｋ，ｙｋ）とする。
【００９６】
次にステップＳ２０１１で、Ｓｋの座標（ｘｋ，ｙｋ）が式（１２）を使って移される点Ｓ’ｋの座標（ｕｋ，ｖｋ）を求める。
【００９７】
その後、ステップＳ２０１２では、Ｓ’ｋの座標（ｕｋ，ｖｋ）とＱｋの座標（ｘ’ｋ，ｙ’ｋ）との幾何学的距離をユークリッド距離で計算し、当該ユークリッド距離がしきい値Ｔｄ以下であるか否かを判定する。当該ユークリッド距離がしきい値Ｔｄ以下の場合はステップＳ２０１３へ進み２つの画像の対応点情報を仮正対応点リストに記憶し、ステップＳ２０１４で投票数Ｖｏｔｅをインクリメントし、ステップＳ２０１５へ処理を移す。また、当該ユークリッド距離がしきい値Ｔｄより大きい場合は、何もせずにステップＳ２０１５へ処理を移す。このステップＳ２０１５では、対応点選択変数ｋをインクリメントし、ステップＳ２００８に戻り、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えるまで、上述の処理を繰り返す。
【００９８】
次に、ステップＳ２００９で、対応点選択変数ｋが当該最短距離対応点リストに登録されている対応点の組数ｍを超えた場合の処理であるステップＳ２０１６を説明する。ステップＳ２０１６では、投票数Ｖｏｔｅの値と最終投票数ＶｏｔｅＭａｘの値とを比較し、投票数Ｖｏｔｅの値が最終投票数ＶｏｔｅＭａｘの値よりも大きい場合にはステップＳ２０１７へ処理を移す。このステップＳ２０１７では、最終投票数ＶｏｔｅＭａｘの値を投票数Ｖｏｔｅの値で置き換え、次のステップＳ２０１８で、正対応点リストを仮正対応点リストで置き換える。その後、ステップＳ２０１９で反復カウント数Ｃｏｕｎｔをインクリメントし、上述のステップＳ２００３に処理を戻す。
【００９９】
また、ステップＳ２０１６で、投票数Ｖｏｔｅの値が最終投票数ＶｏｔｅＭａｘの値以下の場合にはステップＳ２０１９へ処理を移し、反復カウント数Ｃｏｕｎｔをインクリメントし、上述のステップＳ２００３に処理を戻す。
【０１００】
次に、ステップＳ２００３で、反復カウント数Ｃｏｕｎｔが予め定められた最大反復処理回数Ｒｎを超えている場合はステップＳ２０２０へ進み、最終投票数ＶｏｔｅＭａｘ、正対応点リストを出力し、この処理を終了する。
【０１０１】
尚、第１の実施形態における類似度の算出方法の説明では、相似変換だけを考えて説明したが、アフィン変換などその他の幾何学変換についても、ステップＳ２００６でそれぞれに応じた変換行列を求めることにより、対応可能である。例えば、アフィン変換の場合には、まずステップＳ２００５で、ランダムに選択する対応点の組の座標数を３とする。次に、ステップＳ２００６で、式（１２）ではなく式（１１）を使うこととし、ステップＳ２００５で選択した３組の対応点（合計６点）を使って変数ａ〜ｆを求めれば良い。
【０１０２】
以上で、図１８のステップＳ１８０２における正対応点リスト作成処理は終了である。次に図１８のフローに戻り、ステップＳ１８０３で、正対応点リストの特徴点の座標をもとに、処理対象画像、および、検索結果画像の最外接矩形を求める。正対応点リストの各特徴点のｘ座標、ｙ座標それぞれの最小値、最大値を求める。（ｘ座標の最小値，ｙ座標の最小値）と（ｘ座標の最大値，ｙ座標の最大値）の２点で囲まれた矩形を最外接矩形とする。
【０１０３】
次に、ステップＳ１８０４で、最外接矩形の面積を画像全面の面積で割ることにより、処理対象画像における一致領域の包含割合ＲＱ、および、検索結果画像における一致領域の包含割合ＲＳを求める。
【０１０４】
［検索処理］
図２１は、第１の実施形態の画像処理装置における検索処理手順の一例を示すフローチャートである。
【０１０５】
まず、ステップＳ２１０１において、画像入力部２０１を介して検索元画像（クエリ画像）が入力される。ステップＳ２１０２では、画像特徴量算出部２０４において、検索元画像の画像特徴量を抽出する。ステップＳ２１０２の画像特徴量抽出処理は、図４のステップ３０８における処理と同じである。
【０１０６】
次に、ステップＳ２１０３で、画像検索部２０５において、ステップＳ２１０２で算出された画像特徴量を検索元とし、すでに登録されている基準画像の画像特徴量との比較を行い、類似する基準画像を検索する。ステップＳ２１０３の類似基準画像検索処理は、図８のステップＳ８０１における処理と同じである。類似基準画像検索処理では、登録済みの基準画像の画像特徴量との比較が行われ、類似度が算出される。そして、類似度の高い順にソートされた結果が得られる。
【０１０７】
次に、ステップＳ２１０４で、画像検索部２０５において、ステップＳ２１０３で検索された基準画像ＩＤに対応した画像ＩＤを取得する。図９（Ａ）や図１１、図１６（Ａ）に示すように、基準画像ＩＤに対して、複数の画像ＩＤが関連付けられて登録されており、基準画像ＩＤに対応した画像ＩＤをすべて取得する。
【０１０８】
最後に、ステップＳ２１０５において、ステップＳ２１０４で取得した画像を類似度とともに表示する。
【０１０９】
上記例では、基準画像に対応する画像の類似度を同じ値で表示しているが、領域情報をもとに、類似度を調整してもよい。例えば、ステップＳ２１０３で検索された基準画像ＩＤに対して登録されている画像ＩＤを取得する際、領域情報をもとに、該画像ＩＤの画像における基準画像の包含割合を求める。そして、包含割合をもとに類似度の調整を行い、再度類似度でソートした結果を検索結果として出力するようにしてもよい。また、基準画像ごとに特徴点数を記憶しておき、その特徴点数をもとに、類似度の調整を行うようにしてもよい。
【０１１０】
また、上記例では、検索結果として検索結果画像と類似度を表示するとしているが、領域情報をもとに、どの領域が検索元画像と同じ領域であったかを表示するようにしてもよい。
【０１１１】
以上のように第１の実施形態では、登録する画像が割り付け画像であるかどうかを判定し、割り付け画像の場合は、割りつけられた元の画像（基準画像）ごとに登録するようにした。その際、登録する基準画像がすでに登録されている基準画像と類似する場合は、すでに登録されている基準画像へのリンク情報を登録するようにした。これにより、同じ画像を複数回登録する場合に、検索結果に影響を与えずに、少ない記憶領域で登録することが可能となる。また、割り付け枚数の異なる画像同士であっても、ページ単位のリンク情報で登録することにより、少ない記憶領域で登録することが可能となる。
【０１１２】
［第２の実施形態］
以下、第２の実施形態を説明する。上記の第１の実施形態では、画像登録時の処理である図４のステップＳ４０２において、プリンタドライバの設定情報や、プリンタや複合機などの機器の操作情報をもとに、入力画像の割り付け画像判定を行った。第２の実施形態では、入力された画像を解析（像域分離）することにより、割り付け画像判定を行う例を説明する。
【０１１３】
図２２は、第２の実施形態の画像処理装置における入力画像の割り付け画像判定処理手順の一例を示すフローチャートである。
【０１１４】
まず、ステップＳ２２０１で、入力画像を解析し、像域分離処理（又は、矩形領域決定処理）を行う。像域分離処理とは、例えば、図２３における画像２３０１を２３０２に示すように、意味のある領域毎の塊として認識する。そして、該領域各々の属性（テキスト（ＴＥＸＴ）／図画（ＰＩＣＴＵＲＥ）／写真（ＰＨＯＴＯ）／線（ＬＩＮＥ）／表（ＴＡＢＬＥ）等）を判定し、異なる属性を持つ領域に分割する処理である。
【０１１５】
ここで、像域分離処理の一実施例について詳細に説明する。まず、入力画像を白黒画像に２値化し、これで得られる２値画像中の輪郭線追跡を行って黒画素輪郭で囲まれる画素が連続する塊を抽出する。そして、面積の大きい黒画素の塊については、内部にある白画素に対しても輪郭線追跡を行って白画素の塊を抽出し、さらに一定面積以上の白画素の塊の内部からは再帰的に黒画素の塊を抽出する。
【０１１６】
このようにして得られた黒画素の塊に外接する矩形領域を、その大きさ及び形状で分類し、異なる属性を持つ領域へ分類する。例えば、縦横比が１に近く、大きさが一定の範囲の領域は文字相当の画素塊とし、近接する文字が整列している場合にはそれらを連結してグループ化し、そのグループ化した矩形領域をテキスト領域とする。文字領域意外の画素塊について、扁平な画素塊を線領域、一定大きさ以上でかつ矩形の白画素塊を整列よく内包する黒画素塊の占める範囲を表領域、不定形の画素塊が散在している領域を写真領域、それ以外の任意形状の画素塊を図画領域とする。
【０１１７】
次にステップＳ２２０２で、像域分離した領域をもとに、割り付け数候補を求める。まず、あらかじめ定められている分割方法で入力画像を分割できるか考える。図２４で一例を示す。図２４（Ａ）は、像域分離した状態の図である。図２４（Ｂ）〜（Ｇ）は、それぞれ順番に、画像を２〜１６分割した分割位置を破線（２５０１等）で示した図であり、これらの情報は予めハードディスクなどの記憶装置に記憶されているものとする。ここでは、この線のことを、分割線（ページ境界位置でもある）という。このとき、像域分離した領域が、分割線をまたいでいるかどうか（ページを跨いでいるかどうか）を調べる。この図により、同図（Ｂ）、（Ｃ）は領域が分割線をまたいでいないことがわかる。また、同図（Ｄ）〜（Ｇ）は領域が分割線をまたいでいることがわかる。したがって、この例では、｛２、４｝を割り付け数の候補とする。
【０１１８】
次に、ステップＳ２２０３で、割り付け数候補が無い場合は、ステップＳ２２０４に進み、割り付け画像ではないと判定し、処理を終了する。ステップＳ２２０３で、割り付け数候補がある場合は、ステップＳ２２０５に進み、割り付け画像であると判定する。そして、ステップＳ２２０６で、割り付け数候補のうち最大の数を割り付け数とし、処理を終了する。上記の例の場合、割り付け数候補が｛２、４｝であったので、大きい方の「４」が最終的な割り付け数であると判定する。
【０１１９】
以上のように第２の実施形態では、入力された画像を解析（像域分離）することにより、処理対象画像に含まれるページ数判定が可能となる。これにより、プリンタドライバの設定情報や、機器の操作情報が無い場合であっても、入力画像の割り付け画像判定を行うことができ、基準画像ごとの登録が可能となる。
【０１２０】
［第３の実施形態］
以下、第３の実施形態を説明する。上記第１、第２の実施形態では、入力画像として、文書画像の割り付け画像を想定している。第３の実施形態は、割り付け画像ではなく、１ページ文書に複数の画像が貼り付けられている画像が入力されたときの例である。ここでいう画像とは、自然画のみを対象としてもよいし、ドローや線画なども対象としてもよい。また、テキストの画像も対象としてもよい。この場合は、貼り付けられている画像ごとに登録を行う。
【０１２１】
図２５は、第３の実施形態の画像処理装置における登録処理手順の一例を示すフローチャートである。本フローは、図４のフローと類似しており、図４のフローと同じ処理を行う箇所については、同じステップ番号を振っている。ここでは、処理の異なる箇所のみの説明を行う。
【０１２２】
ステップＳ２５０２では、入力画像の像域分離処理を行う。像域分離処理は、図２２のステップＳ２２０１と同じである。ステップＳ２５０３、および、ステップＳ２５１０は、複数の領域があると判定されたか否かで分岐を行う。ステップＳ２５０５は領域数Ｎを取得し、ステップＳ２５０６で領域分割を行う。ここでいう領域分割は、ステップＳ２５０２で求められた領域を抽出する処理を行う。ステップＳ２５０９では、処理対象画像の登録処理を行う。
【０１２３】
図２６は、ステップＳ２５０９における画像登録処理手順の一例を示すフローチャートである。本フローは、図８のフローを類似しており、図８のフローと同じ処理を行う箇所については、同じステップ番号を振っている。ここでは、処理の異なる箇所のみの説明を行う。
【０１２４】
ステップＳ２６０５で、処理対象画像における一致領域の包含割合ＲＱと検索結果画像における一致領域の包含割合ＲＳを比較し、ほぼ同じではない、と判定された場合、ステップＳ８０３に進み、処理対象画像の画像特徴量を登録する。図８のステップＳ８０７〜Ｓ８１１相当の処理は行わない。
【０１２５】
以上のように第３の実施形態では、１ページ文書に複数の画像が貼り付けられている場合、貼り付けられている画像（基準画像）ごとに登録を行うようにした。その際、登録する基準画像がすでに登録されている基準画像と類似する場合は、すでに登録されている基準画像へのリンク情報を登録するようにした。これにより、同じ画像が異なる文書に貼り付けられている場合であっても、画像単位のリンク情報で登録することにより、少ない記憶領域で登録することが可能となる。
【０１２６】
（その他の実施形態）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【０１２７】
２０１…画像入力部、２０２…割り付け画像判定部、２０３…領域分割部、２０４…画像特徴量算出部、２０５…画像検索部、２０６…リンク情報登録部、２０７…画像特徴量登録部、２０８…記憶部
【図１】
2015203978.tif 000009
【図２】
2015203978.tif 000010
【図３】
2015203978.tif 000011
【図４】
2015203978.tif 000012
【図５】
2015203978.tif 000013
【図６】
2015203978.tif 000014
【図７】
2015203978.tif 000015
【図８】
2015203978.tif 000016
【図９】
2015203978.tif 000017
【図１０】
2015203978.tif 000018
【図１１】
2015203978.tif 000019
【図１２】
2015203978.tif 000020
【図１３】
2015203978.tif 000021
【図１４】
2015203978.tif 000022
【図１５】
2015203978.tif 000023
【図１６】
2015203978.tif 000024
【図１７】
2015203978.tif 000025
【図１８】
2015203978.tif 000026
【図１９】
2015203978.tif 000027
【図２０】
2015203978.tif 000028
【図２１】
2015203978.tif 000029
【図２２】
2015203978.tif 000030
【図２３】
2015203978.tif 000031
【図２４】
2015203978.tif 000032
【図２５】
2015203978.tif 000033
【図２６】
2015203978.tif 000034