核心工作:对每一个像素做出的一个判断

AI 背景移除工具建立在一个分割模型之上 —— 一个专门训练来看一张图、并为每个像素预测「这个像素属于主体而非背景」的把握有多大的神经网络。这个预测以每个像素 0 到 255 的一个数字给出:0 表示「肯定是背景」,255 表示「肯定是主体」,中间的任何值都是真实的不确定性。这张灰度置信图叫做透明遮罩(alpha matte)。最终的透明图像就是直接由它构建的 —— 高置信度的主体像素保持完全不透明,高置信度的背景像素变得完全透明,中间的值变成部分透明,这正是让一缕头发或一道模糊的毛边看起来自然柔和、而不是锯齿状抠图线的原因。

模型是怎么学会做这个判断的

训练一个分割模型意味着给它看海量的示例图像,每一张都配有一个正确答案 —— 一张经过核实的遮罩,精确标明那张特定图像里哪些像素是主体、哪些是背景。经过足够多的例子,模型的内部参数会调整到能识别那些真正与「主体」和「背景」相关的视觉模式:边缘、纹理变化、形状连续性,以及更宏观的场景上下文,而不只是原始像素颜色。这就是一个训练良好的模型能对一张它从未见过的图像做出好判断的原因 —— 它依据的是从训练中所见的一切里学到的模式。

为什么这比色键或「移除这种颜色」工具更好

传统的色键或手动移除颜色的工具,做判断时恰好只用一条信息:这个像素的颜色和它被告知要针对的那个特定背景色有多接近。这在平坦、均匀的绿幕上没问题 —— 但一旦主体和背景有相同的颜色(白墙前的白衬衫、米色背景前的米色毛发),或者背景根本不是单一的纯色(一个真实拍摄的场景、渐变、纹理),它在结构上就会失败。AI 分割模型不局限于颜色 —— 它使用学到的形状和上下文,所以它能正确地把白衬衫和它背后的白墙区分开来,这是纯色键方法按定义就做不到的,无论怎么调参。

第一次 AI 处理之后会发生什么

实际上,分割模型的一次原始处理很少能靠自己产出一张完美的遮罩 —— 真实图像有模糊的边缘、低置信度的区域,以及真正难以分类的内容(具体见为什么在 GIF 和视频上会难得多)。一个生产级去背管线在那第一次 AI 处理之外实际做的大部分工作,是清理:用形状和连通性逻辑解决低置信度区域、平滑边缘,以及 —— 特别是对动画 —— 检查模型的判断在一帧到下一帧之间彼此一致,好让结果不闪烁。AI 分割模型做核心的分类;让它的原始输出变得可用,需要大量的工程。

和 AI 图像或视频生成不同的一项工作

这里值得说精确一点,因为在日常对话里两者都叫「AI」:图像或视频生成器根据提示发明新的像素内容(见AI 视频生成到底是怎么工作的)。而背景移除所依赖的分割模型什么也不发明 —— 它对已经存在的像素做分类。同属神经网络技术的大家族,但做的确实是不同的工作。

在你自己的图像、GIF 或视频上试试

相关:动画去背为什么这么难 · 什么是生成式 AI? · 透明背景为什么重要

常见问题

AI 背景移除到底是怎么工作的?

一个在海量示例图像上训练过的神经网络(每张图都配有一个经过核实的正确答案,标明这张图里究竟哪些像素是主体、哪些是背景),会看一张新图,并为每个像素预测一个从 0(肯定是背景)到 255(肯定是主体)的置信分数 —— 这就是透明遮罩(alpha matte)。高于置信阈值的像素保持不透明,低于的变透明,中间的得到部分透明,这正是让头发或毛发这样的柔和边缘看起来自然、而不是锯齿状的原因。

这和绿幕或颜色抠图工具有什么不同?

颜色抠图工具(色键,或手动的「移除这种颜色」滤镜)做判断时只用一条信息:这个像素的颜色和我让它移除的背景色有多接近。这在均匀的绿幕上没问题,但一旦主体和背景有相同的颜色,或者背景根本就不均匀,它就完全失效。AI 分割是用学到的视觉模式来判断的 —— 边缘、形状、纹理、上下文 —— 所以它能正确地把白衬衫和白墙分开,而纯颜色抠图工具在结构上做不到这一点。

什么是透明遮罩(alpha matte)?

它是分割模型在做任何裁切之前产生的灰度置信图 —— 每个像素一个值,白色表示完全不透明/主体,黑色表示完全透明/背景,中间的灰值代表部分透明。最终图像真正的透明度(它的透明通道)就是直接由这张遮罩构建的。一张更干净、更有把握的遮罩,会产出一个更干净的最终抠图。

这和生成 AI 视频和图像的那种 AI 是同一种吗?

相关,但做的是不同的工作。生成模型(AI 视频和图像工具背后的)根据提示创造新的像素内容。分割模型(背景移除背后的)把已有的像素分类为主体还是背景 —— 它们不发明任何新东西。两者都是在大型数据集上训练的神经网络,但一个的输出是新内容,另一个的输出是关于已经存在的内容的一个判断。