QT中更换OPENCV版本(3->4),以及一些宏定义的改变

1、换版本

之前使用的是3.4.3,由于需要用到DNN的一些东西,更换版本为4.5.3。想着不就是编译一下opencv,是然后改一下.pro的include和Lib的路径嘛。谁知道折腾了几天,今天终于搞定了,虽然DNN的问题没解决,至少是体验了一把换opencv的版本,网上不好查到相关资料,我就写一下,本人对linux系统的机制不太熟悉,但是下面的都是亲测好用的经验。

3.4.3的opencv安装在了常见的/usr/local下面,新安装的opencv4.5.3安装在/usr/local/opencv4.5.3下面。

首先说一下,Opencv4.5.3的编译过程无比顺利,终于不用改源码了!!比opencv3.4.3省事儿。

在配置cmake的时候,使用的配置在我之前的文章中有,需要的可以直接复制获取并更改,在第5节的最下面。

空卡安装设置树莓派4B并安装opencv+QT_MAUM的博客-CSDN博客

安装后可以即可。虽然我在这配置中打开了PKG_CONFIG的选项,但是并没有生成pkgconfig文件夹,不知道为什么,但是不影响。

然后需要添加库的路径:

sudo nano /etc/ld.so.conf

把库的lib路径加进去 :/usr/local/opencv4.5.3/lib

然后执行:

sudo ldconfig  

在QT工程的.pro文件中还需要将include和lib的路径更改为最新的路径。

但是有一点很细微的东西!!!

/usr/local/include文件中有opencv和opencv2的头文件,如果.pro的include中还有这个路径,那依然回报错,因为编译器先找的是这个路径,然后就会提示一大堆undefined的symbol。如果你不需要/usr/local中安装的库还好,要是需要的话,这个问题是无法避免的,因此,需要将这个路径下的opencv 和 opencv2文件夹的名字改一下,让编译器找不到老版本的头文件,自然就会接着往下找你的/usr/local/opencv4.5.3/include下的头文件。另外,.pro文件中的include应该包含/usr/local/opencv4.5.3/include/opencv4以及/usr/local/opencv4.5.3/include (至少我这样是对的)。

2、宏定义的改变

相机参数读取的宏定义:

CV_CAP_PROB_XXX等这些都改为:CAP_PROB_XXX

颜色变换的CV_BGR2RGB等都改为:COLOR_BGR2RGB

其他的变化可以自行在官网上查找。先确定这个宏是哪个module里的,然后找到相关的类,点进去第一个就是枚举的宏定义:

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值