UNIVERSITAS BINA NUSANTARA ________________________________________________________________
Jurusan Teknik Informatika Skripsi Sarjana Komputer Semester Ganjil tahun 2006/2007
PENGENALAN UANG KERTAS DOLLAR AMERIKA DENGAN METODE TEMPLATE MATCHING
MEITA SETIAWAN / 0700709224 ALBERT JUSTINUS / 0700710213
Abstrak
Tujuan penelitian adalah untuk membuat aplikasi pengenalan uang kertas dollar Amerika. Metode pengenalan yang digunakan adalah Template Matching yaitu metode pencocokan pola yang tersimpan dengan pola yang akan dikenali, pola yang tersimpan disebut template (potongan kecil dari citra yang akan dikenali, yang diperoleh dari proses cropping kiri bawah citra yang terdapat angka atau nominal sebagai ciri-ciri dari uang kertas, yakni nominalnya). Sebelum di cropping, terlebih dahulu dilakukan pengolahan citra. Pengolahan tersebut adalah proses grayscale dan edge detection. Citra diubah dari bentuk RGB ke bentuk grayscale, kemudian dideteksi tepinya. Hasil penelitian sistem pengenalan uang kertas dollar Amerika dengan metode template matching, sistem memiliki tingkat pengenalan tertinggi 100% dan terendah 78.6% berdasarkan beberapa pengujian. Metode template matching cukup baik digunakan untuk aplikasi pengenalan uang kertas dollar Amerika walaupun uang dalam keadaan terbalik atau miring 1° searah maupun berlawanan jarum jam; atau terdapat noise dan blur dengan batas maksimal Uniform noise adalah 25 %, Gaussian noise adalah 20 %, dan batas maksimal untuk Gaussian Blur adalah radius 1.1 piksel; atau jika uang terbalik dan terdapat gangguan (noise atau blur); atau jika uang tersobek atau tercoret tetapi dengan ketentuan bahwa bagian yang tersobek bukan merupakan template dari citra yang ingin dikenali (nominal atau angka yang merupakan ciri dari uang). Kata Kunci : Template Matching, template, cropping, pengolahan citra, grayscale, edge detection.
vi
UCAPAN TERIMA KASIH
Puji syukur kepada Tuhan Yang Maha Esa atas kasih dan karuniaNya sehingga skripsi ini dapat disusun dan diselesaikan dengan baik. Skripsi ini dibuat sebagai syarat kelulusan program studi Strata 1 di Fakultas Ilmu Komputer, jurusan Teknik Informatika, Universitas Bina Nusantara, Jakarta. Kami mengucapkan banyak terima kasih kepada pihak – pihak yang mendukung dan terlibat, baik secara langsung maupun tidak langsung. Ucapan terima kasih ditujukan secara khusus pada :
1. Dekan Fakultas Ilmu Komputer, Ir. Sablin Yusuf, M.Sc, M.Comp.Sc. yang telah membantu dalam persetujuan skripsi ini. 2. Ketua Jurusan Teknik Informatika, H. Mohammad Subekti, BE, M.Sc. yang telah membantu dalam persetujuan skripsi ini. 3. Sekretaris Jurusan Teknik Informatika, Fredy Purnomo, S.Kom, M.Kom yang telah membantu dalam proses persetujuan skripsi non-kelas. 4. Dosen Pembimbing, Haryono Soeparno, Dr, yang telah banyak dalam memberikan pengarahan, saran dan bantuan – bantuan lainnya sehingga skripsi ini dapat diselesaikan dengan baik. 5. Semua Dosen yang telah memberikan pengajaran selama waktu pelaksanaan perkuliahan, yang menjadi bekal untuk penulisan skripsi ini. 6. Orang tua dan keluarga, yang telah memberikan banyak dukungan baik moral maupun materiil sehingga skripsi ini dapat terselesaikan. 7. Teman-teman yang ikut mendukung dan memberikan inspirasi dalam pembuatan skripsi ini. 8. Ucapan terima kasih secara khusus untuk Dosen Tri Djoko Wahjono, Ir., M.Sc. yang telah memberikan inspirasi dan minat di bidang Artificial Intelligence. 9. Teman-teman kelas peminatan Artificial Intelligence angkatan 2003 semester 5 dan 6 yang telah merasakan suka dan duka bersama.
vii
10. Semua pihak yang telah membantu dalam menyelesaikan skripsi ini yang tidak dapat disebutkan satu persatu.
Akhir kata diharapkan skripsi ini dapat bermanfaat dan dikembangkan bagi para pembaca, dan para Binusian.
viii
DAFTAR ISI
Halaman Judul Luar ……………………………………………………..
i
Halaman Judul Dalam ...............................................................................
ii
Halaman Persetujuan Hardcover ………………………………………...
iii
Halaman Pernyataan Dewan Penguji .......................................................
iv
Abstrak ……………………………………………………………………
vi
Ucapan Terima Kasih ……………………………………………………
vii
Daftar Isi ………………………………………………………………….
ix
Daftar Tabel ...............................................................................................
xiii
Daftar Gambar ...........................................................................................
xiv
Daftar Lampiran .........................................................................................
xvii
BAB I
PENDAHULUAN …………………………………………..…… 1 1.1
Latar Belakang ……………………....…………………..…........... 1
1.2
Ruang Lingkup ………………………………………………..…... 2
1.3
Tujuan dan Manfaat ………………………………………….…… 3 1.3.1
Tujuan Penulisan ……………………………………..…… 3
1.3.2
Manfaat Penulisan ………………………………….….….. 3
1.4
Metodologi ………………………………………………….….…. 4
1.5
Sistematika Penulisan …………………………………….….…… 4
BAB II
LANDASAN TEORI …………………………….……….……... 7
2.1
Sistem Visual …………………………………………………….... 7
2.2
Citra Digital ……………………………………………………….. 8
2.3
2.2.1
Definisi Citra …………………………………………….... 8
2.2.2
Tipe Citra ………………………………………………...... 8
2.2.3
Piksel …...………………………………………………..... 9
2.2.4
Relasi Antar Piksel ………………………………………... 10
Pengolahan Citra ………………………………………………...... 11 2.3.1
Geometri Citra ……………………………………………. 11 ix
2.3.2
Definisi Pengolahan Citra ………………………………… 12
2.4
Konversi Citra Abu-Abu Menjadi Citra Biner (Thresholding) ....... 13
2.5
Deteksi Tepi ………………………………………………….…… 14 2.5.1
Karakteristik Tepi …………………………….………...… 14
2.5.2
Gradien ………………………………………...…………. 16
2.5.3
Langkah- langkah Pelacakan Tepi ………… ...…………... 18
2.5.4
Teknik Pelacakan Tepi ………………………………...…. 20 A. Operator Turunan Pertama …...………………………. 20 a. Operator Sederhana ……...…………………… 20 b. Operator Roberts ……………………………... 21 c. Operator Sobel ……………………………….. 22 d. Operator Prewitt ……………………………… 23 e. Operator Canny ………………………………. 23 B. Operator Turunan Kedua …………………………….. 25 a. Operator Laplacian …………………………… 25 b. Operator Laplacian Gaussian ………………… 26
2.5.5
Contoh Deteksi Tepi ........................................................... 27
2.6
Feature …………………………………………………………… 29
2.7
Pengenalan Pola (Pattern Recognition) ………………………….. 30 2.7.1
Template Matching ………………………………………. 31 a. Definisi Template Matching …………………………. 31 b. Metode Template Matching ………………………….. 32 c. Citra Bi-Level ……………………………………….... 33 d. Citra Gray Level …………………………………...…. 33 e. Euclidean Distance …………………………………... 33 f. Correlation ………………………………………….... 34 g. Contoh dalam MATLAB …………………………….. 35
2.7.2 2.8
Histogram ………………………………………………… 35
Uang …………………………………………………………….... 36 2.8.1
Sejarah Uang ……………………………………………... 36
2.8.2
Jenis-jenis Uang ………...……………………………....... 39 x
2.8.3
Uang Dollar Amerika ………………………………….…. 40 a. Sejarah Uang Dollar ………………………………...... 40 b. Uang Dollar Amerika Masa Kini …………………...... 41
2.9
BAB III 3.1
3.2
Flowchart ........................................................................................ 43
ANALISA DAN PERANCANGAN ………………………..… 44 Analisa ……………………………………………………..…….. 44 3.1.1
Analisa Permasalahan ......................................................... 44
3.1.2
Pemecahan Masalah ............................................................ 45
Perancangan …………………………………………………..….. 46 3.2.1
Gambaran Pengenalan Uang Kertas Dollar Amerika .................................................................... 46
3.2.2
Proses Add Template ………………………………..…..... 48
3.2.3
Gambaran Pengolahan Citra (Canny Edge Detection) ………......……………………… 49
BAB IV 4.1
3.2.4
Ekstraksi Ciri ……………………………………………... 51
3.2.5
Proses Recognition ……………………………………….. 52
3.2.6
Rancangan Layar …………………………………………. 54
IMPLEMENTASI DAN EVALUASI …………………..…….. 56 Implementasi ……………………………………………………... 56 4.1.1
Spesifikasi Sistem ………………………………………... 56 a. Spesifikasi Sistem Pendukung Perangkat Keras ........... 56 b. Spesifikasi Sistem Pendukung Perangkat Lunak .......... 57
4.1.2
Pengoperasian Aplikasi Pengenalan Uang Kertas Dollar Amerika …………………………………………………... 57
4.2
Evaluasi …………………………………………………………... 66 4.2.1
Tingkat Pengenalan ……………….…………………….... 67
4.2.2
Evaluasi Jika Uang yang Di-scan Dalam Kondisi Baik ..... 67
4.2.3
Evaluasi Rotation ……………………………………….... 69
4.2.4
Evaluasi Gangguan Pada Citra ........................................... 72 xi
a. Evaluasi Noise ……………………………………….. 72 b. Evaluasi Blur ……………………………………….... 73 c. Evaluasi Noise dan Blur ……………………………... 75 4.2.5
Evaluasi Jika Uang yang Di-scan Tersobek ....................... 76
4.2.6
Evaluasi Jika Uang Terbalik (Rotasi 180 °) dan Terdapat Gangguan ............................................................................ 77
BAB V
4.2.7
Evaluasi Jika Uang Tercoret ............................................... 79
4.2.8
Kesimpulan Evaluasi .......................................................... 80
KESIMPULAN DAN SARAN ………………………………... 81
5.1
Kesimpulan ……………………………………………..………... 81
5.2
Saran …………………………………………………..………..... 82
Daftar Pustaka ………………………………………………………………..... 83 Riwayat Hidup …………………………………………………………............. 86 Lampiran ……………………………………………………………….............. L1
xii
DAFTAR TABEL
BAB IV
IMPLEMENTASI DAN EVALUASI
4.1 Tingkat Pengenalan Sistem Jika Uang Dalam Kondisi Baik ................ 68 4.2 Pengaruh Rotation Citra yang Akan Dikenali Terhadap Tingkat Pengenalan ............................................................................................ 69 4.3 Pengaruh Noise Pada Citra yang Akan Dikenali Terhadap Tingkat Pengenalan ............................................................................... 72 4.4 Pengaruh Blur Pada Citra yang Akan Dikenali Terhadap Tingkat Pengenalan ............................................................................................ 74 4.5 Pengaruh Noise Dan Blur Pada Citra Yang Akan Dikenali Terhadap Tingkat Pengenalan ............................................................................... 75 4.6 Tingkat Pengenalan Jika Citra yang Akan Dikenali Tersobek ............. 76 4.7 Tingkat Pengenalan Jika Citra Yang Akan Dikenali Terbalik Dan Terdapat Gangguan ............................................................................... 77 4.8 Tingkat Pengenalan Jika Citra Yang Akan Dikenali Tercoret .............. 79
xiii
DAFTAR GAMBAR
BAB II
LANDASAN TEORI
2.1
Perbedaan letak titik origin pada kordinat grafik dan pada citra ..... 8
2.2
Relasi Antar Piksel …………………………………………........... 11
2.3
Diskontinuitas langkah ..................................................................... 15
2.4
Diskontinuitas Garis ......................................................................... 15
2.5
Diskontinuitas Landai ....................................................................... 15
2.6
Diskontinuitas Atap ......................................................................... 15
2.7
Susunan piksel-piksel tetangga dari piksel p 0 = ( x, y ) …………... 22
2.8
Citra Asli Sebelum Deteksi Tepi ..................................................... 27
2.9
Hasil Deteksi Tepi Menggunakan Operator Roberts, Sobel dan Prewitt ……………………………………………………………. 27
2.10
Citra Hasil Deteksi Tepi Menggunakkan Operator Laplacian of Gaussian ………………………………………………………….. 28
2.11
Citra Hasil Deteksi Tepi Menggunakan Operator Canny ……....... 28
2.12
Feature Vector ………………………………………………….... 29
2.13
Feature Space (3D) ……………………………………………..... 29
2.14
Scatter Plot (2D) ............................................................................. 30
2.15
Metode Template Matching …………………………………….... 32
2.16
Citra Bi-Level …………………………………………………...... 32
2.17
Citra Gray Level ………………………………………………..... 33
2.18
Contoh Template Matching dalam MATLAB ………………..…. 35 xiv
2.19
Dollar Amerika Pecahan 100 …………………………………….. 41
2.20
Dollar Amerika Pecahan 50 …………………………………….... 41
2.21
Dollar Amerika Pecahan 20 …………………………………….... 41
2.22
Dollar Amerika Pecahan 10 …………………………………….... 42
2.23
Dollar Amerika Pecahan 5 ……………………………………..… 42
2.24
Dollar Amerika Pecahan 2 ……………………………………..… 42
2.25
Dollar Amerika Pecahan 1 ……………………………………..… 43
BAB III
ANALISA DAN PERANCANGAN
3.1
Gambaran Pengenalan Uang Kertas Dollar Amerika ..................... 46
3.2
Sistem Pengenalan Uang Kertas Dollar Amerika ........................... 47
3.3
Proses Add Template ....................................................................... 48
3.4
Proses Memasukkan Pola ............................................................... 48
3.5
Deteksi Tepi dengan Canny ............................................................ 50
3.6
Proses Ekstraksi Ciri ....................................................................... 51
3.7
Proses Recognition ……………………………………………….. 52
3.8
Rincian Proses Recognition …………………………..…….......... 53
3.9
Rancangan Area Layar ….………………………………………... 54
3.10
Rancangan Layar …………………………………………………. 55
BAB IV
IMPLEMENTASI DAN EVALUASI
4.1
Aplikasi yang dijalankan ................................................................ 57
4.2
Menu Open Image ........................................................................... 58
4.3
Open Image .................................................................................... 59 xv
4.4
Peringatan Add Sample ................................................................... 60
4.5
Add Sample ..................................................................................... 60
4.6
Recognition ..................................................................................... 61
4.7
Result ............................................................................................... 62
4.8
Message Box Add Sample ………………………………………... 63
4.9
Contoh Lain Hasil Proses Recognition ........................................... 63
4.10
Keluar Aplikasi ............................................................................... 64
4.11
Kembali Ke Figure ......................................................................... 65
4.12
Kembali Ke Aplikasi ……………………………………………... 65
4.13
About Us ………………………………………………………….. 66
xvi
DAFTAR LAMPIRAN
Lampiran Source Code ……………………………………………………….…... L1 Lampiran Citra Uang ............................................................................................... L24
xvii