sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev
sudo apt-get install -y libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
sudo apt-get install -y protobuf-c-compiler protobuf-compiler
(1) git clone https://github.com/google/glog
(2) sudo apt-get install autoconf automake libtool
(3) 编译和安装 : cd到解压文件夹下 root/glog
./autogen.sh
./configure
make
make install
指令:cp -r /自己解压的caffe路径 /home/
cd /home/caffe
cp Makefile.config.example Makefile.config
4、打开并修改配置文件(Makefile.config)
sudo test
(1)修改文件:
gedit Makefile.config(打开Makefile.config)
使用cudnn
#OPENCV_VERSION := 3修改为:OPENCV_VERSION := 3 (第23行)
使用python来编写layer
#WITH_PYTHON_LAYER := 1修改为WITH_PYTHON_LAYER := 1 (第94行)
在make pycaffe后常出现:提示错误:src/caffe/net.cpp:8:18: fatal error: hdf5.h: No such file or directory
将 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include (第97行) 修改为
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include(此处要有一个空格)/usr/include/hdf5/serial
将 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib (第98行) 修改为
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib (此处要有一个空格) /usr/lib/x86_64-linux-gnu/hdf5/serial
注释两行(根据自己的GPU型号修改arch值)
#-gencode arch=compute_20,code=sm_20 \ (第39行)
#-gencode arch=compute_20,code=sm_21 \ (第40行)
(2)修改makefile文件
注意:这里不要使用 gedit makefile 命令,而是找到 makefile 直接打开
将 NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS) (第425行)替换为
NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)
(3)编译caffe并且测试
make clean
make –j8
make test –j8
make runtest –j8
如果执行runtest后,输出PASSED,说明测试成功
(1)cd 到caffe 下
(2)sudo make pycaffe -j8
(3)解决import caffe时 ImportError: No module named caffe 错误
gedit ~/.bashrc(打开.bashrc)
export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH(注意:path/to是自己caffe的路径)
(4)保存, 生效 source ~/.bashrc
(5)验证python与caffe接口
python
import caffe
如下图则成功
(6)解决 ImportError: No module named google.protobuf.internal错误
请看 我的博客 https://blog.csdn.net/zhuzizhong/article/details/84339154
首先查看 protobuf 信息
whereis protoc #查看那些路径下安装了protobuf
which protoc #查看默认选用的protobuf
protoc --version #查看当前默认的protobuf的版本(配置caffe时很重要)
方法1
在自己安装的caffe路径下,makefile文件中修改
(注意:这里不要使用 gedit makefile 命令,而是找到 makefile 直接打开)
$(Q)protoc --proto_path=$(PROTO_SRC_DIR) --cpp_out=$(PROTO_BUILD_DIR) $<(第649行)修改为:
$(Q)/usr/bin/protoc --proto_path=$(PROTO_SRC_DIR) --cpp_out=$(PROTO_BUILD_DIR) $<
$(Q)protoc --proto_path=src --python_out=python $<(第654行)修改为:
$(Q)/usr/bin/protoc --proto_path=$(PROTO_SRC_DIR) --python_out=$(PY_PROTO_BUILD_DIR) $<
方法2 上述方法无法解决时:——安装特定版本(推荐)
cd 到 ~/anaconda2/bin目录下 执行下面指令:
pip install protobuf==2.6.1
(测试import caffe)成功
apt-get install libffi-dev python-dev build-essential
pip install lmdb
pip install -U scikit-learn
验证
pip list
https://blog.csdn.net/yhaolpz/article/details/71375762
https://blog.csdn.net/hnsywangxin/article/details/79208785
https://blog.csdn.net/m0_38082419/article/details/80117132
https://blog.csdn.net/u013249853/article/details/79827491?utm_source=blogxgwz2
https://blog.csdn.net/jpday/article/details/70741619?utm_source=copy
手机扫一扫
移动阅读更方便
你可能感兴趣的文章