资源简介

三维-离散点-曲面光滑-拟合. 实现三维数据的曲面拟合,有不同的光滑程度,可以改变参数实现曲面的光滑度改变。

资源截图

代码片段和文件信息

% 根据问题的主要特点:三维-散点-曲面光滑-拟合,下面一个例子基本满足要求,以供参考:


clcclearclose all

%% 矩阵数据曲面光滑
% 初始数据
n1=6; x=linspace(-22n1);
n2=11; y=linspace(05n2);
[Y0X0]=meshgrid(yx);
Z0=X0.^2+sqrt(Y0);
noisy=rand(n1n2);
Z1=Z0+noisy;

%样条拟合
p=0.9 %
sp=csaps({xy}Z1p);
v=fnval(sp{xy});

% mesh图
figure
subplot(221)mesh(X0Y0Z0)title(‘基准数据Z0‘); xlabel(‘x‘)ylabel(‘y‘)
subplot(222)mesh(X0Y0Z1)title(‘待光滑处理数据Z1‘);
subplot(223)mesh(X0Y0v)title(‘光滑后数据v‘);
subplot(224)mesh(X0Y0v-Z1)title(‘误差v-Z1‘);


%% 散点数据曲面光滑
n=20;
x=rand(1n)*2; y=rand(1n)*2; z=x.^2+(y);
noisy=rand(1n); z1=z+noisy;

% 散点插值生产矩阵数据
n1=21; n2=21;
xi=linspace(min(x)+0.1max(x)-0.1n1);
yi=linspace(min(y)+0.1max(y)-0.1n2);
[YiXi]=meshgrid(yixi);
Z1 = griddata(xyz1XiYi);
Z0 = griddata(xyz

评论

共有 条评论