【问题标题】:Cat Detection Using Haar Training使用 Haar 训练进行猫检测
【发布时间】:2026-01-01 05:50:01
【问题描述】:

我想使用 HAAR 级联检测可变形物体(在我的例子中是 CAT)。我对多达 20 个阶段的 2000 张正面图像和 3000 张负面图像进行了测试。我没有看到任何预期的事情发生。 我确信这可能是我的训练数据集的问题。我的正面数据集中有猫的图像。在同一只猫的不同形状和姿势。我想知道 Haar 是否能够识别正数据集中的差异,并且仍然将它们识别为猫。

需要帮助,我可以使用其他替代方法吗??

【问题讨论】:

  • 有一篇关于猫检测的论文:Cats and Dogs, Parkhi, CVPR 2012。也许你可以从他们那里得到一些想法。例如,作者决定,猫的身体不能被这种僵硬的模型很好地捕捉到。有一种方法是只检测头部,然后使用分割找到身体的其余部分。
  • 您是否使用 Haar 训练成功创建了猫检测算法?我现在也有同样的问题 :-) 谢谢!
  • 不,我认为 haar 不适用于可变形对象识别。至少,在我的情况下,我无法让它运行,太多的假阴性/阳性。我还尝试了物体识别的词袋方法,它们在刚性物体上做得很好,但在猫身上却不行。在训练分类器时很难捕获数据中的所有可变性。最后,我们作弊并选择了一种非常简单的颜色直方图匹配方法,与我们的意图相去甚远,但足以完成课程项目。

标签: opencv


【解决方案1】:

首先,您没有列出用于训练 haar 分类器的内容。如果您不使用 opencv_traincascades,请从这里开始。

其次检测猫是一项非常困难的工作,有很多不安全的边缘、旋转和空间差异。使用这种思路,自己回答这些问题:

  • 您的阳性数据集是什么样的?
  • 这是否类似于您通过输入提要显示的内容
  • 您的分类器在训练后的误报率是多少?
  • 你在你的背景集中包括了什么(更多看起来像猫而不是猫的图像更好等等)

我建议将您的输出从分类阶段发布到问题中,以便我们更好地了解正在发生的事情。查看这些链接以获得更多帮助。

也许先尝试使用钢笔或徽标,遵循 openCV 教程并了解基础知识? (对不起,如果我假设你不知道基础知识)

G./

【讨论】: