Pcd topik4 - image restoration01

7
Praktikum Pengolahan Citra Digital – Topik 4 Yosafat Suryotomo - 612004047 1 Digital Image Processing with MATLAB Topik 4 Images Restoration Part 1 Preview Tujuan dari restorasi (image restoration) adalah untuk meningkatkan kualitas atau mengembalikan kualitas citra (tanpa degradasi), secara umum perbedaan antara image enhancement dengan image restoration ialah pada image enhancement merupakan proses pengolahan peningkatan kualitas citra dimana penilaian akan bagus atau tidak suatu citra sangat subyektif atau ditentukan oleh penilaian manusia, sedangkan pada image restoration penilaian sangat obyektif yaitu berdasarkan penentuan standar umum matematis (signal to noise). Restoration bertujuan untuk merekonstruksi atau memulihkan citra yang telah terdegradasi dengan pembelajaran akan fenomena degradasi yang umum terjadi. Jadi, teknik restorasi suatu citra ialah melakukan model-model degradasi kemudian melakukan proses inverse dari model degradasi terhadap citra sehingga di dapat citra asli. * adalah tanda konvolusi Noise Model Kemampuan untuk mensimulasi karakteristik dan efek dari noise (derau) adalah intisari dari image restoration. Pada bagian topic kali ini pembahasan permodelan noise hanya pada ranah spatial, untuk model noise ranah frekuensi akan dibahas pada topic berikutnya. Pada fasilitas MATLAB Image Processing Toolbox terdapat syntax untuk secara otomatis melakukan penyertaan derau pada suatu citra. Dimana syntax yang digunakan adalah imnoise, dengan syntax ini dapat melakukan penyertaan

Transcript of Pcd topik4 - image restoration01

Page 1: Pcd   topik4 - image restoration01

Praktikum Pengolahan Citra Digital – Topik 4 Yosafat Suryotomo - 612004047

1

Digital Image Processing with MATLAB

Topik 4

Images Restoration Part 1

Preview

Tujuan dari restorasi (image restoration) adalah untuk meningkatkan kualitas atau mengembalikan

kualitas citra (tanpa degradasi), secara umum perbedaan antara image enhancement dengan image

restoration ialah pada image enhancement merupakan proses pengolahan peningkatan kualitas citra

dimana penilaian akan bagus atau tidak suatu citra sangat subyektif atau ditentukan oleh penilaian

manusia, sedangkan pada image restoration penilaian sangat obyektif yaitu berdasarkan penentuan

standar umum matematis (signal to noise). Restoration bertujuan untuk merekonstruksi atau

memulihkan citra yang telah terdegradasi dengan pembelajaran akan fenomena degradasi yang umum

terjadi. Jadi, teknik restorasi suatu citra ialah melakukan model-model degradasi kemudian melakukan

proses inverse dari model degradasi terhadap citra sehingga di dapat citra asli.

* adalah tanda konvolusi

Noise Model

Kemampuan untuk mensimulasi karakteristik dan efek dari noise (derau) adalah intisari dari image

restoration. Pada bagian topic kali ini pembahasan permodelan noise hanya pada ranah spatial, untuk

model noise ranah frekuensi akan dibahas pada topic berikutnya. Pada fasilitas MATLAB Image

Processing Toolbox terdapat syntax untuk secara otomatis melakukan penyertaan derau pada suatu

citra. Dimana syntax yang digunakan adalah imnoise, dengan syntax ini dapat melakukan penyertaan

Page 2: Pcd   topik4 - image restoration01

Praktikum Pengolahan Citra Digital – Topik 4 Yosafat Suryotomo - 612004047

2

derau dengan model yang berbeda-beda, tergantung dari input parameter argumennya. Fungsi imnoise

mempunyai syntax dasar sebagai berikut :

Dimana f adalah input citra. Fungsi imnoise mengkoversi input citra menjadi variable class double pada

rentang [0.0 1.0] sebelum ditambahkan derau. Syntax imnoise mempunyai berbagai model noise,

dimana keterangan tiap noise dapat anda lihat pada help MATLAB.

Untuk contoh penggunaan perintah imnoise terdapat pada source berikut yang hanya mewakili salah

satu noise model ( dipilih noise model Gaussian ) :

i = imread('cameraman.tif');

j = imnoise(i,'gaussian',0,0.01);

k = imnoise(i,'gaussian',0,0.1);

figure;subplot(211);

imshow(i);title('Citra Asli');subplot(212);imhist(i);

figure;subplot(211);

imshow(j);title('Citra terdegradasi Noise Gaussian dengan varians 0.01');subplot(212);imhist(j);

figure;subplot(211);

imshow(k);title('Citra terdegradasi Noise Gaussian dengan varians 0.1');subplot(212);imhist(k);

Jika menggunakan imnoise dengan type noise gaussian maka terlihat bahwa citra output akan

terdegradasi dengan noise dan juga terlihat bahwa pada nilai parameter varians jika diubah semakin

tinggi maka probabilitas noise Gaussian yang muncul akan semakin besar sehingga citra akan semakin

parah muncul deraunya.

Note : Pelajari penggunaan imnoise untuk citra lain dan noise model lain (salt & pepper, poisson, dll).

Dan juga perhatikan karakteristik dan perubahan yang terjadi pada histogram citra-nya.

Noise Estimation Parameters

Seperti dijelaskan sebelumnya proses terjadinya degradasi pada citra f(x,y) terjadi karena akibat citra

f(x,y) di konvolusi oleh suatu transfer fungsi degradasi h(x,y) dan tambahan noise n(x,y)

Page 3: Pcd   topik4 - image restoration01

Praktikum Pengolahan Citra Digital – Topik 4 Yosafat Suryotomo - 612004047

3

Sehingga untuk merestorasi citra yang telah terdegradasi g(x,y) dapat dengan melakukan inverse

transform dari noise, dengan catatan kita mengetahui karakteristik dan sifat dari noise itu sendiri.

Sehingga pada suatu kasus citra berderau kita dapat memprediksikan sifat noise model yang terjadi,

dengan analisa melalui grafik histogram pada suatu potongan citra dengan variasi grayscale yang rendah

(potongan gambar polos/berfrekuensi rendah). Dengan melakukan analisa tersebut kita dapat

melakukan pendekatan persamaan noise yang terjadi pada citra g(x,y).

Pada gambar cuplikan citra polos dari citra cameraman.tif yang telah diberi noise terlihat bahwa

karakteristik grafik histogram nya mendekati seperti karakteristik grafik noise model Gaussian. Berikut

ini adalah grafik probabilitas dari berbagai macam noise model :

Dengan mengetahui karakteristik transfer function dari noise yang terjadi maka dengan melakukan

proses inverse noise akan didapat hasil citra asli tak terdegradasi. Namun hal ini merupakan pendekatan

dari bermacam-macam noise model, pada kenyataannya citra terdegradasi pada noise yang terjadi tidak

mendekati noise-noise model tersebut sehingga proses restorasi tidak maksimal. Maka umumnya proses

restorasi dilakukan dengan filtering, dimana filtering dapat dilakukan pada ranah spatial maupun

frekuensi, namun pada topic kali ini dibahas terlebih dahulu pada ranah spatial.

Restoration Using Spatial Filtering Method

Pada prinsip sederhananya penghilangan noise dengan spatial filter adalah dengan mengaplikasikan

filter lolos frekuensi rendah (blurring) sehingga dengan begitu derau yang mempunyai perubahan nilai

grayscale yang tinggi (berfrekuensi tinggi) akan tidak lolos, namun terdapat pengembangan teknik

denoising selain dengan menggunakan blurring filter, berikut ini adalah beberapa metode denoising :

Page 4: Pcd   topik4 - image restoration01

Praktikum Pengolahan Citra Digital – Topik 4 Yosafat Suryotomo - 612004047

4

Arithmetic Mean Filtering

Arithmetic Mean filtering pada prinsipnya sama dengan smoothing filter yang sudah dibahas pada topic

sebelumnya tentang spatial filtering, dengan teknik smoothing filter maka citra akan mengalami blurring

sehingga noise dengan sendirinya akan berkurang. Persamaan umum dari arithmetic mean filter adalah

seperti halnya persamaan untuk menghitung rata-rata yaitu sebagai berikut :

Pada implementasi arithmetic mean filtering pada MATLAB adalah dengan menggunakan filter average,

atau dengan perintah fspecial dan imfilter, seperti pada contoh berikut :

close all;

I = imread('tire.tif');

J = imnoise(I,'gaussian',0,0.01);

w=fspecial('average',[3 3]);

L=imfilter(J,w);

figure;imshow(J);title('citra noise');

figure;imshow(L);title('Citra dengan Arithmetic Filter');

jika kita melihat pada citra output dari arithmetic filter pada source code diatas maka akan terlihat

bahwa citra berderau Gaussian J setelah diberi arithmetic filtering pada citra output L akan berkurang

efek noise nya dikarenakan adanya proses smoothing pada citra sehingga noise tidak akan

dominan/mencolok sehingga terkesan noise berkurang, namun ada harga yang harus dibayar yaitu

detail citra akan berkurang, dikarenakan ada efek smoothing sehingga citra output akan buram atau

blur.

Note : pelajari source code diatas untuk citra-citra lain dan ubahlah parameter dari imnoise untuk

melihat kinerja dari arithmetic filtering.

Median Filtering

Median Filtering merupakan filter dengan prinsip statistic, pada dasarnya median filter bekerja dengan

menentukan median dari suatu kernel (missal 3x3), filtering dengan metode ini merupakan filter

statistical order yang paling terkenal dikarenakan kinerja yang cukup memuaskan dalam mengatasi

noise terutama noise salt & pepper dan juga efek blurring yang terjadi jauh lebih kecil jika dibanding

dengan arithmetic filter. Berikut ini ialah persamaan umum dari suatu median filtering :

Page 5: Pcd   topik4 - image restoration01

Praktikum Pengolahan Citra Digital – Topik 4 Yosafat Suryotomo - 612004047

5

Dengan median filtering maka jika terdapat suatu citra yang terdegradasi oleh noise salt & pepper

(hitam/putih) akan ditentukan nilai median-nya atau nilai tengah (bukan rerata) dari suatu kernel (misal

3x3), maka dengan begitu noise salt and peper yang merupakan nilai tertinggi dan terendah dari suatu

rentang nilai grayscale akan hilang. Untuk lebih jelasnya berikut ini adalah contoh penggunaan atau

implementasi dari median filtering pada MATLAB :

close all;

I = imread('cameraman.tif');

J = imnoise(I,'salt & pepper',0.05);

w=fspecial('average',[3 3]); %Arithmetic Filtering

Ari=imfilter(J,w);

Med=medfilt2(J,[3 3]); %Median Filtering dengan kernel 3x3

figure;imshow(J);title('citra noise');

figure;imshow(Ari);title('Citra dengan Arithmetic Filter');

figure;imshow(Med);title('Citra dengan Median Filter');

Note : Analisalah kinerja dari Median Filtering pada model noise lainnya (Gaussian,Poisson,dll) apakah

kinerja filternya lebih baik pada noise model tersebut, dan juga lakukan perbandingan dengan metode

Arithmetic filtering.

Max filtering

Max filter pada prinsip dasarnya adalah mencari pixel dengan nilai grayscale yang paling tinggi dimana

hal ini hanya berguna untuk menghilangkan noise pepper (hitam) dikarenakan suatu pixel digantikan

dengan titik yang paling terang dalam suatu kernel (missal 3x3). Max Filtering didefenisikan sebagai

berikut :

Page 6: Pcd   topik4 - image restoration01

Praktikum Pengolahan Citra Digital – Topik 4 Yosafat Suryotomo - 612004047

6

Min Filtering

Min filter pada prinsip dasarnya adalah mencari pixel dengan nilai grayscale yang paling rendah dimana

hal ini hanya berguna untuk menghilangkan noise salt (putih) dikarenakan suatu pixel digantikan dengan

titik yang paling gelap dalam suatu kernel (missal 3x3). Min Filtering didefenisikan sebagai berikut :

Midpoint Filtering

Midpoint Filtering adalah gabungan antara Max filtering dan Min filtering, hal ini bertujuan karena pada

Max filter berguna untuk menghilangkan hanya noise pepper dan juga sebaliknya Min filtering hanya

untuk noise salt. Midpoint filtering bekerja dengan menjumlahkan antara filter max dan min kemudian

mengalikannya dengan setengah, persamaan umumnya adalah sebagai berikut :

Filter midpoint mengkombinasikan antara order statistical filter dengan averaging filter, berikut ini ialah

implementasi dari midpoint filter pada MATLAB :

close all;

I = imread('cameraman.tif');

J = imnoise(I,'gaussian',0,0.01);

Max = ordfilt2(J,(3*3),ones(3,3),'symmetric'); %Max Filtering

Min = ordfilt2(J,1,ones(3,3),'symmetric'); %Min Filtering

Mid = imlincomb(0.5,Max,0.5,Min); %Mid Filtering

figure;imshow(J);title('Citra dengan Noise Gaussian');

figure;imshow(Mid);title('Citra dengan Midpoint Filter');

Note : pelajari kembali prinsip cara kerja Max Filtering dan Min filtering dalam hubungannya dengan

kinerja Midpoint Filtering terhadap Noise model lain (Gaussian,uniform,salt & pepper, impulse, Poisson,

dll).

%Pelajari slide dosen dengan seksama terutama pelajari karakteristik noise-noise model yang

bermacam-macam;

Hand-out ini bisa anda download dari link berikut: http://simplyos.wordpress.com/

Page 7: Pcd   topik4 - image restoration01

Praktikum Pengolahan Citra Digital – Topik 4 Yosafat Suryotomo - 612004047

7

References

[1] Gonzalez, C. Rafael, Woods, E. Richard and Eddins, L. Steven, Digital Image Processing

using MATLAB, Pearson Education.

[2] I. Setyawan, “EE-733 Pengolahan Citra Digital”, Lecturer’s Slide Show Presentation, Satya

Wacana Christian Univ., ECE Dept.,Salatiga, 2007.

“The pessimist sees difficulty in every opportunity. The optimist sees the

opportunity in every difficulty “

- Winston Churchill