我用C++(VS2012)使用OpenCV库(2.4.6)编写了这个.
#include <opencv2\opencv.hpp>
#include <opencv2\highgui\highgui.hpp>
int main(){
Mat image;
VideoCapture cap;
cap.open("test.avi");
if(!cap.isOpened()){
cout<< "Capture not open \n";
cin.get();
}
cvNamedWindow("Video Output");
while(1){
cap >> image;
imshow("Video Output",image);
waitKey(30);
}
}
Run Code Online (Sandbox Code Playgroud)
运行它,视频捕获无法打开.test.avi与可执行文件位于同一目录中,在IDE外部运行它调试/发布/没有任何区别.OpenCv DLL和视频文件在这里:https://www.dropbox.com/sh/16c04d97iw90gtk/88fQ4BLbfl#/ 我能做错什么?
编辑:正如OpenCV Q&A网站上的问题所示,我已将opencv_ffmpeg DLL复制到包含我的可执行文件的文件夹中.现在它只能在IDE之外工作(VS2012)