window系统 QT 调用c++ opencv4.8
·
写这篇博客的目的
opencv作为计算机视觉领域通用算法库,是学习人工智能一个重要的算法库。网上的很多教程都是基于先安装opencv,然后再配置环境变量的形式来调用,对于初学者来说,过程有点繁琐。本教程是opencv免安装的方式进行调用,希望对大家有所帮助。
opencv 4.8所需要的库

1.win32_lib是所需要的库,里面有.a和dll

2.include是对应的头文件
QT集成opencv4.8
1.我用opencv4.8库是32位的,window下 QT的mingw编译器就可以支持。所以用QT新建工程的时候,要选择mingw32的编译器

新建完工程后,把对应的库放到新建的工程里,如下图:

2.pro文件加载.a
#加载所需要的动态库和头文件
OPENCV_LIB_PATH = $$PWD/opencv_lib/win32_lib
LIBS += $${OPENCV_LIB_PATH}/libopencv_world480.dll.a \
$${OPENCV_LIB_PATH}/libopencv_img_hash480.dll.a
INCLUDEPATH += $$PWD/opencv_lib/include
完整的pro文件如下:

3.运行工程
要让工程能正常运行,需要将libopencv_world480.dll和libopencv_img_hash480.dll拷贝到对应的exe生成目录下,比如的生成目录是build-OpencvTest-Desktop_Qt_5_14_2_MinGW_32_bit-Debug,就是将dll拷贝到对应的debug目录下

这里做集成,所以就只显示一个opencv的版本,表示opencv集成功能,代码如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "opencv2/opencv.hpp"
#include <iostream>
#include <QDebug>
using namespace std;
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
string version = cv::getVersionString();//获取opencv版本号
QString qVersion = version.c_str();
ui->lb_version->setText(qVersion);
}
MainWindow::~MainWindow()
{
delete ui;
}
代码运行功能后,会出现如下的界面,显示opencv的版本号4.8.0:

至此,opencv4.8.0顺利集成,后面就是正常使用opencv的功能了。
最后是QT对应的工程 OpencvTest,可以自行下载,里面也包含了对应的opencv库
更多推荐
所有评论(0)