Задать вопрос
@Foxford12

Почему не работает код?

Я пытаюсь делать фото через вэб-камеру каждые 15секунд. Переменная pip отвечает за имя файла чтобы он не заменялся новым, переменная time_foto запускает таймер, почему-то код делает только первую фотографию на промежутке времени 0 а потом фотографий не делает и камера тоже зависает помогите пожалуйста

import numpy as np
import cv2
import time

cap = cv2.VideoCapture(0)
pip = 0
time_foto = 0
while True:

    _, image = cap.read()
    pip += 1
    if pip == 1:
           cv2.imwrite(f'{pip}.png', image)
           time_foto = time.perf_counter()
    elif pip > 1:
           if time_foto >= 15:
               cv2.imwrite(f'{pip}.png', image)
               time_foto = 0
           else:
                 continue
    else:
         continue

    cv2.imshow("Web-Kamera", image)



cv2.destroyAllWindows()
cap.release()
  • Вопрос задан
  • 101 просмотр
Подписаться 1 Средний 1 комментарий
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
В твоём коде показано, как определить класс объекта. Смотри, как формируется prediction_text.
А дальше просто. Храни в глобальной переменной время, когда был сохранён последний снимок объекта с желаемым классом.
Если у тебя на текущем кадре есть объект с желаемым классом, проверь текущее время. Если прошло 30 секунд с последнего сохранения - сохрани новый снимок, и обнови время последнего сохранения на текущее.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы