当前位置: 代码迷 >> 综合 >> Faster R-CNN CPU环境下训练VOC2007数据集
  详细解决方案

Faster R-CNN CPU环境下训练VOC2007数据集

热度:45   发布时间:2023-12-05 21:52:02.0

参考:https://blog.csdn.net/wjx2012yt/article/details/52197698

1:下载VOC2007数据集

上一次我们安装好了环境,并给出数据集下载的方式,在终端下将数据集下载了放到~/py-faster-rcnn/data/下

2:下载ImageNet数据集下预训练得到的模型参数(用来初始化)

提供一个百度云地址:http://pan.baidu.com/s/1hsxx8OW

解压,然后将该文件放在py-faster-rcnn/data下

3:检查--训练前把output文件夹删除(或改个其他名),还要把py-faster-rcnn/data/cache中的文件删除

4:可在py-faster-rcnn\tools的train_faster_rcnn_alt_opt.py中修改迭代次数

    max_iters = [80000, 40000, 80000, 40000]  

分别为4个阶段(rpn第1阶段,fast rcnn第1阶段,rpn第2阶段,fast rcnn第2阶段)的迭代次数。可改成你希望的迭代次数。如果改了这些数值,把py-faster-rcnn/models/pascal_voc/ZF/faster_rcnn_alt_opt里对应的solver文件(有4个)也修改,stepsize小于上面修改的数值。并将这四个文件中的base_lr由0.001调小一点,调节成0.0001将四个solver文件夹里里面涉及路径的改到绝对路径

5 :打开train_faster_rcnn_alt_opt.py,可以看到定义输入参数的函数,把第34,35,36定以GPU模式训练的部分注释掉,gpu_id会出现错误,所以把train_faster_rcnn_alt_opt.py第213行注释掉,train_faster_rcnn_alt_opt.py文件第103行caffe.set_mode_gpu()改为caffe.set_mode_cpu(),才能进行训练。

6 :下载CPU版本的roi_pooling_layer和smooth_L1_loss_layer,见:

https://blog.csdn.net/qq_14975217/article/details/51495844

CPU版本的roi_pooling_layer和smooth_L1_loss_layer替换py-fast-rcnn/caffe-fast-rcnn/src/caffe/layers下的这两个文件,进入到caffe-fast-rcnn下重新make一下才有效果,输入make clean 、make和make pycaffe。

7:进入py-faster-rcnn/tools目录,打开终端,运行:

python train_faster_rcnn_alt_opt.py --net_name ZF --weights /home/qf/VOC2007/py-faster-rcnn/data/imagenet_models/ZF.v2.caffemodel --cfg /home/qf/VOC2007/py-faster-rcnn/experiments/cfgs/faster_rcnn_alt_opt.yml --imdb voc_2007_trainval

进行训练。

错误1:

AttributeError: 'module' object has no attribute 'text_format'

参考:https://blog.csdn.net/qq_33202928/article/details/72526710

在文件./lib/fast_rcnn/train.py中增加一行import google.protobuf.text_format

问题:至此可以训练了,但是出现loss=-nan的情况,还未解决~~~


!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

后续工作,给出几个学习链接:

https://blog.csdn.net/CV_adventurer/article/details/72805852#3-%E8%AE%AD%E7%BB%83PASCAL-VOC-2007%E7%9A%84%E6%95%B0%E6%8D%AE%E9%9B%86

https://blog.csdn.net/sinat_30071459/article/details/50546891

https://blog.csdn.net/sinat_30071459/article/details/51332084

  相关解决方案