PaddlePaddle图像预测部分预测的没有输出类别的名称

  • 问题描述:在使用预测模型预测图片的时候,输出的是一个整数,而不是图片的类别名称。

  • 报错信息:

infer results:  5
  • 问题复现:使用训练保存的预测模型预测经过预处理的图片,使用预测的结果经过np.argmax(results[0])进行处理,获取概率最大的值,最后输出的是一个整数值。复现代码如下:
img = load_image('dog.png') 
results = inferencer.infer({'pixel': img})
print("infer results: ", np.argmax(results[0]))
  • 解决问题:在训练的时候,使用的是类别的标签,也就是一个整数,所以在预测的时候输出的也是类别的标签。需要输出类别的名称,还要根据标签对应的类别名称进行输出。
img = load_image('dog.png')
results = inferencer.infer({'pixel': img})

label_list = [
    "airplane", "automobile", "bird", "cat", "deer", "dog", "frog", "horse",
    "ship", "truck"]
print("infer results: ", label_list[np.argmax(results[0])])
  • 问题拓展:PaddlePaddle的分类标签都是整数值,其中int64类型的标签非常常用。PaddlePaddle的分类标签不支持使用字符串的方式输入类别名称,所以都是整数作为类别的标签,而已必须要从0开始标记。

猜你喜欢

转载自blog.csdn.net/PaddlePaddle/article/details/87642056