Upload
jans-hendry
View
823
Download
6
Embed Size (px)
Citation preview
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
1
MENGHILANGKAN DERAU CITRA DENGAN FILTER MEAN
(spatial filtering)
Kehadiran derau dalam objek penelitian dalam hal ini citra digital tidak bisa dipungkiri. Kehadirannya
bisa menyebabkan kesalahan dalam mengestimasi informasi yang terkandung dalam citra tersebut.
Derau sebenarnya memiliki variasi yang beragam, namun beberapa jenis derau telah dideskripsikan
secara matematis untuk mengetahui “tingkah laku” nya dan bagaimana cara mengatasinya. Tentu bila
secara matematis telah dirumuskan, maka kita bisa mengembangkan “anti derau” secara matematis pula.
Sebuah citra yang telah tercampur derau akan memiliki persamaan umum, yakni:
g(x,y) = f(x,y) + n(x,y)
derau bisa tampak pada kawasan ruang-waktu atau juga dalam kawasan frekuensi. Bila memang sudah
tampak dalam kawasan ruang-waktu, maka bisa langsung digunakan tapis untuk menghilangkan derau
tersebut. Namun, derau bisa saja hanya tampak pada kawasan frekuensi. Maka perlu diberlakukan
alihragam untuk mendeteksi derau tersebut untuk mengetahui jenisnya. Lalu diberlakukanlah tapis yang
sesuai. Dalam kawasan frekuensi citra memiliki bentuk persamaan:
G(u,v) = F(u,v) + N(u,v)
Derau yang bersifat kontinu dapat dilihat dari sifat periodesitasnya melalui kawasan frekuensi. Tentu
saja kita tau dibutuhkan alihragam fourier untuk mengubah kawasan ke frekuensi. Bila derau terbukti
periodis, maka yang dilakukan adalah mengurangi derau dari citra untuk mendapatkan estimasi citra asli
atau original. Dengan menggunakan spatial filtering, derau bisa di kurangi hanya derau tersebut bersifat
additive atau tambahan. Dengan arti lain, bahwa kita memberikan derau tambahan pada citra original
lalu dilakukan penapisan dengan menggunakan filter-filter tertentu. Berikut ini akan dihadirkan jenis-
jenis filter Mean dan kegunaannya.
� Arithmetic mean filter
Filter ini merupakan jenis yang paling sederhana. Dalam operasinya, filter ini akan menghitung
rerata dari citra berderau g(x,y) dalam area yang dikenai oleh jendela. Daerah yang dikenai
jendela ini disebut juga sebagai subimage yang dilambangkan dengan Sxy. Sehingga diharapkan
tidak akan menimbulkan kebingungan ketika simbol ini digunakan dalam menyebutkan
subimage dalam artikel ini. Bila dimisalkan bahwa ��(x,y) merupakan nilai intensitas setelah di
tapis, maka rumus arithmetic mean filter adalah:
��(�, �) = 1� � (�, �)(�,�)∈���
m dan n merupakan baris dan kolom dari sebuah matriks filter. Biasanya matriks ini berukuran
ganjil x ganjil agar ada poros tengah karena hasil perhitungan rerata akan diberikan pada titik
tengah dari matriks.
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
2
Perhatikan contoh berikut untuk memperjelas operasi ini.
Pada contoh ini matriks penapis yang akan digunakan berukuran 3x3 yang semuanya bernilai 1.
Matriks ini gunanya untuk mencuplik matriks Sxy dari matriks original yang kemudian
dioperasikan dengan rumusan arithmetic mean filter.
4 7 8
2 3 4
1 8 9 maka hasil filternya: �(�)(�) (4 + 7 + 8 + 2 + 3 + 4 + 1 + 8 + 9)
= �� (46)
= 5.1111
≅ 5
Maka matriks Sxy hasil filter adalah
4 7 8
2 5 4
1 8 9
Filter jenis ini, bisa digunakan untuk menapis citra yang mengandung derau acak seperti uniform
atau Gaussian.
� Geometric mean filter
Dengan menggunakan filter jenis ini, matriks citra akan ditapis berdasarkan rumus berikut:
��(�, �) = # $ (�, �)(�,�)∈���%�&'
Rumus di atas mengandung arti bahwa semua piksel yang mewakili nilai intensitas dari citra
yang terkena jendela filter dikalikan lalu dipangkatkan dengan �&'.
Perhatikan contoh berikut untuk menjelaskan penggunaan rumus di atas.
4 7 8
2 3 4
1 8 9 maka hasil filternya: (4 ∗ 7 ∗ 8 ∗ 2 ∗ 3 ∗ 4 ∗ 1 ∗ 8 ∗ 9)�/(�∗�) = 387072�/�
= 4.177
≅ 4
Maka matriks hasil filter adalah:
Sxy
Sxy
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
3
4 7 8
2 4 4
1 8 9
Dibandingkan dengan filter arithmatic, filter ini lebih cocok untuk menapis citra yang
mengandung derau uniform atau Gaussian. Walaupun filter sebelumnya juga bisa digunakan,
namun dengan menggunakan filter geometric, hasilnya lebih bagus.
� Harmonic mean filter
Filter ini dapat digunakan untuk mengurangi derau yang berupa Gaussian dan Salt tapi
sayangnya tidak cocok untuk derau Pepper. Filter ini dirumuskan secara matematis menjadi:
��(�, �) = �+ 1 (�, �)(�,�)∈���
Perhatikan contoh berikut untuk menjelaskan arti rumus di atas.
4 7 8
2 3 4
1 8 9 maka hasil filternya: &∗',-.,/.,0.,1.,2.,-.,,.,0.,3
= �∗�4.67
= �4.67
= 3.17
≅ 3
Maka matriks hasil filter adalah:
4 7 8
2 3 4
1 8 9
� Contraharmonic mean filter
Filter ini merupakan solusi untuk menyelesaikan kasus bila derau additive berupa derau salt &
pepper. Filter ini dirumuskan dengan:
��(�, �) = 8 (�, �)9.�(�,�)∈���∑ (�, �)9(�,�)∈���
Sxy
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
4
Keterbatasan tentu dimiliki oleh filter ini. Filter ini tidak bisa menghilangkan derau salt dan
pepper secara bersamaan. Salt hanya dapat dihilangkan bila Q bernilai negatif, sedangkan bila Q
bernilai positif maka akan bekerja untuk derau pepper. Q disebut juga dengan orde filter.
Misalkan nilai Q = 0, maka bisa dibuktikan bahwa rumus nya akan berubah menjadi rumus
arithmetic filter. Sedangkan bila Q = -1 filter akan berubah menjadi harmonic filter.
Pada program di bawah akan ditunjukkan pengaruh penggunaan filter-filter yang telah disebutkan di atas
terhadap citra digital yang telah diberikan derau additive yang berbeda-beda.
Silahkan menggunakan code di bawah:
% membaca citra I=imread('Fig0512(a)(ckt-uniform-var-800)','tif'); imshow(I); title('Citra Asli');
%% membuat matriks dummy I=double(I); [x,y]=size(I); dummy=zeros(x,y); m=3; n=3; a=ones(m,n); %%
%% blok filter for ii=1:x-(m-1) warning off; for jj=1:y-(n-1) aa=a.*I(ii:m+ii-1,jj:n+jj-1); b=reshape(aa,1,m*n); b=mean_arit(b,m,n); dummy(ii+1,jj+1)=b; end end %%
%% matriks akhir setelah di filter for ii=2:x-1 for jj=1:y if jj==1 n=I(ii,jj); elseif jj==y n=I(ii,jj); else n=0; end mmed(ii-1,jj)=n; end end mmed=[I(1,:);mmed;I(x,:)]; mmed=mmed+dummy; %%
%% menampilkan citra grayscale dengan range 0-255 figure, imshow(mmed,[0 255]); title('Citra Hasil Filter'); warning on;
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
5
Anda perhatikan bahwa pada program di atas ada yang diberi kotak merah. Itu adalah jenis filter yang
sedang digunakan yang dibuat dalam fungsi yang berbeda. Jadi jangan lupa untuk membuat .m file lain
yang berisi fungsi-fungsi filter berikut ini.
Khusus untuk contraharmonic mean filter jangan lupa untuk memberikan nilai orde filter – Q. Yang
menjadi keterbatasan dengan menggunakan teknik ini adalah karena kita telah memberikan nilai yang
sama untuk bagian tepi dari citra dummy dari citra original, mengakibatkan derau yang tertinggal di
bagian tepi citra original akan tetap ada di citra hasil filter. Perlu diingat juga bahwa program ini
diperuntukkan untuk matriks filter mxn yakni 3x3.
Tapi program ini baik untuk latihan dan memahami arti dari jenis-jenis filter mean tersebut. Program
yang lebih baik dalam menangani permasalahan tadi akan diberikan pada artikel berikutnya. Cara
kerjanya adalah dengan memperbesar ukuran citra original dengan menambahkan nilai nol sehingga
nanti hasil filter akan dikembalikan menjadi ukuran semula. Sehingga tentu saja, tiap piksel dari citra
original akan mengalami operasi penapisan. Dengan demikian, derau yang masih tertinggal akan bisa
dihilangkan.
function bb=mean_arit(b,m,n) bb=0; for i=1:m*n bb=bb+b(i); end bb=floor(bb/(m*n)); end
function bb=mean_geom(b,m,n) bb=1; for i=1:m*n bb=bb*b(i); end bb=floor(bb^(1/(m*n))); end
function bb=mean_harm(b,m,n) b=1./b; bb=0; for i=1:m*n bb=bb+b(i); end bb=floor((m*n)/bb); end
function bb=mean_charm(b,m,n,Q) bb=0; for i=1:m*n bb=bb+b(i); end bb1=bb^(Q+1); bb2=bb^(Q); bb=floor(bb1/bb2); end
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
6
Hasil dari eksekusi program di atas sesuai dengan urutannya adalah:
Citra asli tanpa derau
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
7
Arithmetic mean filter result
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
8
Geometric mean filter result
Harmonic mean filter result
Contraharmonic mean filter result
Pengolahan citra digital by Jans Hendry / Elektro UGM, Indonesia
9
Semoga bisa membantu…
TERIMA KASIH
Referensi:
- R. Gonzalez and R. Woods. Digital Image Processing. Addison Wesley
- citra yang digunakan juga berasal dari buku DIP di atas.