Python Keras打开图像并使用它们创建一个批

Python Keras打开图像并使用它们创建一个批,python,numpy,keras,Python,Numpy,Keras,我有以下从SO读取图像的功能: from keras.preprocessing import image as kimage from keras.applications.vgg16 import preprocess_input def read_image(path): img = kimage.load_img(path, target_size=(224, 224)) tmp = kimage.img_to_array(img) tmp = np.expan

我有以下从SO读取图像的功能:

from keras.preprocessing import image as kimage
from keras.applications.vgg16 import preprocess_input

def read_image(path):
    img = kimage.load_img(path, target_size=(224, 224))
    tmp = kimage.img_to_array(img)
    tmp = np.expand_dims(tmp, axis=0)
    tmp = preprocess_input(tmp)
    return tmp
我创建了下面的数据生成器,它基本上迭代我的路径字符串并调用前面的函数。我想调用readimage函数,并将其输出堆叠到一个numpy数组中,我可以将该数组输入到kerasfit函数中。我正在使用以下代码:

batch_holder = np.zeros((batch_size, 224, 244, 3))
for j, row in batch.iterrows():
    batch_holder[j, :] = read_image(row['path'])[0]
<>但这不起作用,我收到以下错误,我认为这是不可能解释的:

数据生成器中第71行的文件“train.py” batch_holder[j,:]=读取_图像(行['path'])[0]值错误:无法将输入数组从形状(224,3)广播到形状 (224244,3)


我做错了什么?

你是不是写错了244而不是224


batch_holder=np.零((batch_size,224,244,3))

您是否写错了244而不是224


batch_holder=np.zeros((batch_size,224,244,3))

这是一个keras模块,我编辑了我的问题来添加它。你能发布一个完整的示例吗,包括预处理输入等。很抱歉,这是另一个keras函数我忘了添加导入它是一个keras模块,我编辑了我的问题来添加它。你能发布一个完整的示例吗,包括预处理输入等。对不起,这是另一个keras函数,我忘了添加导入,所以很容易看到。。。在这里花了这么多时间!抢手货很容易看到。。。在这里花了这么多时间!抢手货