1. 下载安装包
去官网下载源码 https://opencv.org/ ,版本自行选择
2. 安装依赖
sudo add-apt-repository "deb http://security.ubuntu.com/ubuntu xenial-security main"
sudo apt update
sudo apt install libjasper1 libjasper-dev
sudo apt-get install libgtk-3-dev libgtk2.0-dev pkg-config
# 分步装
sudo apt-get install build-essential
# opencv4.1.0需要 libgtk-3-dev
sudo apt-get install cmake libgtk-3-dev libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python3-dev python3-numpy python-dev python-numpy libpython3.6-dev libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff5-dev libjasper-dev libdc1394-22-dev # 处理图像所需的包
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev
sudo apt-get install libopenexr-dev
sudo apt-get install libxvidcore-dev libx264-dev # 处理视频所需的包
sudo apt-get install libatlas-base-dev gfortran # 优化opencv功能
sudo apt-get install ffmpeg
sudo apt-get -y install build-essential cmake libgtk-3-dev libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev python3-dev python3-numpy python-dev python-numpy libpython3.6-dev libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff5-dev libjasper-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev liblapacke-dev libopenexr-dev libxvidcore-dev libx264-dev libatlas-base-dev gfortran ffmpeg
3. 配置 (我下载的是opencv4.2.0)
cd opencv-4.2.0/
mkdir build && cd build
cmake-gui ..
如下截图:
源码和编译目录已自动选好了
点击 Configure 弹框后点击 Finish, 就会开始配置,如下图配置成功
注意: 若安装了anaconda, 先将anaconda 的lib文件夹重命名为lib_bak,再去编译opencv, 否则会有冲突
如上图红色部分是编译选项
(1)在CMAKE_BUILD_TYPE 值处输入RELEASE
(2)BUILD_TIFF=ON 若有的话勾选上,否则后面编译会报错
(3)OPENCV_CENERATE_PKGCONFIG 勾选上, 会在 /usr/local/lib 下生成 pkgconfig/opencv4.pc
(4)CMAKE_INSTALL_PREFIX显示了默认的安装目录,生成makefile文件最后执行 make install时就会安装到这个目录,这里可以根据个人需求更改,其他保持不变。
4. 编译安装
sudo make -j8
sudo make install
报错:
../../lib/libopencv_imgcodecs.so.4.5.5: undefined reference to `TIFFReadDirectory@LIBTIFF_4.0'
解决: BUILD_TIFF=ON
5. 配置 opencv 环境变量
sudo gedit /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
6. 测试是否安装成功
pkg-config --cflags --libs opencv4 (4.0版本及以上的是 opencv4 , 否则 opencv )
如下图: