Frames von IP-Kameras mit OpenCV erfassen
Um Frames von einer IP-Kamera mit OpenCV zu erfassen, können Sie die folgenden Schritte ausführen:
Die erforderlichen Bibliotheken einschließen:
Für OpenCV Version 2.0 oder höher:
Für ältere Versionen von OpenCV (z. B. 1.1pre1):
Öffnen der Videostream:
Verwenden Sie cv::VideoCapture, um den Videostream zu öffnen. Zum Beispiel:
Frames lesen:
Frames anzeigen:
Benutzerinteraktion verarbeiten:
Beispielcode für 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; }
Update für H.264 RTSP-Streams:
Zum Erfassen von Frames aus H.264-RTSP-Streams mit OpenCV 2.0 oder höher können Sie das folgende URL-Format verwenden:
Wenn die Für die Kamera ist eine Authentifizierung erforderlich. Verwenden Sie das folgende URL-Format:
Das obige ist der detaillierte Inhalt vonWie kann ich mit OpenCV Bilder von IP-Kameras erfassen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!