rpn網路結構再分析

2021-09-08 20:08:36 字數 1247 閱讀 6165

這是rpn網路train階段的網路結構圖

rpn_conv1之前的網路是特徵提取層,也是和fast rcnn共享的層。rpn_conv1是一層1*1的卷積,這一層是單獨為rpn網路多提取一層特徵,這一層之後就接兩個輸出channel層不同的1*1的卷積(即分別進行score的**和座標補償值的**),這樣保證feature map的大小不變。

rpn_cls_score:bach_size*18*width*height

rpn_cls_score_reshape:batch_size*2*(9*width)*height

rpn_bbox_pred:batch_size*36*width*height。每4個channel對應一種型別的anchor(即乙個尺寸和乙個ratio),因為有9種型別的anchor,所有一共也就有36個channel。以前4個channel為例,第乙個channel的feature map每乙個值是每個位置中心點x方向的補償值dx,第二個channel的feature map每乙個值是每個位置中心點y方向的補償值dy,第三個channel的feature map每乙個值是每個位置寬度的補償值dw,第四個channel的feature map每乙個值是每個位置長度的補償值dh。再來說一下這前四個channel的每個feature map,這4個channel的feature map的相對應位置都是對應的乙個anchor,比如4個channel的第乙個值都是對應的第一種型別anchor的第乙個anchor。每個feature map是width*height大小,也就有width*height個值,生成rpn本身就是在這個feature map上進行滑動生成(width*height*anchor類別數)個anchor,這樣的話,第乙個feature map的第乙個值對應的應該是第一種型別的anchor在這個位置上dx補償值。

為什麼不直接從rpn_conv1生成rpn_cls_score_reshape?

channel變成2很好實現,但feature map的寬度是個問題。因為rpn_cls_score_reshape的feature map的寬度是9*width,而rpn_conv1是width,直接卷積變成寬度的9倍,我目前還沒看到過,reshape成9倍就很好實現。並且對於後面的rpn生成也有幫助,這個後續還要寫一些東西

那為什麼又要轉成rpn_cls_score_reshape的形狀呢?

主要是為了分成兩類,然後計算概率值,最開始只是乙個score值

caffe學習筆記 網路結構分析

最近的事情比較多,忙過之後終於有時間整理一下思緒了。在做課題之餘,把caffe框架的網路結構好好梳理了一番,希望可以幫助到有需要的人。test iter 100 階段迭代次數為100,設定 迭代次數為100可以覆蓋全部的10000個測試集 carry out testing every 500 tr...

c s網路結構

採用c s 客戶端和服務端模式進行檔案和命令資料的傳輸,以及資料的交換。c s 和b s p2p等多種技術想結合。一,cs 網路的實現 採用傳統的客戶端和服務端模式,用tcp ip 協議進行資料的互動和傳遞。二,cs網路開發 模仿著名的灰鴿子軟體,灰鴿子的到來,給網路世界,帶來了新的活力,給人們帶來...

GPRS網路結構

gprs網路結構圖 bts base transceiver station,基站收發臺 bts可看作乙個無線數據機,負責移動訊號的接收和傳送處理 bsc base station controller,基站控制器 msc mobile switching center,移動交換中心 整個gprs網...