opencv 与qt,opencv与vs

搭建opencv+vs环境,实现第一个opencv窗口测试。
属性页面下:
在Vc++ 目录->包含目录->添加一下目录:
D:\opencv3\opencv\build\include
D:\opencv3\opencv\build\include\opencv   //新版本没有cv  只有cv2
D:\opencv3\opencv\build\include\opencv2

添加库目录:
D:\opencv3\opencv\build\x64\vc15\lib

链接器->常规->附加库目录:
D:\opencv3\opencv\build\x64\vc15\lib    //没有这一步会出现opencv_world430d.lib无法打开


链接器->输入->附加依赖项:opencv_world430d.lib

INCLUDEPATH +=C:\newapp\opencv\opencv\build\include\
              C:\newapp\opencv\opencv\build\include\opencv2\

LIBS +=C:\newapp\opencv\opencv\build\x64\vc15\lib\opencv_world430d.lib

q下使用opencv(使用msvc)
1.配置环境变量
msvc:
C:\newapp\opencv\opencv\build\bin
C:\newapp\opencv\opencv\build\x64\vc15\bin
C:\newapp\opencv\opencv\build\x64\vc15\lib
mingw:(没有验证)
C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\x64\mingw\bin


配置opencv
在pro文件中添加一些东西,根据自己选择的编译器,来添加,这里换成自己安装的路径-----太麻烦了未使用
MSVC:
INCLUDEPATH +=C:\OpenCV_s\opencv_vc\opencv\build\include\
              C:\OpenCV_s\opencv_vc\opencv\build\include\opencv\
              C:\OpenCV_s\opencv_vc\opencv\build\include\opencv2

LIBS +=C:\OpenCV_s\opencv_vc\opencv\build\x64\vc15\lib\opencv_world3414.lib 
或 C:\OpenCV_s\opencv_vc\opencv\build\x64\vc15\lib\opencv_world3414d.lib
注意: opencv_world3414d.lib 为debug版,opencv_world3414.lib为release版
mingw:
INCLUDEPATH+= C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\include\
              C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\include\opencv\
              C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\include\opencv2
LIBS+=C:\OpenCV_s\OpenCV-MinGW-Build-OpenCV-3.4.8-x64\x64\mingw\bin\libopencv_*.dll


创建pri文件,将下方内容写入,同样设置为自己安装的路径,文件可以放在任何位置,但建议放在安装OpenCV的路径下,方便自己查找.

INCLUDEPATH += C:/newapp/opencv/opencv/build/include
Debug: {
    LIBS += -lC:/newapp/opencv/opencv/build/x64/vc15/lib/opencv_world430d
}
Release: {
    LIBS += -lC:/newapp/opencv/opencv/build/x64/vc15/lib/opencv_world430
}

注意:
反斜杠与斜杠的区别,否则会导致找不到头文件
以及路径不要多写.lib (例如:-lC:/newapp/opencv/opencv/build/x64/vc15/lib/opencv_world430d.lib)

之后在项目pro文件中添加下面这一行即可:
include(c:/newapp/opencv/opencv.pri)

此时还是遇到了一个问题 找不到头文件:
 error: dependent '..\..\..\..\..\..\Qt\5.14.2\msvc2017\include\QtWidgets\QMainWindow' does not exist.
 
 官方文档在pro中添加如下内容生效:
 QMAKE_PROJECT_DEPTH = 0
 
 进行简单测试,运行成功
 #include <QCoreApplication>
#include"opencv2/opencv.hpp"

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    // Set up code that uses the Qt event loop here.
    // Call a.quit() or a.exit() to quit the application.
    // A not very useful example would be including
    // #include <QTimer>
    // near the top of the file and calling
    // QTimer::singleShot(5000, &a, &QCoreApplication::quit);
    // which quits the application after 5 seconds.
    // If you do not need a running Qt event loop, remove the call
    // to a.exec() or use the Non-Qt Plain C++ Application template.
    using namespace  cv;
    Mat image=imread("D:/photo/sh.jpg");
    imshow("Output",image);
    return a.exec();
}


 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值