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 相关文章推荐
Python操作CouchDB数据库简单示例
Mar 10 Python
在Python的Django框架中获取单个对象数据的简单方法
Jul 17 Python
python 列表,数组,矩阵两两转换tolist()的实例
Apr 04 Python
使用 Python 实现简单的 switch/case 语句的方法
Sep 17 Python
浅谈python的输入输出,注释,基本数据类型
Apr 02 Python
Python3日期与时间戳转换的几种方法详解
Jun 04 Python
如何解决django-celery启动后迅速关闭
Oct 16 Python
python psutil监控进程实例
Dec 17 Python
Django media static外部访问Django中的图片设置教程
Apr 07 Python
浅谈Python中threading join和setDaemon用法及区别说明
May 02 Python
python自动化测试三部曲之request+django实现接口测试
Oct 07 Python
Django执行源生mysql语句实现过程解析
Nov 12 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
php桌面中心(三) 修改数据库
2007/03/11 PHP
PHP5中使用PDO连接数据库的方法
2010/08/01 PHP
PHP常用操作类之通信数据封装类的实现
2017/07/16 PHP
PHP getID3类的使用方法学习笔记【附getID3源码下载】
2019/10/18 PHP
prototype.js的Ajax对象
2006/09/23 Javascript
js设置组合快捷键/tabindex功能的方法
2013/11/21 Javascript
js改变鼠标的形状和样式的方法
2014/03/31 Javascript
javascript事件模型实例分析
2015/01/30 Javascript
老生常谈onBlur事件与onfocus事件(js)
2016/07/09 Javascript
js多个物体运动功能实例分析
2016/12/20 Javascript
JS遍历DOM文档树的方法实例详解
2018/04/03 Javascript
详解在vue-test-utils中mock全局对象
2018/11/07 Javascript
详解几十行代码实现一个vue的状态管理
2019/01/28 Javascript
elementUI select组件使用及注意事项详解
2019/05/29 Javascript
Vue Extends 扩展选项用法完整实例
2019/09/17 Javascript
基于elementUI竖向表格、和并列的案例
2020/10/26 Javascript
[05:45]Ti4观战指南(下)
2014/07/07 DOTA
python获取Linux下文件版本信息、公司名和产品名的方法
2014/10/05 Python
python中requests使用代理proxies方法介绍
2017/10/25 Python
python爬虫爬取某站上海租房图片
2018/02/04 Python
Django获取应用下的所有models的例子
2019/08/30 Python
Python从文件中读取指定的行以及在文件指定位置写入
2019/09/06 Python
Python Pillow.Image 图像保存和参数选择方式
2020/01/09 Python
对Matlab中共轭、转置和共轭装置的区别说明
2020/05/11 Python
Python实现删除某列中含有空值的行的示例代码
2020/07/20 Python
Django通过设置CORS解决跨域问题
2020/11/26 Python
基于HTML5新特性Mutation Observer实现编辑器的撤销和回退操作
2016/01/11 HTML / CSS
详解快速开发基于 HTML5 网络拓扑图应用
2018/01/08 HTML / CSS
新西兰领先的内衣店:Bendon Lingerie新西兰
2018/07/11 全球购物
历史学专业推荐信
2013/11/06 职场文书
前厅收银主管岗位职责
2014/02/04 职场文书
单位委托书范本
2014/04/04 职场文书
小公司融资,商业计划书的8切记
2019/07/15 职场文书
准备去美国留学,那么大学申请文书应该怎么写?
2019/08/12 职场文书
详解JS WebSocket断开原因和心跳机制
2021/05/07 Javascript
Kubernetes控制节点的部署
2022/04/01 Servers