利用Python将图片序列转换为GIF动图

Python_图片序列转GIF

利用python将一个包含图片序列的文件夹下的所有图片转成GIF动图形式

函数可以直接使用,输入包含图片的文件夹路径及输出GIF的路径即可。

import imageio
import os
import os.path as osp


def img2gif(img_dir, gif_path, duration):
    """

    :param img_dir: 包含图片的文件夹
    :param gif_path: 输出的gif的路径
    :param duration: 每张图片切换的时间间隔,与fps的关系:duration = 1 / fps
    :return:
    """
    frames = []
    for idx in sorted(os.listdir(img_dir)):
        img = osp.join(img_dir, idx)
        frames.append(imageio.imread(img))

    imageio.mimsave(gif_path, frames, 'GIF', duration=duration)
    print('Finish changing!')


if __name__ == '__main__':
    img_dir = '/root/Workspace/Reimplement_results/use_initial_pose_stage2_3/vicon_03301_13/iteration_results' \
              '/result_img '
    par_dir = osp.dirname(img_dir)
    gif_path = osp.join(par_dir, 'output.gif')
    img2gif(img_dir=img_dir, gif_path=gif_path, duration=0.1)

你可能感兴趣的:(工具,python)