介绍
用于识别黄色的问号
import cv2
import numpy as np
from PIL import ImageGrab
import time
# 目标图像
target = cv2.imread('target.png')
# 预处理目标图像
def process_image(img):
img_hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
lower = np.array([26,43,46])
upper = np.array([34,255,255])
mask = cv2.inRange(img_hsv, lower, upper)
img_output = cv2.bitwise_and(img, img, mask=mask)
return img_output
target_processed = process_image(target)
while True:
# 获取屏幕图像
screen = np.array(ImageGrab.grab())
# 预处理屏幕图像
screen_processed = process_image(screen)
# 模板匹配
res = cv2.matchTemplate(screen_processed,target_processed, cv2.TM_CCOEFF_NORMED)
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
if max_val > 0.6:
print('Target Detected')
# 小休息
time.sleep(0.1)
网友评论