とあるサイトに、独自ファイルからラーニング用のファイルを読み取る例題が載っていました。
とりあえず、一部分を動かせばファイルを読みるのではないかとおもったのですが、ファイルがうまく読み込めません。
基本的に間違っているのでしょうか。
どなたか教えていただけるとさいわです。
ソースは以下に示します。
で、エラーが起きているところが
img = load_img(imgfile, target_size=(hw["height"], hw["width"])) # 画像ファイルの読み込み
なので、イメージがうまく読み込めていないようです。
なぜでしょうか。
import glob import numpy as np from keras.preprocessing.image import load_img, img_to_array, array_to_img from keras.preprocessing.image import random_rotation, random_shift, random_zoom from keras.layers.convolutional import Conv2D from keras.layers.pooling import MaxPooling2D from keras.layers.core import Activation from keras.layers.core import Dense from keras.layers.core import Dropout from keras.layers.core import Flatten from keras.models import Sequential from keras.models import model_from_json from keras.callbacks import LearningRateScheduler from keras.callbacks import ModelCheckpoint from keras.optimizers import Adam from keras.utils import np_utils FileNames = ["img1.npy", "img2.npy", "img3.npy"] ClassNames = ["うさぎ", "いぬ", "ねこ"] hw = {"height":1000, "width":1000} def PreProcess(dirname, filename, var_amount=3): num = 0 arrlist = [] files = glob.glob(dirname + "/*.jpeg") for imgfile in files: img = load_img(imgfile, target_size=(hw["height"], hw["width"])) # 画像ファイルの読み込み array = img_to_array(img) / 255 # 画像ファイルのnumpy化 arrlist.append(array) # numpy型データをリストに追加 for i in range(var_amount-1): arr2 = array arr2 = random_rotation(arr2, rg=360) arrlist.append(arr2) # numpy型データをリストに追加 num += 1 nplist = np.array(arrlist) np.save(filename, nplist) print(">> " + dirname + "から" + str(num) + "個のファイル読み込み成功") PreProcess('いぬ', "img2.npy")
windowsだとファイルを開いているアプリがあるとエラーが起こるというのがよくある話なので、そこをまず確認してみてください。
回答ありがとうございます。以下のエラーが出て進みません。Exception has occurred: ImportError Could not import PIL.Image. The use of `array_to_img` requires PIL. File "C:\Users\toyoshi\keras_jimae.py", line 30, in PreProcess img = load_img(imgfile, target_size=(hw["height"], hw["width"])) # 画像ファイルの読み込み File "C:\Users\toyoshi\keras_jimae.py", line 43, in <module> PreProcess('いぬ', "img2.npy")例外エラーが出ています。
回答1件
あなたの回答
tips
プレビュー