3D 点中的最佳 2D 平面
Best 2D Plane out of 3D points
我有以下问题:我给出了一些 3D 点,例如
(0,2,2), (0,4,5) 等..
我想通过这些点得到最适合的平面。这有点像线性回归。问题是,点不完全匹配。所以我必须在 3D 区域找到穿过它们的最佳平面。飞机的大小并不重要,我只需要 一个 Vector 我的点数。
我读了一些关于回归的文章,但它并没有帮助我。
我只要求 资源、伪代码 或者只是一个工作代码。只是让我开始的事情。
如果您有拟合二维多项式的源代码,例如
Y = a + bX + cX^2
您将看到代码在内部针对 X^0 (1.0)、X^1 (X) 和 X^2 对 Y 进行回归,以找到方程参数 a、b 和 c。您可能还针对其他项(例如 sin(X) 或 exp(X))对 Y 进行了回归,执行线性回归的源代码并不关心并且也很乐意符合这些项。
您可以使用相同的源代码来确定
的参数
Z = a + bX + cY
通过将 Z 对 1.0、X^1 (X) 和 Y^1 (Y) 进行回归来找到方程参数 a、b 和 c。您也可能会回归 X^1 * Y^1 (X*Y) 甚至 sin(X) 或 [log(X) * exp(Y)].
很多软件包都预先封装了拟合二维多项式的函数,因为拟合任务很常见,但是这些函数中的代码可以像我上面描述的那样使用——如果你有源代码,请查看多项式拟合方法并复制粘贴编辑代码的数据格式,如我上面所述,你应该没问题。
我有以下问题:我给出了一些 3D 点,例如 (0,2,2), (0,4,5) 等..
我想通过这些点得到最适合的平面。这有点像线性回归。问题是,点不完全匹配。所以我必须在 3D 区域找到穿过它们的最佳平面。飞机的大小并不重要,我只需要 一个 Vector 我的点数。 我读了一些关于回归的文章,但它并没有帮助我。
我只要求 资源、伪代码 或者只是一个工作代码。只是让我开始的事情。
如果您有拟合二维多项式的源代码,例如
Y = a + bX + cX^2
您将看到代码在内部针对 X^0 (1.0)、X^1 (X) 和 X^2 对 Y 进行回归,以找到方程参数 a、b 和 c。您可能还针对其他项(例如 sin(X) 或 exp(X))对 Y 进行了回归,执行线性回归的源代码并不关心并且也很乐意符合这些项。
您可以使用相同的源代码来确定
的参数Z = a + bX + cY
通过将 Z 对 1.0、X^1 (X) 和 Y^1 (Y) 进行回归来找到方程参数 a、b 和 c。您也可能会回归 X^1 * Y^1 (X*Y) 甚至 sin(X) 或 [log(X) * exp(Y)].
很多软件包都预先封装了拟合二维多项式的函数,因为拟合任务很常见,但是这些函数中的代码可以像我上面描述的那样使用——如果你有源代码,请查看多项式拟合方法并复制粘贴编辑代码的数据格式,如我上面所述,你应该没问题。