faster rcnn是RCNN家族的第三個版本,它於2015年提出,基本上延續了fast rcnn的思路。不一樣的是faster rcnn採用單獨的卷積神經網絡(RPN)來進行區域候選,極大的提升了生成區域候選的速度,這使得網絡能夠端到端的訓練。faster rcnn能夠看作是fast rcnn + RPN。
本文主要介紹faster rcnn的整體思路和架構,試圖對該網絡有一個大概的瞭解。網絡
以下圖所示,整個網絡共包含三個模塊,骨架網絡(VGG),區域候選網絡(RPN),fast rcnn。圖像首先經過骨架網絡(這裏使用的骨架網絡是vgg16)進行特徵提取獲得特徵圖,而後區域候選網絡(RPN)會使用特徵圖來生成區域候選,最後生成的區域候選會和特徵圖一塊兒進入fast rcnn網絡,最終分別經過迴歸層和分類層輸出邊界框的座標偏移以及類別機率。
能夠看到,fast rcnn網絡和rpn共享卷積權重,這能夠有效的減小計算量。
架構
下圖與上圖稍微有些不一樣,但一樣表示了faster rcnn的總體架構,也是faster rcnn代碼的主體結構,同時展現了每一個子網絡的輸出和輸出大小。圖中RPN包含了上圖RPN中的3個卷積層,head包含上圖中ROI Pooling及其以後的部分。
下一節,我會重點介紹RPN的具體結構以及代碼實現
spa
Reference:
Ren, Shaoqing, et al. "Faster r-cnn: Towards real-time object detection with region proposal networks."_Advances in neural information processing systems_. 2015.orm