Qt引用opencv(踩坑记录)

Qt引用opencv(踩坑记录)

1. 版本号以及参考文章

本文使用的Qt版本为 5.14.2
opencv版本为 4.5.4
opencv_contrib版本与上面一致为 4.5.4
cmake程序我选的是官网最新的

在引用过程中主要学习了以下几篇博客

主要参考了这篇文章,整体流程走下来最后能够成功运行cv程序

上面篇文章主要用来查缺补漏,解决一些引用过程中出现的bug

2. 个人踩坑指南

1. 在使用cmake编译之前需要将QT中编译的mgw的bin目录添加到系统环境变量
2. 在流程安装过程中 make install这一步出现了关于python相关的错误,需要将cmake时关于python相关的选项取消掉

我在两台电脑上都编译过,其中我自己的电脑可能下载过anaconda没有删干净产生了报错,但是在另一台电脑上可以正常走完流程

3. 关于Qt运行程序异常退出,运行exe文件后显示opencv相关dll不存在

编译完成之后需要将编译后的opencv文件x64下的bin目录添加到系统环境变量中

4. 运行exe程序后显示无法定位到程序开始位置相关错误

这个错误是我直接使用网上编译好之后的opencv库产生的,查看了exe应用的dll文件,发现opencv相关dll产生了爆红,可能是没有下载好有数据丢失或者编译器版本不一致导致的(最好使用自己电脑上的qt进行编译)

5. 使用32位编译器运行引用了64位编译器编译后的opencv文件在构建时会发生Qt程序循环构建卡死的情况

编译器与opencv位数相匹配

6. 构建Qt程序相关函数显示 not reference
  1. 出现上述错误可能是因为lib没有引用到位,我也没有搞懂具体的引用格式(使用网上的那种还是会报错)下面是我所使用的格式
INCLUDEPATH += ./include
#INCLUDEPATH += D:/Asoftware/opencv_install_qt5.14.2/include
#INCLUDEPATH += $$PWD\include\opencv_install\include

LIBS += $$PWD\include\MVCAMSDK_X64.lib
#LIBS += D:/Asoftware/opencv_install_qt5.14.2/x64/mingw/lib/libopencv_*.a
LIBS += $$PWD\include\opencv_install\x64\mingw\lib\libopencv_*.a
LIBS += -lOpengl32\
-lglu32

  1. 如果用错包也是会出现not reference错误的

    比如我在另一台电脑上引用自己电脑上编译好的opencv包,不管怎么填写路径构建程序都会提示not reference错误,甚至改了环境变量还是不行。最后意识到了然后引用回这台电脑上自身编译出来的库就行了(搞了半天结果不是路径的问题)【后面又想起来自己电脑编译出来的是32位的,而后面这台电脑的qt程序改为了64位所以不匹配】

安装opencv的过程可能会遇到一些问题,下面是一些在Ubuntu 18.04上安装opencv时可能会遇到的常见问题及解决方法的指南。 1. 缺少依赖项:在安装opencv之前,确保已经安装了必需的依赖项。这包括cmake、build-essential、libgtk2.0-dev、pkg-config和python3-dev等。可以使用以下命令安装它们: ``` sudo apt-get install cmake build-essential libgtk2.0-dev pkg-config python3-dev ``` 2. 版本冲突:如果你的系统中已经安装了ROS-melodic,并且ROS-melodic中已经自带了opencv-3.2.0版本,你可能需要手动编译和安装opencv-3.2.0来覆盖ROS-melodic中的版本。首先下载opencv-3.2.0和opencv_contrib-3.2.0的源代码,并切换到opencv-3.2.0/build目录。然后使用make和make install命令进行编译和安装: ``` cd ~/Downloads/opencv_install/opencv-3.2.0/build/ make sudo make install ``` 3. 其他问题:在安装过程中可能会遇到其他问题,例如编译错误或链接错误。这些问题通常可以通过在安装过程中查找错误消息并搜索解决方案来解决。可以查看相关的安装教程、论坛或社区提供的文档以获取更多帮助。 总结起来,安装opencv的过程可能会因为缺少依赖项或版本冲突而出现问题。确保安装了必需的依赖项,并根据需要手动编译和安装适当的版本来解决版本冲突。在遇到其他问题时,可以查找相关的资源以获取更多帮助和解决方案。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Ubuntu18.04安装opencv 3.2.0的解决方法](https://download.csdn.net/download/weixin_38637983/12842575)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [在ubuntu18.04中安装opencv_contrib-3.2.0采教程](https://blog.csdn.net/hiram_zhang/article/details/103467737)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值