Actually the utilities to preprocess data are moved from tf.keras.preprocessing.image*
to tf.keras.utils*
You should use tf.keras.utils.load_img
instead of tf.keras.utils.load_image
.
Please refer to the working code below
import tensorflow as tf
print(tf.__version__)
help(tf.keras.utils.load_img)
Output:
2.8.2
Help on function load_img in module keras.preprocessing.image:
load_img(path, grayscale=False, color_mode='rgb', target_size=None, interpolation='nearest')
Loads an image into PIL format.
Usage:
```
image = tf.keras.preprocessing.image.load_img(image_path)
input_arr = tf.keras.preprocessing.image.img_to_array(image)
input_arr = np.array([input_arr]) # Convert single image to a batch.
predictions = model.predict(input_arr)
```
Args:
path: Path to image file.
grayscale: DEPRECATED use `color_mode="grayscale"`.
color_mode: One of "grayscale", "rgb", "rgba". Default: "rgb".
The desired image format.
target_size: Either `None` (default to original size)
or tuple of ints `(img_height, img_width)`.
interpolation: Interpolation method used to resample the image if the
target size is different from that of the loaded image.
Supported methods are "nearest", "bilinear", and "bicubic".
If PIL version 1.1.3 or newer is installed, "lanczos" is also
supported. If PIL version 3.4.0 or newer is installed, "box" and
"hamming" are also supported. By default, "nearest" is used.
Returns:
A PIL Image instance.
Raises:
ImportError: if PIL is not available.
ValueError: if interpolation method is not supported.
I submitted PR to fix the confusion. Thank you.