在pycharm里使用anaconda环境的解释器import caffe

实验环境:系统Ubuntu16.04+禁用anaconda安装caffe,安装成功后再将anaconda放出来

由于系统内同时存在caffe、tf、pytorch的环境,anaconda的虚拟环境必不可少,tf pytorch各自conda了一个环境,caffe比较烦人,conda环境里经常import出错。这次正好需要用python调用caffe,pycharm又比较方面调试,所以用anaconda先为caffe创建了一个环境。

anaconda的环境经常遇到import caffe报错如下:

libcaffe.so.1.0.0: undefined symbol: _ZN6google4base21CheckOpMessageBuilder9NewStringB5cxx11Ev 

github里有对于这个问题的讨论,具体可见https://github.com/conda/conda/issues/7141 ,总结一下主要是protobuf 和libprotobuf等一些从不同路径安装的包不太兼容导致的,比如清华镜像和conda-forge这两个,就不要用了,caffe比较敏感不认的,要直接从defaults安装。

因此创建环境的时候也要用defaults路径

conda create -n caffe -c defaults python=2.7 

创建成功后激活该环境,所有caffe需要的支持包统统用-c defaults安装。必要的环境安装好之后,虚拟环境里调用一下caffe包,进入caffe/python路径下

python
import caffe

如果没有报错,那么anaconda里面caffe调用的虚拟环境就安装好了,如果需要用opencv,matplotlib等等的包可以统统安装在这个环境下,依然是使用defaults路径。
打开pycharm, 在setting里面的解释器选择我们conda的虚拟环境。对于需要import caffe的python文件,需要添加这样一句

import sys
sys.path.append("/caffe路径/python")
import caffe

这时候就可以顺利的导入caffe包来进行编程了。

猜你喜欢

转载自blog.csdn.net/elysion122/article/details/86662167