SSD原理
目標檢測系列文章
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
基本原理
在多個尺寸的feature map上面使用anchors預測,每個anchor對應4個坐標+1組分類概率(包含背景類別)
網絡結構
實現細節
anchor生成規則:
在SSD中6層卷積層的每個特征圖的每個中心點會產生2個不同大小的正方形默認框,另外每設置一個aspect_ratio則會增加兩個長方形默認框,而文中代碼對于6層的aspect_ratio個數分別為1、2、2、2、1、1,所以這也就是為什么會產生4、6、6、6、4、4個默認框了。舉例如下:
根據以上分析,我們可以計算6層中每個特征圖的每個中心點所產生的默認框的大小,分別如下:
conv4_3:
小正方形邊長=min_size=30,大正方形邊長=sqrt(min_size*max_size)=sprt(30*60)=42.42;
長方形的寬=sqrt(aspect_ratio)*min_size=sqrt(2)*30,高=1/sqrt(aspect_ratio)*min_size=30/sqrt(2),寬高比剛好為2:1;
將以上寬高旋轉90度產生另一個長方形,寬高比變為1:2。
fc7:
小正方形邊長=min_size=60,大正方形邊長=sqrt(min_size*max_size)=sprt(60*111)=81.6;
第1組長方形的寬=sqrt(aspect_ratio)*min_size=sqrt(2)*60,高=1/sqrt(aspect_ratio)*min_size=60/sqrt(2),寬高比剛好為2:1;
將以上寬高旋轉90度產生另一個長方形,寬高比變為1:2。
第2組長方形的寬=sqrt(aspect_ratio)*min_size=sqrt(3)*60,高=1/sqrt(aspect_ratio)*min_size=60/sqrt(3),寬高比剛好為3:1;
將以上寬高旋轉90度產生另一個長方形,寬高比變為1:3。
conv6_2:
小正方形邊長=min_size=111,大正方形邊長=sqrt(min_size*max_size)=sprt(111*162);
第1組長方形的寬=sqrt(aspect_ratio)*min_size=sqrt(2)*111,高=1/sqrt(aspect_ratio)*min_size=111/sqrt(2),寬高比剛好為2:1;
將以上寬高旋轉90度產生另一個長方形,寬高比變為1:2。
第2組長方形的寬=sqrt(aspect_ratio)*min_size=sqrt(3)*111,高=1/sqrt(aspect_ratio)*min_size=111/sqrt(3),寬高比剛好為3:1;
將以上寬高旋轉90度產生另一個長方形,寬高比變為1:3。
......
位置信息(與RCNN一致)
位置信息采用(X中心,Y中心,寬,高)表示
假設anchor(default box)使用如下坐標表示
gt使用如下坐標表示
偏移使用如下公式表示:
?
損失函數
正負樣例的選擇
與gt的IOU最大的先驗框作為正樣例
剩余未匹配的先驗框如果與某個gt的IOU大于閾值(0.5),也作為正樣例
?
正負樣例平衡
采用所謂的hard negtive mining策略。即選取背景概率最大的top k個作為負樣本,使得正負樣本比例為1:3
?
參考資料
《目標檢測——one-stage 檢測(二)》
總結
- 上一篇: 瘟疫公司真菌困难攻略是什么
- 下一篇: 越野车开进古河床随意碾压:改装牧马人无视