Faster R-CNN
使用的檢測框架是RPN網路+Fast R-CNN網路分離進行的目標檢測,整體流程跟Fast R-CNN一樣,只是region proposal現在是用RPN網路提取的(代替原來的selective search),RPN的核心思想是使用卷積神經網路直接產生region proposal,使用的方法本質上就是滑動視窗,RPN的設計比較巧妙,RPN只需在最后的卷積層上滑動一遍,因為anchor機制和邊框回歸可以得到多尺度多長寬比的region proposal,作者為了讓RPN的網路和Fast R-CNN網路實作卷積層的權值共享,訓練RPN和Fast R-CNN的時候用了4階段的訓練方法:
1、使用在ImageNet上預訓練的模型初始化網路引數,微調RPN網路;
2、使用(1)中RPN網路提取region proposal訓練Fast R-CNN網路;
3、使用(2)的Fast R-CNN網路重新初始化RPN, 固定卷積層進行微調;
4、固定(2)中Fast R-CNN的卷積層,使用(3)中RPN提取的region proposal微調網路,
權值共享后的RPN和Fast R-CNN用于目標檢測精度會提高一些,小結:Faster R-CNN將一直以來分離的region proposal和CNN分類融合到了一起,使用端到端的網路進行目標檢測,無論在速度上還
是精度上都得到了不錯的提高,然而Faster R-CNN還是達不到實時的目標檢測,預先獲取region proposal,然后在對每個proposal分類計算量還是比較大,比較幸運的是YOLO這類目標檢測方法的出現
讓實時性也變的成為可能,
總結:
總的來說,從R-CNN, SPP-NET, Fast R-CNN, Faster R-CNN一路走來,基于深度學習目標檢測的流程變得越來越精簡,精度越來越高,速度也越來越快,可以說基于region proposal的R-CNN系列目標檢
測方法是當前目標最主要的一個分支,
對于提取候選框最常用的SelectiveSearch方法,提取一副影像大概需要2s的時間,改進的EdgeBoxes演算法將效率提高到了0.2s,但是這還不夠,候選框提取不一定要在原圖上做,特征圖上同樣可以,低解析度特征圖意味著更少的計算量,基于這個假設,MSRA的任少卿等人提出RPN(RegionProposal Network),完美解決了這個問題,我們先來看一下網路拓撲,

通過添加額外的RPN分支網路,將候選框提取合并到深度網路中,這正是Faster-RCNN里程碑式的貢獻,
RPN網路的特點在于通過滑動視窗的方式實作候選框的提取,每個滑動視窗位置生成9個候選視窗(不同尺度、不同寬高),提取對應9個候選視窗(anchor)的特征,用于目標分類和邊框回歸,與FastRCNN類似,目標分類只需要區分候選框內特征為前景或者背景,邊框回歸確定更精確的目標位置,基本網路結構如下圖所示:

訓練程序中,涉及到的候選框選取,選取依據:
1)丟棄跨越邊界的anchor;
2)與樣本重疊區域大于0.7的anchor標記為前景,重疊區域小于0.3的標定為背景;
對于每一個位置,通過兩個全連接層(目標分類+邊框回歸)對每個候選框(anchor)進行判斷,并且結合概率值進行舍棄(僅保留約300個anchor),沒有顯式地提取任何候選視窗,完全使用網路自身完成判斷和修正,
從模型訓練的角度來看,通過使用共享特征交替訓練的方式,達到接近實時的性能,交替訓練方式描述為:
1)根據現有網路初始化權值w,訓練RPN;
2)用RPN提取訓練集上的候選區域,用候選區域訓練FastRCNN,更新權值w;
3)重復1、2,直到收斂,
因為Faster-RCNN,這種基于CNN的real-time 的目標檢測方法看到了希望,在這個方向上有了
進一步的研究思路,至此,我們來看一下RCNN網路的演進,如下圖所示:

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/293864.html
標籤:AI
