将要使用的版本opencv版本:2.3.1a
计算机环境:Fedora 14, Gcc 4.5.1, cmake 2.8.4。为了显示界面,貌似还需要gtk2-devel。如果需要进行视频处理,还需要安装ffmpeg-devel。否则基本无法读取视频。如果要 处理图片,还需要安装相应的库:openjpeg-devel和libpng-devel。
默认情况下,fedora并没有安装这些库,所以需要先安装它们。

1
2
$ su
# yum install cmake gtk2-devel ffmpeg-devel openjpeg-devel libpng-devel -y

在安装完前置条件之后,现在开始安装opencv(下载地址).
下载完之后进行解压,并假设解压路径为OPENCV_ROOT。在$OPENCV_ROOT里创建release文件夹,用于存放编译后的文件。

1
2
3
$ tar xvf OpenCV-2.3.1a.tar.bz2
$ cd OpenCV-2.3.1a
$ mkdir release

接着可以在release文件夹里创建Makefile

1
2
$ cd release
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON ..

其中选项BUILD_PYTHON_SUPPORT=ON表示添加Python支持。而每个选项前要添加-D参数。opencv还可以添加CUDA 和TBB支持。想要在编译中添加相应的支持。只需添加编译选项 -D WITH_CUDA=ON或 -D WITH_TBB=ON。
默认情况下,只要安装了CUDA 4.0版本,opencv就会自动添加CUDA支持。但出于种种原因而不想添加CUDA支持,只需添加编译选项 -D WITH_CUDA=OFF即可。
生成Makefile之后就可以开始编译。

1
2
3
$ make -j4
$ su
# make install

其中make -j4表示启用4个核进行编译。如果你的计算机是双核的,则应该使用-j2.
安装完之后,需要设置库路径

1
2
$ su
# vi /etc/ld.so.conf.d/opencv.conf

输入/usr/local/lib,并保存退出。或者可以在/etc/profile中添加环境变量

1
2
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH

添加完库路径之后,还需要添加环境变量

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

然后更新库缓存和环境变量

1
2
# ldconfig
$ source /etc/profile

测试安装是否成功

1
2
$ cd $OPENCV_ROOT/samples/c
$ sh build_all.sh

编译好之后直接试运行

1
$ ./facedetect --cascade="/usr/local/share/$OPENCV/haarcascades/haarcascade_frontalface_alt.xml" --scale=1.5 lena.jpg

其中$OPENCV表示解压缩后的文件夹名字,默认为OpenCV-2.3.1a.
若安装成功,应该会看到输出一副人脸检测的图片。
注意:
在实际编程中,如果需要用到opencv的头文件,比如说cv.h,则应该写为

1
#include <opencv/cv.h>

你可以在/usr/local/include文件夹中发现有opencv和opencv2这两个文件夹。而Linux下头文件搜索路径只包含一级 目录。所以需要手动加上文件夹名字opencv/cv.h,否则编译时会提示没有找到cv.h文件。如果不想每次都加opencv/,则可以将 opencv/中的所有文件链接到/usr/local/include中。

1
# ln -s /usr/local/include/opencv/* /usr/local/include/

或者在编译选项中显示说明

1
$ gcc XXX.cpp `pkg-config --cflags opencv` -o XXX

同样,动态链接库也会遇到找不到的问题。比如会出现
/usr/local/include/opencv2/core/mat.hpp:297: undefined reference to `cv::fastFree(void*)’
这样的字眼。这个时候需要把动态链接库的路径加到编译选项中。

1
$ g++ `pkg-config --cflags --libs opencv` XXX.c -o XXX

参考资料
[1] http://www.opencv.org.cn/forum/viewtopic.php?t=14610
[2] http://opencv.willowgarage.com/wiki/InstallGuide_Linux

转载于:https://www.cnblogs.com/weisteve/archive/2012/05/31/2528868.html

Fedora17下安装OpenCV2.3.1[转]相关推荐

  1. ubuntu16.04 下安装Opencv2.4.9

    ubuntu16.04 下安装Opencv2.4.9 OpenCV的源码download from:  https://sourceforge.net/projects/opencvlibrary/? ...

  2. VC 2010下安装OpenCV2.4.4

    说明: 安装平台:32位XP,VS2010: OpenCV 2.4.4不支持VC 6.0: 网上有很多用CMake编译OpenCV的安装教程,这里建议先不要自己编译,如果使用预编译好的库有问题,再尝试 ...

  3. ubuntu15.10下安装opencv2.4.9python上调用opencv库

    对于centos,可以参考:Install OpenCV-Python in Fedora 如果IPP难以下载可以在cmake时禁掉它,只需:cmake -DWITH_IPP=OFF OpenCV3. ...

  4. Linux ubuntu 装openCV,Ubuntu Linux下安装OpenCV2.4.1所需包

    OpenCV2.4.1所需安装包(参考官方的opencv_tutorials.pdf) 1. GCC 4.4.x or later sudo apt-get install build-essenti ...

  5. VC 2008 Express下安装OpenCV2.3.1

    注意: 下列文档以VC2008 Express为例,VC2010下的配置应与本文档类似. VC 6.0不被OpenCV 2.3.1支持. VC Express是微软提供的免费版,可从此处下载: htt ...

  6. ubuntu16.04 在cuda9.0环境下编译安装opencv2.4.13.7

    ubuntu16.04 在cuda9.0环境下编译安装opencv2.4.13.7 安装步骤: 1.安装cuda9.0:https://blog.csdn.net/zhuangwu116/articl ...

  7. Mac-OSX的Python3.5虚拟环境下安装Opencv

    Mac-OSX的Python3.5虚拟环境下安装Opencv 1   关键词 关键词:Mac,OSX,Python3.5,Virtualenv,Opencv 2   概述 本文是一篇 环境搭建 的基础 ...

  8. VS2012下安装OpenCV3.0.0的记要

    图像处理开发需求.图像处理接私活挣零花钱,请加微信/QQ 2487872782 图像处理开发资料.图像处理技术交流请加QQ群,群号 271891601 步骤和原理可参考我之前写的博文VS2012下安装 ...

  9. 在Mac下安装使用OpenCV

    教导大家如何在Mac下安装使用OpenCV, 包括使用编译器,Xcode,和Eclipse的开发方法 系统环境:ML10.7.5  cmake版本:2.8.10 XCode版本:4.5.1  Open ...

最新文章

  1. 修改系统density适配
  2. 清华、北邮等高校研究人员实现具有 160 个目标的基于 SSVEP 的免校准 BCI 系统...
  3. 本工作簿不能再使用其他新字体_1.2.16 EXCEL篇之关于工作表的操作合集
  4. “李宏毅老师对不起,我要去追这门美女老师的课了” ,台大陈蕴侬深度学习课程最新资料下载...
  5. MODIS数据的简介和下载(三)——MODIS数据下载方式(基于MODIS Web Service)
  6. 【工业串口和网络软件通讯平台(SuperIO)教程】二.架构和组成部分
  7. 洛谷P3649 [APIO2014]回文串(回文自动机)
  8. win10易升计算机丢失,微软Windows 10易升
  9. 计算机桌面倒计时,Mamsds桌面倒计时
  10. python 爬取视频ts文件_python爬取视频网站中video标签的m3u8文件与ts文件
  11. 面经:阿里二面自我剖析---Java岗(50分钟)
  12. YUV420视频上面添加字幕
  13. 自己造个真正意义上的AI纸片人离我们还有多远?
  14. ckeditor5字体颜色,字体背景颜色设置显示
  15. 解读Box2D (1)核心入口 void b2World::Step
  16. 学习《Linux就该这么学》第十二课
  17. 小区车辆自动识别系统C语言,小区车辆自动识别显示通行系统
  18. 计算机期末考试成绩分析,计算机操作员考试成绩分析
  19. 人工智能核心技术,主要可以分为哪几类?
  20. 为什么要使用独立游戏服务器

热门文章

  1. LibreOffice、OpenOffice 漏洞可导致黑客欺骗已签名文档
  2. 微软2月修复99个漏洞,含1个 0day
  3. Thinking in Java 4th(Java编程思想第四版)文档、源码、习题答案
  4. java replaceAll() 方法要用 4 个反斜杠,表示一个反斜杠,该怎么解决
  5. 理解 Memory barrier(内存屏障)【转】
  6. AnyChat视频直播系统全面分析
  7. JFinal 调用 oracle 存储过程的 步骤
  8. 在不重装系统的情况下创建Linux的Swap分区
  9. 多线程之wait和notify使用注意事项
  10. 蓝桥杯ALGO-147算法训练 4-3水仙花数