Win10系统html
Qt5.2.0ios
Opencv2.4.9vim
安装在D:\Qt\5.2.0文件夹(记为A文件夹)app
Qt下载地址:测试
http://download.qt-project.org/official_releasesui
http://ftp.vim.org/languages/qt/archive/qt/spa
http://download.qt.io/archive/qt.net
Opencv官网:https://opencv.org/code
下载Opencv 2.4.9htm
解压到:E:\opencv2.4\opencv\opencv(记为B文件夹)
我安装到了E盘
CMake下载地址: http://www.cmake.org/cmake/resources/software.html
注意路径中不能有空格和中文,在安装过程当中,勾选为全部用户加入到环境变量
opencv环境变量:(个人路径)
E:\opencv2.4\opencv\opencv\build\includeopencv
E:\opencv2.4\opencv\opencv\build\include\opencv2
E:\opencv2.4\opencv\opencv\build\include
qt环境变量:(mingw)
D:\Qt\5.2\mingw48_32\bin(cmake Generate用到)
D:\Qt\Tools\mingw48_32\bin (cmake Configure用到)
具体配置结果以下图:
首先,肯定一个目标文件夹位置:这里选择 D:/programFiles/opencv2.4
Where is the source code: E:/opencv2.4/opencv/opencv/sources
Where to build the binaries: D:/programFiles/opencv2.4
而后,点击Configure,在弹出的框中选择MinGW Makefiles ,并勾选 Specify native compilers.
接着配置C和C++编译器路径:
C: D:\Qt\5.2\mingw48_32\bin\gcc.exe
C++: D:\Qt\5.2\mingw48_32\bin\g++.exe
点击finish开始配置
若是报错,说明D:\Qt\Tools\mingw48_32\bin
没加到PATH中
这时,会在目标目录下生产一些文件。cmake界面出来了一些可选项勾选QT和OPENGL,其余不用改,再次点击Configure。若是报错,说明D:\Qt\5.2\mingw48_32\bin
没加到PATH中
注意: 必定要勾选WITH_QT 和 WITH_OPENGL
点击Generate,成功后,底下会提示Generating done
这时,在D:/programFiles/opencv2.4
文件夹下会生成一系列文件Makefile相关
而后,安装shift,右键鼠标,打开cmd,输入mingw32-make
命令
会花比较长的时间进行这个编译过程。
编译完成之后,输入mingw32-make intall
命令
这个过程很快就会完成。
最后,选择一个文件夹做为最终文件的存放地址:这里选择E:\opencvForQt
文件夹。
须要作如下工做:
E:\opencvForQt中
E:\opencvForQt中
E:\opencvForQt中
在pro文件夹中加入如下配置说明:
INCLUDEPATH+=E:\opencvForQt\include INCLUDEPATH+=E:\opencvForQt\include\opencv INCLUDEPATH+=E:\opencvForQt\include\opencv2 LIBS += -L E:\opencvForQt\lib\libopencv_*.a
完整配置:
QT += core QT -= gui TARGET = testOpencv CONFIG += console CONFIG -= app_bundle TEMPLATE = app SOURCES += main.cpp INCLUDEPATH+=E:\opencvForQt\include INCLUDEPATH+=E:\opencvForQt\include\opencv INCLUDEPATH+=E:\opencvForQt\include\opencv2 LIBS += -L E:\opencvForQt\lib\libopencv_*.a
在main.cpp中修改:
对文件名进行修改便可进行测试。
#include <QCoreApplication> #include <opencv2/opencv.hpp> #include <iostream> using namespace cv; int main() { Mat image; image = cv::imread("K:/QTtest/untitled/1.bmp"); if(image.empty()) return 1; imshow("image", image); waitKey(0); }