码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Windows上Qt配置OpenCV(最简单版本无需自己编译-避坑必看)


    文章目录

    • Windows上Qt配置OpenCV(最简单版本无需自己编译-避坑必看)
      • 1 前言
      • 2 软件安装
        • 2.1 安装qt
        • 2.2 安装OpenCV(分为vc版和mingw版)
          • 2.2.1 配置环境变量
      • 3 Qt配置OpenCV
        • 3.1 创建一个项目(注意选择的是MinGW编译器还是MSVC编译器)
          • msvc:
          • mingw:
      • 4 简单快捷添加OpenCV库的方法
      • 5 简单案例,测试是否安装成功
        • 5.1 创建一个控制台窗口
        • 5.2 注意选择编译器
        • 5.3 添加pri文件路径
        • 5.4 运行结果
        • 5.5 注意事项
      • 6 福利

    Windows上Qt配置OpenCV(最简单版本无需自己编译-避坑必看)

    1 前言

    博主为了在qt上配置OpenCV踩了很多坑,经过一番努力,终于找到了最容易配置的方法,在这里总结出了一份经验,给有需要的人提供一点帮助.文章结尾有福利.
    
    • 1

    2 软件安装

    2.1 安装qt

    需要一个账号,注册后方可下载

    qt官网

    在这里插入图片描述

    2.2 安装OpenCV(分为vc版和mingw版)

    注意32位还是64位

    选择Windows下载,接着一路next即可,这里下载的是msvc编译的版本

    OpenCV官网

    在这里插入图片描述

    对于MinGW版本的,在github上有,可以直接下载使用我这里下载的是3.4.8版本,下载较慢,文末有链接方便快速下载

    MinGW版本已编译

    2.2.1 配置环境变量

    OpenCV的使用需要配置环境变量,我将msvc和mingw的版本都配置了,可以按照自己安装的路径来配置

    将bin文件夹放环境变量

    msvc:
    C:\OpenCV_s\opencv_vc\opencv\build\bin
    C:\OpenCV_s\opencv_vc\opencv\build\x64\vc15\bin
    C:\OpenCV_s\opencv_vc\opencv\build\x64\vc15\lib
    mingw:
    C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\x64\mingw\bin
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    在这里插入图片描述

    3 Qt配置OpenCV

    3.1 创建一个项目(注意选择的是MinGW编译器还是MSVC编译器)

    在pro文件中添加一些东西,根据自己选择的编译器,来添加,这里换成自己安装的路径

    msvc:
    INCLUDEPATH +=C:\OpenCV_s\opencv_vc\opencv\build\include\
                  C:\OpenCV_s\opencv_vc\opencv\build\include\opencv\
                  C:\OpenCV_s\opencv_vc\opencv\build\include\opencv2
    
    LIBS +=C:\OpenCV_s\opencv_vc\opencv\build\x64\vc15\lib\opencv_world3414.lib 
    或 C:\OpenCV_s\opencv_vc\opencv\build\x64\vc15\lib\opencv_world3414d.lib
    注意: opencv_world3414d.lib 为debug版,opencv_world3414.lib为release版
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    mingw:
    INCLUDEPATH+= C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\include\
                  C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\include\opencv\
                  C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\include\opencv2
    LIBS+=C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\x64\mingw\bin\libopencv_*.dll
    
    • 1
    • 2
    • 3
    • 4

    4 简单快捷添加OpenCV库的方法

    创建pri文件,将下方内容写入,同样设置为自己安装的路径,文件可以放在任何位置,但建议放在安装OpenCV的路径下,方便自己查找.

    INCLUDEPATH += C:/OpenCV_s/opencv_vc/opencv/build/include
    
    Debug: {
        LIBS += -lC:/OpenCV_s/opencv_vc/opencv/build/x64/vc15/lib/opencv_world3414d
    }
    
    Release: {
        LIBS += -lC:/OpenCV_s/opencv_vc/opencv/build/x64/vc15/lib/opencv_world3414
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    之后在项目pro文件中添加下面这一行即可,不需要再添加那么多行,我这里pri文件放在下面的路径里,设置为自己放的路径,添加后qtcreator会自动添加到项目中:

    include(C:\OpenCV_s\opencv.pri)
    
    • 1

    5 简单案例,测试是否安装成功

    本例子使用的MSVC编译的OpenCV

    5.1 创建一个控制台窗口

    在这里插入图片描述

    5.2 注意选择编译器

    我是自己设置的MSVC64位编译器,一般来说qt安装时选了MSVC编译器就可以使用,不需要自己再设置,所以直接选择MSVC相应的版本即可

    在这里插入图片描述

    5.3 添加pri文件路径

    在这里插入图片描述

    main.cpp文件内容:

    #include 
    #include "opencv2/opencv.hpp"
    int main(int argc, char *argv[])
    {
        QCoreApplication a(argc, argv);
        using namespace cv;
    
        Mat image=imread("C:/test/1.jpeg");//改成自己图片的路径,注意使用的是'/'
        imshow("Output",image);
        return a.exec();
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    5.4 运行结果

    在这里插入图片描述
    在这里插入图片描述

    5.5 注意事项

    如果切换为MinGW编译的版本,需要重启qtcreator

    6 福利

    相关安装包(含MinGW和MSVC版本)链接(免费下载):

    下载

  • 相关阅读:
    优先级队列(堆)的详解
    Pandas写入Excel文件如何避免覆盖已有Sheet
    电脑装了w10没有w7流畅怎么办?
    1045 Favorite Color Stripe
    室友1把王者的时间写出了快速排序?(python实现)
    正则表达式 0.1v
    【廉颇老矣,尚能饭否】传统的数据仓库是否还能发挥作用?
    vue实现tagsview多页签导航功能
    inpaint-anything:分割任何东西遇到图像修复
    yolov5之魔化修改
  • 原文地址:https://blog.csdn.net/kdnnnd/article/details/132840038
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号