opencv播放,变换和保存视频

核心函数:

1. cvCreateFileCapture

2. cvGetCaptureProperty

3. cvQueryFrame

4. cvCreateVideoWriter

5. cvWriteFrame

程序:

#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
#include <iostream>
#include <stdio.h>
int Vedio(int argc,char** argv)
{
CvCapture* SrcCapture=cvCreateFileCapture("e:\\vedio\\1.avi"); //读取视频文件
cvNamedWindow("src");
cvNamedWindow("GRAY");
IplImage* SrcImage=NULL;
int fps=cvGetCaptureProperty(SrcCapture,CV_CAP_PROP_FPS);  //获取视频文件信息
CvSize size=cvSize(cvGetCaptureProperty(SrcCapture,CV_CAP_PROP_FRAME_WIDTH),cvGetCaptureProperty(SrcCapture,CV_CAP_PROP_FRAME_HEIGHT));
CvVideoWriter *VideoWriter=cvCreateVideoWriter("e:\\vedio\\3.avi",CV_FOURCC(‘X‘,‘V‘,‘I‘,‘D‘),fps,size); //创建写入文件信息
SrcImage=cvQueryFrame(SrcCapture);
IplImage* Gray=cvCreateImage(cvGetSize(SrcImage),8,1);
while(1)
{
SrcImage=cvQueryFrame(SrcCapture); //获取每一帧图像
if(SrcImage==NULL)
{
break;
}
cvShowImage("src",SrcImage);
cvCvtColor(SrcImage,Gray,CV_BGR2GRAY);
cvShowImage("GRAY",Gray);
cvWriteFrame(VideoWriter,Gray); //保存文件
char c=cvWaitKey(10);
if(c==27)
{break;}
}
//cvWaitKey(0);
cvDestroyWindow("src");
cvDestroyWindow("GRAY");
cvReleaseCapture(&SrcCapture);
cvReleaseVideoWriter(&VideoWriter);
return 0;
}

opencv播放,变换和保存视频

时间: 2024-10-24 12:00:46

opencv播放,变换和保存视频的相关文章

python+opencv打开摄像头,保存视频、拍照功能的实现

本节主要学习的是通过 .VideoCapture() 调用摄像头读取图像数据,以及使用 cap.set( propId , value ) cap.get( propId ) 获取或者更改视频属性. 其中,propId 的值为 0 - 18,19个值并不是每个都可以进行修改,每个值对应的属性以及功能如下如下: 参数 值 功能/意义 CV_CAP_PROP_POS_MSEC 0 视频文件的当前位置(以毫秒为单位)或视频捕获时间戳. CV_CAP_PROP_POS_FRAMES 1 基于0的索引将被

OpenCV 播放mkv视频

作者:卿笃军 原文地址:http://blog.csdn.net/qingdujun/article/details/33371013 一.一个简单的OpenCV程序,用于播放硬盘中的视频文件 #include "opencv\highgui.h" int main() { cvNamedWindow("生活大爆炸.mkv",CV_WINDOW_AUTOSIZE); CvCapture* capture = cvCreateFileCapture("生活大

Opencv保存视频

""" 保存视频 保存视频接口:<VideoWriter object> = cv.VideoWriter( filename, fourcc, fps, frameSize[, isColor] ) 参数说明: filename:要保存的视频名称和路径(data/outVideo.mp4) fourcc:视频编码器 fps:帧率 framesize:帧数大小 isColor:True彩色,False灰度视频, 默认True """

OpenCV学习 4:摄像头视频读写与边缘检测

原创文章,欢迎转载,转载请注明出处 想实现人脸识别,车辆识别,车牌识别.一般我们可不是读硬盘里面的视频文件的,都是直接从摄像头读取视频流然后直接识别的.所以读取摄像头的视频流这是基础...OpenCV对读取摄像头的视频流提供了一个相当简单的函数,又着实让我惊喜了一把.哈.. cvCreateCameraCapture,这个函数就是用来打开视频流的,一看和学习2里面的cvCreateFileCapture非常像,对,用法也一样..同样返回的是CvCapture*指针,后面的就和学习2播放视频一样了

【OpenCV归纳】2 读写视频

 除了读入图片之外,读写视频也足够简单易学,下面来看看如何读写视频吧. 播放硬盘中的视频: #include "highgui.h" int main(int argc,char** argv) { cvNamedWindow("Test2",CV_WINDOW_AUTOSIZE); CvCapture* capture=cvCreateFileCapture(argv[1]); IplImage* frame; while(1) { frame=cvQuery

KINECT+opencv基于骨骼信息对视频进行动作识别

KINECT+opencv基于骨骼信息对视频进行动作识别 环境:kinect1.7+opencv2.4+vc2015 使用kinect获取并按批处理三维空间内的骨骼信息 基于视频帧差计算各关节运动向量并与本地模板匹配 目录 KINECTopencv基于骨骼信息对视频进行动作识别 目录 写在前面 对当前帧处理并匹配 kinect对帧的处理 与模板的向量余弦计算 根据动态时间规划法匹配 记录并保存模板到本地 使用opencv的FileStorage类生成xml文件 写在前面 自前一篇过去一周了.这次

ffmpeg+sdl教程----编写一个简单的播放器5(同步视频到音频)

来源:http://blog.csdn.net/mu399/article/details/5816566 个人认为,这这部分教程的新增代码量虽然不是最多的,难度却是最大的,重复看了多次才明白,因为有两个问题的困扰,搞得还不清楚: 1.音频和视频既然都有各自的时间戳,各自按各自的时间戳来播放不就行了,为什么还需要同步呢? 2.如果要把视频同步到音频,怎么同步?或者说以什么标准来同步? 第一个问题的答案可能是,一是音频和视频的开始播放的时间是不一样,二是播放每帧音频或视频时可能必须把解码数据,视频

4K高清播放机播放NAS中的视频电影方法教程(解决网络共享中找不到NFS文件夹的)

4K高清播放机播放NAS中的视频电影方法教程(解决网络共享中找不到NFS文件夹的方法)(所有4K高清播放机通用) 一 :工具1.亿格瑞A10播放器(理论上所有的4K播放器都支持此操作).2.自己群晖NAS家庭存储服务器. 二.NAS存储服务器的NFS权限设置教程图文说明 1. 先登录自己的NAS,然后登录后就打开File Station,在里面新建立一个Video视频目录,就是自己的存储目录.把这个目录的权限:"本地群组"和"本地用户组,都选择为可读写.当然你自己比较懂NAS

阿里云移动端播放器高级功能---视频下载

基本介绍优酷.爱奇艺.腾讯等主流的视频类App都有视频离线下载的功能,主要目的是在wifi下将视频离线在本地,然后在无网或者4G的情况下去观看离线视频.那么阿里云播放器也提供了视频下载的功能.这个功能主要针对的是点播视频,也就是vid播放的视频的下载. 主要问题m3u8如何下载?我们知道m3u8是一个索引文件,真正的视频文件是各个ts的分片,那么如何下载成一个完成的视频呢?如何对视频下载进行多线程控制?在一些app中,多个视频同时下载被认为是高级VIP才有的功能.如何实现断点续传?当在下载过程中