import pyautogui as pg
import cv2
import pyscreeze
def recognise_image(image_name):
# 图片路径
image = '.\\gui_photo\\' + image_name
screenshot = '.\\gui_photo\\screenshot.png'
# 加载目标图像并获取其高度和宽度
target = cv2.imread(image, cv2.IMREAD_GRAYSCALE)
target_height, target_width = target.shape[:2]
# 截取当前屏幕图像
pyscreeze.screenshot(screenshot)
# 加载截取到的图像
template = cv2.imread(screenshot, cv2.IMREAD_GRAYSCALE)
# 匹配图像
res = cv2.matchTemplate(template, target, cv2.TM_CCOEFF_NORMED)
mn_val, max_val, mn_loc, max_loc = cv2.minMaxLoc(res)
print(mn_val, max_val)
theshold = 0.9
# 计算中心坐标并点击
if max_val >= theshold:
top_left = max_loc
centerX = top_left[0] + int(target_width / 2)
centerY = top_left[1] + int(target_height / 2)
pg.click(centerX, centerY, duration=0.25, button='left')
else:
print('Match Fail')
if __name__ == '__main__':
recognise_image(image_name)
使用cv2和pyautogui自动识别图像并点击
最新推荐文章于 2025-02-25 16:21:19 发布