opencv2 用imwrite 抽取并保存视频图像帧

最近在写一个车辆检测程序,程序中需要获取图像帧,并保存为图片,且放到指定目录中去,我在网上查了很多发现都是opencv1的有关操作,没有opencv2的操作,我参考网上的例子,结合着用opencv2新语句,发现十分的简便。以下是代码:

 1 #include<opencv2/highgui/highgui.hpp>
 2 #include<iostream>
 3 using namespace std;
 4 using namespace cv;
 5 int main(){
 6     VideoCapture cap("D:/1.wmv");  //读入视频
 7     Mat img;   //图像变量
 8     char image[20];  //保存路径
 9     int i = 0;   //图像计数
10     while (cap.read(img))    //读取视频帧
11     {
12         sprintf(image, "%s%d%s", "..\\image", i++, ".jpg");   //指定保存路径
13         imwrite(image, img);  //保存图像
14     }
15 }

结果展示:

 

posted @ 2017-05-12 14:34  Mr.缪  阅读(9176)  评论(0编辑  收藏  举报