TinyPNG-kmeans 项目使用教程

TinyPNG-kmeans 项目使用教程

TinyPNG-kmeans 效果好于 tinypng.com 的PNG图像压缩器,压缩率&质量可调,摆脱 tinypng.com 的文件数量限制。 TinyPNG-kmeans 项目地址: https://gitcode.com/gh_mirrors/ti/TinyPNG-kmeans

1. 项目的目录结构及介绍

TinyPNG-kmeans 项目的目录结构如下:

TinyPNG-kmeans/
├── LICENSE
├── README.md
├── optipng
│   └── optipng.exe
├── ssim.py
└── tinypng.py

目录结构介绍

  • LICENSE: 项目的开源许可证文件,采用 GPL-3.0 许可证。
  • README.md: 项目的说明文档,包含项目的简介、使用方法、依赖安装等信息。
  • optipng: 包含 OptiPNG 的可执行文件,用于优化 PNG 图像的 Deflate 压缩过程。
  • ssim.py: 用于计算图像压缩前后的结构相似性 (SSIM) 值的 Python 脚本。
  • tinypng.py: 项目的启动文件,用于执行 PNG 图像的压缩操作。

2. 项目的启动文件介绍

tinypng.py

tinypng.py 是 TinyPNG-kmeans 项目的启动文件,负责执行 PNG 图像的压缩操作。该脚本的主要功能包括:

  • 图像读取与处理: 读取指定目录中的图像文件,并将其转换为 PNG 格式。
  • K-Means 聚类: 使用 K-Means 聚类算法对图像的像素颜色进行量化,减少颜色数量,从而降低图像文件大小。
  • Deflate 压缩: 调用 OptiPNG 对 PNG 图像的 Deflate 压缩过程进行优化,进一步提高压缩比。
  • 输出结果: 将压缩后的图像文件保存到指定的输出目录中。

使用方法

tinypng.py 所在的目录下运行以下命令:

python tinypng.py <输入目录名> <输出目录名> <P>
  • 输入目录名: 包含待压缩图像的目录。
  • 输出目录名: 压缩后的图像文件保存的目录。
  • P: 色彩数,取值范围是 P∈[2, 256],越小则压缩率越高,图像失真也越大。

例如:

python tinypng.py image image_tiny 100

该命令会将 image 目录中的所有图像文件压缩成 PNG 格式,并保存到 image_tiny 目录中,色彩数设置为 100。

3. 项目的配置文件介绍

TinyPNG-kmeans 项目没有专门的配置文件,所有的配置和参数调整都在启动文件 tinypng.py 中进行。用户可以通过调整命令行参数来控制图像压缩的质量和压缩率。

依赖安装

在使用 tinypng.py 之前,需要确保已安装以下 Python 库:

  • Pillow (PIL)
  • numpy
  • scipy
  • scikit-learn (sklearn)

可以通过以下命令安装这些库:

python -m pip install Pillow==8.4.0
python -m pip install numpy==1.20.3
python -m pip install scipy==1.8.0
python -m pip install scikit-learn==0.24.2

如果你还没有 Python,可以直接安装 Anaconda,它包含 Python 和上述库。

注意事项

  • 在使用时,确保 optipng.exetinypng.py 在同一个目录下。
  • 对于一些本身就高度压缩的 JPG 图像,生成的 PNG 文件可能会比原始文件更大,程序会自动跳过这些文件。

TinyPNG-kmeans 效果好于 tinypng.com 的PNG图像压缩器,压缩率&质量可调,摆脱 tinypng.com 的文件数量限制。 TinyPNG-kmeans 项目地址: https://gitcode.com/gh_mirrors/ti/TinyPNG-kmeans

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

荣钧群

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值