将图片合成视频
程序员文章站
2024-01-13 12:33:22
...
framesPath = 'E:\img\';%图像序列所在路径,同时要保证图像大小相同 videoName = 'Bolt.avi';%表示将要创建的视频文件的名字 fps = 25; %帧率 startFrame = 1; %从哪一帧开始 endFrame = 350; %哪一帧结束 if(exist('videoName','file')) delete videoName.avi end %生成视频的参数设定 aviobj=VideoWriter(videoName); %创建一个avi视频文件对象,开始时其为空 aviobj.FrameRate=fps; open(aviobj);%Open file for writing video data %读入图片 for i=startFrame:endFrame fileName=sprintf('%04d',i); %根据文件名而定 我这里文件名是0001.jpg 0002.jpg .... %如果名字是1,2,3,则应该是%d.如果是frame1001,frame1002,则应该是frame1%03d. frames=imread([framesPath,fileName,'.jpg']); writeVideo(aviobj,frames); end close(aviobj);% 关闭创建视频
如下,
对于1.jpg,2.jpg,3.jpg之类的
filename = [ObjDir,int2str(i),'.tif'];
z = imread(filename);
可以改为
fileName=sprintf('%d',i);
z = imread([ObjDir,fileName,'.tif']);