首頁 > 其他

用matlab 繪二維高斯曲面

2019-12-25 10:35:18

    用matlab 來畫二維高斯曲面,展示matlab強大的視覺化能力,對資料分析和影象處理有很大的幫助,是不可替代的分析工具,下面簡單的分析!

1

首先,明確高斯函數 p(z) = exp(-(z-u)^2/(2*d^2)/(sqrt(2*pi)*d),在matlab中確定變數的取值,在此處我們取

 

X = 0 : 1 : 100;Y = 0 : 1: 100;

其它注釋如下圖中所示


2

確定方差及期望和變數Z的表達方式

 

fangcha= 50;

Z = zeros(101, 101);

 

for row = 1 : 1 : 101

    for col = 1 : 1 : 101

        Z(row, col) = (X(row) - 50) .* (X(row)-50) + (Y(col) - 50) .* (Y(col) - 50);

    end

end

 

Z = -Z/(2*fangcha);


3

要正確的表出Z,此處用Z = exp(Z) / (sqrt(2*pi) * sqrt(fangcha));


4

最後是將所有的這些表示式畫出影象來,如下面所示,程式碼為

surf(X, Y, Z);


5

這是所有的程式碼所畫出的二維高斯圖是不是很好看,這個軟體太強大了,希望對你有用




IT145.com E-mail:sddin#qq.com