【问题标题】:Splitting a noisy X-Shaped cluster into 2 "linear" clusters将嘈杂的 X 形集群拆分为 2 个“线性”集群
【发布时间】:2017-09-24 09:17:31
【问题描述】:

上下文: 我目前正在研究一个图像处理问题,我需要从二进制噪声图像中识别线条。噪声来自测量和信号处理轮次,它们提取了我们设备中的转换位置,无法进一步减少。

“簇”是使用链接算法生成的(所有接触的点,或在指定距离内的所有点都被分组在一个簇中[在给定的示例中,标准是两个过渡点之间的一个像素的最大孔大小]) .然后,我为这些集群中的每一个计算 Hough 变换,从最佳线的原点提取最可能的角度和距离。我还提取了这两个变量的不确定性(当集群不是马铃薯并且具有多个点时,通常是几度)。使用这些信息,我能够非常有效地重建线条(知道当我们的设备没有缺陷时,所有相邻的过渡总是平行的)。但我的问题来了:

问题: 由于设备和设计特定的杂质,一些过渡会交叉!这意味着一些集群变成了 X 形,我的霍夫变换不再为这个集群提供正确的角度和不确定性。另外,因为我的重组算法在簇是过渡的一部分时会消除它们,这意味着一些过渡会被剪切。

解决方案: 我正在寻找一种将 X 形簇拆分为 2 个“线性”簇的方法,然后我可以对每个簇应用霍夫变换并执行我的线检测算法(当一个点没有杂质时效果很好)路!)

这是我的示例图像中以红色显示的 X 形簇的 Y-X 坐标(我知道拥有 y-x 坐标并不常见。但在处理类似矩阵的图像时效果最好):

239 240 240 241 241 242 242 243 243 244 244 245 245 246 246 247 247 248 248 249 249 250 250 251 252 252 252 252 253 253 253 252 252 253 253 253 253 254 254 253 254 255 255 251 251 253 256 254 255 255 257 257 250 251 251 258 255 255 257 258 259 259 250 250 251 251 260 256 260 261 261 249 249 250 251 251 262 257 262 263 263 249 249 264 264 256 265 265 265 248 249 266 266 267 267 268 268

658 658 659 658 659 660 661 656 657 658 657 659 660 657 658 660 661 658 659 662 663 661 662 663 659 660 663 664 661 662 665 657 658 657 658 659 660 663 664 666 667 665 666 655 656 656 664 668 667 666 676 669 650 60 60 674 674 660 660 650 650 60 674 660 650 650 60 60 674 660 674 666 669 669 669

【问题讨论】:

    标签: image-processing cluster-computing cluster-analysis


    【解决方案1】:

    也许你可以尝试一些基于 RANSAC 算法的想法。

    • 从 X 形簇中采样几个点,用一条线拟合它们,然后检查簇中有多少点非常接近这条线。
    • 如果您采样的点来自 X 的两个不同分支,则线拟合将不匹配 X 的任何分支,因此只有少数点会非常接近该线拟合。在这种情况下,丢弃并尝试再次采样几个点。
    • 如果您采样的点来自 X 的同一分支,则该分支上的几乎所有点都应该非常接近线拟合。
    • 如果接近线拟合的点数较多,您可以说所有这些点都属于一个子集群,并在这些点上计算 Hough 变换
    • 其余点可用于计算另一个角度(或者您也可以从其余点中采样点,为其拟合一条线并获取与该线匹配的所有点)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-06-03
      • 2020-01-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多