首页 > 学院 > 开发设计 > 正文

OpenCV——将图片转换成视频

2019-11-06 08:53:57
字体:
来源:转载
供稿:网友

在做毕设时,需要将处理的图像结果编辑成视频的格式,用一些软件没有OpenCV编程来的快。代码如下:

主要是读入图像序列,设置好帧率和视频编码器格式,还有分辨率就可以完成录制。

#include <iostream>#include <opencv2/opencv.hpp>using namespace cv;int main(){	//声明iplImage指针  	IplImage* Image = NULL;	CvVideoWriter* video = cvCreateVideoWriter("depth2.avi", 0, 10, cvSize(512, 424), 1);	char filename[200];//保存图像名的数组  	for (int m = 2; m < 147; m++) //图像命名规则为00*.png  	{		sPRintf(filename, "C://Users//Haley Xu//Documents//Visual Studio 2013//Projects//kinect2//kinect2//cljg_2//depth%d.bmp", m);		Image = cvLoadImage(filename);		cvShowImage("读取", Image);		cvWriteFrame(video, Image);		char c = cvWaitKey(150);		if (c == 27) break;//按下ESC停止  	}	cvReleaseVideoWriter(&video);	/*	char filename[200];	VideoWriter videoWriter;//视频写入器  	videoWriter.open("freespaceAndObstacles.avi", CV_FOURCC('x', 'v', 'I', 'D'), 25, Size(1024, 333));//注意若图片尺寸与写入器的尺寸不同的话可能失败  	if (!videoWriter.isOpened()) 		std::cout << "创建VideoWriter失败" << std::endl;	for (int m = 1; m < 250; m++)	{		sprintf(filename, "E://img//%d.bmp", m);		cv::Mat img = cv::imread(filename);		img.convertTo(img,CV_8UC3);		imshow("freespaceAndObstacles",img);		videoWriter << img;//写入一帧到文件 		waitKey(100);	}	*/}


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表