Anda di halaman 1dari 75

TUGAS AKHIR

SISTEM PEMBANDING CITRA PAS FOTO DENGAN METODE


TRANSFORMASI WAVELET

Diajukan untuk memenuhi salah satu persyaratan dalam menyelesaikan pendidikan


sarjana (S-1) pada Departemen Teknik Elektro

Oleh

MEDISON A. S
020402045

DEPARTEMEN TEKNIK ELEKTRO


FAKULTAS TEKNIK
UNIVERSITAS SUMATERA UTARA
MEDAN
2007

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

ABSTRAK
Perhatian peneliti dalam memanfaatkan teknologi biometrik pada kehidupan untuk mengidentifikasi
manusia dewasa ini sudah semakin banyak. Pengenal wajah sebagai salah satu implementasi dari
biometrik juga sudah cukup banyak dibahas. Salah satu metode pengenal wajah yang sudah ditemukan
adalah metode transformasi Wavelet. Penggunaan transformasi Wavelet dimotivasi oleh hasil beberapa
studi biologi tentang kemiripan sistem retina mata manusia dengan pemrosesan Wavelet. Transformasi
Wavelet diketahui memiliki toleransi, tingkat akurasi dan kecepatan paling baik untuk perbandingan
wajah pada transformasi Wavelet tipe Haar tingkat 3.
Tugas akhir ini dibuat untuk menguji keakuratan dan kecepatan dekomposisi Wavelet diskrit tipe Haar
tingkat 3 melalui sebuah sistem aplikasi pengenal wajah yang dibuat dengan menggunakan bahasa
pemrograman Matlab 7.
Percobaan dilakukan dengan menggunakan 6 pasang sampel foto dari database ORL (Olivetty Research
Laboratory) dan 4 pasang sampel foto yang diambil sendiri oleh penulis. Setiap pasang foto terdiri dari
1 orang yang berbeda ekspresi atau aksesoris.

i
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa atas rahmat dan
karunia yang telah diberikan sehingga dapat menyelesaikan Tugas Akhir ini. Adapun
Tugas Akhir ini dibuat untuk memenuhi syarat memperoleh gelar Sarjana Teknik di
Departemen Teknik Elektro, Fakultas Teknik Universitas Sumatera Utara. Judul dari
Tugas Akhir ini adalah Sistem Pembanding Citra Pas Foto Dengan Metode
Transformasi Wavelet. Tugas Akhir ini penulis persembahkan teristimewa kepada
ayahanda H. Simbolon, SEAk, ibunda dr. R. br. Sianturi, Simon Simbolon, Ika br.
Simbolon selaku adik-adik penulis yang merupakan bagian hidup dari penulis dan
juga Deman yang semuanya senantiasa mendoakan, mendukung dan memberi
semangat kepada penulis. Dalam proses pembuatan Tugas Akhir ini penulis banyak
menemukan masalah dan kesulitan. Namun berkat bantuan dan bimbingan dari
berbagai pihak, Tugas Akhir ini akhirnya dapat selesai. Untuk itu penulis ingin
mengucapkan terima kasih yang sebesar-besarnya kepada :

1. Bapak Ir. Kasmir Tanjung, selaku Dosen Pembimbing Tugas Akhir, atas
segala bimbingan, arahan dan solusi yang telah diberikan selama mengerjakan
Tugas Akhir.
2. Bapak Ir. Satria Ginting, selaku Dosen Wali penulis, atas bimbingan dan
arahan dalam menyelesaikan kuliah.
3. Bapak Prof. Dr. Ir. Usman Baafai selaku Ketua Departemen Teknik Elektro
Fakultas Teknik USU dan Bapak Drs. Hasdari Helmi, MT, selaku Sekretaris
Departemen Teknik Elektro Fakultas Teknik USU.

ii
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

4. Bapak Fahmi, ST, M.Sc atas arahan dan masukan yang diberikan terhadap
penulis.
5. Seluruh Staf Pengajar di Departemen Teknik Elektro Fakultas Teknik USU
dan seluruh Karyawan di Departemen Teknik Elektro Fakultas Teknik USU.
6. Rekan-rekan mahasiswa Teknik Elektro terutama teman-teman old track
stambuk 2002, Junaris, Dodi, Badu, Bugi, Esron, Raymond, Adhi, Daniel,
Chairil, Aritta, Joshua, Denny, Bismar, Yos, Hendra, Ardiansyah, Indra,
Syafril, Agustin, Abu, Ipengadohar, Rahmat, Hamdani, Hatorangan, Deddy,
Usman, Novri, Roger, Erwin, Robert, Sabariah, Echolima, Andriani, Silvia,
Agus, Farid, Afli, Apriandi, Berry, Iqbal, Yandi Boy dan teman-teman 2002
lainnya.
7. Helmine Jane Rozeboom yang juga senantiasa berdoa, mendorong dan
menemani penulis dalam mengerjakan Tugas Akhir ini.
8. Kepada rekan-rekan pengajar dan staff di Binus Center Gajah Mada, yang
telah banyak memberi dorongan semangat kepada penulis.
9. Pihak-pihak lain yang tidak dapat diucapkan namanya satu persatu.

Berbagai usaha telah penulis lakukan demi agar Tugas Akhir ini dapat diselesaikan
dengan baik, namun penulis menyadari bahwa Tugas Akhir ini belum sempurna,
karena masih banyak terdapat kekurangan baik dari isi maupun susunannya. Saran
dari pembaca sangat penulis harapkan.
Akhir kata, penulis berharap semoga penulisan Tugas Akhir ini bermanfaat dan dapat
digunakan.

iii
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Medan,

November 2007

Penulis,

Medison A. S

iv
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

DAFTAR ISI

ABSTRAK..... ........... ........... ........... ........... .................................................................i


KATA PENGANTAR........... ........... ........... ................................................................ii
DAFTAR ISI............. ........... ........... ........... ................................................................v
DAFTAR GAMBAR. ........... ........... ........... .............................................................viii
DAFTAR TABEL...... ........... ........... ........... ................................................................x

BAB I

PENDAHULUAN..... ........... ................................................................1


1.1 Latar Belakang..... ........... ................................................................1
1.2 Tujuan Penulisan.. ........... ................................................................2
1.3 Batasan Masalah.. ........... ................................................................3
1.4 Sistematika Penulisan...... ................................................................3

BAB II

DASAR TEORI DAN KOMPONEN PENDUKUNG.......... ................5


2.1 Penggambaran Citra Digital......... ........... ........... ........... ................5
2.1.1 Sampling....................... ........... ........... ........... ................5
2.1.2 Mode Warna................. ........... ........... ........... ................5
2.1.3 Matriks Pixel Citra Digital....... ........... ........... ................8
2.1.4 Tipe File Citra Digital.............. ........... ........... ................9
2.2 Pengolahan Matriks Pixel Citra Digital... ........... ........... ................9
2.2.1 Downsampling.......................... ........... ........... ..............10
2.2.2 Konvolusi dalam Fungsi Diskrit .......... ........... ..............10
2.3 Wavelet.................................................... ........... ........... ..............15
2.3.1 Transformasi Wavelet Diskrit untuk Dekomposisi

v
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Wavelet Citra 2 Dimensi............................... ..................17


2.2.2 Wavelet Diskrit Tipe Haar................................ ..............19
2.4 Perbandingan Kemiripan......................... ........... ........... ..... ........24
2.5 Matlab...................................................... ........... ........... ..............25

BAB III

PERANGKAT LUNAK SISTEM..... ........... ......................................27


3.1 Gambaran Umum. ........... ........... ........... ......................................27
3.2 PPWdb..... ........... ........... ........... ........... ......................................28
3.2.1 Tombol Ambil Foto....... ........... ......................................30
3.2.2 Tombol Input ke Database..............................................31
3.2.3 Tombol Pengenal Wajah.......... ......................................32
3.2.4 Tombol Reset Database ........... ......................................33
3.2.5 Tombol Keluar.. ........... ........... ......................................33
3.3 PPWfr.................. ........... ........... ........... ......................................34
3.3.1 Tombol Ambil Foto....... ........... ......................................35
3.3.2 Tombol Cari di Database......... ......................................36
3.3.3 Tombol Keluar.. ........... ........... ......................................38

BAB IV

IMPLEMENTASI DAN PENGUJIAN HASIL........ ..........................39


4.1 Implementasi........ ........... ........... ........... ......................................39
4.1.1 PPWdb.. ........... ........... ........... ......................................39
4.1.2 PPWfr.... ........... ........... ........... ......................................43
4.2 Pengujian Hasil.... ........... ........... ........... ......................................47

BAB V

KESIMPULAN DAN SARAN......... ........... ......................................51

vi
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

5.1 Kesimpulan.......... ........... ........... ........... ......................................51


5.2 Saran........ ........... ........... ........... ........... ......................................51

DAFTAR PUSTAKA ........... ........... ........... ........... ........... ......................................52


LAMPIRAN

vii
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

DAFTAR GAMBAR

Gambar 2.1 Warna-Warna di Dalam Mode HSB.................. ........... ............................7


Gambar 2.2 Warna-Warna di Dalam Mode RGB...... ........... ........... ............................7
Gambar 2.3 Pola Penggambaran Matriks Sebuah Citra Digital........ ............................8
Gambar 2.4 Tahapan Dekomposisi Wavelet Diskrit Tingkat 1 pada Citra 2 Dimensi18
Gambar 2.5 Dekomposisi Wavelet Citra Pas Foto.... ........... ........... ..........................19
Gambar 2.6 Citra x yang Akan Didekomposisi Wavelet Tingkat 1.. ..........................20
Gambar 2.7 Tampilan Antarmuka Aplikasi Matlab 7........... ........... ..........................26
Gambar 3.1 Diagram Alir Aplikasi PPWdb.. ........... ........... ........... ..........................29
Gambar 3.2 Tampilan Antarmuka PPWdb.... ........... ........... ........... ..........................29
Gambar 3.3 Diagram Alir Ambil Foto........... ........... ........... ........... ..........................30
Gambar 3.4 Diagram Alir Input ke Database ........... ........... ........... ..........................32
Gambar 3.5 Diagram Alir Reset Database ... ........... ........... ........... ..........................33
Gambar 3.6 Diagram Alir PPWfr..... ........... ........... ........... ........... ..........................34
Gambar 3.7 Tampilan Antarmuka PPWfr .... ........... ........... ........... ..........................34
Gambar 3.8 Diagram Alir Ambil Foto .......... ........... ........... ........... ..........................35
Gambar 3.9 Diagram Alir Cari di Database ........... ........... ........... ..........................37
Gambar 3.10 Diagram Alir Keluar ... ........... ........... ........... ........... ..........................38
Gambar 4.1 Tampilan Antarmuka Sewaktu Aplikasi PPWdb Baru Dijalankan ...... ..40
Gambar 4.2 Tampilan Antarmuka Ketika Tombol Ambil Foto Ditekan...... ..............41
Gambar 4.3 Tampilan Ketika Citra Pas Foto Sudah Terpilih ........... ..........................41
Gambar 4.4 Tampilan Ketika Tombol Input ke Database Ditekan Setelah Sebuah Foto
Diambil. ..................................................................................................42
Gambar 4.5 (a) Tampilan Ketika Tombol Input ke Database Ditekan Tanpa

viii
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Mengambil Foto Terlebih Dahulu......... ..................................................43


Gambar 4.5 (b) Tampilan yang Muncul Ketika Tombol Pengenal Wajah
Ditekan TanpaMengisi Database Terlebih Dahulu....... ..........................43
Gambar 4.6 Tampilan Ketika Aplikasi PPWfr Pertama Kali Dijalankan...... ..............44
Gambar 4.7 Tampilan Ketika Tombol Ambil Foto Ditekan.. ......................................44
Gambar 4.8 Tampilan Ketika Foto Sudah Diambil. ..................................................45
Gambar 4.9 Tampilan yang Muncul Ketika Tombol Cari di Database Baru Saja
Ditekan. ..................................................................................................45
Gambar 4.10 Tampilan yang Muncul Ketika Proses Pencarian di Database Selesai
Dilakukan......... ......................................................................................46
Gambar 4.11 Citra-Citra Pas Foto yang Digunakan Dalam Percobaan... ...................47
Gambar 4.12 Citra Pas Foto Kategori A........ ..............................................................48
Gambar 4.13 Citra Pas Foto Kategori B........ ..............................................................48
Gambar 4.14 Citra Pas Foto Kategori C........ ..............................................................49
Gambar 4.15 Citra Pas Foto Kategori D........ ..............................................................49

ix
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

DAFTAR TABEL

Tabel 2.1 Tipe File Citra yang Umum Digunakan.... ........... ........................................9
Tabel 2.2 Tipe-Tipe Transformasi Wavelet... ........... ........... ......................................16
Tabel 4.1 Hasil Uji Akurasi Aplikasi Per Kategori... ........... ......................................50

x
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

BAB I
PENDAHULUAN

1.1

Latar Belakang

Sistem keamanan dewasa ini semakin dibutuhkan dalam menghadapi gejolak sosial
semakin hari semakin tidak menentu. Pengembangan sistem keamanan ini dilakukan
dari berbagai aspek, salah satunya dari aspek teknologi. Mulai dari penggunaan kata
sandi untuk memakai suatu alat, alarm untuk kendaraan bermotor, sampai detektor
logam untuk mencari senjata berbahaya. Salah satu pengembangan aspek teknologi
yang diyakini memiliki tingkat keamanan cukup baik adalah dengan menggunakan
sistem biometrik.
Biometrik menggunakan informasi-informasi yang bersifat biologis sebagai identitas.
Ide dasar dari biometrik adalah bahwa tubuh manusia memiliki bagian-bagian unik
yang membedakan seseorang dengan yang lainnya. Sistem biometrik yang ada antara
lain :
1.

Pengenal Wajah

2.

Pemindai Sidik Jari

3.

Pemindai Retina

4.

Identifikasi Suara

Sistem biometrik untuk pemindai sidik jari, pemindai retina dan identifikasi suara
dilakukan dengan kesengajaan atau kesadaran orang yang hendak diidentifikasi,
sementara untuk pengenal wajah dapat dilakukan dengan cara sadar ataupun tidak
sadar. Secara sadar, orang yang hendak diidentifikasi dapat memberikan fotonya
untuk dipindai dan diekstraksi oleh sistem, sedangkan kalau secara tidak sadar,

1
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

seseorang bisa mengambil foto orang yang hendak diidentifikasi tersebut secara diamdiam dan kemudian diekstraksi oleh sistem.
Sistem biometrik pengenal wajah ini dapat diaplikasikan pada berbagai bidang,
khususnya bidang keamanan, yaitu:
1.

Sebagai password untuk mengakses suatu sistem

2.

Mencari orang-orang yang terdaftar di dalam Daftar Pencarian Orang


(DPO) dari pihak kepolisian

3.

Dan lain-lain.

Metode pengenal wajah yang sudah ditemukan sangat bervariasi. Tetapi para peneliti
berpendapat bahwa yang terbaik adalah metode dekomposisi Wavelet diskrit tipe
Haar tingkat 3. Hal ini dimotivasi oleh hasil beberapa studi biologi tentang kemiripan
sistem retina mata manusia dengan pemrosesan dekomposisi Wavelet, dimana
dekomposisi Wavelet diskrit tipe Haar tingkat 3 diketahui memiliki nilai toleransi,
tingkat akurasi dan kecepatan yang paling baik. Bahkan sebuah sumber menyebutkan
bahwa sebuah lembaga keamanan yang sangat terkenal juga menggunakan metode ini
untuk pola pengenalan sidik jari pada sistem keamanan mereka.

1.2

Tujuan Penulisan

Adapun penulisan ini bertujuan :


1. Memenuhi salah satu syarat untuk menyelesaikan pendidikan program sarjana
Teknik Elektro di Universitas Sumatera Utara.
2. Untuk menerapkan ilmu yang telah diperoleh semasa kuliah baik teori maupun
praktek khususnya dalam bidang teknik komputer.
3. Untuk menguji keakuratan dan kecepatan dekomposisi Wavelet diskrit tipe
Haar tingkat 3 dalam membandingkan citra pas foto digital.

2
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

1.3

Batasan Masalah

Agar masalah yang ditulis dalam Tugas Akhir tidak terlalu luas dan menyimpang dari
topik yang ada, maka penulis perlu membatasi permasalahan sebagai berikut :
1. Media yang akan dibandingkan adalah citra pas foto yang tampak seluruh
wajah.
2. Citra pas foto yang dibandingkan berupa file pas foto dengan format .jpeg,
mode grayscale 8 bit.
3. Teknik teknik deteksi wajah tidak dibahas.
4. Metode pembanding citra pas foto yang dibahas hanya metode
dekomposisi Wavelet diskrit tipe Haar.

1.4

Sistematika Penulisan

Tugas Akhir ini disusun berdasarkan kerangka penulisan sebagai berikut :


Bab I

: PENDAHULUAN
Pada bab ini akan diuraikan mengenai latar belakang,
tujuan, pembatasan masalah dan sistematika penulisan.

Bab II

: DASAR TEORI DAN KOMPONEN PENDUKUNG


Membahas dasar teori dan komponen pendukung yang akan
digunakan dalam pembuatan perangkat lunak.

Bab III

: PERANGKAT LUNAK SISTEM


Pada bab ini akan dijelaskan mengenai cara kerja perangkat
lunak mulai dari algoritma sampai tampilan antarmukanya.

Bab IV

: IMPLEMENTASI DAN PENGUJIAN HASIL


Pada bab ini dibahas mengenai kode pemrograman dari
perangkat lunak dan pengujian kinerjanya.

3
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Bab V

: KESIMPULAN DAN SARAN


Bab ini berisi kesimpulan mengenai perangkat lunak yang
dibuat serta saran yang bermanfaat mengenai pengembangan
serta perbaikan perangkat lunak tersebut.

4
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

BAB II
DASAR TEORI DAN KOMPONEN PENDUKUNG

2.1 Penggambaran Citra Digital


Sebuah citra 2 dimensi analog tidak bisa diolah lebih lanjut sebelum diubah terlebih
dahulu ke dalam bentuk citra 2 dimensi digital. Bentuk pengolahan citra yang
dimaksud diantaranya adalah proses kompresi gambar, pemberian efek, dekomposisi
dan lain-lain. Sub bab ini akan membahas proses konversi dari citra 2 dimensi analog
ke digital.

2.1.1 Sampling
Sampling adalah proses pencuplikan data setiap selang waktu. Sampling mengubah
sebuah sinyal kontinu menjadi sebuah sinyal diskrit. Proses sampling kadang juga
disebut proses digitisasi. Di dalam pengolahan citra, proses sampling digunakan untuk
menentukan kerapatan warna pada tiap wilayah pada citra kontinu. Pada proses
sampling biasanya dicari warna rata-rata dari wilayah tertentu dari gambar analog.
Warna rata-rata tersebut kemudian dibulatkan, dan dibuat ke dalam suatu elemen
gambar atau yang biasa disebut picture element (pixel). Satu pixel hanya mengandung
satu nilai kerapatan warna.

2.1.2 Mode Warna


Tingkat kerapatan warna pada tiap pixel citra 2 dimensi yang didapat dari proses
sampling kemudian dikuantisasi atau disesuaikan dengan mode warna yang
diinginkan. Mode warna yang ada sangat beragam, tetapi yang umum digunakan
adalah sebagai berikut :
5
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

1. Mode HSB (Hue Saturation Brightness)


2. Mode RGB (Red Green Blue)
3. Mode CMYK (Cyan Magenta Yellow blacK)
4. Mode Grayscale

1. Mode HSB (Hue Saturation Brightness)


Mode HSB berdasar pada persepsi warna menurut manusia. Pada mode ini semua
warna dibagi menjadi tiga karakteristik :

a. Hue adalah panjang gelombang sinar yang dipantulkan dari atau yang
dikirimkan melalui sebuah objek.
b. Saturation kadang-kadang disebut chroma adalah kekuatan atau kemurnian
warna.
c. Brightness adalah terang relatif dan gelap relatif yang diukur dari 0% (sangat
gelap) sampai 100% (sangat terang).

Gambar 2.1 Warna-Warna di Dalam Mode HSB

6
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Mode warna ini juga terkadang disebut HSV (Hue Saturation Value) dimana value
memiliki pengertian yang sama dengan brightness.

2. Mode RGB (Red Green Blue)


Pewarnaan dengan memadukan atau menggabungkan tiga komponen dasar dari
cahaya pada proporsi dan kerapatan tertentu. Komponen ini disebut warna primer,
yaitu :

a. Merah (Red)
b. Hijau (Green)
c. Biru (Blue)

Jika warna-warna itu digabung akan menjadi additive color yaitu warna putih. Mode
warna ini biasanya digunakan pada monitor komputer.

Putih

Gambar 2.2 Warna-Warna di Dalam Mode RGB

7
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

3. Mode CMYK (Cyan Magenta Yellow blacK)


Mode CMYK berbasis pada kualitas penyerapan cahaya. Jika warna Cyan (C),
Magenta (M) dan Yellow (Y) dikombinasikan akan membentuk warna black (K) atau
disebut substractive color. Mode warna ini biasanya digunakan pada mesin cetak
seperti printer.

4. Mode Grayscale
Mode ini menggunakan lebih dari 256 jenis warna abu-abu untuk mewakili sebuah
gambar untuk 8 bit (28). Tiap pixel pada mode grayscale hanya mempunyai nilai
brightness, yang besarnya antara 0 (hitam) dan 255 (putih). Atau dapat pula diukur
dalam persentasi (0% sama dengan putih dan 100% sama dengan hitam).

2.1.3 Matriks Pixel Citra Digital


Tingkat kerapatan warna pada tiap pixel citra 2 dimensi yang didapat dari proses
sebelumnya digambarkan menjadi sebuah matriks NxM dimana M merupakan
banyaknya pixel yang terkandung sepanjang sumbu x dan N merupakan banyaknya
pixel sepanjang sumbu y dari sebuah citra.

Gambar 2.3 Pola Penggambaran Matriks Sebuah Citra Digital


8
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

2.1.4 Tipe File Citra Digital


File citra digital memiliki banyak tipe untuk penyimpanannya di dalam media
penyimpanan. Hal ini dapat disesuaikan dengan kebutuhan pengguna mulai dari
informasi warna yang diberikan sampai kepada ukuran file untuk tiap tipe. Tipe file
citra digital yang sering digunakan lengkap dengan variannya dapat dilihat pada Tabel
2.1.

Tabel 2.1 Tipe File Citra yang Umum Digunakan


Tipe
Bmp

Nama Lengkap

Varian

Windows Bitmap (BMP)

1 bit, 4 bit, 8 bit, 16 bit, 24 bit,


dan 32-bit citra tidak terkompresi
dan

4-bit

dan

8-bit

citra

terkompresi
Gif

Graphics Interchange Format

Jpg atau jpeg

Joint

Photographic

Citra 1-bit dan 8-bit

Experts 8,12 dan 16 bit untuk citra

Group

grayscale dan 24 dan 26 bit untuk


RGB.

2.2 Pengolahan Matriks Pixel Citra Digital


Data yang terkandung pada sebuah matriks citra digital dapat diolah untuk berbagai
keperluan berkaitan dengan pengolahan citra digital. Tujuan pengolahan citra digital
ini sangat beragam, sehingga teknik-teknik pengolahan citra digital yang ada saat ini
pun sudah berkembang dengan cukup pesat.

9
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

2.2.1 Downsampling
Downsampling adalah proses pengurangan laju sampling data dari sinyal input. Laju
sampling data dalam hal ini adalah banyaknya selang pencuplikan baris atau kolom
yang diambil dari suatu citra. Untuk x yang merupakan matriks seperti di bawah ini,

x = [1 2 3 4 5 6 7 8 9 0]

maka hasil downsampling kolom dengan laju sampling 3 adalah

xs = [1 4 7 0]

Downsampling pada sebuah citra digital berguna untuk melakukan proses kompresi
data. Downsampling juga dibutuhkan untuk melakukan proses dekomposisi citra
menjadi citra pendekatan dan citra detil, yang akan dijelaskan pada sub bab
berikutnya.

2.2.2 Konvolusi Dalam Fungsi Diskrit


Konvolusi adalah jumlah berbobot dari pixel-pixel di sekeliling pixel sumber. Bobot
ditentukan oleh matriks kecil yang disebut mask konvolusi atau kernel konvolusi.
Konvolusi diskrit sangat banyak dipergunakan dalam pengolahan citra untuk :

1. Memperhalus (smoothing)
2. Mempertajam (sharpening)
3. Mendeteksi tepi (edge detection)
4. Dan efek lainnya.

10
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Proses konvolusi dalam fungsi diskrit untuk citra 2 dimensi dapat diilustrasikan
sebagai berikut.
Misalkan x adalah sebuah matriks berdimensi 5x5 yang akan dikonvolusi dengan
matriks g yang berdimensi 3x3 yang berfungsi sebagai kernel konvolusi.

p1
p
6
x = p11

p16
p 21

p2
p7

p3
p8

p4
p9

p12
p17
p 22

p13
p18
p 23

p14
p19
p 24

p5
p10
p15

p 20
p 25

a1
g = a 4
a7

a2
a5
a8

a3
a 6
a9

Langkah pertama yang dilakukan adalah dengan memutar kernel g 180 pada
porosnya, sehingga kernel g sekarang sudah berubah menjadi seperti di bawah.

a9
g = a6
a3

a8
a5
a2

a7
a 4
a1

Setelah kernel diputar, maka titik pusat g diletakkan tepat di titik pusat x. Jadi dalam
hal ini, a5 dari matriks g diletakkan tepat di p13 dari x. Dengan posisi seperti itu, maka
dengan sendirinya a1 terletak pada p19, a2 pada p18 dan seterusnya.

p1
p
6
p11

p16
p 21

p2
p 7 / a9
p12 / a 6
p17 / a3
p 22

p3
p8 / a8
p13 / a5
p18 / a 2
p 23

p4
p9 / a 7
p14 / a 4
p19 / a1
p 24

p5
p10
p15

p 20
p 25

11
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Proses konvolusi akan menghasilkan nilai yang baru pada tempat dimana poros kernel
berada. Dengan kondisi ini, karena poros dari kernel adalah a5, maka akan dihasilkan
nilai baru pada p13, dengan persamaan :

p13 = (p7a9) + (p8a8) + (p9a7) + (p12a6) + (p13a5) + (p14a4) + (p17a3) + (p18a2) + (p19a1)

Setelah didapat nilai p13 hasil konvolusi, maka posisi matrik g digeser ke kanan
sebanyak satu langkah. Dalam hal ini, a5 digeser ke posisi p14. Dengan bergesernya

a5, maka a1 sampai a9 juga ikut bergeser ke kanan sebanyak satu langkah.

p1
p
6
p11

p16
p 21

p2
p7
p12
p17
p 22

p3
p8 / a 9
p13 / a 6
p18 / a3
p 23

p4
p9 / a8
p14 / a5
p19 / a 2
p 24

p5
p10 / a 7
p15 / a 4

p 20 / a1
p 25

Langkah berikutnya adalah mencari nilai p14 hasil konvolusi, dengan persamaan :

p14 = (p8a9) + (p9a8) + (p10a7) + (p13a6) + (p14a5) + (p15a4) + (p18a3) + (p19a2) + (p20a1)

p13 yang digunakan dalam persamaan ini adalah nilai p13 sebelum dikonvolusi.
Setelah nilai p14 hasil konvolusi diperoleh, maka matriks g digeser lagi ke posisi yang
lain, sampai diperoleh nilai konvolusi secara keseluruhan. Pada saat kernel g
mencapai pinggiran dari matriks yang akan dikonvolusi, maka sebagian dari kernel
akan tidak menimpa matriks x.

12
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

p1
p
6
p11

p16
p 21

p2
p7
p12
p17
p 22

p3
p8
p13
p18
p 23

p4
p9 / a9
p14 / a 6
p19 / a3
p 24

p5
p10 / a8
p15 / a5
p 20 / a 2
p 25

?
?/ a 7
?/ a 4

?/ a1
?

Jika kernel sudah mencapai keadaan demikian, maka a7, a4, dan a1 akan dikalikan
dengan nol. Nilai nol dalam hal ini disebut juga dengan zero-padded edges. Hal ini
akan sangat merugikan, karena dengan metode seperti itu, maka p10, p15 dan p20 akan
memperoleh hasil konvolusi yang tidak lengkap, karena nilai konvolusinya tidak
diperoleh dari keseluruhan nilai kernel. Hal ini akan menimbulkan kecacatan data
pada pinggiran matriks hasil konvolusi.
Untuk mengatasi hal ini, maka salah satu metode yang dapat digunakan adalah
dengan menyalin kolom pertama ke sebelah kiri kolom pertama dan menyalin kolom
terakhir ke sebelah kanan kolom terakhir. Hasil penyalinannya adalah seperti di
bawah.

6
4

4
a=
9
2

9
5
9
8
2
2

9
3
8
4
2
3

5
9
5
6
9
8

8
6
5
4
8
8

1
1
7

3
6

6
4

4
a =
9
2

6
4
4
9
2
1

9
5
9
8
2
2

9
3
8
4
2
3

5
9
5
6
9
8

8
6
5
4
8
8

1
1
7
3
6
3

1
1
7

3
6

Hal yang serupa juga dapat dilakukan pada baris jika diperlukan.
Dengan melakukan konvolusi pada a, maka akan tetap terjadi kecacatan data pada
ujung-ujung kolom, baik kolom pertama maupun terakhir pada a. Tetapi karena
kolom-kolom pertama dan terakhir pada a adalah merupakan hasil salinan, dengan

13
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

kata lain sudah diluar dari matriks a, maka tidak akan merusak hasil perhitungan.
Setelah dilakukan konvolusi pada a, maka kolom pertama dan terakhir dari hasil
konvolusi dapat dihapus kembali.
Konvolusi juga dapat dilakukan hanya pada baris atau hanya pada kolom dari matriks
citra 2 dimensi. Proses yang dilakukan sebenarnya adalah proses konvolusi 1 dimensi
terhadap setiap baris atau kolom dari matriks citra. Misalkan x adalah matriks
berdimensi 5x5 dan g adalah matriks berdimensi 1x2 yang akan berfungsi sebagai

kernel.

p1
p
6
x = p11

p16
p 21

p2
p7
p12
p17
p 22

p3
p8
p13
p18
p 23

p4
p9
p14
p19
p 24

p5
p10
p15

p 20
p 25

g = [a1

a2 ]

Seperti yang sudah dijelaskan sebelumnya, maka kernel g harus diputar 180 terlebih
dahulu.

g = [a 2

a1 ]

Proses konvolusinya sama dengan konvolusi sebelumnya, hanya saja jika kernel
sudah mencapai pinggir dari kolom, maka kernel tidak bisa bergeser lebih jauh lagi.
Tetapi jika kernel mencapai pinggir dari baris, maka kernel dapat dipindah lagi
sampai hanya tinggal satu baris dari kernel mencapai baris ujung dari matriks citra.

14
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Untuk konvolusi kolom, setelah diputar, kernel ditranspos terlebih dahulu dan
beroperasi hanya pada kolom. Dengan kata lain, kernel tidak bisa berpindah lebih jauh
jika sudah mencapai ujung dari baris.
1 2 3
x = 4 5 6
7 8 9

g = [10 100]

Jika proses yang dilakukan adalah konvolusi baris, maka hasilnya adalah sebagai
berikut.

10 120 230 300


40 450 560 600

70 780 890 900

Sementara jika proses yang dilakukan adalah konvolusi kolom, maka hasilnya adalah
sebagai berikut.
10 20 30
140 250 360

470 580 690

700 800 900

2.3 Wavelet
Wavelet adalah bentuk gelombang yang memiliki durasi terbatas dan memiliki nilai
rata-rata nol. Hal ini berbeda dengan gelombang sinus yang tidak memiliki batasan
durasi. Gelombang sinus memanjang mulai dari minus sampai positif tak hingga.
Wavelet digunakan untuk menyusun, menganalisis, dan mensintesis data numeris
hasil pengukuran/pengamatan suatu fenomena fisis tertentu. Wavelet telah
berkembang sebagai solusi terkini untuk mengatasi kendala-kendala yang umumnya

15
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

dijumpai pada Transformasi Fourier. Salah satu kelemahan Transformasi Fourier


adalah bahwa transformasi tersebut hanya memiliki fungsi frekuensi. Tidak ada fungsi
waktu dan jarak. Hal ini berarti bahwa jika sebuah sinyal ditransformasikan, kapan
dan dimana sinyal tersebut muncul tidak bisa dilihat, walaupun diketahui bahwa
semua sinyal itu ada. Dengan transformasi Wavelet, semua fungsi itu dapat dilihat
secara simultan.
Transformasi Wavelet memiliki beberapa tipe yang masing-masing memiliki
keunggulannya tersendiri dalam berbagai bidang. Tipe-tipe tersebut dapat dilihat pada
Tabel 2.2.

Tabel 2.2 Tipe-Tipe Transformasi Wavelet


Tipe Wavelet

Nama Lengkap

haar

Haar wavelet

'db'

Daubechies wavelets

'sym'

Symlets

'coif'

Coiflets

'bior'

Biorthogonal wavelets

'rbio'

Reverse biorthogonal wavelets

'meyr'

Meyer wavelet

'dmey'

Discrete approximation of Meyer wavelet

'gaus'

Gaussian wavelets

'mexh'

Mexican hat wavelet

'morl'

Morlet wavelet

'cgau'

Complex Gaussian wavelets

16
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Tabel 2.2 Tipe Tipe Transformasi Wavelet (Lanjutan)


Tipe Wavelet

Nama Lengkap

'shan'

Shannon wavelets

'fbsp'

Frequency B-Spline wavelets

'cmor'

Complex Morlet wavelets

2.3.1 Transformasi Wavelet Diskrit untuk Dekomposisi Citra 2 Dimensi


Pada proses dekomposisi citra 2 dimensi dengan transformasi wavelet diskrit, matriks
citra dipilah-pilah dan diproses dengan filter low pass dan high pass sehingga
menghasilkan sub citra pendekatan aj dan sub citra detil hj, vj dan dj. Tahapan
dekomposisi wavelet tingkat 1 dapat dilihat pada Gambar 2.4.

downsample kolom : ambil kolom genap

downsample baris : ambil baris genap

17
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

konvolusi kolom dengan filter high pass

konvolusi kolom dengan filter low pass

konvolusi baris dengan filter high pass

konvolusi baris dengan filter low pass


Gambar 2.4 Tahapan Dekomposisi Wavelet Diskrit Tingkat 1 pada Citra 2 Dimensi

Untuk dekomposisi dengan n tingkatan, maka dekomposisi tingkat selanjutnya


dilakukan dengan memakai output aj dari dekomposisi tingkat sebelumnya sebagai
input. Jadi aj akan didekomposisi lagi menjadi aj+1, hj+1, vj+1 dan dj+1. Matriks an, hn,
vn dan dn masing-masing diurutkan menjadi 1 kolom dan ditranspos menjadi 1 baris.
Hasil akhir dari dekomposisi tingkat n dari citra 2 dimensi adalah matriks C,
sementara S adalah matriks yang berisi ukuran dari matriks x dalam setiap tahap
dekomposisi, dimana :

C = [a n

hn

vn

dn

... h j +1

v j +1

Nn
N
n
M
S=
N j +1
Nj

d j +1

aj

hj

vj

dj

dan

Mn
M n
M

M j +1
Mj

18
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Matriks C nantinya digunakan sebagai matriks identitas untuk proses pengenalan


wajah, sementara S digunakan untuk proses rekonstruksi citra. Gambaran citra 2
dimensi sebelum dan sesudah didekomposisi Wavelet tingkat 3 dapat dilihat pada
Gambar 2.5.

Citra setelah
ditransformasi Wavelet
tingkat 3

Citra Awal

Gambar 2.5 Dekomposisi Wavelet Citra Pas Foto

2.3.2 Wavelet Diskrit Tipe Haar


Wavelet diskrit tipe Haar mendekomposisikan sinyal dengan nilai filter low pass f
dan filter high pass g, dimana :

f =

g =

1
2
1
2

[1
[ 1

1] = [0,7071 0,7071] dan


1] = [ 0,7071 0,7071]

19
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Misalkan citra x yang ditampilkan pada Gambar 2.6 akan didekomposisi dengan
menggunakan dekomposisi Wavelet Diskrit tipe Haar tingkat 1.

Gambar 2.6 Citra x yang Akan Didekomposisi Wavelet Tingkat 1

Citra x berdimensi 5x5 pixel dan menggunakan mode warna grayscale 8 bit, maka
matriks pixel x dapat dibuat sebagai berikut :

x=

33 25 17 10
16 7 7 20

11 17 10 9

27 43 45 2
8 8 8 12

12
1
40

22
10

Karena tipe dekomposisi yang digunakan saat ini adalah tipe Haar, maka

f = [0,7071 0,7071] dan


g = [ 0,7071 0,7071]

dimana f dan g berturut-turut adalah filter low pass dan high pass.

20
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Matriks x akan dikonvolusi baris dengan f. Maka untuk menghindari kecacatan hasil
perhitungan pada pinggiran matriks, maka matriks x diubah menjadi :

33
16

x = 11

27
8

33 25 17 10
16 7 7 20
11 17 10 9
27 43 45 2
8 8 8 12

12
1
40
22
10

12
1
40

22
10

p adalah matriks hasil konvolusi baris antara x dan f. Maka matriks p adalah sebagai
berikut :

23,3345
11,3137

p= 7,7782

19,0919
5,6569

46,6690
22,6274
15,5563
38,1838
11,3137

41,0122
16,2635
19,7990
49,4975
11,3137

29,6985
9,8995
19,0919
62,2254
11,3137

19,0919
19,0919
13,4350
33,2340
14,1421

15,5563
14,8492
34,6482
16,9706
15,5563

16,9706 8,4853
1,4142 0,7071
56,5685 28,2843

31,1127 15,5563
14,1421 7,0711

Karena sebelumnya kolom pertama dan kolom kelima dari p sudah disalin terlebih
dahulu, maka kolom pertama dan kolom terakhir dari p tidak diperlukan lagi dan
sudah dapat dihapus. Isinya disalin ke dalam matriks z.

z=

46,6690
22,6274
15,5563
38,1838
11,3137

41,0122
16,2635
19,7990
49,4975
11,3137

29,6985
9,8995
19,0919
62,2254
11,3137

19,0919
19,0919
13,4350
33,2340
14,1421

15,5563
14,8492
34,6482
16,9706
15,5563

16,9706
1,4142
56,5685
31,1127
14,1421

21
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

z digunakan untuk menghitung nilai aj dan hj. Tetapi sebelum dilakukan perhitungan
terhadap nilai aj dan hj, terlebih dahulu dilakukan downsampling terhadap baris dari
matriks z, sehingga :

z=

41,0122
16,2635
19,7990
49,4975
11,3137

19,0919
19,0919
13,4350
33,2340
14,1421

16,9706
1,4142
56,5685
31,1127
14,1421

Tahap selanjutnya adalah proses konvolusi kolom matriks z dengan f. Tetapi untuk
menghindari kecacatan data, maka baris awal dan akhir matriks z disalin lagi,
sehingga menjadi seperti berikut :

41
41

16
z=
19
49

11
11

, 0122
, 0122
, 2635

19 , 0919
19 , 0919
19 , 0919

16 , 9706
16 , 9706
1 , 4142

, 7990
, 4975
, 3137
, 3137

13
33
14
14

56
31
14
14

, 4350
, 2340
,1421
,1421

, 5685
,1127
,1421
,1421

Proses konvolusi kolom matriks z dengan f sudah bisa dilakukan, dengan y sebagai
matriks hasil konvolusi dimana baris pertama dan baris terakhir hasil konvolusi sudah
dihapus.
58
40 , 5

25 , 5
y=
49
43

16

27
27
23
33
33 , 5
20

24
13
41
62
32
20

22

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Baris pada matriks y kemudian di-downsample, sehingga matriks y sekarang adalah


sebagai berikut.

40 , 5
y = 49
16

27
33
20

13
62
20

Matriks y sekarang adalah sub citra pendekatan atau aj. Untuk menghitung hj juga
dapat dilakukan dengan cara yang sama, hanya saja pada saat melakukan konvolusi
kolom pada matriks z, filter yang digunakan adalah filter high pass atau g, sehingga :

40 , 5
aj = 49
16

27
33
20

13
62
20

dan

17 , 5
hj = 21
0

0
14
0

11
18
0

Cara sebelumnya diulang lagi untuk menghasilkan matriks vj dan dj. Hanya saja kali
ini matriks p adalah konvolusi baris antara x dan g, kemudian vj adalah hasil
konvolusi kolom antara z dan f sementara dj adalah hasil konvolusi kolom antara z dan
g, sehingga diperoleh :

8 ,5
vj = 11
0

22
4

0
0
0

dan

0 ,5
dj = 5
0

10
21
0

0
0
0

Matriks aj, hj, vj dan dj masing-masing disusun menjadi satu kolom dan ditranspos
sehingga diperoleh :

23
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

aj = [40,5 49 16 27 33 20 13 62 20]
hj = [17,5 21 0 0 14 0 11 18 0]
vj = [8,5 11 0 3 22 4 0 0 0]
dj = [ 0,5 5 0 10 21 0 0 0 0]

maka :

C = [40,5 49 16 L 20 17,5 21 0 L 0 8,5 11 0 L 0 0,5 5 0 L 0]

dan
3 3
S = 3 3
5 5

2.4 Perbandingan Kemiripan


Dalam membandingkan kemiripan dua buah citra k dan l , elemen yang digunakan
sebagai pembanding adalah matriks C yang didapat dari hasil dekomposisi masingmasing citra tersebut. Misalkan Ck dan Cl adalah matriks hasil dekomposisi citra k dan
l, dengan :
Ck = [10 2 12 5 8 0 1 1 0 9 17] dan
Cl = [18 0 0 1 7 5 0 12 0 9 2]

Maka langkah untuk membandingkannya adalah :


1. Matriks Ck dan Cl dicari nilai selisih antar pasangan datanya, yang
menghasilkan matriks d.
24
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

d = [ 8 2 12 4 15 5 1 11 0 0 15]

2. Matriks d kemudian dicari nilai mean datanya, yang kemudian menghasilkan


matriks e yang berdimensi 1x1.

e = [ 0,8182]

3. Untuk memudahkan perhitungan, matriks e kemudian dicari nilai absolut


datanya sehingga menghasilkan matriks w yang juga berdimensi 1x1.

w = [0,8182]

Matriks w merupakan hasil pembandingan kedua input citra. Karena yang


dibandingkan adalah 2 citra yang tidak sama persis, maka dibutuhkan nilai toleransi.
Batasan dimana kedua buah citra pas foto dinyatakan mirip atau tidak ditentukan oleh
nilai toleransi tersebut. Semakin kecil nilai w, maka semakin besar persentasi
kemiripan kedua citra pas foto yang dibandingkan.

2.5 Matlab
Matlab (Matrix Laboratory) adalah bahasa pemrograman tingkat tinggi yang
dikhususkan untuk komputasi teknis. Bahasa yang dikembangkan oleh MathWorks ini
mengintegrasikan kemampuan komputasi, visualisasi dan pemrograman dalam sebuah
lingkungan yang tunggal dan mudah digunakan. Aplikasi Matlab yang digunakan
penulis adalah Matlab 7. Tampilan antarmuka Matlab 7 dapat dilihat pada Gambar
2.7.
25
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Pada aplikasi Matlab 7 terdapat beberapa tipe data yang sering digunakan, yaitu :
1. *.m atau m-file
adalah sekumpulan instruksi yang dapat dijalankan dalam sekali panggil.
2. *.mat
adalah format database sederhana yang berbentuk matriks.
3. *.fig
adalah format penyimpanan tampilan GUI (Graphical User Interface).

Gambar 2.7 Tampilan Antarmuka Aplikasi Matlab 7

Setiap penyimpanan ataupun pemuatan variabel atau database pada Matlab selalu
diletakkan pada atau diambil dari direktori yang sedang aktif (current directory).

26
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

BAB III
PERANGKAT LUNAK SISTEM

3.1 Gambaran Umum


Secara umum, sistem pembanding citra pas foto ini terdiri dari dua aplikasi, yaitu
PPWdb dan PPWfr. PPWdb bertujuan untuk mengambil citra pas foto dan kemudian
memasukkan matriks hasil dekomposisinya ke database, sedangkan PPWfr bertujuan
untuk mengambil citra pas foto dan kemudian membandingkannya dengan yang ada
di database untuk mencari kemiripan citra pembanding dengan citra di database.
Di dalam PPWdb digunakan berbagai variabel, antara lain fn, xn dan js. Variabel js
adalah variabel yang digunakan sebagai tempat penyimpanan informasi banyaknya
citra pas foto yang sudah tersimpan di database. Nilai awal js adalah 1, yang artinya
belum ada citra pas foto yang disimpan di database. Setiap ada penyimpanan citra pas
foto, maka nilai js akan ditambah dengan 1. Dalam hal ini, citra pas foto yang dapat
disimpan hanya sebanyak maksimum 5 buah. Citra pas foto yang digunakan dalam
aplikasi ini harus berukuran 112x92 pixel, mode warna grayscale 8 bit dan tipe filenya adalah .jpg. fn adalah variabel yang merupakan hasil dekomposisi dari citra xn.
Dalam hal ini, fn merupakan matriks berdimensi 1x10332. 1x10332 didapat dari
proses dekomposisi Wavelet diskrit tipe Haar tingkat 3 untuk citra 2 dimensi 112x92
pixel. Untuk lebih memudahkan algoritma aplikasi, maka pada awal aplikasi fn
diberikan nilai awal matriks nol berukuran 1x10332.
Aplikasi PPWfr hanya menggunakan variabel x, fb dan hsln. x adalah matriks pixel
dari citra pas foto pembanding, fb adalah variabel yang berisi matriks hasil
dekomposisi Wavelet diskrit tipe Haar tingkat 3 terhadap x, sementara hsln adalah

27
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

hasil dari proses perbandingan fn dan fb. Proses perbandingan 2 buah citra pas foto
dapat dilihat pada bab sebelumnya.

3.2 PPWdb
Sewaktu aplikasi PPWdb dijalankan, tahap pertama yang dilakukan adalah memeriksa
keberadaan file htemp.mat. Jika file ini ada, maka akan dihapus. File htemp.mat
adalah file yang memuat matriks pixel citra xn. Jika file htemp.mat ada pada saat
aplikasi pertama kali dibuka, berarti itu adalah file yang tersisa sewaktu aplikasi
terakhir kali dibuka. Kemudian dilakukan pengisian harga awal ke variabel f1 sampai
f5. Yang diisi adalah matriks nol berukuran 1x10332. Variabel f1 sampai f5 tersebut
disimpan dalam file db.mat. Setelah itu dilakukan juga pengisian nilai awal kepada
variabel js. Dalam hal ini, nilai awalnya adalah 1. Citra

mrx.jpg kemudian

ditampilkan pada aplikasi. Hal ini dilakukan semata-mata hanya sebagai pelengkap,
dan tidak memberi pengaruh apapun ke dalam proses perbandingan. Di dalam aplikasi
PPWdb, terdapat lima tombol yang akan memudahkan pengguna dalam pemakaian.
Kelima tombol tersebut adalah Ambil Foto, Input ke Database, Pengenal Wajah,
Reset Database, dan Keluar.

A
Gambar 3.1 Diagram Alir Aplikasi PPWdb

28
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Gambar 3.1 Diagram Alir Aplikasi PPWdb (Lanjutan)

Gambar 3.2 Tampilan Antarmuka PPWdb


29
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

3.2.1 Tombol Ambil Foto


Sesaat setelah aplikasi mendeteksi penekanan tombol Ambil Foto, sebuah jendela
yang bertujuan untuk mencari file citra pas foto yang ingin dimasukkan ke database
akan ditampilkan. Setiap citra pas foto yang dimasukkan diubah ke dalam matriks
pixel citra (xn).

Gambar 3.3 Diagram Alir Ambil Foto

30
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Variabel xn tersebut lalu disimpan di dalam file htemp.mat. Tahap selanjutnya adalah
dengan menyimpan nama dan lokasi file input citra pada variabel nfn dan npn,
kemudian menyimpannya dalam file impf.mat.

3.2.2 Tombol Input ke Database


xn akan didekomposisi dengan transformasi Wavelet diskrit tipe Haar tingkat 3 jika
aplikasi mendeteksi penekanan tombol Input ke Database. Sebelum dekomposisi
dilakukan, terlebih dahulu dilakukan pemeriksaan terhadap keberadaan file
htemp.mat. Jika file tersebut tidak ada, maka akan ditampilkan pesan bahwa belum
ada foto yang diambil. Tetapi jika file tersebut ada, maka langkah berikutnya adalah
memuat file htemp.mat tersebut, berikut juga file jcount.mat dan db.mat.
Setelah proses pemuatan ketiga file tersebut sudah dilakukan, maka nilai variabel js
dari file jcount.mat diperiksa. Jika nilai js = 6, berarti database sudah penuh dan pesan
yang menyatakan hal tersebut akan ditampilkan. Jika js belum sampai 6, maka nilai xn
yang diperoleh sewaktu pengambilan citra pas foto kemudian didekomposisi. Untuk
nilai js = n, hasilnya kemudian disimpan dengan variabel fn dalam file db.mat untuk
nilai n antara 1 sampai 5. Citra yang disimpan dengan variabel fn akan mendapat
nomor ID n juga. Nilai js tersebut kemudian ditambahkan dengan angka 1 dan
hasilnya disimpan dalam file jcount.mat. Nomor ID tersebutpun kemudian
ditampilkan pada aplikasi sebagai informasi kepada pengguna. Diagram alir Input ke
Database dapat dilihat pada Gambar 3.4.

31
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Gambar 3.4 Diagram Alir Input ke Database

3.2.3 Tombol Pengenal Wajah


Jika aplikasi mendeteksi penekanan tombol ini, aplikasi PPWdb akan ditutup, dan
aplikasi PPWfr dibuka. Keterangan mengenai PPWfr akan dijelaskan pada sub bab
berikutnya.

32
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

3.2.4 Tombol Reset Database


Tombol Reset Database berguna untuk menghapus file htemp.mat, menampilkan
kembali citra mrx.jpg dan mengembalikan nilai fn menjadi matriks nol berukuran
1x10332. Tetapi jika file htemp.mat tidak ada, maka tidak ada dilakukan proses
apapun. Diagram alir untuk tombol Reset Database dapat dilihat pada Gambar 3.5.

Gambar 3.5 Diagram Alir Reset Database

3.2.5 Tombol Keluar


Tombol ini berguna untuk menutup aplikasi.

33
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

3.3 PPWfr

Gambar 3.6 Diagram Alir PPWfr

Gambar 3.7 Tampilan Antarmuka PPWfr

34
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Aplikasi kedua, yang disebut PPWfr, bertujuan untuk melakukan proses perbandingan
citra. Pada aplikasi ini hanya terdapat 3 tombol, yaitu Ambil Foto, Cari di Database,
dan Keluar.

3.3.1 Tombol Ambil Foto


Segera setelah tombol Ambil Foto ditekan, aplikasi akan menampilkan jendela
explorer untuk mencari foto yang mau dibandingkan dari media penyimpanan. Seperti
pada PPWdb, citra yang dimasukkan diubah ke dalam bentuk matriks.

Gambar 3.8 Diagram Alir Ambil Foto


35
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Matriks pixel citra ini disimpan dengan variabel x, dan kemudian langsung
didekomposisi Wavelet tipe Haar tingkat 3, sehingga didapat juga identitas dari citra
yang mau dibandingkan dengan dimensi 1x10332. Identitas ini disimpan dengan
variabel fb dalam file htemp2.mat.

3.3.2 Tombol Cari di Database


Ketika tombol Cari di Database ditekan, aplikasi akan melakukan proses
perbandingan. Tetapi sebelumnya, dilakukan dulu pemeriksaan keberadaan file
htemp2.mat yang hanya akan ada jika foto sudah dipilih. Jika tidak ada, maka akan
ada pesan bahwa foto belum dipilih. Tetapi jika ada, maka file tersebut kemudian
dimuat, berikut file jcount.mat dan db.mat. Kemudian dilakukan pemeriksaan pada
nilai variabel js. Untuk nilai js = 1, yang berarti belum ada foto yang disimpan, maka
ditampilkanlah pesan yang menyatakan demikian. Jika sudah lebih dari 1, maka
proses dilanjutkan dengan perbandingan pas foto. Metodenya adalah dengan mencari
selisih dari masing-masing variabel fn dengan fb. Walaupun citra yang dimasukkan
tidak sampai 5, tetapi tetap dapat dilakukan pencarian selisih tersebut. Hal ini karena
pada aplikasi PPWdb telah diberikan nilai awal matriks nol berdimensi 1x10332 pada
variabel f1 sampai f5. Untuk setiap variabel fn, dilakukan proses perbandingan citra
pas foto dengan fb sehingga menghasilkan matriks hsln. Berdasarkan percobaan yang
dilakukan oleh penulis, nilai toleransi untuk percobaan ini adalah 1. Dengan kata lain,
dua buah citra dikatakan mirip jika 0 < hsln < 1. Citra di database yang dianggap mirip
dengan pembanding kemudian ditampilkan kembali pada aplikasi beserta nomor IDnya.. Alamat dan nama file citra tersebut dimuat dari file impf.mat yang telah
disimpan sebelumnya pada waktu pengambilan foto di PPWdb.

36
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Gambar 3.9 Diagram Alir Cari di Database

37
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

3.3.3 Tombol Keluar


Tombol ini berguna untuk menutup aplikasi PPWfr. Tetapi sebelum menutup aplikasi,
terlebih dahulu dilakukan penghapusan terhadap file htemp2.mat. Hal ini bertujuan
agar sewaktu aplikasi PPWfr dibuka lagi, pengguna tidak bisa langsung menekan
tombol Cari di Database tanpa mengambil citra pas foto pembanding terlebih dahulu,
karena file htemp2.mat yang dibutuhkan sewaktu menekan tombol Cari di Database
sudah dihapus. Tetapi jika file htemp2.mat tersebut sudah tidak ada, aplikasi langsung
ditutup.

Gambar 3.10 Diagram Alir Keluar

38
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

BAB IV
IMPLEMENTASI DAN PENGUJIAN HASIL

Bab ini akan membahas implementasi dari rancangan pada Bab III serta pengujian
perangkat lunak yang dihasilkan. Bagian implementasi menekankan pada demonstrasi
fungsi setiap tombol pada aplikasi, sementara bagian pengujian menekankan pada
ujicoba kemampuan perangkat lunak dalam membandingkan beberapa sampel citra
pas foto.

4.1 Implementasi
Implementasi dari sistem pembanding citra pas foto ini menggunakan bahasa
pemrograman Matlab 7. Penggunaan bahasa pemrograman Matlab 7 dinilai lebih
mudah karena di dalam Matlab 7 sudah terdapat fasilitas GUI (Graphical User
Interface) yang cukup mempermudah pengguna karena tampilan antarmukanya dapat
dibuat sesederhana mungkin. Keuntungan lain dalam menggunakan Matlab 7 adalah
karena di dalamnya sudah terdapat function operasi dekomposisi Wavelet yang bisa
langsung digunakan.
Pada sistem ini terdapat 2 buah m-file, yaitu PPWdb.m dan PPWfr.m yang berisi
kode-kode pemrograman yang akan dijalankan sewaktu PPWdb.fig maupun
PPWfr.fig dijalankan.

4.1.1 PPWdb
Pada Gambar 4.1 dapat dilihat bagaimana tampilan antarmuka PPWdb saat pertama
kali dijalankan. Gambar mrx.jpg yang diambil dari current directory ditampilkan pada
aplikasi.
39
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Gambar 4.1 Tampilan Antarmuka Sewaktu Aplikasi PPWdb Baru Dijalankan

Pada Gambar 4.2 diperlihatkan tampilan antarmuka aplikasi sewaktu tombol Ambil
Foto ditekan. Jendela explorer dengan sendirinya akan muncul untuk memudahkan
pengguna dalam mencari lokasi penyimpanan citra pas foto. Setelah sebuah citra pas
foto terpilih, maka citra pas foto tadi ditampilkan pada aplikasi, sehingga menjadi
seperti pada Gambar 4.3. Gambar 4.4 memperlihatkan tampilan antarmuka aplikasi
sewaktu tombol Input ke Database terpilih. Nomor ID dari citra pas foto tersebut
kemudian ditampilkan juga untuk memudahkan pengguna dalam mengasosiasikan
data input. Tetapi jika tombol Input ke Database ditekan tanpa ada satupun citra pas
foto yang terpilih, maka akan keluar pesan yang menyatakan hal tersebut.

40
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Gambar 4.2 Tampilan Antarmuka Ketika Tombol Ambil Foto Ditekan

Gambar 4.3 Tampilan Ketika Citra Pas Foto Sudah Terpilih

41
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Pada waktu tombol Pengenal Wajah ditekan, maka aplikasi PPWdb akan ditutup dan
aplikasi PPWfr dibuka. Akan tetapi jika belum ada satupun citra pas foto yang sudah
dimasukkan ke database, maka akan timbul pesan kesalahan tersebut jika tombol
Pengenal Wajah ditekan.

Gambar 4.4 Tampilan Ketika Tombol Input ke Database Ditekan Setelah Sebuah

Foto Diambil

Sewaktu tombol Reset Database ditekan, maka aplikasi akan menghapus semua data
yang sudah disimpan sebelumnya dan memunculkan kembali citra mrx.jpg pada
aplikasi.

42
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

(a)

(b)

Gambar 4.5 (a) Tampilan Ketika Tombol Input ke Database Ditekan Tanpa

Mengambil Foto Terlebih Dahulu; (b) Tampilan yang Muncul Ketika Tombol
Pengenal Wajah Ditekan Tanpa Mengisi Database Terlebih Dahulu

4.1.2 PPWfr
Pada aplikasi PPWfr, saat pertama kali aplikasi dijalankan maka akan terlihat 2 buah
kotak tempat menampilkan citra pas foto. Kotak sebelah kiri berfungsi untuk
menampilkan citra pas foto pembanding, sementara kotak sebelah kanan berfungsi
untuk menampilkan citra pas foto dari database yang dianggap paling mirip dengan
pembanding.

43
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Gambar 4.6 Tampilan Ketika Aplikasi PPWfr Pertama Kali Dijalankan

Selain kotak tempat penampilan citra pas foto, pada tampilan aplikasi PPWfr juga
terlihat ada 3 tombol, yaitu Ambil Foto, Cari di Database dan Keluar.

Gambar 4.7 Tampilan Ketika Tombol Ambil Foto Ditekan


44
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Gambar 4.8 Tampilan Ketika Foto Sudah Diambil

Gambar 4.9 Tampilan yang Muncul Ketika Tombol Cari di Database Baru Saja

Ditekan

45
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Seperti halnya pada PPWdb, ketika tombol Ambil Foto ditekan, akan ditampilkan
sebuah jendela explorer untuk memudahkan pengguna dalam mencari citra pas foto
yang disimpan di media penyimpanan. Setelah citra pas foto terpilih, maka citra pas
foto itu akan dijadikan citra pas foto pembanding, dan akan ditampilkan pada kotak
sebelah kiri pada aplikasi.

Gambar 4.10 Tampilan yang Muncul Ketika Proses Pencarian di Database Selesai

Dilakukan

Sesaat setelah tombol Cari di Database ditekan, maka aplikasi akan membandingkan
citra pas foto pembanding dengan yang ada di database untuk mencari citra pas foto
yang paling mirip. Jika ada citra pas foto yang dianggap mirip, maka citra pas foto itu
akan ditampilkan pada kotak sebelah kanan pada aplikasi, dan kemudian muncul
pesan yang menyatakan bahwa citra pas foto pembanding mirip dengan yang ada di
database dengan ID = n.

46
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

4.2 Pengujian Hasil


Pada percobaan ini, citra pas foto yang digunakan sebagai bahan percobaan sebanyak
20 foto yang terdiri dari 10 orang yang berbeda, dimana masing-masing orang
memiliki 2 variasi foto (ekspresi atau aksesoris yang berbeda). Keseluruhan foto bisa
dilihat pada gambar 4.1. Empat pasang foto yang pertama diambil sendiri oleh penulis
dengan menggunakan kamera digital, sementara sisanya diambil dari database wajah
standar dari ORL (Ollyvety Research Laboratory). Berikut adalah citra pas foto yang
digunakan dalam percobaan.

Gambar 4.11 Citra-Citra Pas Foto yang Digunakan Dalam Percobaan


47
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Pengujian dilakukan dalam 6 kategori. Keenam kategori tersebut dibagi berdasarkan


jenis citra pas foto yang dimasukkan ke database. Keenam kategori tersebut dibagi
sebagai berikut :

1. Kategori A
Citra pas foto yang bukan dari ORL dan tanpa memakai kacamata

Gambar 4.12 Citra Pas Foto Kategori A

2. Kategori B
Citra pas foto yang bukan dari ORL dan memakai kacamata

Gambar 4.13 Citra Pas Foto Kategori B

3. Kategori C
Citra pas foto dari ORL dan tanpa memakai kacamata

48
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Gambar 4.14 Citra Pas Foto Kategori C

4. Kategori D
Citra pas foto dari ORL dan memakai kacamata

Gambar 4.15 Citra Pas Foto Kategori D

Masing-masing kategori akan dibandingkan dengan 20 citra pas foto yang sudah ada.
Nilai akurasi dari aplikasi akan ditentukan per kategori dengan rumus sebagai berikut:

Berdasarkan rumusan di atas, maka diperoleh akurasi dari aplikasi untuk masingmasing kategori, yang dapat dilihat pada Tabel 4.1.
Dari hasil percobaan dapat disimpulkan bahwa aplikasi dapat mengenal dengan sangat
baik citra pas foto dari kategori A. Citra kategori B yang bukan merupakan pas foto
dari ORL dapat dikenali cukup baik oleh aplikasi, sementara citra pas foto dari ORL
kurang dapat dikenali secara baik dengan ataupun tanpa kacamata.

49
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Tabel 4.1 Hasil Uji Akurasi Aplikasi Per Kategori


Kategori

Akurasi

100%

60%

50%

50%

Kecepatan aplikasi dalam melakukan perbandingan sama dalam kondisi apapun, yaitu
sebesar 78 milidetik.

50
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

BAB V
KESIMPULAN DAN SARAN

5.1 Kesimpulan
1. Metode transformasi Wavelet teruji cukup akurat dan cepat dalam
membandingkan citra pas foto.
2. Pasangan citra pas foto yang berbeda ekspresi wajah masih dapat dikenali
dengan baik oleh aplikasi.
3. Aplikasi menghasilkan persentasi perbandingan yang lebih buruk untuk citra
pas foto yang telah melalui proses pemindahan melalui intenet.
4. Hasil perbandingan kurang akurat pada citra pas foto yang memakai kacamata.
5. Hasil perbandingan yang dilakukan oleh aplikasi tidak lebih baik daripada
perbandingan melalui pandangan mata manusia.

5.2 Saran
1. Sebaiknya aplikasi dikembangkan agar bisa memodifikasi citra masukan
menjadi berukuran 112x92 pixel, mode warna grayscale 8 bit, dan tipe file
.jpeg, sehingga citra masukan tidak perlu memenuhi kriteria tersebut sebelum
diproses pada aplikasi.
2. Aplikasi ini akan lebih baik jika dapat dihubungkan dengan aplikasi database
yang canggih sehingga dapat memuat data yang jauh lebih banyak hanya
dengan algoritma yang lebih sederhana.
3. Aplikasi ini hendaknya disempurnakan atau diubah ke dalam bentuk aplikasi
yang bisa berjalan tanpa perlu memanggil Matlab terlebih dahulu.

51
Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

DAFTAR PUSTAKA
1. Lim, Resmana, Marcel J.T. Reinders, dan Thiang, 2000, Pengenalan Citra
Wajah dengan Pemrosesan Awal Transformasi Wavelet, Surabaya : Gedung
Pasca Sarjana ITS.
2. Manikarnika, Achim Sanjay, 2006, A General Face Recognition System,
Norwegia : Norwegian University of Science and Technology Department of
Mathematical Sciences.
3. Garcia, Christopher, Giorgos Zikos, Giorgos Tziritas, A Wavelet-based
Framework for Face Recogniton, Heraklion, Yunani : ICS-Foundation for
Research and Technology-Hellas-FORTH.
4. Delac, Kresimir, dan Mislav Grgic, 2007, Face Recognition, Vienna,
Austria : I-Tech Education and Publishing.
5. BiNus Center, 3D Movie Animator; Digital Imaging with Adobe Photoshop,
Jakarta : BiNus Center.
6. Polikar, Robi, The Wavelet Tutorial, 1994, http://users.rowan.edu/~polikar/
WAVELETS/ WTtutorial.html
7. Sandberg, Kristian, The Haar Wavelet Transform, 2000, http://sprott.
physics.wisc.edu/carlson.html.
8. Away, Gunaidi Abdia, MATLAB Programming, 2006, Bandung :
Informatika.
9. Pengolahan Citra, 2007, www.wikipedia.com.
10. Arif, Agus, Kuliah Pengolahan Citra Semester Genap 2006/2007, 2006.
11. Karmilasari, Konvolusi, 2006.
12. Zhao, M, 2 Dimensional Wavelet, 2007.

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

LAMPIRAN

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Kode Pemrograman PPWdb.m


function varargout = PPWdb(varargin)
% PPWdb M-file for PPWdb.fig
% PPWdb, by itself, creates a new PPWdb or raises the existing
% singleton*.
%
% H = PPWdb returns the handle to a new PPWdb or the handle to
% the existing singleton*.
%
% PPWdb('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in PPWdb.M with the given input arguments.
%
% PPWdb('Property','Value',...) creates a new PPWdb or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before PPWdb_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to PPWdb_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Copyright 2002-2003 The MathWorks, Inc.
% Edit the above text to modify the response to help PPWdb
% Last Modified by GUIDE v2.5 17-Jun-2007 19:53:17
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @PPWdb_OpeningFcn, ...
'gui_OutputFcn', @PPWdb_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
% -- BAGIAN INI DIEKSEKUSI TEPAT SEBELUM APLIKASI PPWDB DIJALANKAN -function PPWdb_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 PPWdb (see VARARGIN)

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

cekhtemp=exist('htemp.mat','file'); %periksa apakah file htemp.mat ada


if cekhtemp==2
%jika file htemp.mat ada, maka
delete htemp.mat
%hapus file htemp.mat
else
end

%jika tidak ada, akhiri pencabangan

f1=zeros(1,10332,'double');
f2=zeros(1,10332,'double');
f3=zeros(1,10332,'double');
f4=zeros(1,10332,'double');
f5=zeros(1,10332,'double');
save db f1 f2 f3 f4 f5;
js=1;
save jcount js;

%beri nilai awal matriks nol


%berdimensi 1x10332 tipe double
%ke variabel f1 sampai f5

%simpan ke file db.mat


%masukkan nilai js=1
%simpan nilai js ke file jcount.mat

%ambil file mrx.jpg dan


handles.data1=imread('mrx.jpg');
guidata(hObject,handles);
%tampilkan pada aplikasi
handles.current_data1=handles.data1;
axes(handles.axes1);
imshow(handles.current_data1);
% Choose default command line output for PPWdb
handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes PPWdb wait for user response (see UIRESUME)
% uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.
function varargout = PPWdb_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;
% -- BAGIAN INI DIEKSEKUSI SEWAKTU TOMBOL AMBIL FOTO DITEKAN -function pbambil_Callback(hObject, eventdata, handles)
% hObject handle to pbambil (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%tampilkan kotak dialog untuk mencari citra
[nama_file1, nama_path1]=uigetfile(...
{'*.bmp;*.jpg','File Citra(*.bmp,*.jpg)';
'*.bmp','File Bitmap (*.bmp)';...
'*.jpg','File Jpeg (*.jpg)';
'*.*','Semua File (*.*)'},...

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

'Buka File Citra Host/Asli');


if ~isequal(nama_file1, 0)
%jika citra sudah terpilih, tampilkan
%citra di axes1
handles.data1=imread(fullfile(nama_path1,nama_file1));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes1);
imshow(handles.current_data1);
x=(handles.current_data1); %data citra disimpan dalam variabel x
x=double(x);
save htemp x;

%x diubah tipe datanya menjadi double


%simpan x ke dalam file htemp.mat

load jcount.mat
switch js
case 1
%jika js=1
np1=nama_path1;
%masukkan path citra 1 ke variabel np1
nf1=nama_file1;
%masukkan nama file citra1 ke nf1
save impf np1 nf1;
%simpan variabel np1 dan nf1 ke file
%impf.mat
case 2
np2=nama_path1;
nf2=nama_file1;
save impf np2 nf2 -append; %variabel np2 dan nf2 disimpan dan
%disertakan ke file impf.mat
case 3
np3=nama_path1;
nf3=nama_file1;
save impf np3 nf3 -append;
case 4
np4=nama_path1;
nf4=nama_file1;
save impf np4 nf4 -append;
case 5
np5=nama_path1;
nf5=nama_file1;
save impf np5 nf5 -append;
end
else
return;
end
% -- BAGIAN INI DIEKSEKUSI SEWAKTU TOMBOL INPUT KE DATABASE DITEKAN -function pbinput_Callback(hObject, eventdata, handles)
% hObject handle to pbinput (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

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


cekhtemp=exist('htemp.mat','file');
%periksa apakah file db.mat ada
if cekhtemp==2
%jika file db.mat ada, maka
load htemp.mat;
load jcount.mat;
load db.mat;
switch js

%load file htemp.mat


%load file jcount.mat
%cek nilai js

case 1
%jika js bernilai 1, maka
[f1,m] = wavedec2(x,3,'haar'); %lakukan proses wavelet tipe
%haar level 3 pada variabel x
save db f1 -append;
%simpan variabel f1 ke file
%db.mat
%tambahkan variabel js dengan 1
js=js+1;
save jcount js;
%simpan nilai js ke file
%jcount.mat
warndlg('ID FOTO : 1');
%tampilkan pesan nomor ID foto
%proses sebelumnya diulang
%sampai maksimum 5 input foto
case 2
[f2,m] = wavedec2(x,3,'haar');
save db f2 -append;
js=js+1;
save jcount js;
warndlg('ID FOTO : 2');
case 3
[f3,m] = wavedec2(x,3,'haar');
save db f3 -append;
js=js+1;
save jcount js;
warndlg('ID FOTO : 3');
case 4
[f4,m] = wavedec2(x,3,'haar');
save db f4 -append;
js=js+1;
save jcount js;
warndlg('ID FOTO : 4');
case 5
[f5,m] = wavedec2(x,3,'haar');
save db f5 -append;
js=js+1;
save jcount js;
warndlg('ID FOTO : 5');
case 6

%jika input sudah lebih dari 5,


%tampilkan pesan
warndlg('Anda sudah menyimpan dalam jumlah maksimal..')

end
else

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

warndlg('ANDA BELUM MEMILIH FOTO')


end
% -- BAGIAN INI DIEKSEKUSI SEWAKTU TOMBOL KELUAR DITEKAN -function pbkeluar_Callback(hObject, eventdata, handles)
% hObject handle to pbkeluar (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
close

%keluar

% -- BAGIAN INI DIEKSEKUSI SEWAKTU TOMBOL RESET DATABASE DITEKAN -function pbreset_Callback(hObject, eventdata, handles)
% hObject handle to pbreset (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
cekhtemp=exist('htemp.mat','file'); %periksa apakah file htemp.mat ada
if cekhtemp==2
%jika file htemp.mat ada, maka
%hapus file htemp.mat

delete htemp.mat

handles.data1=imread('mrx.jpg'); %tampilkan citra mrx.jpg ke axes1


guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes1);
imshow(handles.current_data1);
else
end
js=1;
save jcount js;

%masukkan nilai js=1


%simpan nilai js ke file jcount.mat

f1=zeros(1,10332,'double');
f2=zeros(1,10332,'double');
f3=zeros(1,10332,'double');
f4=zeros(1,10332,'double');
f5=zeros(1,10332,'double');
save db f1 f2 f3 f4 f5;

%beri nilai awal matriks nol


%berdimensi 1x10332 tipe double
%ke variabel f1 sampai f5

%simpan ke file db.mat

% -- BAGIAN INI DIEKSEKUSI SEWAKTU TOMBOL PENGENAL WAJAH DITEKAN -function pbfacerec_Callback(hObject, eventdata, handles)
% hObject handle to pbfacerec (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
load jcount
if js==1

%load file jcount.mat


%jika nilai js=1 (database belum
%diisi), maka munculkan peringatan
warndlg('ANDA BELUM MENGISI DATABASE')

else
close PPWdb

%jika nilai js lebih dari 1, maka


%tutup aplikasi PPWdb

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

PPWfr

%jalankan aplikasi PPWfr

end;

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Kode Pemrograman PPWfr.m


function varargout = PPWfr(varargin)
% PPWFR M-file for PPWfr.fig
% PPWFR, by itself, creates a new PPWFR or raises the existing
% singleton*.
%
% H = PPWFR returns the handle to a new PPWFR or the handle to
% the existing singleton*.
%
% PPWFR('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in PPWFR.M with the given input arguments.
%
% PPWFR('Property','Value',...) creates a new PPWFR or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before PPWfr_OpeningFunction gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to PPWfr_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Copyright 2002-2003 The MathWorks, Inc.
% Edit the above text to modify the response to help PPWfr
% Last Modified by GUIDE v2.5 17-Jun-2007 18:15:07
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name',
mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @PPWfr_OpeningFcn, ...
'gui_OutputFcn', @PPWfr_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
% -- BAGIAN INI DIEKSEKUSI TEPAT SEBELUM APLIKASI PPWfr DIJALANKAN -function PPWfr_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 PPWfr (see VARARGIN)

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

% Choose default command line output for PPWfr


handles.output = hObject;
% Update handles structure
guidata(hObject, handles);
% UIWAIT makes PPWfr wait for user response (see UIRESUME)
% uiwait(handles.figure1);
% --- Outputs from this function are returned to the command line.
function varargout = PPWfr_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% Get default command line output from handles structure
varargout{1} = handles.output;
% -- BAGIAN INI DIEKSEKUSI SEWAKTU TOMBOL AMBIL FOTO DITEKAN -function pbambil2_Callback(hObject, eventdata, handles)
% hObject handle to pbambil2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
%tampilkan kotak dialog untuk mencari citra
[nama_file1, nama_path1]=uigetfile(...
{'*.bmp;*.jpg','File Citra(*.bmp,*.jpg)';
'*.bmp','File Bitmap (*.bmp)';...
'*.jpg','File Jpeg (*.jpg)';
'*.*','Semua File (*.*)'},...
'Buka File Citra Host/Asli');
if ~isequal(nama_file1, 0)
%jika citra sudah terpilih, tampilkan
%citra di axes2
handles.data1=imread(fullfile(nama_path1,nama_file1));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes1);
imshow(handles.current_data1);
x=(handles.current_data1); %data citra disimpan dalam variabel x
x=double(x);
%x diubah tipe datanya menjadi double
[fb,m] = wavedec2(x,3,'haar'); %lakukan proses wavelet tipe
%haar level 3 pada variabel x
%simpan variabel fb ke file htemp2.mat
save htemp2 fb;
else
return;
end
% -- BAGIAN INI DIEKSEKUSI SEWAKTU TOMBOL CARI DI DATABASE DITEKAN -function pbcari_Callback(hObject, eventdata, handles)

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

% hObject handle to pbcari (see GCBO)


% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
cekhtemp2=exist('htemp2.mat','file'); %periksa apakah file htemp.mat ada
if cekhtemp2==2
%jika file htemp.mat ada, maka
load htemp2.mat
load jcount.mat
load db.mat

%load file htemp2.mat


%load file jcount.mat
%load file db.mat

if js==1
%jika nilai js=1(database belum diisi), tampilkan pesan
warndlg('ANDA BELUM MEMASUKKAN FOTO KE DATABASE');
%jika nilai js=2 atau lebih, maka
else
min1=f1-fb;
%cari selisih f1 dengan fb, dan simpan hasilnya
%ke variabel min1
mean1=mean(min1); %cari nilai rata-rata dari min1 dan simpan
%hasilnya ke variabel mean1
hsl1=abs(mean1); %cari nilai absolute dari mean 1 dan simpan
%hasilnya ke variabel hsl1, dan merupakan
%identitas pembanding dari citra dengan ID 1
min2=f2-fb;
mean2=mean(min2);
hsl2=abs(mean2);
min3=f3-fb;
mean3=mean(min3);
hsl3=abs(mean3);
min4=f4-fb;
mean4=mean(min4);
hsl4=abs(mean4);
min5=f5-fb;
mean5=mean(min5);
hsl5=abs(mean5);
load impf.mat

%load file impf.mat

%cari nilai terkecil


%jika hsl1 yang terkecil, dan lebih kecil dari 1, maka a=1
a=(hsl1<hsl2)&(hsl1<hsl3)&(hsl1<hsl4)&(hsl1<hsl5)&(hsl1<1);
%jika hsl2 yang terkecil, dan lebih kecil dari 1, maka b=1
b=(hsl2<hsl1)&(hsl2<hsl3)&(hsl2<hsl4)&(hsl2<hsl5)&(hsl2<1);
%jika hsl3 yang terkecil, dan lebih kecil dari 1, maka c=1
c=(hsl3<hsl1)&(hsl3<hsl2)&(hsl3<hsl4)&(hsl3<hsl5)&(hsl3<1);
%jika hsl4 yang terkecil, dan lebih kecil dari 1, maka d=1
d=(hsl4<hsl1)&(hsl4<hsl3)&(hsl4<hsl2)&(hsl4<hsl5)&(hsl4<1);
%jika hsl5 yang terkecil, dan lebih kecil dari 1, maka e=1
e=(hsl5<hsl1)&(hsl5<hsl3)&(hsl5<hsl4)&(hsl5<hsl2)&(hsl5<1);
%tampilkan progress bar
h=waitbar(0,'Sedang diproses...');

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

for i=1:1000;
waitbar(i/1000)
end
close(h)
%jika a=1, maka citra dengan ID 1 mirip dengan citra pembanding
%maka citra dengan ID 1 tersebut ditampilkan
%demikian selanjutnya sampai ID 5
if
a==1
handles.data1=imread(fullfile(np1,nf1));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes2);
imshow(handles.current_data1);
warndlg('MIRIP FOTO 1');
elseif b==1
handles.data1=imread(fullfile(np2,nf2));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes2);
imshow(handles.current_data1);
warndlg('MIRIP FOTO 2');
elseif c==1
handles.data1=imread(fullfile(np3,nf3));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes2);
imshow(handles.current_data1);
warndlg('MIRIP FOTO 3');
elseif d==1
handles.data1=imread(fullfile(np4,nf4));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes2);
imshow(handles.current_data1);
warndlg('MIRIP FOTO 4');
elseif e==1
handles.data1=imread(fullfile(np5,nf5));
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes2);
imshow(handles.current_data1);
warndlg('MIRIP FOTO 5');
else
%jika tidak ada variabel a sampai e yang bernilai 1, maka tidak ada yang
%mirip
%tampilkan pesan dan tampilkan foto mrx.jpg

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

handles.data1=imread('mrx.jpg');
guidata(hObject,handles);
handles.current_data1=handles.data1;
axes(handles.axes2);
imshow(handles.current_data1);
warndlg('TIDAK ADA FOTO YANG MIRIP');
end
end
else
warndlg('ANDA BELUM MENGAMBIL FOTO');
end
% -- BAGIAN INI DIEKSEKUSI SEWAKTU TOMBOL KELUAR DITEKAN -function pbkeluar2_Callback(hObject, eventdata, handles)
% hObject handle to pbkeluar2 (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
cekhtemp2=exist('htemp2.mat','file'); %periksa apakah file htemp.mat ada
if cekhtemp2==2
%jika file htemp.mat ada, maka
delete htemp2.mat
%hapus file htemp2.mat
close;
%keluar dari program
else
close;

%keluar dari program

end

Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007.
USU Repository 2009

Anda mungkin juga menyukai