web-dev-qa-db-ja.com

ImportError:tensorflowに画像ファイルを読み込むために必要なPython Imaging Library(PIL)をインポートできませんでした

私はudacityのディープラーニングコースを行っています。問題1の下にあるスクリプトを実行しようとしたときの最初の割り当てでは、このエラーが発生しました。だから私はPILと枕をアンインストールして、それらを個別にインストールしようとしましたが、成功しませんでした。助けが必要です。 pythonノートブックでtensorflow dockerイメージを使用しています。

# These are all the modules we'll be using later. Make sure you can import them
# before proceeding further.
from __future__ import print_function
import matplotlib.pyplot as plt
import numpy as np
import os
import sys
import scipy
import tarfile
from IPython.display import display, Image
from scipy import ndimage
from sklearn.linear_model import LogisticRegression
from six.moves.urllib.request import urlretrieve
from six.moves import cPickle as pickle
# Config the matplotlib backend as plotting inline in IPython
%matplotlib inline 

url = 'http://commondatastorage.googleapis.com/books1000/'
last_percent_reported = None

def download_progress_hook(count, blockSize, totalSize):
    percent = int(count * blockSize * 100 / totalSize)

   if last_percent_reported != percent:
     if percent % 5 == 0:
  sys.stdout.write("%s%%" % percent)
  sys.stdout.flush()
else:
  sys.stdout.write(".")
  sys.stdout.flush()

last_percent_reported = percent

https://github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/udacity/1_notmnist.ipynb

ここでコードを見ることができます。問題1の後にコードブロックでエラーが発生しました エラーイメージ

私はこれらの2つのリンクまたはソリューションでここで説明するそれぞれを試しました:

stackoverflowのソリューション1

stackoverflowのソリューション2

オペレーティング・システム:

dockerとtensorflowの使用は、IPythonノートブックのコンテナーにインストールされます。

python -c "import tensorflow; print(tensorflow。version)"からの出力。

0.11.0

40
Muneeb Ul HaXan

pip install pillow

次に、from IPython.display import display, Imagefrom IPython.display import displayfrom PIL import Imageに置き換えます

56
Yohanna

同じ問題に遭遇しました。しかし、私はテンソルフローに別の設定を使用しています。 OS:Ubuntu 14.04 LTS。 Anacondaを使用したインストール。 Pillow installation の警告に従って解決しました。ただし、tensorflowのdockerインストールには役立ちません。

ここに私がした手順があります。最初にテンソルフロー環境に入り、

source activate tensorflow

次に、PILをアンインストールしてPillowをインストールします

conda uninstall PIL
conda install Pillow

次に、提供されたコードで、

from IPython.display import display, Image

沿って

from IPython.display import display
from PIL import Image

それで全部です。コードを再実行すると、PILエラーなしで機能します。

13
rort1989

Jupyterをアンインストールして適切に再インストールすることで、この問題を解決しました。問題はノートブックのカーネルにリンクされていました。私の端末とノートブックには同じカーネルがありませんでした。それを確認するために、私は私のvirtualenvでした:

jupyter-kernelspec list

次に、カーネルディレクトリリストに移動し、jsonファイル(/Library/Jupyter/kernels/virtualenv/kernel.jsonなど)を開きます

Pythonリンクがwhich pythonの出力と同じであることを確認してください。

そうでない場合は、virtualenv用に別のカーネルを作成します。

2
A. Attia

Anacondaを使用するWindowsユーザーについては、問題に対する単純な解決策が存在する可能性があります。 'tensorflow'をpipまたはpipバリアント(pip3など)でインストールした場合、テンソルフローを再度インストールする必要がありますが、今回はconda install tensorflowコマンドを使用します。

1
user9680223