【问题标题】:object recognition algorithm that can generate Bounding box along the object可以沿对象生成边界框的对象识别算法
【发布时间】:2020-05-19 06:18:07
【问题描述】:

我正在处理一个包含饼干和肥皂的数据集,其中大多数情况下饼干/肥皂都是旋转的。对于训练图像,我在图像中有一个白色背景,所以我可以通过对白色进行阈值化来生成一个与对象一起的边界框。但在测试中背景可能是任何东西。

此图像中的边界框应该看起来像绿色,而不是红色:Bounding Box

我的意思是沿对象的边界框是指上图中的绿色边界框。

我已经实现了 YOLOV3,它生成了红色类型的边界框。所以我需要一个对象识别算法来生成绿色类型的边界框

【问题讨论】:

    标签: opencv image-processing object-recognition background-foreground


    【解决方案1】:

    您的问题有点含糊,但根据我的理解,这是一个可能的答案。您可以做的一种方法是进行自适应阈值处理 (OpenCV),然后使用 findContours。过滤掉所需对象后,您可以在轮廓点上执行 minAreaRect(搜索 OpenCV minAreaRect 示例)。

    这是一个可能有用的链接:

    Min Area Rect Example

    【讨论】:

    • 只是为了澄清这不是一个对象识别算法(正如你的问题的标题所要求的那样)..这只是分割机制。
    • 抱歉,@Knight Forked 以错误的方式提问。好的分割方面可以自适应阈值从独立于背景的图像中提取前景,bcz背景可以是任何东西。
    • 嗯,这很难说。很大程度上取决于背景。如果您的前景与您的背景几乎无法区分,那么您就不走运了。您可能仍想尝试adaptiveThreshold(或任何其他全局/局部阈值 - Otsu 等),看看哪一个最适合您的需求。最终,您将不得不使用您将要处理的图像/数据类型的特定领域知识来限制阈值和轮廓查找。
    • 我已经实现了一个 haar-cascade 分类器,但是 haar-cascade 的问题是:它不会在旋转的物体上产生边界框。 (就像它不是旋转不变的,如果我用非旋转图像训练一个 haar-cascade,它不会在旋转图像上产生边界框)。你有意见吗??
    • @KnightForked:自适应阈值处理将完全失败。背景与前景一样复杂。如果没有您要查找的模板,则无法完成此任务。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-04
    • 2017-10-07
    • 1970-01-01
    • 2020-04-03
    • 2015-10-26
    相关资源
    最近更新 更多