搜尋意圖: 如果你在找「通用分割模型 是什麼」或「通用分割模型 和相近概念差在哪」,先看這頁的短定義、完整說明與延伸比較。
TL;DR: Meta提出的大規模基礎模型,能對任意圖像進行實例分割,採用提示工程實現靈活的互動式分割。
實用情境: 適合用在閱讀 AI 文章、產品文件或和同事討論時,先用一頁快速對齊概念。
下一步: 先讀完定義,再往下看延伸比較與對應工具,把概念轉成實際應用。
Meta提出的大規模基礎模型,能對任意圖像進行實例分割,採用提示工程實現靈活的互動式分割。
核心概念
Segment Anything Model的核心創新在於其通用性和交互性。傳統的分割模型針對特定數據集或任務進行訓練,泛化能力有限。SAM則在大規模多樣化資料集(約11M圖像,1.1B遮罩)上訓練,學習通用的分割知識,能對任意新圖像進行分割。
SAM採用提示工程(Prompt Engineering)的思想。用戶可以通過多種提示方式(如點擊物體、畫邊界框、輸入文本描述)指導模型進行分割。模型設計為快速響應這些提示,實現實時互動。這與傳統的機器學習範式不同,傳統範式需要預先定義任務和訓練模型,而SAM是訓練一次,通過提示適應不同任務。
SAM的架構包含三個主要組件:圖像編碼器(高效處理高分辨率圖像)、提示編碼器(處理多種形式的提示)和輕量級的解碼器(快速生成分割遮罩)。這樣的設計使得圖像編碼可以進行一次並緩存,後續提示可以快速處理。
運作原理
SAM的運作流程如下:
首先是圖像編碼。輸入圖像被輸入到一個基於Vision Transformer的圖像編碼器(通常是ViT-H,具有16×16的補丁大小)。編碼器輸出高分辨率的特徵圖(1024×1024×768),捕捉圖像的豐富語義和空間信息。為了在推理時高效,這個編碼可以預先計算並緩存。
接著是提示編碼。SAM支持多種提示形式:點(前景點或背景點)、邊界框、粗略遮罩和文本(後續版本支持)。不同提示形式有各自的編碼器。例如,點提示被編碼為嵌入向量,邊界框被編碼為兩個點的嵌入,遮罩被輸入到一個小型卷積網絡。如果沒有提示,使用一個默認的學習嵌入表示。
然後進行特徵融合和解碼。提示嵌入與圖像編碼的特徵結合(通常通過自注意力融合)。然後通過一個輕量級解碼器(包含Transformer層和上採樣操作)生成分割遮罩。解碼器輸出多個可能的遮罩以及對應的置信度分數,允許模型表達分割的不確定性。
最後是遮罩後處理。SAM通常輸出多個遮罩候選和置信度。用戶可以選擇置信度最高的遮罩,或互動選擇。對於邊界精度要求高的應用,可以使用SAM輸出的低分辨率遮罩作為初始化,應用反向傳播優化遮罩邊界。
多輪互動:SAM支持逐步精煉分割。用戶可以添加額外的點(「還要包含這個區域」或「排除這個區域」),模型根據累積的提示生成改進的遮罰。這種互動過程模擬了人類標註者的工作流。
SAM的訓練目標是二元分割損失(交叉熵損失和Dice損失)以及輔助的損失(如置信度分數的監督)。訓練資料包含多樣化的圖像和對應的多個遮罩標籤(同一物體可能有多個合理的分割)。
實際應用
Segment Anything Model在多個領域創造了新的應用可能。
在互動式分割中,SAM使用戶只需點擊或畫框就能精確選取物體,大幅加速標註工作。在內容編輯軟件中,SAM可被整合為快速選取工具。
在自動資料標註中,SAM可用於自動為大量未標註圖像生成分割遮罰初始化,然後由人工審核和修正。這大幅降低了標註成本。Meta發布的SA-1B資料集(10億個分割遮罰)就是用SAM半自動標註的。
在遠程感應和醫學影像分析中,SAM已被應用於衛星影像分割、醫學掃描的器官分割等。其零樣本性質使其能快速適應新的影像類型。
在物體追蹤中,SAM與追蹤模型結合,用於視頻中的物體分割追蹤。
在3D重建中,SAM生成的2D分割被用於指導3D物體重建。
在機器人應用中,SAM幫助機器人視覺系統識別和分割場景中的物體,支持機械臂操作和抓取。
SAM的輕量級版本(MobileSAM)也被開發用於邊緣設備部署。
常見誤區
誤區一:SAM可以在任何圖像上完美分割。實際上,SAM的分割品質取決於提示質量和圖像特性。複雜場景、細小物體、遮擋物體等情況下,SAM可能失敗。它是一個強大的工具,但不是魔法。
誤區二:SAM無需微調就能用於特定領域。雖然SAM具有零樣本能力,但在特定領域(如醫學影像)的分割精度可能不如特定領域訓練的模型。微調或在領域資料上進行少樣本學習仍有價值。
誤區三:SAM的多遮罰輸出都同等有效。實際上,SAM為每個遮罰輸出置信度分數,反映模型對該遮罵的確信度。應優先選擇高置信度遮罵。
誤區四:提示越多越好。實際上,許多情況下單個點或邊界框就足以正確分割。過多提示可能引入噪聲或相互衝突,反而降低性能。
與相關技術的比較
SAM vs 傳統分割模型:傳統模型針對特定任務訓練,泛化差;SAM通用且零樣本。傳統模型可能在特定領域精度更高,SAM的優勢是靈活性和快速適應。
SAM vs DETR檢測:DETR進行邊界框檢測和分類,SAM進行像素級分割。兩者可結合使用,DETR檢測物體,SAM分割其邊界。
SAM vs 實例分割模型:Mask R-CNN等模型在訓練資料集上表現優異,但泛化能力弱;SAM泛化能力強,精度可能略低。SAM支持互動和多提示,實例分割模型不支持。
SAM vs 全景分割:全景分割同時進行語義分割和實例分割,SAM則主要關注實例分割。全景分割預定義類別,SAM無類別限制。
SAM vs 基礎模型:SAM是計算機視覺領域的基礎模型,類似BERT/GPT在NLP中的角色。其他視覺基礎模型(如CLIP、MAE)關注表示學習,SAM則專注分割任務。
常見問題
SAM如何支持多種提示形式,且不同提示的編碼方式有何區別?
SAM設計了針對不同提示形式的編碼器。點提示(前景點或背景點)被編碼為特定的嵌入向量,其中前景點和背景點有不同的嵌入。邊界框被編碼為其對角的兩個點。粗略遮罰(由用戶畫的低分辨率遮罵)被輸入到一個小型卷積網絡,生成特徵表示。沒有提示時,使用預設的學習向量。所有提示編碼最終被加到圖像編碼的特徵上,供解碼器使用。這樣的設計使得SAM能靈活處理各種提示方式,用戶可根據具體情景選擇最方便的提示方式。多個提示可以累積,逐步精煉分割結果。
為什麼SAM可以一次編碼圖像然後快速處理不同提示?
SAM的架構將計算分為兩部分:重的圖像編碼和輕的提示編碼與解碼。圖像編碼器(Vision Transformer)需要處理整個圖像,計算複雜。但這個編碼可以一次性進行,然後結果被緩存在GPU內存中。後續處理不同提示時,只需進行輕量級的提示編碼(簡單的嵌入查詢或小網絡)和解碼(Transformer層和上採樣),計算量遠小於重新編碼圖像。這使得互動式分割可以實時進行,用戶點擊一點後毫秒級返回結果,實現流暢的互動體驗。這樣的設計理念與大型語言模型的編碼-解碼分離類似。
SAM輸出多個遮罵時,應該如何選擇?
SAM輸出多個遮罵候選以及對應的置信度分數(通常為0-1之間的浮點數)。置信度分數反映了模型對該遮罵正確性的確信度,基於多層特徵和訓練目標。一般策略是選擇置信度最高的遮罵。但在某些情況下,用戶可根據視覺檢查手動選擇,或根據應用需求(如更保守地包含物體邊界)選擇其他遮罵。多遮罰輸出也支持後續的互動精煉,例如用戶如果對某個遮罵不滿意,可以添加額外的提示進一步改進。SAM的設計鼓勵這種互動迭代過程,而不期望一次完美分割。