1、源码下载
OpenCV官网:https://opencv.org/
github地址: https://github.com/opencv/opencv/releases/tag/3.4.5
直接下载
wget https://github.com/opencv/opencv/archive/3.4.5.tar.gz
不建议安装太新的版本,容易踩坑。3.4.7版本编译不成功。。
2、安装依赖
首先看官方的安装说明,这个非常有必要,官方写的比较好,基本按照官方说明进行操作就可以了。
官方编译安装说明:https://docs.opencv.org/3.4.1/d7/d9f/tutorial_linux_install.html
安装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

如果报错 E: 无法定位软件包 libjasper-dev
添加
linuxidc@linuxidc:~/linuxidc.com$ sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"

再次运行如下命令:
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev

3、编译安装
解压源码
在下载好的源码文件夹打开终端
tar xvzf opencv-3.4.0.tar.gz

解压后进入opencv的文件里,打开终端,创建Build文件,用于安装

mkdir build
cd build
然后执行cmake,生成makefile
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
或(开启openni)
cmake -D WITH_OPENNI=ON CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
编译
make -j8 #用8个线程编译,加快速度,也可以去掉-j8
安装
sudo make install
查看安装结果
pkg-config --cflags --libs opencv
4、配置(好像不用也行)
安装完后配置
sudo gedit /etc/ld.so.conf.d/opencv.conf
打开文件可能是空白的,没有关系,继续下一步,在文件末尾添加
/usr/local/lib
使配置生效
sudo ldconfig
添加环境变量
sudo gedit /etc/bash.bashrc
在文件最后添加
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
使环境变量生效
source /etc/bash.bashrc
5、测试
下面用一个小程序测试一下
找到
cd到opencv-3.4.5/smaples/cpp/example_cmake目录下
我们可以看到这个目录里官方已经给出了一个cmake的example我们可以拿来测试下
按顺序执行
cmake .

make
./opencv_example

报错Gtk-Message: Failed to load module "canberra-gtk-module"
解决方法
sudo apt-get install libcanberra-gtk-module
如下图:

再次运行
./opencv_example
即可看到打开了摄像头,在左上角有一个Hello OpenCV

即表示配置成功。
参考资料:
https://www.linuxidc.com/Linux/2019-05/158462.htm
https://docs.opencv.org/3.4.1/d7/d9f/tutorial_linux_install.html
