【问题标题】:Finding Standard deviation of circles - OpenCV related寻找圆的标准差 - OpenCV 相关
【发布时间】:2021-09-12 16:44:23
【问题描述】:

我的图像中有一堆圆圈(相交和不相交的圆圈)。我必须将它们中的每一个(仅不相交)分组为三个圆圈,以使圆圈之间的距离必须最小并且它们之间的标准偏差最小,并且只返回这些圆圈之间距离和标准偏差最小的一组。

每个圆都有 x,y,r 等值,其中 x,y 是圆心,r 是半径。

我的主要目的是在给定的图像中找到交通灯信号(红色、黄色和绿色圆圈)。

【问题讨论】:

    标签: python-3.x numpy opencv


    【解决方案1】:

    我可以想到以下算法:

    1. 为所有圆心构建 KD 树。
    2. 现在重复以下内容:

    i) 选择一个随机圆 A 并找到它最近的邻居 B。如果有圆碰撞或半径偏差大于某个阈值标记 B 以供以后使用。重复直到找到可接受的邻居 B。如果没有找到标记 A 供以后使用。如果找到 B,则重做该过程以在 A 附近找到 C。如果没有找到 C,请尝试靠近 B。如果 A、B、C 都找到标记为交通灯信号。 (通过测量圆圈和排列的中心之间的距离来验证)

    ii) 现在取消标记非交通灯圈并重复 i) 直到找不到更多 A、B、C。

    整个算法类似于聚合聚类的一些变体,生成了 3 个聚类。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-08-06
      • 2012-06-06
      • 2018-08-01
      • 2012-02-27
      • 1970-01-01
      • 2014-02-27
      • 1970-01-01
      相关资源
      最近更新 更多