如何解决对象检测脚本中 YOLOv3-Tiny 到 TFLite 转换的问题
在过去的几周里,我学到了使用和训练 YOLOv3-Tiny 对象检测模型(更具体地说,yolov3-tiny-3l)并将其部署在 Raspberry Pi 4 上的所有知识。.weights 和模型的 .cfg 文件被转换为 .h5,最后是 .tflite;但是,我在将脚本集成到 EdjeElectronics 的 tflite object detection python script 时遇到了问题。
此模型的目标是在 Coral's EdgeTPU 的帮助下检测我的高级设计项目中模块的立方体和二维码。尽管听起来很幼稚,但我决定使用脚本中各种变量的打印语句(框、类和分数位于第 185-187 行)来调试脚本。我发现示例 COCO SSD MobileNet 文件为前面提到的变量输出了一个浮点数或整数数组,但我转换后的 YOLO 模型返回了一个浮点数数组。
我在 Netron 中打开了示例文件和转换后的 yolo 文件,并且能够确认示例文件的输出层(其中 float32 和我转换后的模型的输出是 conv2d_9、conv2d_12 和 conv2d_15)分别输入 float32[1,13,24],float32[1,26,52,24]。
有哪些选项可以将此输出层数组数组转换为单个数组?
在 Ubuntu 20.10 上使用 keras-yolo3 和 TensorFlow 的 tflite_convert 将模型转换为 keras 模型。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。