【发布时间】:2014-04-02 16:32:50
【问题描述】:
以下代码从网络摄像头捕获图像,并保存到磁盘中。我想编写一个程序,它可以每 30 秒自动捕获一次图像,直到 12 小时。最好的方法是什么?
import cv2
cap = cv2.VideoCapture(0)
image0 = cap.read()[1]
cv2.imwrite('image0.png', image0)
以下是根据@John Zwinck 的回答进行的修改,因为我还需要将每 30 秒捕获的图像写入带有捕获时间的磁盘命名:
import time, cv2
current_time = time.time()
endtime = current_time + 12*60*60
cap = cv2.VideoCapture(0)
while current_time < endtime:
img = cap.read()[1]
cv2.imwrite('img_{}.png'.format(current_time), img)
time.sleep(30)
但是,上述代码每次只能将最后一个文件写入前一个文件。期待它的改进。
【问题讨论】: