我正在使用OpenCV 2.4.9和g ++。我也尝试过使用python 2.7.8和python 3.4.1。
这是一个简单的例子:
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main(int argc, char *argv[]) {
VideoCapture stream;
if (argc > 1) {
stream.open(argv[1]);
} else {
stream.open(0);
}
if (!stream.isOpened()) {
cout << "cannot open file";
}
while (true) {
Mat frame;
stream.read(frame);
imshow("preview", frame);
if (waitKey(30) >= 0)
break;
}
return 0;
}
编译时使用:
g++ `pkg-config --libs opencv` -o test test.cpp
使用相机可以正常工作,但是当从文件中读取时,程序才会挂起。 python也是如此。有什么想法吗?
答案 0 :(得分:0)
终于解决了这个问题。在Fedora 21上,来自存储库的opencv是在没有ffmpeg支持的情况下构建的,因为许多编解码器不是FOSS。从源代码编译就可以了。