OpenCV从文件中捕获的视频无法成功打开

Tim*_*Tim 5 c++ opencv

我用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)

Mic*_*ele 8

您应该在targetDir中复制opencv_ffmpeg DLL,在本例中是Debug可执行文件夹,而不是Release 1