pyautoguilocateCenterOnScreen 找不到我的源图像或“针”

问题描述 投票:0回答:1

我正在从屏幕左上角开始 543 像素宽、378 像素高的区域中搜索以下“针”

enter image description here

您可能认得 Firefox 徽标。

我的搜索区域如下所示:

enter image description here

我正在使用以下代码:

import pyautogui
import time

search_region = (0,0,543,378)
x, y = pyautogui.locateCenterOnScreen('graphics/firefox_icon.png',grayscale=True,confidence = 0.4,region=search_region)
print("We found it at X:"+str(x)+" Y:"+str(y))
pyautogui.click(x, y)

使用置信度值 1,0.9,0.8,0.7,0.6,0.5 执行代码时,会引发 ImageNotFoundException。当使用 0.4 的置信度时,它通常会选择位于云中的取景器菜单下方的像素(坐标 X:80,Y:69)。灰度=True 或False 时也会发生同样的情况。这是我的挑战,我无法让这样的简单用例发挥作用 - 而且我不确定我做错了什么。请提供一些选项,我可以尝试修复我的代码或配置。请注意 - 我正在使用 Mac 的“Shift - Cmd - 4”快捷键来选择创建针图像的区域 - 默认情况下输出为 png,以防可能相关。

我的环境:

  • Python版本:3.12.4
  • pyautolib 版本:0.9.54
  • opencv-python版本:4.10.0.84
  • Mac操作系统版本:14.5
  • MacBook Pro M1(视网膜显示屏)双显示器模式,34 英寸宽屏
python python-3.x ui-automation pyautogui
1个回答
0
投票

模板必须与干草堆具有相同的比例才能使该功能发挥作用。该功能不支持多尺度搜索。

© www.soinside.com 2019 - 2024. All rights reserved.