python - 无法在 Keras 的 ImageDataGenerator 中将 preprocess_input 用作预处理函数

标签 python keras

当尝试提供从 CNN 包(例如 keras.applications.resnet)导入的 preprocess_input 时,模型会在尝试适应生成的数据时引发错误:

‘JpegImageFile’ object is not subscriptable

代码:

datagen = ImageDataGenerator(preprocessing_function=preprocess_input)

凯拉斯版本:2.1.5

最佳答案

通过将 Keras 降级到 2.1.4 来解决问题:

pip uninstall keras
pip install keras==2.1.4

或者通过使用 Lambda 层将预处理添加为模型的第一步:

model.add(keras.layers.Lambda(preprocess_input, name='preprocessing', input_shape=(224, 224, 3)))

关于python - 无法在 Keras 的 ImageDataGenerator 中将 preprocess_input 用作预处理函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50547382/

相关文章:

tensorflow - 当我激活tensorflow env时,Anaconda提示崩溃

python - 在变量中使用 except 和存储错误

python-3.x - 输入 0 与图层 flatten_5 : expected min_ndim=3, 发现 ndim=2 不兼容

python - 从 keras.backend.tensorflow_backend 导入 set_session

python - 具有两个以上输入的 Keras 自定义指标

python - 如何为keras提供多个数据特征的输入?

python - 获取错误 search_products() 至少需要 2 个参数(给定 2 个)

python - python中路径的跨平台拆分

python - 查找数字优化的所有除数

python - 如何在Python中从Linux终端显示图形?