ubuntu16.04安装CPU版SSD及caffe配置,训练及测试过程

操作过程参考博客:https://blog.csdn.net/HMH2_YY/article/details/78444406和https://blog.csdn.net/jx232515/article/details/78678471和https://blog.csdn.net/gaohuazhao/article/details/72664145和https://blog.csdn.net/qq_29227653/article/details/86139546
第4步下载预训练模型:https://gist.github.com/weiliu89/2ed6e13bfd5b57cf81d6

gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd$ git clone https://github.com/weiliu89/caffe.git
正克隆到 'caffe'...
remote: Enumerating objects: 30179, done.
remote: Total 30179 (delta 0), reused 0 (delta 0), pack-reused 30179
接收对象中: 100% (30179/30179), 46.97 MiB | 623.00 KiB/s, 完成.
处理 delta 中: 100% (19556/19556), 完成.
检查连接... 完成。
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd$ cd caffe
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ git checkout ssd
分支 ssd 设置为跟踪来自 origin 的远程分支 ssd。
切换到一个新分支 'ssd'
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ cd caffe
bash: cd: caffe: 没有那个文件或目录
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ cd..
cd..:未找到命令
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ cd
gaoyuan@gaoyuan-virtual-machine:~$ cd caffe-ssd
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd$ sudo cp Makefile.config /home/caffe 
[sudo] gaoyuan 的密码: 
cp: 无法获取'Makefile.config' 的文件状态(stat): 没有那个文件或目录


#手动将已经配置过的cpu版本caffe中的Makefile.config复制到此caffe的$CAFFE_ROOT

gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd$ cd 
gaoyuan@gaoyuan-virtual-machine:~$ cd caffe-ssd
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd$ cd caffe
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ make -j4
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ make py
CXX/LD -o python/caffe/_caffe.so python/caffe/_caffe.cpp
touch python/caffe/proto/__init__.py
PROTOC (python) src/caffe/proto/caffe.proto
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ make test -j4
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ make runtest -j4

gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe$ cd
gaoyuan@gaoyuan-virtual-machine:~$ cd caffe-ssd
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd$ cd data
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/data$ wget http://host.robots.ox.ac.uk/pascal/VOC/voc2012/VOCtrainval_11-May-2012.tar
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/data$ wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtrainval_06-Nov-2007.tar 
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/data$ wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCtest_06-Nov-2007.tar 
# 解压这三个文件,按顺序依次输入以下命令  
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/data$ 
tar -xvf VOCtrainval_11-May-2012.tar  #严格按照顺序
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/data$ 
tar -xvf VOCtrainval_06-Nov-2007.tar  
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/data$ 
tar -xvf VOCtest_06-Nov-2007.tar
#解压之后,在caffe/data目录下,将create_list.sh和creat_data.sh改为自己的路径。(此处我的路径为#home/caffe-ssd/data).然后
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe/data/VOC0712$ ./create_list.sh 
Create list for VOC2007 trainval...
Create list for VOC2012 trainval...
Create list for VOC2007 test...
I0121 17:32:27.878886  9651 get_image_size.cpp:61] A total of 4952 images.
I0121 17:32:38.868432  9651 get_image_size.cpp:100] Processed 1000 files.
I0121 17:32:45.060334  9651 get_image_size.cpp:100] Processed 2000 files.
I0121 17:32:52.006073  9651 get_image_size.cpp:100] Processed 3000 files.
I0121 17:32:59.479598  9651 get_image_size.cpp:100] Processed 4000 files.
I0121 17:33:08.951922  9651 get_image_size.cpp:105] Processed 4952 files.
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe/data/VOC0712$ ./create_data.sh 
Traceback (most recent call last):
  File "/home/gaoyuan/caffe-ssd/caffe/data/VOC0712/../../scripts/create_annoset.py", line 103, in <module>
    label_map = caffe_pb2.LabelMap()
AttributeError: 'module' object has no attribute 'LabelMap'
Traceback (most recent call last):
  File "/home/gaoyuan/caffe-ssd/caffe/data/VOC0712/../../scripts/create_annoset.py", line 103, in <module>
    label_map = caffe_pb2.LabelMap()
AttributeError: 'module' object has no attribute 'LabelMap'
#此时发现执行create_data.sh时还是出错了,报错为:AttributeError: 'module' object has no attribute 'LabelMap',原因是没有添加环境变量,

#解决方式:其中$CAFFE_ROOT是本caffe的根目录,注意换成自己的.

gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe/data/VOC0712$ vim ~/.bashrc 
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe/data/VOC0712$ source ~/.bashrcgaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe/data/VOC0712$ ./create_list.sh 
Create list for VOC2007 trainval...
Create list for VOC2012 trainval...
Create list for VOC2007 test...
I0121 18:53:22.730010 10816 get_image_size.cpp:61] A total of 4952 images.
I0121 18:53:29.545979 10816 get_image_size.cpp:100] Processed 1000 files.
I0121 18:53:32.957669 10816 get_image_size.cpp:100] Processed 2000 files.
I0121 18:53:36.325186 10816 get_image_size.cpp:100] Processed 3000 files.
I0121 18:53:39.303398 10816 get_image_size.cpp:100] Processed 4000 files.
I0121 18:53:42.008343 10816 get_image_size.cpp:105] Processed 4952 files.
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe/data/VOC0712$ ./create_data.sh 
#运行成功(等待,需要较长时间)
/home/gaoyuan/caffe-ssd/caffe/build/tools/convert_annoset --anno_type=detection --label_type=xml --label_map_file=/home/gaoyuan/caffe-ssd/caffe/data/VOC0712/../../data/VOC0712/labelmap_voc.prototxt --check_label=True --min_dim=0 --max_dim=0 --resize_height=0 --resize_width=0 --backend=lmdb --shuffle=False --check_size=False --encode_type=jpg --encoded=True --gray=False /home/gaoyuan/caffe-ssd/data/VOCdevkit/ /home/gaoyuan/caffe-ssd/caffe/data/VOC0712/../../data/VOC0712/test.txt /home/gaoyuan/caffe-ssd/data/VOCdevkit/VOC0712/lmdb/VOC0712_test_lmdb
I0121 18:54:45.949851 10836 convert_annoset.cpp:122] A total of 4952 images.
I0121 18:54:46.010035 10836 db_lmdb.cpp:35] Opened lmdb /home/gaoyuan/caffe-ssd/data/VOCdevkit/VOC0712/lmdb/VOC0712_test_lmdb
I0121 18:57:06.256772 10836 convert_annoset.cpp:195] Processed 1000 files.
I0121 18:57:34.199147 10836 convert_annoset.cpp:195] Processed 2000 files.
I0121 18:58:02.660818 10836 convert_annoset.cpp:195] Processed 3000 files.
I0121 18:58:35.241895 10836 convert_annoset.cpp:195] Processed 4000 files.
I0121 18:59:03.956033 10836 convert_annoset.cpp:201] Processed 4952 files.
/home/gaoyuan/caffe-ssd/caffe/build/tools/convert_annoset --anno_type=detection --label_type=xml --label_map_file=/home/gaoyuan/caffe-ssd/caffe/data/VOC0712/../../data/VOC0712/labelmap_voc.prototxt --check_label=True --min_dim=0 --max_dim=0 --resize_height=0 --resize_width=0 --backend=lmdb --shuffle=False --check_size=False --encode_type=jpg --encoded=True --gray=False /home/gaoyuan/caffe-ssd/data/VOCdevkit/ /home/gaoyuan/caffe-ssd/caffe/data/VOC0712/../../data/VOC0712/trainval.txt /home/gaoyuan/caffe-ssd/data/VOCdevkit/VOC0712/lmdb/VOC0712_trainval_lmdb
I0121 18:59:21.828469 10863 convert_annoset.cpp:122] A total of 16551 images.
I0121 18:59:21.880862 10863 db_lmdb.cpp:35] Opened lmdb /home/gaoyuan/caffe-ssd/data/VOCdevkit/VOC0712/lmdb/VOC0712_trainval_lmdb
I0121 19:01:02.353536 10863 convert_annoset.cpp:195] Processed 1000 files.
I0121 19:02:12.646100 10863 convert_annoset.cpp:195] Processed 2000 files.
I0121 19:03:17.885447 10863 convert_annoset.cpp:195] Processed 3000 files.
I0121 19:04:27.898088 10863 convert_annoset.cpp:195] Processed 4000 files.
I0121 19:05:38.369417 10863 convert_annoset.cpp:195] Processed 5000 files.
I0121 19:06:49.534931 10863 convert_annoset.cpp:195] Processed 6000 files.
I0121 19:08:02.712956 10863 convert_annoset.cpp:195] Processed 7000 files.
I0121 19:09:08.019644 10863 convert_annoset.cpp:195] Processed 8000 files.
I0121 19:10:16.709163 10863 convert_annoset.cpp:195] Processed 9000 files.
I0121 19:11:23.439724 10863 convert_annoset.cpp:195] Processed 10000 files.
I0121 19:12:27.537564 10863 convert_annoset.cpp:195] Processed 11000 files.
I0121 19:13:39.519891 10863 convert_annoset.cpp:195] Processed 12000 files.
I0121 19:15:02.441093 10863 convert_annoset.cpp:195] Processed 13000 files.
I0121 19:16:14.931596 10863 convert_annoset.cpp:195] Processed 14000 files.
I0121 19:17:44.032238 10863 convert_annoset.cpp:195] Processed 15000 files.
I0121 19:18:53.580363 10863 convert_annoset.cpp:195] Processed 16000 files.
I0121 19:19:31.192627 10863 convert_annoset.cpp:201] Processed 16551 files.

#下载预训练好的模型:https://pan.baidu.com/s/1eSECLEU#list/path=%2F,下载完后解压,把里面的VGGNet文件夹移动到/home/mx/caffe/models/之下 

#对单张图片进行测试
gaoyuan@gaoyuan-virtual-machine:~$ $ sudo pip install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple
$:未找到命令
gaoyuan@gaoyuan-virtual-machine:~$ sudo pip install jupyter
gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe/examples$ jupyter notebook
The Jupyter HTML Notebook.

这将启动一个基于tornado的HTML笔记本服务器,它提供一个html5/
javascript笔记本客户端。

Traceback (most recent call last):
  File "/usr/local/bin/jupyter-notebook", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/dist-packages/jupyter_core/application.py", line 266, in launch_instance
    return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 657, in launch_instance
    app.initialize(argv)
    File "<decorator-gen-7>", line 2, in initialize
  File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 89, in catch_config_error
    app.print_help()
  File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 385, in print_help
    self.print_subcommands()
  File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 377, in print_subcommands
    print(os.linesep.join(lines))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 4: ordinal not in range(128)
#解决办法:https://blog.csdn.net/qq_29227653/article/details/86139546
#卸载jupyter,重新安装

gaoyuan@gaoyuan-virtual-machine:~/caffe-ssd/caffe/examples$ jupyter notebook
[I 20:33:43.730 NotebookApp] 把notebook 服务cookie密码写入 /run/user/1000/jupyter/notebook_cookie_secret
[I 20:33:45.250 NotebookApp] 启动notebooks 在本地路径: /home/gaoyuan/caffe-ssd/caffe/examples
[I 20:33:45.251 NotebookApp] 本程序运行在: http://localhost:8888/?token=18cb14d65258279192fc13bd7fc0ce61b77ecd8f483192b3
[I 20:33:45.252 NotebookApp] 使用control-c停止此服务器并关闭所有内核(两次跳过确认).
[C 20:33:45.275 NotebookApp] 
    
    To access the notebook, open this file in a browser:
        file:///run/user/1000/jupyter/nbserver-12510-open.html
    Or copy and paste one of these URLs:
        http://localhost:8888/?token=18cb14d65258279192fc13bd7fc0ce61b77ecd8f483192b3
        #成功跳出网页
    在jupyter notebook打开的网页中找到ssd_detect.ipynb打开
  然后参考:https://blog.csdn.net/HMH2_YY/article/details/78444406
  运行成功!
  


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值