現在、私は、テキスト検索のベクトル空間モデルに似たビジュアルワードベースの画像検索システムのバッグを作成しています。このフレームワークの下では、各画像はベクトルで表されます(または、時には文献のヒストグラムとも呼ばれます)。基本的に、ベクトルの各数字は、各「視覚的単語」がその画像内に現れる回数を数えます。 2つの画像が互いに「近い」ベクトルを有する場合、これはそれらが共通の多くの画像特徴を有し、したがって類似していることを意味する。コンテンツベースの画像検索用のベクトル/ヒストグラムのコレクションのインデックスを作成する方法
私は基本的にそのようなベクトルのセットの反転ファイルインデックスを作成しようとしています。私は何千もの(試行段階で)数十万から数百万の画像まで拡大することができるので、自宅で作られたデータ構造のハックは機能しません。
私はLuceneを見てきましたが、私の場合は数字(つまりベクトルそのもの)をインデックスに入れたいと思うのに対し、Luceneを見ました。私は人々がベクトルを次のようにテキスト文書に変換するケースを見てきました:
< 3,6、...、5> - "w1 w2 ... wn"基本的に、非ゼロである任意の構成要素は、テキスト語「w [n]」で置き換えられ、ここで、nはその数のインデックスである。この「文書」はLuceneに渡され、索引付けされます。
この方法を使用する際の問題点は、ベクトルのテキスト表現が、特定の「単語」がどのくらいの頻度でコード化されるのではなく、検索された画像のランキングがうまくいかないことです。
ベクターを処理できる成熟した索引付けAPIを知っている人はいますか、私はLuceneを使い続けることができるように、ベクターに別のコード体系を提案していますか?私はLucene for Image Retrieval(LIRE)プロジェクトも見てきましたが、それに付属のデモを試しましたが、デモを実行したときに生成された例外の数がわかりません。
APIの言語については、C++またはJavaに公開しています。
お返事ありがとうございます。