本机环境:Windows-64位 

Qt 5.8.0

OpenCV3.2.0

CMake3.8.2

最后结果,亲测可用


第0部分:前期准备

CMake官网下载地址:

https://cmake.org/download/

CMake安装教程请查看: 拜小白一步一步教你CMake3.8.2安装教程

=========================================================================

Qt官方下载地址

http://download.qt.io/archive/qt/

Qt 安装教程请查看:拜小白一步一步教你Qt5.8.0安装教程

=========================================================================

OpenCV3.2.0官方下载地址: 
http://opencv.org/releases.html#

解压即是安装过程,选择好安装路径即可,非常简单



第一部分:系统环境变量设置

首先在本机上装好CMake和Qt

将自己安装路径下bin,例如博主本机的这两个路径添加到Path中。

D:\DiyProgram\CMake\bin

D:\DiyProgram\Qt\Tools\mingw530_32\bin

 

【P.S.不要直接复制哦!具体路径请根据自己安装位置,自行修改】


【 建议 】配置好Path后, 重新启动电脑


第二部分:配置CMake

打开本机上的CMake,并设置源代码,编译目标文件的路径。

【P.S.目标文件可以自己随意新建一个文件夹】

1.设置好路径,点击左下角的【Configure】



2.按红框选择,然后点【Next】



3.配置C和C++编译器路径(P.S.具体路径请根据自己电脑中QT的安装目录)

D:/DiyProgram/Qt/Tools/mingw530_32/bin/gcc.exe

D:/DiyProgram/Qt/Tools/mingw530_32/bin/g++.exe

选择好后,点【Finish】



4.等待配置



5.选中“WITH_OPENGL”、“WITH_QT”,将“WITH_IPP”取消。然后再次点【Configure】




6.【注意】再Configure时会错误


点击OK,继续,然后为报错的项添加对应的路径。


7.手动添加报错文件路径


以本机修改为例(P.S.具体情况根据自己Qt安装位置进行修改):

QT_QMAKE_EXECUTABLE值为:D:/DiyProgram/Qt/5.8/mingw53_32/bin/qmake.exe

Qt5Concurrent_DIR值为:D:/DiyProgram/Qt/5.8/mingw53_32/lib/cmake/Qt5Concurrent

Qt5Core_DIR  值为:D:/DiyProgram/Qt/5.8/mingw53_32/lib/cmake/Qt5Core

Qt5Gui_DIR       值为:D:/DiyProgram/Qt/5.8/mingw53_32/lib/cmake/Qt5Gui

Qt5Test_DIR      值为:D:/DiyProgram/Qt/5.8/mingw53_32/lib/cmake/Qt5Test

Qt5Widgets_DIR   值为:D:/DiyProgram/Qt/5.8/mingw53_32/lib/cmake/Qt5Widgets

 

添加后结果如下,再次点击【Configure】。




8.又出现一个新的未添加的路径,修改方法与上一步相同



以本机修改为例(P.S.具体情况根据自己Qt安装位置):

Qt5OpenGL_DIR     值为:D:/DiyProgram/Qt/5.8/mingw53_32/lib/cmake/Qt5OpenGL

 

添加后结果如下,再一次点击【Configure】。




9.上步运行完毕后,点【Generate】



10.上步生成完毕后,关闭对话框即可



第三部分:编译OpenCV

1.进入第二部分编译后的生成文件目录D:\DiyProgram\buildOpencv

(P.S:这个博主本机的目录,具体每个人请自己查看),然后该文件夹的空白处Shift+右键,选择“在此处打开命令窗口”。

输入“mingw32-make”命令,按回车进行编译。



2.等待编译过程,编译过程需要比较长的时间,请耐心等待。




3.当编译完成后,如下图示。然后在当前目标下输入 “mingw32-make install ”,按回车进行安装。这样可用于Qt的opencv库文件就生成了。


完成后关闭窗口,即可。




第四部分:添加新生成的bin到Path环境变量

把编译后,目标目录下的bin目录路径,即

D:\DiyProgram\buildOpencv\bin   添加到Path环境变量中。



【建议】配置好Path后,重新启动电脑



第五部分:配置Qt中的OpenCV

配置Qt creator工程文件

1.打开Qt,主界面如下图。然后点击【New Project】






2.选择【Qt Widgets Application】,然后点【Choose】




3.创建项目名称,选择创建路径,然后点【下一步】




4.保持默认,点【下一步】



5.保持默认,点【下一步】



6.保持默认,点【完成】



7.在.pro文件中的底部,添加如下内容

模版:

INCLUDEPATH+=D:\DiyProgram\OpenCV\opencv\build\include

             D:\DiyProgram\OpenCV\opencv\build\include\opencv

             D:\DiyProgram\OpenCV\opencv\build\include\opencv2

LIBS += D:\DiyProgram\buildOpencv\lib\libopencv_*.a

 

【P.S不要单纯复制粘贴,以上内容根据自己安装路径,自行修改】



8.到此为止,qt和opencv配置成功。以后在qt中编写opencv程序,同理,只要将上一步的内容添加到.pro文件中。(每次新建新项目时,都只要添加该内容就行)




第六部分:测试

添加如下代码,然后编译运行



  
  1. #include
  2. using namespace cv;
  3. int main()
  4. {
  5. Mat image;
  6. image=imread( "D:\\OutPutResult\\QtWorkplace\\demo1\\dog.jpg"); //括号里更改为自己图像的路径
  7. namedWindow( "显示");
  8. imshow( "显示",image);
  9. waitKey( 0);
  10. return 0;
  11. }




  •                     <li class="tool-item tool-active is-like "><a href="javascript:;"><svg class="icon" aria-hidden="true">
                            <use xlink:href="#csdnc-thumbsup"></use>
                        </svg><span class="name">点赞</span>
                        <span class="count">32</span>
                        </a></li>
                        <li class="tool-item tool-active is-collection "><a href="javascript:;" data-report-click="{&quot;mod&quot;:&quot;popu_824&quot;}"><svg class="icon" aria-hidden="true">
                            <use xlink:href="#icon-csdnc-Collection-G"></use>
                        </svg><span class="name">收藏</span></a></li>
                        <li class="tool-item tool-active is-share"><a href="javascript:;" data-report-click="{&quot;mod&quot;:&quot;1582594662_002&quot;}"><svg class="icon" aria-hidden="true">
                            <use xlink:href="#icon-csdnc-fenxiang"></use>
                        </svg>分享</a></li>
                        <!--打赏开始-->
                                                <!--打赏结束-->
                                                <li class="tool-item tool-more">
                            <a>
                            <svg t="1575545411852" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5717" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"><defs><style type="text/css"></style></defs><path d="M179.176 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5718"></path><path d="M509.684 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5719"></path><path d="M846.175 499.222m-113.245 0a113.245 113.245 0 1 0 226.49 0 113.245 113.245 0 1 0-226.49 0Z" p-id="5720"></path></svg>
                            </a>
                            <ul class="more-box">
                                <li class="item"><a class="article-report">文章举报</a></li>
                            </ul>
                        </li>
                                            </ul>
                </div>
                            </div>
            <div class="person-messagebox">
                <div class="left-message"><a href="https://blog.csdn.net/sinat_36264666">
                    <img src="https://profile.csdnimg.cn/6/3/3/3_sinat_36264666" class="avatar_pic" username="sinat_36264666">
                                            <img src="https://g.csdnimg.cn/static/user-reg-year/2x/3.png" class="user-years">
                                    </a></div>
                <div class="middle-message">
                                        <div class="title"><span class="tit"><a href="https://blog.csdn.net/sinat_36264666" data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;}" target="_blank">空晴拜小白</a></span>
                                            </div>
                    <div class="text"><span>发布了68 篇原创文章</span> · <span>获赞 251</span> · <span>访问量 42万+</span></div>
                </div>
                                <div class="right-message">
                                            <a href="https://im.csdn.net/im/main.html?userName=sinat_36264666" target="_blank" class="btn btn-sm btn-red-hollow bt-button personal-letter">私信
                        </a>
                                                            <a class="btn btn-sm  bt-button personal-watch" data-report-click="{&quot;mod&quot;:&quot;popu_379&quot;}">关注</a>
                                    </div>
                            </div>
                    </div>
    
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐