FSAF 让网络自己决定实例输出层
目標(biāo)檢測系列文章
yolo v1原理:https://blog.csdn.net/cjnewstar111/article/details/94035842
yolo v2原理:https://blog.csdn.net/cjnewstar111/article/details/94037110
yolo v3原理:https://blog.csdn.net/cjnewstar111/article/details/94037828
SSD原理:https://blog.csdn.net/cjnewstar111/article/details/94038536
FoveaBox:https://blog.csdn.net/cjnewstar111/article/details/94203397
FCOS:https://blog.csdn.net/cjnewstar111/article/details/94021688
FSAF: https://blog.csdn.net/cjnewstar111/article/details/94019687
1.FSAF簡介
全稱為:Feature Selective Anchor-Free Module。為包含F(xiàn)PN的單階段檢測框架增加一個FSAF模塊,從而由網(wǎng)絡(luò)自己選擇哪個層來預(yù)測哪個實例。
?
2.傳統(tǒng)一階段檢測框架(含F(xiàn)PN)是如何進(jìn)行實例選擇的?
如下圖所示,樣本輸入到檢測框架之后,會根據(jù)樣本中的bounding box和FPN中每一個層的anchors求IOU,與哪個anchor的IOU最大,那么那個anchor所在的層用來預(yù)測該實例。下圖中的汽車實例和P4層的第一個anchor的IOU最大(紅色實線框),那么就由P4來負(fù)責(zé)汽車實例的輸出。
由于每一層的anchor是預(yù)先根據(jù)經(jīng)驗設(shè)置的,然后通過與anchor的IOU決定哪一層來預(yù)測實例,實際上也是根據(jù)經(jīng)驗來決定由哪一層來預(yù)測該實例,所以是基于啟發(fā)式的。那么這種基于啟發(fā)式的,經(jīng)驗性的選擇是最優(yōu)的嗎?能否使用網(wǎng)絡(luò)自己來決定哪個實例由哪個層來輸出?
?
3.FSAF模塊架構(gòu)圖
為了讓網(wǎng)絡(luò)自己決定由哪一層來輸出實例,引入了FSAF模塊,結(jié)構(gòu)如下圖所示:
這是論文中的原圖,可能不是很清晰,下面這個是我根據(jù)自己的理解繪制的FSAF模塊的架構(gòu)圖。以P4特征輸出為例,兩個藍(lán)色的子網(wǎng)絡(luò)為原來的anchor based的子網(wǎng)絡(luò),一個負(fù)責(zé)輸出類別,維度是H*W*K*A(K是類別數(shù),A是anchor數(shù)),另一個負(fù)責(zé)輸出四個點的位置偏移。FSAF模塊在原來的兩個分支結(jié)構(gòu)中各增加一個小的分支,同樣的,一個輸出類別,一個輸出位置偏移信息。由于沒有使用anchor,所以輸出的類別維度為H*W*K。
?
4.FSAF模塊如何選擇實例?
通過上面的講解,FASF模塊實際上也是一個完整的物體框預(yù)測子網(wǎng)絡(luò),它能輸出實例的類別和偏移量,本質(zhì)上就是一個檢測子網(wǎng)絡(luò)。但是它的特點是非常輕量級。那么FSAF模塊是如何根據(jù)這兩個新增加的分支來決定某個實例由哪個feature map來負(fù)責(zé)輸出呢?答案是根據(jù)loss值的大小。同樣先看論文中的圖:
下面是我根據(jù)理解繪制的圖:
當(dāng)一個訓(xùn)練樣本輸入到網(wǎng)絡(luò)的時候,首先通過各個特征圖的FSAF模塊求出該特征圖下對應(yīng)的ground truth實例分類loss以及回歸loss,并對兩個loss求和,作為最終的loss。然后判斷哪個loss最小,例如上圖中的P3層的FSAF模塊的loss最小,那么就由P3層來負(fù)責(zé)對該訓(xùn)練樣本中汽車實例的訓(xùn)練。
?
5.總結(jié):
FSAF實際上是增加了一個非常輕量級的檢測子網(wǎng)絡(luò)來輔助重量級的anchor based檢測模塊來決定目標(biāo)實例由哪個特征圖來預(yù)測。由于FSAF模塊是anchor free的,所以它的選擇完全是自發(fā)的,是根據(jù)網(wǎng)絡(luò)學(xué)習(xí)到的。效果也比原來的anchor求IOU這種啟發(fā)式的方式要好。
6.參考資料:
csdn:https://blog.csdn.net/u014119694/article/details/88428707?作者:冷夏LX
知乎:CVPR2019 | 目標(biāo)檢測 FSAF:為金字塔網(wǎng)絡(luò)的每一層帶去最好的樣本 作者:ChenJoya
知乎:[CVPR2019]:FSAF for Single-Shot Object Detection 作者:孫楊威
總結(jié)
以上是生活随笔為你收集整理的FSAF 让网络自己决定实例输出层的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 4am战队成员是哪几个
- 下一篇: FCOS 基于FPN之上的完全Anch