Mask R-CNN论文
目錄
- 摘要
- 1.引言
- 2.相關工作
- 3.Mask R-CNN
- 3.1 實施細節
- 4.實驗:實例分割
- 4.1 主要結果
- 4.2 消融實驗
- 4.3 邊界框檢測結果
- 4.4 時序
- 5.Mask R-CNN 用于人體姿態估計
- 附錄A:關于城市景觀的實驗
- 附錄B:關于COCO的增強結果
- 實例分割和對象檢測
- 關鍵點檢測
- 參考文獻
傳送門:
論文原文.
代碼.
摘要
我們為實例分割提供了一個概念上簡單,靈活且通用的框架。我們的方法有效檢測了圖像中的對象,并同時為每個實例生成了高質量的分割蒙版。該方法稱為“Mask R-CNN”,通過與現有的用于邊界框識別的分支并行添加一個用于預測對象遮罩的分支,擴展了Faster R-CNN。 Mask R-CNN易于訓練并且只在Faster R-CNN添加了很小的開銷,并以 5 fpts 的速度運行。此外, Mask R-CNN很容易推廣到其他其他任務,比如允許我們在同一框架中估計人體姿態。我們在COCO挑戰套件的所有三個軌跡中均顯示了最佳結果,包括實例分割、邊界框目標檢測和人體關鍵點檢測。Mask R-CNN在所有任務上都勝過了現存的單一模型,包括2016年COCO挑戰賽獲獎者。我們希望我們簡單有效的方法可以作為堅實的基準,并有助于簡化實例識別的未來研究。代碼已在以下位置提供:https://github.com/facebookresearch/Detectron.
1.引言
視覺領域在短時間內迅速改善了對象檢測和語義分割結果。在很大程度上,這些進步是由強大的基線系統驅動的,例如分別用于對象檢測和語義分段的Fast/Faster RCNN [12,36]和完全卷積網絡(FCN)[30]框架。這些方法在概念上很直觀,并具有靈活性,魯棒性以及快速的訓練和推理時間。我們在這項工作中的目標是為實例分割開發一個可比較的框架。
實例分割具有挑戰性,因為它需要正確檢測圖像中的所有對象,同時還要精確分割每個實例。因此,它結合了目標檢測的經典計算機視覺任務中的元素,其中的目標是使用邊界框和語義分割對單個對象進行分類并對其進行定位,其目標是將每個像素分類為一組固定的類別,而無需區分對象實例。鑒于此,人們可能期望一種復雜的方法才能獲得良好的結果。但是,我們展示出的驚人地簡單,靈活和快速的系統可以超越現有的最新的實例分割結果。
我們的方法稱為Mask R-CNN,它通過添加一個分支來預測每個關注區域(RoI)上的分割蒙版,從而擴展了Faster R-CNN [36],與現有的用于分類和邊界框回歸的分支并行(Figure 1) 。遮罩分支是應用于每個RoI的小FCN,以像素到像素的方式預測分段遮罩。有了Faster R-CNN框架,Mask R-CNN易于實施和訓練,從而促進了多種靈活的體系結構設計。另外,mask分支僅增加了少量的計算開銷,就能夠實現一個快速系統和快速實驗。
原則上,Mask R-CNN是Faster R-CNN的直觀擴展,但正確構造Mask分支對于獲得良好的結果至關重要。最重要的是,Faster R-CNN并不是為網絡輸入和輸出之間的像素到像素的對齊而設計的。這在加入實例的核心操作RoIPool [18,12怎樣對特征提取進行組略的空間量化的過程中] 最為明顯。為了解決不對齊問題,我們提出了一個簡單的無量化層,稱為RoIAlign,它保留了準確的空間位置。盡管看似很小的變化,RoIAlign仍具有很大的影響:它將掩模的精度提高了10%至5??0%,在更嚴格的本地化指標下顯示出更大的收益。其次,我們發現將遮罩和類別預測分離開來是至關重要的:我們獨立地為每個類別預測二進制掩碼,而無需類別之間的競爭,并依靠網絡的RoI分類分支來預測類別。相比之下,FCN通常執行按像素的多類分類,這將分割和分類結合在一起,并且基于我們的實驗,分割的效果很差。
沒有其他花里胡哨的添加,Mask R-CNN在COCO實例分割任務[28]上超過了所有先前的最新單模型結果,包括2016年競賽獲勝者的精心設計的項目。作為副產品,我們的方法還擅長于COCO對象檢測任務。在消融實驗中,我們評估了多個基本實例,這使我們能夠證明其魯棒性并分析核心因素的影響。
我們的模型在GPU上每幀的運行時間約為200毫秒,在一臺8-GPU機器上進行COCO的訓練需要一到兩天。我們相信,快速的訓練和測試速度,以及框架的靈活性和準確性,將有益于并簡化未來對實例細分的研究。
最后,我們通過在COCO關鍵點的數據集上進行人體姿勢估計任務來展示我們框架的通用性[28]。通過將每個關鍵點視為一個一次性二進制的蒙版,只需要進行最少的修改即可將Mask R-CNN應用于檢測特定實例的姿勢。 Mask R-CNN超越了2016年COCO關鍵點競賽的獲勝者,同時以5 fps的速度運行。因此,Mask R-CNN可以更廣泛地視為實例級別識別的靈活框架,并且可以輕松擴展到更復雜的任務。
我們已經發布了代碼以方便將來的研究。
2.相關工作
R-CNN: 基于邊界的CNN(R-CNN)進行邊界框對象檢測的方法[13]涉及可管理數量的候選對象區域[42、20]并在每個RoI上獨立評估卷積網絡[25、24]。 R-CNN進行了擴展[18,12],允許使用RoIPool加入功能圖上的RoI,從而提高了速度和準確性。Faster R-CNN [36]通過使用區域提議網(RPN)學習注意力機制來推進這一流程。Faster R-CNN對許多后續改進(例如[38、27、21])都具有靈活性和魯棒性,并且在多個基準測試中都是當前領先的框架。
實例分割: 在R-CNN的有效性的驅動下,很多實例分割的方法都是基于分割提案的。較早的方法[13、15、16、9]采用自下而上的方法[42、2]。 DeepMask [33]和隨后的工作[34,8]學習去建議分段候選者,然后由Fast R-CNN對其進行分類。在這些方法中,分割先于識別,然后再進行識別,速度較慢且準確性較低。同樣,Dai等人。 [10]提出了一個復雜的多階段級聯,從邊界框提議中預測分段提議,然后進行分類。相反,我們的方法基于對掩碼和類標簽的并行預測,這更簡單,更靈活。
最近,Li等人。 [26]結合了[8]中的分段提議系統和[11]中的對象檢測系統,以實現“全卷積實例分割”(FCIS)。 [8、11、26]中的共同思想是完全卷積地預測一組位置敏感的輸出通道。這些通道同時處理對象類,框和掩碼,從而使系統快速運行。但是,FCIS在重疊的實例上表現出系統性錯誤并產生虛假邊緣(圖6),這表明它受到了分割實例基本困難的挑戰。
實例分割的另一類解決方案[23、4、3、29]是由語義分割的成功驅動的。從按像素分類的結果(例如FCN輸出)開始,這些方法嘗試將相同類別的像素切成不同的實例。與這些方法的分割優先策略相反,Mask R-CNN基于實例優先策略。我們希望將來將對這兩種策略進行更深入的研究。
3.Mask R-CNN
Mask R-CNN概念上很簡單:Faster R-CNN對每個候選對象都有兩個輸出,一個是類標簽,另一個是邊界框偏移。為此,我們添加了第三個分支,用于輸出對象蒙版。 因此,Mask R-CNN是一個自然而直觀的想法。但是附加的遮罩輸出與類和框輸出不同,需要提取對象的更精細的空間布局。接下來,我們介紹Mask R-CNN的關鍵元素,包括像素到像素對齊,這是Fast / Faster R-CNN主要缺少的部分。
Faster R-CNN: 我們首先簡要回顧一下Faster R-CNN檢測器[36]。Faster R-CNN包含兩個階段。第一階段稱為區域提議網絡(RPN),提出候選對象邊界框。第二階段本質上是Fast R-CNN [12],它使用RoIPool從每個候選框中提取特征,并執行分類和邊界框回歸。可以共享兩個階段使用的功能,以加快推理速度。我們建議讀者參考[21],以了解Faster R-CNN與其他框架之間最新的,全面的比較。
Mask R-CNN: Mask R-CNN采用相同的兩階段過程,具有相同的第一階段(即RPN)。在第二階段,與預測類和框偏移量并行,Mask R-CNN還為每個RoI輸出一個二進制掩碼。這與多數最近出現的系統相反,在最新系統中,分類取決于蒙版預測(例如[33、10、26])。我們的方法遵循了Fast R-CNN [12]的精神,該思想并行應用邊界框分類和回歸(結果是大大簡化了原始R-CNN [13]的多階段流水線)。
正式地來講,在訓練期間,我們將每個采樣的RoI定義為多任務損失,即L = Lcls + Lbox + Lmask。分類損失Lcls和邊界框損失Lbox與[12]中定義的相同。掩碼分支對每個RoI都有Km^2維輸出,該輸出編碼K個分辨率為m×m的二進制掩碼,K個類別中的每個掩碼都一個。為此,我們應用了每個像素的S形,并將Lmask定義為平均二進制交叉熵損失。對于與真實級別k相關的RoI,Lmask僅在第k個掩模上定義(其他掩模輸出對損耗無貢獻)。
我們對 Lmask 的定義允許網絡為每個類生成掩碼,而無需在類之間進行競爭。我們依靠專用分類分支來預測用于選擇輸出掩碼的類標簽。這使掩碼和類別預測脫鉤。這與將FCN [30]應用于語義分割時的慣例不同,語義分割通常使用每像素softmax和多項式交叉熵損失。在這種情況下,蒙版跨階級競爭。在我們的情況下,每像素S形和二進制損失,它們沒有。我們通過實驗表明,此公式對于良好的實例分割結果至關重要。
蒙版表示Mask Representation: 蒙版對輸入對象的空間布局進行編碼。因此,與通過完全連接的(fc)層不可避免地折疊成短輸出向量的類標簽或框偏移不同,提取遮罩的空間結構可以自然地通過卷積提供的像素間關系解決。具體來說,我們使用FCN預測每個RoI的m×m掩模[30]。這使mask分支中的每一層都可以保持顯式的m×m對象空間布局,而無需將其折疊為缺少空間尺寸的矢量表示。與先前的方法使用fc層進行蒙板預測[33、34、10]不同,我們的全卷積表示需要更少的參數,并且如實驗所示更準確。這種像素到像素的行為要求我們的RoI特征(它們本身是小的特征圖)必須正確對齊以忠實地保留顯式的每個像素空間的對應關系。這促使我們開發出以下RoIAlign層,該層在掩模預測中起關鍵作用。
RoIAlign: RoIPool [12]是一種標準操作,用于從每個RoI中提取一個小的特征圖(例如7×7)。 RoIPool首先將浮點數RoI量化為特征圖的離散粒度,然后將此量化的RoI細分為自身被量化的bin,最后匯總每個bin所覆蓋的特征值(通常通過最大池化)。量化例如通過計算[x / 16]從而在連續坐標x上執行,其中16是特征圖跨度,[·]是舍入;同樣地,當劃分為bins(例如7×7)時執行量化。這些量化在RoI和提取的特征之間并未對準。盡管這可能不會影響分類(對于小轉換而言是穩健的),但它對預測像素準確的蒙版具有很大的負面影響。
為了解決這個問題,我們提出了一個RoIAlign層,該層消除了RoIPool的苛刻量化,將提取的特征與輸入正確對齊。我們提出的更改很簡單:我們避免對RoI邊界或bin進行任何量化(即,我們使用x / 16代替[x / 16])。我們使用雙線性插值[22]來計算每個RoI箱中四個定期采樣位置的輸入要素的準確值,并匯總結果(使用最大值或平均值),有關詳細信息,請參見圖3。我們注意到,只要不執行量化,結果對精確的采樣位置或采樣的點數都不敏感。
正如我們在§4.2中所示,RoIAlign帶來了巨大的改進。我們還與[10]中提出的RoIWarp操作進行了比較。與RoIAlign不同,RoIWarp忽略了對齊問題,并在[10]中實現了像RoIPool一樣量化RoI。因此,即使RoIWarp也采用了[22]所激發的雙線性重采樣,它的性能與RoIPool相當,如實驗所示(Table 2c(見下文)中的更多詳細信息),證明了對齊的關鍵作用。
網絡架構 為了演示我們方法的通用性,我們實例化具有多種體系結構的Mask R-CNN。為了清楚起見,我們區分:(i)用于整個圖像特征提取的卷積主干架構,以及(ii)分別應用于每個RoI的邊界框識別(分類和回歸)和掩碼預測的網絡頭。我們使用命名網絡深度功能來表示骨干架構。我們評估深度為50或101層的ResNet [19]和ResNeXt [45]網絡。帶有ResNets的Faster R-CNN的最初實現[19]從第4階段的最終卷積層中提取了特征,我們稱之為C4。例如,具有ResNet-50的主干網由ResNet-50-C4表示。這是[19,10,21,39]中常用的選擇。我們還探索了Lin等人最近提出的另一個更有效的主干。 [27],稱為特征金字塔網絡(FPN)。 FPN使用具有橫向連接的自上而下的體系結構,可以根據單比例輸入構建網絡內要素金字塔。具有FPN主干的更快的R-CNN可根據特征金字塔的規模從不同層次的特征金字塔中提取RoI特征,但其他方法與普通ResNet類似。通過使用ResNet-FPN主干與Mask RCNN進行特征提取,可以在準確性和速度上獲得出色的收益。有關FPN的更多詳細信息,請參考[27]。對于網絡負責人,我們緊密遵循先前工作中介紹的體系結構,并向其中添加了完全卷積的掩碼預測分支。具體來說,我們從ResNet [19]和FPN [27]的論文中擴展了Faster R-CNN的標注框頭。詳細信息如Figure 4所示。ResNet-C4骨干網的頭部包括ResNet的第5階段(即9層“ res5” [19]),這是計算密集型的。對于FPN,骨干網已經包含res5,因此可以使用更少的過濾器來獲得更高效的磁頭。我們注意到,掩碼分支具有簡單明了的結構。更復雜的設計具有改善性能的潛力,但并不是本工作的重點。
3.1 實施細節
我們根據現有的Fast/Faster R-CNN的研究工作[12、36、27]設置超參數。盡管這些決策是針對原始論文[12、36、27]進行的,但我們發現它們也能很好地適用于我們的實例分割系統。
訓練:與Fast R-CNN一樣,如果RoI的IoU的ground truth框至少為0.5,則RoI被視為正,否則為負。掩模損失函數僅在正的ROI上定義。遮罩目標是RoI及其關聯的ground遮罩之間的交集。我們采用以圖像為中心的訓練[12]。調整圖像大小,使其比例(較短邊緣)為800像素[27]。每個微型批處理具有每個GPU2個圖像的處理能力,每個圖像具有N個采樣的RoI,正負比為1:3 [12]。對于C4主干,N為64(如[12,36])對于FPN為512(如[27])也一樣。我們在8個GPU(有效最小批大小為16)上進行了16萬次迭代訓練,學習率0.02,這在12萬次迭代中降低了10。我們使用0.0001的權重衰減和0.9的動量。使用ResNeXt [45],我們為每個GPU訓練1張圖像,并且迭代次數相同,起始學習率為0.01。 RPN錨點跨越5個比例和3個長寬比,緊隨[27]。為了方便消融,除非另有說明,否則RPN單獨訓練,并且不與Mask R-CNN共享功能。對于本文的每個條目,RPN和Mask R-CNN具有相同的主干,因此可以共享。
推論:在測試時,對于C4骨干網(如[36]),提案編號為300;對于FPN(如[27]),提案編號為1000。我們對這些建議運行框預測分支,然后進行非最大抑制[14]。然后將mask分支應用于得分最高的100個檢測盒。盡管這與訓練中使用的并行計算有所不同,但它可以加快推理速度并提高準確性(由于使用了更少,更準確的RoI)。Masrer分支可以預測每個RoI的K個掩碼,但是我們僅使用第k個掩碼,其中k是分類分支的預測類。然后將m×m浮點數掩碼輸出調整為RoI大小,并以0.5的閾值進行二值化。請注意,由于我們僅在前100個檢測盒上計算蒙版,因此Mask R-CNN為其Faster R-CNN對應產品增加了少量開銷(例如,在典型型號上約為20%)。
4.實驗:實例分割
我們對Mask R-CNN與現有技術進行了徹底的比較,并對COCO數據集進行了全面的燒蝕[28]。我們報告標準的COCO指標,包括AP(超過IoU閾值的平均值),AP50,AP75,以及APS,APM,APL(不同規模的AP)。除非另有說明,否則A??P正在使用掩碼IoU進行評估。與以前的工作[5,27]一樣,我們使用80k火車圖像和val圖像的35k子集(trainval35k)的聯合進行訓練,并報告剩余5k val圖像的消融(最小)。我們還報告有關test-dev的結果[28]。
4.1 主要結果
在表1的實例分割中,我們將Mask R-CNN與最新方法進行了比較。我們模型的所有實例化都優于先前最新模型的基線變體。其中包括MNC [10]和FCIS [26],分別是2015年和2016年COCO細分挑戰賽的獲勝者。沒有障礙,帶有ResNet-101-FPN主干的Mask R-CNN的性能優于FCIS +++ [26],其中包括多尺度訓練/測試,水平翻轉測試和在線硬示例挖掘(OHEM)[38]。盡管不在本工作范圍之內,但我們希望許多此類改進適用于我們的改進。圖2和圖5中顯示了模板R-CNN的輸出。即使在挑戰性條件下,模板R-CNN也能取得良好的效果。在圖6中,我們比較了Mask R-CNN基線和FCIS +++ [26]。 FCIS +++在重疊的實例上表現出系統的偽像,表明它受到實例分割的基本困難的挑戰。遮罩R-CNN沒有顯示此類偽像。
4.2 消融實驗
我們進行了多次消融來分析Mask R-CNN。結果示于表2,接下來將詳細討論。
體系結構: 表2a顯示了具有各種主干的Mask R-CNN。它得益于更深的網絡(50和101)和先進的設計,包括FPN和ResNeXt。我們注意到,并非所有框架都會自動從更深層次的網絡或高級網絡中受益(請參見[21]中的基準測試)。
多項式與獨立遮罩: 遮罩R-CNN將遮罩與類別預測分離開來:隨著現有的框分支預測類別標簽,我們為每個類別生成一個遮罩,而各類別之間沒有競爭(通過每個像素的S型和二進制損失)。在表2b中,我們將此與使用每像素softmax和多項式損失(在FCN [30]中常用)進行了比較。這種替代方案將遮罩和類別預測的任務結合在一起,并導致遮罩AP的嚴重損失(5.5分)。這表明,一旦實例(通過框分支)被分類為一個整體,就足以預測二進制掩碼而無需考慮類別,這使得模型更易于訓練。
特定于類別的掩碼與不可區分類別的掩碼: 我們的默認實例化可預測特定于類別的掩碼,即每個類別一個m×m掩碼。有趣的是,具有分類診斷掩碼的Mask R-CNN(即預測單個m×m輸出,與類別無關)幾乎一樣有效:它具有29.7個掩碼AP,而ResNet-50-C4上具有特定類別的掩碼的AP為30.3。這進一步突出了我們方法中的勞動分工,這在很大程度上使分類和細分脫鉤。
RoIAlign: 對我們建議的RoIAlign層的評估如表2c所示。在本實驗中,我們使用的ResNet50-C4骨干網已經邁出了16步。與RoIPool相比,RoIAlign將AP提升了約3個點,其中大部分收益來自高IoU(AP75)。 RoIAlign對最大/平均池不敏感;我們在本文的其余部分中使用平均值。另外,我們與MNC [10]中提出的RoIWarp進行了比較,后者也采用了雙線性采樣。如第3節所述,RoIWarp仍會量化RoI,而與輸入失去一致性。從表2c中可以看出,RoIWarp的性能與RoIPool相當,并且比RoIAlign差得多。這突出表明正確對齊是關鍵。我們還使用ResNet-50-C5主干評估RoIAlign,該主干的步幅更大,為32像素。我們使用與圖4(右)相同的頭,因為res5頭不適用。表2d顯示RoIAlign將掩模AP大幅提高7.3點,將掩模AP75提升10.5點(相對改善50%)。此外,我們注意到,使用RoIAlign,使用stride-32 C5功能(30.9 AP)比使用stride-16 C4功能(30.3 AP,表2c)更為準確。 RoIAlign在很大程度上解決了使用大步距特征進行檢測和分割的長期挑戰。最后,RoIAlign與FPN一起使用時,增益為1.5掩膜AP和0.5盒式AP,具有更高的多級跨度。對于需要更精確對準的關鍵點檢測,即使使用FPN,RoIAlign也顯示出很大的增益(表6)。
蒙版分支: 分割是一個像素到像素的任務,我們通過使用FCN利用蒙版的空間布局。在表2e中,我們使用ResNet-50-FPN主干比較了多層感知器(MLP)和FCN。使用FCN比MLP可獲得2.1的掩碼AP增益。我們注意到,我們選擇此主干是為了不對FCN頭的conv層進行預訓練,以便與MLP進行公平比較。
4.3 邊界框檢測結果
我們在表3中將Mask R-CNN與最新的COCO邊界框對象檢測進行了比較。對于此結果,即使訓練了完整的Mask R-CNN模型,也僅在以下位置使用分類和框輸出推理(忽略掩碼輸出)。使用ResNet-101-FPN的Mask R-CNN優于所有以前的最新模型的基本變量,包括GRMI的單模型變量[21],這是COCO 2016檢測挑戰賽的冠軍。使用ResNeXt-101-FPN,Mask R-CNN進一步改善了結果,與[39]中使用最佳In-ResNet-v2-TDM的最佳單個模型條目相比,AP的裕度為3.0點框。作為進一步的比較,我們訓練了Mask R-CNN的一個版本,但沒有Mask分支,在表3中用“ Faster R-CNN,RoIAlign”表示。由于RoIAlign,該模型的性能優于[27]中提出的模型。另一方面,它的AP比Mask R-CNN低0.9點。因此,Mask R-CNN在盒子檢測上的差距僅歸因于多任務訓練的優勢。最后,我們注意到Mask R-CNN在其mask與框AP之間有一個小間隙:例如,在37.1(mask,表1)和39.8(box,表3)之間有2.7點。這表明我們的方法大大縮小了對象檢測與更具挑戰性的實例分割任務之間的差距。
4.4 時序
推斷: 我們按照Faster R-CNN的4步訓練[36],訓練了一個在RPN和Mask R-CNN階段之間共享特征的ResNet-101-FPN模型。該模型在Nvidia Tesla M40 GPU上以每張圖像195ms的速度運行(加上15ms的CPU時間將輸出調整為原始分辨率),并且在統計上實現了與未共享的相同的模板AP。我們還報告說ResNet-101-C4變型的箱頭較重,大約需要400毫秒(圖4),因此我們不建議在實踐中使用C4變型。盡管Mask R-CNN速度很快,但我們注意到我們的設計并未針對速度進行優化,例如,通過更改圖像大小和建議編號,可以實現更好的速度/精度折衷[21],這超出了本文的范圍。
訓練: Mask R-CNN訓練也很快。在我們的同步8-GPU實施中,使用ResNet-50-FPN進行COCO trainval35k的培訓需要32個小時(每16幅圖像的迷你批處理需要0.72s),而使用ResNet-101-FPN則需要44個小時。實際上,在火車上進行訓練時,不到一天就能完成快速原型制作。我們希望這樣的快速培訓將消除該領域的主要障礙,并鼓勵更多的人對這個具有挑戰性的主題進行研究。
5.Mask R-CNN 用于人體姿態估計
我們的框架可以輕松擴展到人體姿勢估計。我們將關鍵點的位置建模為一個熱口罩,并使用Mask R-CNN預測K個口罩,每種K個關鍵點類型(例如,左肩,右肘)都使用一個。此任務有助于證明Mask R-CNN的靈活性。我們注意到,由于我們的實驗主要是為了證明Mask R-CNN框架的一般性,因此我們的系統已利用了最少的人體姿勢領域知識。我們希望領域知識(例如建模結構[6])將補充我們的簡單方法。
實施細節: 在使分割系統適應關鍵點時,我們會對分割系統進行了少量修改。對于實例的K個關鍵點中的每個關鍵點,訓練目標是單熱點m×m二進制掩碼,其中僅將單個像素標記為前景。在訓練期間,對于每個可見的地面真相關鍵點,我們將m2向softmax輸出上的交叉熵損失最小化(這鼓勵了要檢測的單點)。我們注意到,與實例細分一樣,K個關鍵點仍然被獨立對待。我們采用ResNet-FPN變體,關鍵點頭架構與圖4(右)類似。關鍵點包括8個3×3 512-d轉換層的堆棧,然后是deconv層和2×雙線性放大,從而產生56×56的輸出分辨率。我們發現,關鍵點級別的定位精度需要相對較高的分辨率輸出(與蒙版相比)。在所有包含帶注釋的關鍵點的COCO trainval35k圖像上訓練模型。為了減少過度擬合,當此訓練集較小時,我們使用從[640,800]像素中隨機采樣的圖像比例進行訓練;推論是在800像素的單一尺度上。我們從0.02的學習率開始訓練90k迭代,然后在60k和80k迭代中將其減少10。我們使用閾值為0.5的邊界框NMS。其他細節與第3.1節相同。
主要結果和消融: 我們評估人員關鍵點AP(APkp),并使用ResNet-50-FPN主干網進行實驗;附錄中將研究更多主干。表4顯示我們的結果(62.7 APkp)比使用多階段處理管道的COCO 2016關鍵點檢測獲勝者[6]高0.9點(請參見表4的標題)。我們的方法相當簡單和快捷。更重要的是,我們有一個統一的模型同時以5 fps的速度預測框,分段和關鍵點。在test-dev上添加一個細分分支(針對人員類別)可將APkp提升至63.1(表4)。有關最小化的多任務學習的更多信息,請參見表5。將mask分支添加到僅框式(即Faster R-CNN)或僅關鍵點的版本中,可以持續改善這些任務。但是,添加關鍵點分支會稍微減少盒子/遮罩AP,這表明雖然關鍵點檢測受益于多任務訓練,但并不能幫助其他任務。盡管如此,共同學習所有三個任務可以使一個統一的系統有效地同時預測所有輸出(圖7)。我們還研究了RoIAlign對關鍵點檢測的影響(表6)。盡管此ResNet-50-FPN主干的步幅更小(例如,最好水平為4像素),但RoIAlign仍比RoIPool表現出顯著改善,并且APkp增加了4.4點。這是因為關鍵點檢測對定位精度更敏感。這再次表明對齊對于像素級定位(包括遮罩和關鍵點)至關重要。鑒于Mask R-CNN在提取對象邊界框,遮罩和關鍵點方面的有效性,我們希望它是用于其他實例級任務的有效框架。
附錄A:關于城市景觀的實驗
我們進一步報告關于城市景觀[7]數據集的實例分割結果。該數據集具有2975個火車,500 val和1525個測試圖像的精細注釋。它具有20k粗略訓練圖像,沒有實例注釋,我們不使用它。所有圖像均為2048×1024像素。實例分割任務涉及8個對象類別,在精細訓練集中的實例數量為:
此任務的實例分段性能由COCO樣式的掩碼AP(在IoU閾值上求平均值)來衡量;還報告了AP50(即IoU為0.5的掩碼AP)。
實施: 我們將Mask R-CNN模型與ResNet-FPN-50主干一起應用;由于數據集較小,我們發現101層對應對象的性能類似。我們使用從[800,1024]中隨機采樣的圖像比例(較短的一面)進行訓練,從而減少了過擬合;推斷是在1024像素的單個范圍內。我們使用每個GPU 1個圖像的最小批量大小(因此8個GPU上為8個),并針對24k迭代訓練模型,從0.01的學習率開始,然后在18k迭代時將其降低到0.001。在此設置下,在一臺8-GPU機器上需要大約4個小時的培訓。
結果: 表7將我們的結果與val和測試集上的最新技術進行了比較。在不使用粗略訓練集的情況下,我們的方法可以在測試中達到26.2 AP,比以前的最佳入門(DIN [3])相對提高了30%以上,也比SGN的25.0 [29]的同步工作要好。 DIN和SGN都使用精細+粗略數據。與僅使用精細數據的最佳條目(17.4 AP)相比,我們實現了約50%的改進。對于人員和汽車類別,Cityscapes數據集顯示大量類別內重疊實例(每個圖像平均6個人和9輛汽車)。我們認為類別內重疊是實例分割的核心困難。即使我們的方法沒有利用粗略的數據,我們的方法也顯示出這兩個類別相對于其他最佳條目的巨大改進(人均從21.8降低到40%?40%改善了30.5,汽車的人從39.4改進到了46.9?20%)。 Cityscapes數據集的主要挑戰是在低數據狀態下的訓練模型,尤其是卡車,公共汽車和火車等類別的火車,其火車數量約為200-500.為了部分解決此問題,我們進一步報告了使用COCO預訓練的結果。為此,我們從預先訓練的COCO Mask R-CNN模型(隨機初始化騎手)中初始化Cityscapes中相應的7個類別。我們針對4k次迭代對該模型進行了微調,其中3k次迭代會降低學習率,在給定COCO模型的情況下,訓練需要約1個小時。經COCO預訓練的Mask R-CNN模型在測試中達到了32.0 AP,比僅精細模型提高了6點。這表明培訓數據量發揮著重要作用。這也表明,關于“城市景觀”的方法可能受其低調學習性能的影響。我們證明了在此數據集上使用COCO預訓練是一種有效的策略。最后,我們觀察到val和測試AP之間存在偏差,這也可以從[23,4,29]的結果中觀察到。我們發現這種偏差主要是由卡車,公共汽車和火車類別引起的,僅精細模型的val / test AP分別為28.8 / 22.8、53.5 / 32.2和33.0 / 18.6。這表明在這些類別上存在領域轉移,而這些類別的培訓數據也很少。 COCO預培訓有助于最大程度地改善這些類別的結果;但是,域偏移分別以38.0 / 30.1、57.5 / 40.9和41.2 / 30.9 val / test AP持續存在。請注意,對于人員和汽車類別,我們看不到任何此類偏差(val / test AP在±1點以內)。關于城市景觀的示例結果如圖8所示。
附錄B:關于COCO的增強結果
作為一般框架,Mask R-CNN與為檢測/分段而開發的補充技術兼容,包括對快速/快速R-CNN和FCN進行的改進。在本附錄中,我們描述了一些可以改善原始結果的技術。由于其通用性和靈活性,在COCO 2017實例細分大賽中,三支獲勝團隊將Mask R-CNN用作框架,所有這些都大大超過了以前的技術水平。
實例分割和對象檢測
我們在表8中報告了Mask R-CNN的一些增強結果??傮w而言,這些改進將Mask AP的5.1點(從36.7提升到41.8)和box AP的7.7點(從39.6提升到47.3)。每種模型的改進都一致地增加了遮罩AP和盒式AP,這顯示了對遮罩R-CNN框架的良好概括。接下來,我們將詳細說明改進之處。這些結果以及未來的更新可以通過我們在https://github.com/facebookresearch/Detectron上發布的代碼進行復制,并且可以作為將來研究的更高基準。更新的基線:我們從更新的基線開始,該基線具有一組不同的超參數。我們將訓練延長到180k迭代,其中在120k和160k迭代時學習率降低10。我們還將NMS閾值更改為0.5(從默認值0.3)。更新的基準具有37.0掩碼AP和40.5框AP。端到端訓練:所有以前的結果都使用階段性訓練,即將RPN訓練為第一階段,將Mask R-CNN訓練為第二階段。 [37]之后,我們評估了聯合訓練RPN和Mask RCNN的端到端(e2e)培訓。我們在[37]中采用了“近似”版本,該版本僅通過忽略梯度w.r.t來計算RoIAlign層中的部分梯度。 RoI坐標。表8顯示e2e訓練可將蒙版AP提升0.6,框AP提升1.2。 ImageNet-5k預訓練:在[45]之后,我們對在ImageNet的5k類子集上進行預訓練的模型進行實驗(與標準1k類子集相反)。預訓練數據的這種5倍增長同時改善了掩模和框1 AP。作為參考,[40]使用了多出約250倍的圖像(300M),并在其基線上報告了2-3框AP的改進。
訓練時增強:訓練時進行比例增強進一步改善了結果。在訓練期間,我們從[640,800]像素中隨機采樣一個比例,并將迭代次數增加到260k(在200k和240k迭代時,學習率降低了10)。訓練時間的增加可將蒙版AP提升0.6,將盒子AP提升0.8。模型體系結構:通過將101層ResNeXt升級到152層對應物[19],我們觀察到掩模AP和0.6盒AP的增加。這表明更深層次的模型仍然可以改善COCO的結果。使用最近提出的非本地(NL)模型[43],我們實現了40.3個蒙版AP和45.0個盒式AP。此結果沒有增加測試時間,并且該方法在測試時在Nvidia Tesla P100 GPU上以3fps的速度運行。測試時間擴充:我們將使用[400,1200]像素的比例評估的模型結果與100的步長以及水平翻轉相結合。這為我們提供了41.8模板AP和47.3盒式AP的單模型結果。以上結果是我們提交COCO 2017競賽(也使用了合奏,此處未討論)的基礎。據報道,實例分割任務的前三支獲勝團隊全部基于Mask R-CNN框架的擴展。
關鍵點檢測
我們在表9中報告了關鍵點檢測的增強結果。作為更新的基準,我們將訓練計劃擴展到了130k迭代,其中在100k和120k迭代時學習率降低了10。這樣可以將APkp提高約1點。用ResNet-101和ResNeXt-101替換ResNet-50會使APkp分別增加到66.1和67.3。使用一種稱為數據蒸餾的最新方法[35],我們能夠利用COCO提供的其他120k未標記圖像。簡而言之,數據提純是一種自我訓練策略,它使用在標記數據上訓練的模型來預測未標記圖像上的注釋,然后使用這些新注釋更新模型。 Mask R-CNN為這種自我訓練策略提供了有效的框架。通過數據蒸餾,Mask R-CNN APkp提高了1.8點,達到69.1。我們觀察到Mask R-CNN可以從額外的數據中受益,即使這些數據沒有標簽。通過使用與實例細分相同的測試時間擴充,我們將APkp進一步提高到70.4。
致謝: 我們要感謝Ilija Radosavovic對代碼發布和增強結果的貢獻,并感謝Caffe2團隊的工程支持。
參考文獻
[1] M. Andriluka, L. Pishchulin, P. Gehler, and B. Schiele. 2D
human pose estimation: New benchmark and state of the art
analysis. In CVPR, 2014. 8
[2] P. Arbelaez, J. Pont-Tuset, J. T. Barron, F. Marques, and ′
J. Malik. Multiscale combinatorial grouping. In CVPR,
2014. 2
[3] A. Arnab and P. H. Torr. Pixelwise instance segmentation
with a dynamically instantiated network. In CVPR, 2017. 3,
9
[4] M. Bai and R. Urtasun. Deep watershed transform for instance segmentation. In CVPR, 2017. 3, 9
[5] S. Bell, C. L. Zitnick, K. Bala, and R. Girshick. Insideoutside net: Detecting objects in context with skip pooling
and recurrent neural networks. In CVPR, 2016. 5
[6] Z. Cao, T. Simon, S.-E. Wei, and Y. Sheikh. Realtime multiperson 2d pose estimation using part affinity fields. In CVPR,
2017. 7, 8
[7] M. Cordts, M. Omran, S. Ramos, T. Rehfeld, M. Enzweiler,
R. Benenson, U. Franke, S. Roth, and B. Schiele. The
Cityscapes dataset for semantic urban scene understanding.
In CVPR, 2016. 9
[8] J. Dai, K. He, Y. Li, S. Ren, and J. Sun. Instance-sensitive
fully convolutional networks. In ECCV, 2016. 2
[9] J. Dai, K. He, and J. Sun. Convolutional feature masking for
joint object and stuff segmentation. In CVPR, 2015. 2
[10] J. Dai, K. He, and J. Sun. Instance-aware semantic segmentation via multi-task network cascades. In CVPR, 2016. 2, 3,
4, 5, 6
[11] J. Dai, Y. Li, K. He, and J. Sun. R-FCN: Object detection via
region-based fully convolutional networks. In NIPS, 2016. 2
[12] R. Girshick. Fast R-CNN. In ICCV, 2015. 1, 2, 3, 4, 6
[13] R. Girshick, J. Donahue, T. Darrell, and J. Malik. Rich feature hierarchies for accurate object detection and semantic
segmentation. In CVPR, 2014. 2, 3
[14] R. Girshick, F. Iandola, T. Darrell, and J. Malik. Deformable
part models are convolutional neural networks. In CVPR,
2015. 4
[15] B. Hariharan, P. Arbelaez, R. Girshick, and J. Malik. Simul- ′
taneous detection and segmentation. In ECCV. 2014. 2
[16] B. Hariharan, P. Arbelaez, R. Girshick, and J. Malik. Hyper- ′
columns for object segmentation and fine-grained localization. In CVPR, 2015. 2
[17] Z. Hayder, X. He, and M. Salzmann. Shape-aware instance
segmentation. In CVPR, 2017. 9
[18] K. He, X. Zhang, S. Ren, and J. Sun. Spatial pyramid pooling
in deep convolutional networks for visual recognition. In
ECCV. 2014. 1, 2
[19] K. He, X. Zhang, S. Ren, and J. Sun. Deep residual learning
for image recognition. In CVPR, 2016. 2, 4, 7, 10
[20] J. Hosang, R. Benenson, P. Dollar, and B. Schiele. What ′
makes for effective detection proposals? PAMI, 2015. 2
[21] J. Huang, V. Rathod, C. Sun, M. Zhu, A. Korattikara,
A. Fathi, I. Fischer, Z. Wojna, Y. Song, S. Guadarrama, et al.
Speed/accuracy trade-offs for modern convolutional object
detectors. In CVPR, 2017. 2, 3, 4, 6, 7
[22] M. Jaderberg, K. Simonyan, A. Zisserman, and
K. Kavukcuoglu. Spatial transformer networks. In
NIPS, 2015. 4
[23] A. Kirillov, E. Levinkov, B. Andres, B. Savchynskyy, and
C. Rother. Instancecut: from edges to instances with multicut. In CVPR, 2017. 3, 9
[24] A. Krizhevsky, I. Sutskever, and G. Hinton. ImageNet classification with deep convolutional neural networks. In NIPS,
2012. 2
[25] Y. LeCun, B. Boser, J. S. Denker, D. Henderson, R. E.
Howard, W. Hubbard, and L. D. Jackel. Backpropagation
applied to handwritten zip code recognition. Neural computation, 1989. 2
[26] Y. Li, H. Qi, J. Dai, X. Ji, and Y. Wei. Fully convolutional
instance-aware semantic segmentation. In CVPR, 2017. 2,
3, 5, 6
[27] T.-Y. Lin, P. Dollar, R. Girshick, K. He, B. Hariharan, and ′
S. Belongie. Feature pyramid networks for object detection.
In CVPR, 2017. 2, 4, 5, 7
[28] T.-Y. Lin, M. Maire, S. Belongie, J. Hays, P. Perona, D. Ramanan, P. Dollar, and C. L. Zitnick. Microsoft COCO: Com- ′
mon objects in context. In ECCV, 2014. 2, 5
[29] S. Liu, J. Jia, S. Fidler, and R. Urtasun. SGN: Sequential grouping networks for instance segmentation. In ICCV,
2017. 3, 9
[30] J. Long, E. Shelhamer, and T. Darrell. Fully convolutional
networks for semantic segmentation. In CVPR, 2015. 1, 3, 6
[31] V. Nair and G. E. Hinton. Rectified linear units improve restricted boltzmann machines. In ICML, 2010. 4
[32] G. Papandreou, T. Zhu, N. Kanazawa, A. Toshev, J. Tompson, C. Bregler, and K. Murphy. Towards accurate multiperson pose estimation in the wild. In CVPR, 2017. 8
[33] P. O. Pinheiro, R. Collobert, and P. Dollar. Learning to segment object candidates. In NIPS, 2015. 2, 3
[34] P. O. Pinheiro, T.-Y. Lin, R. Collobert, and P. Dollar. Learn- ′
ing to refine object segments. In ECCV, 2016. 2, 3
[35] I. Radosavovic, P. Dollar, R. Girshick, G. Gkioxari, and ′
K. He. Data distillation: Towards omni-supervised learning.
arXiv:1712.04440, 2017. 10
[36] S. Ren, K. He, R. Girshick, and J. Sun. Faster R-CNN: Towards real-time object detection with region proposal networks. In NIPS, 2015. 1, 2, 3, 4, 7
[37] S. Ren, K. He, R. Girshick, and J. Sun. Faster R-CNN: Towards real-time object detection with region proposal networks. In TPAMI, 2017. 10
[38] A. Shrivastava, A. Gupta, and R. Girshick. Training regionbased object detectors with online hard example mining. In
CVPR, 2016. 2, 5
[39] A. Shrivastava, R. Sukthankar, J. Malik, and A. Gupta. Beyond skip connections: Top-down modulation for object detection. arXiv:1612.06851, 2016. 4, 7
[40] C. Sun, A. Shrivastava, S. Singh, and A. Gupta. Revisiting
unreasonable effectiveness of data in deep learning era. In
ICCV, 2017. 10
[41] C. Szegedy, S. Ioffe, and V. Vanhoucke. Inception-v4,
inception-resnet and the impact of residual connections on
learning. In ICLR Workshop, 2016. 7
[42] J. R. Uijlings, K. E. van de Sande, T. Gevers, and A. W.
Smeulders. Selective search for object recognition. IJCV,
2013. 2
[43] X. Wang, R. Girshick, A. Gupta, and K. He. Non-local neural
networks. arXiv:1711.07971, 2017. 10
[44] S.-E. Wei, V. Ramakrishna, T. Kanade, and Y. Sheikh. Convolutional pose machines. In CVPR, 2016. 8
[45] S. Xie, R. Girshick, P. Dollar, Z. Tu, and K. He. Aggregated ′
residual transformations for deep neural networks. In CVPR,
2017. 4, 10
圖片完全搬運自論文,基本上是機翻,自己做了一些修改,后續還會繼續校對
小白一枚,記下翻譯便于自己的理解,有理解翻譯不到位的地方請指正,侵刪
總結
以上是生活随笔為你收集整理的Mask R-CNN论文的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: unity材质球发光_Unity利用材质
- 下一篇: 谈谈科研论文的追踪、管理和阅读