Qt 5.7编译minGW版本OpenCV

qtopencv

之前用Python调用过OpenCV,但是感觉还是在C++上OpenCV才会比较给力,但是OpenCV的windows版本只提供VS编译器的库,并不提供minGW提供的库,因此如果下载的是minGW版本的Qt则需要自己手动编译OpenCV才行。经过了一晚上的折腾,终于将minGW版本的OpenCV编译完成。

开始之前需要下载OpenCV和CMake:

  • OpenCV下载地址:OpenCV
  • cmake下载地址:CMake

注意:在QT 5.7下,OpenCV应该下载V 3.1版本,V 3.2版本会编译失败。

安装CMake时,设置将CMake添加到系统环境变量中:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

之后选择路径时,路径中不能有空格和中文字符:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

安装好之后,打开Qt Creator,选择“工具(T)”->“选项(O)”,找到“构建和运行”下的CMake,应该可以看到下面的内容:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

表示Qt找到了CMake,下面将下载好的OpenCV Version 3.1解压,在我的电脑上直接拷贝到D盘根目录下:D:\opencv,并在Qt中打开项目中选择D:\opencv\sources\CMakeLists.txt,Qt会自动调用CMake解析CMakeLists.txt:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

等待Configuring结束之后,进入“项目”中的CMake,找到CMAKE_INSTALL_PREFIX项目设置路径为:D:/opencv/install,同时拖动右侧滑块,取消BUILD_opencv_python2和BUILD_opencv_python3项,并选择WITH_OPENGL和WITH_QT项:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

修改完成之后,点击“Apply Configuration Changes”。点开“构建步骤”的“详情”,勾选install:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

之后按快捷键“Ctrl+B”开始构建,在“编译输出”窗口可以看到编译进度:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

大约经过一段时间的编译,就可以看到进程正常退出的标记:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

打开D:\opencv\install,可以看到已经生成的OpenCV的组件,在正式使用之前,还需要将D:\opencv\install\x86\mingw\bin该路径添加到系统环境变量中:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

打开Qt,新建一个项目,在项目的pro文件中增加:

回到cpp文件中#include <cv.h>,则在main函数中输入cv::会出现自动补全对话框:

QT 5.7编译minGW版本OpenCV

QT 5.7编译minGW版本OpenCV

到此,OpenCV在Qt 5.7下minGW编译器中的配置全部完成。

一条评论

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Are you human? Click the Grapes...