图片加工画质到底掉在哪一步?我拿 214 张商品图从头捋了一遍

关键词:图片加工,图片画质损失,JPEG压缩,批量修图,DPI

摘要:从一次真实的电商商品图返工出发,拆解图片加工链条里最容易被忽略的四个坑:DPI 的误会、4:2:0 色度抽样与多次重编码、缩放算法的正反用法、USM 锐化的三个参数,并给出一套可以直接抄的批量处理流程。

上个月帮一个开零食淘宝店的朋友收拾详情页,她把 214 张商品图塞进一个网盘链接丢过来,附一句“都糊了,帮我重新加工一遍”。

图片

我下载完打开一看,文件名从 IMG_2031 排到 IMG_3247,尺寸清一色 3024×4032,单张 1.8MB 到 4.2MB。这哪是糊,原图好得很。

问题出在她自己都说不清的那条链子上:iPhone 拍 HEIC 原片 → 微信直接发给兼职美工(没勾原图)→ 美工存成 JPEG → 丢进某个网站在线改尺寸到 800×800 → 微信发回来 → 上传后台 → 平台再压一次。前后六道手,每一道都在原图上咬一口。

这段经历让我重新想了一遍“图片加工”这件事。

先把一个最常见的误会拆掉:72dpi 改成 300dpi

这大概是图片加工里被问得最多的问题,没有之一。答案是:不会变清楚,一个像素也不会多。

图片

Photoshop 里那个「图像大小」面板,分辨率那一栏是写给打印机看的标签,不是像素的生产线。你只要不勾「重新采样」,把 72 改成 300,确定,画布尺寸从 30 厘米缩到了 7 厘米左右,像素总数纹丝不动,文件体积一个字节都不变。你在屏幕上看到的清晰度也不会变——屏幕只认像素总数,不认 dpi。

反过来,如果你勾了「重新采样」再把 72 改成 300,Photoshop 会老老实实给你插值造出一堆原来不存在的像素,文件是变大了,但那叫吹气球,不叫变清晰。3072×2048 吹成 12800×8533,看着热闹,放大到 100% 全是糊的。

真要用 300dpi 送印,唯一正确的做法是回源头把素材拍够,或者后期用真正的超分算法(Real-ESRGAN、Topaz Gigapixel 这类,PS 里叫「保留细节 2.0」)去补,而不是在 dpi 那个框里改数字。

真正吃掉画质的,是色度抽样和反复重编码

JPEG 压缩不是把整张图一视同仁地压,它先把图像转成亮度(Y)和两个色度通道,然后分开处理。市面上绝大多数软件,包括 Photoshop 的「存储为」和大部分在线工具,默认开的是 4:2:0 色度抽样。

这句话翻译成人话:色彩信息的横竖分辨率各被砍掉一半。人眼对亮度敏感、对色度迟钝,所以日常风景照完全看不出来。但红底白字、包装上的小字、蓝色背景上的细线条,最先崩。你放大看边缘会出现一圈圈脏脏的颜色块,业内叫“蚊状噪声”,就是这么来的。

图片

更要命的是多次重编码。同一张有细小文字的浅灰底图,我用 quality 90 存了五次:前两次肉眼无感,第三次开始字边缘起毛,第五次已经能看到明显的色块游移。所以我现在给自己定了一条死规矩——原始素材单独放一个文件夹,标记只读,所有加工都在副本上做,成品只导出一次。中间过程文件一律用 PNG 或 TIFF,不进 JPEG。

顺便说一句,那些号称“在线无损压缩”的工具,对 PNG 做的事其实是有损的:把 24 位真彩量化成 256 色的调色板,照片上看不出来,但纯色渐变上会拉出一圈圈色带。TinyPNG 这类工具确实有用,但用之前先确认你的图受不受得了。

缩放算法:缩小和放大用的根本不是一套东西

Photoshop 的「图像大小」里有一排重定图像素的方法。Adobe 官方给的用法其实很明确:缩小用「两次立方(较锐利)」,放大用「两次立方(较平滑)」。很多人反着用,结果缩小的图边缘发虚,放大的图浑身白边。

我手上这批商品图是从 3024×4032 缩到 800×800,用的就是「两次立方(较锐利)」,缩小比例约 1:3.8。这个比例下只要原图够干净,缩出来的锐度是够用的,不需要额外锐化。

图片

如果非要放大,别用「两次立方」硬撑。PS CC 之后的「保留细节 2.0」在放大 2 倍以内效果还行,参数一般给减少杂色 30%-50%、锐化 20%-40%。超过 3 倍就别挣扎了,重新拍。我在一个做古董瓷器的客户那儿试过把 1200 万像素的老照片放大到海报尺寸,出来的东西能看,但釉面的开片纹理全部糊成一片奶油,行家一眼就看出是假的。

锐化三个滑块,90% 的人在乱拉

USM 锐化(滤镜 > 锐化 > USM 锐化)只有三个参数,但它可能是图片加工里被误解最深的工具。

  • 数量:控制边缘对比度增强的强度。屏幕上用 80%-120% 就够了,印刷件可以到 150%。
  • 半径:控制影响边缘的宽度。这个参数最容易拉错。屏幕用图 0.5-1.0 像素,300dpi 印刷用 1.0-2.0 像素。拉到 5 以上,你得到的不是锐,是白边和黑边,业内叫光晕(halo)。
  • 阈值:控制多小的差异才被当成边缘。给 0 就是全图都锐,包括噪点和皮肤纹理;给 3-5,能把大部分噪点排除在外,人脸照片尤其要用这个。

我自己的常用组合是:人像 90% / 0.8 / 4,商品静物 120% / 1.0 / 3,带文字截图 60% / 0.5 / 0。这不是标准答案,是我踩了两年坑之后留在动作面板里的三个预设。

图片

还有个反常识的地方:缩图之后再锐化,比锐化之后再缩图效果好得多。因为锐化产生的是高频信息,缩放会把它直接抹掉,只留下光晕。

色彩空间:sRGB 不是落后,是保险

Adobe RGB 的色域确实比 sRGB 大,能装下更多青绿色。但代价是,如果你按 Adobe RGB 导出,然后传到网页或者微信里,浏览器默认按 sRGB 解释,颜色就偏了,往往偏灰偏淡。

我做过一次对比:同一张带大面积青绿色背景的图,分别导成 sRGB 和 Adobe RGB 两份,上传到同一个电商后台,手机端打开,Adobe RGB 那份的绿色明显发闷,像蒙了层灰。这不是平台压坏了,是色彩空间没被正确识别。

所以我的处理原则很简单:只要成品的最终归宿是屏幕(网页、App、电商后台、朋友圈),一律 sRGB IEC61966-2.1,导出时勾上「转换为 sRGB」。只有确定要送印,才用 Adobe RGB 或 CMYK,而且印刷件按 300ppi、加网线数 175lpi 去准备,比在屏幕上纠结色彩空间有用得多。

另外,如果你有校色仪,先把自己的显示器校到 Delta E 小于 2 再说。屏幕本身偏色的时候,所有关于颜色的讨论都没有意义。

图片

我现在跑的批量加工流程

回到那 214 张商品图。最后我是这么处理的,你可以直接抄:

  1. 原始 HEIC/JPEG 全量备份到一个叫 00-raw 的文件夹,设为只读。
  2. 用 Lightroom 或 PS 的 Camera Raw 批量做基础调整(曝光、白平衡),这些是无损的,存成 xmp 参数走人。
  3. 导出时统一尺寸长边 1600px,格式 JPEG,质量 85,勾选转换为 sRGB,勾掉 EXIF(平台会自己重写)。
  4. 需要白底方图的,单独跑一次脚本批量裁切,留出 8% 的边距,避免平台自动裁切时切到商品。
  5. 需要小尺寸缩略图的,从第 3 步的 1600px 成品再缩,不要从原图重新缩一次——两次路径不同,出来的锐度不一样。

整套下来 214 张花了大概四十分钟,最后上传后台的成品平均 240KB 一张,比她那批“加工过的”还小,但清晰度完全是两回事。

我这几年最大的体会是:图片加工这个动作,做得越少越好。真正专业的加工,是在必要的地方做一次正确的处理,而不是每一环都顺手优化一下。每多一道手,你就多一次不可逆的信息损失。大部分看起来很糊的图,不是缺加工,是加得太多了。