歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

QT Creator和MinGW中配置OpenCV2.3.1

前段時間為了做一個實驗,利用QT和OpenCV設計圖像處理框架,特意搗騰了一下OT Creator和MinGW中配置安裝OPenCV2.3.1。現將配置、編譯過程整理如下:

注意:整個過程的平台都是在windows xp下進行的。

1、安裝CMake (我的版本為:cmake-2.8.7-win32-x86.exe),下載鏈接:http://www.cmake.org/cmake/resources/software.html


2、安裝OT Creator(版本為:qt-creator-win-opensource-1.3.0.exe),到QT官網都有得下載: http://qt.nokia.com

3、安裝QT library(我的版本為:qt-win-opensource-4.6.4-mingw.exe),到QT官網都有得下載: http://qt.nokia.com

不是說用MinGW來編譯OpenCV源碼包嗎?怎麼上面幾步都沒有安裝MinGW軟件了?原因在此:安裝OT Creator的時候會自帶安裝一個mingw;或者有興趣的朋友也可以自己下載安裝MinGW,如:mingw-get-inst-20111118.exe版本,不管怎樣,用OT Creator自帶的,還是自己安裝的MinGW都可以(二者任選其一)。


注意:在接下來的工作之前要設置一些環境變量可能才會使下面的工作順利的完成

添加CMake的bin目錄、QT Creator的bin目錄、QT library的bin目錄以及MinGW的bin目錄和opencv的bin目錄至環境變量中的Path變量中,我用的MinGW是QT Creator自帶的(D:\Qt\qtcreator-1.3.0\mingw\bin),如下:



接下來就是用CMake來配置OpenCV了:

a、打開CMake軟件如下:


紅色1代表OpenCV解壓後的源碼目錄(我的為:D:\Download\opencv);紅色2代表OpenCV被至哪裡(我的為:E:\opencvMinGW)

b、單擊configure,出現如下:


選擇如上圖所標注的,點擊Finish,然後再次點擊configure,完成後,最後點擊Generate,就會在E:\opencvMinGW下生成必要的文件以及Makefile。

c、現在就是正式編譯OpenCV了,可以在Qt 4.6.4 Command Prompt命令模式下編譯OpenCV,進入OpenCV被配置的那個目錄,如我的目錄為:E:\opencvMinGW,然後在命令行上輸入:mingw32-make ,就可以編譯了,但是我的不行,提示缺少文件:libgmp-3.dll(但是在D:\Qt\qtcreator-1.3.0\mingw\bin確實存在libgmp-3.dll),這個問題我也不知道是怎麼回事,後來我就在winxp自帶的cmd命令模式下用mingw32-make成功的,如果有哪位網友知道缺少libgmp-3.dll文件是怎麼回事,請通告一聲。

d、安裝OpenCV庫,還是在上面編譯的目錄下,在命令行模式下輸入:mingw32-make install 命令就會安裝OpenCV庫,看看是不是在編譯的目錄下多了一個install文件夾。

至此,編譯工作就全部結束了,下面介紹一個在QT Creator使用OpenCV的例子:

在此要配置一下QT庫的版本:打開QT Creator,選擇Tools下的Options,彈出如下:



把QT庫中的qmake添加進去即可。

下面就正式開始我們的實例分析吧,新建一個工程:




完成之後就會在C:\OpenCVProjects下生成一些文件:main.cpp,myQtConsoleProject.pro文件


修改main.cpp成我們自己的代碼如下:



然後修改myQtConsoleProject.pro文件,在原文件的基礎添加OpenCV的頭文件路徑和庫文件路徑以及庫文件,其實只要在原.pro文件的後面添加INCLUDEPATH和LIBS兩項就可,修改後的.pro文件如下:



編譯無錯的話,就會在工程的debug目錄下生成我們的.exe文件,選取一張img.jpg文件名的圖片在debug目下,雙擊這個exe文件就出現了下面美妙的畫面了:



好了,總算看到一些效果了,希望文章能對各位網友提供一些參考,同時,本人在做實驗的過程中參考了一些網友的博客,如:http://www.linuxidc.com/Linux/2012-07/66204p2.htm,在此對其表示深深地感謝,謝謝!謝謝大家的幫助和鼓舞,同時希望大家提出文章的不足與疏漏之處!

Copyright © Linux教程網 All Rights Reserved