前言
? ? 純屬個(gè)人學(xué)習(xí),不做商用您觉,如有侵權(quán)請(qǐng)聯(lián)系作者拙寡。此外也并非完全翻譯,那沒有意義琳水,同時(shí)也摻雜了挺多個(gè)人的理解肆糕,不到位的可以互相交流。
? ? 這是開源不久的單階段目標(biāo)檢測(cè)器在孝,主要工作在于特征金字塔方面诚啃,北大和達(dá)摩的作品,AAAI2019收錄浑玛,論文地址:https://arxiv.org/abs/1811.04533绍申,Github地址:https://github.com/qijiezhao/M2Det。
摘要
? ? 為了解決物體的多尺度問題顾彰,單階段和雙階段的檢測(cè)器均采用了特征金字塔結(jié)構(gòu)。盡管結(jié)果感人胃碾,但仍存在一定的限制涨享,因?yàn)樗鼈兙皇呛唵蔚厥褂昧薭ackbone生成的天然的多尺度特征金字塔,這些backbone是為分類任務(wù)設(shè)計(jì)的(意思是適用于分類的不一定很好的適用于檢測(cè))仆百。本文中厕隧,為了構(gòu)造更加有利于檢測(cè)多尺度物體的特征金字塔架構(gòu),作者提出了多層級(jí)的FPN(MLFPN),分三步:
1. 融合backbone提取的多層特征圖作為basic feature吁讨。
2. 利用TUM和FVM的模塊交替生成一系列的特征金字塔髓迎。
3.利用SFAM模塊將第2步生成的金字塔中的尺度相同的特征層concat起來。
將該結(jié)構(gòu)稱之為M2Det并集成進(jìn)SSD結(jié)構(gòu)建丧。COCO數(shù)據(jù)集上排龄,測(cè)試時(shí)單尺度下,M2Det 取得了41翎朱,0的mAP,11.8幀橄维,多尺度下取得了 44.2的mAP,達(dá)到了SOTA的結(jié)果拴曲。
介紹
????解決尺度不變性有兩個(gè)方法争舞,第一個(gè)是傳統(tǒng)的圖像金字塔,毫無疑問費(fèi)時(shí)費(fèi)力澈灼,要用的話也只是在測(cè)試的時(shí)候竞川,多尺度的測(cè)試其實(shí)也就是利用了圖像金字塔。第二個(gè)就是現(xiàn)在流行的特征金字塔啦叁熔,圖一中說明了幾種風(fēng)格的特征金字塔委乌,簡單說就是SSD獨(dú)立地利用了最后兩層地特征,并額外的構(gòu)造了四個(gè)金字塔層級(jí)者疤,F(xiàn)PN加入了橫向和自頂向下地連接福澡,STDN只是利用了最后一個(gè)block的特征。
作者diss圖1中a,b,c三種方法的缺陷是:
1. backbone是為分類而設(shè)計(jì)的網(wǎng)絡(luò)驹马,提取的特征不一定適合于檢測(cè)革砸。
2. single-level information,個(gè)人理解的意思是金字塔的每一層的feature map幾乎均是來自于同一層,信息單一(但是FPN也有頂層的啊糯累,作者也沒說明算利,不過大致應(yīng)該是這個(gè)意思)
通常意義上認(rèn)為深層的特征有助于分類而淺層任務(wù)有助于回歸,而且泳姐,淺層特征適合于表征外觀簡單的物體效拭,而深層特征適合于表征外觀復(fù)雜的物體。實(shí)際中胖秒,相同大小的物體的外觀復(fù)雜度可能完全不同缎患,比如近處的紅綠燈相比于遠(yuǎn)處的人體,在現(xiàn)有的結(jié)構(gòu)中這兩者應(yīng)該是在同一層級(jí)被檢測(cè)到阎肝,但是這兩者需要的特征語義深度是不一樣的挤渔,人體需要更深的語義而紅綠燈則只需要淺層的語義特征急灭,所以有損現(xiàn)有的檢測(cè)器的性能虑粥。
? ? 因此本文旨在提出一個(gè)更加有效的適合于檢測(cè)的特征金字塔結(jié)構(gòu)挖胃。
Method
? ? 相關(guān)工作就不說了,畢竟論文也需要湊字?jǐn)?shù)区匣。下面的才是本文的工作呕臂,也是重點(diǎn)截歉。圖2是整體架構(gòu)圖脓诡,其中FFM1,TUM擂红,F(xiàn)FMv2以及SFAM均是該文提出的仪际,以下分別介紹:
1. FFMv1
見圖3(a)弟头,有兩個(gè)輸入,來自于圖2的最后兩個(gè)stage的卷積層(SSD結(jié)構(gòu))涉茧,1024*20*20輸出512*20*20上采樣得到512*40*40與256*40*40concat得到768*40*40赴恨。
2. TUM
見圖3(c),U型decoder結(jié)構(gòu)伴栓,輸出6個(gè)尺度的特征圖伦连。有8個(gè)層級(jí),表示有8個(gè)TUM結(jié)構(gòu)钳垮,一個(gè)TUM表示一個(gè)層級(jí)惑淳。仔細(xì)一看應(yīng)該是類似于FPN的那個(gè)top-down和橫向連接的方式
3. FFMv2
兩個(gè)輸入,一個(gè)是FFMv1的輸出饺窿,另一個(gè)是上一個(gè)TUM的尺度最大的輸出(128,40,40)歧焦,cancat一波得到256*40*40,構(gòu)成當(dāng)前層級(jí)的TUM的輸入。
除了第一個(gè)TUM的輸入是直接來自于FFMv1的輸出肚医,剩下的TUM均是來自于FFMv2的輸出绢馍。而FFMv2又是來自于FFMv1和上一個(gè)TUM的輸出,加入FFMv1應(yīng)該是類似于殘差的想法肠套。
4. SFAM結(jié)構(gòu)
由圖2可知有了8個(gè)層級(jí)的TUM的輸出舰涌,每個(gè)TUM均會(huì)輸出6個(gè)尺度(圖3c),SFAM就負(fù)責(zé)這些不同層級(jí)不同尺度的融合:對(duì)每一個(gè)尺度而言你稚,從8個(gè)層級(jí)抽取該尺度的特征圖concat到一起(128*8=1024)瓷耙,語義也就實(shí)現(xiàn)了從淺到深,再利用SE block對(duì)channel做了一個(gè)Attention刁赖。之后就得到了6個(gè)尺度的特征金字塔搁痛,金字塔的每一層均是來自于8個(gè)從淺到深的語義層級(jí),也就是所謂的Multi-level宇弛。這就是不同于現(xiàn)有的金字塔的結(jié)構(gòu)的地方落追。
最后再利用了兩個(gè)卷積層進(jìn)行分類和回歸就能得到最后的結(jié)果。很明顯涯肩,個(gè)人感覺8個(gè)TUM應(yīng)該會(huì)引入較大的參數(shù)量轿钠,但是從結(jié)果來看卻又還行,參數(shù)比retinanet要少病苗,精度也更高疗垛。
Discussion
? ? 作者指出,最后結(jié)果的提升在于引入了本文提出的MLFPN硫朦,支撐點(diǎn)有兩:
1. 得到了多尺度多層級(jí)的特征金字塔
2. 金字塔每一層有不同語義層級(jí)的特征贷腕。
說實(shí)話這不就是同一個(gè)理由嘛,就是好就好在用了多尺度多層級(jí)的特征金字塔結(jié)構(gòu)咬展。可視化激活圖如下:
這張圖挺有意思的泽裳,說明一下,原圖中有一大一小兩人和兩車以及一個(gè)紅綠燈破婆,小車小人以及紅綠燈尺度相差不大涮总,從圖中可以看出來:
1. 對(duì)比與小車和小人,大車和大人在小尺度的特征圖上激活值更大(原論文筆誤)
2. 小人祷舀、小車和紅綠燈在同一尺度上被激活(可以很直觀的理解瀑梗,因?yàn)槌叨纫恢拢?/p>
3. 紅綠燈、小車以及小人在由淺到深的特征圖上被激活(這就印證了作者的假設(shè)裳扯,由于其復(fù)雜性抛丽,相同尺度的物體需要的語義信息不一定相同)
后話
????該文章還是很細(xì)致的,易懂饰豺。感覺能把FPN和本文的工作細(xì)致的區(qū)分開就更好了亿鲜,F(xiàn)PN也是利用了多層的語義信息,但是融合卻沒有本文這么復(fù)雜冤吨,說明了在構(gòu)造特征金字塔上仔細(xì)的研究也能取得不錯(cuò)的成果蒿柳。