Ubuntu 16.04环境配置OpenCV

官网参考链接

1.依据官方文档说明中提及的依赖包,安装所必须的编译器、必要依赖包

sudo apt-get install build-essential     (作用是提供编译软件必须软件包的列表信息)

sudo apt-get install cmake      (跨平台的安装(编译)工具)

sudo apt-get install 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.下载安装包

(1)安装最新稳定版,请到官网下载想要的源码包-传送门 ,解压到你的工作目录。

(2)安装最新版,可以直接使用git将源码克隆到本地:git clone https://github.com/opencv/opencv.git

3.编译(cmake)源码

(1)新建一个临时文件夹用于存放编译(cmake)过程文件
cd opencv   (进入你自己的源码包)
sudo mkdir build
cd build

(2)这里既可以采用cmake-gui来配置,也可以命令行配置

cmake-gui配置

如果没有安装则需要先安装:sudo apt install cmake-qt-gui

打开:sudo camke-gui,设置OpenCV源码完整路径,e.g. /home/user/opencv;设置 <cmake_build_dir>, e.g. /home/user/opencv/build;点击“Configure”,设置可选参数;再点击“Configure”,最后点击“Generate”。注:参数配置可参考下面的命令行配置

命令行配置

sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local PYTHON3_EXECUTABLE =/usr/bin/python3 PYTHON_INCLUDE_DIR = /usr/include/python3.5m PYTHON_INCLUDE_DIR2 =/usr/include/x86_64-linux-gnu/python3.5m PYTHON_LIBRARY = /usr/lib/x86_64-linux-gnu/libpython3.5m.so PYTHON3_NUMPY_INCLUDE_DIRS = /usr/lib/python3.5/dist-packages/numpy/core/include/ ..

注:
    该过程经常由于ippicv下载不成功而失败(后面新版本好像不再作为必选,下载失败也不会报错),倘若下载失败,可自己手动下载-参考地址:

https://raw.githubusercontent.com/opencv/opencv_3rdparty/${IPPICV_COMMIT}/ippicv/${OPENCV_ICV_NAME}

    具体可查看{opencv_root}/3rdparty/ippicv/ippicv.cmake,再将刚下载的ippicv_201*_lnx_*_general_201*.tgz用命令复制到文件夹{opencv_root}/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e (这里版本不同也会有所差异,新版本存放在{opencv_root}/.cache/ippicv/${OPENCV_ICV_HASH}-ippicv_201*_lnx_*_general_201*.tgz),继续执行cmake命令即可。

以上命名和路径均会因版本差异而又所区别,请灵活处理。

如果要更改默认安装路径,只需把CMAKE_INSTALL_PREFIX=.....改到自己的目标文件夹即可。

(3)build

sudo make

sudo make install

4.调用配置

为了满足不同的开发需要(多语言/多版本),进行相应设置才能使开发工具找得到自己安装的库文件/头文件!

管理方式常见有三种:加入Linux系统的动态链接;配置环境变量;pkg-config工具管理

如果是默认安装路径是 /usr/local/lib,一般不需要额外设置,install时放在了系统目录,以下操作主要是针对自定义安装路径或者多版本管理!!!

(1) 加入动态链接库

应用场景:使用gcc编译

缺点:不利于多用户、多版本管理
具体操作:
sudo gedit /etc/ld.so.conf.d/opencv.conf(如果没有该文件自己创建一个即可),在文件末尾加入opencv的安装路径${opencv_install_path}/lib,默认安装路径是 /usr/local/lib

或者 sudo sh -c 'echo "${opencv_install_path}/lib" > /etc/ld.so.conf.d/opencv.conf'

sudo ldconfig 使配置生效


(2) 配置环境变量

应用场景:直接调用可执行程序;使用其动态链接库

具体操作:

先打开系统环境配置的文件,有几种,很多博客设置的也不尽相同,若要细究请自查或查看我的另一篇博客关于Ubuntu的环境变量设置问题,内有简短介绍。

gedit ~/.profile      # 在文件内容最后添加

根据应用场景,如果想直接调用可执行程序,请将opencv安装路径的bin文件夹添加在PATH变量,例如:

export PATH=${opencv_install_path}/bin:$PATH

根据不同的语言选择,如果是C/C++,请将opencv安装路径的lib文件夹添加在LD_LIBRARY_PATH变量,例如:
export LD_LIBRARY_PATH=${opencv_install_path}/lib:$LD_LIBRARY_PATH
如果是python,请将opencv安装路径的lib/python2.7/dist-packages/文件夹添加在PATH变量,例如:

export PYTHONPATH=${opencv_install_path}lib/python2.7/dist-packages/:$PYTHONPATH

与某些博客提及的拷贝cv2.so文件原理一致

保存退出,logout用户,再login,~profile的改动就生效了


(3) pkg-config工具管理

其实也是通过配置相应的环境变量实现,请将opencv安装路径的/lib/pkgconfig文件夹添加在PKG_CONFIG_PATH变量,例如:

export PKG_CONFIG_PATH=${opencv_install_path}/lib/pkgconfig:$PKG_CONFIG_PATH


补充说明:

    如果要在其他的IDE里面使用OpenCV库,需要在编译界面的编译器设置里面添加opencv的头文件和库文件,动态链接库文件在{opencv_install_path}/lib中,头文件在{opencv_install_path}/include/opencv中。

    如果有多个版本通过改变对应环境变量内各安装路径的顺序,即根据搜索优先级调整。    


测试1:在Python中能否使用opencv库

打开终端:输入python,回车

输入import cv2 回车

输入 cv2.__version__ 回车,若显示对应版本号

输入 cv2.__file__ 回车,若显示对应库文件路径

 

 

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值