批量截取视频里的图片并保存——opencv实现

主要功能:截取视频里图片,并保存,可以设置截取的帧间隔
使用方法:修改视频路径及名称,以及保存图片位置,Frame_jiange控制每几帧保存一张图片
我的使用环境: win10+vs2015+opencv3,需要在VS里面配置opencv。

/*******************************************

工程说明:截取视频里图片,并保存,可以设置截取的帧间隔
时间:2020年3月11日
作者:diyun

*******************************************/

#include<opencv2\opencv.hpp>
#include <iostream>
#include <stdio.h>
#include<fstream> 
#define Frame_jiange 8 //每四帧取一幅图片
using namespace cv;
using namespace std;
int main()
{
	VideoCapture capture;
	capture.open("G://shipin/VID_20200310_174419.mp4");

	int NumFrame = 0;
	int k = 0;
	Mat frame;
	while (1) 
	{
		capture >> frame;
		if (frame.empty()) 
		{
			break;
		}
		NumFrame++;
		if (NumFrame % Frame_jiange == 0)//每间隔三帧处理一次
		{
			k++;
			string filename = format("G:\\tupian\\VID_20200310_174419_%d.jpg", k);
			imwrite(filename, frame);
			imshow("picture", frame);
			waitKey(400);
			destroyWindow("picture");
		}

	}

}

发布了465 篇原创文章 · 获赞 694 · 访问量 96万+

猜你喜欢

转载自blog.csdn.net/mao_hui_fei/article/details/104794020