Linux Ubuntu 16.04 安装 opencv 3.4.2

0 准备步骤

这一步尽量把系统更新一下,并且把相关的依赖库给装了,步骤如下:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install build-essential cmake pkg-config
sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
sudo apt-get install libgtk-3-dev
sudo apt-get install libatlas-base-dev gfortran
sudo apt-get install python3.5-dev
sudo apt-get install ffmpeg


1 下载opencv

首先,是下载opencv对应版本的source,建议尽量在github上下载,速度还算稳定,
https://github.com/opencv/opencv/releases,找到想要的版本下载即可;
如果想去官网下载,地址在这里:
https://opencv.org/releases
在哪里下载无所谓,那个速度快就在哪里下,下载完毕解压即可,解压用图形界面右键菜单解压或者tar命令都可以.

2 下载ippicv

ippicv是用于并行计算的,这个库很容易下载失败,如果不想要这个功能,直接用下面的配置关掉即可:

-D WITH_IPP=OFF \

然而并不建议这么做,尽量还是带上ippicv进行编译,方法也很简单,就是提前把这个库下载好即可.

下载地址位于

https://github.com/opencv/opencv_3rdparty/tree/ippicv/master_[日期]/ippicv

比如我要用的3.4.2要求20180518这个版本,直接把[日期]替换成20180518即可,如下:
https://github.com/opencv/opencv_3rdparty/tree/ippicv/master_20180518/ippicv
需要的具体版本以及文件名在/opencv-[版本号]/3rdparty/ippicvippicv.cmake中,如下:

if(X86_64)
      set(OPENCV_ICV_NAME "ippicv_2017u3_lnx_intel64_general_20180518.tgz")
      set(OPENCV_ICV_HASH "b7cc351267db2d34b9efa1cd22ff0572")

然后需要修改ippicvippicv.cmake,从文件结尾往前找,找到类似

set(THE_ROOT "${OpenCV_BINARY_DIR}/3rdparty/ippicv")


把这一行一直到结尾都选中,用下面的代码替换

set(OPENCV_ICV_UNPACK_PATH "${CMAKE_CURRENT_LIST_DIR}/unpack")
  set(OPENCV_ICV_PATH "${OPENCV_ICV_UNPACK_PATH}${OPENCV_ICV_PACKAGE_SUBDIR}")

  message(STATUS "ICV: Package successfully downloaded")
  set(OPENCV_ICV_PATH "${OPENCV_ICV_PATH}" PARENT_SCOPE)
endfunction()

然后在同一级目录中(也就是/opencv-[版本号]/3rdparty/ippicv/)建立unpack文件夹,把下载下来的ippicv包解压出的内容放进unpack文件夹即可;

3 编译

cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules ..

 注:如果需要安装扩展contrib库,则加上-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules,不然去掉即可

make -j`nproc`
sudo make install
sudo ldconfig

 ldconfig通常在系统启动时运行,而当用户安装了一个新的动态链接库时,就需要手工运行这个命令

 

以上步骤即已完成,如果还是不行,在cv目录下试试此条语句

ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so

 

 

 

另附 查看linux中 opencv的版本  可供检查自己的opencv是否安装成功

查看opencv安装路径:

sudo find / -iname "*opencv*"

查看opencv版本:

pkg-config opencv --modversion

查看opencv安装库:

pkg-config opencv --libs

 

 

posted @ 2019-05-28 21:31  龙雪  阅读(467)  评论(0编辑  收藏  举报