Anaconda使用问题:OpenCV包的配置

在Anaconda环境中,OpenCV在Tensorflow下正常工作,但在Caffe下遇到undefined symbol错误,可能由于版本不匹配。解决方案包括:通过conda安装特定版本的OpenCV,或者替换为自编译的OpenCV库。替换步骤涉及备份OpenCV库,修改pkgconfig文件,替换cv.py和cv2.so,并处理可能出现的Segmentation fault错误。
摘要由CSDN通过智能技术生成

使用Conda指令安装的opencv能在tensorflow下正常使用,但是到了Caffe下面,import Caffe的过程中可能会提示undefined symbol错误,看到错误提示含有imencode的字样,因此可能是OpenCV的版本不匹配的原因。

一个可行的办法就是替换OpenCV的版本,目前新版的conda中已经有了完善的版本,可以使用conda search opencv来查找支持的版本,如果要选择安装其中一个版本(如2.4.9),可以使用如下的指令:

conda install opencv=2.4.9

另一个可行的方案是将Anaconda下面的OpenCV替换成自己编译的OpenCV库。

修改的方式如下:

假设Anaconda的安装路径是 /anaconda2,那么

1. 将/anaconda2安装路径下opencv相关的库移至其他地方,可使用的指令是:

mkdir ../backupPathOpenCVLibs

mv libopencv* ../backupPathOpenCVLibs

2. 修改/anaconda2/lib/pkgconfig文件夹下OpenCV包的指向文件 opencv.pc。

原文件定义:

prefix=
exec_prefix=${prefix}
libdir=
includedir_old=${prefix}/include/opencv
includedir_new=${prefix}/include

...
可以将prefix修改为自己的OpenCV路径。

3. 这时如果在Anaconda的python环境下测试会发生cv2.so的错误。因为还需要替换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值