OpenCV drawMatches не показывает линии совпадения - PullRequest
0 голосов
/ 06 марта 2020

Я использую образец OpenCV, как показано ниже:

img1 = cv.imread('0-copy.png',cv.IMREAD_GRAYSCALE)          # queryImage
img2 = cv.imread('output1.png',cv.IMREAD_GRAYSCALE)   # trainImage
# Initiate ORB detector
orb = cv.ORB_create()
# find the keypoints and descriptors with ORB
kp1, des1 = orb.detectAndCompute(img1,None)
kp2, des2 = orb.detectAndCompute(img2,None)
# create BFMatcher object
bf = cv.BFMatcher(cv.NORM_HAMMING, crossCheck=True)
# Match descriptors.
matches = bf.match(des1,des2)
# Sort them in the order of their distance.
matches = sorted(matches, key = lambda x:x.distance)
# Draw first 10 matches.
img3 = cv.drawMatches(img1,kp1,img2,kp2,matches[:100],None,flags=cv.DrawMatchesFlags_NOT_DRAW_SINGLE_POINTS)
plt.imshow(img3),plt.show()

, но график не показывает линии совпадения между двумя изображениями, а просто показывает их рядом. Есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...