(57)【要約】【課題】効率良くヒストグラムインターセクション演算を行って、品質の低下を招くことなくデータ照合処理および類似データ検索処理を高速化する。【解決手段】第１の並び替え部１２により、クエリ画像ＶＷヒストグラムのビンを頻度値の降順に並び替え、ビン番号変換テーブル生成部１３Ａにより、クエリ画像ＶＷヒストグラムのビンが並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成し、第２の並び替え部１４により、対照画像ＶＷヒストグラムのビンを並び替え、ヒストグラムインターセクション演算部１５Ａにより、並び替えられたクエリ画像ＶＷヒストグラムの最大頻度値を持つビンから順番に、並び替えられた対照画像ＶＷヒストグラムのビンとのヒストグラムインターセクション演算を行い、ヒストグラムインターセクションのスコア値を算出する。【選択図】図１
2016057996.tif 000002
【特許請求の範囲】
【請求項１】
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算手段と、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御手段と、
を備えたヒストグラムインターセクション演算装置。
【請求項２】
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える第１の並び替え手段と、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビンが、並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成するビン番号変換テーブル生成手段と、
前記対照データのヒストグラムのビンを、前記ビン番号変換テーブル生成手段により生成された前記ビン番号変換テーブルに従い並び替える第２の並び替え手段と、
を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記第１の並び替え手段により並び替えられた前記クエリデータの最大頻度値のヒストグラムのビンから順番に、当該クエリデータのビン番号の頻度値と、前記第２の並び替え手段により並び替えられた対照データのビン番号の頻度値と、を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
【請求項３】
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える第１の並び替え手段と、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビンが、並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成するビン番号変換テーブル生成手段と、
を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムの最大頻度値のビンから順番に、前記クエリデータのヒストグラムの該ビン番号の頻度値と、前記ビン番号変換テーブルで該ビン番号に対応する並び替え前ビン番号の前記対照データのヒストグラムの頻度値と、を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
【請求項４】
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替え、且つ該ヒストグラムの頻度値が零のビン番号を除いたときのビン番号の数列に対して、１から始まり１ずつ増加するシーケンシャル番号を割り振った演算順序テーブルを生成する演算順序テーブル生成手段を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記演算順序テーブルのシーケンシャル番号の順に、該シーケンシャル番号に対応するビン番号の前記クエリデータのヒストグラムおよび前記対照データのヒストグラムのそれぞれの頻度値を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
【請求項５】
請求項１乃至請求項４の何れか１項に記載のヒストグラムインターセクション演算装置を含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合装置であって、
前記ヒストグラムインターセクション演算装置により演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶手段と、
前記ヒストグラムインターセクション演算装置がヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高くなるか否かを判定する判定手段と、を備え、
前記判定手段により、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とするデータ照合装置。
【請求項６】
前記判定手段は、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビン番号毎に、或いは、前記演算順序テーブルのビン番号に応じた前記クエリデータのヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成する積算ヒストグラム生成手段と、
当該ビン番号における前記ヒストグラムインターセクション演算装置により演算されたスコア値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した加算値を算出する加算手段と、を備え、
前記加算手段により算出された加算値が、前記ベストスコア値記憶手段に記憶されているスコア値より低い場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とする請求項５に記載のデータ照合装置。
【請求項７】
前記判定手段は、
前記ヒストグラムインターセクション演算手段による最終的なスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高い場合、前記ベストスコア値記憶手段に記憶されているスコア値を更新することを特徴とする請求項６に記載のデータ照合装置。
【請求項８】
前記判定手段は、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビン番号毎に、或いは、前記演算順序テーブルのビン番号に応じた前記クエリデータのヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成する積算ヒストグラム生成手段と、
当該ビン番号における前記ヒストグラムインターセクション演算装置により演算された値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した加算値を算出する加算手段と、を備え、
前記加算手段により算出された加算値が、所定の値より低い場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とする請求項５に記載のデータ照合装置。
【請求項９】
請求項５に記載のデータ照合装置を含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索装置であって、
前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力手段を備え、
前記類似データ出力手段は、前記ベストスコア値記憶手段に記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力することを特徴とする類似データ検索装置。
【請求項１０】
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算ステップと、
前記ヒストグラムインターセクション演算ステップによるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御ステップと、
を含むヒストグラムインターセクション演算方法。
【請求項１１】
請求項１０に記載のヒストグラムインターセクション演算方法を含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合方法であって、
前記ヒストグラムインターセクション演算方法により演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶ステップと、
前記ヒストグラムインターセクション演算方法でヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶ステップにより記憶されているスコア値より高くなるか否かを判定するスコア値判定ステップと、を含み、
前記スコア値判定ステップにより、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶ステップにより記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算方法によるヒストグラムインターセクションの演算を中止することを特徴とするデータ照合方法。
【請求項１２】
請求項１１に記載のデータ照合方法を含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索方法であって、
前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力ステップを含み、
前記類似データ出力ステップは、前記ベストスコア値記憶ステップにより記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力することを特徴とする類似データ検索方法。
【請求項１３】
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算機能と、
前記ヒストグラムインターセクション演算機能によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御機能と、
を実現させることを特徴とするヒストグラムインターセクション演算のプログラム。
【請求項１４】
請求項１３に記載のヒストグラムインターセクション演算のプログラムを含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合のプログラムであって、
前記ヒストグラムインターセクション演算のプログラムにより演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶機能と、
前記ヒストグラムインターセクション演算のプログラムでヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶機能により記憶されているスコア値より高くなるか否かを判定するスコア値判定機能と、を実現させ、
前記スコア値判定機能により、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶機能により記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算のプログラムによるヒストグラムインターセクションの演算を中止することを特徴とするデータ照合のプログラム。
【請求項１５】
請求項１４に記載のデータ照合のプログラムを含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索のプログラムであって、
前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力機能を実現させ、
前記類似データ出力機能は、前記ベストスコア値記憶機能により記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力することを特徴とする類似データ検索のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ヒストグラムインターセクション演算装置、方法およびプログラム、データ照合装置、方法およびプログラム、ならびに、類似データ検索装置、方法およびプログラムに関する。
【背景技術】
【０００２】
近年、文章をベクトル表現する方法として、語順を無視して単語の出現頻度ベクトルで文章を表現するBag-of-Words（BoW）表現が言語処理や情報検索等の分野で用いられている。また他方で、画像処理やマルチメディア検索等の分野でも、画像をベクトル表現する方法として、これとまったく同様に、画像における各特徴点（即ち、visual words；画像から多数抽出される局所特徴ベクトルをベクトル量子化したときの代表ベクトル）の位置を無視して、visual wordsをBag-of-Words化したBag-of-Features（BoF）表現が用いられている。
【０００３】
このように、Bag-of-Words（BoW）表現およびBag-of-Features（BoF）表現は、分野が異なっても同等の表現法として扱うことができるが、本明細書では、本発明を画像関連分野に適用した例を代表的に扱うこととし、以下の説明でもBag-of-Features（BoF）表現を代表的に扱う。
【０００４】
このBag-of-Features（BoF）表現では、画像から抽出された局所特徴量の分布をvisual wordsのヒストグラムで表現している。例えば、画像におけるvisual wordsの出現回数をカウントしてヒストグラムを作成して、これをBoFベクトルとするものである。
【０００５】
また、画像等のデータ照合処理や類似データ検索処理では、クエリ画像と対照画像の対比が行われる。この場合、画像のヒストグラム比較の一手法として、非特許文献１で提案された、ヒストグラムの交差（Intersection）を演算（以下では、ヒストグラムインターセクション演算という）して比較する手法が知られている。このヒストグラムインターセクション演算は、クエリ画像と対照画像の双方のヒストグラムの対応する各ビンの頻度値で小さい方を足し合わせたものをスコア値とし、該スコア値が大きいほど両者の類似度が高いとするものである。
【０００６】
なお、１枚の画像から多数抽出される局所特徴ベクトルをベクトル量子化し、代表ベクトルであるvisual wordsに置き換えて対応点の検索を行う手法は、Sivic, J.らが、ビデオ映像から視点の異なる同一シーンを検索可能なシステム“Video Google” を提案（非特許文献２参照）した際に用いたものである。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】Swain, M. J. and Ballard, D. H.: Color Indexing, International Journal of Computer Vision, ７（１）, pp.１１-３２, （１９９１）.
【非特許文献２】Sivic, J. and Zisserman, A.: Video Google: A Text Retrieval Approach to Object Matching in Videos, Proc. of IEEE International Conference on Computer Vision, pp.１４７０-１４７７, （２００３）.
【発明の概要】
【発明が解決しようとする課題】
【０００８】
また、非特許文献２では、visual wordsの考え方を導入することで、クエリ画像と同一物体を含む画像や映像の検索が、テキスト検索と同様に転置インデックスを用いて高速に実行可能であることが示されている。
【０００９】
大量のデータを扱う画像等のデータ照合処理や類似データ検索処理では、非特許文献２のように、処理の高速化のために検索対象の画像等のデータ群の圧縮などを行うことが一般的に行われているが、その場合、意図しない画像等が検索結果として得られることが往々にしてある。つまり、従来のデータ照合処理および類似データ検索処理においては、処理時間（応答時間）が処理結果の品質とトレードオフの関係にあるという側面があった。
【００１０】
本発明はこのような事情に鑑みなされたものであり、効率良くヒストグラムインターセクション演算を行って、品質の低下を招くことなくデータ照合処理および類似データ検索処理を高速化し得るヒストグラムインターセクション演算装置、方法およびプログラム、データ照合装置、方法およびプログラム、ならびに、類似データ検索装置、方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、上記の目的を達成するために以下の構成によって把握される。
（１）本発明のヒストグラムインターセクション演算装置は、クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算手段と、前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御手段と、を備える。
【００１２】
（２）本発明のデータ照合装置は、上記（１）のヒストグラムインターセクション演算装置を含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合装置であって、前記ヒストグラムインターセクション演算装置により演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶手段と、前記ヒストグラムインターセクション演算装置がヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高くなるか否かを判定する判定手段と、を備え、前記判定手段により、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止する。
【００１３】
（３）本発明の類似データ検索装置は、上記（２）に記載のデータ照合装置を含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索装置であって、前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力手段を備え、前記類似データ出力手段は、前記ベストスコア値記憶手段に記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力する。
【００１４】
（４）本発明のヒストグラムインターセクション演算方法は、クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算ステップと、前記ヒストグラムインターセクション演算ステップによるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御ステップと、を含む。
【００１５】
（５）本発明のデータ照合方法は、上記（４）のヒストグラムインターセクション演算方法を含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合方法であって、前記ヒストグラムインターセクション演算方法により演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶ステップと、前記ヒストグラムインターセクション演算方法でヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶ステップにより記憶されているスコア値より高くなるか否かを判定するスコア値判定ステップと、を含み、前記スコア値判定ステップにより、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶ステップにより記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算方法によるヒストグラムインターセクションの演算を中止する。
【００１６】
（６）本発明の類似データ検索方法は、上記（５）に記載のデータ照合方法を含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索方法であって、前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力ステップを含み、前記類似データ出力ステップは、前記ベストスコア値記憶ステップにより記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力する。
【００１７】
（７）本発明のヒストグラムインターセクション演算のプログラムは、クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算機能と、前記ヒストグラムインターセクション演算機能によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御機能と、を実現させる。
【００１８】
（８）本発明のデータ照合のプログラムは、上記（７）に記載のヒストグラムインターセクション演算のプログラムを含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合のプログラムであって、前記ヒストグラムインターセクション演算のプログラムにより演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶機能と、前記ヒストグラムインターセクション演算のプログラムでヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶機能により記憶されているスコア値より高くなるか否かを判定するスコア値判定機能と、を実現させ、前記スコア値判定機能により、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶機能により記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算のプログラムによるヒストグラムインターセクションの演算を中止する。
【００１９】
（９）本発明の類似データ検索のプログラムは、上記（８）に記載のデータ照合のプログラムを含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索のプログラムであって、前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力機能を実現させ、前記類似データ出力機能は、前記ベストスコア値記憶機能により記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力する。
【発明の効果】
【００２０】
本発明によれば、効率良くヒストグラムインターセクション演算を行って、品質の低下を招くことなくデータ照合処理および類似データ検索処理を高速化し得るヒストグラムインターセクション演算装置、方法およびプログラム、データ照合装置、方法およびプログラム、ならびに、類似データ検索装置、方法およびプログラムを提供することができる。
【図面の簡単な説明】
【００２１】
【図１】第１実施形態に係るヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置を含む類似画像データ検索システムの構成を例示する構成図である。
【図２】第１実施形態の類似画像データ検索システムの全体的な動作を説明ずるフローチャートである。
【図３】ヒストグラムインターセクション演算に関して第１実施形態のヒストグラムインターセクション演算装置およびデータ照合装置で行われる動作を説明ずるフローチャートである。
【図４】クエリ画像の具体例として、（ａ）並べ替え前のクエリ画像ＶＷヒストグラム、（ｂ）並び替え後のクエリ画像ＶＷヒストグラム、（ｃ）ビン番号変換テーブル、および（ｄ）クエリ画像ＶＷ積算ヒストグラムをそれぞれ例示する説明図である。
【図５】対照画像の具体例として、（ａ）並べ替え前の対照画像ＶＷヒストグラム、（ｂ）並び替え後の対照画像ＶＷヒストグラム、（ｃ）関数「min」が返す値、および（ｄ）ＭＩＮ積算値をそれぞれ例示する説明図である。
【図６】第２実施形態に係るヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置を含む類似画像データ検索システムの構成を例示する構成図である。
【図７】ヒストグラムインターセクション演算に関して第２実施形態のヒストグラムインターセクション演算装置およびデータ照合装置で行われる動作を説明ずるフローチャートである。
【図８】第３実施形態に係るヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置を含む類似画像データ検索システムの構成を例示する構成図である。
【図９】第３実施形態の類似画像データ検索システムの全体的な動作を説明ずるフローチャートである。
【図１０】ヒストグラムインターセクション演算に関して第３実施形態のヒストグラムインターセクション演算装置およびデータ照合装置で行われる動作を説明ずるフローチャートである。
【図１１】演算順序テーブルを例示する説明図である。
【発明を実施するための形態】
【００２２】
以下、添付図面を参照して、本発明を実施するための形態について、第１実施形態、第２実施形態、第３実施形態の順に詳細に説明する。なお、各実施形態の説明を通して同一要素には同一参照符号を付している。
【００２３】
（第１実施形態）
図１は、第１実施形態に係るヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置を含む類似画像データ検索システムの構成を例示する構成図である。本実施形態の類似画像データ検索システムは、クエリ画像が与えられたときに、画像データベース５を検索して該クエリ画像に類似した画像を返すものである。
【００２４】
図１において、本実施形態のヒストグラムインターセクション演算装置は、前処理部１１、第１の並び替え部１２、ビン番号変換テーブル生成部１３Ａ、第２の並び替え部１４、ヒストグラムインターセクション演算部１５Ａおよび演算制御部１６Ａを含む演算ユニット１Ａと、記憶部４と、を備える。ここで、記憶部４には、演算ユニット１Ａがアクセスする記憶部４の記憶領域として、クエリ画像データが保存されるクエリ画像データ記憶領域４１、クエリ画像のヒストグラムが保存されるクエリ画像ＶＷヒストグラム記憶領域４２、ビン番号変換テーブル生成部１３Ａが生成するビン番号変換テーブルが保存されるビン番号変換テーブル記憶領域４３Ａ、並びに、対照画像のヒストグラムが保存される対照画像ＶＷヒストグラム記憶領域４４がある。
【００２５】
また、本実施形態のデータ照合装置は、上記ヒストグラムインターセクション演算装置と、積算ヒストグラム生成部２１、加算部２２、判定部２３および照合制御部２４を含む照合ユニット２と、記憶部４と、を備える。ここで、記憶部４には、照合ユニット２がアクセスする記憶部４の記憶領域として、積算ヒストグラム生成部２１が生成する積算ヒストグラムが保存されるクエリ画像ＶＷ積算ヒストグラム記憶領域４５、および、判定部２３が判定に用いるベストスコア値が保存されるベストスコア値記憶領域４６がある。
【００２６】
また、本実施形態の類似データ検索装置は、上記データ照合装置と、類似データ出力部３１および検索制御部３２を含む検索ユニット３と、記憶部４と、を備える。
なお、記憶部４は、ヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置で共用される構成である。また、より具体的には、演算ユニット１Ａ、照合ユニット２および検索ユニット３は、１または複数個のＣＰＵまたはＭＰＵ等で具現され、各ユニットが備える構成要素は、該ＣＰＵまたはＭＰＵ上で実行されるプログラムの機能的まとまりとして具体化される。
【００２７】
さらに、類似画像データ検索システムは、上記類似データ検索装置の構成に、画像データベース５およびＶＷ辞書６が加わった構成である。
ここで、演算ユニット１Ａ、照合ユニット２、検索ユニット３、記憶部４、画像データベース５およびＶＷ辞書６は、データバス及び各種制御信号群を含むシステムバス９を介してバス接続されている。また、図１には示さないが、類似画像データ検索システムは、クエリ画像を当該類似画像データ検索システムに入力し、検索結果を出力する入出力部や、ユーザとのインタフェースを司るユーザインタフェース部を備えているものとする。
【００２８】
画像データベース５には、検索対象となる複数の対照画像データが保持されている。ここで、対照画像データは、visual wordsをBag-of-Words化したBag-of-Features（BoF）表現が用いられており、該画像から抽出された局所特徴量の分布がvisual wordsのヒストグラムで表現された対照画像ＶＷヒストグラムである。
また、ＶＷ辞書６は、画像データベース５に含まれる複数の対照画像が持つvisual wordsの全てが登録された辞書である。
【００２９】
次に、ヒストグラムインターセクション演算を実行する演算ユニット１Ａの各構成要素について説明する。
まず前処理部１１は、入力されたクエリ画像について、画像グリッド位置から等間隔に画像パッチ情報（特徴ベクトル）を取得し、ＶＷ辞書６を参照して各画像パッチがどのVisual wordsに属するのかを調べることによりクエリ画像ＶＷヒストグラムを作成し、クエリ画像ＶＷヒストグラム記憶領域４２に保存する。なお、この時点では、クエリ画像ＶＷヒストグラムのビン番号の並びは画像データベース５に保持されている対照画像ＶＷヒストグラムと同一である。
【００３０】
また、第１の並び替え部１２は、クエリ画像ＶＷヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える。これにより、クエリ画像ＶＷヒストグラム記憶領域４２のクエリ画像ＶＷヒストグラムは、降順に書き替えられる。
【００３１】
また、ビン番号変換テーブル生成部１３Ａは、第１の並び替え部１２により並び替えられたクエリ画像ＶＷヒストグラムのビンが、並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成し、ビン番号変換テーブル記憶領域４３Ａに保存する。ビン番号変換テーブルは、並び替え後のビン番号と並び替え前のビン番号との対応表となるが、並び替え前のクエリ画像ＶＷヒストグラムで頻度値が非零のビンについての対応関係のみ構成し、零のビンについての対応関係はビン番号変換テーブルに構成しない。
【００３２】
ここで、ヒストグラムインターセクション演算では、関数「min」が用いられ、関数「min」が返す値を順次積算してＭＩＮ積算値を得るが、関数「min」が対比する２つの値の内の一方が零である場合には関数が返す値も零となって、その演算結果としてのＭＩＮ積算値は変わらない。したがって、関数「min」が対比する２つの値の内の一方が零である場合には、ヒストグラムインターセクション演算を省略しても問題がない。そこで、本実施形態の演算高速化手法は、並び替え前のクエリ画像ＶＷヒストグラムで頻度値が零のビンをビン番号変換テーブルから除外することにより、演算結果に影響を与えることなくヒストグラムインターセクション演算の対象から除外して、演算回数をより少なく抑えようとするものである。
【００３３】
この結果、演算結果に影響を与えることなく、１つの対照画像についてのデータ照合のために必要なヒストグラムインターセクション演算は、ビン番号変換テーブルの項数（即ち並び替え後のビン番号の最大値）をＰmaxとすると、演算回数（Ｐmax）まで抑えることが可能である。
【００３４】
また、第２の並び替え部１４は、検索対象となる対照画像の対照画像ＶＷヒストグラムを画像データベース５から取得して対照画像ＶＷヒストグラム記憶領域４４に保存し、対照画像ＶＷヒストグラムのビンを、ビン番号変換テーブルに従って並び替える。これにより、対照画像ＶＷヒストグラム記憶領域４４の対照画像ＶＷヒストグラムのビン番号の並びは、クエリ画像ＶＷヒストグラム記憶領域４２のクエリ画像ＶＷヒストグラムのビン番号の並びと同一となる。
【００３５】
ここで、第２の並び替え部１４による対照画像ＶＷヒストグラムの並び替えの際に、第２の並び替え部１４は全てのビンの頻度値について参照することが可能であるが、並び替え後の全てのビン番号で頻度値が零である場合には、その対照画像とのデータ照合処理を打ち切って、別の対照画像とのデータ照合処理に移行するようにするのが望ましい。この場合、演算を行うまでもなくその対照画像との類似度は零であるので、データ照合の対象から除外することにより、データ照合処理または類似検索処理全体の処理時間をより少なくすることができる。特に、クエリ画像の局所特徴量の分布が偏りを持つものである場合、このようなケースは往々にして発生し、データ照合の対象から除外することによる効果は大きいと考えられる。
【００３６】
また、ヒストグラムインターセクション演算部１５Ａは、第１の並び替え部１２により並び替えられたクエリ画像ＶＷヒストグラムの最大頻度値を持つビンから順番に、クエリ画像ＶＷヒストグラムの頻度値が零のビンになるまで、第２の並び替え部１４により並び替えられた対照画像ＶＷヒストグラムのビンとのヒストグラムインターセクション演算を行い、ヒストグラムインターセクションのスコア値（ＭＩＮ積算値）を算出する。
【００３７】
また、演算制御部１６Ａは、演算ユニット１Ａ内の他の構成要素の実行動作（開始、中止または終了など）を制御すると共に、類似画像データ検索システムの他の構成要素とのインタフェースを司る。
【００３８】
例えば、ヒストグラムインターセクション演算部１５Ａの演算については、演算制御部１６Ａが持つ変換後ポインタｐ（＝１〜Ｐmax）の値に沿った実行制御となる。すなわち、ヒストグラムインターセクション演算部１５Ａでは、変換後ポインタｐについて、クエリ画像ＶＷヒストグラムのビン番号ｐの頻度値ＨA（p）と、対照画像ＶＷヒストグラムのビン番号ｐの頻度値ＨB（p）とを用いて、ＭＩＮ積算値Ｄp（スコア値）が次式によって算出される。
Ｄp ＝ Ｄp-１ ＋ min（ＨA（p）， ＨB（p））                        （１）
ここで、Ｄp-１は変換後ポインタがｐ−１のときのＭＩＮ積算値である。
【００３９】
次に、演算ユニット１Ａと協調して、クエリ画像と複数の対照画像とのデータ照合を行なう照合ユニット２の各構成要素について説明する。
まず積算ヒストグラム生成部２１は、第１の並び替え部１２により並び替えられたクエリ画像ＶＷヒストグラムの第２ビン目以降について、ビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算したクエリ画像ＶＷ積算ヒストグラムを生成し、クエリ画像ＶＷ積算ヒストグラム記憶領域４５に保存する。
【００４０】
なお、後述するように、ヒストグラムインターセクション演算の中止判断が、予め設定されているパラメータＫを用いた制御により、Ｋ回の演算で１回だけ行われる場合には、パラメータＫの倍数に該当するビン番号についてのみ積算値を持つクエリ画像ＶＷ積算ヒストグラムとして良い。後の演算でパラメータＫの倍数に該当するビン番号以外の積算値が参照されることはないからである。これにより、積算演算を省略できると共に、クエリ画像ＶＷ積算ヒストグラム記憶領域４５を削減することができる。
【００４１】
また、加算部２２は、ヒストグラムインターセクション演算部１５Ａで演算されたスコア値（その時点でのビン番号（変換後ポインタｐの値）に応じたＭＩＮ積算値）と、積算ヒストグラム生成部２１により生成されたクエリ画像ＶＷ積算ヒストグラムの該ビン番号（変換後ポインタｐの値）における頻度値を加算した評価値Ｍulを算出する。
【００４２】
また、判定部２３は、加算部２２で算出した評価値Ｍulがベストスコア値記憶領域４６に記憶されているベストスコア値より低い場合に、ヒストグラムインターセクション演算部１５Ａの演算を中止する。この場合、照合制御部２４を介して演算制御部１６Ａに演算中止の旨が通知され、演算制御部１６Ａによってヒストグラムインターセクション演算部１５Ａの演算が中止されることとなる。
【００４３】
なお、ベストスコア値記憶領域４６には、例えば「ベスト１０」といったように、ヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までの複数のベストスコア値が登録される。例えば、類似画像検索の結果として、最もクエリ画像に類似する画像から類似度の順に複数の画像をユーザ提示するケースなどに適用される。この場合、登録可能数にベストスコア値の数が達するまでは、中止判定を行う（演算を中止する）ことなく処理が進められ、ベストスコア値が登録可能数分登録されて以降は、ベストスコア値の内の最下位（最小）のベストスコア値と比較して、中止か否かの判定が行われることになる。
【００４４】
また、ここで、評価値Ｍulが持つ意味について説明しておく。クエリ画像ＶＷ積算ヒストグラムの頻度値は、該ビン番号以降のクエリ画像ＶＷヒストグラムの頻度値を積算したものであるので、仮に、該ビン番号以降のヒストグラムインターセクション演算においてクエリ画像ＶＷヒストグラムの頻度値だけが関数「min」によって返される値であった場合に該当し、該ビン番号以降のヒストグラムインターセクション演算において、それ以外の値が返されるとすると、必ず、それよりも小さい値が返されることになる。このため、クエリ画像ＶＷ積算ヒストグラムの頻度値は、該ビン番号以降のヒストグラムインターセクション演算において関数「min」によって返される値の和の上限を意味している。したがって、ヒストグラムインターセクション演算部１５Ａで演算されたスコア値と、クエリ画像ＶＷ積算ヒストグラムの該ビン番号（変換後ポインタｐの値）における頻度値を加算した評価値Ｍulは、その後の演算によって算出され得るヒストグラムインターセクションの上限スコア値となる。
【００４５】
すなわち、ヒストグラムインターセクション演算の途中段階で、演算により算出され得るヒストグラムインターセクションの上限スコア値を算出して、該上限スコア値がベストスコア値より高くなるか否かを判定し、高くならないと判定された場合にはその対象画像のスコア値がベストスコア値記憶領域４６に登録される可能性はないので、ヒストグラムインターセクション演算を中止するものである。
このように、ベストスコア値より高くなる可能性のない対象画像についてのヒストグラムインターセクション演算を最後まで行うことなく、打ち切ることで演算回数を少なく抑えることが可能である。
【００４６】
なお、ヒストグラムインターセクション演算の中止判断は、必ずしも演算の段階（ビン番号）毎に行う必要はなく、パラメータＫを用いて、Ｋ回に１回行うように制御することも可能である。パラメータＫは、例えば、クエリ画像ＶＷヒストグラムのビン数、visual wordsの数、ベストスコア値記憶領域４６へのベストスコア値登録可能数、或いは、検索結果としてユーザに提示される画像数の最大値などに応じて、ユーザまたはシステムによって予め設定されることになる。
【００４７】
また、判定部２３における評価値Ｍulの評価を、ベストスコア値記憶領域４６に記憶されているベストスコア値と対比して行うのではなく、予め設定されている所定値と対比して行うようにしても良い。例えば、ユーザがクエリ画像と共に類似度を指定している場合には、クエリ画像ＶＷヒストグラムの総度数と該類似度とに応じた所定値をシステム側で設定し、評価値Ｍulと所定値とを比較してヒストグラムインターセクション演算の中止か否かの判定を行うようにする。
【００４８】
また、判定部２３は、ヒストグラムインターセクション演算部１５Ａによる最終的なスコア値がベストスコア値より高い場合には、ベストスコア値記憶領域４６に記憶されているベストスコア値を更新する。
【００４９】
つまり、判定部２３は、加算部２２で算出した評価値Ｍulがベストスコア値記憶領域４６に記憶されているベストスコア値より高い場合には、まず、変換後ポインタｐ（＝１〜Ｐmax）の値がＰmax以上であるか否かの判断を行って、並び替え後のクエリ画像ＶＷヒストグラムおよび対照画像ＶＷヒストグラムについて、全てのビン番号のヒストグラムインターセクション演算が終了したか否かを判断する。
【００５０】
そして、変換後ポインタｐ＝Ｐmaxで全てのビン番号の演算が終了している場合は、さらに、ヒストグラムインターセクション演算部１５Ａにより演算されているＭＩＮ積算値ＤPmaxを最終的なヒストグラムインターセクション演算によるスコア値として、ベストスコア値と比較する。最終的なスコア値がベストスコア値より高い場合には、現時点での照合対象である対照画像が、ベストスコア値記憶領域４６に登録されているものよりもクエリ画像に類似しているとして、ベストスコア値記憶領域４６のベストスコア値を最終的なスコア値で置き換えて更新する。
【００５１】
また、照合制御部２４は、照合ユニット２内の他の構成要素の実行動作（開始または終了など）を制御すると共に、類似画像データ検索システムの他の構成要素とのインタフェースを司る。
【００５２】
例えば、加算部２２の演算については、照合制御部２４が持つ演算制御部１６Ａと共通の変換後ポインタｐ（＝１〜Ｐmax）の値に沿った実行制御となる。すなわち、変換後ポインタｐについて、ＭＩＮ積算値Ｄpとクエリ画像ＶＷ積算ヒストグラムのビン番号ｐの頻度値ＨAs（p）とを加算して評価値Mulが算出される。
【００５３】
次に、演算ユニット１Ａおよび照合ユニット２と協調して、複数の対照画像の中からクエリ画像に類似する画像を検索する検索ユニット３の各構成要素について説明する。
まず類似データ出力部３１は、ベストスコア値記憶領域４６に記憶されているベストスコア値を算出した際の対照画像を、クエリ画像に類似する画像として出力する。
【００５４】
また、検索制御部３２は、類似データ出力部３１の実行動作を制御すると共に、類似画像データ検索システムの他の構成要素とのインタフェースを司る。
【００５５】
次に、以上説明した構成要素を備えるヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置の動作について、図２〜図５を参照して詳細に説明する。ここで、図２は、第１実施形態の類似画像データ検索システムの全体的な動作を説明ずるフローチャートであり、図３は、ヒストグラムインターセクション演算に関してヒストグラムインターセクション演算装置およびデータ照合装置で行われる動作を説明ずるフローチャートである。
【００５６】
また図４は、クエリ画像の具体例として、（ａ）並べ替え前のクエリ画像ＶＷヒストグラム、（ｂ）並び替え後のクエリ画像ＶＷヒストグラム、（ｃ）ビン番号変換テーブル、および（ｄ）クエリ画像ＶＷ積算ヒストグラムをそれぞれ例示する説明図である。また図５は、対照画像の具体例として、（ａ）並べ替え前の対照画像ＶＷヒストグラム、（ｂ）並び替え後の対照画像ＶＷヒストグラム、（ｃ）関数「min」が返す値、および（ｄ）ＭＩＮ積算値をそれぞれ例示する説明図である。なお、図４および図５で示される各具体例は、本実施形態におけるヒストグラムインターセクションの演算手法を分かりやすく説明するために、ヒストグラムのビン数を極めて少なくしたものであり、実際的なものでないことに留意すべきである。
【００５７】
図２において、まずステップＳ１では、入出力部（図示せず）を介してクエリ画像が入力され、記憶部４のクエリ画像データ記憶領域４１に保存される。
次に、ステップＳ２では、前処理部１１は、入力されたクエリ画像について、画像グリッド位置から等間隔に画像パッチ情報（特徴ベクトル）を取得する。
【００５８】
また、ステップＳ３では、前処理部１１は、ＶＷ辞書６を参照して各画像パッチがどのvisual wordsに属するのかを調べることによりクエリ画像ＶＷヒストグラムを作成し、クエリ画像ＶＷヒストグラム記憶領域４２に保存する。図４（ａ）に示す具体例では、ビン番号１、５、８、１１、１６について、それぞれ６、１０、８、５、２の頻度値を持ち、その他のビン番号については頻度値が零であるクエリ画像ＶＷヒストグラムが例示されている。なお、事前学習で、学習画像から各特徴ベクトルをクラスタリングして、各クラスタ中心がvisual wordsとして、ＶＷ辞書６に保存されている。
【００５９】
次に、ステップＳ５では、第１の並び替え部１２は、クエリ画像ＶＷヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える。具体例では、図４（ｂ）に示すように、ビン番号１〜５についてそれぞれ１０、８、６、５、２の頻度値を持ち、頻度値が降順に並び替えられたクエリ画像ＶＷヒストグラムが得られる。
【００６０】
また、この時、ビン番号変換テーブル生成部１３Ａは、第１の並び替え部１２により並び替えられたクエリ画像ＶＷヒストグラムのビンが、並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成し、ビン番号変換テーブル記憶領域４３Ａに保存する（ステップＳ４）。なお、ステップＳ４およびＳ５の処理順は、並び替え処理のアルゴリズムに応じて決められるものであり、何れが先であっても、或いは、両者を同時に並行して行うようにしても良い。
【００６１】
具体例では、ビン番号変換テーブル生成部１３Ａは図４（ｃ）に例示される如くなる。ビン番号変換テーブルの項数（並び替え後のビン番号の最大値）は５であり、クエリ画像と対照画像のデータ照合においてヒストグラムインターセクション演算が高々行われる演算回数（Ｐmax）は５となる。すなわち、クエリ画像ＶＷヒストグラムの頻度値が零のビンは１１個あり、ヒストグラムインターセクション演算の対象から除外されることになる。
【００６２】
次に、ステップＳ６では、積算ヒストグラム生成部２１は、第１の並び替え部１２により並び替えられたクエリ画像ＶＷヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算したクエリ画像ＶＷ積算ヒストグラムを生成し、クエリ画像ＶＷ積算ヒストグラム記憶領域４５に保存する。具体例では、クエリ画像ＶＷ積算ヒストグラムは図４（ｄ）に例示される如くなる。
【００６３】
そして、ステップＳ７のヒストグラムインターセクションを含む対照画像との照合処理に移行する。ステップＳ７の処理は、図３で示されるフローに展開される。
【００６４】
図３において、まず、ステップＳ１１では、演算制御部１６Ａおよび照合制御部２４は、変換後ポインタｐ（＝１〜Ｐmax）の値を初期値「１」に設定する。変換後ポインタｐは、図４（ｃ）に例示される如く、並び替え後のビン番号と同等であり、ヒストグラムインターセクション演算の実行順序を指し示すものである。
【００６５】
次に、ステップＳ１２では、第２の並び替え部１４は、検索対象となる対照画像の対照画像ＶＷヒストグラムを画像データベース５から取得して対照画像ＶＷヒストグラム記憶領域４４に保存し、対照画像ＶＷヒストグラムのビンを、ビン番号変換テーブル記憶領域４３Ａに保存されているビン番号変換テーブルに従い並び替える。
【００６６】
図５（ａ）に示す対照画像の第１具体例では、ビン番号１、３、５、１１、１６について、それぞれ５、８、４、７、３の頻度値を持ち、その他のビン番号については頻度値が零である対照画像ＶＷヒストグラムが例示されている。また、これを図４（ｃ）に示すビン番号変換テーブルに従って並び替えると、図５（ｂ）に示す如くなる。すなわち、並び替えられた対照画像ＶＷヒストグラムは、ビン番号１〜５についてそれぞれ４、０、５、７、３の頻度値を持つ。そして、並び替えられたクエリ画像ＶＷヒストグラムおよび対照画像ＶＷヒストグラムのビン番号１〜５について、それぞれヒストグラムインターセクション演算が実行されることになる。
【００６７】
ステップＳ１３では、ヒストグラムインターセクション演算部１５Ａは、クエリ画像ＶＷヒストグラムのビン番号ｐの頻度値ＨA（p）と、対照画像ＶＷヒストグラムのビン番号ｐの頻度値ＨB（p）とを用いて、ＭＩＮ積算値Ｄp（スコア値）を式（１）に基づき算出する。
【００６８】
具体例でこの演算をトレースすると、以下のようになる。すなわち、変換後ポインタｐ＝１のときには、クエリ画像ＶＷヒストグラムのビン番号１の頻度値ＨA（１）＝１０と、対照画像ＶＷヒストグラムのビン番号１の頻度値ＨB（１）＝４とについて、関数「min」が返す値はＨB（１）＝４であり、ＭＩＮ積算値Ｄ１＝４となる。また、変換後ポインタｐ＝２のときには、ＨA（２）＝８と頻度値ＨB（２）＝０について関数「min」が返す値はＨB（２）＝０であり、ＭＩＮ積算値Ｄ２＝４となる。また、変換後ポインタｐ＝３のときには、ＨA（３）＝６と頻度値ＨB（３）＝５について関数「min」が返す値はＨB（３）＝５であり、ＭＩＮ積算値Ｄ３＝９となる。また、変換後ポインタｐ＝４のときには、ＨA（４）＝５と頻度値ＨB（４）＝７について関数「min」が返す値はＨA（４）＝５であり、ＭＩＮ積算値Ｄ４＝１４となる。さらに、変換後ポインタｐ＝５のときには、ＨA（５）＝２と頻度値ＨB（５）＝３について関数「min」が返す値はＨA（５）＝２であり、ＭＩＮ積算値Ｄ５＝１６となる。つまり、この具体例の対照画像について、最終的なスコア値は１６である。
上記で示した関数「min」が返す値の推移は、図５（ｃ）、ＭＩＮ積算値Ｄp（スコア値）の推移は、図５（ｄ）に示す通りである。
【００６９】
次に、ステップＳ１４では、照合制御部２４は、変換後ポインタｐがＫの倍数であるか否かを判断する。ここでパラメータＫは、続くステップＳ１５およびＳ１６の処理をＫ回に１回行うように制御するものであり、１以上の正整数値がユーザまたはシステムにより予め設定されている。
【００７０】
次に、ステップＳ１５では、加算部２２は、ビン番号ｐに応じたＭＩＮ積算値Ｄp（ヒストグラムインターセクション演算部１５Ａで演算されたスコア値）と、クエリ画像ＶＷ積算ヒストグラムの該ビン番号ｐにおける頻度値ＨAs（p）と、を加算して、評価値Ｍulを算出する。
【００７１】
具体例で変換後ポインタｐ毎の評価値Ｍulを算出すると、以下のようになる。すなわち、変換後ポインタｐ＝１のときには、ＭＩＮ積算値Ｄ１＝４とクエリ画像ＶＷ積算ヒストグラムのビン番号１における頻度値ＨAs（１）＝２１とを加算すると、評価値Ｍulは２５となる。また、変換後ポインタｐ＝２のときには、ＭＩＮ積算値Ｄ２＝４と頻度値ＨAs（２）＝１３が加算されて、評価値Ｍulは１７となる。また、変換後ポインタｐ＝３のときには、ＭＩＮ積算値Ｄ３＝９と頻度値ＨAs（３）＝７が加算されて、評価値Ｍulは１６となる。さらに、変換後ポインタｐ＝４のときには、ＭＩＮ積算値Ｄ４＝１４と頻度値ＨAs（４）＝２が加算されて、評価値Ｍulは１６となる。
上述した通り、評価値Ｍulは、今後の演算を進めたときの上限値であるので、演算が進むごとに最終的な真値に近づくように、順次減少して最終的には、図５（ｄ）のＭＩＮ積算値Ｄ５＝１６に一致していることがわかる。
【００７２】
このように、評価値Ｍulが順次減少して最終的なスコア値に近づいていくという特性は、クエリ画像ＶＷヒストグラムを降順に並べ替えていることに起因している。後述のように、本実施形態では、この評価値Ｍulとベストスコア値との比較に基づきヒストグラムインターセクション演算の中止判断を行うが、評価値Ｍulに順次減少していく特性を持たせることにより、結果的に中止判定がなされる対照画像について、より早い段階での中止判断ができるようになる。換言すれば、クエリ画像ＶＷヒストグラムの降順での並べ替えは、より早い段階での中止判断を可能とし、演算を省略して処理の高速化に寄与しているということができる。
【００７３】
次に、ステップＳ１６では、判定部２３は、ステップＳ１５で算出した評価値Ｍulを、ベストスコア値記憶領域４６に記憶されているベストスコア値と比較する。ステップＳ１６での比較の結果、評価値Ｍulがベストスコア値より低い場合には、ヒストグラムインターセクション演算部１５Ａの演算を中止して、対照画像との照合処理（ステップＳ７）を終了する。
【００７４】
また、判定部２３は、ステップＳ１６での比較の結果、評価値Ｍulがベストスコア値より高い場合には、ステップＳ１７に進んで、変換後ポインタｐの値がＰmax以上であるか否かの判断を行う。変換後ポインタｐの値がＰmax未満であるときは、並び替え後のクエリ画像ＶＷヒストグラムおよび対照画像ＶＷヒストグラムについて、全てのビン番号のヒストグラムインターセクション演算が終了しておらず、ステップＳ１８で変換後ポインタｐをインクリメントした後、ステップＳ１３に戻る。
【００７５】
ステップＳ１７において、変換後ポインタｐ＝Ｐmaxとなって全てのビン番号の演算が終了している場合には、ステップＳ１９に進む。この場合、判定部２３は、ヒストグラムインターセクション演算部１５Ａにより演算されているＭＩＮ積算値ＤPmaxを最終的なヒストグラムインターセクション演算によるスコア値として、ベストスコア値と比較する。そして、最終的なスコア値がベストスコア値より高い場合には、ベストスコア値記憶領域４６のベストスコア値を最終的なスコア値に置き換えて更新する。
【００７６】
以上説明したように、本実施形態のヒストグラムインターセクション演算装置、方法およびプログラムでは、第１の並び替え部１２により、クエリ画像ＶＷヒストグラムのビンをヒストグラムの頻度値の降順に並び替え、ビン番号変換テーブル生成部１３Ａにより、並び替えられたクエリ画像ＶＷヒストグラムのビンが並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成し、第２の並び替え部１４により、対照画像ＶＷヒストグラムのビンをビン番号変換テーブルに従って並び替え、ヒストグラムインターセクション演算部１５Ａにより、並び替えられたクエリ画像ＶＷヒストグラムの最大頻度値を持つビンから順番に、クエリ画像ＶＷヒストグラムの頻度値が零のビンになるまで、並び替えられた対照画像ＶＷヒストグラムのビンとのヒストグラムインターセクション演算を行い、ヒストグラムインターセクションのスコア値（ＭＩＮ積算値）を算出する。
【００７７】
本実施形態のヒストグラムインターセクション演算装置、方法およびプログラムでは、並び替え前後のビン番号の対応関係を示すビン番号変換テーブルを生成する際に、並び替え前のクエリ画像ＶＷヒストグラムで頻度値が零のビンを除外するので、演算結果に影響を与えることなくヒストグラムインターセクション演算の対象から頻度値が零のビンを除外して、演算回数をより少なくすることができ、ヒストグラムインターセクション演算の高速化を図ることができる。
【００７８】
また、本実施形態のデータ照合装置、方法およびプログラムでは、ベストスコア値記憶領域４６に、ヒストグラムインターセクション演算装置により演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までが記憶され、判定部２３により、ヒストグラムインターセクション演算装置がヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、ベストスコア値記憶領域４６に記憶されているベストスコア値より高くなるか否かを判定し、演算により算出されるヒストグラムインターセクションのスコア値がスコア値より高くならないと判定された場合には、ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止する。
【００７９】
このように、本実施形態のデータ照合装置、方法およびプログラムでは、ヒストグラムインターセクション演算により算出され得る上限スコア値が、ベストスコア値記憶領域４６に記憶されているベストスコア値より高くならないと判定された場合には、ヒストグラムインターセクション演算を中止して、最終的に類似画像として採用される可能性のない対照画像との照合処理をヒストグラムインターセクション演算の途中段階で打ち切るので、無駄となる演算を省略して、データ照合処理の高速化を図ることができる。
【００８０】
つまり、データ照合装置が、ヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までの対照画像を、データ照合処理の結果として求めるものである場合に、最終的にベストスコア値記憶領域４６にスコア値が残らない対照画像については、ヒストグラムインターセクション演算の途中段階でその旨を判断して、それ以降のヒストグラムインターセクション演算を省略することができるので、全体的なヒストグラムインターセクション演算回数を削減して、結果としてデータ照合処理の高速化を図ることができる。
【００８１】
また、本実施形態のデータ照合装置では、積算ヒストグラム生成部２１により、並び替えられたクエリ画像ＶＷヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成し、加算部２２により、ヒストグラムインターセクション演算装置により演算されたスコア値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した評価値（加算値）を算出し、該評価値がベストスコア値記憶領域４６に記憶されているベストスコア値より低い場合には、ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止する。或いは、該評価値が所定の値より低い場合、ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止する。
【００８２】
すなわち、ヒストグラムインターセクション演算により算出され得る上限スコア値として評価値（加算値）を算出し、該評価値がベストスコア値または所定の値より低い場合に、ヒストグラムインターセクションの演算を中止するので、全体的なヒストグラムインターセクション演算回数を削減して、データ照合処理の高速化を図ることができる。
【００８３】
また、本実施形態の類似データ検索装置、方法およびプログラムでは、類似データ出力部３１により、複数の対照データの中からクエリデータに類似するデータを出力する際に、ベストスコア値記憶領域４６に記憶されているベストスコア値を算出したときの対照データを、クエリデータに類似するデータとして出力する。
【００８４】
本実施形態の類似データ検索装置、方法およびプログラムには、上述した効果を奏するヒストグラムインターセクション演算装置、方法およびプログラム、並びに、データ照合装置、方法およびプログラムが含まれるので、結果として、効率良くヒストグラムインターセクション演算を行って、品質の低下を招くことなくデータ照合処理および類似データ検索処理を高速化し得る類似データ検索装置、方法およびプログラムを提供することができる。
【００８５】
（第２実施形態）
次に、図６は、第２実施形態に係るヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置を含む類似画像データ検索システムの構成を例示する構成図である。本実施形態では、ヒストグラムインターセクション演算装置の一部の構成が第１実施形態と異なり、他の構成については第１実施形態と同等である。ここでは、第１実施形態と異なる構成要素についてのみ説明し、同一の構成要素には同一参照符号を付して詳しい説明は省略する。
【００８６】
図６において、本実施形態のヒストグラムインターセクション演算装置は、前処理部１１、第１の並び替え部１２、ビン番号変換テーブル生成部１３Ａ、ヒストグラムインターセクション演算部１５Ｂおよび演算制御部１６Ｂを含む演算ユニット１Ｂと、記憶部４と、を備える。なお、ヒストグラムインターセクション演算装置の構成上、第１実施形態と異なる点は、演算ユニット１Ｂが第２の並び替え部１４を持たない構成であることと、記憶部４から対照画像ＶＷヒストグラム記憶領域４４を取り除いた点である。
【００８７】
第１実施形態では、ヒストグラムインターセクション演算で対照画像ＶＷヒストグラムの頻度値を参照する際に、記憶部４の対照画像ＶＷヒストグラム記憶領域４４上でビン番号を並び替えた対照画像ＶＷヒストグラムを参照した。これに対して、本実施形態では、画像データベース５上の並び替え前の対照画像ＶＷヒストグラムを直接参照することとし、参照の際のビン番号の（並び替え後のビン番号から並び替え前のビン番号への）変換処理は、ビン番号変換テーブル（ビン番号変換テーブル記憶領域４３Ａ）を参照して行う。
【００８８】
演算ユニット１Ｂの構成要素の内、機能の異なるヒストグラムインターセクション演算部１５Ｂおよび演算制御部１６Ｂについて説明する。
まず、ヒストグラムインターセクション演算部１５Ｂは、クエリ画像ＶＷヒストグラムと対照画像ＶＷヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出する。
【００８９】
また、演算制御部１６Ｂは、演算ユニット１Ｂ内の他の構成要素の実行動作（開始、中止または終了など）を制御すると共に、類似画像データ検索システムの他の構成要素とのインタフェースを司る。
特に、ヒストグラムインターセクション演算部１５Ｂの演算については、演算制御部１６Ｂが持つ変換後ポインタｐ（＝１〜Ｐmax）の値に沿った実行制御となる。すなわち、演算制御部１６Ｂは、変換後ポインタｐの値に基づきビン番号変換テーブルを参照して変換前ポインタｑの値を取得し、画像データベース５を参照して対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）を取得し、これをヒストグラムインターセクション演算部１５Ｂに渡す。
【００９０】
ヒストグラムインターセクション演算部１５Ｂでは、変換後ポインタｐについて、クエリ画像ＶＷヒストグラム記憶領域４２上の並び替えられたクエリ画像ＶＷヒストグラムのビン番号ｐの頻度値ＨA（p）と、対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）とを用いて、ＭＩＮ積算値Ｄp（スコア値）が次式によって算出される。
Ｄp ＝ Ｄp-１ ＋ min（ＨA（p）， ＨB（q））                        （２）
【００９１】
次に、本実施形態のヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置の動作について説明する。類似画像データ検索システムの全体的な動作については、第１実施形態と同等であり、図２に示されるフローチャートの手順で処理が行われる。
【００９２】
図２において、ヒストグラムインターセクションを含む対照画像との照合処理（ステップＳ７）は、本実施形態では図７で示されるフローに展開される。図７は、ヒストグラムインターセクション演算に関して、第２実施形態のヒストグラムインターセクション演算装置およびデータ照合装置で行われる動作を説明ずるフローチャートである。
【００９３】
図７において、まず、ステップＳ１１では、演算制御部１６Ｂおよび照合制御部２４は、変換後ポインタｐ（＝１〜Ｐmax）の値を初期値「１」に設定する。変換後ポインタｐは、並び替え後のビン番号と同等であり、ヒストグラムインターセクション演算の実行順序を指し示すものである。
【００９４】
次に、ステップＳ３２では、演算制御部１６Ｂは、変換後ポインタｐの値に基づきビン番号変換テーブルを参照して変換前ポインタｑの値を取得し、画像データベース５を参照して対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）を取得し、これをヒストグラムインターセクション演算部１５Ｂに渡す。
【００９５】
次に、ステップＳ３３では、ヒストグラムインターセクション演算部１５Ｂは、変換後ポインタｐについて、クエリ画像ＶＷヒストグラム記憶領域４２上の並び替えられたクエリ画像ＶＷヒストグラムのビン番号ｐの頻度値ＨA（p）と、対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）とを用いて、ＭＩＮ積算値Ｄp（スコア値）を式（２）に基づき算出する。
【００９６】
ステップＳ１４以降の処理は、第１実施形態と同等であるので、説明を省略する。但し、本実施形態では、ヒストグラムインターセクションの演算毎に、演算に用いる対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）を画像データベース５から取得するので、ステップＳ１７において、クエリ画像ＶＷヒストグラムおよび対照画像ＶＷヒストグラムについて、全てのビン番号のヒストグラムインターセクション演算が終了していない場合には、ステップＳ１８で変換後ポインタｐをインクリメントした後に、ステップＳ３２に戻ることになる。
【００９７】
以上説明したように、本実施形態のヒストグラムインターセクション演算装置、方法およびプログラムでは、第１の並び替え部１２により、クエリ画像ＶＷヒストグラムのビンをヒストグラムの頻度値の降順に並び替え、ビン番号変換テーブル生成部１３Ａにより、並び替えられたクエリ画像ＶＷヒストグラムのビンが並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成し、演算制御部１６Ｂにより、ヒストグラムインターセクション演算部１５Ｂによるヒストグラムインターセクションの演算を、並び替えられたクエリ画像ＶＷヒストグラムの最大頻度値を持つビンから順番に、並び替えられたクエリ画像ＶＷヒストグラムの頻度値が零のビンになるまで、並び替えられたクエリ画像ＶＷヒストグラムの該ビン番号の頻度値と、ビン番号変換テーブルで該ビン番号に対応する並び替え前ビン番号の対照画像ＶＷヒストグラムの頻度値と、を用いて行わせる。
【００９８】
本実施形態のヒストグラムインターセクション演算装置、方法およびプログラムでは、クエリ画像ＶＷヒストグラムの並び替え前後のビン番号の対応関係を示すビン番号変換テーブルを生成する際に、並び替え前のクエリ画像ＶＷヒストグラムで頻度値が零のビンを除外するので、演算結果に影響を与えることなくヒストグラムインターセクション演算の対象から頻度値が零のビンを除外して、演算回数をより少なくすることができ、ヒストグラムインターセクション演算の高速化を図ることができる。
【００９９】
また、第１実施形態と比較して、本実施形態では、ヒストグラムインターセクションの演算毎に、演算に用いる対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）を画像データベース５から取得するので、対照画像ＶＷヒストグラムの並び替えを行う必要が無く、ヒストグラムインターセクション演算をより高速化することができる。
【０１００】
また、データ照合装置、方法およびプログラムで処理単位となる対照画像毎に、（対照画像ＶＷヒストグラムの並び替え）処理の削減が可能となるので、データ照合処理の高速化を図ることができると共に、類似データ検索装置、方法およびプログラムでの類似データ検索処理の高速化にも貢献することができる。
【０１０１】
（第３実施形態）
次に、図８は、第３実施形態に係るヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置を含む類似画像データ検索システムの構成を例示する構成図である。本実施形態も第２実施形態と同様に、ヒストグラムインターセクション演算装置の一部の構成が第１実施形態と異なり、他の構成については第１実施形態と同等である。ここでは、第１実施形態と異なる構成要素についてのみ説明し、同一の構成要素には同一参照符号を付して詳しい説明は省略する。
【０１０２】
図８において、本実施形態のヒストグラムインターセクション演算装置は、前処理部１１、演算順序テーブル生成部１３Ｃ、ヒストグラムインターセクション演算部１５Ｂおよび演算制御部１６Ｃを含む演算ユニット１Ｃと、記憶部４と、を備える。
【０１０３】
なお、ヒストグラムインターセクション演算装置の構成上、第１実施形態と異なる点は、演算ユニット１Ｃが第１の並び替え部１２および第２の並び替え部１４を持たない構成であることと、記憶部４から対照画像ＶＷヒストグラム記憶領域４４を取り除いた点である。また、ビン番号変換テーブル生成部１３Ａを演算順序テーブル生成部１３Ｃに、記憶部４のビン番号変換テーブル記憶領域４３Ａを演算順序テーブル記憶領域４３Ｃに、それぞれ変更しているが、演算順序テーブルは実質的にビン番号変換テーブルと同等のものである。
【０１０４】
第１実施形態では、ヒストグラムインターセクション演算でクエリ画像ＶＷヒストグラムの頻度値を参照する際に、記憶部４のクエリ画像ＶＷヒストグラム記憶領域４２上でビン番号を並び替えたクエリ画像ＶＷヒストグラムを参照した。これに対して、本実施形態では、クエリ画像ＶＷヒストグラムの並び替えを実際には行わず、演算順序テーブル生成部１３Ｃによって生成した演算順序テーブル記憶領域４３Ｃの演算順序テーブルに基づき、並び替えを行っていないクエリ画像ＶＷヒストグラムを参照する。
【０１０５】
また第１実施形態では、ヒストグラムインターセクション演算で対照画像ＶＷヒストグラムの頻度値を参照する際に、記憶部４の対照画像ＶＷヒストグラム記憶領域４４上でビン番号を並び替えた対照画像ＶＷヒストグラムを参照した。これに対して、本実施形態では、第２実施形態と同様に、画像データベース５上の並び替え前の対照画像ＶＷヒストグラムを直接参照することとし、参照の際のビン番号の変換処理は演算順序テーブル（演算順序テーブル記憶領域４３Ｃ）を参照して行う。
【０１０６】
演算ユニット１Ｃの構成要素の内、機能の異なる演算順序テーブル生成部１３Ｃ、ヒストグラムインターセクション演算部１５Ｂおよび演算制御部１６Ｃについて説明する。
まず演算順序テーブル生成部１３Ｃは、クエリ画像ＶＷヒストグラムを頻度値の降順で並び替え、且つ該ヒストグラムの頻度値が零のビン番号を除いたときのビン番号の数列に対して、１から始まり１ずつ増加するシーケンシャル番号を割り振った演算順序テーブルを生成する。
【０１０７】
具体例として、実施形態１の説明で用いた図４（ａ）のクエリ画像ＶＷヒストグラムについて、上記定義に従って演算順序テーブルを構成すれば、図１１に示す如くなる。すなわち、図４（ｃ）に例示したビン番号変換テーブルと同等であり、シーケンシャル番号は並び替え後のビン番号に対応している。
【０１０８】
第１実施形態では、並び替え後のビン番号を変換後ポインタと呼び変えてヒストグラムインターセクション演算の演算順序を制御したが、本実施形態では、シーケンシャル番号を演算順序ポインタと呼び変えて演算順序を制御する。つまり、演算順序テーブルは、演算順序ポインタ値を、その時点で参照すべきヒストグラムのビン番号であるビンポインタ値に変換する変換テーブルとなっている。
【０１０９】
また、ヒストグラムインターセクション演算部１５Ｂは、クエリ画像ＶＷヒストグラムと対照画像ＶＷヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出する。
【０１１０】
また、演算制御部１６Ｃは、演算ユニット１Ｂ内の他の構成要素の実行動作（開始、中止または終了など）を制御すると共に、類似画像データ検索システムの他の構成要素とのインタフェースを司る。
特に、ヒストグラムインターセクション演算部１５Ｂの演算については、演算制御部１６Ｃが持つ演算順序ポインタｐ（＝１〜Ｐmax；Ｐmaxは演算順序テーブルの項数）の値に沿った実行制御となる。
【０１１１】
すなわち、演算制御部１６Ｃは、演算順序ポインタｐの値に基づき演算順序テーブルを参照してビンポインタｑの値を取得し、画像データベース５を参照して対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）を取得する。また同時に、記憶部４のクエリ画像ＶＷヒストグラム記憶領域４２を参照してクエリ画像ＶＷヒストグラムのビン番号ｑの頻度値ＨA（q）を取得する。そしてこれら頻度値をヒストグラムインターセクション演算部１５Ｂに渡す。
【０１１２】
ヒストグラムインターセクション演算部１５Ｂでは、演算順序ポインタｐについて、クエリ画像ＶＷヒストグラムのビン番号ｑの頻度値ＨA（q）と、対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）とを用いて、ＭＩＮ積算値Ｄp（スコア値）が次式によって算出される。
Ｄp ＝ Ｄp-１ ＋ min（ＨA（q）， ＨB（q））                        （３）
【０１１３】
次に、本実施形態のヒストグラムインターセクション演算装置、データ照合装置および類似データ検索装置の動作について説明する。類似画像データ検索システムの全体的な動作については、第１実施形態と同様であり、図９に示されるフローチャートの手順で処理が行われる。図９は、第３実施形態の類似画像データ検索システムの全体的な動作を説明ずるフローチャートである。
【０１１４】
本実施形態では、クエリ画像ＶＷヒストグラムの並び替えを行わないので、図２におけるクエリ画像ＶＷヒストグラムの並び替え処理（ステップＳ５）が削除されている。
【０１１５】
また、ステップＳ４では、演算順序テーブル生成部１３Ｃが、クエリ画像ＶＷヒストグラムを頻度値の降順で並び替え、且つ該ヒストグラムの頻度値が零のビン番号を除いたときのビン番号の数列に対して、１から始まり１ずつ増加するシーケンシャル番号を割り振った演算順序テーブルを生成して、記憶部４の演算順序テーブル記憶領域４３Ｃに保存する。なお、実質的な処理内容は図２のステップＳ４と同等である。
【０１１６】
また、ステップＳ６では、積算ヒストグラム生成部２１は、演算順序テーブルのビン番号に応じたクエリ画像ＶＷヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算したクエリ画像ＶＷ積算ヒストグラムを生成し、クエリ画像ＶＷ積算ヒストグラム記憶領域４５に保存する。なお、実質的な処理内容は図２のステップＳ６と同等である。
【０１１７】
また、その他の各ステップについても第１実施形態（図２）と同等であるので、詳しい説明は省略する。
【０１１８】
図９において、ヒストグラムインターセクションを含む対照画像との照合処理（ステップＳ７）は、本実施形態では図１０で示されるフローに展開される。図１０は、ヒストグラムインターセクション演算に関して、第３実施形態のヒストグラムインターセクション演算装置およびデータ照合装置で行われる動作を説明ずるフローチャートである。
【０１１９】
図１０において、まず、ステップＳ５１では、演算制御部１６Ｃおよび照合制御部２４は、演算順序ポインタｐ（＝１〜Ｐmax）の値を初期値「１」に設定する。
【０１２０】
次に、ステップＳ５２では、演算制御部１６Ｃは、演算順序ポインタｐの値に基づき演算順序テーブルを参照してビンポインタｑの値を取得し、画像データベース５を参照して対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）を取得し、これをヒストグラムインターセクション演算部１５Ｂに渡す。また同時に、記憶部４のクエリ画像ＶＷヒストグラム記憶領域４２を参照してクエリ画像ＶＷヒストグラムのビン番号ｑの頻度値ＨA（q）を取得し、これをヒストグラムインターセクション演算部１５Ｂに渡す。
【０１２１】
次に、ステップＳ５３では、ヒストグラムインターセクション演算部１５Ｂは、演算順序ポインタｐについて、クエリ画像ＶＷヒストグラムのビン番号ｑの頻度値ＨA（q）と、対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）とを用いて、ＭＩＮ積算値Ｄp（スコア値）を式（３）に基づき算出する。
【０１２２】
ステップＳ５４以降の処理は、変換後ポインタｐが演算順序ポインタｐに呼び変えられている点を除いて第１実施形態と同等であるので、説明を省略する。但し、本実施形態では、ヒストグラムインターセクションの演算毎に、演算に用いるクエリ画像ＶＷヒストグラムのビン番号ｑの頻度値ＨA（q）と、対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）とをそれぞれ取得するので、ステップＳ５７において、クエリ画像ＶＷヒストグラムおよび対照画像ＶＷヒストグラムについて、全てのビン番号のヒストグラムインターセクション演算が終了していない場合には、ステップＳ５８で演算順序ポインタｐをインクリメントした後に、ステップＳ５２に戻ることになる。
【０１２３】
以上説明したように、本実施形態のヒストグラムインターセクション演算装置、方法およびプログラムでは、演算順序テーブル生成部１３Ｃにより、クエリ画像ＶＷヒストグラムを頻度値の降順で並び替え、且つ該ヒストグラムの頻度値が零のビン番号を除いたときのビン番号の数列に対して、１から始まり１ずつ増加するシーケンシャル番号を割り振った演算順序テーブルを生成し、演算制御部１６Ｂにより、ヒストグラムインターセクション演算部１５Ｂによるヒストグラムインターセクションの演算を、演算順序テーブルのシーケンシャル番号の順に、該シーケンシャル番号に対応するビン番号のクエリ画像ＶＷヒストグラムおよび対照画像ＶＷヒストグラムのそれぞれの頻度値を用いて行わせる。
【０１２４】
本実施形態のヒストグラムインターセクション演算装置、方法およびプログラムでは、シーケンシャル番号（演算順序ポインタ値）とビン番号（ビンポインタ値）との対応関係を示す演算順序テーブルを生成する際に、クエリ画像ＶＷヒストグラムで頻度値が零のビンを除外するので、演算結果に影響を与えることなくヒストグラムインターセクション演算の対象から頻度値が零のビンを除外して、演算回数をより少なくすることができ、ヒストグラムインターセクション演算の高速化を図ることができる。
【０１２５】
また、第１実施形態と比較して、本実施形態では、ヒストグラムインターセクションの演算毎に、演算に用いる対照画像ＶＷヒストグラムのビン番号ｑの頻度値ＨB（q）を画像データベース５から取得するので、対照画像ＶＷヒストグラムの並び替えを行う必要が無く、ヒストグラムインターセクション演算をより高速化することができる。
【０１２６】
また、第２実施形態と比較して、本実施形態では、ヒストグラムインターセクションの演算毎に、演算に用いるクエリ画像ＶＷヒストグラムのビン番号ｑの頻度値ＨA（q）を取得することとして、クエリ画像ＶＷヒストグラムの並び替えを行わないので、ヒストグラムインターセクション演算をより高速化することができる。
【０１２７】
また、第２実施形態と同様に、データ照合装置、方法およびプログラムで処理単位となる対照画像毎に、（対照画像ＶＷヒストグラムの並び替え）処理の削減が可能となるので、データ照合処理の高速化を図ることができると共に、類似データ検索装置、方法およびプログラムでの類似データ検索処理の高速化にも貢献することができる。
【０１２８】
以上、実施形態を用いて本発明を説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されないことは言うまでもない。上記実施形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。またそのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【０１２９】
例えば、上記第１、第２および第３実施形態では、Bag-of-Features（BoF）表現を用いることとし、画像から抽出された局所特徴量の分布をvisual wordsのヒストグラムで表現したが、これに限定されることなく他のヒストグラム表現（例えば、カラーヒストグラムなど）であっても良い。
【０１３０】
また、上記第１、第２および第３実施形態では、画像を対象とした類似画像データ検索システムを例示したが、これに限定されることなく他のメディア（文章、映像、音声など）を対象とした類似データ検索システムに適用することが可能である。例えば、文章を対象とした場合、Bag-of-Words（BoW）表現を用いて文章から抽出された局所特徴量の分布を単語のヒストグラムで表現するようにすれば、上記第１、第２および第３実施形態の構成をそのまま適用させることができる。
【０１３１】
以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記に記載した請求項の項番は、この出願の願書に最初に添付した特許請求の範囲の通りである。
【０１３２】
〔付記〕
＜請求項１＞
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算手段と、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御手段と、
を備えたヒストグラムインターセクション演算装置。
＜請求項２＞
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える第１の並び替え手段と、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビンが、並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成するビン番号変換テーブル生成手段と、
前記対照データのヒストグラムのビンを、前記ビン番号変換テーブル生成手段により生成された前記ビン番号変換テーブルに従い並び替える第２の並び替え手段と、
を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記第１の並び替え手段により並び替えられた前記クエリデータの最大頻度値のヒストグラムのビンから順番に、当該クエリデータのビン番号の頻度値と、前記第２の並び替え手段により並び替えられた対照データのビン番号の頻度値と、を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
＜請求項３＞
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える第１の並び替え手段と、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビンが、並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成するビン番号変換テーブル生成手段と、
を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムの最大頻度値のビンから順番に、前記クエリデータのヒストグラムの該ビン番号の頻度値と、前記ビン番号変換テーブルで該ビン番号に対応する並び替え前ビン番号の前記対照データのヒストグラムの頻度値と、を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
＜請求項４＞
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替え、且つ該ヒストグラムの頻度値が零のビン番号を除いたときのビン番号の数列に対して、１から始まり１ずつ増加するシーケンシャル番号を割り振った演算順序テーブルを生成する演算順序テーブル生成手段を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記演算順序テーブルのシーケンシャル番号の順に、該シーケンシャル番号に対応するビン番号の前記クエリデータのヒストグラムおよび前記対照データのヒストグラムのそれぞれの頻度値を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
＜請求項５＞
請求項１乃至請求項４の何れか１項に記載のヒストグラムインターセクション演算装置を含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合装置であって、
前記ヒストグラムインターセクション演算装置により演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶手段と、
前記ヒストグラムインターセクション演算装置がヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高くなるか否かを判定する判定手段と、を備え、
前記判定手段により、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とするデータ照合装置。
＜請求項６＞
前記判定手段は、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビン番号毎に、或いは、前記演算順序テーブルのビン番号に応じた前記クエリデータのヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成する積算ヒストグラム生成手段と、
当該ビン番号における前記ヒストグラムインターセクション演算装置により演算されたスコア値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した加算値を算出する加算手段と、を備え、
前記加算手段により算出された加算値が、前記ベストスコア値記憶手段に記憶されているスコア値より低い場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とする請求項５に記載のデータ照合装置。
＜請求項７＞
前記判定手段は、
前記ヒストグラムインターセクション演算手段による最終的なスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高い場合、前記ベストスコア値記憶手段に記憶されているスコア値を更新することを特徴とする請求項６に記載のデータ照合装置。
＜請求項８＞
前記判定手段は、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビン番号毎に、或いは、前記演算順序テーブルのビン番号に応じた前記クエリデータのヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成する積算ヒストグラム生成手段と、
当該ビン番号における前記ヒストグラムインターセクション演算装置により演算された値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した加算値を算出する加算手段と、を備え、
前記加算手段により算出された加算値が、所定の値より低い場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とする請求項５に記載のデータ照合装置。
＜請求項９＞
請求項５に記載のデータ照合装置を含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索装置であって、
前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力手段を備え、
前記類似データ出力手段は、前記ベストスコア値記憶手段に記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力することを特徴とする類似データ検索装置。
＜請求項１０＞
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算ステップと、
前記ヒストグラムインターセクション演算ステップによるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御ステップと、
を含むヒストグラムインターセクション演算方法。
＜請求項１１＞
請求項１０に記載のヒストグラムインターセクション演算方法を含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合方法であって、
前記ヒストグラムインターセクション演算方法により演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶ステップと、
前記ヒストグラムインターセクション演算方法でヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶ステップにより記憶されているスコア値より高くなるか否かを判定するスコア値判定ステップと、を含み、
前記スコア値判定ステップにより、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶ステップにより記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算方法によるヒストグラムインターセクションの演算を中止することを特徴とするデータ照合方法。
＜請求項１２＞
請求項１１に記載のデータ照合方法を含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索方法であって、
前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力ステップを含み、
前記類似データ出力ステップは、前記ベストスコア値記憶ステップにより記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力することを特徴とする類似データ検索方法。
＜請求項１３＞
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算機能と、
前記ヒストグラムインターセクション演算機能によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御機能と、
を実現させることを特徴とするヒストグラムインターセクション演算のプログラム。
＜請求項１４＞
請求項１３に記載のヒストグラムインターセクション演算のプログラムを含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合のプログラムであって、
前記ヒストグラムインターセクション演算のプログラムにより演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶機能と、
前記ヒストグラムインターセクション演算のプログラムでヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶機能により記憶されているスコア値より高くなるか否かを判定するスコア値判定機能と、を実現させ、
前記スコア値判定機能により、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶機能により記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算のプログラムによるヒストグラムインターセクションの演算を中止することを特徴とするデータ照合のプログラム。
＜請求項１５＞
請求項１４に記載のデータ照合のプログラムを含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索のプログラムであって、
前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力機能を実現させ、
前記類似データ出力機能は、前記ベストスコア値記憶機能により記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力することを特徴とする類似データ検索のプログラム。
【符号の説明】
【０１３３】
１Ａ、１Ｂ、１Ｃ  演算ユニット
２      照合ユニット
３      検索ユニット
４      記憶部
５      画像データベース
６      ＶＷ辞書
９      システムバス
１１    前処理部
１２    第１の並び替え部
１３Ａ  ビン番号変換テーブル生成部
１３Ｃ  演算順序テーブル生成部
１４    第２の並び替え部
１５Ａ、１５Ｂ  ヒストグラムインターセクション演算部
１６Ａ、１６Ｂ、１６Ｃ  演算制御部
２１    積算ヒストグラム生成部
２２    加算部
２３    判定部
２４    照合制御部
３１    類似データ出力部
３２    検索制御部
４３Ａ  ビン番号変換テーブル記憶領域
４３Ｃ  演算順序テーブル記憶領域
４６    ベストスコア値記憶領域
【図１】
2016057996.tif 000003
【図２】
2016057996.tif 000004
【図３】
2016057996.tif 000005
【図４】
2016057996.tif 000006
【図５】
2016057996.tif 000007
【図６】
2016057996.tif 000008
【図７】
2016057996.tif 000009
【図８】
2016057996.tif 000010
【図９】
2016057996.tif 000011
【図１０】
2016057996.tif 000012
【図１１】
2016057996.tif 000013
【手続補正書】
【提出日】平成27年11月13日(2015.11.13)
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
本発明は、ヒストグラムインターセクション演算装置、データ照合装置、類似データ検索装置、ヒストグラムインターセクション演算方法およびプログラムに関する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
本発明はこのような事情に鑑みなされたものであり、効率良くヒストグラムインターセクション演算を行って、品質の低下を招くことなくデータ照合処理および類似データ検索処理を高速化し得るヒストグラムインターセクション演算装置、データ照合装置、類似データ検索装置、ヒストグラムインターセクション演算方法およびプログラムを提供することを目的とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１５
【補正方法】削除
【補正の内容】
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１６
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１７
【補正方法】変更
【補正の内容】
【００１７】
（５）本発明のヒストグラムインターセクション演算のプログラムは、クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算機能と、前記ヒストグラムインターセクション演算機能によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御機能と、を実現させる。
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１８
【補正方法】削除
【補正の内容】
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】削除
【補正の内容】
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】変更
【補正の内容】
【００２０】
本発明によれば、効率良くヒストグラムインターセクション演算を行って、品質の低下を招くことなくデータ照合処理および類似データ検索処理を高速化し得るヒストグラムインターセクション演算装置、データ照合装置、類似データ検索装置、ヒストグラムインターセクション演算方法およびプログラムを提供することができる。
【手続補正１０】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算手段と、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御手段と、
を備えたヒストグラムインターセクション演算装置。
【請求項２】
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える第１の並び替え手段と、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビンが、並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成するビン番号変換テーブル生成手段と、
前記対照データのヒストグラムのビンを、前記ビン番号変換テーブル生成手段により生成された前記ビン番号変換テーブルに従い並び替える第２の並び替え手段と、
を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記第１の並び替え手段により並び替えられた前記クエリデータの最大頻度値のヒストグラムのビンから順番に、当該クエリデータのビン番号の頻度値と、前記第２の並び替え手段により並び替えられた対照データのビン番号の頻度値と、を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
【請求項３】
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える第１の並び替え手段と、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビンが、並び替え前にどのビン番号であったかを示すビン番号変換テーブルを生成するビン番号変換テーブル生成手段と、
を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムの最大頻度値のビンから順番に、前記クエリデータのヒストグラムの該ビン番号の頻度値と、前記ビン番号変換テーブルで該ビン番号に対応する並び替え前ビン番号の前記対照データのヒストグラムの頻度値と、を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
【請求項４】
前記演算制御手段は、
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替え、且つ該ヒストグラムの頻度値が零のビン番号を除いたときのビン番号の数列に対して、１から始まり１ずつ増加するシーケンシャル番号を割り振った演算順序テーブルを生成する演算順序テーブル生成手段を備え、
前記ヒストグラムインターセクション演算手段によるヒストグラムインターセクションの演算を、前記演算順序テーブルのシーケンシャル番号の順に、該シーケンシャル番号に対応するビン番号の前記クエリデータのヒストグラムおよび前記対照データのヒストグラムのそれぞれの頻度値を用いて行わせることを特徴とする請求項１に記載のヒストグラムインターセクション演算装置。
【請求項５】
請求項１に記載のヒストグラムインターセクション演算装置を含み、クエリデータと複数の対照データとのデータ照合を行なうデータ照合装置であって、
前記ヒストグラムインターセクション演算装置により演算されたヒストグラムインターセクションのスコア値の最高スコア値から所定の順位のスコア値までを記憶するベストスコア値記憶手段と、
前記ヒストグラムインターセクション演算装置がヒストグラムインターセクションの演算を行っている間に、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高くなるか否かを判定する判定手段と、を備え、
前記判定手段により、当該演算により算出されるヒストグラムインターセクションのスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高くならないと判定された場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とするデータ照合装置。
【請求項６】
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える第１の並び替え手段を備え、
前記判定手段は、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成する積算ヒストグラム生成手段と、
当該ビン番号における前記ヒストグラムインターセクション演算装置により演算されたスコア値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した加算値を算出する加算手段と、を備え、
前記加算手段により算出された加算値が、前記ベストスコア値記憶手段に記憶されているスコア値より低い場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とする請求項５に記載のデータ照合装置。
【請求項７】
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替える第１の並び替え手段を備え、
前記判定手段は、
前記第１の並び替え手段により並び替えられた前記クエリデータのヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成する積算ヒストグラム生成手段と、
当該ビン番号における前記ヒストグラムインターセクション演算装置により演算された値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した加算値を算出する加算手段と、を備え、
前記加算手段により算出された加算値が、所定の値より低い場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とする請求項５に記載のデータ照合装置。
【請求項８】
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替え、且つ該ヒストグラムの頻度値が零のビン番号を除いたときのビン番号の数列に対して、１から始まり１ずつ増加するシーケンシャル番号を割り振った演算順序テーブルを生成する演算順序テーブル生成手段を備え、
前記判定手段は、
前記演算順序テーブルのビン番号に応じた前記クエリデータのヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成する積算ヒストグラム生成手段と、
当該ビン番号における前記ヒストグラムインターセクション演算装置により演算されたスコア値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した加算値を算出する加算手段と、を備え、
前記加算手段により算出された加算値が、前記ベストスコア値記憶手段に記憶されているスコア値より低い場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とする請求項５に記載のデータ照合装置。
【請求項９】
前記クエリデータのヒストグラムのビンを、ヒストグラムの頻度値の降順に並び替え、且つ該ヒストグラムの頻度値が零のビン番号を除いたときのビン番号の数列に対して、１から始まり１ずつ増加するシーケンシャル番号を割り振った演算順序テーブルを生成する演算順序テーブル生成手段を備え、
前記判定手段は、
前記演算順序テーブルのビン番号に応じた前記クエリデータのヒストグラムのビン番号毎に、当該ビン番号以降のヒストグラムの頻度値を積算した積算ヒストグラムを生成する積算ヒストグラム生成手段と、
当該ビン番号における前記ヒストグラムインターセクション演算装置により演算された値と、前記積算ヒストグラム生成手段により生成された当該ビン番号における前記積算ヒストグラムの値を加算した加算値を算出する加算手段と、を備え、
前記加算手段により算出された加算値が、所定の値より低い場合、前記ヒストグラムインターセクション演算装置によるヒストグラムインターセクションの演算を中止することを特徴とする請求項５に記載のデータ照合装置。
【請求項１０】
前記判定手段は、
前記ヒストグラムインターセクション演算手段による最終的なスコア値が、前記ベストスコア値記憶手段に記憶されているスコア値より高い場合、前記ベストスコア値記憶手段に記憶されているスコア値を更新することを特徴とする請求項５乃至９の何れか一項に記載のデータ照合装置。
【請求項１１】
請求項５に記載のデータ照合装置を含み、複数の対照データの中からクエリデータに類似するデータを検索する類似データ検索装置であって、
前記複数の対照データの中から前記クエリデータに類似するデータを出力する類似データ出力手段を備え、
前記類似データ出力手段は、前記ベストスコア値記憶手段に記憶されているスコア値を算出した際の前記対照データを、前記クエリデータに類似するデータとして出力することを特徴とする類似データ検索装置。
【請求項１２】
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算ステップと、
前記ヒストグラムインターセクション演算ステップによるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御ステップと、
を含むヒストグラムインターセクション演算方法。
【請求項１３】
クエリデータのヒストグラムと対照データのヒストグラムとのヒストグラムインターセクションの演算を行い、ヒストグラムインターセクションのスコア値を算出するヒストグラムインターセクション演算機能と、
前記ヒストグラムインターセクション演算機能によるヒストグラムインターセクションの演算を、前記クエリデータのヒストグラムの最大頻度値のビン番号から降順に、当該クエリデータのビン番号の頻度値と、当該クエリデータのビン番号に対応する前記対象データのビン番号の頻度値と、を用いて行わせる演算制御機能と、
を実現させることを特徴とするヒストグラムインターセクション演算のプログラム。