Implementasi dan Perbandingan Metode Harmonic-Mean Filter dan Contraharmonic-Mean Filter untuk Mereduksi Noise Pada Citra Digital

(1)

UNTUK MEREDUKSI NOISE PADA CITRA DIGITAL

SKRIPSI

AMALIA CHAIRY

101401085

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014


(2)

UNTUK MEREDUKSI NOISE PADA CITRA DIGITAL

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai Ijazah

Sarjana Komputer

AMALIA CHAIRY

101401085

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014


(3)

PERSETUJUAN

Judul : IMPLEMENTASI DAN PERBANDINGAN

METODE HARMONIC-MEAN FILTER DAN

CONTRAHARMONIC-MEAN FILTER UNTUK

MEREDUKSI NOISE PADA CITRA DIGITAL

Kategori : SKRIPSI

Nama : AMALIA CHAIRY

Nomor Induk Mahasiswa : 101401085

Program Studi : SARJANA(S1) ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI (Fasilkom-TI)

Komisi Pembimbing:

Dosen Pembimbing II Dosen Pembimbing I

Dian Rachmawati,S.Si,M.Kom Drs.Marihat Situmorang, M.Kom NIP. 19830723 200912 2 004 NIP.19631214 198903 1 001

Diketahui/Disetujui oleh

Program Studi S1 IlmuKomputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP. 19620317 199102 1 001


(4)

PERNYATAAN

IMPLEMENTASI DAN PERBANDINGAN METODE HARMONIC-MEAN FILTER DAN CONTRAHARMONIC-MEAN FILTER UNTUK MEREDUKSI NOISE PADA

CITRA DIGITAL

SKRIPSI

Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.

Medan, 1 Juli 2014

Amalia Chairy 101401085 


(5)

PENGHARGAAN

Puji syukur kehadirat Allah SWT yang telah memberikan Rahmat dan Hidayah kepada penulis sehingga penulis dapat menyelesaikan skripsi ini, sebagai syarat untuk memperoleh gelar Sarjana Komputer, pada Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi, Universitas Sumatera Utara.

Dalam penulisan ini tidak lupa penulis mengucapkan terima kasih kepada pihak-pihak yang telah banyak memberi motivasi hingga pada akhirnya penulis mampu menyelesaikan tugas akhir ini dengan baik. Oleh karena itu penulis mengucapkan banyak terima kasih kepada :

1. Allah SWT segala puji bagi-NYA yang kalau sudah Berkehendak cukup bagi-NYA mengatakan jadi(Kun) maka jadilah(Fayakun).Sholawat dan salam untuk Nabi Muhammad SAW agar menjadi do’a supaya semua bisa tetap istiqomah.

2. Ayahanda H.Arman Danus ,SE dan Ibunda Hj.Riswita, S.Si yang menjadi motivasi penulis untuk sukses dan selalu memberikan dukungan baik materi maupun non-materi,perhatian serta doa tanpa henti kepada penulis. 3. Bapak Prof.Dr.dr. Syahril Pasaribu, DTM&H, MSc(CTM), Sp.A(K) selaku

Rektor Universitas Sumatera Utara.

4. Bapak Prof. Muhammad Zarlis selaku Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.

5. Bapak Dr.Poltak Sihombing,M.Kom selaku Ketua Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

6. Ibu Maya Silvi Lydia,B.Sc, M.Sc selaku Sekretaris Program Studi S1 Ilmu Komputer Universitas Sumatera Utara.

7. Bapak Drs.Marihat Situmorang, M.Kom selaku Dosen Pembimbing I yang telah banyak meluangkan waktunya dalam memberikan masukkan-masukkan kepada penulis.

8. Ibu Dian Rachmawati,S.Si,M.Kom selaku Dosen Pembimbing I yang telah banyak meluangkan waktunya dalam memberikan masukkan-masukkan kepada penulis.

9. Bapak Muhammad Andri Budiman, S.T.,M.Comp.Sc.,M.E.M selaku dosen Penguji I yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

10. Bapak Romi Fadillah Rahmat,B.Comp.Sc,M.Sc selaku dosen Penguji II yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini. 11.Semua dosen serta pegawai di Program Studi S1 Ilmu Komputer


(6)

12.Abangda tercinta Aulia Ardy, S.Kom, M.Kom , Adik tercinta Andria Sufy, dan Annisa Zuhdy yang selalu mendoakan penulis.

13.Abang Mahadi Zikry Arnanda, S.Kom dan Kakak Riri Indriati Purba, S.Kom yang selalu memberikan saran serta motivasi dalam penulisan tugas akhir ini kepada penulis.

14.Abang Mukhammad Bagus Muslim, S.Kom yang selalu memberikan semangat motivasi dalam penulisan tugas akhir ini kepada penulis.

15.Sahabat tercintaku Muza Selvia Lingga dan Nurbaya Mentari Rambe, yang selalu memberikan semangat kepada penulis.

16.Sahabat tercintaku Nurul Nasution,Poppy Tania,Andhika Fajar,Lorent,dan Timothy yang selalu memberikan semangat kepada penulis.

17.Teman-teman KOMDIS 2010 (Nurhennida,Azizah,Dham-dham,Sunfirst,Westhyma,Lennora,Helen,Novri,Uun,Aulia,Yayang,Samsul, Aditya,Tetti,Reni) yang telah memberikan semangat kepada penulis.

18.Teman-teman Stambuk 2010 (Kom-A&B) yang telah memberikan semangat kepada penulis.

19.Teman-teman pengurus KPLI-Medan, RTIK-Sumut, IKLC dan IMILKOM yang telah memberikan semangat kepada penulis.

Penulis menyadari bahwa penulisan tugas akhir ini masih banyak keterbatasan dan kekurangan seperti pepatah “Tak ada akar yang tak lapuk”. Untuk itu kritik serta saran yang sifatnya membangun sangat penulis harapkan.Akhirnya penulis ucapkan semoga tugas akhir ini dapat berguna bagi pembaca dan bagi penulis khususnya.

Medan, 1 Juli 2014


(7)

  ABSTRAK

Noise Salt-and-Pepper dan noise Speckle adalah noise yang sering ada dijumpai pada citra digital. Citra yang memiliki noise biasanya terjadi karena kesalahan tehnik pengambilan citra . Untuk mereduksi noise dibutuhkan suatu metode filter yang tepat agar citra yang dihasilkan sesuai dengan aslinya. Metode Harmonic Mean Filter dan Contra-Harmonic Mean Filter adalah salah satu metode filter untuk mereduksi sebuah noise. Dari hasil perhitungan rata-rata Mean Square Error (MSE) dan Peak Signal to-Noise Ratio (PSNR) maka dapat disimpulkan metode Harmonic Mean Filter lebih baik mereduksi salt & pepper noise, sedangkan metode Contra-Harmonic Mean Filter lebih baik mereduksi speckle noise dengan nilai order filter(Q) adalah nol(Q=0).

Kata kunci : Pengolahan Citra, Harmonic Mean Filter , Contra-Harmonic Mean Filter, Mean Square Error (MSE) , Peak Signal to-Noise Ratio (PSNR).


(8)

 

IMPLEMENTATION AND COMPARISON OF HARMONIC MEAN FILTER AND CONTRA HARMONIC MEAN FILTER METHODS TO REDUCE

NOISE IN DIGITAL IMAGES

ABSTRACT

Salt-and-Pepper and Speckle noise are two kinds of noise usually found in digital images and occur due to errors in image acquisition technique. To reduce noise we need a proper filter method so that the real image restored. Harmonic mean-filter method and Contra - harmonic mean filter are two method to reduce noise. From the calculation of the average Mean Square Error (MSE) and Peak Signal to-Noise Ratio (PSNR) it can be concluded that Harmonic Mean Filter method is better to reduce salt & pepper noise. if the method of Contra-Harmonic Mean Filter is better to reduce Speckle noise the value of the order filter (Q) is zero (Q = 0).

Keyword : Image Processing , Harmonic Mean Filter , Contra-Harmonic Mean Filter, Mean Square Error (MSE) , Peak Signal to-Noise Ratio (PSNR).


(9)

 

DAFTAR ISI

PERSETUJUAN ... ii

PERNYATAAN ... iii

PENGHARGAAN ... iv

ABSTRAK ... vi

ABSTRACT ... vii

DAFTAR ISI ... viii

DAFTAR TABEL ... xi

DAFTAR GAMBAR ... xii

BAB 1 PENDAHULUAN ... 1

1.1 Latar Belakang ... 1

1.2 Rumusan Masalah ... 2

1.3 Batasan Masalah ... 2

1.4 Tujuan Penelitian ... 3

1.5 Manfaat Penelitian ... 3

1.6 Metodologi Penelitian ... 3

1.7 Sistematika Penulisan ... 3

BAB 2 TINJAUAN PUSTAKA ... 5

2.1 Pengertian Citra ... 5

2.1.1 Citra Analog ... 5

2.1.2 Citra Digital ... 6

2.2 Jenis-jenis Citra Digital ... 7

2.3 Pengolahan Citra ... 8

2.4 Aspek Perngolahan Citra ... 8

2.5 Citra digital berformat bitmap(.bmp) ... 10

2.6 Warna ... 10

2.6.1 Red,Green, and Blue(RGB) ... 11

2.6.2 Hue,Saturation, and Value(HSV) ... 12

2.6.3 Hue,Saturation, and Lightness(HSL) ... 13

2.6.4 Cyan Magenta Yellow Key(CMYK) ... 13

2.7 Perbaikan Citra(Image Restoration) ... 14

2.8 Noise ... 16

2.8.1 Salt & Pepper Noise ... 17

2.8.2 Speckle Noise ... 17

2.9 NonLinier Filters ... 18

2.9.1 Kernel ... 18

2.9.2 Harmonic Mean Filter ... 19


(10)

 

2.10 MSE,RMSE dan PSNR ... 22

BAB 3 ANALISIS DAN PERANCANGAN SISTEM ... 24

3.1 Analisis Sistem ... 24

3.1.1 Analisis Masalah ... 24

3.1.2 Analisis Persyaratan ... 25

3.1.2.1 Persyaratan Fungsional ... 25

3.1.2.2 Persyaratan Non-Fungsional ... 26

3.1.3 Analisis Proses ... 26

3.2 Pemodelan ... 27

3.2.1 Use Case Diagram ... 27

3.2.2 Sequence Diagram ... 31

3.2.3 Activity Diagram ... 31

3.3 Pseudocode ... 34

3.3.1 Pseudocode Harmonic Mean Filter ... 34

3.3.2 Pseudocode Contra-Harmonic Mean Filter ... 35

3.3.3 Pseudocode Menghitung nilai MSE,RMSE dan PSNR ... 36

3.4 Perancangan Sistem ... 37

3.4.1 Flowchart Sistem ... 37

3.4.2 Perancangan Antar Muka (Interface) ... 41

3.4.2.1 Form Awal ... 41

3.4.2.2 Form Menu Harmonic Mean Filter ... 42

3.4.2.3 Form Menu Contra-Harmonic Mean Filter ... 44

BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ... 47

4.1 Implementasi Sistem ... 47

4.1.1 Form Menu Awal ... 47

4.1.2 Form Harmonic Mean-Filter ... 48

4.1.3 Form Contra- Harmonic Mean-Filter ... 49

4.1.4 Form Help ... 50

4.2 Pengujian ... 51

4.2.1 Pengujian Harmonic Mean-Filter ... 51

4.2.1.1 Pengujian salt & pepper noise terhadap ukuran citra dan masing- masing kernel pada Harmonic Mean Filter ... 52

4.2.1.2 Pengujian Speckle noise terhadap ukuran citra dan masing-masing kernel pada Harmonic Mean Filter ... 57

4.2.2 Pengujian Contra-Harmonic Mean-Filter ... 63

4.2.2.1 Pengujian salt & pepper noise terhadap ukuran citra dan masing- masing kernel pada Contra-Harmonic Mean Filter ... 64

4.2.2.2 Pengujian Speckle noise terhadap ukuran citra dan masing-masing kernel pada Contra-Harmonic Mean Filter ... 70


(11)

 

4.2.3 Pengujian Black Box ... 77

4.2.3.1 Rencana Pengujian ... 77

4.2.3.2 Kasus dan Hasil Pengujian Alpha ... 77

4.2.3.3 Kesimpulan Hasil Pengujian Alpha ... 78

4.2.3.4 Kesimpulan Hasil Pengujian Betha... 78

BAB 5 KESIMPULAN DAN SARAN ... 80

Kesimpulan ... 80

Saran ... 81 DAFTAR PUSTAKA


(12)

 

DAFTAR TABEL

Tabel 3.1 Dokumentasi Naratif Use Case Filter ... 28

Tabel 3.2 Dokumentasi NaratifProses Harmonic Mean Filter ... 28

Tabel 3.3 Dokumentasi Naratif Use CaseContraharmonic Mean Filter ... 29

Tabel 3.4 Dokumentasi Naratif Use Case HELP ... 30

Tabel 4.1 Ukuran Citra 256x256 piksel, kernel 3x3 terhadap persentasi noise ... 52

Tabel 4.2 Ukuran Citra 128x128 piksel, kernel 3x3 terhadap persentasi noise ... 58

Tabel 4.3 Ukuran Citra 256x256 piksel, kernel 3x3 terhadap persentasi noise ... 64

Tabel 4.4 Ukuran Citra 256x256 piksel, kernel 3x3 terhadap persentasi noise ... 71

Tabel 4.5 Rencana Pengujian ... 78

Tabel 4.6 Pengujian hasil input citra digital oleh user ... 78


(13)

 

DAFTAR GAMBAR

Gambar 2.1 Citra Analog ... 6

Gambar 2.2 Citra Digital ... 6

Gambar 2.3 Citra Binner ... 7

Gambar 2.4 Citra grayscale ... 7

Gambar 2.5 Citra warna 24bit ... 8

Gambar 2.6 Image Enchancement. ... 9

Gambar 2.7 Image Restoration ... 9

Gambar 2.8 Image Segmentation ... 10

Gambar 2.9 pemandangan.bmp ... 10

Gambar 2.10 Struktur Warna RGB ... 11

Gambar 2.11 Model Warna HSV ... 12

Gambar 2.12 Struktur Warna CMYK ... 14

Gambar 2.13 Citra ber-noise ... 15

Gambar 2.14 Citra Kabur (blur) ... 15

Gambar 2.15 Model Proses degradasi / restorasi citra ... 16

Gambar 2.16 Ilustrasi Gambar Model Proses Degradasi / Restorasi Citra ... 16

Gambar 2.17 Salt & Pepper Noise ... 17

Gambar 2.18 Speckle noise ... 18

Gambar 2.19 (a) Citra terdegradasi dengan Salt and Pepper Noise and (b) Harmonic Mean Filter 3 x 3 ... 19

Gambar 2.20 (a) Citra terdegradasi Salt Noise dengan Probabilitas 0.45 (b) Contraharmonic mean filter 3 x 3 dan Q = 1.0 ... 22

Gambar 3.1 Diagram Ishikaw ... 25

Gambar 3.2 Use Case Diagram Sistem ... 27

Gambar 3.3 Sequence Diagram Proses Restorasi Citra ... 31

Gambar 3.4 Activity DiagramHarmonic Mean Filter ... 32

Gambar 3.5 Activity Diagram Contraharmonic Mean Filter ... 33

Gambar 3.6 Flowchart Sistem Secara Umum ... 38

Gambar 3.7 Proses Harmonic Mean Filter ... 39

Gambar 3.8 Proses Contraharmonic Mean Filter ... 40

Gambar 3.9 Form Awal ... 41

Gambar 3.10 Form Menu Harmonic Mean Filter ... 42

Gambar 3.11 Form Menu Contraharmonic Mean Filter ... 44

Gambar 4.1 Form Awal ... 47

Gambar 4.2 Form Harmonic Mean Filter ... 48

Gambar 4.3 Form Simulasi Harmonic Mean Filter ... 48

Gambar 4.4 Form Contra Harmonic Mean Filter ... 49

Gambar 4.5 Form Simulasi Contra Harmonic Mean Filter ... 50

Gambar 4.6 Form Help ... 50

Gambar 4.7 Gambaran Sistem Harmonic Mean Filter ... 51

Gambar 4.8 grafik sebelum dilakukan filtering ... 55


(14)

 

Gambar 4.10 grafik sesudah dilakukan filtering menggunakan kernel 5x5 ... 57

Gambar 4.11 grafik sebelum dilakukan filtering ... 61

Gambar 4.12 grafik sesudah dilakukan filtering menggunakan kernel 3x3 ... 61

Gambar 4.13 grafik sesudah dilakukan filtering menggunakan kernel 5x5 ... 62

Gambar 4.14 Gambaran Sistem Contra-Harmonic Mean Filter ... 63

Gambar 4.15 grafik sebelum dilakukan filtering ... 67

Gambar 4.16 Grafik Sesudah Filtering dengan Order Filter (Q) = -1 ... 68

Gambar 4.17 Grafik Sesudah Filtering dengan Order Filter (Q) = 0 ... 69

Gambar 4.18 Grafik Sesudah Filtering dengan Order Filter (Q) = 1 ... 70

Gambar 4.19 grafik sebelum dilakukan filtering ... 74

Gambar 4.20 Grafik Sesudah Filtering dengan Order Filter (Q) = -1 ... 75

Gambar 4.21 Grafik Sesudah Filtering dengan Order Filter (Q) = 0 ... 76

Gambar 4.22 Grafik Sesudah Filtering dengan Order Filter (Q) = 1 ... 77


(15)

 

BAB 1

PENDAHULUAN

1.1Latar Belakang

Citra memegang peranan sangat penting sebagai bentuk informasi. Seiring kemudahan yang di tawarkan dalam pengambilan, pemrosesan dan penyimpanannya masyarakat mulai banyak yang meninggalkan citra analog dan beralih ke citra digital.

Pada saat ini penggunaan citra digital semakin meningkat karena kelebihan-kelebihan yang dimiliki oleh citra digital tersebut, di antaranya adalah kemudahan dalam mendapatkan gambar, pengolahan gambar dan lain-lain. Akan tetapi tidak semua citra digital memiliki tampilan visual yang memuaskan mata manusia.

Citra digital hasil dari rekaman kamera digital, yang mana sering sekali terdapat beberapa gangguan yang mungkin terjadi, seperti muncul bintik-bintik yang di sebabkan oleh proses capture yang tidak sempurna, pencahayaan yang tidak merata yang mengakibatkan intesitas tidak seragam, atau gangguan yang disebabkan oleh kotoran - kotoran yang menempel pada citra dan lain sebagainya. Citra yang mengalami masalah seperti itu adalah noise , yang akan diperbaiki dengan berbagai teknik citragrafi untuk perbaikan kualitas citra. Seperti filtering , Teknik filtering merupakan teknik yang sering


(16)

 

digunakan untuk memperbaiki kualitas citra. Penulis mengangkat dari penelitian sebelumnya tentang teknik filtering antara lainnya :

1. Menurut (Wiliyana, 2012) , untuk mengatasi noise pada sebuah citra digital perlu dilakukan usaha untuk memperbaiki kualitas citra.Salah satunya dengan filtering citra baik secara linear maupun non-linear. Mean filter merupakan salah satu

filtering linear yang berfungsi untuk memperhalus dan menghilangkan noise pada

suatu citra yang bekerja dengan menggantikan intensitas nilai pixel dengan rata-rata dari nilai pixel tersebut dengan nilai pixel-pixel tetangganya.

2. Menurut (Yuwono, B. 2010) , Pelembutan Citra (Image smoothing) bertujuan untuk menekan gangguan (noise) pada citra. Gangguan tersebut biasanya muncul sebagai akibat dari hasil penerokan yang tidak bagus (sensor noise,

photographic grain noise) atau akibat saluran transmisi (pada pengiriman data).

3. Menurut (Santoso, Isman. 2013) , Noise pada citra digital dapat berupa periodic

noise yang secara visual tampak terdapat garis-garis pada citra yang

penyebarannya merata.Salah satu mekanisme yang digunakan untuk mengurangi noise adalah filter .

Dari pemaparan teknik filtering yang di atas, maka penulis tertarik untuk membandingkan metode Harmonic-Mean Filter dan Contraharmonic – Mean Filter.

1.2 Rumusan Masalah

Berdasarkan latar belakang di atas, maka rumusan masalah yang dapat diambil adalah: 1. Untuk mengenali dan mengidentifikasi citra yang memiliki noise dengan

menggunakan metode Harmonic-Mean Filter dan Contraharmonic – Mean Filter. 2. Apa Kelebihan dan Kelemahan Metode Harmonic-Mean Filter dan

Contraharmonic – Mean Filter berdasarkan parameternya.

1.3 Batasan Masalah


(17)

 

1. Jenis file citra yang diolah adalah jenis .bmp

2. Menggunakan citra asli yang di ubah menjadi citra grayscale dengan menambahkan perbandingan Salt-pepper noise dan speckle noise dengan menggunakan presentasi noise dalam range 1 – 40% pada kedua metode.

3. Menggunakan kernel 3x3, 5x5, 7x7,dan 9x9 untuk Harmonic Mean Filter dan Contraharmonic-mean filter.

4. Parameter untuk analisis adalah Mean Squared Error (MSE) , Root Mean Squared

Error (RMSE), Peak Signal to Noise Rasio(PSNR) sebelum terkena noise dan

setelah mengalami reduksi noise dan Running Time pada saat reduksi noise. 5. Tools yang digunakan Matlab R2010a.

1.4 Tujuan Penelitian

Tujuan penelitian ini adalah untuk mengetahui hasil perbandingan reduksi noise pada citra digital dengan menggunakan metode Harmonic-Mean Filter dan Contraharmonic –

Mean Filter.

1.5 Manfaat Penelitian

Manfaat penelitian ini yang diharapkan adalah menghasilkan aplikasi perangkat lunak untuk mereduksi noise pada citra digital. Sedangkan manfaat bagi penulis adalah untuk mengetahui parameter yang optimal dalam mereduksi noise dengan menggunakan metode

Harmonic-Mean Filter dan Contraharmonic – Mean Filter.

1.6 Sistematika Penulisan

Agar pembahasan lebih sistematis, maka tulisan ini dibuat dalam lima bab, yaitu : BAB I PENDAHULUAN

Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi “Implementasi dan Perbandingan Metode Harmonic-Mean Filter dan

Contraharmonic-Mean Filter untuk mereduksi noise pada Citra Digital.”,

rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, tinjauan pustaka, dan sistematika penulisan


(18)

 

BAB II LANDASAN TEORI

Berisi tentang penjelasan singkat mengenai defenisi pengolahan citra,

noise, metode Harmonic-Mean Filter dan Contraharmonic-Mean Filter,

Mean Squared Error (MSE) , Root Mean Squared Error (RMSE), dan

Peak Signal to Noise Rasio(PSNR). BAB III ANALISIS DAN PERANCANGAN

Berisi tentang uraian Analisis mengenai proses kerja dari metode

Harmonic-Mean Filter dan Contraharmonic-Mean Filter yang terdiri dari

flowchart, Unified Modeling Language(UML) serta perancangan tampilan

form dari aplikasi.

BAB IV IMPLEMENTASI DAN PENGUJIAN

Pada tahap ini dilakukan pembuatan system dan coding sesuai dengan analisis dan perancangan. Kemudian melakukan pengujian sistem.

BAB V KESIMPULAN DAN SARAN

Bab terakhir akan memuat kesimpulan isi dari keseluruhan uraian dari bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh yang diharapkan dapat bermanfaat dalam pengembangan selanjutnya


(19)

BAB 2

TINJAUAN PUSTAKA

2.1 Pengertian citra

Secara harfiah, citra (image) adalah gambar pada bidang dwimatra (dua dimensi). Meskipun sebuah citra kaya informasi, namun seringkali citra yang kita miliki mengalami penurunan mutu (degradasi), misalnya mengandung cacat atau derau (noise), warnanya terlalu kontras, kurang tajam, kabur (blurring), dan sebagainya. Tentu saja citra semacam ini menjadi lebih sulit diinterpretasi karena informasi yang disampaikan oleh citra tersebut menjadi berkurang(Munir, R. 2007).

Agar citra yang mengalami gangguan mudah diinterpretasi (baik oleh manusia maupun mesin), maka citra tersebut perlu dimanipulasi menjadi citra lain yang kualitasnya lebih baik(Munir, R. 2007).

Citra dapat dikelompokkan menjadi dua bagian yaitu citra diam yaitu citra tunggal yang tidak bergerak dan citra bergerak yaitu rangkaian citra diam yang ditampilkan secara beruntun, sehingga memberi kesan pada mata sebagai gambar yang bergerak. Setiap citra didalam rangkaian itu disebut frame. Gambar-gambar yang tampak pada film layar lebar atau televisi yaitu terdiri dari ribuan sampai ratusan-ribu frame (Hermawati , A.F. 2013).


(20)

2.1.1 Citra Analog

Citra analog adalah citra yang bersifat kontinu, seperti gambar pada monitor televisi, foto sinar-X yang tercetak di kertas foto, lukisan, pemandangan alam, hasil CT-scan, dan lain sebagainya. Citra analog tidak dapat direpresentasikan dalam komputer sehingga tidak bisa diproses di komputer secara langsung. Agar citra analog dapat diproses di komputer, proses konversi analog ke digital harus dilakukan terlebih dahulu(Hermawati , A.F. 2013). Citra Analog dapat dilihat pada Gambar 2.1 .

Gambar 2.1 Citra Analog (Hermawati , A.F. 2013)

2.1.2 Citra Digital

Citra adalah suatu representasi (gambaran), kemiripan, atau imitasi dari suatu objek. Citra sebagai keluaran suatu sistem perekaman data dapat bersifat optik berupa foto, bersifat analog berupa sinyal-sinyal video seperti gambar pada monitor televisi atau bersifat digital yang dapat langsung disimpan pada suatu media penyimpanan (Santoso, I. 2013).

Citra digital adalah citra yang dinyatakan secara diskrit (tidak kontinu), baik untuk posisi koordinatnya maupun warnanya. Dengan demikian, citra digital dapat digambarkan sebagai suatu matriks, dimana indeks baris dan indeks kolom dari matriks menyatakan posisi suatu titik di dalam citra dan harga dari elemen matriks menyatakan warna citra pada titik tersebut. Dalam citra digital yang dinyatakan sebagai susunan matriks seperti ini, elemen–elemen matriks tadi disebut juga dengan istilah piksel yang berasal dari kata picture element. Citra juga dapat didefenisikan fungsi dua variabel, f(x,y), di mana x dan y adalah koordinat spasial


(21)

sedangkan nilai f(x,y) adalah intensitas citra pada koordinat tersebut(Santoso, I. 2013). Ilustrasi citra digital dapat dilihat pada Gambar 2.2.

1. 2. 3. 4.

Gambar 2.2 Citra Digital

2.2 Jenis-jenis Citra Digital

Citra Biner, adalah citra digital yang hanya memiliki dua kemungkinan nilai pixel yaitu hitam dan putih. Citra biner juga disebut sebagai citra B&W(Black and White) atau citra monokrom. Hanya dibutuhkan 1 bit mewakili nilai setiap piksel dari citra biner(Santoso, I. 2013). Dapat dilihat pada gambar 2.3, dibawah ini

Gambar 2.3 Citra Binner

Citra Grayscale, adalah citra digital yang hanya memiliki satu nilai kanal pada setiap pixelnya, dengan kata lain nilai bagian Red = Green = Blue. Nilai tersebut digunakan untuk menunjukkan tingkat intesitas. Warna yang dimiliki adalah warna dari hitam, keabuan , dan putih. Tingkatan keabuan di sini merupakan warna abu dengan berbagai tingkatan dari hitam hingga mengikuti putih(Santoso, I. 2013). Dapat dilihat pada gambar 2.4, dibawah ini:

10   145  90  12  13 

2     22      0      0     13  65        88   234   232   207 

 188    153        129      91   90   

x1  x


(22)

Gambar 2.4 Citra grayscale

Citra Warna (24 -Bit) adalah citra yang setiap piksel dari citra warna 24-bit diwakili dengan 24 -bit sehingga total 16.777.216 variasi warna. Variasi ini sudah lebih dari cukup untuk memvisualisasikan seluruh warna yang dapat dilihat penglihatan manusia. Setiap informasi warna disimpan ke dalam 1-byte data. 8-bit pertama menyimpan nilai biru, Kemudian diikuti dengan nilai hijau pada 8-bit kedua dan 8-bit terakhir merupakan nilai warna merah(Santoso, I. 2013). Dapat dilihat pada gambar 2.5, dibawah ini:

Gambar 2.5 Citra warna 24-bit.

2.3 Pengolahan Citra

Pengolahan citra mendapat perhatian yang signifikan di beberapa tahun terakhir karena dapat membantu beberapa aplikasi di berbagai bidang termasuk dalam bidang astronomi, obat-obatan, robot atau satelit(Marques, Oge. 2011). Pengolahan citra mencakup dua aspek proses pengubahan sebuah citra seperti berikut ini :


(23)

1 .Meningkatkan kualitas informasi dari sebuah citra (gambar) yang digunakan untuk kepentingan interpretasi manusia

2 .Mengubah citra dari sebuah gambar yang digunakan untuk mempermudah pemrosesan persepsi mesin autonomous agar lebih mudah dalam mengambil keputusan(Prasetyo, E. 2011).

2.4 Aspek Pengolahan Citra

Teknik pengolahan citra dibagi menjadi beberapa sub kelas. Adapun pembagian kelas dari pengolahan citra adalah seperti berikut ini :

1. Image Enchancement

Image Enchancement merujuk pada memproses sebuah gambar sehingga hasilnya menjadi lebih bagus dengan menggunakan aplikasi khusus. Contoh ini meliputi menajamkan atau mengurangi blur dari sebuah gambar, menandai tepi, meningkatkan kontras gambar atau meningkatkan kecerahan sebuah gambar dan menghilangkan noise (Prasetyo, E. 2011). Dapat dilihat pada Gambar 2.6.

Gambar 2.6 Image Enchancement (Prasetyo, E. 2011) 2. Image Restoration

Image Restoration adalah mengembalikan keadaan semula sebuah gambar yang telah rusak menjadi seperti sedia kala. Seperti contoh dapat dilihat sebagai berikut : menghilangkan blur yang disebabkan oleh pergerakan linear, menghilangkan distorsi optik, menghilangkan efek tua dari sebuah gambar (Prasetyo, E. 2011). Seperti pada Gambar 2.7.


(24)

(a) Citra Asli (b) Citra noise (c) Citra filter Gambar 2.7 Image Restoration

3.Image Segmentation

Image Segmentation meliputi pembagian gambar menjadi bagian yang berbeda atau mengisolasi aspek tertentu dari sebuah gambar. Sebagai contoh dapat dilihat sebagai berikut : menemukan garis,lingkaran atau bentuk khusus sebuah gambar, fotografi aerial, mengidentifikasi mobil , pohon, gedung atau jalan(Prasetyo, E. 2011). Dapat dilihat pada Gambar 2.8

(a) Citra grayscale (b) Image Segmentation Gambar 2.8 Image Segmentation

2.5 Citra Digital berformat Bitmap(.bmp)

Citra Bitmap menyimpan data kode citra secara digital dan lengkap (cara penyimpanannya adalah per pixel). Citra bitmap sering disebut juga dengan citra raster. Citra bitmap direpresentasikan dalam bentuk matriks atau dipetakan dengan menggunakan bilangan biner atau sistem bilangan lain. Citra ini memiliki kelebihan memanipulasi warna dan tampilan bitmap mampu menunjukkan kehalusan gradasi bayangan dan warna dari sebuah gambar. Bitmap merupakan media elektronik yang paling tepat untuk gambar-gambar dengan perpaduan gradiasi warna yang rumit,


(25)

seperti foto dan lukisan digital. Citra bitmap biasanya diperoleh dengan cara Scanner, Camera digital, Video Capture dan lain-lain (Santo, J. 2013). Dapat dilihat pada gambar 2.9 , dibawah ini:

Gambar 2.9 pemandangan.bmp 2.6 Warna

Isi dari sebuah citra digital adalah piksel atau kotak warna. Manusia dapat melihat radiasi elektromagnetik dengan panjang gelombang 400 sampai 700 nanometers(nm) sebagai warna. Hewan juga bisa melihat sisi yang berbeda dari spectrum elektromagnetik dan dapat melihat warna yang berbeda dari apa yang tidak dapat dilihat oleh manusia. (Santoso, I. 2013)

Pengalaman warna secara natural adalah proses kombinasi dari mata dan otak. Mata bertindak sebagai penerima cahaya dan otak menginterpretasikan data dari mata sebagai informasi visual dan menerjamahkan data tersebut sebagai warna. (Santoso, I. 2013)

Penglihatan manusia didasarkan atas tiga penerima, satu untuk merah, yang lain untuk hijau , sisanya untuknya biru. Ada banyak representasi warna dari banyak perbedaan lingkup warna, atau model yang biasa memiliki tiga atau empat channel. (Santoso, I. 2013)

2.6.1 Red, Green and Blue (RGB)

Model warna RGB adalah mode l warna berdasarkan konsep penambahan kuat cahaya primer yaitu Red, Green dan Blue. Dapat dilihat pada gambar 2.10


(26)

Gambar 2.10 Struktur Warna RGB (Santoso, I. 2013)

Dalam suatu ruang yang sama sekali tidak ada cahaya, maka ruangan tersebut adalah gelap total. Tidak ada signal gelombang cahaya yang diserap oleh mata kita atau RGB (0,0,0). Apabila kita menambahkan cahaya merah pada ruangan tersebut, maka ruangan akan berubah warna menjadi merah misalnya RGB (255,0,0), semua benda dalam ruangan tersebut hanya dapat terlihat berwarna merah. Demikian apabila cahaya kita ganti dengan hijau atau biru. (Santoso, I. 2013)

Berdasar pada tri-stimulus vision theory yang mengatakan bahwa manusia melihat warna dengan cara membandingkan cahaya yang datang dengan sensor-sensor peka cahaya pada retina (yang berbentuk kerucut). Sensor-sensor-sensor tersebut paling peka terhadap cahaya dengan panjang gelombang 630 nm (merah), 530 nm (hijau) dan 450 nm (biru). Model ini dapat digambarkan dengan kubus dengan sumbu-sumbu R, G dan B.( Sutoyo, T. & Mulyanto, E. 2009)

 Warna sudut kubus pada sumbu utama menyatakan warna primer.  Warna sudut kubus diluar sumbu utama menyatakan warna

komplementer (merah dengan cyan, hijau dengan magenta, biru dengan kuning).


(27)

2.6.2 Hue, Saturation, and Value (HSV)

Model warna HSV mendefinisikan warna dalam terminologi Hue, Saturation dan Value. Hue menyatakan warna sebenarnya, seperti merah, violet, dan kuning. Hue digunakan untuk membedakan warna-warna dan menentukan kemerahan (redness), kehijauan (greeness), dsb, dari cahaya. Hue berasosiasi dengan panjang gelombang cahaya.Saturation menyatakan tingkat kemurnian suatu warna, yaitu mengindikasikan seberapa banyak warna putih diberikan pada warna. Value adalah atribut yang menyatakan banyaknya cahaya yang diterima oleh mata tanpa memperdulikan warna. (Sutoyo, T. & Mulyanto, E. 2009)

Gambar 2.11 Model Warna HSV(Sutoyo, T. & Mulyanto, E. 2009)

2.6.3 Hue, saturation , and Lightness (HSL)

Pada dasarnya model warna HSL hampir sama dengan model warna HSV. Model warna HSL terdiri dari 3 komponen yaitu Hue, saturation , dan Lightness. Hue merupakan karakteristik warna berdasar cahaya yang dipantulkan oleh objek, dalam warna dilihat dari ukurannya mengikuti tingkatan 0 sampai 360. Sebagai contoh, pada tingkat 0 adalah warna Merah, 60 adalah warna Kuning, untuk warna Hijau pada tingkatan 120, sedangkan pada 180 adalah warna Cyan. Untuk tingkat 240 merupakan warna Biru, serta 300 adalah warna Magenta. (Santoso, I. 2013)

Saturation/Chroma adalah tingkatan warna berdasarkan ketajamannya berfungsi untuk mendefinisikan warna suatu objek cenderung murni atau cenderung


(28)

kotor (gray). Saturation mengikuti persentase yang berkisar dari 0% sampai 100% sebagai warna paling tajam. . (Santoso, I. 2013)

Lightness adalah tingkatan warna berdasarkan pencampuran dengan unsur warna Putih sebagai unsur warna yang memunculkan kesan warna terang atau gelap. Nilai koreksi warna pada Lightness berkisar antara 0 untuk warna paling gelap dan 100 untuk warna paling terang.(Santoso, I. 2013)

2.6.4 Cyan Magenta Yellow Key (CMYK)

Cyan Magenta Yellow Key (CMYK),atau sering disingkat sebagai CMYK adalah proses pencampuran pigmen yang lazim digunakan percetakan. Tinta process cyan, process magenta, process yellow, process black dicampurkan dengan komposisi tertentu dan akurat sehingga menghasilkan warna tepat seperti yang diinginkan. Bahkan bila suatu saat diperlukan, warna ini dengan mudah bisa dibentuk kembali. Sistem CMYK juga digunakan oleh banyak printer kelas bawah karena keekonomisannya. (Santoso, I. 2013)

CMYK (adalah kependekan dari cyan, magenta, yellow-kuning, dan warna utamanya (black-hitam), dan seringkali dijadikan referensi sebagai suatu proses pewarnaan dengan mempergunakan empat warna) adalah bagian dari model pewarnaan yang sering dipergunakan dalam pencetakan berwarna. Namun ia juga dipergunakan untuk menjelaskan proses pewarnaan itu sendiri. Meskipun berbeda-beda dari setiap tempat pencetakan, operator surat khabar, pabrik surat kabar dan pihak-pihak yang terkait, tinta untuk proses ini biasanya, diatur berdasarkan urutan dari singkatan tersebut. (Santoso, I. 2013)

Model ini, baik sebagian ataupun keseluruhan, biasanya ditimpakan dalam gambar dengan warna latar putih (warna ini dipilih, dikarenakan dia dapat menyerap panjang struktur cahaya tertentu). Model seperti ini sering dikenal dengan nama "subtractive", karena warna-warnanya mengurangi warna terang dari warna putih. (Santoso, I. 2013)

Dalam model yang lain "additive color", seperti halnya RGB (Red-Merah, Green-Hijau, Blue-Biru), warna putih menjadi warna tambahan dari kombinasi


(29)

warna-warna utama, sedangkan warna-warna hitam dapat terjadi tanpa adanya suatu cahaya. Dalam model CMYK, berlaku sebaliknya: warna putih menjadi warna natural dari kertas atau warna latar, sedangkan warna hitam adalah warna kombinasi dari warna-warna utama. Untuk menghemat biaya untuk membeli tinta, dan untuk menghasilkan warna hitam yang lebih gelap, dibuatlah satu warna hitam khusus yang menggantikan warna kombinasi dari cyan, magenta dan kuning. (Santoso, I. 2013)

Gambar 2.12 Struktur Warna CMYK (Santoso, I. 2013)

2.7 Perbaikan Citra (Image Restoration)

Restorasi citra bertujuan merekonstruksi atau memperbaiki citra yang terdegradasi dengan menggunakan suatu priori knowledge dari fenomena degredasi tersebut. Teknik restorasi berorientasi pada pemodelan degradasi dan mengaplikasikan proses kebalikannya untuk memperbaiki citra aslinya. Degradasi citra biasanya terjadi pada saat akuisisi citra digital, baik dari sensor atau digitizer. Bentuk dari degradasi ini bisa berupa(Hermawati , A.F. 2013) :

- Citra ber-noise


(30)

- Citra kabur(blur)

Gambar 2.14 Citra Kabur (blur)

Seperti diberikan pada Gambar 2.15 menunjukkan proses degradasi yang ditunjukkan dalam sebuah fungsi degradasi yang sama-sama dengan suatu penambahan noise, berjalan pada fungsi input(x,y) , menghasilkan suatu citra terdegradasi g(x,y) , beberapa pengetahuan mengenai fungsi degradasi H, dan beberapa pengetahuan mengenai penambahan noise µ(x,y), proses restorasi bertujuan untuk mendapatkan perkiraan citra aslinya f(x.y). (Hermawati , A.F. 2013)

Gambar 2.15 Model Proses degradasi / restorasi citra

Dari model diatas dapat diberikan ilustrasi seperti pada Gambar 2.16. dibawah ini :

Citra Asli noise Citra Restoration


(31)

2.8 Noise

Ketika sebuah citra ditangkap oleh kamera , sering kali terdapat beberapa gangguan yang mungkin terjadi , seperti kamera tidak focus, muncul bintik-bintik yang disebabkan oleh proses capture yang tidak sempurna , pencahayaan yang tidak merata mengakibatkan intensitas tidak seragam , kontras citra terlalu rendah sehingga objek sulit untuk dipisahkan dari latar belakanganya, atau gangguan yang disebabkan oleh kotoran-kotoran yang menempel pada citra, dan lain sebagainya. Setiap gangguan pada citra dinamakan noise. Citra mengandung noise seperti ini memerlukan langkah-langkah proses analisis citra.( Sutoyo, T. & Mulyanto, E. 2009)

2.8.1 Salt and Pepper noise

Salt and pepper noise merupakan bentuk noise yang biasanya terlihat titik -titik hitam dan putih pada citra seperti tebaran garam dan merica(Adi, T. 2010). Fungsi Probabilitas Kepadatan(Probability Density Function(PDF)) noise (bipolar) impulse diberikan oleh:

………(1)

Dimana p(z) adalah fungsi probabilitas kepadatan noise, Pa adalah probabilitas noise jenis a (pepper) dan Pb adalah probabilitas noise b(salt) . Jika b>a , intensitas b akan tampak sebagai titik terang pada citra. Sebaliknya, level a akan tampak seperti titik gelap. Jika selain Pa atau Pb nol, impulse noise disebut juga unipolar. Jika Probabilitas selain nol , dan Khususnya diperkirakan sama, nilai impulse noise akan mirip butiran salt and pepper secara acak yang terdistribusi pada citra. Dengan alasan inilah noise bipolar impulse disebut juga salt-and-pepper noise (Santo, J. 2013). Seperti diberikan pada Gambar 2.17


(32)

Gambar 2.17 Salt and Pepper Noise

2.8.2 Speckle noise

Speckle noise merupakan model noise yang memberikan warna hitam pada titik yang terkena noise. (Santo, J. 2013)

Seperti diberikan pada Gambar 2.18

Gambar 2.18 Speckle noise 2.9 NonlinearFilters

Sebagian besar filter pengolahan citra jatuh dibawah kategori Nonlinear filters. Nonlinear filter beroperasi pada sebuah gambar dengan menghitung fungsi Nonlinear pada sebuah jendela-jendela di setiap piksel dan menggantikan nilai-nilai yang ada pada jendela-jendela tersebut dengan nilai piksel yang sudah di hitung menggunakan fungsi nonlinear. Salah satu yang paling penting dari Nonlinearfilter yang didasarkan pada median filter lainnya. Biasanya digunakan untuk menghilangkan salt and pepper noise dari sebuah gambar dengan memberikan keunggulan di bandingkan menggunakan Aritmetic mean filter untuk memberikan hasil informasi dari sebuah


(33)

tepi yang telah di filter dalam sebuah gambar. Nonlinear filters tidak terbatas dalam penghapusan sebuah noise dari sebuah gambar. Nonlinear Filter memiliki beberapa jenis, antara lain Harmonic mean filter, Contra-Harmonic Mean Filter dan sebagiannya.( R, Harley,2012)

2.9.1 Kernel

Kernel adalah suatu matrik yang pada umumnya berukuran kecil dengan elemen-elemennya adalah berupa bilangan. Kernel digunakan pada proses konvolusi. Oleh karena itu, kernel juga disebut sebagai convolution window (jendela konvolusi). Ukuran kernel dapat berbeda-beda, seperti 2x2, 3x3, 5x5, dan sebagainya. Elemen-elemen kernel juga disebut sebagai bobot (weight) merupakan bilangan-bilangan yang membentuk pola tertentu. Kernel juga biasa disebut dengan tapis (filter), template, mask, serta sliding window.( Sutoyo, T. & Mulyanto, E. 2009)

Berikut adalah contoh kernel 2x2 dan 3x3.

(a) (b)

Dimana (a) adalah contoh kernel yang berukuran 2x2 dan (b) adalah contoh kernel yang berukuran 3x3.

2.9.2 Harmonic – Mean Filter

Harmonic mean filter adalah anggota dari bagian Nonlinear filter yang lebih baik dalam menghilangkan Gaussian noise dari pada metode Aritmetic mean filter( Sutoyo, T. & Mulyanto, E. 2009) . Sifat filter ini sama seperti Geometric Mean Filter . filter ini bekerja baik untuk salt noise, tetapi gagal untuk citra yang terdegradasi oleh noise yang mengandung pepper noise. Dapat dilihat pada gambar 2.19. Di bawah ini merupakan citra terdegradasi dengan Salt and Pepper noise.

1 -1 1 -1 4 -1

1 -1 1 1 0


(34)

(a) (b)

Gambar 2.19 (a) Citra terdegradasi dengan Salt and Pepper Noise

(b) Harmonic Mean Filter 3 x 3

Operasi dari harmonic mean filter diberikan oleh persamaan 2 berikut ini :

……….………..(2) Keterangan :

1. m x n adalah mbaris dan nkolom kernel Harmonic Mean Filter. 2. G(s,t) adalah baris dan kolom piksel yang akan diproses[6]. Contoh :

Perhitungan digital dari Harmonic mean filter . Misalkan Sxy adalah subimage dari

sebuah citra berukuran 3 x 3 yang mempunyai nilai-nilai intensitas seperti berikut[1] :

5 6 5

9 10 1

5 6 10

Penyelesaian :

5 6 5

9 10 1

5 6 10

F(1,1) = 3*3 /(1/5+1/6+1/5+1/9+1/10+1/1+1/5+1/6+1/10) = 9 / 2.24444 = 4

 

 

     

y

x

S

t

s

g

s

t

mn

y

x

f

,

,

,

1

,

ˆ


(35)

 

 

 

 

 

  

y x y x S t s Q S t s Q

t

s

g

t

s

g

y

x

f

, , , , 1

,

,

,

ˆ

2.9.3 Contraharmonic-mean filter

Contraharmonic mean filter adalah anggota dari satu set Nonlinear filter yang lebih baik dalam menghilangkan Gaussian noise dan melestarikan fitur tepi daripada Arithmetic mean filter.seperti diberikan pada gambar 2.21 (Hermawati , A.F. 2013).

(a) (b)

Gambar 2.20 (a) Citra terdegradasi Salt Noise dengan Probabilitas 0.45 Hasil Restorasi dengan (b) Contraharmonic mean filter 3 x 3 dan Q = 1.0 Operasi dari Contraharmonic Mean Filter didasarkan pada persamaan 3 berikut ini :

……….. (3)

Dimana Q disebut order dari filter. Filter ini sangat cocok untuk mengurangi atau secara virtual mengeliminasi efek salt and pepper noise. Untuk nilai Q positif, filter mengeliminasi pepper noise. Untuk nilai Q negative filter ini mengeliminasi salt noise. Filter ini tidak dapat melakukan keduanya secara bersamaan.( Sutoyo, T. & Mulyanto, E. 2009)


(36)

Contoh :

Perhitungan digital dari Contraharmonic mean filter , Misalkan Sxy adalah subimage

dari sebuah citra dan Sxy berukuran 3x3 yang mempunyai nilai-nilai intensitas seperti

berikut(Hermawati , A.F. 2013) : Dengan Q = 1.5

5 6 5

9 10 1

5 6 10

Penyelesaian :

F(1,1)=(52.5+62.5+52.5+92.5+102.5+12.5+52.5+62.5+102.5)/(51.5+61.5+51.5+91.5+101.5+ 11.5+51.5+61.5+101.5) = 8.

2.10 Mean Square Error(MSE), Root Mean Squared Error (RMSE) ,

dan Peak Signal to Noise Ratio(PNSR)

MSE adalah rata-rata kuadrat nilai kesalahan antara citra asli dengan citra hasil pengolahan yang secara matematis dapat di rumuskan pada persamaan 4:

………..(4) Keterangan :

f

 

x,y : Intensitas citra asli

fˆ

 

x,y : Intensitas citra hasil filter

Semakin kecil nilai MSE, maka semakin bagus kualitas citra hasil filter(Sutoyo, T. & Mulyanto, E. 2009).

Root Mean Squared Error (RMSE) dari citra hasil rekonstruksi dan citra asal Perhitungan dilakukan untuk mengetahui besarnya error yang dihasilkan dari proses penyisipan.

   



   

1 0 1 0 2

,

ˆ

,

1

m i n j

y

x

f

y

x

f

mn

MSE


(37)

Perhitungan dilakukan untuk setiap piksel dalam citra dengan menggunakan rumus pada persamaan 5:

………(5) di mana f(i,j) adalah citra asal, fˆ

 

x,y adalah citra hasil rekonstruksi atau citra uji, dan M*N adalah perkalian panjang dengan lebar citra.

PSNR merupakan nilai perbandingan antara harga maksimum warna pada citra hasil filtering dengan kuantitas gangguan (noise) yang dinyatakan dalam satuan decibel(db), noise yang dimaksud adalah akar rata-rata kuadrat nilai kesalahan( MSE ).(Santoso, I. 2013)

Secara Matematis, nilai PSNR dapat dirumuskan pada persamaan 6.

………..(6)

Keterangan :

Jika nilai MSE kecil, maka nilai PSNR besar akan menghasilkan kualitas citra yang baik.( Sutoyo, T. & Mulyanto, E. 2009)

)

255

(

10

*

20

MSE

Log

PSNR

   



   

1 0 1 0 2

,

ˆ

,

1

m i n j

y

x

f

y

x

f

mn

RMSE


(38)

BAB 3

ANALISIS DAN PERANCANGAN

3.1 Analisis Sistem

Sebelum melakukan tahap perancangan sebuah sistem , hal pertama yang perlu dilakukan adalah analisis sistem. Analisis sistem pada dasarnya merupakan tahapan yang dilakukan untuk menghasilkan pemahaman yang menyeluruh terhadap kebutuhan sistem sehingga diperoleh tugas-tugas yang akan dikerjakan sistem. Fase Awal dalam analisis sistem ini adalah fase analisis masalah yang bertujuan untuk mempelajari dan memahami masalah yang akan diselesaikan dengan menggunakan sistem ini. Kemudian dilanjutkan dengan fase analisis persyaratan yang akan memenuhi kebutuhan dan permintaan pengguna (user). Analisis selanjutnya dan merupakan analisis terakhir adalah analisis proses yang akan dikerjakan sistem.


(39)

3.1.1 Analisis Masalah

Masalah utama didalam penelitian ini adalah perbaikan kualitas citra yang terkena noise pada citra digital yang memiliki Salt and Pepper Noise dan Speckle Noise menjadi citra yang lebih bagus tanpa memiliki noise. Dalam sistem ini , citra digital yang akan diperbaiki adalah citra grayscale. Untuk melakukan perbaikan kualitas citra menggunakan tehnik filtering. filter yang digunakan dan akan dibandingkan adalah Harmonic Mean Filter dan Contra-Harmonic Mean Filter.

Untuk mengidentifikasi masalah yang digunakan diagram ishikawa. Diagram ishikawa adalah sebuah alat grafis yang digunakan untuk mengidentifikasi , mengeksplorasi dan menggambarkan suatu masalah serta sebab dan akibat dari masalah tersebut.

Diagram ini juga sering disebut sebagai diagram sebab-akibat atau diagram tulang ikan. Identifikasi terhadap permasalahan akan membantu analisis persyaratan sistem yang nantinya akan dikembangkan.

dapat diperlihatkan pada diagaram ishikawa Gambar 3.1

Gambar 3.1 Diagram Ishikawa

3.1.2 Analisis Persyaratan

Analisis kebutuhan sistem ini meliputi analisis persyaratan fungsional dan analisis persyaratan non-fungsional.


(40)

3.1.2.1 Persyaratan Fungsional

Persyaratan fungsional adalah segala sesuatu yang harus dimiliki oleh sistem. Dalam sistem reduksi noise pada citra digital dengan membandingkan dua metode yaitu Harmonic mean filter dan Contraharmonic mean filter ini terdapat beberapa hal yang menjadi persyaratan fungsional yang harus dipenuhi, antara lain :

1. Citra digital yang akan direduksi adalah citra RGB berformat BMP yang akan diubah kedalam citra grayscale dan memiliki Salt and pepper noise dan

Speckle noise dengan range nilai 1% - 40 %.

2. Menggunakan kernel 3x3, 5x5, 7x7 dan 9x9 dari matriks nilai pixel citra.

3. Menggunakan nilai Q dengan range -1 ≤ Q ≤ 1 pada Contraharmonic mean filter.

4. Menggunakan perhitungan dengan metode Mean Squared Error (MSE) , Peak Signal to Noise Ratio (PSNR) , Root Mean Squared Error (RMSE) , dan Running time sebagai pembanding kualitas file citra sebelum dan sesudah noise direduksi.

5. Sistem melakukan proses restorasi dengan Harmonic mean filter dan Contraharmonic mean filter.

6. Hasil reduksi noise dapat disimpan dengan citra yang berekstensi .bmp. 3.1.2.2 Persyaratan Non-Fungsional

Persyaratan non-fungsional adalah persyaratan apa yang harus dilakukan sistem. Beberapa persyaratan non-fungsional yang harus dipenuhi oleh sistem yang dirancang adalah sebagai berikut.

1. Performa

Sistem yang akan dibangun harus dapat menunjukkan hasil dari proses filter citra digital.

2. Mudah dipelajari dan digunakan

Sistem yang akan dibangun harus sederhana dan mudah dipelajari oleh pengguna (user).

3. Dokumentasi

Sistem yang akan dibangun dapat menyimpan citra digital hasil dari proses filter.


(41)

4. Kontrol

Sistem yang akan dibangun harus memiliki pesan error jika pengguna tidak lengkap memasukkan nilai inputan atau inputan yang dimasukkan salah.

5. Hemat Biaya

Sistem yang akan dibangun tidak memerlukan perangkat tambahan dalam proses eksekusinya.

3.1.3. Analisis Proses

Dalam sistem ini ada dua cara restorasi citra yaitu Harmonic mean filter dan Contraharmonic mean filter untuk mereduksi noise pada citra digital. Dimana menggunakan citra RGB berformat BMP yang akan di ubah kedalam citra grayscale . Kemudian citra tersebut akan diberikan Salt and pepper noise dan speckle noise dengan memberikan nilai inputan yang sudah dibatasi (1%-40 %).

Kemudian citra yang telah diberikan noise akan melakukan proses restorasi dengan dua cara yaitu Harmonic mean filter dan Contraharmonic mean filter. Selanjutnya dilakukan perhitungan MSE, PSNR, RMSE dan running time pada masing-masing langkah.

3.2. Pemodelan

Pada penelitian mengenai perbandingan algoritma Harmonic mean filter dan Contraharmonic mean filter ini digunakan UML sebagai bahasa pemodelan yang berfungsi untuk membantu merancang sistem. Model UML yang digunakan dalam penelitian ini yaitu use case diagram, sequence diagram, dan activity digaram.

3.2.1. Use Case Diagram

Use case diagram adalah gambaran graphical dari beberapa atau semua actor, use case, dan interaksi diantara komponen-komponen tersebut yang memperkenalkan suatu system yang akan dibangun. Use case diagram menjelaskan manfaat suatu system jika dilihat menurut pandangan orang yang berada di luar sistem. Diagram ini


(42)

menunjukkan fungsionalitas suatu system atau kelas dan bagaimana system tersebut berinteraksi dengan dunia luar.

Gambar 3.2 Use Case Diagram Sistem Perbandingan Metode Harmonic Mean Filter dan Contraharmonic Mean Filter untuk Memperbaiki Kualitas Citra Pada sistem perbandingan algoritma sistem perbandingan Harmonic Mean Filter dan Contraharmonic Mean Filter ini terdapat actor yang memiliki pilihan untuk :

a. Memilih Help adalah menu bantuan dari sistem.

b. Memilih Filter , kemudian pilih Harmonic Mean Filter atau Contraharmonic Mean Filter yang dilajutkan dengan proses restorasi citra.

c. Menu Awal.

Berikut ini merupakan tabel dokumen naratif dari use casefilter yang dapat dilihat pada tabel 3.1


(43)

Tabel 3.1 Dokumentasi Naratif Use Case Filter

Nama Use case Filter

Actor Pengguna

Description Use case ini memilih jenis filteryang akan digunakan dari

system ini

Pre-Condition Aplikasi siap untuk menerima inputan.

Typical course of

event

Kegiatan pengguna Respon sistem 1. Menekan button filter

dan pilih jenis filter

yang telah tersedia

2. Menampilkan isi dari pilihan yang telah dipilih

Alternatecourse Aksi Aktor Respon sistem Post condition Sistem telah melakukan proses Pemilihan jenis filter.

Tabel 3.2 Dokumentasi NaratifProses Harmonic Mean Filter

Nama Use case Harmonic Mean Filter

Actor Pengguna

Description

Use case mendeskripsikan jalannya proses restorasi pada citra

dimulai dari pengubahan citra ke citra grayscale dan penambahan noise

Pre-Condition Aplikasi siap untuk menerima inputan.

Typical course of

event

Kegiatan pengguna Respon sistem 1. Pengguna memilih citra

yang akan digunakan pada percobaan (*.bmp) dengan menekan button

Browse .

2. Sistem akan merespon dengan masuk ke direktori penyimpanan citra

3. Menampilkan citra yang telah dipilih oleh pengguna 4. Pengguna mengubah

citra awal menjadi citra

grayscale.

6. Selanjutnya

menambahkan noise pada citra grayscale

dengan menginput ukuran noise (dalam range 1%-40%)

kemudian memilih noise dengan menekan jenis noise yang diinginkan.

5. Sistem akan melakukan proses grayscale dan menampilkan hasilnya. 7. Sistem akan menampilkan

hasil noising pada citra


(44)

8. Menekan button MSE, RMSE,PSNR dan Running Time untuk mengetahui error. 10.Memilih kernel yang

telah tersedia di popupmenu dan menekan tombol push

untuk melakukan restorasi citra.

9. Menampilkan nilai MSE, RMSE, PSNR dan Running time.

11. Menampilkan hasil Restorasi

12. Menekan button MSE,RMSE, PSNR dan running time untuk mengetahui error.

13. Menampilkan nilai MSE, PSNR dan Running time.

Alternatecourse Aksi Aktor Respon sistem Post condition Sistem telah melakukan proses Harmonic Mean Filter yang

menghasilkan citra.

Tabel 3.3 Dokumentasi Naratif Use CaseContraharmonic Mean Filter

Nama Use case Contraharmonic Mean Filter

Actor Pengguna

Description Use case mendeskripsikan jalannya proses restorasi pada citra

dimulai dari pengubahan citra ke citra grayscale dan penambahan noise

Pre-Condition Aplikasi siap untuk menerima inputan.

Typical course of

event

Kegiatan pengguna Respon sistem

1. Pengguna memilih citra yang akan digunakan pada percobaan (*.bmp) dengan menekan button

Browse .

2. Sistem akan merespon dengan masuk ke direktori penyimpanan citra

3. Menampilkan citra yang telah dipilih oleh pengguna

4. Pengguna mengubah citra awal menjadi citra

grayscale.

6. Selanjutnya

menambahkan noise pada citra grayscale dengan menginput ukuran noise (dalam range 1%-40%) kemudian memilih noise dengan menekan jenis noise yang diinginkan.

5. Sistem akan melakukan proses grayscale dan menampilkan hasilnya. 7. Sistem akan menampilkan

hasil noising pada citra


(45)

8. Menekan button MSE, RMSE,PSNR dan Running Time untuk mengetahui error.

10.Masukkan nilai Q pada

textbox yang telah

tersedia dengan nilai -1 ≤ Q ≤ 1, kemudian pilih kernel yang akan dilakukan untuk pemerosesan restorasi dan tekan tombol push

untuk diproses.

9 . Menampilkan nilai MSE, RMSE, PSNR dan Running time.

11. Menampilkan hasil Restorasi.

12. Menekan button MSE, RMSE,PSNR dan running time untuk mengetahui error.

13. Menampilkan nilai MSE, RMSE, PSNR dan Running time.

Alternatecourse Aksi Aktor Respon sistem Post condition Sistem telah melakukan proses Contraharmonic Mean Filter

yang menghasilkan citra.

Tabel 3.4 Dokumentasi Naratif Use Case HELP

Nama Use case HELP

Actor Pengguna

Description Use case ini menjelaskan cara penggunaan dari system ini.

Pre-Condition Aplikasi siap untuk menerima inputan.

Typical course of

event

Kegiatan pengguna Respon sistem 1. Menekan menu

HELP

2. Menampilkan isi dari HELP tersebut.

Alternatecourse Aksi Aktor Respon sistem Post condition Sistem telah melakukan proses pemilihan menu HELP

3.2.2. Sequence Diagram

Sequence diagram adalah suatu diagram yang memperlihatkan atau menampilkan interaksi-interaksi antar objek di dalam sistem yang disusun pada sebuah urutan atau rangkain waktu. Sequence diagram digunakan untuk menggambarkan scenario atau rangkaian langkah-langkah yang dilakukan sebagai sebuah respon dari suatu kejadian/even untuk menghasilkan output apa yang dhasilkan.


(46)

Gambar 3.3 Sequence Diagram Proses Restorasi Citra 3.2.3. Activity Diagram

Activity Diagram menggambarkan berbagai alir aktivitas dalam system yang sedang dirancang, bagaimana masing-masing alir berawal, decision yang mungkin tejadi, dan bagaimana mereka berakhir. Activity diagram juga dapat menggambarkan proses paralel yang mungkin terjadi pada beberapa eksekusi. Berikut ini merupakan activity diagram pada sistem yang akan dirancang.


(47)

(48)

(49)

3.3. Pseudocode Program

Pseudocode adalah deskripsi dari algoritma pemrograman komputer yang menggunakan struktur sederhana dari beberapa bahasa pemograman tetapi bahasa tersebut hanya ditujukan agar dapat dibaca manusia.Tujuan penggunaan utama dari pseudocode adalah untuk memudahkan manusia dalam memahami prinsip-prinsip dari suatu algoritma.

3.3.1 Pseudocode Harmonic Mean Filter

No Pseudocode

1. ambil get( handles.popupmenu1,'Value')

2. data getimage(handles.axes3);

3. data im2double(data);

4. Masksize ambil;

5. [baris kolom] size(data);

6. si 1;

%% Main Module for Harmonic Mean Filter

for i 1:baris;

for j 1:kolom;

pixln 0; pixld 0;

for m -masksize:masksize;

for n -masksize:masksize;

if (i+m>0 && i+m<baris && j+n>0 && j+n<kolom && ...

% To keep indices in limit

masksize+m >0 && masksize+m<baris && ...

masksize+n >0 && masksize+n<kolom)

pixln pixln+1;

if (data(i+m,j+n)) == 0;

pixld pixld+0;

else

pixld pixld+1/(data(i+m,j+n));

end

end

end

end

reformedimage(i,j) (pixln/pixld);

end


(50)

Keterangan :

1. Ambil nilai kernel pada menu popupmenu1 sebagai nilai masksize. 2. Membaca inputan matriks citra dari axes3.

3. Membaca matriks dengan kernel yang telah ditentukan kemudian melakukan perhitungan Harmonic Mean Filter .

3.3.2 Pseudocode Contraharmonic Mean Filter

No Pseudocode

1. ambil get( handles.popupmenu1,'Value')

2. Q str2double(get(handles.edit2,'string'));

3. data getimage(handles.axes3);

4. data im2double(data);

5. Masksize ambil;

6. temp1 0;

temp2 0;

[baris kolom] size(data);

%% Main Module for Contra Harmonic Mean Filter

for i 1:baris;

for j 1:kolom;

for m -masksize:masksize;

for n -masksize:masksize;

if (i+m>0 && i+m<baris && j+n>0 && j+n<kolom && ...

% To keep indices in limit

masksize+m>0 && masksize+m<baris && ...

masksize+n>0 && masksize+n<kolom)

hasil1 (data(i+m,j+n)).^(Q+1); %Application

of Formula

hasil2 (data(i+m,j+n)).^Q;

temp1 temp1+hasil1; % Application of conmation

temp2 temp2+hasil2;

end

end

end

reformedimage(i,j) (temp1/temp2); temp1 0;

temp2 0;

end


(51)

Keterangan :

1. Ambil nilai kernel pada menu popupmenu1 sebagai nilai masksize. 2. Q merupakan nilai inputan yang dinput.

3. Membaca inputan matriks citra dari axes3.

4. Membaca matriks dengan kernel yang telah ditentukan kemudian melakukan perhitungan Contraharmonic Mean Filter .

3.3.3 Pseudocode menghitung Nilai MSE,RMSE dan PSNR No Pseudocode

1. mse (double(gbrUji) - double(CitraHasil)) .^ 2;

2. [b k] size(CitraHasil);

3. mseVal sum(mse(:)) / (b * k);

4. rmseVal sqrt(sum(mse(:)) / (b * k));

5. psnrVal 20 * log10( 255 / (rmseVal));

Keterangan :

1. Deklarasi rumus MSE.

2. Deklarasi ukuran matriks citra hasil, yang mana b adalah baris dan k adalah kolom.

3. Hitung nilai MSE. 4. Hitung nilai RMSE. 5. Hitung nilai PSNR.

3.4. Perancangan Sistem 3.4.1. Flowchart Sistem

Flowchart merupakan bagan yang menampilkan urutan proses dari suatu sistem. Flowchart memiliki fungsi untuk memudahkan proses pengecekan terhadap sistem


(52)

yang ingin dibuat apabila ada yang terlupakan dalam analisis masalah. Berikut merupakan flowchart awal dari sistem secara umum yang nantinya akan dibangun yang dapat dilihat pada gambar 3.6.


(53)

Sub Flowchart Harmonic Mean Filter :


(54)

Sub Flowchart Contraharmonic Mean Filter :


(55)

3.4.2. Perancangan Antarmuka (Interface)

Sistem perbandingan algoritma restorasi citra ini dirancang dengan menggunakan bahasa pemrograman MATLAB 2010a. Perancangan antarmuka atau interface ini bertujuan untuk memudahkan interaksi antara manusia dengan komputer sehingga manusia dapat menggunakan sistem dengan baik dan mudah untuk digunakan.

3.4.2.1 Form Awal

Dibawah ini merupakan form Awal dalam sistem ini, dan memiliki menu bar ,yaitu Help, Filter dan Menu Awal. Dimana untuk menu Filter ada dua jenis Filtering yaitu Harmonic Mean Filter dan Contraharmonic Mean Filter. Dapat dilihat pada Gambar 3.9 dibawah ini :

Gambar 3.9 Form Awal Keterangan :

1. Menu Bar yang memiliki tiga menu yaitu menu Help, Menu Filter dan Menu Awal.

2. Judul Percobaan . 3. LOGO Fasilkom-Ti. 4. Nama dan Nim Penulis.


(56)

3.4.2.2 Form Menu Harmonic Mean Filter

Gambar 3.10 Form Menu Harmonic Mean Filter

Keterangan : 1. Browse

Berfungsi untuk mencari citra yang akan diinput dalam format .bmp. 2. Nama File dan Ukuran

Merupakan data informasi citra inputan tersebut 3. Axes1

Merupakan tempat untuk menampilkan citra yang akan direstorasi. 4. GrayScale

Merupakan tombol untuk mengubah Citra awal menjadi Citra grayscale. 5. Axes5

Merupakan tempat untuk menampilkan citra yang telah diubah ke citra grayscale.

6. Value

Merupakan Inputan Nilai noise yang mana telah dibatasi dengan nilai 1% ≤ noise≤40% .

7. Noise

Merupakan dua button noise¸yang mana button pertama adalah salt & pepper noise dan button kedua adalah speckle noise.


(57)

8. Axes 3

Merupakan tempat untuk menampilkan citra yang telah diberi noise. 9. Before Calculation(Perhitungan Sebelum)

Memiliki empat buah button untuk Menampilkan hasil perhitungan MSE,RMSE, PSNR dan Running Time.

10.Button Save

Merupakan button untuk menyimpan hasil dari citra yang telah terkena noise. 11.Kernel

Merupakan popupmenu1 untuk memasukkan nilai inputan kernel yang ingin di hitung.

12.Button Push

Merupakan button untuk melakukan proses perhitungan Harmonic Mean Filter.

13.Axes 4

Merupakan tempat untuk menampilkan citra yang telah dilakukan filtering. 14.After Calculation(Perhitungan Sesudah)

Memiliki empat buah button untuk Menampilkan hasil perhitungan MSE,RMSE, PSNR dan Running Time.

15.Button Save

Merupakan button untuk menyimpan hasil dari citra yang telah melakukan filtering.

16. Button Reset all


(58)

3.4.2.3 Form Menu Contraharmonic Mean Filter

Gambar 3.11 Form Menu Contraharmonic Mean Filter Keterangan :

1. Browse

Berfungsi untuk mencari citra yang akan diinput dalam format .bmp. 2. Nama File dan Ukuran

Merupakan data informasi citra inputan tersebut 3. Axes1

Merupakan tempat untuk menampilkan citra yang akan direstorasi. 4. Button GrayScale

Merupakan tombol untuk mengubah Citra awal menjadi Citra grayscale. 5. Axes5

Merupakan tempat untuk menampilkan citra yang telah diubah ke citra grayscale. 6. Value

Merupakan Inputan Nilai noise yang mana telah dibatasi dengan nilai 1% ≤noise


(59)

7. Noise

Merupakan dua button noise¸yang mana button pertama adalah salt & pepper noise dan button kedua adalah speckle noise.

8. Axes 3

Merupakan tempat untuk menampilkan citra yang telah diberi noise. 9. Before Calculation(Perhitungan Sebelum)

Memiliki empat buah button untuk Menampilkan hasil perhitungan MSE,RMSE, PSNR dan Running Time.

10.Button Save

Merupakan button untuk menyimpan hasil dari citra yang telah terkena noise. 11.Input Q

Merupakan nilai Inputan Q yang mana memeliki Batasan Q antara -1 ≤ Q ≤ 1 untuk melakukan perhitungan dan pemrosesan ContraHarmonic Mean Filter. 12.Kernel

Merupakan popupmenu1 untuk memasukkan nilai inputan kernel yang ingin di hitung.

13.Button Push

Merupakan button untuk melakukan proses perhitungan ContraHarmonic Mean Filter.

14. Axes 4

Merupakan tempat untuk menampilkan citra yang telah dilakukan filtering. 15. After Calculation(Perhitungan Sesudah)

Memiliki empat buah button untuk Menampilkan hasil perhitungan MSE,RMSE, PSNR dan Running Time.


(60)

16. Button Save

Merupakan button untuk menyimpan hasil dari citra yang telah melakukan filtering.

17. Button Reset all


(61)

BAB 4

IMPLEMENTASI DAN PENGUJIAN SISTEM

4.1 Implementasi Sistem

Setelah melakukan proses analisis dan perancangan sistem, proses selanjutnya dalam penerapan pembuatan aplikasi adalah proses implementasi dan pengujian sistem. Implementasi merupakan tahap di mana sistem melakukan fungsionalitas utamanya setelah suatu program atau perangkat lunak selesai dirancang. Sedangkan tahap pengujian merupakan tahap yang dilakukan setelah proses pengimplementasikan selesai dilakukan dan sampai proses uji coba sesuai dengan kriteria-kriteria yang diinginkan pengguna pada tahap perancangan sistem. Pada system ini terdapat 4 form yaitu form Menu Awal, form Harmonic Mean Filter, form ContraHarmonic Mean Filter, dan form Help.

4.1.1Form MenuAwal

Form Awal merupakan form yang pertama kali ditampilkan pada saat aplikasi dijalakan.Form ini berisi informasi mengenai judul skripsi, dan penulis. Berikut pada gambar 4.1 ditampilkan Form Menu Awal pada sistem ini :


(62)

Gambar 4.1 Form Awal 4.1.2Form Harmonic Mean Filter

Form Harmonic Mean Filter ini merupakan tampilan untuk melakukannya proses restorasi menggunakan Harmonic Mean Filter. Dimana citra yang dimasukkan akan dilakukan proses perubahan menjadi citra grayscale. Kemudian ditambahkan lagi noise sesuai yang diinginkan dan sesuai range yang telah ditentukan yaitu 1% - 40 %. Pilih kernel yang diinginkan . Kemudian tekan tombol push untuk proses restorasi menggunakan Harmonic Mean Filter tersebut. Berikut merupakan tampilan Form Harmonic Mean Filter dapat dilihat pada gambar 4.2 dan simulasinya pada gambar 4.3.


(63)

 

Gambar 4.3 Form Simulasi Harmonic Mean Filter

4.1.3Form Contra Harmonic Mean Filter

Form Contra Harmonic Mean Filter ini merupakan tampilan untuk melakukannya proses restorasi menggunakan Contra Harmonic Mean Filter. Dimana citra yang dimasukkan akan dilakukan proses perubahan menjadi citra grayscale. Kemudian ditambahkan lagi noise sesuai yang diinginkan dan sesuai range yang telah ditentukan yaitu 1% - 40 %.

Kemudian sebelum dilakukan proses restorasi , input nilai Q sesuai range yang telah di berikan -1 ≤ Q ≤ 1 dan pilih kernel yang diinginkan . Kemudian tekan tombol push untuk proses restorasi menggunakan ContraHarmonic Mean Filter tersebut.

Berikut merupakan tampilan Form ContraHarmonic Mean Filter dapat dilihat pada gambar 4.4 dan simulasinya pada gambar 4.5.


(64)

 

Gambar 4.5 Form Simulasi Contra Harmonic Mean Filter

4.1.4Form Help

Form Help merupakan form yang berisi tentang penjelasan dari system ini. Ini juga dapat membantu pengguna dalam menjalankan system ini. Form bantuan dapat dilihat pada gambar 4.6.


(65)

  4.2 Pengujian

Pengujian sistem akan dilakukan untuk mengetahui sampai sejauh mana perbandingan kedua metode tersebut dapat dilakukan restorasi citra . Pengujian akan dilakukan pada citra digital yang berformat BMP. Citra digital yang akan diuji dengan aplikasi ini yaitu 256x256 pixel. Citra digital tersebut merupakan citra RGB. Oleh sistem nantinya akan diubah ke dalam grayscale. Citra digital yang telah ter-filter akan disimpan ke dalam format *.bmp . untuk pemrosesan menggunakan dua buah kernel, yaitu 3x3 dan5x5 pada metode Harmonic Mean Filter sedangkan metode Contra-Harmonic Mean Filter menggunakan kernel 3x3.

4.2.1Pengujian Harmonic Mean Filter

Pada pengujian Harmonic Mean Filter, hal pertama yang dilakukan setelah memilih citra yaitu mengubah citra berwarna(RGB) menjadi citra grayscale. Kemudian memberikan noise dengan batasan noise yang dapat dipilih 1%-40 %. Jenis noise yang dipilih ada dua yaitu Salt and Pepper noise dan Speckle noise. Setelah itu pilih juga kernel untuk pemerosesan citra.

Adapun gambaran sistem ini dapat dilihat pada gambar 4.7 berikut ini:


(66)

 

Pada pengujian sistem ini akan melakukan beberapa pengujian , diantara lain : Pengujian Ukuran Citra terhadap jenis noise serta persentasi noise.dan kernel yang digunakan.

4.2.1.1 Pengujian salt & pepper noise terhadap ukuran citra dan masing-masing kernel pada Harmonic Mean Filter.

Dibawah ini merupakan table gambar pengujian yang mana menggunakan kernel 3x3 dengan persentasi noise 1%, 10% , 20 % ,30% dan 40% dan ukuran gambar 256x256 piksel.

Tabel 4.1 Ukuran Citra 256x256 piksel , kernel 3x3 terhadap persentasi noise Persentasi

Noise

Proses Generate noise

(Citra Terkena Noise)

Proses Filtering

(Citra Hasil) 1 %

MSE : 230.894 RMSE : 15.1952 PSNR : 24.4967 dB Running time : 0.078 s

MSE : 27325.3 RMSE : 165.304 PSNR : 3.76516 dB Running time : 0.312 s


(67)

  10%

MSE : 2138.23 RMSE : 46.241 PSNR : 14.8303 dB Running time : 0.093 s

MSE : 27313.3 RMSE : 165.267 PSNR : 3.76707 dB Running time : 0.37 s 20 %

MSE : 4386.3 RMSE : 66.2291 PSNR : 11.7098 dB Running time : 0.078 s

MSE : 27297 RMSE : 165.218 PSNR : 3.76966 dB Running time : 0.3276 s


(68)

   

Sebuah citra asli diubah menjadi citra grayscale kemudian di generate probalitas noise sebesar 1%-40% .Sebagaimana terlihat pada tabel 4.1. noise yang tergenerate 1 % memiliki nilai MSE sebesar 230.894 ,RMSE sebesar 15.1952 dan PSNR sebesar 24.4967 dB , citra yang terkena generate noise 1% melakukan proses filtering

30 %

MSE : 6633.61 RMSE : 81.447 PSNR : 9.91331dB Running time : 0.078 s

MSE : 27278.3 RMSE : 165.161 PSNR : 3.77263 dB Running time : 0.343 s 40 %

MSE : 8950.25 RMSE : 94.6058 PSNR : 8.61254 dB Running time : 0.062 s

MSE : 27254.8 RMSE : 165.09 PSNR : 3.77638 dB Running time : 0.358 s


(69)

 

kemudian memiliki nilai MSE sebesar 27325.3 ,RMSE sebesar 165.304 dan PSNR sebesar 3.76516 dB. noise yang tergenerate 10 % memiliki nilai MSE sebesar 2138.23,RMSE sebesar 46.241 dan PSNR sebesar 14.8303 dB , citra yang terkena generate noise 10% melakukan proses filtering kemudian memiliki nilai MSE sebesar 27313.3,RMSE sebesar 165.267 dan PSNR sebesar 3.76707 dB. noise yang tergenerate 20 % memiliki nilai MSE sebesar 4386.3 ,RMSE sebesar 66.2291 dan PSNR sebesar 11.7098 dB , citra yang terkena generate noise 20% melakukan proses filtering kemudian memiliki nilai MSE sebesar 27297, RMSE sebesar 168.218 dan PSNR sebesar 3.76966 dB. noise yang tergenerate 30 % memiliki nilai MSE sebesar 6633.61, RMSE sebesar 81.447 dan PSNR sebesar 9.9133 dB , citra yang terkena generate noise 30% melakukan proses filtering kemudian memiliki nilai MSE sebesar 27278.3, RMSE sebesar 165.161 dan PSNR sebesar 3.77263 dB. noise yang tergenerate 40 % memiliki nilai MSE sebesar 8950.25, RMSE sebesar 94.6058 dan PSNR sebesar 8.61524 dB , citra yang terkena generate noise 40% melakukan proses filtering kemudian memiliki nilai MSE sebesar 27254.8, RMSE sebesar 165.09 dan PSNR sebesar 3.77638 dB.

Untuk melihat secara matematis perbandingan nilai MSE ,RMSE, PSNR dan Running Time Sebelum dilakukan filtering dan Sesudah dilakukan filtering dengan menggunakan kernel 3x3 dan 5x5 dan mengenerate noise sebesar 1%-40% dengan ukuran 256x256 piksel. Dapat dilihat gambar 4.8 grafik sebelum dilakukan filtering dengan salt & Pepper noise.


(1)

  A=getimage(handles.axes2);

B=B/100;

%p3=0.05 %default b = A;

x = rand(size(b)); d = find(x < B/2);

b(d) = 255; % Minimum value d = find(x >= B/2 & x < B);

b(d) = 0; % Maximum (saturated) value % b=imnoise(noise,'salt & pepper',A); % b=imnoise(noise,'gaussian',A); axes(handles.axes3);

imshow(b);

runtimenoise=cputime-runtimenoise;

else

warndlg('Maaf Nilai melampaui batas 1 % - 40 %','!! Peringatan !!')

end

citraAsli=getimage(handles.axes2); CitraHasil = getimage(handles.axes3);

[psnrVal mseVal rmseVal] = MSE_PSNR_RMSE(citraAsli,CitraHasil); set(handles.text2,'String',mseVal);

set(handles.text3,'String',rmseVal); set(handles.text4,'String',psnrVal);

global runtimenoise;

set(handles.text5,'String',runtimenoise);

4.

Tombol

Speckle Noise

function pushbutton18_Callback(hObject, eventdata, handles) % hObject handle to pushbutton18 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA)

global runtimenoise; runtimenoise=cputime;

B=str2num(get(handles.edit5,'String'));

if (B >= 1 && B <= 40) A=getimage(handles.axes2); B=B/100;

J = im2double(A);

b = J + sqrt(12*B)*J.*(rand(size(J))-.5); axes(handles.axes3);

imshow(b);

runtimenoise=cputime-runtimenoise;

else

warndlg('Maaf Nilai melampaui batas 1 % - 40 %','!! Peringatan !!')

end


(2)

  CitraHasil = getimage(handles.axes3);

[psnrVal mseVal rmseVal] = MSE_PSNR_RMSE(citraAsli,CitraHasil); set(handles.text2,'String',mseVal);

set(handles.text3,'String',rmseVal); set(handles.text4,'String',psnrVal);

global runtimenoise;

set(handles.text5,'String',runtimenoise);

end

5.

Tombol Save

function pushbutton25_Callback(hObject, eventdata, handles) % hObject handle to pushbutton25 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) [nama_file_simpan, path_simpan]=uiputfile(...

{'*.bmp','file citra (*.bmp)'; '*.bmp','citra bmp(*.bmp)';...

'*.*','Semua File(*.*)'},...

'Menyimpan Citra Hasil'); G=getimage(handles.axes3);

imwrite(G,fullfile(path_simpan,nama_file_simpan),'BMP');

6.

Tombol

Harmonic Mean Filter

% --- Executes on button press in pushbutton16.

function pushbutton16_Callback(hObject, eventdata, handles) % hObject handle to pushbutton16 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) ambil = get( handles.popupmenu1,'Value')

% ambil = get(hObject,'Value')

global runtimefilter;

runtimefilter=cputime;

data=getimage(handles.axes3); data=im2double(data);

switch ambil

case 1

warndlg('Maaf Anda Salah Pilih !')

case 2

masksize = 3;

case 3

masksize = 5;

case 4

masksize = 7;

case 5

masksize = 9;

end

[baris kolom]=size(data); si=1;


(3)

 

for i=1:baris; for j=1:kolom; pixln=0; pixld=0;

for m=-masksize:masksize; for n=-masksize:masksize;

if (i+m>0 && i+m<baris && j+n>0 && j+n<kolom &&

... % To keep indices in limit

masksize+m>0 && masksize+m<baris && ...

masksize+n>0 && masksize+n<kolom)

pixln=pixln+1;

if (data(i+m,j+n))==0; pixld=pixld+0; else

pixld=pixld+1/(data(i+m,j+n)); end

end

end

end

reformedimage(i,j)=(pixln/pixld); end

end

axes(handles.axes4)

runtimefilter=cputime-runtimefilter; imshow(reformedimage)

citraAsli=getimage(handles.axes2); CitraHasil = getimage(handles.axes4);

[psnrVal mseVal rmseVal] = MSE_PSNR_RMSE(citraAsli,CitraHasil); set(handles.text6,'String',mseVal);

set(handles.text7,'String',rmseVal); set(handles.text8,'String',psnrVal);

global runtimefilter;

set(handles.text9,'String',runtimefilter);

7.

Tombol

Contra Harmonic Mean Filter

function pushbutton21_Callback(hObject, eventdata, handles) % hObject handle to pushbutton21 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) ambil = get( handles.popupmenu1,'Value')

global runtimefilter; runtimefilter=cputime;

switch ambil case 1

warndlg('Maaf Anda Salah Pilih !')

case 2

masksize = 3;

case 3

masksize = 5;

case 4


(4)

 

case 5

masksize = 9;

end

Q=str2double(get(handles.edit2,'string'));

if (Q >= -1 && Q <= 1)

data=getimage(handles.axes3); data=im2double(data);

% Filter takes double the size of mask % Order of the filter

temp1=0; temp2=0;

[ro col]=size(data);

%% Main Module for Contra Harmonic Mean Filter

for i=1:ro; for j=1:col;

for m=-masksize:masksize; for n=-masksize:masksize;

if (i+m>0 && i+m<ro && j+n>0 && j+n<col && ... % To keep indices in limit

masksize+m>0 && masksize+m<ro && ...

masksize+n>0 && masksize+n<col)

hasil1=(data(i+m,j+n)).^(Q+1); % Application of Formula

hasil2= (data(i+m,j+n)).^Q;

temp1=temp1+hasil1; % Application of conmation

temp2=temp2+hasil2;

end

end

end

reformedimage(i,j)=(temp1/temp2); temp1=0;

temp2=0; end

end

axes(handles.axes4);

runtimefilter=cputime-runtimefilter; imshow(reformedimage)

else

warndlg('Maaf Nilai melampaui batas Q','!! Peringatan !!')

end

citraAsli=getimage(handles.axes2); CitraHasil = getimage(handles.axes4);

[psnrVal mseVal rmseVal] = MSE_PSNR_RMSE(citraAsli,CitraHasil); set(handles.text6,'String',mseVal);

set(handles.text7,'String',rmseVal); set(handles.text8,'String',psnrVal);


(5)

 

global runtimefilter;

set(handles.text9,'String',runtimefilter);

8.

Tombol Reset All

function reset_Callback(hObject, eventdata, handles) % hObject handle to reset (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB

% handles structure with handles and user data (see GUIDATA) axes(handles.axes1);

plot(0);

set(handles.text21,'String',''); set(handles.text23,'String',''); set(handles.text26,'String',''); axes(handles.axes2);

plot(0);

set(handles.text2,'String',''); set(handles.text3,'String',''); set(handles.text4,'String',''); set(handles.text5,'String','');

axes(handles.axes3); plot(0);

set(handles.edit1,'string',''); axes(handles.axes4);

plot(0);

set(handles.edit2,'string',''); set(handles.text6,'String',''); set(handles.text7,'String',''); set(handles.text8,'string',''); set(handles.text9,'string','');

9. MSE,RMSE DAN PSNR

function [psnrVal mseVal rmseVal] = MSE_PSNR_RMSE(gbrUji,CitraHasil) % Menghitung Nilai MSE

mse = (double(gbrUji) - double(CitraHasil)) .^ 2; [b k] = size(CitraHasil);

mseVal = sum(mse(:)) / (b * k); %menghitung nilai RMSE

rmseVal = sqrt(sum(mse(:)) / (b * k));

% Menghitung Nilai PSNR

psnrVal = 20 * log10( 255 / (rmseVal));


(6)

   

CURRICULUM VITAE

Nama

: AMALIA CHAIRY

Alamat Sekarang : Perumahan Menteng Indah Blok D9 No: 15 Medan

Alamat Orang Tua : Perumahan Menteng Indah Blok D9 No: 15 Medan

Telp/ HP

: 085763193175

Email :

amalia.chairy09@gmail.com

Riwayat Pendidikan:

1998 – 2004 SEKOLAH DASAR(SD) SWASTA ERIA MEDAN

2004 – 2007 SEKOLAH MENENGAH PERTAMA(SMP)NEGERI 3 MEDAN

2007 – 2010 SMK TELKOM SHANDY PUTRA 1 MEDAN

Keahlian/kursus yang diikuti:

Keahlian Bahasa Pemrograman:

-

Berbasis Dekstop: Java, Matlab, SPSS

-

Database: MySQL

-

Design : Photoshop, Inkscape

Kursus : Pemrograman VB.Net , LIA

Sertifikat : CCNA

pada tahun 2009