-2

有人可以帮我弄清楚如何通过多个点绘制一条直线吗?我的意思不是让一条线穿过两点,或者一条直线上的点。我想绘制一条与每个点的距离最小的线。像这样的东西:

line_through_points

4

2 回答 2

1

以下是图像处理中使用的一些选项,在存在明显噪声和/或异常点的情况下,通常需要找到最佳拟合线(以及最佳拟合曲线、形状等)。您需要考虑每种方法的适用性和计算时间。

  1. 最小二乘拟合 - 通过多个点找到最佳拟合线的标准技术,但如果点少且有一个或多个异常值,则可能会产生较差的拟合。http://en.wikipedia.org/wiki/Least_squares
  2. RANSAC——随机抽样和共识;在更高维度上特别好。http://en.wikipedia.org/wiki/RANSAC
  3. 霍夫线拟合 - 如果您有许多靠近一条线的点以及许多噪声点,则很好。http://en.wikipedia.org/wiki/Hough_transform

最小二乘线性拟合可能是最好的尝试。

http://www.mathworks.com/help/stats/lsline.html

http://www.mathworks.com/help/curvefit/least-squares-fitting.html

于 2013-09-19T22:21:55.247 回答
0

它通常被称为“最佳拟合线”。

http://www.matrixlab-examples.com/polynomials.html

看看使用polyfit

于 2013-09-19T17:40:21.097 回答