OpenCV+QT开发环境(一):Windows环境
最近在学习openCV的开发。在搭建开发环境的时候,着实废了不少功夫,找了大量的文章资料。其实主要的开发还是在linux系统上的openCV,但是为了方便,我还是在windows上也搭建了开发环境,这样在进行简单的程序验证的时候,可以直接在windows下进行,而不需要打开虚拟机或者进入linux系统(如果装了双系统的话)。因为windows下还是有不少好用的工具的。
在此之间,我从来不知道装软件还有这样的装法。主要指的是openCV库的生成。虽然在官网上下载得到的文件中已经包含了库文件和.h等头文件,但是在具体开发中编译器编译好了源文件都会和库文件去进行链接,这就导致了一个问题就是不同的编译器可能需要不同的库(适应编译器、编译环境的库)。所以,建议在下载得到源文件之后,用指定的编译器重新编译。编译后产生的库和.h文件就可以放心得使用了。
一、QT安装
qt project官网:http://qt-project.org/downloads,QT目前的最新版本是QT5.2.1。
QT的安装有多种方式:1.采用gcc编译器 2.采用visual studio的编译器
在第1种方式中,采用gcc编译器,需要下载的文件是:
下载好这个文件,直接双击运行就行了,安装过程非常傻瓜式。这个文件已经内部集成了QT creator,mingw安装好之后,将路径下的tools\mingw48_32路径下的的bin文件夹的绝对路径添加到环境变量中的Path变量下面,与该变量的其他路径用分号隔开。例如:;...\Qt\Qt5.2.1\Tools\mingw48_32\bin。之所以需要将bin这个文件夹添加到path环境变量中,是因为这个文件下含有gcc,g++编译器,链接器等。在之后命令行下编译openCV源文件需要用到。
有些人想安装QT4,比如我第一次安装时安装的就是QT4。那么需要下载的文件是:
在第2中方式中,采用visual stdio的编译器,首先你的电脑上需要安装有visual studio。需要下载的文件是:
- Visual Studio Add-in 1.1.11 for Qt4 (supports versions 2005, 2008 and 2010, does not work with the Express edition)
- Visual Studio Add-in 1.2.2 for Qt5 (supports versions 2008, 2010 and 2012, does not work with the Express edition)
为了编程的方便,建议也安装
因为在visual studio的c++开发中,没有方便的代码智能匹配。使用过visual studio开发c#程序时,就会知道代码智能匹配是多爽。而QT Creator含有智能匹配的功能。所以下载安装好了之后,打开“工具”下的“选项”菜单,在“构建和运行”下配置好,QT版本 与编译器就可以在其中写代码了。编译器应该指向visual studio的编译器。
个人建议采用第1中安装方式,安装QT5.2.1直接傻瓜式安装,节约时间。因为我一开始的时候,结合vs2010进行安装花了不少时间。
二.openCV安装
OpenCV官网:http://opencv.org/。
因为是在windows下,所以下载:
下载最新版就好了,目前的最新版是2.4.8
下载之后,需要对源码进行编译。双击运行,然后随意选择一个解压目录,将源码解压到该目录下。为了能够编译源码,需要先使用CMake对源码进行配置。Cmake的下载地址:http://www.cmake.org/cmake/resources/software.html,在地址下选择windows平台的工具就好了。使用Cmake的目的是为了根据编译器和具体开发环境配置,从而产生Makefile文件。编译源码时,编译器就会根据Makefile文件对源码进行编译。
1.打开cmake
如果是使用mingw的话,就选择MinGW makefiles,此时需要先配置好编译器的环境变量(上文提到)。如果是配合visual studio就选择对应版本的编译器
新建一个文件夹,用于存放cmake配置产生的文件,如release。点击configure配置就行了。
勾选生成列表中的WITH_OPENGL和WITH_QT两项。在实际编程中,可能还会出现一些问题,可以参考”使用 CMake 和 OpenCV的几个问题:http://hi.baidu.com/azhw618/item/1120b20c6381a8ce915718af“,目前为止我还没有碰到。
在配置的过程中,有些文件会无法找到,如:
对于和QT有关的,一定要设置它们的路径,如:
再次配置,直到没有红色的缺少项。点击generate,产生makefile.
____________________
打开cmd,进入刚才设置的目标路径(D:\opencv\release),输入mingw32-make命令开始编译
编译完成后,开始生成安装,输入mingw32-make install
结束后,找到release文件下的install文件夹:
这个文件夹就是我们需要的文件啦。
可以选择将这个文件夹命名成OpenCV转移到c盘内:
新建QT工程后:
在pro文件中添加如下OpenCV的依赖文件
INCLUDEPATH+=C:\OpenCV\include\opencv\
C:\OpenCV\include\opencv2\
C:\OpenCV\include
LIBS+=C:\OpenCV\lib\libopencv_calib3d248.dll.a\
C:\OpenCV\lib\libopencv_contrib248.dll.a\
C:\OpenCV\lib\libopencv_core248.dll.a\
C:\OpenCV\lib\libopencv_features2d248.dll.a\
C:\OpenCV\lib\libopencv_flann248.dll.a\
C:\OpenCV\lib\libopencv_gpu248.dll.a\
C:\OpenCV\lib\libopencv_highgui248.dll.a\
C:\OpenCV\lib\libopencv_imgproc248.dll.a\
C:\OpenCV\lib\libopencv_legacy248.dll.a\
C:\OpenCV\lib\libopencv_ml248.dll.a\
C:\OpenCV\lib\libopencv_objdetect248.dll.a\
C:\OpenCV\lib\libopencv_video248.dll.a
OpenCV+QT开发环境(一):Windows环境的更多相关文章
- Qt开发程序在Windows 10应用须要管理员执行的解决思路
Qt开发程序在Windows 10应用须要管理员执行的解决思路 过了非常长的时间没有公布博客了.可是我依旧努力地开发Qt程序.眼下呢.我发现开发Qt程序在Windows 10上有一个怪现象--有些程序 ...
- Java后台开发必备软件(windows环境下)
一.必备软件 1.Jdk,推荐下载最新版2.Ide,推荐 IntelliJ IDEA3.服务器,如 tomcat / jetty4.数据库终端界面,推荐 Navicat Premium(自行破解),5 ...
- php+IIS 配置环境(windows环境)
继php7+apache2.4 配置环境(window环境)后,由于B2C项目准备上线:特此小编在阿里云上搭建PHP7环境,为此特写上搭建过程希望正处于搭建php7+IIS(windows环境)中的朋 ...
- 【转】php7+IIS 配置环境(windows环境)
继php7+apache2.4 配置环境(window环境)后,由于B2C项目准备上线:特此小编在阿里云上搭建PHP7环境,为此特写上搭建过程希望正处于搭建php7+IIS(windows环境)中的朋 ...
- Java在linux环境下和windows环境下日期字符串显示不同
图片如果损坏,点击链接: https://www.toutiao.com/i6511565147322974724/ 出现的现象: 在Java中我想要将当前的时间格式化为需要的字符串,然后存放到数据库 ...
- Win7下 OpenCV+Qt开发环境搭建
1.所需软件工具: (1)OpenCV开发库,2.4.9版:包括源文件(source文件夹)和编译后的文件(build文件夹),但最好自己使用CMake又一次编译.否则easy出错. (2)Qt Cr ...
- Qt 5.5.0 Windows环境搭建
1)訪问官方站点:http://www.qt.io/download-open-source/ 2)选择离线安装包 3)选择 Windows 离线安装包(32 位或 64 位都可用,Windows 6 ...
- qt开发ROS gui界面环境配置过程总结
这段时间花了点时间配置了在qtcreator5.9.1上开发ros gui界面的环境,终于可以实现导入工程,插断点调试了.总结起来需要注意以下几点: 1.安装插件ros_qtc_plugin,ROS与 ...
- electron-vue 开发环境搭建(Windows环境)
1.安装 Node.js,一切都基于这个.安装完成后,终端输入 node -v 验证. 2.建立自己的项目目录,然后进入目录. 安装 vue-cli ,终端输入 npm install -g vue- ...
随机推荐
- ASP.NET缓存全解析7:第三方分布式缓存解决方案 Memcached和Cacheman 转自网络原文作者李天平
Memcached — 分布式缓存系统 1.Memcached是什么? Memcached是高性能的,分布式的内存对象缓存系统,用于在动态应用中减少数据库负载,提升访问速度.Memcached通过在内 ...
- 会话—session
这篇随笔是上一篇的姊妹篇@_@! session 在WEB开发中,服务器可以为每个用户浏览器创建一个会话对象(session对象),注意:一个浏览器独占一个session对象(默认情况下) ...
- 调用支付宝PHP接口API实现在线即时支付功能(UTF-8编码)
这次在项目中要实现订单功能,所以要完成在线支付,在线支付一般有网银支付和第三方支付(支付宝.paypal等)这两种途径,未简单起见,先完成支付宝在线支付功能,由于项目基于Yii框架,且使用UTF-8编 ...
- Jsp万能密码漏洞修复例子
更多详细内容请查看:http://www.111cn.net/jsp/Java/58610.htm 如果网站出现这种“万能密码”漏洞该怎么办呢 'or'='or' 漏洞修复 方法有很多在这里介绍两种, ...
- hdu 1686 Oulipo KMP匹配次数统计
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1686 分析:典型的KMP算法,统计字符串匹配的次数. 用Next数组压缩时间复杂度,要做一些修改. / ...
- DNA RNA
核糖体没有DNA,但是有RNA(rRNA 核糖体RNA) 有DNA的细胞器是线粒体和叶绿体.
- USB接口介绍
USB设备系统分为两个部分,USB Host端和USB Device端,以USB接口的U盘为例子,U盘自身是一个USB Device,PC机的USB接口以及相关的控制电路为USB Host部分 ...
- 实验三——SDRAM
一.运行环境 开发板:jz2440 系统: ubuntu12.04 编译器:arm-linux-gcc 二.特殊寄存器 sdram的操作无需按照时序图来设置,只要设置好相关的13个寄存器,arm处理 ...
- 如何在Ubuntu下使用TF/SD 卡制作Exynos 4412 u-boot启动盘
/** ****************************************************************************** * @author Maox ...
- WP开发笔记——页面传参
WP APP页面与页面之间参数的传递可以通过程序的App类设置全局变量. 由于App 类继承自Application类,而通过Application的Current属性可以获取到与当前程序关联的App ...