So I\'m working on a simple Java app that allows a user to input an image as a query and have the app compare it against a database of images (which is basically no more tha
The Fiji image processing package, which extends ImageJ, has a wiki website with information on its SIFT plugin:
http://pacific.mpi-cbg.de/wiki/index.php/Feature_Extraction
The source code of the SIFT implementation in java is available in the mpicbg.git repository:
http://pacific.mpi-cbg.de/cgi-bin/gitweb.cgi?p=mpicbg.git
The library that includes the SIFT feature extraction and feature matching is the mpicbg.jar, under Fiji.app/jars/ folder when you download Fiji.
Fiji can be downloaded from here:
http://pacific.mpi-cbg.de/wiki/index.php/Downloads
An example of usage of the SIFT plugin is the registration of consecutive slices in an electron microscopy stack. See this page:
http://pacific.mpi-cbg.de/wiki/index.php/Register_Virtual_Stack_Slices
The source code will teach you how to use the library for SIFT feature extraction and for computing transformation models from sets of matching features:
http://pacific.mpi-cbg.de/cgi-bin/gitweb.cgi?p=fiji.git;a=blob;f=src-plugins/register_virtual_stack_slices/register_virtual_stack/Register_Virtual_Stack_MT.java;hb=HEAD