1. 程式人生 > >論文解讀1——Rich feature hierarchies for accurate object detection and semantic segmentation

論文解讀1——Rich feature hierarchies for accurate object detection and semantic segmentation

背景

  在2012 Imagenet LSVRC比賽中,Alexnet以15.3%的top-5 錯誤率輕鬆拔得頭籌(第二名top-5錯誤率為26.2%)。由此,convNet的潛力受到廣泛認可,一炮而紅。既然convNet在影象分類任務上能取得好成績,是不是也能放到目標檢測任務上呢。本文就是用convNet解決目標檢測任務的首次探索。在PASCAL VOC 2010上的mAP達到了53.7%。

方法

  模型一共分為三個模組。

  (1)region proposals(區域推薦))。在一張整圖上面產生很多的侯選框,因為目標檢測任務不僅要做分類,還得把目標框出來。這裡其實是用了遍歷的思想,先把可能存在目標的位置全部列出來,再一個個分類。這裡用到的是selective search演算法。

  (2)Feature extraction(特徵提取)。這部分就是通過AlexNet的前5個conv層和前2個FC層對上面產生224*224*3的圖片進行特徵提取(注意:產生的子圖片要resize到224*224*3,因為後面的FC層接受的是固定長度的vector),最終產生的是4096-d的feature vector。

  (3)SVM分類。使用SVM方法對每個4096-d的feature vector進行分類。注意,原AlexNet裡面分類是在後面加一個FC層,把4096-d的vector轉成N-d(N是類別數),然後用softmax演算法做分類。作者之所以不用這種方法是因為實驗中SVM方法效果更好。

總結

  可以發現,RCNN的原理十分簡單,先用selective search演算法在整圖上產生n個子圖,再把子圖resize到224*224*3,然後扔到AlexNet裡面(FC-softmax層去掉),產生n個4096-d的vector,用SVM演算法分類。

  它的貢獻在於是用convNet解決目標檢測問題的開山之作,模型的mAP比傳統方法高,讓更多人通過convNet來解決目標檢測問題。

缺點

  (1)它的缺點當然也是很明顯的,首先這種方法太暴力,一張圖片要產生幾千張子圖,佔用大量的磁碟空間;

  (2)還有就是效率低,我們可以發現,幾千張圖片肯定有非常多重合的部分,然而這些重合部分都要分開來計算,產生了大量的冗餘計