轉自 https://blog.csdn.net/gbyy42299/article/details/80352418
Faster rcnn的整體構架:
訓練的大致過程:
1、圖片先縮放到MxN的尺寸,之后進入vgg16后得到(W/16,H/16)大小的feature map;
2、對於得到的大小為(W/16,H/16)的feature map上的每一個位置,都生成三種比例、三種(rotio、scale)尺度的anchors,Anchor即給出一個基准窗大小,按照倍數和長寬比例得到不同大小的窗。例如論文中基准窗大小為16,給了(8、16、32)三種倍數和(0.5、1、2)三種比例,這樣能夠得到一共9種尺度的anchor。
因此,在對60*40的map進行滑窗時,以中心像素為基點構造9種anchor映射到原來的1000*600圖像中,映射比例為16倍。那么總共可以得到60*40*9大約2萬個anchor;
3、每個anchor經過回歸后對應到原圖,然后再對應到feature map經過roi pooling后輸出7*7的大小的map;
4、最后對這個7*7的map進行分類和回歸。
Roi pooling層詳解:
Roi pooling層也是pooling層的一種,只是是針對於Rois的pooling操作而已。
Roi pooling層的過程就是為了將proposal摳出來的過程,然后resize到統一的大小。
Roi pooling層的操作如下:
1、根據輸入的image,將Roi映射到feature map對應的位置;
2、將映射后的區域划分為相同大小的sections(sections數量和輸出的維度相同);
3、對每個section進行max pooling操作;