質問編集履歴

1 ソースコードをコードブロックに入れました。

KiRii

KiRii score 4

2019/11/20 22:26  投稿

リストデータの画像処理が分かりません
### 前提・実現したいこと
listにの中の画像データを処理したい
ここに質問の内容を詳しく書いてください。
現在filesリストに格納した画像データを処理しようとしているのですが、エラーが発生しました。エラー文の意味が分からず対処できません。
エラーの解決方法を教えてください。
### 発生している問題・エラーメッセージ
```
\Anaconda3\lib\site-packages\PIL\Image.py in open(fp, mode)
  2773    try:
-> 2774        fp.seek(0)
  2775    except (AttributeError, io.UnsupportedOperation):
AttributeError: 'list' object has no attribute 'seek'
During handling of the above exception, another exception occurred:
AttributeError                           Traceback (most recent call last)
<ipython-input-6-94adfb02f081> in <module>
     1 for i, file in enumerate(files):
----> 2    image = Image.open(file)
     3    image = image.convert("RGB")
     4    image = image.resize((image_size, image_size))
     5    data = np.asarray(image)
~\Anaconda3\lib\site-packages\PIL\Image.py in open(fp, mode)
  2774        fp.seek(0)
  2775    except (AttributeError, io.UnsupportedOperation):
-> 2776        fp = io.BytesIO(fp.read())
  2777        exclusive_fp = True
  2778
AttributeError: 'list' object has no attribute 'read'
```
### 該当のソースコード
 
 
 
 
```ここに言語名を入力  
import keras
from keras.utils import np_utils
from keras.models import Sequential
from keras.layers.convolutional import Conv2D, MaxPooling2D
from keras.layers.core import Dense, Dropout, Activation, Flatten
import numpy as np
from sklearn.model_selection import train_test_split
from PIL import Image
import glob
categories = {'tops': ['tshirt-cutsew','shirt-blouse','polo-shirt','knit-sweater','vest','parkar','sweat','cardigan','ensemble','jersey','tank-top'],
             'jacket-outwear': ['tailored-jacket','no-collar-jacket','denim-jacket','riders-jacket','jacket','coveralls','military-jacket','ma1','down-vest','down-jacket','duffle-coat','mods-coat','pea-coat','stand-collar-coat','trench-coat','chester-coat','mouton-coat','nylon-jacket','mountain-parker','stadium-jumper','japanese-souvenir-jacket','poncho'],
             'pants': ['denim-pants', 'cargo-pants','chino-pants','slacks','pants'],
             'shoes': ['sneakers','slip-on','sandai','pumpus','boots','booties','dress-shoes','ballet-slippers','loafers','moccasins','rain-shoes','flip-flops'],
             'hat': ['cap','hat','knit-cap-beanies','hunting-beret','casket','sun-visor']
            }
image_size = 50
X = []
Y = []
DATADIR = "./images"
d = "/"
Index = []
files = []
for category1 in categories:
   for category2 in categories[category1]:
       dir = DATADIR + d + str(category1) + d + str(category2)
       i = glob.glob(dir + "/*.jpg")
       files.append(i)
       j = [category1, category2]
       Index.append(j)
#下記のプログラムを実行しようとしたときにエラーが発生しました。
for i, file in enumerate(files):
   image = Image.open(file)
   image = image.convert("RGB")
   image = image.resize((image_size, image_size))
   data = np.asarray(image)
   X.append(data)
   Y.append(Index)
 
 
 
```ここに言語名を入力  
python  
```
### 試したこと
ネットでエラー文を検索し、リストのどの情報を処理すればよいか場所を指定すると解決すると目にしたのですが、指定の仕方が分からず断念しました。
### 補足情報(FW/ツールのバージョンなど)
jupyter notebookで作業しています
  • Python

    34315 questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Keras

    1487 questions

    Kerasは、TheanoやTensorFlow/CNTK対応のラッパーライブラリです。DeepLearningの数学的部分を短いコードでネットワークとして表現することが可能。DeepLearningの最新手法を迅速に試すことができます。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る