三次曲线拟合
已知N个点,拟合目标函数:
y = c 0 + c 1 ∗ x + c 2 ∗ x 2 + c 3 ∗ x 3 y = c_0 + c_1*x + c_2*x^2 + c_3*x^3 y=c0+c1∗x+c2∗x2+c3∗x3
把自变量和因变量放在两个矩阵内:
A = [ 1 x 0 x 0 2 x 0 3 ⋮ ⋮ ⋮ ⋮ 1 x n x n 2 x n 3 ] A = \begin{bmatrix}1 & x_0 & x_0^2 & x_0^3 \\ \vdots & \vdots & \vdots & \vdots \\ 1 & x_n & x_n^2 & x_n^3 \end{bmatrix} A=⎣⎢⎡1⋮1x0⋮xnx02⋮xn2x03⋮xn3⎦⎥⎤
B = [ y 0 ⋮ y n ] B = \begin{bmatrix} y_0 \\ \vdots \\ y_n \end{bmatrix} B=⎣⎢⎡y0⋮yn⎦⎥⎤
拟合结果为:
C = ( A T ∗ A ) − 1 ∗ A T ∗ B C = (A^T * A)^{-1}*A^T*B C=(AT∗A)−1∗AT∗B