opencv学习笔记(九)捕获摄像头的视频并保存成avi格式
来源:互联网 发布:zynga 知乎 编辑:程序博客网 时间:2024/05/17 03:47
这个程序引用自下面的博客,但是运行之后我发现视频保存之后,要利用前面提到的opencv播放视频程序播放,不能用普通播放器播放——而且用前面的opencv程序播放时,图像是倒置的,需要我们在程序里面改一下。在while(1)里面加上一句
cvFlip(frame, NULL, 0 );//翻转图像
http://blog.csdn.net/augusdi/article/details/8868882
#include "cv.h"
#include "highgui.h"
#include "iostream"
using namespace std;
int main(int argc,char **argv[])
{
CvCapture *cap = cvCreateCameraCapture(0);//初始化相机捕获的指针
if (!cap)
{
cout<<"create camera capture error..."<<endl;
system("pause");
exit(-1);
}
IplImage *tempImg = cvQueryFrame(cap);
double fps = 20;
CvSize size = cvSize(
(int)cvGetCaptureProperty(cap, CV_CAP_PROP_FRAME_WIDTH),
(int)cvGetCaptureProperty(cap, CV_CAP_PROP_FRAME_HEIGHT)
);
CvVideoWriter *writer = cvCreateVideoWriter("test.avi", CV_FOURCC('X','V','I','D'), fps, size);
IplImage *img = cvCreateImage(size, 8, 3);
while((tempImg=cvQueryFrame(cap)) != NULL)
{
cvCopy(tempImg, img);
if (img->origin == IPL_ORIGIN_TL)
{
cvFlip(img, img);
}
cvWriteFrame(writer, img);
}
cvReleaseImage(&img);
cvReleaseCapture(&cap);
cvReleaseVideoWriter(&writer);
system("pause");
return 0;
}
9.1 cvQueryFrame()
从摄像头或者文件中抓取并返回一帧
IplImage* cvQueryFrame( CvCapture* capture );
capture
视频获取结构。
函数cvQueryFrame从摄像头或者文件中抓取一帧,然后解压并返回这一帧。这个函数仅仅是函数cvGrabFrame和函数cvRetrieveFrame在一起调用的组合。返回的图像不可以被用户释放或者修改。
9.2 cvReleaseCapture()
CvCapture结构使用结束后,可以调用cvReleaseCapture()来释放CvCapture结构。与OpenCV中大部分释放函数类似,这个函数读入一个指向capture结构的指针。
void cvReleaseCapture(CvCapture** capture);
- opencv学习笔记(九)捕获摄像头的视频并保存成avi格式
- opencv 摄像头捕获的图像保存为avi视频 代码解析
- 《OpenCV》Part10 OpenCV3.1.0 openCV读取摄像头并保存为.avi视频
- OpenCV学习笔记(02) :OpenCV拍摄视频并保存
- opencv保存avi视频
- OpenCV学习笔记(9)利用MFC的Picture控件显示图像+播放视频和捕获摄像头画面
- OpenCV学习笔记(9)利用MFC的Picture控件显示图像+播放视频和捕获摄像头画面
- OpenCV学习笔记(9)利用MFC的Picture控件显示图像+播放视频和捕获摄像头画面
- OpenCV学习笔记(9)利用MFC的Picture控件显示图像+播放视频和捕获摄像头画面
- OpenCV学习笔记 利用MFC的Picture控件显示图像+播放视频和捕获摄像头画面 .
- OpenCV学习笔记 利用MFC的Picture控件显示图像+播放视频和捕获摄像头画面
- opencv学习(二)avi格式视频播放
- opencv保存的avi视频不能打开
- OpenCV学习笔记(1):获取摄像头并显示摄像头视频
- opencv采集视频/摄像头数据并保存
- opencv摄像头拍摄视频并保存方法
- directshow+opencv显示usb的摄像头代码(并保存视频中的图片)
- opencv读取摄像机并保存为avi视频
- node环境搭建
- JavaScript 焦点事件
- ListView 与ViewHolder
- js获取select选中的标签option的值
- Yii createCommand CURD操作
- opencv学习笔记(九)捕获摄像头的视频并保存成avi格式
- Unity中2D和UGUI图集的理解与使用
- 京东量化教你如何量化选股
- 【Unity】子物体坐标问题
- STM---STM32F103 RCC
- swift中的转场动画
- Android ServiceConnection
- 修改默认的undo_retention参数设置
- C/C++编程小练习 大数乘法之浮点大数乘法算法