zoukankan      html  css  js  c++  java
  • faster r-cnn 在CPU配置下训练自己的数据

    因为没有GPU,所以在CPU下训练自己的数据,中间遇到了各种各样的坑,还好没有放弃,特以此文记录此过程。

    1、在CPU下配置faster r-cnn,参考博客:http://blog.csdn.net/wjx2012yt/article/details/52197698#quote

    2、在CPU下训练数据集,需要对py-faster-rcnn内的roi_pooling_layer和smooth_L1_loss_layer改为CPU版本,

    并重新编译。这位博主对其进行了修改,可直接进行替换:http://blog.csdn.net/qq_14975217/article/details/51495844

    3、制作自己的VOC数据集,这部分参考博客:http://blog.csdn.net/gvfdbdf/article/details/52214008

    4、为防止与之前的模型搞混,训练前把output文件夹删除(或改个其他名),还要把py-faster-rcnn/data/cache中的文件和

    py-faster-rcnn/data/VOCdevkit2007/annotations_cache中的文件删除(如果有的话)。

    5、训练前的修改。我的数据集是检测监控视频中的人,因此只有背景和人两类。按着这篇博客进行修改就行了:

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

         还要修改py-faster-rcnn/models/pascal_voc/ZF/faster_rcnn_alt_opt中的solve文件设置,包括stepsize,base_lr,

    否则训练时很容易出现loss=-nan的情况

    6、在py-faster-rcnn中训练

    ./experiments/scripts/faster_rcnn_alt_opt.sh 0 ZF pascal_voc  

    7、测试

         将训练得到的py-faster-rcnnoutputfaster_rcnn_alt_opt***_trainval中ZF的caffemodel拷贝至

    py-faster-rcnndatafaster_rcnn_models,修改py-faster-rcnn oolsdemo.py(主要是类别的修改

    和测试图片的修改)。运行

    python demo.py --cpu

     8、结果

          可能是我数据量太少且质量不好(1000张),训练次数不够(1000×4),检测效果不太好,在默认阈值下检测不出来。

    当把demo.py中的CONF_THRESH降低到0.1时才检测出来一张,且速度很慢,大概13秒一张,效果一般。  

         我将训练次数增加到了(10000,5000,10000,5000),跑了一天,结果没有任何改善。

        

  • 相关阅读:
    kvm克隆虚拟机
    vSAN添加license
    KVM虚拟机快照
    第二次作业及总结——数据类型和运算符
    第二次作业心得
    做完c语言作业的心得
    介绍自己
    awk数组 Jazz
    Java入门第一阶段总结
    区间dp入门+例题
  • 原文地址:https://www.cnblogs.com/573177885qq/p/6128045.html
Copyright © 2011-2022 走看看