热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

android中的自定义tensorflow模型

我已经创建了一个自定义模型。之后,复制了此链接“

我已经创建了一个自定义模型。

之后,复制了此链接“ https://github.com/tensorflow/examples/tree/master/lite/examples/object_detection/android”
用自己的.tflite更改了默认.tflite
更改缓冲区后(我的模型未量化)(我应该由缓冲区1080000设置,默认值为270000)
但是错误在TFLiteObjectDetectionAPIModel.java和行tfLite.runForMultipleInputsoutputs(inputArray,outputMap);

控制台中的错误是“ java.lang.IllegalArgumentException:无效的输出张量索引:1”
我用谷歌搜索并测试了大多数答案,但是我找不到真正的答案!

我已将“ tfLite.runForMultipleInputsoutputs(inputArray,outputMap);”更改为“ tfLite.run(imgData,outputLocations);
而且该错误没有任何问题,但是此代码“ tfLite.runForMultipleInputsoutputs(inputArray,outputMap);”没有任何响应
任何建议的帮助吗?

我的模型是“ https://dinasys.ir/androidTF/assets2.zip”或“ https://dinasys.ir/androidTF/assets3.zip”
它们是相同的,但是资产3已接受了11个小时的培训,而其他3则少于10个小时。



我在我的项目中尝试使用您的模型。

tfLite.run模式下存在问题,它无法解析DataType,但是在tfLite.runForMultipleInputsOutputs模式下,一切正常。

您应该知道,根据docs使用TF-Lite,tflite.run()的两个参数都必须是张量。但是对于输出参数,您仅传递单个浮点数。因此,我很确定这是tfLite.run模式错误"cannot resolve DataType of java.lang.Float"的根本原因。

注意:同样根据文档,原始ByteBuffers以及支持的数据类型(floatintlong,{{1} })支持。您只需对输出执行相同的操作。

我为您上传了我的项目。

使用此link进行下载。

您还可以从here克隆它

如有任何疑问,请随时发表评论。


推荐阅读
author-avatar
stong_lxm
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有