JP6378855B1 - 画像検索システム、画像検索方法およびプログラム - Google Patents

画像検索システム、画像検索方法およびプログラム Download PDF

Info

Publication number
JP6378855B1
JP6378855B1 JP2018518547A JP2018518547A JP6378855B1 JP 6378855 B1 JP6378855 B1 JP 6378855B1 JP 2018518547 A JP2018518547 A JP 2018518547A JP 2018518547 A JP2018518547 A JP 2018518547A JP 6378855 B1 JP6378855 B1 JP 6378855B1
Authority
JP
Japan
Prior art keywords
feature
vector
representative
image
vectors
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018518547A
Other languages
English (en)
Other versions
JPWO2018134964A1 (ja
Inventor
アリ ジェヴァヒル
アリ ジェヴァヒル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Rakuten Group Inc
Original Assignee
Rakuten Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Rakuten Inc filed Critical Rakuten Inc
Application granted granted Critical
Publication of JP6378855B1 publication Critical patent/JP6378855B1/ja
Publication of JPWO2018134964A1 publication Critical patent/JPWO2018134964A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/51Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/53Querying
    • G06F16/538Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/55Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/56Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

より高い精度で類似の画像を検索すること。画像検索システムは、特徴ベクトル空間に含まれそれぞれ画像の特徴を示す複数の特徴ベクトルに基づいて生成された、複数の代表ベクトルを取得し、前記複数の特徴ベクトルのそれぞれと、当該特徴ベクトルに対応する前記代表ベクトルとの間の類似度を示すスカラー値を算出し、画像のそれぞれについて、前記スカラー値に基づき、代表ベクトルに応じた特徴を示す特徴値を代表ベクトルごとに算出し、前記算出された特徴値に関連する検索インデックスを作成する。

Description

本発明は画像検索システム、画像検索方法およびプログラムに関する。
ネットワーク技術等の発達によって、膨大な量の画像ファイルが管理されるようになっている。大量の画像からクエリ画像に類似する画像を検索する技術が一般に用いられるようになっている。画像の検索のための手法として、BoVモデル(Bug of Visual words Model)がある。BoVモデルでは、既知の手法により、画像のデータからそれぞれが画像の局所的な特徴を示す複数の特徴ベクトルを抽出する。特徴ベクトルのデータ量が大きいため、さらにそれぞれの特徴ベクトルに最も近いベクトルを有するビジュアルワード(Visual Words)を検索に用いることでデータ量を圧縮している。
非特許文献1には、画像の特徴を示すデータの量をさらに減らすために、ビジュアルワードごとに、そのビジュアルワードに対応する特徴ベクトルと、そのビジュアルワードを代表する代表ベクトルとの差(差分ベクトル)の合計(合計ベクトル)を求め、その合計ベクトルに応じたデータを記憶部に格納する手法が開示されている。この手法では、この合計ベクトルに応じたデータと、クエリ画像から取得される合計ベクトルに応じたデータとに基づいて、クエリ画像に類似する画像が検索される。
Jegou, H., Douze, M., Schmid, C., Perez, P.: Aggregating Local Descriptors into a Compact Image Representation. In: IEEE Conference on Computer Vision and Pattern Recognition (CVPR 2010). IEEE, San Francisco, pp. 3304-3311 (2010)
特徴ベクトルとビジュアルワードの代表ベクトルとの差分ベクトルの合計をとると、例えば2つの特徴ベクトルについて差分ベクトルの方向が反対の場合に、合計ベクトルの各要素の値が小さくなる。このような場合には、画像の特徴が、その画像の検索に適切に反映されなかった。
本発明は上記課題を鑑みてなされたものであって、その目的は、より精度の高い画像検索技術を提供することである。
上記課題を解決するために、本発明にかかる画像検索システムは、特徴ベクトル空間に含まれそれぞれ画像の特徴を示す複数の特徴ベクトルに基づいて生成された、複数の代表ベクトルを取得する代表ベクトル取得手段と、前記複数の特徴ベクトルのそれぞれと、当該特徴ベクトルに対応する前記代表ベクトルとの間の類似度を示すスカラー値を算出するスカラー値算出手段と、画像のそれぞれについて、代表ベクトルに応じた特徴を示す特徴値を前記スカラー値に基づき、代表ベクトルごとに算出する特徴値算出手段と、前記算出された特徴値に関連する検索インデックスを作成するインデックス作成手段と、を含む。
また、本発明にかかるプログラムは、特徴ベクトル空間に含まれそれぞれ画像の特徴を示す複数の特徴ベクトルに基づいて生成された、複数の代表ベクトルを取得する代表ベクトル取得手段、前記複数の特徴ベクトルのそれぞれと、当該特徴ベクトルに対応する前記代表ベクトルとの間の類似度を示すスカラー値を算出するスカラー値算出手段、画像のそれぞれについて、代表ベクトルに応じた特徴を示す特徴値を前記スカラー値に基づき、代表ベクトルごとに算出する特徴値算出手段、および、前記算出された特徴値に関連する検索インデックスを作成するインデックス作成手段としてコンピュータを機能させる。
また、本発明にかかる画像検索方法は、特徴ベクトル空間に含まれそれぞれ画像の特徴を示す複数の特徴ベクトルに基づいて生成された、複数の代表ベクトルを取得するステップと、前記複数の特徴ベクトルのそれぞれと、当該特徴ベクトルに対応する前記代表ベクトルとの間の類似度を示すスカラー値を算出するステップと、画像のそれぞれについて、代表ベクトルに応じた特徴を示す特徴値を前記スカラー値に基づき、代表ベクトルごとに算出するステップと、前記算出された特徴値に関連する検索インデックスを作成するステップと、を含む。
本発明によれば、より高い精度で画像を検索することができる。
本発明の一形態では、前記特徴値算出手段は、画像のそれぞれについて、前記代表ベクトルごとに、当該代表ベクトルと複数の前記特徴ベクトルとの間で算出された前記スカラー値の合計を特徴値として算出してもよい。
本発明の一形態では、前記スカラー値算出手段は、前記代表ベクトルのそれぞれについて、前記代表ベクトルと、当該代表ベクトルに対応する複数の特徴ベクトルのそれぞれとの距離をスカラー値として算出してもよい。
本発明の一形態では、前記代表ベクトル生成手段は、前記複数の特徴ベクトルのそれぞれに対応する代表ベクトルを決定してもよい。
本発明の一形態では、前記代表ベクトル生成手段は、複数の特徴ベクトルを複数のクラスタに分類し、それぞれ前記複数のクラスタのいずれかを代表する複数の代表ベクトルを生成してもよい。
本発明の一形態では、前記代表ベクトルは複数の第1代表ベクトルと、複数の第2代表ベクトルとを含み、前記複数の第2代表ベクトルのそれぞれは、前記複数の第1代表ベクトルのいずれかに対応し、前記代表ベクトル生成手段は、前記複数の特徴ベクトルのそれぞれを前記複数の第2代表ベクトルのうちいずれか1つと、前記1つの第2代表ベクトルに対応する第1代表ベクトルとに対応付けてよい。
本発明の一形態では、前記インデックス作成手段は、複数の画像のそれぞれについての複数の特徴値を圧縮することにより、データ量が前記複数の特徴値より小さいインデックスを生成してもよい。
本発明の一形態では、前記インデックス作成手段は、複数の画像のそれぞれについての複数の特徴値をオートエンコーダにより圧縮してもよい。
本発明の一形態では、前記代表ベクトル生成手段は、前記第1代表ベクトルに対応付けられる特徴ベクトルの数が所定数より多い場合に、当該第1代表ベクトルに対応する複数の第2代表ベクトルを生成し、前記第1代表ベクトルのうち少なくとも1つは、前記第2代表ベクトルのいずれにも対応しなくてもよい。
本発明の一形態では、画像検索システムは、前記検索インデックスと、クエリ画像から求められる特徴値とに基づいて、前記クエリ画像に類似する画像を検索する画像検索手段をさらに含んでもよい。
本発明の実施形態にかかる画像検索システムの構成を概略的に説明する図である。 画像検索サーバのハードウェア構成の一例を示す図である。 画像検索システムが実現する機能を説明するブロック図である。 インデックス処理部の処理の一例を示すフロー図である。 検索対象となる画像の一例を示す図である。 画像から抽出される画像特徴ベクトルを概略的に示す図である。 クラスタおよび代表ベクトルの関係を概略的に示す図である。 クラスタの階層構造の一例を説明する図である。 ある画像から抽出された特徴ベクトルと代表ベクトルとの関係を説明する図である。 ある画像について算出された複数の特徴値の一例を示す図である。 検索処理部の処理の一例を示すフロー図である。
以下では、本発明の実施形態について図面に基づいて説明する。出現する構成要素のうち同一機能を有するものには同じ符号を付し、その説明を省略する。
図1は、本発明の第1の実施形態にかかる画像検索システムの構成の一例を示す図である。画像検索システムは、画像検索サーバ1と、ユーザ端末2と、を含む。画像検索サーバ1は、画像検索プログラムやウェブサーバプログラム(httpdなど)が動作するサーバコンピュータであり、ユーザ端末2は、例えばウェブブラウザのプログラムが動作するパーソナルコンピュータや、スマートフォンである。画像検索サーバ1とユーザ端末2とは、ネットワーク3を介して互いに通信する。ネットワーク3は、例えばローカルエリアネットワークやインターネットである。
画像検索システムが画像検索を行う際の動作の概要は以下の通りである。はじめに、画像検索サーバ1は、ネットワーク3を介してユーザ端末2から画像検索に用いるクエリとなる画像(以下、「クエリ画像」と記述する)を取得する。次に画像検索サーバ1は、クエリ画像に類似する1または複数の画像を検索し、その画像のデータを例えばユーザ端末2に向けて出力する。
図2は、第1の実施形態にかかる画像検索サーバ1の構成の一例を示す図である。画像検索サーバ1は、プロセッサ11、記憶部12、通信部13および入出力部14を含む。
プロセッサ11は、記憶部12に格納されているプログラムに従って動作する。またプロセッサ11は通信部13や入出力部14を制御する。なお、上記プログラムは、インターネット等のネットワークを介して提供されるものであってもよいし、DVD−ROMやフラッシュメモリ等のコンピュータで読み取り可能な情報記憶媒体に格納されて提供されるものであってもよい。
記憶部12は、RAMやROM等のメモリ素子やハードディスクドライブ等によって構成されている。記憶部12は、上記プログラムを格納する。また、記憶部12は、各部から入力される情報や演算結果を格納する。
通信部13は、ユーザ端末2等の他の装置と通信する機能を実現するものであり、例えばネットワークカードのような通信手段で構成されている。ネットワークカードは、通信用の集積回路や通信端子を含んでいる。通信部13は、プロセッサ11の制御に基づいて、他の装置から受信した情報をプロセッサ11や記憶部12に入力し、他の装置に情報を送信する。
入出力部14は、表示出力デバイスをコントロールするビデオコントローラや、入力デバイスからのデータを取得するコントローラなどにより構成される。入力デバイスとしては、キーボード、マウス、タッチパネルなどがある。入出力部14は、プロセッサ11の制御に基づいて、表示出力デバイスに画像を表示させるデータを出力し、入力デバイスをユーザが操作することにより入力されるデータを取得する。表示出力デバイスは例えば外部に接続されるディスプレイ装置である。
ユーザ端末2は、画像検索サーバ1と同様にプロセッサ11、記憶部12、通信部13、入出力部14等を含む。ユーザ端末2は画像検索サーバ1等から受信したデータに基づいて画面を提示する機能や、その画面についてユーザが入力した情報を画像検索サーバ1に送信する機能を実現する。これらの機能は、例えばユーザ端末2に含まれるプロセッサ11等がブラウザなどのプログラムを実行し、画像検索サーバ1等から受信したデータに応じた処理をすることで実現される。またブラウザではなく、ユーザ端末2にインストールされた専用のアプリケーションプログラムによりこれらの機能が実現されてもよい。
図3は、画像検索システムが実現する機能を示すブロック図である。画像検索システムは、機能的に、インデックス処理部50、検索処理部60、画像データ格納部71、インデックス格納部72を含む。インデックス処理部50は、複数の画像のデータからそれらの画像の検索に用いるインデックスを生成する。検索処理部60は、検索条件となるクエリ画像と、インデックスとに基づいて、クエリ画像に類似する画像を検索する。インデックス処理部50、検索処理部60、画像データ格納部71、インデックス格納部72は、画像検索サーバ1に実装される。なお、画像データ格納部71、インデックス格納部72が別のサーバに実装されてもよいし、インデックス処理部50、検索処理部60が互いに異なるサーバに実装されてもよい。
画像データ格納部71は、主に記憶部12により実現される。画像データ格納部71は、検索の対象となる複数の画像のデータを格納する。インデックス格納部72は、主に記憶部12により実現される。インデックス格納部72は、インデックス生成部55により生成された画像のインデックスを格納する。
インデックス処理部50は機能的に特徴ベクトル抽出部51、クラスタリング部52、スコア値算出部53、特徴値算出部54、インデックス生成部55を含む。検索処理部60は機能的に、クエリベクトル検出部61、クエリ対応決定部62、クエリスコア値算出部63、クエリ特徴値算出部64、画像検索部65を含む。これらの機能は、プロセッサ11が記憶部12に格納されたプログラムを実行し、通信部13や入出力部14を制御することで実現される。
次に、インデックス処理部50の処理について説明する。
特徴ベクトル抽出部51は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。特徴ベクトル抽出部51は、画像データ格納部71に格納される複数の画像データから、それぞれ画像の局所的な特徴を示す複数の特徴ベクトルを抽出する。また、特徴ベクトル抽出部51は1つの画像について複数の特徴ベクトルを抽出する。1つの画像から抽出される特徴ベクトルの数は、画像に応じて決まり、通常の画像では300程度である。また特徴ベクトルの次元は、たとえば128次元である。
クラスタリング部52は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。クラスタリング部52は、抽出された複数の特徴ベクトルに基づいて複数の代表ベクトルを生成する。より具体的には、クラスタリング部52は複数の特徴ベクトルを複数のクラスタに分類し、それぞれ前記複数のクラスタのいずれかを代表する複数の代表ベクトルを、特徴ベクトルに基づいて生成する。またクラスタリング部52は、複数の特徴ベクトルのそれぞれを複数の代表ベクトルのいずれかに対応づける。ここで、クラスタのそれぞれは、BoVモデルにおけるビジュアルワード(Visual Word)に対応する。
スコア値算出部53は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。スコア値算出部53は、複数の代表ベクトルのそれぞれと、複数の特徴ベクトルの少なくとも一部との類似の大きさを示すスコア値を算出する。スコア値はスカラー値である。例えば、スコア値算出部53は、代表ベクトルのそれぞれについて、前記代表ベクトルと、当該代表ベクトルに対応する複数の特徴ベクトルのそれぞれとの距離をスコア値として算出する。
特徴値算出部54は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。特徴値算出部54は、画像のそれぞれについて、代表ベクトルごとに代表ベクトルに応じた特徴を示す特徴値を算出する。特徴値算出部54が、1つの画像について算出する特徴値の数は、代表ベクトルと同じである。
インデックス生成部55は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。インデックス生成部55は、算出された特徴値を含む検索インデックスを作成する。インデックスは画像ごとに生成され、インデックス生成部55は生成されたインデックスはその画像と関連付けてインデックス格納部72に格納する。
以下では、インデックス処理部50において行われる処理をより詳細に説明する。図4は、インデックス処理部50の処理の一例を示すフロー図である。
画像データからインデックスを作成する処理において、はじめに、特徴ベクトル抽出部51は、画像データ格納部71に格納された画像から、特徴ベクトルを抽出する(ステップS101)。特徴ベクトルを抽出する手法の詳細については公知であるので詳細な説明は省略する。局所的な特徴を示す特徴ベクトルを抽出する手法として、例えばSIFTと呼ばれる手法が存在する。
図5は、検索対象となる画像の一例を示す図である。図5の画像の例では、星条旗の一部が示されている。図6は、図5に示される画像から抽出された特徴ベクトル22を概略的に示す図である。画像のうち同じような特徴を有する複数の特徴点から、互いに類似する特徴ベクトルが抽出される。
特徴ベクトルが抽出されると、クラスタリング部52は、複数の画像から抽出された複数の特徴ベクトルをクラスタリングする(ステップS102)。クラスタリング部52は、k−means法などの公知のアルゴリズムを用いて特徴ベクトルを複数のクラスタに分類してよい。また、本実施形態においてクラスタリング部52は、複数の階層を有するクラスタを生成する。より具体的には、クラスタリング部52は、ある階層にあるクラスタに属する特徴ベクトルの数が所定数より多い場合に、そのクラスタの下位に属する特徴ベクトルをさらに下の階層の複数のクラスタに分類する。この場合、上位の階層にあるクラスタであっても、下位の階層のクラスタが存在しない場合がある。
また、クラスタリング部52は、各クラスタに属する特徴ベクトルに基づいて、各クラスタの代表ベクトルを決定する(ステップS103)。クラスタリング部52は、例えばクラスタに属する特徴ベクトルの重心を代表ベクトルとして決定する。代表ベクトルは、必ずしも重心でなくてもよく、クラスタに属する特徴ベクトルのいずれかであってもよい。またクラスタリング部52は、検索用のインデックスが適切に算出される特性を有すれば、クラスタリングを用いないなど、他の手法で代表ベクトルが生成されてもよい。
図7は、クラスタC1〜C4およびクラスタC1〜C4について決定される代表ベクトル24の関係を概略的に示す図である。図7では、説明の容易のため、最上位のクラスタのみ示している。また、記載を簡潔にするため特徴ベクトル22の記載は省略されており、図7における丸などの記号が示す点23は、特徴ベクトル22が示す特徴ベクトル空間内の座標を示している。図7の例では、原点OPから点23へ向かうベクトルが特徴ベクトル22となる。クラスタリング部52は、クラスタC1〜C4ごとに代表ベクトル24を決定する。
図8は、クラスタの階層構造の一例を説明する図である。すべての特徴ベクトルの集合CAは、複数のクラスタC1〜C128に分割され、それぞれのクラスタC1〜C128には、1または複数の特徴ベクトルが属している。ここで、クラスタC1に属する特徴ベクトルの数は予め定められた閾値より小さく、クラスタC2に属する特徴ベクトルの数はその閾値より大きい。したがって、クラスタC2に属する特徴ベクトルは、その下位のクラスタC2_1〜C2_128に分類されている。したがって、ある特徴ベクトルが属する最下層のクラスタの階層(例えばクラスタC1の階層)と、他の特徴ベクトルが属する最下層のクラスタの階層(例えばクラスタC2_2の階層)とが異なってよい。なお、あるクラスタの下位にクラスタが存在する場合、その下位のクラスタの数は2以上である。
また、クラスタリング部52は、どの階層のクラスタについても代表ベクトルを決定する。例えばクラスタC2の代表ベクトルの下位の代表ベクトルとしてクラスタC2_1の代表ベクトルが存在する。また、代表ベクトルの関係をみると、上位のクラスタの代表ベクトルのうち1つに、その下位の複数のクラスタを代表する複数の代表ベクトルが対応している。
代表ベクトルが決定されると、クラスタリング部52は、複数の特徴ベクトルのそれぞれに対応する代表ベクトルを決定する(ステップS104)。より具体的には、クラスタリング部52は、特徴ベクトルが属するクラスタの代表ベクトルを、その特徴ベクトルに対応する代表ベクトルとして決定する。なお、クラスタリング部52は、特徴ベクトルとの距離が最も近い代表ベクトルを、その特徴ベクトルに対応する代表ベクトルとして決定してもよい。なお、特徴ベクトルをクラスタに分類し、代表ベクトルを決定する処理は、画像検索サーバ1と異なるサーバにおいて予め実行されてもよい。この場合、予め生成された代表ベクトルを記憶装置に格納しておき、画像検索サーバ1は、以降の処理のために、代表ベクトルを決定する処理の代わりに、記憶装置に格納された代表ベクトルのデータを読み出してよい。
次に、スコア値算出部53は、特徴ベクトルのそれぞれについてスコア値を算出する(ステップS105)。ここで、スコア値はスカラー値であり、ベクトルではない。スコア値は、特徴ベクトルと、その特徴ベクトルに対応する代表ベクトルとの類似の大きさを示す。スコア値は、特徴ベクトルとその特徴ベクトルに対応する代表ベクトルとの距離であってもよいし、コサイン類似度であってもよいし、類似度から所定の計算式により算出された値であってもよい。
図9は、ある画像から抽出された特徴ベクトルと代表ベクトルとの関係を説明する図である。丸や四角の記号により表される点23は、ある画像から抽出された特徴ベクトルを示す。また点P1〜P3は、それぞれクラスタC1〜C3の代表ベクトルを示す。図9の例では、点P1が示す代表ベクトルと、その代表ベクトルに対応付けられた特徴ベクトルとの距離Lがスコア値として計算される。
スコア値が計算されると、特徴値算出部54は、画像のそれぞれについて複数の特徴値を算出する(ステップS106)。特徴値算出部54は、画像のそれぞれについて、代表ベクトルごとに特徴値を算出する。特徴値は、代表ベクトルに応じた画像の特徴を示す値である。特徴値算出部54は、ある画像およびある代表ベクトルについての特徴値を、その画像から抽出された特徴ベクトルのうち、その代表ベクトルに対応する1または複数の特徴ベクトルについて求められたスコア値に基づいて算出する。
例えば、特徴値算出部54は、ある画像から抽出された特徴ベクトルのうち、ある代表ベクトルに対応する1または複数の特徴ベクトルについて求められたスコア値の合計をその画像および代表ベクトルについての特徴値として算出する。ある画像についてのi番目のクラスタの代表ベクトル(以下ではi番目の代表ベクトルと記載する)についての特徴値vの算出方法を式で表すと以下のようになる。ここで、iは、1以上各階層のクラスタの数の総和以下の整数のうちいずれかである。
Figure 0006378855
ここで、Cはi番目のVisual Word、言い換えるとi番目の代表ベクトルを示す。ここで、i番目のクラスタは、各階層のクラスタすべてのうちいずれかであり、番号iは、すべてのクラスタに順に付与された一種のシーケンス番号である。Diは、算出対象の画像から抽出された特徴ベクトルのうち、i番目の代表ベクトルに対応する特徴ベクトルの集合であり、dはその集合に含まれる特徴ベクトルである。上記の式では、特徴ベクトルと代表ベクトルとの距離の和が特徴値として計算されている。
ある画像について算出された特徴値の数は代表ベクトルの数と同じであり、この複数の特徴値は一種の重み付きヒストグラムになる。図10は、ある画像について算出された複数の特徴値viの一例を示す図である。ある画像についての特徴値の集合は、一種のベクトルであり、画像の特徴を示すベクトル(以下では「画像ベクトル」と記載する)である。この画像ベクトルのデータ量は、画像から抽出される特徴ベクトルそのもののデータ量より小さい。また、画像ベクトルの次元は、画像から抽出される特徴ベクトルの数に関わらず一定となる。
ここで、クラスタが階層構造を有するため、下位のクラスタ(例えばクラスタC2_1)の代表ベクトルに特徴ベクトルが対応する場合、その特徴ベクトルについてのスコア値は下位のクラスタだけでなくその上位のクラスタ(例えばクラスタC2)についても0でない値として算出される。これにより、クラスタを細分化することにより比較に用いるデータ量を確保しつつ、少し異なるだけで全く違うものとして評価される可能性を減らすことができる。
画像のそれぞれについて複数の特徴値が算出されると、インデックス生成部55は、画像のそれぞれについて算出された複数の特徴値を圧縮することで、データ量が複数の特徴値より小さい検索インデックスを作成する(ステップS107)。また、作成された検索インデックスを、インデックス格納部72に格納する(ステップS108)。特徴値の圧縮は、例えば画像ベクトルの次元の圧縮であり、インデックス生成部55は次元が圧縮された画像ベクトルをその画像の検索インデックスとする。
本実施形態では、画像ベクトルの次元の圧縮は、ディープオートエンコーダ(DAEs: Deep Autoencoders)により行われる。ディープオートエンコーダはいわゆるニューラルネットワークを用いた計算手法である。インデックス生成部55は、k次元の入力データから、m次元(m<k)のノードを経てk次元の出力データを出力するニューラルネットワークにおいて、入力データと出力データが極力同一になるように学習し、その学習がなされたニューラルネットワークに画像ベクトルを入力した場合のm次元のノードの値をその画像ベクトルが圧縮されたベクトルとして算出する。オートエンコーダにより、画像ベクトルの重要な要素が強く影響し、重要でない要素が影響しないようにデータの次元を圧縮することができる。オートエンコーダに対する入力データの値を0以上1以下とするため、インデックス生成部55は、学習およびデータ圧縮の際に以下の式により変換された画像ベクトルの特徴値をオートエンコーダへの入力データにしている。
Figure 0006378855
なお、オートエンコーダの代わりに主成分分析により画像ベクトルの次元を圧縮してもよい。ただし、主成分分析よりもオートエンコーダの方がより精度の高い検索インデックスを生成できる。
以下では、上記記載の手法により生成された検索インデックスを用いて画像を検索する検索処理部60の処理について説明する。
クエリベクトル抽出部61は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。クエリベクトル抽出部61は、検索条件として入力されたクエリ画像のデータから、クエリ画像の局所的な特徴を示す複数のクエリベクトルを抽出する。
クエリ対応決定部62は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。クエリ対応決定部62は、抽出された複数のクエリベクトルのそれぞれに対応する代表ベクトル(およびクラスタ)を選択する。
クエリスコア値算出部63は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。クエリスコア値算出部63は、複数の代表ベクトルのそれぞれと、複数のクエリベクトルの少なくとも一部との類似の大きさを示すスコア値を算出する。例えば、スコア値算出部53は、代表ベクトルのそれぞれについて、代表ベクトルと、その代表ベクトルに対応する複数のクエリベクトルのそれぞれとの距離をスコア値として算出する。
クエリ特徴値算出部64は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。クエリ特徴値算出部64は、クエリ画像について、代表ベクトルごとに代表ベクトルに応じた特徴を示すクエリ特徴値を算出する。
画像検索部65は、主にプロセッサ11がプログラムを実行し、記憶部12を制御することにより実現される。画像検索部65は、クエリ画像についての複数のクエリ特徴値と、インデックス格納部72に格納された複数の画像の検索インデックスとに基づいて、クエリ画像に類似する画像を検索する。
以下では、検索処理部60において行われる処理をより詳細に説明する。図11は、検索処理部60の処理の一例を示すフロー図である。
はじめに、クエリベクトル抽出部61は、検索条件として入力されたクエリ画像から、クエリベクトルを抽出する(ステップS201)。クエリベクトル抽出部61がクエリ画像からクエリベクトルを抽出する手法は、特徴ベクトル抽出部51が特徴ベクトルを抽出する手法と同じである。
つぎに、クエリ対応決定部62は、抽出された複数のクエリベクトルのそれぞれに対応する代表ベクトルを選択する(ステップS202)。より具体的には、クエリ対応決定部62は、クエリベクトルのそれぞれについて、クエリベクトルと代表ベクトルとの距離を算出し、その距離が最短となる代表ベクトルを、そのクエリベクトルに対応する代表ベクトルとして選択する。なお、クエリ対応決定部62は、距離の代わりに類似度に基づいてクエリベクトルに対応する代表ベクトルを選択してもよい。
代表ベクトルが選択されると、クエリスコア値算出部63は、クエリベクトルのそれぞれについて、代表ベクトルと、その代表ベクトルに対応する複数のクエリベクトルの類似の大きさを示すスコア値を算出する(ステップS203)。代表ベクトルおよびその代表ベクトルに対応するクエリベクトルからスコア値を算出する手法は、スコア値算出部53が代表ベクトルおよびその代表ベクトルに対応する特徴ベクトルからスコア値を算出する手法と同じである。
次に、クエリ特徴値算出部64は、クエリ画像のそれぞれについて、スコア値に基づいて、代表ベクトルごとに代表ベクトルに応じた特徴を示す複数のクエリ特徴値を算出する(ステップS204)。クエリ特徴値算出部64がクエリ画像について、スコア値に基づいて複数のクエリ特徴値を算出する手法は、特徴値算出部54が、ある画像についてスコア値に基づいて複数の特徴値を算出する手法と同じである。
そして、画像検索部65は、算出された複数のクエリ特徴値を圧縮し、検索インデックスの検索キーを生成する(ステップS205)。画像検索部65は、インデックス生成部55が、ある画像について、複数の特徴値を圧縮して検索インデックスを作成する手法と同じ手法により、複数のクエリ特徴値を圧縮して検索キーを生成する。
検索キーが生成されると、画像検索部65は、インデックス格納部72に格納された検索インデックスと、クエリ画像に基づいて生成された検索キーとに基づいて、クエリ画像に類似する画像を検索する(ステップS206)。より具体的には、画像検索部65は、検索キーのベクトルと検索インデックスのベクトルとの類似の大きさ(例えば距離)を算出し、その類似の大きさに基づいて画像を選択する。
本発明の実施形態にかかる手法においては、スコア値算出部53やクエリスコア値算出部63により、スコア値がベクトルではなくスカラー値として算出される。ここで、非特許文献1に記載のようなスコア値としてベクトルが算出される発明では、ある代表ベクトルと特徴ベクトルとの差と、その代表ベクトルと他の特徴ベクトルとの差が互いに特徴を弱めあう現象が生じる。一方、本発明の実施形態にかかる手法ではこの現象は生じない。これにより、例えば、ある画像に互いに類似する数多くの局所的特徴が含まれ、ある代表ベクトルに対応する特徴ベクトルの数が多い場合などに、スコア値としてベクトルを算出する構成で生じうる精度の低下を抑えることができる。また、本発明の実施形態では、スコア値がスカラー値であるので、1つのビジュアルワードについて必要な情報量がベクトルより少なくなる。これにより、画像検索において、特徴ベクトルとビジュアルワードとの違いの存在を考慮しつつ、より多くのビジュアルワードを扱うことができる。

Claims (9)

  1. 特徴ベクトル空間に含まれそれぞれ画像の特徴を示す複数の特徴ベクトルを複数の第1クラスタに分類し、それぞれ前記第1クラスタのいずれかを代表する複数の第1代表ベクトルを生成し、前記第1クラスタのうちいずれかに含まれる特徴ベクトルを複数の第2クラスタに分類し、それぞれ前記第2クラスタのいずれかを代表する複数の第2代表ベクトルを生成する代表ベクトル取得手段と、
    前記複数の特徴ベクトルのそれぞれと、当該特徴ベクトルに対応する前記第1および第2代表ベクトルとの間の類似度を示すスカラー値を算出するスカラー値算出手段と、
    画像のそれぞれについて、前記第1および第2代表ベクトルを含む代表ベクトルに応じた特徴を示す特徴値を前記スカラー値に基づき、代表ベクトルごとに算出する特徴値算出手段と、
    前記算出された特徴値に関連する検索インデックスを作成するインデックス作成手段と、
    を含む画像検索システム。
  2. 請求項1に記載の画像検索システムにおいて、
    前記特徴値算出手段は、画像のそれぞれについて、前記代表ベクトルごとに、当該代表ベクトルと複数の前記特徴ベクトルとの間で算出された前記スカラー値の合計を特徴値として算出する、
    画像検索システム。
  3. 請求項1または2に記載の画像検索システムにおいて、
    前記スカラー値算出手段は、前記代表ベクトルのそれぞれについて、前記代表ベクトルと、当該代表ベクトルに対応する複数の特徴ベクトルのそれぞれとの距離をスカラー値として算出する、
    画像検索システム。
  4. 請求項1から3のいずれかに記載の画像検索システムにおいて、
    前記インデックス作成手段は、複数の画像のそれぞれについての複数の特徴値を圧縮することにより、データ量が前記複数の特徴値より小さいインデックスを生成する、
    画像検索システム。
  5. 請求項に記載の画像検索システムにおいて、
    前記インデックス作成手段は、複数の画像のそれぞれについての複数の特徴値をオートエンコーダにより圧縮する、
    画像検索システム。
  6. 請求項1から5のいずれか一項に記載の画像検索システムにおいて、
    前記代表ベクトル取得手段は、前記第1クラスタに分類された特徴ベクトルの数が所定数より多い場合に、当該第1クラスタに属する特徴ベクトルを複数の第2クラスタに分類し、前記第1クラスタのうち少なくとも1つに属する複数の特徴ベクトルは、前記第2クラスタに分類されない
    画像検索システム。
  7. 請求項1からのいずれか一項に記載の画像検索システムにおいて、
    前記検索インデックスと、クエリ画像から求められる特徴値とに基づいて、前記クエリ画像に類似する画像を検索する画像検索手段をさらに含む画像検索システム。
  8. 特徴ベクトル空間に含まれそれぞれ画像の特徴を示す複数の特徴ベクトルを複数の第1クラスタに分類し、それぞれ前記第1クラスタのいずれかを代表する複数の第1代表ベクトルを生成し、前記第1クラスタのうちいずれかに含まれる特徴ベクトルを複数の第2クラスタに分類し、それぞれ前記第2クラスタのいずれかを代表する複数の第2代表ベクトルを生成するステップと、
    前記複数の特徴ベクトルのそれぞれと、当該特徴ベクトルに対応する前記第1および第2代表ベクトルとの間の類似度を示すスカラー値を算出するステップと、
    画像のそれぞれについて、前記第1および第2代表ベクトルを含む代表ベクトルに応じた特徴を示す特徴値を前記スカラー値に基づき、代表ベクトルごとに算出するステップと、
    前記算出された特徴値に関連する検索インデックスを作成するステップと、
    を含む画像検索方法。
  9. 特徴ベクトル空間に含まれそれぞれ画像の特徴を示す複数の特徴ベクトルを複数の第1クラスタに分類し、それぞれ前記第1クラスタのいずれかを代表する複数の第1代表ベクトルを生成し、前記第1クラスタのうちいずれかに含まれる特徴ベクトルを複数の第2クラスタに分類し、それぞれ前記第2クラスタのいずれかを代表する複数の第2代表ベクトルを生成する代表ベクトル取得手段、
    前記複数の特徴ベクトルのそれぞれと、当該特徴ベクトルに対応する前記第1および第2代表ベクトルとの間の類似度を示すスカラー値を算出するスカラー値算出手段、
    画像のそれぞれについて、前記第1および第2代表ベクトルを含む代表ベクトルに応じた特徴を示す特徴値を前記スカラー値に基づき、代表ベクトルごとに算出する特徴値算出手段、および、
    前記算出された特徴値に関連する検索インデックスを作成するインデックス作成手段、
    としてコンピュータを機能させるためのプログラム。
JP2018518547A 2017-01-20 2017-01-20 画像検索システム、画像検索方法およびプログラム Active JP6378855B1 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2017/001919 WO2018134964A1 (ja) 2017-01-20 2017-01-20 画像検索システム、画像検索方法およびプログラム

Publications (2)

Publication Number Publication Date
JP6378855B1 true JP6378855B1 (ja) 2018-08-22
JPWO2018134964A1 JPWO2018134964A1 (ja) 2019-01-24

Family

ID=62907969

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018518547A Active JP6378855B1 (ja) 2017-01-20 2017-01-20 画像検索システム、画像検索方法およびプログラム

Country Status (3)

Country Link
US (1) US11301509B2 (ja)
JP (1) JP6378855B1 (ja)
WO (1) WO2018134964A1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109033472A (zh) * 2018-09-05 2018-12-18 深圳灵图慧视科技有限公司 图片检索方法及装置、计算机设备及计算机可读介质
CN109635135A (zh) * 2018-11-30 2019-04-16 Oppo广东移动通信有限公司 图像索引生成方法、装置、终端及存储介质
US11442949B2 (en) * 2019-09-16 2022-09-13 Sap Se Semantic search of application rules
CN114245896A (zh) * 2019-10-31 2022-03-25 北京欧珀通信有限公司 向量查询方法、装置、电子设备及存储介质
CN110865787A (zh) * 2019-11-25 2020-03-06 京东方科技集团股份有限公司 图像处理方法、服务端、客户端和图像处理系统
CN111159443B (zh) * 2019-12-31 2022-03-25 深圳云天励飞技术股份有限公司 一种图像特征值的搜索方法、装置及电子设备
CN111352965B (zh) * 2020-02-18 2023-09-08 腾讯科技(深圳)有限公司 序列挖掘模型的训练方法、序列数据的处理方法及设备
US11461594B2 (en) 2020-03-23 2022-10-04 Raytheon Company Transform disentangling auto-encoder and related methods
CN112328819B (zh) * 2020-11-07 2023-08-18 嘉兴智设信息科技有限公司 一种基于图片集推荐相似图片的方法
CN116662588B (zh) * 2023-08-01 2023-10-10 山东省大数据中心 一种海量数据智能搜索方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004272580A (ja) * 2003-03-07 2004-09-30 Toshiba Corp 高次元テクスチャを合成する装置および方法およびプログラム
JP2011128773A (ja) * 2009-12-16 2011-06-30 Yahoo Japan Corp 画像検索装置、画像検索方法及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5374078B2 (ja) * 2008-06-16 2013-12-25 オリンパス株式会社 画像処理装置、画像処理方法および画像処理プログラム
JP5178662B2 (ja) * 2009-07-31 2013-04-10 富士フイルム株式会社 画像処理装置及び方法、データ処理装置及び方法、並びにプログラム
JP5577372B2 (ja) * 2012-03-29 2014-08-20 楽天株式会社 画像検索装置、画像検索方法、プログラムおよびコンピュータ読取り可能な記憶媒体
JP6620439B2 (ja) * 2015-07-01 2019-12-18 株式会社リコー 学習方法、プログラム及び学習装置
US10424052B2 (en) * 2015-09-15 2019-09-24 Peking University Shenzhen Graduate School Image representation method and processing device based on local PCA whitening
WO2017136083A1 (en) * 2016-02-05 2017-08-10 Google Inc. Compressing images using neural networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004272580A (ja) * 2003-03-07 2004-09-30 Toshiba Corp 高次元テクスチャを合成する装置および方法およびプログラム
JP2011128773A (ja) * 2009-12-16 2011-06-30 Yahoo Japan Corp 画像検索装置、画像検索方法及びプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NISTER, D. AND STEWENIUS, H.: "Scalable Recognition with a Vocabulary Tree", 2006 IEEE COMPUTER SOCIETY CONFERENCE ON COMPUTER VISION AND PATTERN RECOGNITION (CVPR2006), JPN6017010153, 2006, pages 2161 - 2168 *

Also Published As

Publication number Publication date
US11301509B2 (en) 2022-04-12
JPWO2018134964A1 (ja) 2019-01-24
US20190205331A1 (en) 2019-07-04
WO2018134964A1 (ja) 2018-07-26

Similar Documents

Publication Publication Date Title
JP6378855B1 (ja) 画像検索システム、画像検索方法およびプログラム
US11416710B2 (en) Feature representation device, feature representation method, and program
Tasse et al. Cluster-based point set saliency
JP5121917B2 (ja) 画像検索装置、画像検索方法及びプログラム
JP6897749B2 (ja) 学習方法、学習システム、および学習プログラム
CN110442618B (zh) 融合专家信息关联关系的卷积神经网络评审专家推荐方法
JP4937395B2 (ja) 特徴ベクトル生成装置、特徴ベクトル生成方法及びプログラム
Xiao et al. Motion retrieval using weighted graph matching
Kishorjit Singh et al. Image classification using SLIC superpixel and FAAGKFCM image segmentation
JP2018018330A (ja) データ検索プログラム、データ検索方法およびデータ検索装置
JP5014479B2 (ja) 画像検索装置、画像検索方法及びプログラム
Luqman et al. Subgraph spotting through explicit graph embedding: An application to content spotting in graphic document images
Perina et al. Learning natural scene categories by selective multi-scale feature extraction
JP3903613B2 (ja) 検索装置及び検索プログラムを記録したコンピュータ読み取り可能な記録媒体
JPWO2020095357A1 (ja) 検索ニーズ評価装置、検索ニーズ評価システム、及び検索ニーズ評価方法
JP2014115920A (ja) 多クラス識別器、方法、及びプログラム
CN111768214A (zh) 产品属性的预测方法、系统、设备和存储介质
JP6924450B2 (ja) 検索ニーズ評価装置、検索ニーズ評価システム、及び検索ニーズ評価方法
Fan et al. Robust visual tracking via bag of superpixels
JP5391876B2 (ja) 代表特徴抽出システム、方法およびプログラム
Li et al. New semantic descriptor construction for facial expression recognition based on axiomatic fuzzy set
Pardede et al. SVM Relevance Feedback in HSV Quantization for CBIR.
Xiao et al. Motion retrieval based on graph matching and revised Kuhn-Munkres algorithm
Nayef et al. Efficient symbol retrieval by building a symbol index from a collection of line drawings
Shin et al. Finding Compact Class Sets for Korean Font Image Classification

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180409

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180409

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20180409

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20180713

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180724

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180727

R150 Certificate of patent or registration of utility model

Ref document number: 6378855

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250