Pelembutan Citra (Smoothing & Noise Filtering)

Minggu, 25 November 2012

A. Penjelasan Umum
               
                Penggunaan citra digital pada saat ini telah menjadi trend tersendiri. Namun, ketika dilakukan proses pengambilan gambar, seringkali terdapat noise yang masuk ke dalam citra, sehingga menyebabkan timbulnya bercak-bercak yang tidak beraturan. Jika hal ini terjadi, maka proses pengolahan citra yang akan memberikan hasil yang optimal. Oleh karena itu, diperlukan suatu proses noise filtering untuk mengurangi noise yang terdapat padanya. Pada kasus noise seperti ini, kita gunakan SVD (Singular Value Decomposition) dengan bantuan DFT (Discrete Fourier Transform) untuk mengurangi noise yang terdapat pada citra digital. Noise yang dibangkitkan untuk simulasi adalah Additive Gaussian Noise dan Additive Laplacia Noise. Dengan metode ini, matriks yang merepresentasikan citra ter-noise akan diuraikan, sehingga penelitian dapat diketahui komponen-komponen matriks ang terpengaruh oleh noise tersebut. Dari hasil penelitian, dapat diketahui bahwa SVD dengan bantuan DFT dapat digunakan untuk mengurangi noise pada citra digital, dan ketika parameter input yang diberikan pun lebih baik dibandingkan dengan tanpa bantuan DFT.

B. Algoritma

                Pada pembuatan program ini, kami menggunakan Matlab sebagai bahasa pemprograman  untuk membuat noise filtering dan smoothing. Berikut penjelasan logikanya :
Melakukan penambahan noise biasa dilakukan untuk smoothing sebuah citra, memberikan noise pada sebuah citra dapat dilakukan dengan menggunakan fungsi imnoise(). Berikut langkah-langkah yang harus dilakukan :

1.       Buka aplikasi matlab, kemudian klik New M-File 













2.     Kemudian ketikkan perintah berikut di dalam M-File editor tersebut
gambar = imread('lenna.tif');
gray = rgb2gray(gambar);
noise = imnoise(gray, 'Salt & Pepper', 0.03);
noise2 = imnoise(gray, 'Gaussian', 0.2);
awal = medfilt2(gray);
k = medfilt2(noise);
k2 = medfilt2(noise2);
figure, imshow(gray), title('Pelembutan Citra Awal');
figure, imshow(noise), title('Pelembutan Citra Noise Salt&Pepper');
figure, imshow(noise2), title('Pelembutan Citra Noise Gaussian');
figure, imshow(awal), title('Pelembutan Citra Awal');
figure, imshow(k), title('Pelembutan Citra Noise Salt&Pepper');
figure, imshow(k2), title('Pelembutan Citra Noise Gaussian');

3.       Setelah source code di ketik, sekarang jalankan program tsb dengan mengklik tombol run pada toolbar

C. Tampilan Masukkan dan keluaran

Gambar 1. Citra Awal

gambar 2. Proses Pelembutan Citra Noise Salt & Pepper


gambar 3. Hasil Pelembutan Citra Noise Salt & Pepper


gambar 4. Proses Pelembutan Citra Noise Gaussian


gambar 5. Hasil Pelembutan Citra Noise Gaussian