MATLAB生成gif
程序员文章站
2022-03-25 08:51:13
...
将视频转为gif,方法为先读入视频中的一帧,存为jpg格式后再读入,然后合成fig,代码如下:
%读取视频信息,获取帧数
obj = VideoReader('06.mp4');
numFrames = obj.NumberOfFrames;
filename= '06-2.gif';%需要转成的gif文件名
if numFrames>400
endframe = 400;%只存400帧
else
endframe = numFrames;
end
for i=1:4:endframe
%先存下视频的当前帧
frame = read(obj,i);
imwrite(frame,'tmp.jpg','jpg');
%再读入该帧,合并为gif文件
Img = imread('tmp.jpg');
figure(1);
imshow(Img,[],'border','tight');
% set(gca,'LooseInset',get(gca,'TightInset'))
set(gca,'looseInset',[0 0 0 0])
pause(0.00002)
frame=getframe(1);
im=frame2im(frame);
[I,map]=rgb2ind(im,256);
k=i;
if k==1;
imwrite(I,map,filename,'gif','Loopcount',inf,'DelayTime',2e-5);
%loopcount只是在i==1的时候才有用
else
imwrite(I,map,filename,'gif','WriteMode','append','DelayTime',2e-5);
%layTime用于设置gif文件的播放快慢
end
end
上一篇: vue中路由的重定向
下一篇: Java处理正则表达式特殊字符转义