經(jīng)典論文之Mask R-CNN全文翻譯

Mask R-CNN

Kaiming He? Georgia Gkioxari ?Piotr Doll′ar ?Ross Girshick
Facebook 人工智能研究院 (FAIR)

摘要

? ?我們提出概念上簡單、靈活和通用的對象實例分割框架。我們的方法能夠有效檢測圖像中的對象,同時生成每個實例的高質(zhì)量分割掩膜。通過添加與現(xiàn)有的邊界框識別分支平行的預(yù)測對象掩膜分支,這種被稱作掩膜R-CNN的方法拓展了極速R-CNN的方法。掩膜R-CNN易于訓(xùn)練,且僅稍微增加了極速R-CNN的日常開支,運行幀率為5 fps。此外,掩膜R-CNN還易于推廣到其他任務(wù)中,例如,它能夠使我們在同一個框架中預(yù)測人類的姿勢。我們展示了COCO系列挑戰(zhàn)的所有三個方向,包括實例分割、邊界框?qū)ο髾z測以及人體關(guān)鍵點檢測,的最佳匹配結(jié)果。說實話,掩膜R-CNN達成每項任務(wù)的效果確實勝過所有現(xiàn)有的單模型參賽作品,包括COCO 2016挑戰(zhàn)獲勝者的作品。我們希望,該簡單有效的方法能夠作為可靠的基線,促進未來實例級識別研究的發(fā)展。相關(guān)代碼即將公開。

1. 導(dǎo)論

??在視覺領(lǐng)域,對象檢測和語義分割結(jié)果的研究結(jié)果在短時間內(nèi)得到快速發(fā)展。這些進展在很大程度上是由強有力的基線系統(tǒng)推動的,比如分別用于對象檢測和語義分割的快速/極速R-CNN框架[12, 34]和全卷積網(wǎng)絡(luò)(FCN) [29]框架。這些方法從概念上來講是直觀的,具有靈活性和魯棒性,并且其訓(xùn)練和推理時長較短。本文旨在構(gòu)建針對實例分割效果相對較好的框架。
??實例分割極具挑戰(zhàn)性,因為它要求對圖像中所有對象進行正確檢測并同時準確分割每個實例。因此,它綜合了對象檢測和語義分割的經(jīng)典計算機視覺任務(wù),對象檢測的目的在于對單個對象進行分類并利用邊界框定位每個對象,而語義分割的目的在于在不區(qū)分對象實例的條件下將每個像素歸類到固定的類別集1。有鑒于此,人們可能會認為要達到較好的效果需要復(fù)雜的方法。然而,本文表明,相當(dāng)簡單、靈活且快速的系統(tǒng)達到的效果可以勝過之前最先進的實例分割成果。


圖 1.用于實例分割的掩膜R-CNN框架。

??我們的方法叫作掩膜R-CNN,通過添加用于每個感興趣區(qū)域(RoI)的掩膜分割預(yù)測并與用于分類和邊界框回歸分析的現(xiàn)有分支并行的的分支,它拓展了極速R-CNN [34]見圖1。該掩膜分支是應(yīng)用于每個RoI的小型FCN,可通過像素到像素的方式預(yù)測分割掩膜。極速R-CNN分支促進了各種各樣靈活架構(gòu)設(shè)計的發(fā)展,得益于此,掩膜R-CNN易于實現(xiàn)和訓(xùn)練。另外,掩膜分支僅會增加小部分的計算開銷,卻可實現(xiàn)快速的系統(tǒng)和快速實驗。
??從原則上來說,掩膜R-CNN是極速R-CNN的直觀拓展模式,但是恰當(dāng)?shù)貥?gòu)建掩膜分支對于達成較好的結(jié)果而言至關(guān)重要。最重要的是,極速R-CNN不是專為網(wǎng)絡(luò)輸入和輸出之間像素到像素的對準而設(shè)計的。這一點在RoIPool[18, 12](實際上處理實例的核心操作)進行特征提取時如何執(zhí)行粗糙的空間量化的過程中最為明顯。為解決未對準的問題,我們提出被稱為RoIAlign的簡單、無需量化的層,它可以真實地保留準確的空間位置。盡管RoIAlign看起來似乎是很小的改變,但它卻產(chǎn)生了很大的影響:它使得掩膜準確率相對提高了10% 到 50%,在嚴格定位指標的條件下顯示出更大的提高。第二,我們發(fā)現(xiàn),它對于分離掩膜和分類預(yù)測至關(guān)重要:在不對比類別的情況下,我們單獨預(yù)測每個類別的二元掩膜,并依靠該網(wǎng)絡(luò)的RoI分類分支對類別進行預(yù)測。與此相反,F(xiàn)CN通常執(zhí)行逐像素多類別的分類,使分割和分類結(jié)合在一起,并且,根據(jù)我們的實驗,F(xiàn)CN在實例分割方面的效果很差。

圖2.掩膜R-CNN在COCO 測試集中的結(jié)果。

這些結(jié)果基于ResNet-101 [19],達到了35.7的掩膜AP并以5 fps的速度運行。掩膜以不同的顏色、邊界框和類別顯示,同時也顯示了可信度。
??實話實說,掩膜R-CNN在COCO實例分割任務(wù)上的表現(xiàn)超越了之前最先進的單模型成果[28],包括出自于該競賽獲勝者之手的設(shè)計復(fù)雜的參賽作品。作為該方法的副產(chǎn)品,我們的方法在COCO對象檢測任務(wù)上也優(yōu)于其他方法。在切除實驗中,我們評估了多種基本例示,這使我們能夠展示其魯棒性并分析核心因素的效果。
??我們的模型可在GPU上以200ms每幀的速度運行,并且在8個GPU的單個機器上進行關(guān)于COCO上的訓(xùn)練僅需耗時一到兩天。我們認為,快速的訓(xùn)練、較高的測試速度以及框架的靈活性和準確度將有利于促進未來實例分割的研究。
??最后,我們展示了通過在COCO關(guān)鍵點數(shù)據(jù)集上進行的人類姿勢評估任務(wù)生成我們的框架[28]。通過將每個關(guān)鍵點視作獨熱二元掩膜,掩膜R-CNN只需進行微小的修改即可應(yīng)用于具體實例姿勢的檢測。老實說,掩膜 R-CNN超越了2016 COCO關(guān)鍵點競賽的獲勝作品,同時以5 fps的速度運行。因此,從更廣泛的意義上來講,掩膜 R-CNN可被視為實例級識別的靈活框架并可拓展以完成更為復(fù)雜的任務(wù)。
我們將會發(fā)布代碼,以促進未來的研究。

2. 相關(guān)工作

??R-CNN:用于邊界框?qū)ο髾z測并基于區(qū)域的CNN (R-CNN)方法的目的在于處理可管理數(shù)量內(nèi)的候選對象區(qū)域[38, 20]并獨立評估每個RoI中的卷積網(wǎng)絡(luò)[25, 24]。R-CNN經(jīng)過拓展后[18, 12]可使用RoIPool在特征圖上處理RoI,可達到較快的速度和更高的準確度。通過區(qū)域方案網(wǎng)絡(luò)(RPN)學(xué)習(xí)注意機制,極速R-CNN[34]促進了這種流的發(fā)展。極速R-CNN的靈活性和魯棒性足以促進多種后續(xù)進展(比如[35, 27, 21]),而且它是當(dāng)前幾種基準重的領(lǐng)先框架。
??實例分割:經(jīng)過R-CNN有效性的推動,很多實例分割的方法都建立在分割方案之上。早前的方法[13, 15, 16, 9]依賴于自下而上的分割片段[38, 2]。深度掩膜(DeepMask)[32]以及以下作品[33, 8]學(xué)會提出候選分割片段,這些片段隨后由快速R-CNN進行分類。在這些方法中,分割在識別之前,識別速度較慢且準確度相對較低。同樣,戴(Dai)等人[10]提出分類之后進行復(fù)雜的多級級聯(lián),以通過邊界框方案預(yù)測分割方案。相反,我們的方法基于掩膜和類別標簽的并行預(yù)測,這種方法更加簡單和靈活。
??最近,李(Li)等人[26]將[8]中的分割方案系統(tǒng)和[11]中的對象檢測系統(tǒng)結(jié)合起來,用于“全卷積實例分割”(FCIS)。[8, 11, 26]中的方案的共同目的在于以全卷積的方式預(yù)測一組位置敏感的輸出信道。這些信道同時處理對象類別、框以及掩膜,使系統(tǒng)的速度加快。但是FCIS在重疊的實例中出現(xiàn)系統(tǒng)性錯誤,并導(dǎo)致虛假邊緣(圖5),這表明,它的有效性受到了分割實例的基本難題的挑戰(zhàn)。

3. 掩膜R-CNN

??掩膜R-CNN的概念比較簡單:極速R-CNN擁有針對每個候選對象的兩個輸出信道,還擁有一個類別標簽和一個邊界框偏置:對此,我們增加了用于輸出對象掩膜的第三個框架。因此,掩膜R-CNN是自然而直觀的概念。但是,額外的掩膜輸出與類別和框的輸出不同,因為它要求對于對象空間布局的抽取更加精細。其次,我們介紹了掩膜R-CNN的關(guān)鍵因素,包括像素到像素的對準,這是快速/極速R-CNN主要欠缺的部分。
??極速R-CNN:首先,我們簡要回顧了極速R-CNN檢測器[34]。極速R-CNN包括兩個階段。第一個階段叫作區(qū)域方案網(wǎng)絡(luò)(RPN),該網(wǎng)絡(luò)提出候選對象邊界框。第二個階段實質(zhì)上是快速R-CNN[12],它通過使用RoIPool從每個候選框中抽取特征并執(zhí)行分類和邊界框的回歸分析。這兩個階段使用的特征可共享,以加快推理速度。我們建議讀者參考[21],以獲取極速R-CNN和其他框架之間最新的復(fù)雜比較。
??掩膜R-CNN:掩膜R-CNN采用了與上相同的兩階段步驟,第一個階段與上述的第一個階段(即RPN)完全相同。在與預(yù)測類別和框偏置并行的第二個階段,掩膜R-CNN還針對每個RoI輸出二元掩膜。這與大多數(shù)最近的系統(tǒng)截然不同,在這些系統(tǒng)中,分類依賴于掩膜預(yù)測(例如,[32, 10, 26])。我們的方法遵循了快速R-CNN[12]的原則,即并行應(yīng)用邊界框分類和回歸分析(結(jié)果證明這大大簡化了原來的R-CNN [13]的多階段管道)。
??在訓(xùn)練期間,我們將每個取樣的RoI上的多任務(wù)損失定義為L = Lcls + Lbox + Lmask。類別損失Lcls與邊界框損失Lbox與[12]中的對應(yīng)定義相同。針對每個RoI,掩膜分支有Km2的三維輸出,這可將分辨率為m×m的K個二元掩膜進行編碼,這K個二元掩膜與K個類別一一對應(yīng)。對此,我們應(yīng)用了逐像素sigmoid函數(shù),并將Lmask定義為平均二元交叉熵損失。對于與地面實況類別k關(guān)聯(lián)的RoI,Lmask僅在第k個掩膜上進行定義(其他掩膜輸出不會造成損失)。
??我們對于Lmask的定義使得該網(wǎng)絡(luò)能夠在不對比類別的條件下生成針對每種類別的掩膜;我們依賴于專門的分類分支對用于選擇輸出掩膜的類別標簽進行預(yù)測。這與將FCN [29]應(yīng)用于語義分割時的慣例不同,該慣例通常使用逐像素的softmax函數(shù)與多項交叉熵損失。在那種情況下,不同類別的掩膜進行對比;在我們的方法中,通過逐像素的sigmoid函數(shù)和二元損失,不同類別的掩膜不會進行對比。我們的實驗表明,這種方式是優(yōu)化實例分割結(jié)果的關(guān)鍵。
??掩膜表示:掩膜可對輸入對象的空間布局進行編碼。完全連接的(fc)圖層必將導(dǎo)致類別標簽或框的偏置塌陷為較短的輸出矢量,因此,與此不同,通過卷積提供的像素到像素的對應(yīng)可自然地處理掩膜空間結(jié)構(gòu)的抽取。
??特別需要指出的是,我們利用FCN [29]從每個RoI中預(yù)測m×m的掩膜。這使得掩膜分支中的每個層都能保持明確的m×m的對象空間布局,而不至于塌陷為缺乏空間維度的矢量表示。與之前依賴于fc圖層進行掩膜預(yù)測的方法[32, 33, 10]不同,我們的全卷積表示所要求的參數(shù)更少,且正如實驗所示,其準確度更高。
??這種像素到像素的特性需要我們的RoI的特征(這些特征本身就是小型特征圖)進行準確地對準,以忠實保留明確的逐像素空間對應(yīng)。這激勵著我們推動在掩膜預(yù)測中發(fā)揮關(guān)鍵作用的以下RoIAlign圖層的發(fā)展。
??RoIAlign: RoIPool [12]是從每個RoI中抽取小型特征圖(例如,7×7)的標準操作。首先,RoIPool 會將浮點數(shù)RoI量化為特征圖的不連續(xù)間隔尺度,然后,量化后的RoI會被細分為空間容器,這些空間容器本身也會進行量化,最后,每個容器覆蓋的特征值會被放大(通常是通過最大池化)。 通過計算機運算[x=16],在例如連續(xù)的坐標x上執(zhí)行量化,在這種運算中,16是特征圖步幅,而[.]是舍入;同樣,分為容器(例如,7×7)時執(zhí)行量化。這些量化引入了RoI和所抽取特征之間的未對準現(xiàn)象。盡管這可能并不會影響對于微小的平移具有魯棒性的分類,它對于像素精度的掩膜預(yù)測具有負面影響。
??為處理這個問題,我們提出已去掉RoIPool粗略量化步驟的RoIAlign層,通過恰當(dāng)?shù)貙⑺槿〉奶卣骱洼斎雽省N覀兲岢龅母淖兪呛唵蔚模何覀儽苊鈱τ谌魏蜶oI邊界或容器進行量化(例如,我們使用x/16而非[x/16])。我們利用雙線性插值[22]計算每個RoI容器中四個常規(guī)取樣位置的輸入特征的精確值并將結(jié)果放大(使用最大值或平均值)。
??正如4.2章中表明的那樣, RoIAlign取得了重大進展。 我們還比較了[10]中提出的RoIWarp操作。與RoIAlign不同,RoIWarp忽略了對準問題,并且其在[10]中實施 RoI的量化,這點與RoIPool相同。因此,即使RoIWarp也采取了[22]推動的雙線性重采樣,正如實驗(詳情參見表2c)所示,它與RoIPool的效果相似,這證明對準至關(guān)重要。
??網(wǎng)絡(luò)架構(gòu):為展示我們的方法的生成,我們通過多種架構(gòu)舉例說明掩膜R-CNN。為了清晰起見,我們對以下兩種概念作了區(qū)分:(i)用于從整個圖像中抽取特征的卷積主干架構(gòu),(ii)用于邊界框識別(分類和回歸分析)以及分別應(yīng)用于每個RoI的掩膜預(yù)測的網(wǎng)絡(luò)頭。
??我們用術(shù)語網(wǎng)絡(luò)深度特征指稱主干架構(gòu)。我們評估了深度為50或101層的ResNet [19]或ResNeXt [40]網(wǎng)絡(luò)。最初實現(xiàn)的帶ResNets [19]極速R-CNN從第4階段(我們稱為C4)的最后的卷積層抽取特征。例如,這種帶ResNet-50的主干架構(gòu)被指稱為ResNet-50-C4。這是應(yīng)用在[19, 10, 21, 36]的通用選擇。
??我們還探討了另外一種更加有效的主干架構(gòu),它是最近由林(Lin)等提出并被稱為特征金字塔網(wǎng)絡(luò)(FPN)。特征金字塔網(wǎng)絡(luò)運用帶側(cè)面連接的自上而下的架構(gòu),從單尺度輸入中構(gòu)建網(wǎng)絡(luò)內(nèi)特征金字塔。帶特征金字塔網(wǎng)絡(luò)主干架構(gòu)的極速R-CNN根據(jù)尺度從不同級別的特征金字塔中抽取RoI特征,但是另一方面,該方法的其余部分與普通的ResNet類似。對帶掩膜R-CNN且針對特征抽取的ResNet-FPN主干架構(gòu)的運用在準確度和速度上都取得了良好成效。如需了解關(guān)于FPN的細節(jié)內(nèi)容,建議讀者參考[27]。
??對于網(wǎng)絡(luò)頭,我們遵循了之前作品中展現(xiàn)的架構(gòu),并在這些架構(gòu)中添加了全卷積掩膜預(yù)測分支。特別值得一提的是,我們根據(jù)ResNet [19] 和 FPN [27]的論文拓展了極速R-CNN框頭。詳細內(nèi)容請參見圖3。ResNet-C4主干架構(gòu)上的頭包括運算密集型的ResNet(即9層‘res5’[19])。對于FPN,該主干架構(gòu)包括res5,因此能夠使用帶更少過濾器的更有效的頭。
??我們注意到,我們的掩膜分支擁有簡單的結(jié)構(gòu)。更加復(fù)雜的設(shè)計可能有提高效果的潛力,但這不是本文的關(guān)注點。

3.1. 實現(xiàn)細節(jié)

??我們遵循現(xiàn)有的快速/極速R-CNN的相關(guān)文章[12, 34, 27]設(shè)定了超參數(shù)。盡管這些關(guān)于對象檢測的決策出于論文[12, 34, 27],但是我們發(fā)現(xiàn)我們的實例分割系統(tǒng)比它們的更具魯棒性。
??訓(xùn)練:正如在快速R-CNN中一樣,如果RoI擁有的IoU所帶的真實框至少為0.5,則其被認為是正的,否則它就為負。掩膜損失Lmask僅能在正的感興趣區(qū)域 (RoI)上進行定義。掩膜目標是感興趣區(qū)域 (RoI)與其相關(guān)的地面實況掩膜之間的交集。
??我們采用了圖像為中心的訓(xùn)練[12]。圖像的大小經(jīng)過調(diào)整后,其尺度(短邊)為800像素[27]。每個最小批量在每個GPU中含有兩個圖像,每個圖像有N個取樣的RoI,正數(shù)和負數(shù)的比例為1:3[12]。對于C4主干架構(gòu)而言,N是64(正如[12, 34]中一樣),對于FPN而言,N是512(正如[27]中一樣)。我們在8個GPU(因此有效的最小批量尺度為16)上進行160k 迭代的訓(xùn)練,學(xué)習(xí)率為0.02,并在120k的迭代時降了10個單位。我們使用了 0.0001的權(quán)重衰減和0.9的動量項。


圖3.頭部架構(gòu):我們拓展了兩種現(xiàn)有的極速R-CNN的頭部[19, 27]。左側(cè)/右側(cè)的面板分別顯示了 [19] 和 [27] 中的ResNet C4和FPN的頭部,這兩種頭部中都添加了掩膜分支。數(shù)字代表空間分辨率和信道。箭頭指的是卷積、反卷積或者fc層,這些可從上下文中推理出來(卷積保留了空間維度,而反卷積則增加了空間維度)。除了輸出卷積為1×1之外,其他所有的卷積都是3×3,反卷積為2×2且其步幅為2,并且我們在隱藏層中使用ReLU [30]。左側(cè):‘res5’指的是ResNet的第5階段,為了簡單起見,我們將其做了更改,這樣第一個卷積在7×7的RoI上操作,且步幅為1(而非[19]中的14×14的RoI/為2的步幅)。右側(cè):‘×4’指的是一疊4個連續(xù)的卷積。

??推理:在測試期間,我們提出,C4主干架構(gòu)的數(shù)量為300(正如[34]中一樣),F(xiàn)PN的數(shù)量為1000(正如[27]中一樣)。我們在這些方案中運行框預(yù)測分支,然后執(zhí)行非極大值抑制[14]。之后,將掩膜分支應(yīng)用到最高得分為100的檢測框中。盡管這與訓(xùn)練中使用的并行運算不同,但是它提高了推理的速度和準確度(由于其使用了更少且準確度更高的RoI)。掩膜框架可在每個RoI中預(yù)測K個掩膜,但是我們僅使用第K個掩膜,這里的k指的是類別框架預(yù)測的類別。之后,m×m的浮點數(shù)掩膜輸出的大小被調(diào)整為RoI的尺度,并且在0.5的閾值上進行二值化。
??請注意,因為我們只運算了頭100個檢測框上的掩膜,掩膜R-CNN增加了其極速R-CNN對應(yīng)物的邊際運行時間(例如,在典型的模型中,約增加20% 的邊際運行時間)。

4. 實驗:實例分割

??通過復(fù)雜的切除實驗,我們將掩膜R-CNN與最先進的方法進行了全面的對比。我們在所有實驗中使用的都是COCO數(shù)據(jù)集[28]。我們報告了標準COCO判據(jù),包括AP(IoU閾值下的平均值)、AP50,、AP75和 APS、 APM和APL(不同尺度下的AP)。除非特別聲明,AP都通過使用掩膜IoU進行評估。正如之前的論文[5, 27]所述,我們通過使用80k訓(xùn)練圖像和35k val圖像子集(trainval35k)的組合進行訓(xùn)練,并報告了剩余5k val圖像子集(minival)的切除。我們還報告了test-dev [28] 的結(jié)果,其不包含公開標簽。出版之后,我們會按照建議將test-std的完整結(jié)果上傳至公共的競賽排名板上。

圖4.更多掩膜R-CNN在COCO測試圖像上的結(jié)果,使用的是ResNet-101-FPN,以5fps的速度運行,通過35.7的掩膜AP實現(xiàn)(表1)。

表1在COCO test-dev上的實例分割掩膜AP。 MNC [10] 和 FCIS [26]分別是COCO 2015和2016分割挑戰(zhàn)的獲勝作品。坦誠地講,掩膜R-CNN比更復(fù)雜的FCIS+++的表現(xiàn)更好,后者包括多尺度訓(xùn)練/測試,水平翻轉(zhuǎn)測試以及OHEM [35]。所有條目都是單模型結(jié)果。

4.1主要結(jié)果

??我們在表1中比較了掩膜R-CNN與最先進方法在實例分割方面的區(qū)別。我們模型中的所有實例的效果都優(yōu)于以前最先進模型的基線變體。這包括分別是COCO 2015和2016分割挑戰(zhàn)獲勝作品的MNC [10]和FCIS [26]。坦白講,帶ResNet-101-FPN主干架構(gòu)的掩膜R-CNN的效果優(yōu)于FCIS+++ [26],后者包括多尺度訓(xùn)練/測試,水平翻轉(zhuǎn)測試以及在線難例挖掘(OHEM)[35]。在本文涵蓋的內(nèi)容之外,我們期待出現(xiàn)更多可以應(yīng)用于我們的方法的類似進展。
??在圖2和圖4中可以看到掩膜R-CNN輸出。掩膜R-CNN即使在相當(dāng)困難的條件下也能達到很好的結(jié)果。在圖5中,我們比較了掩膜R-CNN基線和FCIS+++ [26]。FCIS+++在重疊實例上表現(xiàn)出系統(tǒng)偽跡,表明其有著實例分割基礎(chǔ)困難方面的問題。掩膜R-CNN并未表現(xiàn)出類似的偽跡。

4.2 切除實驗

??我們運行了大量切除實驗,以分析掩膜R-CNN。結(jié)果在表2中呈現(xiàn),且具體細節(jié)在以下內(nèi)容中進行討論。
??架構(gòu):表2a顯示的是帶多個主干架構(gòu)的掩膜R-CNN。該架構(gòu)得益于更深層的網(wǎng)絡(luò)(50 vs. 101)以及包括FPN 和 ResNeXt3等高級設(shè)計。我們注意到,不是所有的框架都能自動從更深層或高級的網(wǎng)絡(luò)(參見[21]中的中評量基準)獲益。

圖5.FCIS+++ [26](頂部)對比掩膜R-CNN(底部,ResNet-101-FPN)。FCIS在重疊對象上表現(xiàn)出系統(tǒng)偽跡。
(a) 主干架構(gòu):更好的主干架構(gòu)可以帶來預(yù)期效果:更深層的網(wǎng)絡(luò)表現(xiàn)更好,F(xiàn)PN的效果優(yōu)于C4的特征,并且ResNeXt在ResNet上得到了提高。
(b) 多項式對比獨立掩膜(ResNet-50-C4):通過每個類別的二元掩膜(sigmoid函數(shù))進行的分離極大地提高了多項式掩膜的效果(softmax函數(shù))。
(c) RoIAlign (ResNet-50-C4):帶不同RoI層的掩膜結(jié)果。我們的RoIAlign層把AP提高了約3點并把AP75提高了約5點。 使用恰當(dāng)?shù)膶适怯兄趶浹aRoI層之間的較大間隙的唯一因素。
(d) RoIAlign (ResNet-50-C5,步幅為 32):利用大步幅特征得到的掩膜級別和框級別的AP。未對準現(xiàn)象比步幅為16的特征(表2c)時的未對準現(xiàn)象更嚴重,導(dǎo)致準確度出現(xiàn)巨大誤差。
(e) 掩膜框架(ResNet-50-FPN):全卷積網(wǎng)絡(luò)(FCN)對比用于掩膜預(yù)測的多層感知器(MLP,全連接)。通過利用空間布局編碼的優(yōu)勢,F(xiàn)CN改善了結(jié)果。

表2.掩膜R-CNN的切除實驗。我們在trainval35k上訓(xùn)練,在minival上測試,并報告掩膜AP,除非另有說明。

??多項式對比獨立掩膜:掩膜R-CNN分離了掩膜和類別預(yù)測:由于現(xiàn)有框的框架可預(yù)測類別標簽,我們在沒有對比類別的條件下為每個類別生成掩膜(通過逐像素sigmoid函數(shù)和二元損失)。 在表2b中,我們將這種現(xiàn)象比作逐像素的softmax函數(shù)和多項式損失(正如FCN [29]中通常應(yīng)用地那樣)。這種可選方案結(jié)合了掩膜AP(5.5點)的嚴重損失中的掩膜和類別預(yù)測以及結(jié)果。這表明,一旦實例被(框的分支)作為整體進行分類,就足以在不考慮類別的情況下預(yù)測二元掩膜,這使得模型更易于訓(xùn)練。
??特定類別對比不可知類別的掩膜:我們的默認實例預(yù)測了特定類別的掩膜,例如,針對每種類別的m×m掩膜。有趣的是,帶有不可知類別掩膜的掩膜R-CNN(例如,在不考慮類別的情況下預(yù)測單個m×m輸出)幾乎同樣有效:它擁有29.7的掩膜AP,相比之下, ResNet-50-C4上的特定類別的對應(yīng)物的掩膜AP則為30.3.這進一步突出了我們方法中的分工,它在很大程度上分離了類別和分割。
??RoIAlign:表2c顯示了我們提出的RoIAlign層的評估。針對此實驗,我們使用了ResNet-50-C4主干架構(gòu),其步幅為16。RoIAlign提高了RoIPool中的AP約3點,同時在高IoU (AP75)中也有很大的提高效果。RoIAlign對于最大/平均池不敏感;我們在本文的其余部分中使用的是平均池。
??另外,我們通過MNC [10]中提出的RoIWarp進行比較,它也采用了二元取樣。正如第3章中的討論所述,RoIWarp仍然量化了RoI,沒有對輸入進行對準。正如表2c所示,每種形式的RoIWarp與RoIPool的效果相似,且其效果遠不如RoIAlign。這顯著表明,恰當(dāng)?shù)膶适顷P(guān)鍵。
??我們還評估了帶ResNet-50-C5主干架構(gòu)的RoIAlign,它擁有32像素的更大步幅。我們用了與圖3(右側(cè))中相同的頭部,因為res5的頭部不適用。表2d顯示,RoIAlign大大提高了掩膜AP,使其提高了7.3點,并使掩膜AP75提高了10.5點(50%的相對提高)。此外,我們注意到,通過RoIAlign,使用步幅為32的C5特征(30.9的AP)比使用步幅為16的C4特征(30.3的AP,見表2c)更準確。RoIAlign在很大程度上解決了存在已久的使用大步幅特征進行檢測和分割的挑戰(zhàn)。
??最后,RoIAlign顯示,當(dāng)其與擁有更精細、多級別步幅的FPN一起使用時,掩膜AP提高了1.5且框AP提高了0.5。對于需要更精細對準的關(guān)鍵點檢測,RoIAlign顯示出其使得AP有很大提高,即使與FPN一起使用也是如此(表6)。

表3.對象檢測單模型結(jié)果(邊界框AP)對比最先進方法在test-dev上的結(jié)果。使用ResNet-101-FPN的掩膜R-CNN的效果優(yōu)于所有之前最先進模型(這些實驗都忽略了掩膜輸出)的基本變體。掩膜R-CNN在[27]中取得的成效源于對RoIAlign (+1.1 APbb)、多任務(wù)訓(xùn)練(+0.9 APbb)以及ResNeXt-101 (+1.6 APbb)的使用。

??掩膜框架:分割是像素到像素的任務(wù),我們使用FCN來開發(fā)掩膜的空間布局。在表2e中,通過使用ResNet-50-FPN主干架構(gòu),我們比較了多層感知器(MLP)與FCN。對FCN的應(yīng)用使得掩膜AP比MLP中的掩膜AP提高了2.1。我們注意到,我們之所以選擇這個主干架構(gòu),是因為與MLP相比,F(xiàn)CN頭部的卷積層未經(jīng)過前期訓(xùn)練。

4.3邊界框檢測結(jié)果

??在表3中,我們將掩膜R-CNN與最先進的COCO邊界框?qū)ο髾z測進行對比。針對這個結(jié)果,盡管整個掩膜R-CNN模型經(jīng)過了訓(xùn)練,只有類別和框輸出用于推理(掩膜輸出被忽略)。使用ResNet-101-FPN的掩膜R-CNN的效果優(yōu)于所有之前最先進模型的基本變體,包括GRMI[21]的單模型變體,即COCO 2016 檢測挑戰(zhàn)中的獲勝作品。通過使用ResNeXt-101-FPN,掩膜R-CNN進一步改進了結(jié)果,與[36]中所述的之前最好的單模型項目(其使用了Inception-ResNet-v2-TDM)相比,它在框AP方面有著3.0點的邊際優(yōu)勢。
??作為進一步的比較,我們訓(xùn)練了不帶掩膜框架的掩膜R-CNN,即表3中所指的“極速R-CNN、RoIAlign”。由于RoIAlign的存在,這種模型比[27]展示的模型的效果更好。但是另一方面,它在框AP方面卻比掩膜R-CNN低0.9點。因此,這種與掩膜R-CNN在框檢測方面的差別只是多任務(wù)訓(xùn)練的功勞。
??最后,我們注意到,掩膜R-CNN的掩膜AP和框AP之間僅有少許差距:例如,37.1(表1,掩膜)與39.8(表3,框)之間2.7點的差距。這表明,我們的方法極大地縮小了對象檢測和更具挑戰(zhàn)性的實例分割任務(wù)之間的差距。

4.4時間安排

??推理:在進行了極速R-CNN[34]的4步訓(xùn)練之后,我們訓(xùn)練了具有RPN和掩膜R-CNN階段之間的特征的ResNet-101-FPN模型。這種模型在Nvidia Tesla M40 GPU上以195ms每個圖像的速度運行(加上調(diào)整原有分辨率輸出尺度的15ms的CPU所用時間),并在統(tǒng)計學(xué)上達到了與不具有這些特征的模型相同的掩膜AP。我們還得出報告,即ResNet-101-C4的變體在具有更重的框頭部(表3)時用了約400ms的時間,因此,我們不建議在實踐中使用C4變體。
??盡管掩膜R-CNN的速度較快,我們注意到,我們的設(shè)計的目的并不在于優(yōu)化速度,而在于它能達到更好的速度和準確度之間的平衡[21],例如,通過改變圖像尺度和方案數(shù)量,這超出了本文的討論范圍。
??訓(xùn)練:掩膜R-CNN的訓(xùn)練速度也比較快。在我們的同步8-GPU實現(xiàn)的過程中(每16個圖像最小批量用時為0.72s),使用ResNet-50-FPN在COCO trainval35k上進行訓(xùn)練需耗費32小時,而使用ResNet-101-FPN則需要44小時。實際上,在訓(xùn)練集中進行訓(xùn)練時,快速原型設(shè)計可在不到一天的時間內(nèi)完成。我們希望如此快速的訓(xùn)練可以掃除該領(lǐng)域發(fā)展的一大障礙并激勵更多的人針對這個極具挑戰(zhàn)性的話題進行研究。

5. 用于人類姿勢評估的掩膜R-CNN

??我們的框架易于拓展到人類姿勢評估的領(lǐng)域。我們將關(guān)鍵點位置作為獨熱掩膜的模型,并采用掩膜R-CNN預(yù)測K個掩膜,每個掩膜用于K個關(guān)鍵點類型中的一種類型(例如;左肩、右肘)。這個任務(wù)有助于展現(xiàn)掩膜R-CNN的靈活性。
??我們注意到,我們的系統(tǒng)可利用關(guān)于人類姿勢的最小領(lǐng)域的知識,因為這些實驗主要在于展現(xiàn)掩膜R-CNN框架的生成。我們期望,該領(lǐng)域的知識(例如,模型結(jié)構(gòu)[6])可以對我們簡單的方法進行補充,但是這個話題超出了本文的討論范圍。
??實現(xiàn)細節(jié):在使分割系統(tǒng)適用于關(guān)鍵點時,我們對該系統(tǒng)做了些許修改。對于實例中K個關(guān)鍵點中的每個關(guān)鍵點,訓(xùn)練目標是獨熱m×m二元掩膜,在該掩膜中,只有單個像素會被標記為前景。訓(xùn)練期間,針對每個可見的地面實況關(guān)鍵點,我們將m2-way的softmax函數(shù)輸出(這促進了單點的檢測)中的交叉熵損失最小化。我們注意到,正如在實例分割中的情況一樣,K個關(guān)鍵點仍然是單獨進行處理的。
我們采用了ResNet-FPN變體,而且關(guān)鍵點頭部架構(gòu)與圖3(右側(cè))中的相似。關(guān)鍵點頭部包括一疊8個的3×3 512-d的卷積層,之后是反卷積層和2×雙線性放大,產(chǎn)生56×56的輸出像素。我們發(fā)現(xiàn),相對高像素的輸出(與掩膜相比)對于關(guān)鍵點級別定位準確度所至關(guān)重要。


圖6.使用掩膜R-CNN (ResNet-50-FPN) 在COCO 測試中得出的關(guān)鍵點檢測結(jié)果,并從同一個模型中預(yù)測人物分割掩膜。這個模型的關(guān)鍵點AP為63.1并且以5 fps的速度運行。

表4.在COCO test-dev上的關(guān)鍵點檢測AP。我們的模型 (ResNet-50-FPN) 是以5fps 的速度運行的單模型。CMU-Pose+++[6]是2016年競賽的獲勝作品,它使用了多尺度測試,通過CPM[39]進行后處理,并通過對象檢測器進行過濾,累計增加約5點(通過私人溝通闡明)。通過使用兩個模型(Inception-ResNet-v2 + ResNet-101),G-RMI在COCO plus MPII [1] (25k 個圖像)中進行訓(xùn)練。由于他們使用了更多數(shù)據(jù),這并不是與掩膜R-CNN進行的直接比較。

表5.在minival上評估的關(guān)于人物類別的框、掩膜和關(guān)鍵點的多任務(wù)學(xué)習(xí)。為了進行公平的比較,所有條目都在同樣的數(shù)據(jù)上進行訓(xùn)練。主干架構(gòu)是ResNet-50-FPN。 在minival上擁有64.2 AP 的項目在test-dev上的AP 為62.7。在minival上擁有64.7 AP 的條目在test-dev上的AP 為63.1(見表4)。

表6.RoIAlign 與 RoIPool在minival上關(guān)于關(guān)鍵點檢測的對比。

??模型在所有包含帶注釋關(guān)鍵點的COCO trainval35k圖像上進行訓(xùn)練。為降低過擬合的幾率,當(dāng)訓(xùn)練集較小時,我們使用從[640, 800]像素中隨機取樣的圖像尺度對模型進行訓(xùn)練;推理在800像素的單尺寸上進行。我們訓(xùn)練了90k的迭代,從0.02的學(xué)習(xí)率開始并在60k和80k迭代中將其降低了10。我們使用邊界框非極大值抑制,閾值為0.5。其他實現(xiàn)與3.1章中的相同。

??關(guān)于人類姿勢評估的實驗:通過使用ResNet-50-FPN,我們評估了人類關(guān)鍵點的AP(APkp)。我們使用ResNet-101做了實驗,并發(fā)現(xiàn)它能得到類似的結(jié)果,可能是因為更深層的模型能夠從給更多的訓(xùn)練數(shù)據(jù)中獲益,但是這個數(shù)據(jù)集相對較小。
??表4表明,我們的結(jié)果(62.7 APkp)比使用多階段處理管道(見表4的標題)的COCO 2016關(guān)鍵點檢測獲勝作品[6]高0.9點。與之相比,我們的方法大為簡單和快速。
??更重要的是,我們擁有統(tǒng)一模型,該模型在以5fps的速度運行的條件下可以同時預(yù)測框、分割片段和關(guān)鍵點。添加分割框架(用于人物類別)將test-dev上的 APkp提高到了63.1(表4)。表5中列出了更多minival上的多任務(wù)學(xué)習(xí)的切除實驗。僅在框版本(例如,極速R-CNN)或關(guān)鍵點版本中添加掩膜框架都會提高這些任務(wù)的效果。然而,關(guān)鍵點的框架的添加稍稍降低了框/掩膜的AP,這表明,盡管關(guān)鍵點檢測可以從多任務(wù)訓(xùn)練中獲益,但它對其他任務(wù)并無益處。但是,共同學(xué)習(xí)所有這三種任務(wù)使我們能夠利用統(tǒng)一的系統(tǒng)有效地同時預(yù)測所有輸出(圖6)。
??我們還調(diào)查了RoIAlign對于關(guān)鍵點檢測的作用(表6)。 盡管ResNet-50-FPN主干架構(gòu)擁有更精細的步幅(例如,最小級別上的像素為4),相對于RoIPool,RoIAlign仍表現(xiàn)出的顯著進步并且將APkp提高了4.4點。這是因為關(guān)鍵點檢測對定位準確度更加敏感。這再次表明,對準對于包括掩膜和關(guān)鍵點的像素級別定位至關(guān)重要。
??鑒于掩膜R-CNN在抽取對象邊界框、掩膜和關(guān)鍵點方面的有效性,我們預(yù)期它會成為用于其他實例級別任務(wù)的有效框架。

表7.城市風(fēng)景val (‘AP [val]’列)和測試(其余列)集的結(jié)果。我們的方法使用了ResNet-50-FPN。

A. 關(guān)于城市風(fēng)景的實驗

??我們進一步報告了城市風(fēng)景[7]數(shù)據(jù)集上的實例分割結(jié)果。該數(shù)據(jù)集擁有針對2975個訓(xùn)練圖像、500個驗證圖像和1525個測試圖像的精細注釋。它擁有20k不帶實例注釋的粗糙的訓(xùn)練圖像,我們并沒有使用這些圖像。所有圖像的像素都是固定的2048×1024的像素。該實例分割任務(wù)涉及8種對象類別,這些類別在精細測試集中的實例數(shù)量為:



??該任務(wù)上的實例分割效果由COCO形式的掩膜AP進行測量(在IoU閾值上進行平均);AP50(例如,在0.5的 IoU 上的掩膜AP)也得到了報告。
??實施:我們應(yīng)用了帶ResNet-FPN-50主干架構(gòu)的掩膜R-CNN模型;我們已經(jīng)測試了101層的對應(yīng)物,并發(fā)現(xiàn)它的效果與之類似,因為兩者的數(shù)據(jù)集都較小。我們使用從 [800, 1024] 中隨機取樣的圖像尺度(較短的邊)進行訓(xùn)練,這降低了過擬合的概率;推理是在1024像素的單個尺度上進行的。我們使用每個GPU 上1個圖像(因此 8個GPU上8個圖像也有效)的最小批量尺寸并訓(xùn)練了24k迭代的模型,從學(xué)習(xí)率為0.01開始并將在18k迭代的時候?qū)⑵浣档蜑?.001.其他實現(xiàn)細節(jié)與3.1中的細節(jié)相同。
??結(jié)果:表7將val和test集上我們的結(jié)果與最先進方法的結(jié)果進行了比較。在沒有使用粗糙訓(xùn)練集的情況下,我們的方法在test上達到了26.2 的AP,與使用了精細和粗糙標簽的最好條目相比,我們的方法在AP方面有了30%的相對提高。與僅適用精細標簽的最好條目(17.4的 AP) 相比,我們?nèi)〉昧思s50%的提高。在8個GPU的單個機器上訓(xùn)練,得到此結(jié)果需要約4個小時。
??對于人物和汽車的類別,城市風(fēng)景數(shù)據(jù)集中出現(xiàn)了大量類別重疊的實例(平均每個圖像中有6個人物和9輛汽車)。我們認為,類別內(nèi)的重疊是實例分割的核心難點。與現(xiàn)有最好的條目相比,我們方法在這兩種類別上的效果表現(xiàn)出大幅度的提高(在人物的效果上從16.5 提高到 30.5,約提高了85%;在汽車上的效果從35.7提高到46.9,約提高了30%)。
??城市風(fēng)景數(shù)據(jù)集的主要挑戰(zhàn)是低數(shù)據(jù)流型的訓(xùn)練模型,尤其在卡車、公共汽車和火車等類別上,這些類別中的每種類別都有約200-500個訓(xùn)練樣本。為部分地糾正這個問題,我們進一步報告了使用COCO預(yù)訓(xùn)練的結(jié)果。為此,我們從預(yù)訓(xùn)練的COCO 掩膜 R-CNN 模型的城市風(fēng)景中初始化了7種對應(yīng)的類別(駕駛?cè)藛T隨機進行初始化)。我們經(jīng)過4k的迭代對這個模型進行微調(diào),學(xué)習(xí)率在3k迭代時降低,由于COCO模型的原因,該訓(xùn)練耗費了約1個小時。

圖7. 掩膜R-CNN在城市風(fēng)景test上的結(jié)果(32.0的AP)。右下角的圖像顯示出不準確的預(yù)測。

??COCO預(yù)訓(xùn)練的掩膜 R-CNN 模型在test上達到了32.0的AP,幾乎比只使用精細訓(xùn)練集的對應(yīng)模型提高了整整6點。這表明,訓(xùn)練數(shù)據(jù)的數(shù)量發(fā)揮著至關(guān)重要的作用。它還表明,城市風(fēng)景的實例分割方法可能受到其低準確率的學(xué)習(xí)效果的影響。本文表明,對于解決涉及到此數(shù)據(jù)集的有限數(shù)據(jù)的問題而言,使用COCO預(yù)訓(xùn)練是非常有效的策略。
??最后,我們觀察到val 和 test AP之間的偏差,正如在[23, 4]中的結(jié)果中觀察到的一樣。我們發(fā)現(xiàn),這種偏差主要是由于卡車、公共汽車和火車類別導(dǎo)致的,這幾種類別在僅使用精細訓(xùn)練集的模型中的val/test AP分別為 28.8/22.8、53.5/32.2和33.0/18.6。這表明,這些類別中存在域的改變,且這些類別的訓(xùn)練數(shù)據(jù)也非常少。COCO預(yù)訓(xùn)練有助于最大限度地提高這些類別的結(jié)果;然而,域的改變?nèi)匀淮嬖?,在這種情況下,這些類別的val/test AP分別為38.0/30.1、57.5/40.9和 41.2/30.9。請注意,我們在人物和汽車類別中并沒有觀察到此類偏差(val/test AP的偏差在±1點之內(nèi))。
??圖7顯示了城市風(fēng)景方面的實例結(jié)果。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容