《anchor-based v.s. anchor-free》


 

 

 

 

 

 

 

 

 


 

作者:青青子衿
鏈接:https://www.zhihu.com/question/356551927/answer/926659692
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。

1.目標檢測算法一般可分為anchor-based、anchor-free、兩者融合類,區別就在於有沒有利用anchor提取候選目標框。

A. anchor-based類算法代表是fasterRCNN、SSD、YoloV2/V3等

fasterRCNN-設置了3種尺度3種寬高ratio一共9個anchor提取候選框

 

B. anchor-free類算法代表是CornerNet、ExtremeNet、CenterNet、FCOS等

CornerNet-直接預測每個點是左上、右下角點的概率,通過左上右下角點配對提取目標框

 

C.融合anchor-based和anchor-free分支的方法:FSAF、SFace、GA-RPN等

FSAF-既有根據先驗設定的anchor-based分支,也有anchor-free分支增強對異常ratio目標的檢測能力

2.anchor(也被稱為anchor box)是在訓練之前,在訓練集上利用k-means等方法聚類出來的一組矩形框,代表數據集中目標主要分布的長寬尺度。在推理時生成的特征圖上由這些anchor滑動提取n個候選矩形框再做進一步的分類和回歸(詳細敘述請參考提出anchor思想的fasterRCNN一文)。也就是傳統目標檢測算法中,在圖像金字塔上使用的那個m*n的滑窗。只不過傳統方法中特征圖是不同尺度的,滑窗一般是固定大小的;而類似於fasterRCNN算法中特征圖是固定的,anchor是多尺度的。

三種典型的目標檢測框架流程圖

3.Yolo算法一共有三個版本,YoloV1可以算作anchor-free類;YoloV2開始引入anchor,YoloV3也使用了anchor。

4.anchor-free類算法歸納:

A.基於多關鍵點聯合表達的方法

a.CornerNet/CornerNet-lite:左上角點+右下角點

b.ExtremeNet:上下左右4個極值點+中心點

c.CenterNet:Keypoint Triplets for Object Detection:左上角點+右下角點+中心點

d.RepPoints:9個學習到的自適應跳動的采樣點

e.FoveaBox:中心點+左上角點+右下角點

f.PLN:4個角點+中心點

B.基於單中心點預測的方法

a.CenterNet:Objects as Points:中心點+寬度+高度

b.CSP:中心點+高度(作者預設了目標寬高比固定,根據高度計算出寬度)

c.FCOS:中心點+到框的2個距離

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM