天天看点

Matlab笔记(二):Matlab实现高斯函数的三维显示1.前言2.代码3.结果展示

Matlab实现高斯函数的三维显示

  • 1.前言
  • 2.代码
  • 3.结果展示

1.前言

最近学习中用到了高斯函数(二维高斯分布),特记录下实现代码及一些注意事项。

2.代码

%设置渐变色:figure => 编辑 => 图形属性
%去掉网格,并使之光滑:surf(X, Y, Z); shading interp;
%设置坐标轴宽度:调整linewidth属性对应值


% 绘制二维高斯曲面
% 公式: p(z) = exp(-(z-u)^2/(2*d^2)/(sqrt(2*pi)*d)
% x y 变量
X = 0 : 1 : 100;
Y = 0 : 1 : 100;

% 方差
d02= 1000;
cc = 50;

% 均值(25, 25)
Z = zeros(101, 101);
for row = 1 : 1 : 101
    for col = 1 : 1 : 101
        Z(row, col) = (X(row) - cc) .* (X(row)-cc) + (Y(col) - cc) .* (Y(col) - cc);
    end
end

Z = -Z/(2*d02);

Z = exp(Z) / (sqrt(2*pi) * sqrt(d02));
% 显示高斯曲面
surf(X, Y, Z);
% 去掉图像上的网格,即使之光滑
shading interp 
           

3.结果展示

Matlab笔记(二):Matlab实现高斯函数的三维显示1.前言2.代码3.结果展示