ubuntu 16.04 opencv3.2.0(GPU版本) 安装步骤
2018-03-15 22:24
323 查看
1.安装官方给的opencv依赖包
$ 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 liblapacke-dev $ sudo apt-get install libxvidcore-dev libx264-dev # 处理视频所需的包 $ sudo apt-get install libatlas-base-dev gfortran # 优化opencv功能 $ sudo apt-get install ffmpeg
2.下载opencv3.2.0
这里需要下载opencv和opencv_contrib,这是因为opencv3以后SIFT和SURF之类的属性被移到了contrib中,。$ wget https://github.com/opencv/opencv/archive/3.2.0.zip # 从github上直接下载或者clone也可$ wget https://github.com/opencv/opencv_contrib/archive/3.2.0.zip3.配置编译opencv
将下载好的opencv3.2.0
和 opencv_contrib 3.2.0 解压放在home(自选)文件夹下$ cd opencv-3.2.0
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/home/fanzong/anaconda2/envs/tensorflow \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=OFF \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.2.0/modules \
-D PYTHON_EXCUTABLE=/home/fanzong/anaconda2/envs/tensorflow/bin/python \
-D WITH_TBB=ON \
-D WITH_V4L=ON \
-D WITH_QT=ON \ # 1
-D WITH_GTK=ON \
-D WITH_OPENGL=ON \
-D BUILD_EXAMPLES=ON .. # cmake命令的使用方式:cmake [<some optional parameters>] <path to the OpenCV source directory>。如果命令报错的话可以试着把-D后面的空格去掉在执行一次。
$ make -j4
$ sudo make install
$ sudo /bin/bash -c 'echo "/home/fanzong/anaconda2/envs/tensorflow/lib" > /etc/ld.so.conf.d/opencv.conf'
$ sudo ldconfigcmake 时遇见的错误及解决方式:
1.opencv CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the Cmake files;
CUDA_nppi_LIBRARY(ADVANCED)
解决:参考:http://blog.csdn.net/u014613745/article/details/78310916
解决方案如下:
1).找到FindCUDA.cmake文件
找到 find_cuda_helper_libs(nppi)
改为find_cuda_helper_libs(nppial)
find_cuda_helper_libs(nppicc)
find_cuda_helper_libs(nppicom)
find_cuda_helper_libs(nppidei)
find_cuda_helper_libs(nppif)
find_cuda_helper_libs(nppig)
find_cuda_helper_libs(nppim)
find_cuda_helper_libs(nppist)
find_cuda_helper_libs(nppisu)
find_cuda_helper_libs(nppitc)
2).找到行set(CUDA_npp_LIBRARY "${CUDA_nppc_LIBRARY};${CUDA_nppi_LIBRARY};${CUDA_npps_LIBRARY}") 改为
set(CUDA_npp_LIBRARY "${CUDA_nppc_LIBRARY};${CUDA_nppial_LIBRARY};${CUDA_nppicc_LIBRARY};${CUDA_nppicom_LIBRARY};${CUDA_nppidei_LIBRARY};${CUDA_nppif_LIBRARY};${CUDA_nppig_LIBRARY};${CUDA_nppim_LIBRARY};${CUDA_nppist_LIBRARY};${CUDA_nppisu_LIBRARY};${CUDA_nppitc_LIBRARY};${CUDA_npps_LIBRARY}")
3).找到行unset(CUDA_nppi_LIBRARY CACHE)
改为
unset(CUDA_nppial_LIBRARY CACHE)
unset(CUDA_nppicc_LIBRARY CACHE)
unset(CUDA_nppicom_LIBRARY CACHE)
unset(CUDA_nppidei_LIBRARY CACHE)
unset(CUDA_nppif_LIBRARY CACHE)
unset(CUDA_nppig_LIBRARY CACHE)
unset(CUDA_nppim_LIBRARY CACHE)
unset(CUDA_nppist_LIBRARY CACHE)
unset(CUDA_nppisu_LIBRARY CACHE)
unset(CUDA_nppitc_LIBRARY CACHE)
4).找到文件OpenCVDetectCUDA.cmake修改以下几行
...
set(__cuda_arch_ptx "")
if(CUDA_GENERATION STREQUAL "Fermi")
set(__cuda_arch_bin "2.0")
elseif(CUDA_GENERATION STREQUAL "Kepler")
set(__cuda_arch_bin "3.0 3.5 3.7")
...
改为
...
set(__cuda_arch_ptx "")
if(CUDA_GENERATION STREQUAL "Kepler")
set(__cuda_arch_bin "3.0 3.5 3.7")
elseif(CUDA_GENERATION STREQUAL "Maxwell")
set(__cuda_arch_bin "5.0 5.2")
...
5).cuda9中有一个单独的halffloat(cuda_fp16.h)头文件,也应该被包括在opencv的目录里
将头文件cuda_fp16.h添加至 opencv\modules\cudev\include\opencv2\cudev\common.hpp
即在common.hpp中添加
#include <cuda_fp16.h>1
重新生成即可
2. 每次重新生成 要清除build中的内容 要清除build中的内容 要清除build中的内容
相关文章推荐
- ubuntu16.04 下安装加入opencv_contribute包的GPU版本的OpenCV3.2(CUDA支持)步骤与问题解决
- Ubuntu16.04卸载其他版本的opencv并安装opencv3.2.0+opencv contrib3.2.0
- ubuntu14.04 下安装GPU版本的OpenCV3.2(CUDA支持)步骤与一些问题
- Ubuntu 16.04 安装 CUDA,CUDNN 和 GPU 版本的 TensorFlow 一般步骤总结
- ubuntu 16.04下安装使用opencv_3.2.0
- 关于ubuntu 16.04下安装opencv-3.2.0及opencv_contrib-3.2.0踩过的各种坑
- Ubuntu16.04下安装OpenCV3.2.0
- Ubuntu16.04 安装配置GPU版本Caffe
- ubuntu16.04安装N卡驱动,cuda toolkit7.5,opencv 2.4.13 with module gpu
- Ubuntu16.04下安装OpenCV3.2.0(虚拟机)
- Ubuntu 16.04安装配置TensorFlow GPU版本
- ubuntu 16.04安装opencv 3.2.0
- Ubuntu16.04下安装OpenCV3.2.0(转)
- Ubuntu16.04+Anaconda 安装GPU版本tensorflow
- Ubuntu 16.04安装使用--Ubuntu16.04下基于Docker的Caffe-GPU版本环境搭建总结
- ubuntu16.04安装+cuda8.0+cudnn5.1+MXNET gpu版本安装+tensorflow gpu版本安装+chainerGPU版本安装
- ubuntu16.04下安装CUDA cuDNN及tensorflow-gpu版本及caffe-gpu过程
- ubuntu16.04 从源码安装tensorflow-gpu r1.4版本---2017-12-07
- ubuntu 16.04 安装MXNet GPU版本
- VMware ubuntu16.04下安装opencv3.2.0