• Qt_mingw搭建opencv开发环境


    Qt在windows下共有2个版本:mingwmsvc。其中mingw使用gcc编译器,msvc使用微软的VC编译器。针对不同版本Qt,使用Opencv的方式也不同。

    区别

    • msvc, 可以使用opencv-for-window中对应的vc编译版本;
    • mingw,需要使用Qt的qmake和对应编译器,使用opencv源码进行编译;

    mingw编译Opencv

    环境

    • 操作系统: windows10
    • Qt版本: Qt5.8_mingw5.3.0 32bit
    • Opencv版本: Opencv 3.10 Or 3.20
    • cmake: cmake-gui 3.8.0

    : mingw编译器和Opencv版本需要对应,版本不对,配置过程难以完成。

    编译过程

    1.下载Opencv源码

    2. 安装cmake并在Qt中找到cmake

    paste image

    3.打开CMakeList文件

    【Qt Creator】-【文件】-【打开文件或工程】- 找到源码中的makelist文件并打开

    弹出的配置窗口,选择编译配置环境为mingw

    4. 配置cmake

    进入项目,并选择release
    paste image

    等待Qt完成CMakeList文件读取,在CMake选项中进行配置,设置编译结果导出位置,CMAKE_INSTALL_PERFIXBUILD_opencv_world。前者设置编译输出结果位置,后者设置opencv最终结果为一个库文件。
    paste image

    配置完成以后,按下下方的Aplly按钮。

    5. 配置构建选项

    paste image

    6. 开始构建

    paste image

    搭建开发环境

    1. 添加头文件路径和库

    在工程的.pro文件中,设置头文件路径和头文件

    INCLUDEPATH += D:/opencv/OpencvMingw/build/opencv-3.1/include
    LIBS += D:/opencv/OpencvMingw/build/opencv-3.1/x86/mingw/lib/libopencv_*
    

    2. 添加bin到环境变量

    在系统环境变量中添加bin文件路径。

    3. 简单图片显示

    #include <QCoreApplication>
    #include <QDebug>
    
    #include <iostream>
    #include <opencv2/opencv.hpp>
    using namespace cv;
    using namespace std;
    
    int main(int argc, char *argv[])
    {
        QCoreApplication a(argc, argv);
    
        qDebug() << "start";
    
        cv::Mat im0 = imread("d://dlrb.png");
        namedWindow("Qt OPENCV DEMO");
        imshow("Qt OPENCV DEMO", im0);
    
        waitKey(-1);
    
        return a.exec();
    }
    

    问题

    编译运行,报错并提示 exited with code -1073741510,该问题主要是由于环境变量未生效造成的,将bin目录下的dll复制到可执行文件目录下即可。

    参考

    作者: lazyboy
    文章来源: http://www.cnblogs.com/xbotao/
    如有问题,请留言或者Email我: upc_xbt 163.com

  • 相关阅读:
    Java内部类详解
    浅谈Java中的深拷贝和浅拷贝(转载)
    native为本地方法
    Java NIO:NIO概述
    Java NIO:浅析I/O模型
    Hash表
    浅谈Java中的hashcode方法
    spring boot学习(转)
    Spring Boot修改内置Tomcat端口号
    K8S
  • 原文地址:https://www.cnblogs.com/xbotao/p/6648938.html
Copyright © 2020-2023  润新知