我是深度学习小白菜一颗,这个总结是我自己在配置环境的时候一步一步踩坑踩出来的,当然在遇到错误的时候看了很多前辈们的博客,也看了很多官网的tutorial,所以感谢那些前辈们的付出与贡献。希望大家转载的时候注明出处。
一:Ubuntu 16.04 安装
教程地址:https://tutorials.ubuntu.com/tutorial/tutorial-create-a-usb-stick-on-windows#0
安装好系统后装一些基本应用和常用命令
常用命令包括git、vim什么的
sudo apt install vim
sudo apt-get install git
基本应用,这里我装了一个搜狗拼音输入法
搜狗输入法:
(1)下载地址:http://pinyin.sogou.com/linux/?r=pinyin ,根据你的实际情况选择相应的安装包。
(2)下好后双击安装
(3)terminal里输入im-config 然后会出现一个对话框,点击OK,接着点击yes,然后选择fcitx,点击OK,接着OK。
(4)重启电脑shutdown -r now
(5)terminal里输入fcitx-config-gtk3,弹出一个对话框,如果对话框里有sogou输入法,那直接关掉,如果没有,那么点击对话框左下角的(+)按钮,弹出另一个对话框。然后,取消Only Show Current Language(很重要,否则不能找到刚安装过的搜狗输入法!)最后,在输入框中输入sogou,选中点击OK即可。添加完后将其放置到列表的最下方,注意,是最下方!!!然后默认输入法就是搜狗输入法了。
二:Opencv3 安装( + python 接口)
1:先
sudo apt-get update
sudo apt-get upgrade
这里可能会出现无法获得锁的问题,如果出现这种情况执行下面的语句(注意无法获得什么锁就rm什么)
sudo rm /var/cache/apt/archives/lock
sudo rm /var/lib/dpkg/lock
2:后安装一些安装openCV需要的包
sudo apt-get install build-essential cmake pkg-config
pkg-config是编译opencv的时候需要的,cmake是为了camke的时候用
sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
这些包都是为了OPENCV从硬盘里读入各种格式的图片
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev
为了读入视频
sudo apt-get install libgtk-3-dev
为了使用opencv里的highgui模块
sudo apt-get install libatlas-base-dev gfortran
为了优化opencv里的各种功能
sudo apt-get install python2.7-dev
为了安装python开发头和库
3:下载opencv
到你想放opencv的路径那里去(我的路径是 cd /home/plato/opencv/)我这里同时下载了opencv_contrib,这种方法下载的是最新的opencv,这就有可能会出现问题,因此可以去opencv官网下载稳定版本的opencv,安装方法同样
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
4:安装python环境
本安装方法使用的是ubuntu16.04自带的python,所以这个时候要先把pip安装好
安装pip:
cd /home
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
sudo rm get-pip.py
这个时候就安装好了pip
然后可以用sudo pip install packages’name 来安装各种python包了
比如安装个numpy啊什么的
sudo pip install numpy
5:安装opencv
cd /home/plato/opencv/opencv
mkdir build
cd build
camke -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=OFF \
-D OPENCV_EXTRA_MODULES_PATH=/home/plato/opencv/opencv_contrib/modules/ \
-D PYTHON_EXECUTABLE=/usr/bin/python \
-D BUILD_EXAMPLES=ON ..
注意最后的两点
接下来
make -j8
sudo make install
(这个完成后会在/usr/local/lib/python2.7/site-packages/ 里生成一个cv2.so 如果没有就检查一下 /usr/local/lib/python2.7/ dist-packages/ 里有没有,一般是有的,这个时候opencv的python接口就做好了)
sudo ldconfig
此时,你可以在python里自由自在地 import cv2
三:caffe 的安装
1:环境准备(这些安装过程中只要出现失败的时候先sudo apt-get update一下,若不能解决在寻找其他办法)
sudo apt-get insatll libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install python-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
2:下载caffe源码
git clone https://github.com/bvlc/caffe.git
(这个存在了/home/plato下的caffe里)
3:修改Makefile.config
cd caffe
mv Makefile.config.example Makefile.config
vim Makefile.config
(1)uncomment these (删掉下面这些配置行的#号)
# CPU_ONLY := 1
# OPENCV_VERSION := 3
# WITH_PYTHON_LAYER := 1
(2)前面的环境准备中用的是libhdf5-serial-dev,所以应在
INCLUDE_DIRS:= $(PYTHON_INCLUDE) /usr/local/include
后面加上
/usr/include/hdf5/serial/
即为
INCLUDE_DIRS:= $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/
3:修改Makefile
vim Makefile
把 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
4:安装
make -j8
5:caffe的python接口的配置
由于咱们用的是Ubuntu16.04自带的python(虽然anaconda更方便。。。但是我配置opencv的python接口的时候一直出错没能解决问题,所以就用了自带的python了)
cd /home/plato/caffe/python
sudo pip install -r requirements.txt
(安装caffe的python接口所需要的python库)
然后将caffe目录中的python路径加入环境变量中
vim /home/plato/.bashrc
将下面这句加入打开的 .bashrc 文件中
export PYTHONPATH=/home/plato/caffe/python:$PYTHONPATH
保存后退出,然后
source /home/plato/.bashrc
sudo ldconfig
然后在caffe根目录下
cd /home/plato/caffe
sudo make pycaffe
这个时候可能会报错 fatal error: numpy/arrayobject.h没有那个文件或目录
此时
sudo apt-get install python-numpy
然后
sudo make pycaffe
若成功了,那么你可以在python里快乐地 import caffe
参考资料:
1:http://lib.youkuaiyun.com/article/opencv/46532
2:http://www.cnblogs.com/longmao-yiran/p/6832374.html
3:http://www.cnblogs.com/denny402/p/5679037.html
4:http://blog.youkuaiyun.com/wuzuyu365/article/details/52430657
5:http://blog.youkuaiyun.com/zkp0601/article/details/41349253
6:http://www.pyimagesearch.com/2016/10/24/ubuntu-16-04-how-to-install-opencv/
7:https://tutorials.ubuntu.com/tutorial/tutorial-create-a-usb-stick-on-windows
8:http://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html
9:http://caffe.berkeleyvision.org/