The LIRE (Lucene Image REtrieval) library a simple way to create a Lucene index of image features for content based image retrieval (CBIR). The implemented features are
Furthermore methods for searching the index based on Lucene are provided.
The LIRE library started out as part of the Caliph & Emir project and aimed to provide the CBIR features of Caliph & Emir to other Java projects in an easy and light weight way. In the meantime it has turned out as big and interesting projekt itself.
Lire employs global image features for content based image retrieval. For more information on the underlying methods and techniques you should consult the basic literature on content based images retrieval:
Further it uses the Java search engine Lucene to provide
The performance of Lire has been tested initially with a test data set consisting of 3890 mixed size digital photos (1-2 MP) on an AMD Athlon XP 2600, 1GB RAM, JSDK 1.5.0_05 running Windows XP. Parameters for the Java VM were
-server -Xms256M -Xmx512M.
Searching with default Searcher … (averaged on 50 searches)
BufferedImageas input: 341 ms per search
Documentas input: 64 ms per search
Creation (with ExtensiveDocumentBuilder):
Searching with default Searcher on this index B (averaged on 50 searches)
BufferedImageas input: 589 ms per search
Documentas input: 100 ms per search
In general the
DocumentBuilderFactory.getFastDocumentBuilder() is the best choice for fast retrieval. The most time consuming task in there is the extraction of the features from the image itself, which is for the FastDocumentBuilder only one single very feature, which is a fast one base on color distribution in the image (MPEG-7 ColorLayout Descriptor).
The performance of the
DocumentBuilderFactory.getDefaultDocumentBuilder() better than the
DocumentBuilderFactory.getExtensiveDocumentBuilder() one, but returns intuitively the best results.