【问题标题】:How do I detect an object size in Sci-Kit Learn / Tensorflow?如何在 Sci-Kit Learn / Tensorflow 中检测对象大小?
【发布时间】:2017-10-16 00:32:24
【问题描述】:

我正在构建一个需要识别图像中对象大小的应用。我需要能够读取黄瓜的图片,然后告诉黄瓜有多少像素长。我过去建立了一个图像分类器,但不知道如何检索分类图像并找到尺寸。

我对机器学习和 sci-kit 学习有基本的了解。任何建议或指南都会非常有帮助和感激!

编辑:这听起来可能很愚蠢,但我可以将任何东西放入神经网络以获得自动结果吗?例如,我是否可以在具有目标长度的黄瓜图像上训练神经网络,并期望神经网络知道我想从图像中检索像素长度?

【问题讨论】:

  • 您指的是图像分割。图像分割和图像分类是机器学习“任务”的例子。
  • 感谢您的澄清!我已经更新了我的问题
  • >例如,我是否可以在具有目标长度的黄瓜图像上训练神经网络,并期望神经网络知道我想从图像中检索像素长度?是的你可以。这称为回归。最好的方法是首先构建一个分类 DNN。然后剥离全连接层并将其替换为回归层,其中目标是像素数。但是,您将需要大量的训练数据
  • 非常感谢您的回复!因此,在构建分类 DNN 时,我是否只训练黄瓜和其他随机物品的图像以及 0 或 1 来判断它是否真的是黄瓜?当我实际使用该应用程序时,我不打算使用除黄瓜以外的任何图片,所以我不确定我是否完全需要一个对象分类器。

标签: machine-learning tensorflow scikit-learn neural-network image-segmentation


【解决方案1】:

根据您的用例,使用OpenCV. It has bindings for python, C, C++ and java. 可能会更好。如果你的黄瓜总是在相同的背景上,这就是我会采取的 100% 的路线,因为 OpenCV 有完全可以做这种事情的方法。

如果由于某种原因您必须在生产中使用 TF,那么您仍然应该使用 OpenCV 来准备数据以训练神经网络。准备一堆黄瓜的示例图像,使用 OpenCV 剪下黄瓜并将其放入大约 500,000 个示例图像中(缩放和旋转随机数量,可能带有一点剪切或模糊或两者兼有),并将其用作您的数据集输入 TF。 您应该能够输入真/假值(黄瓜与否)以及尺寸。据我所知,它应该同时学习它们。

确保您包含大量空场景的图像,然后包含相同场景的图像以及其中的目标对象。理想情况下,您会希望使用与您的应用程序运行相同的环境。

很抱歉发布答案而不是评论。声望还不够。

附:如果您使用颜色而不是形状来检测对象,则要容易得多

干杯, 安德鲁

【讨论】:

猜你喜欢
  • 2016-12-14
  • 2017-06-20
  • 2018-01-01
  • 2019-05-24
  • 1970-01-01
  • 2019-11-09
  • 2014-05-17
  • 1970-01-01
  • 2020-05-20
相关资源
最近更新 更多