Ubuntu 14.04 + Caffe配置记录(CPU模式,无GPU,无Cuda)
2016-10-17 20:30
471 查看
/****************************************************************************************************************************************************************
*备注:
* 我已经根据这篇文章顺利安装了caffe框架,大家可以放心使用,安装过程十分简单
*****************************************************************************************************************************************************************/
对于使用深度学习进行图像处理,Caffe是一个不错的框架选择。但是安装起来,并不是如想象中容易,稍不注意就会出错。
网上关于Ubuntu14.04下配置Caffe的资料很多,但是总是要自己亲自配置才能获得自己的心得。
从操作系统的版本转换到cuda的版本等变换,加上一下bug,中途浪费了许多时间,折腾了一两天,终于还是配置成功了。
具体参照的链接是:http://blog.csdn.net/u012746763/article/details/50352930
还有一个有cuda安装模式的参考链接主要为:http://www.cnblogs.com/dupuleng/articles/4213834.html
感谢网上许多热心伙伴的贡献,让新入门的可以少走弯路。
由于目前的项目并没有引入GPU使用,只是一个进行初步的测试版本,因此没有配置cuda和GPU模式,仍然使用CPU运行模式。
【注:以下指令都是控制台指令,通过Ctrl+Alt+T快捷打开】
1. 安装【build-essentials】
安装开发所需要的一些基本的包,
sudo apt-get install build-essential
如果不可行,则可以执行:
sudo apt-get update
2. 安装【BLAS】
BLAS 有三类,默认的是ATLAS,其余两种是MKL和OpenBlas, 我一开始安装的OpenBlas,但是后面安装不正确导致caffe部分出错,因此后来是安装的ATLAS,如果要求不高,建议安装ATLAS,方便和安装简单。
sudo apt-get install libatlas-base-dev
注意,这里的选择在后面caffe的配置文件中会需要配置。如果换过,也要记得后面的配置需要修改。
3. 安装【OpenCV】
许多人建议无需手动安装,可以直接下载Github的安装版本(https://github.com/jayrambhia/Install-OpenCV),下载之后进行解压,由于是zip格式的文件,
解压指令为:
unzip -o XXX.zip -d XXXPATH
这里的XXX.zip是路径下的该压缩文件,XXXPATH是指定想要解压到的路径,这里需要注意最好输入绝对路径,当然不怕出错的话,也可以使用相对路径。解压之后可以先check一下。
当然如果是使用git,则直接使用git clone +链接,就直接不需要解压了。这个需要事先已安装git的情况下(sudo apt-get install git)
安装【2.4.9】,不知道为什么网上为什么建议安装2.4.10,我试了两次,都是安装到不到一半电脑都完全卡死,完全不动。因此,这里我建议安装OpenCV2.4.9,这里也有一个链接(https://github.com/bearpaw/Install-OpenCV),其实都可以的。
下载之后,进行解压,然后进入下面目录:
cd Install-OpenCV/Ubuntu/2.4/
给当前目录下的所有sh文件添加可执行权限:
chmod +x *.sh
安装OpenCV2.4.9:
sudo ./opencv2_4_9.sh
4. 安装【dependencies】
任意路径下可执行
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev
libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
5. 配置和编译【Caffe】
接下来就可以进行配置了。
当然,首先是下载Caffe,可以从官网上给出的链接下载:https://github.com/BVLC/caffe按照之前相同的方法解压(或者git)之后,进入到caffe目录,然后复制配置文件:
cd ./caffe-master/
cp Makefile.config.example Makefile.config
接下来就是修改配置文件Makefile.config:
sudo vim Makefile.config
如果没有安装vim,可以先安装使用sudo apt-get install vim(关于vi的使用,这里不赘述了)
(如果权限不足,可以先修改文件的权限:
chmod g+w Makefile.config
主要修改的部分为:
1. 将# CPU_ONLY
= 1前面的#去掉 并按“tab”键,(默认从tab处执行),因为这里没有安装GPU,需要使用CPU运行。
2. BLAS := atlas, 这是默认设置,如果不是安装的这个,则需要修改。具体修改,该语句上面有注释提示。
3. 设置MATLAB_DIR的路径:如我的是/usr/local/MATLAB/R2014a
这里,提供非常好的MATLAB for Linux的安装教程,
http://blog.csdn.net/lanbing510/article/details/41698285
http://www.cnblogs.com/txg198955/p/5477258.html
如果其中的下载链接失效,可以联系我。
有的时候安装好后指令输入sudo matlab之后,显示matlab command not found.的错误。
这个的解决方法是:
cd /usr/local/bin
sudo ln -s /usr/local/MATLAB/R2014a/bin/matlab matlab
之后只要在终端输入matlab就可以了。
设置完成后,则开始编译过程:
主要过程为:
sudo make all -j4
sudo make test
sudo make runtest
这里,需要注意的是,sudo必须加上,不然中间会报错....Permission Denied...。 另外,第一句中的j后面的数字是可以根据自己的机器的内核数改变,数字越大则表示可以多线程编译,则相应的速度会快。
===========================================================================================
===========================================================================================
【下面的就是自带的数据的训练和测试】
1. 使用MNIST数据集进行训练
(1)对提供的sh文件进行数据的预处理,生成训练和测试数据:
先到caffe下的以下路径:
cd data/mnist
运行:
sudo sh ./get_mnist.sh
会得到四个文件:t10k-images-idx3-ubyte, t10k-labels-idx1-ubyte, train-images-idx3-ubyte, train-labels-idx1-ubyte
(2)把数据处理成LDB文件,
sudo sh ./examples/mnist/create_mnist.sh
生成mnist-train-leveldb/ 和 mnist-test-leveldb/文件夹,这里包含了LDB格式的数据集
参考链接中说得很清楚,这里很容易犯的一个错误(事实上,我也犯了相同错误)是,这里如果先把目录切到/examples/mnist下,再进行运行sudo sh ./create_mnist.sh
的话,则会报错的。错误信息为:
(3)训练MNIST
由于我们使用的是CPU,因此这里需要在配置文件中进行修改,
cd /examples/mnist/
vi lenet_solver.prototxt
将文件最后的solver_mode:GPU 改为 solver_mode: CPU
修改完成之后,就可以进行训练了:
sudo sh ./examples/mnist/train_lenet.sh
训练完成之后会得到一个lenet_iter_10000.caffemodel。这里训练的时候需要注意之前的问题,仍然是要在caffe根目录进行训练,不能直接到examples/mnist目录下运行sh
训练成功可得到:
2. 使用MNIST数据集进行测试
训练完成之后,我们当然需要对我们训练的模型进行测试。
我是参照的命令行方式。也可以使用python,matlab进行编译。
首先需要在cd到 ./caffe-master/examples/mnist文件夹下,新建一个sh文件,生成指令为:
touch test_lenet.sh #生成.sh文件
接着进入该文件进行编辑:
vim test_lenet.sh
编辑的内容为(可Copy):
#!/usr/bin/env
sh
./build/tools/caffe
test --model=examples/mnist/lenet_train_test.prototxt --weights=examples/mnist/lenet_iter_10000.caffemodel -iterations 100
这里其实就只有两行,一定要保证这一点。否则会出错。
保存之后返回到caffe目录下运行测试,跟之前一样。
sudo
sh ./examples/mnist/test_lenet.sh
测试成功之后可以得到:
===========================================================================================
==========================================================================================
下面是对Python和MATLAB的编译
1.
安装和编译【Python】
安装Anaconda,许多人推荐安装,因为其能独立于系统自带的python库,并且提供大部分Caffe需要的科学运算Python库。
(1)下载官网:https://www.continuum.io/downloads
(2)下载完成之后,在下载目录执行
bash Anaconda2-4.1.0-Linux-x86_64.sh(替换自己下载的版本哈)
我下载的目前最新版,4.1.0,安装完成即将结束时,会询问时候将路径写到bashrc中,这里默认为no,也推荐选则no,接下来再自己配置。
(3)对配置文件进行修改:
sudo vim ~/.bashrc
文件末尾需要添加:
LD_LIBRARY_PATH=your_anaconda_path/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
(4)安装python-dev和python-pip
sudo apt-get install python-dev python-pip
(5)执行pip
cd ./caffe-master/python
for req in $(cat requirements.txt); do sudo pip install $req; done
(6)编译
sudo make pycaffe
执行成功可见:
2. 安装和编译MATLAB
安装教程的链接之前提供过了,这里假设已经安装好MATLAB
(1)修改caffe目录下Makefile.config中MATLAB_DIR的路径,如果之前已经修改过,这里可跳过。
(2)cd到caffe目录下,运行
sudo make matcaffe
成功页面:
到这里,就已经差不多做完了整个的准备工作。
接下来就可以开始进行自己的测试数据集咯~~
如果有错,请广大网友指正。
*备注:
* 我已经根据这篇文章顺利安装了caffe框架,大家可以放心使用,安装过程十分简单
*****************************************************************************************************************************************************************/
对于使用深度学习进行图像处理,Caffe是一个不错的框架选择。但是安装起来,并不是如想象中容易,稍不注意就会出错。
网上关于Ubuntu14.04下配置Caffe的资料很多,但是总是要自己亲自配置才能获得自己的心得。
从操作系统的版本转换到cuda的版本等变换,加上一下bug,中途浪费了许多时间,折腾了一两天,终于还是配置成功了。
具体参照的链接是:http://blog.csdn.net/u012746763/article/details/50352930
还有一个有cuda安装模式的参考链接主要为:http://www.cnblogs.com/dupuleng/articles/4213834.html
感谢网上许多热心伙伴的贡献,让新入门的可以少走弯路。
由于目前的项目并没有引入GPU使用,只是一个进行初步的测试版本,因此没有配置cuda和GPU模式,仍然使用CPU运行模式。
【注:以下指令都是控制台指令,通过Ctrl+Alt+T快捷打开】
1. 安装【build-essentials】
安装开发所需要的一些基本的包,
sudo apt-get install build-essential
如果不可行,则可以执行:
sudo apt-get update
2. 安装【BLAS】
BLAS 有三类,默认的是ATLAS,其余两种是MKL和OpenBlas, 我一开始安装的OpenBlas,但是后面安装不正确导致caffe部分出错,因此后来是安装的ATLAS,如果要求不高,建议安装ATLAS,方便和安装简单。
sudo apt-get install libatlas-base-dev
注意,这里的选择在后面caffe的配置文件中会需要配置。如果换过,也要记得后面的配置需要修改。
3. 安装【OpenCV】
许多人建议无需手动安装,可以直接下载Github的安装版本(https://github.com/jayrambhia/Install-OpenCV),下载之后进行解压,由于是zip格式的文件,
解压指令为:
unzip -o XXX.zip -d XXXPATH
这里的XXX.zip是路径下的该压缩文件,XXXPATH是指定想要解压到的路径,这里需要注意最好输入绝对路径,当然不怕出错的话,也可以使用相对路径。解压之后可以先check一下。
当然如果是使用git,则直接使用git clone +链接,就直接不需要解压了。这个需要事先已安装git的情况下(sudo apt-get install git)
安装【2.4.9】,不知道为什么网上为什么建议安装2.4.10,我试了两次,都是安装到不到一半电脑都完全卡死,完全不动。因此,这里我建议安装OpenCV2.4.9,这里也有一个链接(https://github.com/bearpaw/Install-OpenCV),其实都可以的。
下载之后,进行解压,然后进入下面目录:
cd Install-OpenCV/Ubuntu/2.4/
给当前目录下的所有sh文件添加可执行权限:
chmod +x *.sh
安装OpenCV2.4.9:
sudo ./opencv2_4_9.sh
4. 安装【dependencies】
任意路径下可执行
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev
libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
5. 配置和编译【Caffe】
接下来就可以进行配置了。
当然,首先是下载Caffe,可以从官网上给出的链接下载:https://github.com/BVLC/caffe按照之前相同的方法解压(或者git)之后,进入到caffe目录,然后复制配置文件:
cd ./caffe-master/
cp Makefile.config.example Makefile.config
接下来就是修改配置文件Makefile.config:
sudo vim Makefile.config
如果没有安装vim,可以先安装使用sudo apt-get install vim(关于vi的使用,这里不赘述了)
(如果权限不足,可以先修改文件的权限:
chmod g+w Makefile.config
主要修改的部分为:
1. 将# CPU_ONLY
= 1前面的#去掉 并按“tab”键,(默认从tab处执行),因为这里没有安装GPU,需要使用CPU运行。
2. BLAS := atlas, 这是默认设置,如果不是安装的这个,则需要修改。具体修改,该语句上面有注释提示。
3. 设置MATLAB_DIR的路径:如我的是/usr/local/MATLAB/R2014a
这里,提供非常好的MATLAB for Linux的安装教程,
http://blog.csdn.net/lanbing510/article/details/41698285
http://www.cnblogs.com/txg198955/p/5477258.html
如果其中的下载链接失效,可以联系我。
有的时候安装好后指令输入sudo matlab之后,显示matlab command not found.的错误。
这个的解决方法是:
cd /usr/local/bin
sudo ln -s /usr/local/MATLAB/R2014a/bin/matlab matlab
之后只要在终端输入matlab就可以了。
设置完成后,则开始编译过程:
主要过程为:
sudo make all -j4
sudo make test
sudo make runtest
这里,需要注意的是,sudo必须加上,不然中间会报错....Permission Denied...。 另外,第一句中的j后面的数字是可以根据自己的机器的内核数改变,数字越大则表示可以多线程编译,则相应的速度会快。
===========================================================================================
===========================================================================================
【下面的就是自带的数据的训练和测试】
1. 使用MNIST数据集进行训练
(1)对提供的sh文件进行数据的预处理,生成训练和测试数据:
先到caffe下的以下路径:
cd data/mnist
运行:
sudo sh ./get_mnist.sh
会得到四个文件:t10k-images-idx3-ubyte, t10k-labels-idx1-ubyte, train-images-idx3-ubyte, train-labels-idx1-ubyte
(2)把数据处理成LDB文件,
sudo sh ./examples/mnist/create_mnist.sh
生成mnist-train-leveldb/ 和 mnist-test-leveldb/文件夹,这里包含了LDB格式的数据集
参考链接中说得很清楚,这里很容易犯的一个错误(事实上,我也犯了相同错误)是,这里如果先把目录切到/examples/mnist下,再进行运行sudo sh ./create_mnist.sh
的话,则会报错的。错误信息为:
./create_mnist.sh: 16: ./create_mnist.sh: build/examples/mnist/convert_mnist_data.bin:
not found
(3)训练MNIST由于我们使用的是CPU,因此这里需要在配置文件中进行修改,
cd /examples/mnist/
vi lenet_solver.prototxt
将文件最后的solver_mode:GPU 改为 solver_mode: CPU
修改完成之后,就可以进行训练了:
sudo sh ./examples/mnist/train_lenet.sh
训练完成之后会得到一个lenet_iter_10000.caffemodel。这里训练的时候需要注意之前的问题,仍然是要在caffe根目录进行训练,不能直接到examples/mnist目录下运行sh
训练成功可得到:
2. 使用MNIST数据集进行测试
训练完成之后,我们当然需要对我们训练的模型进行测试。
我是参照的命令行方式。也可以使用python,matlab进行编译。
首先需要在cd到 ./caffe-master/examples/mnist文件夹下,新建一个sh文件,生成指令为:
touch test_lenet.sh #生成.sh文件
接着进入该文件进行编辑:
vim test_lenet.sh
编辑的内容为(可Copy):
#!/usr/bin/env
sh
./build/tools/caffe
test --model=examples/mnist/lenet_train_test.prototxt --weights=examples/mnist/lenet_iter_10000.caffemodel -iterations 100
这里其实就只有两行,一定要保证这一点。否则会出错。
保存之后返回到caffe目录下运行测试,跟之前一样。
sudo
sh ./examples/mnist/test_lenet.sh
测试成功之后可以得到:
===========================================================================================
==========================================================================================
下面是对Python和MATLAB的编译
1.
安装和编译【Python】
安装Anaconda,许多人推荐安装,因为其能独立于系统自带的python库,并且提供大部分Caffe需要的科学运算Python库。
(1)下载官网:https://www.continuum.io/downloads
(2)下载完成之后,在下载目录执行
bash Anaconda2-4.1.0-Linux-x86_64.sh(替换自己下载的版本哈)
我下载的目前最新版,4.1.0,安装完成即将结束时,会询问时候将路径写到bashrc中,这里默认为no,也推荐选则no,接下来再自己配置。
(3)对配置文件进行修改:
sudo vim ~/.bashrc
文件末尾需要添加:
LD_LIBRARY_PATH=your_anaconda_path/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
(4)安装python-dev和python-pip
sudo apt-get install python-dev python-pip
(5)执行pip
cd ./caffe-master/python
for req in $(cat requirements.txt); do sudo pip install $req; done
(6)编译
sudo make pycaffe
执行成功可见:
2. 安装和编译MATLAB
安装教程的链接之前提供过了,这里假设已经安装好MATLAB
(1)修改caffe目录下Makefile.config中MATLAB_DIR的路径,如果之前已经修改过,这里可跳过。
(2)cd到caffe目录下,运行
sudo make matcaffe
成功页面:
到这里,就已经差不多做完了整个的准备工作。
接下来就可以开始进行自己的测试数据集咯~~
如果有错,请广大网友指正。
相关文章推荐
- Ubuntu 14.04 + Caffe配置记录(CPU模式,无GPU,无Cuda)
- 安装配置 Ubuntu 14.04 + CUDA8.0 + cuDNN v5 + caffe
- 更正版:Ubuntu 14.04 + Cuda7.5 + Caffe 安装配置全过程
- linux(ubuntu14.04)+GPU+cuda6.5+caffe+openCV2.4.9+matlab2014a+python的新手配置(修改版)
- Ubuntu 14.04 + Caffe + Cuda8.0 +Python2.7(GPU版)安装配置教程(傻瓜式)
- Caffe + Ubuntu 14.04 64bit + CUDA6.5 + 无GPU 配置
- Ubuntu14.04+cuda6.5+opencv2.4.9+caffe配置记录
- linux(ubuntu14.04)+GPU+cuda6.5+caffe+openCV2.4.9+matlab2014a+python的新手配置
- Ubuntu14.04+cuda8.06+cudnn5.1+gtx1070的GPU环境配置中遇到的错误修改参考
- Ubuntu14.04 + cuda 7.5 + caffe 配置
- [转][linux(ubuntu14.04)+GPU+cuda6.5+caffe+openCV2.4.9+matlab2013b+python2.7的新手配置转]
- ubuntu14.04+CUDA7.5+cuDNN+caffe的超详细完整配置
- 2015.08.17 Ubuntu 14.04+cuda 7.0+caffe安装配置
- pytorch-0.2成功调用GPU:ubuntu16.04,Nvidia驱动安装以及最新cuda9.0与cudnnV7.0配置
- caffe环境的搭建(Ubuntu14.04 64bit,无CUDA,caffe在CPU下运行)
- Ubuntu14.04 + NVIDIA GTX1080Ti + cuda8.0 +cuDNN6.0 +python3.4 + tensorflow_gpu-1.4.0-cp34-cp34m-
- Caffe学习系列(1):安装配置ubuntu14.04+cuda7.5+caffe+cudnn
- NVIDIA DIGITS-2.0 + Ubuntu 14.04 + CUDA 7.0 + cuDNN 7.0 + Caffe 0.13.0环境配置
- Ubuntu14.04配置cuda-convnet
- Ubuntu 14.04+cuda 7.5+caffe安装配置