1.训练数据的准备
VOC2007数据格式,和faster-rcnn数据一样,数据集组织结构和制作参见:
[训练样本制作](http://blog.youkuaiyun.com/burning_keyboard/article/details/71055557)
准备好了VOC2007格式的数据集后,可以把VOC2007文件夹和testimg文件夹一起放在sample文件夹。(testimg,sample自己根据需要命名)
进入pvanet/data, 给sample文件夹创建超链接,起名为‘VOCdevkit2007’:
cd pvanet/data
ln -s '/home/cvrsg/RzWu/sample' VOCdevkit2007
2.修改网络参数
我的网络结构文件路径是:/home/wurui/pvamsNET/pvanetWRZ/pvanet/models/pvanet/example_train_384
这里有3个文件要修改:
[1]solver.prototxt:学习率,使用的网络文件,没特殊要求可以不改啦。
[2]train.prototxt: 4 处修改
(1)ctrl + f : 'num_classes' 。一共2处类别数修改。
(2)cls_score 层:
inner_product_param {
num_output: 5 // 改成目标类别数(背景也算一类,要 +1 !)
(3)bbox_pred 层:
inner_product_param {
num_output: 20 // 改成 类别数 × 4
[3]test.prototxt: 2 处修改
就是train.prototxt里cls_score层和bbox_pred层一样的修改方法。
3.lib/datasets/pascal_voc.py
这里要先删除pascal_voc.pyc文件,否则会直接运行二进制的.pyc文件。
在pascal_voc.py里修改类别的名称。
4.删除已经存在的ROI
在 data/cache 目录下删除 .pkl文件。
如果之前自己成功训练过pvanet,这里会生成.pkl保存ROI,下次再训练其他检测任务时,
会因为ROI不匹配出现一些关于RPN和ROI的报错。例如:
overlaps = entry['max_overlaps']
KeyError: 'max_overlaps'
roidb[i]['image']=imdb.image_path_at(i)
IndexError:list index out of r

本文档详细介绍了使用Pvanet训练自己数据集的全过程,包括数据准备、网络参数调整、Pascal VOC配置、ROI清理、检测脚本修改、训练与检测命令的执行、网络报错的调试方法、GPU加速设置以及编译时遇到的Makefile报错解决方案。
最低0.47元/天 解锁文章
475

被折叠的 条评论
为什么被折叠?



