爱意满满的作品展示区。
BGLL

PNG 极限压缩工具 - limitPNG

  •  1
     
  •   BGLL ·
    nullice · Jun 10, 2016 · 16875 views
    This topic created in 3806 days ago, the information mentioned may be changed or developed.


    前段时间由于有对 PNG 图片无损压缩的极端需求,研究了下目前的 PNG 压缩方案,找了很多工具,经过测试,找到个比较极限的压缩流程。最近有在接触 electron ,正好用其做了一个 GUI 的 PNG 的极限压缩工具,类似于 PNGGauntle ,但能比 PNGGauntle 压缩得更小。


    说是极限压缩工具,自然是对压缩大小有极限的追求, limitPNG 比对比测试过的同类 PNG 无损软件( PNGGauntle 、 scriptPNG 、 Leanify 、 Caesium 等, pngout 这些就不说了,这些 GUI 压缩工具( limitPNG 也是)都是会用到 pngout 的)能压缩得更小:


    (当然对比测试不只测这两张图片,测试过几百张, limitPNG 压缩得都最小)

    另外由于极限压缩耗时非常长,一张几百 KB 的图都可能会花费数分钟,可能不符合一般人常用的情景,所以 limitPNG 还提供了“快速”模式,能花极短的时间到达极限 90% 左右的效果。

    除了无损压缩, limitPNG 也提供了类似 tinypng 的有损压缩,压缩出来也比同类工具更小,并且提供多级质量供选择:



    最后,这是个免费软件:
    http://nullice.com/limitPNG
    Supplement 1  ·  Jun 10, 2016
    win7 请下载 32 位版
    86 replies  •  2018-08-15 10:47:41 +08:00
    notgod
    notgod
    Jun 10, 2016
    1
    44MB 太大 差评

    <5M + 封装 .exe 绿色 好评
    BGLL
    BGLL
    OP
    Jun 10, 2016
    2
    @notgod

    用得 electron 尺寸是没办法了,
    shiny
    shiny
    Jun 10, 2016 via iPhone
    3
    对比 tinypng 和智图效果如何呢?
    BGLL
    BGLL
    OP
    Jun 10, 2016❤️1
    4
    @shiny
    上面有对面图,
    tinypng 是有损压缩, limitPNG 的有损压缩是可以设置品质的,设置为高质量与 tinypng 差不多,有时大一点,低质量比 tinypng 小。


    智图对 PNG 压缩效果很差,当然比智图好
    readonly
    readonly
    Jun 10, 2016 via iPhone
    5
    有意思,最近一直在用 tinypng 感觉已经非常好了,下次试试看!
    BGLL
    BGLL
    OP
    Jun 10, 2016
    6
    @readonly

    tinypng 压缩过的图片,通过 limitPNG 的无损压缩还能变得更小
    Kilerd
    Kilerd
    Jun 10, 2016
    7
    表示 electron 封装的软件能不用就不用。 太大了,跟市面上的几百 K 的软件没得比。
    BGLL
    BGLL
    OP
    Jun 10, 2016
    8
    @Kilerd 确实,所以用 electron 的软件要么要得是大型软件,要么得有其过人之处。
    xupefei
    xupefei
    Jun 10, 2016
    9
    @Kilerd 还有一点,运行时 UI 载入缓慢, CPU 狂飙,多出一堆进程,吃掉一百兆内存。
    BGLL
    BGLL
    OP
    Jun 10, 2016
    10
    @xupefei 这个也是 electron 的锅...
    designer
    designer
    Jun 10, 2016 via iPhone
    11
    谢谢分享。
    设计喵重点收藏对象!
    GPU
    GPU
    Jun 10, 2016
    12
    UI 好漂亮的樣子.
    fcicq
    fcicq
    Jun 10, 2016
    13
    楼主你直说用了谁家的算法吧.
    fcicq
    fcicq
    Jun 10, 2016
    14
    加一句, 说清楚才能洗清有可能侵犯 GPL 的嫌疑. 啥都不提算什么事.
    BGLL
    BGLL
    OP
    Jun 10, 2016
    15
    @fcicq 官网有 github 的链接,上面会有些,
    fcicq
    fcicq
    Jun 10, 2016
    16
    @BGLL 里面只有 gitattributes 和 gitignore.
    BGLL
    BGLL
    OP
    Jun 10, 2016
    17
    @fcicq 官网有 github 的链接,上面会有写的,现在网不好还没从本地 sync 上去, electron 的项目文件好大
    BGLL
    BGLL
    OP
    Jun 10, 2016
    18
    @fcicq 实际也就是用到得老工具 ,pngout,pngquant,pngwolf,TruePNG,zopflipng,cryopng,ect 不过流程不同,效果不一样
    fcicq
    fcicq
    Jun 10, 2016
    19
    @BGLL 除了刷新了工具之外, 你的项目比 https://github.com/imgo/imgo 对压缩工具的总结做的好在哪里?
    fcicq
    fcicq
    Jun 10, 2016
    20
    楼主你的项目确实侵犯了 pngout 的授权协议. pngout 的二进制文件未经授权不可重分发. 只有这个东西既不开源又需要商业授权.
    BGLL
    BGLL
    OP
    Jun 10, 2016
    21
    @fcicq 压缩效果确实比 imgo 的好
    pngout 这个,我去看看他的 license ,不行就做成让用户去下载的形式,由于 PNGGauntle 捆绑了 pngout 所以没考虑那么多
    fcicq
    fcicq
    Jun 10, 2016
    22
    瞧这里有人在投机取巧... 其实你只要别把二进制塞 repo 里然后这样意思一下也就算了对吧.
    https://github.com/ImageOptim/ImageOptim/blob/master/imageoptim/Makefile
    BGLL
    BGLL
    OP
    Jun 10, 2016
    23
    @fcicq 还有这么玩的...


    我是打算如果不行,就让给用户选择去下下载 pngout ,这样就不算捆绑了
    viosey
    viosey
    Jun 10, 2016 via Android
    24
    打算出 Mac 版吗?
    itfanr
    itfanr
    Jun 10, 2016
    25
    支持
    BGLL
    BGLL
    OP
    Jun 10, 2016
    26
    @viosey 暂时没打算,没 Mac ,只有 OSX 的虚拟机,太卡在虚拟机里折腾不了
    ChiangDi
    ChiangDi
    Jun 10, 2016
    27
    我一直在用这个 https://imageoptim.com
    loggerhead
    loggerhead
    Jun 10, 2016
    28
    有几个疑问或反馈:

    1. 有开源打算吗?
    2. Linux 用户可以用吗?
    3. 页面图片在 iPhone 5S ( iOS 8.4 )下显示有问题
    MOxFIVE
    MOxFIVE
    Jun 10, 2016
    29
    好喜欢 LZ 的 UI 设计风格~

    话说这样转出来的 PNG 是交错格式吗
    BGLL
    BGLL
    OP
    Jun 10, 2016❤️1
    30
    @loggerhead
    github syncing 中
    由于使用的是现有工具的二进制文件, Linux 下用要把那些工具编译一下,或者找它们的 Linux 版,
    实际上 Linux 下用的话,看看 limitPNG  使用那些工具的流程,写个脚本更快,更方便
    RanchoH
    RanchoH
    Jun 10, 2016
    31


    吓到了……
    BGLL
    BGLL
    OP
    Jun 10, 2016
    32
    @RanchoH 这是什么图片,求原图
    RqPS6rhmP3Nyn3Tm
    RqPS6rhmP3Nyn3Tm
    Jun 10, 2016 via iPad
    33
    如果是极限压缩的话,我觉得用 webP 比较好啊
    BGLL
    BGLL
    OP
    Jun 10, 2016
    34
    @BXIA 能用 webP 的地方毕竟还少,所以这只是 PNG 的极限压缩
    BGLL
    BGLL
    OP
    Jun 10, 2016
    36
    @RanchoH
    怪不得,原来是 JPG 图片啊,这个工具只能压缩 PNG 的。
    heiybb
    heiybb
    Jun 10, 2016
    37
    不知道什么问题,直接运行不了
    然而电脑中似乎没有缺什么库
    BGLL
    BGLL
    OP
    Jun 10, 2016
    38
    @heiybb WIN7 请使用 32 位版
    ayaseangle
    ayaseangle
    Jun 11, 2016
    39
    nodejs 写的吗?做错 cmd 就好,大概会加入到 assets pipeline 去。而不是用图形工具一张一张来。。。。。
    BGLL
    BGLL
    OP
    Jun 11, 2016
    40
    @ayaseangle
    是的 node.js 。
    目标人群不同吧,爱用脚本的就不需要这个拖个那么大的 electron 的软件了。
    不过还是有很多人需要用 GUI 来的,本质这是个 GUI 工具,给不怎么关心技术的人用。
    用 GUI 也不是一张一张来嘛,可以拖多个文件还是挺方便,子目录也会扫描。
    heiybb
    heiybb
    Jun 11, 2016 via Android
    41
    @BGLL 不好意思,网站上的 tips 太小没注意到
    chztv
    chztv
    Jun 11, 2016
    43
    木有 OSX 版本?
    BGLL
    BGLL
    OP
    Jun 11, 2016
    44
    @heiybb 不,是我的错,到现在也没到 Windows 7 上测试过,据反馈有的人 win7 上 32 位也运行不了,我正下 win7 镜像,等明天去试试看到底怎么回事
    BGLL
    BGLL
    OP
    Jun 11, 2016
    45
    @chztv 木有,木有 mac
    zonghua
    zonghua
    Jun 11, 2016
    46
    electron 只是个显示界面吧,真正处理执行压缩的部分做成命令行工具啊
    kn007
    kn007
    Jun 11, 2016 via Android
    47
    尺寸有点大,赞下开源精神。
    chairuosen
    chairuosen
    Jun 11, 2016
    48
    开源了么?正好想找个 Electron 项目学习下
    kofip
    kofip
    Jun 11, 2016
    49
    Win7 64 位 专业版

    下载了 32bit 64bit 打开都是报错。
    bumz
    bumz
    Jun 11, 2016
    50
    有考虑以后出 Mac 版吗

    开源软件上架收费也是不错的
    bumz
    bumz
    Jun 11, 2016
    51
    压缩了将近半个小时

    BGLL
    BGLL
    OP
    Jun 11, 2016
    53
    @kofip @heiybb 现在 32 位版可以在 win7 上使用了,之前发布的有问题。

    http://77we48.com1.z0.glb.clouddn.com/limitPNG_32_beta2_win7fix.zip

    @baskice
    七牛的直链都下不了吗,试试网盘 http://pan.baidu.com/s/1kV50DF5
    jzhone
    jzhone
    Jun 11, 2016
    54
    用 picpick 在桌面随便截了几张图,分别丢到极限压缩和 tinypng 上,即使使用有损快压缩后的体积都比 tinypng 大,极限压缩也是
    BGLL
    BGLL
    OP
    Jun 11, 2016
    55
    @jzhone
    tinypng 是有损压缩, limitPNG 的“极限”模式压缩是无损压缩, 有损自然比无损压的小。

    “有损快”是速度优先的模式。要比可以用 limitPNG “有损-低质量” 来比,这个模式下我测试过的图没有比 tinypng 大的。不过有损压缩不同图损失画质不同, tinypng 不能设置质量,不是很好比较。

    另外 tinypng 压缩过的图,可以用 limitPNG 的“极限”模式无损压缩进一步缩小体积,虽然减的幅度很小
    jzhone
    jzhone
    Jun 11, 2016
    56
    @BGLL 感谢你的回复,我同事还发现了一个问题,当我在压缩一个文件时,再拖一张图片进去压缩,不会提示当前正在压缩,但读取新图片后压缩按钮就无办法点击下去了,其实这时是图 1 正在压缩,要等图 1 压缩完之后才能按下图 2 的压缩按钮,但提示的压缩前数据及名字就会变成图 2 的了
    BGLL
    BGLL
    OP
    Jun 11, 2016
    57
    @jzhone 这确实这个 BUG ,没考虑周全,目前打算变成压缩进行中时不能添加文件。
    cnsun
    cnsun
    Jun 11, 2016 via Android
    58
    在用 PS 插件压缩,直接保存的时候就压缩了,很方便。
    shutongxinq
    shutongxinq
    Jun 11, 2016
    59
    楼主制作的 UI 很好看!
    dreammes
    dreammes
    Jun 11, 2016 via iPhone
    60
    先收藏了
    fengxing
    fengxing
    Jun 12, 2016
    61
    ui 很好看,但是压缩速度实在是太慢太慢了
    murmur
    murmur
    Jun 12, 2016
    62
    一个工具 30 多 m 啊,这个效率 efficiency...为什么不用.net 做呢
    BGLL
    BGLL
    OP
    Jun 12, 2016
    63
    @fengxing 快速模式还是挺快的。

    @murmur 本来的目的就是试试用 electron 来做东西。
    话说 .net 开发的东西,如果要兼顾各个版本 windows ,也有体积大的问题,要么为不同版本 .net framework 编译不同版本,要么自带 .net framework ,要么让用户下载 .net framework ...
    dungeonsnd
    dungeonsnd
    Jun 12, 2016
    64
    楼主,你好。
    最近我也在研究图片和视频压缩,为了一个需要经常上传、下载图片 /视频的应用优化。
    现在图片和视频对于 3G/4G 来说还是太大的。当然优化业务是一方面,很多时候很多人还是想更高的无损压缩。

    自认为算法方面没有那些压缩算法大师牛,所以想从简单点的入手。
    目前在考虑从文件本身格式以及统计分析、字典同步方面入手,目标是仅针对常见的 PNG/JPG/MOV/MP4 图片视频,希望压缩到原体积的 80%~50%左右。压缩 /解压时间可以适当长,主要考虑 3G/4G 网络的速度,解压时间通过应用内部设计来提高体验。 可以放宽对内存和本地字典的容易要求。
    但是自己数学功底比较差,进展缓慢,希望有同样爱好的大牛指点,如果能共同提出个压缩率非常高的无损方法(可能只是一种方法 算不上算法)也好,如果失败了也算是学习过程了。
    BGLL
    BGLL
    OP
    Jun 12, 2016
    65
    @dungeonsnd 这个工具实际使用的是一些已有的压缩工具组合。我只研究过 PNG 的压缩过程, png 来说 pngwolf 的算法应该说效果最好,你可以参考下。

    另外可以考虑用更好的格式代替,比如 bpg 或 webP ,这是目前主流的方法了,客户端需要传统格式图片的时候再转成 传统格式。
    要减少传输尺寸,图片来说要体积小使用新出的格式应该来说就可以了,没有很深知识要改进这些新格式的效果还是很难的。

    视频只能从压制的参数着手了。
    xpol
    xpol
    Jun 13, 2016
    66
    比 [pngquant]( https://pngquant.org/) 有啥优势?
    xpol
    xpol
    Jun 13, 2016
    67
    看来一下源代码,原来包括 pngquant 。
    davin
    davin
    Jun 13, 2016
    68
    一直在用 PNGoo ,懒得去敲键盘,点点鼠标就行了。
    circsqua
    circsqua
    Jun 14, 2016
    69
    压缩过程需要很久吗,在 Win10 上久久未能完成。
    BGLL
    BGLL
    OP
    Jun 14, 2016
    70
    @circsqua 图大的话几十分钟都有可能,选快速模式就快了
    Kylinsun
    Kylinsun
    Jun 14, 2016 via Android
    71
    mark
    circsqua
    circsqua
    Jun 14, 2016
    72
    @BGLL 无损里的“快速”可以,但是“强力”,“极限”和有损里的“低质量”则一直未能完成……
    circsqua
    circsqua
    Jun 14, 2016
    73
    @BGLL 图片只有 680K
    BGLL
    BGLL
    OP
    Jun 14, 2016❤️1
    74
    @circsqua 什么版本,窗口左上角 “ beta ”几?
    可否发图,我试一试
    circsqua
    circsqua
    Jun 14, 2016
    75
    @BGLL 啊,图片是商业开发用,不很方便,还请海涵。是游戏的素材,所以有大量的透明间隙,会不会有关系?
    BGLL
    BGLL
    OP
    Jun 14, 2016
    76
    @circsqua
    应该没什么关系,压缩时间主要跟图片分辨率有关
    如果是你最新版本( beta4 ),有可能是你等的不够久....
    soratadori
    soratadori
    Jun 14, 2016
    77
    @dungeonsnd 你的想法要实现难度非常非常高*10000
    首先现在的图片多数是 jpeg 以及 h264 格式的,想二次无损压缩的可能性几乎为 0 。(压缩率最多不超过 2%,甚至可能会变大 2333)
    其次,原体积(h264)的 50~80%已经夸张到爆了好吗,就算是 HEVC 都没有把握能压到 H264 的 50%。
    并且,无损压缩体积变小只是相对无损压缩来说的。相比于有损压缩(jpg h264)来说,无损压缩的压缩率弱爆了

    如果你考虑二次有损压缩,图片来说已经有很多成熟的工具和算法,搜一下就搜得到。
    视频的话,本地解码对机器的要求会极大的提高,手机未必跑得动。即便是电脑,如果是小白用的电脑,电脑上的解码器稀烂那种,也有可能跑不动的。这就是为什么这么多视频网站的视频体积那么大,画质那么烂的原因,这些视频网站都是用低参数来压的。
    goldenlove
    goldenlove
    Jun 15, 2016
    78
    electron 不是直接可以打包成 Mac 的版本么?
    曾经也想过封装个,但 Mac 下已经有个比较好用的 Pngyu: http://nukesaq88.github.io/Pngyu/ 了...
    楼主这个主要是 UI 配色够清爽~
    BGLL
    BGLL
    OP
    Jun 15, 2016
    79
    @goldenlove
    界面部分的代码是可以不改直接生成 Mac 版的,但用到的压缩工具二进制文件要在 Mac 下再编译。另外 electron 在 windows 不同版本都有坑,没实际测试还是不好弄。

    Pngyu win 上也有,不过只能有损压缩,所以以前用的不多,而且生成的图片还有较多压缩空间。
    goldenlove
    goldenlove
    Jun 15, 2016
    80
    @BGLL
    哈~ 看来对压缩质量满有追求的,期待支持 Mac 平台...
    要不干脆开源让大家一起来完善?
    goldenlove
    goldenlove
    Jun 15, 2016
    81
    pngout 我看有别人编译好的 Mac 版本,你直接打包个上来试试呗?
    http://www.jonof.id.au/kenutils
    BGLL
    BGLL
    OP
    Jun 15, 2016
    82
    lisonfan
    lisonfan
    Dec 25, 2016 via iPhone
    83
    77 兆,极限压缩, 6 线程同时进行,不知道要压多久。。。 i5 4200H ,有点爆炸。图片是 jpg 用格式工厂转 png 的
    tammy
    tammy
    Jul 29, 2017
    84
    压缩包下载下来都是坏的
    baskice
    baskice
    May 19, 2018
    85
    大佬,这程序还有继续压榨压缩性能的空间吗?
    orangutan92
    orangutan92
    Aug 15, 2018
    86
    20 多 M 的 png 压缩一直卡着不动,我用的 beta4
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1063 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 146ms · UTC 23:02 · PVG 07:02 · LAX 15:02 · JFK 18:02
    ♥ Do have faith in what you're doing.