Note:本篇文章内容为linux下利用gimp和其它工具组合完成截取制作GIF图的一种实现,制作更为灵活,但并不方便,如果不需要那么高的定制性,并追求方便高效。可以使用类似QQ影音之类的软件,自带截取视频生成GIF功能

首先看下效果(截取视频制作GIF图)(1.1MB):

所用工具:GIMPgimp-plugin-registryOpenshot(可换)

Ubuntu用户可通过源直接安装

(注:gimp-plugin-registry这个插件的目的主要是裁剪图片,还是很方便的。如果你现在不想使用插件实现。也可以用其它方法实现,如imagemagick的命令行命令convert,由于今天主要是讲GIMP的实现方法,所以convert的使用还请自行搜索)

来看两个图片(上面的是原视频截图,下面的是我需要的尺寸)

有必要说下这个动态图的主要制作过程,一是便于理解,二是如果大家觉得有可以改进的地方或是不同的思路可以分享出来。最初我的想法是裁剪视频到满意的状态 比如从(720×480像素到450×220)虽然这个视频本身就是视频前面的广告,但是竟然广告内部也内嵌广告,所以我希望把下面的那个汉字去掉。并且尺寸也应该是由我来设定的。

整体的制作流程就是

  1. 用视频裁剪软件剪出所需视频片段并导出图片序列
  2. 通过gimp插件修改尺寸,大小
  3. 优化序列,导出最终gif

Step1、用视频裁剪软件剪出所需视频片段并导出图片序列

视频制作软件Openshot(你可以使用你习惯的其它类似工具)

我选择的是Openshot,导入视频素材,并托动到下面的轨道上。

播放/暂停视频,用鼠标在预览窗口上慢慢拉动,选择起始,然后点一下那个绿色的箭头,添加遮罩。再在结束位置上添加一个。之后点选裁剪工具,在那两个标记 点下方点一下,就切断视频了。(如果视频太小,掌握不精确,可以把鼠标放在轨道视频上,按住Ctrl,滚动鼠标中键,增加视频长度,就能看的准了)

切好后,把视频前后不要的地方直接右键移除。

在剩下的视频片段上右键 – 转换成图片序列,稍等片刻。

在你放视频的目录就会有一个新的目录,进入后还有一个目录,再次进入,就看到你的图片序列了。

Step2、通过gimp插件修改尺寸,大小

这时我们的插件登场。 安装后重启gimp,点击“滤镜 – Batch – batch process”进入一个界面。可以对图片进行批量处理操作。

我们先添加刚才导入的图片序列(添加完成后选择文件的窗口没有自动关闭,手动关闭下,不知道你们是不是也这样)

然后到“Resize”选项卡里面调整大小,比如我这里是调节到原图大小的50%

确定后,到Rename选项卡设置导出路径

然后到Output选项卡导出。 再次添加图片序列(50%大小的序列)

到Crop选项卡里面进行裁剪设置

通过测量工具得出所要尺寸。填入如下界面

到Rename选项卡设置新的保存目录,然后到Output导出

好,现在大小已经合适。 我们打开GIMP,导入图片序列。

点击“滤镜 – 动画 – 优化(对GIF)” 之后出现的图片序列我们看下名字,后面多了(200ms)(combine)字样。

我们在“滤镜 – 动画 – 回放” 上预览动画,那么1x就是图片间隔是200ms 我觉得2x速度更合适,所以,在导出时的导出选项可以使用100ms 这也是一个很不错的参考。

Step3、优化序列,导出最终gif

GIMP也疯狂之动态图的制作(三)的更多相关文章

  1. GIMP也疯狂之动态图的制作(四)

    本篇文章为gimp制作动态图的第四篇.在之前的基础上简单的拓展了下思路.就能做出蛮实用的动态图.本文将介绍两个动态图.第一个为在一张静态图上添加动态图,第二个图为修改部分渐变. 效果: 素材: 其实, ...

  2. GIMP也疯狂之动态图的制作(一)

    写在前面的话:本系列gimp教程已首发在Linux吧(Go),之所以重新发表是因为便于博主分类并且可以重新整理,用作记录.本系列的侧重不是GIF的教程,而是gimp教程,想更好的制作GIF图片请使用专 ...

  3. GIMP也疯狂之动态图的制作(二)

    首先看下效果: (素材丢失,无法提供) 所用工具:GIMP.GIMP-GAP(在源中直接搜索安装) 文后会添加一个从U2B上搬运过来的视频教程,效果不错,值得一看本想也制作个人物变换,但几次实验,相同 ...

  4. GIF动态图制作

    GIF动态图制作 博客写了也有一阵了,一直好奇大牛的博客里demo的动态图是怎么做的,今天抽空研究了一下,找了一个软件,以后再发现有好的工具再继续推荐 GIF制作工具--LICEcap 效果要比下面的 ...

  5. 4.14Python数据处理篇之Matplotlib系列(十四)---动态图的绘制

    目录 目录 前言 (一)需求分析 (二)随机数的动态图 1.思路分析: 2.源代码: 2.输出效果: 目录 前言 学习matplotlib已经到了尾声,没有必要再继续深究下去了,现今只是学了一些基础的 ...

  6. C# 动态创建SQL数据库(二) 在.net core web项目中生成二维码 后台Post/Get 请求接口 方式 WebForm 页面ajax 请求后台页面 方法 实现输入框小数多 自动进位展示,编辑时实际值不变 快速掌握Gif动态图实现代码 C#处理和对接HTTP接口请求

    C# 动态创建SQL数据库(二) 使用Entity Framework  创建数据库与表 前面文章有说到使用SQL语句动态创建数据库与数据表,这次直接使用Entriy Framwork 的ORM对象关 ...

  7. PS软件怎么把视频转成gif动态图?

    PS软件怎么把视频转成gif动态图?Adobe PhotoShop软件的最新版本是可以编辑视频的,并且可以将视频转换为GIF动态图,使用也很简单,下面分享ps制作gif动态图的教程,需要的朋友可以参考 ...

  8. gif动图快速制作方法(附工具)

    现在写博客或是wiki的过程中,会经常引用到图片,特别是客户端经常与页面相关所以截图不可避.但是越来越多的效果仅仅一张图片是无法清楚的描述.并且博客或是wiki也是支持gif图的.gif图的制作方法有 ...

  9. windows和ubuntu下gif动态图片的制作

    现在社交软件中, 各种各样的动图为大家交流很大的乐趣.  Gif图片比视频小, 比静态JPG图片形象生动, 更适用于产品展示和步骤演示等. 这里简单介绍一下在window系统和ubuntu系统下gif ...

随机推荐

  1. 有意练习--Rails RESTful(一)

    书要反复提及<哪里有天才>在说,大多数所谓的天才是通过反复刻意练习获得. 当你的练习时间达到10000几个小时后,.你将成为该领域的专家. 近期在学习rails怎样实现RESTful We ...

  2. 杭电1233还是畅通project

    还是畅通project Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Tota ...

  3. zoj-3792-Romantic Value-最小割+数值转化

    假设不须要求边的个数的话,就是一个裸的最小割问题. 求边的个数就用边的权值记录一下. #include <stdio.h> #include <iostream> #inclu ...

  4. JAVA必备——Struts

    在我们的开发中,有一个经典的框架,就是SSH,他们各自是:Struts,Spring,Hibernate,我们队他们神交已久,在曾经的博客中我介绍了Hibernate,今天我们也逐步揭开Struts的 ...

  5. POJ1080 Human Gene Functions 动态规划 LCS的变形

    题意读了半年,唉,给你两串字符,然后长度不同,你能够用'-'把它们补成同样长度,补在哪里取决于得分,它会给你一个得分表,问你最大得分 跟LCS非常像的DP数组 dp[i][j]表示第一个字符串取第i个 ...

  6. hibernate学习笔记(1)hibernate基本步骤

    hibernate基本步骤 1.创hibernate置对象 Configuration config = newConfiguration(); config.configure("hibe ...

  7. java 7K交通灯管理系统面试题

    交通灯管理系统 模拟实现十字路口的交通灯管理系统逻辑.详细需求例如以下: 1. 异常随机生成依照各个路线行驶的车辆.    比如:    由南向而来去往北向的车辆----直行车辆    由西向而来去往 ...

  8. 十天学Linux内核之第六天---调度和内核同步

    原文:十天学Linux内核之第六天---调度和内核同步 心情大好,昨晚我们实验室老大和我们聊了好久,作为已经在实验室待了快两年的大三工科男来说,老师让我们不要成为那种技术狗,代码工,说多了都是泪啊,, ...

  9. MySQL当您插入列无效的数据插入

    1.错误叙述性说明 com.mysql.jdbc.exception:jdbc4.MySQLSyntaxErrorException:Unknown column 'man' in 'field li ...

  10. sql 子查询stuff功能(同一个人的多任务,多领域成为字符串)

    USE [erp2015] GO /****** Object: StoredProcedure [dbo].[GetUser] Script Date: 03/14/2015 13:27:04 ** ...