TensorFlow 自定义对象检测结果令人失望 - 为啥?

Posted

技术标签:

【中文标题】TensorFlow 自定义对象检测结果令人失望 - 为啥?【英文标题】:TensorFlow Custom Object Detection Disappointing Result - Why?TensorFlow 自定义对象检测结果令人失望 - 为什么? 【发布时间】:2018-07-14 11:40:57 【问题描述】:

两周前我刚刚启动了 TF 对象检测 API,并设法训练了一个模型来识别一个自定义对象,在我的例子中是一个麦克纳姆轮。

详情如下:

没有。训练图像数 = 125 所有训练图像的大小约为 500 x 500(正负) 迁移学习 使用的型号 = ssd_mobilenet_v1_coco 批量大小 = 2 总步数 = 12715 loss在0.5000-2.5000左右,有的时候波动到10多,不知道为什么

结果如下: first image 令人鼓舞。

second image 开始让我有点失望。我希望模型能够检测到四个(四个盒子)麦克纳姆轮。为什么?

然后,我怀疑我训练的模型有问题。我尝试了示例测试图像,third image 和 fourth image,然后我确信这完全不是我最初的目标。

我一直在阅读这个post,我认为我们的问题非常相似(他设法解决了它)。他提到输入图像需要小于 600 x 1024,所以我尝试了fifth image,不出所料,结果再次令人失望。

我浏览了sentdex 的教程系列,在评论部分,我注意到很多人也面临这个问题。那么,现在该怎么办?

有人可以帮我编辑列表吗?为什么我不能进入一个段落一个列表?

【问题讨论】:

【参考方案1】:

125 张图片?使用这么多图像,您将无法获得非常好的结果。如果您想验证这确实是问题所在,请尝试仅使用原始 125 幅图像的子集进行训练。

例如,当您训练 10 张图像时,输出有多糟糕?

使用 50 张图片效果会更好吗?

当您使用 125 张图片时效果会更好吗?

如果准确度随着数据集大小的增加而提高,您可以推断并猜测使用 1000 张图像,您将能够做得更好。我猜那是你的问题。

【讨论】:

用 300 张图片测试,它得到了改进!谢谢。 嗨,我现在对一件事感到困惑.. test.record 实际上是为了什么?当整个过程只是关于训练时,为什么我们需要 test.record 呢?在这个video 中,他从 test.record 中获取图像来测试新训练的模型,模型不是已经从 test.record 中知道了它的图像吗? 这是一个单独的问题。我没用过api

以上是关于TensorFlow 自定义对象检测结果令人失望 - 为啥?的主要内容,如果未能解决你的问题,请参考以下文章

社区说 |今晚直播! 使用 TensorFlow Lite 构建和部署自定义对象检测模型

社区说 |今晚直播! 使用 TensorFlow Lite 构建和部署自定义对象检测模型

社区说 |今晚直播! 使用 TensorFlow Lite 构建和部署自定义对象检测模型

社区说 |今晚直播! 使用 TensorFlow Lite 构建和部署自定义对象检测模型

如何在 iOS 中运行 Tensorflow 对象检测 API 模型?

物体检测快速入门系列 | 01-基于Tensorflow2.x Object Detection API构建自定义物体检测器