開源SOLOv2,讓動態實例分割更快更強更精準


作者

開源SOLOv2,讓動態實例分割更快更強更精準

介紹

作者建立一個性能強大的簡單,通過動態學習對象分割器的蒙版頭,使蒙版頭以位置為條件,進一步提升性能。具體來說,將遮罩分支解耦為遮罩內核分支和遮罩特徵分支,分別負責學習卷積內核和卷積特徵。利用矩陣NMS(非最大抑制)以顯著減少由於掩碼的NMS造成的推理時間開銷。Matrix NMS可以一次完成具有並行矩陣運算的NMS,併產生更好的結果。


作者演示了一個簡單的直接實例分割系統,該系統在速度和準確性上均優於一些最新方法。輕量級的SOLOv2以31.3 FPS的速度執行,併產生37.1%的AP。此外最新的物體檢測結果和全景分割顯示出潛力,可以作為實例分割以外的許多實例級識別任務的新的強大基準。


開源SOLOv2,讓動態實例分割更快更強更精準

圖1 – COCO test-dev上的速度精度折衷方案,用於一些最近的實例分割方法。擬議的SOLOv2優於一系列最新算法。在Tesla V100-GPU機器上測試了所有方法的推理時間


相關工作


  • 實例細分

實例分割是一項艱鉅的任務,因為它需要同時進行實例級和像素級的預測。

現有方法可以概括為三類:

自上而下的方法從對象檢測的角度解決了該問題,即先檢測然後在框中分割對象。在無錨對象檢測器FCOS 上建立了他們的方法,顯示了有希望的性能。

自下而上的方法將任務視為“標籤-然後-群集”問題,例如,學習每個像素的嵌入,然後將它們聚類成組。

最新的直接方法旨在直接處理實例分割,而不依賴於盒子檢測或嵌入學習.


作者繼承了SOLO的核心設計,並進一步探索了直接實例分割解決方案。作者方法與最新的YOLACT 進行比較。YOLACT學習針對每個錨框將一組標準化為[-1,1]的係數。在推理過程中,它首先執行邊界框檢測,然後使用預測的框來裁剪組裝好的蒙版。BlendMask改善了YOLACT,在準確性和速度之間實現了更好的平衡。作者的方法是從SOLO演變為通過將原始的掩碼預測直接解耦到內核學習和特徵學習來實現的。不需要錨框。無需標準化。不需要邊界框檢測。我們直接將輸入圖像映射到所需的對象類和對象蒙版。訓練和推論都簡單得多。因此該框架要簡單得多,但性能卻要好得多(在可比的速度下AP可以提高6%);而我們的最佳模型則達到了41.7 AP,而YOLACT的最佳值為31.2%。


  • 動態卷積

在傳統的卷積層中,學習的卷積核保持固定並獨立於輸入,例如,每個圖像和圖像每個位置的權重都相同。以前的一些作品探討了為傳統卷積帶來更多靈活性的想法。空間變換網絡預測全局參數變換以扭曲特徵圖,從而使網絡能夠自適應地變換以輸入為條件的特徵圖。 用動態濾波器來主動預測卷積濾波器的參數。它以特定於樣本的方式將動態生成的濾鏡應用於圖像。可變形卷積網絡通過預測每個圖像位置的偏移量來動態地學習採樣位置。作者將動態方案引入實例分割,並啟用按位置學習實例分割器。


  • 非最大抑制

NMS在許多計算機視覺任務中被廣泛採用,併成為對象檢測系統的重要組成部分。提出了一些最近的工作來改進傳統的NMS。它們可以分為兩組,以提高準確性或加快速度。代替根據閾值將硬去除應用於重複的預測,Soft-NMS 根據鄰居與較高得分的預測的重疊程度來降低其置信度得分。與傳統的NMS相比,檢測精度有所提高,但是由於順序操作,推理速度很慢。自適應NMS 將動態抑制閾值應用於每個實例,該閾值是針對人群中的行人檢測量身定製的。為了加快推理速度,提出快速NMS使得可以並行決定要保留的預測或丟棄的預測。但它以性能下降為代價加快了速度。與以前的方法不同,作者的Matrix NMS同時解決了硬去除和順序操作的問題。結果提出的Matrix NMS在簡單的PyTorch實施中能夠在不到1 ms的時間內處理500個掩模,這與網絡評估時相比可以忽略不計,並且比Fast NMS的效率高出0.4%。


SOLOv1


SOLOv1框架的核心思想是按位置劃分對象。輸入圖像在概念上分為S×S網格。如果對象的中心落入網格單元,則該網格單元負責預測語義類別以及分配每個像素位置類別。有兩個分支:類別分支和掩碼分支。類別分支預測語義類別,而遮罩分支則對對象實例進行分段。


開源SOLOv2,讓動態實例分割更快更強更精準

圖2 – SOLOv1架構

SOLOv2

下面SOLOv2設計的詳細信息。

動態實例細分

作者從SOLOv1繼承了大多數設置,例如網格單元,多級預測,CoordConv 和損失函數。在此基礎上,作者介紹了一種動態方案,在該方案中,將原始的遮罩分支解耦為遮罩內核分支和遮罩特徵分支,分別預測卷積內核和卷積特徵。我們在圖3中顯示了與SOLOv1的比較。

開源SOLOv2,讓動態實例分割更快更強更精準

圖3 –動態SOLOv2與SOLOv1的比較

  • 掩碼內核分支

掩碼內核分支與語義類別分支一起位於預測頭中。頭部在由FPN 生成的特徵圖的金字塔上工作。頭部中的兩個分支都包含4個conv,用於特徵提取,最後一個conv用於預測。頭部的權重在不同的功能圖級別之間共享。我們通過給第一卷積訪問歸一化的座標,即連接兩個附加的輸入通道,將空間功能添加到內核分支。

  • 遮罩功能分支

遮罩特徵分支需要預測實例感知特徵圖F∈RH×W×E,其中E是遮罩特徵的維數。F將由mask內核分支的輸出卷積。如果使用了所有預測權重,即S2分類器,則最終卷積後的輸出實例蒙版將為H×W×S2,這與SOLOv1的輸出空間相同。


由於遮罩特徵和遮罩內核是分離的並分別進行預測,因此有兩種方法可以構建遮罩特徵分支。作者將其與內核分支一起放入頭部。這意味著我們可以預測每個FPN級別的遮罩功能。或者,為所有FPN級別預測統一的蒙版特徵表示。

開源SOLOv2,讓動態實例分割更快更強更精準

圖4 –統一mask功能分支

最後採用後者來提高效率和效率。為了學習統一的高分辨率MASK特徵表示,我們應用了基於語義分割啟發的特徵金字塔融合。經過3×3轉換,組範數,ReLU和2×雙線性上採樣的重複階段,FPN特徵P2至P5為合併為1/4比例的單個輸出。逐元素求和後的最後一層包括1×1卷積,組範數和ReLU。詳細信息如圖3所示。應該注意的是,在進行卷積和雙線性上採樣之前,我們將歸一化的像素座標輸入到最深的FPN級別(以1/32比例)。提供的準確位置信息對於啟用位置敏感度和預測實例感知功能非常重要。


  • 形成實例遮罩

對於(i,j)處的每個網格單元,我們首先獲得掩碼kernelGi,j ,:∈RD。然後將Gi,j ,:與F卷積得到實例蒙版。總共,每個預測級別最多會有S2個掩碼。最後,我們使用提出的Matrix NMS來獲得最終實例分割結果。


  • 學習與推理

標籤分配和丟失功能與SOLOv1相同。訓練損失函數定義如下:

開源SOLOv2,讓動態實例分割更快更強更精準

Matrix NMS


它受到NMS的啟發,NMS每次選擇置信度最高的候選掩模(或盒),以降低與之重疊的候選掩模(或盒)的置信度。這個過程是迭代的,連續的,不能並行化。


作者的做法正好相反,因為這是為了降低每個面具的可信度,所以試圖按照一定的規則逐一降低所有面具的可信度。候選掩模j的置信度降低,這與兩個因素有關:


1) 與之重疊的掩模i具有較高的掩模i,迫使掩模j具有較低的置信度;


2) 還有一種可能性,即蒙版i本身將被其他候選蒙版k降低,蒙版i的可能性將被降低。


當然,你也可以說,面具k的信心可能會被其他面具所強迫衰退。如果考慮完整的鏈,這個過程是複雜的。作者利用上述過程作為衰減因子的近似,並沒有追求完美的數學表達式。在實際計算中,只考慮了由重疊度最大、置信度較高的掩模引起的衰減。


mask i 置信度被降低的概率:

開源SOLOv2,讓動態實例分割更快更強更精準

mask j 置信度衰減因子:

開源SOLOv2,讓動態實例分割更快更強更精準

給出了Matrix NMS的Python代碼:


開源SOLOv2,讓動態實例分割更快更強更精準


實驗結果


作者在COCO test dev數據集上進行了實例分割實驗:


開源SOLOv2,讓動態實例分割更快更強更精準


SOLOv2實現了一個新的SOTA,使用Res-DCN-101-FPN,AP達到41.7!幾乎比掩模RCNN高4個百分點。


作者直接在生成的掩碼上生成目標幀,並在COCO test dev數據集上得到目標檢測結果,也達到了主流算法的水平:


開源SOLOv2,讓動態實例分割更快更強更精準


下圖是與掩模R-CNN分割結果的比較:

開源SOLOv2,讓動態實例分割更快更強更精準

圖5 –Mask細節比較。我們將模型(AP為39.7%)與Mask R-CNN(AP為37.8%)的預測對象邊界細節進行了比較。Mask-RCNN的蒙版頭通常限制為28×28分辨率,導致在對象邊界處的預測較差。


開源SOLOv2,讓動態實例分割更快更強更精準

圖6 –邊界框對象的速度精度折衷,在COCO test-dev上進行檢測。在TitanX-GPU機器上評估所有方法的推理時間。

結論


作者大大改善了SOLOv1從三個方面進行實例細分。


根據位置來學習掩模預測頭的自適應動態卷積內核,從而實現更緊湊但功能更強大的頭設計,並通過減少FLOP獲得更好的結果。


作者重新設計了Mask功能,更準確的預測了邊界。特別是對於中型和大型對象

在物體檢測中實例分割推理效率的瓶頸是掩碼的NMS。以前的作品都使用

框NMS作為替代,或通過近似來加快速度,這會損害面罩AP。 作者設計了一種簡單且速度更快的NMS策略,稱為Matrix NMS,用於掩模的NMS處理,不帶犧牲Mask AP。


論文地址:

https://arxiv.org/pdf/2003.10152.pdf

開源地址:

https://github.com/aim-uofa/AdelaiDet/


分享到:


相關文章: