Python笔记-利用OpenCV的matchTemplate屏幕找图并使用pyautogui点击
Posted IT1995
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python笔记-利用OpenCV的matchTemplate屏幕找图并使用pyautogui点击相关的知识,希望对你有一定的参考价值。
要找的图为计算机,也就是icon.png,对应的图标为:
需要安装的依赖:
pip install cv2
pip install PIL
pip install pyautogui
代码如下:
import cv2
from PIL import ImageGrab
import numpy as np
import pyautogui
if __name__ == '__main__':
im = ImageGrab.grab()
im.save('./res/screen.png', 'png')
img_rgb = cv2.imread('./res/screen.png')
# 所有操作在灰度版中进行
img_gray = cv2.cvtColor(img_rgb, cv2.COLOR_BGR2GRAY)
template = cv2.imread('./res/icon.png', 0)
res = cv2.matchTemplate(img_gray, template, cv2.TM_CCOEFF_NORMED)
threshold = 0.7
loc = np.where(res >= threshold)
for pt in zip(*loc[::-1]):
print(pt[0], pt[1])
# pyautogui.moveTo(pt[0] + template.shape[0] / 2, pt[1] + template.shape[1] / 2)
pyautogui.doubleClick(pt[0] + template.shape[0] / 2, pt[1] + template.shape[1] / 2)
pass
print('over')
pass
以上是关于Python笔记-利用OpenCV的matchTemplate屏幕找图并使用pyautogui点击的主要内容,如果未能解决你的问题,请参考以下文章
利用Anaconda安装python后,如何安装opencv-python
树莓派上利用python+opencv+dlib实现嘴唇检测