gpt4 book ai didi

使用 ImageGrab 的 Python 屏幕记录

转载 作者:太空宇宙 更新时间:2023-11-03 22:43:02 26 4
gpt4 key购买 nike

我获得了使用 pillow ImageGrab 在 python 中录制屏幕的代码,这在我的 python 3.5 版本中无法正常工作。视频帧的大小不断减小。 like this

import numpy as np
from PIL import ImageGrab
import cv2
import time


last_time = time.time()
while(True):
# 800x600 windowed mode
printscreen = np.array(ImageGrab.grab(bbox=(0,0,800,600)))
print('loop took {} seconds'.format(time.time()-last_time))
last_time = time.time()
cv2.imshow('window',cv2.cvtColor(printscreen, cv2.COLOR_BGR2RGB))

if cv2.waitKey(25) & 0xFF == ord('q'):
cv2.destroyAllWindows()
break

最佳答案

这是预料之中的。当您使用 cv2.imshow() 时,它会在屏幕上显示一个窗口,并再次在 ImageGrab 中捕获。因此,如果您不显示图像而仅将它们保存为视频,则不会出现此问题。

要查看它是否按预期工作,您可以这样做,

printscreen =  np.array(ImageGrab.grab(bbox=(0,0,200,200)))

它只会捕获屏幕左上角的 200 X 200 像素。现在将 opencv 输出窗口拖离屏幕的左上角,您将看不到窗口中有窗口的效果。

关于使用 ImageGrab 的 Python 屏幕记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51531870/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com