python - Caffe没有在python中导入
问题描述
Ubuntu 18.04
蟒蛇 2.7
我的问题是我无法在 python 中导入 caffe 模块,即使我已经安装了它。我相信这是一个路径/环境变量问题。
rivaldo4t@Rivaldo-OS3:~$ python
Python 2.7.15rc1 (default, Nov 12 2018, 14:31:15)
[GCC 7.3.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import caffe
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named caffe
正如从这里提到的,我运行了sudo apt install caffe-cpu
安装预编译 Caffe 的命令,它成功了。当我在终端输入 caffe 时,我得到类似
rivaldo4t@Rivaldo-OS3:~$ caffe
caffe: command line brew
usage: caffe <command> <args>
commands:
train train or finetune a model
test score a model
device_query show GPU diagnostic information
time benchmark model execution time
这意味着 caffe 安装正确。如前所述,我尝试将PYTHONPATH
变量设置为 Caffe 安装目录的位置。所以我做了这个,
rivaldo4t@Rivaldo-OS3:~$ which caffe
/usr/bin/caffe
当我尝试运行 echo $PYTHONPATH 时,它显示为空(我仍然不知道为什么)。然后我尝试使用更新路径
caffe_root = '/usr/bin/caffe/python'
import sys
sys.path.insert(0, caffe_root)
所以现在我在打印 sys.path 时得到了这个 -
rivaldo4t@Rivaldo-OS3:~$ python -c 'import sys; print(sys.path)'
['', '/home/rivaldo4t', '/usr/bin/caffe/python', '/usr/lib/python2.7', '/usr/lib/python2.7/plat-x86_64-linux-gnu', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload', '/home/rivaldo4t/.local/lib/python2.7/site-packages', '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages']
但我仍然无法在 python 中导入 caffe。我注意到的另一件事是 /usr/bin/caffe 不是目录,如果不在这里,我无法理解 caffe 安装在哪里。
任何帮助表示赞赏。谢谢
解决方案
当你在 ubuntu 上使用 安装 caffe 时sudo apt install caffe-cpu
,它只编译 python 3 的绑定 ( _caffe.cpython-36m-x86_64-linux-gnu.so
),它位于/usr/lib/python3/dist-packages/caffe/
. 所以简短的回答是改用python 3。
长答案是使用 python 2 绑定从源代码编译 caffe。
推荐阅读
- swift - Firebase 数据库不会快速存储(写入)数据
- python - 使用 Python 进行异步和等待
- swift - 使用常量设置 UILabel 的文本
- python - 尝试在 Python 中反转输出
- google-sheets - 谷歌表格数组公式sumifs重复数组中所有值的第一个值
- python - 从验证码中删除曲线
- javascript - 使用 JSX 时必须在范围内获取“React”
- ruby-on-rails - rake 资产预编译时出现 capistrano 3 错误
- javascript - 将文件从 Firebase Cloud Functions 上传到存储时的代码 16
- python - 在 Python 中出现(非零)需求的前两个时期之间的时期数