Wednesday, April 8, 2015

Accurate Feature Matching between Same Scale Images using CSMatcher and OpenCV

You will find various best methods like BruteForce matcher or  FLANN matcher for feature matching between images, but you will see that there are some mismatches among the matched pairs.

Here I'm presenting CSMatcher library to get the accurate matches only. this method is very successful for same scale images and highly recommended for matching features between stereo images.

I have compared this with FLANN Matcher, this is faster than FLANN Matcher.


Results

1.0 matched keypoint pairs between 2 images from CSMatcher




1.1 matched keypoint pairs between 2 images from FLANNMatcher



Source code and all the details are in the attachment.



Help (Instructions)

OpenCV must be installed in your linux machine in order to compile this source code. (OpenCV 2.4.7 in Ubuntu 12.04 64bit machine is used for this demonstration)

compile the code using following command in the terminal (Path must be set to the source folder).
    g++ main.cpp -ldl -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_features2d -lopencv_nonfree -lopencv_flann -o find_matches

run the find_matches executable file using following command, here sample_4.jpg and sample_7.jpg are the images for matching.
    ./find_matches sample_4.jpg sample_7.jpg


Thanks...