0
| 本文作者: 陳淑瑜 | 2026-06-01 15:07 | 專題:CVPR 計算機視覺與模式識別會議 |
來源:公眾號“AI上分搭子”
原文鏈接:https://mp.weixin.qq.com/s/26c4oCUgjQueMImEspWBow

In-context segmentation 想做的事情并不復(fù)雜。
給一張帶標注的參考圖,再去目標圖里把同一個概念分出來。
這個概念可以是一個物體。
也可以是一個部件。
甚至可以是某個特定實例。
難點在于,現(xiàn)在主流方法基本都卡在兩條路里。
一條路是 fine-tune foundation model,或者額外掛一個 decoder。
這樣做,in-domain 分數(shù)通常會比較高。
但一換數(shù)據(jù)域,或者一換語義粒度,泛化就容易掉。
另一條路是 training-free。
常見做法是讓 DINO 負責匹配,讓 SAM 負責出 mask。
這一套的泛化會穩(wěn)一些,但鏈路更重,也天然受制于 SAM 的 mask prior。
所以真正的問題其實是:
如果 backbone 本身已經(jīng)有足夠強的 dense self-supervised feature,分割能力能不能直接從表示里長出來?
這正是 INSID3 想回答的事。
它不想再加模塊。
也不想再做 task-specific training。
它想試試看:只靠一個 frozen self-supervised backbone,能不能把 ICS 真正做起來。

INSID3 的關(guān)鍵,不是“再設(shè)計一個更復(fù)雜的 segmentation head”。
它真正抓住的是 DINOv3 里的兩種能力。
第一,DINOv3 的 dense features 已經(jīng)有很強的局部結(jié)構(gòu)。
這意味著,同一物體或部件,本來就很容易在特征空間里聚成比較連貫的區(qū)域。
第二,它確實也能做跨圖語義匹配。
但這里混著一層明顯的 positional bias。
也就是:兩個圖里相同坐標附近的 patch,哪怕語義不對,也會更容易互相“看上”。
這篇工作的想法很干脆:
先把這層偏置從跨圖匹配里拿掉。
然后把“跨圖語義對得上”和“圖內(nèi)結(jié)構(gòu)也連得上”這兩件事放到一起看。
這樣一來,單 backbone 也能把 reference-guided segmentation 做出來。
Figure 1 傳遞的信息很直接:INSID3 不是在某個單一 benchmark 上刷高,而是在不同數(shù)據(jù)域、不同語義粒度下都能保持住。

整個方法可以壓成三步。
作者先用 DINOv3 特征在目標圖里做 agglomerative clustering。
目的不是直接出 mask。
而是先把圖像拆成一塊一塊語義上更連貫的區(qū)域。
這一步很重要。
因為它給后面的匹配提供了更穩(wěn)定的“候選單元”。
接著,用去偏之后的跨圖匹配去找 seed cluster。
你可以把它理解成:
在目標圖里,先找到和參考區(qū)域最對得上的那一小塊。
這里用的是 debiased feature space。
因為跨圖匹配最怕的,恰恰就是坐標偏置把不相關(guān)的區(qū)域也點亮。
只找到 seed 還不夠。
很多時候,seed 只會落在最顯眼的局部。
比如人的頭、長頸鹿的脖子,或者器官里最穩(wěn)定的那一小塊。
所以后面還得再做一步 aggregation。
INSID3 會把圖內(nèi)和 seed 在結(jié)構(gòu)上也貼得近的 cluster 一起并進來。
最后得到完整 mask。
整條線最關(guān)鍵的設(shè)計,其實就兩個:
也正因為這樣,它不再依賴 SAM 提供 mask prior,也不需要任何 task-specific supervision。
如果只留兩條公式,其實就夠了。
這條式子的意思很直接。
先估計一塊主要承載絕對位置偏置的子空間。
然后把特征投影到它的正交補里。
做完這步之后,跨圖匹配更看語義,不容易再被“同一坐標位置”誤導。
這里也很好理解。
一個 candidate cluster 只有在兩件事都成立時,才應(yīng)該被并進最終 mask:
INSID3 用乘法把這兩個條件綁在一起。
這一步其實就是整篇方法最核心的判斷。

Table 1 是整篇論文最硬的一張表。
因為它不是只看 one-shot semantic segmentation。
它把 semantic、part、personalized 三類任務(wù)一起放進來了。
這很關(guān)鍵。
因為 INSID3 的價值本來就不在某一個點。
它最強的地方,是整體 generalization。
先看平均分。
和最強的 training-free baseline GF-SAM 相比,INSID3 的平均 mIoU 從 47.6 拉到 55.1。
就算把 GF-SAM 升級成 DINOv3 版,再加上作者的 debias,平均也只有 48.8。
更重要的是,這不是靠更重的結(jié)構(gòu)換來的。
換句話說,它不只是更強,也更輕。
先抓幾組關(guān)鍵數(shù)字:
再往下看,會更清楚。
如果只盯 COCO-20i 這種更接近訓練分布的 benchmark,INSID3 并不是所有格子都第一。
這恰好說明,它的追求并不是單個 in-domain 峰值。
真正該看的,是它在不同域、不同粒度上的穩(wěn)定性。
比如:
這張表還有一個很值得記住的判斷。
像 SegIC 這種 fine-tuned 方法,在 COCO-20i 上能到 76.1。
看上去很強。
但一旦換到別的域,或者 finer granularity,掉得就很快。
INSID3 的強項正好相反。
它追的不是“最熟悉 benchmark 上的最高點”。
它追的是:
換域之后,還能不能站住。

消融部分最好的一點,是它沒有停在“完整模型最好”這種結(jié)論上。
作者真正拆開去看了兩件事:
Table 3 很直白。
如果不做 clustering,只是對 similarity map 直接閾值化,COCO-20i / PASCAL-Part 只有 44.2 / 35.4。
如果加了 clustering,但不做 aggregation,問題還是沒解決。
你還是得在 object-level 和 part-level 之間二選一。
直到把 cross-image similarity 和 intra-image self-similarity 真的合到一起,結(jié)果才到 57.6 / 50.5。
這說明什么?
INSID3 不是“先找一個最像的局部,再把它當完整 mask”。
真正起作用的,是后面的 aggregation。
只靠 seed cluster 不夠。
尤其在 part 和 object granularity 不一致的時候,更不夠。
還有一個補充點也值得看。
去偏這件事不是裝飾項。


正文和 Table 2、Fig. 7 都在說明這一點。
作者固定 debias rank 之后:
所以這里提出的兩個核心部分,其實都有效:
INSID3 真正往前推的,不只是一個新的 training-free segmentation trick。
更重要的是,它把一個原本很像默認共識的假設(shè),硬生生掰開了。
以前大家會默認:
INSID3 說明,事情不一定非得這樣。
如果 backbone 的 dense feature 足夠強,
再把跨圖匹配里的 positional bias 處理好,
單 backbone 也能把 in-context segmentation 做得很能打。
這不是一句輕飄飄的“training-free 也行”。
它更像是在提醒我們:
self-supervised dense representation 可能已經(jīng)比很多人以為的更接近分割本身。
代碼 / 項目頁:
https://visinf.github.io/INSID3
本專題其他文章