下载解压
备注
- linux安装opencv与opencv_contrib模块版本可不需要一致,在虚拟机也行。
下载
- 百度云3.1.0版本
opencv 链接: https://pan.baidu.com/s/1O8PmHPjr5oz41U2sYdy3YA 提取码: mpmt
opencv_contrib 链接: https://pan.baidu.com/s/12DmTraFP5iKrFEFdSy44IQ 提取码: 2t92 - gitee镜像
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路径,可更改
..
cmake完如果最后出现
configuring done
generating done
build files has been written to…
说明cmake … 成功
- 接着继续编译
$ sudo make -j4 //同时开启4核编译,数字越大编译越快,
- 然后安装
$ sudo make install
配置环境
sudo vim /etc/ld.so.conf.d/opencv.conf
#文件末尾添加
/usr/local/lib
使配置生效
sudo ldconfig
配置bash
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
出现图像窗口(无摄像头时为黑色窗口),并且有hello opencv字样说明成功。
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