【问题标题】:Creating a haar classifier using opencv_traincascade使用 opencv_traincascade 创建一个 haar 分类器
【发布时间】:2023-04-04 12:02:01
【问题描述】:

我在创建 haar 分类器时遇到了一些麻烦。我需要建立一个分类器来检测汽车。目前我在python中编写了一个读取图像的程序,我在对象所在的区域周围绘制了一个矩形,一旦绘制了矩形,它就会输出图像名称,矩形的左上角和右下角坐标。我不确定从这里去哪里以及如何实际构建分类器。谁能给我任何帮助?

编辑*

我正在寻求有关如何使用 opencv_traincascade 的帮助。我查看了文档,但不太清楚如何使用它来创建要在检测程序中使用的 xml 文件。

【问题讨论】:

    标签: python opencv machine-learning computer-vision object-detection


    【解决方案1】:

    这看起来您需要先确定要训练分类器的功能,因为使用 haar 分类器可以从这些额外功能中受益。从那里你需要train分类器,这需要你获取很多有汽车和没有汽车的图像,然后运行它并让它调整它正在拍摄的平均值以便使用您选择的功能尽可能地进行分类。

    要获得更好的分类器,您必须弄清楚特征的顺序以及将它们放在一起的最佳顺序,以进一步深入研究对象并确定它是否真的是您正在寻找的东西。同样,对于您的特定功能和整个问题,这将需要大量示例。

    【讨论】:

    • 这就是我对我编写的程序所做的事情。我拍了汽车和空停车场的视频。我使用 ffmpeg 生成所有图像。在我的程序中,我使用矩形来突出显示我正在寻找的内容。我现在需要的是如何使用 opencv_traincascade。我无法判断它的正面或反面。
    • 啊,好的,我会在您的问题中添加有关使用opencv_traincascade 的具体内容,以使其更具体。要添加有关opencv 的信息,您似乎需要将特定图像单独标记为负图像和正图像。这是通过一个info.dat 文件(可以更改)和一个提供该文件属性的正文件来完成的。然后通过opencv_traincascade 运行以创建您的值,然后在您的分类器中使用。
    • 所以不要拥有文本文件。当我在图像中的对象周围放置一个矩形时。我创建一个 .dat 文件并放置坐标,在该文件中是正还是负?
    • 不,我出于个人命名约定使用了info.data。您需要做的是有一个negative 样本目录和一个positive 样本目录。 info.dat 告诉培训师在实际应用程序中应该使用哪些文件:negatives.dat 将保存所有negative 示例图像位置,另一个positives.dat 包含positive 的位置图片。文档opencv_traincascade 对此进行了更简洁的描述。
    • 对不起。我现在明白了,感谢您的帮助,我现在将着手处理。希望它会正常工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-06-02
    • 2015-09-18
    • 2014-10-24
    • 2018-09-07
    • 2011-11-06
    • 2012-06-25
    • 2016-05-09
    相关资源
    最近更新 更多