wangzhibo
2022-03-14 5a4e2f4942edc1b86e79d82af6b658165dfb7220
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# -*- coding: utf-8 -*-
 
 
 
 
#匹配相应的模板
__author__ = '上海色宁'
 
import sys
import cv2
img = cv2.imread(sys.argv[1], 0)
img2 = img.copy()
template = cv2.imread(sys.argv[2], 0)
w, h = template.shape[::-1]
# methods = ['cv2.TM_CCOEFF', 'cv2.TM_CCOEFF_NORMED', 'cv2.TM_CCORR','cv2.TM_CCORR_NORMED', 'cv2.TM_SQDIFF', 'cv2.TM_SQDIFF_NORMED']
meth = 'cv2.TM_CCORR_NORMED'
img = img2.copy()
'''
exec可以用来执行储存在字符串货文件中的python语句
例如可以在运行时生成一个包含python代码的字符串
然后使用exec语句执行这些语句
eval语句用来计算存储在字符串中的有效python表达式
'''
method = eval(meth)
# 匹配应用
res = cv2.matchTemplate(img, template, method)
mn_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
top_left = max_loc[0]
print('偏移像素',top_left)