安装Caffe的Python wrapper时出现问题的解决方法

本文介绍在搭建Caffe深度学习框架过程中遇到的依赖库安装问题及解决方案,特别针对Cython、scikit-image和scipy等库的安装难题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在caffe-master目录下执行

 $make pycaffe 

如果提示不能make pycaffe,可以先执行

$make clean 

(以上步骤也可以放在最后进行)

 


安装其他的库需要的只是执

$ sudo pip install-r /path/to/caffe/python/requirements.txt  

其中包括

Cython>=0.19.2

h5py>=2.2.0

ipython>=1.1.0

leveldb>=0.191

matplotlib>=1.3.1

networkx>=1.8.1

nose>=1.3.0

numpy>=1.7.1

pandas>=0.12.0

protobuf>=2.5.0

python-gflags>=2.0

scikit-image>=0.9.3

scikit-learn>=0.14.1

scipy>=0.13.2

 

但是我在安装中碰到了一些问题,导致无法正确安装,因此,我是在后续的程序运行中遇到了需要的库再独立安装,主要问题出现在Cython,scikit-image和scipy上

 1.Cython需要在scikit-image之前安装

$ sudo pip installcython 

(python缺少的库都可以用pip install安装)

这里出现了第一个问题:

File"/usr/local/lib/python2.7/dist-packages/setuptools/command/install_egg_info.py",line 5, in

fromsetuptools.archive_util import unpack_archive

File"/usr/local/lib/python2.7/dist-packages/setuptools/archive_util.py",line 15, in

from pkg_resourcesimport ensure_directory, ContextualZipFile

ImportError:cannot import name ContextualZipFile

 

 经过了千辛万苦翻墙搜索后得到了解决方法

这个问题实际上是处在setuptools上,从上面的traceback中也可以发现,一位友好的国际友人提供了修改过的setuptools安装包 setuptools-5.4.1.zip

(https://bitbucket.org/pypa/setuptools/issue/234/setuptools-import-error-of-class)

 

解压之后在目录中执行

$ sudo pythonsetup.py install 

即可安装。

安装完后,上述问题顺利解决,遇到第二个错误提示:

 

File"/usr/lib/python2.7/dist-packages/pkg_resources.py", line 594, in resolve 

raiseDistributionNotFound(req)

pkg_resources.DistributionNotFound:distribute

 

解决方法是:安装distribute包

$ wgethttp://python-distribute.org/distribute_setup.py 

$ pythondistribute_setup.py 

(http://stackoverflow.com/questions/19400370/easy-install-and-pip-broke-pkg-resources-distributionnotfound-distribute-0-6)

 

2.安装scikit-image

$sudo pip installscikit-image 

提示的错误是:

ImportError: Youneed `six` version 1.3 or later.

 

尝试了

$sudo pip installsix 

发现已经安装了,那么问题就是版本没到1.3以上

解决方法:

$sudo pip installsix==1.3 

 

3.安装scipy

$sudo pip installscipy 

错误提示: building 'dfftpack' library

error: librarydfftpack has Fortran sources but no Fortran compiler found

也就是没有安装gfortran编译器

解决方法:

$sudo apt-getinstall gfortran 

一般来说这里是可以直接解决的,但是由于网络原因,提示404 not found,在尝试了多种方法后都没有解决。

观察运行过程,发现需要安装的包括:

gfortran-4.7_4.7.3-1ubuntu1_amd64.deb

gfortran_4.7.3-1ubuntu10_amd64.deb

libgfortran-4.7-dev_4.7.3-1ubuntu1_amd64.deb

从Google上搜索可以很容易找到下载,下载后

$sudo dpkg -i*.deb 

即可安装,这三个包有前置关系,安装时注意看提示即可。

### 如何在 PyCharm 中配置和安装 Caffe 深度学习框架 #### 安装依赖库 为了成功编译并运行Caffe,在开始之前需确保已安装必要的依赖项。这通常包括BLAS库(如ATLAS, OpenBLAS 或者 MKL),Boost,Protocol Buffers以及其他一些工具和库[^1]。 对于Ubuntu系统来说,可以通过下面命令来获取大部分所需软件包: ```bash sudo apt-get update && sudo apt-get install -y \ cmake git wget vim libatlas-base-dev libleveldb-dev \ libsnappy-dev libhdf5-serial-dev protobuf-compiler \ --no-install-recommends && \ cd /tmp && \ wget http://contrib downloads.gnome.org/sources/pygobject/3.20/pygobject-3.20.2.tar.xz && \ tar xf pygobject-3.20.2.tar.xz && \ cd pygobject-3.20.2 && \ ./configure --prefix=/usr/local && \ make -j"$(nproc)" install ``` #### 下载与构建Caffe 下载官方版本的Caffe源码,并按照说明文档中的指示完成编译过程。如果想要加速GPU上的计算,则还需要额外设置CUDA支持。具体操作如下所示: ```bash # Clone the caffe repository from GitHub. git clone https://github.com/BVLC/caffe.git cd caffe # Install CUDA Toolkit and cuDNN according to NVIDIA's official guide. # Configure Makefile.config before compilation. cp Makefile.config.example Makefile.config # Uncomment these lines if you have GPU support enabled: # USE_CUDNN := 1 # WITH_PYTHON_LAYER := 1 make all -j"$(nproc)" make test -j"$(nproc)" make runtest -j"$(nproc)" # Build Python wrapper for interfacing with Caffe models. make pycaffe ``` #### 配置PyCharm项目结构 打开现有的目录作为新项目导入到IDE中;选择刚刚克隆下来的`caffe/python`文件夹路径即可。接着调整解释器选项以匹配当前环境中所使用的Python版本以及任何自定义环境变量。 进入Settings/Preferences对话框下的Project Interpreter页面,点击齿轮图标旁边的加号按钮添加新的虚拟环境或Conda Environment。当创建完成后记得勾选上关联至项目的复选框以便后续能够正常使用该解释器执行脚本。 最后一步就是确认所有必需模块都已经被正确加载进来——特别是numpy、scipy等科学计算类库。可以尝试编写简单的测试程序验证是否一切正常工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值