我试图将图像分为10类。为了得到图像的概率,我在keras中使用model.predict_generator()函数。这将只返回预测值,而不返回相应的示例ID(在本例中为图像文件名)。
test_datagen = ImageDataGenerator(rescale=1./255)
validation_generator = test_datagen.flow_from_directory(
'/path/',
target_size=(256, 256),
batch_size=32,`
class_mode='categorical')
predictions = model.predict_generator(validation_generator, val_samples=10000)
flow_from_directory读取样本的顺序是什么?
(或)
如何找到预测对应的图像名称/id?
点击这里获取代码。
如果您设置了shuffle=False,则图像看起来会以任何顺序返回。listdir以文本形式返回它们。
我只是通过使用生成器将一些示例图像写入带有shuffle=False
test_datagen = ImageDataGenerator(samplewise_center=False)
test_generator = test_datagen.flow_from_directory(
training_config['test_data_dir'],
target_size=(256, 256),
batch_size=5,
class_mode=None,
shuffle=False,
save_to_dir=os.path.join('samples'))
您还可以打印生成器的文件名...(我看了代码)只是执行os.listdir
打印test_generator.filenames
因此,索引0处的predict\u生成器
结果应该用于os处的图像。listdir
索引0。