【CV論文筆記】Rich feature hierarchies for accurate object detection and semantic segmentation(RCNN理解))

本文主要用于介紹rbg大神于2014年提出的RCNN網(wǎng)絡(luò),該網(wǎng)絡(luò)架構(gòu)也奠定了神經(jīng)網(wǎng)絡(luò)在目標檢測領(lǐng)域應(yīng)用的基礎(chǔ)。本筆記主要為方便初學者快速入門,以及自我回顧。

論文鏈接:https://arxiv.org/pdf/1311.2524.pdf
github主頁:https://github.com/rbgirshick/rcnn
rbg大神個人主頁:http://www.rossgirshick.info/#girshick2014rcnn

基本目錄如下:

  1. 摘要
  2. 核心思想
  3. 總結(jié)

------------------第一菇 - 摘要------------------

1.1 論文摘要

在PASCAL VOC數(shù)據(jù)集上做測驗的目標檢測算法,在過去幾年(2013年前)突破并不大。其中最優(yōu)的方法是一種復(fù)雜的集成系統(tǒng),將高緯度的圖像特征與低緯度的圖像特征相結(jié)合。在本論文中,我們提出了一種新的可量化的檢測算法,將過去在PASCAL VOC數(shù)據(jù)集上取得的最優(yōu)map(mean average precision)53.3%提升了超過30%。論文提出的方法包含2個關(guān)鍵點,首先就是用CNN網(wǎng)絡(luò)在建議區(qū)域(region proposals)來定位和分割物體,其次當標注數(shù)據(jù)稀缺的時候,我們用其他任務(wù)中監(jiān)督訓(xùn)練出來的網(wǎng)絡(luò)來達到預(yù)訓(xùn)練的目的,實驗表明該做法能提高網(wǎng)絡(luò)表現(xiàn)。因為論文結(jié)合了CNN和region proposals,該方法又被稱為R-CNN:提出的區(qū)域由CNN提取特征。

------------------第二菇 - 核心思想------------------

2.1 論文的突破點

本篇論文是極具歷史意義的,因為其奠基了后續(xù)一系列的目標檢測/語義分割神經(jīng)網(wǎng)絡(luò)模型,因此有必要優(yōu)先強調(diào)一下本論文的突破點是什么。

在2010-2012年期間,目標檢測算法采用的依舊是傳統(tǒng)圖像特征因子算法(有興趣的同學可以了解一下,不過現(xiàn)在基本都不用了),但其效果一直停滯不前。而在2012年ImageNet上大放異彩的CNN網(wǎng)絡(luò)也只適用于分類任務(wù),并不直接適用于目標檢測。

因此,目標檢測領(lǐng)域一個新的研究方向就此誕生,即能多大程度的運用CNN的圖片分類結(jié)果來幫助提高目標檢測算法的精度?

本文就在圖片分類和目標檢測之間,首次架起了橋梁!并且首次用實驗表明CNN網(wǎng)絡(luò)能極大的提高目標檢測算法的精度!

能否架起橋梁,有2個核心關(guān)鍵點:
1)如何用深度神經(jīng)網(wǎng)絡(luò)來實現(xiàn)定位問題(localizing objects)
2)如何用有限的數(shù)據(jù)來訓(xùn)練神經(jīng)網(wǎng)絡(luò)

第1個關(guān)鍵點,傳統(tǒng)上有2個解決辦法:
1)將定位問題轉(zhuǎn)化為回歸問題。實驗證明效果并不好。
2)滑動窗口檢測。實驗證明精準定位效果不佳(往往由于窗口過大造成)
因此,本文沒有采用上述2種方法,而是采用區(qū)域建議(region proposals,簡單理解就是用某種方法,選取潛在的備選框),將這些框輸入到CNN網(wǎng)絡(luò)中提取特征,再利用SVM進行分類~

第2個關(guān)鍵點,本文的實驗表明,利用其他任務(wù)的大數(shù)據(jù)(比如圖片分類),提前預(yù)訓(xùn)練CNN網(wǎng)絡(luò),再用目標檢測數(shù)據(jù)集進行微調(diào),能極大的提升模型表現(xiàn)~

有了以上的初步認識后,我們再來細品一下具體的模型架構(gòu)~

2.2 R-CNN模型架構(gòu)

話不多說,我們先上一張,論文自己給出的模型架構(gòu)圖。

R-CNN模型架構(gòu)圖.png

上面的流程圖可以說是非常的清晰了,總共由3部分組成,
1)提出候選區(qū)域(Region proposals):在過去已經(jīng)由很多種提取候選區(qū)域的辦法啦,主要用的還是傳統(tǒng)的圖像算法,本文所采用的就是一種名為“selective search”的方法。這里簡單提一下該方法,其核心思想就是先利用圖的圖像分割方法將圖分割成很多很多小塊,然后使用貪心策略,計算每個相鄰區(qū)域的相似度,每次合并最相似的兩塊,直到最終只剩下一塊完整的圖片(而這其中產(chǎn)生的圖像塊就是我們要的候選區(qū)域),具體想了解更多的同學可以參考這篇博客。

2)特征提?。‵eature Extraction):這里比較關(guān)鍵的一個點就是上一個流程出來的候選區(qū)域的尺度都是不一致的,但是輸入到CNN網(wǎng)絡(luò)中的圖片必須要求是227*227的,因此中間過渡轉(zhuǎn)換的這一步預(yù)處理也是至關(guān)重要的。本文采用了一種最簡單的,即無視候選區(qū)域的大小尺度,一起“縮放/打包(wrap)”進一個固定大小的框(作者這里提到了在候選區(qū)域外面還擴大了一個16寬的邊框,理論上是為了考慮更多的背景信息)。這里有很多處理的細節(jié)論文沒有具體展開說,有興趣的同學可以看一下源碼(有點久遠,真的有空的再去看吧哈哈)

3)利用SVM進行分類:這就沒什么好展開說的了,值得補充的一點就是作者還訓(xùn)練了一個回歸器用于對第一階段提出的區(qū)域進行調(diào)整,從而得到更精確的位置。

至此整個模型架構(gòu)算是理清了,我們再來看看訓(xùn)練細節(jié)~

2.3 訓(xùn)練細節(jié)

如上述所說,訓(xùn)練也分為3部分,

1)有監(jiān)督的預(yù)訓(xùn)練(Supervised pre-training):主要是預(yù)訓(xùn)練CNN的參數(shù),利用圖像分類的大量標注數(shù)據(jù)。

2)特定領(lǐng)域的微調(diào)(Domain-specific fine-tuning):把需要做目標檢測的圖像的相關(guān)特定領(lǐng)域進行微調(diào)訓(xùn)練。

3)目標分類訓(xùn)練(Object category classifiers):這里存在一個正負樣本不平衡的問題。。。畢竟背景的區(qū)域肯定是要比目標區(qū)域大的。。。這里論文也沒有具體展開來說,有興趣的同學可以再深入研究。

至此,整篇論文的核心已經(jīng)說清楚了,具體的實驗過程及結(jié)果本文不作展開,結(jié)論就是大幅提升目標檢測的效果??~

------------------第三菇 - 總結(jié)------------------

3.1 總結(jié)

到這里,整篇論文的核心思想已經(jīng)說清楚了。本論文主要是提出了一種新的思路,將CNN運用于目標檢測算法,并實驗證明其可行性,為后續(xù)發(fā)展奠定了基礎(chǔ)。

簡單總結(jié)一下本文就是先羅列了一下該論文的摘要,再具體介紹了一下本文作者的思路,也簡單表述了一下,自己對R-CNN網(wǎng)絡(luò)的理解。希望大家讀完本文后能進一步加深對該論文的理解。有說的不對的地方也請大家指出,多多交流,大家一起進步~??

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容