使用 VideoCapture (OpenCV) 从图像创建视频

Posted

技术标签:

【中文标题】使用 VideoCapture (OpenCV) 从图像创建视频【英文标题】:Create Video from images using VideoCapture (OpenCV) 【发布时间】:2014-03-31 15:15:09 【问题描述】:

我想将所有标题为“pictures_1/2/3/etc...”的图像文件写入视频文件。

下面的代码成功创建了 video.avi 文件。但是后者里面并没有写入数据。

我知道 videocapture 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);
  

【问题讨论】:

会不会是编解码器的问题?介意显示你的 main() 文件吗?所以我们可以缩小可能性(:完成后在 cmets 中标记我(: 【参考方案1】:

未创建视频的可能原因。

    确保你的图片加载成功,在while循环中使用imshow()即可。

    您的图像尺寸可以是 1989X1680 以外的任何尺寸,因此要么将图像调整为给定尺寸,要么将视频分辨率设置为输入图像尺寸。

【讨论】:

以上是关于使用 VideoCapture (OpenCV) 从图像创建视频的主要内容,如果未能解决你的问题,请参考以下文章

洞察使用 python 和 OpenCV 与 VideoCapture 进行多网络摄像头捕获

使用 VideoCapture (OpenCV) 从图像创建视频

无法使用videoCapture opencv打开视频

无法使用 VideoCapture 在 OpenCV+Python 中读取或播放视频

在 Android 上的 OpenCV 中旋转 VideoCapture

OpenCV 2.4 VideoCapture 在 Windows 上不起作用