b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

PyAutoGui 图片识别+定位+截图函数文档

电脑杂谈  发布时间:2019-11-26 02:01:00  来源:网络整理

图片坐标识别_谷歌图片识别_百度图片识别搜索

本章节有个比较重要的变量 locateCenterOnScreen!

如果你有一个图像文件,你可以在屏幕下直观地定位一些东西。

它直接返回x,y坐标点,返回值可以给click()

PyAutoGUI可以获得屏幕图片,将他们保存至文件中,并在屏幕中辨识并定位图像。这是有用的,如果你有一个小的图像,比方说,一个按钮图片坐标识别,需要单击,并期望找到它在屏幕下。这些特点由PyScreeze模块提供,该组件与PyAutoGUI一起安装

作者:Simon0903

來源:简书

简书著作权归作者所有,任何方式的转帖都请联络作者获取授权并标明出处。

截图功能应该依赖pillow模块。

OSX使用screencapture命令,它与操作系统一起提供。

谷歌图片识别_图片坐标识别_百度图片识别搜索

Linux使用scrot命令,可以通过运行sudoapt-getinstallscrot.

Ubuntu在安装pillow方面虽然有一些缺陷。PNG和JPEG支持不比如在Ubuntu上的pillow中。以下链接有更多信息:

import pyautogui as auto

屏幕图片()函数

screenshot()

将返回 Image 对象(有关详细信息,请参看枕头或PIL模块文档)。传递文件名的字符串将屏幕快照保存到文件中,并将其成为Image对象返回。

# 有一个可选的 region 关键字参数,如果不期望听到整个屏幕的图片。

# 可以释放区域的右、顶、宽跟低的四个整数元组来捕获:

pic_1 = auto.screenshot()

谷歌图片识别_百度图片识别搜索_图片坐标识别

pic_2 = auto.screenshot('my_screenshot.png')#在1920 x 1080屏幕上,screenshot()函数大约应该100毫秒

pic_3 = auto.screenshot("my_screenshot.png ",region=(0,0, 300, 400))

在#1920 x 1080屏幕上,定位函数调用大约应该1或2秒 ,不适用于游戏脚本调用,原因是很慢

locateOnScreen()

例如,假设计算器应用程序在您的计算机下运行,如下所示:

# 当开启计算器界面的之后,这时您不能直接调用moveTo()和click()函数,如果您不知道计算器按钮的准确屏幕坐标。

# 每次开启时,计算器都会发生在一个稍微不同的地方,因此经常都应该再次查找坐标。

# 但是,如果您有该图标的图像,例如7按钮的图像:

谷歌图片识别_百度图片识别搜索_图片坐标识别

# 就直接用照片识别用途定位它的屏幕坐标(是元组,左、上、右、下),这个返回结果(元组)也可以给center()函数方式,转化成x,y的坐标值

#如果屏幕下找不到图像,locateOnScreen() 则返回结果为:None.

number7_location = auto.locateOnScreen('calc7key.png') #传入按钮的截图

print(number7_location) # 返回屏幕所在位置

>>>(1416, 562, 50, 41)

x,y = auto.center(number7_location) # 转化为 x,y坐标

print(number7_location) #按键7的坐标是1441,582

>>>(1441, 582)

图片坐标识别_百度图片识别搜索_谷歌图片识别

auto.click(number7_location)

# 点击坐标图片坐标识别,click()它是支持元组格式的坐标传入的

返回找到的第一个截图Image对象在屏幕下的中心坐标(x, y),如果没找到返回None

auto.locateCenterOnScreen('1.png',grayscale=False)

# 参数grayscale是是否转灰度

>>>(1441, 582)

# 返回找到的所有相同图片Image对象在屏幕下的坐标,返回结果是(left, top, width, height)的‘’

auto.locateAllOnScreen('xxx.png',grayscale=False) #遍历找到屏幕下所有显示为xxx的图像对象坐标,转灰度操作=关闭

auto.locate('xxx.png')

# 返回找到的第一个截图Image对象在haystackImage里面的坐标(left, top, width, height),如果没找到返回None

auto.locateAll('xxx.png')

# 返回找到的所有相同图片Image对象在haystackImage里面的坐标(left, top, width, height)的


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/tongxinshuyu/article-131331-1.html

    相关阅读
      发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

      热点图片
      拼命载入中...