Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Similar image search using an image

I am working on a project in which the two images will be checked for similarity like 'Google Image Search by image'.

I searched through Google and also on various sites including stackoverflow and learnt about various techniques like histogram, sift, fourier transform, pixel grabbing, etc.

The things are too complex for me to understand being a beginner in this field.

My questions are:

  1. From where can i get started?? Is there any book available or a site which give tutorials for learning about how to actually use these techniques?

  2. Are there new techniques which can be implemented for this purpose??

I want to start searching images via color then if possible other attributes later.

Language preferred is Java.

There is a similar thread on this topic but it was written years ago.

like image 502
user3780435 Avatar asked Sep 30 '22 03:09

user3780435


1 Answers

I've made a tool named Images similarities searcher for this purpose as free software available at http://sourceforge.net/projects/imgndxr/

It use two libraries:

  • LIRE : http://www.semanticmetadata.net/lire/

The LIRE (Lucene Image REtrieval) library provides a simple way to retrieve images and photos based on their color and texture characteristics. LIRE creates a Lucene index of image features for content based image retrieval (CBIR). Several different low level features are available, such as MPEG-7 ScalableColor, ColorLayout, and EdgeHistogram, Auto Color Correlogram, PHOG, CEDD, JCD, FCTH, and many more. Furthermore simple and extended methods for searching the index and result browsing are provided by LIRE. LIRE scales well up to millions of images with hash based approximate indexing. The LIRE library and the LIRE Demo application as well as all the source are available under the Gnu GPL license.

  • LUCENE : http://lucene.apache.org/core/

Apache LuceneTM is a high-performance, full-featured text search engine library written entirely in Java. It is a technology suitable for nearly any application that requires full-text search, especially cross-platform.

Apache Lucene is an open source project available for free download. Please use the links on the right to access Lucene.

like image 93
Aubin Avatar answered Oct 06 '22 03:10

Aubin