Faster-RCNN 评估
Faster-RCNN Evaluation
我正在 INRIA Person 数据集上训练 Faster-RCNN(VGG-16 架构)。我接受了 180,000 个训练步骤的训练。但是当我评估网络时,它会用相同的图像给出不同的结果。
以下是图片
我不确定为什么在 caffe 中实现的同一组 weights.The 网络会给出不同的结果。
非常感谢对问题的任何见解。
下图显示了不同的网络损失
最近我也准备了自己的数据集进行训练,得到的结果和你的差不多。
以下是我的经验分享给大家:
检查输入格式包括图像和您的边界框 csv 文件或 xml(总是放在注释文件中)所有边界框(x1、y1、x2、y2)是否正确?
然后检查roidb/imdb加载python脚本(放上FasterRCNN/lib/datasets/pascal_roi.py,也许你的是inria.py),
确保 _load_xxx_annotation() 通过打印 bounding_box 和文件名正确加载所有边界框。 重要,如果你的脚本被复制并修改了pascal_roi.py或任何原型脚本,请检查它是否将所有roi和图像信息保存到缓存文件中,如果是你需要当您更改任何配置文件并重试时删除该缓存文件。
最后,确保所有边界框在网络训练时正确生成(例如打印 minibatch 变量以显示文件名和相应的 x1、y1、x2、 y2 显示在 FasterRCNN/lib/roi_data_layer/layer.py)。如果 roi 生成器正确生成,边界框将与您手动 select 边界框有很大差异。
一些类似的issue也可能会导致这个问题。
我正在 INRIA Person 数据集上训练 Faster-RCNN(VGG-16 架构)。我接受了 180,000 个训练步骤的训练。但是当我评估网络时,它会用相同的图像给出不同的结果。
以下是图片
我不确定为什么在 caffe 中实现的同一组 weights.The 网络会给出不同的结果。 非常感谢对问题的任何见解。
下图显示了不同的网络损失
最近我也准备了自己的数据集进行训练,得到的结果和你的差不多。
以下是我的经验分享给大家:
检查输入格式包括图像和您的边界框 csv 文件或 xml(总是放在注释文件中)所有边界框(x1、y1、x2、y2)是否正确?
然后检查roidb/imdb加载python脚本(放上FasterRCNN/lib/datasets/pascal_roi.py,也许你的是inria.py), 确保 _load_xxx_annotation() 通过打印 bounding_box 和文件名正确加载所有边界框。 重要,如果你的脚本被复制并修改了pascal_roi.py或任何原型脚本,请检查它是否将所有roi和图像信息保存到缓存文件中,如果是你需要当您更改任何配置文件并重试时删除该缓存文件。
最后,确保所有边界框在网络训练时正确生成(例如打印 minibatch 变量以显示文件名和相应的 x1、y1、x2、 y2 显示在 FasterRCNN/lib/roi_data_layer/layer.py)。如果 roi 生成器正确生成,边界框将与您手动 select 边界框有很大差异。
一些类似的issue也可能会导致这个问题。