我想将所有名为“pictures_1 / 2/3 / etc ......”的图像文件写入视频文件。
以下代码正在成功创建video.avi文件。但是,后者没有写入数据。
我知道视频捕捉opencv功能主要用于从视频中捕获数据,但我听说也可以将它用于图像(如上所述here(第一回答))
void video (void)
{
VideoCapture in_capture("/path/.../pictures_%d.jpg");
Mat img;
VideoWriter out_capture("path/.../video.avi", CV_FOURCC('M','J','P','G'), 30, Size(1989,1680));
while (true)
{
in_capture >> img;
if(img.empty())
break;
out_capture.write(img);
}
}
答案 0 :(得分:3)
未创建视频的可能原因。
确保您的图片已成功加载,只需在while循环中使用imshow()。
您的图像尺寸可以是1989X1680以外的任何尺寸,因此请将图像尺寸调整为指定尺寸,或将视频分辨率设置为输入图像尺寸。