首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Emgu CV的Capture = New Capture()连接IP摄像机

使用Emgu CV的Capture = New Capture()连接IP摄像机
EN

Stack Overflow用户
提问于 2013-04-10 19:42:12
回答 2查看 15K关注 0票数 1

使用Visual 2008和Emgu CV,我可以在我的PC上捕捉网络摄像头的流。我想做的是连接到IP摄像机,知道它的URL,使用Capture = New ().

下面是我的代码:

代码语言:javascript
复制
Imports Emgu.CV
Imports Emgu.CV.Util
Imports Emgu.CV.Structure

Public Class Form1

Dim capturez As Capture = New Capture("rtsp://[IP Address]/mpeg4/media.amp")

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

    Dim imagez As Image(Of Bgr, Byte) = capturez.QueryFrame()
    PictureBox1.Image = imagez.ToBitmap()

End Sub

End Class

我得到以下错误:无法从rtsp://IP地址/mpeg4 4/media.amp创建捕获

是否可以使用Capture = New来完成这个任务?如果没有,他们还有其他方法吗?

谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-08-31 14:34:30

这是我最后使用的解决方案。它只适用于JPEG网络摄像机(不是MJPEG),不需要EmguCV。

代码语言:javascript
复制
'Connect To Webcam ----------------------------------------------------------------------
    Dim NumberFrames As Integer = 1
    Dim imgNum = Convert.ToString(FrameNumber)
    Dim sourceURL As String = ("http://91.142.238.200/record/current.jpg?rand=" + imgNum)
    'create HTTP request
    Dim req As HttpWebRequest = HttpWebRequest.Create(sourceURL)
    'get response
    Dim res As HttpWebResponse = req.GetResponse
    'get response stream
    Dim reader As New StreamReader(res.GetResponseStream())
    'read data from stream
    Dim img As Image = Image.FromStream(res.GetResponseStream())
    'get bitmap
    PictureBox1.Image = img
    'Increment frame
    FrameNumber = FrameNumber + 1
    '-----------------------------------------------------------------------------------------
票数 1
EN

Stack Overflow用户

发布于 2013-04-12 20:49:29

这个相机有ip用户名和密码吗?如果你尝试这样的方法:

代码语言:javascript
复制
Imports Emgu.CV
Imports Emgu.CV.Util
Imports Emgu.CV.Structure

Public Class Form1

Dim capturez As Capture = New Capture("rtsp://username:password@[IP Address]/mpeg4/media.amp")

Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick

Dim imagez As Image(Of Bgr, Byte) = capturez.QueryFrame()
PictureBox1.Image = imagez.ToBitmap()

End Sub


End Class
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15934961

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档