faster rcnn 閱讀心得分享
05-15
這篇paper是在大約半年前剛學習DL時閱讀的,雖然以目前看來已經算是過時的,但是個人認為仍不失為一篇detection入門的好paper,paper中有兩個部分的網路架構,個人認為第一個是比較主要,也是能體現論文思想的一個部分,本文也主要講述第一部分的網路.
RPN:
- 網路架構:PRN是經過一層DNN(VGG-net)提取深層特徵後,同時圖片也縮小16倍(生成的圖片在本文中稱為feature map),之後使用兩組大小為1*1的卷積神經網路分別生成(18*w*h個數字,36*w*h個數字),以下說明下這兩組數字分別代表什麼意義:
- 先說明anchor的概念,在feature map的卷積時每一個pixel映射回原圖一個中心點,以該點為中心以9個不同大小比例生成9個矩形方框,這一稱之為anchor,示例如下(我只找到三個方框的):
- 第一組的18*w*h個數字,分別表示為這9個方框屬於與不屬於物品的概率,w.h就是有多少個anchor.
- 第二組的36*w*h個數字,就是與每個之對應的ground truth(真實物品)的中心偏移量與尺寸偏移量,舉個簡單例子:以上圖紅色方框為例,假設綠色方框為與紅色方框最相近的物品那麼前兩個偏移量就應該是0.
- IoU:
- 上一點的第三小點說了一個問題:假設綠色方框為與紅色方框最相近.所以什麼是最相近的?就以IoU判斷.
- 什麼是IoU?
- 在這篇paper中IoU還有一個作用,判斷這個方框屬於物品的概率就是IoU.也就是上一大點說的18個數字中的9個.
- 在detection的訓練任務中,會有一個問題:在大部分圖片中,都會有有物件的anchor太多把無物件的anchor壓垮或者反之,簡單點說就是要不有物品的方框太多要不太少,訓練時經常達到局部最優,所以在訓練前還需要一個動作提取正樣本與負樣本(論文中說明正負樣本各取128個).
- 最後說下個人認為這篇論文的缺點:在DNN提取特徵之後每一個pixel的視野域(映射至原圖)遠不及anchor的大小,好比拿著3*3的圖片去找物品的大小一樣.
以上就是"faster rcnn"論文閱讀的大概心得,其實有幾個問題我也不太了解(有了解的大佬,請告訴小弟一聲,感激不盡):
- 為什麼RPN網路中要分為兩個網路一個輸出2*9,一個4*9,而不是直接一個6*9的網路.
- 代碼中,在正負樣本選取之後,對於不使用的樣本該如何處理,小弟使用tensorflow,的concat將計算loss後的正負樣本結合以進行反向傳遞,但是看起來反向傳遞未經過,(RGB大佬的代碼啃不動呀...),有了解的大佬請一定教會小弟一句,感激不盡.
小弟目前在啃object tracking的paper,過段時間再來分享,獻醜了.
推薦閱讀:
TAG:深度學習DeepLearning | 計算機視覺 |