QT5.9.0配置opencv

博主想用OpenCV处理内容,按教程CMake无法通过,经排查是QT与编译过的OpenCV版本兼容性问题。下载编译过的OpenCV 3.4.1,添加环境变量和文件路径后编译仍出错,最终将相关.dll文件放到Build中解决问题。

最近一直想用OPENCV处理写东西,可是按照各种教程CMAKE一直不能通过,所以,有点郁闷,今天有针对性的差了一些资料,果然应该是QT与编译过得opencv版本是否兼容的问题;
幸好,查到了加号君的这篇1,所以试了一下从github下载编译过得opencv3.4.1;
2.在环境变量中添加这一条:
高级系统设置->环境变量->Path中添加D:\OpenCV-MinGW-Build-OpenCV-3.4.1\bin
然后再.pro中加入文件路径,

INCLUDEPATH+=D:\OpenCV-MinGW-Build-OpenCV-3.4.1\include
             D:\OpenCV-MinGW-Build-OpenCV-3.4.1\include\opencv
             D:\OpenCV-MinGW-Build-OpenCV-3.4.1\include\opencv2
LIBS+=D:\OpenCV-MinGW-Build-OpenCV-3.4.1\bin\libopencv_*.dll

然后编译,发现Debug出错During startup program exited with code ,换Release也不行,因此专门针对它查了一下,发现了解决办法,然后把D:\OpenCV-MinGW-Build-OpenCV-3.4.1\bin中的.dll放到Build中,重新运行发现可以了!!!

### 如何在 QT 5.9.0 中部署和配置 OpenCV #### 准备工作 为了成功地在 QT 5.9.0 集成并使用 OpenCV 库,需先完成必要的准备工作。这包括下载并安装最新版本的 OpenCV 和确保已正确设置环境变量[^1]。 #### 下载与构建 OpenCV 对于 Windows 用户来说,可以从官方网站获取预编译好的二进制文件;而对于 Linux 或 macOS 用户,则建议通过源码自行编译以获得最佳兼容性和性能优化。如果选择后者,在编译过程中记得启用 CMake 的 `WITH_QT` 选项来支持图形界面功能。 #### 创建 Qt 工程 启动 Qt Creator 并新建一个基于 C++ 的应用程序工程。接着利用命令行工具进入该工程所在的 cpp 目录执行以下操作: ```bash qmake -project qmake make ``` 上述指令会创建 `.pro` 文件以及相应的 Makefile 来管理整个项目的依赖关系和编译流程[^2]。 #### 修改 pro 文件 编辑生成后的 `.pro` 文件,加入指向本地安装路径下的 OpenCV 头文件夹及库文件位置的信息。具体做法是在文件末尾追加如下几行代码片段: ```plaintext INCLUDEPATH += /path/to/opencv/include \ LIBS += -L/path/to/opencv/lib \ -L/path/to/qt/plugins/imageformats \ -lopencv_core -lopencv_imgproc -lopencv_highgui ... ``` 注意替换 `/path/to/...` 为实际存在的绝对路径,并根据需求调整所链接的具体模块名称[^3]。 #### 编写测试程序验证集成效果 最后编写一段简单的图像处理代码用于检验两者是否能够协同工作良好。下面给出了一段读取图片显示窗口的例子作为参考: ```cpp #include <QApplication> #include "opencv2/highgui.hpp" int main(int argc, char *argv[]) { QApplication a(argc, argv); cv::Mat image; image = cv::imread("example.jpg", cv::IMREAD_COLOR); // Read the file if(image.empty()) { qDebug() << "Could not open or find the image"; return -1; } cv::namedWindow( "Display window", cv::WINDOW_AUTOSIZE );// Create a window for display. cv::imshow( "Display window", image ); // Show our image inside it. while (cvWaitKey(33) != &#39;q&#39;) {} return a.exec(); } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值