使用 Python 录制视频

Recording video with Python

所以我一直在尝试使用位于 here 的代码为树莓派项目拍摄和录制 python 中的视频。我想使用 python,因为我与之交互的所有其他硬件都是用 Python 编写的。

我不太明白如何停止这个脚本。为我输入任何字符组合再多也无法阻止此脚本。有什么建议吗?

所有建议更正后的最终代码(在显示相机图片的屏幕上输入输入时有效):

import numpy as np
import cv2

cap = cv2.VideoCapture(0)

while(True):
    #capture frame-by frame
    ret,frame = cap.read()

    #operations on the frame
    gray = cv2.cvtColor(frame,cv2.COLOR_BGR2GRAY)

    #display
    cv2.imshow('frame', gray)
    key =  cv2.waitKey(1000) & 0xFF
    print key
    if key == 27:
        break

cap.release()
cv2.destroyAllWindows()

如果你按下了所有按钮,相机没有停止拍摄,这只是说明它不符合if语句中的条件,因此它不会break循环。

你可以做的是分配一个特定的键来停止捕获。如果您查看 this 问题中的代码,您可以看到 Mike 已将 ESCAPE 键(ASCII 代码 27)指定为使他退出循环的键。

试试这个:

key = cv2.waitKey(1000) & 0xFF

参见 "warning" here