背景去除的核心原理

從簡單的綠幕演算法,到 U²-Net 深度神經網路。
帶你深入像素世界,看懂計算機視覺的「讀心術」。

點擊「一鍵去背」時,伺服器上的 GPU 正在進行數十億次浮點運算。本文將帶你像演算法工程師一樣,拆解從 像素計算深度學習 的完整技術堆疊。

階段一:色鍵技術 (Chroma Key)

傳統的「綠幕」原理:基於顏色差異的簡單數學判定。

核心演算法

IF (Green > Red + Tol AND Green > Blue + Tol) THEN Alpha = 0 ELSE Alpha = 1

像素探針

移動滑鼠到畫面上
Canvas 即時渲染

階段二:深度學習模型 (U²-Net)

現代 AI 如何通過「嵌套 U 型結構」理解複雜的語義和細節。

U²-Net 架構示意圖
輸入圖像
Encoder (編碼)
Decoder (解碼)
RSU-1
RSU-2
RSU-3
RSU-1
RSU-2
RSU-3
Alpha Mask
RSU塊 (嵌套U結構)
上採樣融合

語義分割 (Semantic Segmentation)

不同於綠幕,AI 並不關心具體的顏色值。它通過 卷積神經網路 (CNN) 對每個像素進行分類:「這是人臉」 vs 「這是樹葉」。即使顏色相近,也能根據形狀、紋理和上下文區分它們。

訓練數據

模型在 COCO, DUTS, ADE20K 等包含數萬張標註圖片的數據集上訓練。它「看」過成千上萬種光照條件下的人像,具有極強泛化能力。

為什麼是 U²-Net?

普通網路越深越容易丟失細節。U²-Net 採用嵌套 U 型結構,既能捕捉全局語義,又能保留局部細節(如髮絲)。這是 remove.bg 等工具背後的核心流派。

階段三:Alpha Matting 與未知區域

對於半透明邊緣(如髮絲),AI 需要解一個複雜的數學方程。

語義分割生成的 Mask 通常是非黑即白的。對於實心物體沒問題,但對於頭髮、煙霧、婚紗等半透明物體,我們需要 Alpha 通道(0.0 - 1.0 的灰度)。

核心概念:Trimap (三分圖)

前景 (Foreground): 絕對保留 (Alpha=1)
背景 (Background): 絕對移除 (Alpha=0)
未知區域 (Unknown): 需要解算 Alpha

模型僅在「未知區域」的像素上應用高成本的 Matting 演算法,通過周圍像素的顏色相關性,推算出每個像素的前景佔比。

最終 Alpha Matte
二值遮罩 (0/1)
拖動對比

核心 AI 模型

U²-Net

SOTA 顯著性檢測,remove.bg 核心變體

高精度 人像
MO
MODNet

專為即時人像 Matting 設計,無需 Trimap

即時 視訊會議
De
DeepLabV3+

Google 開發的通用語義分割模型

通用 穩定

工業界應用流程

Step 1: 粗略分割 (Segmentation)

輸入原圖,通過 CNN 生成低解析度遮罩 (Mask)。確定大概的人體輪廓。

Step 2: 邊緣精修 (Refinement)

識別「未知區域」(如髮絲邊緣),生成 Trimap。

Step 3: Alpha Matting

解算透明度,並在合成時進行色彩溢出修正 (De-spill)。