新版的scipy.misc库中不再包含imread、imresize、toimage等的解决办法

最近在看《21个项目玩转深度学习》,书里提供的源代码用到了scipy.misc.imresize()等函数,而1.3.0版本以后的scipy库中已经不再包含imread、imresize、toimage等函数。本文提供了基于python2.7的windows和CentOS系统下的两种解决办法,除了安装1.2.3版本的scipy库,还需要安装PIL。

 

  • windows系统python2.7的PIL库安装

系统配置:windows XP系统 | python版本2.7.17 | pip版本19.2.3 | numpy版本1.16.6 | scipy版本1.2.3

调用scipy.misc.imresize会报错:'module' object has no attribute 'imresize'

解决办法:

去http://www.pythonware.com/products/pil/下载PIL-1.1.7.win32-py2.7.exe,安装完成后即可

 

  • CentOS系统python2.7的PIL库安装

在阿里云申请了一个GPU服务器,从镜像市场选择CentOS 7.3(预装NVIDIA GPU驱动和深度学习框架) V1.0生成实例

系统配置:CentOS7.3系统64bit | python版本2.7.5 | pip版本9.0.1 | numpy版本1.13.3 | scipy版本1.2.3

PIL安装方法:

下载PIL源码:

wget -c http://effbot.org/media/downloads/PIL-1.1.7.tar.gz

解压: 

tar xvfz PIL-1.1.7.tar.gz

下载并解压成功之后,到解压目录,找到 setup.py 这个文件,修改下面几行代码(默认TCL_ROOT的设置为NONE,这里要传到系统库的路径才行):

TCL_ROOT = "/usr/lib64/"
JPEG_ROOT = "/usr/lib64/"
ZLIB_ROOT = "/usr/lib64/"
TIFF_ROOT = "/usr/lib64/"
FREETYPE_ROOT = "/usr/lib64/"
LCMS_ROOT = "/usr/lib64/"

再进行安装前的检查:

cd PIL-1.1.7/
python setup.py build_ext -i

可能会报错:

fatal error: Python.h: No such file or directory
error: command 'gcc' failed with exit status 1

解决办法,安装下面的库:

yum install python-devel
yum install -y freetype freetype-devel
yum install libjpeg libjpeg-devel
yum install python-imaging

还可以安装下面的库,但我安装的时候报错,而且并不影响使用:

sudo yum install libX11-devel
yum install zlib zlib-devel 
yum install lcms lcms-devel

重新进行安装前的检查:

python setup.py build_ext -i

不再报错后,进行最后的安装:

python setup.py install

 

参考:

https://blog.csdn.net/qq_37138818/article/details/83306367

https://blog.csdn.net/weixin_34072857/article/details/91416348

https://blog.csdn.net/tengdazhang770960436/article/details/80196794

你可能感兴趣的:(python,阿里云,centos)