Les méthodes d'assortiment de MatchTemplate () dans OpenCV "CV2.TM_CCOR_NORMED" et "CV.CV_COMP_BHATTACARYYA" donnent la même mesure
-
21-12-2019 - |
Question
Bonjour, j'aimerais apporter à votre avis, des méthodes de MatchTemplate () OpenCV ().Selon le livre Bhattacharya Coefficient est totalement différent de la corréalisation croisée normalisée, mais lorsque j'ai essayé ce morceau de code, j'ai eu la même distance partout pour chaque image.can que quiconque apporte cet avis aux développeurs OpenCV et essayer de dire pourquoi cela s'est passé.J'essayais de trouver la mesure de distance en utilisant ces deux méthodes
path1 = 'D:/cat1.png'
path2 = 'D:/cat2.png'
im1=cv2.imread(path1, cv2.CV_LOAD_IMAGE_GRAYSCALE)
im2=cv2.imread(path2, cv2.CV_LOAD_IMAGE_GRAYSCALE)
result = cv2.matchTemplate(im1,im2,cv.CV_COMP_BHATTACHARYYA) #Bhattacharya Coefficient
result2=cv2.matchTemplate(im1,im2,cv2.TM_CCORR_NORMED) #Normalized Cross Correlation
print"BCC :",result
print '\n'
print"NCC :",result2
La solution
Pas étonnant.
Outre CV_COMP_BHATTACACHYYA NE PAS être un Compare Cabler le drapeau pour MatchtTemplate ,
CV_COMP_BHATTACARYYA et TM_CCORD_NORMED Résolvez à la même valeur Enum 3 sous la hotte.
Donc, fondamentalement, vous faites la même chose deux fois.