Python使用均方根法拟合多条直线

时间:2017-05-31 18:28:17

标签: python opencv

我的图像有多条几乎直线。我想使用均方根法在这些直线上拟合点。但是,我希望多条线条合适,从下图中可以看出这一点。我已经尝试过像Hough Transform这样的变换和python中的fitline方法,但是它们给了我略微倾斜的线条,这就是为什么我认为我会选择RMS方法。我知道如何在一条线上安装一条线但是有什么方法可以根据需要一次装入3条线?

图像: enter image description here

1 个答案:

答案 0 :(得分:2)

除非您的目标线非常接近平行,否则按斜率聚类将起作用;在这种情况下,您希望进行更多处理,例如每个段的斜率/截距对,并对这些结果进行聚类。无论如何,没有必要重复HoughLines。

鉴于你有平行的分隔线,我建议你做一些预处理。您是否有一个现成的方法,可以让您近似分段的端点?如果是这样,尝试使用一个简单的两点公式来获得这些线的(斜率,截距)对,并对这些线进行聚类。这将整齐地将段分类为适当的线性集。

如果您没有识别出细分,您可以先尝试使用频谱聚类算法来识别它们;选择一个在密度和连接性方面表现出色的人;你真的不关心差距敏感度。