如何修复“-scipy.misc 没有属性“imresize””
Posted
技术标签:
【中文标题】如何修复“-scipy.misc 没有属性“imresize””【英文标题】:How to fix "-scipy.misc has no attribute "imresize"" 【发布时间】:2019-10-05 21:10:31 【问题描述】:我有一些来自我朋友的代码。 他跑得很顺利,我却遇到了
module **scipy.misc** has no attribute *imresize*
我正在搜索,安装了 Pillow (PIL)、scipy、scikit,.. 但不工作
我问了我的朋友,但他忘记了他安装了什么。
【问题讨论】:
【参考方案1】:安装 scipy(1.2.2) 这将起作用。
pip install scipy==1.2.2
如果还是不行 --> 安装枕头
pip install Pillow
scipy.misc.imresize - 调整图像大小 [需要 Pillow]
或
help('scipy.misc.imresize')
scipy.misc.imresize = imresize(*args, **kwds)
`imresize` is deprecated!
`imresize` is deprecated in SciPy 1.0.0, and will be removed in 1.3.0.
Use Pillow instead: ``numpy.array(Image.fromarray(arr).resize())``.
Resize an image.
This function is only available if Python Imaging Library (PIL) is installed.
【讨论】:
【参考方案2】:这对我有用:
pip install scipy==1.2.2
【讨论】:
【参考方案3】:scipy.misc.imresize 已弃用。
有两种选择
正如@Bickknght 所指出的,我们可以使用 PIL (Pillow) 库。
from PIL import Image
numpy.array(Image.fromarray(arr).resize())
使用 Skimage
from skimage.transform import resize
from skimage import data
image = data.camera()
resize(image, (100, 100))
【讨论】:
【参考方案4】:如果您从scipy
的许多最新版本中查看the documentation for scipy.misc.imresize
,您会在顶部找到以下行:
imresize
已弃用!imresize
在 SciPy 1.0.0 中已弃用,并将在 1.3.0 中删除。请改用 Pillow:numpy.array(Image.fromarray(arr).resize())
。
1.3.0 版本是昨天发布的,所以如果您今天在系统上下载了scipy
,您可能已经获得了新版本,它将无法再访问该功能。我在上面引用的文档建议了一个代码片段(使用numpy
和PIL
),它应该可以作为替代方案。
【讨论】:
您建议的代码中的Image
是什么?我需要从某个地方导入它吗?
Image
是 PIL
的主要模块(又名 fork Pillow
)。使用from PIL import Image
。
或者安装以前可用的版本,但我不推荐,除非没有其他办法-pip uninstall scipy
,pip install scipy==1.2.2
以上是关于如何修复“-scipy.misc 没有属性“imresize””的主要内容,如果未能解决你的问题,请参考以下文章