1. 程式人生 > >連續幀圖片轉視訊

連續幀圖片轉視訊

#include <iostream>  
#include "cv.h"  
#include "highgui.h"  


using namespace std;
using namespace cv;
void main()
{
int num = 1;
CvSize size = cvSize(1024, 768);  //視訊幀格式的大小  
double fps = 3;       //<span style = "white-space:pre">      < / span>//每秒鐘的幀率  
CvVideoWriter *writer = cvCreateVideoWriter("E:\\phei1.avi", -1, fps, size); //建立視訊檔案  
char cname[100];
sprintf(cname, "CRH2A-2235_A_0_1_20160601_151501_420.DLV_%d.png", 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, "CRH2A-2235_A_0_1_20160601_151501_420.DLV_%d.png", num);
src = cvLoadImage(cname);       //迴圈讀取資料  
}
cvReleaseVideoWriter(&writer);
cvReleaseImage(&src_resize);


}