设置 ImageGrab 从何处获取像素颜色

我正在使用 PIL 的 ImageGrab 来获取屏幕上特定像素的 RGB 值。我无法理解在哪里设置 x 和 y 坐标以获取像素。这是到目前为止的模式代码:


from PIL import ImageGrab

import threading


def getcol():

    global pxcolor

    threading.Timer(0.5, getcol).start()

    pixel=ImageGrab.grab().load()

    for y in range(0,1,1):

        for x in range(0,1,1):

            pxcolor=pixel[x,y]

            print(pxcolor)


getcol()

我尝试更改 和 的range值x,y但这改变了它的打印方式。我是一个初学者,我很抱歉这个愚蠢的问题,但我已经研究了很长时间并且无法弄清楚。目前它只是从我的屏幕左上角获取像素。我想在我的 1920x1080 屏幕上捕获单个中间像素。


繁星点点滴滴
浏览 258回答 1
1回答

繁华开满天机

未经测试,但类似这样的事情,你指定一个只有 1x1 像素的边界框:pixel=ImageGrab.grab((960,540,961,541))如果您检查它,它将为您提供:<PIL.Image.Image&nbsp;image&nbsp;mode=RGBA&nbsp;size=1x1&nbsp;at&nbsp;0x120668748>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python