配置QT Mingw & opencv

可以直接从这里下载别人构建好的

https://github.com/huihut/OpenCV-MinGW-Build

--------------------------------------------------------------------------

1、下载并安装QT5.12或更高版本,勾选MingW x64

2、把qt bin目录加入PATH:

C:\Qt\Qt5.12.1\5.12.1\mingw73_64\bin

C:\Qt\Qt5.12.1\Tools\mingw730_64\bin

3、下载opencv4.0或更高版本,解压为 D:\software\opencv\sources

4、下载CMake3.14或更高版本,安装时选择把bin目录加入PATH

5、安装python2.7.16,安装时选择把bin目录加入PATH

6、安装JDK1.8

7、启动CMake,输入源代码和构建目录:

源代码目录:D:\software\opencv\sources

构建目录:D:\software\opencv\build

点击左下角的Configuration按钮,选择构建模式为MingGW makefiles,选择 Native Compiler,选择C和C++编辑器的位置:

C:\Qt\Qt5.12.1\Tools\mingw730_64\bin\gcc.exe

C:\Qt\Qt5.12.1\Tools\mingw730_64\bin\g++.exe

然后等待配置。

8、配置完成后,勾选WITH_OPENGL和WITH_QT两项,选择CMAKE_BUILD_TYPE为Release,再次configure。

9、正式开始构建

cd D:\software\opencv\build

mingw32-make -j 8

mingw32-make install

-------------------------------------------------------------------------------------------------

新建一个QT项目,修改.pro文件,加入:

INCLUDEPATH += D:\software\OpenCV-MinGW-Build-OpenCV-4.0.1-x64\include

LIBS += D:\software\OpenCV-MinGW-Build-OpenCV-4.0.1-x64\x64\mingw\bin\libopencv_core401.dll
LIBS += D:\software\OpenCV-MinGW-Build-OpenCV-4.0.1-x64\x64\mingw\bin\libopencv_highgui401.dll
LIBS += D:\software\OpenCV-MinGW-Build-OpenCV-4.0.1-x64\x64\mingw\bin\libopencv_imgproc401.dll
LIBS += D:\software\OpenCV-MinGW-Build-OpenCV-4.0.1-x64\x64\mingw\bin\libopencv_calib3d401.dll
LIBS += D:\software\OpenCV-MinGW-Build-OpenCV-4.0.1-x64\x64\mingw\bin\libopencv_imgcodecs401.dll
LIBS += D:\software\OpenCV-MinGW-Build-OpenCV-4.0.1-x64\x64\mingw\bin\libopencv_videoio401.dll

 

修改main.cpp,如下:

#include "widget.h"
#include <QApplication>

#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>

using namespace cv;
using namespace std;

int main(int argc, char *argv[])
{
    Mat image = imread("C:\\Users\\Administrator\\Desktop\\1.bmp", 0);
    namedWindow("image");
    imshow("image", image);

    Mat contours;
    Canny(image,    //灰度图
        contours,   //输出轮廓
        125,    //低阈值
        350);   //高阈值

    //因为正常情况下轮廓是用非零像素表示 我们反转黑白值
    Mat contoursInv;    //反转后的图像
    threshold(contours,
        contoursInv,
        128,    //低于该值的像素
        255,    //将变成255
        THRESH_BINARY_INV);
    namedWindow("contoursInv");
    imshow("contoursInv", contoursInv);

    waitKey(0);
    return 0;
}

 

转载于:https://www.cnblogs.com/lavezhang/p/10507960.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值