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

最近在用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目录执行如下:

5e1c391a82e95fe4b337dd9e6ea5ecb5.png

生成预测使用的pb文件

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

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

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

1b2d138b985326f4a4b44f4433ecf490.png

生成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目录。。。。

c5c31693522bd6a6ff70549fcbae03e1.png

编译生成量化的tflite

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

float类型的模型转换方式:

db2729c38ae96313d96389afbba2d5eb.png

生成float(未量化)的tflite

​如上生成detect.tflite文件。

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

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

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

喜欢的朋友和点击关注哦

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/521940.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Multi Task Learning在工业界如何更胜一筹

摘要: 本文主要介绍多任务学习和单任务学习的对比优势以及在工业界的一些使用。如何从单任务学习转变为多任务学习?怎样使AUC和预估的准确率达到最佳?如何对实时性要求较高的在线应用更加友好?本文将以淘宝实例为大家进行分享多任…

rsync一行代码实现远程文件同步之修改默认22端口

由于需求需要把应用服务器上的日志文件同步到文件服务器上,但是又不能用22端口 文章目录一、应用服务器脚本修改如下二、文件服务器操作三、执行脚本测试四、应用服务器生成ssh key五、文件服务器添加key5.1. 打开.ssh文件夹目录:5.2. 创建authorized_ke…

上云难?TA霸气回应:不要你觉得,一键上云 so easy!

戳蓝字“CSDN云计算”关注我们哦!图片来源网络2019年阿里提出的“All in Cloud”战略以及《全球云计算 IT 基础设施市场预测报告》的数据结果,都在表明企业上云已成不可逆之势;但上云事故接二连三发生似乎又在宣示企业上云之路道阻且长&#…

基于阿里云HiTSDB搭建工业物联网平台实践

摘要: 基于阿里云全面的物联网、云计算与大数据技术搭建云端的企业能源管理物联网平台实现能耗数据采集、统计分析、平衡调度、节能优化等全面的能源管控协同平台。是企业生产运行保障的利器,也是大量企业实现云上管理的实践案例。背景工业企业的能耗占了…

java对象深克隆_JAVA中对象的克隆及深拷贝和浅拷贝

使用场景:在日常的编程过程 中,经常会遇到,有一个对象OA,在某一时间点OA中已经包含了一些有效值 ,此时可能会需一个和OA完全相对的新对象OB,并且要在后面的操作中对OB的任何改动都不会影响到OA的值&#xf…

python安装pyserial模块_Python使用模块Pyserial模块报

用pip安装pyserial后:sudo -H pip install pyserial,运行新建的程序,名称为serial.py,程序中用到:import serial.toos.list_ports,但总是提示ImportError:No module named tools.list_ports,在度娘一顿乱搜后,在stack…

阿里巴巴开源的通用缓存访问框架JetCache介绍

摘要: JetCache是由阿里巴巴开源的通用缓存访问框架,如果你对Spring Cache很熟悉的话,请一定花一点时间了解一下JetCache,它更好用。JetCache可以做类似Spring Cache的注解式缓存,支持TTL、多级缓存、分布式自动刷新&a…

mysql数据库的总结

https://blog.csdn.net/LanlanDeming/article/details/103786146

写速度提升20%,Elasticsearch 创始人给腾讯云发来感谢信

近日,Elasticsearch 的创始人兼首席执行官Shay Banon 向腾讯云发出了一封“特別”的邮件,专程对腾讯团队为Elasticsearch开源社区做出的贡献表示了感谢。 据了解,腾讯工程师通过提交代码,成功优化了Elasticsearch高并发写入性能&…

阿里深度学习的“金刚钻”——千亿特征XNN算法及其落地实践

摘要:随着十二点的钟声响起,无数人盯着购物车开启了一年一度的“剁手”之旅。可你有没有想过这购物狂欢的背后是什么支撑起了数据规模如此庞大的计算任务?其实不只是“双十一”,每一个用户的点击和浏览,每一件宝贝的排…

python open函数参数newline_Python open() 函数

open(file, moder, buffering-1, encodingNone, errorsNone, newlineNone, closefdT)模式描述r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。r打开一个文件用于读写。文件…

java访问其它服务器,一个Java Web应用程序是否可以在tomcat服务器的同一本地主机中调用另一个Java Web应用程序...

i am trying to deploy two web applications say appA and appB in same local host tomcat server and when the both the applications are up in running is it possible to call appB to appA using ajax call or redirect解决方案What you are looking for toa chieve ca…

vue推荐项目

https://github.com/Antabot/White-Jotter v人事

全球唯一:MySQL社区2018年度公司贡献奖颁给阿里云

摘要:在刚刚的Percona Live开源数据库大会上,MySQL社区委员会宣布将2018年度的MySQL社区公司贡献奖(Corporate Contributor Award)唯一颁给阿里云。图中右一为阿里云数据库RDS团队 彭立勋MySQL社区颁发次奖项是为了感谢阿里云多年…

模拟灰度传感器循迹的程序_灰度传感器的工作原理

灰度传感器是模拟传感器,有一只发光二极管和一只光敏电阻,安装在同一面上。灰度传感器利用不同颜色的检测面对光的反射程度不同,光敏电阻对不同检测面返回的光其阻值也不同的原理进行颜色深浅检测。在有效的检测距离内,发光二极管…

Docker Nexus3 maven 私服(搭建篇)

文章目录一、环境准备1. 安装docker2. 启动docker3. 拉取镜像4. 目录权限5. 创建容器6. 监控日志二、登录配置2.1. 效果验证2.2. 登录2.3. 初始化一、环境准备 1. 安装docker 使用yum命令在线安装 yum install docker2. 启动docker systemctl start docker3. 拉取镜像 doc…

这个充电宝太黑科技了,又小又不用自己带线,长见识了~

戳蓝字“CSDN云计算”关注我们哦!现如今我们出门时,手机几乎都是随身携带支付用手机,移动办公用手机,刷剧玩游戏用手机手机可以说与我们工作,生活密不可分。只不过手机频率使用如此之高,也使得用电量大增当…

逆元java_逆元 - 阿聊 - 博客园

每个数a均有唯一的与之对应的乘法逆元x,使得ax≡1(mod n) , 一个数有逆元的充分必要条件是gcd(a,n)1,此时逆元唯一存在 。逆元的含义:模n意义下,1个数a如果有逆元x,那么除以a相当于乘以x。逆元的定义&#…

QuickBI助你成为分析师——群空间自主开通嵌入第三方报表权限

摘要: 用户使用过程中经常需要将创建的仪表板嵌入至自己应用中,方便查看。目前目前高级版群空间下支持用户自助化开通报表权限,通过获取拼接Token方式后台验证更加严格,并且支持实时更新/关闭Token以保证数据安全。用户使用过程中…

如何查看一个组件的 classid是多少_万一免五(万1免5)是骗人的吗?如何查看自己的交易费率是多少?万一免五最新问题汇总!...

前言每天都会遇到很多问题,大多数问题是重复的,所以整理到公众号里,希望你们看一下,别再一遍遍问了....万一免五开户是真的吗?随着监管越来越严,可以给万一免五的券商也越来越少,只要赶在万一免…