ubuntu16.04安装cuda8和opencv3.2
来源:互联网 发布:斯伦贝谢软件研发中心 编辑:程序博客网 时间:2024/06/05 20:24
首先,如果没有安装显卡驱动,请下载先安装独立显卡驱动,如果已经安装好显卡驱动,请直接忽视安装显卡驱动。
1、显卡驱动安装
安装完ubuntu16.04系统之后,直接更新系统并重启。在多显卡的笔记本中,可能需要在BIOS系统里选择”自由选择显卡“,这样系统才能识别nvidia的显卡,并进行驱动更新。我这里是运用ppa更新的最新驱动,使用起来能够得到挺好的体验,并能够实现双显卡的自由切换。
首先,通过快捷键Ctrl+Alt+T打开终端,然后加入官方ppa源:
$ sudo add-apt-repository ppa:graphics-drivers/ppa
需要输入用户密码,并确认链接源。之后刷新软件库并安装最新的驱动,在命令行输入:
$ sudo apt-get update$ sudo apt-get install nvidia-367 nvidia-settings nvidia-prime
由于联想笔记本的UEFI保护,会拒绝第三方的驱动,因此需要关闭该保护,关闭之后重启能够正常驱动nvidia,并能够进行双显卡的切换。
安装完成之后,可以通过系查看系统属性,看是否是nvidia的显卡。另外,也可以通过下面命令看是否安装成功:
$ nvidia-settings
然后:去官网下载cuda:https://developer.nvidia.com/cuda-downloads
下载之后进入下载文件夹,打开终端输入,后面文件名不一定一样,根据自己的修改
- chmod 777 cuda_8.0.61_375.26_linux.run
- sudo ./cuda_8.0.61_375.26_linux.run --override
输入完这个时候,过一段时间,会有一个很长很长的说明,刚开始显示0%,可以一直按住F跳到最后,之后会问你是否接受,输入accept即可,然后就是要输入是否同意安装显卡驱动,请注意,输入这里no,后面输入yes就行,安装路径直接输入默认路径进行。
注意:后面的override是必须的,这样才能保证安装的过程中,不会出现编译器不支持的错误。另外,在选择条件的过程中,一定!一定!一定!不要再次安装nvidia驱动,虽然cuda.run文件本身是包含又nvidia驱动的,但是本处直接安装会出错。下图是安装.run文件的配置:
安装完成之后会出现
============ Summary ============
Driver: Not Selected
Toolkit: Installed in /usr/local/cuda-8
Samples: Installed in /usr/local/cuda-8
之后更换cudnn动态库,可以获得更快的计算效率。先下载cudnn,可以自己去官网下载,也可以到这里下载,根据自己的喜欢随便那一个都可以,版本不同而已。链接: https://pan.baidu.com/s/1dEHPZCt 密码: cb3k
载完cudnn6.0之后进行解压,cd进入cudnn6.0解压之后的include目录,在命令行进行如下操作:
sudo cp cudnn.h /usr/local/cuda/include/ #复制头文件
再将lib64目录下的动态文件进行复制和链接:
$ sudo cp lib* /usr/local/cuda/lib64/ #复制动态链接库$ cd /usr/local/cuda/lib64/ $ sudo rm -rf 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 gedit /etc/profile
在打开的文件末尾加入:
export PATH = /usr/local/cuda/bin:$PATH
保存之后,创建链接文件:
$ sudo vim /etc/ld.so.conf.d/cuda.conf
按下键盘i进行编辑,输入链接库位置:
/usr/local/cuda/lib64
然后按esc,输入:wq保存退出。并在终端输入:
$ sudo ldconfig
使链接立即生效。
3、cuda用例安装与测试
在安装cuda.run文件时,我们已经选择安装了samples用例,还需要编译
cd /usr/local/cuda/samples$ sudo make all -j4$ cd /usr/local/cuda/samples/bin/x86_64/linux/release$ sudo ./deviceQuery
成功之后下面会出现一大串英文
也可以进入python输入:
import cv2
cv2.__version__
显示了版本信息就正确安装了
三、OpenCV3.2.0安装与配置
首先安装一些必要的依赖库
** 其他一些包在之后的cmake的时候缺失的时候会进行安装,如果安装失败可
$ sudo apt-get install build-essential$ sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev$ sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev # 处理图像所需的包$ sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev$ sudo apt-get install libxvidcore-dev libx264-dev # 处理视频所需的包$ sudo apt-get install libatlas-base-dev gfortran # 优化opencv功能$ sudo apt-get install ffmpeg
以手动下载相应的包然后放入提示的目录下。如果遇到安装依赖库失败,,可以
手动下载依赖库安装然后从OpenCV官网下载源码的压缩包opencv-3.2.0.zip,然后把它解压
https://github.com/opencv/opencv/releases/tag/3.2.0
sudo unzip ~/Downloads/opencv-3.2.0.zip -d ~/
2、进入opencv文件夹,新建build文件夹编译用
1. cd ~/opencv-3.2.0
2. mkdir build
接下来我们需要使用cmake编译整个OpenCV,CMakeFile附带在压缩包中不需要自己去写(谢天谢地)
,最后那两个点不能省,否则目录不正确,无法完成编译
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
生成的文件在bulid中,而生成的CMakeLists.txt文件在上一级文件中。在配置过程会出现
– ICV: Downloading ippicv_linux_20151201.tgz…错误。可以到:
http://blog.csdn.net/huangkangying/article/details/53406370 下载
将下载的文件替换掉
opencv-3.1.0/3rdparty/ippicv/downloads/linux-8b449a536a2157bcad08a2b9f266828b下的同名文件,
同时在opencv-3.1.0目录下的CMakeList.txt 文件的开头加入一行,然后再次cmake即可,如下:
- $ cd ~/Downloads/
- $ mv ippicv_linux_20151201.tgz opencv-3.1.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/
- $ vim opencv-3.1.0/CMakeLists.txt
在弹出的文件开头加入一行(注意里面的引号要英文状态下的):
- set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_FORCE_INLINES")
- 然后按esc和:wq保存退出。
- $ cd opencv-3.1.0/build
- $ cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
- $ make -j4 #四核运算
- $ sudo make install
- 以上最后两步比较耗时,耐心等待
参考文章:
http://www.linuxidc.com/Linux/2016-07/132860.htm
http://blog.csdn.net/u011272513/article/details/52103453#t5
http://blog.csdn.net/huangkangying/article/details/53406370
http://blog.csdn.net/qq_24626557/article/details/70173399
http://www.cnblogs.com/arkenstone/p/6490017.html
- ubuntu16.04安装cuda8和opencv3.2
- ubuntu16.04下安装cuda8.0 和Opencv3.1
- 基于Ubuntu16.04和Cuda8.0上安装OpenCV3.3.0
- Ubuntu16.04 安装 Caffe, opencv3, cuda8
- ubuntu16.04+CUDA8+opencv3.2+caffe
- Ubuntu16.04+CUDA8.0+openCV3.2配置
- 安装ubuntu16.04+cuda8.0+caffe+python+matlab+opencv3.0
- Ubuntu16.04+Cuda8.0+Cudnn5.1+Opencv3.1吐血安装
- 【caffe】ubuntu16.04+CUDA8.0+OpenCV3.0+Caffe 安装记录
- Ubuntu16.04+Cuda8.0+Caffe+ Opencv3.2+Matlab2015b的配置、安装与编译(一)
- Ubuntu16.04+Cuda8.0+Caffe+ Opencv3.2+Matlab2015b的配置、安装与编译 (二)
- Ubuntu16.04+Cuda8.0+Caffe+ Opencv3.2+Matlab2015b的配置、安装与编译(三)
- Ubuntu16.04+Cuda8.0+Caffe+ Opencv3.2+Matlab2015b的配置、安装与编译(四)
- 【机器学习小白日记】 Ubuntu16.04+Caffe+GTX1070+CUDA8.0+OpenCV3.2安装
- ubuntu16.04:cuda8.0+python3.5+tensorflow1.4+opencv3.2安装说明
- ubuntu16.04安装opencv3.2
- 华硕笔记本(GTX 1060显卡)安装Ubuntu16.04+Nvidia显卡驱动+Cuda8.0+cudnn6.0+ROS+Opencv3.2+Caffe+Tensorflow
- ubuntu16.04下opencv3.2和opencv_contrib编译安装
- 数据结构与算法有用的知识链接-----不断更新
- 数据结构之栈模板实现(3)
- MediaPlayer 实现自选音乐作为消息提示音
- JS算法(获取斐波那契数列的前n项)
- 基于DragonBoard 410c的智能门铃系列一之系统总构架
- ubuntu16.04安装cuda8和opencv3.2
- DES加密算法工具类
- Spring EmptyResultDataAccessException异常的源码分析和解决方法
- 带返回值的Python多线程方法
- [leetcode: Python]122. Best Time to Buy and Sell Stock 2
- 验证java执行了默认初始化
- MySQL 触发器
- udp发送结构体实例
- Servlet 编写过滤器