Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Generate similarity score in percentage from SIFT using opencv

Tags:

I have been trying to find a way to generate similarity score ( in %) after comparing two images using SIFT in python (2.7.x) opencv (2.4.9). I was only able to find examples that draw lines between matches. How do I proceed with this.

like image 767
user93 Avatar asked May 12 '16 04:05

user93


1 Answers

There is an opencv equivalent of vl_ubcmatch function in Matlab.

Here is the excerpt from opencv documentation.

# create BFMatcher object
bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)

# Match descriptors.
matches = bf.match(des1,des2)

matches = bf. match (des1, des2) matches the two sets of descriptors and returns a list of DMatch objects. This DMatch object has four attributes: distance, trainIdx, queryIdx, imgIdx. These return values are equivalent of vl_ubcmatch function.

I hope you will find it helpful.

like image 148
satojkovic Avatar answered Sep 27 '22 17:09

satojkovic