Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

ImportError: Could not import the Python Imaging Library (PIL) required to load image files on tensorflow

I am doing a deep learning course on udacity. For the first assignment whenI tried to run the script which is below the problem 1 , I got this error. So I tried to uninstall PIL and pillow and then installed these individually but I didnot succeeded. I need help guy. I am using tensorflow docker image with python notebook.

# 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

You can see the code here. I got error in the code block after problem 1 Error Image

I tried each and everything describe here in these two links or solutions:

Solution 1 on stackoverflow

Solution 2 on stackoverflow

Operating System:

using docker and tensorflow is installed in a container with IPython notebook.

The output from python -c "import tensorflow; print(tensorflow.version)".

0.11.0

like image 411
Muneeb Ul HaXan Avatar asked Dec 13 '16 15:12

Muneeb Ul HaXan


2 Answers

pip install pillow

Then replace from IPython.display import display, Image with from IPython.display import display from PIL import Image

like image 81
Yohanna Avatar answered Sep 23 '22 17:09

Yohanna


I met the same problem. But I am using a different setting for the tensorflow. OS: Ubuntu 14.04 LTS. Installation using Anaconda. I solved it by following the warnings in Pillow installation. It may not be useful for a docker installation of tensorflow though.

Here are the steps I did. First enter the tensorflow environment,

source activate tensorflow 

Then uninstall PIL and install Pillow

conda uninstall PIL conda install Pillow 

Then in the provided code, replace

from IPython.display import display, Image 

by

from IPython.display import display from PIL import Image 

That's all. Re-run the code and it works without PIL error.

like image 31
rort1989 Avatar answered Sep 24 '22 17:09

rort1989