深度學習筆記1:end-to-end、anchor box解釋、人體檢測代碼


SSDSSD: Single Shot MultiBox Detector)是採用單個深度神經網絡模型實現目標檢測和識別的方法。該方法是綜合了Faster R-CNN的anchor box和YOLO單個神經網絡檢測思路(end-to-end).

https://github.com/weiliu89/caffe/tree/ssd   (人體檢測代碼)


非end-to-end方法:
目前目標檢測領域,效果最好,影響力最大的還是RCNN那一套框架,這種方法需要先在圖像中提取可能含有目標的候選框(region proposal), 然後將這些候選框輸入到CNN模型,讓CNN判斷候選框中是否真的有目標,以及目標的類別是什麼。在我們看到的結果中,往往是類似與下圖這種,在整幅圖中用矩形框標記目標的位置和大小,並且告訴我們框中的物體是什麼。
這種標記的過程,其實是有兩部分組成,一是目標所在位置及大小,二是目標的類別。在整個算法中,目標位置和大小其實是包含在region proposal的過程裏,而類別的判定則是在CNN中來判定的。

這種標記的過程,其實是有兩部分組成,一是目標所在位置及大小,二是目標的類別。在整個算法中,目標位置和大小其實是包含在region proposal的過程裏,而類別的判定則是在CNN中來判定的。

end-to-end方法:
end-to-end方法的典型代表就是有名的yolo。前面的方法中,CNN本質的作用還是用來分類,定位的功能其並沒有做到。而yolo這種方法就是隻通過CNN網絡,就能夠實現目標的定位和識別。也就是原始圖像輸入到CNN網絡中,直接輸出圖像中所有目標的位置和目標的類別。這種方法就是end-to-end(端對端)的方法,一端輸入我的原始圖像,一端輸出我想得到的結果。只關心輸入和輸出,中間的步驟全部都不管。

候選區域(anchor)

備註:具體是咋樣實現的,目前還沒搞清楚,先知道大概是個啥就ok,後續弄明白就好。

特徵可以看做一個尺度51*39的256通道圖像,對於該圖像的每一個位置,考慮9個可能的候選窗口:三種面積{1282,2562,5122}×三種比例{1:1,1:2,2:1}。這些候選窗口稱爲anchors。下圖示出51*39個anchor中心,以及9種anchor示例。



參考文獻:
https://www.zhihu.com/question/51435499/answer/129543052 (end-to-end)
http://blog.csdn.net/shenxiaolu1984/article/details/51152614 (anthor)
https://zhuanlan.zhihu.com/p/25100992?refer=shanren7(ssd源碼解釋)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章