2016-05-04 77 views
2

我正在INRIA Person数据集上培训Faster-RCNN(VGG-16体系结构)。我接受了180,000个训练步骤的训练。但是当我评估网络时,它会给出相同图像的不同结果。 以下是图像First Evaluation更快RCNN评估

Second Evaluation

Third Evaluation

我不知道为什么它会给出不同的结果对于同一组weights.The网络的朱古力实现。 对此问题的任何深入了解都非常感谢。

下图显示了不同的网损 enter image description here

+0

为了在同一图像上得到三个不同的结果,你有什么改变?你有没有更改NMS参数?输入比例? – Shai

+0

什么都没有,完全一样。 – Tanvir

回答

4

最近,我还准备自己的数据集培训,并得到了类似的结果你的。

以下是我的经验和大家分享一下:

  1. 检查输入的格式包括:是否所有边框图像和您的边框csvfile或XML(其中总是摆出注释文件)(X1,Y1, x2,y2)是否正确?

  2. 然后检查roidb/IMDB加载Python脚本(穿上FasterRCNN/lib目录/集/ pascal_roi.py,也许你是inria.py), 确保_load_xxx_annotation()正确加载的所有边框的打印bounding_box和文件名。 重要,如果您的脚本被复制并修改了pascal_roi.py或任何原型脚本,请检查它是否将所有roi和图像信息保存到缓存文件中,如果是,则需要在更改任何配置文件时删除该缓存文件并重新尝试。

  3. 最后,确保所有包围盒正确地生成当网络是训练(在FasterRCNN/LIB/roi_data_layer/layer.py所示例如打印minibatch变量来显示文件名和对应的X1,Y1,X2,Y2) 。如果roi发生器正确生成,边界框在很大程度上与手动选择边界框不会有差别。

一些类似的issue也可能导致此问题。