在matlab中写入GIF文件的延迟时间
Writing delay time of GIF file in matlab
我想重写GIF文件,延迟时间与原文件相等。这是示例图片:
这是我的代码,但输出的延迟比原来慢。有没有办法让它相等?
[I map]=imread('a.gif');
delay=0.1;
frame=size(I,4);
loops=65535;
for i = 1:frame
if i==1
imwrite(I(:,:,:,i),map,'b.gif','gif','LoopCount',loops, 'DelayTime', delay); %save file output
else
imwrite(I(:,:,:,i),'b.gif','gif','WriteMode', 'append'); %save file output
end
end
结果:
使用此代码
[I map]=imread('a.gif');
delay=0.03;
frame=size(I,4);
for i = 1:frame
if i==1
imwrite(I(:,:,:,i),map,'b.gif','gif', 'DelayTime', delay,'LoopCount',inf); %save file output
else
imwrite(I(:,:,:,i),'b.gif','gif','WriteMode', 'append', 'DelayTime', delay); %save file output
end
end
我想重写GIF文件,延迟时间与原文件相等。这是示例图片:
这是我的代码,但输出的延迟比原来慢。有没有办法让它相等?
[I map]=imread('a.gif');
delay=0.1;
frame=size(I,4);
loops=65535;
for i = 1:frame
if i==1
imwrite(I(:,:,:,i),map,'b.gif','gif','LoopCount',loops, 'DelayTime', delay); %save file output
else
imwrite(I(:,:,:,i),'b.gif','gif','WriteMode', 'append'); %save file output
end
end
结果:
使用此代码
[I map]=imread('a.gif');
delay=0.03;
frame=size(I,4);
for i = 1:frame
if i==1
imwrite(I(:,:,:,i),map,'b.gif','gif', 'DelayTime', delay,'LoopCount',inf); %save file output
else
imwrite(I(:,:,:,i),'b.gif','gif','WriteMode', 'append', 'DelayTime', delay); %save file output
end
end