惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Blog — PlanetScale
Blog — PlanetScale
B
Blog
A
About on SuperTechFans
大猫的无限游戏
大猫的无限游戏
爱范儿
爱范儿
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
H
Help Net Security
H
Hackread – Cybersecurity News, Data Breaches, AI and More
博客园 - 三生石上(FineUI控件)
有赞技术团队
有赞技术团队
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
IT之家
IT之家
D
Docker
Google DeepMind News
Google DeepMind News
罗磊的独立博客
T
The Blog of Author Tim Ferriss
aimingoo的专栏
aimingoo的专栏
博客园 - 叶小钗
Recent Announcements
Recent Announcements
阮一峰的网络日志
阮一峰的网络日志
D
DataBreaches.Net
博客园 - 司徒正美
Engineering at Meta
Engineering at Meta

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
图片是如何被压缩的? - 少数派
2025-08-04 · via 少数派

在日常生活中,可能会遇到发生某张图片到社交媒体时,平台提示你“文件过大”。或者当访问某个网站时,图片会因为体积较大,出现加载缓慢的情况。

这时,可能会想到“压缩一下图片”,那么图片是如何被压缩的呢?

压缩的本质

压缩的目的在于让图片文件变小,内容看上去差不多。

就像泡茶一样,泡茶叶和少泡茶叶,在分量上茶叶少了一点,都泡出来的茶味道相差不多。

图片也是一样,通过一些方法,“删除”或“近似”哪些对人眼部敏感的图像细节,换取更小的问题。

图片被压缩的过程

以最常用的JPEG图片为例,压缩过程大概可以分为5个步骤:

第一步:颜色空间转换(RGB转换为YCbCr)

图片原本是RGB(红、绿、蓝)数据,但是人眼对“亮度”更敏感,对“颜色”不敏感。

所以,把图片转换为:

1、Y(亮度):黑白层级;

2、Cb / Cr(色彩):颜色信息;

这种分离让后面的步骤可以“牺牲颜色信息”,而不影响肉眼观感。

第二部:分块(通常 8×8 像素)

图像被分成一块块 8×8 的像素小方格,每块单独处理,方便后续压缩和定位。

第三步:离散余弦变换(DCT)

对每个 8×8 块进行 DCT 变换,把像素值变成频率数据。

低频:图像的轮廓、结构(重要);

高频:细节、纹理、噪点(不太重要)。

左上角是「直流分量DC」,表示这块图像的亮度平均值,是图像的低频部分;

越往右下角,是图像的高频部分,代码图像细节(比如边缘、纹理);

多数高频是0或者接近0,说明这块图像很平滑,可以压缩掉这些细节。

第四步:量化(画质损失步骤)

在 JPEG 图片压缩中,有一个很关键的操作,叫做「量化」,也就是故意降低某些图像细节的精度,从而减小文件大小。

因为人眼对高频(细节)的敏感度低,所以JPEG会:

1、对这些频率数据进行“量化”:除以一个数字(叫做量化因子)再四舍五入,保留整数;

2、如果数字太小,结果为0,则表示“丢掉了这部分信息”。

例如:

当量化因子为10时,原始频率值为120,结果为12;

量化因子为50时,原始频率值为8,结果为0,这部分信息就被丢掉了。

所以:

量化因子越大时,精度越低,图片越模糊,文件越小;

量化因子越小时,保留更多信息,清晰度更高,文件也更大。

第五步:编码(压缩体积)

把量化后的数据用霍夫曼编码、Run-Length 等方式再压一遍;

相当于把“12, 12, 12, 0, 0, 0”变成“(12×3), (0×3)”这样的压缩形式。

最后,实现图片的压缩。

为什么有时压缩体积很大但“看不出损失”?

因为人眼有很多局限:

1、对亮度敏感,对颜色不敏感,压缩算法可以丢掉很多色彩信息;

2、静态图片比动态图更难感知差异,静态图片可以进一步压缩;

3、忽略细节模糊区域,背景/单色区域可以大量压缩。

因此,在亮度变化不强烈、边缘不锐利的途中,即使压缩 70% 质量,看起来几乎一样。

在Mac中如何压缩图片?

在Mac应用中,可以使用「轻压图片」压缩JPG、JPEG和PNG等图片。

默认使用macOS原始压缩功能,还可选第三方开源工具 pngquant 对PNG图片进行高效压缩,压缩率最高可达 99%。

支持拖拽、点击选择或Command + V 等方式,将图片快速导入应用。所有导入的图片都会在本地立即压缩,压缩后可以单独或使用ZIP披露下载全部图片。

还可以根据需求调整压缩率、设置输出目录、启用/禁用 pngquant 等第三方压缩引擎。

轻压图片免费,无广告、承诺不将用户的图片上传到第三方服务器、不主动采集用户隐私数据数据。在未赞助状态下,应用限制每次最多导入 20 张图片,单张图片大小不超过 5MB。如轻压图片对您有帮助,欢迎通过应用内进行赞助支持,赞助后将解除上述限制。

轻压图片是一款为注重效率、隐私与简洁体验而生的图片压缩工具,适合开发者、设计师、内容创作者与所有希望减小图片体积的人群使用。

下载路径:在Mac App Store中输入「轻压图片」,即可免费下载、使用。