沿最佳拟合线的点顺序

问题描述 投票:0回答:1

我有一个点 (x,y) 列表,我需要能够确定沿最佳拟合(绿色)线的点的顺序。 Points on line

如图所示,我希望它们的顺序为 1,2,3,即使 x 坐标的顺序为 x3,x1,x2 (我知道 y 坐标看起来像我想要的顺序,但那是只是这个例子)

如果我有一条线 aX + bY + c=0,有没有办法找到垂直于穿过点(X1,Y1)的线的点?

查看了回归算法,但它们似乎只是给了我这条线。

看着图片,我想我应该能够计算出每条蓝线,它们与绿线垂直并穿过适当的点。

然后求解蓝线与绿线相交的点。

然后计算沿绿线距每个绿色/蓝色交叉点的特定点的距离。

有捷径吗? 如果我只处理 <100 points, should I just rotate them about the point on the green line where y=0 and use the new x-value as the sequence?

geometry regression
1个回答
0
投票

在直线上定义一些基点

S
,并得到它的方向向量
D

然后对于每个点

P[i]
使用点(标量)积计算正交投影到直线上的参数

t(i) = (P[i] - S).dot.D

并通过该参数对点进行排序

附注当A、B系数非零时,即可得到基点

S=(0, -C/B)
和方向向量
D=(-C/A, C/B)

© www.soinside.com 2019 - 2024. All rights reserved.