问题相关代码,请勿粘贴截图
import cv2
import time
import numpy as np
img_1 = cv2.imread(r'D:\Users\3D\flann\orb\image1.jpg')
img_2 = cv2.imread(r'D:\Users\3D\flann\orb\image2.jpg')
orb = cv2.ORB_create(nfeatures = 2000)
#检测关键点
kp1, des1 = orb.detectAndCompute(img_1, None)
kp2, des2 = orb.detectAndCompute(img_2, None)
gray1 = cv2.cvtColor(img_1, cv2.COLOR_BGR2GRAY)
gray2 = cv2.cvtColor(img_2, cv2.COLOR_BGR2GRAY)
# 画出关键点
outimg1 = cv2.drawKeypoints(gray1, keypoints=kp1, outImage=None)
outimg2 = cv2.drawKeypoints(gray2, keypoints=kp2, outImage=None)
bf = cv2.BFMatcher(normType = cv2.NORM_HAMMING , crossCheck = True)
matches0 = bf.match(des1, des2)
我想要达到的结果
将img_1和img_2更换位置会得到另一个matches1,求matches0和matches1的交集得到最终的matches。(其中的两张图为有重叠部分的图)