opencv学习29——简单屏幕录制

from PIL import ImageGrab
import  numpy as np
import  cv2

fps = 20
start = 3   # 延时录制
end = 15    # 自动结束时间

curScreen = ImageGrab.grab()            # 获取屏幕对象
height, width = curScreen.size

video = cv2.VideoWriter('video02.avi', cv2.VideoWriter_fourcc(*'XVID'), fps, (height, width))

imageNum = 0
while True:
    imageNum += 1
    captureImage = ImageGrab.grab()     # 抓取屏幕
    frame=cv2.cvtColor(np.array(captureImage), cv2.COLOR_RGB2BGR)

    cv2.imshow('capturing',np.zeros((1,250),np.uint8))
    # cv2.moveWindow('capturing',height,width)            # 窗体不显示
    cv2.moveWindow('capturing', height-100, width-100)  # 窗体显示,方便退出
    if imageNum>fps*start:
        video.write(frame)
    if cv2.waitKey(50) == ord('Q') or imageNum>fps*end:
        break
video.release()
cv2.destroyAllWindows()

 

你可能感兴趣的:(opencv学习29——简单屏幕录制)