深度学习—caffe环境配置(ubantu18+python3)
PS:文章内容流程参考自以下文章,其中根据实际出现的问题,对其中的步骤做了增加。
参考文章链接:
https://blog.csdn.net/wangjie5540/article/details/97786182
1.背景
本文的写作目的是使用caffe实现基于R-C3D模型实现事件检测,论文名字:R-C3D: Region Convolutional 3D Network for Temporal Activity Detection。
github地址:
http://ai.bu.edu/r-c3d/
之后有机会会好好分享下这篇论文!!
2.环境搭建
在caffe的官方网站上,特别注明了ubantu版本高于17.04时可以用:
sudo apt install caffe-cpu
sudo apt build-dep caffe-cpu
#whereis caffe ##找到caffe的安装目录
2.1准备工作
进行安装以及环境搭建,但是本人在尝试时不知道为什么没有成功,更悲哀的是并没有解决bug,所以之后的篇幅介绍一种“很低端”的方式进行环境搭建。
附录官方网址:http://caffe.berkeleyvision.org/install_apt.html
如果你先用上面的方法进行安装之后,你需要进行以下操作:
sudo apt remove caffe-cpu #卸载caffe防止干扰
然后,使用以下代码(如果没有用以上的方法进行安装就跳过以上):
git clone http://github.com/BVLC/caffe.git
cd caffe
cp Makefile.config.example Makefile.config #将Makefile.config.example拷贝并重新命名为Makefile.config
2.2进行配置
更改Makefile.config文件:
sudo gedit Makefile.config #进行配置,更改如下
CPU_ONLY := 1 (解开注释)
OPENCV_VERSION := 3 (解开注释)
找到INCLUDE_DIRS和LIBRARY_DIRS,进行如下修改
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial (添加最后这个hdf5的路径)
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial (添加最后这个hdf5的路径)
注:很多教程都没有提醒,其实caffe环境是否能搭建成功与python的版本更重要。我们在Makefile.config 中进行更改,大家可以看看 Makefile.config中的内容,针对自己的python版本进行更改。
# if python(default)==2.7,then you may skip this procedure.
PYTHON_INCLUDE := /usr/include/python2.7 \
/usr/lib/python2.7/dist-packages/numpy/core/include
如果你的python版本不是2.7,而是3.5,你需要屏蔽以上,并将下面的代码注释去掉(如果是anaconda下的python3.7,你需要更改ANACONDA_HOME以及PYTHON_INCLUDE,很麻烦不建议这么做)
# PYTHON_LIBRARIES := boost_python3 python3.5m
# PYTHON_INCLUDE := /usr/include/python3.5m \
# /usr/lib/python3.5/dist-packages/numpy/core/include
更改Makefile文件:
sudo gedit Makefile #更改makefile
gedit Makefile
1.opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs
后面加入 opencv_imgcodecs
2. 找到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
编译:
make clean(如果之前make过)
make all
make test
make runtest
结果截图:
3.配置pycaffe
cd ~/caffe/python
for req in $(cat requirements.txt); do pip install $req; done
pip install -r requirements.txt
sudo gedit ~/.bashrc
在sudo gedit ~/.bashrc中添加你安装的caffe/python文件夹的地址:
export PYTHONPATH=$PYTHONPATH:/home/XXX/caffe/python:$PYTHONPATH # xxx为用户名
最后编译:
make pycaffe
4.测试caffe环境
cd python
import caffe
5.补充内容
更改ubantu中默认的python版本:
sudo gedit ~/.bashrc
#在上面文件中增加一条:
export python="your pyhon's path"
#then,使文件生效
sudo source ~/.bashrc
#test
python