La lecture de flux de la caméra IP avec cv2.VideoCapture()
Se référant à cette même question Comment analyser mjpeg flux http de la caméra ip? j'ai été capable de lire le flux de la caméra IP, en utilisant requests
:
stream = requests.get('http://<user>:<pass>@<addr>:<port>/videostream.cgi', stream=True)
bytez = ''
while True:
bytez += stream.raw.read(16384)
...
et il fonctionne à merveille, mais souhaitez vous y rendre en utilisant cv2.VideoCapture()
plutôt demandes.
J'ai essayé de variations dans la manière de:
cap = cv2.VideoCapture()
cap.open('http://<user>:<pass>@<addr>:<port>/videostream.cgi?.mjpg')
while(True):
ret, frame = cap.read()
...
mais n'a pas réussi à obtenir quoi que ce soit, mais l'Exception cadre vide.
Comment lire les flux d'une caméra IP avec cv2.VideoCapture()?
OriginalL'auteur theta | 2014-03-26
Vous devez vous connecter pour publier un commentaire.
Ajouter C:\OpenCV\3rdparty\ffmpeg\ à la variable d'environnement PATH ou copie opencv_ffmpeg.dll à partir de ce répertoire C:\Python27. Ce qui a été répondu à cette question OpenCV 2.4 VideoCapture ne fonctionne pas sur Windows
OriginalL'auteur TonyParker
Je n'ai pas encore essayé d'accéder à une caméra IP à partir de VideoCapture, mais votre méthode
cap = cv2.VideoCapture()
la capture vidéo s'attend à un nombre représentant la caméra généralement0
.En le laissant vide, il n'a pas accès à une caméra, donc l'Exception à propos d'un cadre vide (même si plus tard, vous déclarez
cap.open()
, openCV déjà essayé d'ouvrir une caméra et déterminé qui est vide)OriginalL'auteur Antonio Minides
Passer à l'emplacement de l'appareil photo de votre
cap = cv2.VideoCapture()
ligne:OriginalL'auteur bugmenot123