0
我已經編寫了一個程序來使用opencv
顯示存儲的視頻文件。我附上了下面的代碼。構建它時我沒有收到任何錯誤,但沒有顯示輸出。在opencv中播放視頻:無錯誤無輸出
int main(int argc, char *argv[])
{
if (argc <= 1)
{
printf("Usage: %s video\n", argv[0]);
return -1;
}
VideoCapture capture(argv[1]);
namedWindow("display",cv::WINDOW_AUTOSIZE);
capture.set(cv::CAP_PROP_FRAME_WIDTH, 640);
capture.set(cv::CAP_PROP_FRAME_HEIGHT, 480);
if(!capture.isOpened())
{
printf("Failed to open the video\n");
return -1;
}
int i;
for(i=0;i<390;i++)
{
Mat frame;
capture >> frame; // get a new frame from camera
cout << "frame =" << endl << " " << frame << endl << endl;
imshow("display",frame);
}
}
我包括在最後的cout
線,以檢查是否該幀得到任何值或沒有。因此,矩陣中有許多值,但視頻窗口沒有出現。
謝謝你的答案窗口正在顯示..是任何方式來存儲每個幀作爲圖像。我用imwrite,但只有最後一幀被存儲。 –
你是否對每個imwrite使用相同的文件名? – Micka
@wireless_lab ...檢查我的答案[這裏](http://stackoverflow.com/a/14620111/1231073)。這可能有幫助。 – sgarizvi