python opencv模板匹配
时间: 2023-11-20 16:59:31 浏览: 102
opencv+python 模板匹配实现.zip
4星 · 用户满意度95%
以下是使用OpenCV实现图片模板匹配的Python代码示例:
```python
import cv2
import numpy as np
# 读取模板和待匹配图像
template = cv2.imread('template.jpg', 0)
img = cv2.imread('test.jpg', 0)
# 获取模板和待匹配图像的尺寸
w, h = template.shape[::-1]
W, H = img.shape[::-1]
# 使用相关系数匹配方法进行模板匹配
res = cv2.matchTemplate(img, template, cv2.TM_CCOEFF_NORMED)
# 设置匹配阈值
threshold = 0.8
# 获取匹配结果中大于阈值的位置
loc = np.where(res >= threshold)
# 在原图上标记匹配位置
for pt in zip(*loc[::-1]):
cv2.rectangle(img, pt, (pt[0] + w, pt[1] + h), (0, 0, 255), 2)
# 显示匹配结果
cv2.imshow('Match Result', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
上述代码中,我们首先读取了模板和待匹配图像,并获取了它们的尺寸。然后使用OpenCV中的matchTemplate函数进行模板匹配,得到了匹配结果res。接着,我们设置了匹配阈值threshold,并使用np.where函数获取了匹配结果中大于阈值的位置loc。最后,我们在原图上标记了匹配位置,并显示了匹配结果。
阅读全文