Ubuntu下配置opencv3.1.0开发环境

1、最近工作上用到在Ubuntu下基于QT和opencv库开发应用软件(计算机视觉处理方面),特把opencv的配置过程详细记录,以供分享

2、步骤说明

一、安装OpenCV3.1.0

1.使用wget下载opencv源码

url : https://github.com/Itseez/opencv/archive/3.1.0.zip

sudo apt-get install wget sudo wget https://github.com/Itseez/opencv/archive/3.1.0.zip

2.解压ZIP源码文件

sudo apt-get install unzip
sudo unzip opencv-3.1.0.zip

3.进入源码目录,创建release目录

cd opencv-3.1.0
mkdir release

4.安装依赖库

sudo apt-get install build-essential cmake libgtk2.0-dev pkg-config python-dev python-numpy libavcodec-dev libavformat-dev libswscale-dev

5. 进入release目录,安装OpenCV时,所有的文件都会被放到这个release目录下

cd release


6. cmake编译OpenCV源码,安装所有的lib文件都会被安装到/usr/local/opencv3.1.0目录下

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local/opencv3.1.0 .. 

注意一点:在cmake到92%的时候会出现一个错误,针对这个错误,我们把
/自己的定义路径/opencv-3.1.0/modules/cudalegacy/src下的 graphcuts.cpp中    #if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) 

修改为:#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER) || (CUDART_VERSION >= 8000)即可,然后再次cmake即可。


7.安装

sudo make install -j8

 

二、配置pkg-config(可选)

1.创建pkgconfig目录

mkdir /usr/local/pkgconfig

2.拷贝opencv.pc文件到pkgconfig目录

cp /usr/local/opencv3.1.0/lib/pkgconfig/opencv.pc   /usr/local/pkgconfig/opencv3.1.0.pc

3.以管理员权限用vim打开bash

sudo vim ~/.bashrc

4.在文件最后一行添加环境变量

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

5.wq保存文件后,source文件(执行脚本)

source ~/.bashrc

6.测试pkgconfig

pkg-config --libs opencv3.1.0

三、配置lib环境变量
1、用vim打开/etc/ld.so.conf文件,添加上以下两行:
①/usr/loacal/
opencv-3.1.0/lib

②/root/opencv/opencv-3.1.0/release/lib

四、程序测试
在任意一个目录下创建test.cpp文件,用vi编写如下内容:
  1. #include <stdio.h>
  2. #include <opencv2/opencv.hpp>
  3. using namespace cv;
  4. int main(int argc, char** argv)
  5. {
  6. if(argc!= 2)
  7. {
  8. printf("usage:DisplayImage.out <Image_Path>\n");
  9. return -1;
  10. }
  11. Mat image;
  12. image= imread(argv[1], 1);
  13. if(!image.data)
  14. {
  15. printf("Noimage data\n");
  16. return -1;
  17. }
  18. namedWindow("DisplayImage",CV_WINDOW_AUTOSIZE);
  19. imshow("DisplayImage",image);
  20. waitKey(0);
  21. return 0;
  22. }

  23. 使用g++编译的时候使用命令:

    g++ `pkg-config --cflags opencv` -o test test.cpp `pkg-config --libs opencv`

  24. 五、其他

    参考博客:http://blog.csdn.net/c406495762/article/details/62896035

(4)Linux(ubuntu)下配置Opencv3.1.0开发环境的详细步骤的更多相关文章

  1. 转[开发环境配置]在Ubuntu下配置舒服的Python开发环境

    在Ubuntu下配置舒服的Python开发环境 Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置.下面的是我们团队开发人员推荐的 ...

  2. 39 Ubuntu下配置python的vscode开发环境

    0 引言 最近想在ubuntu下搞深度学习,首先配置了python的vscode开发环境.在配置python时,选择了Anaconda3.x,保证了其相对于系统python2.x的独立性.另外,vsc ...

  3. 在linux ubuntu下搭建深度学习/机器学习开发环境

    一.安装Anaconda 1.下载 下载地址为:https://www.anaconda.com/download/#linux 2.安装anaconda,执行命令: bash ~/Downloads ...

  4. 在Ubuntu下配置舒服的Python开发环境

    Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置.下面的是我们团队开发人员推荐的一个安装和配置步骤,基于 Ubuntu 12.0 ...

  5. Ubuntu下配置舒服的Python开发环境

    Ubuntu 提供了一个良好的 Python 开发环境,但如果想使我们的开发效率最大化,还需要进行很多定制化的安装和配置.下面的是我们团队开发人员推荐的一个安装和配置步骤,基于 Ubuntu 12.0 ...

  6. Linux下搭建gtk+2.0开发环境

    安装gtk2.0 sudo apt-get install libgtk2.0-dev 查看 2.x 版本 pkg-config --modversion gtk+-2.0 #有可能需要sudo ap ...

  7. 在Ubuntu下搭建ASP.NET 5开发环境

    在Ubuntu下搭建ASP.NET 5开发环境 0x00 写在前面的废话 年底这段时间实在太忙了,各种事情都凑在这个时候,没时间去学习自己感兴趣的东西,所以博客也好就没写了.最近工作上有个小功能要做成 ...

  8. linux/centos下安装nginx(rpm安装和源码安装)详细步骤

    Centos下安装nginx rpm包                                                                                 ...

  9. 【转】在Ubuntu下建立Eclipse的Android开发环境

    本文将介绍如何建立Ubuntu下基于Eclipse的Android开发环境的方法. 大部分的Android开发者都是使用Eclipse来开发Android,本文将向各位介绍一下建立Ubuntu下基于E ...

随机推荐

  1. fiddler模拟弱网操作

    弱网是app测试需要覆盖的一种场景 目录 1.认识弱网 2.fiddler模拟弱网配置 3.弱网下可能发生的问题 1.认识弱网 弱网.2G.3G建议的上下行速率如下,同时还可以控制丢包率的数据 网络 ...

  2. IPv6 首部格式

    <图解TCP/IP> 4.8 IPv6的首部格式 IPv6为了减轻路由器的负担,省略了首部校验和字段.因此路由器不再需要计算校验和,从而提高了包的转发效率. 此外,分片处理所用的识别码成为 ...

  3. c# Thread——1.为什么Abort中断线程是不可靠的

    Thread.Abort 方法在c#中用作强制中断线程的执行,大多用于线程内部满足某个特定条件而自己调用关闭自身,比如下面的代码在i自增到3的时候就会停止打印. class Program { sta ...

  4. Shell脚本中的特殊字符(美元符、反斜杠、引号等)作用介绍

    Shell中的特殊字符有 1.$ 美元符 2.\ 反斜杠 3.` 反引号 4." 双引号 5.< ,>;,*,?,[,] 下面我一一举列说明 一.$符号 1.echo $? 显示 ...

  5. HTTP response status

    The status code is a 3-digit number: 1xx (Informational): Request received, server is continuing the ...

  6. JAVA总结--dubbo与zookeeper

    读累了就看看实操https://www.cnblogs.com/huasky/p/10214642.html 一.SOA 概念:SOA:Service-Oriented Architecture,面向 ...

  7. JavaBean简介和要求

    JavaBean是一种Java语言写成的可重用组件. 所谓javaBean,是指符合如下标准的Java类: 类是公共的 有一个无参的公共的构造器 有属性,且有对应的get.set方法 用户可以使用Ja ...

  8. [LOJ2736] [JOISC 2016 Day 3] 回转寿司 (分块+堆)

    [LOJ2736] [JOISC 2016 Day 3] 回转寿司 (分块+堆) 题面 给出一个有n 个点的环,环上各点有一个初始权值 \(a_i\) 给出 Q 个询问,每次询问给出一个区间 [l,r ...

  9. 【译】Redux 还是 Mobx,让我来解决你的困惑!

    原文地址:Redux or MobX: An attempt to dissolve the Confusion 原文作者:rwieruch 我在去年大量的使用了 Redux,但我最近都在使用 Mob ...

  10. React项目 - 几种CSS实践

    前言团队在使用react时,不断探索,使用了很多不同的css实现方式,此篇blog总结了,react项目中常见的几种css解决方案:inline-style/radium/style-componen ...