【问题标题】:Could not import PIL.Image even if Pillow already installed?即使已经安装了 Pillow,也无法导入 PIL.Image?
【发布时间】:2019-12-27 23:26:33
【问题描述】:

我正在阅读 Deep Learning with R (https://livebook.manning.com/book/deep-learning-with-r/chapter-5/112) 一书的第 5 章。

运行下面代码时,出现如下错误:Error in py_iter_next(it, completed) : ImportError: Could not import PIL.Image. The use of load_img requires PIL.

有关此错误消息的所有答案都建议使用pip install pillow。当我在终端中运行它时,会出现以下内容:

Requirement already satisfied: pillow in /anaconda3/lib/python3.7/site-packages (6.1.0)

因此,Pillow 已经安装,而我无法运行下面的代码。 我正在使用 Mac Book Pro 平台 x86_64-apple-darwin15.6.0 以及 R 版本 3.6.0 (2019-04-26)。我的机器上也安装了 Python 3.7.3。非常感谢任何推荐和支持!

#Displaying a batch of data and labels
batch <- generator_next(train_generator)
str(batch)

【问题讨论】:

    标签: python r tensorflow keras deep-learning


    【解决方案1】:

    问题在于,Keras for R 创建了自己的虚拟环境,称为r-reticulate,而其中缺少枕头。您还必须了解它是使用 conda 还是 virtualenv 来创建这样的环境。然后,激活它并安装枕头和 scipy。最后,重新启动 R 会话。

    在我的例子中是 conda:

    $ conda env list
    # conda environments:
    #
    base                  *  C:\Users\black\Anaconda3
    py2                      C:\Users\black\Anaconda3\envs\py2
    r-reticulate             C:\Users\black\Anaconda3\envs\r-reticulate
    
    $ conda activate r-reticulate
    $ conda install pillow scipy
    

    【讨论】:

    • 感谢您的回复!当我在我的 Mac 终端中编写 de 命令 "$conda env list" 时,会出现以下内容: "# conda environment: # base * //miniconda3" 从这个意义上说,我只有一个 conda 环境,所以我无法激活 r-reticulate .该怎么办?提前谢谢!
    【解决方案2】:

    这是一个老问题,但现在这对我有用:使用reticulate::py_install("pillow") 将任何丢失的包直接安装到网状环境中。

    【讨论】:

      猜你喜欢
      • 2016-11-26
      • 2020-06-21
      • 2020-09-10
      • 1970-01-01
      • 2018-07-21
      • 2018-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多