linux 编译安装 Opencv3.1.0

来源:互联网 发布:淘宝电商运营培训课程 编辑:程序博客网 时间:2024/06/05 05:38
  1. 安装
$ 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
/opt$ git clone https://github.com/Itseez/opencv.git/opt$ git clone https://github.com/Itseez/opencv_contrib.git/opt$ cd opencv/opt/opencv$ git checkout 3.1.0/opt/opencv$ cd /opt/opencv_contrib/opt/opencv_contrib$ git checkout 3.1.0/opt/opencv_contrib$ cd /opt/opencv/opt/opencv$ mkdir release/opt/opencv$ cd release/opt/opencv/release$

到这里需要手动下载ipp包到指定目录,因为在安装的过程中自动下载的速度太慢。下载地址:ippicv下载地址
下载完成后,需要包ippicv_linux_20151201.tgz拷贝到opencv-3.1.0/3rdparty/ippicv/downloads/linux-808b791a6eac9ed78d32a7666804320e 目录下

/opt/opencv/release$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D OPENCV_EXTRA_MODULES_PATH=/opt/opencv_contrib/modules ../opt/opencv/release$ make/opt/opencv/release$ sudo make install
  1. 其中的在cmake 进行configure的时候,可以把安装目录指定到/home/user。这样的好处就是能够同时安装opencv2, opencv3。不过也带来了一些麻烦。在创建工程的时候必须指定opencv.include opencv.lib的位置。思路是在Makefile指定opencv的pkg-config文件目录。后面的include lib文件就可以通过pkg-configure 来自动生成。参考
    opencv 论坛帖子

在opencv的安装目录下: opencv3/lib/pkgconfig/opencv.pc文件是整个opencv的配置文件中心。通过

pkg-config --include /home/user/software/opencv3/lib/pkgconfig/opencv.pc

可以输出对应的头文件参数。

pkg-config --include /home/user/software/opencv3/lib/pkgconfig/opencv.pc

可以输出所有的链接参数。所以可以在makefile配置。但是在实际使用中发现,ippcv的lib目录没有一同输出,得手动添加。

  1. 运行。在运行的时候又遇到了一个比较坑的问题, 就是系统运行的时候需要加载.so文件。但是我们的.so文件并不是在系统默认的目录下,所以得手动修改。这方面可以参考:link library教程 目前我用的方法是:
export LD_LIBRARY_PATH=/home/hzh/software/opencv3/lib:$LD_LIBRARY_PATH

后面再运行的时候就可以找到了。
注意:这个方法有很多的毒性副作用。后面有了更好的方法再更新。针对在用户目录下的安装方式,我写了一个测试工程:在github上

主要参考:
http://embedonix.com/articles/image-processing/installing-opencv-3-1-0-on-ubuntu/
http://blog.csdn.net/daunxx/article/details/50495111
http://www.linuxfromscratch.org/blfs/view/svn/general/opencv.html

0 2
原创粉丝点击