所需安装环境

1、安装编译环境
$ sudo dnf install gcc gcc-c++ ncurses-devel cmake

2、安装gtk+2.x

$ sudo dnf install gtk2 gtk2-devel gtk2-devel-docs
$ sudo dnf install libgnome-devel gnome-devel-docs
$ sudo dnf install zlib glib atk pango gdk-pixbuf2 gdk-pixbuf2-devel

3、安装依赖的包

$ sudo dnf install gtk+ gtk2-devel pkgconfig python-devel python-numpydoc
$ sudo dnf install libavc1394 libavc1394-devel libdc1394 libdc1394-devel jasper-devel
$ sudo dnf install ffmpeg ffmpeg-devel openjpeg-devel libjpeg-devel libpng-devel libtiff-devel

4、最后,就是OpenCV的安装包了,去官网下载即可,传送门:http://opencv.org/

使用cmake生成用于编译安装的makefile文件

解压包后按顺序执行以下命令
$ cd ~/opencv-3.1.0/
$ cmake -DINSTALL_CREATE_DISTRIB=ON
$ make
$ sudo make install

opencv会默认安装在/usr/local/目录文件下,若要改变安装位置有选项“-D CMAKE_INSTALL_PREFIX=/usr/local",修改后面的参数即可。

其中命令"cmake -DINSTALL_CREATE_DISTRIB=ON"是必须要加上的,否则编译以后目标文件链接库的时候会出现以下错误
/usr/bin/ld: cannot find -lippicv
collect2: error: ld returned 1 exit status

环境配置

1、添加环境变量profile
$ sudo vim /etc/profile

在最后添加如下内容

export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
保存并退出,并执行以下命令使修改生效
$ sudo source /etc/profile
2、添加另一个环境变量bashrc
$ sudo vim /etc/bashrc

在最后添加如下内容

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

保存并退出,并执行以下命令使修改生效

$ sudo source /etc/bashrc

3、最后执行

$ sudo ldconfig

测试

1、首先检查测试是否安装成功
$ pkg-config --cflags opencv
-I/usr/local/include/opencv -I/usr/local/include
$ pkg-config --libs opencv
-L/usr/local/lib -lopencv_world
$ pkg-config --modversion gtk+-2.0
2.24.29

2、写一个程序测试test.cpp,源代码如下

#include "opencv/cv.h"
#include "opencv/highgui.h"
int main(int argc, char **argv)
{
IplImage* pImage;
if(argc==2 && (pImage=cvLoadImage(argv[1],1))!=0)
{
cvNamedWindow("Image",1);
cvShowImage("Image",pImage);
cvWaitKey(0);
cvDestroyWindow("Image");
cvReleaseImage(&pImage);
return 0;
}
return -1;
}
直接编译
$ g++ `pkg-config --cflags opencv` -o test test.cpp `pkg-config --libs opencv`

或者编译链接分两部完成

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

最后运行

$ ./test Lenna.jpg

最新文章

  1. gSOAP MTOM
  2. 第三篇:白话tornado源码之请求来了
  3. 【转】[特征选择] An Introduction to Feature Selection 翻译
  4. (学习笔记)PHP的输出echo和print
  5. online judge(ACM) 的设计与分析 (有c#demo)
  6. 【python】numpy array特殊数据统一处理
  7. zepto.js + iscroll.js上拉加载 下拉加载的 移动端 新闻列表页面
  8. OpenJudge计算概论-计算三角形面积【海伦公式】
  9. 使用 Entity Framework
  10. [Android Studio 1A] – 插件
  11. [Flex] ButtonBar系列——flex3 ButtonBar样式之颜色的填充
  12. jquery之val()和attr("value")
  13. C# excel操作
  14. HDU 5873 Football Games 【模拟】 (2016 ACM/ICPC Asia Regional Dalian Online)
  15. WDLINUX (Centos5.8) 安装 soap
  16. ant—学习记录一
  17. JS关闭当前页面的方法
  18. 【Python】 SSH连接的paramiko
  19. Linux下xargs命令详解
  20. 使用以下映射将包含A-ZIS的字母的消息编码为数字:'A' - > 1,'B' - > 2 ...'Z' - > 26 给定包含数字的编码消息,确定解码方式的总数(python)(原创)

热门文章

  1. ruby的DIR.pwd
  2. 20150909—Win10系统80端口被System占用
  3. Delphi保存网页中的图片
  4. PHP 调试 - Xdebug
  5. python实现获取文件夹中的最新文件
  6. 《JAVA设计模式》之享元模式(Flyweight)
  7. [Linux] 024 IP 地址配置和网络 yum 源
  8. StatusStrip 分类: C# 2015-07-23 11:58 2人阅读 评论(0) 收藏
  9. 2019-1-25-WPF-ListBox-的选择
  10. resolver - 解析器(resolver) 配置文件