代码地址:https://github.com/smallcorgi/Faster-RCNN_TF
一、运行demo.py的流程:
本文使用的操作系统是Ubuntu!
1.按照Github中的readme.md文档安装
2.在lib文件夹使用make时,如果找不到nvcc,则在bash里面输入:
export PATH=$PATH:/usr/local/cuda/bin
3.下载模型(https://drive.google.com/file/d/0ByuDEGFYmWsbZ0EzeUlHcGFIVWM/view
)VGGnet_fast_rcnn_iter_70000.ckpt,并将其放入$ProROOT/demo_model/
4.下一步进入工程主目录,输入:
python ./tools/demo.py --model demo_model/VGGnet_fast_rcnn_iter_70000.ckpt
运行demo.py文件
注意:
- 若出现xxx.so文件有问题,首先考虑删除该文件并重新在lib文件夹使用make指令
二、训练模型
1.Download the training, validation, test data and VOCdevkit
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
将这些包解压到同一个文件夹
2.下载预训练模型(https://drive.google.com/file/d/0ByuDEGFYmWsbNVF5eExySUtMZmM/view
)VGG_imagenet.npy,把它放到$ProROOT/data/pretrain_model/
3.运行
./experiments/scripts/faster_rcnn_end2end.sh gpu 3 VGG16 pascal_voc
注意:
- 源文件是没有保存训练模型的,所以需要修改
FASTER-RCNN_TF/fast_rcnn/train.py
:
将self.saver = tf.train.Saver(max_to_keep=100)
改为:self.saver = tf.train.Saver(max_to_keep=100,write_version=saver_pb2.SaverDef.V1)
- 在文件开头增加引用
from tensorflow.core.protobuf import saver_pb2
4.随后会在重新训练完成后在$ProROOT/output/faster_rcnn_end2end/voc_2007_trainval
中生成VGGnet_fast_rcnn_iter_70000.ckpt文件,此时再在bash中运行
python ./tools/test_net.py --device gpu --device_id 0 --weights output/faster_rcnn_end2end/voc_2007_trainval/VGGnet_fast_rcnn_iter_70000.ckpt --imdb voc_2007_test --cfg experiments/cfgs/faster_rcnn_end2end.yml --network VGGnet_test
网友评论