LightHeadRCNN实现细节思考与Debug
本文介绍 LightHeadRCNN实现细节思考与Debug
LightHeadRCNN实现细节思考与Debug
This article was original written by Jin Tian, welcome re-post, first come with https://jinfagang.github.io . but please keep this copyright info, thanks, any question could be asked via wechat:
jintianiloveu
lightheadRCNN当中存在一个Proposal模块,这个与SSD是不同的。最近在训练LightHeadRCNN过程中频繁出现一些小问题。这里做一个记录。
## Proposal模块
proposal这里的nms,注意有很多次。所谓的提建议模块,说白了,就是给网络提出候选框的。这里候选框一般称作为ROIs。ROI和anchors有啥区别呢?其实就是一个坐标转换的关系。但凡是anchors都是坐标归一化的东西,从anchors转换到ROI,那么就需要进行decode,解码坐标,从而将坐标转换到图片尺寸下。
其实proposal实际上做的工作就是,将RPN网络输出的anchors(筛选之后的anchor),进行nms之类的工作,是得它更加的纯净。那Proposal之后出来的ROI实际上就已经差不多是比较准确的物体位置了(但仅仅限于anchor所能产生的位置,对于anchor无法覆盖的区域是不准确的,需要微调)。
发现的一些问题:
- 使用Resnet101作为后端,如何网络从0开始训练,在最开始的时候roi很多宽度为0,这样的话你很可能给到loss计算的roi就没有了(被min_size给filter掉了)此时应该怎么办?当然用与训练权重是可以的。
- 原文作者:金天
- 原文链接:https://jintian93.github.io/post/2019_07_22_14_LightHeadRCNN%E5%AE%9E%E7%8E%B0%E7%BB%86%E8%8A%82%E6%80%9D%E8%80%83%E4%B8%8EDebug/
- 版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可,非商业转载请注明出处(作者,原文链接),商业转载请联系作者获得授权。