2017-09-24 2 views
1

데이터 증가를 위해 ImageDataGenerator을 사용하는 결과를 확인하려고합니다. Keras가 데이터를 읽지 만 Keras가 생성을 수행하지 않는 것으로 보입니다. 나는 출력으로 얻는다 :keras ImageDataGenerator flow_from_directory 생성 된 데이터

32 개의 이미지가 1 개의 클래스에 속한다.

는하지만 이미지는 내가 flow_from_directory 방법의 매개 변수 save_to_dir 에서 언급 한 디렉토리에 저장됩니다 생성되지 않습니다. 여기

내 코드 :

from keras.preprocessing.image import ImageDataGenerator, array_to_img, img_to_array, load_img 
from keras import backend as K 
K.set_image_dim_ordering('th') 

#the path of images to apply augmentation on them 
images_path='train' 
#create an instance of ImageDataGenerator 
datagen = ImageDataGenerator(width_shift_range=0.2, 
     height_shift_range=0.2) 
datagen.flow_from_directory(directory=images_path, target_size=(480,752),color_mode='grayscale', class_mode=None, save_to_dir='saved',save_prefix='keras_') 
img = load_img('train/images/photon10.png') 
x = img_to_array(img) 
x = x.reshape((1,) + x.shape) 
datagen.flow(x,batch_size=1,save_to_dir='saved',save_format='png') 

이 난 하나 개의 이미지에 확대를 수행하기 위해 시도하고이 저장되지 않았습니다.

어떤 이유가있을 수 있습니까? 저는 Keras의 선발입니다.

참고 : 특정 카테고리가 없기 때문에 클래스 모드는 없음입니다.

+0

이미지가'images_path'의 하위 디렉토리에 있는지 확인 했습니까? – petezurich

답변

0

flow_from_directory()DirectoryIterator을 반환합니다. 파일은이 반복자를 반복 할 때까지 저장되지 않습니다. 예를 들어

,

iterator = datagen.flow_from_directory(...) 
next(iterator) 

save_to_dir에 증강 이미지의 배치를 저장합니다. iterator에 for 루프를 사용하여 생성 될 이미지 수를 제어 할 수도 있습니다.

관련 문제