Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)

Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)


此博客始创于:http://blog.csdn.net/lys211

转载请注明出处



想在QT中使用OpenCV来实现连续图片转成视频的功能,于是打上了OpenCV的主意
安装OpenCV的过程也是充满了曲折,但是最终还是安装成功了,现记录安装过程,以防系统重装后傻眼。

感谢以下前辈的分享:
https://zahidhasan.wordpress.com/2014/08/19/qt-5-3-1-64-bit-mingw-windows/
http://www.tagwith.com/question_113329_opencv-3-0-videoio-error
http://blog.csdn.net/qiurisuixiang/article/details/8665278


本机已经安装QT 5.4.0
安装在:  E:\Qt\QT-5.4.0-Rel-MinGW491
QT下载地址:  http://download.qt-project.org/official_releases/
如果你喜欢64bit QT,那么 QT的下载地址是:  http://sourceforge.net/projects/qtx64/?source=typ_redirect

从OpenCV下载有OpenCV 3.0.0-beta
解压至:  E:\OpenCV\source\opencv-3.0.0-beta
OpenCV官网:  http://opencv.org/

从CMake下载cmake-3.2.0-rc2
安装至:   E:\CMake\cmake-3.2.0-rc2
CMake下载地址:  http://www.cmake.org/cmake/resources/software.html
安装CMake的的时候,注意安装路径不能有中文和空格, 在安装过程中,勾选加入所有环境变量()

以上步骤完成后,开始配置环境变量
主要是将  E:\Qt\QT-5.4.0-Rel-MinGW491\Tools\mingw491_32\bin 添加到系统环境变量中

1.生成Makefiles
打开CMake,配置源码路径和生成物的目标路径:
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第1张图片

点击Configure,在弹出的框中选择MinGW Makefiles ,并勾选 Specify native compilers:
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第2张图片

接着配置C和C++编译器路径:
C:   E:/Qt/QT-5.4.0-Rel-MinGW491/Tools/mingw491_32/bin/gcc.exe
C++:   E:/Qt/QT-5.4.0-Rel-MinGW491/Tools/mingw491_32/bin/g++.exe
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第3张图片

点击finish。这里CMake会自动开始配置。
过程会出错,因为编译的是OpenCV3.0,所以不能勾选WITH_IPP:
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第4张图片

然后勾选WITH_OPENGL和WITH_QT


继续点击Configure,成功会如以下显示:
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第5张图片

点击Generate,生成MakeFiles成功。


2.编译OpenCV
到  E:\OpenCV\source\opencv-3.0.0-beta\sources\cmake 下找到 OpenCVCompilerOptions.cmake
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第6张图片

打开它并找到
add_extra_compiler_option(-Werror=non-virtual-dtor)
将它注释掉,变成:
#add_extra_compiler_option(-Werror=non-virtual-dtor)
(以上这一步是为了规避掉我在编译过程中遇到的问题)

返回到:E:\OpenCV\source\opencv-3.0.0-beta
在这个路径下 按住键盘的shift键,然后右键鼠标,打开cmd窗口:
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第7张图片

在命令行输入 mingw32-make

这个过程比较久,大概30分钟,因电脑而异。编译完成后,如下图示。然后输入 mingw32-make install 进行安装:
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第8张图片


大约两分钟后,安装完成。

3.配置环境
-1.找到路径 :  E:\OpenCV\install\opencv-3.0.0-beta\install
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第9张图片

将include文件夹复制到一个自定义路径中:   E:\OpenCV\necessary_file

-2.CMake目标路径 下的bin文件夹
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第10张图片

复制到 :   E:\OpenCV\necessary_file

-3.CMake目标路径 下的lib文件夹
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第11张图片
复制到 :   E:\OpenCV\necessary_file

最后文件:   E:\OpenCV\necessary_file  应该如下示:
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第12张图片



然后将路径  E:\OpenCV\necessary_file\bin  添加到 系统环境变量 中。

--------------------------------------------------------------------------------------
到此QT Creator下的OpenCV开发环境已经配置好,剩下的就是测试是否配置成功。

从QT新建一个空的工程 OpenCV_Test
在  OpenCV_Test.pro 里面添加:
INCLUDEPATH+=E:/OpenCV/necessary_file/include/opencv \
             E:/OpenCV/necessary_file/include/opencv2 \
             E:/OpenCV/necessary_file/include
LIBS += -L 
LIBS += -L E:/OpenCV/necessary_file/lib/libopencv_*.a


注:最好是用到什么库就链什么库。这里添加 LIBS += -L E:/OpenCV/necessary_file/lib/libopencv_*.a 这句可能会导致链入的库过多,但是为了能保证编译通过,只能这么加了。

在main.cpp里添加:
 
    
#include "cv.h"
#include "cxcore.h"
#include "highgui.h"
 
    
int main(int argc, char *argv[])
{
    //声明IplImage指针
    IplImage *pImg;
    //载入图片
    pImg = cvLoadImage("E:/Qt/image/bg/1d60857569.jpg", 1);
    //创建窗口
    cvNamedWindow("Image",1);
    //显示图像
    cvShowImage("Image",pImg);
    //等待按键
    cvWaitKey(0);
    //销毁窗口
    cvDestroyWindow("Image");
    //释放图像
    cvReleaseImage(&pImg);
 
    
    return 0;
}

实现的效果为:
Qt - OpenCV的安装与配置 (win7 64 bit + OpenCV3.0 + minGW32)_第13张图片

配置成功!


你可能感兴趣的:(Qt,opencv,64bit,win7,qt,mingw)