opencv2视频截图并保存

<pre name="code" class="cpp"><pre name="code" class="cpp">#include <opencv2/highgui/highgui.hpp>
#include <opencv2\opencv.hpp>
#include <iostream>
#include <math.h>
#include <stdio.h>
#include <vector>
using namespace cv;
using namespace std;



int main(int argc, char *argv[])
{
    CvCapture* capture = cvCaptureFromAVI("C:\\Users\\hsn\\Desktop\\fish-120.avi");
    int i = 0;
    IplImage* img = 0;
    char image_name[50];
    cvNamedWindow( "vivi");
    //读取和显示
    while(1)
    {
        img = cvQueryFrame(capture); //获取一帧图片
        if(img == NULL)
            break;  

        cvShowImage( "vivi", img ); //将其显示
        char key = cvWaitKey(20);
        sprintf(image_name, "%s%d%s", "C:\\Users\\hsn\\Desktop\\tutu\\image", ++i, ".jpg");//保存的图片名
        cvSaveImage( image_name, img);   //保存一帧图片
    }  

    cvReleaseCapture(&capture);
    cvDestroyWindow("vivi");  

    return 0;
}
//int main(int argc, char **argv)
//{
//
//    int period = atoi(argv[1]); //帧间隔,每隔多少帧取其中一张截图
//    int count = atoi(argv[2]); //文件编号开始计数值
//    char filename[128];
//    CvCapture *capture = cvCreateFileCapture(argv[3]); //打开视频文件
//    if (capture == NULL)
//    {
//        return  - 1;
//    }
//    IplImage *frame;
//    while (1)
//    {
//        for (int i = 0; i < period; i++)
//        {
//            frame = cvQueryFrame(capture);
//            if (!frame)
//            {
//               // printf("finish!\n");
//               // system("pause");
//                return 0;
//            }
//        }
//        sprintf(filename, "img_%d.jpg", count++);
//        cvSaveImage(filename, frame);
//    }
//    cvReleaseCapture(&capture);
//    return 0;
//}
				
时间: 2024-10-09 12:07:57

opencv2视频截图并保存的相关文章

canvas与html5实现视频截图功能

这段时间一直在研究canvas,突发奇想想做一个可以截屏视频的功能,然后把图片拉去做表情包,哈哈哈哈哈哈~~ 制作方法: 1.在页面中加载视频 在使用canvas制作这个截图功能时,首先必须保证页面上已经加载完成了这个视频,这样才能够方便的对其操作.如果使用下面直接嵌入<video>标签的方式: 1 2 3 4 5 <video loop controls id="testmp4" width="500" height="400"

Java Web 中使用ffmpeg实现视频转码、视频截图

转载自:[http://www.cnblogs.com/dennisit/archive/2013/02/16/2913287.html] 视频网站中提供的在线视频播放功能,播放的都是FLV格式的文件,它是Flash动画文件,可通过Flash制作的播放器来播放该文件.项目中用制作的player.swf播放器. 多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能.视频格式转换.视频抓图.给视频加水印等. ffmpeg视频采集功能非常强大,不仅可以采集视频采集卡或USB摄像头的图像,还可

java 视频播放 弹幕技术 视频弹幕 视频截图 springmvc mybatis SSM

A代码编辑器,在线模版编辑,仿开发工具编辑器,pdf在线预览,文件转换编码B 集成代码生成器 [正反双向](单表.主表.明细表.树形表,快速开发利器)+快速表单构建器 freemaker模版技术 ,0个代码不用写,生成完整的一个模块,带页面.建表sql脚本,处理类,service等完整模块C 集成阿里巴巴数据库连接池druid??数据库连接池??阿里巴巴的 druid.Druid在监控.可扩展性.稳定性和性能方面都有明显的优势D 集成安全权限框架shiro??Shiro 是一个用 Java 语言

民政部拟规定:儿童福利机构的监控视频,至少保存3个月!又拍云为儿童健康成长保驾护航

2018 年 2 月 23 日,民政部出台了<儿童福利机构管理办法(征求意见稿)>,从各个角度加强.完善了儿童福利机构的运营.管理. △ 截图来自新华社App 为了加强儿童福利机构的安全管理,<征求意见稿>要求儿童福利机构应当实行24小时值班制度,保护儿童人身财产安全:更在第三十四条[安全保卫]中,明确规定"监控录像资料保存期不少于3个月": 儿童福利机构应当建立安全保卫制度,在各出入口.接待大厅.楼道.食堂等公共区域.观察室及婴幼儿居室等特殊区域安装具有存储功

[Android] 拍照、截图、保存并显示在ImageView控件中

最近在做Android的项目,其中部分涉及到图像处理的内容.这里先讲述如何调用Camera应用程序进行拍照,并截图和保存显示在ImageView控件中以及遇到的困难和解决方法. PS:作者购买了本<Android第一行代码 著:郭霖>,参照里面的内容完成(推荐该书,前面的布局及应用非常不错).网上这类资料非常多,作者仅仅分享给初学者同时在线记录些内容,希望对大家有所帮助. 首先,设置activity_main.xml为LinearLayout布局且 android:orientation=&q

indows下PHP通过ffmpeg给上传的视频截图详解

windows下PHP通过ffmpeg给上传的视频截图详解,php_ffmpeg.dll安装下载,找了很久php_ffmpeg.dll的下载地址和应用,发现有用的资源很少,现在问题解决了,贴出来跟大家分享一下: 首先要安装PHP的ffmpeg扩展,我们需要php_ffmpeg.dll文件和一些其他的辅助文件,        这里整理了一下提供给大家: ffmpeg-php-win32-all.rar: 解压后你将得到5个文件,将avcodec-51.dll, avformat-51.dll, a

HTML5 CSS3 诱人的实例 :模仿优酷视频截图功能

一般的视频网站对于用户上传的视频,在用户上传完成后,可以对播放的视频进行截图,然后作为视频的展示图.项目中也可以引入这样的功能给用户一种不错的体验,而不是让用户额外上传一张展示图. 效果图: 看起来还是很不错,下面我给大家分析下,极其核心代码很简单: _canvas = document.createElement("canvas"); _ctx = _canvas.getContext("2d"); _ctx.fillStyle = '#ffffff'; _ctx

iOS 对网络视频采集视频截图

在播放网络视频是  经常可以看到播放按钮下面是该制品的某个截图 : 一般情况下  后台服务器是可以把视频截图一起返回给你 你直接拿到图片显示就可以了 但是当后台没有提供时  我们也可以根据视频地址 自己去截取视频截图: //获取视频封面 videoURL:视频网络地址 - (UIImage*)thumbnailImageForVideo:(NSURL *)videoURL { AVURLAsset *asset = [[AVURLAsset alloc] initWithURL:videoURL

IOS批量截取视频截图 UIImage mp4 IOS Video

IOS批量截取视频截图 //生成截图 NSString *path = [NSHomeDirectory() stringByAppendingString:@"/Documents"]; NSLog(@"path %@", path); for (int i = 0; i<[mItems count]; i++) { NSMutableDictionary *info = (NSMutableDictionary *)mItems[i]; //视频信息 NS