更新时间:2023-12-02 11:53:46
ImageDataGenerator具有一个preprocessing_function
参数,该参数允许您传递在推理过程中使用的相同的preprocess_input
函数.此功能将为您进行重新缩放,因此可以省略缩放:
ImageDataGenerator has a preprocessing_function
argument which allows you to pass the same preprocess_input
function that you are using during inference. This function will do the rescaling for you, so can omit the scaling:
from keras.applications.vgg16 import preprocess_input
train_datagen = ImageDataGenerator(preprocessing_function=preprocess_input)
keras_applications中的大多数预训练模型使用相同的
Most of the pretrained models in keras_applications use the same preprocessing function. You can inspect the docstring to see what it does:
def preprocess_input(x, data_format=None, mode='caffe', **kwargs):
"""Preprocesses a tensor or Numpy array encoding a batch of images.
# Arguments
x: Input Numpy or symbolic tensor, 3D or 4D.
The preprocessed data is written over the input data
if the data types are compatible. To avoid this
behaviour, `numpy.copy(x)` can be used.
data_format: Data format of the image tensor/array.
mode: One of "caffe", "tf" or "torch".
- caffe: will convert the images from RGB to BGR,
then will zero-center each color channel with
respect to the ImageNet dataset,
without scaling.
- tf: will scale pixels between -1 and 1,
sample-wise.
- torch: will scale pixels between 0 and 1 and then
will normalize each channel with respect to the
ImageNet dataset.
# Returns
Preprocessed tensor or Numpy array.