您的位置:首页 > 运维架构

opencv 将图片合成为视频流(AVI格式)

2016-06-14 16:28 405 查看
#include <iostream>

#include "cv.h"

#include "highgui.h"

void main()

{

int num = 1;

CvSize size = cvSize(1024,960); //视频帧格式的大小

double fps = 3; <span style="white-space:pre"> </span>//每秒钟的帧率

CvVideoWriter *writer = cvCreateVideoWriter("E:\\学习\\vc\\phei1.avi",-1,fps,size); //创建视频文件

char cname[100];

sprintf(cname,"E:\\学习\\vc\\photo\\%d.jpg",num); //加载图片的文件夹,图片的名称编号是1开始1,2,3,4,5.。。。

IplImage *src = cvLoadImage(cname);

if (!src)

{

return;

}

IplImage *src_resize = cvCreateImage(size,8,3); //创建视频文件格式大小的图片

cvNamedWindow("avi");

while (src)

{

cvShowImage("avi",src_resize);

cvWaitKey(1);

cvResize(src,src_resize); <span style="white-space:pre"> </span>//将读取的图片设置为视频格式大小相同

cvWriteFrame(writer,src_resize); //保存图片为视频流格式

cvReleaseImage(&src); <span style="white-space:pre"> </span> //释放空间

num++;

sprintf(cname,"E:\\学习\\vc\\photo\\%d.jpg",num);

src = cvLoadImage(cname); //循环读取数据

}

cvReleaseVideoWriter(&writer);

cvReleaseImage(&src_resize);

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: