zoukankan      html  css  js  c++  java
  • caffe + ssd网络训练过程

    參考博客:https://blog.csdn.net/xiao_lxl/article/details/79106837

    1获取源代码:git clone https://github.com/weiliu89/caffe.git
    2 进入目录中 :cd caffe

    3,git checkout ssd

    主要参考 https://github.com/weiliu89/caffe/tree/ssd

        获取SSD的代码,下载完成后有一个caffe文件夹

    git clone https://github.com/weiliu89/caffe.git
    cd caffe
    git checkout ssd

        1
        2
        3

        进入下载好的caffe目录,复制配置文件

    cd caffe
    cp Makefile.config.example Makefile.config

        1
        2

    编译caffe

    make all  -j8  //-j16根据本机的处理器配置,16是16核处理器的意思
    make pycaffe -j8
    make test -j8
    make runtest -j8(这一步不是必须的)

        1
        2
        3
        4

    下载预训练模型 链接:链接:https://pan.baidu.com/s/1o9c0GGU 密码:fucx,将它放入caffe/models/VGGNet/目录下

    下载VOC2007和VOC2012数据集,放到/caffe/data下,并解压

    cd data
    wget  http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
    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
    tar -xvf VOCtrainval_11-May-2012.tar
    tar -xvf VOCtrainval_06-Nov-2007.tar
    tar -xvf VOCtest_06-Nov-2007.tar

        1
        2
        3
        4
        5
        6
        7

    将图片转化为LMDB文件,用于训练,在caffe目录下

    cd ..
    cd caffe
    ./data/VOC0712/create_list.sh  
    ./data/VOC0712/create_data.sh

        1
        2
        3
        4

    训练模型
    在下载的caffe根目录执行如下命令训练,在examples/ssd下存在几个.py文件,训练的时间较长。

    python examples/ssd/ssd_pascal.py

        1

    实验效果
    (1)在图片测试集上测试

    python examples/ssd/score_ssd_pascal.py

        1

    2)在视频上测试

       python examples/ssd/ssd_pascal_video.py

        1

    3)在摄像头上测试

       python examples/ssd/ssd_pascal_webcam.py

        1

    报错问题解决以及填坑笔记:

    1. 报错:no module named caffe等错误

    这是由于caffe的Python环境变量未配置好,可按照下面方法解决:

    确保先重新make下pycaffe,然后 将python的路径配置到环境变量中
    make pycaffe -j8

    gedit /etc/profile

    gedit ~/.bashrc
    vim ~/.bashrc
    加入 export PYTHONPATH=/SSD所在目录/caffe/python
    source ~/.bashrc

    2. 配置SSD-caffe测试时出现“Check failed: error == cudaSuccess (10 vs. 0) invalid device ordinal”解决

    运行 python examples/ssd/ssd_pascal.py 时报错

    解决方案:这是由于GPU数量不匹配造成的,如果训练自己的数据,那么我们只需要将solver.prototxt文件中的device_id项改为自己的GPU块数,一块就是0,两块就是1,以此类推。

    但是SSD配置时的例子是将训练语句整合成一个python文件ssd_pascal.py,所以需要改此代码。相关配置训练方法请参看转载博文:http://blog.csdn.net/xunan003/article/details/78427446

    解决方法:将ssd_pascal.py文件中第332行gpus = “0,1,2,3”的GPU选择改为gpus = “0”,后面的1,2,3都删掉即可。再次训练即可。

    当然,由于博主只有一块GPU且电脑运行内存有限,还需要将ssd_pascal.py文件中的337行batch_size = 32和338行accum_batch_size = 32都改小一倍,即更改批量大小,不然会出现“Check failed: error == cudaSuccess (2 vs. 0) invalid …”的错误。

    3. 配置SSD-caffe出现“ AttributeError: ‘module’ object has no attribute ‘LabelMap’”解决

    这是由于caffe的Python环境变量未配置好,可按照下面方法解决:
    gedit ~/.bashrc
    加入 export PYTHONPATH=/SSD所在目录/caffe/python
    source ~/.bashrc

  • 相关阅读:
    利用CSS计数函数counter()实现计数
    弹跳加载动画特效Bouncing loader
    HTML页面中解决内容元素随窗口变化布局变乱问题
    CSS中列表项list样式
    框模型中设置内容区域元素占地尺寸box-sizing属性
    PHP100视频教程-->视频下载
    HTML页面中5种超酷的伪类选择器:hover效果
    HTML中获取input中单选按钮radio数据(性别例子)
    HTML中 DOM操作的Document 对象详解(收藏)
    14、输入一个链表,从尾到头打印链表每个节点的值。
  • 原文地址:https://www.cnblogs.com/shuimuqingyang/p/10149478.html
Copyright © 2011-2022 走看看