machine-learning - 如何使用tensorflow获取inception模型中分类图片的热图或x y坐标(边界框)

标签 machine-learning computer-vision tensorflow deep-learning object-recognition

所以我最近按照本教程来训练我自己的图像分类器

https://codelabs.developers.google.com/codelabs/tensorflow-for-poets/?utm_campaign=chrome_series_machinelearning_063016&utm_source=gdev&utm_medium=yt-desc#0

对于那些不知道的人来说,它允许重新训练 Google Inception 模型的最后一层,以便使预测图适用于我们自己的自定义类别。

完成训练后,我使用本教程在 iOS 上部署了模型

https://petewarden.com/2016/09/27/tensorflow-for-mobile-poets/

该模型在自然图像上表现出色。我在自然图像上的准确率高达 98%。它只接受了两堂课的培训。假设它只是对图像中是否存在计算器给出"is"或“否”的答案。如果计算器存在,它会说"is",如果没有,它会说“否”。

我的问题是,是否可以使用我们的输出图甚至检测的热图在计算器上绘制边界框。因为我需要根据检测进一步裁剪图像。

最佳答案

令人失望但准确的答案是 ImageNet 训练仅从输入图像生成标签,而不是边界框。您需要训练网络来识别投资返回率。 this SO answer中有几篇有趣的论文这可能会有所帮助,关键术语是“投资返回率”和“显着性检测”。

如果您迫切希望重用该预先训练的网络,您可以尝试对图像进行随机子裁剪,并选择仍然具有正确标签的最小的一个。我从未尝试过这个,所以它可能是一个糟糕的代理。

编辑:看起来像 this paper使用图像分类网络 计算显着图。我会遵循他们的想法。

关于machine-learning - 如何使用tensorflow获取inception模型中分类图片的热图或x y坐标(边界框),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40187685/

相关文章:

python - 对基于文本的信息进行分类(即实现字符串内核)

c++ - 增加 SIFT 中检测到的特征数量会提高精度吗?

python - 如何构建具有多个输入的 Tensorflow 模型?

python - Cloud ML Engine 在线预测性能

python - 如何在 scikit-learn 管道中组合数字和分类特征?

machine-learning - pytorch 中内核大小和填充的默认值是多少?

python - LightGBM多分类预测结果

opencv - 使用SIFT的最佳格式是什么?

xcode - CoreML:iOS:如何获取检测到的模型中心的二维坐标

python - Tensorflow 2.0 中 tf.contrib.framework.nest.flatten_dict_items() 的等效项是什么?