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

(1)

IMPLEMENTASI DAN PERBANDINGAN METODE MIDPOINT

FILTER

DAN Yp MEAN FILTER UNTUK MEREDUKSI NOISE

PADA CITRA DIGITAL

SKRIPSI

FANNY FAIRINA N

101401088

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014


(2)

IMPLEMENTASI DAN PERBANDINGAN METODE MIDPOINT

FILTER

DAN Yp MEAN FILTER UNTUK MEREDUKSI NOISE

PADA CITRA DIGITAL

SKRIPSI

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

FANNY FAIRINA N

101401088

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

2014


(3)

PERSETUJUAN

Judul : IMPLEMENTASI DAN PERBANDINGAN

METODE MIDPOINT FILTER DAN Yp MEAN FILTER UNTUK MEREDUKSI NOISE PADA CITRA DIGITAL

Kategori : SKRIPSI

Nama : FANNY FAIRINA N

Nomor Induk Mahasiswa : 101401088

Program Studi : SARJANA (S1) ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI

Diluluskan di Medan, Juli 2014

Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Maya Silvi Lydia, B.Sc.,M.Sc Dr. Poltak Sihombing, M.Kom

NIP 197401272002122001 NIP 196203171991031001

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP 196203171991031001


(4)

PERNYATAAN

IMPLEMENTASI DAN PERBANDINGAN METODE MIDPOINT FILTER DAN Yp MEAN FILTER UNTUK MEREDUKSI NOISE PADA CITRA DIGITAL

SKRIPSI

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

Medan, Juli 2014

Fanny Fairina N 101401088


(5)

PENGHARGAAN

Puji dan syukur penulis panjatkan kepada Allah SWT atas nikmat dan karunia-Nya 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.

Ucapan terima kasih penulis sampaikan kepada :

1. Bapak Prof.Dr.dr.Syahril Pasaribu, DTM&H, MSc(CTM), Sp.A(K) selaku Rektor Universitas Sumatera Utara

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

3. Bapak Dr.Poltak Sihombing, M.Kom, selaku ketua Program studi S1 Ilmu Komputer Universitas Sumatera Utara dan dosen pembimbing I yang telah memberikan masukan dalam menyelesaikan skripsi ini

4. Ibu Maya Silvi Lydia, B.Sc, M.Sc, selaku Sekretaris Program studi S1 Ilmu Komputer Universitas Sumatera Utara dan dosen pembimbing II yang telah memberikan masukan dalam menyelesaikan skripsi ini

5. Bapak Drs. Marihat Situmorang, M.Kom, selaku dosen penguji I yang telah memberikan kritik, saran dan dukungan kepada penulis dalam menyelesaikan skripsi ini

6. Bapak Jos Timanta Tarigan, M.Sc, selaku dosen penguji II yang memberikan kritik, saran dan dukungan kepada penulis dalam menyelesaikan skripsi ini

7. Seluruh dosen dan pegawai Program studi S1 Ilmu Komputer Fasilkom-TI USU

8. Ayah saya Iklanuddin, SE, Ibu saya Yetty B. Pardede S.Pd, Abang saya Fajar Ferdian Nugraha, S.Kom dan Adik saya Febby Faudina Nestia yang selalu memberikan dukungan dan bantuan kepada penulis dalam menyelesaikan skripsi ini

9. Teman-teman kuliah saya khususnya C8, Liza, Nisa, Uswah, Wita, kak Din, Aul, kak Nana, bang Ane, Berr dan tim di IKLC yang memberi inspirasi dan semangat kepada penulis.


(6)

10.Dan yang terkhusus Sobirin, yang selalu memberi dukungan dan motivasi kepada penulis dalam menyelesaikan skripsi ini.

Penulis menyadari bahwa skripsi ini masih jauh dari sempurna untuk itu penulias menerima kritik dan saran yang membangun agar dapat menyempurnakan skripsi ini. Dan semoga Allah memberikan nikmat dan karunia kepada seluruh pihak yang membantu penulis dalam menyelesaikan skripsi ini

Medan, Juli 2014


(7)

ABSTRAK

Noise pada citra digital dapat berupa Specklenoise, Uniformnoise dan noise yang memang sudah ada dari proses akuisisi citra. Salah satu cara mereduksi noise tersebut adalah dengan menggunakan teknik filtering. Adapun metode filtering yang digunakan penulis untuk mereduksi noise adalah metode Midpointfilter dan Yp Meanfilter. Midpointfilter merupakan metode filter yang menekankan pada nilai rata-rata intensitas piksel terbesar dan terkecil kernel sedangkan Yp Meanfilter, metode filter yang menekankan pada rata-rata seluruh intensitas piksel. Kedua metode tersebut bekerja pada domain spasial nonlinier. Citra digital yang diinputkan berformat .bmp dan citra hasil reduksi metode Midpointfilter dan Yp Meanfilter dapat disimpan dengan format .bmp. Implementasi sistem menggunakan bahasa pemrograman MatLab 2012. Hasil yang diperoleh dari proses reduksi noise adalah metode Yp Meanfilter merupakan metode yang paling baik dalam mereduksi Speckle dan Uniformnoise, hal itu dibuktikan dengan nilai MSE yang lebih kecil, nilai PSNR yang lebih besar dan nilai runtime proses yang lebih singkat dibanding metode Midpointfilter. Sedangkan pada citra yang sudah memiliki noise yang berasal dari proses akuisisi citra kedua metode ini dapat mengurangi tampilan noise, namun citra terlihat agak kabur.

Kata kunci : Citra, Midpoint filter, Yp Mean filter, Speckle noise, Uniform noise, MSE, PSNR


(8)

IMPLEMENTATION AND COMPARISON OF MIDPOINT FILTER AND Yp MEAN FILTER TO REDUCE NOISE ON DIGITAL IMAGE

ABSTRACT

Noiseon digital image can be a Speckle noise, Uniform noise and the noise that appears on digital image from the image acquisition. One of the way to reduce the noise is use filtering method. The method that used to reduce noise were Midpoint filter and Yp Mean filter. The Midpoint is the method which use mean of the biggest and the smallest pixel of the kernel but Yp Mean filter use the mean of the square of all pixel on the kernel. Both of the filter are processed in the nonlinier spatial domain. The image’s format that input to this system is .bmp and the reduction image that saved as .bmp. System is implemented by using MatLab 2012. The result from the noise reduction is Yp Mean filter is better than Midpoint filter to reduce noise, that shown the result of the MSE is lower, the PSNR is higher and the runtime process is faster than the Midoint filter. But for noisy image that get from the acquisition process, both of the method can reduce the noise, but the image became blurred.

Keyword : Digital image, Midpoint filter, Yp Mean filter, Speckle noise, Uniform noise, MSE, PSNR


(9)

DAFTAR ISI

Halaman

Persetujuan ii

Pernyataan iii

Penghargaan iv

Abstrak vi

Abstract vii

Daftar isi viii

Daftar Tabel x

Daftar Gambar xi

Bab I Pendahuluan

1.1Latar Belakang 1

1.2Perumusan Masalah 2

1.3Batasan Masalah 2

1.4Tujuan Penelitian 2

1.5Manfaat Penelitian 2

1.6Metodologi Penelitian 3

1.7Sistematika penulisan 3

Bab II Landasan Teori 2.1Citra digital

2.1.1 Pengertian citra digital 5

2.1.2 Jenis citra 5

2.1.2.1Citra biner 6

2.1.2.2Citra grayscale 6

2.1.2.3Citra Warna 7

2.1.3 Format file citra 7

2.1.3.1Bitmap 7

2.2Pengolahan citra digital 8

2.2.1 Restorasi citra 8

2.2.2 Filter Spasial 8

2.2.3 Midpoint filter 9

2.2.4 Yp Mean filter 10

2.2.5 Noise 11

2.2.5.1Uniform noise 11

2.2.5.2Speckle noise 12

2.3Penilaian kinerja restorasi citra 13

2.3.1 MSE 13

2.3.2 PSNR 13

Bab III Analisis dan Perancangan sistem

3.1Analisis sistem 14


(10)

3.1.2 Analisis kebutuhan 15

3.1.2.1Kebutuhan fungsional 15

3.1.2.2Kebutuhan nonfungsional 16

3.1.3 Analisis Proses 16

3.1.3.1Use Case diagram 17

3.1.3.2Activity diagram 18

3.1.3.3Sequence diagram 21

3.1.3.4Pseudocode program 23

3.1.3.4.1 Pseudocode Midpoint filter 23

3.1.3.4.2 Pseudocode Yp Mean filter 24

3.1.3.4.3 Pseudocode Speckle noise 24

3.1.3.4.4 Pseudocode Uniform noise 25

3.1.3.4.5 Pseudocode MSE 25

3.1.3.4.6 Pseudocode PSNR 26

3.2Perancangan sistem 26

3.2.1 Perancangan Flowchart 26

3.2.2 Perancangan Interface 28

3.2.2.1Rancangan interface form utama 28 3.2.2.2Rancangan interface form proses filter dengan citra yang

dibangkitkan noise 29

3.2.2.3Rancangan interface form proses filter dengan citra yang sudah

memiliki noise 30

3.2.2.4Rancangan interface form About 31

3.2.2.5Rancangan interface form Help 32

Bab IV Implementasi dan Pengujian

4.1Implementasi 33

4.1.1 Form Utama 33

4.1.2 Form Proses filter dengan citra yang dibangkitkan noise 34 4.1.3 Form proses filter dengan citra yang sudah memiliki noise 34

4.1.4 Form Help 35

4.1.5 Form About 36

4.2Pengujian 36

4.2.1 Proses filter dengan citra yang dibangkitkan noise 36 4.2.2 Proses filter dengan citra yang sudah memiliki noise 37 4.2.3 Hasil pengujian metode Midpoint filter dan Yp Mean filter dalam

mereduksi noise 38

Bab V Kesimpulan dan Saran

5.1Kesimpulan 55

5.2Saran 56


(11)

DAFTAR GAMBAR

Nomor gambar

Keterangan Halaman

2.1 Citra Biner 6

2.2 Citra Grayscale 6

2.3 Citra warna 7

2.4 Ilustrasi Midpoint filter 9

2.5 Ilustrasi Yp Mean filter 10

2.6 a Citra asli 12

2.6 b Citra dengan Uniform noise 12

2.7 a Citra asli 12

2.7 b Citra dengan Uniform noise 12

3.1 Diagram Ishikawa 15

3.2 Use case diagram sistem 18

3.3 Activity diagram proses filter dengan citra yang dibangkitkan noise

19 3.4 Activity diagram proses filter dengan citra yang sudah

memiliki noise

20 3.5 Sequence diagram proses filter dengan citra yang

dibangkitkan noise

21 3.6 Sequence diagram proses filter dengan citra yang

dibangkitkan noise

22

3.7 Pseudocode Midpoint filter 23

3.8 Pseudocode Yp Mean filter 24

3.9 Pseudocode Speckle noise 25

3.10 Pseudocode Uniform noise 25

3.11 Pseudocode MSE 26

3.12 Pseudocode PSNR 26

3.13 Flowchart sistem 27

3.14 Perancangan interface form utama 28

3.15 Perancangan interface form proses filter dengan citra yang dibangkitkan noise

29 3.16 Perancangan interface form proses filter dengan citra

yang sudah memiliki noise

30

3.17 Perancangan interface form About 31

3.18 Perancangan interface form Help 32

4.1 Form Utama 33

4.2 Form proses filter dengan citra yang dibangkitkan noise 34 4.3 Form proses filter dengan citra yang sudah memiliki

noise

35

4.4 Form Help 35


(12)

4.6 Proses pengujian filter untuk citra yang dibangkitkan noise

37 4.7 Proses pengujian filter untuk citra yang sudah memiliki

noise


(13)

DAFTAR TABEL

Nomor tabel Keterangan Halaman

3.1 Keterangan gambar form utama 28

3.2 Keterangan form proses filter dengan citra yang dibangkitkan noise 29 3.3 Keterangan form proses filter dengan citra yang sudah memiliki noise 31

3.4 Keterangan gambar form about 32

3.5 Keterangan gambar form Help 32

4.1 Hasil pengujian metode midpoint filter dan Yp Mean filter dalam mereduksi citra yang dibangkitkan speckle noise

39 4.2 Hasil pengujian metode midpoint filter dan Yp Mean filter dalam

mereduksi citra yang dibangkitkan Uniform noise

43 4.3 Hasil pengujian metode midpoint filter dan Yp Mean filter dalam

mereduksi citra yang sudah memiliki noise

49 4.4 Perbandingan MSE, PSNR dan runtime proses metode Midpoint dan

Yp Mean filter dalam mereduksi Speckle noise pada citra Dog.bmp dengan ukuran dimensi 225 x 225

51

4.5 Perbandingan MSE, PSNR dan runtime proses metode Midpoint dan Yp Mean filter dalam mereduksi Speckle noise pada citra Eagle.bmp dengan ukuran dimensi 500 x 500

51

4.6 Perbandingan MSE, PSNR dan runtime proses metode Midpoint dan Yp Mean filter dalam mereduksi Speckle noise pada citra Fuji.bmp dengan ukuran dimensi 1024 x 768

52

4.7 Perbandingan MSE, PSNR dan runtime proses metode Midpoint dan Yp Mean filter dalam mereduksi Uniform noise pada citra Dog.bmp dengan ukuran dimensi 225 x 225

52

4.8 Perbandingan MSE, PSNR dan runtime proses metode Midpoint dan Yp Mean filter dalam mereduksi Uniform noise pada citra Eagle.bmp dengan ukuran dimensi 500 x 500

53

4.9 Perbandingan MSE, PSNR dan runtime proses metode Midpoint dan Yp Mean filter dalam mereduksi Uniform noise pada citra Fuji.bmp dengan ukuran dimensi 1024 x 768


(14)

ABSTRAK

Noise pada citra digital dapat berupa Specklenoise, Uniformnoise dan noise yang memang sudah ada dari proses akuisisi citra. Salah satu cara mereduksi noise tersebut adalah dengan menggunakan teknik filtering. Adapun metode filtering yang digunakan penulis untuk mereduksi noise adalah metode Midpointfilter dan Yp Meanfilter. Midpointfilter merupakan metode filter yang menekankan pada nilai rata-rata intensitas piksel terbesar dan terkecil kernel sedangkan Yp Meanfilter, metode filter yang menekankan pada rata-rata seluruh intensitas piksel. Kedua metode tersebut bekerja pada domain spasial nonlinier. Citra digital yang diinputkan berformat .bmp dan citra hasil reduksi metode Midpointfilter dan Yp Meanfilter dapat disimpan dengan format .bmp. Implementasi sistem menggunakan bahasa pemrograman MatLab 2012. Hasil yang diperoleh dari proses reduksi noise adalah metode Yp Meanfilter merupakan metode yang paling baik dalam mereduksi Speckle dan Uniformnoise, hal itu dibuktikan dengan nilai MSE yang lebih kecil, nilai PSNR yang lebih besar dan nilai runtime proses yang lebih singkat dibanding metode Midpointfilter. Sedangkan pada citra yang sudah memiliki noise yang berasal dari proses akuisisi citra kedua metode ini dapat mengurangi tampilan noise, namun citra terlihat agak kabur.

Kata kunci : Citra, Midpoint filter, Yp Mean filter, Speckle noise, Uniform noise, MSE, PSNR


(15)

IMPLEMENTATION AND COMPARISON OF MIDPOINT FILTER AND Yp MEAN FILTER TO REDUCE NOISE ON DIGITAL IMAGE

ABSTRACT

Noiseon digital image can be a Speckle noise, Uniform noise and the noise that appears on digital image from the image acquisition. One of the way to reduce the noise is use filtering method. The method that used to reduce noise were Midpoint filter and Yp Mean filter. The Midpoint is the method which use mean of the biggest and the smallest pixel of the kernel but Yp Mean filter use the mean of the square of all pixel on the kernel. Both of the filter are processed in the nonlinier spatial domain. The image’s format that input to this system is .bmp and the reduction image that saved as .bmp. System is implemented by using MatLab 2012. The result from the noise reduction is Yp Mean filter is better than Midpoint filter to reduce noise, that shown the result of the MSE is lower, the PSNR is higher and the runtime process is faster than the Midoint filter. But for noisy image that get from the acquisition process, both of the method can reduce the noise, but the image became blurred.

Keyword : Digital image, Midpoint filter, Yp Mean filter, Speckle noise, Uniform noise, MSE, PSNR


(16)

BAB 1

PENDAHULUAN

1.1Latar Belakang

Ketika sebuah citra ditangkap oleh kamera, sering kali terdapat beberapa gangguan yang terjadi, salah satunya seperti kamera tidak fokus, muncul bintik-bintik yang disebabkan oleh proses capture yang tidak sempurna, pencahayaan yang tidak merata sehingga mengakibatkan intensitas tidak seragam, kontras citra terlalu rendah sehingga objek sulit untuk dipisahkan dari latar belakangnya, atau gangguan yang disebabkan oleh kotoran-kotoran yang menempel pada citra, dan lain sebagainya. Setiap gangguan pada citra dinamakan noise (derau). Citra yang mengandung noise seperti ini memerlukan langkah-langkah perbaikan [10].

Salah satu langkah perbaikan yang dilakukan adalah dengan melakukan proses filtering, yaitu proses memperbaiki citra yang sudah terkena noise, agar kembali terlihat seperti citra aslinya. Dalam penelitian oleh Sihotang, J.S. proses perbaikan citra yang terkena noise menggunakan teknik filtering dengan metode Midpoint filter untuk mereduksi Gaussian dan Salt & Pepper noise, Hasil penelitian yang diperoleh pada penelitian tersebut adalah metode tersebut kurang baik dalam mereduksi kedua noise diatas [8].

Oleh sebab itu dilakukanlah penelitian menggunakan metode Midpoint filter untuk mereduksi noise selain Gaussian dan Salt &Pepper noise. Kemudian metode Midpoint filter tersebut dibandingkan dengan metode Yp (Yield point) Mean Filteryang dikenal baik dalam mereduksi Gaussian noise[4]. Dari hasil perbandingan kedua metode tersebut akan diperoleh metode mana yang paling baik dalam mereduksi noise pada citra digital.


(17)

1.2 Perumusan Masalah

Rumusan masalah pada Penelitian ini adalah bagaimana mengimplementasikan dua metode yaitu Midpoint filter dan Yp Mean filterkemudian dilakukan perbandingan diantara keduanya sehingga diperoleh metode mana yang paling baik dalam mereduksi noise pada citra digital.

1.3 Batasan Masalah

Batasan masalah pada Penelitian ini adalah:

1. Citra digital yang digunakan sebagai input berformat bitmap (.bmp). 2. Citra digital yang diolah adalah citra warna.

3. Citra digital yang digunakan sebagai input adalah citra yang sudah terkena noisedan citra yang ditambahkan noise.

4. Noise yang akan ditambahkan pada citra adalah Uniform dan Specklenoise. 5. Jenis filter yang digunakan adalah Midpoint filter dan Yp Mean filter.

6. Aplikasi berbasis desktop dan bahasa pemrograman yang digunakan adalah MATLAB 2012.

7. Parameter pembanding kualitas citra adalah Mean Square Error (MSE), Peak Signal to Noise Ratio (PSNR) dan runtime proses.

1.4Tujuan Penelitian

Penelitian ini bertujuan untuk mengetahui hasil perbandingan dari implementasi metode Midpoint filter dan Yp Mean filter untuk mereduksi noise pada citra digital.

1.5Manfaat Penelitian

Penelitian ini diharapkan dapat memecahkan permasalahan cara mereduksi noise pada citra digital, sehingga dapat memberi kemudahan kepada para fotografer untuk menjadikan citra yang diperolehnya lebih baik dan bermanfaat.

1.6Metodologi Penelitian


(18)

1. Studi pustaka

Pada tahap ini, akan dilakukan studi kepustakaan dengan mengumpulkan jurnal-jurnal, buku-buku dan skripsi yang berkaitan dengan proses restorasi citra dan metode yang digunakan.

2. Analisis dan Perancangan

Pada tahap ini akan dilaksanakan analisis data yang diperlukan kemudian dilakukan perancangan Flowchart dan user interface.

3. Implementasi

Pada tahap ini akan dilaksanakan proses implementasi rumus dari metode yang dipakai ke dalam bentuk pengkodean (coding).

4. Pengujian

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

5. Dokumentasi

Pada tahap ini dilakukan penyusunan laporan dari hasil analisis dan perancangan sistem dalam format penulisan penelitian.

1.7Sistematika Penulisan

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

Bab I Pendahuluan

Berisi latar belakang, perumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian dan sistematika penulisan.

Bab II Landasan Teori

Berisi teori mengenai penolahan citra, proses filtering, metode Midpoint dan Yp Mean filter dan noise yang akan direduksi. Bab III Analisis dan Perancangan

Berisi tentang analisis metode Midpoint filter dan Yp Mean filter dalam mereduksi noise pada citra digital yang terdiri dari Use


(19)

Case diagram, Activity diagram, Pseudocode program, Flowchart dan perancangan tampilan form aplikasi.

Bab IV Implementasi dan Pengujian

Berisi implementasi sistem dan pembuatan program sesuai dengan analisis dan perancangan sistem kemudian dilakukan pengujian terhadap sistem.

Bab V Kesimpulan dan Saran

Berisi kesimpulan yang diperoleh dari hasil penelitian dan saran-saran yang berguna untuk pengembangan penelitian selanjutnya.


(20)

LANDASAN TEORI

2.1Citra Digital

2.1.1 Pengertian Citra Digital

Citra dapat didefinisikan sebagai sebuah fungsi dua dimensi, f(x,y) dimana x dan y merupakan koordinat bidang datar, dan harga fungsi f disetiap pasangan koordinat (x,y) disebut intensitas atau level keabuan (grayscale) dari gambar di titik itu. Jika x,y dan f semuanya berhingga(finite) dan nilainya diskrit, maka gambar itu disebut citra digital. Sebuah citra digital terdiri dari sejumlah elemen yang berhingga, dimana masing-masing mempunyai lokasi dan nilai tertentu. Elemen-elemen ini disebut sebagai picture element, image element, pels atau pixels. Bidang pengolahan citra meliputi pengolahan citra dari suatu komputer digital. Gambar dihasilkan dari seluruh spektrum elektromagnetik mulai dari gamma sampai gelombang radio [2].

2.1.2 Jenis Citra

Nilai suatu piksel memiliki nilai dalam rentang tertentu, dari nilai minimum sampai nilai maksimum. Jangkauan yang digunakan berbeda-beda tergantung dari jenis warnanya. Namun secara umum jangkauannya adalah 0-255. Citra dengan penggambaran seperti ini digolongkan ke dalam citra integer. Berikut adalah jenis-jenis citra berdasarkan nilai pikselnya.

2.1.2.1Citra Biner

Citra biner adalah citra digital yang hanya memiliki dua kemungkinan nilai piksel yaitu hitam dan putih. Citra biner juga disebut sebagai citra B&W (Black and White) atau citra monokrom. Hanya dibutuhkan 1 bit untuk mewakili nilai setiap pikselnya.


(21)

Citra biner seringkali muncul sebagai hasil dari proses pengolahan seperti segmentasi, pengambangan, morfologi, ataupun dithering.

Gambar 2.1Citra biner 2.1.2.2Citra Grayscale

Citra Grayscale merupakan citra digital yang hanya memiliki satu nilai kanal pada setiap pikselnya, dengan kata lain bagian Red = Green = Blue. Nilai tersebut digunakan untuk menunjukan tingkat intensitas. Warna yang dimiliki adalah warna dari hitam, keabuan dan putih. Tingkatan keabuan disini merupakan warna abu dengan berbagai tingkatan dari hitam hingga mendekati putih. Citra Grayscale memiliki kedalaman warna 8 bit (256 kombinasi warna keabuan) [6].

Gambar 2.2Citra grayscale 2.1.2.3Citra Warna

Setiap piksel 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 mempunyai gradasi sebanyak 255 warna. Berarti setiap piksel mempunyai kombinasi warna sebanyak 28.28.28 =


(22)

mempunyai jumlah warna yang cukup besar sehingga bisa dikatakan hampir mencakup semua warna di alam.

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

Gambar2.3Citra warna 2.1.3 Format file citra

Format file citra standart yang digunakan saat ini terdiri dari beberapa jenis. Format-format ini digunakan dalam menyimpan citra dalam sebuah file. Setiap Format-format memiliki karakteristik masing-masing. Berikut adalah salah satu format umum yang digunakan saat ini.

2.1.3.1Bitmap (.bmp)

Format bitmap adalah format penyimpanan standar tanpa kompresi yang umum dapat digunakan untuk menyimpan citra biner hingga citra warna. Format ini terdiri dari beberapa jenis yang tiap jenisnya ditentukan dengan jumlah bit yang digunakan untuk menyimpan sebuah nilai piksel.

2.2Pengolahan Citra Digital

Pengolahan Citra Digital adalah sebuah disiplin ilmu yang mempelajari hal-hal yang berkaitan dengan perbaikan kualitas citra (peningkatan kontras, transformasi warna, restorasi citra), transformasi gambar (rotasi, translasi, skala, transformasi geometrik), melakukan pemilihan citra ciri yang optimal untuk tujuan analisis, melakukan proses penarikan informasi atau deskripsi objek atau pengenalan objek yang terkandung pada


(23)

citra, melakukan kompresi atau reduksi data untuk tujuan penyimpanan data, transmisi data, dan waktu proses data. Input dari pengolahan citra adalah citra, sedangkan outputnya adalah citra hasil pengolahan [10].

2.2.1 Restorasi Citra

Restorasi citra bertujuan untuk merekonstruksi atau memperbaiki citra yang terdegradasi dengan suatu priori knowledge dan fenomena degradasi tersebut. Dimana citra hasil diharapkan dapat menyerupai citra aslinya. Teknik restorasi berorientasi pada pemodelan degradasi dan mengaplikasikan proses kebalikannya untuk memperbaiki citra aslinya. Degradasi citra terjadi pada saat akuisisi citra digital baik dari sensor ataudigitizer. Bentuk dari degradasi ini dapat berupa citra dengan noise, citra kabur atau kombinasi keduanya.Citra yang terdegradasi dalam domain spasial dapat dinyatakan dengan fungsi berikut [3].:

…...………....(2.1)

Keterangan :

h(x,y) : Representasi spasial dari fungsi degradasi f(x,y) : Citra asli

η(x,y) : Noise

*. : Simbol proses konvolusi spasial x dany : koordinat piksel

2.2.2 Filter Spasial

Filter pada pengolahan citra biasa disebut dengan pentapisan spasial (spasial filtering). Pada proses filtering, nilai piksel baru umumnya dihitung berdasarkan piksel tetangga. Cara perhitungan nilai piksel baru tersebut dapat dikelompokan menjadi 2, yaitu linier dan nonlinier, linier filter memperoleh piksel baru melalui kombinasi linier piksel tetangga, sedangkan nonlinier filterpiksel baru diperoleh langsung dari salah satu nilai piksel tetangga [5].

) , ( ) , ( ) , ( ) ,

(x y f x y h x y x y


(24)

2.2.3 Midpoint filter

Midpoint filter adalah filter yang mencari rata-rata nilai gray level maksimum dan minimum dalam suatu citra yang ditentukan oleh suatu kernel.Midpoint filter dapat didefinisikan sebagai berikut [5] :

�̂(�,�) =���(�,�)∈�����(�,�)�+���(�,�)∈�����(�,�)�

2

…….………...……….(2.2)

Keterangan :

���(�,�) : Intensitas maksimum piksel tetangga

���(,�) : Intensitas minimum piksel tetangga S : citra

y dan x: koordinat piksel citra g : kernel

p dan q: Koordinat citra Ilustrasi Midpoint filter :

Gambar 2.4. Ilustrasi Midpoint filter

Gambar 2.4 merupakan proses dari Midpoint filter dimana kernel 3x3 sebelah kiri menunjukan kernel awal yang mewakili citra yang terkena noise dan kernel disebelah kanan menunjukan kernel hasil yang mewakili citra setelah mengalami proses filter. Dari kernel awal dilakukan proses Midpoint filter yaitu dengan cara melakukan operasi pada piksel piksel tetangga, seperti rumus yang di tuliskan diatas piksel baru diperoleh dari penjumlahan intensitas maksimum (7) dan minimum (1) piksel-piksel tetangga kemudian dibagi dua. sehingga diperoleh nilai 4 sebagai intensitas piksel yang baru pada kernel hasil.


(25)

2.2.4 Yp mean filter

Yp Mean filter adalah termasuk bagian dari nonlinier filter yang baik dalam mereduksi noise dan menajamkan garis tepi citra dibandingkan aritmatik mean filter [7]. Dimana Yp mean filter termasuk dalam kelompok mean filter, hal tersebut terlihat dari formula yang digunakan oleh filter ini yaitu mencari nilai rata-rata dari intensitas tetangga kernel yang melingkupinya. [11]. Yp mean filter dapat didefinisikan sebagai berikut [6]:

�̂(�,�) =

�∑(�,�)∈��� �(�,�)�

��

………...…….………..……….(2.3)

Keterangan :

Q : Orde filter S : citra

y dan x : koordinat piksel citra m dan n: Ukuran Jendela g : kernel

p dan q : Koordinat citra

Gambar 2.5. Ilustrasi Yp mean filter

Gambar 2.5 merupakan proses dari Yp mean filter dimana kernel 3x3 sebelah kiri menunjukan kernel awal yang mewakili citra yang terkena noise dan kernel disebelah kanan menunjukan kernel hasil yang mewakili citra setelah difilter. Dari kernel awal dilakukan proses Yp mean filter yaitu dengan cara melakukan operasi rumus Yp mean filter seperti gambar diatas terhadap seluruh intensitas piksel-piksel


(26)

tetangga, dengan menggunakan orde filter 2 sehingga diperoleh nilai 5 sebagai intesitas piksel baru pada kernel hasil.

2.2.5 Noise

Noise sesungguhnya adalah komponen dalam citra yang tidak dikehendaki. Dalam praktik, kehadiran noise tidak dapat dihindari. noise merupakan informasitidakdiinginkanyang mencemaricitra bentuknyabiasanya berupa titik-titikataupiksel-piksel berintensitas beda yang mengganggu citra. Noise biasanyaterjadipadasaatakuisisicitra, yaitu proses capture pada kamera dan proses scan pada scanner.

Noise dapat digambarkan dengan suatu sifat-sifat statistik dari nilai grayscale dalam komponen model noise, yang dinyatakan dalam variable random dengan suatu Probability Density Function (PDF)[4].

2.2.5.1UniformNoise

UniformNoisemerupakan derau yang biasa digunakan untuk mendegradasi citra pada evaluasi algoritma pengolahan citra. Pembangkit bilangan acak pada uniform noise dapat dihitung melalui rumus [2]:

�=�+ (� − �)∗ ���� ………...………..…...(2.4)

Keterangan :

a : variabel penentu noise dimana nilainya lebih besar dari nol b : variabel penentu noise dimana nilainya lebih besar dari nol rand : bilangan acak


(27)

Gambar 2.6 (a) Citra asli (b) Citra dengan Uniform noise 2.2.5.2SpeckleNoise

Speckle noise adalah derau yang dihasilkan oleh interferensi atas gelombang-gelombang pada saat radiasi monokromatis disebarkan pada permukaan dengan kekasaran sesuai dengan panjanggelombangnya. Speckle noise biasa disebut derau multiplikatif speckledikarenakan ia bersifatmenambahkan derau multiplikatif pada citra asli, dimana persamaannya adalah [7] :

g(i,j) = f(i,j) + n(i,j) f(i,j)……….……..……….…..………..(2.5) Keterangan :

f(i,j) : Citra asli

n(i,j) : Derau acak terdistribusi seragam g(i,j) : Citra dengan noise

i,j : Koordinat piksel

(a) (b)

Gambar 2.7 (a) Citra asli (b) Citra dengan Speckle noise

2.3 Penilaian Kinerja Restorasi Citra

Mean Square Error (MSE) dan Peak signal to Noise Ratio (PSNR) adalah dua parameter yang sering digunakan untuk menentukan baik tidaknya kinerja restorasi citra.


(28)

���= 1

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

2

� �=1

�=1 ………...……..………(2.6)

Keterangan :

M dan N : Ukuran panjang dan lebar citra

fa(i,j) : Intensitas citra dititik (i,j) sebelum terkena Noise fb (i,j) : Intensitas citra di titik (i,j) setelah Noise dihilangkan Semakin kecil nilai MSE, kinerja restorasi citra semakin baik [5].

2.3.2 PSNR

PSNR merupakan nilai perbandingan antara harga maksimum warna pada citra hasil filtering dengan kuantisasi gangguan (noise) yang dinyatakan dalam satuan decibel(dB), noise yang dimaksud adalah akar rata-rata kuadrat nilai kesalahan (√���).Secara matematis, nilai PSNR dapat dirumuskan sebagai berikut :

PSNR = 20log10 ( 255

√��� ) ……….….………(2.7)

Keterangan :

PSNR : nilai Peak Signal to Noise Ratio MSE : nilai Mean Square Error

255 : nilai Grayscale

Semakin besar nilai PSNR, kinerja restorasi citra semakin baik [8].


(29)

ANALISIS DAN PERANCANGAN SISTEM

3.1Analisis Sistem

Analisis sistem merupakan tahap awal yang dilakukan sebelum membangun sebuah sistem. Analisis sistem meliputi analisis masalah, analisis kebutuhan dan analisis proses.

3.1.1 Analisis Masalah

Analisis masalah merupakan proses menganalisis apa saja masalah yang terjadi sehingga diperlukan suatu penelitian untuk menyelesaikan masalah tersebut. Analisis masalah dapat digambarkan dengan menggunakan diagram Ishikawa atau sering disebut Fishbone diagram, dimana Bone pada diagram menunjukan akar-akar permasalahan dan kepala ikan menunjukan masalah umum yang terjadi.

Diagram Ishikawa yang ditunjukan pada Gambar 3.1 terbagi atas dua bagian yaitu bagian akar permasalahan dan Masalah umum. Bagian permasalahan melingkupi empat aspek yaitu Man, Method, Machine danMaterial. Man adalah aspek permasalahan yang disebabkan oleh sumber daya manusia, Method adalah aspek permasalahan yang berasal dari metode yang pernah digunakan, Machine adalah aspek permasalahan yang berasal dari penggunaan perangkat sedangkan Material merupakan aspek permasalahan yang bersumber dari bahan-bahan yang digunakan dalam mengelolah sistem. Sedangkan bagian kepala merupakan masalah yang terjadi dari keseluruhan akar-akar permasalahan Diagram Ishikawa pada sistem ini dapat dilihat pada gambar 3.1.


(30)

Terdapat noise pada citra digital

Man Method

Machine

Material

Capturing objek yang tidak sempurna

Kamera yang tidak fokus

Proses pembangkitan noise Pada citra digital

Citra yang sudah usang Interferensi listrik

Pada saat akuisis Human Error pada saat Pengambilan citra

Gambar 3.1 Diagram Ishikawa Analisis Masalah

3.1.2 Analisis Kebutuhan

Analisis kebutuhan adalah proses analisis hal-hal yang harus dipenuhisuatu sistem. Analisiskebutuhan dibagi atas kebutuhan fungsional dan nonfungsional.

3.1.2.1Kebutuhan Fungsional

Kebutuhan fungsional adalah segala sesuatu yang harus dimiliki oleh sistem. Pada penelitian ini kebutuhan fungsional sistem adalah:

1. Citra digital yang dapat diolah adalah citra digital berformat .bmp tidak memiliki noise atau yang sudah memiliki noise.

2. Jenis noise yang akan dibangkitkan pada citraadalah Speckle dan Uniformnoise. 3. Sistem menggunakan kernel 3 x 3.

4. Sistem menggunakan Mean Squared Error (MSE), Peak Signal to NoiseRatio (PSNR) dan Runtime proses sebagai parameter pembanding kinerja metode filter. 5. Citra hasil proses filter dapat disimpan dengan format file asalnya yaitu .bmp.


(31)

3.1.2.2Kebutuhan Nonfungsional

Kebutuhan nonfungsional adalah segala hal yang harus dilakukan sistem. Pada penelitian ini kebutuhan nonfungsional sistem meliputi beberapa aspek, yaitu:

1. Tampilan (Performance)

Sistem menggunakan tampilan yang sederhana dan mudah digunakan (user friendly).

2. Ekonomi (Economic)

Sistem tidak menggunakan perangkat yang mengeluarkan biaya yang besar. 3. Pengontrolan Sistem (Control)

Sistem memberikan umpan balik pada setiap respon yang diberikan pengguna. 4. Efisiensi Sistem (Eficiency)

Sistem mengurangi waktu pengguna dalam menghitung ukuran dimensi citra dan mereduksi noise pada citra digital.

5. Pelayanan Sistem (Service)

Sistem memberi kemudahan dalam mereduksi noise sehingga memudahkan fotografer untuk memperbaiki kualitas suatu citra. Selain itu sistem juga mengembalikan informasi citra yang mengalami penuruan mutu akibat noise.

3.1.3 Analisis Proses

Analisis proses bertujuan untuk mengetahui cara kerja suatu sistemsecara detil. Analisis proses pada sistem ini dilakukan dengan proses pemodelan, yaitu proses merancang piranti lunak sebelum melakukan pengkodean(coding). Model piranti lunak dapat dianalogikan seperti pembuatan blueprint pada pembangunangedung. Membuat model dari sebuah sistem yang kompleks sangatlah penting karena kita tidakdapat memahami keseluruhan sistem tanpa dimodelkan. Semakin kompleks sebuah sistem, semakinpenting pula penggunaan teknik pemodelan.

Teknik pemodelan sistem pada penelitian ini dilakukan dengan menggunakan Undifined Modelling Language(UML), yaitu sebuah bahasa yang telah menjadi standar dalamindustri untuk menggambar, merancang dan mendokumentasikan sistem piranti lunak. UMLmenawarkan sebuah standar untuk merancang model sebuah


(32)

sistem.Dengan menggunakan UML kita dapat membuat model untuk semua jenis aplikasi piranti lunak,dimana aplikasi tersebut dapat berjalan pada piranti keras, sistem operasi dan jaringan apapun, sertaditulis dalam bahasa pemrograman apapun.

3.1.3.1Use Case diagram

Use Case diagram merupakan diagram yangmenggambarkan fungsionalitas yang diharapkan dari sebuah sistem. Sebuah Use Casemerepresentasikan sebuah interaksi antara aktor dengan sistem. Aktor adalah sebuah entitas manusia atau mesin yang berinteraksi dengan sistemuntuk melakukan pekerjaan-pekerjaan tertentu.Use Case diagram dapat sangat membantu bila kita sedang menyusun requirement sebuah sistem,mengkomunikasikan rancangan dengan klien dan merancang test case untuk semua feature yangada pada sistem.Use case diagram sistem ditunjukan pada gambar 3.2.

Sistem Implementasi dan Perbandingan Metode Midpoint Filter dan Yp Mean Filter Dalam mereduksi noise

pada citra digital

Pengguna

Memilih jenis filter untuk citra yang diinginkan

Proses Filter dengan citra yang dibangkitkan

noise

Proses Filter dengan citra yang sudah memiliki

nosie «uses» «uses» Speckle noise Uniform noise Midpoint Filter

Yp Mean Filter

Yp Mean filter

Midpoint filter «extends» «extends» «extends» «extends» «extends» «extends» * *

hitung MSE, PSNR dan Runtime «extends»

«extends»

Hitung runtime proses

Gambar 3.2 Use Case diagram sistem

Use Case diagrampada gambar 3.2 menampilkan interaksi antara pengguna dan sistem. Interaksi yang dilakukan oleh pengguna adalah memilih jenis proses filter, dimana proses filter terbagi atas dua yaitu proses filter dengan citra yang dibangkitkan noise dan proses filter dengan citra yang sudah memiliki noise. Pada proses filter dengan citra yang dibangkitkan noise akan dilakukan beberapa hal yaitu


(33)

membangkitkan Speckle dan Uniformnoise, melakukan proses filter untuk citra yang sudah ditambah salah satu dari kedua noise tersebut dan menampilkan perhitungan MSE, PSNR dan Runtime Proses. Sedangkan pada proses filter dengan citra yang sudah memiliki noise citra akan langsung di filter dengan kedua metode tersebut, lalu akan tampil citra hasil dan runtime prosesnya.

3.1.3.2Activity diagram

Activity diagram merupakan diagram yang menggambarkan berbagai alir aktivitas dalam sistem yang sedang dirancang,bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan bagaimana mereka berakhir. Activity diagram tidak menggambarkan behaviour internal sebuah sistem dan interaksi antar subsistem secara eksak, namun lebih menggambarkan proses-proses dan alur-alur aktivitasdari level atas secara umum.Aktivitas menggambarkan prosesyang berjalan, sementara Use Case menggambarkan bagaimana aktor menggunakan sistem untukmelakukan aktivitas. Pada gambar 3.2 Use Case diagram menunjukan interaksi yang dapat dilakukan pengguna terhadap sistem sedangkan masing-masing alur aktifitas dari interaksi tersebut ditunjukan oleh Activity diagram pada gambar 3.3 dan 3.4. Activity diagram proses filter dengan citra yang dibangkitkan noiseditunjukan oleh gambar 3.3.


(34)

Menginput Citra tanpa noise Menampilkan Citra tanpa noise

Mengisi probabilitas noise

Memilih jenis noise yang dibangkitkan Menampilkan Citra terkena noise

Melakukan proses Midpoint dan Yp Mean Filter

Menampilkan nilai MSE, PSNR dan Runtime Menekan tombol Save

Menyimpan Citra hasil Filter

Pengguna Sistem

Menekan tombol Filter

Gambar 3.3Activity diagram Proses filter dengan citra yang dibangkitkan noise

Activity diagram pada gambar 3.3menampilkan alir aktifitas yang dibagi atas dua bagian yaitu bagian pengguna dan sistem. Pada diagram diatas ditampilkan hal apa saja yang dilakukan pengguna terhadap sistem dan bagaimana sistem merespon hal tersebut. Alir aktifitas bermula dari pengguna menginput citra tanpa noisekemudian membangkitkan noise dengan memilih probabilitas noise dan jenis noise-nya lalu sistem pengguna menekan tombol filter sehingga sistem melakukan proses filter terhadap citra dengan noise dengan metode Midpoint dan Yp Mean filter. Setelah proses filter selesai sistem kemudian menampilkan hasilnya berupa citra hasil dan perhitungan MSE, PSNR dan runtime proses. Lalu jika pengguna ingin menyimpan citra hasil filter maka pengguna tinggal menekan tombol filter. Activity diagram proses filter dengan citra yang sudah memilikinoiseditunjukan oleh gambar 3.4.


(35)

Menginput Citra yang sudah memiliki noise Menampilkan Citra yang sudah memiliki noise

Menekan tombol Filter

Melakukan proses Midpoint Filter dan Yp Mean Filter

Menekan tombol Save

Menyimpan Citra hasil Filter

Menampilkan Citra Hasil Midpoint Filter dan Yp Mean Filter Menampilkan Ukuran dimensi Citra yang sudah memiliki noise

Pengguna Sistem

Menampilkan Runtime proccess filter

Gambar 3.4Activity diagram Proses filter dengan citra yang sudah memiliki noise

Activity diagram pada gambar 3.4menampilkan alir aktifitas yang dibagi atas dua bagian yaitu bagian pengguna dan sistem. Pada diagram diatas ditampilkan hal apa saja yang dilakukan pengguna terhadap sistem dan bagaimana sistem merespon hal tersebut. Pada bagian proses filter ini alir aktifitas bermula dari pengguna menginput citra yang sudah memiliki noise, kemudian sistem menampilkan citra tersebut selanjutnya pengguna menekan tombol filter sehingga sistem melakukan proses filter terhadap citra yang sudah memiliki noise tersebut dengan metode Midpoint dan Yp Mean filter. Setelah proses selesai sistem menampilkan citra hasil dan perhitungan runtime proses. Lalu jika pengguna ingin menyimpan citra hasil filter maka pengguna tinggal menekan tombol filter.

3.1.3.3Sequence diagram

Sequence diagram menggambarkan interaksi antar objek di dalam dan di sekitar sistem. Sequencediagram terdiri atas dimensi vertikal (waktu) dan dimensi horizontal (objek-objek yang terkait).Sequence diagram biasa digunakan untuk menggambarkan rangkaian langkah-langkah yang dilakukan sebagai respon dari sebuah event untuk


(36)

menghasilkan output tertentu. Diawali dariapa yang men-trigger aktivitas tersebut, proses dan perubahan apa saja yang terjadi secara internaldan output apa yang dihasilkan. Pada sistem ini proses dibedakan menjadi dua yaitu Proses filter dengan citra yang dibangkitkan noise dan Proses filter dengan citra yang sudah memilikinoise. Interaksi antar objek pada kedua proses filter akan dijelaskan pada gambar 3.5 dan 3.6.

Pengguna Filter Hitung MSE, PSNR, Runtime

Input Citra tanpa noise() Input Citra

Bangkit noise pada citra () Bangkit Noise

Reduksi noise dengan Filter ()

Hitung MSE, PSNR dan Runtime () Tampilkan citra tanpa noise

Tampilkan Citra dengan noise

Tampilkan citra hasil filter

Tampilkan nilai MSE, PSNR dan Runtime

Gambar 3.5Sequence diagram Proses filter dengan citra yang dibangkitkan noise

Gambar 3.5 menampilkan sequence diagram yang terdiri dari beberapa objek yang saling berinteraksi dimana objek tersebut terdiri atas pengguna, input citra, bangkit noise, filter dan hitung nilai MSE, PSNR dan runtime proses. Seluruh objek saling berinteraksi dan memberikan respon terhadap objek lainnya. Pengguna melakukan input citra tanpa noise pada objek input citra, yang kemudian objek input citra menampilkan citra tersebut pada pengguna. Objek-objek tersebut berinteraksi dan memberikan respon berupa message pada pengguna.


(37)

Pengguna Filter Hitung Runtime

Input Citra tanpa noise() Input Citra

Reduksi citra noise dengan Filter ()

Hitung Runtime () Tampilkan Citra dengan noise

Tampilkan citra hasil filter

Tampilkan nilai MSE, PSNR dan Runtime

Gambar 3.6 Sequence diagram Proses filter dengan citra yang sudah memiliki noise

Gambar 3.6 menampilkan sequence diagram dengan citra yang memiliki noise yang terdiri atas beberapa objek yang saling berinteraksi dimana objek tersebut terdiri atas pengguna, input citra, filter dan hitung runtime proses. Seluruh objek saling berinteraksi dan memberikan respon terhadap objek lainnya. Pengguna menginputkan citra yang sudah memiliki noise pada objek input citra, yang kemudian objek input citra menampilkan citra tersebut pada pengguna. Kemudian citra yang diinput tadi langsung difilter oleh objek filter dan dihitung runtime prosesnya oleh objek runtime proses lalu objek filter menampilkan citra hasil filter dan objek hitung runtime proses menampilkan nilai runtime proses pada pengguna.

3.1.3.4Pseudocode Program

Pseudocode merupakan algoritma yang diterjemahkan dari bahasa pemrograman yang sulit dimengerti manusia menjadi bahasa yang lebih mudah dimengerti manusia. Berikut adalah Pseudocode program dari Midpoint filter, Yp Mean filter, Specklenoise, Uniformnoise, MSE dan PSNR.


(38)

3.1.3.4.1 PseudocodeMidpoint filter

Midpoint filter merupakan metode filter yang mengganti nilai piksel tengah kernel dengan proses Midpoint filter. Proses Midpoint filter adalahpenjumlahan antara intensitas piksel tetangga terbesar dan terkecil kemudian dibagi dua. Hasil dari proses perhitungan tersebut yang akan menjadi nilai piksel baru pada citra hasil. Pseudocode untuk proses Midpoint filter dapat dilihat pada gambar 3.7.

Gambar 3.7PseudocodeMidpoint filter

3.1.3.4.2 PseudocodeYp Mean filter

Pada proses filter menggunakan Yp Mean filter, nilai piksel tengah citra dengan noise akan diganti dengan nilai yang diperoleh dari proses Yp Mean. Dimana prosesnya adalah jumlah kuadrat seluruh intensitas piksel pada kernel di bagi dengan ukuran kernelnya lalu diakarkan dengan orde filter. Pseudocode Yp Mean filterdapat dilihat pada gambar 3.8.

temp <-citraNoise

[m,n,c] <- size(temp) Ukuran <- 3

Orde <- 2

Setengah <- floor(ukuran / 2) citra_Yp <- double(temp); for i <- 1+setengah to m-setengah for j <- 1+setengah to n-setengah for co <- 1 to c

jum <- 0

for p <- -setengah to setengah for q <- -setengah to setengah

maskP(setengah+1-p,setengah+1-q)<- temp(i-p,j-q,co) end

end

midP <- maskP(:)

midP <-(min(midP)+max(midP))/2 Citra_Midpoint(i,j,co) <- midP end

end end


(39)

Gambar 3.8PseudocodeYp Mean filter

3.1.3.4.3 PseudocodeSpecklenoise

Specklenoise diperoleh dengan menambahkan citra asli dengan rumus pembangkit Specklenoise. Dimana proses pembangkitan Specklenoise sangat bergantung pada probabilitas noisedan bilangan acak.Pseudocode Speckle noise dapat dilihat pada gambar 3.9.

Gambar 3.9PseudocodeSpecklenoise

3.1.3.4.4 PseudocodeUniformnoise

Uniformnoise dibangkitkan berdasarkan bilangan acak terdistribusi Uniform dimana untuk membangkitkannya bergantung pada nilai maksimum, nilai minimum dan

temp <-citraNoise

[m,n,c] <- size(temp) Ukuran <- 3

Orde <- 2

Setengah <- floor(ukuran / 2) citra_Yp <- double(temp); for i <- 1+setengah to m-setengah for j <- 1+setengah to n-setengah for co <- 1 to c

jum <- 0

for p <- -setengah to setengah for q <- -setengah to setengah

jum <- jum + temp(i+p, j+q,co)^orde / (ukuran * ukuran)

end end

citra_Yp(i,j,co) <- jum ^ (1/orde) end

end end

Citra <- citraAsli Temp <-citra

probabilitas<- 0.05 temp <- im2double(temp)


(40)

bilangan acak. Prosesnya adalah dengan menambahkan citra asli dengan rumus pembangkit Uniformnoise. PseudocodeUniformnoise dapat dilihat pada gambar 3.10.

Gambar 3.10PseudocodeUniformnoise

3.1.3.4.5 Pseudocode MSE

MSE merupakan parameter pembanding kinerja metode filter dengan membandingkan citra asli dengan citra setelah mengalami proses filtering. Tujuannya untuk mendapatkan selisih nilai antara keduanyanya, sehingga jika selisih nilainya kecil maka metode tersebut sangat baik dalam mereduksi noise.Pseudocode untuk menentukan MSE dapat dilihat pada gambar 3.11.

Gambar 3.11Pseudocode MSE

3.1.3.4.6 Pseudocode PSNR

Proses penentuan PSNR sangat bergantung pada MSE. Dalam perhitungannya PSNR berbanding terbalik dengan MSE, sehingga hasil yang didapat semakin besar nilai PSNR maka semakin baik metode tersebut dalam mereduksi noise. Pseudocode untuk menentukan PSNR dapat dilihat pada gambar 3.12.

Gambar 3.12Pseudocode PSNR

Citra <- citraAsli temp <- citra var_a <- 0.1 var_b <- 0.5

temp <- im2double(temp)

UniformNoise<- temp+ (var_a+(var_b – var_a) *rand(size(temp))) if UniformNoise> 255

UniformNoise<- 255 elseif UniformNoise< 0

UniformNoise<- 0 end

NilaiMSE < sum(( double(CitraAsli)

-double(CitraHasil).^2)/(panjangCitra*lebarCitra))


(41)

3.2Perancangan Sistem

Perancangan sistem merupakan perancangan proses, alur dan gambaran sistem. Ketiga hal tersebut digambarkan dengan perancangan flowchart dan interface.

3.2.1 Perancangan Flowchart

Flowchartmerupakan gambaran atau bagan yang memperlihatkan urutan dan hubungan antar proses beserta pernyataannya. Flowchart berguna untuk memberikan kemudahan dalam melakukan pengecekan bagian-bagian yang terlupakan dalam analisis masalah. Gambaran ini dinyatakan dengan symbol, sehingga setiap simbol menggambarkan proses tertentu. Sedangkan setiap proses dihubungkan dengan garis penghubung. Flowchart sistem dapat dilihat pada gambar 3.13.

Cara kerja flowchart sistem pada penelitian ini berawal dari proses input citra, jika yang diinput adalah citra tanpa noise maka akan diinputkan citra tanpa noise namun jika tidak maka yang diinputkan adalah citra yang sudah memiliki noise. Jika citra yang diinput adalah citra tanpa noise maka akan dilakukan proses pembangkitan noisejika tidak maka proses langsung berlanjut ke proses filter. Jika noise yang akan dibangkitkan adalah Specklenoise maka akan dibagkitkan Specklenoise namun jika tidak maka akan dibangkitkan Uniformnoise. Jika proses pembangkitan selesai maka akan diperoleh citra dengan noise. Kemudian citra tersebut akan difilter dengan kedua metode yaitu Midpoint filter dan Yp Mean filter. Kemudian akan dihitung runtime proses, MSE dan PSNR untuk citra yang dibangkitkan noise. Dari perhitungan parameter tersebut akan didapat metode mana yang paling baik dalam mereduksi noise. Flowchart sistem dapat dilihat pada gambar 3.13.


(42)

Mulai

Citra tanpa noise

Beri Speckle

noise?

Bangkitkan Uniform noise Bangkitkan Speckle noise

Bangkitkan fungsi Midpoint filter dan Yp Mean filter

Citra Hasil Midpoint Filter dan Yp Mean

filter

Hitung MSE & PSNR untuk citra yang dibangkitkan

noise

Selesai

Y Input citra tanpa

noise ?

N

Y

N

Hitung runtime proses Citra dengan noise

Gambar 3.13Flowchart Sistem

3.2.2 Perancangan Interface

Perancangan interface merupakan proses merancang tampilan aplikasi. Perancangan interface terdiri atas rancanganform utama, formproses filter dengan citra yang


(43)

dibangkitkan noise, form proses filter dengan citra yang sudah memiliki noise, form help dan form about.

3.2.2.1Rancangan interface form utama

Form utama adalah form yang pertama muncul pada saat aplikasi dijalankan. Pada Form ini terdapat nama sistem, logo universitas dan nama, nim, program studi, universitas programmer. Rancangan form utama dapat dilihat pada gambar 3.14.

Gambar 3.14 Rancangan interfaceform utama Tabel 3.1 Keterangan gambar form utama

No Keterangan

1 Static Text untuk menampilkan judul penelitian 2 Axis untuk menampilkan gambar logo USU

3 Static Text untuk menampilkan Nama, Nim, Program studi dan Universitas penulis

3.2.2.2Rancangan interfaceformProses filter dengan citra yang dibangkitkannoise

Form ini merupakanform yang menampilkan proses pembangkitan Speckle dan Uniformnoise pada citra kemudian dilakukan proses filter menggunakan metode Midpoint dan Yp Mean filter. Dari kedua metode tersebut akan diperoleh parameter

1

2


(44)

penentu kinerja metode restorasi citra. Rancangan interfaceformproses filter dengan citra yang dibangkitkan noisedapat dilihat pada gambar 3.15.

Gambar 3.15 Rancangan interfaceform Proses filter dengan citra yang dibangkitkan

noise

Tabel 3.2 Keterangan form Proses filter dengan citra yang dibangkitkan noise

No Keterangan

1 Static Text untuk menampilkan judul form proses filter dengan penambahan noise

2 Panel citra asli

3 Axis untuk menampilkan citra asli

4 Push Button Open File untuk membuka file gambar .bmp 5 Static Text untuk menampilkan tulisan ukuran dimensi citra 6 Edit Text untuk menampilkan panjang dimensi citra 7 Edit Text untuk menampilkan lebar dimensi citra 8 Panel Specklenoise

9 Pop-up menu menampilkan probabilitas noise

10 Push Button Speckle untuk membangkitkan Specklenoise pada citra asli 11 Pop-up menu menampilkan probabilitas noise

12 Push Button Uniform untuk membangkitkan Uniformnoise pada citra asli 13 Panel citra dengan noise

14 Axis untuk menampilkan citra dengan noise

15 Panel Midpoint filter

16 Axis untuk menampilkan citra hasil Midpoint filter 1

4 2

3

5

6 7

9 8 11 10 12 13 14 15 16 17

18 19

20 21

22

23 24

25

26

27

28 22


(45)

17 Push Button filter untuk melakukan proses filtering

18 Edit Text untuk menampilkan nilai MSE citra hasil Midpoint filter

19 Edit Text untuk menampilkan nilai PSNR citra hasil Midpoint filter

20 Edit Text untuk menampilkan nilai Runtime citra hasil Midpoint filter

21 Push Button untuk menyimpan citra hasil Midpoint filter

22 Push Button untuk membersihkan seluruh citra

23 Edit Text untuk menampilkan nilai MSE citra hasil Yp Mean filter 24 Edit Text untuk menampilkan nilai PSNR citra hasil Yp Mean filter

25 Edit Text untuk menampilkan nilai Runtime citra hasil Yp Mean filter

26 Panel Yp Mean filter

27 Axis untuk menampilkan citra hasil Yp Mean filter

28 Push Button untuk menyimpan citra hasil Yp Mean filter

3.2.2.3Rancangan interface form Proses filter dengan citra yang sudah memilikinoise

Form ini menampilkan proses filter pada citra yang sudah terdapat noise didalamnya. Rancangan interface`Proses filter dengan citra sudah memilikinoisedapat dilihat pada gambar 3.16.

3.16 Rancangan interface form Proses filter dengan citra yang sudah memiliki noise

Tabel 3.3 Keterangan form proses filter dengan citra yang sudah memiliki noise No Keterangan

1 Static Text untuk menampilkan judul form proses filter dengan citra yang sudah memilikinoise 2

1 4 5

8

7 9

11

3

6 10

12

13

14 15

16


(46)

2 Panel citra Asli

3 Axes untuk menampilkan citra Asli dengan noise berformat .bmp 4 Push Button Open filte untuk membuka file gambar berformat .bmp 5 Push Button Open filte untuk membersihkan citra

6 Edit Text untuk menampilkan panjang dimensi citra 7 Edit Text untuk menampilkan lebar dimensi citra 8 Panel citra Hasil Midpoint filter

9 Axes untuk menampilkan citra hasil Midpoint filter

10 Push Button untuk melakukan proses filter dengan metode Midpoint filter

11 Edit text untuk menampilkan runtime proses Midpoint filter

12 Push Button untuk menyimpan citra hasil Midpoint filter

13 Panel citra Hasil Yp Mean filter

14 Axes untuk menampilkan citra hasil Yp Mean filter

15 Push Button untuk melakukan proses filter dengan metode Yp Mean filter

16 Edit text untuk menampilkan runtime proses Yp Mean filter

17 Push Button untuk menyimpan citra hasil Yp Mean filter

3.2.2.4Rancangan interface form About

Form ini menampilkan foto dan data diri programmer. Rancangan interfaceform About dapat dilihat pada gambar 3.17.

Gambar 3.17 Rancangan interfaceformAbout Tabel 3.4 Keterangan gambar formAbout

1

2 4

5 3


(47)

No Keterangan

1 Static Text untuk menampilkan judul form About 2 Panel untuk mengelompokan data

3 Axes untuk menampilkan foto programmer 4 Panel untuk mengelompokan data

5 Static Text untuk menampilkan Biodata Programmer

3.2.2.5Rancangan interface form Help

Form ini menampilkan petunjuk aplikasi yang dapat menuntun pengguna dalam menggunakan aplikasi ini. Rancangan interfaceformHelpdapat dilihat pada gambar 3.18.

Gambar 3.18 Rancangan interfaceformHelp Tabel 3.5 Keterangan gambar formHelp

BAB 4

No Keterangan

1 Static Text untuk menampilkan judul form Petunjuk penggunaan aplikasi 2 Panel untuk mengelompokan data

3 Static Text untuk menampilkan petunjuk penggunaan aplikasi 4 Panel untuk mengelompokan data

5 Static Text untuk menampilkan petunjuk penggunaan aplikasi

1 2

3

4


(48)

IMPLEMENTASI DAN PENGUJIAN

4.1Implementasi

Setelah dilakukan analisis dan perancangan pada sistem tahap selanjutnya adalah implementasi. Pada tahap ini akan dibuat keseluruhan program dari fungsi-fungsi form yang sudah dirancang. Sistem ini dibangun menggunakan bahasa pemrograman MatLab 2012. Pada sistem ini terdapat lima buah form yaitu form utama, form proses filter dengan citra yang dibangkitkan noise, form proses filter dengan citra yang sudah memiliki noise, form help dan form about.

4.1.1 Form Utama


(49)

Form utama adalah form yang tampil pertama kali pada saat sistem dijalankan. Form ini menampilkan nama sistem, logo universitas, nama, nim, program studi dan universitas penulis.

4.1.2 Form Proses Filter dengan citra yang dibangkitkan noise

Formini merupakan form proses filter yang menampilkan proses pembangkitan noise terhadap citra aslinya dengan parameter yang dimiliki masing-masing noise kemudian citra dengan noise tersebut difilter dengan metode Midpoint filter dan Yp Mean filter. Perhitungan MSE, PSNR dan runtime akan tampil bersama dengan citra hasil filter. Parameter pembanding tersebut yang kemudian akan menjadi acuan pengguna dalam membandingkan metode mana yang paling baik dalam mereduksi noise. Form proses filter dengan citra yang dibangkitkan noise dapat dilihat pada gambar 4.2.

Gambar 4.2 Form Proses Filter dengan citra yang dibangkitkan noise 4.1.3 Form Proses Filter dengan citra yang sudah memiliki noise

Formini merupakan form yang menampilkan proses filter pada citra yang sudah memiliki noise terlebih dahulu. Setelah citra dengan noise berhasil diinputkan kemudian citra tersebut difilter dengan metode Midpoint filter dan Yp Mean filter. Parameter pembandingnya adalah citra hasil dan runtime proses dari kedua metode tersebut.


(50)

Gambar 4.3 Form Proses Filter dengan citra yang sudah memiliki noise

4.1.4 Form Help

Form ini merupakan form petunjuk yang membantu pengguna dalam menggunakan sistem. Pada form ini terdapat teks yang menerangkan hal-hal yang dapat dilakukan pengguna terhadap sistem.Form help dapat dilihat pada gambar 4.4.

Gambar 4.4 Form Help


(51)

Form ini merupakan form yang menampilkan identitas programmer. Identitas yang ditampilkan pada form ini adalah foto dan data diri programmer.Form about dapat dilihat pada gambar 4.5.

Gambar 4.5 Form About 4.2Pengujian

Setelah sistem selesai diimplementasikan, tahap selanjunya adalah tahap pengujian sistem. Pada tahap ini akan diperoleh hasil dari proses yang dilakukan sistem. Citra yang akan diuji pada proses filter adalah citra berformat .bmp. pada proses filter dengan citra yang akan dibangkitkan Speckle noise, probabilitas noise yang akan dibangkitkan adalah 1%, 5%,10% dan 15% sedangkan untuk pembangkitan Uniform noisedigunakan dua variable penentu yaitu varibel a dan bdimana nilai untuk variable a adalah 0.01, 0.1 dan 1 dan untuk b adalah 0.1 dan 0.5.

4.2.1 Proses filter dengan citra yang dibangkitkan noise

Proses filter ini dilakukan dengan pembangkitan noise terlebih dahulu terhadap citra aslinya, kemudian citra dengan noise tersebut difilter dengan metode Midpoint dan Yp Mean filter. Gambar proses filter dengan citra yang dibangkitkan noise dapat dilihat pada gambar 4.6.


(52)

Gambar 4.6 Form Proses Filter dengan citra yang dibangkitkan noise

Gambar 4.6 menunjukan proses filter dengan citra yang dibangkitkan noise yang diawali dari menginput citra asli pada sistem kemudian sistem akan menampilkan citra dan ukuran dimensinya. Lalu pengguna akan menuju ketahap pembangkitan noise dengan mengisi parameter pembangkitnya dan memilih jenis noise yang dibangkitkan. Setelah citra asli diberi noise kemudian citra tersebut akan difilter dengan Midpoint dan Yp Mean filter. Citra hasil metode filter akan tampil bersamaan dengan parameter pembandingnya yaitu MSE, PSNR dan runtime proses. Dimana ketiga parameter tersebut yang akan menjadi acuan pengguna untuk membandingkan metode filter yang digunakan sistem. Citra hasil dari kedua metode filter dapat disimpan dengan menekan tombol Save.

4.2.2 Proses filter dengan citra yang sudah memilikinoise

Proses filter ini dilakukan untuk citra yang dianggap sudah memiliki noise. Setelah citra berhasil diinput citra akan difilter dengan metode Midpoint dan Yp Mean filter. Gambar proses filter dengan citra yang sudah memilikinoise dapat dilihat pada gambar 4.7.

1

2 3


(53)

Gambar 4.7 Form Proses Filter dengan citra yang sudah memiliki noise

Gambar 4.7 menampilkan proses filter terhadap citra yang dianggap sudah memiliki noise. Proses berawal dari menginputkan citra yang sudah memiliki noise kemudian citra tersebut difilter dengan metode Midpoint filter atau Yp Mean filter. Sistem akan menampilkan citra hasil filter bersama dengan runtime prosesnya. Tampilan Citra hasil dan runtime proses yang akan menjadi acuan pengguna dalam membandingkan kinerja kedua metode tersebut dalam mereduksi citra yang sudah memiliki noise. Citra hasil dari kedua metode filter dapat disimpan dengan menekan tombol Save.

4.2.3 Hasil pengujian

Pengujian metode filter dilakukan terhadap 3 gambar berformat bitmap dengan ukuran dimensi yang bervariasi. Berikut adalah gambar asli yang diuji pada penelitian ini:

(a) (b) (c)

1

2 3


(54)

Gambar 4.8 (a) Fuji.bmp ukuran dimensi 1024 x 768 piksel, (b) Eagle.bmp ukuran dimensi 500 x 500 piksel dan (c) Dog.bmp ukuran dimensi 225 x 225 piksel

Tabel 4.1 Hasil pengujian metode Midpoint filter dan Yp Mean filter dalam

mereduksi citra yang dibangkitkan Specklenoise

Citra dengan Specklenoise Citra hasil Midpoint filter Citra hasil Yp Mean filter

Dog.bmp

Ukuran dimensi : 225 x 225 Probabilitas noise : 1%

R MSE : 23937.7

PSNR : 24.3 dB R

MSE : 23931.7 PSNR : 24.5 dB G MSE : 18739. 7

PSNR : 25.4 dB G

MSE : 18739 PSNR : 25.43 dB B MSE : 14636.5

PSNR : 26.5 dB B

MSE : 14636 PSNR : 26.55 dB

Runtime : 5.0076 Detik Runtime : 1.4196 Detik

Eagle.bmp

Ukuran dimensi : 500 x 500 Probabilitas noise : 1%

R MSE : 18070

PSNR : 25.56 dB R

MSE : 18068 PSNR : 25.56 dB G MSE : 16457

PSNR : 25.96 dB G

MSE : 16455.5 PSNR : 25.97 dB B MSE : 13840

PSNR : 26.71 dB B

MSE : 13839 PSNR : 26.71 dB

Runtime : 37.59Detik Runtime : 9.85 Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 Probabilitas noise : 1%

R MSE : 8336

PSNR : 28.9 dB R

MSE : 8336 PSNR : 28.92 dB G MSE : 13651

PSNR : 26.77 dB G

MSE : 13650 PSNR : 25.78 dB


(55)

B MSE : 20131

PSNR : 25.1 dB B

MSE : 20129 PSNR : 25.1 dB

Runtime : 160.2Detik Runtime : 34.35Detik

Dog.bmp

Ukuran dimensi : 225 x 225 Probabilitas noise : 5%

R MSE : 23934.6

PSNR : 24.34 dB R

MSE : 23929.6 PSNR : 24.35 dB G MSE : 18740.4

PSNR : 25.4 dB G

MSE : 18736.7 PSNR : 25.42 dB B MSE : 14636.5

PSNR : 26..47 dB B

MSE : 14634.3 PSNR : 26.48 dB

Runtime : 4.9764 Detik Runtime : 1.4196 Detik

Eagle.bmp

Ukuran dimensi : 500 x 500 Probabilitas noise : 5%

R MSE : 18073 PSNR : 25.56 dB R MSE : 18068 PSNR : 25.56 dB G MSE : 16460 PSNR : 25.96 dB G MSE : 16455 PSNR : 25.97 dB B MSE : 13844 PSNR : 26.71 dB B MSE : 13840 PSNR : 26.72 dB

Runtime : 38.46Detik Runtime : 9Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 Probabilitas noise : 5%

R MSE : 8336 PSNR : 28.9 dB R MSE : 8336 PSNR : 28.92 dB G MSE : 13651 PSNR : 26.77 dB G MSE : 13650 PSNR : 25.78 dB B MSE : 20131 PSNR : 25.1 dB B MSE : 20129 PSNR : 25.12 dB


(56)

Dog.bmp

Ukuran dimensi : 225 x 225 Probabilitas noise : 10%

R MSE : 23939.1

PSNR : 24.3 dB R

MSE : 23928.7 PSNR : 24.34 dB G MSE : 18741.4

PSNR : 25.4 dB G

MSE : 18734.2 PSNR : 25.4 dB B MSE : 14637.6

PSNR : 26..47 dB B

MSE : 14631.2 PSNR : 26.48 dB

Runtime : 5.0076 Detik Runtime : 1.404 Detik

Eagle.bmp

Ukuran dimensi : 500 x 500 Probabilitas noise : 10%

R MSE : 18077

PSNR : 25.55 dB R

MSE : 18068 PSNR : 25.56 dB G MSE : 16463

PSNR : 25.96 dB G

MSE : 16455 PSNR : 25.97 dB B MSE : 13847

PSNR : 26.71 dB B

MSE : 13840 PSNR : 26.72 dB

Runtime : 38Detik Runtime : 9.04Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 Probabilitas noise : 10%

R MSE : 8338

PSNR : 28.92 dB R

MSE : 8335 PSNR : 28.92 dB G MSE : 13653

PSNR : 26.77 dB G

MSE : 13648 PSNR : 26.78 dB B MSE : 20148

PSNR : 25.1 dB B

MSE : 20135 PSNR : 25.1 dB

Runtime : 160.2Detik Runtime : 34.31Detik

Dog.bmp

Ukuran dimensi : 225 x 225 Probabilitas noise : 15%

R MSE : 23944.2

PSNR : 24.33 dB R

MSE : 23927.9 PSNR : 24.34 dB G MSE : 18743.4

PSNR : 25.4 dB G

MSE : 18732.6 PSNR : 25.4 dB B MSE : 14637.6 B MSE : 14630


(57)

PSNR : 26.47 dB PSNR : 26.5 dB

Runtime : 5.038 Detik Runtime : 1.4508 Detik

Eagle.bmp

Ukuran dimensi : 500 x 500 Probabilitas noise : 15%

R MSE : 18081

PSNR : 25.55 dB R

MSE : 18068 PSNR : 25.56 dB G MSE : 16466

PSNR : 25.96 dB G

MSE : 16455 PSNR : 25.97 dB B MSE : 13850

PSNR : 26.71 dB B

MSE : 13839 PSNR : 26.72 dB

Runtime : 38Detik Runtime : 8.54Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 Probabilitas noise : 15%

R MSE : 8339

PSNR : 28.91 dB R

MSE : 8334 PSNR : 28.92 dB G MSE : 13655

PSNR : 26.78 dB G

MSE : 13647 PSNR : 26.78 dB B MSE : 20155

PSNR : 25.1 dB B

MSE : 20137 PSNR : 25.1 dB

Runtime : 160.7Detik Runtime : 34.35Detik

Table 4.1 menampilkan hasil pengujian metode Midpoint filter dan Yp Mean filter dalam mereduksi Specklenoise. Dari citra hasil yang ditampilkan kedua metode tersebut baik dalam mereduksi Specklenoise hal itu terlihat dari bintik-bintik Specklenoise terlihat samar pada citra hasil metode filter. Pada kedua metode diatas terlihat bahwa semakin besar probabilitas noise maka semakin besar pula nilai MSE nya namun berbanding terbalik dengan nilai PSNR nya, tetapi nilai runtime proses tidak terpengaruh oleh probabilitas noise. Dari parameter pembanding yang ditampikan Metode Yp Mean filter memiliki nilai MSE lebih kecil, nilai PSNR lebih besar dan runtime proses yang lebih singkat dari pada Midpoint filter. Hal tersebut menunjukan bahwa Metode Yp Mean filter lebih baik dalam mereduksi Specklenoise.

Tabel 4.2 Hasil pengujian metode Midpoint filter dan Yp Mean filter dalam


(58)

Citra dengan Uniformnoise Citra hasil Midpoint filter Citra hasil Yp Mean filter

Dog.bmp

Ukuran dimensi : 225 x 225 a : 0.01 dan b : 0.1

R MSE : 23916.4

PSNR : 24.34 dB R

MSE : 23915.8 PSNR : 24.34 dB G MSE : 18725.5

PSNR : 25.4 dB G

MSE : 18725 PSNR : 25.4 dB B MSE : 14624.3

PSNR : 26.48 dB B

MSE : 14623.8 PSNR : 26.48 dB

Runtime : 4.99203 Detik Runtime : 1.38841 Detik

Eagle.bmp

Ukuran dimensi : 500 x 500 a : 0.01 dan b : 0.1

R MSE : 18057

PSNR : 25.56 dB R

MSE : 18056 PSNR : 25.56 dB G MSE : 16445

PSNR : 25.97 dB G

MSE : 16444 PSNR : 25.97 dB B MSE : 13830

PSNR : 26.72 dB B

MSE : 13829 PSNR : 26.72 dB

Runtime : 37.59Detik Runtime : 8.5 Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 a : 0.01 dan b : 0.1

R MSE : 8328

PSNR : 28.92 dB R

MSE : 8328 PSNR : 28.93 dB G MSE : 13641

PSNR : 26.78 dB G

MSE : 13640 PSNR : 26.78 dB B MSE : 20118

PSNR : 25.1 dB B

MSE : 20118 PSNR : 25.1 dB


(59)

Dog.bmp

Ukuran dimensi : 225 x 225 a : 0.01 dan b : 0.5

R MSE : 23916.4

PSNR : 24.34 dB R

MSE : 23915.8 PSNR : 24.34 dB G MSE : 18725.6

PSNR : 25.4 dB G

MSE : 18725 PSNR : 25.4 dB B MSE : 14624.3

PSNR : 26.48 dB B

MSE : 14623.8 PSNR : 26.48 dB

Runtime : 5.0388 Detik Runtime : 1.45081 Detik

Eagle.bmp

Ukuran dimensi : 500 x 500 a : 0.01 dan b : 0.5

R MSE : 18057 PSNR : 25.56 dB R MSE : 18056 PSNR : 25.56 dB G MSE : 16445 PSNR : 25.97 dB G MSE : 16443 PSNR : 25.97 dB B MSE : 13830 PSNR : 26.72 dB B MSE : 13829 PSNR : 26.72 dB

Runtime : 37.81Detik Runtime : 8.54Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 a : 0.01 dan b : 0.5

R MSE : 8329 PSNR : 28.92 dB R MSE : 8328 PSNR : 28.93 dB G MSE : 13641 PSNR : 26.78 dB G MSE : 13640 PSNR : 26.78 dB B MSE : 20119 PSNR : 25.1 dB B MSE : 20118 PSNR : 25.1 dB

Runtime : 160Detik Runtime : 34.25Detik

Dog.bmp

Ukuran dimensi : 225 x 225 a : 0.1 dan b : 0.1

R MSE : 23862.2

PSNR : 24.35 dB R

MSE : 23855.6 PSNR : 24.35 dB G MSE : 18669.4

PSNR : 25.4 dB G

MSE : 18664.6 PSNR : 25.4 dB B MSE : 14572

PSNR : 26.5 dB B

MSE : 14568.9 PSNR : 26.5 dB


(60)

Eagle.bmp

Ukuran dimensi : 500 x 500 a : 0.1 dan b : 0.1

R MSE : 18015

PSNR : 25.57 dB R

MSE : 18011 PSNR : 25.57 dB G MSE : 16405

PSNR : 25.98 dB G

MSE : 16402 PSNR : 25.98 dB B MSE : 13795

PSNR : 26.73 dB B

MSE : 13793 PSNR : 26.73 dB

Runtime : 37.75Detik Runtime : 8.58Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 a : 0.1 dan b : 0.1

R MSE : 8295

PSNR : 28.94 dB R

MSE : 8293 PSNR : 28.94 dB G MSE : 13601

PSNR : 25.79 dB G

MSE : 13597 PSNR : 26.8 dB B MSE : 20094

PSNR : 25.1 dB B

MSE : 20091 PSNR : 25.1 dB

Runtime : 159.8Detik Runtime : 34.25Detik

Dog.bmp

Ukuran dimensi : 225 x 225 a : 0.1 dan b : 0.5

R MSE : 23862.2

PSNR : 24.35 dB R

MSE : 23855.6 PSNR : 24.35 dB G MSE : 18669.4

PSNR : 25.4 dB G

MSE : 18664.6 PSNR : 25.4 dB B MSE : 14572.5

PSNR : 26.5 dB B

MSE : 14568.9 PSNR : 26.5 dB

Runtime : 4.96083 Detik Runtime : 1. 40401

Eagle.bmp

Ukuran dimensi : 500 x 500 a : 0.1 dan b : 0.5

R MSE : 18015

PSNR : 25.57 dB R

MSE : 18011 PSNR : 25.58 dB G MSE : 16405

PSNR : 25.98 dB G

MSE : 16402 PSNR : 25.98 dB


(61)

B MSE : 13795

PSNR : 26.73 dB B

MSE : 13793 PSNR : 26.73 dB

Runtime : 37.72 Detik Runtime : 8.52Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 a : 0.1 dan b : 0.5

R MSE : 8295

PSNR : 28.94 dB R

MSE : 8293 PSNR : 28.94 dB G MSE : 13601

PSNR : 25.79 dB G

MSE : 13597 PSNR : 26.8 dB B MSE : 20094

PSNR : 25.1 dB B

MSE : 20091 PSNR : 25.1 dB

Runtime : 160.8Detik Runtime : 34.19Detik

Dog.bmp

Ukuran dimensi : 225 x 225 a : 1 dan b : 0.1

R MSE : 23824.6

PSNR : 24.36 dB R

MSE : 23823.6 PSNR : 24.36 dB G MSE : 18625.6

PSNR : 25.43 dB G

MSE : 18624.2 PSNR :25.4 dB B MSE : 14526.7

PSNR : 26.5 dB B

MSE :14524.6 PSNR : 26.5 dB

Runtime : 4.96083 Detik Runtime : 1.45081

Eagle.bmp

Ukuran dimensi : 500 x 500 a : 1 dan b : 0.1

R MSE : 17980

PSNR : 25.58 dB R

MSE : 17978 PSNR : 25.58 dB G MSE : 16370

PSNR : 25.9 dB G

MSE : 16368 PSNR : 25.9 dB B MSE : 13761

PSNR : 26.74 dB B

MSE : 13759 PSNR : 26.74 dB

Runtime : 37.37Detik Runtime : 8.67Detik


(62)

Ukuran dimensi : 1024 x 768 a : 1 dan b : 0.1

PSNR : 28.96 dB PSNR : 28.96 dB G MSE : 13566

PSNR : 26.8 dB G

MSE : 13564 PSNR : 26.8 dB B MSE : 20077

PSNR : 25.1 dB B

MSE : 20075 PSNR : 25.1 dB

Runtime : 162.2Detik Runtime : 34.25Detik

Dog.bmp

Ukuran dimensi : 225 x 225 a : 1 dan b : 0.5

R MSE : 23824.6

PSNR : 24.36 dB R

MSE : 23823.6 PSNR : 24.36 dB G MSE : 18625.6

PSNR : 25.43 dB G

MSE : 18624.2 PSNR :25.4 dB B MSE : 14526.7

PSNR : 26.5 dB B

MSE :14524.6 PSNR : 26.5 dB

Runtime : 4.99203 Detik Runtime : 1.48201 Detik

Eagle.bmp

Ukuran dimensi : 500 x 500 a : 1 dan b : 0.5

R MSE : 17980

PSNR : 25.58 dB R

MSE : 17978 PSNR : 25.58 dB G MSE : 16370

PSNR : 25.9 dB G

MSE : 16368 PSNR : 25.9 dB B MSE : 13761

PSNR : 26.74 dB B

MSE : 13759 PSNR : 26.74 dB

Runtime : 37.37Detik Runtime : 8.67Detik

Fuji.bmp

Ukuran dimensi : 1024 x 768 a : 1 dan b : 0.5

R MSE : 8258

PSNR : 28.96 dB R

MSE : 8225 PSNR : 28.96 dB G MSE : 13566

PSNR : 26.8 dB G

MSE : 13564 PSNR : 26.8 dB B MSE : 20077

PSNR : 25.1 dB B

MSE : 20075 PSNR : 25.1 dB


(63)

Table 4.2 menampilkan hasil pengujian metode Midpoint filter dan Yp Mean filter dalam mereduksi Uniformnoise. Dari citra hasil yang ditampilkan kedua metode tersebut baik dalam mereduksi Uniformnoise hal itu terlihat dari bintik-bintik Uniformnoise terlihat samar pada citra hasil metode filter. Dari parameter pembanding yang ditampikan Metode Yp Mean filter memiliki nilai MSE lebih kecil, nilai PSNR lebih besar dan runtime proses yang lebih singkat dari pada Midpoint filter dalam mereduksi Uniformnoise. Hal tersebut menunjukan bahwa Metode Yp Mean filter lebih baik dalam mereduksi Specklenoise.

Tabel 4.3 Hasil pengujian metode Midpoint filter dan Yp Mean filter dalam

mereduksi citra yang sudah memiliki noise

Citra dengan noise Citra hasil Midpoint filter Citra hasil Yp Mean filter

Feb.bmp

Ukuran dimensi 300 x 133 piksel Runtime : 4.1028 Detik Runtime : 3.2248 Detik

Febby.bmp

Ukuran dimensi 300 x 133 Runtime : 4.321 Detik Runtime : 3.198 Detik

Biby.bmp


(1)

guidata(hObject,handles); axes(handles.citraAsli); imshow(handles.citra); [m n]=size(handles.citra);

set(handles.panjang,'String',n); set(handles.lebar,'String',m);

msgbox('Citra berhasil diinputkan','Sukses'); else

return; end;

% Tombol Filter Midpoint

function btnFilterMid_Callback(hObject, eventdata, handles) global runtime1;

runtime1 = cputime;

%Progress Bar

itr = 100000; %number of iteration process

h=waitbar(0,'Please wait..'); %initialization progressbar vblock = 100; %update progressbar every vblock

k = 1;

for i=1:itr %loop data

if(k*vblock==i) %update progressbar

waitbar(i/itr); %setting progressbar k = k+1;

end

% PROCESS FUNCTION end

close(h) %close progressbar

citraAsli = getimage(handles.citraAsli); citraAsli = im2double(citraAsli);

pro = 0.00001;

temp= citraAsli +sqrt(12*pro)*citraAsli.*(rand(size(citraAsli))-.5);

[m,n,c] = size(temp); ukuran = 3;

setengah = floor(ukuran / 2); Citra_Midpoint = temp;

for i = 1+setengah : m-setengah for j = 1+setengah: n-setengah

for co = 1:c %co menerangkan color maskP = zeros(3,3);

for k = -setengah : setengah for l = -setengah : setengah

maskP(setengah+1-k,setengah+1-l)= temp(i-k,j-l,co);

end end

midP=maskP(:);

midP=(min(midP)+max(midP))/2; Citra_Midpoint(i,j,co) = midP;

end end end

axes(handles.citraHasilMid); imshow(Citra_Midpoint);


(2)

runtime1 = cputime -runtime1; global runtime1;

set(handles.editmid,'String',runtime1);

% Tombol Filter Yp Mean

function btnFilterYp_Callback(hObject, eventdata, handles)

global runtime; runtime = cputime; % Speckle 0.001%

citraAsli = getimage(handles.citraAsli); citraAsli = im2double(citraAsli);

pro = 0.00001; %probabilitas noise Speckle 0.001%

temp = citraAsli +sqrt(12*pro)*citraAsli.*(rand(size(citraAsli))-.5);%proses pembangkitan noise Speckle

%Prgress Bar

itr = 100000; %number of iteration process

h=waitbar(0,'Please wait..'); %initialization progressbar vblock = 100; %update progressbar every vblock

k = 1;

for i=1:itr %loop data

if(k*vblock==i) %update progressbar

waitbar(i/itr); %setting progressbar k = k+1;

end end

close(h) %close progressbar

[m,n,c] = size(temp); ukuran = 3;

orde = 2;

setengah = floor(ukuran / 2); citra_Yp = double(temp); for i=1+setengah : m-setengah for j=1+setengah: n-setengah

for co = 1:c %co menyatakan color jum = 0;

for p = -setengah : setengah for q = -setengah : setengah

jum = jum + temp(i+p, j+q,co)^orde / (ukuran * ukuran);

end end

citra_Yp(i,j,co) = jum ^ (1/orde); end

end end

axes(handles.citraHasilYp); imshow(citra_Yp);

runtime = cputime -runtime; global runtime;

set(handles.edityp,'String',runtime);

% Tombol Save Citra Midpoint

function btnSaveMid_Callback(hObject, eventdata, handles) [name,path] = uiputfile({'*.bmp'},'Save Image');


(3)

if isequal([name,path],[0,0]) return

else

Hasil = getimage(handles.citraHasilMid); imwrite(Hasil, strcat(path,name));

end

% Tombol Save Citra Yp Mean

function btnSaveYp_Callback(hObject, eventdata, handles) [name,path] = uiputfile({'*.bmp'},'Save Image');

if isequal([name,path],[0,0]) return

else

Hasil = getimage(handles.citraHasilYp); imwrite(Hasil, strcat(path,name)); end

%

-function home_Callback(hObject, eventdata, handles) ProgramFilter;

delete(handles.figure1);

%

-function filter_Callback(hObject, eventdata, handles)

%

-function help_Callback(hObject, eventdata, handles) FormHelp;

delete(handles.figure1);

%

-function about_Callback(hObject, eventdata, handles) FormAbout;

delete(handles.figure1);

%

-function exit_Callback(hObject, eventdata, handles)

selection = questdlg(['Keluar dari Aplikasi ini ?'],['Keluar dari Aplikasi ini ...'],'Ya','Tidak','Ya');

if strcmp(selection,'Tidak') return;

end;

delete(handles.figure1);

%

-function addnoise_Callback(hObject, eventdata, handles) Form_Add_Noise;

delete(handles.figure1);

% Tombol Clear

function btnClear_Callback(hObject, eventdata, handles) cla(handles.citraAsli);

cla(handles.citraHasilMid); cla(handles.citraHasilYp);

set(handles.panjang,'string',''); set(handles.lebar,'string',''); set(handles.editmid,'string','');


(4)

set(handles.edityp,'string','');

4. Form Help

function varargout = FormHelp(varargin) gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @FormHelp_OpeningFcn, ... 'gui_OutputFcn', @FormHelp_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 FormHelp_OpeningFcn(hObject, eventdata, handles, varargin) handles.output = hObject;

guidata(hObject, handles);

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

%

-function home_Callback(hObject, eventdata, handles) ProgramFilter;

delete(handles.figure1);

function filter_Callback(hObject, eventdata, handles)

function menuAbout_Callback(hObject, eventdata, handles) FormAbout;

delete(handles.figure1);

function exit_Callback(hObject, eventdata, handles)

selection = questdlg(['Keluar dari Aplikasi ini ?'],['Keluar dari Aplikasi ini ...'],'Ya','Tidak','Ya');

if strcmp(selection,'Tidak') return;

end;

delete(handles.figure1);

function subMenuAdd_Callback(hObject, eventdata, handles) Form_Add_Noise;

delete(handles.figure1);

function subMenuNoNoise_Callback(hObject, eventdata, handles) formNoNoise;

delete(handles.figure1);


(5)

function varargout = FormAbout(varargin) gui_Singleton = 1;

gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ...

'gui_OpeningFcn', @FormAbout_OpeningFcn, ... 'gui_OutputFcn', @FormAbout_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

% End initialization code - DO NOT EDIT

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

% Update handles structure guidata(hObject, handles);

function varargout = FormAbout_OutputFcn(hObject, eventdata, handles) foto = imread('Fanny.jpg');

axes(handles.citraAsli); imshow(foto);

varargout{1} = handles.output;

%

-function home_Callback(hObject, eventdata, handles) ProgramFilter;

delete(handles.figure1);

function filter_Callback(hObject, eventdata, handles)

function subMenuAdd_Callback(hObject, eventdata, handles) Form_Add_Noise;

delete(handles.figure1);

function subMenuNoNoise_Callback(hObject, eventdata, handles) formNoNoise;

delete(handles.figure1);

function help_Callback(hObject, eventdata, handles) FormHelp;

delete(handles.figure1);

function exit_Callback(hObject, eventdata, handles)

selection = questdlg(['Keluar dari Aplikasi ini ?'],['Keluar dari Aplikasi ini ...'],'Ya','Tidak','Ya');

if strcmp(selection,'Tidak') return;

end;


(6)

CURRICULUM VITAE

Nama

: Fanny Fairina N

Alamat Sekarang

: Jln. Kiwi 8 No.177 Perumnas Mandala Medan

Alamat Orang Tua

: Jln. Kiwi 8 No.177 Perumnas Mandala Medan

Telp/Hp

: 089623796686

Email

Riwayat Pendidikan

SD Muhammadiyah 30 Medan dari Tahun 1998 s/d Tahun 2004

SMP Negeri 13 Medan dari Tahun 2004 s/d Tahun 2007

SMU Negeri 8 Medan dari Tahun 2007 s/d Tahun 2010

Universitas Sumatera Utara dari Tahun 2010 s/d Tahun 2014

Keahlian

Bahasa : Bahasa Indonesia, Bahasa Ingrris

Bahasa PEmrograman : MATLAB, C++, C#

Kursus yang diikuti