前几天帮人做电商主图,几袋咖啡豆拍在工作台上,背景乱七八糟,后面是纸箱、工具、别的货。对方要求"白底、边缘干净"。这活儿以前得开 PS 用钢笔一点点描,现在丢进去几秒钟就出来了。

但同一套流程,换个素材就未必好看:我拿它抠过一张人像,整体很干净,可放大看发际线,头发外圈浮着一层灰白色的雾。换到深色底上特别明显。

所以这篇既讲"换底色到底是怎么回事",也讲清楚什么图能一键搞定、什么图会翻车。

抠图在做什么

它做的不是"把背景擦掉",是给每个像素算一个透明度:主体是实心的,背景是全透明的,两者交界的地方是一层渐变。

这层渐变就是所谓的 alpha 边缘,也是后面所有问题的来源。你以为的"边"其实是一条从透明到实心的过渡带,宽度可能只有几个像素。

抠完输出的是透明背景的 PNG。它不是"白底图",是一张"没有底"的图。这个区别很重要,下一节就靠它。

换底色其实是垫一层色

很多人以为换底色是"把背景重新涂一遍"。不是。真正的做法是:拿那张透明 PNG,在它下面垫一层纯色。

同一张人像在白色、蓝色、红色三种底色下的效果,白底 #FFFFFF、蓝底 #438EDB、红底 #E64340
同一张抠好的图,只是换了垫在下面的颜色。所以"换底色"本身不花任何代价,抠一次可以随便换。

这里有个新手常踩的坑:不要在 JPG 上直接填色。JPG 不支持透明通道,你对着白底 JPG 去"换底色",边缘会留一圈洗不掉的白边。正确顺序是先抠成 PNG,再垫色。

两张不同素材的实测

我用同一套接口跑了两类素材,都是真实结果:

人像那张(正面证件照风格,深色头发压浅灰背景):整体抠得很干净,耳朵、脖子、衣领的边界都对了。

商品那张(三袋咖啡豆叠放在杂乱工作台上):这个更让我意外。三袋互相压着,不只是最前面那袋,被压住的两袋也完整保留下来了,遮挡处的前后关系处理得很准。

商品图抠图前后对比:左图是杂乱工作台背景上叠放的三袋咖啡豆,右图是抠图后垫白底、只保留商品的结果
左原图、右抠图后垫白底。这种"多物体叠放 + 杂乱背景"的画面,靠通用的对象识别容易漏掉被遮住的物体。

边缘放大,问题就出来了

上面两张整体看都不错。可把发际线放大 2 倍、换个底色,就露馅了:

同一处发际线在白色底和蓝色底上的对比:白底几乎看不出,蓝底上头发外圈有一层灰白晕影
同一处,同样放大 2 倍。白底上几乎看不出,蓝底上头发外圈那层灰白就很明显了。

这不是某一家的毛病。只要方案是"按 alpha 通道抠",边缘就一定有一层过渡像素,它本身是半透明的,垫什么色就会透出什么色。白底最宽容,因为过渡带的灰白本来就接近白色;换成蓝底、红底、深色背景,它就变成一圈脏边。

所以"抠得干不干净"这件事,在白色背景上验收是不准的。要换成深色或者对比强的底色再看一眼,问题才藏不住。

什么图好抠,什么图会翻车

素材预期
人像,背景干净、光线均匀好抠。发丝会有轻微灰边,缩到正常尺寸基本看不出
商品,纯色或简单背景好抠。多件叠放也能处理
人像,背景杂乱或与衣服同色容易把衣服一起算进背景,或者边缘缺一块
透明 / 半透明物体(玻璃杯、薄纱、烟雾)难。半透明本身就和"抠图"的逻辑冲突
毛发细密的宠物、长发飘散的人像大体会对,细节会糊。要求高就得上手动修
主体只占画面一小块、边缘又不清晰难判断哪里是主体,容易抠偏

比调参数更有用的是选对通道

这点是我自己踩坑之后才明白的。抠图不是只有一个按钮,不同通道认的东西不一样:

  • 人像通道:专门认人。证件照、头像、半身照走这个,发丝处理明显更好。
  • 商品通道:认"商品主体"。电商白底图、多件商品叠放走这个,比通用通道稳。
  • 通用通道:什么都能试。物体、logo、宠物这类没人形也没商品属性的,用它兜底。

同一张图换个通道,结果可能差很多。上面那张咖啡袋的图,走通用通道时被压住的两袋容易被漏掉,换商品通道就完整了。与其反复调参数,不如先确认素材属于哪一类。

一个验收小习惯

抠完别急着用。我的习惯是:先垫一个深一点的颜色看一眼,再换回目标底色。

因为白底会帮你藏住大部分边缘问题,深色底才是照妖镜。边缘有没有杂色、有没有缺块、头发是不是被削掉一圈,深色底下一目了然。看完再换成你真正要的白底或蓝底,也就几秒钟的事。

在哪用

「亦诺图档工具」小程序里的"抠图/换底色"就是上面这套流程:选通道、抠图、选底色导出。要做证件照尺寸的话,里面还有个"证件照排版",专门按规格裁。

亦诺图档工具微信小程序码,扫一扫即可打开
微信扫一扫打开,首页按类别找"抠图/换底色"。

最后提醒一句:抠图本质上是"算出来的",边缘的每一层过渡像素都是估计值。要求不高的场景(网页配图、朋友圈、商品主图)完全够用;但如果是印刷级物料、或者边缘本身有法律意义(比如印章、签名),还是让人来修更稳妥。