Implementasi Dan Perbandingan Metode Geometric Mean Filter Dan Alpha-Trimmed Mean Filter Untuk Mereduksi Exponential Noise Pada Citra Digital

(1)

IMPLEMENTASI DAN PERBANDINGAN METODE GEOMETRIC

MEAN FILTER DAN ALPHA-TRIMMED MEAN FILTER

UNTUK MEREDUKSI EXPONENTIAL NOISE

PADA CITRA DIGITAL

SKRIPSI

AULIZA NANDA NASUTION

101401010

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014


(2)

IMPLEMENTASI DAN PERBANDINGAN METODE GEOMETRIC MEAN FILTER

DAN ALPHA-TRIMMED MEAN FILTER UNTUK MEREDUKSI

EXPONENTIAL NOISE PADA CITRA DIGITAL

SKRIPSI

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer

AULIZA NANDA NASUTION 101401010

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2014


(3)

PERSETUJUAN

Judul : IMPLEMENTASI DAN PERBANDINGAN METODE GEOMETRIC MEAN FILTER DAN ALPHA-

TRIMMED MEAN FILTER UNTUK MEREDUKSI EXPONENTIAL NOISE PADA CITRA DIGITAL

Kategori : SKRIPSI

Nama : AULIZA NANDA NASUTION Nomor Induk Mahasiswa : 101401010

Program Studi : SARJANA (S1) ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI UNIVERSITAS SUMATERA UTARA

Diluluskan di Medan, 15 Juli 2014 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

M. Andri Budiman, S.T., M.Comp.Sc, MEM Maya Silvi Lydia, B.Sc, M.Sc NIP. 197510082008011011 NIP. 197401272002121001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP. 196203171991031001


(4)

PERNYATAAN

IMPLEMENTASI DAN PERBANDINGAN METODE GEOMETRIC MEAN FILTER DAN ALPHA-TRIMMED MEAN FILTER UNTUK MEREDUKSI

EXPONENTIAL NOISE PADA CITRA DIGITAL

SKRIPSI

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

Medan, 15 Juli 2014

Auliza Nanda Nasution NIM. 101401010


(5)

PENGHARGAAN

Puji syukur kehadirat Allah SWT atas segala rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan skripsi ini dalam waktu yang telah ditentukan sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer, Program Studi S1 Ilmu Komputer Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara. Serta shalawat dan salam penulis hadiahkan kepada Nabi Besar Muhammad SAW.

Dengan selesainya tugas akhir ini, penulis mengucapkan terima kasih kepada :

1. Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S1 Ilmu Komputer.

2. Ibu Maya Silvi Lydia, B.Sc, M.Sc sebagai dosen pembimbing 1 dan Sekretaris Program Studi Ilmu Komputer, dan Bapak Mohammad Andri Budiman, S.T., M.Comp.Sc, MEM sebagai dosen pembimbing 2 yang telah meluangkan waktu, tenaga, dan pikiran serta dalam membimbing, memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.

3. Bapak Syahriol Sitorus, S.Si, MIT sebagai dosen penguji 1 dan Ibu Dian Rachmawati, S.Si, M.Kom sebagai dosen penguji 2 yang telah memberikan kritik serta saran yang membangun untuk penyelesaian skripsi ini.

4. Dekan, Pembantu Dekan Fakultas Ilmu Komputer dan Teknologi Informasi, dan staf pegawai di program studi S1 Ilmu Komputer USU.

5. Orangtua tercinta Ayahanda Syaiful Bahri Nasution dan Ibunda Satinah yang telah memberikan kasih sayang, doa, semangat serta dukungan moril dan materil.

6. Keluarga tercinta kakak Ifna Riski Nasution dan adik penulis Ahmad Syafriza Nasution, Elsa Fadillah Nasution, dan Ashilla Fitri Nasution serta keluarga besar penulis yang selalu membuat hari-hari begitu berarti.


(6)

7. Pahri Zuhri, Amd.Sos, yang selalu memberikan dukungan, motivasi, perhatian, dan doa kepada penulis.

8. Keluarga besar Bapak M.Hendrianto, Ibu Paini, Wiji Kharisma dan Abang-Kakak.

9. Teman-teman seperjuangan mahasiswa S1 Ilmu Komputer stambuk 2010 khususnya Ca8in Corps Fanny Fairina N, Zulwita Hariyati, Annissa Fadilla, Uswatun Hasanah, Nurul Ulfah Primadini, Devina Pratiwi Halim, Aulia Akbar Harahap, dan Bernard Tarigan.

10.Adik-adik junior stambuk 2011 Annisa Olivia dan Dini Islami, serta sahabat terbaik penulis Sitti Kardina, S.Si yang telah memberikan motivasi kepada penulis.

11.Seluruh pihak yang terlibat langsung maupun tidak langsung yang tidak dapat penulis ucapkan satu persatu yang telah membantu penulis dalam menyelesaikan skripsi ini.

Penulis menyadari bahwa masih banyak kekurangan maupun kesalahan dalam penulisan skripsi ini. Oleh karena itu penulis mengharapkan kritik dan saran yang bersifat membangun demi kesempurnaan skripsi ini. Akhir kata, semoga skripsi ini dapat bermanfaat bagi penulis dan pembaca, khususnya rekan-rekan mahasiswa/i lainnya yang mengikuti perkuliahan di Universitas Sumatera Utara. Terima Kasih.

Medan, 15 Juli 2014

Auliza Nanda Nasution NIM. 101401010


(7)

ABSTRAK

Pada citra digital sering kali terdapat beberapa gangguan yang dinamakan noise. Jenis noise seperti laser yang ada pada citra digital dinamakan exponential noise. Noise ini biasa terjadi akibat adanya efek pencahayaan yang tidak merata maupun kontras citra yang terlalu tinggi ataupun yang terlalu rendah. Dengan adanya noise dapat menyebabkan informasi yang ada pada citra menjadi berkurang dan sulit untuk diinterpretasikan. Filtering merupakan teknik untuk mereduksi noise. Metode yang akan digunakan untuk mereduksi noise yaitu geometric mean filter dan alpha-trimmed mean filter. Probabilitas noise yang diberikan yaitu 0.01 sampai 0.05 pada tiap kelompok citra. Hasil penelitian pada reduksi undefined noise ditambah exponential noise maupun pada reduksi hanya exponential noise menunjukkan nilai MSE lebih kecil dan nilai PSNR lebih besar selalu berada pada metode alpha-trimmed mean filter khusus untuk d = 0 dan d = 1. Namun untuk pengujian reduksi hanya exponential noise selalu memiliki nilai MSE lebih kecil dan nilai PSNR lebih besar daripada pengujian reduksi undefined noise ditambah exponential noise. Maka dapat disimpulkan bahwa metode alpha-trimmed mean filter untuk d = 0 dan d = 1 lebih baik untuk melakukan reduksi noise, dan pengujian untuk reduksi exponential noise lebih baik daripada pengujian untuk reduksi noise bebas ditambah exponential noise. Kata kunci : Geometric mean filter, Alpha-trimmed mean filter, Citra digital, Exponential noise, Mean Squared Error (MSE), Peak Signal-to-Noise Ratio (PSNR).


(8)

IMPLEMENTATION AND COMPARISON OF GEOMETRIC MEAN FILTER AND ALPHA-TRIMMED MEAN FILTER TO REDUCE

EXPONENTIAL NOISE IN DIGITAL IMAGES

ABSTRACT

On digital image there are often several disturbance that are called noise. This type of noise which is like a laser on the digital image is called exponential noise. This noise is common due to uneven lighting effects as well as the contrast of an image that is too high or too low. The presence of noise, can cause the information in the image being reduced and difficult to interpret. Filtering is a technique to reduce noise. The method to be used for the noise reduction are geometric mean filter and alpha-trimmed mean filter. The probability of a given noise i.e. 0.01 up to 0.05 for every image group. Research is results on the reduction of undefined noise and exponential noise as well as the reduction of exponential noise only show the value of MSE which is smaller and the value of PSNR is bigger always in the method alpha-trimmed mean filters exclusively for d = 0 and d = 1. However, reduction of exponential noise has smaller value of MSE and the value of PSNR is bigger than reduction of undefined noise and exponential noise. Hence it can be inferred that alpha-trimmed mean filters for d = 0 and d = 1 is better to do the reduction of noise, and reduction of exponential noise only is better than reduction undefined noise and exponential noise.

Keywords: Geometric mean filter, Alpha-trimmed mean filter, Digital image, Exponential noise, Mean Squared Error (MSE), Peak Signal-to-Noise Ratio (PSNR).


(9)

DAFTAR ISI

Hal.

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar Isi viii

Daftar Tabel xi

Daftar Gambar xiii

Daftar Lampiran xvi

BAB 1 PENDAHULUAN

1.1. Latar Belakang 1

1.2. Rumusan Masalah 3

1.3. Batasan Masalah 3

1.4. Tujuan Penelitian 4

1.5. Manfaat Penelitian 4

1.6. Metode Penelitian 4

1.7. Sistematika Penulisan 5

BAB 2 LANDASAN TEORI

2.1. Pengertian Citra Digital 6

2.2. Pengolahan Citra Digital 7

2.3. Jenis-jenis Citra Digital 7

2.3.1. Citra biner 8

2.3.2. Citra grayscale 8

2.3.3. Citra warna 8

2.4. Noise 8

2.4.1. Pengertian noise 8

2.4.2. Exponential noise 9

2.5. Restorasi Citra 10


(10)

2.5.2. Alpha-trimmed mean filter 12

2.6. Pengukuran Kinerja Restorasi Citra 13

2.6.1. Mean squared error (MSE) 13

2.6.2. Peak signal-to-noise ratio (PSNR) 14

2.7. Relevansi Penelitian 14

BAB 3 ANALISIS DAN PERANCANGAN

3.1. Analisis Sistem 16

3.1.1. Diagram Ishikawa 16

3.1.2. Analisis fungsional 17

3.1.2.1. Analisis masukan 17

3.1.2.2. Analisis keluaran 17

3.1.2.3. Proses membaca nilai piksel 18

3.1.2.4. Proses penambahan noise 18

3.1.2.5. Konvolusi matriks citra metode geometric mean filter 19 3.1.2.6. Konvolusi matriks citra metode alpha-trimmed mean 20

filter

3.1.2.7. Proses menghitung nilai MSE 21

3.1.2.8. Proses menghitung nilai PSNR 22

3.1.3. Analisis non fungsional 23

3.2.Perancangan Sistem 23

3.2.1.Unified Modeling Language (UML) 23

3.2.1.1. Use case diagram 24

3.2.1.2. Activity diagram 27

3.2.1.3. Sequence diagram 30

3.2.2.Pseudocode 33

3.2.3.Flowchart sistem 37

3.2.4.Perancangan antarmuka 40

3.2.4.1. Form menu utama 40

3.2.4.2. Form reduction undefined noise + exponential noise 41 3.2.4.3. Form reduction exponential noise 43

3.2.4.4. Form help 45


(11)

BAB 4 IMPLEMENTASI DAN PENGUJIAN

4.1. Implementasi Sistem 47

4.1.1. Spesifikasi perangkat keras 47

4.1.2. Spesifikasi perangkat lunak 47

4.2. Tampilan Antarmuka 48

4.2.1. Tampilan form menu utama 48

4.2.2. Tampilan form reduction undefined noise + exponential noise 48 4.2.3. Tampilan form reduction exponential noise 49

4.2.4. Tampilan form help 50

4.2.5. Tampilan form about 51

4.3. Pengujian Sistem 51

4.3.1.Pengujian black box 52

4.3.1.1. Rencana pengujian 52

4.3.1.2. Kasus dan hasil pengujian alpha 52

4.3.1.3. Kesimpulan hasil pengujian alpha 53

4.3.1.4. Kasus dan hasil pengujian betha 54 4.3.1.5. Kesimpulan hasil pengujian betha 54 4.3.2.Pengujian reduction undefined noise + exponential noise 52 4.3.3. Pengujian reduction exponential noise 61

4.4. Hasil Pengujian 63

4.4.1. Hasil pengujian reduction undefined noise + exponential 63 noise

4.4.2. Hasil pengujian reduction exponential noise 70 4.4.3. Perbandingan metode geometric mean filter dan alpha- 78

trimmed mean filter

BAB 5 KESIMPULAN DAN SARAN

5.1. Kesimpulan 89

5.2. Saran 91


(12)

DAFTAR TABEL

Hal.

3.1 Spesifikasi Use Case Reduction Undefined Noise + Exponential noise 25 3.2 Spesifikasi Use Case Reduction Exponential Noise 26

4.1 Rencana Pengujian 52

4.2 Pengujian Hasil Input Citra oleh User 52

4.3 Pengujian Hasil Citra dengan Noise 53 4.4 Pengujian Hasil Proses Filter 53 4.5 Hasil Kuisoner 54 4.6 Hasil Reduksi Noise pada Citra Berkontras Gelap dengan Metode 65 Geometric Mean Filter

4.7 Hasil Reduksi Noise pada Citra Berkontras Gelap dengan Metode Alpha- 66 Trimmed Mean Filter

4.8 Hasil Reduksi Noise pada Citra Berkontras Terang dengan Metode 67 Geometric Mean Filter

4.9 Hasil Reduksi Noise pada Citra Berkontras Terang dengan Metode Alpha- 68 Trimmed Mean Filter

4.10 Hasil Reduksi Noise pada Citra Beragam Warna dengan Metode 69 Geometric Mean Filter

4.11 Hasil Reduksi Noise pada Citra Beragam Warna dengan Metode Alpha- 70 Trimmed Mean Filter

4.12 Hasil Reduksi Noise pada Citra Berkontras Gelap dengan Metode 72 Geometric Mean Filter

4.13 Hasil Reduksi Noise pada Citra Berkontras Gelap dengan Metode Alpha- 73 Trimmed Mean Filter

4.14 Hasil Reduksi Noise pada Citra Berkontras Terang dengan Metode 74 Geometric Mean Filter

4.15 Hasil Reduksi Noise pada Citra Berkontras Terang dengan Metode Alpha- 75 Trimmed Mean Filter


(13)

4.16 Hasil Reduksi Noise pada Citra Beragam Warna dengan Metode 76 Geometric Mean Filter

4.17 Hasil Reduksi Noise pada Citra Beragam Warna dengan Metode Alpha- 77 Trimmed Mean Filter

4.18 Perbandingan MSE Metode GMF dan ATMF untuk Reduksi Undefined 79 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra

Berkontras Gelap

4.19 Perbandingan PSNR Metode GMF dan ATMF untuk Reduksi Undefined 79 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra

Berkontras Gelap

4.20 Perbandingan Runtime Metode GMF dan ATMF untuk Reduksi Undefined 80 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra

Berkontras Gelap

4.21 Perbandingan MSE Metode GMF dan ATMF untuk Reduksi Undefined 80 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra

Berkontras Terang

4.22 Perbandingan PSNR Metode GMF dan ATMF untuk Reduksi Undefined 81 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra

Berkontras Terang

4.23 Perbandingan Runtime Metode GMF dan ATMF untuk Reduksi Undefined 81 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra

Berkontras Terang

4.24 Perbandingan MSE Metode GMF dan ATMF untuk Reduksi Undefined 82 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra

Beragam Warna

4.25 Perbandingan PSNR Metode GMF dan ATMF untuk Reduksi Undefined 82 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra

Beragam Warna

4.26 Perbandingan Runtime Metode GMF dan ATMF untuk Reduksi Undefined 83 Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra


(14)

DAFTAR GAMBAR

Hal.

2.1 Posisi Letak Piksel 7

2.2 Blok Diagram Pengolahan Citra 7

2.3 Citra dengan Exponential Noise 9

2.4 Grafik Exponential Noise 10

2.5 Contoh Noise Eksponensial Negatif 10

2.6 Contoh Noise Filtering 11

2.7 Piksel Citra Awal 11

2.8 Piksel Citra Hasil 12

2.9 Piksel Awal 13

2.10 Hasil Filter dengan d = 1 13

3.1 Diagram Ishikawa Permasalahan 16

3.2 Representasi Piksel Pada Citra 18

3.3 Matriks Citra dengan Penambahan Noise 18

3.4 Matriks Citra Pada Blok 1 19

3.5 Matriks Citra Blok 1 Hasil Reduksi Metode Geometric Mean Filter 19

3.6 Matriks Blok Citra 1 Sebelum Digeser 19

3.7 Matriks Blok Citra 1 Setelah Digeser 20

3.8 Matriks Citra Pada Blok 1 20

3.9 Matriks Citra Blok 1 Hasil Reduksi Metode Alpha-Trimmed Mean Filter 21

3.10 Matriks Citra Sebelum Reduksi Noise 21

3.11 Matriks Citra Setelah Reduksi Noise 22

3.12 Use Case Diagram Sistem 24

3.13 Activity Diagram Reduction Undefined Noise + Exponential Noise 28 3.14 Activity Diagram Reduction Exponential Noise 29 3.15 Sequence Diagram Reduction Undefined Noise + Exponential Noise 31 3.16 Sequence Diagram Exponential Noise 32 3.17 Flowchart Metode Geometric Mean Filter 38 3.18 Flowchart Metode Alpha-Trimmed Mean Filter 39


(15)

3.19 Rancangan Form Menu Utama 40 3.20 Rancangan Form Reduction Undefined Noise + Exponential Noise 41 3.21 Rancangan Form Reduction Exponential Noise 43

3.22 Rancangan Form Help 45

3.23 Rancangan Form About 46

4.1 Tampilan Menu Utama 48

4.2 Tampilan Reduction Undefined Noise + Exponential Noise 49 4.3 Tampilan Reduction Exponential Noise 49

4.4 Tampilan Menu Help 50

4.5 Tampilan Menu About 51

4.6 Hasil Pemilihan Citra Bernoise 55

4.7 Hasil Generate Noise dengan Probabilitas 0.01 56 4.8 Peringatan Bila Probabilitas Belum Dipilih 56

4.9 Processing Bar Tombol Reduce Noise 56

4.10 Hasil Reduce Noise 57

4.11 Proses Menyimpan Citra Hasil Reduksi 57

4.12 Peringatan File Berhasil Disimpan 58

4.13 Help Dialog Apabila Nilai d Belum Dipilih 58 4.14 Hasil Reduksi Noise Metode Alpha-Trimmed Mean Filter d = 0 59 4.15 Hasil Reduksi Noise Metode Alpha-Trimmed Mean Filter d = 1 59 4.16 Hasil Reduksi Noise Metode Alpha-Trimmed Mean Filter d = 8 60

4.17 Dialog Box Kembali Ke Menu Utama 60

4.18 Hasil Reduksi Noise Metode Geometric Mean Filter 61 4.19 Hasil Reduksi Noise Metode Alpha-Trimmed Mean Filter d = 0 62 4.20 Hasil Reduksi Noise Metode Alpha-Trimmed Mean Filter d = 1 62 4.21 Hasil Reduksi Noise Metode Alpha-Trimmed Mean Filter d = 8 63 4.22 Grafik Perbandingan MSE Metode GMF dan ATMF untuk Reduksi 84 Undefined Noise + Exponential Noise dengan Reduksi Exponential

Noise pada Citra Berkontras Gelap

4.23 Grafik Perbandingan PSNR Metode GMF dan ATMF untuk Reduksi 84 Undefined Noise + Exponential Noise dengan Reduksi Exponential

Noise pada Citra Berkontras Gelap


(16)

Undefined Noise + Exponential Noise dengan Reduksi Exponential Noise pada Citra Berkontras Gelap

4.25 Grafik Perbandingan MSE Metode GMF dan ATMF untuk Reduksi 85 Undefined Noise + Exponential Noise dengan Reduksi Exponential

Noise pada Citra Berkontras Terang

4.26 Grafik Perbandingan PSNR Metode GMF dan ATMF untuk Reduksi 86 Undefined Noise + Exponential Noise dengan Reduksi Exponential

Noise pada Citra Berkontras Terang

4.27 Grafik Perbandingan Runtime Metode GMF dan ATMF untuk Reduksi 86 Undefined Noise + Exponential Noise dengan Reduksi Exponential

Noise pada Citra Berkontras Terang

4.28 Grafik Perbandingan MSE Metode GMF dan ATMF untuk Reduksi 87 Undefined Noise + Exponential Noise dengan Reduksi Exponential

Noise pada Citra Beragam Warna

4.29 Grafik Perbandingan PSNR Metode GMF dan ATMF untuk Reduksi 87 Undefined Noise + Exponential Noise dengan Reduksi Exponential

Noise pada Citra Beragam Warna

4.30 Grafik Perbandingan Runtime Metode GMF dan ATMF untuk Reduksi 88 Undefined Noise + Exponential Noise dengan Reduksi Exponential


(17)

DAFTAR LAMPIRAN

Hal.


(18)

ABSTRAK

Pada citra digital sering kali terdapat beberapa gangguan yang dinamakan noise. Jenis noise seperti laser yang ada pada citra digital dinamakan exponential noise. Noise ini biasa terjadi akibat adanya efek pencahayaan yang tidak merata maupun kontras citra yang terlalu tinggi ataupun yang terlalu rendah. Dengan adanya noise dapat menyebabkan informasi yang ada pada citra menjadi berkurang dan sulit untuk diinterpretasikan. Filtering merupakan teknik untuk mereduksi noise. Metode yang akan digunakan untuk mereduksi noise yaitu geometric mean filter dan alpha-trimmed mean filter. Probabilitas noise yang diberikan yaitu 0.01 sampai 0.05 pada tiap kelompok citra. Hasil penelitian pada reduksi undefined noise ditambah exponential noise maupun pada reduksi hanya exponential noise menunjukkan nilai MSE lebih kecil dan nilai PSNR lebih besar selalu berada pada metode alpha-trimmed mean filter khusus untuk d = 0 dan d = 1. Namun untuk pengujian reduksi hanya exponential noise selalu memiliki nilai MSE lebih kecil dan nilai PSNR lebih besar daripada pengujian reduksi undefined noise ditambah exponential noise. Maka dapat disimpulkan bahwa metode alpha-trimmed mean filter untuk d = 0 dan d = 1 lebih baik untuk melakukan reduksi noise, dan pengujian untuk reduksi exponential noise lebih baik daripada pengujian untuk reduksi noise bebas ditambah exponential noise. Kata kunci : Geometric mean filter, Alpha-trimmed mean filter, Citra digital, Exponential noise, Mean Squared Error (MSE), Peak Signal-to-Noise Ratio (PSNR).


(19)

IMPLEMENTATION AND COMPARISON OF GEOMETRIC MEAN FILTER AND ALPHA-TRIMMED MEAN FILTER TO REDUCE

EXPONENTIAL NOISE IN DIGITAL IMAGES

ABSTRACT

On digital image there are often several disturbance that are called noise. This type of noise which is like a laser on the digital image is called exponential noise. This noise is common due to uneven lighting effects as well as the contrast of an image that is too high or too low. The presence of noise, can cause the information in the image being reduced and difficult to interpret. Filtering is a technique to reduce noise. The method to be used for the noise reduction are geometric mean filter and alpha-trimmed mean filter. The probability of a given noise i.e. 0.01 up to 0.05 for every image group. Research is results on the reduction of undefined noise and exponential noise as well as the reduction of exponential noise only show the value of MSE which is smaller and the value of PSNR is bigger always in the method alpha-trimmed mean filters exclusively for d = 0 and d = 1. However, reduction of exponential noise has smaller value of MSE and the value of PSNR is bigger than reduction of undefined noise and exponential noise. Hence it can be inferred that alpha-trimmed mean filters for d = 0 and d = 1 is better to do the reduction of noise, and reduction of exponential noise only is better than reduction undefined noise and exponential noise.

Keywords: Geometric mean filter, Alpha-trimmed mean filter, Digital image, Exponential noise, Mean Squared Error (MSE), Peak Signal-to-Noise Ratio (PSNR).


(20)

BAB 1

PENDAHULUAN

1.1. Latar Belakang

Pada saat ini penggunaan sebuah citra sangat meningkat untuk digunakan pada berbagai kebutuhan. Hal ini dikarenakan banyak sekali kelebihan yang ada pada citra digital seperti dapat memberikan suatu informasi melalui gambar dan kemudahan dalam pengolahan data gambar. Namun terkadang sering kali terdapat beberapa gangguan yang mungkin bisa saja terjadi pada citra digital, seperti timbulnya bintik-bintik yang disebabkan oleh proses capture yang tidak sempurna, adanya pencahayaan yang tidak merata mengakibatkan intensitas tidak seragam, kontras citra terlalu rendah sehingga objek sulit untuk dipisahkan dari latar belakangnya, ataupun adanya gangguan yang disebabkan oleh kotoran-kotoran yang menempel pada citra, dan lain sebagainya. Setiap gangguan yang terdapat pada citra dinamakan noise [9].

Pada citra digital terdapat jenis noise seperti laser yang dinamakan exponential noise. Noise ini biasa terjadi akibat adanya efek pencahayaan yang tidak merata maupun kontras citra yang terlalu tinggi ataupun yang terlalu rendah. Dengan adanya noise seperti exponential noise ini, dapat menyebabkan informasi yang ada pada citra menjadi berkurang dan sulit untuk diinterpretasikan. Sehingga, citra yang mengandung noise memerlukan adanya langkah-langkah perbaikan agar dapat digunakan secara maksimal. Salah satu langkah perbaikan itu adalah dengan teknik filtering atau melakukan reduksi noise.

Jenis filtering atau reduksi noise terbagi menjadi domain spasial dan domain frekuensi. Teknik pemrosesan domain frekuensi merupakan teknik berdasarkan perubahan transformasi fourier pada citra. Sedangkan teknik pemrosesan domain spasial merupakan teknik berdasarkan manipulasi langsung dari piksel di dalam citra.


(21)

Pada penelitian ini akan dibahas reduksi noise domain spasial. Pada domain spasial, terdapat jenis linear filter dan nonlinear filter [9]. Untuk penelitian ini, akan dibahas mengenai nonlinear filter. Nonlinear filter terdapat jenis Mean Filter dan Order-Statistics Filters. Mean filter merupakan salah satu nonlinear filter yang berfungsi untuk memperhalus dan menghilangkan noise pada suatu citra yang bekerja dengan menggantikan intensitas nilai piksel dengan rata-rata dari nilai piksel tersebut dengan nilai piksel-piksel tetangganya [12]. Metode-metode Mean filter meliputi arithmetic mean filter, geometric mean filter, harmonic mean filter, dan contra-harmonic mean filter [9]. Pada penelitian ini akan dibahas mengenai geometric mean filter. Order-Statictics Filters merupakan filter spasial yang hasil responsnya berdasarkan pengurutan nilai piksel yang dilingkupi oleh filter [9]. Sedangkan metode-metode Orders-Statisics Filters meliputi median filter, maximum filter, minimum filter, midpoint filter, adaptive median filter, dan alpha-trimmed mean filter [3]. Pada penelitian ini akan dibahas mengenai alpha-trimmed mean filter.

Exponential noise yang akan dibahas pada penelitian ini adalah jenis noise truecolor yang terjadi karena karakteristik Fungsi Probabilitas Kepadatan (Probability Density Function atau PDF) yang ditambahkan pada citra untuk implementasi dan perbandingan metode geometric mean filter dan alpha-trimmed mean filter.

Berdasarkan skripsi Wiliyana bahwa metode geometric mean filter lebih baik untuk melakukan reduksi noise dibandingkan dengan metode arithmetic mean filter [12]. Penelitian oleh V.R.Vijaykumar et al, menyimpulkan bahwa metode yang baik dalam mereduksi noise adalah jenis nonlinear filter yaitu termasuk salah satunya metode alpha-trimmed mean filter [11]. Penelitian oleh R. Srinivas et al, menyimpulkan bahwa metode alpha-trimmed mean filter tidak termasuk jenis metode yang baik dan efisien di antara metode-metode yang diteliti untuk mereduksi noise dengan probabilitas 10%-60% [8].

Berdasarkan latar belakang di atas, maka penulis akan mencoba melakukan penelitian dengan judul “Implementasi dan Perbandingan Metode Geometric Mean Filter dan Alpha-Trimmed Mean Filter untuk Mereduksi Exponential Noise pada Citra Digital”.


(22)

1.2. Rumusan Masalah

Rumusan masalah dalam penelitian ini adalah:

1. Bagaimana hasil implementasi dan perbandingan hasil reduksi noise pada citra digital yang telah terdegradasi noise bebas kemudian ditambahkan exponential noise dengan menggunakan metode Geometric Mean Filter dan Alpha-Trimmed Mean Filter.

2. Bagaimana hasil implementasi dan perbandingan hasil reduksi noise pada citra digital yang tidak terdegradasi noise kemudian ditambahkan exponential noise dengan menggunakan metode Geometric Mean Filter dan Alpha-Trimmed Mean Filter.

3. Bagaimana perbandingan antara proses reduksi pada citra digital yang telah terdegradasi noise bebas kemudian ditambahkan exponential noise dengan citra digital yang tidak terdegradasi noise kemudian ditambahkan exponential noise.

1.3. Batasan Masalah

Dalam penelitian ini, dilakukan beberapa batasan sebagai berikut: 1. File citra yang direduksi noise-nya adalah berformat (*.bmp).

2. Tools atau bahasa pemrograman yang digunakan adalah Matlab R2012a.

3. Parameter untuk pengukuran kinerja metode filtering adalah Mean Squared Error (MSE), Peak Signal-to-Noise Ratio (PSNR) dan runtime.

4. Citra truecolor yang akan direduksi noise-nya adalah citra yang terdegradasi noise bebas ditambah exponential noise yang disebabkan oleh penambahan noise dengan probabilitas 1% - 5%. Dan citra yang tidak yang terdegradasi noise bebas namun ditambahkan exponential noise 1% - 5%. Citra yang terdegradasi noise bebas atau undefined noise adalah citra yang telah ditambah noise seperti salt and pepper noise, speckle noise, gaussian noise, uniform noise ataupun jenis noise lainnya dengan menggunakan sistem lain.

5. Citra yang akan direduksi terbagi menjadi 3 (tiga) kelompok yaitu citra berkontras gelap, citra berkontras terang, dan citra beragam warna.


(23)

1.4. Tujuan Penelitian

Penelitian ini bertujuan untuk:

1. Mengimplementasikan dan mengetahui perbandingan hasil reduksi noise pada citra yang telah terdegradasi noise bebas kemudian ditambahkan exponential noise menggunakan metode Geometric Mean Filter dan Alpha-Trimmed Mean Filter. 2. Mengimplementasikan dan mengetahui perbandingan hasil reduksi noise pada citra

yang tidak terdegradasi noise kemudian ditambahkan exponential noise menggunakan metode Geometric Mean Filter dan Alpha-Trimmed Mean Filter. 3. Mengetahui perbandingan antara proses reduksi pada citra digital yang telah

terdegradasi noise bebas kemudian ditambahkan exponential noise dengan citra digital yang tidak terdegradasi noise kemudian ditambahkan exponential noise.

1.5. Manfaat Penelitian

Manfaat penelitian ini adalah menghasilkan perangkat lunak untuk mereduksi exponential noise pada citra digital yang ditambahkan noise ini dan mereduksi noise yang telah ada pada citra.

1.6. Metode Penelitian

Metode penelitian yang dilakukan dalam penelitian ini adalah: 1. Studi Literatur

Pada tahap ini, penulisan skripsi diawali dengan pembelajaran terhadap buku-buku, artikel-artikel, paper, e-book, situs internet, maupun hasil penelitian yang membahas tentang pengolahan citra digital terkait dengan geometric mean filter, alpha-trimmed mean filter, exponential noise, MSE, PSNR.

2. Analisis dan Perancangan

Pada tahap ini dilakukan analisis masalah dan kebutuhan yang diperlukan untuk menyelesaikan tugas akhir ini berdasarkan rumusan dan batasan masalah yang ada, disertai perancangan flowchart, antar muka dan perancangan sistem.

3. Implementasi


(24)

4. Pengujian

Pada tahap ini dilakukan pengujian terhadap sistem berdasarkan hasil analisis data dan perancangan sistem.

5. Dokumentasi

Pada tahap ini dilakukan penyusunan laporan berdasarkan hasil analisis dan perancangan sistem dengan format penyusunan laporan untuk mendukung skripsi ini.

1.7. Sistematika Penulisan

Bab 1 : PENDAHULUAN

Bab ini berisi pembahasan masalah umum yang meliputi latar belakang pemilihan judul, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.

Bab 2 : LANDASAN TEORI

Bab ini membahas tentang landasan teori citra digital, pengolahan citra digital, jenis-jenis citra, noise, exponential noise, metode Geometric Mean Filter, metode Alpha-Trimmed Mean Filter, Mean Squared Error (MSE), dan Peak Signal-to-Noise Ratio (PSNR).

Bab 3 : ANALISIS DAN PERANCANGAN

Bab ini membahas mengenai perhitungan nilai piksel citra, reduksi noise, flowchart sistem serta perancangan antar muka pengguna.

Bab 4 : IMPLEMENTASI DAN PENGUJIAN

Bab ini membahas tentang implementasi dan pengujian perangkat lunak. Bab 5 : KESIMPULAN DAN SARAN

Bab ini dilakukan pembuatan kesimpulan-kesimpulan yang merupakan rangkuman dari hasil penelitian yang telah dilakukan dan saran yang perlu diperhatikan berdasarkan keterbatasan perangkat lunak maupun penulisan skripsi ini.


(25)

BAB 2

LANDASAN TEORI

2.1. Pengertian Citra Digital

Citra digital merupakan sebuah fungsi intensitas cahaya f(x,y), dimana harga x dan y merupakan koordinat spasial dan harga fungsi f tersebut pada setiap titik (x,y) merupakan tingkat kecemerlangan atau intensitas cahaya citra pada titik tersebut.

Citra digital adalah suatu matriks dimana indeks baris dan kolomnya menyatakan suatu titik pada citra tersebut dan elemen matriksnya yang disebut sebagai elemen gambar atau piksel menyatakan tingkat keabuan pada titik tersebut. Indeks baris dan kolom (x,y) dari sebuah piksel dinyatakan dalam bilangan bulat (integer). Sebuah piksel merupakan sampel dari pemandangan yang mengandung intensitas citra yang dinyatakan dalam bilangan bulat. Untuk menunjukkan lokasi suatu piksel, koordinat (0,0) digunakan untuk posisi kiri atas dalam bidang citra, dan koordinat (m-1,n-1) digunakan untuk posisi kanan bawah dalam citra berukuran m x n piksel dimana m adalah kolom dan n adalah baris.

Untuk menunjukkan tingkat pencahayaan suatu piksel, seringkali digunakan bilangan bulat yang besarnya delapan bit dengan lebar selang nilai 0-255 dimana 0 untuk warna hitam, 255 untuk warna putih, dan tingkat abu-abu berada di antara nilai 0 dan 255 [10]. Penjelasan posisi letak piksel dapat dilihat pada gambar 2.1.


(26)

Gambar 2.1 Posisi Letak Piksel

2.2. Pengolahan Citra Digital

Image processing atau sering disebut pengolahan citra digital merupakan suatu proses filter gambar asli menjadi gambar lain sesuai dengan keinginan kita. Misalnya, kita mendapatkan suatu gambar yang terlalu gelap. Dengan image processing, kita dapat memprosesnya agar mendapatkan gambar yang jelas [7]. Secara garis besar, gambar blok diagramnya dapat dilihat pada gambar 2.2.

Gambar 2.2 Blok Diagram Pengolahan Citra

2.3. Jenis-jenis Citra Digital

Ada banyak cara untuk menyimpan citra digital di dalam memori. Cara penyimpanan menentukan jenis citra digital yang terbentuk. Beberapa jenis citra digital yang sering digunakan adalah citra biner, citra grayscale, dan citra warna.

Gambar

Asli Gambar

Hasil Proses


(27)

2.3.1. Citra biner

Citra biner disebut juga citra monokrom. Banyak warna citra biner ada 2, yaitu hitam dan putih. Dibutuhkan 1 bit memori untuk menyimpan kedua warna ini. Setiap piksel pada citra bernilai 0 untuk hitam dan 1 untuk putih.

2.3.2. Citra grayscale

Citra warna grayscale menggunakan warna tingkatan warna abu-abu. Warna abu-abu merupaka satu-satunya warna pada ruang RGB dengan komponen merah, hijau, dan biru memepunyai intensitas yang sama. Banyaknya warna pada citra ini tergantung pada jumlah bit yang akan disediakan di memori untuk menampung kebutuhan warna ini. Citra dengan skala keabuan empat bit maka jumlah kemungkinan warnanya adalah 24 = 16 warna dengan kemungkinan warna 0 (min) sampai 15 (max).

2.3.3. Citra warna

Setiap piksel yang terdapat pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna dasar (RGB = Red Green Blue). Setiap warna dasar menggunakan penyimpanan 8 bit = 1 byte, yang berarti setiap warna memiliki gradasi sebanyak 255 warna. Berarti setiap piksel memiliki kombinasi warna sebanyak 28x 28x 28 = 16 juta warna lebih. Itulah sebabnya format ini dinamakan true color karena memiliki jumlah warna yang cukup besar.

Penyimpanan citra true color di dalam memori berbeda dengan citra grayscale. Setiap piksel dari citra grayscale 256 gradasi warna diwakili oleh 1 byte. Sedangkan 1 piksel citra true color diwakili oleh 3 byte, dimana masing-masing byte merepresentasikan warna merah (Red), hijau (Green), dan biru (Blue) [9].

2.4. Noise

2.4.1. Pengertian noise

Noise adalah suatu gangguan yang disebabkan oleh penyimpanan data digital yang diterima oleh alat penerima data gambar yang dapat mengganggu kualitas citra. Noise


(28)

dapat disebabkan oleh gangguan fisik (optik) pada alat penangkap citra misalnya kotoran debu yang menempel pada lensa foto maupun akibat proses pengolahan yang tidak sesuai [7].

2.4.2. Exponential noise

Exponential Noise merupakan jenis noise yang dihasilkan oleh laser yang koheren ketika citra diperoleh. Oleh karena itu, noise ini sering disebut sebagai bercak laser (Myler and Weeks, 1993) [4]. PDF-nya berupa:

�(�) =���−��,����� 0 ≤ �

0,������< 0 ………….…..(2.1)

� > 0. Rata-ratanya berupa:

�= 1 ………..……..(2.2) varians berupa:

�2 = 1

�2 ………....(2.3)

Pembangkit exponential noise dilakukan dengan menggunakan rumus:

� = −1ln⁡(1− ����) ……….………..(2.4)

Keterangan :

z = nilai keabuan rand = bilangan random

Citra dengan exponential noise dapat dilihat pada gambar 2.3. Grafik exponential noise dapat dilihat pada gambar 2.4. Contoh noise eksponensial negatif dapat dilihat pada gambar 2.5.


(29)

Gambar 2.4 Grafik Exponential Noise

Gambar 2.5 Contoh Noise Eksponensial Negatif

2.5. Restorasi Citra

Restorasi citra digital adalah suatu teknik yang memperhatikan bagaimana mengurangi perubahan bentuk dan penurunan kualitas citra yang diawali selama pembentukan citra tersebut (pitas, 1993) [9]. Gonzalez dan Wood mendefinisikan citra sebagai proses yang berusaha merekontruksi atau mengembalikan suatu citra yang mengalami degradasi [1]. Jadi, restorasi merupakan teknik yang berorientasi pada pemodelan degradasi dan menerapkan proses invers dalam rangka merekontruksi pada citra yang original. Contoh noise filtering dapat dilihat pada gambar 2.6.


(30)

Gambar 2.6 Contoh Noise Filtering

2.5.1. Geometric mean filter

Sebuah citra diperbaiki dengan menggunakan geometric mean filter yang diberikan oleh persamaan:

fˆ(�,�)=�∏(�,�)�����(�,�)�

1

�� ………..(2.5)

�,�= koordinat pixel pada citra �� = dimensi citra (pixel) s,t = nilai intensitas pixel

Р= perkalian nilai ����� yang terkena filter

Setiap piksel yang diperbaiki oleh hasil kali masing-masing piksel dalam subimage window, kemudian dipangkatkan dengan 1/��.

Misalkan ��� adalah subimage dari sebuah citra dan �� berukuran 3�3 yang mempunyai nilai-nilai intensitas seperti pada gambar 2.7.

5 5 4 7 2 6 1 4 1


(31)

fˆ(�,�)= (5�5�4�7�2�6�1�4�1)31�3= (33600) 1

9 = 3,18 = 3

Sehingga bagian dari citra berubah menjadi seperti pada gambar 2.8.

5 5 4 7 3 6 1 4 1

Gambar 2.8 Piksel Citra Hasil [9]

2.5.2. Alpha-trimmed mean filter

Filter ini mengganti nilai sebuah piksel dengan nilai rata-rata dari dalam subimage di bawah jendela ketetanggaan ukuran mxn setelah dikurangi nilai terkecil dan nilai terbesar, seperti persamaan berikut:

fˆ(�,�)= ��−�1 ∑(�,�)��,(�,�) ………..(2.6)

�,� = koordinat pixel pada citra

�� = dimensi citra (pixel) � = nilai inputan 0 - 8 s,t = nilai intensitas pixel

∑ = penjumlahan nilai ����� yang terkena filter

Dimana 0≤ � ≤ (�� −1). Jika � = 0, filter ini bekerja seperti arithmetic mean filter. Jika � = (�� −1), filter ini menjadi median filter. Untuk nilai � yang lain, filter ini berguna untuk mereduksi noise pada citra yang terdegradasi berbagai jenis noise [3].


(32)

Citra piksel awal seperti pada gambar 2.9, dengan hasil filter untuk d = 2 seperti pada gambar 2.10.

5 6 5 7 8 9 10 1 3 2 5 6 10 3 2 7 4 4 5 1 2 3 5 3 3 Gambar 2.9 Piksel Awal

Piksel citra tersebut kemudian akan dilakukan reduksi terhadap noise dengan nilai inputan d = 2. Maka perhitungannya adalah :

�(2,2) = 1

(9−2)�(5 + 5 + 5 + 6 + 6 + 9 + 10) =

1

7� 46 = 6,57 = 7

Hasil filter :

5 6 5 7 8 9 7 1 3 2 5 6 10 3 2 7 4 4 5 1 2 3 5 3 3

Gambar 2.10 Hasil Filter dengan d = 2

2.6. Pengukuran Kinerja Restorasi Citra

2.6.1. Mean squared error (MSE)

Perbaikan citra pada dasarnya merupakan proses yang bersifat subjektif sehingga parameter keberhasilannya bersifat subjektif pula. Untuk itu diperlukan adanya alat ukur kuantitatif yang bisa digunakan untuk mengukur kinerja prosedur perbaikan citra [9]. Semakin kecil nilai MSE maka citra hasil reduksi semakin mendekati citra aslinya. Persamaannya:


(33)

Keterangan :

M dan N = ukuran panjang dan lebar citra.

��(�,�) = intensitas citra di titik (�,�) sebelum terkena noise. ��(�,�) = intensitas citra di titik (�,�) setelah noise dihilangkan.

2.6.2. Peak signal-to-noise ratio (PSNR)

Kualitas citra hasil reduksi juga dapat diukur secara kuantitatif dengan mengguanakan besaran Peak Signal-to-Noise Ratio (PSNR) dengan satuan desiBel (dB). Semakin besar nilai PSNR maka citra hasil reduksi semakin mendekati citra aslinya, dengan kata lain semakin bagus kualitas citra hasil reduksi tersebut, dan berlaku sebaliknya. Persamaannya:

���� = 20 ����10 � 255

√���� ………..(2.8)

2.7. Relevansi Penelitian

Berikut penelitian tentang pengolahan citra yang membahas metode geometric mean filter ataupun alpha-trimmed mean filter:

1. Wiliyana dari Universitas Sumatera Utara mengangkat judul skripsinya “Perbandingan Algoritma Arithmetic dengan Geometric Mean Filter untuk Reduksi Noise pada Citra”. Tugas akhir ini memberikan kesimpulan perbandingan antara Algoritma Arithmetic dengan Geometric Mean Filter dalam melakukan reduksi noise pada citra. Berdasarkan penelitian ini, didapat kesimpulan bahwa Algoritma Geometric Mean Filter lebih baik dalam melakukan reduksi terhadap salt and paper noise dengan diberikan probabilitas yang sama seperti pada pengujian Algoritma Arithmetic Mean Filter. Hal ini dapat terlihat dengan adanya nilai MSE yang terdapat pada Algoritma Geometric Mean Filter lebih kecil dibandingkan dengan Algoritma Arithmetic Mean Filter [12].

2. Vijaykumar, V.R., et al melakukan penelitian dengan judul “Fast and Efficient Algorithm to Remove Gaussian Noise in Digital Images”. Penelitian ini bertujuan untuk menentukan metode yang paling bagus dalam mereduksi


(34)

gaussian noise. Metode yang dilakukan penelitian antara lain mean filter, wiener filter, alpa-trimmed mean filter, K-means filter, bilateral filter dan trilateralfilter. Penelitian dilakukan dengan menggunakan parameter MSE dan PSNR. Berdasarkan hasil penelitian, didapat kesimpulan metode jenis nonlinear filter paling bagus untuk melakukan reduksi noise [11].

3. Srinivas, R. & Panda, S. melakukan penelitian dengan judul “Performance Analysis of Various Filters for Image Noise Removal in Different Noise Environment”. Penelitian ini bertujuan untuk membandingkan metode yang bagus dan efisien untuk mereduksi tiga tipe noise yaitu salt and pepper noise, gaussian noise dan speckle noise dengan probabilitas 10%-60%. Dengan metode-metode yang akan dibandingkan yaitu average filter (AF), adaptive median filter (AMF), standard median filter (SMF) dan alpha-trimmed mean filter (ATMF). Penelitian dilakukan dengan menggunakan parameter MSE dan PSNR. Berdasarkan penelitian ini didapat kesimpulan bahwa standard median filter (SMF) bagus untuk mereduksi salt and pepper noise dengan probabilitas 50%-60%, average filter (AF) bagus untuk mereduksi salt and pepper noise dengan probabilitas ≥ 60%, gaussian noise, dan speckle noise, adaptive median filter (AMF) bagus untuk mereduksi gaussian noise, dan speckle noise dengan probabilitas 10%-20%, dan alpha-trimmed mean filter tidak termasuk jenis metode yang baik dan efisien untuk mereduksi ketiga noise tersebut [8].


(35)

BAB 3

ANALISIS DAN PERANCANGAN

3.1. Analisis Sistem

Analisis sistem merupakan suatu langkah awal untuk menentukan perangkat lunak seperti apa yang akan dihasilkan ketika akan membuat suatu perangkat lunak.

3.1.1. Diagram ishikawa

Diagram Ishikawa untuk menganalisa masalah yang akan dilakukan penyelesaian terhadap masalah yang dikemukakan. Diagram Ishikawa pada sistem ini dapat dilihat pada gambar 3.1.

Adanya Noise Pada Citra man

machine

method

proses capture tidak sempurna

Pencahayaan tidak merata

Lensa kamera tidak bagus ataupun rusak

Kontras citra terlalu rendah Tidak ahli mengambil gambar

Bintik-bintik pada lensa kamera


(36)

Pada gambar 3.1 ishikawa diagram dijelaskan bahwa permasalahan adanya noise pada citra digital dapat dikelompokkan menjadi 3 (tiga) bagian yaitu dari sudut pandang man, method, dan machine. Berdasarkan sudut pandang man masalahnya yaitu tidak ahli mengambil gambar. Berdasarkan sudut pandang method yaitu adanya pencahayaan yang tidak merata, proses capture yang tidak sempurna, dan kontras citra terlalu rendah. Berdasarkan sudut pandang machine yaitu lensa kamera yang tidak bagus ataupun rusak dan adanya bintik-bintik pada lensa kamera.

3.1.2. Analisis fungsional

Persyaratan analisis fungsional meliputi masukan, keluaran dan proses. Berikut akan dijelaskan lebih rinci.

3.1.2.1. Analisis masukan

Masukan dari sistem untuk mereduksi noise pada citra berupa parameter-parameter yang dibutuhkan, yaitu:

a) Gambar yang digunakan pada aplikasi ini yaitu gambar truecolor dengan ekstensi *.bmp yang mengandung noise ataupun tidak mengandung noise untuk melakukan perbandingan terhadap metode Geometric Mean Filter dan Alpha-Trimmed Mean Filter.

b) Metode menggunakan kernel 3x3 untuk melakukan reduksi.

c) Pilih nilai d untuk melakukan reduksi dengan metode Alpha-Trimmed Mean Filter.

d) Probabilitas untuk membangkitkan noise yaitu 1% sampai 5% (0.01 sampai 0.05).

e) Parameter yang digunakan untuk melakukan perbandingan terhadap kedua metode adalah Mean Squared Error (MSE), Peak Signal-to-Noise Ratio (PSNR) dan runtime. Jika nilai MSE kecil berarti citra hasil reduksi semakin mendekati citra aslinya. Jika nilai PSNR besar berarti citra hasil reduksi semakin mendekati citra aslinya dan metode yang digunakan sangat bagus.

3.1.2.2. Analisis keluaran

Keluaran dari sistem hasil reduksi noise pada citra pada perbandingan yaitu: Gambar yang telah mengalami pengurangan noise serta nilai MSE, PSNR dan runtime.


(37)

3.1.2.3. Proses membaca nilai piksel

Pada citra bitmap 24-bit, setiap pikselnya mengandung 24-bit kandungan warna, dan untuk tiap warna masing-masing terdiri dari 8-bit atau 1 byte yaitu R (red), G (green), dan B (blue). Nilai yang terkandung tiap warna yaitu antara 0 sampai 255. Contoh sebuah citra bitmap dengan nilai R = 00110110 (biner), G = 01110111 (biner), B = 01000010 (biner).

3.2 Representasi Piksel Pada Citra

Citra dengan nilai RGB-nya 001101100111011101000010 = 24 bit mewakili 1 piksel dari citra tersebut. Jika jumlah bit citra tersebut adalah 1.440.000 bit, maka jumlah piksel-nya adalah 1.440.000/24 bit = 60.000 piksel. Pada penelitian ini dilakukan reduksi noise dengan ukuran kernelnya adalah 3 x 3 piksel atau dapat dikatakan berjumlah 9 piksel, sehingga jumlah blok adalah 1.440.000 : 9 = 160.000 blok.

3.1.2.4. Proses penambahan noise

Penambahan exponential noise dilakukan dengan menggunakan rumus. Noise ditambahkan menggunakan bilangan random atau acak dengan nilai 0 sampai 255. Proses penambahan noise dapat dilihat pada gambar 3.3.

Gambar 3.3 Matriks Citra dengan Penambahan Noise 141 223 196

197 110 124 120 122 133

0 223 196 197 110 124 120 0 133 0


(38)

3.1.2.5. Konvolusi matriks citra metode geometric mean filter

Pada metode ini filter yang digunakan untuk mereduksi noise adalah kernel ukuran 3 x 3 dengan rumus :

fˆ(�,�)=�∏(�,�)�����(�,�)�

1

�� ………(3.4)

Semua intensitas piksel dikalikan, kemudian dipangkatkan dengan 1/mn. Berikut contohnya dapat dilihat pada gambar 3.4 dan gambar 3.5.

Gambar 3.4 Matriks Citra Pada Blok 1

Hasil filter yang terbentuk = (0*223*196*197*110*124*120*0*133)1/9 = 0

Gambar 3.5 Matriks Citra Blok 1 Hasil Reduksi Metode Geometric Mean Filter

Hal ini dilakukan terus pada tiap blok citra yang telah dibagi menjadi 9 piksel pada tiap blok citra. Penentuan blok citra 2 dan seterusnya dilakukan dengan menggeser 1 kolom ke kanan bila masih berada pada posisi baris yang sama. Berikut ilustrasinya.

Gambar 3.6 Matriks Blok Citra 1 Sebelum Digeser 0 223 196

197 110 124 120 0 133

0 223 196 197 0 124 120 0 133

0 223 196 197 0 124 120 0 133


(39)

Gambar 3.7 Matriks Blok Citra 1 Setelah Digeser

3.1.2.6. Konvolusi matriks citra metode alpha-trimmed mean filter

Pada metode ini filter yang digunakan untuk mereduksi noise adalah kernel ukuran 3 x 3 dengan rumus. Filter ini mengganti nilai sebuah piksel dengan nilai rata-rata dari dalam subimage di bawah jendela ketetanggaan ukuran mxn setelah dikurangi nilai terkecil dan nilai terbesar, dengan rumus:

fˆ(�,�)= ��−�1 ∑(�,�)��,��(�,�) ………..(3.5)

Dimana 0≤ � ≤ (�� −1). Jika � = 0, filter ini bekerja seperti arithmetic mean filter. Jika � = (�� −1), filter ini menjadi median filter. Semua intensitas piksel pada blok 1 (9 piksel) diurutkan terlebih dahulu untuk mencari nilai piksel terkecil dan terbesar agar perhitungan dapat dilakukan dengan mengurangi kedua nilai tersebut. Contoh reduksi dengan nilai � = 2 dapat dilihat pada gambar 3.8.

Gambar 3.8 Matriks Citra Pada Blok 1

Setelah diurutkan intensitas pikselnya dan dikurangi dengan intensitas terkecil dan terbesar, maka hasil perhitungan menjadi:

����� = 1

(9−2)�(0 + 110 + 120 + 124 + 133 + 196 + 197) =

1

7� 880

= 125,71 = 126

0 223 196 X 197 0 124 X 120 0 133 X

0 223 196 197 110 124 120 0 133


(40)

Gambar 3.9 Matriks Citra Blok 1 Hasil Reduksi Metode Alpha-Trimmed Mean Filter

Langkah selanjutnya adalah sama halnya seperti pada geometric mean filter yaitu menggeser menggeser 1 kolom ke kanan bila masih berada pada posisi baris yang sama. Hal ini terus dilakukan hingga mencapai baris dan kolom yang terakhir.

3.1.2.7.Proses menghitung nilai MSE

Perbaikan citra pada dasarnya merupakan proses yang bersifat subjektif sehingga parameter keberhasilannya bersifat subjektif pula. MSE citra hasil reduksi noise adalah rata-rata kuadrat nilai kesalahan antara citra asli dengan citra hasil reduksi noise. Semakin kecil nilai MSE maka citra hasil reduksi semakin mendekati citra aslinya. Persamaannya:

��� = 1

��� ∑ ∑ (��(�,�)− ��(�,�))

2

� �=1

�=1 ………..(3.6)

Keterangan :

M dan N = ukuran panjang dan lebar citra.

��(�,�) = intensitas citra di titik (�,�) sebelum terkena noise. ��(�,�) = intensitas citra di titik (�,�) setelah noise dihilangkan.

Gambar 3.10 Matriks Citra Sebelum Reduksi Noise 0 223 196

197 126 124 120 0 133

0 223 196 197 110 124 120 0 133


(41)

Gambar 3.11 Matriks Citra Setelah Reduksi Noise

MSE = 1

��� ∑ ∑ (��(�,�)− ��(�,�)) 2 � �=1 � �=1

MSE (1.1) = 0

MSE (1.2) = (223 -223)2 = (0) MSE (1.2) = 0

2

MSE (1.3) = (196 -196)2 = (0) MSE (1.3) = 0

2

MSE (2.1) = (197 -197)2 = (0) MSE (2.1) = 0

2

MSE (2.2) = (110 -0)2 = (110) MSE (2.2) = 12100

2

MSE (2.3) = (124-124)2 = (0) MSE (2.3) = 0

2

MSE (3.1) = (120 -120)2 = (0) MSE (3.1) = 0

2

MSE (3.2) = 0

MSE (3.3) = (133 -133)2 = (0) MSE (3.3) = 0

2

MSE Total = 1/9 * 12100 = 1344

3.1.2.8. Proses menghitung nilai PSNR

Semakin besar nilai PSNR maka citra hasil reduksi semakin mendekati citra aslinya, dengan kata lain semakin bagus kualitas citra hasil reduksi tersebut, dan berlaku sebaliknya. Persamaannya:

���� = 20 ����10 �

255

√���� ………..(3.7)

Dengan nilai MSE yang telah didapatkan, maka PSNR-nya adalah :

PSNR = 20 ����10 � 255

√1344� = 16,8468 = 17

0 223 196 197 0 124 120 0 133


(42)

3.1.3. Analisis non fungsional

Persyaratan analisis non fungsional meliputi performa, mudah untuk digunakan (user friendly), hemat biaya, dokumentasi, manajemen kualitas, dan kontrol.

1. Performa

Sistem yang dibangun harus dapat mengimplementasikan metode geometric mean filter dan alpha-trimmed mean filter, dan menunjukkan hasil perbandingannya dengan MSE dan PSNR.

2. Mudah digunakan (user friendly)

Sistem yang dibangun harus sederhana agar mudah digunakan oleh pengguna (user). Sistem yang memiliki interface yang menarik dan memiliki cara penggunaan yang mudah dalam pengoperasian sistem.

3. Hemat biaya

Sistem yang dibangun tidak memerlukan perangkat tambahan ataupun perangkat pendukung lainnya yang dapat mengeluarkan biaya.

4. Dokumentasi

Sistem yang dibangun menunjukkan waktu pemrosesan data (running time) penyimpanan citra yang telah dilakukan reduksi noise.

5. Manajemen kualitas

Sistem yang dibangun harus dapat menghasilkan citra dengan kualitas yang baik ataupun yang mendekati citra aslinya.

6. Kontrol

Sistem yang dibangun memiliki tombol-tombol yang enable secara berurutan sesuai dengan tahap-tahap reduksi. Dengan kata lain, apabila tahap awal yaitu browse citra belum dilakukan, maka tombol lain masih dalam status disable.

3.2. Perancangan Sistem

3.2.1. Unified Modeling Language (UML)

UML adalah pemodelan suatu sistem yang menentukan visualisasi, konstruksi, dan mendokumentasikan bagian dari informasi yang digunakan atau dihasilkan dalam suatu proses pembuatan perangkat lunak (software).

UML mendefinisikan diagram-diagram untuk menjelaskan pembuatan perangkat lunak (software) pada skripsi ini, sebagai berikut :


(43)

1. Use case diagram 2. Activity diagram 3. Sequence diagram

3.2.1.1. Use case diagram

Use case diagram adalah suatu diagram yang mendeskripsikan interaksi antara user (pengguna) sebuah sistem dengan suatu sistem tersendiri melalui sebuah cerita bagaimana sebuah sistem dipakai. Use case diagram terdiri dari sebuah aktor dan interaksi yang dilakukannya, aktor tersebut dapat berupa manusia, perangkat keras, sistem lain, ataupun yang berinteraksi dengan sistem. Use case diagram sistem ini dapat dilihat pada gambar 3.12.

System

reduksi citra awal bernoise atau tidak

bernoise

User

<<depends on>> mengambil citra bernoise/tidak benoise

menambahkan exponential noise

mereduksi noise «uses»

<<depends on>>

menyimpan citra hasil reduksi

membandingkan hasil MSE dan PSNR «uses»

«uses»

<<depends on>>

<<depends on>> «uses»

«uses»


(44)

1. Spesifikasi use case reduction undefined noise + exponential noise

Spesifikasi use case untuk reduksi dengan noise bebas dan exponential noise dapat dilihat pada tabel 3.1.

Tabel 3.1 Spesifikasi Use CaseReduction Undefined Noise + Exponential Noise Name Reduction with Undefined Noise + Exponential noise

Actors User

Trigger User memilih menu Reduction with Undefined Noise + Exponential noise

Preconditions User menggunakan aplikasi reduksi noise menggunakan metode geometric mean filter dan alpha-trimmed mean filter

Post Conditions

User mendapatkan citra hasil reduksi, nilai MSE, PSNR, menyimpan citra hasil reduksi dan membandingkan kedua metode berdasarkan nilai MSE dan PSNR.

Success Scenario

1. User memilih menu Reduction with Undefined Noise + Exponential noise.

2. Sistem menampilkan halaman Reduction with Undefined Noise + Exponential noise untuk kedua metode.

3. User mengisi form metode geometric mean filter terlebih dahulu.

4. User mengeksekusi tombol browse dan memilih citra yang telah bernoise.

5. Sistem menampilkan citra awal dan meng-enable-kan tombol generate noise.

6. User memilih probabilitas noise dan mengeksekusi tombol generate noise.

7. Sistem menampilkan citra dengan noise yang di-generate dan meng-enable-kan tombol reduce noise.

8. User mengeksekusi tombol reduce noise.

9. Sistem menampilkan citra hasil reduksi noise, nilai MSE, PSNR, running time, meng-enable-kan tombol save.


(45)

Tabel 3.1 Spesifikasi Use CaseReduction Undefined Noise + Exponential Noise (Lanjutan)

Success Scenario 10.User menyimpan citra yang telah direduksi.

11.User memilih probabilitas noise dan mengeksekusi tombol generate noise.

12.Sistem menampilkan citra dengan noise yang di-generate dan meng-enable-kan tombol reduce noise.

13.User memilih nilai d dan mengeksekusi tombol reduce noise.

14.Sistem menampilkan citra hasil reduksi noise, nilai MSE, PSNR, running time, meng-enable-kan tombol save.

15.User menyimpan citra yang telah direduksi.

16.User membandingkan kedua metode berdasarkan nilai MSE dan PSNR.

Alternative Flows -

2. Spesifikasi use case reduction exponential noise

Spesifikasi use case untuk reduksi exponential noise dapat dilihat pada tabel 3.2. Tabel 3.2 Spesifikasi Use CaseReduction Exponential Noise

Name Reduction Exponential noise

Actors User

Trigger User memilih menu Reduction Exponential noise

Preconditions User menggunakan aplikasi reduksi noise menggunakan metode geometric mean filter dan alpha-trimmed mean filter

Post Conditions

User mendapatkan citra hasil reduksi, nilai MSE, PSNR, menyimpan citra hasil reduksi dan membandingkan kedua metode berdasarkan nilai MSE dan PSNR.

Success Scenario

1. User memilih menu Reduction Exponential Noise.

2. Sistem menampilkan halaman Reduction Exponential Noise untuk kedua metode.


(46)

Tabel 3.2 Spesifikasi Use CaseReduction Exponential Noise (Lanjutan)

Success Scenario

3. User mengisi form metode geometric mean filter terlebih dahulu.

4. User mengeksekusi tombol browse dan memilih citra yang tidak bernoise.

5. Sistem menampilkan citra awal dan meng-enable-kan tombol generate noise.

6. User memilih probabilitas noise dan mengeksekusi tombol generate noise.

7. Sistem menampilkan citra dengan noise yang di-generate dan meng-enable-kan tombol reduce noise.

8. User mengeksekusi tombol reduce noise.

9. Sistem menampilkan citra hasil reduksi noise, nilai MSE, PSNR, running time, meng-enable-kan tombol save. 10.User menyimpan citra yang telah direduksi.

11.User memilih probabilitas noise dan mengeksekusi tombol generate noise.

12.Sistem menampilkan citra dengan noise yang di-generate dan meng-enable-kan tombol reduce noise.

13.User memilih nilai d dan mengeksekusi tombol reduce noise.

14.Sistem menampilkan citra hasil reduksi noise, nilai MSE, PSNR, running time, meng-enable-kan tombol save. 15.User menyimpan citra yang telah direduksi.

16.User membandingkan kedua metode berdasarkan nilai MSE dan PSNR.

Alternative Flows -

3.2.1.2. Activity diagram

Activity diagram mendeskripsikan proses mengenai alur kerja atau aktivitas dalam sistem yang sedang dirancang, dimana sebagian besar state adalah action dan sebagian besar transisi di-trigger, atau dengan kata lain menggambarkan jalur aktivitas dari proses yang berjalan.


(47)

1. Activity diagram reduction undefined noise + exponential noise

Activity diagram reduction undefined noise + exponential noise dapat dilihat pada gambar 3.13.

Reduction anonymous noise + exponential noise

memilih citra bernoise(*.bmp) geometric mean filter

membandingkan niai MSE dan PSNR memilih probabilitas noise

alpha-trimmed mean filter

selesai

Kembali ke home

menambahkan exponential noise

menampilkan citra hasil reduksi, MSE, PSNR, runtime mereduksi noise

menyimpan citra hasil reduksi

USER SYSTEM

menampilkan citra bernoise

menampilkan citra bernoise+exponential noise

Gambar 3.13 Activity DiagramReduction Undefined Noise + Exponential Noise

Penjelasan alur aktivitasnya adalah sebagai berikut :

1. User memilih menu reduction undefined noise + exponential noise.User menggunakan metode geometric mean filter atau alpha-trimmed mean filter untuk melakukan reduksi noise.User memilih citra bernoise (*.bmp).


(48)

3. User memilih probabilitas noise. User menambahkan exponential noise. User melakukan reduksi noise.

4. System menampilkan citra hasil reduksi noise, nilai MSE, PSNR, dan running time.

5. User membandingkan metode yang paling bagus dengan melihat nilai MSE dan PSNR. User menyimpan citra hasil reduksi.

2. Activity diagram reduction exponential noise

Activity diagram reduction exponential noise dapat dilihat pada gambar 3.14.

Reduction exponential noise

memilih citra tanpa noise(*.bmp) geometric mean filter

membandingkan niai MSE dan PSNR memilih probabilitas noise

alpha-trimmed mean filter

selesai

Kembali ke home

menambahkan exponential noise

menampilkan citra hasil reduksi, MSE, PSNR, runtime mereduksi noise

menyimpan citra hasil reduksi

USER SYSTEM

menampilkan citra

menampilkan citra dengan exponential noise


(49)

Penjelasan alur aktivitasnya adalah sebagai berikut :

1. User memilih menu reduction exponential noise.User menggunakan metode geometric mean filter atau alpha-trimmed mean filter untuk melakukan reduksi noise.User memilih citra tanpa noise (*.bmp).

2. System menampilkan citra.

3. User memilih probabilitas noise. User menambahkan exponential noise. User melakukan reduksi noise.

4. System menampilkan citra hasil reduksi noise, nilai MSE, PSNR, dan running time.

5. User membandingkan metode yang paling bagus dengan melihat nilai MSE dan PSNR. User menyimpan citra hasil reduksi.

3.2.1.3. Sequence diagram

Diagram yang menggambarkan interaksi objek dengan objek lainnya melalui pesan yang dieksekusi berdasarkan kasusnya. Diagram ini mengilustrasikan bagaimana pesan dikirim dan diterima antara objek-objek secara berurutan.

1. Sequence diagram reduction undefined noise + exponential noise

Sequence diagram untuk reduction undefined noise + exponential noise dapat dilihat pada gambar 3.15.


(50)

Reduksi noise () Input citra bernoise(*.bmp)

Tampil citra bernoise Browse Image

Citra hasil Top Package::UserPengguna

Generate exponential noise () Citra bernoise+exponential noise

Hitung MSE ()

Nilai PSNR

Tambah Exponential Noise Reduksi Noise Hitung MSE Hitung PSNR Hitung Runtime Simpan Citra Hasil

Nilai MSE Hitung PSNR ()

Hitung Runtime () Nilai Runtime

Simpan Citra Hasil Reduksi () Sukses tersimpan

Gambar 3.15 Sequence DiagramReduction Undefined Noise + Exponential Noise Penjelasan sequence diagram reduction undefined noise and exponential noiseadalah sebagai berikut :

1. Pengguna melakukan reduksi citra bernoise ditambah exponential noise dengan menginput citra bernoise (*.bmp).

2. Sistem akan melakukan browse dan mengirim feedback dengan menampilkan citra.

3. Pengguna men-generate exponential noise dengan probabilitas noise.

4. Sistem men-generate exponential noise dan menampilkan citra bernoise + exponential noise.

5. Pengguna melakukan reduksi noise, menghitung MSE, PSNR dan runtime. 6. Sistem melakukan reduksi dan mengirim feedback dengan menampilkan citra

hasil reduksi, nilai MSE, nilai PSNR, dan runtime. 7. Pengguna menyimpan citra hasil reduksi.

8. Sistem menyimpan citra dan Sistem menampilkan feedback berupa pesan sukses disimpan.


(51)

2. Sequence diagram reduction exponential noise

Sequence diagram reduction exponential noise dapat dilihat pada gambar 3.16.

Reduksi noise () Input citra tanpa noise(*.bmp)

Tampil citra tanpa noise Browse Image

Citra hasil Top Package::UserPengguna

Generate exponential noise ()

Citra dengan exponential noise

Hitung MSE ()

Nilai PSNR

Tambah Exponential Noise Reduksi Noise Hitung MSE Hitung PSNR Hitung Runtime Simpan Citra Hasil

Nilai MSE Hitung PSNR ()

Hitung Runtime () Nilai Runtime

Simpan Citra Hasil Reduksi () Sukses tersimpan

Gambar 3.16 Sequence DiagramReduction Exponential Noise

Penjelasan sequence diagram reduction exponential noiseadalah sebagai berikut : 1. Pengguna melakukan reduksi citra tanpa noise yang ditambah exponential

noise dengan menginput citra bernoise (*.bmp).

2. Sistem akan melakukan browse dan mengirim feedback dengan menampilkan citra.

3. Pengguna men-generate exponential noise dengan probabilitas noise.

4. Sistem men-generate exponential noise dan menampilkan exponential noise. 5. Pengguna melakukan reduksi noise, menghitung MSE, PSNR dan runtime. 6. Sistem melakukan reduksi dan mengirim feedback dengan menampilkan citra

hasil reduksi, nilai MSE, nilai PSNR, dan runtime. 7. Pengguna menyimpan citra hasil reduksi.

8. Sistem menyimpan citra dan Sistem menampilkan feedback berupa pesan sukses disimpan.


(52)

3.2.2. Pseudocode

Pseudocode adalah penjelasan dari algoritma pemrograman komputer yang menggunakan struktur sederhana dari beberapa bahasa pemograman. Biasanya yang ditulis dari pseudocode adalah variabel dan fungsi. Tujuan penggunaan utama dari pseudocode adalah untuk memudahkan dalam memahami prinsip-prinsip dari suatu algoritma suatu metode.

1. Pseudocode membangkitkan exponential noise

Pada sistem ini untuk melakukan perbandingan kedua metode ditambahkan terlebih dahulu exponential noise. Berikut ini pseudocode untuk membangkitkan exponential noise pada citra :

Pada pseudocode diawali dengan dengan inisialisasi piksel berdasarkan baris dan kolomnya. Kemudian dilakukan pembangkitan noise. Kemudian dilakukan penambahan noise dengan nilai piksel yang telah diinisialisasi dan dilakukan pembulatan nilai piksel. Apabila nilai pembulatan lebih besar dari intensitas piksel 255 maka akan dilakukan pembulatan menjadi 255.

Masukan :

• A = Citra awal berukuran mxn

a = probabilitas pembangkitan noise (0.01 s/d 0.05) Keluaran :

• B = Citra yang telah ditambah noise

Exponential_noise(A, a): B ← A

for i ←1 TO m

for j ←1 TO n

noise ← -1/a*log(1-rand)

B(i,j) ← round(A(i,j)+ noise)

if B(i,j) > 255

B(i,j) ← 255

end end end


(53)

2. Pseudocode proses geometric mean filter

Berikut pseudocode untuk proses geometric mean filter dengan ukuran 3x3:

Pada pseudocode proses diawali dengan perhitungan dimensi citra. Kemudian dilakukan inisialisasi nilai piksel terhadap baris dan kolom citra yaitu sebagai A dan B. Kemudian dilakukan perulangan untuk proses perkalian piksel berdasarkan nilai i, j, p, dan q yang telah ditentukan. Seluruh hasil jumlah perkalian nilai piksel dilakukan pemangkatan dengan nilai (1/kernel) dan dimasukkan ke dalam nilai B. Kemudian akan dilakukan penggantian nilai piksel A menjadi B.

3. Pseudocode proses alpha-trimmed mean filter

Berikut pseudocode untuk proses alpha-trimmed mean filter dengan ukuran 3x3:

function [B] ← geometric(A,ukuran)

[m,n]← size(A)

cons ← ukuran/2

A ← A B ← A

for i ←1+cons To m-cons

for j ←1+cons To n-cons

jumlah ← 1

for p ← -cons To cons

for q ← -cons To cons

jumlah ← jumlah * A(i+p, j+q);

end end

B(i, j)← jumlah ^ (1/(ukuran * ukuran));

end end Return B

function [B] ← alphatrimmed(A, ukuran, d)

[m, n]← size(A)

cons ← ukuran / 2

A ← A B ← A


(54)

for i ← 1+cons To m-cons

for j ← 1+cons To n-cons

index ← 1

for p ← -cons To cons

for q ← -cons To cons

Nilai(index) ← A(i+p, j+q)

index ← index + 1

end end

index ← index - 1

for p ← 2 To index

x ← Nilai(p)

q ← p - 1

ketemu ← 0

while ((q >= 1) && (~ketemu)) if (x < Nilai(q))

Nilai(q+1) ← Nilai(q)

q ← q - 1

else

ketemu ← 1

end

Nilai(q+1) ← x

end end

if (d==0)

B(i, j) ← sum(Nilai(2:8)) * (1/((ukuran*ukuran)-d))

elseif (d == 1||d == 2||d== 3||d==4||d==5||d==6||d==7)

B(i, j) ← sum(Nilai(2:8)) * (1/((ukuran*ukuran)-d))

elseif (d==8)

B(i, j) ← Nilai(floor(ukuran * ukuran/2) + 1)

end end end Return B


(55)

Pada pseudocode proses diawali perhitungan dimensi citra. Kemudian dilakukan inisialisasi nilai piksel terhadap baris dan kolom citra yaitu sebagai A dan B. Kemudian dilakukan perulangan untuk proses pengurutan nilai piksel berdasarkan nilai i, j, p, dan q yang telah ditentukan. Proses pengurutan dilakukan dari intensitas piksel terkecil hingga terbesar. Apabila proses pengurutan selesai maka dilakukan proses reduksi dengan menggunakan berdasarkan nilai d. apabila d = 0, maka proses dilakukan dengan rumus metode arithmetic filter. Apabila d = 1 - 7, maka proses dilakukan dengan menggunakan rumus seperti arithmetic filter juga namun nilai kernel telah dikurangi dengan nilai d. Apabila d = 8, maka proses dilakukan dengan menggunakan rumus metode median filter. Pada proses reduksi dilakukan penghilangan terhadap intensitas piksel terkecil dan intensitas piksel terbesar yang telah diurutkan sebelumnya. Hasil proses reduksi dimasukkan ke dalam nilai B. Kemudian akan dilakukan penggantian nilai piksel A menjadi B.

4. Pseudocode menghitung MSE dan PSNR

Berikut pseudocode untuk menghitung MSE dan PSNR :

Pada pseudocode diawali dengan pengurangan intensitas piksel citra asal dengan citra hasil reduksi yang kemudian dipangkatkan 2 yang digunakan untuk menghitung selisih nilai pikselnya. Tiap intensitas piksel diambil berdasarkan baris dan kolom ( x, y) dengan tipe double. Kemudian dilakukan inisialisasi nilai piksel tinggi dan lebar citra asal. Perhitungan nilai MSE dilakukan dengan penjumlahan dari seluruh selisih nilai piksel citra asal dengan citra hasil reduksi dan kemudian dibagi dengan hasil perkalian tinggi dan lebar citra. Setelah proses perhitungan MSE dilakukan, maka dilakukan proses perhitungan nilai

function [NilaiMSE PSNR] ← HitungMSE(Citraasal,Citrahasil)

NilaiMSE ← (double(Citraasal)- double(Citrahasil)).^2

[tinggi lebar] ← size(Citraasal)

NilaiMSE ← (sum(NilaiMSE(:))/(tinggi*lebar))

PSNR ← 20*log10(255/sqrt(NilaiMSE))

end

Return NilaiMSE Return PSNR


(56)

PSNR berdasarkan rumus menghitung nilai PSNR. Kemudian dihasilkan nilai MSE dan nilai PSNR.

3.2.3. Flowchart sistem

Flowchart adalah representasi grafik dari langkah-langkah yang harus dilakukan dalam menyelesaikan suatu permasalahan. Flowchart terdiri atas sekumpulan simbol, dimana masing-masing simbol merepresentasikan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan input, pemrosesan input, dan diakhiri dengan penampilan output. Flowchart menggambarkan suatu aliran kegiatan dari awal hingga akhir mengenai suatu langkah-langkah dalam penyelesaian suatu masalah. Masalah tersebut bisa bermacam-macam, mulai dari masalah yang sederhana sampai masalah yang kompleks. Masalah yang dihadapai tentunya masalah pemrograman.

Sistem ini terdiri dari beberapa proses, yaitu proses untuk mereduksi noise yang dilakukan dengan 2 metode yaitu metode geometric mean filter dan alpha-trimmed mean filter. Pada form pertama, noise yang akan direduksi adalah noise yang telah ada pada citra ditambah dengan exponential noise yang dibangkitkan dari sistem. Sedangkan pada form kedua, noise yang akan direduksi adalah exponential noise yang dibangkitkan dari sistem.


(57)

1. Flowchart metode geometric mean filter

Mulai

Input citra asli ekstensi (*.bmp)

Inisialisasi nilai piksel citra asli

Hitung nilai piksel m x n

Baca nilai piksel

Hitung nilai RGB

Penambahan exponential noise

Konvolusi matriks dengan metode geometric mean filter kernel 3x3

Nilai piksel = B(i,j)

Hitung MSE

Hitung running time

Citra hasil reduksi, MSE, PSNR, dan

running time

Selesai Hitung PSNR

Gambar 3.17 Flowchart Metode Geometric Mean Filter

Keterangan Gambar 3.17 :

1. Proses diawali dengan input citra. 2. Menginisialisasi nilai piksel citra. 3. Menghitung nilai piksel mxn. 4. Membaca nilai piksel citra. 5. Menghitung nilai RGB citra. 6. Penambahan exponential noise. 7. Konvolusi matriks dengan filter. 8. Hasil nilai piksel citra B(i,j). 9. Hitung MSE.

10.Hitung PSNR. 11.Hitung running time.

12.Tampil citra, MSE, PSNR, running time.


(58)

2. Flowchart metode alpha-trimmed mean filter

Mulai

Input citra asli ekstensi (*.bmp),

input nilaid

Inisialisasi nilai piksel citra asli

Hitung nilai piksel m x n

Baca nilai piksel

Hitung nilai RGB

Penambahan exponential noise

Konvolusi matriks dengan metode alpha-trimmed mean filter kernel

3x3 berdasarkan nilai d

Nilai piksel = B(i,j)

Hitung MSE

Hitung running time

Citra hasil reduksi, MSE, PSNR, dan

running time

Selesai Hitung PSNR

Gambar 3.18 Flowchart Metode Alpha-Trimmed Mean Filter

Keterangan Gambar 3.18:

1. Proses diawali dengan input citra dan input nilai d.

2. Menginisialisasi nilai piksel citra. 3. Menghitung nilai piksel mxn. 4. Membaca nilai piksel citra. 5. Menghitung nilai RGB citra. 6. Penambahan exponential noise.

7. Konvolusi matriks dengan filter berdasarkan nilai d.

8. Hasil nilai piksel citra B(i,j). 9. Hitung MSE.

10.Hitung PSNR. 11.Hitung running time.

12.Tampil citra, MSE, PSNR, running time.


(59)

3.2.4. Perancangan antarmuka

Berdasarkan hasil analisis untuk mempermudah programmer mengimplementasikan sistemnya maka dibuat suatu perancangan antarmuka sistem. Perancangan antarmuka dari sistem ini terdiri dari 5 (lima) form, yaitu :

1. Form Menu Utama

2. Form Reduction Undefined Noise + Exponential Noise 3. Form Reduction Exponential Noise

4. Form Help 5. Form About

3.2.4.1. Form menu utama

Pada saat sistem dijalankan maka akan muncul tampilan pertama kali, yaitu tampilan rancangan halaman menu utama, yang dapat dilihat pada gambar 3.19:

Gambar 3.19 Rancangan Form Menu Utama Keterangan Gambar 3.19:

1. Menu Editor untuk reduksi noise bebas ditambah dengan exponential noise. 2. Menu Editor untuk reduksi exponential noise.

3. Menu Editor yang berisi petunjuk penggunaan.

4. Menu Editor yang berisi tentang info pembuat perangkat lunak. 5. Menu Editor Exit untuk keluar dari sistem.

JUDUL SKRIPSI

Reduction Undefined Noise + Exponential Noise Reduction Exponential Noise Help About Exit

LOGO USU

NAMA NAMA JURUSAN 1

NIM

©2014 Auliza Nanda Nst. All rights reserved

2 3 4 5

6

7


(1)

function psnr2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function popupmenu2_Callback(hObject, eventdata, handles) function popupmenu2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

function generate_noise2_Callback(hObject, eventdata, handles) indeks=get(handles.popupmenu2,'Value');

switch indeks case 1

a = helpdlg('Please choose noise probability'); case 2

a = 0.01; case 3

a = 0.02; case 4

a = 0.03; case 5

a = 0.04; case 6

a = 0.05; end

handles.aa=a; a=handles.aa; if (0.05>=a>=0.01)

A = getimage(handles.axes4); B=double(A);

[m,n] = size(A); for i = 1:m for j = 1:n

noise = -1/a*log(1-rand); B(i,j) = round(A(i,j)+ noise); if B(i,j) > 255

B(i,j) = 255; end

end end B=uint8(B);

axes(handles.axes5); imshow(B)

set(handles.reduce_noise2,'Enable','on'); end

function popupmenu3_Callback(hObject, eventdata, handles) function popupmenu3_CreateFcn(hObject, eventdata, handles)


(2)

if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function mse1_Callback(hObject, eventdata, handles)

function nama_file1_Callback(hObject, eventdata, handles) function reset2_Callback(hObject, eventdata, handles) handles.citra = handles.reset;

guidata(hObject,handles); axes(handles.axes4); imshow(handles.citra); axes(handles.axes5); imshow(handles.citra); axes(handles.axes6); imshow(handles.citra);

set(handles.dimensi3,'string',''); set(handles.dimensi4,'string',''); set(handles.nama_file2,'string',''); set(handles.lokasi2,'string',''); set(handles.ukuran_file2,'string',''); set(handles.mse2,'string','');

set(handles.psnr2,'string',''); set(handles.runtime2,'string','');

set(handles.generate_noise2,'Enable','off'); set(handles.reduce_noise2,'Enable','off'); set(handles.save2,'Enable','off');

set(handles.popupmenu2,'Value',1) set(handles.popupmenu3,'Value',1)

4.

Kode Program Figure Help

function varargout = Help(varargin) gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @Help_OpeningFcn, ... 'gui_OutputFcn', @Help_OutputFcn, ... 'gui_LayoutFcn', [] , ...

'gui_Callback', []); if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1}); end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

gui_mainfcn(gui_State, varargin{:}); end

function Help_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;


(3)

function varargout = Help_OutputFcn(hObject, eventdata, handles) varargout{1} = handles.output;

function figure1_ResizeFcn(hObject, eventdata, handles) function listbox2_Callback(hObject, eventdata, handles) function listbox2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function listbox4_Callback(hObject, eventdata, handles) function listbox4_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function listbox5_Callback(hObject, eventdata, handles) function listbox5_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function home_Callback(hObject, eventdata, handles) function home_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function listbox7_Callback(hObject, eventdata, handles) function listbox7_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))

set(hObject,'BackgroundColor','white'); end

function reduction1_Callback(hObject, eventdata, handles) function reduction1_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end


(4)

function reduction2_Callback(hObject, eventdata, handles) function reduction2_CreateFcn(hObject, eventdata, handles) if ispc && isequal(get(hObject,'BackgroundColor'),

get(0,'defaultUicontrolBackgroundColor')) set(hObject,'BackgroundColor','white'); end

function close_Callback(hObject, eventdata, handles) close

5.

Kode Program Figure About

function varargout = About(varargin) gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 'gui_OpeningFcn', @About_OpeningFcn, ... 'gui_OutputFcn', @About_OutputFcn, ... 'gui_LayoutFcn', [] , ...

'gui_Callback', []); if nargin && ischar(varargin{1})

gui_State.gui_Callback = str2func(varargin{1}); end

if nargout

[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

gui_mainfcn(gui_State, varargin{:}); end

function About_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;

guidata(hObject, handles);

function varargout = About_OutputFcn(hObject, eventdata, handles) citra = imread('Liza.JPG');

axes(handles.programmer); imshow(citra);

varargout{1} = handles.output;

function figure1_ResizeFcn(hObject, eventdata, handles) function pushbutton1_Callback(hObject, eventdata, handles) close

6.

Kode Program Function Geometric Mean Filter

function [B] = geometric(A,ukuran)

if nargin < 2 ukuran = 3; end


(5)

[m,n] =size(A);

cons = floor(ukuran/2); A=double(A);

B=double(A);

for i=1+cons : m-cons for j=1+cons : n-cons jumlah = 1;

for p = -cons : cons for q= -cons : cons

jumlah = jumlah * A(i+p, j+q); end

end

B(i, j) = jumlah ^ (1/(ukuran * ukuran)); end

end

B=uint8(B);

7.

Kode Program Function Alpha-Trimmed Mean Filter

function [B] = alphatrimmed(A, ukuran, d)

if nargin < 2 ukuran = 3; end

if nargin < 3 d = handles.d; end

[m, n] = size(A);

cons = floor(ukuran / 2); A = double(A);

B = double(A);

Nilai = zeros(1,ukuran * ukuran); for i=1+cons : m-cons

for j=1+cons: n-cons index = 1;

for p = -cons : cons for q = -cons : cons

Nilai(index) = A(i+p, j+q); index = index + 1;

end end

index = index - 1; % jumlah data % Urutkan data pada array nilai for p = 2:index

x = Nilai(p);

% Sisipkan x ke dalam data[1..p-1] q = p - 1;


(6)

while ((q >= 1) && (~ketemu)) if (x < Nilai(q))

Nilai(q+1) = Nilai(q); q = q - 1;

else

ketemu = 1; end

Nilai(q+1) = x; end

end

if (d==0)

B(i, j) = sum(Nilai(2:8)) * (1/((ukuran*ukuran)-d)); elseif (d == 1||d == 2||d== 3||d==4||d==5||d==6||d==7) B(i, j) = sum(Nilai(2:8)) * (1/((ukuran*ukuran)-d)); elseif (d==8)

B(i, j) = Nilai(floor(ukuran * ukuran/2) + 1); end

end end

B = uint8(B);

8.

Kode Program Function MSE & PSNR

function [NilaiMSE PSNR] = HitungMSE(Citraasal,Citrahasil) a = double(Citraasal);

b = double(Citrahasil); NilaiMSE=(a-b).^2;

[tinggi lebar]= size(Citraasal);

NilaiMSE=(sum(NilaiMSE(:))/(tinggi*lebar)); PSNR = 20*log10(255/sqrt(NilaiMSE));


Dokumen yang terkait

Implementasi dan Perbandingan Metode Midpoint Filter dan Yp Mean Filter untuk Mereduksi Noise pada Citra Digital

3 103 84

Implementasi Metode Kombinasi Mean Filter Dan Median Filter Untuk Mereduksi Gaussian Noise, Salt And Pepper Noise, Speckle Noise, Dan Exponential Noise Pada Citra Digital

5 96 142

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

28 208 104

Implementasi Dan Perbandingan Metode Geometric Mean Filter Dan Alpha-Trimmed Mean Filter Untuk Mereduksi Exponential Noise Pada Citra Digital

0 0 24

BAB 2 LANDASAN TEORI 2.1. Pengertian Citra Digital - Implementasi Dan Perbandingan Metode Geometric Mean Filter Dan Alpha-Trimmed Mean Filter Untuk Mereduksi Exponential Noise Pada Citra Digital

0 1 10

Implementasi Dan Perbandingan Metode Geometric Mean Filter Dan Alpha-Trimmed Mean Filter Untuk Mereduksi Exponential Noise Pada Citra Digital

0 1 17

IMPLEMENTASI DAN PERBANDINGAN METODE ALPHA-TRIMMED MEAN FILTER DAN ADAPTIVE MEDIAN FILTER UNTUK REDUKSI NOISE PADA CITRA DIGITAL

0 0 16

Implementasi dan Perbandingan Metode Midpoint Filter dan Yp Mean Filter untuk Mereduksi Noise pada Citra Digital

0 3 9

BAB 2 TINJAUAN PUSTAKA - Implementasi dan Perbandingan Metode Harmonic-Mean Filter dan Contraharmonic-Mean Filter untuk Mereduksi Noise Pada Citra Digital

0 0 19

IMPLEMENTASI DAN PERBANDINGAN METODE HARMONIC- MEAN FILTER DAN CONTRAHARMONIC – MEAN FILTER UNTUK MEREDUKSI NOISE PADA CITRA DIGITAL SKRIPSI AMALIA CHAIRY 101401085

0 2 14