IMPLEMENTASI DENOISING CITRA RGB MENGGUNAKAN METODE
WAVELET BERBASIS LOGIKA FUZZY
Aisyah Niken Pramiswari1, Yudhi Purwananto2, Rully Soelaiman3 Teknik Informatika, Fakultas Teknologi Informasi, ITS email : [email protected], [email protected], [email protected]
ABSTRAKSI
Proses perbaikan citra merupakan salah satu topik penting dalam bidang pengolahan citra digital. Citra yang dimaksud dapat berupa citra grayscale ataupun citra RGB. Proses denoising dapat dilakukan pada domain citra, namun akan memiliki directional selectivity yang buruk. Sehingga digunakan metode wavelet untuk memperbaiki directional selectivity. Metode denoising sangat bermacam-macam, salah satu metode denoising sebelumnya adalah menggunakan shrinkage soft thresholding, namun metode ini kurang optimal sehingga digunakan metode logika fuzzy untuk mendapatkan hasil yang lebih optimal.
Untuk memperbaiki directional selectivity yang buruk, maka digunakan DT-DWT sebagai solusi. Domain citra bernoise akan diubah menjadi domain wavelet dengan cara DT-DWT. Dari DT-DWT akan dilakukan proses dekomposisi yang akan menghasilkan koefisien aproksimasi (LL) dan koefisien detail (LH, HL, HH). Kemudian koefisien detail ini akan dilakukan proses denoising untuk setiap subband. Proses denoising meliputi perhitungan fuzzy feature, fuzzy membership function, dan citra bebas noise untuk setiap subband. Langkah terakhir adalah proses rekonstruksi, yaitu menggabungkan semua subband yang telah bebas noise sehingga menghasilkan citra yang utuh bebas noise atau domain citra bebas noise.
Metode denoising menggunakan logika fuzzy lebih optimal dari denoising menggunakan metode soft thresholding, hal ini dibuktikan dengan nilai SNR yang lebih tinggi. SNR pada metode wavelet berbasis logika fuzzy bergantung pada nilai varians noise, yaitu semakin kecil nilai varians noise maka semakin besar nilai SNR. Selain itu SNR juga bergantung pada nilai k1 dan k2, dimana setiap citra memiliki nilai optimal untuk k1 dan k2 sendiri-sendiri
Kata kunci: denoising, transformasi wavelet, logika fuzzy
1 PENDAHULUAN
Pengolahan citra digital merupakan salah satu elemen penting dalam analisis citra. Salah satu permasalahan yang dihadapi pada pengolahan citra adalah adanya noise. Adanya noise membuat kualitas citra menjadi kurang sehingga dapat mempengaruhi proses pengolahannya. Adanya proses denoising (pengurangan noise) bertujuan untuk mengurangi noise yang terdapat pada citra digital yang biasanya disebabkan pada saat pengambilan dan proses transmisi data.
Penerapan denoising dapat dilakukan langsung pada citra yang memiliki noise. Namun hal ini tidak disarankan, karena setiap citra memiliki pemilihan arah (directional selectivity) yang akan menjadi suatu masalah jika dilakukan proses denoising secara langsung. Sehingga diperlukan domain wavelet untuk menghilangkan noise. Pada domain wavelet, citra akan dibagi berdasarkan frekuensi rendah dan tinggi, sehingga akan menghasilkan pemilihan arah yang baik.
Transformasi wavelet telah banyak digunakan di berbagai bidang ilmiah seperti kompresi citra, pemrosesan sinyal, komputer grafis, pengenalan pola, dan denoising citra. Transformasi wavelet memiliki prinsip dasar membagi data menjadi komponen-komponen frekuensi yang berbeda. Proses ini dinamakan dekomposisi. Proses transformasi sinyal menjadi koefisien-koefisien wavelet diperoleh dengan filtering menggunakan highpass filter dan lowpass filter yang kemudian di downsampling. Operasi downsampling adalah operasi untuk mengurangi sampel sinyal menjadi setengahnya dan tetap mempertahankan periodanya. Downsampling dapat dilakukan dengan cara menghilangkan titik-titik yang bernomor ganjil dan hanya akan mengambil sampel-sampel yang berindeks genap.Sedangkan untuk menggabungkan koefisien-koefisien wavelet dinamakan rekonstruksi. Proses ini merupakan kebalikan dari proses dekomposisi.
Denoising diterapkan dengan men-threshold koefisien wavelet, denoising dilakukan menggunakan metode logika fuzzy. Untuk men-denoising citra RGB, maka sebelumnya
harus men-denoising citra grayscale. Dikarenakan denoising citra RGB merupakan pengembangan dari denoising citra grayscale. Pada makalah ini difokuskan pada proses wavelet berbasis logika fuzzy untuk proses denoising. Selain itu, juga akan disediakan beberapa varians noise sebagai bahan uji coba untuk mengetahui tingkat kehadalan metode logika fuzzy dalam proses denoising.
2 PRINSIP DENOISING PADA WAVELET Transformasi wavelet adalah metode aproksimasi dari suatu fungsi berbasis wavelet
(t
)
dengan bantuan lokalisasi waktu dan frekuensi. Untuk melakukan aproksimasi dibutuhkan fungsi lain yang berlaku sebagai “jendela” aproksimasi terlokalisir pada interval waktu tertentu. Sehingga transformasi wavelet merupakan sebuah teknik yang mampu membagi (mendekomposisi) menjadi komponen frekuensi yang berbeda, kemudian mempelajari setiap komponen sesuai dengan skala resolusinya atau level dekomposisinya. Tingkat (level) dekomposisi pada transformasi wavelet mempengaruhi tingkat pengenalan.Sebelum melakukan denoising, citra bernoise (y) dilakukan dekomposisi melalui proses DWT (discrete wavelet transform). Dari proses DWT, akan didapatkan koefisien-koefisien wavelet berupa subband LL (ys,0), subband LH (ys,1), subband HL (ys,2), dan subband (ys,3). Dari subband LL, LH, HL, dan HH, yang dilakukan proses denoising adalah subband LH, HL, dan HH, yaitu disebut sebagai koefisien detail. Sedangkan subband LL disebut sebagai koefisien aproksimasi dan akan diproses untuk level selanjutnya jika ada. Proses denoising merupakan proses thresholding, sehingga proses ini hanya dilakukan untuk koefisien detail saja.
Setelah di denoising, koefisien detail (
x
ˆ
s,1,x
ˆ
s,2,x
ˆ
s,3) dilakukan rekonstruksi melalui prosesIDWT. Rekonstruksi dilakukan untuk menggabungkan semua subband, hasil dari rekonstruksi berupa citra yang telah terdenoising (
x
ˆ
).Sehingga dapat disimpulkan bahwa denoising menggunakan transformasi wavelet memiliki tiga tahap dapat dilihat pada Gambar 1 , yaitu :
1. Mendekomposisi dengan menggunakan Transformasi Wavelet Diskrit (DWT) atau transformasi multi resolusi lainnya.
2. Denoising
3. Merekonstruksi dengan menggunakan Transformasi Wavelet Balik (IDWT)
DWT Denoising IDWT Ys,0 Ys,1 Ys,2 Ys,3 Ys,0 ` 1 , ˆs x ` 3 , ˆs x ` 2 , ˆs x y xˆ
Gambar 1 Prinsip denoising pada wavelet
3
TRANSFORMASI WAVELET
Sebuah sinyal harus dilewatkan dalam dua filter DT-DWT (Dual Tree Discrete Wavelet Transform) yaitu highpass filter dan lowpass filter agar frekuensi dari sinyal tersebut dapat dianalisis. Analisis sinyal dilakukan terhadap hasil highpass filter dan lowpass filter di mana highpass filter digunakan untuk menganalisis frekuensi tinggi dan lowpass filter digunakan untuk menganalisis frekuensi rendah. Proses kerja dari transformasi wavelet diskrit terdiri dari dua tahap yaitu fase analisis dan fase sintesis dapat dilihat pada Gambar 2. H dan L merupakan highpass filter dan lowpass filter untuk fase analisis, sedangkan H’ dan L’ merupakan highpass filter dan lowpass filter untuk fase sintesis.
S Lowpass filter Highpass filter S Lowpass filter Highpass filter
Gambar 2 Fase Analisis dan Fase Sintesis
DT-DWT memiliki dua pohon (real dan imajiner) DWT filter bank secara pararel. Pengembangan dari DT-DWT dimaksudkan untuk mengatasi permasalahan shift variance dan directional selectivity pada DWT. Penggunaan filter yang tepat pada DT-DWT akan menghasilkan shift invariance, directional selectivity yang baik, redundancy yang sedikit, dan mempunyai komputasi yang efisien seperti halnya DWT. Redudansi DT DWT setara dengan dua dimensi sinyal, seperti pada sinyal 1-D dengan redudansi 2 dan 2-D dengan redudansi 4.
Metode DT-DWT hampir serupa dengan metode DWT namun yang membedakan adalah jumlah filter yang digunakan untuk mendekomposisi matriks dari citra. DT-DWT menggunakan 2 pasang filter yaitu
a a
H
H
0,
1 dan
b b
H
H
0,
1 , sementara DWT hanya menggunakan 1 pasang filter. Pada metode DT-DWT, 2 pasang filter digunakan secara terpisah untuk melakukan sum dan differencing. Masing-masing memfilter citra secara horizontal dan kemudian vertikal sama halnya dengan 2DDWT. Hasil dari proses tersebut adalah 8 subband yaitu: a LL ,HLa,LHa,HHa,LLb,HLb, b
LH
danHHb. A. Fase analisisPada fase analisis ini dilakukan filtering untuk menghasilkan citra berfrekuensi rendah (lowpass) dan citra berfrekuensi tinggi (highpass). Untuk setiap tahapan dari proses analisis (dekomposisi), data tersebut melewati lowpass filter dan highpass filter yang kemudian di downsampling. Sehingga menghasilkan subband Low-Low (LL), subband Low- High (LH), subband High-Low (HL) dan subband High-High (HH) pada setiap tree. Level dekomposisi selanjutnya merupakan kelanjutan dari proses LL, sehingga koefisien aproksimasi pada level berikutnya didapatkan dengan melakukan dekomposisi lebih lanjut pada sub-band LL dari level sebelumnya.
B. Fase Sintesis
Pada fase sintesis dilakukan proses kebalikan dari proses dekomposisi. Citra yang sudah terbagi berdasarkan tiap level direkonstruksi untuk menghasilkan citra gabung, yaitu citra hasil penggabungan koefisien aproksimasi dan koefisien detail. Pada proses sintesis ini dilakukan komputasi dengan menggunakan lowpass filter dan highpass filter dengan fungsi waktu diskrit. Proses ini akan terus berlanjut sampai sejumlah level yang sebelumnya telah diinginkan, yaitu apabila melakukan dekomposisi hingga level 2 maka proses ini akan dimulai dari level tertinggi hingga terrendah yaitu rekonstruksi dari level 2 ke level 1.
4 PROSES DENOISING MENGGUNAKAN LOGIKA FUZZY
4.1
Fuzzy Feature
Proses dekomposisi akan menghasilkan subband koefisien wavelet yaitu koefisien aproksimasi dan koefisien detail. Dari keluaran ini, maka dapat dicari nilai fuzzy feature. Digunakan fuzzy feature untuk membandingkan dengan nilai threshold. Fuzzy feature dapat memperbaiki informasi citra pada subband-subband wavelet, selain itu juga dapat menandakan noise pada subband yang harus disusutkan. Berikut ini dapat dilihat rumus dibawah ini untuk mendapatkan fuzzy feature :
L L l K K k L L l K K k d s k l w k j l i y k l w j i f ) , ( ) , ( ) , ( ) , ( , (1)Nilai w(l,k) didapatkan dari perkalian m(l,k) dengan s(l,k). Lalu untuk mendapatkan nilai m(l,k) dan s(l,k) dapat dilihat dibawah ini :
2 , , (, ) ( , ) exp ) , ( Thr k j l i y j i y k l m sd sd (2) N k l k l s 2 2 exp ) , ( (3)
Dimana
Thr
c
ˆ
n, 3 ≤ c ≤ 4,
ˆ
nadalah variansnoise.
y
s,d(
i
,
j
)
adalah koefisien pusat,)
,
(
,
i
l
j
k
y
sd
adalah koefisien tetangga., N adalah jumlah koefisien pada local windowk
[
K
...
K
]
dan]
...
[
L
L
l
.4.2
Fuzzy Shrinkage Rule
Setelah mendapatkan nilai fuzzy feature, maka dibandingkan dengan fuzzy membership function. fuzzy membership function (fungsi keanggotaan) adalah suatu kurva yang menunjukan pemetaan titik – titik input data kedalam nilai keanggotaanya (sering juga disebut dengan derajat keanggotaan) yang memiliki interval antara 0 sampai 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Fungsi yang digunakan pada tugas akhir ini adalah kurva S.
Jika X adalah suatu kumpulan obyek-obyek dan x adalah elemen dari X, maka himpunan fuzzy A yang memiliki domain X. Dimana nilai
A(x
)
berada dalamrentang 0 hingga 1.Hal ini didefinisikan sebagai:
x
x
x
X
A
,
A(
)
|
(4)Didalam logika fuzzy terdapat fuzzy membership function dimana koordinat y merupakan nilai keanggotan (µ) dengan nilai antar 0 sampai 1. Salah satu cara yang dapat digunakan untuk mendapatkan nilai keanggotaan adalah dengan melalui pendekatan fungsi. Disini digunakan bentuk kurva-S, kurva-S didefinisikan dengan menggunakan 3 parameter, yaitu : T1, T2, dan
2
2 1T
T
2 2 2 1 2 1 1 1 2 1 2 2 2 1 2 1 2 2 1 2 1 2 0 ) ( T x T x T T T T x T T x T T x T T T T x x (5)Nilai x merupakan nilai fuzzy feature, T1 dan T2 didapatkan dengan : n K T1 1ˆ (6) n K T2 2ˆ (7) Dimana
K
1(0, 0.5, 1) danK
2 (1, 1.5, 2, 2.5, 3, 3.5) merupakan kontanta dan
ˆ
n adalah varians noise (noisevariance).
Setelah itu untuk mendapatkan citra bebas noise didapatkan menggunakan rumus berikut:
)
,
(
))
,
(
(
)
,
(
ˆ
,i
j
f
i
j
y
,i
j
x
sd
sd (8)Dimana :
x
ˆ
s,d(
i
,
j
)
citra bebas noise
))
,
(
(
f
i
j
fungsi fuzzy membership
)
,
(
,i
j
y
sd koefisien pusat.Untuk melakukan denoising terdapat dua parameter yang terlebih dahulu ditentukan yaitu ukuran window lokal untuk ekstraksi fuzzy feature dan level dekomposisi wavelet. Namun dua parameter ini berhubungan dengan varians dari noise yang berbanding lurus. Artinya window lokal kecil dan level dekomposisi kecil ketika varians dari noise bernilai kecil. Untuk lebih jelasnya dapat dilihat pada Gambar 3. Varians noise 0 ≤ n
ˆ
≤ 10 11 ≤
ˆ
n ≤ 29 30 ≤
ˆ
n ≤ 39 40 ≤
ˆ
n ≤ 50 Window size 3 x 3 5 x 5 7 x 7 9 x 9 Level of decomposition N - 5 N - 4 N - 3 N - 2Gambar 3 Ukuran window lokal dan level dekomposisi pada noise yang berbeda (untuk citra 512 x 512, N = 8)
5
SNR (SIGNAL TO NOISE RATIO)
Tingkat keberhasilan dan performa dari suatu metode denoising pada citra dihitung dengan menggunakan SNR. Meskipun performa metode denoising juga dapat diukur dengan teknik visual, yaitu dengan hanya melihat pada citra hasil kemudian membandingkannya dengan citra yang terdapat noise. namun hasil pengukuran yang didapatkan akan berbeda-beda dikarenakan visual setiap orang berbeda-beda. Sehingga diperlukan SNR.
SNR digunakan untuk mengukur tingkat kualitas sinyal. Nilai ini dihitung berdasarkan perbandingan antara sinyal asli dengan sinyal hasil denoising. Kualitas sinyal berbanding lurus dengan dengan nilai SNR. Semakin besar nilai SNR semakin baik kualitas sinyal yang dihasilkan.
SNR dihitung dalam satuan decibels (dB). Persamaan SNR adalah sebagai berikut:
SNR = 10 log 10
1 0 1 0 2 1 0 1 0 2 ) , ( ) , ( ) , ( m x n y m x n y y x f y x f y x f , (9) Dimana :m = ukuran baris dari citra n = ukuran kolom dari citra f = matriks citra awal
f’ = matriks citra hasil denoising x dan y = titik koordinat
6 IMPLEMENTASI
Pada bagian ini akan dijelaskan mengenai perancangan proses yang bertujuan mengetahui hubungan antarproses beserta langkah-langkahnya pada setiap proses dalam membangun perangkat lunak menggunakan metode wavelet berbasis logika fuzzy. Hasil akhir yang diharapkan dari proses ini adalah suatu citra yang diberi noise dapat diperbaiki / dikembalikan ke dalam kondisi awal yang tidak bernoise.
Pada langkah awal, masukan berupa citra grayscale atau citra RGB . Selanjutnya dari input citra ini akan ditambahkan Gaussian White Noise sebagai simulasi citra bernoise, kemudian dilakukan proses dekomposisi DT-DWT. Dari DT-DWT akan menghasilkan subband-subband wavelet yang akan dijadikan input untuk proses denoising. Proses denoising meliputi fuzzy feature dan fuzzy membership function (proses thresholding) untuk menyusutkan koefisien wavelet sehingga didapatkan citra bebas noise. Langkah terakhir yaitu merekonstruksi kembali koefisien wavelet menggunakan DT-IDWT, sehingga citra yang di rekonstruksi merupakan citra yang telah terdenoising. Untuk mengetahui kualitas citra hasil dengan citra asli maka dilakukan perhitungan SNR. Secara garis besar urutan proses pengerjaan dapat dilihat diagram alir pada Gambar 4 yang akan dijelaskan secara lebih mendetail.
7
UJI COBA
Pada bagian ini dijelaskan mengenai skenario uji coba yang akan dilakukan. Skenario uji coba yang akan
dilakukan adalah dengan mengubah kondisi input yang akan diberikan ke dalam aplikasi, kemudian membandingkan hasilnya dan menggambarkan besar error yang didapat ke dalam bentuk grafik. Pengukuran error dilakukan dengan membandingkan antara citra input dengan citra hasil yang telah diperbaiki dengan metode wavelet berbasis logika fuzzy. Pengukuran besar error dilakukan dengan metode Signal to Noise Ratio (SNR).
mulai
selesai Input citra
Men-generate Gaussian White Noise pada citra
Dekomposisi menggunakan DT-DWT
Rekonstruksi menggunakan DT-IDWT
Citra hasil
Citra grayscale Citra RGB
Menghitung SNR
Fuzzy feature Fuzzy membership function Citra bebas noise
Gambar 4 Diagram alir garis besar sistem
7.1
Uji oba
coba pengaruh varians noise pada k1 dan k2 terhadap citra grayscalePada uji coba ini, dilakukan proses penambahan noise pada citra asli dengan variance = 5, 15, 25, 35, 40 dan 50. Percobaan ini dilakukan iterasi nilai k1 (0, 0.5, 1) dan k2 (1, 1.5, 2, 2.5, 3, 3.5) sehingga akan menghasilkan 18 iterasi. Untuk mengetahui hasil citra terdenoise dapat dilihat pada Tabel 1, sedangkan untuk informasi lebih lengkap dapat dilihat pada lampiran
Tabel 1 Hasil uji coba pengaruh varians noise pada k1 dan k2 terhadap citra grayscale
Varians Citra ter-denoising SNR (dB)
5 31.60774 15 26.33423 25 24.10022 35 22.5557 40 21.85225 50 20.82274
7.2 Uji coba pengaruh noise variance pada k1 dan k2 terhadap citra RGB
Pada uji coba ini, dilakukan proses penambahan noise pada citra asli dengan varians = 5, 15, 25, 35, 40 dan 50.
Percobaan ini dilakukan iterasi nilai k1 (0, 0.5, 1) dan k2 (1, 1.5, 2, 2.5, 3, 3.5) sehingga akan menghasilkan 18 iterasi. Untuk mengetahui hasil citra terdenoise dapat dilihat pada Tabel 2, sedangkan untuk informasi lebih lengkap dapat dilihat pada lampiran.
Tabel 2 Hasil uji coba pengaruh varians noise pada k1 dan k2 terhadap citra RGB
Varians Citra ter-denoising SNR (dB)
5 24.82384 15 22.91984 25 22.23202 35 20.18142 40 18.27739 50 17.99993 8 KESIMPULAN
Dari uji coba yang telah dilakukan dan setelah menganalisis hasil pengujian terhadap implementasi denoising citra RGB menggunakan metode wavelet berbasis logika fuzzy untuk melakukan proses denoising. Dapat diambil kesimpulan antara lain:
1. Metode denoising menggunakan logika fuzzy lebih optimal dari denoising menggunakan metode soft thresholding.
2. Metode wavelet berbasis logika fuzzy dapat digunakan untuk mendenoising citra bernoise. 3. Dengan perlakuan yang sama, metode wavelet
berbasis logika fuzzy dapat digunakan untuk pada citra grayscale dan citra RGB untuk melakukan denoising.
4. Tingkat keberhasilan (diukur menggunakan SNR) pada metode wavelet berbasis logika fuzzy bergantung dari nilai varians noise.
5. Nilai konstanta k1 dan k2 memiliki pengaruh dalam menentukan SNR. Berdasarkan uji coba, setiap citra memiliki nilai optimal k1 dan k2 yang berbeda-beda.
REFERENSI
[1] Saeedi Jamal, Mohammad Hassan Moradi, Karim Faez. 2010. A new wavelet-based fuzzy single and multi-channel image denoising. ScienceDirect. [2] I.W. Selesnick, R.G. Baraniuk, N.G. Kingsbury.
2005. The dual-tree complex wavelet transform, IEEE Signal Process. Mag.
[3] L. Jun, C. Guangmeng, H. Bo. 2005. Image Denoising Based on Fuzzy in Wavelet Domain, IMTC 2005 Instrumentation and Measurement Technology Conference, Ottawa.
[4] Agoes suhartati. 1998. Simulasi reduksi derau menggunakan transformasi wavelet. Universitas Indonesia.
[5] Chahyati Dian, 2003. Wavelet. Universitas Indonesia [6] Timothy J Ross.2009. Fuzzy Logic: With
Engineering Applications, 2nd Ed. wiley [7] Renhoran Bahrun Said, T. Basaruddin. 2009.
Metode-Metode Pemampatan Citra Berbasis Komputasi Numerik dan Potensi Penggabungannya. Universitas Indonesia
[8] M. Borhani, V. Sedghi. 2000. 2-D Dual-Tree Wavelet Based Local Adaptive Image Denoising. Sharif University of Technology