【发布时间】:2014-06-18 11:25:44
【问题描述】:
我正在使用 openCV 2.4.9 版和 Mac OSX。 我已经编写了这段代码来在我的桌面上加载和显示视频。但它似乎永远不会起作用。我总是将输出显示为“框架为空”。因此它不会抱怨使用 VideoCapture 读取视频。它无法捕获任何帧,因此“帧”始终为空。知道问题可能是什么吗? 注意:我已经尝试了两种捕获帧的方法 - 注释为 try 1 和 try2。
int main(int argc, const char * argv[])
{
Mat frame;
VideoCapture capture_ir("/Users/shreyatandon/Desktop/resize_ir.avi");
if ( !capture_ir.isOpened() ) // if not success, exit program
{
cout << "Cannot open the video file" << endl;
return -1;
}
for (;;){
// capture_ir.read(frame); //try1
capture_ir>>frame; //try2
if(frame.empty()){
std::cerr<<"frame is empty"<<std::endl;
break;
}
imshow("", frame);
waitKey(10);
break;
}
return 0;
}
【问题讨论】:
-
我知道在 Windows 中你的文件路径不起作用,它们需要是 \\ 而不是 /。我不知道 Mac 是不是这样
-
如果路径错误,它会给我输出“无法打开文件”。不过还是谢谢你!它是 / for mac。