使3D线适合Java中的3D点数据?

使3D线适合Java中的3D点数据?,第1张

使3D线适合Java中的3D点数据?

这很容易做到,但是要自己编写,您将需要特征值求解器或奇异值分解。将(x-xbar,y-ybar,z-zbar)数据的nx3矩阵A创建为列。保存这些列表示以后,我将其称为V0
= [xbar,ybar,zbar]。

现在,计算A’* A的特征值和特征向量,即由A转置乘以A形成的3x3矩阵。

如果此数据位于R ^ 3中的一行上,则这些特征值之一将明显大于其他两个特征值。如果这是不正确的,那么将不能很好地估计正交回归线。

取与最大特征值A’* A关联的特征向量。然后,如果V是对应的特征向量,则正交回归线定义为

V(t)= V0 + t * V

该线上的任何点都可以由参数t的某个值给出。

或者,计算A的奇异值分解,并采用对应于A的最大奇异值的正确奇异矢量。

无论哪种情况,如果您希望计算数据点的误差,则可以将其定义为与所讨论的线的正交距离。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5430337.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存