Ubuntu16.04下安装opencv3.2.0

本文详细介绍了在Linux环境下安装OpenCV3.2.0的步骤,包括安装必要的依赖包、下载OpenCV及opencv_contrib、配置编译参数、进行编译安装以及测试安装结果。特别注意的是,SIFT和SURF等特性已移至contrib模块。

1.安装官方给的opencv依赖包

GCC 4.4.x or later
CMake 2.6 or higher
Git
GTK+2.x or higher, including headers (libgtk2.0-dev) # 控制opencv GUI
pkg-config
Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
[optional] libtbb2 libtbb-dev
[optional] libdc1394 2.x
[optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev
$ 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
** 注:**其他一些包在之后的cmake的时候缺失的时候会进行安装,如果安装失败可以手动下载相应的包然后放入提示的目录下。而cmake下载tar.gz文件的时候可能不支持,需要进行配置,具体操作可以参考这里。

2.下载opencv3.2.0

这里需要下载opencv和opencv_contrib(后者会在cmake配置的时候用到),这是因为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.zip
3a.配置编译opencv (无NVIDIA CUDA版本)

将上述opencv包解压,然后cmake配置属性

$ 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 [] 。如果命令报错的话可以试着把-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 ldconfig
PS:1. 如果qt未安装可以删去此行;若因为未正确安装qt导致的Qt5Gui报错,可将build内文件全部删除后重新cmake,具体可以参考这里
CMAKE_INSTALL_PREFIX:安装的python目录前缀,其实就是指定了python模块的安装路径:CMAKE_INSTALL_PREFIX/lib/python2.7/dist-packages。获取该路径的方式可以用python -c “import sys; print sys.prefix”
PYTHON_EXCUTABLE:指定python路径
OPENCV_EXTRA_MODULES_PATH: 指定opencv所需模块的路径,就是之前我们所说的contrib
其他cmake的具体变量说明可以看这里
4.完成安装并测试

安装完成以后,重启下机器。编译之后应该会在CMAKE_INSTALL_PREFIX/lib/python2.7/dist-packages/目录下找到cv2.so。打开python console,检测opencv版本python -c “import cv2; print cv2.version”。如果正确安装的话则会输出3.2.0。
PS:如果import的时候报类似于error while loading shared libraries: libopencv_core.so.3.0: cannot open shared object file: No such file or directory.的错误,可能是library环境变量的错误,可以尝试将export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib加入到~/.bashrc中然后source。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值