如何在 iOS 中运行 Tensorflow 对象检测 API 模型?
Posted
技术标签:
【中文标题】如何在 iOS 中运行 Tensorflow 对象检测 API 模型?【英文标题】:How do I run a Tensorflow Object Detection API model in iOS? 【发布时间】:2018-05-20 16:32:18 【问题描述】:我刚刚训练了一个结果令人满意的模型,并且我有 freeze_inference_graph.pb 。我将如何在 ios 上运行它?如果有帮助,它在 SSD Mobilenet V1 上进行了培训。理想情况下,我想使用 GPU 运行它(我知道 tensorflow API 在 iOS 上无法做到这一点),但最好先在 CPU 上运行它。
【问题讨论】:
【参考方案1】:支持 just announced 将 TensorFlow 模型导入 Core ML。这是使用the tfcoreml converter 完成的,它应该接收您的.pb 图形并输出Core ML 模型。从那里,您可以将此模型与 Core ML 一起使用,并获取静止图像或视频帧进行处理。
此时,您需要确保提供正确的输入色彩空间和尺寸,然后正确提取和处理 SSD 结果,以获得您的对象类和边界框。
【讨论】:
如果你决定走这条路,CoreMLHelpers 有一些辅助代码用于对边界框进行非最大抑制(从 TF 对象检测 API 移植而来)。 github.com/hollance/CoreMLHelpers 我最近尝试使用苹果现在拥有的 turicreate。在 SFrame 中加载非常简单,拆分为训练/测试数据,创建模型,然后将模型导出到.mlmodel
文件中,您只需将其放入 xcode以上是关于如何在 iOS 中运行 Tensorflow 对象检测 API 模型?的主要内容,如果未能解决你的问题,请参考以下文章
如何从代码运行 tensorflow 对象检测 api (model_main_tf2)?
中文视频教学 | 在 iOS 中使用 TensorFlow Lite
Tensorflow 2 对象检测 API:Numpy 版本错误
如何将 CoreML 模型转换为 TensorFlow 模型?