Brian Silverman | 72890c2 | 2015-09-19 14:37:37 -0400 | [diff] [blame] | 1 | typedef Matrix<float,Dynamic,2> DataMatrix; |
| 2 | // let's generate some samples on the 3D plane of equation z = 2x+3y (with some noise) |
| 3 | DataMatrix samples = DataMatrix::Random(12,2); |
| 4 | VectorXf elevations = 2*samples.col(0) + 3*samples.col(1) + VectorXf::Random(12)*0.1; |
| 5 | // and let's solve samples * [x y]^T = elevations in least square sense: |
| 6 | Matrix<float,2,1> xy |
| 7 | = (samples.adjoint() * samples).llt().solve((samples.adjoint()*elevations)); |
| 8 | cout << xy << endl; |