Самая подходящая плоскость для трехмерных данных
У меня есть 3D-данные X, Y, Z (матрицы с размером NxM)
Я хочу приспособить это к плоскости наилучшего соответствия, что я сделал:
X = X(isfinite(X));% deleting the NaN because svd Doesn't accept them
Y = Y(isfinite(Y));
Z = Z(isfinite(Z));
G = [X,Y,Z,ones(size(X(:)))];
[u s v] = svd(G,0);
P = v(:,4);
scalar = 2*P./P(1);
P = P./scalar; % supposed to be my plane equation but there is something wrong
а затем пересчитать Z из X и Y
Z = -(P(1)*X + P(2)*Y + P(4)) / P(3);
Я не знаю, в чем проблема !!