最近电脑重装系统了,第一件事重装OpenCV。这次直接装最新版,2014-4-25日发布的OpenCV2.4.9版本,下载链接:

http://sourceforge.NET/projects/opencvlibrary/files/opencv-win/2.4.9/opencv-2.4.9.exe/download。其实安装过程跟2.4.4的过程差不多,这里错略记录下过程。2.4.4的安装过程见链接

1、新建文件夹OpenCV2.4.9,然后将348M大小的opencv-2.4.9.exe打开,路径选到新建的这个文件夹,可以看到解压出来有4个多G的大小,这马上要赶上Android源码的节奏啊。里面只有两个文件夹build和sources,跟2.4.4的比起来更规范了。

2、之后就是用CMake了,注意路径选到sources这个目录,这个文件夹下有CMakeLists文件。然后在build/x86目录下可以看到只有vc10、vc11、vc12三个版本,新建文件夹mingw,用来存放编译的mingw版的opencv:

等待变红:

再次点击Configure,然后再点Generate:

3、经过上面的generate会在mingw目录Makefile文件。从cmd里进到D:\ProgramFile\OpenCV2.4.9\opencv\build\x86\mingw这个目录(该目录有生成的Makefile),然后输入命令mingw32-make 之后就是漫长的等待,大概一个小时才编译完:

一个小时后.........................................

4、这就算编译好了,记得将环境变量D:\ProgramFile\OpenCV2.4.9\opencv\build\x86\mingw\bin 设到Path里!!!

5、然后是测试代码,参见链接http://blog.csdn.net/yanzi1225627/article/details/17663151

配置示意如下: D:\ProgramFile\OpenCV2.4.9\opencv\build\include

添加的libopencv_highgui249 都是在如下目录找的,记得不要带后缀:.dll.a。常用的有以下几个:

libopencv_calib3d249

libopencv_contrib249

libopencv_features2d249

libopencv_flann249

libopencv_gpu249

libopencv_imgproc249

libopencv_legacy249

libopencv_ml249

libopencv_core249 

libopencv_highgui249

libopencv_nonfree249

libopencv_objdetect249

libopencv_ocl249

libopencv_photo249

libopencv_stitching249

libopencv_superres249

libopencv_video249

libopencv_videostab249

lib路径:D:\ProgramFile\OpenCV2.4.9\opencv\build\x86\mingw\lib

PS:最后多说一句,如果像我一样不喜欢用VC的编译器,D:\ProgramFile\OpenCV2.4.9\opencv\build\x86目录下的vc10、vc11、vc12完全可以删掉,丫的直接占了1.5G的空间。


【Qt开发】【计算机视觉】OpenCV在Qt-MinGw下的编译库的更多相关文章

  1. 【Qt开发】01-第一个Qt程序Hello World!

    一:说在前头 我的第一份工作是做生产工具,当时用的MFC,IDE是VC6.0,现在想想真是古董级别,10年至今,微软也一直没有对MFC进行升级, 冥冥中感觉微软自己都放弃MFC了,市场上貌似MFC的岗 ...

  2. 【Qt开发】第一个Qt程序Hello World!

    一:说在前头 我的第一份工作是做生产工具,当时用的MFC,IDE是VC6.0,现在想想真是古董级别,10年至今,微软也一直没有对MFC进行升级,冥冥中感觉微软自己都放弃MFC了,市场上貌似MFC的岗位 ...

  3. 【计算机视觉】【图像处理】【VS开发】【Qt开发】opencv之深拷贝及浅拷贝,IplImage装换为Mat

    原文:opencv之深拷贝及浅拷贝,IplImage装换为Mat  一.(1) 浅拷贝: Mat B; B = image // 第一种方式 Mat C(image); // 第二种方式 这两种方式称 ...

  4. opencv 4.0 + linux下静态编译,展示详细ccmake的参数配置

    #先安装 cmake 3.14 # cmake安装到了 /usr/local/bin #配置PATH export PATH="$PATH:/usr/local/bin" #下载最 ...

  5. MinGW下简单编译FFmpeg

    2009.03.21补充:ffmpeg-0.5正式发布,地址为:[url]http://www.ffmpeg.org/releases/ffmpeg-0.5.tar.bz2[/url].修改了第7步, ...

  6. Linux下C ,C ++, Qt开发环境

    目录 Linux发行版的选择 安装常用的开发工具(这里针对C/C++/Qt) 安装openGL 中文输入法 安装sublime text 安装vscode apt-get常用命令 Qt环境 Qt常见问 ...

  7. linux 下安装编译配置 QT

    注: 1,自己 make qt-everywhere-opensource-src s时,在./configure前主动装好以下3个 sudo apt-get install libX11-dev l ...

  8. 【Qt开发】【Linux开发】Qt程序在嵌入式设备(arm) 上运行,鼠标擦除界面的解决方案

    笔者最近想在arm开发板上,开发一个应用程序,经过网上查询发现qt作为跨平台开发软件很不错,于是便选择了qt开发,笔者的qt版本是4.8.6的.由于arm的主频太低,在arm上进行开发编译,效率会大大 ...

  9. QT,QT/E,Qtopia,qt creator的联系与区别

    关于qt,qte,qtopia,qt creator它们之间的区别和联系,相信对所有刚刚入门qt的同学来说都是很模糊的.我在刚开始接触qt的时候也是这样,而且我第一次接触的是qte,因为要在arm上开 ...

随机推荐

  1. hdu 6049 Sdjpx Is Happy

    题: OwO http://acm.hdu.edu.cn/showproblem.php?pid=6049 (2017 Multi-University Training Contest - Team ...

  2. Chrome安卓H5调试,连接手机检测不到页面

    Chrome安卓H5调试,连接手机检测不到页面,重启什么的都不行,未找到设备,或者offline,怎么办? 首先手机开启调试模式是必须的 然后用adb工具箱,cmd进来 运行命令 adb kill-s ...

  3. 附:常见的Jdbc Type 与 Java Type之间的关系

    附:常见的Jdbc Type 与 Java Type之间的关系 JDBC Type Java Type CHAR                  String VARCHAR String LONG ...

  4. audio 预加载

    http://www.w3school.com.cn/tags/av_event_loadeddata.asp var audio = document.createElement("aud ...

  5. [SCOI2009]windy数 代码 (对应数位dp入门)

    Code1 (DP版) #include<bits/stdc++.h> #define in(i) (i=read()) using namespace std; int read() { ...

  6. Git本地安装

    1 Git简介 Git是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码 ...

  7. mysql统计前24小时数据没有补0

    SELECT t1. HOUR HOUR, COUNT(t2. HOUR) count FROM ( SELECT DATE_FORMAT( HOUR), '%y-%m-%d %H' ) HOUR F ...

  8. ILSpy C# language support status

    C# language support status Asynchronous methods 已经支持 Generalized async return types  还不支持 Async main ...

  9. anroid学习笔记(1)

    大概是2个月前,报名了慕课的android就业班课程. 算是补全了当初博客分类的最初设计. 安卓和前端比较: 1,java在安卓开发中的作用,现在我的认识是和JavaScript在前端web开发中有很 ...

  10. js 里面call()的使用

    call 是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向.JavaScript 的一大特点是,函数存在「定义时上下文」和「运行时上下文」 ...