最近在用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的方式以及验证方式。

喜欢的朋友和点击关注哦

java blob转file_人工智能-Object Detection API 模型转tflite并验证相关推荐

  1. object转float_人工智能-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. 如何用TF Object Detection API训练交通信号灯检测神经网络?

    参加 2019 Python开发者日,请扫码咨询 ↑↑↑ 作者简介:申泽邦(Adam Shan),谷歌认证机器学习专家(Google Developer Expert),兰州大学智能驾驶团队技术负责人 ...

  7. ubunu16.04 TensorFlow object detection API 应用配置

    TensorFlow object detection API应用–配置 主要参考 : https://github.com/tensorflow/models/blob/master/researc ...

  8. tensorflow object detection API训练公开数据集Oxford-IIIT Pets Dataset

    为了避免不必要的麻烦,先说一下我的系统版本 Python 3.6 tensorflow 1.10 windows 7 object detection API安装 object detection A ...

  9. Tensorflow Object detection API 在 Windows10 配置

    Tensorflow Object detection API 在 Windows10 下的配置不如在 Ubuntu 下配置方便,但还是有方法的,介绍一下我的配置流程. 官方目标检测的demo中调用了 ...

最新文章

  1. 完全卸载Oracle方法(亲测有效)
  2. java实现递归下降分析_使用递归实现检查未知层级目录中的文件-Java实用技能
  3. Java接受带文件的表单_Javaweb使用getPart接收表单文件过程解析
  4. linux sd卡 读写速度测试_铠侠(原东芝存储)SD卡,大容量存储时代,高速读写选择...
  5. js两种生成对象模式(公有成员和成员私有)
  6. Centos 6.5 服务器下面配置邮件客户端 发送报警邮件
  7. free 和 fclose
  8. 2D激光雷达的多传感器拼接
  9. PCB Layout的10个细节
  10. 堆排序算法(图解详细流程)
  11. android 电视 竖屏 黑边 -平板,竖视频转换成横视频,要求画面满屏不变形及没有黑边(解决方案)...
  12. 翼次元空间:GoodUP.io与4WiN全球互贸链的基础=智协云店通+BitCOO
  13. springboot启动时自动关闭问题 com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated...
  14. 调用链监控 - Tracing - APM
  15. win服务器系统2012和2016,将 Windows Server 2012 升级到 Windows Server 2016
  16. 你还为没有数据测试而发愁吗?介绍一个专业Fake的python库,什么个人信息、IP、UserAgent统统搞定
  17. CRM系统主要包含什么内容
  18. js添加和删除元素节点
  19. 计算机考试照片在线处理,全国普通计算机等级考试照片尺寸 在线调整的方法...
  20. oop三大特性--封装性

热门文章

  1. Synchronize对象改变
  2. idea 怎么快速创建类的快捷键_「快捷键设置」[IDEA]常用快捷键和个人设置 - seo实验室...
  3. python中gettext文件格式_Python locale.gettext方法代码示例
  4. 强烈推荐:Spring 核心知识点总结.pdf
  5. 堆排序 C++代码实现及思想 排序过程输出 恋上数据结构笔记
  6. Java集合中的排序API分析
  7. python创建文件夹 覆盖_Python 创建新文件时避免覆盖已有的同名文件的解决方法...
  8. poj3061尺取法/前缀和 二分(java)
  9. Java学习笔记——局部变量和成员变量
  10. 看了这篇C++笔记,你出去行走江湖我就放心了【C++】