下载
gitee官方镜像里下载新版本https://gitee.com/mirrors/opencv
cd /home/
git clone https://gitee.com/mirrors/opencv.git
cd opencv
git clone https://gitee.com/mirrors/opencv_contrib.git
依赖安装
sudo apt-get update
sudo apt-get upgrade
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
sudo apt-get install ffmpeg
解压并编译
$ cd opencv # 进入解压后的opencv文件夹,可以放在home目录下或者你自己定义
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \ // 默认安装路径,可更改
-D INSTALL_PYTHON_EXAMPLES=ON \
-D OPENCV_EXTRA_MODULES_PATH= ../opencv_contrib/modules \ // 自行更改为opencv_contrib的modules路径
-D PYTHON_EXCUTABLE=/usr/bin/python \ // 默认pyhton路径,可更改
..
$ sudo make -j4 //同时开启4核编译,数字越大编译越快
$ sudo make install
cmake完如果最后出现
configuring done
generating done
build files has been written to…
说明cmake … 成功
环境配置
sudo vim /etc/ld.so.conf.d/opencv.conf
#文件末尾添加
/usr/local/lib
配置生效
$sudo ldconfig
$sudo gedit /etc/bash.bashrc
#最末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
$source /etc/bash.bashrc
$sudo updatedb
验证
cd ../smaples/cpp/example_cmake //在build下
cmake .
make
./opencv_example
说明
cmake选项说明
CMAKE_INSTALL_PREFIX = 默认安装路径,可更改 :
PYTHON_EXCUTABLE = 指定python模块的安装路径,为安装的python目录,用which python命令查看:
OPENCV_EXTRA_MODULES_PATH = opencv_contrib模块modules路径,如果你的opencv_contrib目录在opencv下就无需更改。
error
-
删除build文件
如果cmake出现错误,重新cmake时候最好要make clean一下,或者手动删除build里面的文件,然后再试。 -
ippicv_linux_20151201.tgz 包下载失败
手动下载,在此提供百度云下载链接: https://pan.baidu.com/s/1CqwvH4GPBdIKd0fvRTnhNA 提取码: xahp, 然后复制并替换 opencv/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e/ 路径下的同名文件; -
protobuf-cpp-×××.tar.gz 包下载失败的情况
-
手动下载,http://distfiles.macports.org/protobuf3-cpp/protobuf-cpp-3.0.0.tar.gz 然后用protobuf-cpp-3.1.0.tar.gz 复制并替换 opencv_contrib-3.1.0/modules/dnn/.download/bd5e3eed635a8d32e2b99658633815ef/v3.1.0/ 路径下的同名文件。
-
找不到cuda.hpp
对于opencv2/xfeatures2d/cuda.hpp: No such file or directory 类问题的解决方法。修改报错文件的include,改为绝对cuda.hpp的路径:
#include"/home/xxx/opencv/opencv_contrib/modules/xfeatures2d/include/opencv2/xfeatures2d.hpp" //示例 -
对于boostdesc_bgm.i的问题
-直接下载boostdesc_bgm.i等9个文件复制到opencv_contrib/modules/xfeatures2d/src/里面。可下载https://download.csdn.net/download/qq_36559293/12978990