Python和IP cam的问题

2024-04-28 08:42:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我在从IP摄像机获取视频流时遇到问题。我用opencv从中获取图像。这是我的密码:

import sys
import cv

video="http://prot-on.dyndns.org:8080/video2.mjpeg"
capture =cv.CaptureFromFile(video)
cv.NamedWindow('Video Stream', 1 )
while True:
  # capture the current frame
  frame = cv.QueryFrame(capture)
  if frame is None:
    break
  else:
    #detect(frame)
    cv.ShowImage('Video Stream', frame)
  if k == 0x1b: # ESC
    print 'ESC pressed. Exiting ...'
    break

实际上,这件事很有效,但是显示图像需要太多时间。我猜是因为ffmpeg的这个错误。

    [mjpeg @ 0x8cd0940]max_analyze_duration reached
    [mjpeg @ 0x8cd0940]Estimating duration from bitrate, this may be inaccurate

我不是一个python专家,所以任何帮助都将不胜感激!


Tags: 图像importipstreamifvideoframecv
1条回答
网友
1楼 · 发布于 2024-04-28 08:42:10

首先,mjpeg是一种相对简单的视频格式。如果你阅读了你的IP摄像头的使用手册,你会发现如何在浏览器中显示视频和一些JavaScript代码。事实上,如果你在Google Chrome中打开http://prot-on.dyndns.org:8080/video2.mjpeg的链接,你会看到视频没有任何问题。(也许你不应该留下相机的真实网址)

其次,据我所见,你相机的帧速率相当慢。这可能是由于互联网延迟或您的相机设置。将你在Chrome中看到的与代码显示的视频进行比较,如果它们的质量相同,那么这不是代码的问题。

相关问题 更多 >