OHEMgithub地址
https://github.com/abhi2610/ohem
结果可以重现的 论文结果 重现结果
Fast R-CNN (FRCN) VOC 07 trainval VOC 07 test 66.9 67.6
FRCN with OHEM VOC 07 trainval VOC 07 test 69.9 71.5
FRCN with OHEM VOC 07 trainval + 12 trainval VOC 07 test 74.6 75.5
最高结果,未复现 +M是多尺度,+B是bounding box regression
FRCN with OHEM, +M, +B VOC 07 trainval + 12 trainval VOC 07 test 78.9
一.软件要求
1.需要caffe和pycaffe支持
修改Makefile.config,WITH_PYTHON_LAYER := 1,USE_CUDNN := 1 可有可无
2.安装python包 cython, python-opencv, easydict, `yaaml’
3.代码中评价时用到了非官方的MATLAB版PASCAL VOC evaluation,代码中已经包含了。
二.正式安装
1.git clone –recursive https://github.com/abhi2610/ohem.git,之后成代码所在路径为OHEM_ROOT
2.编译Cython模块
cd
OHEMROOT/libmake3.编译Caffeandpycaffecd
OHEM_ROOT/caffe-fast-rcnn
make -j16 && make pycaffe
4.下载用OHEM算法在VGG16 and VGG_CNN_M_1024上训练的Fast R-CNN模型参数
cd $OHEM_ROOT
./data/scripts/fetch_fast_rcnn_ohem_models.sh
也可以直接从下面路径下载
http://graphics.cs.cmu.edu/projects/ohem/data/fast_rcnn_ohem_models.tgz
结果会存在$OHEM_ROOT/data/fast_rcnn_ohem_models文件夹中,形式类似fast_rcnn_ohem_models/TRAINING_SET/MODEL_FILE.
三.开始训练和测试模型
1.制作数据集
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar
tar xvf VOCtrainval_06-Nov-2007.tar
tar xvf VOCtest_06-Nov-2007.tar
tar xvf VOCdevkit_08-Jun-2007.tar
VOCdevkit/ # development kitVOCdevkit/VOCcode/ # VOC utility code
VOCdevkit/VOC20072.创建PASCALVOC数据库的软连接cd
OHEM_ROOT/data
ln -s
VOCdevkitVOCdevkit2007四.下载ImageNet上预训练的模型cd
OHEM_ROOT
./data/scripts/fetch_imagenet_models.sh
五.使用方法
用OHEM算法在voc_2007_trainval数据机上训练fast rcnn框架, 用下面的脚本 experiments/scripts/fast_rcnn_ohem.sh.
在experiments/scripts/目录下找耕读的脚本. 实验结果输出会写入在
OHEMROOT/output,命令:cd
OHEM_ROOT
./experiments/scripts/fast_rcnn_ohem.sh [GPU_ID] [NET] [–set …]