Mask R-CNN 原理解析
Kaiming He Georgia Gkioxari Piotr Doll′ ar Ross Girshick Facebook AI Research (FAIR)
摘要
我們提出了一個(gè)概念上簡(jiǎn)單、靈活和通用的對(duì)象實(shí)例分割框架。我們的方法有效地檢測(cè)圖像中的對(duì)象,同時(shí)為每個(gè)實(shí)例生成一個(gè)高質(zhì)量的分割掩碼。該方法被稱(chēng)為掩碼 R-CNN,通過(guò)添加一個(gè)分支與現(xiàn)有分支并行預(yù)測(cè)對(duì)象掩碼,用于邊界框識(shí)別,擴(kuò)展了更快的 R-CNN。蒙版 R-CNN 是簡(jiǎn)單的訓(xùn)練和增加一個(gè)小的開(kāi)銷(xiāo)更快的 R-CNN,運(yùn)行在 5 幀。而且,蒙版 R-CNN 很容易推廣到其他任務(wù),例如,允許我們?cè)谙嗤目蚣苤泄烙?jì)人類(lèi)姿勢(shì)。我們?cè)?COCO 挑戰(zhàn)套件的所有三個(gè)軌道中顯示了最佳結(jié)果,包括實(shí)例分割、邊界框?qū)ο髾z測(cè)和 person keypoint 檢測(cè)。沒(méi)有鈴聲和口哨,蒙版 R-CNN 在每一項(xiàng)任務(wù)上都勝過(guò)現(xiàn)有的、單一型號(hào)的作品,包括 COCO 2016 挑戰(zhàn)賽獲獎(jiǎng)?wù)摺N覀兿M覀兒?jiǎn)單而有效的方法將作為一個(gè)堅(jiān)實(shí)的基線(xiàn),并幫助簡(jiǎn)化實(shí)例級(jí)識(shí)別的未來(lái)研究。代碼可訪(fǎng)問(wèn):https:github.comfacebookresearch
vision 社區(qū)在短時(shí)間內(nèi)快速改善了對(duì)象檢測(cè)和語(yǔ)義分割結(jié)果。在很大程度上,這些進(jìn)步是由強(qiáng)大的基線(xiàn)系統(tǒng)驅(qū)動(dòng)的,如快速快速 RCNN 12,36 和全卷積網(wǎng)絡(luò) (FCN) 30 框架,分別用于對(duì)象檢測(cè)和語(yǔ)義分割。這些方法概念上直觀(guān),具有靈活性和魯棒性,并具有快速的訓(xùn)練和推理時(shí)間。我們?cè)谶@項(xiàng)工作的目標(biāo)是開(kāi)發(fā)一個(gè)類(lèi)似的實(shí)例分割啟用框架。
實(shí)例分割具有挑戰(zhàn)性,因?yàn)樗笳_檢測(cè)圖像中的所有對(duì)象,同時(shí)精確分割每個(gè)實(shí)例。因此,它結(jié)合了來(lái)自經(jīng)典的目標(biāo)檢測(cè)的計(jì)算機(jī)視覺(jué)任務(wù)的元素,其中的目標(biāo)是對(duì)單個(gè)對(duì)象進(jìn)行分類(lèi),并使用邊界框定位每個(gè)對(duì)象,和語(yǔ)義分割,目標(biāo)是在不區(qū)分對(duì)象實(shí)例的情況下將每個(gè)像素分類(lèi)到一組固定的類(lèi)別中。考慮到這一點(diǎn),可能需要一個(gè)復(fù)雜的方法來(lái)達(dá)到良好的結(jié)果。然而,我們展示了一個(gè)令人驚訝的簡(jiǎn)單、靈活和快速的系統(tǒng)可以超越以前最先進(jìn)的實(shí)例分割結(jié)果。
我們的方法,calledMask R-CNN,擴(kuò)展了更快的 R-CNN 36,在每個(gè)感興趣的區(qū)域 (RoI) 增加了一個(gè)預(yù)測(cè)分割掩碼的分支,與現(xiàn)有的分支并行進(jìn)行分類(lèi)和邊界框回歸(圖 1)。掩模分支是應(yīng)用于每個(gè) RoI 的小型 FCN,以像素-頂點(diǎn)的方式預(yù)測(cè)分割掩模。掩碼 R-CNN 的實(shí)現(xiàn)和訓(xùn)練非常簡(jiǎn)單,因?yàn)?R-CNN 框架更快,這促進(jìn)了各種靈活的架構(gòu)設(shè)計(jì)。此外,掩模分支只增加了很小的計(jì)算開(kāi)銷(xiāo),從而實(shí)現(xiàn)了快速系統(tǒng)和快速實(shí)驗(yàn)。
class box 原則上掩碼 R-CNN 是更快的 R-CNN 的直觀(guān)擴(kuò)展,但是正確地構(gòu)造掩碼分支對(duì)于獲得好的結(jié)果至關(guān)重要。最重要的是,Faster RCNN 不是為網(wǎng)絡(luò)輸入和輸出之間的像素對(duì)齊而設(shè)計(jì)的。這一點(diǎn)在 RoIPool 18、12(處理實(shí)例的實(shí)際核心操作)如何執(zhí)行粗略空間量化以提取特征時(shí)最為明顯。為了修復(fù)失配,我們提出了一個(gè)簡(jiǎn)單的、無(wú)量化的層,稱(chēng)為 RoIAlign,它忠實(shí)地保留了準(zhǔn)確的空間位置。除了一個(gè)看似微不足道的變化,RoIAlign 有很大的影響:它提高了相對(duì) 10 到 50 的蒙版精度,在更嚴(yán)格的本地化指標(biāo)下顯示出更大的收益。第二,我們發(fā)現(xiàn)必須解耦掩模和類(lèi)別預(yù)測(cè):我們獨(dú)立地預(yù)測(cè)每個(gè)類(lèi)別的二進(jìn)制掩模,沒(méi)有類(lèi)別之間的競(jìng)爭(zhēng),并依靠網(wǎng)絡(luò)的 RoI 分類(lèi)分支來(lái)預(yù)測(cè)類(lèi)別。相反,FCN 通常采用基于像素的多類(lèi)分類(lèi)方法,這種方法將分割和分類(lèi)結(jié)合在一起,并且基于實(shí)驗(yàn)的實(shí)例分割效果不佳。
沒(méi)有鈴聲和口哨,蒙版 R-CNN 在 COCO 實(shí)例分割任務(wù) 28 上超越了之前所有最先進(jìn)的單模結(jié)果,包括來(lái)自 2016 年競(jìng)賽獲勝者的繁重工程參賽作品。作為一個(gè)副產(chǎn)品,我們的方法也優(yōu)于可可物體的檢測(cè)任務(wù)。在消融實(shí)驗(yàn)中,我們?cè)u(píng)估了多個(gè)基本實(shí)例,這允許我們證明其穩(wěn)健性并分析核心因素的影響。
我們的模型可以在 GPU 上以每幀約 200 ms 的速度運(yùn)行,而在一臺(tái) 8-GPU 機(jī)上進(jìn)行可可訓(xùn)練需要一到兩天的時(shí)間。我們相信,快速的訓(xùn)練和測(cè)試速度,加上框架的靈活性和準(zhǔn)確性,將有利于并便于今后對(duì)實(shí)例分割的研究。
最后,通過(guò)對(duì) COCO keypoint 數(shù)據(jù)集 28 上的人體姿態(tài)估計(jì)任務(wù),展示了我們框架的通用性。通過(guò)將每個(gè) keypoint 視為一個(gè)一熱的二進(jìn)制掩碼,使用最小修改掩碼 R-CNN 可以應(yīng)用于檢測(cè)特定于實(shí)例的姿勢(shì)。Mask R-CNN 超過(guò)了 2016 年 COCO keypoint 競(jìng)賽的獲勝者,同時(shí)以 5 fps 的速度運(yùn)行。蒙版 R-CNN,因此,可以看作是一個(gè)靈活的框架更廣泛的實(shí)例級(jí)識(shí)別,并可以很容易地?cái)U(kuò)展到更復(fù)雜的任務(wù)。
我們已經(jīng)發(fā)布了代碼來(lái)促進(jìn)未來(lái)的研究。
另一族解決方案 23、4、3、29 實(shí)例分割是由語(yǔ)義分割的成功驅(qū)動(dòng)的。從每個(gè)像素的分類(lèi)結(jié)果(例如,FCN 輸出)開(kāi)始,這些方法嘗試將相同類(lèi)別的像素切割成不同的實(shí)例。與這些方法的分割優(yōu)先策略相比,蒙版 R-CNN 是基于實(shí)例優(yōu)先的策略。我們預(yù)計(jì),今后將進(jìn)一步研究這兩種戰(zhàn)略的結(jié)合。
2. 相關(guān)工作
R-CNN:基于區(qū)域的 CNN (R-CNN) 方法 13 用于邊界框?qū)ο髾z測(cè),即關(guān)注數(shù)量可控的候選對(duì)象區(qū)域 42、20,并在每個(gè) RoI 上單獨(dú)評(píng)估卷積網(wǎng)絡(luò) 25、24。R-CNN 被擴(kuò)展了 18,12,允許使用 RoIPool 在特征映射上關(guān)注 RoI,導(dǎo)致快速和更好的準(zhǔn)確性。Faster R-CNN 36 通過(guò)區(qū)域提議網(wǎng)絡(luò) (RPN) 學(xué)習(xí)注意機(jī)制推進(jìn)了這一流程。Faster R-CNN 對(duì)許多后續(xù)改進(jìn)(例如 38、27、21)具有靈活性和穩(wěn)健性,是當(dāng)前幾個(gè)基準(zhǔn)中的主導(dǎo)框架。
實(shí)例分割:受 RCNN 有效性的驅(qū)動(dòng),許多實(shí)例分割方法都是基于分割建議的。早期的方法 13、15、16、9 采用自下而上的分段 42、2。DeepMask 33 和后續(xù)作品 34、8 學(xué)習(xí)提出分段候選,然后通過(guò)快速 R-CNN 進(jìn)行分類(lèi)。在這些方法中,分割先于識(shí)別,識(shí)別速度慢且精度低。同樣,Dai 等人10 提出了一個(gè)復(fù)雜的多階段級(jí)聯(lián),從邊界框提案中預(yù)測(cè)分段提案,然后進(jìn)行分類(lèi)。相反,我們的方法是基于掩碼和類(lèi)標(biāo)簽的并行預(yù)測(cè),它更簡(jiǎn)單、更靈活。
最近,Li 等人其中 26 篇將 8 篇中的片段建議系統(tǒng)和 11 篇中的目標(biāo)檢測(cè)系統(tǒng)結(jié)合在一起進(jìn)行全卷積實(shí)例分割 (FCIS)。在 8,11,26 的共同想法是預(yù)測(cè)一套位置敏感輸出通道完全卷積。這些通道同時(shí)處理對(duì)象類(lèi)、框和掩碼,使系統(tǒng)變得快速。但是,FCIS 在重疊實(shí)例上顯示系統(tǒng)誤差,并產(chǎn)生虛假邊緣(圖 6),表明它受到實(shí)例分割的基本困難的挑戰(zhàn)。
另一族解決方案 23、4、3、29 實(shí)例分割是由語(yǔ)義分割的成功驅(qū)動(dòng)的。從每個(gè)像素的分類(lèi)結(jié)果(例如,FCN 輸出)開(kāi)始,這些方法嘗試將相同類(lèi)別的像素切割成不同的實(shí)例。與這些方法的分割優(yōu)先策略相比,蒙版 R-CNN 是基于實(shí)例優(yōu)先的策略。我們預(yù)計(jì),今后將進(jìn)一步研究這兩種戰(zhàn)略的結(jié)合。
3. Mask R-CNN
Mask R-CNN 在概念上很簡(jiǎn)單:更快的 R-CNN 為每個(gè)候選對(duì)象有兩個(gè)輸出,一個(gè)類(lèi)標(biāo)簽和一個(gè)邊界框偏移量;為此,我們添加了第三個(gè)分支來(lái)輸出對(duì)象掩碼。mask R-CNN 因此是一個(gè)自然和直觀(guān)的想法。但是,額外的掩碼輸出不同于類(lèi)和框輸出,需要提取對(duì)象的更精細(xì)的空間布局。接下來(lái),我們介紹了掩模 R-CNN 的關(guān)鍵元素,包括像素對(duì)像素對(duì)齊,這是快速快速 R-CNN 的主要缺失部分。
Faster R-CNN:我們首先簡(jiǎn)單回顧一下更快速的 R-CNN 探測(cè)器 36。Faster R-CNN 由兩個(gè)階段組成。第一階段,稱(chēng)為區(qū)域建議書(shū)網(wǎng)絡(luò) (RPN),提出候選對(duì)象邊界框。第二階段,本質(zhì)上是快速的 R-CNN 12,使用 RoIPool 從每個(gè)候選框中提取特征,并進(jìn)行分類(lèi)和邊界框回歸。兩個(gè)階段使用的特性可以共享,以實(shí)現(xiàn)更快的推理。我們推薦讀者 21 日最新的比較,綜合比較快速的 R-CNN 和其他框架。
mask? R-CNN:掩模 R-CNN 采用相同的兩階段程序,具有相同的第一階段(即 RPN)。在第二階段,在預(yù)測(cè)類(lèi)和框偏移量的同時(shí),掩碼 R-CNN 還為每個(gè) RoI 輸出一個(gè)二進(jìn)制掩碼。這與大多數(shù)最新系統(tǒng)相反,后者的分類(lèi)取決于面罩預(yù)測(cè)(例如 33、10、26)。我們的方法遵循了快速的 R-CNN 12 的精神,它將邊界盒分類(lèi)和回歸并行應(yīng)用(結(jié)果大大簡(jiǎn)化了原始 R-CNN 13 的多級(jí)流水線(xiàn))
形式上,在訓(xùn)練過(guò)程中,我們將每個(gè)采樣 RoI 上的多任務(wù)丟失定義為。分類(lèi)損失 Lcl 和邊界箱損失 Lbox 與 12 中定義的相同。掩碼分支對(duì)每個(gè) RoI 有一個(gè) k m2 維輸出,它對(duì)分辨率為 m X m 的 K 個(gè)二進(jìn)制掩碼進(jìn)行編碼,每個(gè) K 個(gè)類(lèi)別一個(gè)。對(duì)此,我們采用了每像素 s 字形,并將 Lmask 定義為平均二進(jìn)制交叉熵?fù)p失。對(duì)于與地面實(shí)況 k 類(lèi)相關(guān)的 RoI,Lmask 僅在第 k 個(gè)掩碼上定義(其他掩碼輸出不會(huì)造成損失)。
我們的 Lmask 定義允許網(wǎng)絡(luò)為每個(gè)類(lèi)生成掩碼,而不需要類(lèi)之間的競(jìng)爭(zhēng);我們依賴(lài)專(zhuān)用的分類(lèi)分支來(lái)預(yù)測(cè)用于選擇輸出掩碼的類(lèi)標(biāo)簽。這就去耦了掩碼和類(lèi)預(yù)測(cè)。這與將 FCNs 30 應(yīng)用于語(yǔ)義分割時(shí)的常規(guī)做法不同,語(yǔ)義分割通常使用每個(gè)像素的 softmax 和多項(xiàng)交叉熵?fù)p失。在這種情況下,類(lèi)之間的掩碼是相互競(jìng)爭(zhēng)的;在我們的情況下,每個(gè)像素的 sigmoid 和二進(jìn)制丟失都是如此。實(shí)驗(yàn)表明,該公式是取得良好分割效果的關(guān)鍵。
掩碼表示:掩碼編碼輸入對(duì)象的空間布局。因此,與類(lèi)標(biāo)簽或箱偏移不可避免地被完全連接 (fc) 層折疊成短輸出向量不同,提取掩模的空間結(jié)構(gòu)可以通過(guò)卷積提供的像素間對(duì)應(yīng)自然解決。
體來(lái)說(shuō),我們使用 FCN 30 預(yù)測(cè)每個(gè) RoI 的 m m 蒙版。這允許掩碼分支中的每一層維護(hù)顯式 m m 對(duì)象空間布局,而不會(huì)將其折疊成缺少空間維度的向量表示。不像以前的方法,求助于 fc 層的掩模預(yù)測(cè) 33,34,10,我們的完全卷積表示需要更少的參數(shù),是更準(zhǔn)確的實(shí)驗(yàn)證明。
這種像素對(duì)像素的行為要求我們的 RoI 特征(RoI 特征本身就是小的特征圖)很好地對(duì)齊,以忠實(shí)地保留顯式的每像素空間對(duì)應(yīng)關(guān)系。這促使我們開(kāi)發(fā)了以下 RoIAlign 層,它在蒙版預(yù)測(cè)中起關(guān)鍵作用。
RoIAlign:RoIPool 12 是從每個(gè) RoI 提取小特征圖(例如,7 7)的標(biāo)準(zhǔn)操作。RoIPool 首先將一個(gè)固定數(shù)量的 RoI 量化為特征映射的離散粒度,然后將這個(gè)量化的 RoI 細(xì)分為空間二進(jìn)制,這些空間二進(jìn)制本身經(jīng)過(guò)量化,最后將每個(gè)二進(jìn)制所覆蓋的特征值聚合(通常由 max pooling 實(shí)現(xiàn))。通過(guò)計(jì)算 x 16,在連續(xù)坐標(biāo) x 上執(zhí)行量化,其中 16 是特征映射步幅,并且是四舍五入;同樣地,在劃分到 bins(例如,7 7)時(shí)執(zhí)行量化。這些量化在 RoI 和提取的特征之間引入錯(cuò)位。雖然這可能不會(huì)影響對(duì)小型翻譯具有穩(wěn)健性的分類(lèi),但它對(duì)預(yù)測(cè)像素準(zhǔn)確的蒙版有很大的負(fù)面影響。
為了解決這個(gè)問(wèn)題,我們提出了一個(gè) RoIAlign 層,它消除了 RoIPool 的苛刻量化,將提取的特征與輸入正確地對(duì)齊。我們建議的變更很簡(jiǎn)單:我們避免 RoI 邊界的任何量化.
或箱(即,我們使用 x 16 而不是 x 16)。我們使用雙線(xiàn)性插值 22 計(jì)算每個(gè) RoI bin 中四個(gè)規(guī)則采樣位置的輸入特征的精確值,并匯總結(jié)果(使用最大值或平均值),詳見(jiàn)圖 3。我們注意到,只要不進(jìn)行量化,結(jié)果對(duì)準(zhǔn)確的采樣位置或采樣點(diǎn)的數(shù)量并不敏感。
RoIAlign 導(dǎo)致很大的改進(jìn),如我們?cè)?x4.2 中所示。與 RoIAlign 不同的是,RoIWarp 忽略了對(duì)齊問(wèn)題,并像 RoIPool 一樣在 10 中實(shí)現(xiàn)了 RoI 的量化。因此,即使 RoIWarp 也采用了由 22 驅(qū)動(dòng)的雙線(xiàn)性重采樣,但其性能與 RoIPool 相同,如實(shí)驗(yàn)所示(更多詳情見(jiàn)表 2c),證明了對(duì)準(zhǔn)的關(guān)鍵作用。
網(wǎng)絡(luò)體系結(jié)構(gòu):為了展示我們的方法的通用性,我們用多個(gè)體系結(jié)構(gòu)實(shí)例化了掩碼 R-CNN。為了清楚起見(jiàn),我們區(qū)分了:(i) 用于整個(gè)圖像特征提取的卷積骨干架構(gòu),和 (ii) 分別應(yīng)用于每個(gè) RoI 的邊界框識(shí)別(分類(lèi)和回歸)和掩碼預(yù)測(cè)的網(wǎng)絡(luò)頭。
我們使用命名法 network-depth-features 表示骨干架構(gòu)。我們?cè)u(píng)估 ResNet 19 和 ResNeXt 45 深度為 50 或 101 層的網(wǎng)絡(luò)。快速 R-CNN 的最初的實(shí)現(xiàn)與 ResNets 19 從第四階段的最后的卷積層提取了特征,這我們叫 C4例如,帶有 ResNet-50 的主干用 ResNet-50-C4 表示。這是 19、10、21、39 中常用的選擇。
我們還探索了 Lin 等人最近提出的另一個(gè)更有效的骨干。27,稱(chēng)為特征金字塔網(wǎng)絡(luò) (FPN)。FPN 使用一個(gè)帶有橫向連接的自上而下的體系結(jié)構(gòu),從單尺度輸入構(gòu)建一個(gè)網(wǎng)絡(luò)內(nèi)特征金字塔。具有 FPN 主干的快速 R-CNN 根據(jù)其規(guī)模從特征金字塔的不同層次提取 RoI 特征,但其他方法類(lèi)似于 vanilla ResNet。使用 ResNet-FPN 主干進(jìn)行掩碼 RCNN 特征提取,在精度和速度上都有很好的提高。關(guān)于 FPN 的更多詳細(xì)信息,我們請(qǐng)讀者參考 27。
對(duì)于網(wǎng)絡(luò)頭,我們嚴(yán)格遵循在以前的工作中提出的架構(gòu),我們?cè)黾恿艘粋€(gè)完全卷積掩碼預(yù)測(cè)分支。具體來(lái)說(shuō),我們從 ResNet 19 和 FPN 27 論文擴(kuò)展了更快的 R-CNN 機(jī)箱頭。細(xì)節(jié)如圖 4 所示,ResNet-C4 主干上的頭部包括 ResNet 的第 5 級(jí)(即 9 層 res5 19),計(jì)算密集。對(duì)于 FPN,主干已經(jīng)包括 res5,因此允許使用更少過(guò)濾器的更有效的封頭。
我們注意到我們的掩模分支有一個(gè)簡(jiǎn)單的結(jié)構(gòu)。更復(fù)雜的設(shè)計(jì)有可能證明性能,但不是這項(xiàng)工作的重點(diǎn)。
?
圖 4. Head 體系結(jié)構(gòu):我們擴(kuò)展了兩個(gè)現(xiàn)有的 Faster RCNN 頭 19,27。左-右面板顯示 ResNet C4 和 FPN 骨干的頭部,分別來(lái)自 19 和 27,其中添加了掩碼分支。數(shù)字表示空間分辨率和通道。箭頭表示 conv、deconv 或 fc 層,可從上下文推斷(conv 保留空間維度,而 deconv 增加空間維度)。所有的 conv 為 3 3,除了輸出 conv 為 1 1,反 conv 為 2 2,步幅為 2,我們?cè)陔[藏層中使用 ReLU 31。左:res5 表示 ResNet s 第五級(jí),為了簡(jiǎn)單起見(jiàn),我們修改了第一個(gè) conv,使其在一個(gè) 7 7 的 RoI 上運(yùn)行,步幅為 1(而不是 19 中的 14 14 步幅 2)。右:4 表示 4 個(gè)連續(xù) conv 的堆棧。
3.1. 實(shí)施細(xì)節(jié)
我們?cè)O(shè)置超參數(shù)遵循現(xiàn)有的快速 R-CNN 工作 12,36,27。雖然這些決策是在原始論文 12,36,27 中做出的,但我們發(fā)現(xiàn)我們的實(shí)例分割系統(tǒng)對(duì)它們是強(qiáng)健的。
培訓(xùn):與快速 R-CNN 一樣,如果 RoI 具有 IoU,且地面實(shí)況框至少為 0.5,則認(rèn)為 RoI 為陽(yáng)性,否則為陰性。僅在陽(yáng)性 RoI 上定義掩碼損耗 Lmask。掩模目標(biāo)是 RoI 與其相關(guān)地面實(shí)況掩模之間的交叉點(diǎn)。
我們采用以圖像為中心的培訓(xùn) 12。調(diào)整圖像大小,使其比例(較短邊緣)為 800 像素 27。每個(gè)小批處理每個(gè) GPU 有 2 幅圖像,每幅圖像有 N 個(gè)采樣 RoI,正負(fù)比例為 1:3 12。N 對(duì)于 C4 主干為 64(如 12、36),對(duì)于 FPN 為 512(如 27)。我們?cè)?8 個(gè) GPU(所以有效的小批處理大小為 16)上訓(xùn)練 160k 迭代,學(xué)習(xí)率為 0.02,在 120k 迭代時(shí)降低了 10。我們使用的權(quán)重衰減為 0.0001,動(dòng)量為 0.9。使用 ResNeXt 45,我們使用每個(gè) GPU 的 1 個(gè)圖像和相同次數(shù)的迭代進(jìn)行訓(xùn)練,起始學(xué)習(xí)率為 0.01。
RPN 錨釘跨越 5 個(gè)刻度和 3 個(gè)縱橫比,符合 27。為了便于消融,RPN 經(jīng)過(guò)單獨(dú)培訓(xùn),除非另有說(shuō)明,否則不與面罩 R-CNN 共享功能。對(duì)于本文中的每個(gè)條目,RPN 和掩碼 R-CNN 具有相同的骨干,因此它們是可共享的。
推理:在測(cè)試時(shí),C4 主干(如在 36 中)的建議編號(hào)為 300,FPN(如在 27 中)的建議編號(hào)為 1000。我們對(duì)這些建議運(yùn)行 box prediction 分支,然后運(yùn)行非最大抑制 14。然后將掩碼分支應(yīng)用于得分最高的 100 個(gè)檢測(cè)框。雖然這與訓(xùn)練中使用的并行計(jì)算不同,但它加快了推斷并提高了準(zhǔn)確性(由于使用了更少、更準(zhǔn)確的 RoI)。
掩碼分支:可以預(yù)測(cè)每個(gè) RoI 的 k-th 掩碼,但我們只使用 k-th mask,其中 k 是由分類(lèi)分支預(yù)測(cè)的類(lèi)。然后將 m m 浮動(dòng)數(shù)字掩碼輸出調(diào)整為 RoI 大小,并在閾值為 0.5 時(shí)進(jìn)行二值化。
請(qǐng)注意,由于我們只計(jì)算前 100 個(gè)檢測(cè)框上的掩碼,因此掩碼 R-CNN 在其更快的 R-CNN 對(duì)應(yīng)項(xiàng)上增加了一個(gè)小開(kāi)銷(xiāo)(例如,典型模型上為 20 個(gè))。
圖 5. 使用 ResNet-101-FPN 并在 5 fps 和 35.7 Mask AP 條件下運(yùn)行的 COCO 測(cè)試圖像上的掩模 R-CNN 的更多結(jié)果(表 1)。
表 1. COCO test-dev 上的實(shí)例分割掩碼 AP。MNC 10 和 FCIS 26 分別是 COCO 2015 和 2016 細(xì)分市場(chǎng)挑戰(zhàn)的贏(yíng)家。沒(méi)有鈴聲和口哨,蒙版 R-CNN 勝過(guò)更復(fù)雜的 FCI,包括多尺度訓(xùn)練測(cè)試,水平 fiip 測(cè)試和 OHEM 38。所有條目均為單模型結(jié)果。
?
4. 實(shí)驗(yàn):實(shí)例分割?
我們對(duì)面罩 R-CNN 與最新技術(shù)水平以及 COCO 數(shù)據(jù)集 28 上的全面消融進(jìn)行了全面比較。我們報(bào)告了標(biāo)準(zhǔn)的 COCO 指標(biāo),包括 AP(IoU 閾值的平均值)、AP50、AP75 和 APS、APM、APL(不同尺度的 AP)。除非另有說(shuō)明,否則 AP 將使用面罩 IoU 進(jìn)行評(píng)估。與之前的工作 5、27 一樣,我們使用 80k 訓(xùn)練圖像和 35k 子集的 val 圖像 (trainval35k) 聯(lián)合進(jìn)行訓(xùn)練,并報(bào)告剩余 5k val 圖像 (minival) 的消融。我們還報(bào)告了 test-dev 28 的結(jié)果。
4.1. 主要結(jié)果
我們?cè)诒?1 的實(shí)例分割中比較了蒙版 R-CNN 和最先進(jìn)的方法。我們模型的所有實(shí)例化的性能均優(yōu)于以前最先進(jìn)模型的基線(xiàn)變體。這包括 MNC 10 和 FCIS 26,分別是 COCO 2015 和 2016 細(xì)分市場(chǎng)挑戰(zhàn)的贏(yíng)家。沒(méi)有鈴聲和哨聲,蒙版 R-CNN 與 ResNet-101-FPN 骨干優(yōu)于 FCIS 26,FCIS 26 包括多尺度訓(xùn)練測(cè)試,水平 fiip 測(cè)試,和在線(xiàn)硬實(shí)例挖掘 (OHEM) 38。雖然不在這項(xiàng)工作的范圍內(nèi),但我們預(yù)期許多這樣的改進(jìn)將適用于我們的工作。
掩模 R-CNN 輸出如圖 2 和 5 所示,掩模 R-CNN 即使在挑戰(zhàn)性條件下也能獲得良好的結(jié)果。在圖 6 中,我們比較了我們的掩碼 R-CNN 基線(xiàn)和 FCIS 26。FCIS 在重疊實(shí)例上表現(xiàn)出系統(tǒng)偽影,表明它受到實(shí)例分割的基本困難的挑戰(zhàn)。掩模 R-CNN 顯示沒(méi)有此類(lèi)偽影。
圖 6. FCIS 26(上)與面罩 R-CNN(下,ResNet-101-FPN)。FCIS 在重疊物體上顯示系統(tǒng)偽影。
? ? ? ? ? ? ?(a)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (b)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (c)
(a) 骨干架構(gòu):更好的骨干帶來(lái)?預(yù)期收益:更深的網(wǎng)絡(luò)做得更好,FPN 優(yōu)于 C4 特性,ResNeXt 對(duì) ResNet 進(jìn)行了改進(jìn)。
(b) 多項(xiàng)式與獨(dú)立掩模 (ResNet-50-C4):通過(guò)類(lèi)間二進(jìn)制掩模(s 形)去耦得到的增益大于多項(xiàng)式掩模 (softmax)。
(c) RoIAlign (ResNet-50-C4):用各種 RoI 層屏蔽結(jié)果。我們的 RoIAlign 層將 AP 提高 3 分,將 AP75 提高 5 分。使用適當(dāng)?shù)膶?duì)齊是造成 RoI 層之間存在較大差異的唯一因素。
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? (d)? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?(e)
(d) RoIAlign (ResNet-50-C5,stride 32):使用大跨度特性的掩模級(jí)和箱級(jí) AP。錯(cuò)位比 stride-16 功能更嚴(yán)重(表 2c),導(dǎo)致較大的精度差距。?
(e) 掩模分支 (ResNet-50-FPN):全卷積網(wǎng)絡(luò) (FCN) 與多層感知器(MLP,全連接),用于掩模預(yù)測(cè)。FCNs 利用顯式編碼空間布局來(lái)改善結(jié)果。
表 2. 消融。我們對(duì) trainval35k、minival 和報(bào)告掩碼 AP 進(jìn)行培訓(xùn),除非另有說(shuō)明。
4.2. 消融實(shí)驗(yàn)
我們運(yùn)行了一些消融來(lái)分析蒙版 R-CNN。結(jié)果見(jiàn)表 2,詳細(xì)討論如下。
體系結(jié)構(gòu):表 2a 所示為具有各種骨干的 R-CNN。它得益于更深的網(wǎng)絡(luò)(50 比 101)和先進(jìn)的設(shè)計(jì),包括 FPN 和 ResNeXt。我們注意到,并非所有框架都能自動(dòng)從更深或更高級(jí)的網(wǎng)絡(luò)中受益(見(jiàn) 21 中的基準(zhǔn))。
Multinomial vs. Independent maskes:Mask R-CNN 解耦 Mask 和類(lèi)預(yù)測(cè):由于現(xiàn)有的 box 分支預(yù)測(cè)了類(lèi)標(biāo)簽,我們?yōu)槊總€(gè)類(lèi)生成一個(gè) Mask,沒(méi)有類(lèi)之間的競(jìng)爭(zhēng)(通過(guò)每個(gè)像素的 sigmoid 和二進(jìn)制損失)。在表 2b 中,我們將其與使用每個(gè)像素的 softmax 和多項(xiàng)損失(如 FCN 30 中常用的)進(jìn)行比較。這種替代方法耦合了掩碼和類(lèi)別預(yù)測(cè)的任務(wù),并導(dǎo)致掩碼 AP 嚴(yán)重丟失(5.5 分)。這表明,一旦實(shí)例被分類(lèi)為一個(gè)整體(通過(guò) box 分支),就足以預(yù)測(cè)二進(jìn)制掩碼,而不需要考慮類(lèi)別,這使得模型更容易訓(xùn)練。
類(lèi)特定的與類(lèi)無(wú)關(guān)的掩碼:我們默認(rèn)的實(shí)例化預(yù)測(cè)類(lèi)特定的掩碼,即一個(gè) mXm每個(gè)類(lèi)的掩碼。有趣的是,帶有類(lèi)化不可知掩碼的掩碼 R-CNN(即,不管類(lèi)別如何預(yù)測(cè)單個(gè) m m 輸出)幾乎同樣有效:它具有 29.7 個(gè)掩碼 AP,而 ResNet-50-C4 上的類(lèi)特定對(duì)應(yīng)對(duì)象具有 30.3 個(gè)掩碼 AP。這進(jìn)一步突出了我們方法中的分工,這在很大程度上解耦了分類(lèi)和細(xì)分。
RoIAlign:擬定 RoIAlign 層的評(píng)價(jià)見(jiàn)表 2c。對(duì)于這個(gè)實(shí)驗(yàn),我們使用 ResNet50-C4 主干,它有 stride 16。RoIAlign 比 RoIPool 提高 AP 約 3 個(gè)點(diǎn),大部分收益來(lái)自高 IoU (AP75)。RoIAlign 對(duì)最大平均池不敏感;我們?cè)谡撐牡钠溆嗖糠种惺褂闷骄?/p>
并與 MNC 10 中提出的采用雙線(xiàn)性抽樣的 RoIWarp 算法進(jìn)行了比較。正如在 x3 中所討論的,RoIWarp 仍然量化 RoI,與輸入不一致。如表 2c 所示,RoIWarp 的性能與 RoIPool 相當(dāng),但比 RoIAlign 差很多。這突出表明正確對(duì)準(zhǔn)是關(guān)鍵。
我們還評(píng)價(jià)了 RoIAlign 與 ResNet-50-C5 主干,其具有更大的 32 像素步幅。我們使用了與圖 4(右)相同的頭部,因?yàn)?res5 頭部不適用。表 2d 顯示 RoIAlign 使面罩 AP 提高 7.3 分,使面罩 AP75 提高 10.5 分,50 相對(duì)改善)。此外,我們注意到,在使用 RoIAlign 時(shí),使用 stride-32 C5 功能 (30.9 AP) 比使用 stride-16 C4 功能更準(zhǔn)確(30.3 AP,表 2c)。RoIAlign 在很大程度上解決了使用大步長(zhǎng)特征進(jìn)行檢測(cè)和分割的長(zhǎng)期挑戰(zhàn)。
? ? ? ? ? ? ? ?
表 3. 對(duì)象檢測(cè)單模型結(jié)果(邊界框 AP),與最先進(jìn)的 test-dev。使用 ResNet-101FPN 的掩碼 R-CNN 優(yōu)于所有先前最先進(jìn)型號(hào)的基本變體(掩碼輸出在這些實(shí)驗(yàn)中被忽略)。使用 RoIAlign (1.1 APbb)、多任務(wù)訓(xùn)練 (0.9 APbb) 和 ResNeXt-101 (1.6 APbb) 獲得的面罩 R-CNN 超過(guò) 27。
最后,RoIAlign 顯示與 FPN 配合使用時(shí)的增益為 1.5 mask AP 和 0.5 box AP,后者具有更精細(xì)的多級(jí)步幅。對(duì)于要求更精確對(duì)準(zhǔn)的 keypoint 檢測(cè),即使使用 FPN,RoIAlign 也顯示較大的增益(表 6)。
Mask Branch:Segmentation 是一個(gè)像素對(duì)像素的任務(wù),我們使用 FCN 開(kāi)發(fā) Mask 的空間布局。在表 2e 中,我們使用 ResNet-50-FPN 主干比較了多層感知器 (MLP) 和 FCNs。使用 FCNs 產(chǎn)生 2.1 掩模 AP 增益超過(guò) MLPs。我們注意到,為了與 MLP 進(jìn)行公平比較,我們選擇這種骨干,以便 FCN 頭的 conv 層沒(méi)有預(yù)先培訓(xùn)。
4.3. 包圍盒檢測(cè)結(jié)果
我們將蒙版 R-CNN 與表 3 中最先進(jìn)的 COCO 邊界框?qū)ο髾z測(cè)進(jìn)行了比較。對(duì)于這個(gè)結(jié)果,即使完整的蒙版 R-CNN 模型經(jīng)過(guò)了訓(xùn)練,在推斷時(shí)也只使用了分類(lèi)和框輸出(蒙版輸出被忽略)。使用 ResNet-101FPN 的掩碼 R-CNN 的性能優(yōu)于之前所有最先進(jìn)型號(hào)的基本變體,包括 GRMI 21 的單型號(hào)變體,GRMI 21 是 COCO 2016 Detection Challenge 的獲勝者。使用 ResNeXt-101-FPN,掩碼 R-CNN 進(jìn)一步改善了結(jié)果,與從 39(使用 Inception-ResNet-v2-TDM)的最好的以前的單個(gè)模型條目的相比,有 3.0 點(diǎn)的邊際框 AP。
作為進(jìn)一步的比較,我們訓(xùn)練了一個(gè)版本的掩碼 R-CNN,但是沒(méi)有掩碼分支,用更快的 R-CNN 表示,RoIAlign 在表 3 中。另一方面,它是 0.9 點(diǎn)方塊 AP 低于蒙版 R-CNN。蒙片 R-CNN 在盒子察覺(jué)上的這差距因此僅僅由于多任務(wù)訓(xùn)練的好處。
最后,我們注意到,面罩 R-CNN 在其面罩和包裝盒 AP 之間獲得了一個(gè)小間隙:例如,在 37.1(面罩,表 1)和 39.8(包裝盒,表 3)之間獲得了 2.7 分。這表明我們的方法在很大程度上縮小了目標(biāo)檢測(cè)和更具挑戰(zhàn)性的實(shí)例分割任務(wù)之間的差距。
4.4. 定時(shí)
推理:我們訓(xùn)練了一個(gè) ResNet-101-FPN 模型,它在 RPN 和掩碼 R-CNN 階段之間共享特征,遵循 Faster R-CNN 36 的 4 步訓(xùn)練。該模型在 Nvidia TeslaM40 GPU 上以每幅圖像 195 ms 的速度運(yùn)行(加上 15 ms 的 CPU 時(shí)間,將輸出大小調(diào)整為原始分辨率),并在統(tǒng)計(jì)學(xué)上獲得與非共享掩碼 AP 相同的掩碼 AP。我們還報(bào)告,ResNet-101-C4 變體需要 400 ms,因?yàn)樗幸粋€(gè)較重的箱頭(圖 4),所以我們不建議在實(shí)踐中使用 C4 變體。雖然蒙版 R-CNN 很快,我們注意到我們的設(shè)計(jì)沒(méi)有優(yōu)化速度,更好的速度精度折衷可以達(dá)到 21,例如通過(guò)不同的圖像大小和建議數(shù)字,這超出了本文的范圍。
培訓(xùn):面罩 R-CNN 也是快速培訓(xùn)。在我們的同步 8-GPU 實(shí)現(xiàn)中,使用 ResNet-50-FPN 進(jìn)行 COCO trainval35k 培訓(xùn)需要 32 小時(shí)(每 16 個(gè)圖像小批處理 0.72s),使用 ResNet-101-FPN 需要 44 小時(shí)。事實(shí)上,在火車(chē)上訓(xùn)練時(shí),快速原型制作可以在不到一天的時(shí)間內(nèi)完成。我們希望這樣的快速培訓(xùn)將消除這一領(lǐng)域的一個(gè)主要障礙,并鼓勵(lì)更多的人對(duì)這一具有挑戰(zhàn)性的課題進(jìn)行研究。
5. 掩模 R-CNN 用于人體姿態(tài)估計(jì)
我們的框架可以很容易地?cái)U(kuò)展到人體姿態(tài)估計(jì)。我們將 keypoint s 位置建模為一個(gè)單熱掩模,并采用掩模 R-CNN 來(lái)預(yù)測(cè) K 個(gè)掩模,每個(gè) K 個(gè) keypoint 類(lèi)型(例如左肩、右肘)各一個(gè)。此任務(wù)有助于證明蒙版 R-CNN 的靈活性。
我們注意到,我們的系統(tǒng)利用了人類(lèi)位姿的最小領(lǐng)域知識(shí),因?yàn)閷?shí)驗(yàn)主要是為了證明掩模 R-CNN 框架的通用性。我們期望領(lǐng)域知識(shí)(例如,建模結(jié)構(gòu) 6)將與我們的簡(jiǎn)單方法互補(bǔ)。
實(shí)現(xiàn)細(xì)節(jié):當(dāng)針對(duì)關(guān)鍵點(diǎn)進(jìn)行調(diào)整時(shí),我們對(duì)分割系統(tǒng)進(jìn)行了一些小的修改。對(duì)于一個(gè)實(shí)例的每個(gè) K 關(guān)鍵點(diǎn),訓(xùn)練目標(biāo)是一個(gè)一熱的 m m 二進(jìn)制掩碼,其中只有一個(gè)像素被標(biāo)記為前景。在訓(xùn)練期間,對(duì)于每個(gè)可見(jiàn)的地面實(shí)況關(guān)鍵點(diǎn),我們最小化 m2-way softmax 輸出上的交叉熵?fù)p失(這鼓勵(lì)單點(diǎn)待測(cè))。我們注意到,在實(shí)例分割中,K 關(guān)鍵點(diǎn)仍然是獨(dú)立處理的。
表 4. Keypoint detection AP on COCO test-dev。我們的是一個(gè)單一型號(hào) (ResNet-50-FPN),運(yùn)行在 5 幀速率。CMU-Pose 6 是 2016 年競(jìng)賽獲獎(jiǎng)?wù)?#xff0c;采用多尺度測(cè)試,用 CPM 44 進(jìn)行后處理,用物件檢測(cè)器過(guò)濾,累計(jì)加 5 分(在個(gè)人溝通中澄清)。y:在 COCO plus MPII 1(25k 圖像)上對(duì) G-RMI 進(jìn)行了培訓(xùn),使用了兩種模型(用于邊界框檢測(cè)的 Inception-ResNet-v2 和用于關(guān)鍵點(diǎn)的 ResNet-101)。
表 5. 在 minival 上評(píng)價(jià)的關(guān)于人員類(lèi)別的 box、mask 和 keypoint 的多任務(wù)學(xué)習(xí)。所有條目均針對(duì)相同數(shù)據(jù)進(jìn)行培訓(xùn),以便進(jìn)行公平比較。主干是 ResNet50-FPN。minival 上 64.2 和 64.7 AP 的條目分別具有 62.7 和 63.1 的 test-dev AP(見(jiàn)表 4)。
表 6. minival 上 keypoint 檢測(cè)的 RoIAlign 與 RoIPool。主干是 ResNet-50-FPN。
我們采用了 ResNet-FPN 變體,keypoint 頭部架構(gòu)類(lèi)似于圖 4(右)。keypoint head 由 8 個(gè) 3 個(gè) 512-d conv 層堆棧組成,隨后是 deconv 層和 2 個(gè)雙線(xiàn)性放大,產(chǎn)生 56 56 的輸出分辨率。我們發(fā)現(xiàn),一個(gè)相對(duì)高分辨率的輸出(與掩碼相比)是必要的關(guān)鍵點(diǎn)水平的定位精度。
在包含注釋關(guān)鍵點(diǎn)的所有 COCO trainval35k 圖像上訓(xùn)練模型。為了減少過(guò)度擬合,由于這個(gè)訓(xùn)練集較小,我們使用從 640,800 像素中隨機(jī)抽樣的圖像尺度進(jìn)行訓(xùn)練;推斷是在 800 像素的單個(gè)尺度上。我們?yōu)?90k 迭代訓(xùn)練,從 0.02 的學(xué)習(xí)率開(kāi)始并且在 60k 和 80k 迭代減少它 10。我們使用閾值為 0.5 的邊界框 NMS,其他細(xì)節(jié)與 x3.1 相同。
主要結(jié)果和消融:我們?cè)u(píng)價(jià)了 person keypoint AP (APkp) 并使用 ResNet-50-FPN 骨干進(jìn)行了實(shí)驗(yàn);將在附錄中研究更多的骨干。表 4 顯示,我們的結(jié)果 (62.7 APkp) 比使用多級(jí)處理管道的 COCO 2016 keypoint detection winner 6 高 0.9 分(參見(jiàn)表 4 的標(biāo)題)。我們的方法相當(dāng)簡(jiǎn)單和快速。
更重要的是,我們有一個(gè)統(tǒng)一的模型,可以在 5 fps 條件下運(yùn)行時(shí),多次預(yù)測(cè)箱、段和關(guān)鍵點(diǎn)。添加一個(gè)段分支(針對(duì) person 類(lèi)別)將 test-dev 上的 APkp 提高到 63.1(表 4)。在表 5 中列出了在 minival 上進(jìn)行多任務(wù)學(xué)習(xí)的更多消融。將掩碼分支添加到僅 box(即,更快的 R-CNN)或僅 keypoint 版本可持續(xù)改善這些任務(wù)。然而,添加 keypoint 分支會(huì)略微減少 box mask AP,這表明雖然 keypoint 檢測(cè)從多任務(wù)訓(xùn)練中受益,但它不會(huì)反過(guò)來(lái)幫助其他任務(wù)。盡管如此,聯(lián)合學(xué)習(xí)這三個(gè)任務(wù),可以使統(tǒng)一的系統(tǒng)有效地同時(shí)預(yù)測(cè)所有的產(chǎn)出(圖 7)。
我們還研究了 RoIAlign 對(duì) keypoint 檢測(cè)的影響(表 6)。盡管 ResNet-50-FPN 主干具有更好的步幅(例如,在最好的級(jí)別上為 4 個(gè)像素),但與 RoIPool 相比,RoIAlign 仍然顯示出顯著的改進(jìn),并且 APkp 增加了 4.4 分。這是因?yàn)?keypoint 檢測(cè)對(duì)定位精度更敏感。這再次表明,對(duì)準(zhǔn)是必不可少的像素級(jí)定位,包括面具和關(guān)鍵點(diǎn)。
考慮到掩碼 R-CNN 在提取對(duì)象邊界框、掩碼和關(guān)鍵點(diǎn)方面的有效性,我們期望它能成為其他實(shí)例級(jí)任務(wù)的有效框架。
?表 7. Cityscapes val(AP val 列)和 test(其余列)集的結(jié)果。我們的方法使用 ResNet-50-FPN。
附錄 A:城市景觀(guān)實(shí)驗(yàn)
我們進(jìn)一步報(bào)告了 Cityscapes 7 數(shù)據(jù)集上的實(shí)例分割結(jié)果。該數(shù)據(jù)集包含 2975 個(gè)脈沖串、500 個(gè) val 和 1525 個(gè)測(cè)試圖像的精細(xì)注釋。它有 20k 粗訓(xùn)練圖像,沒(méi)有實(shí)例注釋,我們不使用。所有圖像均為 2048 1024 像素。實(shí)例分割任務(wù)涉及 8 個(gè)對(duì)象類(lèi)別,其在精細(xì)訓(xùn)練集中的實(shí)例數(shù)為:
通過(guò) COCO 式掩碼 AP(在 IoU 閾值上的平均值)測(cè)量此任務(wù)的實(shí)例分割性能;還報(bào)告了 AP50(即,IoU 為 0.5 時(shí)的掩碼 AP)。
實(shí)現(xiàn):我們應(yīng)用我們的掩碼 R-CNN 模型與 ResNet-FPN-50 主干;我們發(fā)現(xiàn) 101 層對(duì)應(yīng)執(zhí)行類(lèi)似由于小數(shù)據(jù)集大小。我們用從 800,1024 隨機(jī)抽取的圖像尺度(短邊)訓(xùn)練,這減少了過(guò)擬合;推理是在 1024 像素的單個(gè)尺度上。我們對(duì)每個(gè) GPU 使用一個(gè)小批處理大小為 1 的圖像(8 個(gè) GPU 上的 so 8),并為 24k 迭代訓(xùn)練模型,從 0.01 的學(xué)習(xí)率開(kāi)始,在 18k 迭代時(shí)減少到 0.001。在此設(shè)置下,需要在一臺(tái) 8-GPU 機(jī)上進(jìn)行 4 小時(shí)的訓(xùn)練。
結(jié)果:表 7 比較了我們的結(jié)果與確認(rèn)和測(cè)試集的最新技術(shù)水平。在不使用粗訓(xùn)練集的情況下,我們的方法達(dá)到了 26.2 的 AP on test,比以前的最佳入口 (DIN 3) 提高了 30 多個(gè),也優(yōu)于 SGN s 25.0 29 的并發(fā)工作。DIN 和 SGN 都使用精細(xì)的粗?jǐn)?shù)據(jù)。與僅使用精細(xì)數(shù)據(jù)的最佳條目 (17.4 AP) 相比,我們實(shí)現(xiàn)了 50 的改進(jìn)。
對(duì)于人和汽車(chē)類(lèi)別,Cityscapes 數(shù)據(jù)集展示了大量的類(lèi)別內(nèi)重疊實(shí)例(平均每個(gè)圖像 6 個(gè)人和 9 輛汽車(chē))。我們認(rèn)為類(lèi)別內(nèi)重疊是實(shí)例分割的一個(gè)核心難點(diǎn)。我們的方法在這二個(gè)種類(lèi)上比另外的最好的入口顯示出巨大的改進(jìn)(在人從 21.8~30.5 上的相對(duì) 40 改進(jìn)和在 car 上的 20 改進(jìn)從 39.4~46.9),即使我們的方法不開(kāi)發(fā)粗糙的數(shù)據(jù)。
城市數(shù)據(jù)集的一個(gè)主要挑戰(zhàn)是培訓(xùn)
低數(shù)據(jù)系統(tǒng)中的模型,特別是有關(guān)類(lèi)別的模型卡車(chē),巴士,和火車(chē),大約有200-500輛火車(chē)-每個(gè)樣品 。為了部分解決該問(wèn)題,我們進(jìn)一步報(bào)告了使用 COCO 預(yù)培訓(xùn)的結(jié)果。為此,我們從預(yù)先訓(xùn)練好的 COCO Mask R-CNN 模型(rider 被隨機(jī)初始化)中初始化了 Cityscapes 中相應(yīng)的 7 個(gè)類(lèi)別。我們微調(diào)了 4k 迭代中的這個(gè)模型,其中學(xué)習(xí)率在 3k 迭代中降低,在給定的 COCO 模型中,這需要 1 小時(shí)的訓(xùn)練。
圖 8. Cityscapes 測(cè)試的蒙版 R-CNN 結(jié)果 (32.0 AP)。右下角的圖像顯示了一個(gè)故障預(yù)測(cè)。
可可預(yù)先訓(xùn)練的蒙版 R-CNN 模型達(dá)到了 32.0 AP on test,幾乎比 fine-only 對(duì)應(yīng)物提高了 6 分。這表明了訓(xùn)練數(shù)據(jù)量所起的重要作用。這也表明,城市景觀(guān)上的方法可能會(huì)受到他們的低學(xué)習(xí)成績(jī)的影響。我們表明,使用可可預(yù)訓(xùn)練是一個(gè)有效的策略在這個(gè)數(shù)據(jù)集。
最后,我們觀(guān)察到 val 和測(cè)試 AP 之間存在偏倚,從 23、4、29 的結(jié)果中也觀(guān)察到了偏倚。我們發(fā)現(xiàn)這種偏差主要是由卡車(chē)、公共汽車(chē)和火車(chē)類(lèi)別引起的,fine-only 模型的 val 檢驗(yàn) AP 分別為 28.8 22.8、53.5 32.2 和 33.0 18.6。這表明,在這些類(lèi)別上存在域轉(zhuǎn)移,這些類(lèi)別也幾乎沒(méi)有訓(xùn)練數(shù)據(jù)。COCO 預(yù)培訓(xùn)有助于改善這些類(lèi)別的結(jié)果;然而,域偏移持續(xù),分別為 38.0 30.1、57.5 40.9 和 41.2 30.9 val test AP。請(qǐng)注意,對(duì)于人員和 car 類(lèi)別,我們未發(fā)現(xiàn)任何此類(lèi)偏倚(val 測(cè)試 AP 在 1 分以?xún)?nèi))。
Cityscapes 的示例結(jié)果如圖 8 所示。
表 8. COCO minival 上的面罩 R-CNN 的增強(qiáng)檢測(cè)結(jié)果。每一行向上面的行添加一個(gè)額外的組件。我們用 X 表示 ResNeXt 模型,以表示符號(hào)的簡(jiǎn)潔。
表 9. COCO minival 上面罩 R-CNN 的增強(qiáng) keypoint 結(jié)果。每一行向上面的行添加一個(gè)額外的組件。這里我們只使用 keypoint 注釋,而不使用 mask 注釋。為了簡(jiǎn)潔起見(jiàn),我們用 R 表示 ResNet,用 X 表示 ResNeXt。
附錄 B:COCO 的增強(qiáng)結(jié)果
作為一個(gè)通用框架,掩碼 R-CNN 與為檢測(cè)分割開(kāi)發(fā)的互補(bǔ)技術(shù)兼容,包括快速快速 R-CNN 和 FCNs 的改進(jìn)。在本附錄中,我們描述了改進(jìn)原始結(jié)果的一些技術(shù)。由于其通用性和靈活性,Mask R-CNN 在 COCO 2017 實(shí)例分割比賽中被 3 個(gè)獲獎(jiǎng)團(tuán)隊(duì)作為框架使用,這 3 個(gè)團(tuán)隊(duì)的表現(xiàn)都明顯優(yōu)于之前的最新技術(shù)水平。
實(shí)例分割和對(duì)象檢測(cè)
我們?cè)诒?8 中報(bào)告了蒙版 R-CNN 的一些增強(qiáng)結(jié)果。總體而言,改進(jìn)增加了蒙版 AP 5.1 分(從 36.7 增加到 41.8)和方框 AP 7.7 分(從 39.6 增加到 47.3)。每次模型改進(jìn)都一致地增加了掩碼 AP 和 box AP,顯示了掩碼 R-CNN 框架的良好泛化能力。接下來(lái)我們?cè)斒龈倪M(jìn)。這些結(jié)果以及未來(lái)更新可通過(guò) https 中的已發(fā)布代碼復(fù)制:github.comfacebookresearch Detectron,并可作為未來(lái)研究的更高基線(xiàn)。
更新的基線(xiàn):我們使用一組不同的 hyper-parameters 從更新的基線(xiàn)開(kāi)始。我們將訓(xùn)練時(shí)間延長(zhǎng)到 180k 次迭代,其中在 120k 和 160k 次迭代時(shí)學(xué)習(xí)率降低了 10。我們還將 NMS 閾值更改為 0.5(從默認(rèn)值 0.3)。更新后的基線(xiàn)具有 37.0 蒙版 AP 和 40.5 方框 AP。
端到端培訓(xùn):之前的所有結(jié)果都采用了分階段培訓(xùn),即培訓(xùn) RPN 為第一階段,蒙版 R-CNN 為第二階段。37 后,我們?cè)u(píng)估聯(lián)合培訓(xùn) RPN 和屏蔽 RCNN 的端到端 (e2e) 培訓(xùn)。我們采用 37 中的近似版本,通過(guò)忽略梯度 w.r.t. RoI 坐標(biāo),僅計(jì)算 RoIAlign 層中的部分梯度。表 8 顯示,e2e 訓(xùn)練使面罩 AP 提高 0.6,包裝箱 AP 提高 1.2。
ImageNet-5k 預(yù)訓(xùn)練:45 后,我們?cè)?ImageNet 的 5k 級(jí)子集中預(yù)訓(xùn)練模型進(jìn)行實(shí)驗(yàn)(與標(biāo)準(zhǔn)的 1k 級(jí)子集相反)。培訓(xùn)前數(shù)據(jù)的增加 5 次改善了面罩和箱式 1 AP。作為參考,40 名患者使用了 250 多幅圖像 (300M),并報(bào)告了 2-3 個(gè)方框的基線(xiàn) AP 改善。
脈沖串時(shí)間增加:脈沖串時(shí)間的脈沖串規(guī)模增加進(jìn)一步改善了結(jié)果。在訓(xùn)練過(guò)程中,我們從 640,800 像素處隨機(jī)抽取一個(gè)比例,并將迭代次數(shù)增加到 260k(在 200k 和 240k 迭代時(shí)學(xué)習(xí)率降低 10)。脈沖串時(shí)間增加使掩模 AP 提高 0.6,包裝箱 AP 提高 0.8。
模型架構(gòu):通過(guò)將 101 層 ResNeXt 升級(jí)到 152 層對(duì)應(yīng)層 19,我們觀(guān)察到增加了 0.5 個(gè)掩模 AP 和 0.6 個(gè)盒子 AP。這表明更深的模型仍然可以改善 COCO 的結(jié)果。
使用最近提出的非本地 (NL) 模型 43,我們實(shí)現(xiàn)了 40.3 掩碼 AP 和 45.0 方框 AP。該結(jié)果未增加測(cè)試時(shí)間,并且在測(cè)試時(shí),該方法在 Nvidia Tesla P100 GPU 上以 3 fps 運(yùn)行。
測(cè)試時(shí)間增加:我們將使用 400,1200 像素的尺度和 100 的步長(zhǎng)以及它們的水平 fiip 來(lái)評(píng)估模型結(jié)果。這提供了 41.8 mask AP 和 47.3 box AP 的單一模型結(jié)果。
以上結(jié)果是我們提交給 COCO 2017 競(jìng)賽的基礎(chǔ)(也使用了 ensemble,這里不討論)。據(jù)報(bào)道,前三個(gè)獲勝的實(shí)例分割團(tuán)隊(duì)都是基于蒙版 R-CNN 框架的擴(kuò)展。
Keypoint 檢測(cè)
我們?cè)诒?9 中報(bào)告了 keypoint 檢測(cè)的增強(qiáng)結(jié)果。作為更新的基線(xiàn),我們將訓(xùn)練計(jì)劃擴(kuò)展到 130k 迭代,其中 100k 和 120k 迭代的學(xué)習(xí)率降低了 10。這將使 APkp 提高約 1 分。將 ResNet-50 替換為 ResNet-101 和 ResNeXt-101 后,APkp 分別增加至 66.1 和 67.3。
通過(guò)最近的一種叫做數(shù)據(jù)蒸餾 35 的方法,我們能夠利用 COCO 提供的額外的 120k 未標(biāo)記圖像。簡(jiǎn)而言之,數(shù)據(jù)蒸餾是一種自我訓(xùn)練策略,它使用在標(biāo)記數(shù)據(jù)上訓(xùn)練的模型來(lái)預(yù)測(cè)未標(biāo)記圖像上的注釋,并反過(guò)來(lái)用這些新的注釋更新模型。Mask R-CNN 為這種自我訓(xùn)練策略提供了一個(gè)有效的框架。通過(guò)數(shù)據(jù)蒸餾,蒙版 R-CNN APkp 提高了 1.8 點(diǎn),達(dá)到 69.1 點(diǎn)。我們觀(guān)察到蒙版 R-CNN 可以從額外的數(shù)據(jù)中獲益,即使這些數(shù)據(jù)是未標(biāo)記的。
通過(guò)使用與實(shí)例分割相同的測(cè)試時(shí)間擴(kuò)展,我們進(jìn)一步將 APkp 提升到 70.4。
致謝:我們要感謝 Ilija Radosavovic 對(duì)代碼發(fā)布和增強(qiáng)結(jié)果的貢獻(xiàn),并感謝 Caffe2 團(tuán)隊(duì)的工程支持。
[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. Arbel′ aez, 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 in-
stance segmentation. In CVPR, 2017. 3, 9
[5] S. Bell, C. L. Zitnick, K. Bala, and R. Girshick. Inside-
outside 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 multi-
person 2d pose estimation using part af?nity ?elds. 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 segmen-
tation 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 fea-
ture 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. Arbel′ aez, R. Girshick, and J. Malik. Simul-
taneous detection and segmentation. In ECCV. 2014. 2
[16] B. Hariharan, P. Arbel′ aez, R. Girshick, and J. Malik. Hyper-
columns for object segmentation and ?ne-grained localiza-
tion. 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. Doll′ ar, 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 multi-
cut. In CVPR, 2017. 3, 9
[24] A. Krizhevsky, I. Sutskever, and G. Hinton. ImageNet clas-
si?cation 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 compu-
tation, 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. Doll′ ar, 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. Ra-
manan, P. Doll′ ar, 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: Sequen-
tial 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. Recti?ed linear units improve re-
stricted boltzmann machines. In ICML, 2010. 4
[32] G. Papandreou, T. Zhu, N. Kanazawa, A. Toshev, J. Tomp-
son, C. Bregler, and K. Murphy. Towards accurate multi-
person pose estimation in the wild. In CVPR, 2017. 8
[33] P. O. Pinheiro, R. Collobert, and P. Dollar. Learning to seg-
ment object candidates. In NIPS, 2015. 2, 3
[34] P. O. Pinheiro, T.-Y. Lin, R. Collobert, and P. Doll′ ar. Learn-
ing to re?ne object segments. In ECCV, 2016. 2, 3
[35] I. Radosavovic, P. Doll′ ar, 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: To-
wards real-time object detection with region proposal net-
works. In NIPS, 2015. 1, 2, 3, 4, 7
[37] S. Ren, K. He, R. Girshick, and J. Sun. Faster R-CNN: To-
wards real-time object detection with region proposal net-
works. In TPAMI, 2017. 10
[38] A. Shrivastava, A. Gupta, and R. Girshick. Training region-
based object detectors with online hard example mining. In
CVPR, 2016. 2, 5
[39] A. Shrivastava, R. Sukthankar, J. Malik, and A. Gupta. Be-
yond skip connections: Top-down modulation for object de-
tection. 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. Con-
volutional pose machines. In CVPR, 2016. 8
[45] S. Xie, R. Girshick, P. Doll′ ar, Z. Tu, and K. He. Aggregated
residual transformations for deep neural networks. In CVPR,
2017. 4, 10
總結(jié)
以上是生活随笔為你收集整理的Mask R-CNN 原理解析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Android Verity Boot(
- 下一篇: 高防cdn对网站防护有什么作用