乐闻世界logo
搜索文章和话题

How to link opencv in QtCreator and use Qt library

3 个月前提问
3 个月前修改
浏览次数7

1个答案

1

在QtCreator中配置并使用OpenCV是一个涉及多个步骤的过程,涉及到在Qt项目中正确设置包含路径、库路径和其他编译选项。以下是一个详细的指南,以在QtCreator中链接和使用OpenCV:

Step 1: 安装OpenCV

首先,你需要在你的机器上安装OpenCV库。你可以从OpenCV的官网下载预编译的二进制文件或者从源代码编译。如果你使用的是Windows,可以下载预编译的库;如果是Linux或Mac,通常建议从源代码编译以确保最佳兼容性。

Step 2: 创建Qt项目

在QtCreator中创建一个新的Qt Widgets Application。在创建过程中,选择合适的Qt版本和编译配置。

Step 3: 配置项目文件(.pro)

在QtCreator中打开你的项目文件(.pro 文件),然后添加必要的OpenCV库。你需要指定OpenCV的头文件目录和库目录。下面是一个配置示例,假设OpenCV安装在C:/opencv/build

pro
INCLUDEPATH += C:/opencv/build/include LIBS += -LC:/opencv/build/x64/vc15/lib \ -lopencv_core410 \ -lopencv_imgproc410 \ -lopencv_highgui410 \ -lopencv_imgcodecs410

注意:根据你的OpenCV版本和编译器,库的名称和路径可能有所不同。例如,上面的410代表OpenCV的版本是4.1.0,如果你的版本不同,需要相应调整。

Step 4: 编写代码

现在你可以开始在Qt项目中使用OpenCV了。以下是一个基本的例子,展示如何在Qt中读取一张图片并使用OpenCV进行处理,然后在Qt的QLabel中显示处理后的图片:

cpp
#include <QLabel> #include <QImage> #include <QPixmap> #include <opencv2/opencv.hpp> int main(int argc, char *argv[]) { QApplication app(argc, argv); // 使用OpenCV加载图片 cv::Mat image = cv::imread("path_to_image.jpg", cv::IMREAD_COLOR); if(image.empty()) return -1; // 将OpenCV的Mat转换为QImage QImage imgIn= QImage((uchar*) image.data, image.cols, image.rows, image.step, QImage::Format_RGB888); // 创建QLabel来显示图片 QLabel label; label.setPixmap(QPixmap::fromImage(imgIn)); label.show(); return app.exec(); }

Step 5: 编译和运行

在QtCreator中编译并运行你的应用程序。如果一切设置正确,你应该能看到你加载的图片在Qt应用程序中显示出来。

注意事项

  • 确保你的Qt和OpenCV都是用相同的编译器编译的,否则可能会遇到链接错误。
  • 在添加库文件时,确保路径和库版本号正确无误。

通过以上步骤,你应该能够在QtCreator中成功配置并使用OpenCV了。这个过程涉及到一些配置工作,但一旦设置完成,你就可以充分利用Qt和OpenCV强大的功能了。

2024年8月15日 11:35 回复

你的答案