用ImageNet的数据集训练Faster R-CNN

转自:http://blog.csdn.net/jiajunlee/article/details/50470897

训练结果

  • 第一次训练,ZF,30W张图片,200类,迭代80k40K,mAP: 18.0%

问题汇总

  • 总结:

    • ImageNet训练数据集部分标注缺失object标签
    • ImageNet训练数据集object的宽高比过大
  • 问题1: 训练迭代过程假死状态,假死代码断self.solver.step(1),是因为ImageNet有部分数据图片的.xml标注文件中缺少object标签。点击查看详细讨论

  • 问题2: 训练的数据集中object的宽高比有一定要求。否则会在RPN训练迭代过程中报如下错,原因是宽高比过大或者过小,产生的anchors在塞选inside_anchors的过程中没有找到合适的anchor,使得overlaps只有0个元素。

    anchor_target_layer.py”, line 137, in forward 
    gt_argmax_overlaps = overlaps.argmax(axis=0) 
    ValueError: attempt to get argmax of an empty sequence

    • object的bounding box的宽高比 
      • VOC2007:在0.117-15.500之间
      • ImageNet(ILSVRC2014):在0.03-48.50之间
    • 把数据的宽高比至少约束在0.117-15.500才能保证训练
  • 问题3: 训练的数据集中image宽高不能太小。否则在做im_proposal的时候,发生假死现象。

你可能感兴趣的:(C/C++编程,图像识别和分类)