Ubuntu16.04+opencv3.1.0

1、安装依赖项

按照下面命令的顺序,一步步的在shell里面执行。

$ 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源代码

找到你计划存放opencv工程的目录,并切换到该目录。

$ mkdir ~/opencv_

$ cd ~/opencv_

下载源代码:

opencv源代码

$ git clone https://github.com/Itseez/opencv.git

$ cd opencv

$ git checkout 3.1.0

opencv_contrib的源代码,包含一些较新的计算机视觉方面的算法实现。

$ git clone https://github.com/Itseez/opencv_contrib.git

$ cd opencv_contrib

$ git checktout 3.1.0

这个时候~/opencv_目录下应该有两个文件夹了,分别是opencv,opencv_contrib.提醒,上面一定要记得切换到3.1.0分之,不然编译可能会出问题。

3、cmake处理

在该目录下新建一个文件夹, 并切换到这个文件夹下面。

$ mkdir build

$ cd build

这里因为我之前安装了cuda,所以在使用cmake创建工程的后,cmake会检测到cuda包,并自动编译cuda相关的包, 我这样尝试过,但是编译到80%多的时候出错了,fatal error。下面,我会在工程生成的时候特地将cmake的with_cuda关闭。在这里,给大家推荐一个Linux下cmake gui工具

$ sudo apt install cmake-gui

$ cmake-gui # 执行

在cmake-gui中,将where is the source code设置为:~/opencv_/opencv 将where to build the binariess设置为:~/opencv_/build.点击configure, 列表中将会出现一系列的参数。 在这里,取消了WITH_CUDA的选中。

此外还需要说明一下,可能是3.1.0版本的错误,如果你选中了对python的集成, 最后运行的时候也会报错:错误信息提示是hdf5.h找不到,我已开始以为是自己没有安装hdf5,还特地装了一个

$ sudo apt install libhdf5-dev

可是安装之后依旧报错。Google了一下, 我在opencv github issue下找到了解决办法地址;按照他们的给的解决方法,之后执行确实没有再报错了。(原来是 cmake 没有去找这个包)

好了现在可以生成make工程了, 在cmake-gui下,点击configure,没有报错的话,继续点击generate. 退出cmake-gui.

4、开始编译

执行一下命令:

$ cd ~/opencv_/build

$ make -j7 #开启7个线程,同时进行编译,感觉速度有一定程度上的提升。我最多试过15个。

静静等,看你的电脑有多厉害了,慢的话,一个小时甚至更长,快的话,半个小时吧。着急不得。

5、安装

现在假设你上面任何一个过程都没有出现任何错误,接下来就舒舒服服的安装吧。

$ cd ~/opencv_/build

$ sudo make install

检查是否安装成功

$ pkg-config --modversion opencv

如果输入3.1.0 那么恭喜你,编译并安装成功了。

转自:

  • 发表于:
  • 原文链接:http://kuaibao.qq.com/s/20180130G0D95L00?refer=cp_1026

同媒体快讯

  • Ubuntu16.04+ROS安装

    2018-10-19

相关快讯

扫码关注云+社区