2024-03-29 09:34:35 发布
网友
我想拍一张屏幕一定范围内的截图,然后我想检查某些线条的像素值(例如x_轴从400到800)。 我尝试了很多方法,比如imagegrab、gdi32.GetPixel等等。读取像素值似乎要花费很多时间,所以我甚至尝试将其转换为一个列表,类似这样的
im = ImageGrab.grab(box) pixels = list(im .getdata())
即使这样看起来也不快。我做错什么了吗?你知道吗
ImageGrab以PIL格式返回像素(Python图像库:http://effbot.org/imagingbook/image.htm),并且.getdata()已经以序列的形式返回像素。通过再次将它包装在list()中,您将执行两次相同的(昂贵的)操作。你可以这样做:
ImageGrab
.getdata()
list()
im = ImageGrab.grab(box) pixels = im.getdata()
以你最喜欢的方式遍历像素。你知道吗
ImageGrab
以PIL格式返回像素(Python图像库:http://effbot.org/imagingbook/image.htm),并且.getdata()
已经以序列的形式返回像素。通过再次将它包装在list()
中,您将执行两次相同的(昂贵的)操作。你可以这样做:以你最喜欢的方式遍历像素。你知道吗
相关问题 更多 >
编程相关推荐