Tensorflow模型实现预测或识别单张图片


Posted in Python onJuly 19, 2019

利用Tensorflow训练好的模型,图片进行预测和识别,并输出相应的标签和预测概率。

如果想要多张图片,可以进行批次加载和预测,这里仅用单张图片进行演示。

模型文件:

Tensorflow模型实现预测或识别单张图片

预测图片:

Tensorflow模型实现预测或识别单张图片

这里直接贴代码,都有注释,应该很好理解

import tensorflow as tf
import inference
 
image_size = 128 # 输入层图片大小
 
# 模型保存的路径和文件名
MODEL_SAVE_PATH = "model/"
MODEL_NAME = "model.ckpt"
 
# 加载需要预测的图片
image_data = tf.gfile.FastGFile("./data/test/d.png", 'rb').read()
 
# 将图片格式转换成我们所需要的矩阵格式,第二个参数为1,代表1维
decode_image = tf.image.decode_png(image_data, 1)
 
# 再把数据格式转换成能运算的float32
decode_image = tf.image.convert_image_dtype(decode_image, tf.float32)
 
# 转换成指定的输入格式形状
image = tf.reshape(decode_image, [-1, image_size, image_size, 1])
 
# 定义预测结果为logit值最大的分类,这里是前向传播算法,也就是卷积层、池化层、全连接层那部分
test_logit = inference.inference(image, train=False, regularizer=None)
 
# 利用softmax来获取概率
probabilities = tf.nn.softmax(test_logit)
 
# 获取最大概率的标签位置
correct_prediction = tf.argmax(test_logit, 1)
 
# 定义Savar类
saver = tf.train.Saver()
 
with tf.Session() as sess:
  sess.run((tf.global_variables_initializer(), tf.local_variables_initializer()))
 
  # 加载检查点状态,这里会获取最新训练好的模型
  ckpt = tf.train.get_checkpoint_state(MODEL_SAVE_PATH)
  if ckpt and ckpt.model_checkpoint_path:
    # 加载模型和训练好的参数
    saver.restore(sess, ckpt.model_checkpoint_path)
    print("加载模型成功:" + ckpt.model_checkpoint_path)
 
    # 通过文件名得到模型保存时迭代的轮数.格式:model.ckpt-6000.data-00000-of-00001
    global_step = ckpt.model_checkpoint_path.split('/')[-1].split('-')[-1]
 
    # 获取预测结果
    probabilities, label = sess.run([probabilities, correct_prediction])
 
    # 获取此标签的概率
    probability = probabilities[0][label]
 
    print("After %s training step(s),validation label = %d, has %g probability" % (global_step, label, probability))
  else:
    print("模型加载失败!" + ckpt.model_checkpoint_path)

运行输出结果:

Tensorflow模型实现预测或识别单张图片

(标签为3,概率为0.984478)

标签字典:

Tensorflow模型实现预测或识别单张图片

3对应小写d,识别正确。

其他的图片的预测结果:

预测图片1:

Tensorflow模型实现预测或识别单张图片

Tensorflow模型实现预测或识别单张图片

标签字典:

Tensorflow模型实现预测或识别单张图片

图片1,识别结果为1,可能概率0.993034

识别结果还是挺好看的,不知道是不是过拟合了,还是迭代次数不够多,还需要调整调整。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python循环监控远程端口的方法
Mar 14 Python
使用Python设置tmpfs来加速项目的教程
Apr 17 Python
Python使用turtule画五角星的方法
Jul 09 Python
Python实现Mysql数据库连接池实例详解
Apr 11 Python
Python queue队列原理与应用案例分析
Sep 27 Python
Python flask框架如何显示图像到web页面
Jun 03 Python
keras输出预测值和真实值方式
Jun 27 Python
简单了解如何封装自己的Python包
Jul 08 Python
golang/python实现归并排序实例代码
Aug 30 Python
Python + opencv对拍照得到的图片进行背景去除的实现方法
Nov 18 Python
Python基础学习之奇异的GUI对话框
May 27 Python
Python初学者必备的文件读写指南
Jun 23 Python
python django下载大的csv文件实现方法分析
Jul 19 #Python
python使用flask与js进行前后台交互的例子
Jul 19 #Python
Django 模型类(models.py)的定义详解
Jul 19 #Python
Tensorflow实现神经网络拟合线性回归
Jul 19 #Python
使用TensorFlow实现简单线性回归模型
Jul 19 #Python
详解将Python程序(.py)转换为Windows可执行文件(.exe)
Jul 19 #Python
简单了解django缓存方式及配置
Jul 19 #Python
You might like
解析php利用正则表达式解决采集内容排版的问题
2013/06/20 PHP
采用ThinkPHP中F方法实现快速缓存实例
2014/06/13 PHP
php中有关合并某一字段键值相同的数组合并的改进
2015/03/10 PHP
php微信公众平台开发(三)订阅事件处理
2016/12/06 PHP
php高性能日志系统 seaslog 的安装与使用方法分析
2020/02/29 PHP
锋利的jQuery 要点归纳(二) jQuery中的DOM操作(下)
2010/03/23 Javascript
可简单避免的三个JS发布错误的详细介绍
2013/08/02 Javascript
node+express+ejs制作简单页面上手指南
2014/11/26 Javascript
jQuery的图片滑块焦点图插件整理推荐
2014/12/07 Javascript
js获取json元素数量的方法
2015/01/27 Javascript
nodejs修复ipa处理过的png图片
2016/02/17 NodeJs
jQuery实现表格行和列的动态添加与删除方法【测试可用】
2016/08/01 Javascript
ReactJs快速入门教程(精华版)
2016/11/28 Javascript
浅谈Emergence.js 检测元素可见性的 js 插件
2017/11/18 Javascript
详解ES6 export default 和 import语句中的解构赋值
2019/05/28 Javascript
浅谈react-router@4.0 使用方法和源码分析
2019/06/04 Javascript
javascript 原型与原型链的理解及实例分析
2019/11/23 Javascript
在Vue中获取自定义属性方法:data-id的实例
2020/09/09 Javascript
python 生成器生成杨辉三角的方法(必看)
2017/04/10 Python
python组合无重复三位数的实例
2018/11/13 Python
Python3爬虫之urllib携带cookie爬取网页的方法
2018/12/28 Python
Django之无名分组和有名分组的实现
2019/04/16 Python
python笔记_将循环内容在一行输出的方法
2019/08/08 Python
在django项目中导出数据到excel文件并实现下载的功能
2020/03/13 Python
Sam’s Club山姆会员商店:沃尔玛旗下高端会员制商店
2017/01/16 全球购物
CSS代码检查工具stylelint的使用方法详解
2021/03/27 HTML / CSS
计算机专业毕业生推荐信
2013/11/25 职场文书
函授教育个人学习的自我评价
2013/12/31 职场文书
招聘与培训专员岗位职责
2014/01/30 职场文书
小学中秋节活动方案
2014/02/06 职场文书
离婚协议书格式
2014/11/21 职场文书
大学生党性分析材料
2014/12/19 职场文书
2015年项目工作总结
2015/04/29 职场文书
2015年小学重阳节活动总结
2015/07/29 职场文书
情侣餐厅的创业计划书范本!
2019/07/26 职场文书
jupyter notebook保存文件默认路径更改方法汇总(亲测可以)
2021/06/09 Python