【深度学习--图像分类】imageAI自定义模型预测

无意中发现了一个巨牛的人工智能教程,忍不住分享一下给大家。教程不仅是零基础,通俗易懂,而且非常风趣幽默,像看小说一样!觉得太牛了,所以分享给大家。点这里可以跳转到教程。人工智能教程

ImageAI 提供4种不同的算法和模型,使你可以用您自定义的模型执行图像预测。您将使用 ImageAI 已训练的模型和相应的 JSON 文件来预测自定义对象。下面我们通过我们训练的一个例子来进行预测。

先看项目目录:

dataset
resnet_train.py
resnet_predict.py

在这里插入图片描述

模型分为5类,训练好的模型最高测试集准确率97.48%左右。
dataset 文件夹下面结构如下:

.
└── dataset
    ├── json
    ├── logs
    │   └── resnet_lr-0.001_2019-09-26-18-01-18
    │       ├── train
    │       └── validation
    ├── models
    ├── test
    │   ├── animal
    │   ├── flower
    │   ├── guitar
    │   ├── houses
    │   └── plane
    └── train
        ├── animal
        ├── flower
        ├── guitar
        ├── houses
        └── plane

json文件夹 里面 有一个 model_class.json,内容如下:

{
    "0" : "animal",
    "1" : "flower",
    "2" : "guitar",
    "3" : "houses",
    "4" : "plane"
}

把训练好的model_ex-076_acc-0.974864.h5(90.4M) 和 model_class.json文件下载下来
下面我们进行编写resnet_predict.py 进行预测

# -*- coding: utf-8 -*-



from imageai.Prediction.Custom import CustomImagePrediction
import os
import time
execution_path = 'E:/2019年/图像算法/imageAI_dongli/'

prediction = CustomImagePrediction()
prediction.setModelTypeAsResNet()
prediction.setModelPath(os.path.join(execution_path,"model_ex-076_acc-0.974864.h5"))
prediction.setJsonPath(os.path.join(execution_path, "model_class.json"))
prediction.loadModel(num_objects=5)



time1=time.time()
predictions, probabilities = prediction.predictImage(os.path.join(execution_path, "flower.jpg"), result_count=5)

for eachPrediction, eachProbability in zip(predictions, probabilities):
    print(eachPrediction + " : " + str(eachProbability))


time2=time.time()

print('总共耗时:' + str(time2 - time1) + 's')



在这里插入图片描述

预测此玫瑰花 是属于哪种类别。

运行结果,属于花的类别最大:

flower : 99.92861151695251
animal : 0.06757107912562788
guitar : 0.0034803331800503656
plane : 0.0003505825361571624
houses : 7.271949709064529e-07
总共耗时:0.8197042942047119s

Process finished with exit code 0

在这里插入图片描述

再来预测一张房子:

houses : 98.91605973243713
plane : 0.7265790831297636
guitar : 0.18177760066464543
animal : 0.1166991307400167
flower : 0.0588802678976208
总共耗时:0.7971503734588623s

Process finished with exit code 0

在这里插入图片描述

guitar : 99.53780174255371
animal : 0.2148298779502511
plane : 0.1628887257538736
flower : 0.058067135978490114
houses : 0.026400317437946796
总共耗时:0.7780678272247314s

在这里插入图片描述

animal : 99.88353848457336
guitar : 0.10665059089660645
houses : 0.007412067498080432
plane : 0.002398901415290311
flower : 8.875867507640578e-06
总共耗时:0.8121817111968994s

Process finished with exit code 0

在这里插入图片描述

plane : 98.74292016029358
animal : 1.198401115834713
flower : 0.05224089836701751
guitar : 0.00422090852225665
houses : 0.002220892383775208
总共耗时:0.8304483890533447s

Process finished with exit code 0

版本记录:

python 3.5.2
pip install tensorflow==1.12.0
pip install numpy==1.14.6
已标记关键词 清除标记
【课程介绍】       Pytorch项目实战 垃圾分类 课程从实战的角度出发,基于真实数据集与实际业务需求,结合当下最新话题-垃圾分类问题为实际业务出发点,介绍最前沿的深度学习解决方案。     从0到1讲解如何场景业务分析、进行数据处理,模型训练与调优,最后进行测试与结果展示分析。全程实战操作,以最接地气的方式详解每一步流程与解决方案。     课程结合当下深度学习热门领域,尤其是基于facebook 开源分类神器ResNext101网络架构,对网络架构进行调整,以计算机视觉为核心讲解各大网络的应用于实战方法,适合快速入门与进阶提升。 【课程要求】 (1)开发环境:python版本:Python3.7+; torch 版本:1.2.0+; torchvision版本:0.4.0+ (2)开发工具:Pycharm; (3)学员基础:需要一定的Python基础,及深度学习基础; (4)学员收货:掌握最新科技图像分类关键技术; (5)学员资料:内含完整程序源码和数据集; (6)课程亮点:专题技术,完整案例,全程实战操作,徒手撸代码 【课程特色】 阵容强大 讲师一直从事与一线项目开发,高级算法专家,一直从事于图像、NLP、个性化推荐系统热门技术领域。 仅跟前沿 基于当前热门讨论话题:垃圾分类,课程采用学术届和工业届最新前沿技术知识要点。 实战为先 根据实际深度学习工业场景-垃圾分类,从产品需求、产品设计和方案设计、产品技术功能实现、模型上线部署。精心设计工业实战项目 保障效果 项目实战方向包含了学术届和工业届最前沿技术要点 项目包装简历优化 课程内垃圾分类图像实战项目完成后可以直接优化到简历中 【课程思维导图】 【课程实战案例】
©️2020 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页