パスをハードコードすると画像をロードできますが、リストから文字列を取り出そうとするとエラーメッセージが表示され続けます。何が間違っているのか分かりません。リストからのファイルパスはPythonをロードしません
#for i in range(0,len(training_YFT)):
#print(training_YFT[i])
#image = Image.open("/media/rafael/Data1/train/YFT/img_00004.jpg")
image = Image.open(training_YFT[0])
#image = Image.open(training_YFT[i]).convert("L")
arr = np.asarray(image)
plt.imshow(arr, cmap='gray')
plt.pause(0.01)
plt.show()
エラーメッセージが表示されています。 nは
Traceback (most recent call last):
File "/home/rafael/anaconda3/lib/python3.5/site-packages/PIL/Image.py", line 2283, in open
fp.seek(0)
AttributeError: 'str' object has no attribute 'seek'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "fishy.py", line 95, in <module>
image = Image.open(training_YFT[0])
File "/home/rafael/anaconda3/lib/python3.5/site-packages/PIL/Image.py", line 2285, in open
fp = io.BytesIO(fp.read())
AttributeError: 'str' object has no attribute 'read'
非常に奇妙です。 'dir(training_YFT [0])'を実行して結果を表示できますか? –
感謝、私のリストの最初の要素が空である問題を発見しました。 –
私はそれを空の文字列でテストしましたが、 "no such file or directory"というメッセージが期待どおりに表示されていました。奇妙な(私は 'str'オブジェクトが渡されたことをメッセージに記載していると信じていますが、ファイルをオープンしようとしていたはずです) –