QT&openCV系列!链接:http://www.cnblogs.com/emouse/category/449213.html

本文链接:http://blog.csdn.net/qiurisuixiang/article/details/8665278

0 编译、配置OpenCV的工程相当曲折,编译OpenCV不下5次,一开始还以为是自己的配置、编译步骤有问题,后来发现原来是自己电脑装的Qt Creator版本有点低,里面的MingW版本较低,而OpenCV下载的是最新版本,最新版本的OpenCV需要高版本的MingW。最后果断换成高版本Qt Creator,终于编译成功。

1 下载所需工具

(1)Qt Creator 下载地址http://qt-project.org (建议下载最新版本,因为里面带的MinGW版本较高,我最开始使用Qt
4.7.4编译OpenCV-2.4.4一直报错,后来换成Qt 5.0.1编译成功)

(2)OpenCV 下载地址http://opencv.org/(不建议下载最新版本,最新版本的编译需要高版本的MinGW,不然在执行mingw32-make命令会报错)

(3)CMake 下载地址http://www.cmake.org/cmake/resources/software.html

2 安装Qt Creator,过程很简单,一直下一步就OK

3 安装OpenCV,设置解压路径就OK

4 安装CMake,过程同样很简单(注意:(1)安装路径不能有中文和空格(2)勾选加入所有境变量中)

5 目前最新的OpenCV版本,安装之后的目录下面有源码和个版本的lib和dll,不过为避免出现问题,还是自己编译

6
将C:\Qt\Qt5.0.1\Tools\MinGW\bin加入系统的Path环境变量(假设Qt Creator安装在C盘)

7
打开CMake,使用CMake编译OpenCV。配置源码路径与生成的目标路径

(1)源码路径:要选择OpenCV安装目录下含有如下文件的文件夹

(2)目标路径:可以随意设置

8
点击Configure配置按钮。在弹出的对话框中选择MinGW makefiles,其余选项保持默认,点击Finish按钮,开始编译

9 CMake编译结束界面如下图,勾选生成列表中的WITH_OPENGL和WITH_QT两项,其他项最好不要改动

10
再次点击Configure按钮,红色消失

11
点击Generate按钮,生成makefile文件,成功后,底下会提示Generating done

12
打开cmd,进入刚才设置的目标路径(C:\OpenCV),输入mingw32-make命令开始编译

13 此过程较为漫长,建议关掉杀毒软件可能会快些,在我的ThinkPad T420上耗时30分钟

14
执行mingw32-make install,此过程大约需要1到2分钟

15 下面开始配置Qt Creator的OpenCV开发环境,拷贝下面三个文件夹放在同一个文件夹下(只需这三个目录,其余生成的文件和文件夹可以删除,以节省磁盘空间)

(1)OpenCV-2.4.4安装目录下的build/include目录

(2)CMake目标路径下,MinGW编译后的bin目录

(3)CMake目标路径下,MinGW编译后的lib目录

16
拷贝三个目录到同一目录后的结构如下图(我删除了原来的CMake目标目录中的其他目录,拷贝进来了include目录)

17
将bin目录添加到系统环境变量

18
至此Qt Creator下的OpenCV开发环境已经配置好,下面在Qt Creator下测试是否已经配置成功

19
打开Qt Creator,新建一个空工程,然后添加一个cpp文件,任意命名

20
在pro文件中添加如下OpenCV的依赖文件

INCLUDEPATH+=C:\OpenCV\include\opencv\
C:\OpenCV\include\opencv2\
C:\OpenCV\include LIBS+=C:\OpenCV\lib\libopencv_calib3d244.dll.a\
C:\OpenCV\lib\libopencv_contrib244.dll.a\
C:\OpenCV\lib\libopencv_core244.dll.a\
C:\OpenCV\lib\libopencv_features2d244.dll.a\
 C:\OpenCV\lib\libopencv_flann244.dll.a\
C:\OpenCV\lib\libopencv_gpu244.dll.a\
C:\OpenCV\lib\libopencv_highgui244.dll.a\
C:\OpenCV\lib\libopencv_imgproc244.dll.a\
C:\OpenCV\lib\libopencv_legacy244.dll.a\
C:\OpenCV\lib\libopencv_ml244.dll.a\
C:\OpenCV\lib\libopencv_objdetect244.dll.a\
C:\OpenCV\lib\libopencv_video244.dll.a 备注:其实有种简单的做法,但是有个缺点是可能包含链接库较多 INCLUDEPATH+=C:\OpenCV\include\opencv\
C:\OpenCV\include\opencv2\
C:\OpenCV\include
LIBS+=C:\OpenCV\lib

21 main.cpp文件中内容如下

#include"cv.h"
#include"cxcore.h"
#include"highgui.h" int main(intargc,char*argv[])
{
//声明IplImage指针
IplImage*pImg;
//载入图片
pImg=cvLoadImage("E:/OpenCV/FirstOpenCV/home.jpg",1);
//创建窗口
cvNamedWindow("Image",1);
//显示图像
cvShowImage("Image",pImg);
//等待按键
cvWaitKey(0);
//销毁窗口
cvDestroyWindow("Image");
//释放图像
cvReleaseImage(&pImg);
return0;
}

22 运行程序,按键盘上任意键可以退出

配置OpenCV的Qt开发环境的更多相关文章

  1. 在IntelliJ IDEA 13中配置OpenCV的Java开发环境

    准备工作: 下载IDEA 13(这里以版本13为例,后面简称IDEA): 下载Java JDK(用于配置基本的Java开发环境): 下载OpenCV 2.4.9(这里以版本2.4.9为例,据这篇文章说 ...

  2. VS2012配置OpenCV、GDAL开发环境

    VS2012和opencv-2.4.10 第一步:配置之前的准备工作. 完成VS2012的安装,以及opencv-2.4.10的下载和文件提取, 双击此文件,设置文件路径,即可得到提取文件,提取后的文 ...

  3. 在CentOS 6.5 中安装JDK 1.7 + Eclipse并配置opencv的java开发环境(二)

    一.安装JDK 1.7 1. 卸载OpenJDK rpm -qa | grep java rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5. ...

  4. QT开发环境安装配置教程

    QT开发环境安装配置教程 分类: QT2012-11-29 23:31 35366人阅读 评论(12) 收藏 举报 Linux版的直接在ubutnu软件中心输入QT,安装响应的Designer,Cre ...

  5. (4)Linux(ubuntu)下配置Opencv3.1.0开发环境的详细步骤

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

  6. 第一章 搭建Qt开发环境

    第一章 搭建Qt开发环境 1.到http://download.qt-project.org/archive/上下载Qt的源码包.我下载的是qt-everywhere-opensource-src-4 ...

  7. Ubuntu 12.04下搭建Qt开发环境

    http://download.qt.io/official_releases/qt/ Ubuntu 环境下Gtk与Qt编译环境安装与配置(系统环境是Ubuntu 12.04) 1.配置基础开发环境G ...

  8. 【应用笔记】【AN005】Qt开发环境下基于RS485的4-20mA电流采集

    简介 4-20mA电流环具有广泛的应用前景,在许多行业中都发挥着重要作用.本文主要介绍在Qt开发环境下基于RS485实现4-20mA电流采集,实现WINDOWS平台对数据的采集.分析及显示. 系统组成 ...

  9. Windows+QT+Eclipse+MinGW搭建QT开发环境详细教程

     Windows+QT+Eclipse+MinGW搭建QT开发环境详细教程 一.准备工具: QT-SDK for Windows:http://get.qt.nokia.com/qtsdk/qt-sd ...

随机推荐

  1. 【剑指Offer】35、数组中的逆序对

      题目描述:   在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对.输入一个数组,求出这个数组中的逆序对的总数P.并将P对1000000007取模的结果输出. 即输出P ...

  2. iptables 实现内网转发上网

    介绍 通过iptables做nat转发实现所有内网服务器上网. 操作 首先开启可以上网的服务器上的内核路由转发功能.这里我们更改/etc/sysctl.conf 配置文件. [root@web1 /] ...

  3. 继续聊WPF——Expander控件(1)

    这个控件最实用的地方,就是做导航栏. <StackPanel Margin="20,20" Width="100" Height="460&qu ...

  4. 02017_String类方法使用练习

    1.获取指定字符串中,大写字母.小写字母.数字的个数. public static void method(String str){ int bigCount = 0; //大写字母的个数 int s ...

  5. Nginx学习总结(1)——Nginx入门简介

    本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理.废话不多,直接开始. 1.静态HTTP服务器 首先,Nginx是一个HTTP服务器,可以将服务器上的静态文 ...

  6. elasticsearch 权威指南聚合阅读笔记(七)

    count(1) select clssId,count(1) from student group by  classId { "size":0, "aggs" ...

  7. VNC ( Virtual Network Computing )

    VNC is used to display an X windows session running on another computer. Unlike a remote X connectio ...

  8. jquery-cookie持久化

    jQuery.Cookie.js,是一个轻量级的Cookie管理插件 <script src="jQuery.1.8.3.js" type="text/javasc ...

  9. 洛谷 P2412 查单词

    P2412 查单词 题目背景 滚粗了的HansBug在收拾旧英语书,然而他发现了什么奇妙的东西. 题目描述 udp2.T3如果遇到相同的字符串,输出后面的 蒟蒻HansBug在一本英语书里面找到了一个 ...

  10. 【slighttpd】基于lighttpd架构的Server项目实战(6)—预备知识之Http

    接下来,我们開始http部分的开发. 在此之前.有必要先学习一下HTTP协议- http1.1 的rfc文档:http://www.ietf.org/rfc/rfc2616.txt 简单介绍 超文本传 ...