FIREとFireWatch

FIREオープンソース(ライセンスはGPL)の CBIR (Content-based Image Retrieval) エンジンである。フリーライセンスかつオープンソースな CBIR エンジンは、 英語版Wikipedia の "List of CBIR Engines" 記事 が詳しい。ここを見ると、FIRE の他にも GIFT (GNU Image Finding Tool)、imgSeek など、さまざまなエンジンが世に存在していることがわかる。ただし、全部が全部、有用なわけではない。

  • どういう基準で retrieve しているのかわからないため、論文に引用しにくい: imgSeek など
  • 誰もメンテナンスしておらず、まともにコンパイル and/or 実行できない: GIFT

後者の落とし穴はかなりきつい。GIFT には Ubuntu 用のパッケージがあって、apt-get install gnuift で簡単にインストールできる…のだが、これはサーバだけであり、まともなクライアントがない。GIFTのwebサイト を見ると、Charmer なるクライアントがあるように見えるが、リンク切れしていて入手不能である。またgnuift-perl パッケージに gift-mrml-client.pl というクライアントが収録されているが、これを動かしてもまともにサーバと会話ができない。

というわけでFIREを使うことにする。こちらは文献情報もあり、クライアントも(ミラーとして保存されているのが辛うじて残っている程度だが)存在する。ただし、ソースコードを持ってきただけではコンパイルが通らない。C++STL のライブラリのバージョン違いが原因なのか、いくつか include ディレクティブを追加しないとコンパイルできない状態になっている。

FireWatch のほうは、依存ライブラリとして wxWidget 関係のパッケージを導入することが必要。-dbg で終わる開発用パッケージも必要なので注意。無事コンパイルできれば、content similarity に基づいて類似画像を検索できる。FIRE サーバを動かしているコンソールを見れば、スコアもわかる。

FIRE 関連情報

FIRE 文献情報

Thomas Deselaers, Daniel Keysers, Hermann Ney Features for Image Retrieval: An Experimental Comparison. Information Retrieval. 2008. Vol. 11. Issue 2. Springer. pp. 77-107. PDF