Opencv c++:如何按时间分割视频?

Posted

技术标签:

【中文标题】Opencv c++:如何按时间分割视频?【英文标题】:Open cv c++: How to split video several part by time? 【发布时间】:2017-03-06 14:59:04 【问题描述】:

想请教大家如何通过open cv(c++语言)按时间将视频(.mp4)分割成多个视频?例如,我有 10 秒长的视频,我想从中创建两个视频;第一个视频在 0 秒到 5 秒之间从原始视频中捕获帧,第二个视频在 6 秒到 10 秒之间从原始视频中捕获帧。 有人知道答案吗?

【问题讨论】:

【参考方案1】:

只需读取 inputVideo 并计算您需要多少帧。

然后将帧数写入第一个输出视频,其余的写入第二个。

这样的东西应该可以工作

for(;;) //Show the image captured in the window and repeat

    countFirstVideo++;
    inputVideo >> src;              // read
    if (src.empty()) break;         // check if at end
    if(countFirstVideo++ < myDesignatedSize)
    
      outputVideo1 << src;
    
    else
    
      outputVideo2 << src;
    

【讨论】:

以上是关于Opencv c++:如何按时间分割视频?的主要内容,如果未能解决你的问题,请参考以下文章

C++ OpenCV 视觉库是不是适合这种图像分割案例?

C++ OpenCV基于距离变换与分水岭的图像分割

基于 OpenCV C++ 光流的分割代码抛出异常

C++如何将string按空格分割?

C++如何将一个字符数组分割成几个数组?

opencv-python——2(颜色分割(RGBHSV)读取摄像头和视频并保存)