python - 无法使用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"
解决方案
推荐阅读
- python - numpy float32 转换中的精度损失
- php - 如何在 PHP-CS-Fixer 中复制 PHPStorm 的“对齐列中的字段”?
- c# - MongoDB bsoncxx 崩溃解析具有 int64_t 值的 json 文档
- linux - 将 yaml 文件的值作为 dockerfile 中的环境变量传递
- yarnpkg - 如何从 Yarn2 降级到 Yarn1?
- java - 将预期异常传递给 assertThrows:JUnit 5
- javascript - 获取数据(全球?)和导航的存储设计
- javascript - Vue.js中子组件中迭代槽的迭代槽内容
- azure-functions - 多功能应用程序未部署
- django - 十进制字段无法更新值