Tensorflow 模型转换 .pb convert to .lite实例


Posted in Python onFebruary 12, 2020

2017年底,Tensorflow 推出Lite版本,可实现移动端的快速运行,其中,一个很关键的问题,如何把现有分类模型(.pb) 转换为(.lite)模型呢?

其实,步骤如下

1- 进入 Tensorflow 源码文件夹(以便bazel可以无需配置找打相应路径)

2- 转换可执行文件

bazel run --config=opt \
 //tensorflow/contrib/lite/toco:toco -- \
 --input_file=/tmp/mobilenet_v1_1.0_224_frozen.pb \  # 待转换模型路径
 --output_file=/tmp/tflite_model2.tflite \      # 目标模型路径
 --input_format=TENSORFLOW_GRAPHDEF \
 --output_format=TFLITE \
 --input_shape=1,224,224,3 \              # 输入图像宽高
 --input_array=input \                 # 输入节点名称<参考1>
 --output_array=MobilenetV1/Predictions/Reshape_1 \  # 输出节点名称<参考1>
 --inference_type=FLOAT \               # 图像数据类型
 --input_data_type=FLOAT

参考1: 如果输入输出节点不知道:进入python,import tf ,并通过如下命令( tf.GraphDef() )查找:

>>> import tensorflow as tf
>>> gf = tf.GraphDef()
>>> gf.ParseFromString(open('/your/path/to/graphname.pb','rb').read())
>>> for n in gf.node:
>>>   print ( n.name +' ===> '+n.op )

参转换后,在android手机上运行,在不考虑精度的前提下,不同实现方式得到的结果如下:

模型 type model size speed
mobilenet-v1-224 .pb 17 mb 106 ms
mobilenet-v1-224 .lite 16.4 mb 72 ms

以上这篇Tensorflow 模型转换 .pb convert to .lite实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python3中str(字符串)的使用教程
Mar 23 Python
使用python装饰器计算函数运行时间的实例
Apr 21 Python
Python简单计算给定某一年的某一天是星期几示例
Jun 27 Python
python树莓派红外反射传感器
Jan 21 Python
详解python 模拟豆瓣登录(豆瓣6.0)
Apr 18 Python
Atom Python 配置Python3 解释器的方法
Aug 28 Python
python实现复制大量文件功能
Aug 31 Python
python的time模块和datetime模块实例解析
Nov 29 Python
Python中常用的os操作汇总
Nov 05 Python
使用python爬取抖音app视频的实例代码
Dec 01 Python
Python实战之实现康威生命游戏
Apr 26 Python
总结Python使用过程中的bug
Jun 18 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
Feb 12 #Python
关于Tensorflow 模型持久化详解
Feb 12 #Python
Python qrcode 生成一个二维码的实例详解
Feb 12 #Python
python标准库sys和OS的函数使用方法与实例详解
Feb 12 #Python
python标准库os库的函数介绍
Feb 12 #Python
Tensorflow 1.0之后模型文件、权重数值的读取方式
Feb 12 #Python
Python django框架开发发布会签到系统(web开发)
Feb 12 #Python
You might like
IIS下PHP连接数据库提示mysql undefined function mysql_connect()
2010/06/04 PHP
jQuery学习笔记之 Ajax操作篇(三) - 过程处理
2014/06/23 Javascript
JavaScript生成随机字符串的方法
2015/03/19 Javascript
JavaScript中的原型prototype属性使用详解
2015/06/05 Javascript
JQuery在循环中绑定事件的问题详解
2016/06/02 Javascript
JavaScript控制输入框中只能输入中文、数字和英文的方法【基于正则实现】
2017/03/03 Javascript
js实现年月日表单三级联动
2020/04/17 Javascript
详解Vue 事件修饰符capture 的使用
2017/12/29 Javascript
关于js对textarea换行符的处理方法浅析
2018/08/03 Javascript
React中使用UEditor百度富文本的方法
2018/08/22 Javascript
Vue 实现前端权限控制的示例代码
2019/07/09 Javascript
Vue点击切换Class变化,实现Active当前样式操作
2020/07/17 Javascript
vue深度监听(监听对象和数组的改变)与立即执行监听实例
2020/09/04 Javascript
ES6学习教程之Promise用法详解
2020/11/22 Javascript
[01:03:03]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
python正则表达式去掉数字中的逗号(python正则匹配逗号)
2013/12/25 Python
python中mechanize库的简单使用示例
2014/01/10 Python
Python标准库之itertools库的使用方法
2017/09/07 Python
Python爬虫中urllib库的进阶学习
2018/01/05 Python
python操作oracle的完整教程分享
2018/01/30 Python
浅谈Scrapy网络爬虫框架的工作原理和数据采集
2019/02/07 Python
python 实现selenium断言和验证的方法
2019/02/13 Python
Python中print函数简单使用总结
2019/08/05 Python
Django--权限Permissions的例子
2019/08/28 Python
python Event事件、进程池与线程池、协程解析
2019/10/25 Python
在pycharm中实现删除bookmark
2020/02/14 Python
使用PyCharm安装pytest及requests的问题
2020/07/31 Python
基于python实现百度语音识别和图灵对话
2020/11/02 Python
eBay比利时购物网站:eBay.be
2019/08/09 全球购物
意大利辅助药品、药物和补品在线销售:FarmaEurope
2020/04/29 全球购物
大学生护理专业自荐信
2013/10/03 职场文书
报告会主持词
2014/04/02 职场文书
《青海高原一株柳》教学反思
2014/04/25 职场文书
2016教师党员学习心得体会
2016/01/21 职场文书
2019年大学生学年自我鉴定!
2019/03/25 职场文书
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python