我尝试将我的SIFT-Keypoints与BF-matcher匹配。我曾经像本教程https://docs.opencv.org/3.0-beta/doc/py_tutorials/py_feature2d/py_matcher/py_matcher.html
那样做但是,如果我想通过print(good)获得x,y位置,它只会给我类似的东西 DMatch 000001DD9C4E0EB0
如何将其转换为职位?
答案 0 :(得分:1)
由于您未提供任何代码,因此我将根据教程中的代码回答您的问题。 基本上,关键点是由SIFT算法检测到的具有旋转,缩放和x,y位置的点,而描述符只是用于匹配它们的特征向量。 在matchs变量中,描述符之间有一组匹配项(DMatch)。关键点位于kp1和kp2中。 要找到匹配的两个点(p1,p2),请使用如下代码:
for match in matches:
p1 = kp1[match.queryIdx].pt
p2 = kp2[match.trainIdx].pt