首頁 > 後端開發 > C++ > 如何使用 OpenCV 從 IP 攝影機擷取影格?

如何使用 OpenCV 從 IP 攝影機擷取影格?

Mary-Kate Olsen
發布: 2024-11-09 17:45:02
原創
695 人瀏覽過

How can I capture frames from IP cameras with OpenCV?

使用OpenCV 從IP 攝影機捕捉幀

要使用OpenCV 從IP 攝影機捕捉幀,您可以採用以下步驟:

  1. 包含必要的內容庫:

    • 對於OpenCV 2.0 或更高版本:

      • include "cv.h"
      • #include "highgui.h"
    • 對於舊版的OpenCV(例如1.1pre1):
      • 對於舊版的OpenCV(例如1.1pre1):
      • #include "cv.h"
    • #include "highgui.h"
  2. 打開視頻🎜>打開視頻🎜>串流:
      • 使用cv::VideoCapture 開啟視訊串流。例如:
      • cv::VideoCapture vcap("rtsp://cam_address:554/live.sdp"); // RTSP 串流
      cv::VideoCapture vcap("http ://user:pass@cam_address:8081/cgi/mjpg/mjpg.cgi?.mjpg"); // MJPEG 流
  3. 讀取影格:
    使用vcap.read(image)將影格讀入cv::Mat image.
  4. 顯示框架:
    • 使用cv::namedWindow("Output Window") 建立輸出視窗.
    使用cv::imshow("Output Window",
  5. 處理使用者互動:
    使用cv::waitKey() 等待使用者輸入或指定時間
使用cv::waitKey() 等待使用者輸入或指定時間

使用cv::waitKey() 等待使用者輸入或指定時間

使用cv::waitKey() 等待用戶輸入或指定時間
#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;
}
登入後複製

OpenCV 2.0 的範例程式碼:

H.264 RTSP 流的更新:

H.264 RTSP 流的更新:
  • 捕捉影格使用OpenCV 2.0 或更高版本的H.264 RTSP 串流,您可以使用以下URL 格式:
rtsp://10.10.10.10:554/axis-media/media .amp如果相機需要驗證,請使用以下網址格式:rtsp://使用者名稱:[電子郵件受保護]:554/axis- media/media.amp

以上是如何使用 OpenCV 從 IP 攝影機擷取影格?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板