ubuntu16.04 opencv3.3 python2.7 caffe GPU环境搭建
此博客总结记录深度学习环境搭建的详细过程,博客中的所有下载链接均为官方网站
1. 软件库更新与软件升级
sudo apt-get update
sudo apt-get upgrade
2.安装基本的工具
- 安装基本的工具与包
sudo apt install vim #vim编辑器
sudo apt-get install git #安装git
sudo apt-get install build-essential cmake pkg-config
安装sogou拼音输入法
(1)下载sogou拼音输入法
(2)双击下载的sogou*.deb安装包
(3)安装完成后在terminal里输入im-config,然后会弹出一个对话框,点击OK,接着点击yes,然后选择fcitx,点击OK,接着OK。
(4)重启电脑 shutdown -r now
(5)terminal里输入fcitx-config-gtk3,弹出一个对话框,点击+号添加刚安装的sogou输入法安装pip
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
sudo rm get-pip.py
# 然后就可以自由自在地安装python的各种包了
sudo pip install numpy
3. 安装NVIDIA系列(驱动,cuda8, cudnn6)
1. 安装nvidia驱动
安装驱动的方法有很多种,比如:
A:PPA源:最简单,但是未必有最新驱动,也有可能会遇到问题。
B:安装CUDA时,顺便安装驱动:但未必是最新的驱动。
C:去官网下载最新的驱动,然后本地安装(NVIDIA-Linux*.run),本文采用这种方法。
(1)下载驱动,根据自己的显卡下载与其对应的驱动
(2)删除原有的的nvidia驱动
如果原来用的是PPA源安装的,那么用sudo apt-get remove –purge nvidia* 来删除
如果原来是用runfile安装的,那么用- -uninstall命令来卸载,驱动为NVIDIA-Linux*.run
sudo chmod +x NVIDIA-Linux*.run
sudo ./NVIDIA-Linux*.run - -uninstall(uninstall前面为两个横线,中间没有间隔)
(3)禁用nouveau驱动
sudo vim /etc/modprobe.d/blacklist.conf
在最后一行加入下面的两行
blacklist nouveau
options nouveau modeset=0
然后执行: sudo update-initramfs -u
重启,执行: lsmod | grep nouveau
如果没有屏幕输出,说明禁用nouveau成功。
(4)禁用X-Window服务
sudo service lightdm stop #关闭X-Window
按下ctrl + alt + f1进入命令行模式
(5)runfile安装驱动
sudo chmod +x NVIDIA-Linux*.run
sudo ./NVIDIA-Linux*.run - -no-opengl-files(no前面的两个横杠是连着的)
说明:
- -no-opengl-files:表示只安装驱动文件,不安装openGL文件,该参数不可省略,否则会导致登陆界面死循,称为login loop或者称为stunk in login
然后根据提示安装。
若成功安装,那么重启电脑即可
若提示失败,重复以上步骤,直到成功
(6)driver测试
nvidia-smi #列出GPU信息列表,表示驱动安装成功
nvidia-settings #弹出设置对话框,表示驱动安装成功
2. 安装CUDA8
通过runfile来进行安装
(1)下载cuda
(2)安装CUDA
sudo ./cuda_*.run - -no-opengl-libs
注意: - -no-opengl-libs:表示只安装驱动文件不安装OpenGL文件,必须参数,原因同上(no前面是两个不分开的横杆)
然后根据提示安装。
在遇到以下问题的时候根据实际进行调整:
- do you accept the previously read EULA?
accept - install nvidia accelerated graphics driver for Linux-x86_64 375.26?
n - install the cuda 8.0 toolkit?
y - enter toolkit location?
使用默认的就好 - do you wish to run the installation with ‘sudo’?
y - do you want to install a symbolic link at /usr/local/cuda?
y - install the cuda 8.0 samples?(因为在/usr/local/cuda-8.0目录下就有samples)
n
(3)CUDA Sample测试
# 编译并测试设备deviceQuery:
cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
# 编译并测试带宽bandwidthTest
cd ../bandwidthTest
sudo make
./bandwidthTest
如果这两个测试的最后结果都是Result = PASS,说明CUDA安装成功
(4)安装CUDA的官方补丁(在下载CUDA8.0的页面一起下载)
sudo ./cuda_8.0.61.2_linux.run
添加cuda的环境变量
cd ~/
sudo vim .bashrc
#在最后一行添加如下内容
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
3. 安装CUDNN
(1)下载cudnn
需要登录才能下载,我下载的是cudnn6
(2)安装(根据官网教程)
tar -xzvf cudnn-8.0-linux-x64-v6.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
cd /usr/local/cuda/lib64/
sudo rm libcudnn.so libcudnn.so.6
sudo ln -s libcudnn.so.6.0.21 libcudnn.so.6
sudo ln -s libcudnn.so.6 libcudnn.so
sudo ldconfig
至此,NVIDIA系列安装完成
4. 安装opencv3.3
1. 下载opencv3.3与opencv_contrib3.3
2. 解压两个包
将第一步下载的两个zip解压到同一个文件夹下(我是放在~/目录下的opencv里)
3. 安装基本的包
sudo apt-get install libopencv-dev
sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev libdc1394-22-dev libtbb2 libtbb-dev#读取各种格式的图片
sudo apt-get install libavcodec-dev libacformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev #读入视频
sudo apt-get install libgtk-3-dev libgtk2.0-dev #为了使用opencv里的hightgui模块
sudo apt-get install libatlas-base-dev gfortran #优化opencv里的各种功能
sudo apt-get install python-dev python2.7-dev python-numpy #安装python开发头与库
4. 编译与安装
在opencv3.3里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=ON \
-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 或者dist-packages中生成cv2.so,这个保证了可以在Python中import cv2
然后
sudo ldconfig
至此,opencv3.3安装成功
5. 安装caffe
1:git clone https://github.com/bvlc/caffe.git
2:安装相应的包
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
3:修改Makefile.config
去掉一下项的注释
#USE_CUDNN := 1
#OPENCV_VERSION := 3
#WITH_PYTHON_LAYER := 1
将下面两行修改一下
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
修改为:
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial
5:修改Makefile
将:
NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)
替换为:
NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)将:
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
6:修改/usr/local/cuda/include/host_config.h
将其中的第119行注释掉:
将
#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
改为
//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
7:复制文件到/usr/local/lib下
sudo cp /usr/local/cuda-8.0/lib64/libcudart.so.8.0 /usr/local/lib/
sudo cp /usr/local/cuda-8.0/lib64/libcublas.so.8.0 /usr/local/lib/
sudo cp /usr/local/cuda-8.0/lib64/libcurand.so.8.0 /usr/local/lib/
sudo ldconfig
8:编译
sudo make -j8
#然后
sudo make test -j8
make runtest -j8
9:编译python接口
cd ~/caffe/python
sudo pip install -r requirements.txt
#在.bashrc中添加caffe python的环境变量
vim ~/.bashrc #在最后一行加入如下内容
export PYTHONPATH=/home/plato/caffe/python:$PYTHONPATH
#保存后退出
sudo ldconfig
#然后
sudo make pycaffe
自此,caffe安装成功
6. 安装tensorflow
7. 安装pycharm
1:下载pycharm
下载社区版
2:安装
sudo tar xf <pycharm-professional or pycharm-community>-*.tar.gz -C /opt/
cd opt/<pycharm-professional or pycharm-community>-*/bin
./pycharm.sh
3:配置caffe的环境
(1)打开第2步中的pycharm.sh
LD_LIBRARY_PATH=”IDE_BIN_HOME : LD_LIBRARY_PATH” “$JAVA_BIN”
在这行上面加入
LD_LIBRARY_PATH='/usr/local/cuda/lib64'
(2)打开pycharm
file->settings->project:pycharm->project interpreter
右上角有一个设置的icon,点击选择more,新页面中点击右上角的+号下面第4个icon,进去后点击绿色的+号
将/home/plato/caffe/python添加进去
**至此,可以在pycharm中使用caffe了
参考文献
- http://blog.csdn.net/u012535905/article/details/73777345
- http://m.blog.csdn.net/cosmoshua/article/details/76644029
- http://blog.csdn.net/xuzhongxiong/article/details/52717285
- https://docs.opencv.org/master/d7/d9f/tutorial_linux_install.html
- http://blog.csdn.net/a_z666666/article/details/72853346
- http://www.41xt.com/jiaocheng/xp/23142_6.html
- http://blog.csdn.net/lookthewind/article/details/71499098
ubuntu16.04 opencv3.3 python2.7 caffe GPU环境搭建相关推荐
- [亲测可行]Ubuntu16.04+opencv3.4+opencv_contrib+cuda9.0安装
这篇博客主要总结下在Ubuntu下安装opencv以及扩展库所遇到的问题,以及解决的方案. Opencv版本:3.4.7+CUDA9.0+1060 一.下载Opencv+contrib 在Opencv ...
- ubuntu16.04+cuda8.0+cudnn5.1+caffe 安装(基于独立主机集成显卡GTX1080Ti)
最近开始配置自己的深度学习主机,由于之前只在笔记本上和单显卡主机上安装过,所以可以说是zero经验,以至于很多问题不了解都当成了bug,故为了方便以后的自己以及大众,特在此写下post一篇.(由于可能 ...
- (亲测可行)ubuntu16.04+Opencv3.4.3+opencv_contrib3.4.3安装编译全过程
ubuntu16.04+Opencv3.4.3+Opencv_contrib3.4.3安装编译全过程 1.资源下载 opencv3.4.3+opencv_contrib3.4.3下载链接: https ...
- caffe-gpu ubuntu 安装_ubuntu16.04 cuda10.0 配置caffe gpu环境
caffe gpu环境的配置就是一部赤裸裸的血泪史,每次都能遇到很多问题~ 环境依赖 ubuntu 16.04cuda 10.0python 3.5opencv 3.4.10sudo apt-get ...
- MSI(微星) GP62mvr Ubuntu16.04 + Opencv3.4.1配置教程
Ubuntu16.04+OPENCV3.4.1配置教程 1.去官网下载opencv,在本教程中选用的时opencv3.4.1,其他版本的配置方法异曲同工. 下载链接http://opencv.org/ ...
- Ubuntu18.04+Nvidia RTX 3060+Pytorch配置GPU环境
Ubuntu18.04+Nvidia RTX 3060+Pytorch配置GPU环境 1. 安装GPU显卡驱动 1.1 安装前 1.2 安装过程 1.2.1 打开终端,查看推荐安装的驱动 1.2.2 ...
- Java_JDK19.0.2_Ubuntu18.04中配合海康工业相机SDK环境搭建
Java_JDK19.0.2_Ubuntu18.04中配合海康工业相机SDK环境搭建 简介 1. JDK环境搭建 JDK下载 JDK环境安装 2. 工业相机环境SDK安装 简介 本文主要介绍在ubun ...
- 深度学习GPU环境搭建
深度学习GPU环境搭建: 安装步骤: 1.安装GPU驱动:官网有(可以理解为告诉电脑这个东西怎么使用) 不同厂家的不一样,用于深度学习的一般是NVIDIA.AMD家. 本人是NVIDIA家,驱动长这样 ...
- Ubuntu16.04 +cuda8.0+cudnn+opencv+caffe+theano+tensorflow配置明细
本文为原创作品,未经本人同意,禁止转载,禁止用于商业用途!本人对博客使用拥有最终解释权 欢迎关注我的博客:http://blog.csdn.net/hit2015spring和http://www.c ...
最新文章
- 用cmd运行python文件_怎么用cmd运行python文件
- 自动驾驶中可解释AI综述和未来研究方向
- gitk、Git GUI 图形化工具中文显示乱码的解决方案
- [Asp.net MVC]Asp.net MVC5系列——第一个项目
- 007_Maven依赖管理
- 【视频】云信CTO阙杭宁:IM云开发经验分享
- Tomcat web.xml配置参数详解
- P3835-[模板]可持久化平衡树【无旋Treap】
- 使用named_mutex实现锁机制
- 一起学《Troubleshooting Oracle Performance》吧
- 如何在TransCAD中制作美观的地图
- windows管理信息服务器不可用,Windows提示 错误: RPC 服务器不可用 解决方法。
- 嘉兴 机器人仓库 菜鸟_菜鸟在嘉兴推出全新智能仓 宣布将在双11启用超级机器人仓群...
- TypeError: Student() takes no arguments
- 高清娱乐,高帧率投屏,来试试PeakDo毫米波无线投屏器
- IP安全:DDoS攻击、tearDrop攻击和微小碎片攻击
- BI工具数据看板哪个好,瓴羊Quick BI整不错!
- 倍福TwinCAT3中使用久同伺服
- 百度财报解析-百度云要变成老大哥
- 前端:Tomcat服务器部署Web项目
热门文章
- 网易云音乐app用户个人中心(对比QQ音乐)
- Sklearn_LearningCurve
- 编译内核遇到:error: ‘ovl_v1_fs_type’ undeclared (first use in this function)错误
- Uable to attach or mount volumes: unmounted volumes=[xxxx], unattached volumes=[xxxx]: timed out wa
- 高分一号数据的预处理
- 安卓蓝牙实现即时通讯功能
- RESTful 标准接口教程
- Illegal mix of collations (utf8mb4_0900_ai_ci,IMPLICIT) and (utf8mb4_0900_as_ci,IMPLICIT) for operat
- 分享 | NB-IoT智能井盖传感器
- qlv转mp4格式工厂失败