MATLABで曲面フィッティングを実施する方法
MATLABでは、polyfitn関数は曲面フィッティングに使用できます。
polyfitn関数は多項式曲線または曲面フィッティングに使用できます。構文は次のとおりです。
p = polyfitn(x、y、n)
変数x、yはデータ点の座標で、変数nは適合させる曲線または曲面の次数を表す。
MATLABでサーフェスフィッティングを行う方法のサンプルコードを以下に示します。
% 创建一些样本数据
[x, y] = meshgrid(-2:0.2:2);
z = x.^2 + y.^2 + randn(size(x));
% 进行曲面拟合
n = 2; % 拟合的阶数
p = polyfitn([x(:), y(:)], z(:), n);
% 计算拟合结果
z_fit = polyvaln(p, [x(:), y(:)]);
% 画出原始数据和拟合曲面
figure;
scatter3(x(:), y(:), z(:), 'b');
hold on;
mesh(x, y, reshape(z_fit, size(x)), 'EdgeColor', 'r');
xlabel('x');
ylabel('y');
zlabel('z');
legend('原始数据', '拟合曲面');
上記コードを実行すると、生データ点とフィット曲面の 3D グラフが得られます。