Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试

注意:首先要配置好环境,包括Ubuntu16.04+Nvidia驱动+cuda10.0+cuDNN7.3.1+caffe,并保证caffe编译通过。可参考我之前的博客进行安装编译。

一、安装SSD(caffe)

git clone https://github.com/weiliu89/caffe.git caffe-ssd//重命名,避免与caffe的冲突
cd caffe-ssd
git checkout ssd

Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第1张图片
这里需出现分支成功的提示方可继续:
在这里插入图片描述

二、配置SSD(caffe)

终端输入

cd ~/caffe-ssd
cp Makefile.config.example Makefile.config

打开Makefile.config,修改并保存退出。(因为我前面已经配置过caffe了,这里直接把自己配置过的caffe中的Makefile.config文件中修改的部分粘贴过来即可,可参考我之前的博客
https://blog.csdn.net/lihe4151021/article/details/90289696 )
终端输入:

cd ~/learning/ssd-caffe
mkdir build 
cd build cmake ..(cmake和..中间有一个空格) 
make all -j8("‐j8"是使用 CPU 的多核进行编译,可以极大地加速编译的速度) 
make install 
make runtest(这一步不是必须的) 
make pycaffe(编译pycaffe)

Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第2张图片Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第3张图片

三、下载数据文件

1、 预训练模型下载
下载地址:https://pan.baidu.com/s/1X7gkyHnd87nv5TTqWfaR2Q 提取密码:45tm
在caffe-ssd/models文件夹下新建文件夹,命名为VGGNet,将刚刚下载下来的文件放入这个VGGNet文件夹当中。
Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第4张图片
2、下载VOC2007和VOC2012数据集
在主文件夹下(即 ~/)新建文件夹,命名为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

解压这三个文件,终端输入:

cd /home/**(您服务器的名字)/data 
tar -xvf VOCtrainval_11-May-2012.tar 
tar -xvf VOCtrainval_06-Nov-2007.tar 
tar -xvf VOCtest_06-Nov-2007.tar(请严格按照这个顺序解压)

四、生成LMDB文件

终端输入

cd ~/learning/ssd-caffe
./data/VOC0712/create_list.sh
./data/VOC0712/create_data.sh

若data不是放在~目录下,则要进入create_list.sh和create_data.sh文件修改相应的路径。
执行./data/VOC0712/create_data.sh报错
Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第5张图片
原因是未添加环境变量(https://github.com/weiliu89/caffe/issues/4),解决方法

sudo gedit ~/.bashrc

在文件最后一行添加环境变量:

export PYTHONPATH=/home/**lihe**/caffe-ssd/python:$PYTHONPATH  //将加粗部分换为自己的用户名即可

最后运行

source ~/.bashrc

再次运行,生成lmdb文件夹,包含VOC0712_test_lmdb和VOC0712_trainval_lmdb

./data/VOC0712/create_data.sh

Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第6张图片 Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第7张图片
至此,LMDB文件生成成功

五、运行demo

1、下载官方的模型和网络文件
环境部署成功之后就开始demo的演示了,这里跳过自己训练的环节,直接用官方的模型和网络文件来先演示下demo,因此需要先下载作者已经训练好的模型(链接:https://pan.baidu.com/s/1atmHJXzBy9Yv96-M6muVFA 提取码:2k59)。下载的官方模型文件夹名称为VOC0712,放入ssd-caffe/models/VGGNet/目录下,如下图所示
Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第8张图片
2、演示demo
可以参考这个博客进行demo演示:https://blog.csdn.net/jesse_mx/article/details/52965281 (SSD: Single Shot MultiBox Detector检测单张图片)
(1)演示detection的训练结果,包括5000多张图片。要先改里面的gpu个数,输出是分数。终端输入:

python examples/ssd/score_ssd_pascal.py(演示detection的训练结果,数值在0.718左右)

(2)演示单张图片的测试结果,python版本。然后修改ssd_detect.py里面的路径(包括$caffe_root和测试图片的路径,如果配置过程中的路径与此博客中的配置路径完全一致,应该无需修改路径),最后终端输入:

python examples/ssd/ssd_detect.py

Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第9张图片Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第10张图片
此时在caffe-ssd文件夹下即可得到检测结果detect_result.jpg
Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第11张图片Ubuntu上配置SSD-caffe(GPU)+VOC数据集测试_第12张图片

你可能感兴趣的:(深度学习)