【发布时间】:2018-05-13 08:12:16
【问题描述】:
我正在尝试来自以下keras 文档页面的示例keras 代码,
https://keras.io/applications/
keras 模块的preprocess_input(x) 函数在下面的代码中有什么作用?为什么在传递给preprocess_input()方法之前我们必须做expand_dims(x, axis=0)?
from keras.applications.resnet50 import ResNet50
from keras.preprocessing import image
from keras.applications.resnet50 import preprocess_input
import numpy as np
model = ResNet50(weights='imagenet')
img_path = 'elephant.jpg'
img = image.load_img(img_path, target_size=(224, 224))
x = image.img_to_array(img)
x = np.expand_dims(x, axis=0)
x = preprocess_input(x)
是否有任何文档对这些功能进行了很好的解释?
谢谢!
【问题讨论】:
-
谢谢!,所以我理解它标准化了 -1 到 +1 之间的像素,任何关于为什么我们必须对传递给它的输入执行 np.expand_dims(x,axis=0) 的解释功能?
-
@AKSHAYAAVAIDYANATHAN 抱歉这个(也许)愚蠢的问题,但你怎么理解它从上面的链接中标准化了 [-1,1] 中的像素?
-
@RicS 通过使用 preprocess_input() 函数后直接查看输出数组。
-
@AKSHAYAAVAIDYANATHAN 确实很愚蠢。谢谢你:)