|
"Rachit " <racpsine@gmail.com> wrote in message <ht3vic$134$1@fred.mathworks.com>...
> Hello All,
>
> I am trying to fit a plane using a set of (X,Y, Z ) co-ordinates.I am relatively new to matlab can anyone suggest me how to go ahead with the same?
- - - - - - - -
If you want to minimize the sum of the squares of the orthogonal distances from the points to a plane, then you can use the 'svd' function. Let us suppose that X, Y, and Z are corresponding column vectors.
xm = mean(X); ym = mean(Y); zm = mean(Z);
[U,S,V] = svd([X-xm,Y-ym,Z-zm],0);
Then the best-fitting plane in the above sense is given by the equation
V(1,3)*(x-xm) + V(2,3)*(y-ym) + V(3,3)*(z-zm) = 0
The indicated V(:,3) is the eigenvector corresponding to the smallest singular value in S and represents the best fit.
Roger Stafford
|