ImportError('Could not import PIL.Image. ' working with keras-ternsorflow

Solution 1:

All you need to do is install pillow:

pip install pillow

Then you should be all set. Found this after hours of searching.

Solution 2:

I had the exact same error and I fixed it the following way:

1) Run this command in your Jupyter Notebook:

import sys
from PIL import Image
sys.modules['Image'] = Image 

2) Run the following two lines in your notebook to be sure that they are correctly pointing to the same directory (if not it's because your PIL old library is messing up with the Pillow library)

from PIL import Image
print(Image.__file__)

import Image
print(Image.__file__)

3) If that's working correctly and both import prints pointing to the same python3 directory then move on. If not: 3.a) Go to your OS console and to your conda environment (be sure you are working within your desire conda environment) :

conda uninstall PIL
conda uninstall Pillow
conda install Pillow

You should now have successfully installed all the libraries for Pillow and let behind any problems with PIL. 3.b) Now try to execute the code of your jupyer notebook again, now the paths to both the imports should look exactly the same

4) Now, in the OS console/terminal, having your desired conda environment active, run the following commands:

conda install keras
conda install tensorflow

5) Run your jupyter notebook script again, It should be fixed and working now!

If it's still not working, it must be because you have opened a jupyter notebook kernel that's not point to the right environment. Fix that and you will be fine!

Solution 3:

If this problem is being seen on an Anaconda env, use

conda install pillow 

and reopen