Gstreamer 的 OpenCV 3.0.0 错误

Posted

技术标签:

【中文标题】Gstreamer 的 OpenCV 3.0.0 错误【英文标题】:OpenCV 3.0.0 error with Gstreamer 【发布时间】:2017-04-07 15:16:44 【问题描述】:

我刚刚按照本教程安装了 OpenCV 3.0: http://rodrigoberriel.com/2014/10/installing-opencv-3-0-0-on-ubuntu-14-04/

我在安装过程中没有遇到任何错误。但是,当我尝试运行如下示例程序时,

cd cpp/
./cpp-example-facedetect lena.jpg // (../data/lena.jpg) OpenCV 3.0 beta
./cpp-example-houghlines pic1.png // (../data/pic1.jpg) OpenCV 3.0 beta

我收到以下错误:

Processing 1 lena.jpg
GStreamer: Error opening bin: Unrecoverable syntax error while parsing pipeline lena.jpg
Capture from AVI didn't work
init done 
opengl support available 
In image read

我是计算机视觉的新手,我不知道问题可能是什么。谁能帮帮我?

【问题讨论】:

我刚遇到这个错误,和gstreamer无关,已经安装了。相反,我有一行说 :if(argc==0) cap.open(0);这是我以为我设置视频流的地方,但 argc==0 是一个错字,需要 argc==1。基本上,该错误可能意味着视频流设备在调用之前未正确设置。您可以声明一个默认设备,使用 VideoCapture cap(0);以后再改。 【参考方案1】:

我得到了这个错误的第一部分: “GStreamer:打开 bin 时出错:解析管道时出现不可恢复的语法错误” 已经安装了 gstreamer。原来是因为我在文件路径中使用了“~”,而我忘记了它不会被扩展。找不到文件,这不是最直观的错误消息。

【讨论】:

【参考方案2】:

我按照相同的教程做了同样的事情。 我所做的唯一不同是使用 Gstreamer,这样做:

sudo add-apt-repository ppa:gstreamer-developers/ppa sudo apt-get 更新 sudo apt-get install gstreamer1.0

但是您的问题中还不清楚另一件事。 lena.jpg文件不在同一个目录,而是data文件夹(高一级)。 所以cpp文件夹中的命令行应该是:

./cpp-example-facedetect ../data/lena.jpg

【讨论】:

以上是关于Gstreamer 的 OpenCV 3.0.0 错误的主要内容,如果未能解决你的问题,请参考以下文章

如何结合gstreamer和opencv?

从 python 中的 opencv 写入 Gstreamer 管道

带有 Gstreamer 流的 OpenCV 具有延迟、缓慢和伪影

如何将 opencv mat 写入 gstreamer 管道?

如何为 opencv 安装 gstreamer 1.0 badplugin?

使用 OpenCV VideoWriter 保存灰度图像时出现 Gstreamer 错误