如何修复“-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,您可能已经获得了新版本,它将无法再访问该功能。我在上面引用的文档建议了一个代码片段(使用numpyPIL),它应该可以作为替代方案。

【讨论】:

您建议的代码中的Image 是什么?我需要从某个地方导入它吗? ImagePIL 的主要模块(又名 fork Pillow)。使用from PIL import Image 或者安装以前可用的版本,但我不推荐,除非没有其他办法-pip uninstall scipypip install scipy==1.2.2

以上是关于如何修复“-scipy.misc 没有属性“imresize””的主要内容,如果未能解决你的问题,请参考以下文章

STM32如何在我需要的时候关闭或打开外部中断EXTI?

工业软硬件系统名词

套接字 之 windows与linux 差异

程序备忘_高压异步预励磁

React快捷键(in VScode)

如何通过 C# 解码 JWT 令牌? [复制]