faster-rcnn代碼閱讀-proposal層


這一節講述proposal層,和這一層有關的結構圖如下:

proposal層的prototxt定義如下:

layer {
  name: 'proposal'
  type: 'Python'
  bottom: 'rpn_cls_prob_reshape'
  bottom: 'rpn_bbox_pred'
  bottom: 'im_info'
  top: 'rpn_rois'
#  top: 'rpn_scores'
  python_param {
    module: 'rpn.proposal_layer'
    layer: 'ProposalLayer'
    param_str: "'feat_stride': 16"
  }
}

這一層的功能是對卷積網絡中RPN輸出的bbox_deltas, scores做后處理,主要步驟如下:

1、同上節中的第一步,生成anchor;

2、將anchor和RPN網絡輸出的bbox_deltas疊加,得到proposals,剔除超出圖像區域的proposal,並刪除在原圖尺度(不是輸入網絡的尺度)上長或寬小於16的proposal;

3、將proposals按分數從大到小排序,並取前12000個做NMS,overlap閾值為0.7;

4、NMS之后,proposals仍然是按分數從大到小排序的,取前2000個(如果NMS之后proposal個數小於2000,則取全部)proposals;

5、給proposals(n x 4)添加一列,表示batch_inds(都為0),添加在第一列,最后得到的proposals的shape為n x 5。

這一層的代碼鏈接見這里,此外涉及到的其他函數有bbox_transform_invclip_boxesnms


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM