无法从“keras.preprocessing.image”导入名称“load_img”

新手上路,请多包涵

为什么我会遇到这个问题?我可以从 kera.preprocessing 导入图像模块。但无法导入 image_dataset_from_directory。 TF 版本:2.9.1

 # make a prediction for a new image.
from keras.preprocessing.image import load_img
from keras.preprocessing.image import img_to_array
from keras.models import load_model

# load and prepare the image
def load_image(filename):
    # load the image
    img = load_img(filename, target_size=(224, 224))
    # convert to array
    img = img_to_array(img)
    # reshape into a single sample with 3 channels
    img = img.reshape(1, 224, 224, 3)
    # center pixel data
    img = img.astype('float32')
    img = img - [123.68, 116.779, 103.939]
    return img

# load an image and predict the class
def run_example():
    # load the image
    img = load_image('test.jpg')
    # load model
    model = load_model('final_model.h5')
    # predict the class
    result = model.predict(img)
    print(result[0])

# entry point, run the example
run_example()

错误

from keras.preprocessing.image import load_img
ImportError: cannot import name 'load_img' from 'keras.preprocessing.image'

原文由 Sattawat 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.9k
1 个回答

keras.preprocessing API 在 Tensorflow 2.9.1 中被弃用。请使用 tf.keras.utils 来导入 load_img 如下:

 from tensorflow.keras.utils import load_img

要从目录加载数据集,请使用 tensorflow.keras.utils.image_dataset_from_directory 。有关详细信息,请参阅此 链接

原文由 Tfer3 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题