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

问题描述

使用图片库预处理的图片

data = np.ndarray(shape=(1,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,3)

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

k_data = np.ndarray(shape=(1,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,3)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)