points1 = np.array([list(keypoint1[x.queryIdx].pt) for x in good_matches]).astype(int) AttributeError: 'numpy.ndarray' object has no attribute 'queryIdx'
时间: 2023-06-26 16:06:29 浏览: 120
narf_keypoint.rar_narf关键点提取
这个错误通常是因为 `good_matches` 对象不是正确的类型所导致的。通常情况下,`good_matches` 应该是一个 `list` 类型的对象,其中每个元素都是一个 `cv2.DMatch` 类型的对象,包含两个特征点之间的匹配信息。
请检查 `good_matches` 变量的类型和内容是否正确。如果 `good_matches` 不是一个 `list` 对象,可以尝试通过将其转换为 `list` 类型来解决这个问题,例如:
```
good_matches = list(good_matches)
```
如果 `good_matches` 是 `list` 对象,但是仍然无法访问 `queryIdx` 属性,可能是因为 `cv2.DMatch` 对象的版本不兼容所导致的。在这种情况下,您可以尝试使用其他版本的 OpenCV 库,或者尝试使用其他类型的匹配算法。
阅读全文