码迷,mamicode.com
首页 > 其他好文 > 详细

Matlab从一系列图片导出AVI视频,导出GIF动图

时间:2014-12-24 13:08:26      阅读:417      评论:0      收藏:0      [点我收藏+]

标签:

 

平台:Win7,Matlab 2014a

 

从一系列图片导出AVI视频的M代码如下:

clear all; % 清除变量
% 官方示例,命令窗口输入“doc VideoWriter”
writerObj = VideoWriter(‘out.avi‘); % 输出AVI文件名字,out.avi
writerObj.FrameRate = 25; % 帧率,25fps
writerObj.Quality = 90;   % 质量,百分比,90%
open(writerObj);
for i = 1:1:100 % 共100副图片
    img = imread([img\‘,sprintf(‘%d‘,i),‘.png]); %图片的名字,位于img文件夹,1.png 2.png ...
    writeVideo(writerObj, img);
end
close(writerObj);

 

从一系列图片导出GIF动图的M代码如下:

clear all; % 清除变量
% 官方示例,命令窗口输入“doc imwrite”,Write Animated GIF
outfile = ‘out.gif; % 输出GIF文件名,out.gif
delaytime = 0.2;     % GIF动作间隔,0.2S
for i = 1:1:10 % 共10副图片,要求所有图片宽高相同,若不同,可用imresize([ws hs])缩放至相同
    img = imread([img\‘,sprintf(‘%d‘,i),‘.jpg]); %图片的名字,位于img文件夹,1.jpg 2.jpg ...
    img2 = imresize(img, 0.5);     % 可选,为控制GIF大小,对原图做缩放
    [A, map] = rgb2ind(img2, 256); % GIF最高256色
    if i==1
        imwrite(A, map, outfile, ‘gif‘, ‘LoopCount‘, inf, ‘DelayTime‘, delaytime);
    else
        imwrite(A, map, outfile, ‘gif‘, ‘WriteMode‘, ‘append‘, ‘DelayTime‘, delaytime);
    end
end

 

    

Matlab从一系列图片导出AVI视频,导出GIF动图

标签:

原文地址:http://www.cnblogs.com/liangliangh/p/4182006.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!