视频播放器使用Emgu CV

时间:2012-08-28 11:00:35

标签: c# video video-capture emgucv

我想制作一个使用Emgu CV检测物体的视频播放器。我想从阅读视频源文件开始,这就是我收到错误的地方。在线:

Capture capture = new Capture(@"C:/Users/Paul/Desktop/Film/parrot.avi");

有一个例外:

  

Emgu.CV.dll中发生了未处理的“System.NullReferenceException”类型异常   其他信息:无法从C:/Users/Paul/Desktop/Film/parrot.avi

创建捕获

我尝试了许多组合和不同的源类型,如AVI,WMV,MPEG,但仍然有例外。我能做些什么才能让它发挥作用?

4 个答案:

答案 0 :(得分:3)

我遇到了类似的问题。如果此问题仍然存在,请尝试添加:

opencv_ffmpegXXX.dll 

(XXX是你的emgucv版本)到你项目的exe文件夹(Debug / Release)。 opencv使用FFmpeg来处理视频。

P.S。:opencv_ffmpegXXX.dll位于解压缩的emgucv/bin文件夹中。

答案 1 :(得分:0)

尝试

Capture capture = new Capture(@"C:\Users\Paul\Desktop\Film\parrot.avi");

答案 2 :(得分:0)

您使用的是哪种版本的Emgu CV?如果是2.4.10那么我建议你使用3.0.0 version。当我使用最新的稳定版本(2.4.10)时遇到了同样的问题,但它似乎在最新的alpha版本(3.0.0)中打了补丁。现在,我可以使用Emgu CV Capture类轻松捕获USB摄像头,视频文件或RTSP流(IP Camera)。

可能你现在已经解决了这个问题,但我希望这些信息对其他人也有用。

答案 3 :(得分:0)

我有几天这个问题,我无法在桌面上阅读或写视频。初始化时没有错误,但Capture Width and Height = 0返回null帧。

只需将路径更改为:

即可开始工作
".\parrot.avi" 

使用Emgu 3.1.0.2282b

在Win8.1上发生了这种情况