前提・実現したいこと
512 x 496の画像3万枚をnumpy配列に変換するところでMemoryErrorとなってしまったため、以下の質問を参考にしながらコードを修正したところ、エラーが発生してしまいました。
エラーに記載されている画像は確かに該当フォルダ内に存在しており、また、コードには一切記載していないのですが、なぜこのようなエラーが発生しているのでしょうか。
ご存知の方がいらっしゃいましたらご教示頂けますと幸いです。
https://teratail.com/questions/78986
https://teratail.com/questions/166544
https://teratail.com/questions/78052
発生している問題・エラーメッセージ
FileNotFoundError Traceback (most recent call last) <ipython-input-9-ac9c439a867b> in <module>() 64 continue 65 ---> 66 image_value = np.array(Image.open("./NORMAL_resize_10000/" + filename)) 67 image_list.append(image_value.reshape(1, image_value.size)) 68 /usr/local/lib/python3.6/dist-packages/PIL/Image.py in open(fp, mode) 2528 2529 if filename: -> 2530 fp = builtins.open(filename, "rb") 2531 exclusive_fp = True 2532 FileNotFoundError: [Errno 2] No such file or directory: './NORMAL_resize_10000/./NORMAL_resize_10000/NORMAL-9473882-5_resized.jpeg'
該当のソースコード
from __future__ import absolute_import from __future__ import division from __future__ import print_function from keras.layers import Lambda, Input, Dense from keras.models import Model from keras.models import Sequential, model_from_json from keras.losses import mse, binary_crossentropy from keras.layers import Conv2D, Flatten, Lambda from keras.layers import Reshape, Conv2DTranspose from keras.utils import plot_model, np_utils from keras.utils import plot_model from keras.callbacks import Callback, EarlyStopping, TensorBoard, ModelCheckpoint, LearningRateScheduler, CSVLogger from keras import optimizers from keras import backend as K from keras.preprocessing.image import array_to_img, img_to_array,load_img from keras.preprocessing.image import ImageDataGenerator import numpy as np import matplotlib.pyplot as plt import argparse import os import re import glob import random as rn import tensorflow as tf import cv2 import easydict from PIL import Image from google.colab.patches import cv2_imshow import warnings warnings.filterwarnings('ignore') %matplotlib inline get_ipython().run_line_magic('matplotlib', 'inline') #original dataset #train filenames = glob.glob("./NORMAL_resize_10000/*.jpeg") image_list = [] for filename in filenames: if filename == "Thumbs.db": continue image_value = np.array(Image.open("./NORMAL_resize_10000/" + filename)) image_list.append(image_value.reshape(1, image_value.size)) x_train=np.array(image_list) print(x_train.shape)
補足情報(FW/ツールのバージョンなど)
Google Colab上で実装をしています。
回答4件
あなたの回答
tips
プレビュー