[原]Opencv 2.4.9在Ubuntu下的配置安装

 Opencv 2.4.9在Ubuntu下的配置与安装

surgewong@gmail.com

http://blog.csdn.net/surgewong

每次学习新东西或者换新的电脑,最让人头疼的就是环境的安装了。网上有一大堆教程,不过总地来讲,比较混乱,有些甚至有误导性,当然也不乏一些有质量的博客。为了方便自己以后重复安装以及能够帮助到有需要的朋友,在此将相关有用的博客整理一下。

这里主要讲一些如何在Ubuntu(12.04)下安装Opencv(2.4.9)。Opencv的源码可以在其官网下载,也可以在百度网盘下载。 Opencv的最近的一些版本都是使用cmake来编译的,其配置过程基本上是一样的。

一、依赖包安装

Ubuntu下安装软件或多或少都需要安装一些依赖包(软件)。opencv也不例外。

1.  build-essential 软件包,为编译程序提供必需软件包的列表信息,这样软件包才知道头文件、库函数在哪里。还会下载依赖的软件包,安装gcc/g++/gdb/make 等基本编程工具,最后才组成一个开发环境。

sudo apt-get install build-essential

2. 下面依赖关系主要是为了能够支持读写图片以及视频等。

sudo apt-get install  libgtk2.0-dev libavcodec-dev libavformat-dev  libtiff4-dev  libswscale-dev libjasper-dev

3. 安装cmake,直接使用apt-get方法。

sudo apt-get install cmake

4. 安装pkg-config,它是一个提供从源代码中编译软件时查询已安装的库时使用的统一接口的计算机软件。

sudo apt-get install pkg-config

Download and extract OpenCV

wget -O OpenCV-2.4.9.zip http://fossies.org/linux/misc/opencv-2.4.9.zip

unzip OpenCV-2.4.9.zip

cd opencv-2.4.9

 

二、编译安装过程

1. 使用cmake来检测编译环境以及生成makefile以及其他project信息,在使用cmake过程可以设置一些参数。

在本目录下使用cmake,注意后面的点表示在当前目录下寻找CMakeLists.txt。

cmake .  (解压缩后的openCV文件夹里,网上很多其它教程就失误在这了。。。)

也可以在可以在另外建一个文件夹,最常见的就是子目录。当然在构建的时候也可以配置一些参数:

cd opencv-2.4.9
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..

2. 使用make编译

make (cd .. 也是退出到解压后的文件夹内)

3.  使用make install 安装

sudo make install

4.  上面的过程基本上完成了opencv的安装。但是并不能够马上用它,opencv还包含很多动态链接库。你可以在文件/etc/ld.so.conf中添加 /usr/local/lib(这个跟安装目录有关, {CMAKE_INSTALL_PREFIX}/lib),也可以在/etc/ld.so.conf.d 目录下增加一个conf文件(可以命名为 opencv.conf),同样添加 /usr/local/lib

使用下面的动态库管理命令ldconfig,让opencv的相关链接库被系统共享

sudo ldconfig -v

5.  完成了动态库的共享,还不能使用opencv来编程,还需要为程序指定openvc的头文件位置。这里使用pkg-config命令来完成。首先在 /etc/profile 中添加

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

pkg-config 维护着一个关于opencv的配置文件,这个文件(opencv.pc)在目录 /usr/local/lib/pkgconfig,这个文件记录着opencv的一些动态库信息,还有头文件信息

通过pkg-config 命令可以列出关于opencv的配置信息:

三、测试

1. 在解压的opencv目录下找到 samples/c/build_all.sh,运行该文件

./build_all.sh

2. 找其中一个来运行看一下效果,例如 find_obj程序:

至此,关于opencv在Ubuntu下的安装成功了,尽情地遨游在计算机视觉的世界里吧!

还有一篇很不错的教程:

Install OpenCV 2.4.9 in Ubuntu 14.04, 13.10

- Reboot your machine

Step 6: Example using OpenCV

- Change directory to following location

cd /usr/local/share/OpenCV/samples/c

- Execute following commands

sudo chmod +x build_all.sh

sudo ./build_all.sh

./facedetect "/usr/share/opencv/haarcascades/haarcascade_frontalface_alt.xml" lena.jpg

or

./facedetect --cascade="/usr/share/opencv/haarcascades/haarcascade_frontalface_alt.xml" lena.jpg

Opencv 2.4.9在Ubuntu下的配置与安装的更多相关文章

  1. ubuntu下opencv2.4.9安装测试

    ubuntu下opencv2.4.9安装测试 whowhoha@outlook.com 一.依赖包安装 1.  build-essential 软件包 sudo apt-get install bui ...

  2. Ubuntu下deb包的安装方法 (zz)

    Ubuntu下deb包的安装方法 分类: Ubuntu10使用技巧 2010-10-11 23:49 42969人阅读 评论(3) 收藏 举报 ubuntudebdebianlinux deb是deb ...

  3. ubuntu下deb包的安装方法

    ubuntu下deb包的安装方法 简介 deb是debian linus的安装格式,跟red hat的rpm非常相似,最基本的安装命令是:dpkg -i file.deb dpkg 是Debian P ...

  4. UBUNTU下Y86模拟器的安装和使用

    UBUNTU下Y86模拟器的安装和使用 由于上周在虚拟机中安装Y86模拟器中出现了一些问题并且没得到解决,所以上周实验是在实验楼上做的,这几天练习了UBUNTU下Y86模拟器的安装和使用. 参考博客: ...

  5. ubuntu下nagios配置

    参考文献: http://www.cnblogs.com/mchina/archive/2013/02/20/2883404.html http://my.oschina.net/duangr/blo ...

  6. Ubuntu下MySql配置

    Ubuntu下MySql配置 安装MySQL 命令: sudo apt-get install mysql-server MySQL初始配置及管理 启动MySQL mysql start : mysq ...

  7. 【转】Ubuntu下deb包的安装方法

    [转]Ubuntu下deb包的安装方法 deb是debian linus的安装格式,跟red hat的rpm非常相似,最基本的安装命令是:dpkg -i file.deb dpkg 是Debian P ...

  8. 转载:Ubuntu下deb包的安装方法

    转载:Ubuntu下deb包的安装方法,http://blog.csdn.net/kevinhg/article/details/5934462 deb是debian linus的安装格式,跟red ...

  9. Ubuntu下Maven配置与Maven项目创建教程

    一. Ubuntu下Maven配置 windows下Maven配置参考http://www.cnblogs.com/LexMoon/p/JavaMaven.html ubuntu下Maven地址htt ...

随机推荐

  1. Qt消息机制和事件(二)

    三,事件过滤器 有时候,对象需要查看.甚至要拦截发送到另外对象的事件.例如,对话框可能想要拦截按键事件,不让别的组件接收到:或者要修改回车键的默认处理. 通过前面的章节,我们已经知道,Qt 创建了QE ...

  2. JSBinding + SharpKit / 使用 Firefox 调试 JS

    已经准备好,google打不开,等打开了再贴图上来

  3. addClass的用法和is函数的用法

    <html> <head> <meta charset="utf-8"> <script type="text/javascri ...

  4. sublime安装sftp和ctags插件

    1. 安装Package Control插件 , 安装是通过Sublime Text 2控制台.这是通过按Ctrl + `快捷访问.一旦打开,粘贴以下命令到控制台. 输入以下python代码 subl ...

  5. sql语言参考

    set operators UNION, UNION ALL, INTERSECT, and MINUS这三个操作符优先级相同,从左至右,除非有括号 单库单表操作,单库多表操作,多库多表操作(用到db ...

  6. 第一篇帖子,就弄个JS动态公告浏览吧,直接上代码

    .scroll{    margin-left:45px;    margin-top:-150px;    height:100px;    width:300px;} <script lan ...

  7. 【转】纯CSS设置Checkbox复选框控件的样式

    Checkbox复选框是一个可能每一个网站都在使用的HTML元素,但大多数人并不给它们设置样式,所以在绝大多数网站它们看起来是一样的.为什么不把你的网站中的Checkbox设置一个与众不同的样式,甚至 ...

  8. Tengine:基于Nginx的衍生版

    engine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验 ...

  9. ORACLE 常用字符函数

    ORACLE 常用字符函数1 ASCII(arg1)返回参数arg1的十进制数字表示.如果数据库设置为ASCII,则采用的是ASCII码字符.如果设置为EBCDIC,则采用的是EBCDIC字符 sel ...

  10. Redis 实现高效不遗漏的事件封装

    虽然Redis有订阅功能,但是订阅功能是实时的,过了这个点,就接收不到消息了. 同时,如果订阅的客户端因为某些特殊原因shutdown了,那也就找不回未处理完整的订阅事件了. 但好在,Redis还有一 ...