如何使用 keras.preprocessing.image.load_img() 为 keras 预训练模型输入预处理单个图像

时间:2021-01-11 15:43:16

标签: python image-processing keras data-preprocessing

使用图片库预处理的图片

data = np.ndarray(shape=(1, 224, 224, 3), dtype=np.float32)

I_image = Image.open('2.jpg')

size = (224, 224)

I_image = ImageOps.fit(I_image, size, Image.ANTIALIAS)

image_array = np.asarray(I_image)

normalized_image_array = (image_array.astype(np.float32) / 127.0) - 1

data[0] = normalized_image_array

data[0].shape

(224, 224, 3)

想用keras做同样的处理,等价的方法是什么

k_data = np.ndarray(shape=(1, 224, 224, 3), dtype=np.float32)

image_path = '2.jpg'

k_image = tensorflow.keras.preprocessing.image.load_img(image_path, target_size=(224,224))

input_arr = keras.preprocessing.image.img_to_array(k_image)

input_arr = np.asarray(input_arr)

input_arr = (input_arr.astype(np.float32) / 127.0) - 1

k_data[0] = input_arr

k_data.shape

(1, 224, 224, 3)

0 个答案:

没有答案