【问题标题】:Problems on OpenCV with IP Camera带有 IP 摄像机的 OpenCV 问题
【发布时间】:2018-03-10 13:21:27
【问题描述】:

最近我正在使用 OpenCV 完成一个设计,我现在有一个 IP 摄像头,只需在浏览器中输入摄像头的 IP 地址和端口,例如 192.168.1.1:8080,我就可以观看视频. 我已经安装了VS2010并正确完成了设置。我现在可以在我的电脑上处理图片并在我的电脑上捕捉相机的视频。但是当我尝试通过

从 IP 摄像机捕获视频时

VideoCapture cap; cap.open("http://192.168.137.235:8082/index.html") 有一个错误:

打开文件时出错 (../../modules/highgui/src/cap_ffmpeg_impl.hpp:545)

那么我该如何解决这个问题。谁能具体告诉我如何解决这个问题?

【问题讨论】:

  • index.html 不是视频而是网页..... VideoCapture 不会解析您的 html 并提取视频。您需要找到正确的链接,我建议您使用 rtsp 链接

标签: c++ visual-studio opencv


【解决方案1】:

我已经尝试通过 RTSP 直接从我的 IP 摄像头将视频捕获到基于 OpenCV 的应用程序,正如之前建议的那样。它可以工作,但 ffmpeg 解码器对来自某些摄像机的 RTSP 流非常不稳定。 我找到了下一个解决方案。 有些人喜欢将他们的 PC 屏幕实时流式传输到 youtube。它的标准工具是 XSplit Broadcaster。 这个工具有一个副作用。它能够通过兼容 RTSP 的 IP 摄像头创建虚拟 USB 网络摄像头。 OpenCV 完美地从 USB 网络摄像头捕获视频。 XSplit Broadcaster 的基本许可证是完全免费的。 不幸的是,这个解决方案有一个限制。不依赖网络摄像机的真实分辨率,虚拟网络摄像机的分辨率为 640*480

【讨论】:

  • 谢谢。我已经解决了通过在屏幕上播放视频并捕获它的图片来获取图像。
【解决方案2】:

“index.html”页面可能只是您的摄像机的主页,即人们用来导航摄像机和观看直播的页面。 网络摄像机彼此非常不同。如果您的网络摄像机是“onvif”,它应该有一个 rtsp 套接字。例如,我可以使用此路径观看我的网络摄像机:

rtsp://address:554/onvif1

如果你的相机实现了 mjpeg 流,你应该使用正确的路径,例如

http://192.168.137.235:8082/live.html

要知道连接到您的相机的正确方法,有必要知道您的相机是哪一个。

【讨论】:

  • 谢谢。我已经解决了通过在屏幕上播放视频并捕获它的图片来获取图像。也许是因为我的视频数据来自树莓。
猜你喜欢
  • 1970-01-01
  • 2018-01-14
  • 2013-03-13
  • 1970-01-01
  • 1970-01-01
  • 2014-12-19
  • 2011-07-28
  • 2017-04-23
相关资源
最近更新 更多