本帖最后由 matlab的旋律 于 2020-12-21 07:42 编辑
上个帖子提到了将视频格式转换为gif视频转换gif,其实在实际处理中可能需要对一个.gif文件进行大小、速度等方面的修改,也就是.gif到.gif。下面的代码实现了这个功能。
- close all
- clear
- clc
- [A,map]=imread('input.gif', 'frames', 'all');%读取索引图像im以及与之对应的颜色表到map中
- flag = 0;
- gifName = 'output.gif';
- for k=1:size(A,4)
- [im,newmap] = imresize(A(:,:,:,k),map,0.8);
- imshow(im,newmap);
- flag = flag + 1;
- if k == 1
- imwrite(im,newmap,gifName,'gif','WriteMode','overwrite', 'Loopcount',inf);
- elseif k>1
- imwrite(im,newmap,gifName,'gif','WriteMode','append','DelayTime',0);
- end
- end
复制代码
从图总的速度可以看出,裁剪后的gif文件速度明显变快了。
|