【发布时间】:2018-11-09 15:15:45
【问题描述】:
我正在使用一个代码,该代码使用 OpenCV 分析实时流中的帧,如果满足条件,则将当前帧保存到文件中。
逐帧分析视频的无限循环是这样的:
while True:
ret,frame = stream.read()
if conditionisMet :
pil_image = Image.fromarray(frame)
pil_image.save("/path/to/folder/image.jpg")
cv2.imshow("LiveStream", frame)
我要补充的是,如果过早(20-30 秒)再次满足条件,则不必保存图像,而 while 循环必须抓取另一帧并继续其工作。我已经尝试在 if 语句中使用time.sleep(30.0),但它会阻塞等待 30 秒通过的 while 循环。在这种情况下有没有办法使用time.sleep,或者其他适合我需要的方法?
提前致谢
【问题讨论】:
标签: python python-3.x opencv time while-loop