问题描述
d1,d2 是描述符
matches=[]
for i in range(len(d1)-1):
dist= (np.linalg.norm(d1[i] - d2[i])) / (np.linalg.norm(d1[i] - d2[i+1]))
#print (dist," ")
if dist <= 0.8:
k=k+1
matches.extend(cv2.DMatch(i,i,dist))
img3 = cv2.drawMatchesKnn(img1,f1,img2,f2,matches,None,flags=2)
TypeError: 'cv2.DMatch' 对象不可迭代
有什么帮助吗?
解决方法
通过以下更改解决
matches.append(cv2.DMatch(i,i,dist)) 但以下不起作用
img3 = cv2.drawMatchesKnn(img1,f1,img2,f2,matches,None,flags=2)