cv2 模板匹配 示例代码
时间: 2023-07-28 08:07:33 浏览: 89
以下是一个简单的cv2模板匹配示例代码:
```python
import cv2
import numpy as np
# 读取原始图像和模板图像
img = cv2.imread('image.jpg')
template = cv2.imread('template.jpg')
# 获取模板图像的高度和宽度
h, w = template.shape[:2]
# 使用cv2模板匹配函数进行匹配
res = cv2.matchTemplate(img, template, cv2.TM_CCOEFF_NORMED)
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
# 绘制矩形框标注匹配结果
top_left = max_loc
bottom_right = (top_left[0] + w, top_left[1] + h)
cv2.rectangle(img, top_left, bottom_right, (0,0,255), 2)
# 显示匹配结果
cv2.imshow('Match Result', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上面的代码中,我们首先读取了原始图像和模板图像,然后使用了cv2.matchTemplate函数进行匹配。最后,我们使用cv2.rectangle函数在匹配结果中标注出了匹配的区域,并显示了匹配结果图像。
需要注意的是,不同的匹配方法需要在cv2.matchTemplate函数中选择不同的标志参数。在上面的代码中,我们选择了TM_CCOEFF_NORMED方法,该方法使用归一化的相交匹配来计算匹配度。
阅读全文