参考帧情况:两个参数分别是VID.RPN.REF_PRE_NMS_TOP_N(6000)、VID.RPN.REF_POST_NMS_TOP_N(75) 关键帧且训练的情况:两个参数分别是RPN.PRE_NMS_TOP_N_TRAIN(12000,进行NMS前FPN的每一级应该保留的proposal数量),RPN.POST_NMS_TOP_N_TRAIN(2000,NMS之后每级保留的) 关键帧且测试的情况:两个参数分别是...
phase) # either 'TRAIN' or 'TEST' 阶段为train和test的时候nms的输入输出数目不一样 # Number of top scoring boxes to keep before apply NMS to RPN proposals # 对RPN结果使用NMS之前需要保留的框 pre_nms_topN = cfg[cfg_key].RPN_PRE_NMS_TOP_N # 12000 # Number of top scoring boxes to ...
# 默认rpn_pre_nms_top_n_train = 2000, rpn_pre_nms_top_n_test = 1000, # 默认rpn_post_nms_top_n_train = 2000, rpn_post_nms_top_n_test = 1000, rpn_pre_nms_top_n = dict(training=rpn_pre_nms_top_n_train, testing=rpn_pre_nms_top_n_test) rpn_post_nms_top_n = dict(traini...
按照输入的positive softmax scores由大到小排序anchors,提取前pre_nms_topN(e.g. 6000)个anchors,即提取修正位置后的positive anchors 限定超出图像边界的positive anchors为图像边界,防止后续roi pooling时proposal超出图像边界(见文章底部QA部分图21) 剔除尺寸非常小的positive anchors 对剩余的positive anchors进行NMS(...
[2]#图像信息51cfg_key = input[3]#是training还是test5253#设置一些参数54pre_nms_topN =cfg[cfg_key].RPN_PRE_NMS_TOP_N55post_nms_topN =cfg[cfg_key].RPN_POST_NMS_TOP_N56nms_thresh =cfg[cfg_key].RPN_NMS_THRESH57min_size =cfg[cfg_key].RPN_MIN_SIZE5859#批尺寸60batch_size =bbox_...
(self.phase) # either 'TRAIN' or 'TEST'#cfg_key = 'TEST'pre_nms_topN = cfg[cfg_key].RPN_PRE_NMS_TOP_N#12000/6000post_nms_topN = cfg[cfg_key].RPN_POST_NMS_TOP_N#2000/300nms_thresh = cfg[cfg_key].RPN_NMS_THRESH#均为0.7min_size = cfg[cfg_key].RPN_MIN_SIZE#proposal在...
个人感觉是res2net,ghostnet的结合,并且训练阶段没引入过多的trick,最后的实验结果很惊艳,或许是炼丹...
# return the top proposals (-> RoIs top, scores top) assertbottom[0].data.shape[0]==1, \ 'Only single item batches are supported' cfg_key=str(self.phase)# either 'TRAIN' or 'TEST' pre_nms_topN=cfg[cfg_key].RPN_PRE_NMS_TOP_N ...
在所有anchors中筛选出top_k个anchors,top_k由参数pre_nms_top_n决定。 将筛选之后得到的anchors和它对应的box回归值进行结合,得到对应的Proposals。(box回归值就是RPN预测的anchors的偏移量) 将面积小于min_size的Proposals去除掉,min_size由参数min_size决定。