一尘不染

如何使用C ++用一行拟合2D散点数据

algorithm

我曾经使用过MATLAB,对于提出的问题,我可以使用p = polyfit(x,y,1)估算板中散点数据的最佳拟合线。我想知道我可以依靠哪些资源来实现C
++的线条拟合算法。我了解针对此主题的算法很多,对我来说,我希望该算法应该很快,同时它可以在MATLAB中获得与polyfit函数相当的精度。


阅读 357

收藏
2020-07-28

共1个答案

一尘不染

我建议从头开始对其进行编码。这是C ++中非常简单的实现。您可以polyfit直接在公式中为数据的最小二乘拟合(与方法相同)进行截距和渐变编码

http://en.wikipedia.org/wiki/Simple_linear_regression#Fitting_the_regression_line

这些是封闭形式的公式,您可以使用循环轻松地评估自己。如果您使用的是更高程度的拟合,那么我建议使用矩阵库或更复杂的算法,但是对于上面描述的简单线性回归,这就是您所需要的。矩阵和线性代数例程对于这样的问题来说是过大的(我认为)。

2020-07-28