解决“ImportError: cannot import name 'imresize'”

17 篇文章 0 订阅
6 篇文章 1 订阅

1. 问题描述

如题,Python代码报错,其完整错误信息如下:

from scipy.misc import imresize
ImportError: cannot import name 'imresize'

在某些情形下,可以通过安装Pillow(命令:pip install pillow)来解决,然而自己的环境中已经安装了Pillow却还是报上述错误,那么应该是别的原因引起的。



2. 原因分析

通过查找资料得知,imresize已经被最新版本的SciPy库所弃用,而自己报错的Python环境的SciPy库版本为1.3.0,这也正是出现上述问题的原因。

imresize is deprecated! imresize is deprecated in SciPy 1.0.0, and will be removed in 1.3.0.


---- from https://docs.scipy.org/doc/scipy-1.2.0/reference/generated/scipy.misc.imresize.html



3. 解决方法

换一种写法,通过numpy来实现,import语句如下所示(当然,仍然需要依赖Pillow库,可以用语句pip install pillow进行安装):

from PIL import Image
import numpy as np

imresize使用示例(被注释的第一行是基于scipy库的写法,第二行是基于numpy的写法):

# im = imresize(im, (h, int(w * aspect_ratio)), interp='bicubic')
im = np.array(Image.fromarray(im).resize((h, int(w * aspect_ratio))))


参考资料:

  • https://docs.scipy.org/doc/scipy-1.2.0/reference/generated/scipy.misc.imresize.html
  • https://github.com/junyanz/pytorch-CycleGAN-and-pix2pix/issues/652
  • 23
    点赞
  • 41
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值