Image.open() ne peut pas identifier le fichier image - Python?

Je suis sous Python 2.7 dans Visual Studio 2013. Le code déjà travaillé sur ok lorsque en Spyder, mais quand je le lance:

import numpy as np
import scipy as sp
import math as mt
import matplotlib.pyplot as plt
import Image
import random

# (0, 1) is N
SCALE = 2.2666 # the scale is chosen to be 1 m = 2.266666666 pixels
MIN_LENGTH = 150 # pixels

PROJECT_PATH = 'C:\\cimtrack_v1'
im = Image.open(PROJECT_PATH + '\\ST.jpg')

Je me retrouve avec des erreurs suivantes:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\cimtrack_v1\PythonApplication1\dr\trajgen.py", line 19, in <module>
    im = Image.open(PROJECT_PATH + '\\ST.jpg')
  File "C:\Python27\lib\site-packages\PIL\Image.py", line 2020, in open
    raise IOError("cannot identify image file")
IOError: cannot identify image file

Pourquoi est-il si et comment puis-je résoudre ce problème?


Comme suggéré, j'ai utilisé l'Oreiller installer pour mon Python 2.7. Mais bizarrement, je me retrouve avec ceci:

>>> from PIL import Image
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named PIL


>>> from pil import Image
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named pil

>>> import PIL.Image
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named PIL.Image

>>> import PIL
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named PIL

Tout fail!

  • Le fichier existe et est de bon format?
  • Oui, il existe. J'ai testé son existence par le déplacement de quelque part d'autre, et le message d'erreur devient "Aucun fichier". Le format est .jpg. Avant j'ai importé avec succès.
  • Peut-être essayer avec un autre fichier image? Votre image est peut-être endommagé.
  • Avez-vous libjpeg-dev installé? Ou, en d'autres termes, ne PIL impression --- JPEG support available lors de l'installation?
  • J'ai essayé, mais le même :/
  • dois-je installer quelque choses en plus?? J'ai pensé qu'il vient naturellement comme dans Spyder?
  • Vous avez besoin d'avoir des bibliothèques pour gérer spécifique de l'image des extensions. Si vous ne pip install -U PIL, à la fin de la sortie, il devrait vous dire quelles sont les extensions disponibles. Aussi, je suggère de désinstaller PIL et l'installation de pillow au lieu de cela, il gère automatiquement associant les bibliothèques à des répertoires spécifiques. Autre que cela, c'est une enveloppe de plus de régulières PIL.
  • Merci pour l'adive je viens d'installer l'Oreiller. Mais pourquoi: >>> from PIL import Image Traceback (most recent call last): File "<stdin>", line 1, in <module> ImportError: No module named PIL >>> ?
  • Avez-vous désinstallé PIL et installé pillow? Aussi, assurez-vous que vous avez installé dans le bon virtualenv. Installation avec sudo de l'installer dans votre virtualenv.
  • Oui, unistalled PIL et installé sur l'oreiller. Je suis en Windows btw