【问题标题】:Automatic flora detection in Images [closed]图像中的自动植物群检测[关闭]
【发布时间】:2012-10-08 21:34:02
【问题描述】:

我的图像数据集来自http://www.image-net.org。对于不同的事物,如植物群、动物群、人等,有各种同义词集
我必须训练一个分类器,如果图像属于花卉同义词集,则预测为 1,否则为 0。
属于花卉同义词集的图像可以在http://www.image-net.org/explore 上查看,方法是单击左侧窗格中的植物、植物、植物生命选项。

这些图片包括各种各样的植物 - 如树木、草本植物、灌木、花卉等。 我无法弄清楚要使用哪些功能来训练分类器。这些图像中有很多绿色植物,但有很多花卉图像,没有太多绿色成分。另一个特点是叶子和花瓣的形状。

如果有人能建议如何提取这个形状特征并用它来训练分类器,那将会很有帮助。还建议可以使用哪些其他功能来训练分类器。
以及提取特征后,用什么算法来训练分类器?

【问题讨论】:

  • 应该迁移到 dsp.stackexchange.com

标签: image-processing opencv machine-learning classification feature-extraction


【解决方案1】:

不确定形状信息是否是您链接到的数据集的方法。

只是快速浏览了一些图像,我有一些分类建议:

  1. 自然场景很少有直线 - 直线检测
  2. 您可以忽略其中包含“不自然”颜色的场景。
  3. 如果您想尝试更高级的东西,我建议熵/模式识别之间的混合将形成一个很好的分类器,因为自然场景有很多两者。
  4. 尝试对叶子/花瓣进行模板匹配/形状匹配会让您心碎 - 您需要使用更通用的东西。

至于使用哪个分类器...我通常会在开始时建议 K-means,一旦您有一些结果,请确定实施贝叶斯或神经网络的额外努力是否值得。

希望这会有所帮助。

T.

扩展:

“不自然的颜色”可能是绿色和棕色范围之外的高度饱和颜色。它们非常适合检测自然场景,因为即使一朵花在它的中心,也应该有大约 50% 的场景处于绿色/棕色光谱中。

此外,直线检测在自然场景中应该很少产生结果,因为直线边缘在自然界中很少见。在基本级别上生成边缘图像,对其进行阈值处理,然后搜索线段(近似于直线的像素)。

熵需要一些机器视觉知识。您可以通过确定局部熵然后对结果进行直方图绘制来接近场景here 是您必须使用的类似方法。

如果您要尝试模式识别,您会希望在机器视觉方面取得进步,因为这是一个困难的主题,而不是您可以在代码示例中抛出的东西。一旦颜色和边缘信息(线)用尽,我只会尝试将它们实现为分类器。

如果这是商业应用程序,则应咨询 MV 专家。如果这是大学作业(除非是论文),颜色和边缘/线条信息应该绰绰有余。

【讨论】:

  • 安德烈也是对的。数字信号处理堆栈是此类问题的热门场所。
  • 如何检测“不自然的颜色”?我如何从熵/模式识别开始?给定一张新图像,分类器应该能够检测图像中是否有任何花卉内容。
  • 这是一个大学项目。谢谢。我正在探索熵/模式识别。如果您知道一些从熵/模式识别开始的好资源,请发布它们。
  • blog.damiles.com/category/tutorials/opencv-tutorials 有一些很好的示例,如果您能够使用开放式 CV。不过,在尝试实现它之前,您必须先阅读教科书中有关模式识别的内容。
【解决方案2】:

HOOG 功能几乎是这类问题的事实上的标准,我认为。它们有点参与计算(我不知道您在什么环境中工作)但功能强大。

一个更简单的解决方案可能会让您启动并运行,具体取决于数据集的难度,它是从图像中提取所有重叠的补丁,使用 k-means(或任何您喜欢的方法)对它们进行聚类,然后表示图像作为 SVM 等监督分类器在这组量化图像块上的分布。你会惊讶于这样的工作频率,它至少应该提供一个有竞争力的基准。

【讨论】:

    猜你喜欢
    • 2016-05-22
    • 2016-04-30
    • 1970-01-01
    • 2021-07-14
    • 1970-01-01
    • 2015-03-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多