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的Django框架加载模版的方式
Jul 20 Python
Python实现GUI学生信息管理系统
Apr 05 Python
python获取时间及时间格式转换问题实例代码详解
Dec 06 Python
PyQt5 在label显示的图片中绘制矩形的方法
Jun 17 Python
python识别文字(基于tesseract)代码实例
Aug 24 Python
PyTorch加载预训练模型实例(pretrained)
Jan 17 Python
python GUI库图形界面开发之PyQt5控件QTableWidget详细使用方法与属性
Feb 25 Python
Python操作word文档插入图片和表格的实例演示
Oct 25 Python
Pyqt助手安装PyQt5帮助文档过程图解
Nov 20 Python
Python利用socket模块开发简单的端口扫描工具的实现
Jan 27 Python
基于tensorflow __init__、build 和call的使用小结
Feb 26 Python
利用python实时刷新基金估值(摸鱼小工具)
Sep 15 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
提问的智慧(2)
2006/10/09 PHP
ext form 表单提交数据的方法小结
2008/08/08 Javascript
JAVASCRIPT下判断IE与FF的比较简单的方式
2008/10/17 Javascript
javascript 有趣而诡异的数组
2009/04/06 Javascript
Javascript常考语句107条收集
2010/03/09 Javascript
js取float型小数点后两位数的方法
2014/01/18 Javascript
jQuery中:first选择器用法实例
2014/12/30 Javascript
JavaScript获取当前日期是星期几的方法
2015/04/06 Javascript
jquery实现带缩略图的全屏图片画廊效果实例
2015/06/25 Javascript
js实现砖头在页面拖拉效果
2020/11/20 Javascript
文件上传,iframe跨域数据提交的实现
2016/11/18 Javascript
AngularJS 获取ng-repeat动态生成的ng-model值实例详解
2016/11/29 Javascript
Jquery实现跨域异步上传文件总结
2017/02/03 Javascript
vuejs+element-ui+laravel5.4上传文件的示例代码
2017/08/12 Javascript
微信小程序列表中item左滑删除功能
2018/11/07 Javascript
JQueryDOM之样式操作
2019/03/27 jQuery
微信小程序框架的页面布局代码
2019/08/17 Javascript
[01:05:36]VP vs TNC Supermajor小组赛B组 BO3 第二场 6.2
2018/06/03 DOTA
Python对列表排序的方法实例分析
2015/05/16 Python
python数据结构之图的实现方法
2015/07/08 Python
浅谈Python2、Python3相对路径、绝对路径导入方法
2018/06/22 Python
Python图像处理之简单画板实现方法示例
2018/08/30 Python
python获取本机所有IP地址的方法
2018/12/26 Python
Python异常处理知识点总结
2019/02/18 Python
tensorflow通过模型文件,使用tensorboard查看其模型图Graph方式
2020/01/23 Python
推荐技术人员一款Python开源库(造数据神器)
2020/07/08 Python
python函数超时自动退出的实操方法
2020/12/28 Python
CSS3中:nth-child和:nth-of-type的区别深入理解
2014/03/10 HTML / CSS
adidas马来西亚官网:adidas MY
2020/09/12 全球购物
战略合作意向书范本
2014/04/01 职场文书
继承权公证书
2014/04/09 职场文书
《梅花魂》教学反思
2014/04/30 职场文书
财务人员担保书
2014/05/13 职场文书
八荣八耻的活动方案
2014/08/16 职场文书
导游词之重庆钓鱼城
2019/09/19 职场文书
JVM入门之类加载与字节码技术(类加载与类的加载器)
2021/06/15 Java/Android