版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
tf-faster-rcnn github地址为:https://github.com/endernewton/tf-faster-rcnn.git
自己配置测试过caffe版的的faster-rcnn,后来又测试了tensorflow版的faster-rcnn,配置如下。网上版本也较多,我测试的GPU版的,改动的地方不多。
训练模型:
1.进入tf-faster-rcnn/lib中 执行make
2.放入自己的数据集,步骤与py-faster-rcnn一样,参见另一篇博客:https://blog.csdn.net/zhou4411781/article/details/96480898
3.修改步长和迭代次数 tf-faster-rcnn/experiments/scripts/train_faster_rcnn.sh 和test_faster_rcnn.sh,要同步修改,否则会报错
4.添加自己的类,lib/datatsets/pascal_voc.py
第36行:
self._classes = ('__background__', # always index 0 'cat', 'dog')
5.开始训练:
./experiments/scripts/train_faster_rcnn.sh 0 pascal_voc res101
测试模型:
1.tools/demo.py中的类别改成自己的类别
第35行:
CLASSES = ('__background__','cat', 'dog')
2.将图片放入demo中,并更改demo.py的第153行为图片名称
im_names = ['000001.jpg','000002.jpg','000003.jpg']
3.修改网络模型,根据自己的设置的迭代次数更改,迭代次数跟“训练模型”中第2点设置一致,例如7000次。
第40行:
NETS = {'vgg16': ('vgg16_faster_rcnn_iter_70000.ckpt',),'res101': ('res101_faster_rcnn_iter_7000.ckpt',)}
DATASETS= {'pascal_voc': ('voc_2007_trainval',),'pascal_voc_0712': ('voc_2007_trainval',)}
4.修改类别数为自己的类别数(实际类别数+1)
第141行:
net.create_architecture("TEST", 3,
tag='default', anchor_scales=[8, 16, 32])
5.demo测试:
python ./tools/demo.py
在tf-faster-rcnn下会生成一个plot_images文件夹,其中包含你测试结果的图片