Implementasi Lowpass Filtering Dan Highpass Filtering Untuk Perbaikan Kualitas Citra Digital

(1)

IMPLEMENTASI LOWPASS FILTERING DAN HIGHPASS

FILTERING UNTUK PERBAIKAN KUALITAS

CITRA DIGITAL

SKRIPSI

EFRIENNI TAMPUBOLON 091401026

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2013


(2)

IMPLEMENTASI LOWPASS FILTERING DAN HIGHPASS FILTERING UNTUK PERBAIKAN KUALITAS CITRA DIGITAL

SKRIPSI

DiajukanuntukmelengkapitugasakhirdanmemenuhisyaratmencapaigelarSarjanaKompu ter

EFRIENNI TAMPUBOLON 091401026

PROGRAM STUDI S1 ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA

MEDAN 2013


(3)

PERSETUJUAN

Judul : IMPLEMENTASI LOWPASS FILTERING DAN

HIGHPASS FILTERING UNTUK PERBAIKAN KUALITAS CITRA DIGITAL

Kategori : SKRIPSI

Nama : EFRIENNI TAMPUBOLON

Nomor Induk Mahasiswa : 091401026

Program Studi : SARJANA (S1) ILMU KOMPUTER

Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

INFORMASI

Diluluskan di

Medan, 22 Agustus 2013 Komisi Pembimbing :

Pembimbing 2 Pembimbing 1

Dian Wirdasari, S.Si, M.Kom Maya Silvi Lydia, B.Sc.,M.Sc NIP 1982 0923 2010 1220 02 NIP1974 0127 2002 1220 01

Diketahui/Disetujui oleh

Program Studi S1 Ilmu Komputer Ketua,

Dr. Poltak Sihombing, M.Kom NIP.196203171991031001


(4)

PERNYATAAN

IMPLEMENTASI LOWPASS FILTERING DAN HIGHPASS FILTERING UNTUK PERBAIKAN KUALITAS CITRA DIGITAL

SKRIPSI

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

Medan, 22 Agustus 2013

Efrienni Tampubolon 091401026


(5)

PENGHARGAAN

Puji dan syukur penulispanjatkankehadirat Tuhan Yang Maha Kuasa atas segala berkat dan kasih karunia-Nya sehingga penulis dapat menyelesaikan penyusunan 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 Penguji I yang telah memberikan kritik dan saran dalam penyempurnaan skripsi ini.

4. Ibu Maya Silvi Lydia, B.Sc, M.Sc, selaku Sekretaris Program Studi S1 Ilmu Komputer dan Dosen Pembimbing I yang telah memberikan masukan dalam penyempurnaan skripsi ini.

5. Ibu Dian Wirdasari, S.Si, M.Kom, selaku Dosen Pembimbing II yang telah memberikan masukan kepada penulis dalam penyempurnaan skripsi ini. 6. Bapak Herriyance,ST,M.Kom, selaku Dosen Penguji II yang telah

memberikan kritik dan saran dalam penyempurnaan skripsi ini.

7. Semua dosen Program Studi S1 Ilmu Komputer Fasilkom-TIUSU, dan pegawai di Ilmu Komputer Fasilkom-TI USU.

8. Bapak saya Selamat Tampubolon, ibu saya Rita Metiana Manalu,Spd, kakak saya Friska Tampubolon,Amk, adik saya John Lindon Tampubolon, dan Yessi Sinaga yang telah memberikan dukungan kepada penulis selama menyelesaikan skripsi ini.

9. Teman-teman kuliah saya khususnya Isman Santoso,S.Kom, Ales Sanro Sotardodo,S.Kom, Martinelly,S.Kom, Tika, Tian, Fransiska, Ardi, Nurul dan teman-teman di kost, Zetty, Kak Rida, Kak Corry, Melda, Putri, Kak Uli yang telah memberikan semangat untuk penulisan skripsi ini.


(6)

Penulis menyadari bahwa skripsi ini masih jauh dari sempurna. Untuk itu penulis akan lebih banyak belajar untuk kedepannya lagi. Kiranya Semoga Tuhan Yang Maha Kuasa memberikan berkat dan karunia kepada semua pihak yang telah banyak membantu, memberi perhatian dan dukungan kepada penulis dalam menyelesaikan skripsi ini.

Medan, 22 Agustus 2013


(7)

ABSTRAK

Pada skripsi ini masalah yang diangkat adalah perbaikan kualitas citra dengan tingkat kecerahan yang tinggi dan perbaikan tepian objek citra. Untuk mendapatkan citra dengan kualitas yang lebih baik digunakan proses filtering. Citra awal yang akan diproses adalah citra grayscale. Adapun metode yang akan digunakan penulis untuk proses perbaikan citra digital ini adalah metode Lowpass Filter dan Highpass Filter yang bekerja dalam domain frekuensi. Metode Lowpass Filter akan digunakan untuk pelembutan citra (image smoothing) dimana cara kerja metode ini menekan frekuensi tinggi dan melewatkan frekuensi rendah dalam citra. Sedangkan metode Highpass Filter akan digunakan untuk perbaikan tepian objek/memperjelas tepian objek (edge sharpening) dimana cara kerja metode ini menekan frekuensi rendah dan melewatkan frekuensi tinggi pada citra. Format citra yang akan digunakan dalam proses filtering yakni *.JPG, *.PNG, *.BMP. Sebelum citra mengalami proses filteringterlebih dahulu ditransformasi fourier untuk mendapatkan nilai intensitas piksel yang akan digunakan dalam proses perhitungan konvolusi. Selanjutnya untuk kedua sistem terlebih dahulu diinputkan nilai D0yang merupakan cutoff frekuensi dari hasil transformasi fouriernya.

Implementasi sistem menggunakan perangkat lunak Matlab R2012a. Citra hasil filtering ditampilkan berdasarkan tingkat ketajaman ideal, butterworth, dan gaussian. Berdasarkan pengujian yang dilakukan, tingkat ketajaman Gaussian lebih baik dalam metode Lowpass Filtering dan tingkat ketajaman Butterworth lebih baik untuk metode Highpass Filtering. Aplikasi menggunakan parameter pembanding kualitas yakni MSE (Mean Squared Eror) dan PSNR (Peak Signal to Noise Ratio).

Katakunci : Filtering, Citra, Lowpass Filter, Highpass Filter, Pelembutan citra, Penajaman Tepi.


(8)

IMPLEMENTATION LOWPASS FILTERING AND HIGHPASS FILTERING FOR IMAGE ENHANCEMENT

ABSTRACT

In this paper,the issues raisedareimprovedimagequalitywitha highbrightnessleveland improvement theobjectedgeimage. Toobtainimageswithbetter qualityusedfilteringprocess. Initial imageto be processedis agrayscaleimage. The methodthat will beused by the authortoprocessdigitalimage enhancementare LowpassFilter’s methodandHighpassfilter’ methodthat worksin the frequency domain. Lowpassfiltermethodwillbe usedforsofteningthe image (imagesmoothing) in whichthismethod worksuppresshighfrequencyandpass low frequencyin theimage. WhileHighpassFiltermethodwillbe usedtorepairthe banks ofobjects/clarify theobjectedges(edge sharpening)wherethismethod worksuppresslow frequencyandmissedhighfrequencyin the image. For image’s format will use in filtering process such as *.JPG, *.PNG, *.BMP. Beforeundergoing a process offilteringthe imagewill firstFouriertransformedtoobtainpixelintensity valuesto be

used inthecalculation ofconvolution. Next up

forbothsystemsfirstinputvaluecutofffrequencyD0isatransformationfourier results. System will implementationusingMatlabR2012a. Imagefilteringresultscan be seenbythe sharpnessideal, butterworth, andgaussian. Gaussian’s sharpness give the best result for filtering process who used in Lowpass Filtering and Butterworth’s sharpness give the best result for Highpass Filtering. Applicationsusingcomparativequalityparameterssuch as MSE(Mean SquaredError) andPSNR(Peak Signalto NoiseRatio).

Keywords : Filtering, Image, Lowpass Filter, Highpass Filter, Image smoothing, Edge Sharpening


(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.1 Latar Belakang 1 1.2 Rumusan Masalah 2

1.3 Batasan Masalah 3

1.4 Tujuan Penelitian 3

1.5 Manfaat Penelitian 3 1.6 Metodologi Penulisan 4 1.7 Sistematika Penulisan 5 BabII Landasan Teori 2.1 Citra 6 2.1.1 Defenisi Citra Digital 6 2.1.2 Representasi Citra Digital 7

2.1.3 Elemen-elemen Citra Digital 8 2.1.4 Jenis-Jenis Citra Digital 12

2.1.5 Format Citra Digital 12

2.2 Peningkatan Kualitas Citra Digital 14 2.2.1 Pelembutan Citra 15

2.2.2 Penajaman Citra 15

2.3 Pengolahan Citra dalam Domain Frekuensi 16 2.3.1 Transformasi Fourier Diskrit 2-D 16

2.3.2 DFT Terpusat 17

2.3.3Konsep Filter dalam Domain Frekuensi 19

2.4 Peningkatan Kualitas Citra Domain Frekuensi 21

2.4.1 Filter Penghalusan Domain Frekuensi 21

2.4.1.1 Ideal Lowpass Filter 22

2.4.1.2 Butterworth Lowpass Filter 22


(10)

2.4.2 Filter Penajaman Domain Frekuensi 26

2.4.2.1 Ideal Highpass Filter 27

2.4.2.2 Butterworth Highpass Filter 27

2.4.2.3 Gaussian Highpass Filter 27

2.5 MSE dan PSNR 28

2.5.1 MSE 28

2.5.2 PSNR 28

Bab III Analisis dan Perancangan Sistem 3.1 AnalisisMasalah 29

3.2 Analisis Kebutuhan Sistem 30

3.2.1 Kebutuhan Fungsional Sistem 30

3.2.2 Kebutuhan Non-Fungsional Sistem 31

3.3 Perancangan Sistem 31

3.3.1 Perancangan Sistem dengan Use Case Diagram 31

3.3.2 Analisis Proses Sistem 38

3.3.3 Perancangan Interface 48

3.3.3.1 Rancangan interface form utama 48

3.3.3.2 Rancangan interface formLowpass Filter 49

3.3.3.3 Rancangan interface formHighpass Filter 52

3.3.3.4 Rancangan interface form Penuntun Aplikasi 53

3.3.3.5 Rancangan interface form Tentang 54

Bab IV Implementasi dan Pengujian 4.1 Implementasi 55

4.1.1 Form Menu Utama 55

4.1.2 Form Pengujian Lowpass Filter 56

4.1.3 Form Pengujian Highpass Filter 57

4.2 Pengujian 57

4.2.1 Proses Pemfilteran Lowpass Filtering 57

4.2.2 Proses Pemfilteran Highpass Filtering 59

4.2.3 Proses Pengujian LPF untuk Image Smoothing 59

4.2.4 Proses Pengujian HPF untuk Edge Sharpening 66

Bab V Kesimpulan dan Saran 5.1 Kesimpulan 77

5.2 Saran 78

Daftar Pustaka 79

Lampiran Listing Program A-1


(11)

DAFTAR TABEL

Nomor

Tabel Nama Tabel Halaman

2.1 3.1 3.2 3.3 3.4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16

Penyimpanan citra warna di dalam memori Dokumentasi Naratif Use Case Pilih Jenis Filter Dokumentasi Naratif Use Case Lowpass Filter Dokumentasi Naratif Use Case Highpass Filter Perubahan intensitas piksel dalam proses filter Perbandingan nilai MSE, PSNR hasil filter ILPF 1

Lanjutan Perbandingan nilai MSE, PSNR hasil filter BLPF 1 Lanjutan Perbandingan nilai MSE,PSNR hasil filter GLPF 1 Perbandingan nilai MSE, PSNR hasil filter ILPF 2

Lanjutan Perbandingan nilai MSE, PSNR hasil filter BLPF 2 Lanjutan Perbandingan nilai MSE, PSNR hasil filter GLPF 2 Perbandingan nilai MSE, PSNR hasil filter IHPF 1

Lanjutan Perbandingan nilai MSE, PSNR hasil filter BHPF 1 Lanjutan Perbandingan nilai MSE, PSNR hasil filter GHPF 1 Perbandingan nilai MSE, PSNR hasil filter IHPF 2

Lanjutan Perbandingan nilai MSE, PSNR hasil filter BHPF 2 Lanjutan Perbandingan nilai MSE, PSNR hasil filter GHPF 2 Nilai MSE,PSNR , dan Rata-rata metode LPF 1

Nilai MSE,PSNR, dan Rata-rata metode LPF 2 Niai MSE,PSNR, dan Rata-rata metode HPF 1 Niai MSE,PSNR, dan Rata-rata metode HPF 2

11 33 34 35 47 60 61 62 63 64 65 67 68 69 70 71 72 73 74 75 76


(12)

DAFTAR GAMBAR

Nomor

Gambar Nama Gambar Halaman

2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 4.1 4.2 4.3 4.4 4.5 4.6

Kolom dan baris data raster Koordinat Citra 2D Citra Penggambaran Kuantisasi Contoh citra biner

Contoh citra grayscale Contoh citra warna Contoh Image Smoothing Contoh Edge Sharpening Citra Transformasi Fourier Spektrum Fourier 2D Proses pemusatan DFT Filter Transfer Function

Langkah Dasar Pemfilteran Domain Frekuensi Diagram Ishikawa Analisis Permasalahan Use Case Diagram Sistem yang akan dibangun Activity Diagram Pilih Jenis Filter

Activity Diagram Lowpass Filter Activity Diagram Highpass Filter

Sequence Diagram tahap awal Lowpass Filter Sequence Diagram tahap awal Highpass Filter Sequence Diagram proses Filter

Rancangan interface form utama

Rancangan interface form pengujian LPF Rancangan interface form pengujian HPF Rancangan interface form penuntun aplikasi Rancangan interface form tentang penulis Form Menu Utama

Form Pengujian Lowpass Filter Form Pengujian Highpass Filter Message Box proses filter

Proses Filter metode Lowpass Filter Proses Filter metode Highpass Filter

7 7 8 10 10 11 15 16 17 18 19 20 20 29 32 33 35 37 38 39 40 48 49 51 53 54 55 56 57 58 58 59


(13)

ABSTRAK

Pada skripsi ini masalah yang diangkat adalah perbaikan kualitas citra dengan tingkat kecerahan yang tinggi dan perbaikan tepian objek citra. Untuk mendapatkan citra dengan kualitas yang lebih baik digunakan proses filtering. Citra awal yang akan diproses adalah citra grayscale. Adapun metode yang akan digunakan penulis untuk proses perbaikan citra digital ini adalah metode Lowpass Filter dan Highpass Filter yang bekerja dalam domain frekuensi. Metode Lowpass Filter akan digunakan untuk pelembutan citra (image smoothing) dimana cara kerja metode ini menekan frekuensi tinggi dan melewatkan frekuensi rendah dalam citra. Sedangkan metode Highpass Filter akan digunakan untuk perbaikan tepian objek/memperjelas tepian objek (edge sharpening) dimana cara kerja metode ini menekan frekuensi rendah dan melewatkan frekuensi tinggi pada citra. Format citra yang akan digunakan dalam proses filtering yakni *.JPG, *.PNG, *.BMP. Sebelum citra mengalami proses filteringterlebih dahulu ditransformasi fourier untuk mendapatkan nilai intensitas piksel yang akan digunakan dalam proses perhitungan konvolusi. Selanjutnya untuk kedua sistem terlebih dahulu diinputkan nilai D0yang merupakan cutoff frekuensi dari hasil transformasi fouriernya.

Implementasi sistem menggunakan perangkat lunak Matlab R2012a. Citra hasil filtering ditampilkan berdasarkan tingkat ketajaman ideal, butterworth, dan gaussian. Berdasarkan pengujian yang dilakukan, tingkat ketajaman Gaussian lebih baik dalam metode Lowpass Filtering dan tingkat ketajaman Butterworth lebih baik untuk metode Highpass Filtering. Aplikasi menggunakan parameter pembanding kualitas yakni MSE (Mean Squared Eror) dan PSNR (Peak Signal to Noise Ratio).

Katakunci : Filtering, Citra, Lowpass Filter, Highpass Filter, Pelembutan citra, Penajaman Tepi.


(14)

IMPLEMENTATION LOWPASS FILTERING AND HIGHPASS FILTERING FOR IMAGE ENHANCEMENT

ABSTRACT

In this paper,the issues raisedareimprovedimagequalitywitha highbrightnessleveland improvement theobjectedgeimage. Toobtainimageswithbetter qualityusedfilteringprocess. Initial imageto be processedis agrayscaleimage. The methodthat will beused by the authortoprocessdigitalimage enhancementare LowpassFilter’s methodandHighpassfilter’ methodthat worksin the frequency domain. Lowpassfiltermethodwillbe usedforsofteningthe image (imagesmoothing) in whichthismethod worksuppresshighfrequencyandpass low frequencyin theimage. WhileHighpassFiltermethodwillbe usedtorepairthe banks ofobjects/clarify theobjectedges(edge sharpening)wherethismethod worksuppresslow frequencyandmissedhighfrequencyin the image. For image’s format will use in filtering process such as *.JPG, *.PNG, *.BMP. Beforeundergoing a process offilteringthe imagewill firstFouriertransformedtoobtainpixelintensity valuesto be

used inthecalculation ofconvolution. Next up

forbothsystemsfirstinputvaluecutofffrequencyD0isatransformationfourier results. System will implementationusingMatlabR2012a. Imagefilteringresultscan be seenbythe sharpnessideal, butterworth, andgaussian. Gaussian’s sharpness give the best result for filtering process who used in Lowpass Filtering and Butterworth’s sharpness give the best result for Highpass Filtering. Applicationsusingcomparativequalityparameterssuch as MSE(Mean SquaredError) andPSNR(Peak Signalto NoiseRatio).

Keywords : Filtering, Image, Lowpass Filter, Highpass Filter, Image smoothing, Edge Sharpening


(15)

BAB I

PENDAHULUAN

1.1 Latar Belakang

Saat ini informasi tidak hanya didapatkan dari pesan teks saja namun sebuah gambar atau citra dapat juga mewakilkan sebuah informasi, bahkan sebuah citra memiliki arti yang lebih mudah dipahami dibandingkan dengan teks. Citra sebagai pembawa informasi diharapkan memiliki kualitas yang baik. Sering sekali kita mendapati citra dengan kualitas kurang baik dan mengganggu penglihatan. Citra dengan kualitas kurang baik disebabkan oleh beberapa hal seperti citra mengalami derau (noise), citra terlalu gelap/terang, citra kurang tajam, kabur, dan sebagainya. Citra seperti ini timbul dari pengambilan gambar yang kurang fokus, atau pencahayaan yang kurang baik. Untuk memperbaiki kualitas sebuah citra diperlukan teknik khusus.

Pengolahan citra adalah bidang ilmu yang berguna untuk proses memperbaiki kualitas citra agar lebih mudah diinterpretasikan manusia atau komputer. Salah satu operasi pengolahan citra adalah perbaikan kualitas citra (image enhancement).

Perbaikan kualitas citra (image enhancement) adalah proses memperbaiki citra dengan memanipulasi parameter-parameter citra yaitu resolusi, kedalaman bit. Tujuan dari perbaikan kualitas citra adalah lebih menonjolkan ciri citra tertentu untuk kepentingan analisis atau menampilkan citra sebagai informasi visual. Proses-proses yang dapat dilakukan pada operasi perbaikan kulitas citra diantaranya perbaikan kontras gelap/terang, perbaikan tepian objek (edge enhancement), penajaman (sharpening), pemberian warna semu (pseudocoloring), dan penapisan derau (noise


(16)

Murianto[7], dalam penelitiannya berjudul “Analisis Perbandingan Metode Intensity Filtering dengan Metode Frequency Filtering Sebagai Reduksi Noise pada Citra Digital” dimana hasil dari pengurangan noise menggunakan Highpass intensity filtering masih terdapat noise berupa titik-titik biru yang kabur dan tersebar diseluruh bagian citra.Hasil dari pengurangan noise menggunakan Lowpass Intensity Filtering juga masih terdapat noise berupa titik-titik kuning yang masih nampak. Hasil pengurangan noise menggunakan Highpass Frequency Filtering sudah menghasilkan citra yang menghilangkan noise hampir seluruhnya. Hasil pengurangan noise menggunakan Lowpass Frequency Filtering menghasilkan citra yang masih banyak noise nya serta menghasilkan gambar yang kabur.

Pada penelitian lain yang dilakukan oleh Anisa Fitri[2] yang berjudul “Perbandingan Metode Lowpass Filter dan Median Filter dalam Penghalusan Citra (Image Smoothing) untuk Peningkatan Kualitas Citra (Image Enhancement)”, diperoleh bahwa metode Lowpass Filter dan Median Filter menghaluskan citra yang mengalami noise (derau). Namun metode Median Filter merupakan metode yang yang lebih baik dalam mereduksi noise dibandingkan dengan metode Lowpass Filtering.

Berdasarkan penelitian tersebut penulis tertarik untuk membahas operasi perbaikan kualitas citra (image enhancement) dimana citra dengan kualitas terlalu terang akan diperbaiki dengan menggunakanmetode Lowpass Filtering dan penajaman tepian citra dengan menggunakan metode Highpass Filtering.

1.2 Perumusan Masalah

Adapun masalah yang akan dibahas dalam penelitian ini adalah :

1. Bagaimana hasil pelembutan citra dengan menggunakan Lowpass Filtering 2. Bagaimana hasil penajaman tepian citra dengan menggunakan Highpass

Filtering.

3. Bagaimana merancang aplikasi perbaikan kualitas citra digital dengan menggunakan Lowpass Filtering dan Highpass Filtering.


(17)

1.3 Batasan Masalah

Adapun batasan masalah dalam penelitian ini adalah :

1. Citra digital yang digunakan sebagai input adalah format citra digital JPG,BMP,dan PNG .

2. Ukuran citra yang akan digunakan adalah 256 x256 pixel.

3. Tipe ketajaman filter yang digunakan untuk Lowpass Filtering dan Highpass Filteringadalah Ideal, Butterworth, dan Gaussian.

4. Bahasa pemrograman yang digunakan untuk membangun aplikasi adalah bahasa pemrograman Matlab R2012a

5. Parameter pembanding kualitas citra hasil diukur dengan MSE (Mean Squared Error) dan PSNR (Peak Signal to Noise Ratio).

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah :

1. Mengetahui cara kerja Lowpass Filter untuk perbaikan kualitas citra yang tajam/terang dan Highpass Filter untuk penajaman tepian citra.

2. Membangun aplikasi perbaikan kualitas citra digital dengan menggunakan Lowpass Filter dan Highpass Filter.

3. Mengetahui format citra terbaik yang dapat difilter sesuai dengan metode Lowpass Filter dan Highpass Filter berdasarkan nilai parameter MSE dan PSNR.

1.5 Manfaat Penelitian

Penelitian ini diharapkan dapat digunakan sebagai aplikasi perbaikan kualitas citra digital khususnya untuk pelembutan dan penajaman tepian citra.


(18)

Pada tahap ini dilakukan studi kepustakaan tentang penelitian berupa buku pengolahan citra dan jurnal yang membahas perbaikan kualitas citra digital dalam domain frekuensi, transformasi fourier, Lowpass Filter dan Highpass Filter.

b. Analisis

Pada tahap ini dilakukan analisis terhadap penerapan Lowpass Filter untuk image smoothing dan Highpass Filter untuk edge sharpening dengan menggunakan tipe filtering Ideal, Butterworth, dan Gaussian untuk kedua metode filtering. Nantinya masing-masing format file citra akan dibandingkan berdasarkan perhitungan MSE dan PSNR untuk mengetahui format terbaik yang dapat difilter dengan menggunakan metode Lowpass Filter dan Highpass Filter.

c. Implementasi

Pada tahap ini dilakukan pembuatan sebuah sistem untuk mengimplementasikan perancangan dengan menggunakan bahasa pemrograman Matlab R2012a

d. Pengujian

Pada tahap ini dilakukan pengujian pada sistem apakah sudah sesuai dengan tujuan penelitian yaitu mendapatkan gambar dengan kualitas yang lebih baik dengan teknik filtering yang digunakan khususnya untuk pelembutan dan penajaman tepian citra.

e. Dokumentasi

Pada tahap ini dilakukan dokumentasi sistem mulai dari awal sampai akhir .

1.7 Sistematika Penulisan

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

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


(19)

Bab II Landasan Teori

Bab ini menjelaskan tentang dasar teori yang digunakan sebagai sumber referensi untuk pemahaman Lowpass Filtering, Highpass Filtering, Transformasi Fourier.

Bab III Analisis dan Perancangan

Bab ini menjelaskan tentang analisis mengenai proses kerja Lowpass Filtering dan Highpass Filtering serta perancangan tampilan form sistem.

Bab IV Algoritma dan Implementasi

Bab ini menjelaskan tentang algoritma dan implementasi dari aplikasi.

Bab V Kesimpulan dan Saran

Bab ini menjelaskan tentang kesimpulan yang dapat diperoleh setelah menyelesaikantugas akhir ini dan saran-saran untukpengembangan perangkat lunak lebih lanjut.


(20)

BAB II

LANDASAN TEORI

2.1 Citra

2.1.1 Definisi Citra Digital

Citra atau gambar merupakan salah satu bentuk informasi visual yang kaya akan informasi. Citra berasal dari cahaya yang dipantulkan oleh sebuah objek. Cahaya yang dipantulkan tersebut ditangkap oleh alat optik seperti mata,kamera,dan scanner.

Citra secara umum adalah merupakan suatu gambar, foto ataupun berbagai tampilan dua dimensi yang menggambarkan suatu visualisasi objek. Citra dapat diwujudkan dalam bentuk tercetak ataupun digital. Citra digital adalah larik angka-angka secara dua dimensional. Citra digital tersimpan dalam suatu bentuk larik (array) angka digital yang merupakan hasil kuantifikasi dari tingkat kecerahan masing-masing pixel penyusun citra tersebut.

Citra digital yang tersimpan dalam larik dua dimensi tersusun atas unsur-unsur kecil yang disebut dengan pixel. Masing-masing pixel terkait secara spasial dengan area di permukaan bumi. Struktur array ini tersusun dalam baris horizontal yang disebut baris (Lines) dan kolom vertikal (Samples). Masing-masing pixel dalam raster citra menyimpan nilai tingkat kecerahan pixel yang diwujudkan sebagai suatu angka digital. Susunan pixel dalam struktur array citra digital yang tersebut disebut dengan data raster [5]. Kolom dan baris yang membentuk pixel data raster diperlihatkan pada gambar 2.1.


(21)

Gambar 2.1Kolom dan baris membentuk pixel data raster

Sumber :Liu, J.G., Mason, P.J. 2009

2.1.2Representasi Citra Digital

Citra merupakan fungsi kontinu dari intensitas cahaya pada bidang 2D.

Secara matematis fungsi intensitas cahaya pada bidang 2D disimbolkan dengan f(x,y), Koordinat citra pada bidang 2 dimensi dapat dilihat pada gambar 2.2.

dimana :

(x,y): koordinat pada bidang 2D

f(x,y) : intensitas cahaya (brightness)pada titik (x,y)


(22)

Untuk mengkonversi objek yang diindera oleh sensor menjadi citra digital dilakukan dua proses yakni Sampling dan Kuantisasi.

1. Sampling

Sampling adalah transformasi citra kontinu menjadi citra digital dengan cara membagi citra analog(kontinu) menjadi M kolom dan N baris sehingga menjadi citra diskrit. Semakin besar nilai M dan N, semakin halus citra digital yang dihasilkan dan artinya resolusi citra semakin baik .

2. Kuantisasi

Warna sebuah citra digital ditentukan oleh besarnya intensitas piksel-piksel penyusunnya. Warna ini diperoleh dari besar kecilnya intensitas cahaya yang ditangkap oleh sensor. Sedangkan skala intensitas cahaya di alam ini tidak terbatas, yang bisa menghasilkan warna dengan jumlah yang tak terhingga. Belum ada satu sensor pun yang mampu menangkap seluruh gradasi warna tersebut oleh sebab itu kita membuat gradasi warna sesuai dengan kebutuhan. Kuantisasi adalah transformasi intensitas analog yang bersifat kontinu ke daerah intensitas diskrit [12] yang digambarkan pada gambar 2.3.

Gambar 2.3 Penggambaran Kuantisasi Sumber: Sutoyo,T. 2009

2.1.3 Elemen-Elemen Citra Digital

Berikut adalah elemen-elemen yang terdapat pada citra digital: 1. Kecerahan (brightness)


(23)

Kecerahan merupakan intensitas cahaya yang dipancarkan piksel dari citra yang dapat ditangkap oleh sistem penglihatan.

2. Kontras (contrast)

Kontras menyatakan sebaran terang dan gelap dalam sebuah citra 3. Kontur (contour)

Kontur adalah keadaan yang ditimbulkan oleh perubahan intensitas pada piksel-piksel yang bertetangga. Karena adanya perubahan intensitas inilah maka mampu mendeteksi tepi-tepi objek di dalam citra.

4. Warna

Warna sebagai persepsi yang ditangkap sistem visual terhadap panjang gelombang cahaya yang dipantulkan oleh objek.

5. Bentuk (shape)

Bentuk adalah property intrinsik dari objek 3 dimensi, dengan pengertian bahwa bentuk merupakan propertyintrinsik utama untuk sistem visual manusia.

6. Tekstur (texture)

Tekstur dicirikan sebagai distribusi spasial dari derajat keabuan di dalam sekumpulan piksel-piksel yang bertetangga.

2.1.4 Jenis-Jenis Citra Digital

Beberapa jenis citra digital yang sering digunakan adalah citra biner, citra grayscale, dan citra warna.

1. Citra Biner (Monokrom)

Banyakna warna: 2, yaitu hitam dan putih


(24)

Gradasi warna :

0 1

Contoh citra biner dapat dilihat pada gambar 2.4.

Gambar 2.4 Contoh citra biner 2. Citra Grayscale (Skala Keabuan)

Banyaknya warna:tergantung pada jumlah bit yang disediakan di memori untuk menampung warna ini.

Citra 3 bit mewakili 8 warna berikut:

Contoh citra grayscale dapat dilihat pada gambar 2.5.

Gambar 2.5 Contoh citra grayscale

3. Citra Warna (True Color)

Setiap piksel pada citra warna mewakili warna yang merupakan kombinasi dari tiga warna dasar (RGB =Red Green Blue). Setiap warna dasar menggunakan penyimpanan


(25)

8 bit= 1 byte ,yang berarti setiap warna mempunyai gradasi sebanyak 255 warna. Itulah sebabnya format ini dinamakan true color karena mempunyai jumlah warna yang cukup besar.

Penyimpanan citra warna di dalam memori berbeda dengan citra grayscale. Satu piksel citra true color diwakili oleh 3 byte yang masing-masing byte merepresentasikan warna merah (Red), hijau (Green), dan Biru (Blue)[12]. Contoh penyimpanan citra warna dalam memori dapat dilihat pada tabel 2.1.

Tabel 2.1 Contoh penyimpanan citra warna di dalam memori.

Contoh citra berwarna dapat dilihat pada gambar 2.6.

Gambar 2.6 Contoh citra warna

R=50 G=65 B=50 R=40 G=45 B=55 R=90 G=90 B=90 R=80 G=65 B=40 R=70 G=65 B=70 R=40 G=85 B=50 R=40 G=80 B=65 R=50 G=45 B=80 R=20 G=35 B=20 R=70 G=75 B=70 R=40 G=45 B=50 R=50 G=60 B=60 R=60 G=75 B=80 R=35 G=65 B=70 R=50 G=55 B=70 R=90 G=65 B=50 R=80 G=90 B=90 R=30 G=45 B=50 R=60 G=35 B=40 R=20 G=20 B=40 R=40 G=40 B=40 R=40 G=60 B=80 R=50 G=50 B=50 R=70 G=60 B=50 R=90 G=80 B=70


(26)

2.1.5 Format Citra Digital

Beberapa format yang umum digunakan dalam pemrograman pengolahan citra diantaranya:

1. JPEG (Joint Photographic Expert Group)

JPG atau JPEG ( Joint Photographic Experts Group), adalah format file yang paling umum digunakan dalam digital fotografi. Format ini mendukung kedalaman warna 24 bit (3 saluran warna masing-masing 8 bit). Hampir setiap kamera digital mampu membaca gambar menggunakan format ini dan secara luas dapat dibaca oleh program penampil gambar lainnya.

Format citra JPG menghasilkan ukuran file kecil menggunakan kompresi lossy. Setiap kali menyimpan gambar dalam format ini, kualitas degradasi menurun karena kompresi lossy tersebut. Kompresi Lossy (Lossy Compression) adalah metode memperkecil ukuran file citra dengan membuang beberapa data, hal ini menyebabkan adanya sedikit penurunan kualitas citra.

Kompressi Lossy menggunakan analisis matematis yang kompleks untuk menghapus bit dari informasi gambar sehingga mata manusia tidak dapat melihat kekurangan`yang mencolok. JPEG merupakan teknik dan standard universal untuk kompresi dan dekompresi citra tidak bergerak yang digunakan pada kamera digital dan system pencitraan dengan menggunakan komputer .

2. BMP (Bitmap)

Bitmap adalah representasi dari citra grafis yang terdiri dari susunan titik yang tersimpan di memori komputer. Dikembangkan oleh Microsoft dan nilai setiap titik diawali oleh satu bit data untuk gambar hitam putih, atau lebih bagi gambar berwarna.Kerapatan titik-titik tersebut dinamakan resolusi, yang menunjukkan seberapa tajam gambar ini ditampilkan, ditunjukkan dengan jumlah baris dan kolom. Tipe file ini biasanya digunakan pada sistem operasi Windows dan OS/2. Kelebihan tipe file BMP adalah dapat dibuka oleh hampir semua program pengolah gambar. Baik file BMP yang terkompresi maupun tidak terkompresi, file BMP memiliki ukuran yang jauh lebih besar daripada tipe-tipe yang lain.


(27)

Ukuran file BMP dapat turun menjadi sepersepuluhnya setelah dikonversi menjadi JPG. Meskipun dengan penurunan kualitas gambar, pada gambar-gambar tertentu (misalnya pemandangan), penurunan kualitas gambar hampir tidak terlihat mata.

3. PNG (Portable Network Graphics)

PNG merupakan singkatan dari Portable Network Graphics. Format ini tersedia untuk umum dan versi ini dikembangkan dari Format GIFF. Format ini dapat menangani kedalaman warna hingga 48 bit (3saluran warna masing-masing 16 bit). Format PNG jauh lebih baik untuk transparansi daripada GIF, yang memungkinkan untuk memiliki berbagai tingkat transparansi untuk setiap pixel (alpha channel). Dukungan untuk format ini dimulai sejak tahun 1995, dan saat ini penggunaannya sudah cukup luas.

Secara keseluruhan, PNG adalah format yang lebih baik daripada GIF, yang menawarkan kompresi yang lebih baik, dapat menyimpan banyak warna, memiliki dukungan transparansi yang lebih baik, dan sebagainya. Satu-satunya kelemahan dari PNG dibandingkan GIFF adalah tidak bisa menyimpan gambar animasi. Karena kedalaman warna yang besar, kompatibilitas browser, dan kompresi yang kecil, format ini disarankan untuk digital fotografi. Dibandingkan dengan JPG, PNG mempunyai kualitas gambar yang lebih baik dengan ukuran file yang lebih besar.

4. GIF (Graphics Interchange Format)

GIFmerupakan singkatan dari Graphics InterchangeFormat. Format ini dapatmenyimpankedalamanwarnahanya 8 bit(256 warna). Format ini mampumenanganitransparansidalam bentuk yang sangatdasar ( setiap pixel apakah transparanatau tidak).

Keuntungan utamadari format file iniadalah dapat digunakanuntuk menyimpananimasi. Selain itukarena merupakanformatini merupakan format lama, sangatkompatibel denganversi lama dariwebbrowserdan perangkat lunak lain. Menggunakankompresi lossy. Formatini telahbanyak digunakanuntuk menampilkangrafis dan animasipada halaman web. Karenapembatasanjumlah warna, format ini tidak dianjurkan untuk digunakan menyimpanfoto digital[6].


(28)

2.2 Peningkatan Kualitas Citra Digital (Image Enhancement)

Peningkatan kualitas citra adalah suatu proses untuk mengubah sebuah citra menjadi citra baru sesuai dengan kebutuhan melalui berbagai cara. Cara-cara yang bisa dilakukan misalnya dengan fungsi transformasi, operasi matematis, pemfilteran, dan lain-lain. Tujuan utama dari peningkatan kualitas citra adalah memproses citra sehingga citra yang dihasilkan lebih baik daripada citra aslinya untuk aplikasi tertentu. Adapun parameter-parameter citra yang penting dalam proses pengolahan citra adalah:

1. Resolusi

Resolusi citra menyatakan ukuran panjang kali lebar dari sebuah citra. Resolusi citra biasanya dinyatakan dalam satuan piksel-piksel. Semakin tinggi resolusi sebuah citra, semakin baik kualitas citra tersebut. Namun, tingginya resolusi menyebabkan semakin banyaknya jumlah bit yang diperlukan untuk menyimpan dan mentransmisikan data citra tersebut.

2. Kedalaman bit

Kedalaman bit menyatakan jumlah bit yang diperlukan untuk merepresentasikan tiap piksel citra pada sebuah frame. Kedalaman bit biasanya dinyatakan dalam satuan bit/piksel. Semakin banyak jumlah bit yang digunakan untuk merepresentasikan sebuah citra, maka semakin baik kualitas citra tersebut.

Peningkatan kualitas citra dibagi dalam dua kategori, yaitu metode domain spasial (ruang atau waktu) dan metode domain frekuensi. Teknik pemrosesan metode domain spasial adalah berdasarkan manipulasi langsung dari piksel di dalam citra. Sedangkan teknik pemrosesan metode domain frekuensi adalah berdasarkan perubahan transformasi fourier citra [12].


(29)

2.2.1 Pelembutan Citra (Image Smoothing)

Pelembutan Citra bertujuan untuk menurunkan atau menekan gangguan pada citra. Gangguan ini umumnya berupa variasi intensitas pixel yang tidak berkorelasi dengan pixel tetangganya. Pixel yang terkena gangguan umumnya mempunyai frekuensi tinggi.

Salah satu metode yang digunakan untuk Image Smoothing adalah Lowpass Filtering (Penapis Lolos Rendah) dimana metode ini digunakan pada domain frekuensi. Prinsip Lowpass Filtering dilakukan dengan mengurangi nilai FT (Fourier Transform) pada frekuensi tinggi atau menekan komponen yang berfrekuensi tinggi dan meloloskan komponen yang berfrekuensi rendah seperti semula [3]. Contoh citra tajam dan citra hasil smoothing dapat dilihat pada gambar 2.7.

Gambar 2.7 (a) citra tajam (b) citra hasil smoothing

2.2.2 Penajaman Citra (Image Sharpening)

Penajaman citra bertujuan memperjelas tepi pada objek didalam citra. Penajaman citra dilakukan dengan melewatkan citra pada penapis lolos-tinggi (highpass filtering). Karena penajaman citra lebih berpengaruh pada tepi (edge) objek, maka penajaman citra disebut juga penajaman tepi (edge sharpening) atau peningkatan kualitas tepi (edge enhancement). Akibatnya, pinggiran objek terlihat lebih tajam dibandingkan sekitarnya.Dalam hal ini pixel-pixel tepi ditampilan lebih terang sedangkan pixel-pixel bukan tepi dibuat gelap [4]. Contoh citra grayscale awaldan citra hasil penajaman tepi dapat dilihat pada gambar 2.8.


(30)

Gambar 2.8 (a) citra awal (b)citra penajaman tepi 2.3 Pengolahan Citra dalam Domain Frekuensi

2.3.1 Transformasi Fourier Disktrit 2-D

Transformasi Fourier merupakan salah satu dasar penting dalam pengolahan citra, dapat memproses dengan efisien dan lebih cepat. Dibandingkan dengan linear spatial filtering, maka transformasi Fourier lebih cepat (terutama jika ukuran filternya besar). Transformasi Fourier memungkinkan pengolahan dengan cara mengisolasi satu “frekuensi” tertentu pada citra, sehingga dapat digunakan untuk menerapkan LPF dan HPF dengan ketelitian yang cukup tinggi.

Karena citra digital merupakan besaran diskrit dua dimensi (2D) maka untuk analisis citra hanya dibutuhkan transformasi Fourier diskrit 2D. Untuk menganalisis citra pada domain frekuensi, hasil transformasi Fourier dapat ditampilkan sebagai citra, dimana intensitasnya sebanding dengan besarnya F(u,v) atau spectrum Fourier. Formula untuk Transformasi Fourier :

�(�,�) =∑�−=01∑�−=01�(�,�)�−�2�(���+���)... (2.1)

F(u,v) : Spectrum Fourier M,N : ukuran citra f(x,y) : intensitas pixel u:0,1,2,..,M-1

v :0,1,2,..N-1.

Untuk mendapatkan nilai f(x,y) dari persamaan 2.1 di atas, digunakan Invers dari transformasi Fourier diberikan oleh formula:


(31)

Untuk x= 0,1,2,…M-1 dan y=0,1,2,…N-1. Jadi dengan F(u,v) bisa mendapatkan f(x,y) kembali dengan merata-rata invers DFT. Nilai F(u,v) dalam formula ini kadang disebut sebagai Fourier Koefficients dari ekspansi[3]. Pada gambar 2.9(a) diperlihatkan citra grayscale kemudian pada gambar 2.9(b) diperlihatkan spektrum transformasi fouriernya yang dipusatkan di tengah.

Gambar 2.9 (a) Citra Grayscale (b)Hasil Transformasi Fourier Sumber :

Nilai transformasi pada origin domain frekuensi [F(0,0)] disebut dengan komponen dc transformasi Fourier. Jika f(x,y) adalah real, transformasinya secara umum kompleks. Metode prinsip analisis secara visual sebuah transformasi adalah menghitung spektrum dan menampilkannya sebagai citra. Jika R(u,v) dan I(u,v) merepresentasikan real dan komponen imaginary F(u,v), spektrum Fourier didefinisikan sebagai:

commons.wikimedia.org

�(�,�) =��2(,) + 2(,) ... (2.3)

2.3.2 DFT Terpusat

Perhitungan DFT 2-D sekarang mentransformasikan titik-titik ke dalam interval persegi panjang seperti ditunjukkan pada gambar 2.10. Persegi panjang dengan garis putus-putus adalah pengulangan periodik. Daerah dengan garis utuh menunjukkan nilai F(u,v) yang sekarang meliputi empat back-to-back perempatan periode yang bertemu pada titik yang ditunjukkan pada gambar 2.10(a). Analisis visual spektrum hanya dengan memindahkan nilai origin transformasi ke pusat dari persegi panjang frekuensi.


(32)

Nilai spektrum di (M/2, N/2) dalam gambar 2.10(b) adalah sama dengan nilai di (0, 0) dalam gambar 2.10(a) dan nilai di (0, 0) dalam gambar 2.10(b) sama dengan nilai di (-M/2, -N/2) dalam gambar 2.10(a). Dengan cara yang sama, nilai di (M-1, N-1) dalam gambar 2.10(b) adalah sama dengan nilai di (M/2-1, N/2-N-1) dalam gambar 2.10(a). Proses ini dinamakan dengan proses shifting[8].

Gambar 2.10 Spektrum Fourier 2D, (a) kiri, (b) kanan Sumber : Prasetyo, Eko. 2011

Berdasarkan penjelasan di atas dapat diambil kesimpulan untuk mendapatkan DFT terpusat dapat dihitung dengan menggunakan formula 2.4:

�(�′,�′) ≡ � �� −�

2,� −

2�... (2.4)

cara lain untuk menghitung DFT terpusat adalah dengan mengasumsikan bahwa DFT F(u,v) dari f(x,y) telah diperoleh dengan menggunakan formula DFT, kemudian menukarkan kuadran pertama dari F(u,v) dengan kuadran ketiga dan menukarkan kuadran kedua dengan kuadran keempat seperti yang ditunjukkan pada gambar 2.11. Cara ini lebih efektif dari pada menggunakan formula sebelumnya karena menghemat proses komputasi yang dilakukan.


(33)

Gambar 2.11 Proses pemusatan DFT dapat dilakukan dengan menukarkan kuadran 1 dengan 3, dan 2 dengan 4

Sumber: Solomon,Chris. 2011

2.3.3 Konsep Filter dalam Domain Frekuensi

Penapisan (filtering) pada sebuah citra digital dapat dilakukan baik dalam kawasan (domain)spasial (ruang) dan frekuensi. Mirip dengan isyarat 1 dimensi (1-D), penapisan dilakukan baikdalam kawasan waktu maupun frekuensi dengan operasi konvolusi merupakanlandasan/dasarnya. Hal tersebut dimungkinkan karena adanya hubungan dua arah padatransformasi Fourier, yakni:

�(�,�)∗ ℎ(ℎ,�) ⟺ �(�,�)�(�,�) ... (2.5) dan sebaliknya :

�(�,�)ℎ(ℎ,�)⟺ �(�,�)∗ �(�,�) ... (2.6) yang artinya, konvolusi dalam kawasan waktu menjadi perkalian biasa dalam kawasan frekuensi dan sebaliknya perkalian biasa dalam kawasan waktu menjadi konvolusi dalam kawasan frekuensi.

Sebuah citra digital bisa mengandung frekuensisehingga kita bisa mengoperasikan penapisan dalam kawasan frekuensi. Singkatnya frekuensi dalam citra mengandung arti:

1. Frekuensi tinggi menjelaskan tentang nilai intensitas piksel bertetangga yang berubahdengan cepat di dalam citra (contohnya OCR yang isinya teks, teksture


(34)

2. Frekuensi rendah terkait dengan perubahan yang rendah pada nilai intensitas pikselyang bertetangga, juga terkait dengan skala objek yang besar di dalam citra tersebut.

Pemfilteran dalam domain spasial berisi konvolusi citra f(x,y) mask filter h(x,y). seperti halnya teori konvolusi, juga bisa mendapatkan hasil yang sama dalam domain frekuensi dengan perkalian antara F(u,v) dengan H(u,v), transformasi fourier filter. Biasanya H(u,v) disebut sebagai filter transfer function. Fungsi berkebalikan antara pemfilteran dalam domain spasial dan pemfilteran dalam doman frekuensi diperlihatkan pada gambar 2.12.

Gambar 2.12Filter Transfer Function Sumber: Prasetyo, Eko .2011

Berdasarkan uraian konsep filtering domain frekusni maka untuk melakukan pemfilteran dalam domain frekuensi harus mengikuti diagram seperti pada gambar 2.13.

Pre-Processing

Transformasi Fourier

Fungsi Filter H(u,v)

Invers Transformasi

Fourier

Pre-Processing

F(u,v) H(u,v)F(u,v)

f(x,y) Citra Input

g(x,y) Citra ter-enhance

Gambar 2.13 Langkah Dasar Pemfilteran dalam Domain Frekuensi Sumber: Prasetyo, Eko. 2011


(35)

Fungsi filter H(u,v) dalam gambar 2.13 mengalikan bagian real dan citra dari F(u,v). jika H(u,v) real maka fase hasil tidak berubah. Dapat dilihat dalam persamaan fase dengan catatan bahwa jika pengali bagian real dan citra sama, maka dapat dibatalkan dan membiarkan fase sudut tidak berubah [8].

Adapun prosedur untuk menapis citra dalam kawasan frekuensi adalah sebagai berikut:

1. Input citra digital berupa citra *.jpg dengan ukuran lebar = ukuran tinggi. 2. Lakukan proses transformasi fourier dari citra input dengan menggunakan

FFT 2D untuk mendapatkan F(u,v) yang merupakan nilai kompleks dari transformasi fourier.

3. Hitung filter mask H(u,v) dengan ukuran lebar dan tinggi sama dengan ukuran citra input. Filter mask yang dibahas di dalam skripsi ini adalah Low Pass Filtering dan High Pass Filtering.

4. Kalikan F(u,v) dengan H(u,v) untuk mendapatkan G(u,v) yang merupakan hasil perkalian antara transformasi dengan filter mask.

5. Lakukan proses invers transformasi fourier dari G(u,v) menggunakan invers FFT2D sehingga diperolehlah citra hasil g(x,y).

2.4 Peningkatan Kualitas Citra Domain Frekuensi 2.4.1 Filter Penghalusan (Smoothing) Domain Frekuensi

Tepi dan transisi ketajaman intensitas dalam citra berkontribusi secara signifikan terhadap isi frekuensi tinggi dalam transformasi Fourier. Smoothing dicapai dalam domain frekuensi dengan pelemahan frekuensi tinggi yang disebut dengan Lowpass Filter [8].

2.4.1.1Ideal Lowpass Filter

Ideal Lowpass Filter adalah filter yang menghilangkan semua komponen frekuensi tinggi dari transformasi Fourier pada jarak yang lebih besar daripada jarak yang ditentukan �0(dari pusat transformasi). Formulanya dapat dilihat pada persamaan 2.7.


(36)

�(�,�) =�1 ���� �(�,�) ≤ �0 0 ���� �(�,�) >�0

... (2.7) Dimana:

H(u,v) : fungsi filter

D0 : konstanta positif (cutoff frekuensi)/titik pusat transformasi D(u,v): jarak antara titik (u,v) dalam domain frekuensi dan pusat persegi panjang frekuensi ,maka:

�(�,�) = [(� − �/2)2+ (�/2)2]1/2 ... (2.8)

P dan Q adalah ukuran pad citra yang diproses.

2.4.1.2Butterworth Lowpass Filter

Fungsi dari Butterworth Lowpass Filter dengan order n dan dengan cutoff frequency pada jarak D0 dari titik asal adalah :

�(�,�) = 1

1+[�(�,�)/�0]2�

...(2.9) H(u,v) : fungsi filter

D0 : konstanta positif (cutoff frekuensi)/titik pusat transformasi

D(u,v): jarak antara titik (u,v) dalam domain frekuensi dan pusat persegi panjang frekuensi

n : order

2.4.1.3Gaussian Lowpass Filter

Fungsi Gaussian Lowpass Filter dinyatakan oleh persamaan berikut :

(

,

) =

−�2(�,�)/2�2 ... (2.10)

H(u,v) : fungsi filter

D(u,v): jarak antara titik (u,v) dalam domain frekuensi dan pusat persegi panjang frekuensi.


(37)

Nilai e : 2,718281828459 (logaritma natural)

Bila σ = DO maka persamaan akan menjadi :

(

,

) =

−�2(�,�)/2�02

... (2.11)

Dimana D0 adalah konstanta positif (cutoff frekuensi)/titik pusat transformasi

Sebagai contoh, sebuah citra input dengan ukuran dimensi citra 3 x 3. Maka untuk filter mask dari Lowpass Filterakan menghasilkan filter mask dengan ukuran yang sama yaitu 3 x 3. Banyaknya elemen dari filtermask diketahui dengan mengalikan jumlah lebar dan tinggi citra input. Pada contoh ini akan menghasilkan 9 elemen filter mask.

Dengan D0 =60, maka sebelum dilakukan pemfilteran terlebih dahulu dihitung jarak

D(u,v).

Perhitungan jarak dari D D(0,0)=√02+ 02 = 0

D(0,1)=√02+ 12 = 1

D(0,2)=√02+ 22 = 2

D(1,0)=√12+ 02 = 1

D(1,1)=√12+ 12 = 1.414214

D(1,2)=√12+ 22 = 2.236068

D(2,0)=√22+ 02 = 2

D(2,1)=√22+ 12 = 2.236068

D(2,2)=√22+ 2 = 2.828427


(38)

H(0,0) →D(0,0)=0 0<60, maka H(0,0)=1 H(0,1) →D(0,1)=1 1<60, maka H(0,1)=1 H(0,2) →D(0,2)=2 2<60, maka H(0,2)=1 H(1,0) →D(1,0)=1 1<60, maka H(1,0)=1 H(1,1) →D(1,1)=1.41 1.41<60, maka H(1,1)=1 H(1,2) →D(1,2)=2.23 2.23<60, maka H(1,2)=1 H(2,0) →D(2,0)=2 2<60, maka H(2,0)=1 H(2,1) →D(2,1)=2.23 2.23<60, maka H(2,1)=1 H(2,2) →D(2,2)=2.82 2.82<60, maka H(2,2)=1

Maka diperoleh mask filter dari ideal lowpass filter sebagai berikut: 1 1 1

1 1 1 1 1 1


(39)

H

(0,0) =

1 1+��(0,0)

�0 � 2�

=

1 1+�0

60� 2

=

1 1

= 1

H

(0,1) =

1

1+��(0,1)

�0 � 2�

=

1 1+�1

60� 2

=

1

1.000256

= 0.99

H

(0,2) =

1

1+��(0,2)

�0 � 2�

=

1 1+�602�

2

=

1

1.009

= 0.99

H

(1,0) =

1

1+��(1,0)

�0 � 2�

=

1 1+�601�

2

=

1

1.000256

= 0.99

H

(1,1) =

1

1+��(1,1)

�0 � 2�

=

1 1+�1.41

60 � 2

=

1

1.00055

= 0.99

H

(1,2) =

1

1+��(1,2)

0 � 2�

=

1 1+�2.2360

2

=

1

1.0009

= 0.99

H

(2,0) =

1

1+��(2,0)

�0 � 2�

=

1 1+�602�

2

=

1

1.009

= 0.99

H

(2,1) =

1

1+��(2,1)

�0 � 2�

=

1 1+�2.23

60 � 2

=

1

1.0009

= 0.99

H

(2,2) =

1

1+��(2,2)

0 � 2�

=

1 1+�2.28

60 � 2

=

1

1.0009

= 0.99

Maka diperoleh mask filter dari butterworth lowpass filter sebagai berikut:

Perhitungan mask filter untuk gaussian lowpass filter untuk formula 2.11 dengan nilai D0=60

1 0.99 0.99 0.99 0.99 0.99 0.99 0.99 0.99


(40)

H

(0,0) =

−�2(0.0)/2�0

2

=

−0/7200

=

1

�0

= 1

H

(0,1) =

−�2(0.1)/2�0

2

=

−1/7200

=

1

�0

= 1

H

(0,2) =

−�2(0.2)/2�0

2

=

−2/7200

=

1

�0

= 1

H

(1,0) =

−�2(1.0)/2�0

2

=

−1/7200

=

1

�0

= 1

H

(1,1) =

−�2(1.1)/2�0

2

=

−1.41/7200

=

1

�0

= 1

H

(1,2) =

−�2(1,2)/2�0

2

=

−2,23/7200

=

1

�0

= 1

H

(2,0) =

−�2(2,0)/2�0

2

=

−2/7200

=

1

�0

= 1

H

(2,1) =

−�2(2,1)/2�0

2

=

−2,23/7200

=

1

�0

= 1

H

(2,2) =

−�2(2.2)/2�0

2

=

−2.23/7200

=

1

�0

= 1

Maka diperoleh mask filter dari gaussian lowpass filter sebagai berikut: 1 1 1

1 1 1 1 1 1

2.4.2 Filter Penajaman (Sharpening) Domain Frekuensi

Penajaman citra bisa didapat dengan menggunakan proses Highpass Filtering dengan mengurangi komponen low frequency tanpa mengganggu informasi high frequency pada transformasi Fouriernya [10]. Highpass filtering merupakan kebalikan dari lowpass filtering ,persamaannya dapat dilihat pada persamaan 2.12.


(41)

Hlp(u,v) merupakan fungsi dari lowpass filter yang berkaitan.

2.4.2.1Ideal Highpass Filter

Ideal Highpass Filter merupakan kebalikan dari Ideal Lowpass Filtering .IHPF memberikan nilai 0 untuk semua frekuensi di dalam lingkaran radius D0 ketika

dilewati,tanpa melemahkan semua frekuensi di luar lingkaran diset menjadi 1.

�(�,�) =�0 �� �(�,�) ≤ �0 1 �� �(�,�) >�0

... (2.13) H(u,v) : fungsi filter

D0 : konstanta positif (cutoff frekuensi)/titik pusat transformasi

D(u,v): jarak antara titik (u,v) dalam domain frekuensi dan pusat persegi panjang frekuensi.

2.4.2.2Butterworth Highpass Filter

Butterworth Highpass Filter merupakan kebalikan dari BLPF,memberikan nilai 0 untuk semua frekuensi di dalam lingkaran radius D0.

�(�,�) = 1− 1

1+� �0

�(�,�)�

2� ... (2.14) H(u,v) : fungsi filter

D0 : konstanta positif (cutoff frekuensi)/titik pusat transformasi

D(u,v): jarak antara titik (u,v) dalam domain frekuensi dan pusat persegi panjang frekuensi.

n : order

2.4.2.3Gaussian Highpass Filter

Fungsi GHPF dengan cutoff frequency terletak pada jarak DO dari origin. �(�,�) = 1− �−�2(�,�)/2�02

... (2.15)


(42)

D0 : konstanta positif (cutoff frekuensi)/titik pusat transformasi Nilai e : 2,718281828459 (logaritma natural)

2.5 MSE (Mean Squared Error) dan PSNR (Peak Signal to Noise Ratio)

2.5.1 MSE

Perbaikan citra pada dasarnya merupakan proses yang bersifat subjektif sehingga parameter keberhasilannya bersifat subjektif pula. Untuk itu perlu adanya alat ukur kuantitatif yang bisa digunakan untuk mengukur kinerja prosedur perbaikan citra. Salah satu alat ukur yang digunakan adalah MSE (Mean Squared Error) [12]. Persamaannya:

���= 1

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

2

� �=1

�=1 ... (2.16)

M dan N adalah ukuran panjang dan lebar citra fa(i,j) : intensitas citra di titik(i,j) pada citra asal. fb(i,j) : intensitas citra di titik(i,j) pada citra hasil.

2.5.2 PSNR

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

���� = 20 . log 10 ( 255


(43)

BAB III

ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Masalah

Filtering merupakan teknik yang digunakan untuk proses perbaikan kualitas citra digital. Banyak metode-metode filtering yang dapat diaplikasikan guna mendapatkan sebuah citra dengan kualitas yang diinginkan seperti penghalusan/pelembutan gambar, penajaman, reduksi noise, dan masih banyak yang lainnya. Masalah yang akan diselesaikan dalam sistem ini adalah bagaimana memperbaiki kualitas citra tajam (image smoothing) dengan metode lowpass filtering dan penajaman tepian citra (image sharpening/edge sharpening) dengan metode highpass filtering.

Diagram ishikawauntuk permasalahan filtering diperlihatkan pada gambar 3.1.


(44)

jelas dengan menggunakan metode Lowpass Filtering dan Highpass Filtering. Kedua metode ini bekerja dalam domain frekuensi. Sistem yang sudah pernah ada sebelumnya masih mengolah citra dalam domain spasial serta diujikan pada 1 jenis format citra. Sedangkan pada sistem ini akan menggunakan 3 jenis format citra untuk pengujiannya sehingga akan diketahui format terbaik yang dapat difilter sesuai dengan menggunakan metode Lowpass Filtering dan Highpass Filtering pada aplikasi ini.

3. 2 Analisis Kebutuhan Sistem

Analisis Kebutuhan Sistem meliputi analisis kebutuhan fungsional sistem dan analisis kebutuhan non-fungsional sistem.

3.2.1 Kebutuhan Fungsional Sistem

Kebutuhan fungsional yang harus dimiliki dalam sistem filtering ini adalah:

1. Citra digital yang akan difilter adalah citra digital berformat JPG, PNG, dan BMP. 2. Dimensi citra digital yang digunakan adalah 256 x 256 pixel.

3. Citra input adalah citra true color (RGB) yang akan diubah menjadi grayscale untuk mempermudah proses transformasinya.

4. Metode filter yang digunakan adalah Lowpass Filter dan Highpass Filter.

5. Nilai penambahan intensitas piksel untuk masing-masing format citra inputan pada metode Lowpass Filter sebesar 20 dan 30.

6. Nilai pengurangan intensitas piksel untuk masing-masing format citra inputan pada metode Highpass Filter sebesar 30 dan 50.

7. Nilai D0 (cutoff frekuensi) yang akan digunakan untuk Lowpass Filter adalah 140

dan 180, dan nilai Nilai D0 (cutoff frekuensi) yang akan digunakan untuk Highpass Filter adalah 10 dan 40.

8. Citra digital hasil filtering disimpan dalam format JPG, PNG, dan BMP sesuai dengan citra digital format awalnya.


(45)

3.2.2 Kebutuhan Non-Fungsional Sistem

Adapun kebutuhan non-fungsional sistem yang dirancang untuk mendukung kinerja sistem yang akan dibangun adalah sebagai berikut.

1. Tampilan antar muka (interface) sistem mudah dimengerti oleh pengguna dan dapat menunjukkan hasil dari proses filter.

2. Sistem yang akan dibangun dapat menyimpan citra digital hasil filtering

3. Waktu respon sistem dalam proses filter cepat, sehingga dapat mengefektifkan waktu pengguna sistem.

4. Sistem yang sudah dibuat dapat dikembangkan dengan lebih baik lagi artinya sistem tidak cepat usang.

3.3 Perancangan Sistem

Dalam perancangan sistem filtering ini, UML digunakan sebagai bahasa pemodelan. Adapun model UML yang akan digunakan adalah use case diagram, activity diagram, dan sequence diagram.

3.3.1 Perancangan Sistem dengan Use Case Diagram

Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah sistem dari sudut pandang user. Use case dibuat berdasarkan keperluan actor, merupakan “apa” yang dikerjakan sistem, bukan “bagaimana” sistem mengerjakannya. Sebelum membuat sistem, terlebih dahulu digambarkan hubungan antara use case dan actor. Untuk mengetahui hubungan antara use case dan actor, maka dilakukan dengan menjawab pertanyaan-pertanyaan berikut ini:

1. Siapa yang menggunakan sistem? Jawab : Pengguna (User)


(46)

1. Menginput citra sesuai dengan ukuran dan format yang sudah ditentukan. 2. Menambah nilai intensitas piksel citra pada metode Lowpass Filter . 3. Mengurangi nilai intensitas piksel citra pada metode Highpass Filter. 4. Mengisi nilai cutoff frekuensinya (D0) masing-masing metode.

3. Apa saja yang dapat dilakukan oleh sistem? Jawab:

1. Melakukan pemilihan jenis filtering.

2. Melakukan proses filtering dengan metode Lowpass Filtering 3. Melakukan proses filtering dengan metode Highpass Filtering

Berdasarkan hubungan use case dan actor dari jawaban pertanyaan tersebut, berikut ini pada gambar 3.2digambarkan use case diagram yang dirancang dalam pemodelan sistem .

Sistem Perbaikan Kualitas Citra Digital dengan Lowpass Filter dan Highpass Filter

User

Pilih jenis Filter

«uses» Lowpass Filter

«uses»

Highpass Filter

Gambar 3.2 Use Case Diagram Sistem yang akan dibangun

Pertama, pengguna akan memilih jenis filter yang akan digunakan apakah lowpass filter atau highpass filter kemudian sistem akan menampilkan halaman filtering sesuai dengan pilihan pengguna. Setelah itu sistem akan bekerja sesuai dengan tahapan proses filtering seperti membaca citra input, menambah kecerahan citra input, mengurangi kecerahan citra input, transformasi fourier citra, filtering, menghitung nilai MSE dan PSNR, dan menyimpan citra hasil filtering.


(47)

Dokumentasi naratif untuk use case Pilih Jenis Filter dapat dilihat pada tabel 3.1.

Tabel 3.1 Dokumentasi Naratif Use Case Pilih JenisFilter Nama use case Pilih jenis filter

Aktor Pengguna

Deskripsi Use Case mendeskripsikan halaman pemilihan jenis filter

Pre-condition Sistem bersiap untuk pemilihan filtering

Typical course of event Aksi Aktor Respon Sistem Langkah 1: Memilih jenis filter

dari menu Filter

Langkah 2 : Sistem

menampilkan halaman filter

Alternate course Aksi Aktor Respon Sistem

- -

Post condition Sistem siap melaksanakan tahapan filtering

Sistem yang akan dibangun terdiri dari 2 metode filtering yakni Lowpass Filter untuk image smoothing dan Highpass Filter untuk edge enhancement. Kedua metode ini digabung dalam satu aplikasi oleh sebab itu sistem akan meminta pengguna terlebih dahulu memilih jenis filter yang akan digunakan.

Activity diagram untuk use case pilih jenis filter dapat dilihat pada gambar 3.3.

sistem pengguna

Memilih Jenis Filter menampilkan halaman jenis filtering

melakukan tahapan dalam filtering


(48)

Tabel 3.2 Dokumentasi Naratif Use Case Lowpass Filter Nama use case Lowpass Filter

Aktor Pengguna

Deskripsi Use Case mendeskripsikan prose dalam Lowpass Filter

Pre-condition Sistem menampilkan halaman Lowpass Filter

Typical course of event Aksi Aktor Respon Sistem Langkah 1: Menginput citra

digital dengan menekan tombol open file

Langkah 3:Menginput nilai penambahan intensitas piksel (kecerahan)

Langkah 6: Mengisi nilai D0

Langkah 9 :Menyimpan citra digital hasil dengan menekan tombol Save

Langkah 2 : Sistem membaca dan menampilkan citra asli RGB dan citra Grayscale-nya.

Langkah 4: Sistem menampilkan citra hasil penambahan kecerahan.

Langkah 5 :Melakukan proses transformasi Fourier dan menampilkan spectrum hasil trasnformasi

Langkah 7: Melakukan proses filtering untuk masing-masing jenis filter .

Langkah 8: Menampilkan hasil perhitungan MSE dan PSNR

Langkah 10: Menunjukkan direktori penyimpan citra hasil kemudian menyimpannnya.

Alternate course Aksi Aktor Respon Sistem

- -


(49)

diimplementasikan

Pada use case Lowpass Filter dan Highpass Filter, citra masukan berukuran 256 x256 piksel dengan format antara lain JPG, BMP, dan PNG. Sistem akan mengkonversi citra digital RGB menjadi citra grayscale. Pengubahan jenis citra ini berguna untuk proses transformasi fourier karena dalam transformasi dilakukan proses shifting yang memerlukan kesimetrisan citra digital.

Activity diagram untuk use case Lowpass Filter dapat dilihat pada gambar 3.4.

pengguna Sistem

Menampilkan citra inputan

Mengubah citra asli RGB ke Grayscale

Menampilkan citra grayscale terang

Melakukan proses Transformasi Fourier

Memanggil Fungsi tipe Filtering

Menampilkan nilai MSE,PSNR

Menyimpan citra hasil Menginput citra digital

Menginput nilai penambahan intensitas piksel

Menginput nilai D0

Menekan tombol Save

Gambar 3.4 Activity Diagram Lowpass Filter

Dokumentasi naratif untuk use case Highpass Filter dapat dilihat pada tabel 3.3.

Tabel 3.3 Dokumentasi Naratif Use Case Highpass Filter Nama use case Highpass Filter


(50)

Typical course of event Aksi Aktor Respon Sistem Langkah 1: Menginput citra

digital dengan menekan tombol open file

Langkah 3: Menginput nilai pengurangan intensitas piksel.

Langkah 6: Mengisi nilai D0

Langkah 9 :Menyimpan citra digital hasil dengan menekan tombol Save

Langkah 2 : Sistem membaca dan menampilkan citra asli RGB dan citra Grayscale-nya.

Langkah 4 : Sistem menampilkan citra dengan pengurangan intensitas piksel

Langkah 5 :Melakukan proses transformasi Fourier dan menampilkan spectrum hasil trasnformasi

Langkah 7: Melakukan proses filtering untuk masing-masing jenis filter .

Langkah 8: Menampilkan hasil perhitungan MSE dan

PSNR

Langkah 10: Menunjukkan direktori penyimpan citra hasil kemudian menyimpannnya.

Alternate course Aksi Aktor Respon Sistem

- -

Post condition Citra digital hasil filtering ditampilkan dan siap untuk diimplementasikan


(51)

Activity diagramuntuk use case Highpass Filter dapat dilihat pada gambar 3.5.

pengguna Sistem

Menampilkan citra inputan

Mengubah citra asli RGB ke Grayscale

Menampilkan citra grayscale gelap

Melakukan proses Transformasi Fourier

Memanggil Fungsi tipe Filtering

Menampilkan nilai MSE,PSNR

Menyimpan citra hasil Menginput citra digital

Menginput nilai pengurangan intensitas piksel

Menginput nilai D0

Menekan tombol Save

Gambar 3.5 Activity Diagram Highpass Filter

3.3.2.Analisis Proses Sistem

Berikut dijelaskan proses yang terjadi di dalam sistem filtering dengan metode Lowpass Filter dan Highpass Filter menggunakan sqeuence diagram dimana pada tahap awal sebelum filtering sistem terlebih dahulu membaca citra berwarna (RGB), lalu mengubahnya ke dalam citra grayscalekemudian sistem akan melakukan tahapan dalam proses filtering. Sequence diagram tahap awal untuk Lowpass Filtering dapat dilihat pada gambar 3.6.


(52)

Sistem Filtering

imread citra

Grayscale

rgb2gray

FFT input citra

Ubah Brightness

citra + brightness Pengguna

Gambar 3.6Sequence Diagram tahap awal Lowpass Filter

Berikut ini pseudoceode untuk pembacaan citra, konversi ke grayscale, dan pengubahan nilai brightness citra grayscale.

Image citra_asli ←imread(fullfile(nama_path,nama_file)

Citra_grayscale ←rgb2gray(citra_asli)

Citra_bright ←citra_grayscale + nilai_brightness

end

Sequence diagram tahap awal Highpass Filter dapat dilihat pada gambar 3.7.

Sistem Filtering

imread citra

Grayscale

rgb2gray

FFT input citra

Ubah Brightness Pengguna

citra - brightness


(53)

Tahap selanjutnya untuk kedua metode tersebut adalah mengubah citra tersebut kedalam transformasi fourier untuk mendapatkan nilai intensitas piksel citra yang diperlukan dalam proses perhitungan konvolusi yakni menghitung ke setiap piksel citra. Sequence diagram untuk proses filtering metode Lowpass Filtering dan Highpass Filtering dapat dilihat pada gambar 3.8.

Proses Filter

ambil matriks citra

FFT Filter

shifting

MSE,PSNR

H=fungsi filter

tampilkan hasil filtering,nilai mse ,pnsr

perhitungan nilai MSE,PSNR H.*F

Gambar 3.8Sequence Diagram proses Filter

Pseudocode untuk Transformasi Fourier.

Ffft2(citra_input)

Sfftshift(log(1+abs(handles.F)));


(54)

PQpadded(size(citra_bright)

[x,y]size(citra_bright)

Ipzeros(PQ(1),PQ(2))

Ip(1:x,1:y)citra_bright

Iczeros(PQ(1),PQ(2)

for m=1 :PQ(1) for n=1:PQ(2)

Ic (-1)^(m+n)*Ip(m,n)

end end

Ifinfft2(Ic)

Hlpfilter(‘type,PQ(1),PQ(2),(Sig)

Hfftshif(H)

GH.*F

Greal(ifft2(G)

Ifin zeros(PQ(1),PQ(2);

For m=1:PQ(1) For n=1:PQ(2)

Ifin(-1)^(m+n)*g(m,n)

end end

Pseudocode untuk Highpass Filter

PQpadded(size(citra_input)

[x,y]size(citra_input)

Ipzeros(PQ(1),PQ(2))

Ip(1:x,1:y)citra_input

Iczeros(PQ(1),PQ(2)

for m=1 :PQ(1) for n=1:PQ(2)

Ic(-1)^(m+n)*Ip(m,n)


(55)

end

Iffft2(Ic)

Hhpfilter(‘type,PQ(1),PQ(2),(Sig))

Hfftshif(H)

GH.*F

Greal(ifft2(G)

Ifin zeros(PQ(1),PQ(2);

For m=1:PQ(1) For n=1:PQ(2)

Ifin(-1)^(m+n)*g(m,n)

end end

Pseudoceode menghitung MSE

NilaiMSEHitungMSE(citra,citraref)

NilaiSSEsum(sum((double(citra)-doubel(citraref)).^2))

NilaiMSENilaiSSE/tinggi/lebar

Pseudocode menghitung PSNR


(56)

Contoh perhitungan proses filtering di dalam domain Frekuensi :

1. Dimisalkan masukan citra grayscale dengan ukuran 3 x 3 piksel dengan nilai intensitas pixelnya adalah sebagai berikut:

90 45 30

120 180 90

90 180 0

2. Kemudian dilakukan proses transformasi Fourier untuk menghasilkan matriks ukuran 3 x 3 pixel yang berisi bilangan kompleks dari citra grayscale. Proses transformasi yang dilakukan menggunakan Fast Fourier Transform 2D (persamaan 2.1), di mana proses transformasi dilakukan baris perbaris kemudian dilanjutkan dengan kolom perkolom.

�(0,0) =1

3� �(�) exp�− 2����

3 �

�−1

�=0

= 1

3� �(�)(cos� 2���

3 � − ����( 2���

3 ))

3

�=0

�(0,0) =1

3(90[1−0] + 45[1−0] + 30[1−0] = 1

3(90 + 45 + 30) =1

3(165) = 55 �(0,1) =1

3([90] + [44.97−1.65�] + [29.92−2.19�]) =1

3(164.89−3.84�) = 54.96−1.27� �(0,2) =1

3([90] + [44.88−3.29�] + [29.68−4.37�]) =1

3(164.56−7.65�) = 54.85−2.55� �(1,0) =1

3([120] + [180] + [90]) = 1

3(390) = 130 �(1,1) =1

3([120] + [179.88−6.57�] + [89.76−6.57�]) =1

3(389.64−13.15�) = 129.88−4.38� �(1,2) =1

3([120] + [179.88−13.14�] + [89.04−13.11�]) =1


(57)

�(2,0) =1

3([90] + [180] + [0]) = 1

3(270) = 90 �(2,1) =1

3([90] + [179.88−6.57�] + [0]) = 1

3(269.88−6.58�) = 89.96−2.19�

�(2,2) =1

3([90] + [179.88−13.14�] + [0]) = 1

3(269.52−13.14�) = 89.84−4.38�

Proses transformasi untuk tiap-tiap baris maka dihasilkan matriks baru:

Sebelum melanjutkan ke proses berikutnya, maka di hasilkan nilai magnitude dari tabel di atas:

Kemudian dilakukan transformasi untuk setiap kolom pada matriks di atas. �(0,0) =�(0,1) =�(0,2) =1

3([55] + [130] + [90]) = 1

3(275) = 91.67 �(1,0) =�(1,1) =�(1,2) =1

3([55] + [129.91−4.57�] + [89.76−6.57�]) =1

3(274.67−11.32�) = 91.55−3.77� �(2,0) =�(2,1) =�(2,2)

=1

3([55] + [129.65−9.50�] + [89.04−13.11�]) =1

3(273.69−22.61�) = 91.23−7.53�

Maka diperoleh matriks hasil transformasi Fourier 2D sebagai berikut:

91.67 91.67 91.67

91.55−3.77� 91.55−3.77� 91.55−3.77� 91.23−7.53� 91.23−7.53� 91.23−7.53� 55 54.96−1.27� 54.85−2.55�

130 129.88−4.38� 129.52−8.75�

90 89.96−2.19� 89.84−4.38�

55 55 55

130 130 130


(58)

3. Setelah dilakukan transformasi terhadap citra grayscale kemudian hasil transformasi dikalikan dengan hasil mask filter dari filter Butterworth Low Pass Filter yang telah dihitung di dalam bab 2 (halaman 25). Hasil perkalian F(u,v) dengan H(u,v) sebagai berikut:

91.67 90.09 90.09

90.63−3.73� 90.63−3.73� 90.63−3.73� 90.32−7.45� 90.32−7.45� 90.32−7.45�

4. Kemudian dilakukan invers dari hasil perkalian pada proses nomor 3 dengan terlebih dahulu mengambil nilai magnitudenya. Hasil magnitude dari hasil perkali proses nomor 3 adalah sebagai berikut:

91.67 90.09 90.09

90.71 90.71 90.71

90.63 90.63 90.63

Proses yang sama dilakukan pada transformasi Fourier dengan terlebih dahulu memproses perbaris kemudian dilakukan perkolom (persamaan 2.2).

�(0,0) =1

3([91.67] + [90.09] + [90.09]) = 90.61 �(0,1) =1

3([91.67] + [90.02−3.29�] + [89.85−6.58�]) = 90.51−3.29� �(0,1) =1

3([91.67] + [89.84−6.58�] + [89.13−13.13�]) = 90.22−6.57�

�(1,0) =1

3([90.71] + [90.71] + [90.71]) = 90.71 �(1,1) =1

3([90.71] + [90.65−3.32�] + [90.47−6.63�]) = 90.60−3.31� �(1,2) =1

3([90.71] + [90.47−6.63�] + [89.74−13.22�]) = 90.31−6.61�

�(2,0) =1

3([90.63] + [90.63] + [90.63]) = 90.63 �(2,1) =1

3([90.63] + [90.57−3.31�] + [90.39−6.61�]) = 90.53−3.31� �(2,2) =1

3([90.63] + [90.38−6.62�] + [89.66−13.20�]) = 90.22−6.60�


(59)

Hasil magnitude transformasi baris perbaris sebagai berikut:

90.61 90.57 90.46

90.71 90.66 90.55

90.63 90.59 90.46

Proses terakhir adalah melakukan invers transformasi untuk masing-masing kolom.

�(0,0) =1

3([91.61] + [90.71] + [90.63]) = 90.65 �(1,0) = 90.54−3.31 �= 90.6

�(2,0) = 90.25−6.61 � = 90.49 �(0,1) = 90.60

�(1,1) = 90.49−3.3� = 90.55 �(2,1) = 90.19−6.6� = 90.43 �(0,2) = 90.49

�(1,2) =90.39 – 3.30 j= 90.45 �(2.2) = 90.08−6.59 � = 90.32ss

Setelah melalui seluruh proses didapatlah hasil matriks citra yang telah difilter sebagai berikut:

90.65 90.60 90.49

90.6 90.55 90.45


(60)

Perubahan intensitas piksel pada citra ditunjukkan pada tabel 3.4 setelah dilakukan proses filter untuk image smoothing dengan menggunakan metode Lowpass Filtering. Citra yang digunakan adalah doll.png dengan mengambil sampel piksel pada bagian kanan bawah citra dengan dimensi 5 x 5 piksel. Terlihat perubahan intensitas piksel pada citra asli grayscale,citra hasil penambahan intensitas sebesar 20, citra hasil dengan tingkat ketajaman Ideal Butterworth, dan Gaussian.

Tabel 3.4 Perubahan intensitas piksel dalam proses filter


(61)

Asli Grayscale

118 103 107 129 134 104 107 119 131 133 93 116 135 135 131 92 118 136 131 128 102 127 141 130 123 Penambahan intensitas 20

138 123 127 149 154 124 127 139 151 153 113 136 155 155 151 112 138 156 151 148 122 147 161 150 143

Ideal Low Pass

138 138 137 156 161 113 111 118 148 157 124 129 141 168 173 137 149 160 178 178 94 108 117 128 127

Butterworth Low Pass

138 137 156 161 110 111 118 148 157 107 129 141 168 173 121 149 160 178 178 127 108 117 128 127 80 Gaussian Low Pass

134 138 153 156 115 127 139 150 155 125


(62)

3.3.3.Perancangan Interface

3.3.3.1. Rancangan interface form utama

Pada saat aplikasi dijalankan,maka form yang pertama muncul adalah form utama dimana terdapat pilihan menu yang akan digunakan untuk menjalankan aplikasi diantranya menu Filter, dan menu Help. Pada form ini ditampilkan judul, logo serta nama penulis. Rancangan form utama dapat dilihat pada gambar 3.9.

FILTER HELP

JUDUL

LOGO

NAMA & NIM

1 4

7

8

9 LPF

HPF

PENUNTUN TENTANG 2

3

5 6

Gambar 3.9 Rancangan interface form utama

Keterangan:

1) Merupakan Menu editor untuk fungsi filter

2) Merupakan Sub menu editor untuk fungsi Lowpass Filter 3) Merupakan Sub menu editor untuk fungsi Highpass Filter


(63)

4) Merupakan Menu editor untuk fungsi bantuan

5) Merupakan Sub menu editor untuk penuntun menggunakan sistem 6) Merupakan Sub menu editor untuk informasi penulis

7) Merupakan Static text untuk menampilkan judul 8) Merupakan Axes untuk menampilkan logo USU

9) Merupakan Static text untuk menampilkan nama dan nim

3.3.3.2. Rancangan interface form pengujian Lowpass Filter

Halaman pengujian Lowpass Filter dan Highpass Filter akan ditampilkan pada saat user memilih menu Filter. Pada menu ini terdapat dua sub menu untuk 2 proses filtering yakni Lowpass Filter dan Highpass Filter. Rancangan interface untuk form pengujian Lowpass Filter dapat dilihat pada gambar 3.10.

OPEN FILE

CITRA ASLI RGB

CITRA GRAYSCALE TAMBAH KECERAHAN RUN CITRA HASIL PENAJAMAN PENGUJIAN LPF TRANSFORMASI HASIL TRANSFORMASI FOURIER DO:

FILTER FILTER FILTER

IDEAL LPF BUTTERWORTH

LPF GAUSSIAN LPF SAVE SAVE SAVE MSE PSNR BACK MSE PSNR PSNR MSE 2 3 4 1 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 23 22 24 28 25 26 27 29 31 30 32 33 34 35 36 37 39 38 40 41

Gambar 3.10 Rancangan interface form pengujian Lowpass Filter

Keterangan:

1) Merupakan Static text untuk menampilkan kata pengujian LPF 2) Merupakan Push button untuk perintah open file


(64)

6) Merupakan Axes untuk menampilkan citra grayscale

7) Merupakan Static text untuk menampilkan katamenambah kecerahan

8) Merupakan Pop up Menu untuk menampilkan nilai pertambahan kecerahan citra 9) Merupakan Push button untuk perintah menambah kecerahan

10)Merupakan Static text untuk menampilkan katacitra hasil penajaman 11)Merupakan Axes untuk menampilkan hasil penajaman

12) Merupakan Push button untuk perintah transformasi

13) Merupakan Static text untuk menampilkan katahasil transformasi fourier 14) Merupakan Axes untuk menampilkan spectrum transformasi fourier 15) Merupakan Static text untuk menampilkan kataD0

16) Merupakan Pop up Menuuntuk mengisi nilai D0

17) Merupakan Push button untuk perintah filter ILPF

18) Merupakan Static text untuk menampilkan kataIdeal Lowpass Filter 19) Merupakan Axes untuk menampilkan hasil Ideal Lowpass Filter 20) Merupakan Push Button untuk menyimpan citra hasil ILPF 21) Merupakan Static text untuk menampilkan kataMSE ILPF 22) Merupakan Edit text untuk menampilkan nilai MSE ILPF 23) Merupakan Static text untukmenampilkan kata PSNR ILPF 24) Merupakan Edit text untuk menampilkan nilai PSNR ILPF 25) Merupakan Push button untuk perintah filter BLPF

26) Merupakan Static text untuk menampilkan kata Butterworth Lowpass Filter 27) Merupakan Axes untuk menampilkan hasilButterworth Lowpass Filter 28) Merupakan Push Button untuk menyimpan citra hasil BLPF

29) Merupakan Static text untuk menampilkan kata MSE BLPF 30) Merupakan Edit text untuk menampilkan nilai MSE BLPF 31) Merupakan Static text untuk menampilkan kata PSNR BLPF 32) Merupakan Edit text untuk menampilkan nilai PSNR BLPF 33) Merupakan Push button untuk perintah filter GLPF

34) Merupakan Static text untuk menampilkan kataGaussian Lowpass Filter 35) Merupakan Axes untuk menampilkan hasilGaussian Lowpass Filter 36) Merupakan Push Button untuk menyimpan citra hasil GLPF

37) Merupakan Static text untuk menampilkan kata MSE GLPF 38) Merupakan Edit text untuk menampilkan nilai MSE GLPF


(1)

handles.D=60;

guidata(hObject,handles); else

handles.D=80;

guidata(hObject,handles); end;

Sig=handles.D;

H1=hpfilter('ideal',PQ(1),PQ(2),(Sig)); H1=fftshift(H1);

G1=H1.*If;

g1=real(ifft2(G1));

Ifin=zeros(PQ(1),PQ(2)); for m=1:PQ(1)

for n=1:PQ(2)

Ifin(m,n)=((-1)^(m+n))*g1(m,n); end

end

Ifin=Ifin(1:x,1:y); Ifin=uint8(Ifin);

handles.idealhasil=Ifin; axes(handles.IHPF); imshow(Ifin);

hxl=HitungMSE(handles.citra_asli1,handles.idealhasil); set(handles.MSE4,'String',hxl);

psnr= 20 *log10(double(10 * (255/ sqrt(hxl)))); set(handles.PSNR4,'String',psnr);

% --- Executes on button press in save4.

function save4_Callback(hObject, eventdata, handles) % hObject handle to save4 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) [name,path] = uiputfile({'*.jpg';'*.bmp';'*.png'},'Save Image'); if isequal([name,path],[0,0])

return else

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

% --- Executes on button press in fltr2.

function fltr2_Callback(hObject, eventdata, handles) % hObject handle to fltr2 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) PQ=padded(size(handles.citra_asli1));


(2)

Ip=zeros(PQ(1),PQ(2));

Ip(1:x,1:y)=handles.citra_asli1; Ip=double(Ip);

Ic=zeros(PQ(1),PQ(2)); for m=1:PQ(1)

for n=1:PQ(2)

Ic(m,n)=((-1)^(m+n))*Ip(m,n); end

end

If=fft2(Ic);

B=get(handles.pop3,'value'); if B==1

handles.D=10;

guidata(hObject,handles); elseif B==2

handles.D=20;

guidata(hObject,handles); elseif B==3

handles.D=40;

guidata(hObject,handles); elseif B==4

handles.D=60;

guidata(hObject,handles); else

handles.D=80;

guidata(hObject,handles); end;

Sig=handles.D;

H2=hpfilter('btw',PQ(1),PQ(2),Sig,2); H2=fftshift(H2);

G2=H2.*If;

g2=real(ifft2(G2));

Ifin=zeros(PQ(1),PQ(2)); for m=1:PQ(1)

for n=1:PQ(2)

Ifin(m,n)=((-1)^(m+n))*g2(m,n); end

end

Ifin=Ifin(1:x,1:y); Ifin=uint8(Ifin)

handles.btwhasil=Ifin; axes(handles.BHPF); imshow(Ifin);

hxl=HitungMSE(handles.citra_asli1,handles.btwhasil); set(handles.MSE5,'String',hxl);

psnr= 20 *log10(double(10 * (255/ sqrt(hxl)))); set(handles.PSNR5,'String',psnr);


(3)

% --- Executes on button press in save5.

function save5_Callback(hObject, eventdata, handles)

[name,path] = uiputfile({'*.jpg';'*.bmp';'*.png'},'Save Image'); if isequal([name,path],[0,0])

return else

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

% --- Executes on button press in fltr3.

function fltr3_Callback(hObject, eventdata, handles) % hObject handle to fltr3 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) PQ=padded(size(handles.citra_asli1));

[x,y]=size(handles.citra_asli1); Ip=zeros(PQ(1),PQ(2));

Ip(1:x,1:y)=handles.citra_asli1; Ip=double(Ip);

Ic=zeros(PQ(1),PQ(2)); for m=1:PQ(1)

for n=1:PQ(2)

Ic(m,n)=((-1)^(m+n))*Ip(m,n); end

end

If=fft2(Ic);

B=get(handles.pop3,'value'); if B==1

handles.D=10;

guidata(hObject,handles); elseif B==2

handles.D=20;

guidata(hObject,handles); elseif B==3

handles.D=40;

guidata(hObject,handles); elseif B==4

handles.D=60;

guidata(hObject,handles); else

handles.D=80;

guidata(hObject,handles); end;

Sig=handles.D;

H3=hpfilter('gaussian',PQ(1),PQ(2),Sig); H3=fftshift(H3);

G3=H3.*If;

g3=real(ifft2(G3)); Ifin=zeros(PQ(1),PQ(2)); for m=1:PQ(1)


(4)

for n=1:PQ(2)

Ifin(m,n)=((-1)^(m+n))*g3(m,n); end

end

Ifin=Ifin(1:x,1:y); Ifin=uint8(Ifin);

handles.gaussianhasil=Ifin; axes(handles.GHPF);

imshow(Ifin);

hxl=HitungMSE(handles.citra_asli1,handles.gaussianhasil); set(handles.MSE6,'String',hxl);

psnr= 20 *log10(double(10 * (255/ sqrt(hxl)))); set(handles.PSNR6,'String',psnr);

msgbox('Proses Filter sudah selesai dilakukan','Sukses'); % --- Executes on button press in save6.

function save6_Callback(hObject, eventdata, handles)

[name,path] = uiputfile({'*.jpg';'*.bmp';'*.png'},'Save Image'); if isequal([name,path],[0,0])

return else

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

% --- Executes on button press in back2.

function back2_Callback(hObject, eventdata, handles) close

Sistem_LPF_HPF;

9.Form Petunjuk Aplikasi

% --- Executes on button press in pushbutton1.

function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close

Sistem_LPF_HPF;

10. Form About

% --- Executes just before Tentang is made visible.

function Tentang_OpeningFcn(hObject, eventdata, handles, varargin) % This function has no output args, see OutputFcn.

% hObject handle to figure

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) % varargin command line arguments to Tentang (see VARARGIN) handles.output = hObject;


(5)

axes(handles.axes1); imshow(ab);

% --- Executes on button press in pushbutton1.

function pushbutton1_Callback(hObject, eventdata, handles) % hObject handle to pushbutton1 (see GCBO)

% eventdata reserved - to be defined in a future version of MATLAB % handles structure with handles and user data (see GUIDATA) close


(6)

CURRICULUM VITAE

Nama

: Efrienni Tampubolon

Alamat Sekarang

: Jl.Jamin Ginting no 500 P.Bulan, Medan.

Alamat Orang Tua

: Tambunan, Balige.

Telp/ Hp

: 083197311580

Email

: efree.cc@gmail.com

Riwayat Pendidikan

2009 – 2013

: S1 Ilmu Komputer Universitas Sumatera Utara, Medan

2006 – 2009

: SMA Negeri 2 Soposurung Balige

2003 – 2006

: SMPN 1 Balige

1997 – 2003

: SDN 173522 Balige