添加以下功能,点击图片识别的位置
时间: 2024-03-11 09:51:19 浏览: 151
图片文本识别
为了添加点击图片识别的位置的功能,可以将之前代码中的第 8 步修改如下:
```python
# 将鼠标点击位置设置为查找到的图片的中心点位置,并进行点击操作
mouse.position = pos
mouse.click(Button.left)
```
在这里,我们将 `pos` 变量设置为查找到的图片的中心点位置,然后用 `mouse.position` 方法将鼠标移动到该位置,最后使用 `mouse.click` 方法进行点击操作。完整代码如下:
```python
import cv2
import numpy as np
from pynput.mouse import Button, Controller
from PIL import ImageGrab
import time
def find_image_on_screen(image_path):
# 读取要识别的图片
image = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE)
# 获取屏幕截图
screenshot = np.array(ImageGrab.grab())
# 将截图转换为灰度图像
gray = cv2.cvtColor(screenshot, cv2.COLOR_BGR2GRAY)
# 使用模板匹配找到图像在屏幕中的位置
res = cv2.matchTemplate(gray, image, cv2.TM_CCOEFF_NORMED)
min_val, max_val, min_loc, max_loc = cv2.minMaxLoc(res)
# 返回图像的位置和大小
top_left = max_loc
h, w = image.shape
bottom_right = (top_left[0] + w, top_left[1] + h)
return (top_left[0] + w // 2, top_left[1] + h // 2)
# 查找图片位置
pos = find_image_on_screen("baidu.png")
time.sleep(2)
# 创建鼠标对象
mouse = Controller()
# 获取当前鼠标位置
curr_pos = mouse.position
# 将鼠标点击位置设置为查找到的图片的中心点位置,并进行点击操作
mouse.position = pos
mouse.click(Button.left)
# 将鼠标移动回原来的位置
mouse.position = curr_pos
```
这样,就可以实现点击图片识别的位置的功能了。
阅读全文