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

opencv图片序列转换成视频

2017-01-15 22:32 555 查看
实验时经常需要将图片序列转换成视频,以获取实验结果,附代码如下:

//图片转视频
void Image2Video(string path_scr,string path_save)
{
char image_name[15];
string s_image_name;
VideoWriter writer;
int isColor = 1;
int frame_fps = 30;
int frame_width = 320;
int frame_height = 240;
string video_name = path_save+"out.avi";
writer = VideoWriter(video_name, CV_FOURCC('X', 'V', 'I', 'D'),frame_fps,Size(frame_width,frame_height),isColor);
cout << "frame_width is " << frame_width << endl;
cout << "frame_height is " << frame_height << endl;
cout << "frame_fps is " << frame_fps << endl;
namedWindow("image to video", CV_WINDOW_AUTOSIZE);
int num = 90;//输入的图片总张数
int i = 0;
Mat img;
while (i<=num)
{
sprintf(image_name, "%d%s",  ++i, ".jpg");
s_image_name = path_scr+image_name;
img = imread(s_image_name);//读入图片
if (!img.data)//判断图片调入是否成功
{
cout << "Could not load image file...\n" << endl;
}
imshow("image to video",img);
//写入
writer.write(img);
if (waitKey(30) == 27 || i > 90)
{
cout << "touch ESC" << endl;
break;
}
}
}
int main(int argc,char** argv)
{
// string videoFromfile = "E:\\face.mp4";  //读取视频
string Imagespath= "E:\\video2Image\\";    // 保存图片的文件夹路径一定要有,因为OpenCV不会自动创建文件夹
string videoTosave= "E:\\image2video\\"; //保存视频路径
//video2image(videoFromfile,Imagespath);
Image2Video(Imagespath,videoTosave);
return 0;
}
运行结果:

E:\\image2video目录下生成一个out.avi文件。



参考:
http://blog.csdn.net/bit452/article/details/48789679 http://blog.csdn.net/piaoxuezhong/article/details/54564937
另外:http://lib.csdn.net/article/opencv/41741
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  opencv 图片转视频