zoukankan      html  css  js  c++  java
  • Ubuntn16.04安装opencv3.1(特别注意环境变量)

    参考:http://lib.csdn.net/article/opencv/25737; http://blog.csdn.net/yiranyhy/article/details/72935499; http://tscsh.blog.163.com/blog/static/200320103201382711380403/

    1、安装依赖的库

    sudo apt-get install build-essential
        # 必须的,gcc编译环境
    sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
        # 必须的,包括cmake等工具
    
    sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
        # 可选的,看个人需要,总共5M左右

    2、下载源码

    opencv3.1的下载地址:https://github.com/opencv/opencv/archive/3.1.0.zip

    3、使用cmake安装

    • 解压源码包,得到opencv-3.1.0.zip
    • 然后建立编译目标文件夹
    unzip opencv-3.1.0.zip
    cd opencv-3.1.0 mkdir build

    使用cmake生成Makefile :

    cd opencv-3.1.0/build
    cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
        # 生成后的Makefile在build文件夹中,而需要的CMakeLists.txt在 ".."中,即上一级文件夹中(opencv-3.1.0

    在Configure过程中,若出现 
    – ICV: Downloadingippicv_linux_20151201.tgz… 

    则下载 ippicv_linux_20151201.tgz, 下载地址:http://download.csdn.net/detail/yehuohan/9511463

    替换掉 opencv-3.1.0/3rdparty/ippicv/downloads/linux-8b449a536a2157bcad08a2b9f266828b 下的同名文件即可,注意替换后,重新编译

    4、安装OpenCv

    在opencv3.1.0/build下,终端运行:

    make -j4
        # 或者make-j8 表示4核8核的4个或8个线程编译
    sudo make install
        # 安装

    5、修改环境变量(非常重要)

    安装完后,修改环境变量:

    sudo gedit /etc/ld.so.conf.d/opencv.conf

    写入/usr/local/lib,保存

    sudo ldconfig

    sudo gedit /etc/bash.bashrc

    在文末增加:

    PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
    export PKG_CONFIG_PATH

    保存

    PS:按照上面的方法进行设置环境变量当然是没有问题的,但是如果在服务器上的时候,每个人自己的路径不一样,可以用下面动态添加的办法:

    通过shell命令export实现:

    echo $PATH 用于查看当前PATH的值

    export PATH=$PATH:#####

    用于设置PATH的值

    如要将/home/houjx加入到PATH中可以用

    export PATH=$PATH:/home/houjx

    可看到如下结果:

    qgy@ubuntu:~$ echo $PATH
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
    qgy@ubuntu:~$ export PATH=$PATH:/home/qgy
    qgy@ubuntu:~$ echo $PATH
    /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/home/qgy
    qgy@ubuntu:~$
       注:但应该注意这样设置(方法二)的PATH变量只是对于现在的Terminal有效,关闭当前的   

          Terminal在开启一个,其对应的PATH是不变的,还是/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games

    6、opencv程序测试实例

    • 建立文件夹test
    • 编写test.cpp
    #include <opencv2/opencv.hpp>       // 注意:使用"/",和windows不同
    #include <iostream>
    #include <string>
    using namespace cv;
    using namespace std;
    int main()
    {
        Mat img = imread("pic.jpg");
        if(img.empty())
        {
            cout<<"error";
            return -1;
        }
        imshow("mypic",img);
        waitKey();
        return 0;
    }

    使用Makefile生成opencv工程

    • main.cpp使用之前的即,建立如下Makefile文件
    #Makefile
    
    #使用g++编译,且以C++11标准
    CXX = g++ -Wall -std=c++11
    
    #opencv需要的参数
    CFLAGS =`pkg-config opencv --cflags` `pkg-config opencv --libs`
    #只使用上面这一名,会提示"libippicv.a"这个库找不到,所以自己添加上
    UFLAGS = -L /usr/local/share/OpenCV/3rdparty/lib/ -l ippicv
    
    #可执行文件名称
    TARGET = test
    
    #源文件
    SOURCE = test.cpp
    
    TARGET:
        $(CXX) -o $(TARGET) $(SOURCE) $(CFLAGS) $(UFLAGS)
    • 然后make,即可编译,接着就可以运行了
    cd test    #进入test.cpp所在的文件夹
    
    make  #进行编译
    
    ./test  #生成test可执行文件,运行
  • 相关阅读:
    移动硬盘加密方法赏析
    Windows7下怎么对文件或者文件夹进行EFS加密
    win7怎么设置电脑自动关机
    电脑定时关机怎么设置
    用vb编程给u盘加密
    中医课件集合
    在手机上查询药品信息?PEP移动掌上药物信息参考
    【好站收藏】六脉医学资料下载网sixmed.cn
    百度进军C2C叫板淘宝电子商务领域竞争升级
    IBM 笔记本T43键盘帽安装手记
  • 原文地址:https://www.cnblogs.com/qinguoyi/p/7305273.html
Copyright © 2011-2022 走看看