最近在用TensorFlow Object Detection API训练目标检测模型,训练好的pb模型大小17.6M,用pb预测效果不错,于是想着如何在手机端运行,查看官网关于tflite的转换,网址:https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/running_on_mobile_tensorflowlite.md。

预测使用的pb模型:

在主目录下的research目录执行如下:

生成预测使用的pb文件

注意里面的相关路径需要换成自己的ckpt的目录。执行完后,会看到一个名字为--output_directory指定的目录。这里为exported_graphs目录,里面包含了一个SavedModel 和frozen graph,其中的.pb文件就是预测使用的。

如上转换pb和预测过程参考我之前的文章即可。

关于tflite,需要使用如下操作:

生成frozen graph

注意第二行pipeline_config_path为你的pipeline.config目录路径,trained_config_path路径为训练好的ckpt模型文件,output_dir为tflite输出目录文件夹名字,执行完后在tflite目录会看到两个文件tflite_graph.pb and tflite_graph.pbtxt.

接下来就是转tflite了,之前尝试了其他转tflite的方式,虽然只有几行代码,但发现一直有问题,因此按照官网要求一步一步转,这次使用TOCO转tflite,首先需要安装TensorFlow源码并编译。。。。。切记,要不然找不到bazel目录。。。。

编译生成量化的tflite

​注意在编译后的bazel同一级目录执行,input_file为上一步生成的tflite_graph.pb文件。output_file为本次要生成的tflite文件。其他的为固定写法,如果你的模型输入不是300x300注意改input_shapes.执行完就能看到一个detect.tflite文件,该文件大小17M多,这次量化后的模型。

float类型的模型转换方式:

生成float(未量化)的tflite

​如上生成detect.tflite文件。

注意:在对比tflite和pb的一致性时,输入到tflite的图片需要进行(image-127.5)/128操作。否则模型输出结果和pb文件对不上。

这样pb文件和tflite预测的结果就能一样,不过float模型大小和pb文件差不多,而且量化的时候模型大小为0,不明白为什么量化的时候模型为量化成功原因,现在只能使用float类型的tflite

后续再讲其他转pb和tflite的方式以及验证方式。

喜欢的朋友和点击关注哦

object转float_人工智能-Object Detection API 模型转tflite并验证相关推荐

  1. java blob转file_人工智能-Object Detection API 模型转tflite并验证

    最近在用TensorFlow Object Detection API训练目标检测模型,训练好的pb模型大小17.6M,用pb预测效果不错,于是想着如何在手机端运行,查看官网关于tflite的转换,网 ...

  2. tensorflow环境下的识别食物_Tensorflow object detection API 搭建属于自己的物体识别模型——环境搭建与测试...

    1.开发环境搭建 ①.安装Anaconda 建议选择 Anaconda3-5.0.1 版本,已经集成大多数库,并将其作为默认python版本(3.6.3),配置好环境变量(Anaconda安装则已经配 ...

  3. Tensorflow object detection API训练自己的目标检测模型 详细配置教程 (一)

    Tensorflow object detection API 简单介绍Tensorflow object detection API: 这个API是基于tensorflow构造的开源框架,易于构建. ...

  4. 转 TensorFlow Object Detection API 多GPU 卡平行计算,加速模型训练速度教学

    本篇记录如何使用多张GPU 显示卡,加速TensorFlow Object Detection API 模型训练的过程. 虽然TensorFlow Object Detection API 已经有支援 ...

  5. TensorFlow Object Detection API 多GPU 卡平行计算,加速模型训练速度教学

    本篇记录如何使用多张GPU 显示卡,加速TensorFlow Object Detection API 模型训练的过程. 虽然TensorFlow Object Detection API 已经有支援 ...

  6. Tensorflow object detection API 搭建物体识别模型

    ----------------------------------------------------先把别人博客教程跑通-------------------------------------- ...

  7. Tensorflow object detection API 搭建自己的目标检测模型并迁移到Android上

    参考链接:https://blog.csdn.net/dy_guox/article/details/79111949 之前参考上述一系列博客在Windows10下面成功运行了TensorFlow A ...

  8. 关于使用tensorflow object detection API训练自己的模型-补充部分(代码,数据标注工具,训练数据,测试数据)

    之前分享过关于tensorflow object detection API训练自己的模型的几篇博客,后面有人陆续碰到一些问题,问到了我解决方法.所以在这里补充点大家可能用到的东西.声明一下,本人专业 ...

  9. 使用tensorflow object detection API 训练自己的目标检测模型 (三)

    在上一篇博客"使用tensorflow object detection API 训练自己的目标检测模型 (二)"中介绍了如何使用LabelImg标记数据集,生成.xml文件,经过 ...

最新文章

  1. 使用 OSC Maven 第三方仓库
  2. fseek获取大于4G的文件大小的问题
  3. FunPlus特效专家张韶勇:如何利用跨平台工具快速制作像素动画?
  4. 白话算法(6) 散列表(Hash Table)从理论到实用(中)
  5. 助力共享经济,芝麻信用背后的技术
  6. LeetCode 515. Find Largest Value in Each Tree Row
  7. 树莓派PICO:DS1302时钟芯片(MicroPython)
  8. 基于微信小程序的智能推荐点餐系统(附全部代码)
  9. 6.通信原理 ——数字基带传输系统(第七版 樊昌信 曹丽娜编著)
  10. 同r做一个窗口_数据无价,关注硬盘健康状况群晖NAS如何做硬盘坏道检测
  11. 将Subversion(SVN)日志记录导出到excel表格(理论windows和Linux通用)
  12. CodeMeter服务无法启动
  13. c++ 开根号程序 算法实现 C++函数同时返回两个值
  14. 第6节 远程管理路由器及交换机—基于Cisco Packet Tracer
  15. 【排行榜】苏州配眼镜推荐这四类口碑眼镜店
  16. 复盘618:数字狂欢背后透露了哪些隐藏信号?
  17. 疑为灵异现象不可思议的透明液晶揭秘
  18. 模型量化 pytorch2onnx
  19. 如何更新seaborn库_Python 绘图总结(seaborn库的使用) (上)
  20. 实现input框显示,但禁止输入

热门文章

  1. 数据结构实验之栈:行编辑器
  2. 数据库中的模式分解与无损连接性
  3. PostgreSQL数据目录深度揭秘
  4. Java单元测试技巧之PowerMock
  5. 「技术人生」专题第1篇:什么是技术一号位?
  6. Hologres+Flink流批一体首次落地4982亿背后的营销分析大屏
  7. 明源云:与阿里云生态共同成长
  8. 一个阿里产品经理眼中的“垃圾分类”
  9. 这款神秘的移动端OCR引擎,如何做到“所见即所得”?
  10. I+关系网络分析发布,提供完整的可视化分析和关系引擎功能