J'essaie de tirer des trames individuelles à des heures spécifiées à partir d'un flux RTSP.OpenCV (Python) ne met pas à jour le cadre quand read() est appelé
Cela fonctionne très bien pour le streaming vidéo:
vcap = cv2.VideoCapture(RTSP_URL)
while(1):
ret, frame = vcap.read()
cv2.imshow('VIDEO', frame)
cv2.waitKey(1)
Mais si je veux prendre une image chaque seconde et l'enregistrer en faisant quelque chose comme ceci:
vcap = cv2.VideoCapture(RTSP_URL)
for t in range(60):
ret, frame = vcap.read()
if ret:
cv2.imwrite("{}.jpg".format(t), frame)
time.sleep(1);
Chaque image sera exactement la même que la première image. Dans chaque cas ret == True.
(Aussi ce fonctionnait très bien pour moi il y a une semaine, puis ipython fait quelque chose qui m'a obligé de faire une nouvelle installation)
Voulez-vous dire 'cv2.imwrite ('t.jpg', cadre)'? – zindarod
^^ Oui désolé, je l'ai réparé ... Je revenais entre les différentes bibliothèques. Mais j'avais cv2.imwrite() dans mon code actuel. – theastrocat
Vous ne voulez pas changer le nom de l'image 't.jpg' à chaque itération depuis son écrasement. –