Je reçois l'erreur:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-4-0f6709e38f49> in <module>()
----> 1 from PIL import Image
C:\Anaconda\lib\site-packages\PIL\Image.py in <module>()
61 from PIL import _imaging as core
62 if PILLOW_VERSION != getattr(core, 'PILLOW_VERSION', None):
---> 63 raise ImportError("The _imaging extension was built for another "
64 " version of Pillow or PIL")
65
ImportError: The _imaging extension was built for another version of Pillow or PIL
Chaque fois que j'essaie d'utiliser la bibliothèque PIL. J'essaie de charger et de travailler sur un tas de fichiers .gif, et ce que j'essaie maintenant, est le suivant:
from PIL import Image
Essayer une approche différente, à travers scipy avec:
import scipy.ndimage as spnd
os.chdir('C:\\WeatherSink\\data\\')
spnd.imread('2014-11-03-0645.gif')
Échoue avec:
---------------------------------------------------------------------------
ImportError Traceback (most recent call last)
<ipython-input-3-23c383b79646> in <module>()
1 os.chdir('C:\\WeatherSink\\data\\')
----> 2 spnd.imread('2014-11-03-0645.gif')
C:\Anaconda\lib\site-packages\scipy\ndimage\io.pyc in imread(fname, flatten, mode)
36 from PIL import Image
37 except ImportError:
---> 38 raise ImportError("Could not import the Python Imaging Library (PIL)"
39 " required to load image files. Please refer to"
40 " http://pypi.python.org/pypi/PIL/ for installation"
ImportError: Could not import the Python Imaging Library (PIL) required to load image files. Please refer to http://pypi.python.org/pypi/PIL/ for installation instructions.
La première approche me guide vers les versions de PIL installées. J'essaie d'émuler le getattr (...), et cela ne renvoie aucun. Je ne suis donc pas surpris que ce soit moins que de fonctionner. Mais quelqu'un sait-il comment "corriger" les erreurs?
Je cours sur win7, en gérant python2.7 via conda. J'ai également essayé de supprimer et de réinstaller les packages, sans aucun changement dans la sortie.
L'aide est très appréciée.
Ce n'est qu'un problème d'installation.
Installez d'abord pip sur votre système s'il n'est pas installé. C'est également disponible pour Windows .
Améliorez votre numpy, pip/oreiller, scipy:
pip install -U numpy
pip install -U pil/pillow
pip install -U scipy
La meilleure option pour Windows est d'utiliser anaconda .
Je pense que pip est déjà installé dans conda. Cela résoudra le problème de la version de votre système.
In [1]: from PIL import Image
In [2]: import scipy.ndimage as spnd
In [3]: x = spnd.imread('ppuf100X91.gif')
In [4]: print x
[[255 255 255 ..., 255 255 255]
[255 255 255 ..., 255 255 255]
[255 255 255 ..., 255 255 255]
...,
[255 255 255 ..., 255 255 255]
[255 255 255 ..., 255 255 255]
[255 255 255 ..., 255 255 255]]
Il s'agit d'un problème dans python 3.6 Modifier le fichier: C:\Anaconda\lib\site-packages\PIL\Image.py
et changez le code:
if PILLOW_VERSION != getattr(core, 'PILLOW_VERSION', None):
raise ImportError("The _imaging extension was built for another "
" version of Pillow or PIL")
changer cela en:
if core.PILLOW_VERSION != getattr(core, 'PILLOW_VERSION', None):
raise ImportError("The _imaging extension was built for another "
" version of Pillow or PIL")
Cela résoudra le problème. Cordialement
Ce problème est dû à Python de PIL/oreiller est une version Up ou Down de votre système et à cause de cette question est généré dans votre système.
Essayez de vérifier cette commande:
Sudo apt-get install python-PIL
Vérifiez que ce package est installé ou non. S'il est installé, essayez de le supprimer avec la commande:
Sudo apt-get remove python-PIL
Vérifiez que cela fonctionnera pour supprimer le paquet PIL/oreiller est supprimé de votre système.
Et enfin, cette commande vous aidera à résoudre ce problème de package:
Sudo apt-get autoremove python-PIL
Réinstallez ensuite le package PIL/Pillow:
Sudo apt-get install python-pil
Cela devrait vous aider à résoudre le problème.
Peut-être que l'une de vos dépendances nécessite PIL et que PIL finit par être installé après Pillow, provoquant des conflits dans le répertoire des packages de votre site. Je suppose que vous voyez cette erreur car l'instruction d'importation importe _imaging
à partir d'une installation PIL légitime et non d'une installation Pillow.
J'ai eu des problèmes dans le passé avec des packages en conflit qui nécessitent PIL ou Pillow. L'oreiller est, bien sûr, l'emballage préféré. Je voudrais jeter un oeil aux dépendances de vos packages. Si vous pouvez en trouver un qui dépend de PIL, je soumettrais une demande d'extraction qui change la dépendance en Pillow ou peut-être même crée votre propre fork avec ce changement. Pour ma situation, bifurquer était l'option sur laquelle je me suis installé car le projet ne semblait plus avoir d'activité depuis longtemps.
En fin de compte, vous souhaitez éliminer toutes les dépendances sur le package PIL (car il n'est plus actif) au profit de Pillow.