'''
实验名称：模板匹配(多目标)
实验平台：核桃派1B
'''

import cv2
import numpy as np

img = cv2.imread('number.jpg') #读取原始图像
temp = cv2.imread('2.jpg') #读取模板图像

h, w, c = temp.shape #获取模板图像信息，高、宽、通道数

#使用标准相关匹配，结果越大，匹配度越大
result = cv2.matchTemplate(img, temp, cv2.TM_CCORR_NORMED)

print(result) #打印结果

#计算匹配结果并画矩形
num = 0 #用于计算匹配结果数量
for y in range(len(result)): #遍历每行
    for x in range(len(result[y])): #遍历每列
        
        if result[y][x] > 0.999: #可修改(需要小于1)，数值越大，匹配度精度高，得到的结果减少。
            
            cv2.rectangle(img, (x, y), (x+w, y+h), (0, 0, 255),2) #画矩形
            
            num = num + 1 

print(num)  #计算匹配结果，可通过修改参数为0.9, 0.999观察数量。

cv2.imshow('result', img) #显示结果图像

cv2.waitKey() #等待键盘任意按键按下
cv2.destroyAllWindows() #关闭窗口
