利用OpenCV进行”视频的读取”与”保存视频文件或者图像”源码.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:6 大小:34KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

利用OpenCV进行”视频的读取”与”保存视频文件或者图像”源码.doc

利用OpenCV进行”视频的读取”与”保存视频文件或者图像”源码.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

利用OpenCV进行”视频的读取”与”保存视频文件或者图像”源码#include<afx.h>#include<iostream>#include<cv.h>#include<cxcore.h>#include<highgui.h>usingnamespacestd;///////////////////////////////////////////////////////////作者:Flobert_Young//日期:2008-05-22//说明://需要配置OpenCV的开发环境,并且一定要确保当前Project里加入了cv.libcxcore.libhighgui.lib库//链接错误解决方法://编译时出现unresolvedexternalsymbol__endthreadex的处理方法//菜单Project->Settings…在C/C++页,//在Category下拉框里选择CodeGeneration,//然后在Userun-timelibrary里选择//DebugMultithreaded(Debug版本时用)//或者Multithreaded(release版本时用)./////////////////////////////////////////////////////////enumCaptureCase{CAP_FROM_CAM=0,CAP_FROM_VIDEO=1,};enumPlayVideoCase{FRAME_BY_FRAME=0,FRAME_BY_INDEX=1,};////////////////////////////////////////函数声明intFrameByFrame(CvVideoWriter*pVideoWriter,IplImage*pFrame,boolbSave,CvCapture*pCapture,char*pVideoSaveName,intnWaitKeyTime);intFrameByIndex(CvCapture*pCapture,IplImage*pFrame,intcap_prop,intcap_prop_value,CStringstrSaveImagePath);////////////////////////////////////////主函数部分intmain(){intret=0;boolbErr=0;boolbSave=0;//0–不保存视频文件;1–保存视频文件CaptureCasecap_case=CAP_FROM_VIDEO;//设置成从视频文件中获取图像PlayVideoCaseplay_case=FRAME_BY_FRAME;//设置成一帧一帧的播放视频文件intnWaitKeyTime=40;//显示图像所间隔的时间,以“毫秒”为单位////////////////////////////////////////变量声明CvCapture*pCapture=NULL;//用于在视频中捕获图像charszVideoFileName[]=“C:\\电影.AVI”;//!将打开的视频文件名设置成”C:\\1.mpg”charszVideoSaveName[]=“C:\\VideoSave.avi”;//!将保存视频文件的名字设置成”C:\\VideoSave.avi”CStringstrSaveImagePath=“C:\\”;//!保存图片的目录名CvVideoWriter*pVideoWriter=NULL;//用于保存视频文件IplImage*pFrame=NULL;IplImage*pImage=NULL;switch(cap_case){caseCAP_FROM_CAM://函数cvCaptureFromCAM()参数说明://要使用的摄像头索引。如果只有一个摄像头或者用哪个摄像头也无所谓,那使用参数-1应该便可以。pCapture=cvCaptureFromCAM(-1);//和函数cvCreateCameraCapture()有什么区别???if(NULL==pCapture)//打开摄像头{cout<<”ERROR:摄像头读取失败!”<<endl;bErr=1;}break;caseCAP_FROM_VIDEO://打开视频文件pCapture=cvCaptureFromFile(szVideoFileName);//和函数cvCreateFileCapture()有什么区别???if(NULL==pCapture){cout<<”ERROR