Pengenalan angka dengan pose jari tangan.

(1)

viii

INTISARI

Pengolahan citra adalah suatu bidang yang berhubungan proses transformasi citra yang bertujuan untuk mendapatkan kualitas citra yang lebih baik. Teknologi pengolahan citra ini, sangat berkembang pesat dan banyak juga dikenal oleh para insinyur di dunia. Salah satu penerapan dari teknologi pengolahan citra tersebut adalah pengenalan angka dengan pose jari tangan.

Sistem pengenalan angka dengan pose jari tangan yang dibuat ini adalah pengenalan pola angka bahasa isyarat ASL (American Sign Language) dari 0 s/d 9, dengan jarak pengujian yang digunakan ialah 1 m, 1,5 m, 2 m, 2,5 m, dan 3 m. Secara garis besar beberapa proses kerja dari sistem ini ialah pengambilan citra pose jari tangan berupa citra Red, Green, and Blue (RGB), konversi citra RGB ke citra Hue Saturation Value (HSV), segmentasi HSV, cropping dan resizing, perhitungan korelasi (template matching), serta penentuan keluaran. Proses segmentasi HSV pada penelitian ini, bertujuan untuk mengambil objek yang ingin dikenali pada citra, yaitu bagian kulit (muka dan tangan). Sedangkan pada proses template matching, perhitungan nilai korelasi dilakukan berdasarkan perbandingan antara database citra yang telah dimasukkan dan citra pose jari tangan yang telah diambil dengan menggunakan webcam (data uji).

Pengujian secara real time pada penelitian ini menggunakan jarak terjauh 3 meter, dengan menghasilkan tingkat pengenalan sebesar 88 %. Hasil ini diperoleh dari hasil ekstraksi ciri 32 x 32 piksel.

Kata Kunci : Pengolahan Citra, American Sign Language, Red, Green, and Blue, Hue Saturation Value, Korelasi, Template Matching, Database, Ekstraksi Ciri.


(2)

ix

ABSTRACT

Image processing is a field that related to the image transformation for get a better image quality. This image processing technology, is grown rapidly and also known by many engineers in the world. One application of the image processing technology is number recognition with hand finger pose.

Number recognition with hand finger pose system is number pattern recognition of ASL (American Sign Language) sign from 0 until 9, the used testing distance is 1 m, 1.5 m, 2 m, 2.5 m and 3 m. In outline, some of the workings of this system are capture the hand finger pose that form of the image is Red, Green, and Blue (RGB), the conversion of the RGB image into Hue Saturation Value (HSV), HSV segmentation, cropping and resizing, calculate the correlation (template matching), and determination of the output. HSV segmentation process in this study is aiming to take the object that will be recognized in the image, which is part of the skin (face and hand). While in the template matching process, calculation of correlation value is based on a comparison between the image database that has been inputted and the hand finger pose image that has been captured using a webcam (test data).

Testing in real time on this study uses 3 meters of the longest distance, with result of recognition rate is 88 %. This result was obtained from the feature extraction of 32 x 32 pixels.

Keywords: Image Processing, American Sign Language, Red, Green, and Blue, Hue Saturation Value, Correlation, Template Matching, Database, Feature Extraction.


(3)

i

TUGAS AKHIR

PENGENALAN ANGKA DENGAN

POSE JARI TANGAN

Diajukan untuk memenuhi syarat

Memperoleh gelar Sarjana Teknik pada

Program Studi Teknik Elektro

disusun oleh :

DIRGA EKA PUTRA LEBUKAN

NIM : 135114015

PROGRAM STUDI TEKNIK ELEKTRO

JURUSAN TEKNIK ELEKTRO

FAKULTAS SAINS DAN TEKNOLOGI

UNIVERSITAS SANATA DHARMA

YOGYAKARTA


(4)

ii

FINAL PROJECT

NUMBER RECOGNITION WITH

HAND FINGER POSE

In a partial fulfillment of the requirements

for the degree of Sarjana Teknik

Electrical Engineering Study Program

created by :

DIRGA EKA PUTRA LEBUKAN

Student’s Number : 135114015

ELECTRICAL ENGINEERING STUDY PROGRAM

DEPARTMENT OF ELECTRICAL ENGINEERING

FACULTY OF SCIENCE AND TECHNOLOGY

SANATA DHARMA UNIVERSITY

YOGYAKARTA

2017


(5)

iii

HALAMAN PERSETUJUAN

TUGAS AKHIR

PENGENALAN ANGKA DENGAN

POSE JARI TANGAN

(NUMBER RECOGNITION WITH

HAND FINGER POSE)

disusun oleh :

DIRGA EKA PUTRA LEBUKAN

NIM : 135114015

telah disetujui oleh :

Pembimbing I


(6)

iv

HALAMAN PENGESAHAN

TUGAS AKHIR

PENGENALAN ANGKA DENGAN

POSE JARI TANGAN

(NUMBER RECOGNITION WITH

HAND FINGER POSE)

disusun oleh :

DIRGA EKA PUTRA LEBUKAN

NIM : 135114015

Telah dipertahankan di depan tim penguji pada tanggal 26 Januari 2017 dan dinyatakan memenuhi syarat

Susunan Tim Penguji :

Nama Lengkap Tanda Tangan Ketua : Dr. Ir. Iswanjono, M.T.

Sekretaris : Dr. Ir. Linggo Sumarno, M.T. Anggota : Dr. Damar Widjaja, S.T., M.T.

Yogyakarta,

Fakultas Sains dan Teknologi Universitas Sanata Dharma Dekan,


(7)

v

PERNYATAAN KEASLIAN KARYA

Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar pustaka sebagaimana karya ilmiah.

Yogyakarta, 2 Januari 2017


(8)

vi

HALAMAN PERSEMBAHAN MOTTO HIDUP

MOTTO :

WHEN YOU HAVE

A CHANCE

YOU HAVE TO

TRY

Skripsi ini kupersembahkan untuk ….

Yesus Kristus dan Bunda Maria yang selalu menyertai dan

menuntunku dalam setiap hari-hariku

Papa dan Mama tercinta yang selalu mendoakan dan mendukungku

Teman-teman seperjuangan Teknik Elektro 2013 yang selalu

mewarnai hari-hariku


(9)

vii

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA

ILMIAH UNTUK KEPENTINGAN AKADEMIS

Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :

Nama : DIRGA EKA PUTRA LEBUKAN

Nomor Mahasiswa : 135114015

Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas Sanata Dharma karya ilmiah yang berjudul :

PENGENALAN ANGKA DENGAN

POSE JARI TANGAN

Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk media lain, mengelolanya dalam bentuk pangkalan data, mendistribusikan secara terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan nama saya sebagai penulis.

Dengan ini pernyataan yang saya buat dengan sebenarnya.

Yogyakarta, 2 Januari 2017 Penulis


(10)

viii

INTISARI

Pengolahan citra adalah suatu bidang yang berhubungan proses transformasi citra yang bertujuan untuk mendapatkan kualitas citra yang lebih baik. Teknologi pengolahan citra ini, sangat berkembang pesat dan banyak juga dikenal oleh para insinyur di dunia. Salah satu penerapan dari teknologi pengolahan citra tersebut adalah pengenalan angka dengan pose jari tangan.

Sistem pengenalan angka dengan pose jari tangan yang dibuat ini adalah pengenalan pola angka bahasa isyarat ASL (American Sign Language) dari 0 s/d 9, dengan jarak pengujian yang digunakan ialah 1 m, 1,5 m, 2 m, 2,5 m, dan 3 m. Secara garis besar beberapa proses kerja dari sistem ini ialah pengambilan citra pose jari tangan berupa citra Red, Green, and Blue (RGB), konversi citra RGB ke citra Hue Saturation Value (HSV), segmentasi HSV, cropping dan resizing, perhitungan korelasi (template matching), serta penentuan keluaran. Proses segmentasi HSV pada penelitian ini, bertujuan untuk mengambil objek yang ingin dikenali pada citra, yaitu bagian kulit (muka dan tangan). Sedangkan pada proses template matching, perhitungan nilai korelasi dilakukan berdasarkan perbandingan antara database citra yang telah dimasukkan dan citra pose jari tangan yang telah diambil dengan menggunakan webcam (data uji).

Pengujian secara real time pada penelitian ini menggunakan jarak terjauh 3 meter, dengan menghasilkan tingkat pengenalan sebesar 88 %. Hasil ini diperoleh dari hasil ekstraksi ciri 32 x 32 piksel.

Kata Kunci : Pengolahan Citra, American Sign Language, Red, Green, and Blue, Hue Saturation Value, Korelasi, Template Matching, Database, Ekstraksi Ciri.


(11)

ix

ABSTRACT

Image processing is a field that related to the image transformation for get a better image quality. This image processing technology, is grown rapidly and also known by many engineers in the world. One application of the image processing technology is number recognition with hand finger pose.

Number recognition with hand finger pose system is number pattern recognition of ASL (American Sign Language) sign from 0 until 9, the used testing distance is 1 m, 1.5 m, 2 m, 2.5 m and 3 m. In outline, some of the workings of this system are capture the hand finger pose that form of the image is Red, Green, and Blue (RGB), the conversion of the RGB image into Hue Saturation Value (HSV), HSV segmentation, cropping and resizing, calculate the correlation (template matching), and determination of the output. HSV segmentation process in this study is aiming to take the object that will be recognized in the image, which is part of the skin (face and hand). While in the template matching process, calculation of correlation value is based on a comparison between the image database that has been inputted and the hand finger pose image that has been captured using a webcam (test data).

Testing in real time on this study uses 3 meters of the longest distance, with result of recognition rate is 88 %. This result was obtained from the feature extraction of 32 x 32 pixels.

Keywords: Image Processing, American Sign Language, Red, Green, and Blue, Hue Saturation Value, Correlation, Template Matching, Database, Feature Extraction.


(12)

x

KATA PENGANTAR

Puji dan syukur penulis panjatkan kepada Tuhan Yesus Kristus karena berkat rahmat dan penyertaan-Nya penulis dapat menyelesaikan laporan tugas akhir ini dengan baik dan lancar. Laporan tugas akhir ini disusun untuk memenuhi syarat memperoleh gelar sarjana, khususnya dibidang Teknik Elektro.

Pada proses penulisan laporan tugas akhir ini, penulis menyadari bahwa ada banyak pihak yang telah memberikan perhatian dan bantuannya sehingga dapat terlesaikan dengan baik. Oleh karena itu, penulis ingin mengucapkan terima kasih kepada :

1. Tuhan Yesus Kristus dan Bunda Maria atas penyertaan-Nya.

2. Sudi Mungkasi, S.Si, M.Math.Sc., Ph.D., selaku Dekan Fakultas Sains dan Teknologi Universitas Sanata Dharma.

3. Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro, Fakultas Sains dan Teknologi, Universitas Sanata Dharma.

4. Dr. Ir. Linggo Sumarno, M.T., selaku dosen pembimbing dengan penuh pengertian dan kesabaran dalam memberi bimbingan, kritik, saran, serta motivasi kepada penulis untuk menyelesaikan laporan tugas akhir ini.

5. Dr. Ir. Iswanjono, M.T. dan Dr. Damar Widjaja, S.T., M.T., selaku dosen penguji yang telah memberikan masukan, bimbingan, saran untuk merevisi laporan tugas akhir ini. 6. Bapak dan ibu dosen yang telah mengajarkan banyak hal selama penulis menempuh

pendidikan di Program Studi Teknik Elektro, Fakultas Sains dan Teknologi, Universitas Sanata Dharma.

7. Para staff sekretariat Teknik Elektro, atas bantuannya dalam membantu dan melayani mahasiswa.

8. Kedua orang tuaku serta keluarga besarku, atas doa dan dukungannya kepada penulis. 9. Para sahabat Teknik Elektro 2013 atas doa dan dukungannya agar penulis tetap semangat

dalam menyelesaikan laporan tugas akhir ini.

10. Semua pihak yang tidak dapat disebutkan satu persatu atas dukungan dan bantuan yang telah diberikan dalam penyelesaian laporan tugas akhir ini.


(13)

xi

Pada akhirnya, penulis sangat menyadari bahwa laporan tugas akhir ini masih terdapat banyak kekurangan. Oleh karena itu, penulis sangat mengharapkan masukan, kritik dan saran yang sifatnya membangun agar laporan tugas akhir ini nantinya bisa menjadi lebih baik dan dapat bermanfaat sebagaimana mestinya.

Penulis


(14)

xii

DAFTAR ISI

HALAMAN JUDUL ……….. i

HALAMAN PERSETUJUAN ………... iii

HALAMAN PENGESAHAN ……… iv

PERNYATAAN KEASLIAN KARYA ……….... v

HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ………. vi

LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS ……… vii

INTISARI ………. viii

ABSTRACT ………. ix

KATA PENGANTAR ……….. x

DAFTAR ISI ……… xii

DAFTAR GAMBAR ……… xv

DAFTAR TABEL ……… xviii

BAB I : PENDAHULUAN ………. 1

1.1. Latar Belakang ……….. 1

1.2. Tujuan dan Manfaat Penelitian ………. 2

1.3. Batasan Masalah ………... 2

1.4. Metodologi Penelitian ……….. 3

BAB II : DASAR TEORI ………. 5

2.1. Jari Tangan ………. 5

2.2. Pengolahan Citra ………... 6

2.2.2. Citra Red, Green, and Blue (RGB) ……….. 7

2.3. Hue Saturation Value (HSV) ……… 8

2.4. Wavelet ……….. 11


(15)

xiii

2.4.2. Wavelet Haar ………. 13

2.4.3. Konvolusi ……….. 14

2.5. Template Matching dan Korelasi ……….. 16

2.6. Database Citra ……….. 17

2.7. Webcam ……… 17

BAB III : RANCANGAN PENELITIAN ……… 19

3.1. Perancangan Sistem ………. 19

3.2. Proses Kerja Sistem ……….… 20

3.2.1. Input Data ………. 20

3.2.2. Konversi Citra RGB ke HSV ………... 20

3.2.3. Segmentasi HSV ……….. 21

3.2.4. Cropping dan Resizing ………. 22

3.2.5. Ekstraksi Ciri Wavelet ……….. 23

3.2.6. Perhitungan Korelasi (Template Matching) ………. 27

3.2.7. Penentuan Keluaran ………. 28

3.3. Database ………. 29

3.4. Pengujian Pose Jari Tangan ……… 33

3.4.1. Pengujian secara Real Time ………... 33

3.4.2. Pengujian secara Non Real Time ………... 33

3.5. Analisis Data Pengujian ………. 33

3.6. Ruangan Pengujian dan Pencahayaan ……… 34

3.6. Perancangan Tampilan GUI ……… 35

BAB IV : HASIL DAN PEMBAHASAN………... 40

4.1. Langkah – langkah Menjalankan Program ………... 40

4.1.1. Langkah – langkah untuk Menjalankan Program secara Real Time ……….. 40

4.1.2. Langkah – langkah untuk Menjalankan Program secara Non Real Time ……….. 44

4.2. Penjelasan Sintaks Program ………. 46

4.2.1. Penjelasan Sintaks Program secara Real Time ………... 46

4.2.1. Penjelasan Sintaks Program secara Non Real Time ……… 53

4.3. Analisis Hasil Data Pengujian ……….. 54


(16)

xiv

4.3.2. Analisis Hasil Data Pengujian Secara Non Real Time ……… 59

BAB V : KESIMPULAN DAN SARAN ………... 63

5.1. Kesimpulan ………. 63

5.2. Saran ……… 63

DAFTAR PUSTAKA ………. 64


(17)

xv

DAFTAR GAMBAR

Halaman

Gambar 2.1. Jari Tangan ………. 5

Gambar 2.2. Bentuk Isyarat Angka 0-9 ……….. 6

Gambar 2.3. Proses Pembentukan Citra ………. 7

Gambar 2.4. Reprentasi Warna pada RGB ……… 8

Gambar 2.5. Ruang Warna HSV ………... 9

Gambar 2.6. Skala Warna HSV ……… 9

Gambar 2.7. Contoh Sintaks Program untuk Mengkonversi Citra RGB ke HSV, beserta Memplot dan Menampilkan Citranya dengan menggunakan Sintaks subplot dan imshow. ………. 10

Gambar 2.8. (a) Citra RGB (b) Citra HSV ……… 10

Gambar 2.9. Algoritma Pyramid ……….. 11

Gambar 2.10. Wavelet Haar ………. 14

Gambar 2.11. Representasi Matriks dari Penjumlahan Konvolusi, y = [ 6 25 45 39 16 12] ………. 15

Gambar 2.12. Webcam Logitech C270 yang digunakan dalam Penelitian …….. 17

Gambar 3.1. Diagram Blok Sistem ……….. 19

Gambar 3.2. Diagram Alir dari Proses Konversi Citra RGB ke HSV ………… 21

Gambar 3.3. Diagram Alir dari Proses Segmentasi HSV ……… 22

Gambar 3.4. Diagram Alir dari Proses Cropping ……… 23

Gambar 3.5. Diagram Alir dari Proses Resizing ………. 23

Gambar 3.6. Diagram Alir dari Proses Ekstraksi Ciri ……… 25

Gambar 3.7. Diagram Alir dari Proses Konvolusi ……….. 26


(18)

xvi Gambar 3.9. Diagram Alir dari Proses

Perhitungan Korelasi (Template Matching) ……… 27

Gambar 3.10. Diagram Alir dari Proses Penentuan Keluaran ……… 27

Gambar 3.11. Diagram Blok Proses Pembentukan Database ……….... 30

Gambar 3.12. Ruangan Tugas Akhir Teknik Elektro USD yang digunakan dalam Pengambilan Data ………... 34

Gambar 3.13. Tata Pencahayaan Ruangan Tugas Akhir Teknik Elektro USD ……… 34

Gambar 3.14. Tampilan GUI Sistem Pengenalan Angka dengan Pose Jari Tangan ……… 35

Gambar 3.15. Diagram Alir Proses yang Terdapat pada GUI ………... 36

Gambar 4.1. Icon Matlab R2010a ………. 40

Gambar 4.2. Tampilan Utama Matlab R2010a ………. 41

Gambar 4.3. Directory D:\TE\TA Lokasi disimpannya File GUI ………….... 41

Gambar 4.4. Pemanggilan File GUI ………. 42

Gambar 4.5. GUI Software Pengenalan Angka dengan Pose Jari Tangan …… 42

Gambar 4.6. Pemilihan Variasi Desimasi ………. 43

Gambar 4.7. Contoh Ketika GUI dijalankan untuk Pengujian Angka 9 dengan Variasi Desimasi = 3 ……… 43

Gambar 4.8. Pemanggilan File Program secara Non Real Time ………. 44

Gambar 4.9. Memasukkan Nilai Desimasi, Misalnya Desimasi = 2 ………… 44

Gambar 4.10. Citra Hasil Cropping ………. 44

Gambar 4.11. Citra Hasil Resizing ……….. 45

Gambar 4.12. Citra Hasil Ekstraksi Ciri Wavelet dengan Desimasi = 2 …… 45

Gambar 4.13. Hasil Keluaran Teks pada Command Window Matlab ………. 46


(19)

xvii Gambar 4.15. Software Logitech Webcam pada

saat Pengambilan Foto Data Uji ………. 53

Gambar 4.16. Grafik Hasil Pengujian Real Time ………... 58 Gambar 4.17. Grafik Hasil Pengujian Non Real Time ………... 60 Gambar 4.18. Percobaan di Ruang Tugas Akhir Teknik Elekro USD (1) … 61 Gambar 4.19. Percobaan di Ruang Tugas Akhir Teknik Elekro USD (2) … 62


(20)

xviii

DAFTAR TABEL

Halaman Tabel 4.1. Proses Cropping sesuai Bounding Box ………. 50 Tabel 4.2. Hasil Desimasi 1 s/d 3 pola Angka ASL 0-9 pada 5 Variasi Jarak …… 54 Tabel 4.3. Hasil Pengujian Real Time ………. 58 Tabel 4.4. Hasil Pengujian Non Real Time ……….. 59


(21)

1

BAB I

PENDAHULUAN

1.1.

Latar Belakang

Seiring dengan kemajuan teknologi hingga saat ini, begitu banyak teknologi terobosan baru diciptakan guna untuk membantu manusia dalam hal-hal tertentu, misalnya dalam hal pembelajaran. Salah satu teknologi yang saat ini berkembang pesat dan banyak juga dikenal oleh para insinyur di dunia ialah teknologi image processing atau biasa disebut dalam bahasa Indonesia ialah pengolahan citra.

Pengolahan citra atau image processing merupakan bidang yang berhubungan proses transformasi citra yang bertujuan untuk mendapatkan kualitas citra yang lebih baik [1]. Salah satu contoh aplikasi image processing adalah pengenalan angka dengan pose jari tangan, dengan pola angka yang dikenali ialah pola isyarat angka American Sign Language (ASL). Pada proses pengenalan, tidak semua objek akan dikenali dan digunakan. Metode yang berfungsi untuk mereduksi piksel dibutuhkan, lalu kemudian akan digunakan sebagai ciri. Proses ini dinamakan sebagai ekstraksi ciri.

Sistem pengenalan bahasa isyarat ASL melalui jari tangan ini sebelumnya sudah pernah dilakukan, dengan pola yang dikenali ialah huruf A-Z pada ASL [2]. Metode yang digunakan ialah Personal Component Analysis (PCA) dan Haar Like Feature. Selain itu, software yang digunakan untuk membuat sistem ini ialah C Sharp dan library EmguCV. Jarak pengujian pada sistem ini ialah 10 - 90 cm.

Pada penelitian ini, peneliti membuat sistem pengenalan angka 0-9 dengan pose jari tangan sesuai dengan pola isyarat ASL menggunakan software Matlab, serta menggunakan metode yang berbeda dari penelitian sebelumnya. Metode yang dimaksud ialah metode ekstraksi ciri Wavelet dan metode pengenalan Template Matching. Selain itu, jarak pengujian yang digunakan pada sistem ini ialah 1 - 3 m. Jarak pengujian ini mengacu pada aturan komunikasi nonverbal dalam kategori personal (75-120 cm) dan sosial (120-210 cm atau 210-360 cm) [3].


(22)

Secara garis besar proses kerja dari sistem ini ialah mengambil citra pose jari tangan berupa citra Red, Green, and Blue (RGB), konversi citra RGB ke citra Hue Saturation Value (HSV), segmentasi HSV, cropping dan resizing, perhitungan korelasi (template matching), serta penentuan keluaran. Proses segmentasi HSV pada penelitian ini, bertujuan untuk mengambil objek yang ingin dikenali pada citra yang telah diambil. Sedangkan pada proses template matching, perhitungan nilai korelasi dilakukan berdasarkan perbandingan antara database citra yang telah dimasukkan dan citra pose jari tangan yang telah diambil dengan menggunakan webcam (data uji). Hasil dari proses pengenalan angka dengan pose jari tangan ini akan ditampilkan dengan berupa teks.

1.2.

Tujuan dan Manfaat Penelitian

Tujuan dari penelitian ini adalah menghasilkan sistem pengenalan karakter angka 0-9 berdasarkan pola isyarat ASL.

Manfaat dari penelitian ini adalah :

a. Untuk penelitian awal pengenalan kode angka berdasarkan pola isyarat ASL. b. Untuk media pembelajaran bahasa isyarat pola ASL.

1.3.

Batasan Masalah

Dalam proses pembuatan software pengenalan angka dengan pose jari tangan, peneliti menetapkan beberapa batasan masalah dalam penelitian ini, antara lain :

a. Angka yang dapat dikenali ialah angka 0 s/d 9.

b. Menggunakan pola isyarat angka jenis American Sign Language.

c. Jarak pengujian antara webcam dan jari tangan yang digunakan ialah 1 m, 1,5 m, 2 m, 2,5 m, dan 3 m.

d. Warna background yang digunakan ialah hitam. e. Orientasi jari tangan ialah tegak.


(23)

g. Ekstraksi ciri yang digunakan ialah Wavelet.

h. Metode pengenalan yang digunakan ialah Template Matching.

i. Resolusi kamera webcam yang digunakan ialah 3 MP (2048 x 1536 piksel). j. Input citra jari tangan berupa citra Red, Green, and Blue (RGB).

k. Penguji menggunakan lengan panjang. l. Tangan kiri penguji diletakkan di belakang.

m. Desimasi yang digunakan ialah desimasi 1 (32 x 32 piksel), desimasi 2 (16 x 16 piksel), dan desimasi 3 (8 x 8 piksel).

n. Ouput berupa teks.

o. Pencahayaan dalam pengambilan citra pose jari tangan dikondisikan sedemikian rupa sehingga tidak menimbulkan efek silau pada citra.

p. Hasil pengenalan real time dan non real time.

q. Menggunakan software Matlab dalam pembuatan program.

1.4.

Metodologi Penelitian

Langkah-langkah dalam pengerjaan penelitian ini:

a. Pengumpulan bahan-bahan referensi berupa buku dan jurnal-jurnal serta informasi dari website yang terpercaya.

b. Perancangan software.

Tahap ini bertujuan untuk mencari bentuk atau model yang optimal dari software yang akan dibuat dengan mempertimbangkan faktor-faktor permasalahan dan kebutuhan yang ditentukan.

c. Pembuatan software.

Sofware akan mulai bekerja ketika pada mulanya penguji mengambil citra pose jari tangan. Citra pose jari tangan berupa citra RGB, selanjutnya akan melalui beberapa proses yang lebih lanjut, yaitu konversi citra RGB ke citra HSV, segmentasi HSV,


(24)

cropping dan resizing, perhitungan korelasi (template matching), serta penentuan keluaran. Hasil pengenalan dari citra pose jari tangan dilakukan dengan menekan push button pada GUI (secara real time) dan run pada M-File Window matlab (secara non real time). Semua proses dalam software ini akan diolah oleh komputer untuk mendapatkan hasil pengenalan.

d. Analisa dan penyimpulan.

Analisa dilakukan dengan menyelidiki besar tingkat pengenalan dan menggambar grafik dari tingkat pengenalan tersebut.

Penyimpulan hasil percobaan dilakukan dengan melihat hasil tingkat pengenalan dan hasil data uji secara keseluruhan, serta hal-hal lainnya yang dapat ditarik sebagai kesimpulan.


(25)

5

BAB II

DASAR TEORI

2.1. Jari Tangan

Jari merupakan suatu bagian tubuh yang berada pada tangan dan kaki manusia, baik yang sebelah kiri ataupun kanan [4]. Pada manusia normal jari tangan sebanyak lima, yaitu:

Gambar 2.1. Jari Tangan Keterangan Gambar 2.1 :

1. Jempol atau ibu jari. 2. Jari telunjuk.

3. Jari tengah merupakan jari yang paling panjang di antara jari tangan. 4. Jari manis.

5. Jari kelingking.

Jari tangan manusia sering digunakan sebagai alat komunikasi melalui gerakan pada jari tersebut. Salah satu contoh yang sering digunakan oleh para penyandang tunawicara, mereka berkomunikasi melalui gerak-gerakan yang mengandung arti tertentu.

1

2

3

4

5


(26)

Salah satu bentuk isyarat yang digunakan bagi para penyandang tunawicara ialah isyarat tentang pola angka seperti pada Gambar 2.2, yaitu untuk memperkenalkan angka 0-9 dengan menggunakan jari tangan dalam berbagai pose, karakter-karakter tersebut akan menunjukkan arti atau isyarat tentang pola angka.

0 1 2 3 4

5 6 7 8 9

Gambar 2.2. Bentuk Isyarat Angka 0-9

Gambar 2.2, merupakan isyarat bentuk angka pola American Sign Language [5]. Mode bahasa isyarat jenis ini yang paling banyak dikenal dan telah dipakai sebagai pedoman bahasa isyarat pada dunia internasional.

2.2. Pengolahan Citra

Citra (image) merupakan gambar pada bidang dua dimensi, dengan citra adalah dimensi spasial atau bidang yang berisi informasi warna yang tidak bergantung waktu [6].

Jika pendekatan matematis dilakukan, citra adalah fungsi yang sifatnya menerus (continue) atas intensitas cahaya pada bidang dua dimensi. Sumber cahaya menerangi objek, objek memantulkan kembali seluruh atau sebagian berkas cahaya, kemudian ditangkap oleh alat optis atau elektro-optis.

Citra terdiri atas piksel, dengan piksel merupakan sekumpulan titik-titik pada pada gambar. Titik-titik tersebut menggambarkan posisi koordinat dan mempunyai intensitas yang dapat dinyatakan dalam f(x,y), dengan (x,y) adalah koordinat pada bidang dua dimensi dan f(x,y) adalah intensitas cahaya (brightness) pada titik (x,y).


(27)

Karena cahaya merupakan bentuk energi, maka intensitas cahaya bernilai antara 0 sampai tak hingga (0 ≤ f( x,y) < ∞). Nilai f(x,y) adalah perkalian antara :

1. i(x,y) : Energi cahaya yang datang dari sumbernya (illumination), dengan nilai dari 0 sampai tak hingga, dan

2. r(x,y) : Derajat kemampuan objek memantulkan cahaya (reflection) dengan nilai antara 0 dan 1. Nilai 0 adalah penyerapan total, sedangkan nilai 1 adalah pemantulan total.

Gambar 2.3 menunjukkan proses pembentukan intensitas cahaya. Sumber cahaya menyinari objek, besar pancaran cahaya yang diterima oleh objek pada koordinat (x,y) adalah i(x,y), setelah itu objek memantulkan cahaya yang diterima dengan derajat pemantulan r(x,y).

Hasil perkalian antara i(x,y) dan r(x,y) merupakan intensitas cahaya pada koordinat (x,y) yang ditangkap oleh sensor visual pada sistem optis. Jadi dengan demikian f(x,y) = i(x,y).r(x,y) dengan : 0 ≤ i(x,y) < ∞dan 0 ≤ r(x,y) ≤ 1, sehingga 0 ≤ f(x,y) < ∞.

Gambar 2.3. Proses Pembentukan Citra [6]

Proses pra-pengolahan citra (image pre-prosessing) dilakukan untuk memperoleh citra yang mempunyai kualitas yang lebih baik daripada citra sebelumnya. Dengan cara memanipulasi parameter-parameter citra, akan menghasilkan bentuk yang lebih cocok terhadap nilai-nilai piksel citra tersebut untuk proses yang lebih lanjut.

2.2.1. Citra Red, Green, and Blue (RGB)

Red (Merah), Green (Hijau) dan Blue (Biru) adalah warna dasar yang dapat ditangkap oleh mata manusia. Setiap piksel pada citra warna mewakili warna dari kombinasi ketiga warna dasar RGB. Setiap titik pada citra warna membutuhkan data sebesar 3 byte. Setiap


(28)

warna dasar memiliki intensitas tersendiri dengan nilai minimum nol (0) dan nilai maksimum 255 (8 bit). RGB berdasar pada teori bahwa mata manusia peka terhadap panjang gelombang 630 nm (merah), 530 nm (hijau), dan 450 nm (biru) [7].

Gambar 2.4. Reprentasi Warna pada RGB [7] Pada Gambar 2.4 di atas dapat dilihat bahwa :

1. RGB terdiri atas tiga warna utama, yaitu merah, hijau, dan biru.

2. Campuran antar dua warna pada RGB menghasilkan warna baru, yaitu : kuning = merah + hijau, cyan = hijau + biru, dan magenta = biru + merah.

3. Bila seluruh warna merah, hijau, dan biru dicampur akan menghasilkan warna putih.

2.3.

Hue Saturation Value (HSV)

HSV mendefinisikan warna dalam terminologi Hue, Saturation, dan Value. Keuntungan HSV ialah terdapat beberapa warna yang sama dengan yang mampu ditangkap oleh indra manusia [8]. Sedangkan warna yang dibentuk oleh model lainnya seperti RGB merupakan hasil campuran dari warna-warna primer.


(29)

Gambar 2.5. Ruang Warna HSV [8]

Model HSV pertama kali diperkenalkan oleh A.R Smith pada tahun 1978, yang ditunjukkan pada Gambar 2.5. Melalui model gambar tersebut, dapat diketahui bahwa HSV memiliki 3 karakteristik pokok, yaitu Hue, Saturation, dan Value. Berikut ini penjelasannya.

Hue : Menyatakan warna sebenarnya, seperti merah, violet, dan kuning. Serta digunakan menentukan kemerahan (redness), kehijauan (greeness), dan sebagainya.

Saturation : Kadang disebut chroma, adalah kemurnian atau kekuatan warna.

Value : Kecerahan dari warna. Nilainya berkisar antara 0-100 %. Apabila nilainya 0 maka warnanya akan menjadi hitam. Semakin besar nilai value, maka semakin cerah dan akan muncul variasi-variasi baru dari warna tersebut.

Selain penjelasan di atas, berikut ini penjelasan tambahan tentang skala 3 komponen warna HSV berdasarkan Gambar 2.6.


(30)

Hue : Mewakili 360 derajat warna, dengan nilai warnanya dapat dilihat pada gambar (b).

Saturation : Pada panah horizontal yang berwarna hitam, mempunyai nilai antara 0 hingga 100 atau 0 sampai 1. Nilai 0 untuk warna putih dan jika semakin besar maka merujuk kepada warna asli dari hue.

Value : Pada panah vertikal yang berwarna putih, nilai sama dengan saturation. Nilai 0 mengacu pada hitam, sedangkan jika semakin besar akan menghasilkan warna asli dari hue.

Untuk memperoleh citra HSV yang ingin dikonversi dari citra RGB pada software matlab, sintaks program utama yang digunakan ialah rgb2hsv. Untuk lebih jelasnya, Gambar 2.7 dan 2.8 contoh pengimplementasiannya pada suatu citra.

Gambar 2.7. Contoh Sintaks Program untuk Mengkonversi Citra RGB ke HSV, beserta Menampilkan Citranya dengan Menggunakan Sintaks subplot dan imshow.

(a)

(b)


(31)

2.4. Wavelet

2.4.1. Wavelet Secara Umum

Menurut Sydney [10], Wavelet merupakan gelombang mini (small wave) yang memiliki kemampuan dalam mengelompokkan energi citra dan terkonsentrasi pada sekelompok kecil koefisien, sedangkan kelompok koefisien lainnya hanya mengandung sedikit energi yang mampu dihilangkan tanpa mengurangi nilai informasinya. Wavelet telah banyak digunakan dalam berbagai bidang seperti pengolahan citra. Pada umumnya wavelet biasa digunakan untuk menyajikan data atau fungsi ke dalam komponen-komponen frekuensi yang berlainan. Proses ini dinamakan dengan proses dekomposisi dan kemudian mengkaji setiap komponen dengan suatu resolusi yang sesuai dengan skalanya. Transformasi wavelet merupakan pengubahan sinyal ke dalam berbagai basis wavelet dengan berbagai pergeseran dan penyekalaan. Oleh karena itu, koefisien wavelet dari beberapa skala atau resolusi dapat dihitung dari koefisien wavelet pada resolusi tinggi berikutnya. Hal ini memungkinkan pengimplementasian transformasi wavelet menggunakan struktur pohon yang dikenal dengan algoritma piramid (pyramid algorithm), yang dapat dilihat pada Gambar 2.9.

CAj

Gambar 2.9. Algoritma Pyramid h(n)

g(n)

2 1

2 1

h(n)

g(n) h(n)

g(n)

1 2

1 2 1 2

1 2

baris

baris

kolom

kolom

kolom

kolom

CA

+

CD

+

CD

+v

CD

+


(32)

Keterangan Gambar 2.9 : baris

: konvolusi baris dengan tapis g(n) atau h(n) kolom

: konvolusi kolom dengan tapis g(n) atau h(n)

: sampling dengan menjaga kolom yang genap

: sampling dengan menjaga baris yang genap

Dekomposisi wavelet satu level berdasarkan algoritma pyramid. Dengan h(n) adalah tapis pelewat bawah, g(n) adalah tapis pelewat atas CA j(LL) adalah koefisien rerata, CDj(h) (HL), CDj(v)(LH), dan CDj(d)(HH) yang masing-masing adalah koefisien detil horizontal, vertical, dan diagonal.

Proses dekomposisi tersebut dapat dilakukan sebanyak lebih dari satu kali, yaitu sebanyak jumlah level yang telah ditentukan sebelumnya. Untuk melakukan dekomposisi lebih dari satu kali, proses dekomposisi selanjutnya dekomposisi pada koefisien aproksimasi (cA) atau LL dilakukan, karena berisi sebagian besar dari informasi citra. Kemudian diperoleh 4 subband lagi, yaitu LL1, LH1, HL1 dan HH1. Begitu seterusnya hingga mencapai level yang diinginkan. Sebagai contoh, terdapat citra dengan matriks input sebagai berikut :

M = [

]

Tapis low pass dan tapis high pass dengan jenis haar adalah sebagai berikut:

��� � = [ √ √

] ���ℎ � = [

√ −√

]

Langkah pertama adalah mengalikan tapis low pass dengan matriks M terhadap baris. Untuk memudahkan perkalian terhadap baris dilakukan transpose pada matriks M, sehingga diperoleh :

X

X

2 1


(33)

M = [ ]

Kemudian, perkalian matriks MT dengan tapis low pass dilakukan dengan menghasilkan matriks D1T.

D = [

√ √

√ √ ] x [

] = [ , , , , , , , , ]

Untuk mengembalikan ke baris dan kolom sebenarnya, proses transpose kembali pada matriks D1T dilakukan.

D = [

, , , , , , , ,

]

Langkah selanjutnya adalah melakukan perkalian tapis low pass dengan matriks D1

terhadap kolom. Proses tersebut menghasilkan matriks D2, sebagai berikut :

D = [

√ √

√ √ ] x [

, , , , , , , ,

] = [ , ]

Matriks D2 ini yang disebut dengan koefisien aproksimasi (LL). Untuk mencari

nilai HL, LH dan HH, sama seperti langkah di atas, namun dengan mengalikan tapis low

pass terhadap baris dan tapis high pass terhadap kolom untuk HL, mengalikan tapis high pass terhadap baris dan tapis low pass terhadap kolom untuk LH, dan mengalikan tapis high pass terhadap baris dan kolom untuk HH.

2.4.2. Wavelet Haar

Haar adalah jenis wavelet tertua dan paling sederhana, yang diperkenalkan oleh Alfred Haar pada tahun 1909 [10]. Koefisien transformasi h =(h , h )= { , } (tapis low


(34)

pass) dan h =(h , h )= { , − } (tapis high pass) ini merupakan fungsi basis wavelet Haar. Pada citra, tapis high pass dan tapis low pass dapat direprentasikan sebagai matriks 2D. Dekomposisi perataan dan pengurangan yang telah dilakukan sebelumnya sebenarnya sama dengan melakukan dekomposisi (transformasi) citra dengan wavelet Haar. Kedua tapis tersebut bersifat ortogonal namun tidak ortonormal. Tapis Haar yang bersifat ortogonal dan juga ortonormal adalah :

h = { , } (2.1)

h = { , − } (2.2)

Gambar 2.10. Wavelet Haar

2.4.3. Konvolusi

Konvolusi merupakan sebuah operasi matematika sederhana yang sangat umum digunakan pada pengolahan citra [10]. Jika ada dua barisan u dan h maka hasil konvolusinya (y) dapat dinyatakan dalam persamaan:

y = ∑∞= −∞u h − (2.3)

Secara singkat, notasi yang digunakan untuk konvolusi adalah :

{y } = {u } ∗ {h } atau y = u ∗ h (2.4) Yang berarti juga bahwa konvolusi mempunyai sifat yang komutatif, yaitu:


(35)

Matriks dapat memudahkan dalam perhitungan konvolusi. Seperti Gambar 2.11 merupakan contoh penyelesaian sebuah konvolusi dari dua baris u = {2 5 6} dan h = {3 5 1 2}.

X 3 5 1 2

2 6 10 2 4

5 15 25 5 10

6 18 30 6 12

Gambar 2.11. Representasi Matriks dari Penjumlahan Konvolusi, y = [ 6 25 45 39 16 12]

Masukan yang diterima, dapat digunakan sebagai low pass filter. Low pass filter dari sinyal x(n) dengan masukan w(n) adalah suatu proses konvolusi antara x(n) dengan w(n). Bila sinyal x(n) memiliki panjang yang terbatas dan juga ujung-ujung sinyalnya diskontinyu, akan mengakibatkan distorsi pada ujung-ujung sinyal dari hasil konvolusi. Terdapat suatu metode memperpanjang sinyal x(n) dengan cara sinyal pengulangan yang disebut periodisasi. Metode ini untuk mengatasi masalah akan sinyal x(n) yang memiliki panjang terbatas yang diusulkan oleh Misiti et al [10]. Berikut contoh dari metode tersebut, x(n) = {x(1), x(2), ..., x(M)} yang akan dikonvolusi dengan masukan w(n)= {w(1), w(2), ..., w(N)}, dengan N adalah bilangan genap dan M>N, sehingga sinyal pengulangan dengan cara periodisasi akan menjadi :

xper(n) = {x(M-j+ ,…,x M ,x ,…,x M ,x ,…,x N-1)} (2.6) dengan : j = N/2

Konvolusi sinyal yang diperpanjang xper (n) dengan masukan w(n) akan menghasilkan sinyal keluaran :


(36)

atau

y n = ∑ xp r n w j + − n (2.8)

dengan M + N– 1 lebih besar dari panjang x(n). Agar sinyal output memiliki panjang yang sama dengan sinyal input, maka hanya bagian-bagian tertentu dari sinyal output yang dipilih. Contohnya y(n)= {y(1), y(2), … , y(L)}, dengan L= M + N – 1, jadi yang dipilih bagian-bagian tertentu dari y(n) adalah :

�keep (n) = {y N+ ,…,y N+M } (2.9)

2.5. Template Matching dan Korelasi

Template matching merupakan metode pencocokan setiap piksel pada suatu matriks citra digital dengan citra yang menjadi acuan (database citra) [11]. Pencocokan citra yang menghasilkan tingkat kemiripan/kesamaan yang tinggi menentukan suatu citra tersebut dapat dikenali.

Data uji dan database citra, menghasilkan data berupa matriks, dan akan dicari nilai kesamaan antar dua buah matriks tersebut dengan menghitung nilai korelasinya. Nilai korelasi antar dua buah matriks diperoleh dengan menggunakan rumus korelasi seperti yang ditunjukkan pada Persamaan 2.10 berikut ini.

r = ∑nk= x k− x̅̅̅ . x k− x̅̅̅̅

√∑n x k− x̅̅̅

k= .∑nk= x k− x̅̅̅̅

(2.10) Nilai x̅ dirumuskan dengan Persamaan 2.10 dan x̅̅̅ dirumuskan dengan Persamaan 2.11.

x̅ = ∑ = x (2.11)

x̅̅̅ = ∑ = x (2.12)

Keterangan Persamaan 2.10 – 2.12 :

 r adalah nilai korelasi antara dua buah matriks (rentang nilai antara -1 dan +1)

 xak adalah nilai piksel ke-k dalam matriks a

 xbk adalah nilai piksel ke-k dalam matriks b


(37)

 x̅b adalah rata-rata nilai piksel matriks b  n adalah jumlah piksel dalam suatu matriks

2.6. Database Citra

Database citra adalah suatu citra acuan yang digunakan untuk dibandingkan dengan data uji berdasarkan fungsi yang digunakan, apakah fungsi jarak atau similaritas. Database citra ini tersusun atas matriks dengan pada setiap elemennya terdapat nilai-nilai yang akan digunakan untuk menghitung besar jarak dan similaritasnya. Proses pembentukan database citra ini diperoleh dari hasil rata-rata beberapa sampel citra, jika sampel citra yang banyak. Untuk lebih jelasnya berikut ini persamaannya :

� � Citra = p C tr + p C tr + ...+ p C tr [12] (2.13)

2.7. Webcam

Webcam atau Kamera web merupakan kamera video yang menyediakan aliran gambar dengan waktu sebenarnya yang dikendalikan oleh sebuah komputer atau jaringan komputer. Ketika diambil oleh komputer, aliran video dapat disimpan, dilihat, atau dikirim ke jaringan lain melalui sistem seperti internet dan e-mail sebagai lampiran [13]. Tidak seperti kamera IP (yang terhubung menggunakan Ethernet atau Wi-Fi), kamera web umumnya dihubungkan dengan kabel USB atau dibangun ke dalam perangkat keras komputer, seperti laptop.


(38)

Spesifikasi Teknis Webcam Logitech C270 [15] :

 Panggilan video HD (1280 x 720 piksel) dengan sistem yang telah direkomendasikan.

 Perekaman video : Maksimum hingga 1280 x 720 piksel.

Foto : Maksimum hingga 3 megapiksel (ditingkatkan menggunakan software).

Mikrofon bawaan dengan teknologi Logitech RightSound.

Bersertifikat Hi-Speed USB 2.0 (direkomendasikan).

 Klip universal cocok dengan berbagai laptop dan monitor LCD atau CRT.


(39)

19

BAB III

RANCANGAN PENELITIAN

Bab 3 ini akan menjelaskan tentang langkah-langkah perancangan pembuatan sistem pengenalan angka dengan pose jari tangan. Bab ini berisi blok diagram sistem dan berbagai hal yang diperlukan dalam perancangan.

3.1. Perancangan Sistem

Perancangan sistem pengenalan angka dengan pose jari tangan ini terdiri dari beberapa tahap, yaitu masukan berupa citra RGB, konversi citra RGB ke HSV, segmentasi HSV, ekstraksi ciri wavelet, perhitungan korelasi (template matching), dan penentuan keluaran. Blok diagram sistem pengenalan angka dengan pose jari tangan ini dapat dilihat pada Gambar 3.1.

Gambar 3.1. Diagram Blok Sistem Pengambilan Citra

(Citra RGB)

Konversi ke citra RGB ke

HSV

Segmentasi HSV

Perhitungan Korelasi (Template Matching)

Ekstraksi Ciri Wavelet Penentuan

Keluaran

Database

Cropping dan Resizing


(40)

Pada Gambar 3.1, proses pengambilan citra dilakukan oleh webcam. Setelah itu citra yang telah diambil akan diproses lebih lanjut pada laptop melalui beberapa tahap yang terdapat pada diagram blok sistem. Sistem pengenalan angka dengan pose jari tangan terdiri dari software yang berfungsi sebagai user interface. Program pengenalan angka dengan pose jari tangan ini dibuat dengan menggunakan matlab versi R2010a. Program berperan dalam mengatur setiap proses yang akan dilalui untuk mendapatkan hasil pengenalan angka. Sistem pengenalan angka dengan pose jari tangan ini dibuat dengan hasil pengenalan secara real time dan non real time

.

3.2. Proses Kerja Sistem

3.2.1. Input Data

Input data yang digunakan dalam sistem ini adalah citra pose jari tangan. Citra pose jari tangan diambil dengan menggunakan webcam yang mempunyai resolusi 3 MP. Jarak pengambilan citra pose jari tangan dengan webcam adalah 1 - 3 m dengan tujuan untuk melihat dan membandingkan berapa banyak angka yang dapat dikenali pada beberapa jarak pengujian tersebut.

3.2.2. Konversi Citra RGB ke HSV

Pada tahap ini, citra pose jari tangan yang awalnya mempunyai format citra RGB, akan dikonversi terlebih dahulu menjadi format HSV. Hal ini dilakukan untuk proses segmentasi HSV. Proses konversi RGB ke HSV, digunakan sintaks utama yang sudah dijelaskan pad Bab II, yaitu rgb2hsv. Diagram alir dari proses konversi citra RGB ke HSV terdapat pada Gambar 3.2.


(41)

Gambar 3.2. Diagram Alir dari Proses Konversi Citra RGB ke HSV

3.2.3. Segmentasi HSV

Pada tahap ini, citra pose jari tangan yang telah dikonversi ke HSV akan disegmentasi. Dengan segmentasi menggunakan HSV ini, dapat ditentukan kelompok warna mana yang diinginkan, apakah kelompok hue, saturation, atau value. Dalam penelitian ini, kelompok HSV saturation dan value yang digunakan. Hal ini menyesuaikan dengan warna kulit dalam data penelitian yang akan digunakan. Awalnya akan disegmentasi bagian kulit terlebih dahulu berdasarkan nilai ambang S (Saturation) dan V (Value) (akan dievaluasi pada Bab IV). Setelah mendapatkan bagian kulit, pengambilan bagian tangan dilakukan. Dalam proses ini, awalnya perhitungan luasan objek pada citra dan mengambil objek yang memiliki luasan kedua terbesar, yaitu bagian tangan dilakukan. Untuk lebih jelasnya, berikut diagram alir dari proses segmentasi HSV pada Gambar 3.3.

Mulai Input : Citra RGB (Nilai

R,G, dan B) Konversi ke HSV Berdasarkan Nilai R,

G, dan B

Output : Citra HSV


(42)

Gambar 3.3. Diagram Alir dari Proses Segmentasi HSV

3.2.4. Cropping dan Resizing

Pada tahap ini, citra pose jari tangan yang telah disegmentasi menggunakan HSV, akan masuk ke dalam proses cropping dan resizing. Kedua proses ini bertujuan untuk memotong bagian citra yang akan dikenali berdasarkan bounding box dan mengubah ukuran atau size citra menjadi ukuran 64 x 64 piksel [16]. Diagram alir dari proses cropping dan resizing terdapat pada Gambar 3.4 dan 3.5.

Mulai Input : Citra HSV

Segmentasi Kulit (Bagian Muka dan Tangan) Berdasarkan Nilai Ambang

S dan V

Pengambilan Objek yang Memiliki Luasan Kedua Terbesar (Bagian Tangan)

Output : Citra Hasil Segmentasi HSV


(43)

Gambar 3.4. Diagram Alir dari Proses Cropping

Gambar 3.5. Diagram Alir dari Proses Resizing Mulai

Input : Citra Hasil Segmentasi HSV

Potong Bagian Tangan sesuai Bounding Box

Output : Citra Hasil

Cropping

Selesai

Input : Citra Hasil

Cropping Mulai


(44)

Gambar 3.5. (Lanjutan) Diagram Alir dari Proses Resizing

3.2.5. Ekstraksi Ciri Wavelet

Pada tahap ini, citra pose jari tangan hasil cropping dan resizing, akan masuk ke dalam proses ekstraksi ciri Wavelet. Wavelet adalah ekstraksi ciri yang digunakan dalam tahap pengambilan ciri pada suatu citra. Dalam penelitian ini, Wavelet yang digunakan ialah wavelet Haar dengan memiliki 4 macam filter, tetapi dalam penelitian ini hanya dekomposisi low pass filter yang digunakan, karena hanya bentuk dasar dari citra yang akan dicari. Wavelet Haar dilakukan dengan menerapkan konvolusi dan dekomposisi low pass filter secara simultan untuk mendapatkan sinyal global. Secara keseluruhan tahap ekstraksi ciri dapat dilihat pada Gambar 3.6. Input dari proses ekstraksi ciri adalah citra hasil cropping dan resizing yang kemudian akan dikonvolusi dan dilanjutkan pada tahap downsampling. Output dari ekstraksi ciri tergantung dari banyaknya desimasi (N) yang akan ditentukan oleh penguji. Tahap ini akan melakukan pengulangan sampai menghasilkan N = 0.

Resizing ke Ukuran 64 x 64 Piksel

Output : Citra Hasil

Resizing

Selesai


(45)

Gambar 3.6. Diagram Alir dari Proses Ekstraksi Ciri

Tahap konvolusi merupakan tahap untuk melakukan filtering, menggunakan dekomposisi low pass filter pada wavelet Haar. Tahap konvolusi ini berada pada bidang dimensi dua, oleh karena itu konvolusi diterapkan sebanyak dua kali, yaitu pada kolom dan baris citra input. Dari masukan berupa citra hasil cropping dan resizing yang kemudian akan dikonvolusi per-baris dan per-kolom (lihat Gambar 3.7.).

Mulai Input :

Citra Hasil Cropping dan Resizing

Desimasi = N Konvolusi Menggunakan

Wavelet Haar

N = N-1

N=0 ?

Output : Hasil Ekstraksi

Ciri Selesai

Ya Tidak


(46)

Gambar 3.7. Diagram Alir dari Proses Konvolusi

Tahap downsampling adalah tahap setelah konvolusi, dengan hasil dari konvolusi merupakan masukan untuk downsampling. Untuk memproses masukan ada dua proses, yaitu menghilangkan baris dan kolom ganjil dengan menjaga baris dan kolom genap seperti diperlihatkan pada Gambar 3.8.

Gambar 3.8. Diagram Alir dari Proses Downsampling Mulai

Input :

Citra Hasil Cropping dan Resizing

Konvolusi (1D) dengan Ekstensi per-Baris Konvolusi (1D) dengan

Ekstensi per-Kolom Output :

Hasil Konvolusi 2D

Selesai

Mulai Input : Hasil Konvolusi 2D

Menghilangkan Baris Ganjil


(47)

Gambar 3.8. (Lanjutan) Diagram Alir dari Proses Downsampling

3.2.6. Perhitungan Korelasi (Template Matching)

Pada tahap ini, citra pose jari tangan yang telah diekstraksi ciri dengan menggunakan wavelet, selanjutnya akan masuk ke dalam proses perhitungan korelasi dan pada proses ini juga mencakup proses template matching. Tahap ini adalah tahap membandingkan citra masukan pose jari tangan yang diambil dengan database citra pola angka ASL 0 – 9 yang telah dimasukkan sebelumnya dan dalam tahap ini juga digunakan fungsi korelasi. Proses perhitungan korelasi (template matching) akan berdasar pada Persamaan 2.10 – 2.12 pada Bab II dan direpresentasikan pada diagram alir Gambar 3.9.

Gambar 3.9. Diagram Alir dari Proses Perhitungan Korelasi (Template Matching) Menghilangkan

Kolom Ganjil

Output : Hasil Downsampling (Hasil Ekstraksi Ciri)

Selesai

Mulai Input : Hasil Ekstraksi Ciri Masukan, Ekstraksi Ciri

Database

D C


(48)

Gambar 3.9. (Lanjutan) Diagram Alir dari Proses Perhitungan Korelasi (Template Matching)

3.2.7. Penentuan Keluaran

Setelah melalui beberapa proses, tahap terakhir dari sistem pengenalan angka dengan pose jari tangan ini ialah keluaran berupa teks. Proses penentuan keluarannya ditentukan berdasarkan perhitungan nilai korelasi yang terbaik (yang paling tinggi). Diagram alir dari proses penentuan keluaran dapat dilihat pada Gambar 3.10.

Gambar 3.10. Diagram Alir dari Proses Penentuan Keluaran Output :

Hasil Perhitungan Nilai Korelasi

Perhitungan Korelasi = Ekstraksi Ciri Data Masukan dengan Ekstraksi Ciri Database

Selesai

D

Mulai Input : Hasil Perhitungan

Nilai Korelasi (r)


(49)

Gambar 3.10. (Lanjutan) Diagram Alir dari Proses Penentuan Keluaran

3.3. Database

Database diperlukan pada proses perhitungan korelasi (template matching). Pembentukan dari database terdiri dari angka 0-9 mengikuti pola isyarat American Sign Language. Pembentukan database diambil dari citra pose jari tangan hasil ekstraksi ciri wavelet. Ukuran piksel dari database ini tersusun atas matriks yang selanjutnya akan terdapat 3 variasi citra. Ketiga variasi ini mengikuti banyaknya desimasi yang diinginkan, yaitu 3 kali desimasi. Untuk desimasi 1 : 32 x 32 piksel, desimasi 2 : 16 x 16 piksel, dan desimasi 3 : 8 x 8 piksel [16]. Database hasil ekstraksi ciri yang dibentuk ialah sebanyak 3 matriks. Matriks database ini diperoleh dari hasil perhitungan rerata matriks citra pola isyarat angka ASL dari 5 variasi jarak pada setiap variasi citranya. Diagram blok proses pembentukan database ditunjukkan pada Gambar 3.11.

Citra Keluaran = Nilai Korelasi yang Terbaik

Output : Hasil Berupa

Teks

E


(50)

Gambar 3.11. Diagram Blok Proses Pembentukan Database

Setelah melihat diagram blok dari proses pembentukan database pada Gambar 3.11, berikut ini pola persamaan pembentukan database hasil ekstraksi ciri berdasar Persamaan 2.13 pada Bab II :

Citra � � ASL = p C tr A L + p C tr A L + ...+5 p C tr A L 5 Dari pola persamaan pembentukan database di atas, berikut ini pencerminan persamaan pembentukan database hasil ekstraksi ciri dalam bentuk matriks pada setiap variasi citra.

Contoh Pola Perhitungan Rerata untuk Angka 0 Menggunakan Citra 32 x 32 Piksel :

0_1m 0_1,5m 0_3m Hasil Rerata

[ A , A , A , . . . A , ]

+ [ A , A , A , . . . A , ]

+ … … … … + [ A , A , A , . . .

A , ]= [

A ′ ,A ′ , A ′ ,

. . . A ′ , ] Pengambilan Citra (Citra RGB) Konversi RGB ke HSV Segmentasi HSV Ekstraksi Ciri Wavelet Database


(51)

Contoh Pola Perhitungan Rerata untuk Angka 0 Menggunakan Citra 16 x 16 Piksel :

0_1m 0_1,5m 0_3m Hasil Rerata

[ A , A , A , . . .

A , ]

+ [ A , A , A , . . .

A , ]

+ … … … … + [ A , A , A , . . .

A , ]=

[

A ′ ,A ′ ,

A ′ , . . .

A ′ , ]

Contoh Pola Perhitungan Rerata untuk Angka 0 Menggunakan Citra 8 x 8 Piksel :

0_1m 0_1,5m 0_3m Hasil Rerata

[ A , A , A , . . .

A , ]

+ [ A , A , A , . . .

A , ]

+ … … … … + [ A , A , A , . . .

A , ]=

[

A ′ ,

A ′ , A ′ , . . .

A ′ , ]

Setelah menghitung rerata matriks hasil ekstraksi ciri pada setiap variasi citra, selanjutnya dilakukan penyusunan matriks database. Hasil dari susunan matriks ini, selanjutnya akan dijadikan acuan dalam proses perhitungan korelasi (template matching). Berdasarkan persamaan korelasi pada Bab II, matriks database ini merupakan matriks b. Untuk lebih jelasnya berikut ini susunannya.


(52)

Susunan Matriks Database Hasil Rerata Citra 32 x 32 Piksel :

0 1 2 …… 9

[

A ′ ,A ′ ,

A ′ , .. .

A ′ ,

B ′ , B ′ ,

B ′ ,.

..

B ′ ,

C ′ ,

C ′ ,

C ′ ,.

..

C ′ ,

J ′ ,

J ′ ,

… … … . . J ′ ,

. . .

J ′ ,

]

Susunan Matriks Database Hasil Rerata Citra 16 x 16 Piksel : 0 1 2 …… 9

[

AA ′′ ,,

A ′ ,

.. .

A ′ ,

B ′ ,

B ′ ,

B ′ ,

. ..

B ′ ,

C ′ ,

C ′ ,

C ′ ,

. ..

C ′ ,

J ′ ,

J ′ ,

… … … . . J ′ ,

. . .

J ′ ,

]

Susunan Matriks Database Hasil Rerata Citra 8 x 8 Piksel : 0 1 2 …… 9

[

AA ′′ ,,

A ′ ,

.. .

A ′ ,

B ′ ,

B ′ ,

B ′ ,

. ..

B ′ ,

C ′ ,

C ′ ,

C ′ ,

. ..

C ′ ,

J ′ ,

J ′ ,

… … … . . J ′ ,

. . .

J ′ ,

]

Angka Uji


(53)

3.4. Pengujian Pose Jari Tangan

3.4.1.

Pengujian secara Real Time

Pada prinsipnya, pengujian secara real time akan diakses melalui GUI (Graphical User Interface), yang dapat dilihat bentuk perancangannya pada subbab 3.7. Untuk memulai pengujian, pertama-tama penguji menakan push button “Ambil Gambar”, lalu setelah itu citra pose jari tangan akan melalui beberapa proses seperti konversi RGB ke HSV, segmentasi HSV, ekstraksi ciri wavelet, perhitungan korelasi (template matching), serta penentuan keluaran. Dalam pengujian secara real time ini, 500 data pengujian digunakan. Angka ini diperoleh dari terdapatnya 2 orang sampel dalam pengujian, yaitu tangan orang lain dari 5 variasi jarak uji, yaitu 1 m ,1,5 m, 2 m, 2,5 m, dan 3 m, dengan pengambilan sampel tiap pola angka ASL sebanyak 5 kali . Selain itu data dari pengujian secara real time ini, proses cropping, resizing, dan ekstraksi ciri wavelet akan ditampilkan secara otomatis melalui GUI, yang desainnya dapat dilihat pada Gambar 3.14.

3.4.2.

Pengujian secara Non Real Time

Pada prinsipnya, pengujian secara non real time proses-proses yang dilalui sama dengan pengujian secara real time. Namun proses hasil cropping, resizing, dan ekstraksi ciri wavelet akan ditampilkan secara manual melalui figure pada matlab, sedangkan untuk keluaran teks akan ditampilkan melalui command window pada matlab. Dalam pengujian secara non real time ini, 50 data pengujian digunakan. Angka ini diperoleh dari terdapatnya 1 orang sampel dalam pengujian, yaitu tangan orang lain dari 5 variasi jarak uji, yaitu 1 m ,1,5 m, 2 m, 2,5 m, dan 3 m.

3.5.

Analisis Data Pengujian

Dalam menghitung besar tingkat pengenalannya, pola persamaan yang digunakan ialah sebagai berikut :


(54)

3.6.

Ruangan Pengujian dan Pencahayaan

Dalam pengambilan data sistem pengenalan angka dengan pose jari tangan ini, ruangan dan tata pencahayaan yang digunakan ditunjukkan pada Gambar 3.11 dan 3.12. Penyesuaian ruangan dan pencahayaan dimaksudkan untuk memperoleh data yang akurat khususnya pada bagian segmentasi HSV. Jika pencahayaan pada ruangan tidak akurat, maka objek yang tidak diinginkan akan ikut terambil.

Gambar 3.12. Ruangan Tugas Akhir Teknik Elektro USD yang digunakan dalam Pengambilan Data

Gambar 3.13. Tata Pencahayaan Ruangan Tugas Akhir Teknik Elektro USD

4 lampu dimatikan agar warna kulit tidak berubah karena cahaya dari lampu.

Cahaya yang masuk melaui pintu dihalangi menggunakan papan agar tidak menimbulkan efek silau pada citra.


(55)

3.7. Perancangan Tampilan GUI

Tampilan interface pada perancangan sistem pengenalan huruf menggunakan GUI pada matlab yang bertujuan untuk membantu dalam proses pengenalan pose jari tangan. Secara keseluruhan sistem tersebut dapat dilihat pada Gambar 3.14.

Gambar 3.14. Tampilan GUI Sistem Pengenalan Angka dengan Pose Jari Tangan

Pengenalan Angka dengan Pose Jari Tangan

Kamera

Kamera Aktif Ambil Gambar

Cropping Resizing

Ekstraksi Ciri Wavelet Variasi Desimasi

Proses Reset Keluar Keluaran Teks


(56)

Berdasarkan desain GUI pada Gambar 3.14, berikut ini pada Gambar 3.15 diagram alir dari proses yang terdapat pada GUI.

Gambar 3.15. Diagram Alir Proses yang Terdapat pada GUI Mulai

Input :

Tombol “Kamera Aktif”

Mengaktifkan Kamera

Kamera Aktif ?

Output : Gambar Tertampil

Input : Tombol “Ambil

Gambar”

F

Tidak

Ya


(57)

Gambar 3.15. (Lanjutan) Diagram Alir Proses yang Terdapat pada GUI Mengambil Gambar

Output : Gambar Terambil

Input : Variasi Desimasi,

Tombol “Proses”

Proses Cropping, Resizing, Ekstraksi Ciri Wavelet, dan

Keluaran Teks

Output :

Hasil Proses Cropping, Resizing, Ekstraksi Ciri Wavelet, dan Keluaran Teks

Ulang ?

G I

Tidak

Ya

J2 J1


(58)

Gambar 3.15. (Lanjutan) Diagram Alir Proses yang Terdapat pada GUI Input :

Tombol “Reset”

Membersihkan GUI

Output : GUI Bersih

Selesai Memakai

GUI ?

Input : Tombol “Keluar”

Menutup GUI

H

Tidak

Ya

I


(59)

Gambar 3.15. (Lanjutan) Diagram Alir Proses yang Terdapat pada GUI Output :

GUI Tertutup

Selesai


(60)

40

BAB IV

HASIL DAN PEMBAHASAN

Bab ini akan membahas mengenai langkah-langkah untuk menjalankan software pengenalan angka dengan pose jari tangan baik secara real time maupun non real time, sintaks program yang digunakan, serta menganalisis data hasil pengujian. Pengujian sistem pengenalan angka dengan pose jari tangan ini menggunakan pola angka ASL, yaitu dari 0 s/d 9 dari 5 variasi jarak yang digunakan, yaitu 1 m, 1,5 m, 2 m, 2,5 m, dan 3 m.

Spesifikasi laptop yang digunakan dalam pengujian software pengenalan angka dengan pose jari tangan ini ialah sebagai berikut :

1. Merk dan Tipe Laptop : Asus X454W Series

2. Prosesor : AMD Dual Core E1-6010 1.35 GHz

3. RAM : 2 GB

4. Versi Matlab : R2010a

5. Sistem Operasi : Windows 8 64 bit

4.1. Langkah-langkah Menjalankan Program

4.1.1. Langkah-langkah untuk Menjalankan Program secara Real Time

1. Pertama, buka software matlab terlebih dahulu dengan cara meng-klik kiri sebanyak 2 kali pada icon matlab (lihat Gambar 4.1). Setelah meng-klik kiri, akan muncul tampilan utama matlab seperti pada Gambar 4.2.


(61)

Gambar 4.2. Tampilan Utama Matlab R2010a

2. Kedua, ubah current folder sesuai lokasi disimpannya program yang telah dibuat (lihat Gambar 4.3), lalu ketik “guiangka” (contoh nama file GUI yang dibuat) pada command window untuk menjalankan file GUI yang telah dibuat (lihat Gambar 4.4), kemudian tekan enter.


(62)

Gambar 4.4. Pemanggilan File GUI

3. Ketiga, setelah menekan enter, maka GUI siap digunakan untuk pengujian secara real time. Untuk lebih jelasnya, lihat pada Gambar 4.5.

Gambar 4.5. GUI Software Pengenalan Angka dengan Pose Jari Tangan

Pada tampilan GUI Gambar 4.5, terdapat beberapa pushbutton yang digunakan, serta 1 buah popupmenu. Berikut ini penjelasan tentang fungsi pushbutton dan popupmenu yang digunakan pada GUI.

a. Pushbutton “Kamera Aktif” : Untuk melihat apakah kamera sudah aktif atau belum (axes 1).

b. Pushbutton “Ambil Gambar” : Untuk mengambil gambar (axes 1).

c. Pushbutton “Proses” : Untuk menampilkan hasil cropping (axes 2), resizing (axes 3), ekstraksi ciri wavelet (axes 4), dan keluaran teks (edit 3).

d. Pushbutton “Reset” : Untuk membersihkan setiap axes, popupmenu, dan edit pada GUI. e. Pushbutton “Keluar” : Untuk menutup GUI.


(63)

f. Popupmenu “Variasi Desimasi” : Untuk memilih variasi desimasi yang diinginkan, apakah variasi desimasi 1, 2, atau 3 (lihat Gambar 4.6). Hasil dari pemilihan variasi desimasi ini ditampilkan pada axes 4 (ekstraksi ciri wavelet).

Gambar 4.6. Pemilihan Variasi Desimasi

Gambar 4.7. Contoh ketika GUI dijalankan untuk Pengujian Angka 9 dengan Variasi Desimasi = 3


(64)

4.1.2. Langkah-langkah untuk Menjalankan Program secara Non Real

Time

1. Pertama, ulangi langkah 1 s/d 2 sama seperti langkah-langkah untuk menjalankan program secara real time. Namun contoh nama file program yang digunakan secara non real time ini ialah “kenalwav2”, sehingga pada command window pada matlab ketik “kenalwav2” (lihat Gambar 4.8). Setelah itu input desimasi yang diinginkan (lihat Gambar 4.9.), lalu tekan enter untuk menampilkan hasil cropping, resizing, ekstraksi ciri wavelet, dan keluaran teks.

Gambar 4.8. Pemanggilan File Program secara Non Real Time

Gambar 4.9. Memasukkan Nilai Desimasi, misalnya Desimasi = 2

2. Kedua, setelah menekan enter, tunggu beberapa saat hingga hasil cropping, resizing, dan ekstraksi ciri wavelet ditampilkan pada figure matlab dan hasil keluaran teks pada command window matlab (lebih jelasnya lihat Gambar 4.10 – 4.13).


(65)

Gambar 4.11. Citra Hasil Resizing


(66)

Gambar 4.13. Hasil Keluaran Teks pada Command Window Matlab

4.2. Penjelasan Sintaks Program

4.2.1. Penjelasan Sintaks Program secara Real Time

Untuk sintaks program secara real time, pushbutton dan popupmenu yang terdapat pada GUI akan diisi sintaks program tertentu agar nantinya GUI dapat berjalan dengan baik. Untuk lebih jelasnya, berikut ini penjelasannya.

a. Pushbutton “Kamera Aktif”

Untuk menjalankan pushbutton ini, maka diisi sintaks berikut :

imaqhwinfo;

info=imaqhwinfo('winvideo');

dev_info=imaqhwinfo('winvideo',1);

vidobj=videoinput('winvideo',1,'RGB24_1280x960'); vidobj.FramesPerTrigger=1;

triggerconfig(vidobj,'manual');


(67)

imWidth=1280; imHeight=960;

nBands=get(vidobj,'NumberOfBands');

hImage=image(zeros(imHeight,imWidth,nBands),'parent',handles.axes1); preview(vidobj,hImage)

Berdasarkan sintaks program di atas, dapat dilihat terdapat sintaks imaqhwinfo. Sintaks ini berfungsi untuk menginisialisasikan antara webcam dengan software matlab. Selain itu, sintaks ini juga berfungsi untuk mengetahui informasi yang dimiliki oleh webcam, seperti nama device dan format warna yang dihasilkan oleh webcam, misalnya RGB, YUY, dan lainnya. Untuk menampilkan gambar yang direkam oleh webcam, maka sintaks preview digunakan dan kemudian gambar tersebut dapat nampak pada axes 1.

b. Pushbutton “Ambil Gambar”

Untuk menjalankan pushbutton ini, maka diisi sintaks berikut :

start(vidobj); pause(1); trigger(vidobj); stoppreview(vidobj); capt1=getdata(vidobj); gambar=capt1; handles.a=gambar; guidata(hObject,handles); axes(handles.axes1); imshow(gambar)

Berdasarkan sintaks program di atas, dapat dilihat terdapat sintaks getdata. Sintaks ini berfungsi untuk melakukan capture gambar saat webcam dalam keadaan on. Hasil gambar yang telah diambil oleh webcam ini memiliki format citra RGB. Kemudian agar hasil capture dapat dipanggil dan digunakan pada sintaks program selanjutnya, maka diinisialisasikan dengan sintaks handles.

c. Popupmenu “Variasi Desimasi”

Untuk mengfungsikan popupmenu ini, maka diisi sintaks berikut :

indeks=get(handles.popupmenu1,'Value');

switch indeks case 2 des=1; case 3; des=2; case 4; des=3;


(68)

end

handles.des=des;

guidata(hObject,handles);

Berdasarkan sintaks program di atas, dapat dilihat terdapat sintaks des=1. Sintaks ini berfungsi untuk mengaktifkan desimasi sebanyak 1 kali. Penjelasan tentang desimasi sebelumnya sudah dituliskan pada Bab III. Desimasi ini diinisialisasikan dengan nama “des”. Kemudian agar nilai variasi desimasi ini dapat dipanggil dan digunakan pada sintaks program selanjutnya, maka diubah menjadi “handles.des”.

d. Pushbutton “Proses”

Pada saat menakan pushbutton “Proses” ini, citra dengan format RGB yang telah diambil pada axes 1 akan diproses lebih lanjut. Untuk lebih jelasnya berikut ini proses-prosesnya dan juga sintaks programnya.

Proses Konversi Citra RGB ke HSV

Untuk menjalankan proses ini, sintaks program yang digunakan ialah :

%Konversi RGB ke HSV

x0=rgb2hsv(x);

Berdasarkan sintaks program di atas, dapat dilihat bahwa terdapat sintaks rgb2hsv. Sintaks ini berfungsi mengubah citra RGB dari menjadi citra HSV.

 Proses Segmentasi HSV

Untuk menjalankan proses ini, sintaks program yang digunakan ialah :

s=x0(:,:,2); %Ambil bagian saturation

s1=s>0.17;

v=x0(:,:,3); %Ambil bagian value

v1=v>0.4;

Berdasarkan sintaks program di atas, segmentasi bagian kulit pada citra dilakukan. Oleh karena itu bagian S (saturation) dan V (value) diambil, karena diantara ketiga komponen warna HSV, yang masuk dalam kategori warna kulit (muka dan tangan) ialah S dan V. Nilai threshold S dan V jika dilihat dari ruang warnanya, yang digunakan dalam penelitian ini ialah untuk S >0,17 dan untuk V >0,4.


(69)

Proses Pengambilan Bagian Tangan

Untuk menjalankan proses ini, sintaks program yang digunakan ialah :

%Hitung luasan setiap objek

for k=1:jumobj x2=x1==k;

aobj(k)=sum(x2(:)); end

%segmentasi luasan kedua terbesar

[s,u]=sort(aobj,'descend'); x3=x1==u(2);

else

x3=x1;

end

Berdasarkan sintaks program di atas, untuk mengambil bagian tangan pada citra yang telah disegmentasi, maka perhitungan luasan pada setiap objek kulit dilakukan dengan sintaks sum. Setelah itu, hasil perhitungan luasan objek kulit tersebut diurutkan (dengan sintaks sort) dari nilai terbesar ke nilai terkecil dengan sintaks descend. Setelah itu, untuk mengambil objek yang memiliki nilai luasan kedua terbesar (bagian tangan) yang diinisialisasi dengan “u(2)”.

Proses Cropping sesuai Bounding Box

Untuk menjalankan proses ini, sintaks program yang digunakan ialah :

% Potong kiri

cout=x3; a=sum(cout); b=find(a>0);

cout(:,1:b(1)-1)=[]; % Potong kanan

cout=fliplr(cout); a=sum(cout);

b=find(a>0);

cout(:,1:b(1)-1)=[]; % Potong atas

cout=cout'; a=sum(cout); b=find(a>0);

cout(:,1:b(1)-1)=[]; % Potong bawah

cout=fliplr(cout); a=sum(cout);

b=find(a>0);

cout(:,1:b(1)-1)=[];


(70)

Berdasarkan sintaks program di atas, pada prinsipnya proses cropping sesuai bounding box ini, proses pemotongannya ialah dengan memutar tiap 90o lalu memotong per-bagiannya sampai kembali ke posisi awal. Untuk lebih jelasnya lihat Tabel 4.1.

Tabel 4.1. Proses Cropping sesuai Bounding Box

Sintaks Program Hasil Sintaks

% Potong kiri

cout=x3; a=sum(cout); b=find(a>0);

cout(:,1:b(1)-1)=[];

% Potong kanan

cout=fliplr(cout); a=sum(cout);

b=find(a>0);

cout(:,1:b(1)-1)=[];

% Potong atas

cout=cout'; a=sum(cout); b=find(a>0);

cout(:,1:b(1)-1)=[];

% Potong bawah

cout=fliplr(cout); a=sum(cout);

b=find(a>0);

cout(:,1:b(1)-1)=[];

200 400 600 800 1000 1200 1400 200 400 600 800 1000 1200

200 400 600 800 1000 1200 1400 50

100 150 200

50 100 150 200 100 200 300 400 500 600 700 800

50 100 150 200 50 100 150 200 250 300 350 400


(71)

Proses Resizing

Untuk menjalankan proses ini, sintaks program yang digunakan ialah :

x4=imresize(cout,[64 64]);

Berdasarkan sintaks program di atas, dapat dilihat bahwa terdapat sintaks imresize yang berfungsi mengubah ukuran citra ke ukuran tertentu. Untuk penelitian ini citra diubah ke dalam ukuran 64 x 64 piksel.

 Proses Ekstraksi Ciri

Untuk menjalankan proses ini, sintaks program yang digunakan ialah :

x5=xcwav2(x4,des);

Berdasarkan sintaks program di atas, dapat dilihat bahwa terdapat sintaks xcwav2. Sintaks ini merupakan sintaks untuk memanggil program ekstraksi ciri yang dibuat dalam M-file pada matlab. Untuk lebih jelasnya, sintaksnya dapat dilihat pada bagian lampiran.

 Proses Perhitungan Korelasi

Untuk menjalankan proses ini, sintaks program yang digunakan ialah :

for n=1:10

r(n)=korelasi(x6,z(:,n))

end

maxr=max(r)

Berdasarkan sintaks program di atas, dapat dilihat bahwa terdapat sintaks korelasi. Sintaks ini merupakan sintaks untuk memanggil fungsi korelasi yang dibuat dalam M-file pada matlab. Selain itu, terdapat sintaks max yang berfungsi untuk menampilkan nilai korelasi yang paling tinggi (yang terbaik). Nilai korelasi ini akan ditampilkan pada command window matlab.

 Proses Keluaran Teks

Untuk menjalankan proses ini, sintaks program yang digunakan ialah :

if (maxr==r(1)) z1={'0'};

set(handles.edit3,'string',z1);

elseif (maxr==r(2)) z2={'1'};


(72)

elseif (maxr==r(3)) z3={'2'};

set(handles.edit3,'string',z3);

elseif (maxr==r(4)) z4={'3'};

set(handles.edit3,'string',z4);

elseif (maxr==r(5)) z5={'4'};

set(handles.edit3,'string',z5);

elseif (maxr==r(6)) z6={'5'};

set(handles.edit3,'string',z6);

elseif (maxr==r(7)) z7={'6'};

set(handles.edit3,'string',z7);

elseif (maxr==r(8)) z8={'7'};

set(handles.edit3,'string',z8)

elseif (maxr==r(9)) z9={'8'};

set(handles.edit3,'string',z9)

elseif (maxr==r(10)) z10={'9'};

set(handles.edit3,'string',z10)

end

Berdasarkan sintaks program di atas, dapat dilihat bahwa terdapat sintaks elseif (maxr==r(1)). Sintaks ini berfungsi untuk menampilkan teks angka “1” pada edit 3 yang terdapat di GUI jika angka 1 memiliki nilai korelasi terbesar. Hal ini berlaku untuk angka uji lainnya.

e. Pushbutton “Reset”

Untuk menjalankan pushbutton ini, maka diisi sintaks berikut :

axes(handles.axes1) plot(0); axes(handles.axes2) plot(0); axes(handles.axes3) plot(0); axes(handles.axes4) plot(0);

set(handles.popupmenu1,'Value',1); set(handles.edit3,'string','');

Pushbutton “Reset” ini berfungsi untuk membersihkan axes, popupmenu, dan edit pada GUI jika terjadi kesalahan dalam pengenalan pola angka ASL atau ingin melakukan pengujian yang baru.


(73)

f. Pushbutton “Keluar”

Untuk menjalankan pushbutton ini, maka diisi sintaks berikut :

close

Pushbutton “Keluar” ini berfungsi untuk menutup GUI jika selesai melakukan pengujian.

4.2.2. Penjelasan Sintaks Program secara Non Real Time

Untuk sintaks program secara non real time, memiliki program proses segementasi HSV, proses pengambilan bagian tangan, proses cropping sesuai bounding box, proses resizing, proses ekstraksi ciri wavelet, dan proses perhitungan korelasi secara garis besar sama dengan program secara real time. Namun untuk menampilkan hasil citranya, maka sintaks subplot dan imshow digunakan. Sedangkan untuk keluaran teks, akan ditampilkan pada command window matlab. Untuk lebih jelasnya, berikut ini sintaks keluaran teks untuk program secara non real time.

% Penentuan buah keluaran

DaftarAngka={'0';'1';'2';'3';'4';'5';'6';'7';'8';'9'}; Angka{k}=DaftarAngka{KelasOut};

Berdasarkan sintaks program di atas, pada prinsipnya proses yang dimiliki sama dengan program secara real time. Pola angka ASL yang memiliki nilai korelasi yang terbaik atau yang paling tinggi akan ditampilkan pada command window matlab, dengan terlebih dahulu dikelompokkan kelas-kelasnya dengan inisialisasi “KelasOut” (lebih jelasnya lihat sintaks full pada lampiran). Sedangkan, untuk pengambilan foto data uji secara non real time ini, digunakan software asli webcam Logitech sendiri. Berikut ini Gambar 4.14 icon software Logitech webcam dan Gambar 4.15 software Logitech webcam pada saat pengambilan foto data uji.


(74)

Gambar 4.15. Software Logitech Webcam pada saat Pengambilan Foto Data Uji

4.3. Analisis Hasil Data Pengujian

Dalam pengujian program secara real time dan secara non real time, pengujian dari 5 variasi jarak dan 3 variasi desimasi dilakukan (telah disebutkan pada Bab III). Agar lebih memperjelas bagaimana hasil citra hasil desimasi 1 s/d 3, berikut ini pada Tabel 4.2 hasilnya.

Tabel 4.2. Hasil Desimasi 1 s/d 3 Pola Angka ASL 0-9 pada 5 Variasi Jarak Pola Angka

ASL Desimasi

Jarak (m)

1 1,5 2 2,5 3

0

1


(75)

3

1

1

2

3

2

1

2

3

3

1

2

3


(76)

2

3

5

1

2

3

6

1

2

3

7

1

2


(77)

8

1

2

3

9

1

2

3

4.3.1. Analisis Hasil Data Pengujian secara Real Time

Dalam pengujian secara real time, seperti yang telah disebutkan pada Bab III sebelumnya, pengujian sebanyak 2 sampel tangan orang lain dilakukan. Berikut ini hasil data yang diperoleh dari pengujian secara real time dari 5 variasi jarak, yaitu 1 m, 1,5 m, 2 m, 2,5 m, dan 3 m dan juga dari 3 variasi desimasi, besar tingkat pengenalan, serta grafik besar tingkat pengenalannya. Dalam proses pengambilan datanya, pengambilan setiap sampel angka sebanyak 5 kali dilakukan dan hasilnya akan ditunjukkan dalam bentuk confusion matrix (lihat pada lampiran).


(78)

Tabel 4.3. Hasil Pengujian Real Time

Jarak (Meter) Tingkat Pengenalan

Desimasi 1 Desimasi 2 Desimasi 3

1 98 % 98 % 48 %

1,5 86 % 86 % 78 %

2 68 % 66 % 58 %

2,5 88 % 88 % 48 %

3 88 % 78 % 58 %

- Grafik Hasil Pengujian Real Time :

Gambar 4.16. Grafik Hasil Pengujian Real Time

Berdasarkan grafik (Gambar 4.16) dan tabel hasil tingkat pengenalan secara real time (Tabel 4.3), dapat dilihat bahwa hasil yang ditunjukkan cukup acak dan tidak menunjukkan ketergantungan pada jarak pengujian. Hal ini dikarenakan bahwa sampai jarak maksimal pengujian (3 meter), software pengenalan angka dengan pose jari tangan ini masih mampu menangkap objek tangan dengan baik walaupun hasil keluaran teks masih ada yang mengalami kesalahan dalam pengenalan. Sedangkan untuk hasil percobaan desimasi, dapat dilihat bahwa semakin banyak desimasi, maka semakin menurun tingkat pengenalan. Hal ini disebabkan karena semakin banyaknya desimasi, maka ukuran citra akan semakin direduksi (dari ukuran 64 x 64 piksel), sehingga citra akan semakin kabur. Seperti yang telah dijelaskan


(1)

Desimasi 2 :

Desimasi 3 :

OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √

9 √

OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √


(2)

- Jarak 2 m : Desimasi 1 :

Desimasi 2 : OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √

9 √

OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √


(3)

Desimasi 3 :

- Jarak 2,5 m : Desimasi 1 :

OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √

9 √

OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √


(4)

Desimasi 2 :

Desimasi 3 : OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √

9 √

OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √


(5)

- Jarak 3 m : Desimasi 1 :

Desimasi 2 : OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √

9 √

OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √


(6)

Desimasi 3 : OUT

IN 0 1 2 3 4 5 6 7 8 9

0 √

1 √

2 √

3 √

4 √

5 √

6 √

7 √

8 √