python 图片中获取相似图片 位置坐标
时间: 2023-09-03 13:16:36 浏览: 233
text.zip_opencv_python_python opencv
要在Python中获取相似图片位置坐标,可以使用图像匹配算法。其中,最常用的是模板匹配算法。
以下是使用OpenCV库进行模板匹配的示例代码:
```python
import cv2
# 读取原始图片和模板图片
img = cv2.imread('original_image.jpg')
template = cv2.imread('template_image.jpg')
# 获取模板图片的高度和宽度
h, w = template.shape[:2]
# 进行模板匹配
res = cv2.matchTemplate(img, template, cv2.TM_CCOEFF_NORMED)
# 设定匹配阈值(0.8为默认值)
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('result', img)
cv2.waitKey(0)
cv2.destroyAllWindows()
```
在上述代码中,我们首先读取原始图片和模板图片,并获取模板图片的高度和宽度。接着,使用`cv2.matchTemplate()`函数进行模板匹配,并设定匹配阈值。最后,获取匹配程度大于阈值的所有位置,并在原始图片中标记出所有匹配的位置。
阅读全文