caffe复现MLKP的测试功能

目录

这个项目简直是神坑,巨坑。

项目一点都不详尽,缺胳膊少腿,给的代码还有错的。

晕,下面开始颠沛流离的调试吧。

项目地址,项目论文,项目论文翻译:(待续)

环境(这个必须严格要求):

MLKP的测试步骤开始!!

第一步下载MLKP代码集:

第二步,进入MLKP的路径,下载他推荐的caffe:

 第三步,准备开始编译caffe,这里开始就神坑了

(实在还有错,可以参考这里安装caffe部分):

第四步:修改caffe里面Makefile.config和Makefile的配置,一定要修改:

第五步,安装caffe的依赖和caffe的编译。

第七部,是安装MLKP需要的python的环境和编译lib库

第八步,接下来下载VOC2007的数据集

第九步,从百度云 BaiduYun 或者谷歌云 GoogleDrive 

下载模型放在,MLKP的根目录的/output/

第十步,改模型的名字

第十一步,运行测试代码,注意更改你已经更改好的模型名字


这个项目简直是神坑,巨坑。

项目一点都不详尽,缺胳膊少腿,给的代码还有错的。

晕,下面开始颠沛流离的调试吧。

 

项目地址项目论文,项目论文翻译:(待续)

 

环境(这个必须严格要求):

  • CUDA:8.0版(这个最好是8,7.5)
  • CUDNN:5.0版(这个不是太硬需求)
  • 接下来使用  protoc --version   确定  libprotoc的版本一定要2.6.1  (一般ubuntu16.04的libprotoc的版本都是2.6.1,一定要这个版本)
  • 不使用anaconda,anaconda主要是编译的时候大多找不到路径,如果你看得懂配置文件,你可以一个一个改。

MLKP的测试步骤开始!!

下面说的所有建的*.sh脚本都在MLKP的根目录下

第一步下载MLKP代码集:

git clone https://github.com/Hwang64/MLKP.git

第二步,进入MLKP的路径,下载他推荐的caffe:

cd MLKP
git clone https://github.com/Hwang64/caffe-mlkp.git

 第三步,准备开始编译caffe,这里开始就神坑了

(实在还有错,可以参考这里安装caffe部分):

cd caffe-mlkp
sudo cp Makefile.config.example Makefile.config

第四步:修改caffe里面Makefile.config和Makefile的配置,一定要修改:

sudo gedit Makefile.config

1)想修改python接口和cudnn支持,如果后面运行测试的时候,一直报

Check failed: data_ *** Check failure stack trace: *** Aborted (core dumped)这个错误,估计就是python接口没有打开。

# In your Makefile.config, make sure to have this line uncommented
WITH_PYTHON_LAYER := 1
# Unrelatedly, it's also recommended that you use CUDNN
USE_CUDNN := 1

2)这个hdf5错误,每次运行都碰到,还是改了舒心,这里要注意了,是改两个文件一个是Makefile,一个是Makefile.config

step1:

Makefile.config文件更改INCLUDE_DIRS和LIBRARY_DIRS的内容,添加/usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是把下面第一行代码改为第二行代码。

#INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
#LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

改为

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial

step2:

Makefile文件的LIBRARIES,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是把下面第一行代码改为第二行代码。

#LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

第五步,安装caffe的依赖和caffe的编译。

创建的一个caffe.sh把下面的脚本复制进去,使用sh caffe.sh可以快速将caffe的依赖安装好,里面包括编译。

#caffe的依赖
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler -y
sudo apt-get install --no-install-recommends libboost-all-dev -y
sudo apt install protobuf-compiler libhdf5-serial-dev hdf5-helpers liblmdb-dev python-numpy libgflags-dev libblas-dev libgoogle-glog-dev libatlas-base-dev python-protobuf -y
sudo apt install liblmdb-dev -y
sudo apt-get install libgoogle-glog-dev -y
sudo apt install libatlas-base-dev -y
sudo apt-get install python-numpy -y
sudo cp caffe.mlkp.Makefile.config ./caffe-mlkp/Makefile.config
sudo cp caffe.mlkp.Makefile ./caffe-mlkp/Makefile
cd caffe-mlkp
make clean
make all -j16 && make pycaffe
#这里注意不一定要,我的caffe是由CUDA7.5编译的,我安装的是CUDA8可以兼容,所以直接复制
sudo cp /usr/local/cuda/lib64/libcudart.so.8.0 /usr/local/cuda/lib64/libcudart.so.7.5
 
 
 

第六部,本来按理是要把caffe加入环境里面的。

你可以试一下进入python

然后import caffe 看报错不。我这边不报错。

第七部,是安装MLKP需要的python的环境和编译lib库

创建的一个MLKP.sh把下面的脚本复制进去,使用sh MLKP.sh可以快速将MLKP的python库的依赖安装好,里面包括lib编译。

sudo apt-get install python-tk  -y
sudo apt-get install python-yaml -y
sudo pip install easydict
sudo pip install numpy
sudo pip install opencv-python
sudo pip install 'networkx==2.2'
sudo pip install scikit-image
sudo pip install cython
cd lib
sudo rm utils/bbox.c
sudo rm nms/cpu_nms.c
sudo rm nms/gpu_nms.cpp 
sudo rm pycocotools/_mask.c 
make

第八步,接下来下载VOC2007的数据集

创建的一个VOC2007.sh把下面的脚本复制进去,使用sh VOC2007.sh可以快速将MLKP的VOC2007的库下载好

mkdir data
cd data
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
wget http://host.robots.ox.ac.uk/pascal/VOC/voc2007/VOCdevkit_08-Jun-2007.tar
tar xvf VOCtrainval_06-Nov-2007.tar
tar xvf VOCtest_06-Nov-2007.tar
tar xvf VOCdevkit_08-Jun-2007.tar
ln -s VOCdevkit VOCdevkit2007

第九步,从百度云 BaiduYun 或者谷歌云 GoogleDrive 

下载模型放在,MLKP的根目录的/output/

 

第十步,改模型的名字

可以看到测试代码中,modelObj=re.match(r'(.*)_faster_rcnn_(.*)_iter_(.*)',net.name,re.I),

他只识别这种->-> 类型__faster_rcnn_模型名字_iter_步数.caffemodel的形式。

我把左边改成右边这样

第十一步,运行测试代码,注意更改你已经更改好的模型名字

创建的一个test_VOC07_VGG16.sh把下面的脚本复制进去,使用sh test_VOC07_VGG16.sh可以快速运行MLKP的测试程序。

python ./tools/test_net.py --gpu 0\
         --def models/VGG16/test.prototxt\
         --net output/test_faster_rcnn_VGG16_iter_70000.caffemodel\
         --imdb voc_2007_test\
         --cfg experiments/cfgs/faster_rcnn_end2end.yml
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值