0

我有一个编程问题,在几何形状识别(矩形、椭圆等)的背景下。在这种情况下,如果我有一条简单的线,从 (x1,y1) 到 (x2,y2) - 由一系列点(xy 对)组成 -

我将如何计算这条线的 DIRECTION VECTOR?我了解它背后的数学原理,但我发现我的客户提供的算法有点含糊。我被困在这个算法的第 3 步)。以下是我的客户提供的算法(英文而不是 ot psedocode)。

1)将构成“笔划”或“线”的点制动成X组(默认情况下X = 20 - 我们将调整)点=一个PointSet

2) 对于每个 PointSet,找到第一个和最后一个 Y 点的 EndPouint(末端点的平均值)(默认情况下 Y = X/5)。

3)找到PointSet的DirectionVector=减去CentrePoints

4) 对于每对PointSets,找到AngleChange = PointSets 的DirectionVectors 之间的角度。

等等.......我试图弄清楚第(3)点是什么意思......任何帮助都会非常感谢人们!提前致谢。

4

1 回答 1

0

如果从 (x1,y1) 到 (x2,y2) 的线段很短,那么您可以简单地通过以下方式近似其方向向量: (x2-x1) *i + (y2-y1) *j

否则,您可以使用PCA将方向矢量估计为形成线段的各个点的主轴,

于 2010-11-25T23:28:35.343 回答