全新ubuntu16.04(LTS)下安装openCV3.0

本文参考部分网络教程

http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/introduction/linux_install/linux_install.html#linux-installation这是opencv.org.cn的教程,其实也就告诉你要装的包,版本虽然有点老,但是可行。

把有用的贴图上来

把有用的贴图上来

首先应该更新apt-get,不然会出现无法定位软件包的情况

sudo apt-get update

1、gcc

ubuntu默认是没有带的,所以

sudo apt-get install gcc

或者

sudo apt-get install build-essential   这个除gcc外还会安装g++

2、cmake

这个是ubuntu有自带的,可以输入cmake --version查看版本

3、subversion

4、新立得软件包管理器

就像名字一样,一个包管理器,可以在ubuntu软件商店安装也可以在http://download.savannah.nongnu.org/releases/synaptic/这里下载安装。安装之后打开软件,搜索以下包,右键标记为安装。

i965-va-driver (1.7.0-1)
libavcodec-dev (7:2.8.11-0ubuntu0.16.04.1)
libavcodec-ffmpeg56 (7:2.8.11-0ubuntu0.16.04.1)
libavutil-dev (7:2.8.11-0ubuntu0.16.04.1)
libavutil-ffmpeg54 (7:2.8.11-0ubuntu0.16.04.1)
libcrystalhd3 (1:0.0~git20110715.fdd2f19-11build1)
libdc1394-22 (2.2.4-1)
libdc1394-22-dev (2.2.4-1)
libdc1394-22-doc (2.2.4-1)
libgsm1 (1.0.13-4)
libjasper-dev (1.900.1-debian1-2.4ubuntu1)
libjbig-dev (2.1-3.1)
libjpeg-dev (8c-2ubuntu8)
libjpeg-turbo8-dev (1.4.2-0ubuntu3)
libjpeg8-dev (8c-2ubuntu8)
liblzma-dev (5.1.1alpha+20120614-2ubuntu2)
libmp3lame0 (3.99.5+repack1-9build1)
libopenjpeg5 (1:1.5.2-3.1)
libraw1394-dev (2.1.1-2)
libraw1394-tools (2.1.1-2)
libschroedinger-1.0-0 (1.0.11-2.1build1)
libshine3 (3.1.0-4)
libsnappy1v5 (1.1.3-2)
libsoxr0 (0.1.2-1)
libswresample-dev (7:2.8.11-0ubuntu0.16.04.1)
libswresample-ffmpeg1 (7:2.8.11-0ubuntu0.16.04.1)
libtiff5-dev (4.0.6-1ubuntu0.1)
libtiffxx5 (4.0.6-1ubuntu0.1)
libtwolame0 (0.3.13-1.2)
libva1 (1.7.0-1)
libvdpau1 (1.1.1-3ubuntu1)
libx264-148 (2:0.148.2643+git5c65704-1)
libx265-79 (1.9-3)
libxvidcore4 (2:1.3.4-1)
libzvbi-common (0.2.35-10)
libzvbi0 (0.2.35-10)
mesa-vdpau-drivers (12.0.6-0ubuntu0.16.04.1)
swig3.0 (3.0.8-0ubuntu3)
swig3.0-doc (3.0.8-0ubuntu3)
va-driver-all (1.7.0-1)
vdpau-driver-all (1.1.1-3ubuntu1)
vdpau-va-driver (0.7.4-5)
libtiff5 (4.0.6-1) to 4.0.6-1ubuntu0.1

这里面有些是附带安装的,不用一个个搜索出来,我只是把我安装过程中安装的所有的包的列表复制过来了。

这么多看了也许头晕.......其实就是搜索

  • pkgconfig

    libpng, zlib, libjpeg, libtiff, libjasper with development files (e.g. libpjeg-dev)

    Python 2.3 or later with developer packages (e.g. python-dev)

    SWIG 1.3.30 or later (only for versions prior to OpenCV 2.3)

    libavcodec

    libdc1394 2.x
  • 这几个包,然后在搜索出的列表里寻找相关包,标记安装,注意有些包有带-dev或-doc的包也一道标记安装,这种东西由于不懂软件里面具体的依赖项到底有什么,所以安装都像玄学一样了,虽然不懂但还是装吧
接下来的步骤参考了http://www.linuxdiyf.com/linux/20628.html中的内容,虽然是安装java和openCV搭配的,但是一句话有用就行
为了确保有用,我又执行了一遍
sudo apt-get install build-essential cmake git libgtk2.0-dev \
pkg-config libavcodec-dev libavformat-dev libswscale-dev \
python-dev python-numpy libjpeg-dev \
libpng12-dev libtiff5-dev libjasper-dev libdc1394-22-dev ant
其实原文里还有两个包我在这里没有安装,libttb2,libttb-dev,因为terminal提示我找不到这两个包,我也就硬着头皮忽略了这两个包

openCV
http://opencv.org/releases.html官网下载,选择合适的版本,我选的是3.0。
下载之后进入到存放下载文件的目录,如果是zip格式的压缩包则使用unzip解压文件,如果是tgz格式的压缩包则使用tar -xzvf提取文件内容,然后进入解压后的目录
mkdir build
cd build

确保自己在build目录下,
cmake -DBUILD_SHARED_LIBS=OFF -DCMAKE_INSTALL_PREFIX=/usr/local ../
虽然我自己是一次过,但原文说很大可能不过, 会因为在下载ippicv_linux_20151201.tgz第三方包的时候超时而生成Makefile失败。解决办法是从https://raw.githubusercontent.com/Itseez/opencv_3rdparty/81a676001ca8075ada498583e4166079e5744668/ippicv/ippicv_linux_20151201.tgz链接中下载此源码包,然后将其拷贝到opencv源码包的同级目录下,然后执行下面的命令:

ipp_file=../ippicv_linux_20151201.tgz &&
ipp_hash=$(md5sum $ipp_file | cut -d" " -f1) &&
ipp_dir=3rdparty/ippicv/downloads/linux-$ipp_hash &&
mkdir -p $ipp_dir &&
cp $ipp_file $ipp_dir

以上命令执行完成后,再重新执行之前的cmake命令,没有报错就说明过了,生成了makefile文件


编译源代码

make -j4(原文是j8,但同学让我用j4因为我处理器是双核的)

安装库文件

sudo make install


等待一会然后就大功告成啦,可以用python实验一下,我是一次过的,当时心情激动死了!!!哈哈哈哈

但是我的python可以成功实验opencv,qt却无法运行,找不到某些包,路径错误

这篇文章只是个人经验结合网络教程写的,至于原理,我只能看懂一些命令而已.....之所以分享是希望能给大家一点帮助顺便发泄一下自己的得意之情

但愿能有所帮助吧


猜你喜欢

转载自blog.csdn.net/hei_ha_hei/article/details/70142833