Matlab從一系列圖片導出AVI視頻,導出GIF動圖

 

平臺:Win7,Matlab 2014aapp

 

從一系列圖片導出AVI視頻的M代碼以下:ide

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代碼以下:oop

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
相關文章
相關標籤/搜索