您的位置:首页 > 运维架构

ubuntu14.04安装opencv2.4.9以及遇到的问题

2017-06-15 16:37 585 查看
1 系统更新

利用ubuntu自带的更新管理器或者

sudo apt-get update

sudo apt-get upgrade

2 安装必要的组件

sudo apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake
Python-dev
python-numpy python-tk libtbb-dev libeigen3-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev
sphinx-common texlive-latex-extra libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev default-jdk ant libvtk5-qt4-dev

3 下载opencv2.4.9安装包

http://opencv.org/downloads.html

4 解压安装包

5 安装opencv

 cd opencv2.4.9

 mkdir build

 cd build

 cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON
-D WITH_QT=ON -D WITH_OPENGL=ON ..

 make -j4

出现的问题(1):nvcc fatal   : Unsupported gpu architecture 'compute_11'

解决办法:cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D CUDA_GENERATION=Kepler ..

 然后继续 make -j4

出现的问题(2):/home/lingck/opencv-2.4.9/modules/gpu/src/nvidia/core/NCVPixelOperations.hpp(129): error: a storage class is not allowed in an explicit specialization

 解决办法:http://download.csdn.net/download/solomon1558/9581114这个地址下载NCVPixelOperations.hpp文件替换掉opencv文件夹中的源文件即可

 还是继续 make -j4

  出现的问题(3):make[2]: *** [modules/gpu/CMakeFiles/opencv_gpu.dir/src/graphcuts.cpp.o] 错误 1

  解决办法:打开graphcuts.cpp文件,修改graphcuts.cp
p里面的
#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)
为:


#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)|| (CUDART_VERSION >= 8000)
然后继续 make -j4
make
sudo make install
6 添加环境变量以及测试
sudo gedit /etc/ld.so.conf.d/opencv.conf
在opencv.conf里面加入命令
/usr/local/lib

更新库目录
sudo ldconfig

打开文件bash.bashrc
sudo gedit /etc/bash.bashrc
加入下面两行
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
   测试:
  在终端下输入python,然后import cv2,然后使用cv2.imread读取一张图片并用cv2.inshow显示出来,即说明opencv安装成功。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: