所以我正在做的是截取屏幕截图,获取像素 RGB 值,并将其放入另一个图像中。代码可以在这里或下面找到。一切正常,除了它很慢,并且使系统也有点慢(当睡眠时间为 0 时)。
import time
import Image
import ImageGrab
X = 0 # seconds to pause before taking next pixel
WIDTH = 300 # the width of the image drawn, higher number = slower
HEIGHT = 300 # the height of the image drawn, higher number = slower
if __name__ == '__main__':
#start = time.time()
pixels_img = Image.new('RGB', (WIDTH, HEIGHT), 'black') # create a new Image instance
pixels = pixels_img.load()
for w in xrange(WIDTH):
for h in xrange(HEIGHT):
img = ImageGrab.grab() # take a screenshot
img = img.resize((WIDTH, HEIGHT)) # create a thumbnail
pixels[w, h] = img.getpixel((w, h)) # pixels(x, y) = (r, g, b)
time.sleep(X)
pixels_img.save('pixel.png', 'PNG')
pixels_img.show()
#print time.time() - start
我尝试使用 100 px 的图像大小,大约需要 19 分钟。考虑到我需要更大的图像来获得更好且可用的脚本,这很多。
我如何能:
- 使脚本更快,更快?
- 让它使用更少的系统资源?