Я работаю с кодом, который анализирует кадры из живого потока с помощью 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 должен захватить другой кадр и продолжить его.Работа.Я пробовал с time.sleep(30.0)
внутри оператора if, но он блокирует цикл while, ожидающий 30 секунд.Есть ли способ использовать time.sleep
в этом случае или другой метод, подходящий для моих нужд?
Заранее спасибо