【发布时间】:2021-11-29 15:58:15
【问题描述】:
我想对来自 Dataset 的每批图像进行标准化和标准化。 公式为:Xi = (Xi - mean) / std(像素级全局均值(SD))
我使用 ImageDataGenerator 和 flow_from_directory 如下:
datagen = ImageDataGenerator(featurewise_center=True,
featurewise_std_normalization=True,
vertical_flip=True, #data augmentation
validation_split= 0.1, #validation
rescale=1./255, #Scaling
horizontal_flip=True) #data augmentation
train_gen = datagen.flow_from_directory(
train_data_dir,
target_size=(img_height,img_width),
batch_size=batch_size,
class_mode='binary',
subset='training',
shuffle=True)
valid_gen = datagen.flow_from_directory(...)
model = Model(...) #I use ResNet and some fully connected layer
model.compile(...)
trainer= model.fit(train_gen,
validation_data= valid_gen,
epochs=16,
verbose=2)
根据我的需要,我在ImageDataGenerator 中使用featurewise_center 和featurewise_std_normalization。但似乎这些选项不适用于 flow_from_directory !我也应该使用flow_from_directory,因为我的数据很重(我没有足够的内存来同时处理整个数据集)。
你能给我一些解决这个问题的建议或意见吗?即如何在这种方法中实现图片的像素级全局均值(SD)?
【问题讨论】:
标签: tensorflow machine-learning keras deep-learning computer-vision