在ubuntu14.04下安装caffe并且做MATLAB和python的接口

xiaoxiao2021-02-28  93

参考http://www.cnblogs.com/LaplaceAkuir/p/6262632.html?utm_source=itdadao&utm_medium=referral中caffe的安装

主要在运行过程中有如下改变:

1) 

1 cd ~ 2 git clone https://github.com/BVLC/caffe.git //从github上git caffe

  如果没有安装git,可以先使用sudo apt-get install git执行安装。

1 cd caffe 2 sudo cp Makefile.config.example Makefile.config 3 sudo vim Makefile.config

此时会修改caffe的编译配置,需要修改如下地方:

1 # USE_CUDNN := 1 修改成: USE_CUDNN := 1 2 # OPENCV_VERSION := 3 修改为: OPENCV_VERSION := 3 3 # WITH_PYTHON_LAYER := 1 修改为 WITH_PYTHON_LAYER:=1 4 #USE_OPENCV := 0 修改成 USE_OPENCV :=1 5 #USE_LEVELDB := 0 修改为 USE_LEVELDB:=1 6 #USE_LMDB := 0 修改位 USE_LMDB :=1 7 //修改matlab目录 8 将MATLAB_DIR := /usr/local/MATLAB/R2014b 9 //最终要的修改 # Whatever else you find you need goes here.下面的

由于是在14.04下进行编译,目前没有用到hdf5,故没有进行下面的修改。

10 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include 11 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 12 修改为:   INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial 13 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial //这是因为ubuntu16.04的文件包含位置发生了变化,尤其是需要用到的hdf5的位置,所以需要更改这一路径

2) 为防止make matcaffe时出现错误,可以在修改Makefile时,同时进行下述修改,大约第410行那一句话CXXFLAGS += -MMD -MP下面添加CXXFLAGS += -std=C++11,最后是这样

CXXFLAGS += -MMD -MP CXXFLAGS += -std=c++11

修改sudo vim Makefile后,进行编译,出现下述错误(大致是这样,原错误没有保存),

 src/caffe/common.cpp: In function ‘void caffe::GlobalInit(int*, char***)’: src/caffe/common.cpp:35:5: error: ‘::gflags’ has not been declared ::gflags::ParseCommandLineFlags(pargc, pargv, true); make: *** [.build_release/src/caffe/common.o] Error 1

参考https://stackoverflow.com/questions/30426734/caffe-recompile-libgflags-a-with-fpic-error,进行了下列修改

将下面两个文件

caffe/include/caffe/common.hpp caffe/examples/mnist/convert_mnist_data.cpp

中的语句进行注释

// #ifndef GFLAGS_GFLAGS_H_ namespace gflags = google; // #endif // GFLAGS_GFLAGS_H_ 3)在编译matcaffe时,会出现下述错误:

Makefile:518: recipe for target 'matlab/+caffe/private/caffe_.mexa64' failed make: *** [matlab/+caffe/private/caffe_.mexa64] Error 255参考博客http://blog.csdn.net/sxs11/article/details/70142415,

在Makefile里面,大约第410行那一句话CXXFLAGS += -MMD -MP下面添加CXXFLAGS += -std=C++11,最后是这样

CXXFLAGS += -MMD -MP CXXFLAGS += -std=c++11 然后在caffe根目录下 sudo make clean sudo make all

后来又重装了下,就没有出现4)的错误,不知道是什么原因。

4)最后仍会有错误:

====================================================================== ERROR: test_draw (unittest.loader.ModuleImportFailure) ---------------------------------------------------------------------- ImportError: Failed to import test module: test_draw Traceback (most recent call last): File "/usr/lib/python2.7/unittest/loader.py", line 254, in _find_tests module = self._get_module_from_name(name) File "/usr/lib/python2.7/unittest/loader.py", line 232, in _get_module_from_name __import__(name) File "/home/user/caffe/python/caffe/test/test_draw.py", line 6, in <module> import caffe.draw File "caffe/draw.py", line 22, in <module> import pydot ImportError: No module named pydot ---------------------------------------------------------------------- Ran 51 tests in 10.507s FAILED (errors=1) make: *** [pytest] Error 1 目前尚未解决,但是在python下已经可以import caffe,希望有人解决的话可以告知我,谢谢

转载请注明原文地址: https://www.6miu.com/read-81458.html

最新回复(0)