[Keras] ImageDataGenerator에서 Image와 Label 뽑아내기
2021. 7. 16. 16:37ㆍ스터디/Python
1. ImageDataGenerator 정의
Label 별 폴더로 잘 정리된 이미지 데이터 셋은 다음과 같이 로드할 수 있다.
from keras.preprocessing.image import ImageDataGenerator
batch_size = 30
datagen = ImageDataGenerator(rescale = 1./255, validation_split = 0.3, featurewise_center = True)
generator = datagen.flow_from_directory('./data', shuffle = True, target_size=(30,30), batch_size=batch_size, class_mode = 'categorical')
2. 생성된 총 이미지 수와 실행 횟수 산출
n_img = generator.n
steps = n_img // batch_size
3. Image와 Label 도출
import numpy as np
imgs, labels = [], []
for i in range(steps):
a, b = generator.next()
imgs.extend(a)
labels.extend(b)
imgs = np.asarray(imgs)
labels = np.asarray(labels)
(참고) Label 얻기
labels = generator.classes
(참고) shuffle 시 섞인 index 순서
idx = generator.index_array
shuffle_classes = generator.classes[idx]
참고자료
'스터디 > Python' 카테고리의 다른 글
[Keras] 내가 보려고 쓴 Bayesian Neural Network(BNN) 구현하기 (0) | 2021.11.19 |
---|---|
[Python] pickle파일 로드하기와 에러 unsupported pickle protocol (0) | 2021.09.07 |
[Python] 문자열(str)을 시계열(datetime)으로 자료형 변환 (0) | 2021.07.06 |
[Python] cplex 코드를 python 코드로 작성하기 (0) | 2021.06.24 |
[Python] Cplex package 설치하기 (0) | 2021.06.24 |