61

Visual Studio 2013 で Python 2.7 を実行しています。コードは以前は Spyder で正常に動作していましたが、実行すると:

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')

次のエラーが発生します。

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

なぜそうなのですか、どうすれば修正できますか?


示唆されているように、私は Python 2.7 に Pillow インストーラーを使用しました。しかし、奇妙なことに、私はこれで終わります:

>>> 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

すべて失敗!

4

17 に答える 17

14

したがって、この問題にかなり長い間苦労した後、これが役立つ可能性があります。

from PIL import Image

それ以外の

import Image

また、画像ファイルが読み込まれず、「ファイルまたはディレクトリがありません」というエラーが表示される場合は、次のようにする必要があります。

path=r'C:\ABC\Users\Pictures\image.jpg'

次に、ファイルを開きます

image=Image.open(path)
于 2014-03-12T11:49:08.000 に答える
2

私の場合、ダウンロード中に画像が破損しました(github URLでwgetを使用)

  • 異なるソースからの複数の画像で試してください。パイソン

    from PIL import Image Image.open()

于 2021-05-27T09:28:28.813 に答える
0

私の場合、画像ファイルは書き込まれたばかりで、開く前にフラッシュする必要がありました。

img_file.flush() 
img = Image.open(img_file.name))
于 2019-05-08T21:13:49.180 に答える
0

このエラーは、PIL でマルチバンド イメージを開こうとしたときにも発生する可能性があります。4 バンドでも問題ないように見えますが (おそらくアルファ チャネルを想定しているため)、それ以上のバンドを使用すると、このエラーが発生します。私の場合、代わりに tifffile.imread を使用して修正しました。

于 2022-01-24T22:40:22.097 に答える