一个看似很简单的问题,折腾了我好久,今天恍然大悟,当然是自己太low,理解不够深入。
作为一个业余的小白,半年前配置了ubuntu 16.04 +CUDA8.0 +caffe+opencv 2.13 +CUDNN5.1环境,并顺利的跑通了SSD、FlowNet2.0等深度学习框架,当然东查西查也花了很久时间,然后就在此环境基础上用的很顺利,前几天不小心删除了和输入法相关的ibus,然后系统就出问题,半天也没能解决,于是我很有自信的重装了个系统,然而一切并没有那么顺利......
在调用以前的python文件,运行会出以下问题:ImportError: No module named _caffe,然后我重新编译了下项目,比如我的项目路径为:~/flownet-caffe-master,在终端进入该目录,清理并重新编译项目:
make clean make all -j4 make test -j4
下面这一步操作可选:
make runtest -j4
运行程序出现问题如下:
解决办法:
首先在项目路径下进入终端并执行:
sudo make pycaffe
注意:每次重新编译了caffe后都需要执行:sudo make pycaffe
然后添加项目caffe路径到环境变量:
方法一:(一次性)
直接在终端输入:(注意改为你的项目路径)
PYTHONPATH=/media/rongsong/3082E76F580983D6/ubnutu/Downloads/flownet2-master/python
这种方法是一次性的,关闭终端再打开时更改就失效了。
方法二:(永久)
在终端执行:
sudo gedit ~/.bashrc
在打开的文件后面添加:
export PYTHONPATH=/media/rongsong/3082E76F580983D6/ubnutu/Downloads/flownet2-master/python:$PYTHONPATH
使更改环境立刻生效,在终端输入:
source ~/.bashrc
如果在python代码里面出现ImportError: No module named cv2,尝试在终端下执行:
sudo apt-get install python-opencv