ubuntu下安装opencv——以ubuntu16.04,opencv4.1.0为例

最近想使用opencv中的画图功能,想安装opencv,结果发现按照网上现有的安装方法无法完全安装成功,特记录下整个安装过程

1.需要的安装环境

https://docs.opencv.org/4.1.0/d7/d9f/tutorial_linux_install.html
如果和我一样第一次安装的话,按照下列步骤配置环境:
1.1安装cmake

sudo apt-get install cmake

1.2其他安装环境

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

2.下载opencv安装包

方法一:
假如将安装包下载到home目录:进入home目录,最好新建一个文件夹,如opencv,在新文件夹中打开终端:
在这里插入图片描述下载opencv:

git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git

方法二:
在下载地址:https://opencv.org/releases/中选择opencv4.1.0下载

3.安装

3.1打开下载的opencv4文件夹,打开opencv的文件夹,

mkdir build //新建build文件夹
cd build

3.2 cmake

cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D PYTHON3_EXECUTABLE=/usr/bin/python3 \ -D PYTHON_INCLUDE_DIR=/usr/include/python3.5 \ -D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so \ -D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/local/lib/python3.5/dist-packages/numpy/core/include \ -D INSTALL_PYTHON_EXAMPLES=ON \ -D INSTALL_C_EXAMPLES=OFF \ -D OPENCV_EXTRA_MODULES_PATH=../opencv_contrib/modules \ -D PYTHON_EXECUTABLE=/usr/lib/python3 \ -D BUILD_opencv_xfeatures2d=OFF \ -D BUILD_EXAMPLES=ON ..

这里如果不成功,可以试着安装下python(应该没问题。。。)
主要是安装opencv的同时安装opencv_contrib的模块

cmake后的界面:
在这里插入图片描述

3.3编译

sudo make -j8//-多少看你内核数

编译后的界面:
在这里插入图片描述
3.4安装

sudo make install

安装完后的界面:
在这里插入图片描述

4.配置环境

4.1添加库路径
方法一:
用gedit打开ld.so.conf
在文件下一行加入 /usr/loacal/lib
其中/user/loacal是opencv安装路径(make install结束后能看到)

sudo gedit /etc/ld.so.conf

在这里插入图片描述
方法二:

sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'   # 添加库路径

4.2更新系统库

sudo ldconfig  # 更新系统库

4.3在/etc/bash.bashrc 末尾增加以下内容:

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig  
export PKG_CONFIG_PATH  

方法:

sudo gedit /etc/bash.bashrc 

gedit打开bash.bashrc,添加内容:
在这里插入图片描述
然后在终端运行:

source /etc/bash.bashrc

5.opencv.pc文件添加

5.1打开/usr/local/lib目录,若没有pkgconfig文件夹自己新建一个

cd /usr/local/lib //打开lib目录
sudo mkdir pkgconfig   //一定要用sudo,不然新建不了

5.2将opencv.pc文件添加进去
新建一个opencv.pc文件
内容:

prefix=/home/hzh/opencv/mybuild/myInstall
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir_old=${prefix}/include/opencv4/opencv
includedir_new=${prefix}/include/opencv4

Name: OpenCV
Description: Open Source Computer Vision Library
Version: 4.1.0
Libs: -L${exec_prefix}/lib -lopencv_gapi -lopencv_stitching -lopencv_aruco -lopencv_bgsegm -lopencv_bioinspired -lopencv_ccalib -lopencv_dnn_objdetect -lopencv_dpm -lopencv_face -lopencv_freetype -lopencv_fuzzy -lopencv_hfs -lopencv_img_hash -lopencv_line_descriptor -lopencv_quality -lopencv_reg -lopencv_rgbd -lopencv_saliency -lopencv_stereo -lopencv_structured_light -lopencv_phase_unwrapping -lopencv_superres -lopencv_optflow -lopencv_surface_matching -lopencv_tracking -lopencv_datasets -lopencv_text -lopencv_dnn -lopencv_plot -lopencv_videostab -lopencv_video -lopencv_xfeatures2d -lopencv_shape -lopencv_ml -lopencv_ximgproc -lopencv_xobjdetect -lopencv_objdetect -lopencv_calib3d -lopencv_features2d -lopencv_highgui -lopencv_videoio -lopencv_imgcodecs -lopencv_flann -lopencv_xphoto -lopencv_photo -lopencv_imgproc -lopencv_core
Libs.private: -ldl -lm -lpthread -lrt
Cflags: -I${includedir_old} -I${includedir_new}

打开opencv.pc存放的目录(一定是opencv.pc存放的目录,否则出错),复制文件到/usr/local/lib/pkgconfig/

sudo cp ./opencv.pc /usr/local/lib/pkgconfig/

6.检查安装的opencv

终端输入:

pkg-config opencv --modversion

在这里插入图片描述如果显示4.1.0(根据你安装的opencv版本来看),那么恭喜安装成功。


版权声明:本文为qq_28382387原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。