摘要
最近的 Segment Anything Model(SAM)在擴展分割模型規模方面取得了重大突破,具備強大的零樣本能力和靈活的提示機制。盡管 SAM 在訓練時使用了 11 億個掩碼,其掩碼預測質量在許多情況下仍不理想,尤其是對于結構復雜的目標。我們提出了 HQ-SAM,使 SAM 能夠精確地分割任意目標,同時保留其原有的可提示設計、高效性和零樣本泛化能力。我們的設計充分復用并保留了 SAM 預訓練的模型權重,僅引入極少量的附加參數和計算。我們設計了一個可學習的“高質量輸出令牌”(High-Quality Output Token),將其注入 SAM 的掩碼解碼器,用于預測高質量掩碼。為了提升掩碼細節,我們不僅在解碼器特征上使用該令牌,還將其與 ViT 編碼器的早期和最終特征進行融合。為訓練新增的可學習參數,我們收集并整合了來自多個來源的 44K 張精細掩碼數據集。HQ-SAM 僅在這 44K 張掩碼數據上訓練,使用 8 塊 GPU 僅耗時 4 小時。我們在 10 個多樣化的分割數據集上評估了 HQ-SAM 的性能,其中 8 個數據集采用零樣本轉移協議。實驗證明,HQ-SAM 在保持零樣本能力的同時,顯著提升了掩碼質量。代碼和預訓練模型可在 https://github.com/SysCV/SAM-HQ 獲取。
為了讓 HQ?Output Token 能夠生成更精細的掩碼邊緣與細節,我們在掩碼解碼器的特征之上,又額外引入了 ViT 編碼器的“早期特征”和“后期特征”兩種信息:
早期特征(High?Resolution 細節信息)
ViT 在最開始幾層處理的 patch 嵌入保留了較高的空間分辨率(相當于 CNN 中淺層的 feature map),能夠捕捉到物體邊緣、紋理、細線等局部細節。
如果只用解碼器輸出的特征,往往因多次下采樣/Transformer 自注意力而丟失這些精細結構。
因此,我們取自 ViT 編碼器前幾層的高分辨率 feature map,經一次小型映射(如 1×1 卷積或線性層)降維后,與 HQ?Output Token 一起送入特征融合模塊。
后期特征(全局語義信息)
ViT 編碼器最后幾層的輸出具有強大的語義表達能力,能全局感知“這塊區域是哪個物體,屬于哪個類別”,但空間分辨率相對較低。
將這些深層特征融入,可以幫助 HQ?Output Token 準確判斷哪些細節應當被保留、哪些應被忽略,從而避免誤分割噪聲或背景紋理。
特征融合機制
我們設計了一個輕量級的 “Fusion Block”:首先對三組特征(早期、解碼器中期、后期)分別做投影到相同維度,然后在 token 維度上進行拼接或加權相加,最后通過一層小型 MLP(或卷積)融合出一組既有高分辨率細節又有全局語義的特征表示。
HQ?Output Token 在 mask 解碼器中,就基于這組融合特征進行自注意力操作和 MLP 預測,從而在原來粗糙的掩碼邊界基礎上,補上細線、縫隙、曲面等復雜結構。
通過以上“多尺度、跨階段”的特征融合,HQ?SAM 能在保持 SAM 原有 promptable 設計與零樣本泛化能力的同時,顯著改善對細小結構和邊緣細節的分割質量。
1 引言
準確分割多樣化目標對于圖像/視頻編輯、機器人感知和 AR/VR 等場景理解應用至關重要。SAM [21] 作為一款基于海量掩碼標簽訓練的通用圖像分割基礎模型,以點、邊框或粗略掩碼作為輸入提示,能夠在多種場景下分割多樣化目標、部件和視覺結構,其零樣本分割能力正引發范式轉變。
盡管 SAM 在多項任務中表現優異,其分割結果在許多場景下仍不盡如人意,主要存在兩大問題:
掩碼邊界粗糙,甚至遺漏細小結構(如圖 1 中的風箏線);
分割錯誤或遮斷掩碼,在挑戰性場景下出現較大偏差。
這些問題嚴重限制了基礎分割模型在自動標注和圖像/視頻編輯等應用中的實用性,因為此類任務對掩碼的高精度有嚴格需求。
我們提出 HQ-SAM,在不損害 SAM 零樣本性能和提示靈活性的前提下,實現高質量分割。直接微調 SAM 解碼器或新增完整解碼器都會顯著削弱其零樣本泛化能力;為此,我們設計了一種與原 SAM 緊密集成的輕量化架構。首先,新增一個可學習的 HQ-輸出令牌(HQ-Output Token),與原提示令牌一并輸入到 SAM 的掩碼解碼器;該令牌及其附屬的 MLP 層專門用于生成高質量掩碼。其次,該令牌不僅作用于解碼器特征,還通過特征融合模塊,與 ViT 編碼器的初始和末端特征相結合,以兼顧全局語義和局部細節。在訓練階段,我們凍結所有 SAM 預訓練參數,僅更新 HQ-輸出令牌、三層 MLP 以及小規模特征融合模塊。
訓練優質分割模型需要多樣化且精確的掩碼標注。SAM 原訓練集 SA-1B 包含 1100 萬張圖像與 11 億個自動生成的掩碼,但數據規模巨大且標注質量不足以滿足我們對高精度掩碼的需求。因此,我們構建了 HQSeg?44K 數據集,匯集了 44K 張極致精細的掩碼標注,覆蓋 1000 多個多樣化語義類別,來源于六個現有高質量掩碼數據集 [