首页 > 解决方案 > 无法使用opencv python从ip摄像头加载实时视频源

问题描述

我正在尝试从 IP 摄像机访问实时视频源,但每当我尝试运行代码时,它都会出现以下错误。

warning: Error opening file (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:908)
warning: http://admin:Admin@123@192.168.1.188/video.cgi?.mjpg (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:909)
[ERROR:0] VIDEOIO(cvCreateFileCapture_Images(filename.c_str())): raised OpenCV exception:

OpenCV(3.4.8) C:\projects\opencv-python\opencv\modules\videoio\src\cap_images.cpp:246: error: (-5:Bad argument) CAP_IMAGES: can't find starting number (in the name of file): http://admin:Admin@123@192.168.1.188/video.cgi?.mjpg in function 'cv::icvExtractPattern'

这是我的代码:

import cv2

video = cv2.VideoCapture("http://admin:Admin@123@192.168.1.188/video")

while video.isOpened():
    _, frame = video.read()
    if frame is None:
        break
    cv2.imshow('frame', frame)
    if cv2.waitkey(1) & 0xFF == ord('q'):
        break

video.release()
cv2.destroyAllWindows()

我尝试使用 RTSP 添加端口号,但仍然无法正常工作。

当我添加 rtsp 而不是 HTTP 时,出现以下错误

[rtsp @ 000002bdf1e397c0] method OPTIONS failed: 404 Not Found
warning: Error opening file (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:908)
warning: rtsp://admin:Admin@123@192.168.1.188/1 (/build/opencv/modules/videoio/src/cap_ffmpeg_impl.hpp:909)

我正在尝试的 rtsp 的 URL 是:"rtsp://admin:Admin@123@192.168.1.188/1"

标签: pythonopencv

解决方案


推荐阅读