一个python数据求交集的问题

问题相关代码,请勿粘贴截图
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。(其中的两张图为有重叠部分的图)