maigeng 2022-05-12 20:39 采纳率: 80%
浏览 66
已结题

怎么用训练好的模型来单独测试一个图片的分类

比如用fashion数据集,训练好模型后如何用该模型单独判断从网上随机下载的图片的类型

  • 写回答

1条回答 默认 最新

  • 沐沐不是沫 2022-05-13 19:47
    关注

    得看训练的代码,对图片进行和训练时相同的预处理。
    下面是我做垃圾分类的测试代码,你可以参考改。
    有帮助的话,就麻烦采纳一下

    # coding=utf-8
    from tensorflow.keras.preprocessing import image
    from tensorflow.keras.models import load_model
    import numpy as np
    # import cv2
     
    
    def predict(img_path):
        # 把图片转换成为numpy数组
        img = image.load_img(img_path, target_size=(150, 150))
        img = image.img_to_array(img)
     
        # 加载模型,加载请注意 model_path 是相对路径, 与当前文件同级。
        # 如果你的模型是在 results 文件夹下的 dnn.h5 模型,则 model_path = 'results/dnn.h5'
        model_path = './model_20_6type.h5'
        # 加载模型
        model = load_model(model_path)
     
        # expand_dims的作用是把img.shape转换成(1, img.shape[0], img.shape[1], img.shape[2])
        # 给函数增加维度
        x = np.expand_dims(img, axis=0)
        # 模型预测
        y = model.predict(x)
     
        # 获取labels
        labels = {0:'纸板',1:'玻璃瓶',2:'金属',3:'纸',4:'塑料',5:'垃圾'}
        predict = labels[np.argmax(y)]
        print('识别结果:',predict)
     
        # 返回图片的类别
        return predict
     
    img_path = './content/33.jpg'
    # frame = cv2.imread(img_path)
    predict(img_path)
    
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月25日
  • 已采纳回答 5月17日
  • 创建了问题 5月12日

悬赏问题

  • ¥15 linux驱动,linux应用,多线程
  • ¥20 我要一个分身加定位两个功能的安卓app
  • ¥15 基于FOC驱动器,如何实现卡丁车下坡无阻力的遛坡的效果
  • ¥15 IAR程序莫名变量多重定义
  • ¥15 (标签-UDP|关键词-client)
  • ¥15 关于库卡officelite无法与虚拟机通讯的问题
  • ¥15 目标检测项目无法读取视频
  • ¥15 GEO datasets中基因芯片数据仅仅提供了normalized signal如何进行差异分析
  • ¥100 求采集电商背景音乐的方法
  • ¥15 数学建模竞赛求指导帮助