-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Conversation
…d use 'BaseStem'&'Bottleneck' to simply codes
…ount of indentation and code duplication
…, and add dilation into ResNetHead
Thank you for your pull request and welcome to our community. We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file. In order for us to review and merge your code, please sign up at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need the corporate CLA signed. If you have received this in error or have any questions, please contact us at [email protected]. Thanks! |
relative to #111 |
This is awesome, thanks a lot! I started writing some comments, but then I realized that I needed to double think a few things. I'll try to get to reviewing it fully by the end of the week. Also, did you launched trainings with class-agnostic box regression (to compare against Detectron)? |
hi @fmassa
it seems |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good to me, thanks a lot!
I have only one question, but I think this can be merged already.
I'd just like to discuss a bit about it before merging.
@@ -14,7 +14,8 @@ def __init__(self, config, pretrained=None): | |||
num_classes = config.MODEL.ROI_BOX_HEAD.NUM_CLASSES | |||
self.avgpool = nn.AvgPool2d(kernel_size=7, stride=7) | |||
self.cls_score = nn.Linear(num_inputs, num_classes) | |||
self.bbox_pred = nn.Linear(num_inputs, num_classes * 4) | |||
num_bbox_reg_classes = 2 if cfg.MODEL.CLS_AGNOSTIC_BBOX_REG else num_classes |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is how Detectron implements it: by using 0 for background and 1 for the other classes.
But I'm starting to wonder if this is actually necessary here: given that we index out all negative examples via sampled_pos_inds_subset
, we don't backprop through the background elements anyway.
Given that, I think we could have only num_bbox_reg_classes = 1
, and the rest of the code should work as well.
@rbgirshick what do you think? Am I missing something here?
After a second thought, we still use the Thanks a lot! |
hi @fmassa |
Hi @zimenglan-sysu-512 , Thanks for the information, those numbers look good I think, thanks! |
@zimenglan-sysu-512 I noticed you had implement OHEM on maskrcnn-benchmark,can you share your code or give us some suggestions to implement.Thank you very much. |
hi @xxradon
u should modify the corresponding and then in
hope it can help u. |
@zimenglan-sysu-512 Thank you very much,it's very helpful. |
* make pixel indexes 0-based for bounding box in pascal voc dataset * replacing all instances of torch.distributed.deprecated with torch.distributed * replacing all instances of torch.distributed.deprecated with torch.distributed * add GroupNorm * add GroupNorm -- sort out yaml files * use torch.nn.GroupNorm instead, replace 'use_gn' with 'conv_block' and use 'BaseStem'&'Bottleneck' to simply codes * modification on 'group_norm' and 'conv_with_kaiming_uniform' function * modification on yaml files in configs/gn_baselines/ and reduce the amount of indentation and code duplication * use 'kaiming_uniform' to initialize resnet, disable gn after fc layer, and add dilation into ResNetHead * agnostic-regression for bbox
No description provided.