Perbandingan Algoritma Mean Filter, Median Filter dan Wiener Filter pada
Aplikasi Restorasi Citra RGB Terdegradasi Impulse Noise Menggunakan
The Peak Signal To Noise Ratio (PSNR)
Arnes Sembiring
Sekolah Tinggi Teknik Harapan Medan
arnessembiring@gmail.com
Abstrak
Kondisi lingkungan dan keterbatasan peralatan pada proses pengambilan citra sering menghasilkan citra yang tidak mampu merepresentasikan keadaan sebenarnya atau cacat (terdegradasi). Proses pengiriman citra juga dapat menimbulkan kecacatan sebuah citra. Restorasi citra bertujuan untuk mendapatkan citra yang paling mendekati citra asal atau keadaan idealnya. Pada penelitian ini dibandingkan tiga algoritma penapisan (filtering) citra yang dapat digunakan untuk merestorasi citra. Perbandingan dilakukan menggunakan PSNR agar lebih akurat daripada pengamatan visual. Dari penelitian didapatkan bahwa median filter lebih baik daripada mean filter dan wiener filter untuk merestorasi citra yang terdegradasi oleh impulse (salt and pepper) noise dengan kapadatan derau (noise density) dan distribusi warna yang bervariasi.
Kata kunci: Restorasi citra, median Filter, mean filter, wiener filter, PSNR, Matlab
1. Pendahuluan
Sebuah gambar terdiri dari satu atau beberapa kanal warna (colour channel) yang menunjukkan intensitas atau warna pada sebuah lokasi piksel tertentu. Dalam kasus yang paling sederhana, setiap lokasi piksel hanya terdiri dari nilai numerik tunggal yang merepresentasikan level sinyal pada titik tertentu dari gambar. Konversi dari himpunan nilai numerik ini menjadi gambar yang ditampilkan diperoleh dari sebuah peta warna (colour map). Peta warna yang paling umum adalah skala abu-abu (greyscale) yang mengubah seluruh tingkatan warna keabuan dari hitam (nol) ke putih (maksimum) bergantung pada level sinyal pada tiap piksel. Di samping greyscale, warna sesungguhnya (true colour) yang merepresentasikan seluruh spektrum warna terdiri dari dari vektor rangkap tiga (triplet vector). Vektor ini memiliki komponen R (red),G (green), dan B (blue) untuk setiap lokasi piksel. Warna diwakili oleh kombinasi linier dari nilai warna dasar RGB tersebut. Representasi lain yang juga cukup luas pengunaannya adalah H (hue), S (saturation), dan V (value atau intensity) [1].
Sebuah gambar yang diperoleh dari proses pengambilan gambar bertujuan untuk mendapatkan representasi 2 dimensi dari keadaan (tempat) 3 dimensi. Namun, banyak gambar yang merepresentasikan keadaan tidak dalam hasil yang memuaskan dan cacat (terdegradasi). Hal ini dapat disebabkan oleh banyak faktor seperti peralatan pengambilan gambar tidak sempurna dan kondisi lingkungan pengambilan gambar sering tidak ideal. Restorasi gambar berkaitan dengan representasi keadaan yang tidak memuaskan tersebut. Tujuan dari restorasi adalah untuk memanipulasi gambar yang cacat dengan cara tertentu sehingga gambar tersebut merepresentasikan keadaan dengan lebih baik [2].
Restorasi citra berbeda dengan peningkatan kualitas citra (image enhacement) karena penajaman citra usaha untuk menajamkan fitur tertentu yang diperlukan dari citra sedangkan restorasi citra adalah usaha untuk mendapatkan representasi yang lebih baik dari keadaan yang ada dengan memanfaatkan atau memperkirakan proses terjadinya degradasinya [1].
Derau (noise) adalah adalah salah satu faktor yang dapat mengakibatkan sebuah citra mengalami degradasi (kecacatan). Noise dapat timbul dari banyak faktor di antaranya kinerja sensor pengambil citra yang terpengaruh oleh kondisi lingkungan selama pengambilan citra, kualitas elemen sensor, pencahayaan yang kurang dan citra yang terdegradasi karena inferensi gelombang elektromagnetik selama proses pengiriman citra [3]
2. Model Degradasi Citra Dan Proses Restorasi
Pada gambar 1, proses degradasi citra dimodelkan sebagai sebuah fungsi degradasi (H) yang bergabung dengan derau (noise) akan mengakibatkan citra masukan f(x,y) terdegradasi menjadi citra keluaran g(x,y).
g(x,y)=H[f(x,y)] + η(x,y) (1)
Gambar 1. Model Degradasi dan Restorasi Citra [3]
Tujuan dari proses restorasi citra adalah mendapatkan citra f’(x,y) yang semirip mungkin dengan citra masukan yang asli berdasarkan pengetahuan dari noise η(x,y). Umumnya, semakin banyak pengetahuan tentang fungsi degradasi dan noise yang didapat akan menghasilkan f’(x,y) yang semakin mirip dengan f(x,y). Bila H linier maka citra yang terdegradasi dinyatakan dalam domain spasial, yaitu:
g(x,y)=h(x,y)*f(x,y)] + η(x,y) (2)
dimana h(x,y) adalah representasi spasial dari fungsi degradasi dan simbol * adalah konvolusi. Kovolusi dalam domain spasial dan perkalian dalam domain frekuensi menghasilkan pasangan transformasi Fourier sehingga persamaan (2) dapat ditulis ulang menjadi:
G(u,v)=H(u,v)F(u,v) + N(u,v) (3)
dimana G(u,v), H(u,v), F(u,v) dan N(u,v) masing-masing adalah trnsformasi Fourier dari g(x,y), H(x,y), f(x,y), dan η(x,y) [3].
2.1 Model Noise
Berdasarkan gambar 1, deskriptor noise spasial yang diperlukan di sini adalah perilaku statistik nilai intensitas komponen noise. Yang perlu diperhatikan adalah variabel acak (random) yang dikarakteristikkan oleh probabiliy density function (PDF). Terdapat beberapa model noise yang dikenal dalam sistem restorasi citra, diantaranya Gaussian noise, Impulse (salt and pepper) noise, Rayleigh noise, erlang (gamma) noise, exponential noise dan uniform noise. Dalam penelitian ini model noise yang akan digunakan adalah Impulse (salt and pepper) noise. PDF dari Impulse (salt and pepper) noise diberikan pada persamaan (4) berikut ini.
Impulse (salt and pepper) noise menghasilkan citra dengan tiga kemungkinan nilai, yang bekerja dalam 8 bit, 0 dengan probabilitas pa, 255 dengan probabilitas pb dan k dengan probabilitas 1 – (pa + pb), dimana k suatu nilai antara pa dan
p
b. Nama salt and pepper muncul dari nilai 0 adalah hitam, 255 adalah putih dan untuk nilai k akan muncul sepertibutiran salt and pepper secara acak yang terdistribusi pada citra. Probabbilitas p adalah piksel yang rusak oleh Impulse (salt and pepper) noise dengan p = pa + pb
. Biasanya p ini diistilahkan dengan
noise density. Sebagai contoh, pa = 0,02dan pb = 0,01 maka dikatakan 2% dari piksel pada citra rusak oleh peppr) noise, 1% rusak oleh salt noise dan oleh
2.2 Model Filter
Filter yang digunakan pada penelitian ini adalah mean (arithmatic) filter, median filter dan wiener filter.
Mean (arithmatic) filter menghitung nilai rata-rata dari citra yang rusak g(x,y) di area yang didefenisilkan oleh Sxy.
Nilai dari citra yang direstorasi f’(x,y) pada sembarang titik adalah sebesar nilai rata-rata aritmatik menggunakan piksel pada area Sxy. Persamaan (5) berikut menjelaskan prinsip tersebut.
(5)
Operasi ini dapat diterapkan menggunakan konvolusi dengan semua koefisien bernilai 1/mn. Mean filter menghaluskan variansi lokal dari sebuah citra sehingga noise dikurangi dengan hasil seperti efek blur.
Sedangkan median filter adalah filter tebaik yang dikenal dalam jenis order statistic filter. Median filter
menggantikan nilai sebuah piksel dengan nilai median dari level keabuan (gray level) pada piksel-piksel yang berdekatan. Persamaan (6) menjelaskan model dari prinsip tesebut.
6)
Nilai awal dari sebuah piksel dimasukkan ke dalam perhitungan median. Median filter cukuppopuler karena jenis filter ini cukup handal dalam mengurangi noise pada beberapa tipe derau acak [1],[3].
Wiener filter adalah metode restorasi yang berdasarkan pada least square, yang meminimumkan galat restorasi (selisih antara citra hasil restorasi dengan citra asli). Dalam domain frekuensi, model dari wiener filter berbentuk:
(7)
dimana H(u,v) adalah fungsi degradasi, |H(u,v)|2 =H*(u,v)H(u,v), H*(u,v) adalah konjugasi kompleks dari H(u,v), Sη(u,v) adalah power spectrum dari noise, dan adalah Sf(u,v)adalah power spectrum dari citra asal [3].
3. Histogram Citra Asal
Pada simulasi yang akan dijalankan untuk membandingkan ketiga algoritma filter di atas, citra yang akan digunakan dipilih dari tiga karakteristik yang berbeda untuk melihat pengaruhnya pada keefektifan algoritma. Citra pertama adalah citra yang sebaran warnanya dominan terang (putih) yaitu citra salju.jpg, citra kedua yang sebaran warna terang dan gelap (hitam) seimbang yaitu citra nenas.jpg dan citra ketiga adalah citra yang sebaran warna gelapnya dominan yaitu citra tugu.jpg. Ketiga citra tersebut ditampilkan pada gambar 2 berikut ini.
(a) (b) (c)
Histogram akan membantu untuk menjelaskan karakteristik dari ketiga citra di atas. Histogram setiap citra di atas ditampilkan dalam tiga kanal yaitu kanal merah (red), kanal hijau (green) dan kanal biru (blue) karena fungsi histogram tidak dapat diterapkan pada citra RGB. Gambar 3 berikut ini menunjukkan histogram untuk tiap kanal dari ketiga citra.
(a)
(b)
(c)
Gambar 3. (a) Kanal merah, (b) kanal hijau dan (c) kanal biru
Dari histogram citra terlihat bahwa ketiga memiliki karakteristik sebaran warna yang berbeda. Citra yang sebaran warna putih (terang) dominan maka histogramnya akan mengumpul ke sisi kanan, yang merata akan normal dan yang hitam (gelap) akan mengumpul ke sisi kiri grafik.
4. Penapisan Citra Terdegradasi
Pada ketiga citra sebelumnya diberikan noise yang sama yaitu Impulse (salt and pepper) noise dengan kepadatan derau (noise density) 10%. Hasilnya pada gambar 4.
Gambar 4 Ketiga citra terdegradasi impusle noise 10%
Pada ketiga citra terdegradasi tersebut diberikan penapisan (filtering) yang sama yaitu mean filter, median filter dan wiener filter. Simulasi penapisan dilakukan pada kakas Matlab R2015a. Untuk mean filter penapisan dilakukan dengan sintak:
H = fspecial('average', [3 3]); I = imfilter(gn, H);
dengan gn adalah citra terdegradasi impulse noise 10%. Sintak tersebut dapat menangani gambar berwarna.
Untuk median filter, penapisan tidak dapat diterapkan pada gambar berwarna sehingga masing-masing citra harus diuraikan ke komponen RGB-nya. Setelah penapisan dilakukan pada tiap kanal maka tiap kanal kembali digabungkan untuk mendapatkan citra berwarna hasil penapisan. Penapisan dilakukan pada setiap kanal RGB dengan sintaks:
redMF = medfilt2(redChannel, [3 3]);
Wiener filter juga tidak dapat diterapkan pada citra berwarna sehingga penapisan dilakukan pada tiap-tiap kanal RGB citra terdegradasi. Penapisan ini diterapkan dengan siktaks:
redMF = wiener2(redChannel, [3 3]);
dengan redChannel adalah kanal merah citra terdegradasi dan redMF adalah hasil filter pada kanal merah [4].
Hasil penapisan dapat dilihat pada gambar 5 berikut. Dari pengamatan visual terlihat bahwa hasil penapisan dengan
median filter memiliki hasil paling baik disusul mean filter kemudian wiener filter.
(a) (b)
Gambar 5. Hasil restorasi citra untuk ketiga filter pada citra nenas.jpg dengan noise density 10%, (a) Citra asli, (b) mean filter, (c) median filter, dan (d) wiener filter
(c) (d)
5. Perbandingan Hasil Penapisan
Perbandingan hasil penapisan menggunakan pengamatan visual sering sulit dilakukan terutama bila citra yang akan diamati hampir sama atau kecil ukurannya. Oleh karena itu, pada penelitian ini perbandingan hasil penapisan dilakukan menggunakan The Peak Signal to Noise Ratio (PSNR). PSNR akan memberikan perbandingan terhadap hasil relatif penapisan (relative filtering performance) dari ketiga algoritma penapisan dengan menggunakan nilai piksel pada setiap citra yang bersangkutan. Umumnya, semakin tinggi nilai PSNR menunjukkan kinerja penapisan yang makin baik [5].
PSNR didefenisikan dengan:
max(g(m,n) adalah nilai piksel maksimum dan min(g(m,n)) nilai piksel minimum dari citra sedangkan σu2 adalah
variansi dari noise [2].
Hasil PSNR dari penapisan ketiga algoritma terhadap ketiga citra dengan impulse noise 10% dapat dilihat pada tabel 1 berikut ini.
Tabel 1. PSNR untuk noise density 10%
Jenis filter salju.jpg Citra nenas.jpg Citra tugu.jpg Citra
Mean 21,9697 22,1595 22,3887
Median 37,4394 35,2409 40,4285
Wiener 17,6870 18,6753 17,5146
Dari tabel 1 dapat dilihat bahwa PSNR terbaik dengan noise density 10% terdapat pada algoritma median filter. Secara umum, nilai PSNR memang akan lebih tinggi pada noise density yang kecil dan menurun bila noise density
membesar. Hal ini akan dilihat pada perbandingan di bawah ini.
Berikutnya dilakukan perbandingan dengan penapisan terhadap ketiga citra menggunakan impulse noise dengan
noise density bervariasi dari 1% sampai 90% (90 kali penapisan). Rata-rata PSNR dari 90 kali penapisan dapat dilihat pada tabel 2. Waktu pemrosesan penapisan juga dihitung menggunakan elapsed time. Perlu dicatat bahwa elapsed time
akan bervariasi tergantung pada kecepatan kinerja dari tiap komputer yang digunakan. Dalam penelitian ini komputer yang digunakan adalah laptop dengan processor Intel Core i3-3110M 32 bit system, clock speed @2,4GHz, RAM 4GB. Dari tabel 2 dapat dilihat bahwa rata-rata PSNR tertinggi untuk ketiga citra terdapat pada algoritma median filter
dengan rata-rata sebesar 20,3817, disusul oleh algoritma mean filter sebesar 14,8432 dan terendah algoritma wiener filter sebesar 13,9448. Sedangkan rata-rata waktu restorasi untuk 90 kali penapisan, waktu tersingkat diperoleh pada
algoritma median filter dengan rata-rata sebesar 6,017 detik, algoritma mean filter sebesar 9,688 detik dan algoritma
wiener filter sebesar 11,163 detik.
Tabel 2. PSNR untuk noise density 1% - 90% dalam 90 penapisan
Jenis filter salju.jpg Citra nenas.jpg Citra tugu.jpg Citra Mean Waktu PSNR 14,9632 16,111 13,4554 (detik) 6,113 6,027 5,91 Median Waktu PSNR 20,3687 19,8857 20,8894 (detik) 9,597 9,921 9,545 Wiener Waktu PSNR 13,5566 14,8233 13,4562 (detik) 11,187 11,203 11,1
Untuk masing-masing algoritma, nilai PSNR terbaik diperoleh algoritma mean filter dan wiener filter pada citra yang distribusi warnanya normal (nenas.jpg). Sedangkan untuk algoritma median filter, nilai PSNRterbaikpada citra yang distribusi warnanya dominan gelap (tugu.jpg) atau terang (salju.jpg).
(a) (b)
(c)
Gambar 6. Nilai PSNR ketiga filter untuk citra nenas (a) mean filter, (b) median filter dan (c) wiener filter
Grafik PSNR dari ketiga algoritma penapisan untuk citra nenas.jpg berikut ini akan membantu dalam menganalisa lebih lanjut karakteristik PSNR setiap algoritma.
Dari grafik PSNR dapat diamati nilai PSNR terbaik terdapat pada algoritma median filter dimana untuk niose density terkecil nilai PSNR sekitar 46, disusul oleh mean filter sekitar 27 dan wiener filter sekitar 25,5. Ketiga algoritma menurun kinerja restorasinya dengan meningkatnya kepadatan derau (noise density). Khusus untuk wiener filter, nilai PSNR menurun cukup tajam dari kepadan derau 1% sampai 10%.
6. Penutup
Dari hasil perbandingan menggunakan PSNR terhadap kinerja penapisan (filtering) untuk citra yang terdegradasi oleh impulse (salt and pepper) noise, dapat disimpulkan bahwa kinerja algoritma median filter adalah yang paling baik dibandingkan dua algoritma lainya terutama pada citra yang distribusi warnanya lebih dominan terang atau gelap. Demikian juga pada citra dengan distribusi warna normal, algoritma median filter masih lebih baik walaupun terjadi sedikit penurunan hasil. Waktu restorasi tercepat didapat ketika menggunakan mean filter. Kinerja penapisan pada ketiga algoritma menurun dengan meningkatnya kepadatan derau (noise density). Pada penelitian berikutnya dapat dilakukan perbandingan terhadap noise jenis lain sehingga didapatkan jenis penapis (filter) yang paling tepat dan cepat untuk jenis noise tertentu sehingga dapat diaplikasikan pada kebutuhan praktis tertentu.
References
[1] Solomon, C., & Breckon, T., Fundamentals of Digital Image Processing, Wiley-Blackwell A Jhon Wiley&Sons, Ltd, Oxford, 2011
[2] Reeves, S. J., Image, Video Processing and Analysis, Hardware, Audio, Acoustic and Speech Processing Volume 4, University of Maryland, 2014
[3] Gonzalez, R. C., Woods, R. E., & Eddins, S. L., Digital Image Processing, 2nd Edition, Gatesmark Publishing, 2009 [4] The Mathworks Inc. (n.d.). Image Processing Toolbox User's Guide
[5] Gupta, G., Algorithm for Image Processing Using Improved Median Filter and Comparison of Mean, Median and Improved Median Filte,. International Journal of Soft Computing and Engineering (IJSCE), 2011