-
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.
iMedison 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.
iiMedison 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.
iiiMedison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007. USU Repository 2009
-
Medan, November 2007
Penulis,
Medison A. S
ivMedison 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
vMedison 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
viMedison 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
viiMedison 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
viiiMedison 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
ixMedison 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
xMedison 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,
1Medison 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 diam-
diam 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.
2Medison 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.
3Medison 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.
4Medison 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 :
5Medison 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
6Medison 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
7Medison 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
8Medison 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 Nama Lengkap Varian
Bmp 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 Citra 1-bit dan 8-bit
Jpg atau jpeg Joint Photographic Experts
Group
8,12 dan 16 bit untuk citra
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.
9Medison 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 = [ ]0987654321
maka hasil downsampling kolom dengan laju sampling 3 adalah
xs = [ ]0741
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.
10Medison 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.
x = g =
2524232221
2019181716
1514131211
109876
54321
ppppppppppppppppppppppppp
987
654
321
aaaaaaaaa
Langkah pertama yang dilakukan adalah dengan memutar kernel g 180 pada porosnya, sehingga kernel g sekarang sudah berubah menjadi seperti di bawah.
g =
123
456
789
aaaaaaaaa
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.
2524232221
2011921831716
1541451361211
107988976
54321
/////////
ppppppapapapppapapapppapapappppppp
11Medison 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.
2524232221
1202193181716
4155146131211
710899876
54321
/////////
pppppapapapppapapapppapapappp
ppppp
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.
12Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007. USU Repository 2009
-
??/?/?/
?
//////
1
4
7
2524232221
220319181716
515614131211
81099876
54321
aaa
pppppapappppapappppapapppp
ppppp
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.
a = a =
388321689222346489755894169354185996
363711
388321689222346489755894169354185996
129446
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
13Medison 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.
x = g =
2524232221
2019181716
1514131211
109876
54321
ppppppppppppppppppppppppp
[ ]21 aa
Seperti yang sudah dijelaskan sebelumnya, maka kernel g harus diputar 180 terlebih dahulu.
g = [ ]12 aa
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.
14Medison 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.
x = g =
987654321
[ ]10010
Jika proses yang dilakukan adalah konvolusi baris, maka hasilnya adalah sebagai
berikut.
900890780706005604504030023012010
Sementara jika proses yang dilakukan adalah konvolusi kolom, maka hasilnya adalah
sebagai berikut.
900800700690580470360250140302010
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
15Medison 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
16Medison 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
17Medison 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 = [ ]jjjjjjjnnnn dvhadvhdvha 111... +++ dan
S =
++
MNMN
MN
MNMN
jj
jj
nn
nn
11
MM
18Medison 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 = [ ]112
1 = [ ]7071,07071,0 dan
g = [ ]112
1 = [ ]7071,07071,0
19Medison 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 =
10128882224543274091017111207716
1210172533
Karena tipe dekomposisi yang digunakan saat ini adalah tipe Haar, maka
f = [ ]7071,07071,0 dan g = [ ]7071,07071,0
dimana f dan g berturut-turut adalah filter low pass dan high pass.
20Medison 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 :
x =
1022401
12
10128882224543274091017111207716
1210172533
827111633
p adalah matriks hasil konvolusi baris antara x dan f. Maka matriks p adalah sebagai
berikut :
p=
0711,71421,145563,151421,143137,113137,113137,116569,55563,151127,319706,162340,332254,624975,491838,380919,192843,285685,566482,344350,130919,197990,195563,157782,77071,04142,18492,140919,198995,92635,166274,223137,114853,89706,165563,150919,196985,290122,416690,463345,23
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 =
1421,145563,151421,143137,113137,113137,111127,319706,162340,332254,624975,491838,385685,566482,344350,130919,197990,195563,15
4142,18492,140919,198995,92635,166274,229706,165563,150919,196985,290122,416690,46
21Medison 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 =
1421,141421,143137,111127,312340,334975,495685,564350,137990,19
4142,10919,192635,169706,160919,190122,41
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 :
z =
1421,141421,143137,111421,141421,143137,111127,312340,334975,495685,564350,137990,19
4142,10919,192635,169706,160919,190122,419706,160919,190122,41
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.
y =
202016325,334362334941235,2513275,40242758
22Medison 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.
y =
20201662334913275,40
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 :
aj = dan h
20201662334913275,40
j =
0001814211105,17
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 :
vj = dan d
04002211035,8
j =
00002150105,0
Matriks aj, hj, vj dan dj masing-masing disusun menjadi satu kolom dan ditranspos
sehingga diperoleh :
23Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007. USU Repository 2009
-
aj = [ ] 20621320332716495,40hj = [ ]0181101400215,17 vj = [ ]00042230115,8 dj = [ ]00002110055,0
maka :
C = [ ]0055,000115,800215,172016495,40 LLLL
dan
S =
553333
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 masing-
masing citra tersebut. Misalkan Ck dan Cl adalah matriks hasil dekomposisi citra k dan
l, dengan :
Ck = [ ]17901108512210 dan Cl = [ ]2901205710018
Maka langkah untuk membandingkannya adalah :
1. Matriks Ck dan Cl dicari nilai selisih antar pasangan datanya, yang
menghasilkan matriks d.
24Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007. USU Repository 2009
-
d = [ ]150011151541228
2. Matriks d kemudian dicari nilai mean datanya, yang kemudian menghasilkan
matriks e yang berdimensi 1x1.
e = [ ]8182,0
3. Untuk memudahkan perhitungan, matriks e kemudian dicari nilai absolut
datanya sehingga menghasilkan matriks w yang juga berdimensi 1x1.
w = [ ]8182,0
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.
25Medison 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).
26Medison 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 file-
nya 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
27Medison 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.
Gambar 3.1 Diagram Alir Aplikasi PPWdb A
28Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007. USU Repository 2009
-
A
Gambar 3.1 Diagram Alir Aplikasi PPWdb (Lanjutan)
Gambar 3.2 Tampilan Antarmuka PPWdb
29Medison 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
30Medison 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.
31Medison 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.
32Medison 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.
33Medison 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
34Medison 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
35Medison 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 ID-
nya.. Alamat dan nama file citra tersebut dimuat dari file impf.mat yang telah
disimpan sebelumnya pada waktu pengambilan foto di PPWdb.
36Medison A.S : Sistem Pembanding Citra Pas Foto Dengan Metode Transformasi Wavelet, 2007. USU Repository 2009
-
Gambar 3.9 Diagram Alir Cari di Database
37Medison 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
38Medison 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.
39Medison 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.
40Medison 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
41Medison 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.
42Medison 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.
43Medison 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
44Medison 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
45Medison 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.
46Medison 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
47Medison 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
48Medison 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 masing-
masing 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.
49Medison 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
A 100%
B 60%
C 50%
D 50%
Kecepatan aplikasi dalam melakukan perbandingan sama dalam kondisi apapun, yaitu
sebesar 78 milidetik.
50Medison 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.
51Medison 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 %jika tidak ada, akhiri pencabangan end f1=zeros(1,10332,'double'); %beri nilai awal matriks nol f2=zeros(1,10332,'double'); %berdimensi 1x10332 tipe double f3=zeros(1,10332,'double'); %ke variabel f1 sampai f5 f4=zeros(1,10332,'double'); f5=zeros(1,10332,'double'); save db f1 f2 f3 f4 f5; %simpan ke file db.mat js=1; %masukkan nilai js=1 save jcount js; %simpan nilai js ke file jcount.mat handles.data1=imread('mrx.jpg'); %ambil file mrx.jpg dan 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); %x diubah tipe datanya menjadi double save htemp x; %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 file htemp.mat load jcount.mat; %load file jcount.mat load db.mat; switch js %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 js=js+1; %tambahkan variabel js dengan 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 delete htemp.mat %hapus file 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; %masukkan nilai js=1 save jcount js; %simpan nilai js ke file jcount.mat f1=zeros(1,10332,'double'); %beri nilai awal matriks nol f2=zeros(1,10332,'double'); %berdimensi 1x10332 tipe double f3=zeros(1,10332,'double'); %ke variabel f1 sampai f5 f4=zeros(1,10332,'double'); f5=zeros(1,10332,'double'); save db f1 f2 f3 f4 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 %load file jcount.mat if js==1 %jika nilai js=1 (database belum %diisi), maka munculkan peringatan warndlg('ANDA BELUM MENGISI DATABASE') else %jika nilai js lebih dari 1, maka close PPWdb %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 save htemp2 fb; %simpan variabel fb ke file htemp2.mat 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 file htemp2.mat load jcount.mat %load file jcount.mat load db.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
-
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