4
 M 13, 2012 @.& , 1  CE MHIG IG GAIA FCI D 1 . . G :      D   . G : : I : G B ( A  G . H () . I    () . K , , 1 1 2 . G . G ( ) ().

Curve Smoothing Using Gaussian Function

Embed Size (px)

Citation preview

5/14/2018 Curve Smoothing Using Gaussian Function - slidepdf.com

http://slidepdf.com/reader/full/curve-smoothing-using-gaussian-function 1/3

[image processing]  March 13, 2012 

[[email protected]{ee&it ugm, indonesia}] Page 1 

CURVE SMOOTHING USING GAUSSIAN FUNCTION

Dalam artikel ini kita akan membahas bagaimana fungsi gaussian dapat digunakan untuk 

menghaluskan sebuah kurva 1 dimensi. Teori tentang gaussian sendiri sudah diberikan pada

artikel yang lain. Gaussian memiliki rumus sebagai berikut:

=1

2

 

Dengan

merupakan koefisien normalisasinya.

Gaussian memiliki bentuk grafik beserta profile seperti di bawah ini:

Sources: Naïve Image Smoothing: Gaussian Blur (Sylvain Paris – Adobe )

Tampak bahwa dengan menggunakan Gaussian maka nilai bobot akan diberikan ditengah

sebagai nilai terbesar sementara nilai tetangga menjadi lebih kecil. Hal ini membuat derau pada

isyarat (signal) setelah dilewatkan gaussian akan memiliki derau yang amplitudonya menjadi

lebih kecil. Istilahnya gaussian ini centered weighted dengan catatan nilai mean (rerata) adalah

nol.

Ketika kita mengaplikasikan fungsi gaussian terhadap sebuah isyarat, maka kita menggunakan

konvolusi, bila datanya berupa 1 dimensi maka konvolusi 1 dimensi dapat digunakan

sebaliknya jika data berupa matriks maka gunakan konvolusi 2 dimensi. Gaussian pada

dasarnya merupakan low-pass filter.

Gaussian memiliki unjuk kerja yang ditentukan oleh nilai varians () atau standar deviasinya

().

5/14/2018 Curve Smoothing Using Gaussian Function - slidepdf.com

http://slidepdf.com/reader/full/curve-smoothing-using-gaussian-function 2/3

[image processing]  March 13, 2012 

[[email protected]{ee&it ugm, indonesia}] Page 2 

Programnya adalah

clear all;

close all;

clc;

%% buat data sebuah isyarat dengan derau 

% sinusiodal 

% t=-2*pi:1/1000:2*pi; 

% y=cos(t); 

% kotak  

y=[zeros(1,100),ones(1,100)];

plot(y,'g'); hold on;

rnd=rand(1,length(y(101:200)));

y(101:200)=y(101:200)+rnd;

plot(y,'r-','LineWidth',2); hold on;

%% gaussian 1 dimensi s=3; % standar deviasi 

x=9; % ukuran jendela 

jendela=(x-1)/2;

m=0; % nilai rerata berada di origin 

X=-jendela:jendela;

% gaussian dengan koefisien normalisasi 

koef=(1/sqrt(2*s*s*pi));

G=koef*exp(-((X-m).^2/(2*(s^2))));

sumG=sum(G(:));

if sumG~=0

G=G/sumG;

end ress=conv(y,G,'same');

% ress=imfilter(y,G,'symmetric'); 

plot(ress,'b'); hold on;

title('Curve Smoothing with Gaussian');

xlabel('x');

ylabel('Amplitude');

%% 

%% matlab toolbox 

h=fspecial('gaussian',[1 9],3);

hasil=conv(y,h,'same');

% hasil=imfilter(y,h,'symmetric'); % plot(hasil,'k'); hold off; 

%% 

%% beda antara gaussian sendiri dengan toolbox 

disp('Bedanya : ');

beda=ress-hasil;

disp(sum(beda));

%% 

5/14/2018 Curve Smoothing Using Gaussian Function - slidepdf.com

http://slidepdf.com/reader/full/curve-smoothing-using-gaussian-function 3/3

[image processing]  March 13, 2012 

[[email protected]{ee&it ugm, indonesia}] Page 3 

Hasil eksekusi dari program di atas adalah

Kurva Gaussiannya adalah

Dalam program di atas, anda bisa melakukan pengubahan terhadap nilai standar deviasi (s) dan

juga panjang datanya. Anda akan melihat bahwa hasil filter akan berbeda-beda. Dengan

demikian gaussian benar terbukti bisa melakukan smoothing terhadap kurva 1 dimensi.