Voila, je souhaite manipuler le flux vidéo d'une camera IP sous OpenCV en remplacement du flux provenant de ma Webcam. L'objectif étant de faire des captures classiques à certains instants.
Config actuelle :
- Windows seven 64bits (je vais migrer dans un second temps)
- OpenCV2.1 (Je suis revenu à cette version car trop de pb d'install et de compatibilité avec la version 2.3.1)
Ma camera semble être d'une manufacture mixte. Je me documente actuellement sur cette cam IP. Pour le moment :
- Drivers installé et camera reconnu
- IP automatiquement attribué par l'outil
- 1) Existe t'il une solution générique pour visionner le flux d'une caméra IP quelconque dans une page WEB en local connaissant son IP?
J'ai testé cette méthode :
http://XXX.XXX.XXX.XXX
(IP fourni par l'outil) sous IE et Firefox, cela ne fonctionne pas. Je ne visualise rien.
Sur internet, il semble y avoir beaucoup de solutions pour les caméras AXIS ou d'autres compagnies.
Sous AXIS, certains font :
http://192.168.1.118/axis-cgi/mjpg/video.cgi?
D'autres :
http://192.168.2.15/GetData.cgi
- 2) Existe t'il une solution générique pour capturer le flux d'une caméra IP quelconque à partir d'OpenCV?
Sous OpenCV, la commande employée pour récupérer le flux de la Webcam est celle-ci :
cap_gauche = cvCaptureFromCAM(1)
avec l'indice qui change en fonction des sorties.
Pour les cameras IP, il semble y avoir deux strategies pour accéder aux flux :
- lire du MJPEG par le protocole HTTP
- lire du MPEG-4 par le protocole RTSP
On trouve sur des forums des tentatives avec :
cvCaptureFromFile("rstp:adresseIPdemacamera");
Une solution indirecte que je n'ai pas testé pour le moment :
http://stackoverflow.com/questions/7...etwork-cameras (ci-dessous)
"OpenCV can be compiled with FFMPEG support. From ./configure --help:
--with-ffmpeg use ffmpeg libraries (see LICENSE) [automatic] You can then use *cvCreateFileCapture_FFMPEG* to create a CvCapture with e.g. the URL of the camera's MJPG stream."
CvCapture *capture = cvCreateFileCapture_FFMPEG("http://axis-cam/mjpg/video.mjpg?resolution=640x480&req_fps=10&.mjpg");
Certains parlent d'employer GStreamer, tester sur camera AXIS :
http://xuv.be/OpenCV-GStreamer-Camera-sur-IP.html
Voila une partie des tentatives du forum :
http://www.developpez.net/forums/d95...opencv-camera/ (infos)
http://www.developpez.net/forums/d10...ncv-camera-ip/ (sans réponse)
http://www.developpez.net/forums/d10...eam-rtsp-rtmp/ (sans réponse)
http://www.developpez.net/forums/d51...ing-camera-ip/ (infos)
http://forum.openframeworks.cc/index.php?topic=1669.0 (infos)
Le passage par un logiciel du fournisseur est t'il obligatoire pour la visu dans une page web? Faut t'il obligatoirement installer une librairie complémentaire pour faire l'intermédiaire avec OpenCV? Quelles sont les plus solutions les plus génériques et open source si une lib est nécessaire? Quelle est la bonne stratégie a adopter ici pour lire le flux sous OpenCV et faire des captures?
Partager