兩階段目標檢測演算法:
r-cnn:
1.對影象進行selective search生成1k~2k個候選區域
2.將每個候選區域輸入網路提取特徵
3.將特徵送入每一類的svm分類器中,判讀是否屬於該類
4.使用回歸器精細修正候選框的位置
具體的一些細節:
1.利用selective search 演算法通過影象分割的方法得到一些原始區域。然後使用一些合併策略將這些區域合併,得到乙個層次的區域結構,這些結構就包含可能需要的物體。
2.對每個候選區域使用深度網路提取特徵
將2000個候選區域縮放到227 * 227,接著將候選區域輸入到預先訓練好的alex net獲取2000 * 4096維矩陣
3.將特徵送入每一類的svm分類器,判斷類別
將20004096維特徵與20個svm組成的權值矩陣409620相乘,獲得200020維矩陣,表示每個建議框是每個目標類別的得分。對上述200020維矩陣中的每一列及進行非極大值抑制提出重疊的建議框,得到該列中得分最高的建議框(voc資料集有20類)
(演算法的缺點:1.測試速度慢,selective search演算法提取候選框花費大量時間,候選框之間存在大量重疊,提取特徵操作冗餘。
2.訓練速度慢
3.訓練所需空間大)
fast-r-cnn
1.對輸入的影象進行selective search得到1k~2k個候選區域
2.將影象輸入網路得到特徵圖(feature map),同時將候選區域投影到特徵圖上得到相應的特徵矩陣
3.通過roi pooling將特徵矩陣縮放到7*7尺寸大小的特徵圖,接著將特徵圖展平通過一系列全連線層得到**結果
分類器(輸出n+1個類別的概率(n為檢測目標的類別,1為背景)共n+1個節點)
邊界框回歸器(輸出對應n+1個類別的候選邊界框回歸引數(x,y,h,w)共(n+1)*4個節點)
損失函式:
分類損失函式+邊界框回歸損失函式
分類損失函式:交叉熵
回歸損失函式:smoothl1
1.將影象輸入到網路得到特徵圖
2.將特徵圖輸入到rpn結構生成候選框,將候選框投影到特徵圖上獲得相應的特徵矩陣
3.將每個特徵矩陣通過roi-pooling層縮放到77大小的特徵圖,接著將特徵圖通過一系列的全連線層得到**結果
rnp結構 + fast-r-cnn
rpn結構:
將輸入到backbone得到feature map,在特徵圖上使用33大小的滑動視窗,計算出滑動視窗中心相對於原始影象上的中心點,計算出k個anchor boxes沒滑動乙個位置生成乙個一維的向量,通過兩個全連線層輸出目標概率以及邊界框回歸引數,針對於k個anchor box 相應的會有2k個 sorces 和 4k個coordinates。
anchor box 是規定長寬比大小的框
三種尺度(面積)
三種比例經驗所得
這樣每個位置對應就會有3*3=9anchor
對於zf感受野:171
對於vgg感受野:228
目標檢測演算法
基於深度學習的回歸方法 yolo ssd densebox 傳統目標檢測流程 rcnn解決的就是預先找出圖中目標可能出現的位置,即候選區域,再對這些區域進行識別分類。r cnn 具體步驟如下 步驟二 對該模型做fine tuning 微調 步驟三 特徵提取 步驟四 訓練乙個svm分類器來判斷這個候選...
目標檢測演算法綜述筆記
主要參考兩篇綜述 object detection in 20 years a survey recent advances in deep learning for object detection csdn上有翻譯版,對照這翻譯版,能夠更快的理解,注意如果是菜鳥,最好review三遍,三遍是我從...
目標檢測演算法對比 目標檢測演算法工程落地
覆盤一下在實現檢測演算法落地過程中所經歷的乙個流程 列出幾點重點說明一下 1 網路的選取和調參是關鍵 網路選取 考慮到實際情況的實時性 硬體效能,需考慮參數量較小的檢測網路,更傾向於單階段式的網路 基於yolossd等的多個變體網路 其次基礎特徵提取網路backbone的替換,傳統都是vgg的特徵提...