Capturer des images de caméras IP avec OpenCV
Pour capturer des images d'une caméra IP à l'aide d'OpenCV, vous pouvez suivre les étapes suivantes :
Inclure les bibliothèques nécessaires :
Pour OpenCV version 2.0 ou supérieure :
Pour les anciennes versions d'OpenCV (par exemple, 1.1pre1) :
Ouvrir le flux vidéo :
Utilisez cv::VideoCapture pour ouvrir le flux vidéo. Par exemple :
Lire les images :
Afficher les cadres :
Gérer l'interaction utilisateur :
Exemple de code pour OpenCV 2.0 :
#include "cv.h" #include "highgui.h" #include <iostream> int main(int, char**) { cv::VideoCapture vcap; cv::Mat image; const std::string videoStreamAddress = "rtsp://cam_address:554/live.sdp"; // RTSP stream // Open the video stream and check if it's open if (!vcap.open(videoStreamAddress)) { std::cout << "Error opening video stream or file" << std::endl; return -1; } // Create output window for displaying frames. cv::namedWindow("Output Window"); for (;;) { if (!vcap.read(image)) { std::cout << "No frame" << std::endl; cv::waitKey(); } cv::imshow("Output Window", image); if (cv::waitKey(1) >= 0) break; } return 0; }
Mise à jour pour les flux RTSP H.264 :
Pour capturer des images à partir de flux RTSP H.264 avec OpenCV 2.0 ou supérieur, vous pouvez utiliser le format d'URL suivant :
Si le la caméra nécessite une authentification, utilisez le format d'URL suivant :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!