将 TensorFlow 模型从 Object Detection API 转换为 uff

Posted

技术标签:

【中文标题】将 TensorFlow 模型从 Object Detection API 转换为 uff【英文标题】:Convert Tensorflow models from Object Detection API to uff 【发布时间】:2017-11-07 08:35:50 【问题描述】:

似乎没有办法从盒子 Mobilenet(以及来自 TF OD API 的其他模型)转换为 uff 格式,然后再转换为 TensorRT 格式,because of much unsupported layers。 有没有办法删除\替换那些层?例如使用 graph_transform 工具可能吗?我理解并非所有这些层的目的。 这里是default model,如果有人想试试。

【问题讨论】:

【参考方案1】:

UFF 转换工具似乎卡在一些无法识别的层上,也许这会在 GA 版本中得到改进。现在,您需要移除这些层(并且只保留推理所需的最小子集),然后使用 nvinfer 插件 API 实现这些层。

【讨论】:

【参考方案2】:

从 2017 年开始,仍然没有重大进展。 已经开发了许多新的网络,但是从 2017 年开始,UFF 和 TensorRT 转换器仍然无法与许多模型一起使用,我能说一下 2019 年。

互联网上也有一些间接信息,从某种意义上说,在 NVIDIA 中进行 UFF 和 TRT 转换的工作非常小,只有几个人。所以看来这条路是死路一条。

更好的方式和他们所指望的方式是框架本身内部的转换工具。喜欢Tensorflow do with their TRT bindings。

通过这种方法,框架开发人员而不是 Nvidia 添加了新层,因为那里的人跟不上市场营销的步伐。所以最终获得工作工具的机会更多。

【讨论】:

以上是关于将 TensorFlow 模型从 Object Detection API 转换为 uff的主要内容,如果未能解决你的问题,请参考以下文章

从 Tensorflow 对象检测 API 动物园模型导出错误的冻结图

TensorFlow使用object detection训练并识别自己的模型

TensorFlow Object Detection API

Tensorflow object detection API 搭建属于自己的物体识别模型

TensorFlow Object Detection目标检测模型训练时Loss急剧上升直至为NAN

TensorFlow models - object detection API 安装