📅  最后修改于: 2023-12-03 15:23:26.030000             🧑  作者: Mango
OpenCV 是一个开源的计算机视觉库,支持图像处理、计算机视觉、机器学习等多个领域,其中模板匹配也是常用的功能之一。下面将介绍如何在Python中使用OpenCV进行模板匹配。
模板匹配是一种在一张图像中查找并匹配模板图像的技术,用于检测目标图像中是否存在模板图像,并返回匹配的位置信息。模板匹配在实际应用中广泛使用,如图像识别、人脸识别、字符识别等。
使用OpenCV进行模板匹配比较简单,可以通过cv2.matchTemplate函数实现。该函数的参数包括查找图像、模板图像以及匹配方法等。接下来我们来看一下示例代码:
import cv2
import numpy as np
# 加载查找图像和模板图像
img = cv2.imread('source.jpg', 0)
template = cv2.imread('template.jpg', 0)
# 获取模板图像的宽高
w, h = template.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('detected', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
函数cv2.matchTemplate的参数说明如下:
matchTemplate(image, templ, method[, result]) -> result
本文介绍了如何在Python中使用OpenCV进行模板匹配,通过cv2.matchTemplate函数实现。希望对大家有所帮助!